@milaboratories/miplots4 1.0.173 → 1.0.174
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/AbstractChart.d.ts +1 -0
- package/dist/AbstractChart.d.ts.map +1 -0
- package/dist/DataFrame.d.ts +1 -0
- package/dist/DataFrame.d.ts.map +1 -0
- package/dist/MiPlots.d.ts +1 -0
- package/dist/MiPlots.d.ts.map +1 -0
- package/dist/bubble/BubbleSettingsImpl.d.ts +1 -0
- package/dist/bubble/BubbleSettingsImpl.d.ts.map +1 -0
- package/dist/bubble/ChartRenderer.d.ts +1 -0
- package/dist/bubble/ChartRenderer.d.ts.map +1 -0
- package/dist/bubble/components/AxisCaptions.d.ts +1 -0
- package/dist/bubble/components/AxisCaptions.d.ts.map +1 -0
- package/dist/bubble/components/Chart.d.ts +1 -0
- package/dist/bubble/components/Chart.d.ts.map +1 -0
- package/dist/bubble/components/ChartsGroup.d.ts +1 -0
- package/dist/bubble/components/ChartsGroup.d.ts.map +1 -0
- package/dist/bubble/components/types.d.ts +1 -0
- package/dist/bubble/components/types.d.ts.map +1 -0
- package/dist/bubble/constants.d.ts +1 -0
- package/dist/bubble/constants.d.ts.map +1 -0
- package/dist/bubble/getCellTooltip.d.ts +1 -0
- package/dist/bubble/getCellTooltip.d.ts.map +1 -0
- package/dist/bubble/getGroupedCellsData.d.ts +1 -0
- package/dist/bubble/getGroupedCellsData.d.ts.map +1 -0
- package/dist/bubble/index.d.ts +1 -0
- package/dist/bubble/index.d.ts.map +1 -0
- package/dist/bubble/utils/calculateCaptionTails.d.ts +1 -0
- package/dist/bubble/utils/calculateCaptionTails.d.ts.map +1 -0
- package/dist/bubble/utils/calculateChartSideElementSizes.d.ts +1 -0
- package/dist/bubble/utils/calculateChartSideElementSizes.d.ts.map +1 -0
- package/dist/bubble/utils/calculateSideElementsBBoxes.d.ts +1 -0
- package/dist/bubble/utils/calculateSideElementsBBoxes.d.ts.map +1 -0
- package/dist/bubble/utils/index.d.ts +1 -0
- package/dist/bubble/utils/index.d.ts.map +1 -0
- package/dist/common/BandAxis.d.ts +1 -0
- package/dist/common/BandAxis.d.ts.map +1 -0
- package/dist/common/ChartsTitle.d.ts +1 -0
- package/dist/common/ChartsTitle.d.ts.map +1 -0
- package/dist/common/ContinuousAxis.d.ts +1 -0
- package/dist/common/ContinuousAxis.d.ts.map +1 -0
- package/dist/common/ContinuousGrid.d.ts +1 -0
- package/dist/common/ContinuousGrid.d.ts.map +1 -0
- package/dist/common/Error.d.ts +1 -0
- package/dist/common/Error.d.ts.map +1 -0
- package/dist/common/ErrorBoundary.d.ts +1 -0
- package/dist/common/ErrorBoundary.d.ts.map +1 -0
- package/dist/common/Legend.d.ts +1 -0
- package/dist/common/Legend.d.ts.map +1 -0
- package/dist/common/Tooltip.d.ts +1 -0
- package/dist/common/Tooltip.d.ts.map +1 -0
- package/dist/common/fonts.d.ts +1 -0
- package/dist/common/fonts.d.ts.map +1 -0
- package/dist/common/types.d.ts +1 -0
- package/dist/common/types.d.ts.map +1 -0
- package/dist/common/useDataFrame.d.ts +1 -0
- package/dist/common/useDataFrame.d.ts.map +1 -0
- package/dist/constants.d.ts +1 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/dendro/ChartRenderer.d.ts +1 -0
- package/dist/dendro/ChartRenderer.d.ts.map +1 -0
- package/dist/dendro/DendroSettingsImpl.d.ts +1 -0
- package/dist/dendro/DendroSettingsImpl.d.ts.map +1 -0
- package/dist/dendro/components/Chart.d.ts +1 -0
- package/dist/dendro/components/Chart.d.ts.map +1 -0
- package/dist/dendro/components/Heatmap.d.ts +1 -0
- package/dist/dendro/components/Heatmap.d.ts.map +1 -0
- package/dist/dendro/components/Legend.d.ts +1 -0
- package/dist/dendro/components/Legend.d.ts.map +1 -0
- package/dist/dendro/components/LinksGroup.d.ts +1 -0
- package/dist/dendro/components/LinksGroup.d.ts.map +1 -0
- package/dist/dendro/components/NodesGroup.d.ts +1 -0
- package/dist/dendro/components/NodesGroup.d.ts.map +1 -0
- package/dist/dendro/components/types.d.ts +1 -0
- package/dist/dendro/components/types.d.ts.map +1 -0
- package/dist/dendro/constants.d.ts +1 -0
- package/dist/dendro/constants.d.ts.map +1 -0
- package/dist/dendro/getHeatmapData.d.ts +1 -0
- package/dist/dendro/getHeatmapData.d.ts.map +1 -0
- package/dist/dendro/getHierarchyData.d.ts +1 -0
- package/dist/dendro/getHierarchyData.d.ts.map +1 -0
- package/dist/dendro/index.d.ts +1 -0
- package/dist/dendro/index.d.ts.map +1 -0
- package/dist/discrete/ChartRenderer.d.ts +1 -0
- package/dist/discrete/ChartRenderer.d.ts.map +1 -0
- package/dist/discrete/DiscreteSettingsImpl.d.ts +1 -0
- package/dist/discrete/DiscreteSettingsImpl.d.ts.map +1 -0
- package/dist/discrete/components/Chart.d.ts +1 -0
- package/dist/discrete/components/Chart.d.ts.map +1 -0
- package/dist/discrete/components/ChartsGroup.d.ts +1 -0
- package/dist/discrete/components/ChartsGroup.d.ts.map +1 -0
- package/dist/discrete/components/Grid.d.ts +1 -0
- package/dist/discrete/components/Grid.d.ts.map +1 -0
- package/dist/discrete/components/NumberAxis.d.ts +1 -0
- package/dist/discrete/components/NumberAxis.d.ts.map +1 -0
- package/dist/discrete/components/layers/BarElement.d.ts +1 -0
- package/dist/discrete/components/layers/BarElement.d.ts.map +1 -0
- package/dist/discrete/components/layers/BinnedDotsElement.d.ts +1 -0
- package/dist/discrete/components/layers/BinnedDotsElement.d.ts.map +1 -0
- package/dist/discrete/components/layers/BoxElement.d.ts +1 -0
- package/dist/discrete/components/layers/BoxElement.d.ts.map +1 -0
- package/dist/discrete/components/layers/DotsGroupElement.d.ts +1 -0
- package/dist/discrete/components/layers/DotsGroupElement.d.ts.map +1 -0
- package/dist/discrete/components/layers/ErrorBarElement.d.ts +1 -0
- package/dist/discrete/components/layers/ErrorBarElement.d.ts.map +1 -0
- package/dist/discrete/components/layers/LineElement.d.ts +1 -0
- package/dist/discrete/components/layers/LineElement.d.ts.map +1 -0
- package/dist/discrete/components/layers/LogoElement.d.ts +1 -0
- package/dist/discrete/components/layers/LogoElement.d.ts.map +1 -0
- package/dist/discrete/components/layers/PairedPointsElement.d.ts +1 -0
- package/dist/discrete/components/layers/PairedPointsElement.d.ts.map +1 -0
- package/dist/discrete/components/layers/SinaElement.d.ts +1 -0
- package/dist/discrete/components/layers/SinaElement.d.ts.map +1 -0
- package/dist/discrete/components/layers/StackedAreaElement.d.ts +1 -0
- package/dist/discrete/components/layers/StackedAreaElement.d.ts.map +1 -0
- package/dist/discrete/components/layers/StackedBarElement.d.ts +1 -0
- package/dist/discrete/components/layers/StackedBarElement.d.ts.map +1 -0
- package/dist/discrete/components/layers/StatsPValue.d.ts +1 -0
- package/dist/discrete/components/layers/StatsPValue.d.ts.map +1 -0
- package/dist/discrete/components/layers/ViolinElement.d.ts +1 -0
- package/dist/discrete/components/layers/ViolinElement.d.ts.map +1 -0
- package/dist/discrete/components/layers/seqAlphabet.d.ts +1 -0
- package/dist/discrete/components/layers/seqAlphabet.d.ts.map +1 -0
- package/dist/discrete/components/types.d.ts +1 -0
- package/dist/discrete/components/types.d.ts.map +1 -0
- package/dist/discrete/constants.d.ts +1 -0
- package/dist/discrete/constants.d.ts.map +1 -0
- package/dist/discrete/index.d.ts +1 -0
- package/dist/discrete/index.d.ts.map +1 -0
- package/dist/discrete/index.js +130 -124
- package/dist/discrete/index.js.map +1 -1
- package/dist/discrete/layers/bar.d.ts +1 -0
- package/dist/discrete/layers/bar.d.ts.map +1 -0
- package/dist/discrete/layers/binnedDots.d.ts +1 -0
- package/dist/discrete/layers/binnedDots.d.ts.map +1 -0
- package/dist/discrete/layers/boxes.d.ts +1 -0
- package/dist/discrete/layers/boxes.d.ts.map +1 -0
- package/dist/discrete/layers/dots.d.ts +1 -0
- package/dist/discrete/layers/dots.d.ts.map +1 -0
- package/dist/discrete/layers/errorbars.d.ts +1 -0
- package/dist/discrete/layers/errorbars.d.ts.map +1 -0
- package/dist/discrete/layers/index.d.ts +1 -0
- package/dist/discrete/layers/index.d.ts.map +1 -0
- package/dist/discrete/layers/lines.d.ts +1 -0
- package/dist/discrete/layers/lines.d.ts.map +1 -0
- package/dist/discrete/layers/logo.d.ts +1 -0
- package/dist/discrete/layers/logo.d.ts.map +1 -0
- package/dist/discrete/layers/pairedPoints.d.ts +1 -0
- package/dist/discrete/layers/pairedPoints.d.ts.map +1 -0
- package/dist/discrete/layers/sina.d.ts +1 -0
- package/dist/discrete/layers/sina.d.ts.map +1 -0
- package/dist/discrete/layers/stackedArea.d.ts +1 -0
- package/dist/discrete/layers/stackedArea.d.ts.map +1 -0
- package/dist/discrete/layers/stackedBar.d.ts +1 -0
- package/dist/discrete/layers/stackedBar.d.ts.map +1 -0
- package/dist/discrete/layers/stats/MannWhitneyU.d.ts +1 -0
- package/dist/discrete/layers/stats/MannWhitneyU.d.ts.map +1 -0
- package/dist/discrete/layers/stats/index.d.ts +1 -0
- package/dist/discrete/layers/stats/index.d.ts.map +1 -0
- package/dist/discrete/layers/stats/pValueCalculation.d.ts +1 -0
- package/dist/discrete/layers/stats/pValueCalculation.d.ts.map +1 -0
- package/dist/discrete/layers/stats/pValueCorrection.d.ts +1 -0
- package/dist/discrete/layers/stats/pValueCorrection.d.ts.map +1 -0
- package/dist/discrete/layers/types.d.ts +1 -0
- package/dist/discrete/layers/types.d.ts.map +1 -0
- package/dist/discrete/layers/violins.d.ts +1 -0
- package/dist/discrete/layers/violins.d.ts.map +1 -0
- package/dist/discrete/utils/getChartStatsPadding.d.ts +1 -0
- package/dist/discrete/utils/getChartStatsPadding.d.ts.map +1 -0
- package/dist/discrete/utils/getFacetLabels.d.ts +1 -0
- package/dist/discrete/utils/getFacetLabels.d.ts.map +1 -0
- package/dist/discrete/utils/getFacetStringKey.d.ts +1 -0
- package/dist/discrete/utils/getFacetStringKey.d.ts.map +1 -0
- package/dist/discrete/utils/getOutliersBounds.d.ts +1 -0
- package/dist/discrete/utils/getOutliersBounds.d.ts.map +1 -0
- package/dist/discrete/utils/index.d.ts +1 -0
- package/dist/discrete/utils/index.d.ts.map +1 -0
- package/dist/discrete/utils/statsPValue.d.ts +1 -0
- package/dist/discrete/utils/statsPValue.d.ts.map +1 -0
- package/dist/heatmap/ChartRenderer.d.ts +1 -0
- package/dist/heatmap/ChartRenderer.d.ts.map +1 -0
- package/dist/heatmap/HeatmapSettingsImpl.d.ts +1 -0
- package/dist/heatmap/HeatmapSettingsImpl.d.ts.map +1 -0
- package/dist/heatmap/components/Annotations/Annotation.d.ts +1 -0
- package/dist/heatmap/components/Annotations/Annotation.d.ts.map +1 -0
- package/dist/heatmap/components/Annotations/AnnotationCellsCanvas.d.ts +1 -0
- package/dist/heatmap/components/Annotations/AnnotationCellsCanvas.d.ts.map +1 -0
- package/dist/heatmap/components/Annotations/AnnotationCellsSvg.d.ts +1 -0
- package/dist/heatmap/components/Annotations/AnnotationCellsSvg.d.ts.map +1 -0
- package/dist/heatmap/components/Annotations/index.d.ts +1 -0
- package/dist/heatmap/components/Annotations/index.d.ts.map +1 -0
- package/dist/heatmap/components/CanvasCells.d.ts +1 -0
- package/dist/heatmap/components/CanvasCells.d.ts.map +1 -0
- package/dist/heatmap/components/Captions/AxisCaptions.d.ts +1 -0
- package/dist/heatmap/components/Captions/AxisCaptions.d.ts.map +1 -0
- package/dist/heatmap/components/Captions/GroupCaptions.d.ts +1 -0
- package/dist/heatmap/components/Captions/GroupCaptions.d.ts.map +1 -0
- package/dist/heatmap/components/Captions/index.d.ts +1 -0
- package/dist/heatmap/components/Captions/index.d.ts.map +1 -0
- package/dist/heatmap/components/Chart.d.ts +1 -0
- package/dist/heatmap/components/Chart.d.ts.map +1 -0
- package/dist/heatmap/components/ChartsGroup.d.ts +1 -0
- package/dist/heatmap/components/ChartsGroup.d.ts.map +1 -0
- package/dist/heatmap/components/Dendrograms.d.ts +1 -0
- package/dist/heatmap/components/Dendrograms.d.ts.map +1 -0
- package/dist/heatmap/components/Frames.d.ts +1 -0
- package/dist/heatmap/components/Frames.d.ts.map +1 -0
- package/dist/heatmap/components/SvgCells.d.ts +1 -0
- package/dist/heatmap/components/SvgCells.d.ts.map +1 -0
- package/dist/heatmap/components/tooltipUtils.d.ts +1 -0
- package/dist/heatmap/components/tooltipUtils.d.ts.map +1 -0
- package/dist/heatmap/components/types.d.ts +1 -0
- package/dist/heatmap/components/types.d.ts.map +1 -0
- package/dist/heatmap/constants.d.ts +1 -0
- package/dist/heatmap/constants.d.ts.map +1 -0
- package/dist/heatmap/fillCellsData.d.ts +1 -0
- package/dist/heatmap/fillCellsData.d.ts.map +1 -0
- package/dist/heatmap/fillCellsData.js +106 -106
- package/dist/heatmap/fillCellsData.js.map +1 -1
- package/dist/heatmap/getCells.d.ts +1 -0
- package/dist/heatmap/getCells.d.ts.map +1 -0
- package/dist/heatmap/getClusters.d.ts +1 -0
- package/dist/heatmap/getClusters.d.ts.map +1 -0
- package/dist/heatmap/getDendrograms.d.ts +1 -0
- package/dist/heatmap/getDendrograms.d.ts.map +1 -0
- package/dist/heatmap/index.d.ts +1 -0
- package/dist/heatmap/index.d.ts.map +1 -0
- package/dist/heatmap/utils/calculateAnnotationTitleSizes.d.ts +1 -0
- package/dist/heatmap/utils/calculateAnnotationTitleSizes.d.ts.map +1 -0
- package/dist/heatmap/utils/calculateCaptionTails.d.ts +1 -0
- package/dist/heatmap/utils/calculateCaptionTails.d.ts.map +1 -0
- package/dist/heatmap/utils/calculateChartSideElementSizes.d.ts +1 -0
- package/dist/heatmap/utils/calculateChartSideElementSizes.d.ts.map +1 -0
- package/dist/heatmap/utils/calculateSideElementsBBoxes.d.ts +1 -0
- package/dist/heatmap/utils/calculateSideElementsBBoxes.d.ts.map +1 -0
- package/dist/heatmap/utils/createColorScales.d.ts +1 -0
- package/dist/heatmap/utils/createColorScales.d.ts.map +1 -0
- package/dist/heatmap/utils/index.d.ts +1 -0
- package/dist/heatmap/utils/index.d.ts.map +1 -0
- package/dist/histogram/ChartRenderer.d.ts +1 -0
- package/dist/histogram/ChartRenderer.d.ts.map +1 -0
- package/dist/histogram/HistogramSettingsImpl.d.ts +1 -0
- package/dist/histogram/HistogramSettingsImpl.d.ts.map +1 -0
- package/dist/histogram/components/Chart.d.ts +1 -0
- package/dist/histogram/components/Chart.d.ts.map +1 -0
- package/dist/histogram/components/Chart.js +53 -53
- package/dist/histogram/components/Chart.js.map +1 -1
- package/dist/histogram/components/ChartsGroup.d.ts +1 -0
- package/dist/histogram/components/ChartsGroup.d.ts.map +1 -0
- package/dist/histogram/components/types.d.ts +1 -0
- package/dist/histogram/components/types.d.ts.map +1 -0
- package/dist/histogram/constants.d.ts +1 -0
- package/dist/histogram/constants.d.ts.map +1 -0
- package/dist/histogram/getHistogramData.d.ts +1 -0
- package/dist/histogram/getHistogramData.d.ts.map +1 -0
- package/dist/histogram/getHistogramData.js +46 -46
- package/dist/histogram/getHistogramData.js.map +1 -1
- package/dist/histogram/index.d.ts +1 -0
- package/dist/histogram/index.d.ts.map +1 -0
- package/dist/histogram/index.js +61 -61
- package/dist/histogram/index.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/scatterplot/ChartRenderer.d.ts +1 -0
- package/dist/scatterplot/ChartRenderer.d.ts.map +1 -0
- package/dist/scatterplot/ScatterplotSettingsImpl.d.ts +1 -0
- package/dist/scatterplot/ScatterplotSettingsImpl.d.ts.map +1 -0
- package/dist/scatterplot/components/Chart.d.ts +1 -0
- package/dist/scatterplot/components/Chart.d.ts.map +1 -0
- package/dist/scatterplot/components/ChartAxis.d.ts +1 -0
- package/dist/scatterplot/components/ChartAxis.d.ts.map +1 -0
- package/dist/scatterplot/components/ChartAxisTitles.d.ts +1 -0
- package/dist/scatterplot/components/ChartAxisTitles.d.ts.map +1 -0
- package/dist/scatterplot/components/ChartFacetTitle.d.ts +1 -0
- package/dist/scatterplot/components/ChartFacetTitle.d.ts.map +1 -0
- package/dist/scatterplot/components/ChartLayersData.d.ts +1 -0
- package/dist/scatterplot/components/ChartLayersData.d.ts.map +1 -0
- package/dist/scatterplot/components/ChartTooltip.d.ts +1 -0
- package/dist/scatterplot/components/ChartTooltip.d.ts.map +1 -0
- package/dist/scatterplot/components/ChartTrendsData.d.ts +1 -0
- package/dist/scatterplot/components/ChartTrendsData.d.ts.map +1 -0
- package/dist/scatterplot/components/ChartsGroup.d.ts +1 -0
- package/dist/scatterplot/components/ChartsGroup.d.ts.map +1 -0
- package/dist/scatterplot/components/Grid.d.ts +1 -0
- package/dist/scatterplot/components/Grid.d.ts.map +1 -0
- package/dist/scatterplot/components/types.d.ts +1 -0
- package/dist/scatterplot/components/types.d.ts.map +1 -0
- package/dist/scatterplot/constants.d.ts +1 -0
- package/dist/scatterplot/constants.d.ts.map +1 -0
- package/dist/scatterplot/dots.d.ts +1 -0
- package/dist/scatterplot/dots.d.ts.map +1 -0
- package/dist/scatterplot/getLayersData.d.ts +1 -0
- package/dist/scatterplot/getLayersData.d.ts.map +1 -0
- package/dist/scatterplot/index.d.ts +1 -0
- package/dist/scatterplot/index.d.ts.map +1 -0
- package/dist/scatterplot/index.js +74 -71
- package/dist/scatterplot/index.js.map +1 -1
- package/dist/scatterplot/linearRegression.d.ts +1 -0
- package/dist/scatterplot/linearRegression.d.ts.map +1 -0
- package/dist/scatterplot/utils/createAesGetter.d.ts +1 -0
- package/dist/scatterplot/utils/createAesGetter.d.ts.map +1 -0
- package/dist/scatterplot/utils/createLegendInfo.d.ts +1 -0
- package/dist/scatterplot/utils/createLegendInfo.d.ts.map +1 -0
- package/dist/scatterplot/utils/createLegendInfo.js +41 -41
- package/dist/scatterplot/utils/createLegendInfo.js.map +1 -1
- package/dist/scatterplot/utils/formatColumnValue.d.ts +1 -0
- package/dist/scatterplot/utils/formatColumnValue.d.ts.map +1 -0
- package/dist/scatterplot/utils/formatColumnValue.js +7 -6
- package/dist/scatterplot/utils/formatColumnValue.js.map +1 -1
- package/dist/scatterplot/utils/getTicksAndFormat.d.ts +1 -0
- package/dist/scatterplot/utils/getTicksAndFormat.d.ts.map +1 -0
- package/dist/scatterplot/utils/getVisibleLabels.d.ts +1 -0
- package/dist/scatterplot/utils/getVisibleLabels.d.ts.map +1 -0
- package/dist/scatterplot/utils/isNumericScale.d.ts +1 -0
- package/dist/scatterplot/utils/isNumericScale.d.ts.map +1 -0
- package/dist/scatterplot/utils/sortDotsByGrouping.d.ts +1 -0
- package/dist/scatterplot/utils/sortDotsByGrouping.d.ts.map +1 -0
- package/dist/scatterplot-umap/ChartRenderer.d.ts +1 -0
- package/dist/scatterplot-umap/ChartRenderer.d.ts.map +1 -0
- package/dist/scatterplot-umap/SettingsImpl.d.ts +1 -0
- package/dist/scatterplot-umap/SettingsImpl.d.ts.map +1 -0
- package/dist/scatterplot-umap/colors.d.ts +1 -0
- package/dist/scatterplot-umap/colors.d.ts.map +1 -0
- package/dist/scatterplot-umap/components/Lasso.d.ts +1 -0
- package/dist/scatterplot-umap/components/Lasso.d.ts.map +1 -0
- package/dist/scatterplot-umap/components/LowerSVG.d.ts +1 -0
- package/dist/scatterplot-umap/components/LowerSVG.d.ts.map +1 -0
- package/dist/scatterplot-umap/components/LowerSVG.js.map +1 -1
- package/dist/scatterplot-umap/components/SVGLayer.d.ts +1 -0
- package/dist/scatterplot-umap/components/SVGLayer.d.ts.map +1 -0
- package/dist/scatterplot-umap/components/UpperSVG.d.ts +1 -0
- package/dist/scatterplot-umap/components/UpperSVG.d.ts.map +1 -0
- package/dist/scatterplot-umap/constants.d.ts +1 -0
- package/dist/scatterplot-umap/constants.d.ts.map +1 -0
- package/dist/scatterplot-umap/index.d.ts +1 -0
- package/dist/scatterplot-umap/index.d.ts.map +1 -0
- package/dist/scatterplot-umap/index.js +77 -74
- package/dist/scatterplot-umap/index.js.map +1 -1
- package/dist/scatterplot-umap/types.d.ts +1 -0
- package/dist/scatterplot-umap/types.d.ts.map +1 -0
- package/dist/types/bubble.d.ts +43 -0
- package/dist/types/bubble.d.ts.map +1 -0
- package/dist/types/common.d.ts +39 -0
- package/dist/types/common.d.ts.map +1 -0
- package/dist/types/common.js +31 -30
- package/dist/types/common.js.map +1 -1
- package/dist/types/dendro.d.ts +104 -0
- package/dist/types/dendro.d.ts.map +1 -0
- package/dist/types/discrete.d.ts +168 -0
- package/dist/types/discrete.d.ts.map +1 -0
- package/dist/types/heatmap.d.ts +160 -0
- package/dist/types/heatmap.d.ts.map +1 -0
- package/dist/types/histogram.d.ts +23 -0
- package/dist/types/histogram.d.ts.map +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/scatterplot-umap.d.ts +141 -0
- package/dist/types/scatterplot-umap.d.ts.map +1 -0
- package/dist/types/scatterplot.d.ts +183 -0
- package/dist/types/scatterplot.d.ts.map +1 -0
- package/dist/utils/TextMeasurer/TextMeasurer.d.ts +1 -0
- package/dist/utils/TextMeasurer/TextMeasurer.d.ts.map +1 -0
- package/dist/utils/WorkerFactory.d.ts +1 -0
- package/dist/utils/WorkerFactory.d.ts.map +1 -0
- package/dist/utils/arrangeLegendParts.d.ts +1 -0
- package/dist/utils/arrangeLegendParts.d.ts.map +1 -0
- package/dist/utils/arraysAreDifferent.d.ts +1 -0
- package/dist/utils/arraysAreDifferent.d.ts.map +1 -0
- package/dist/utils/createMultilineDiscreteLabels.d.ts +1 -0
- package/dist/utils/createMultilineDiscreteLabels.d.ts.map +1 -0
- package/dist/utils/getChartEdgeSides.d.ts +1 -0
- package/dist/utils/getChartEdgeSides.d.ts.map +1 -0
- package/dist/utils/getContinuousColorScale.d.ts +1 -0
- package/dist/utils/getContinuousColorScale.d.ts.map +1 -0
- package/dist/utils/getContinuousLegendTicks.d.ts +1 -0
- package/dist/utils/getContinuousLegendTicks.d.ts.map +1 -0
- package/dist/utils/getFacetOrGroupKey.d.ts +1 -0
- package/dist/utils/getFacetOrGroupKey.d.ts.map +1 -0
- package/dist/utils/getFacetRowsColumns.d.ts +1 -0
- package/dist/utils/getFacetRowsColumns.d.ts.map +1 -0
- package/dist/utils/getKeysCombination.d.ts +1 -0
- package/dist/utils/getKeysCombination.d.ts.map +1 -0
- package/dist/utils/getLegendWidth.d.ts +1 -0
- package/dist/utils/getLegendWidth.d.ts.map +1 -0
- package/dist/utils/getLineShape.d.ts +1 -0
- package/dist/utils/getLineShape.d.ts.map +1 -0
- package/dist/utils/getPointShape.d.ts +1 -0
- package/dist/utils/getPointShape.d.ts.map +1 -0
- package/dist/utils/getSizeLegendItem.d.ts +1 -0
- package/dist/utils/getSizeLegendItem.d.ts.map +1 -0
- package/dist/utils/hooks/useFunction.d.ts +1 -0
- package/dist/utils/hooks/useFunction.d.ts.map +1 -0
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/measureMultilineDiscreteLabels.d.ts +1 -0
- package/dist/utils/measureMultilineDiscreteLabels.d.ts.map +1 -0
- package/dist/utils/numberFormat.d.ts +1 -0
- package/dist/utils/numberFormat.d.ts.map +1 -0
- package/dist/utils/splitTextByWidth.d.ts +1 -0
- package/dist/utils/splitTextByWidth.d.ts.map +1 -0
- package/package.json +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../src/scatterplot/index.ts"],"sourcesContent":["import { renderToString } from 'react-dom/server.browser';\nimport { AbstractChart } from '../AbstractChart';\nimport type { DataFrame } from '../DataFrame';\nimport type {\n ErrorInfoScatterplotGroupsX,\n ErrorInfoScatterplotGroupsY} from '../types';\nimport {\n type AesItem,\n type AxisSettings,\n type AxisSettingsDiscrete,\n type Category,\n type ColumnName,\n type ContinuousAesFromColumn,\n type ErrorInfoFacets,\n getUnknownErrorInfo,\n type InheritAesScatterplot,\n isErrorInfo,\n type ScatterplotEventHandlers,\n type ScatterplotLegendInfo,\n type ScatterplotSettings,\n} from '../types';\nimport { arraysAreDifferent } from '../utils/arraysAreDifferent';\nimport { getKeysCombinations } from '../utils/getKeysCombination';\nimport ChartRenderer from './ChartRenderer';\nimport type { GroupedDots } from './dots';\nimport { getDots } from './dots';\nimport type { ScatterplotLayerData } from './getLayersData';\nimport { getLayersData } from './getLayersData';\nimport type { TrendsData } from './linearRegression';\nimport { getRegressionData } from './linearRegression';\nimport { ScatterplotSettingsImpl } from './ScatterplotSettingsImpl';\nimport { addPalettesToAesMapping, createLegendInfo } from './utils/createLegendInfo';\nimport type { DiscreteAxisData } from './components/types';\nimport { MAX_FACETS_COUNT, MAX_GROUPS_COUNT } from '../constants';\nimport { getFacetLabels } from '../discrete/utils/getFacetLabels';\n\nfunction isInheritMapping<T extends (string | number)>(value:T | InheritAesScatterplot | ContinuousAesFromColumn<T>):value is InheritAesScatterplot {\n return typeof value === 'object' && 'type' in value && value.type === 'grouping';\n}\n\nfunction getDiscreteAxisData(data: DataFrame, axis: AxisSettings, column: ColumnName): DiscreteAxisData {\n if (axis.scale === 'discrete') {\n const keys = axis.keys ? axis.keys : data.getColumnCategories(column.value);\n return {keys, labels: keys.reduce((res, v) => {\n const labelsMap = axis.labels ?? {};\n const labelValue = labelsMap[v] ?? (column.valueLabels ? data.getColumnValue(column.valueLabels, data.getColumnCategoryRowIndex(column.value, v as Category)) : v);\n res[v] = String(labelValue);\n return res;\n }, {} as Record<string, string>)};\n }\n return {keys: [], labels: {}};\n}\n\nexport class ChartScatterplot extends AbstractChart {\n settings: ScatterplotSettingsImpl;\n chartRenderer: ChartRenderer;\n\n onTooltipHintSwitch: (v:boolean) => void = () => undefined;\n calculatedData: {\n onlyPositive: {x: boolean; y: boolean};\n dotsByFacets: GroupedDots;\n facetKeys: string[];\n facetKeysCombinations: string[][];\n facetLabels: Record<string, string[]>;\n trendsData: TrendsData | null;\n legendLabels: ScatterplotLegendInfo;\n layersData: Record<string, ScatterplotLayerData[]>;\n discreteAxisDataX: DiscreteAxisData;\n discreteAxisDataY: DiscreteAxisData;\n } | null = null;\n\n constructor(data: DataFrame, settings: ScatterplotSettings, eventHandlers?:ScatterplotEventHandlers) {\n super(data, settings);\n\n this.chartRenderer = new ChartRenderer();\n this.settings = new ScatterplotSettingsImpl(settings);\n if (eventHandlers) {\n this.onTooltipHintSwitch = eventHandlers.onTooltipHintSwitch;\n }\n }\n\n mount(node: HTMLElement) {\n try {\n this.chartRenderer.init(node);\n this._updateData();\n this._updateChart();\n this.hasError = false;\n this.errorInfo = null;\n } catch (err) {\n this.hasError = true;\n if (err instanceof Error) {\n this.errorInfo = isErrorInfo(err.cause) ? err.cause : getUnknownErrorInfo(err);\n this.chartRenderer.renderError(err.message as string);\n console.error(err);\n }\n }\n }\n\n unmount() {\n this.chartRenderer.clear();\n }\n\n updateSettingsAndData(data: DataFrame, settings: ScatterplotSettings) {\n try {\n const previousSettings = this.settings;\n const previousData = this.data;\n this.settings = new ScatterplotSettingsImpl(settings);\n this.data = data;\n if (\n this._needUpdateCalculatedDataBySettings(previousSettings, this.settings) ||\n this._needUpdateCalculatedDataByData(previousData, this.data)\n ) {\n this._updateData();\n } else {\n this._updateAesInData();\n }\n this._updateChart();\n this.hasError = false;\n this.errorInfo = null;\n } catch (err) {\n this.hasError = true;\n console.error(err);\n if (err instanceof Error) {\n this.errorInfo = isErrorInfo(err.cause) ? err.cause : getUnknownErrorInfo(err);\n this.chartRenderer.renderError(err.message as string);\n console.error(err);\n }\n }\n }\n\n updateChartState(_field: string, _value: unknown) {\n console.warn('no chart state for scatterplot');\n }\n\n export(): string {\n this._updateChart();\n return renderToString(this.chartRenderer.component);\n }\n\n _needUpdateCalculatedDataBySettings(prevSettings: ScatterplotSettingsImpl, settings: ScatterplotSettingsImpl) {\n return (\n prevSettings.facetBy.some((el, idx) => el.value !== settings.facetBy[idx]?.value) ||\n prevSettings.grouping.length !== settings.grouping.length ||\n arraysAreDifferent(\n prevSettings.grouping.map(v => v.columnName.value),\n settings.grouping.map(v => v.columnName.value),\n ) ||\n prevSettings.grouping.some((v, idx) => arraysAreDifferent(v.order, settings.grouping?.[idx].order)) ||\n arraysAreDifferent((prevSettings.chartSettings.xAxis as AxisSettingsDiscrete).keys, (settings.chartSettings.xAxis as AxisSettingsDiscrete).keys) ||\n arraysAreDifferent((prevSettings.chartSettings.yAxis as AxisSettingsDiscrete).keys, (settings.chartSettings.yAxis as AxisSettingsDiscrete).keys) ||\n (prevSettings.label?.value || settings.label?.value) && prevSettings.label?.value !== settings.label?.value ||\n prevSettings.layers.length !== settings.layers.length ||\n prevSettings.layers.some((l, idx) => l.type !== settings.layers[idx].type) ||\n Boolean(prevSettings.trend) !== Boolean(settings.trend)\n );\n }\n\n _needUpdateCalculatedDataByData(prevData: DataFrame, data: DataFrame) {\n const prevKeys = Object.keys(prevData.data);\n const keys = Object.keys(data.data);\n return (\n prevData.id !== data.id ||\n prevKeys.length !== keys.length ||\n prevKeys.some(key => prevData.data[key].length !== data.data[key]?.length)\n );\n }\n\n _updateData() {\n const {x, y, facetBy, grouping, dotSize, dotShape, trend, layers, label, highlight, chartSettings} = this.settings;\n const facetKeysLists = facetBy.map(column => this.data.getColumnCategories(column.value)).filter(v => v.length > 0);\n const categoryGroupingKeysLists = grouping.map(({columnName}) => this.data.getColumnCategories(columnName.value)).filter(v => v.length > 0);\n\n const facetKeysCombinations = facetKeysLists.length\n ? getKeysCombinations(facetKeysLists)\n : [['null']];\n const categoryGroupingCombinations = categoryGroupingKeysLists.length\n ? getKeysCombinations(categoryGroupingKeysLists)\n : [['null']];\n\n const facetGroupingValues = facetBy.map(column => column.value) ?? null;\n\n this.data.setGrouping([...facetGroupingValues]);\n const onlyPositive = {\n x: this.data.getColumn(x.value).every(v => {\n return v === null || !(Number(v) < 0);\n }),\n y: this.data.getColumn(y.value).every(v => {\n return v === null || !(Number(v) < 0);\n }),\n };\n\n const groupingColumns = grouping.map(v => v.columnName);\n\n const dotsByFacets = getDots(this.data, facetKeysCombinations, x, y, label, highlight, grouping, chartSettings.xAxis, chartSettings.yAxis, layers.find(l => l.type === 'dots'));\n const facetKeys = Object.keys(dotsByFacets);\n\n if (facetKeys.length > MAX_FACETS_COUNT) {\n const errorInfo: ErrorInfoFacets = {\n type: 'tooManyFacets',\n info: {count: facetKeys.length, maxCount: MAX_FACETS_COUNT}\n };\n throw Error(errorInfo.type, {cause: errorInfo});\n }\n\n const trendsData = getRegressionData(this.data, dotsByFacets, facetKeys, categoryGroupingCombinations, groupingColumns, trend);\n\n const discreteAxisDataX = getDiscreteAxisData(this.data, chartSettings.xAxis, x);\n const discreteAxisDataY = getDiscreteAxisData(this.data, chartSettings.yAxis, y);\n\n if (discreteAxisDataX.keys.length > MAX_GROUPS_COUNT) {\n const errorInfo: ErrorInfoScatterplotGroupsX = {\n type: 'tooManyScatterplotGroupsX',\n info: {count: discreteAxisDataX.keys.length, maxCount: MAX_GROUPS_COUNT}\n };\n throw Error(errorInfo.type, {cause: errorInfo});\n }\n if (discreteAxisDataY.keys.length > MAX_GROUPS_COUNT) {\n const errorInfo: ErrorInfoScatterplotGroupsY = {\n type: 'tooManyScatterplotGroupsY',\n info: {count: discreteAxisDataY.keys.length, maxCount: MAX_GROUPS_COUNT}\n };\n throw Error(errorInfo.type, {cause: errorInfo});\n }\n const allAesMappings = [...grouping, ...dotSize, ...dotShape];\n const legendLabels = createLegendInfo(this.data, allAesMappings, layers);\n const layersData = getLayersData(this.data, layers, facetKeys, dotsByFacets, categoryGroupingCombinations, groupingColumns, chartSettings.xAxis, discreteAxisDataX);\n const facetLabels = getFacetLabels(this.data, facetBy, facetKeys, facetKeysCombinations);\n\n this.calculatedData = {\n onlyPositive,\n dotsByFacets,\n facetKeys,\n facetKeysCombinations,\n facetLabels,\n trendsData,\n legendLabels,\n layersData,\n discreteAxisDataX,\n discreteAxisDataY\n };\n }\n\n _updateAesInData() {\n const calculated = this.calculatedData;\n if (!calculated) {\n return;\n }\n const {grouping, trend, layers, dotSize, dotShape} = this.settings;\n const {facetKeys, trendsData} = calculated;\n\n facetKeys.forEach(facetKey => {\n for (let i = 0; i < layers.length; i++) {\n calculated.layersData[facetKey][i].info = layers[i];\n }\n });\n\n const allAesMappings = [...grouping, ...dotSize, ...dotShape];\n\n allAesMappings.forEach(({columnName, inheritedAes}) => {\n const usedAes = new Set<keyof AesItem>();\n const usedAesFromPalettes: Partial<Record<keyof AesItem, string[]>> = {}; // if there is palette in mapping then\n layers.forEach(layer => {\n if (layer.aes) {\n Object.entries(layer.aes).forEach(([key, value]) => {\n if (isInheritMapping(value) && value.value === columnName.value) {\n usedAes.add(key as keyof AesItem);\n if (value.palette) {\n usedAesFromPalettes[key as keyof AesItem] = value.palette;\n }\n }\n });\n }\n });\n calculated.legendLabels[columnName.value].usedAes = [...usedAes];\n calculated.legendLabels[columnName.value].aesMap = addPalettesToAesMapping(\n columnName,\n usedAesFromPalettes,\n inheritedAes\n );\n });\n if (trendsData && trend) {\n Object.keys(trendsData).forEach((key) => {\n trendsData[key].forEach(trendInfo => {\n trendInfo.color = trend.color;\n trendInfo.bounded = trend.bounded;\n });\n });\n }\n }\n\n _updateChart() {\n if (!this.calculatedData) {\n return;\n }\n const {facetLabels} = this.calculatedData;\n const {id, chartSettings, facetSettings, grouping, dotSize, dotShape, keyColumn, layers, trend} = this.settings;\n\n this.chartRenderer.render(\n this.data,\n id,\n chartSettings,\n facetSettings,\n this.calculatedData.facetKeys,\n this.calculatedData.facetKeys.map(v => facetLabels[v]), //for titles, if facet by more than 1 column\n this.calculatedData.dotsByFacets,\n this.calculatedData.trendsData,\n keyColumn,\n this.calculatedData.onlyPositive,\n this.calculatedData.legendLabels,\n this.calculatedData.layersData,\n [...grouping.map(v => v.columnName), ...dotSize.map(v => v.columnName), ...dotShape.map(v => v.columnName)],\n layers,\n trend,\n this.calculatedData.discreteAxisDataX,\n this.calculatedData.discreteAxisDataY,\n this.onTooltipHintSwitch\n );\n }\n}\n"],"names":["isInheritMapping","value","getDiscreteAxisData","data","axis","column","keys","res","v","labelValue","ChartScatterplot","AbstractChart","settings","eventHandlers","__publicField","ChartRenderer","ScatterplotSettingsImpl","node","err","isErrorInfo","getUnknownErrorInfo","previousSettings","previousData","_field","_value","renderToString","prevSettings","el","idx","_a","arraysAreDifferent","_b","_c","_d","l","prevData","prevKeys","key","x","y","facetBy","grouping","dotSize","dotShape","trend","layers","label","highlight","chartSettings","facetKeysLists","categoryGroupingKeysLists","columnName","facetKeysCombinations","getKeysCombinations","categoryGroupingCombinations","facetGroupingValues","onlyPositive","groupingColumns","dotsByFacets","getDots","facetKeys","MAX_FACETS_COUNT","errorInfo","trendsData","getRegressionData","discreteAxisDataX","discreteAxisDataY","MAX_GROUPS_COUNT","allAesMappings","legendLabels","createLegendInfo","layersData","getLayersData","facetLabels","getFacetLabels","calculated","facetKey","i","inheritedAes","usedAes","usedAesFromPalettes","layer","addPalettesToAesMapping","trendInfo","id","facetSettings","keyColumn"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/scatterplot/index.ts"],"sourcesContent":["import { renderToString } from 'react-dom/server.browser';\nimport { AbstractChart } from '../AbstractChart';\nimport type { DataFrame } from '../DataFrame';\nimport type {\n ErrorInfoScatterplotGroupsX,\n ErrorInfoScatterplotGroupsY} from '../types';\nimport {\n type AesItem,\n type AxisSettings,\n type AxisSettingsDiscrete,\n type Category,\n type ColumnName,\n type ContinuousAesFromColumn,\n type ErrorInfoFacets,\n getUnknownErrorInfo,\n type InheritAesScatterplot,\n isErrorInfo,\n type ScatterplotEventHandlers,\n type ScatterplotLegendInfo,\n type ScatterplotSettings,\n} from '../types';\nimport { arraysAreDifferent } from '../utils/arraysAreDifferent';\nimport { getKeysCombinations } from '../utils/getKeysCombination';\nimport ChartRenderer from './ChartRenderer';\nimport type { GroupedDots } from './dots';\nimport { getDots } from './dots';\nimport type { ScatterplotLayerData } from './getLayersData';\nimport { getLayersData } from './getLayersData';\nimport type { TrendsData } from './linearRegression';\nimport { getRegressionData } from './linearRegression';\nimport { ScatterplotSettingsImpl } from './ScatterplotSettingsImpl';\nimport { addPalettesToAesMapping, createLegendInfo } from './utils/createLegendInfo';\nimport type { DiscreteAxisData } from './components/types';\nimport { MAX_FACETS_COUNT, MAX_GROUPS_COUNT } from '../constants';\nimport { getFacetLabels } from '../discrete/utils/getFacetLabels';\n\nfunction isInheritMapping<T extends (string | number)>(value:T | InheritAesScatterplot | ContinuousAesFromColumn<T>):value is InheritAesScatterplot {\n return typeof value === 'object' && 'type' in value && value.type === 'grouping';\n}\n\nfunction getDiscreteAxisData(data: DataFrame, axis: AxisSettings, column: ColumnName): DiscreteAxisData {\n if (axis.scale === 'discrete') {\n const keys = axis.keys ? axis.keys : data.getColumnCategories(column.value, false);\n return {keys, labels: keys.reduce((res, v) => {\n const labelsMap = axis.labels ?? {};\n const labelValue = labelsMap[v] ?? (column.valueLabels ? data.getColumnValue(column.valueLabels, data.getColumnCategoryRowIndex(column.value, v as Category)) : v);\n res[v] = String(labelValue);\n if (v === 'null') {\n res[v] = column.nullValueLabel ?? 'NA';\n }\n return res;\n }, {} as Record<string, string>)};\n }\n return {keys: [], labels: {}};\n}\n\nexport class ChartScatterplot extends AbstractChart {\n settings: ScatterplotSettingsImpl;\n chartRenderer: ChartRenderer;\n\n onTooltipHintSwitch: (v:boolean) => void = () => undefined;\n calculatedData: {\n onlyPositive: {x: boolean; y: boolean};\n dotsByFacets: GroupedDots;\n facetKeys: string[];\n facetKeysCombinations: string[][];\n facetLabels: Record<string, string[]>;\n trendsData: TrendsData | null;\n legendLabels: ScatterplotLegendInfo;\n layersData: Record<string, ScatterplotLayerData[]>;\n discreteAxisDataX: DiscreteAxisData;\n discreteAxisDataY: DiscreteAxisData;\n } | null = null;\n\n constructor(data: DataFrame, settings: ScatterplotSettings, eventHandlers?:ScatterplotEventHandlers) {\n super(data, settings);\n\n this.chartRenderer = new ChartRenderer();\n this.settings = new ScatterplotSettingsImpl(settings);\n if (eventHandlers) {\n this.onTooltipHintSwitch = eventHandlers.onTooltipHintSwitch;\n }\n }\n\n mount(node: HTMLElement) {\n try {\n this.chartRenderer.init(node);\n this._updateData();\n this._updateChart();\n this.hasError = false;\n this.errorInfo = null;\n } catch (err) {\n this.hasError = true;\n if (err instanceof Error) {\n this.errorInfo = isErrorInfo(err.cause) ? err.cause : getUnknownErrorInfo(err);\n this.chartRenderer.renderError(err.message as string);\n console.error(err);\n }\n }\n }\n\n unmount() {\n this.chartRenderer.clear();\n }\n\n updateSettingsAndData(data: DataFrame, settings: ScatterplotSettings) {\n try {\n const previousSettings = this.settings;\n const previousData = this.data;\n this.settings = new ScatterplotSettingsImpl(settings);\n this.data = data;\n if (\n this._needUpdateCalculatedDataBySettings(previousSettings, this.settings) ||\n this._needUpdateCalculatedDataByData(previousData, this.data)\n ) {\n this._updateData();\n } else {\n this._updateAesInData();\n }\n this._updateChart();\n this.hasError = false;\n this.errorInfo = null;\n } catch (err) {\n this.hasError = true;\n console.error(err);\n if (err instanceof Error) {\n this.errorInfo = isErrorInfo(err.cause) ? err.cause : getUnknownErrorInfo(err);\n this.chartRenderer.renderError(err.message as string);\n console.error(err);\n }\n }\n }\n\n updateChartState(_field: string, _value: unknown) {\n console.warn('no chart state for scatterplot');\n }\n\n export(): string {\n this._updateChart();\n return renderToString(this.chartRenderer.component);\n }\n\n _needUpdateCalculatedDataBySettings(prevSettings: ScatterplotSettingsImpl, settings: ScatterplotSettingsImpl) {\n return (\n prevSettings.facetBy.some((el, idx) => el.value !== settings.facetBy[idx]?.value) ||\n prevSettings.grouping.length !== settings.grouping.length ||\n arraysAreDifferent(\n prevSettings.grouping.map(v => v.columnName.value),\n settings.grouping.map(v => v.columnName.value),\n ) ||\n arraysAreDifferent(\n prevSettings.grouping.map(v => v.columnName.nullValueLabel),\n settings.grouping.map(v => v.columnName.nullValueLabel),\n ) ||\n prevSettings.grouping.some((v, idx) => arraysAreDifferent(v.order, settings.grouping?.[idx].order)) ||\n arraysAreDifferent((prevSettings.chartSettings.xAxis as AxisSettingsDiscrete).keys, (settings.chartSettings.xAxis as AxisSettingsDiscrete).keys) ||\n arraysAreDifferent((prevSettings.chartSettings.yAxis as AxisSettingsDiscrete).keys, (settings.chartSettings.yAxis as AxisSettingsDiscrete).keys) ||\n (prevSettings.label?.value || settings.label?.value) && prevSettings.label?.value !== settings.label?.value ||\n prevSettings.layers.length !== settings.layers.length ||\n prevSettings.layers.some((l, idx) => l.type !== settings.layers[idx].type) ||\n Boolean(prevSettings.trend) !== Boolean(settings.trend)\n );\n }\n\n _needUpdateCalculatedDataByData(prevData: DataFrame, data: DataFrame) {\n const prevKeys = Object.keys(prevData.data);\n const keys = Object.keys(data.data);\n return (\n prevData.id !== data.id ||\n prevKeys.length !== keys.length ||\n prevKeys.some(key => prevData.data[key].length !== data.data[key]?.length)\n );\n }\n\n _updateData() {\n const {x, y, facetBy, grouping, dotSize, dotShape, trend, layers, label, highlight, chartSettings} = this.settings;\n const facetKeysLists = facetBy.map(column => this.data.getColumnCategories(column.value)).filter(v => v.length > 0);\n const categoryGroupingKeysLists = grouping.map(({columnName}) => this.data.getColumnCategories(columnName.value, false)).filter(v => v.length > 0);\n\n const facetKeysCombinations = facetKeysLists.length\n ? getKeysCombinations(facetKeysLists)\n : [['null']];\n const categoryGroupingCombinations = categoryGroupingKeysLists.length\n ? getKeysCombinations(categoryGroupingKeysLists)\n : [['null']];\n\n const facetGroupingValues = facetBy.map(column => column.value) ?? null;\n\n this.data.setGrouping([...facetGroupingValues]);\n const onlyPositive = {\n x: this.data.getColumn(x.value).every(v => {\n return v === null || !(Number(v) < 0);\n }),\n y: this.data.getColumn(y.value).every(v => {\n return v === null || !(Number(v) < 0);\n }),\n };\n\n const groupingColumns = grouping.map(v => v.columnName);\n\n const dotsByFacets = getDots(this.data, facetKeysCombinations, x, y, label, highlight, grouping, chartSettings.xAxis, chartSettings.yAxis, layers.find(l => l.type === 'dots'));\n const facetKeys = Object.keys(dotsByFacets);\n\n if (facetKeys.length > MAX_FACETS_COUNT) {\n const errorInfo: ErrorInfoFacets = {\n type: 'tooManyFacets',\n info: {count: facetKeys.length, maxCount: MAX_FACETS_COUNT}\n };\n throw Error(errorInfo.type, {cause: errorInfo});\n }\n\n const trendsData = getRegressionData(this.data, dotsByFacets, facetKeys, categoryGroupingCombinations, groupingColumns, trend);\n\n const discreteAxisDataX = getDiscreteAxisData(this.data, chartSettings.xAxis, x);\n const discreteAxisDataY = getDiscreteAxisData(this.data, chartSettings.yAxis, y);\n\n if (discreteAxisDataX.keys.length > MAX_GROUPS_COUNT) {\n const errorInfo: ErrorInfoScatterplotGroupsX = {\n type: 'tooManyScatterplotGroupsX',\n info: {count: discreteAxisDataX.keys.length, maxCount: MAX_GROUPS_COUNT}\n };\n throw Error(errorInfo.type, {cause: errorInfo});\n }\n if (discreteAxisDataY.keys.length > MAX_GROUPS_COUNT) {\n const errorInfo: ErrorInfoScatterplotGroupsY = {\n type: 'tooManyScatterplotGroupsY',\n info: {count: discreteAxisDataY.keys.length, maxCount: MAX_GROUPS_COUNT}\n };\n throw Error(errorInfo.type, {cause: errorInfo});\n }\n const allAesMappings = [...grouping, ...dotSize, ...dotShape];\n const legendLabels = createLegendInfo(this.data, allAesMappings, layers);\n const layersData = getLayersData(this.data, layers, facetKeys, dotsByFacets, categoryGroupingCombinations, groupingColumns, chartSettings.xAxis, discreteAxisDataX);\n const facetLabels = getFacetLabels(this.data, facetBy, facetKeys, facetKeysCombinations);\n\n this.calculatedData = {\n onlyPositive,\n dotsByFacets,\n facetKeys,\n facetKeysCombinations,\n facetLabels,\n trendsData,\n legendLabels,\n layersData,\n discreteAxisDataX,\n discreteAxisDataY\n };\n }\n\n _updateAesInData() {\n const calculated = this.calculatedData;\n if (!calculated) {\n return;\n }\n const {grouping, trend, layers, dotSize, dotShape} = this.settings;\n const {facetKeys, trendsData} = calculated;\n\n facetKeys.forEach(facetKey => {\n for (let i = 0; i < layers.length; i++) {\n calculated.layersData[facetKey][i].info = layers[i];\n }\n });\n\n const allAesMappings = [...grouping, ...dotSize, ...dotShape];\n\n allAesMappings.forEach(({columnName, inheritedAes}) => {\n const usedAes = new Set<keyof AesItem>();\n const usedAesFromPalettes: Partial<Record<keyof AesItem, string[]>> = {}; // if there is palette in mapping then\n layers.forEach(layer => {\n if (layer.aes) {\n Object.entries(layer.aes).forEach(([key, value]) => {\n if (isInheritMapping(value) && value.value === columnName.value) {\n usedAes.add(key as keyof AesItem);\n if (value.palette) {\n usedAesFromPalettes[key as keyof AesItem] = value.palette;\n }\n }\n });\n }\n });\n calculated.legendLabels[columnName.value].usedAes = [...usedAes];\n calculated.legendLabels[columnName.value].aesMap = addPalettesToAesMapping(\n columnName,\n usedAesFromPalettes,\n inheritedAes\n );\n });\n if (trendsData && trend) {\n Object.keys(trendsData).forEach((key) => {\n trendsData[key].forEach(trendInfo => {\n trendInfo.color = trend.color;\n trendInfo.bounded = trend.bounded;\n });\n });\n }\n }\n\n _updateChart() {\n if (!this.calculatedData) {\n return;\n }\n const {facetLabels} = this.calculatedData;\n const {id, chartSettings, facetSettings, grouping, dotSize, dotShape, keyColumn, layers, trend} = this.settings;\n\n this.chartRenderer.render(\n this.data,\n id,\n chartSettings,\n facetSettings,\n this.calculatedData.facetKeys,\n this.calculatedData.facetKeys.map(v => facetLabels[v]), //for titles, if facet by more than 1 column\n this.calculatedData.dotsByFacets,\n this.calculatedData.trendsData,\n keyColumn,\n this.calculatedData.onlyPositive,\n this.calculatedData.legendLabels,\n this.calculatedData.layersData,\n [...grouping.map(v => v.columnName), ...dotSize.map(v => v.columnName), ...dotShape.map(v => v.columnName)],\n layers,\n trend,\n this.calculatedData.discreteAxisDataX,\n this.calculatedData.discreteAxisDataY,\n this.onTooltipHintSwitch\n );\n }\n}\n"],"names":["isInheritMapping","value","getDiscreteAxisData","data","axis","column","keys","res","v","labelValue","ChartScatterplot","AbstractChart","settings","eventHandlers","__publicField","ChartRenderer","ScatterplotSettingsImpl","node","err","isErrorInfo","getUnknownErrorInfo","previousSettings","previousData","_field","_value","renderToString","prevSettings","el","idx","_a","arraysAreDifferent","_b","_c","_d","l","prevData","prevKeys","key","x","y","facetBy","grouping","dotSize","dotShape","trend","layers","label","highlight","chartSettings","facetKeysLists","categoryGroupingKeysLists","columnName","facetKeysCombinations","getKeysCombinations","categoryGroupingCombinations","facetGroupingValues","onlyPositive","groupingColumns","dotsByFacets","getDots","facetKeys","MAX_FACETS_COUNT","errorInfo","trendsData","getRegressionData","discreteAxisDataX","discreteAxisDataY","MAX_GROUPS_COUNT","allAesMappings","legendLabels","createLegendInfo","layersData","getLayersData","facetLabels","getFacetLabels","calculated","facetKey","i","inheritedAes","usedAes","usedAesFromPalettes","layer","addPalettesToAesMapping","trendInfo","id","facetSettings","keyColumn"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAoCA,SAASA,EAA8CC,GAA6F;AAChJ,SAAO,OAAOA,KAAU,YAAY,UAAUA,KAASA,EAAM,SAAS;AAC1E;AAEA,SAASC,EAAoBC,GAAiBC,GAAoBC,GAAsC;AACpG,MAAID,EAAK,UAAU,YAAY;AAC3B,UAAME,IAAOF,EAAK,OAAOA,EAAK,OAAOD,EAAK,oBAAoBE,EAAO,OAAO,EAAK;AACjF,WAAO,EAAC,MAAAC,GAAM,QAAQA,EAAK,OAAO,CAACC,GAAKC,MAAM;AAE1C,YAAMC,KADYL,EAAK,UAAU,CAAA,GACJI,CAAC,MAAMH,EAAO,cAAcF,EAAK,eAAeE,EAAO,aAAaF,EAAK,0BAA0BE,EAAO,OAAOG,CAAa,CAAC,IAAIA;AAChK,aAAAD,EAAIC,CAAC,IAAI,OAAOC,CAAU,GACtBD,MAAM,WACND,EAAIC,CAAC,IAAIH,EAAO,kBAAkB,OAE/BE;AAAA,IACX,GAAG,CAAA,CAA4B,EAAA;AAAA,EACnC;AACA,SAAO,EAAC,MAAM,IAAI,QAAQ,CAAA,EAAC;AAC/B;AAEO,MAAMG,WAAyBC,EAAc;AAAA,EAkBhD,YAAYR,GAAiBS,GAA+BC,GAAyC;AACjG,UAAMV,GAAMS,CAAQ;AAlBxB,IAAAE,EAAA;AACA,IAAAA,EAAA;AAEA,IAAAA,EAAA,6BAA2C,MAAA;AAAA;AAC3C,IAAAA,EAAA,wBAWW;AAKP,SAAK,gBAAgB,IAAIC,EAAA,GACzB,KAAK,WAAW,IAAIC,EAAwBJ,CAAQ,GAChDC,MACA,KAAK,sBAAsBA,EAAc;AAAA,EAEjD;AAAA,EAEA,MAAMI,GAAmB;AACrB,QAAI;AACA,WAAK,cAAc,KAAKA,CAAI,GAC5B,KAAK,YAAA,GACL,KAAK,aAAA,GACL,KAAK,WAAW,IAChB,KAAK,YAAY;AAAA,IACrB,SAASC,GAAK;AACV,WAAK,WAAW,IACZA,aAAe,UACf,KAAK,YAAYC,EAAYD,EAAI,KAAK,IAAIA,EAAI,QAAQE,EAAoBF,CAAG,GAC7E,KAAK,cAAc,YAAYA,EAAI,OAAiB,GACpD,QAAQ,MAAMA,CAAG;AAAA,IAEzB;AAAA,EACJ;AAAA,EAEA,UAAU;AACN,SAAK,cAAc,MAAA;AAAA,EACvB;AAAA,EAEA,sBAAsBf,GAAiBS,GAA+B;AAClE,QAAI;AACA,YAAMS,IAAmB,KAAK,UACxBC,IAAe,KAAK;AAC1B,WAAK,WAAW,IAAIN,EAAwBJ,CAAQ,GACpD,KAAK,OAAOT,GAER,KAAK,oCAAoCkB,GAAkB,KAAK,QAAQ,KACxE,KAAK,gCAAgCC,GAAc,KAAK,IAAI,IAE5D,KAAK,YAAA,IAEL,KAAK,iBAAA,GAET,KAAK,aAAA,GACL,KAAK,WAAW,IAChB,KAAK,YAAY;AAAA,IACrB,SAASJ,GAAK;AACV,WAAK,WAAW,IAChB,QAAQ,MAAMA,CAAG,GACbA,aAAe,UACf,KAAK,YAAYC,EAAYD,EAAI,KAAK,IAAIA,EAAI,QAAQE,EAAoBF,CAAG,GAC7E,KAAK,cAAc,YAAYA,EAAI,OAAiB,GACpD,QAAQ,MAAMA,CAAG;AAAA,IAEzB;AAAA,EACJ;AAAA,EAEA,iBAAiBK,GAAgBC,GAAiB;AAC9C,YAAQ,KAAK,gCAAgC;AAAA,EACjD;AAAA,EAEA,SAAiB;AACb,gBAAK,aAAA,GACEC,iBAAe,KAAK,cAAc,SAAS;AAAA,EACtD;AAAA,EAEA,oCAAoCC,GAAuCd,GAAmC;;AAC1G,WACIc,EAAa,QAAQ,KAAK,CAACC,GAAIC,MAAA;;AAAQ,aAAAD,EAAG,YAAUE,IAAAjB,EAAS,QAAQgB,CAAG,MAApB,gBAAAC,EAAuB;AAAA,KAAK,KAChFH,EAAa,SAAS,WAAWd,EAAS,SAAS,UACnDkB;AAAA,MACIJ,EAAa,SAAS,IAAI,CAAAlB,MAAKA,EAAE,WAAW,KAAK;AAAA,MACjDI,EAAS,SAAS,IAAI,CAAAJ,MAAKA,EAAE,WAAW,KAAK;AAAA,IAAA,KAEjDsB;AAAA,MACIJ,EAAa,SAAS,IAAI,CAAAlB,MAAKA,EAAE,WAAW,cAAc;AAAA,MAC1DI,EAAS,SAAS,IAAI,CAAAJ,MAAKA,EAAE,WAAW,cAAc;AAAA,IAAA,KAE1DkB,EAAa,SAAS,KAAK,CAAClB,GAAGoB,MAAA;;AAAQ,aAAAE,EAAmBtB,EAAE,QAAOqB,IAAAjB,EAAS,aAAT,gBAAAiB,EAAoBD,GAAK,KAAK;AAAA,KAAC,KAClGE,EAAoBJ,EAAa,cAAc,MAA+B,MAAOd,EAAS,cAAc,MAA+B,IAAI,KAC/IkB,EAAoBJ,EAAa,cAAc,MAA+B,MAAOd,EAAS,cAAc,MAA+B,IAAI,QAC9IiB,IAAAH,EAAa,UAAb,gBAAAG,EAAoB,YAASE,IAAAnB,EAAS,UAAT,gBAAAmB,EAAgB,aAAUC,IAAAN,EAAa,UAAb,gBAAAM,EAAoB,aAAUC,IAAArB,EAAS,UAAT,gBAAAqB,EAAgB,UACtGP,EAAa,OAAO,WAAWd,EAAS,OAAO,UAC/Cc,EAAa,OAAO,KAAK,CAACQ,GAAGN,MAAQM,EAAE,SAAStB,EAAS,OAAOgB,CAAG,EAAE,IAAI,KACzE,EAAQF,EAAa,SAAW,EAAQd,EAAS;AAAA,EAEzD;AAAA,EAEA,gCAAgCuB,GAAqBhC,GAAiB;AAClE,UAAMiC,IAAW,OAAO,KAAKD,EAAS,IAAI,GACpC7B,IAAO,OAAO,KAAKH,EAAK,IAAI;AAClC,WACIgC,EAAS,OAAOhC,EAAK,MACrBiC,EAAS,WAAW9B,EAAK,UACzB8B,EAAS,KAAK;;AAAO,aAAAD,EAAS,KAAKE,CAAG,EAAE,aAAWR,IAAA1B,EAAK,KAAKkC,CAAG,MAAb,gBAAAR,EAAgB;AAAA,KAAM;AAAA,EAEjF;AAAA,EAEA,cAAc;AACV,UAAM,EAAC,GAAAS,GAAG,GAAAC,GAAG,SAAAC,GAAS,UAAAC,GAAU,SAAAC,GAAS,UAAAC,GAAU,OAAAC,GAAO,QAAAC,GAAQ,OAAAC,GAAO,WAAAC,GAAW,eAAAC,EAAA,IAAiB,KAAK,UACpGC,IAAiBT,EAAQ,IAAI,CAAAnC,MAAU,KAAK,KAAK,oBAAoBA,EAAO,KAAK,CAAC,EAAE,OAAO,CAAAG,MAAKA,EAAE,SAAS,CAAC,GAC5G0C,IAA4BT,EAAS,IAAI,CAAC,EAAC,YAAAU,QAAgB,KAAK,KAAK,oBAAoBA,EAAW,OAAO,EAAK,CAAC,EAAE,OAAO,CAAA3C,MAAKA,EAAE,SAAS,CAAC,GAE3I4C,IAAwBH,EAAe,SACvCI,EAAoBJ,CAAc,IAClC,CAAC,CAAC,MAAM,CAAC,GACTK,IAA+BJ,EAA0B,SACzDG,EAAoBH,CAAyB,IAC7C,CAAC,CAAC,MAAM,CAAC,GAETK,IAAsBf,EAAQ,IAAI,CAAAnC,MAAUA,EAAO,KAAK,KAAK;AAEnE,SAAK,KAAK,YAAY,CAAC,GAAGkD,CAAmB,CAAC;AAC9C,UAAMC,IAAe;AAAA,MACjB,GAAG,KAAK,KAAK,UAAUlB,EAAE,KAAK,EAAE,MAAM,CAAA9B,MAC3BA,MAAM,QAAQ,EAAE,OAAOA,CAAC,IAAI,EACtC;AAAA,MACD,GAAG,KAAK,KAAK,UAAU+B,EAAE,KAAK,EAAE,MAAM,CAAA/B,MAC3BA,MAAM,QAAQ,EAAE,OAAOA,CAAC,IAAI,EACtC;AAAA,IAAA,GAGCiD,IAAkBhB,EAAS,IAAI,CAAAjC,MAAKA,EAAE,UAAU,GAEhDkD,IAAeC,EAAQ,KAAK,MAAMP,GAAuBd,GAAGC,GAAGO,GAAOC,GAAWN,GAAUO,EAAc,OAAOA,EAAc,OAAOH,EAAO,KAAK,OAAKX,EAAE,SAAS,MAAM,CAAC,GACxK0B,IAAY,OAAO,KAAKF,CAAY;AAE1C,QAAIE,EAAU,SAASC,GAAkB;AACrC,YAAMC,IAA6B;AAAA,QAC/B,MAAM;AAAA,QACN,MAAM,EAAC,OAAOF,EAAU,QAAQ,UAAUC,EAAA;AAAA,MAAgB;AAE9D,YAAM,MAAMC,EAAU,MAAM,EAAC,OAAOA,GAAU;AAAA,IAClD;AAEA,UAAMC,IAAaC,EAAkB,KAAK,MAAMN,GAAcE,GAAWN,GAA8BG,GAAiBb,CAAK,GAEvHqB,IAAoB/D,EAAoB,KAAK,MAAM8C,EAAc,OAAOV,CAAC,GACzE4B,IAAoBhE,EAAoB,KAAK,MAAM8C,EAAc,OAAOT,CAAC;AAE/E,QAAI0B,EAAkB,KAAK,SAASE,GAAkB;AAClD,YAAML,IAAyC;AAAA,QAC3C,MAAM;AAAA,QACN,MAAM,EAAC,OAAOG,EAAkB,KAAK,QAAQ,UAAUE,EAAA;AAAA,MAAgB;AAE3E,YAAM,MAAML,EAAU,MAAM,EAAC,OAAOA,GAAU;AAAA,IAClD;AACA,QAAII,EAAkB,KAAK,SAASC,GAAkB;AAClD,YAAML,IAAyC;AAAA,QAC3C,MAAM;AAAA,QACN,MAAM,EAAC,OAAOI,EAAkB,KAAK,QAAQ,UAAUC,EAAA;AAAA,MAAgB;AAE3E,YAAM,MAAML,EAAU,MAAM,EAAC,OAAOA,GAAU;AAAA,IAClD;AACA,UAAMM,IAAiB,CAAC,GAAG3B,GAAU,GAAGC,GAAS,GAAGC,CAAQ,GACtD0B,IAAeC,EAAiB,KAAK,MAAMF,GAAgBvB,CAAM,GACjE0B,IAAaC,EAAc,KAAK,MAAM3B,GAAQe,GAAWF,GAAcJ,GAA8BG,GAAiBT,EAAc,OAAOiB,CAAiB,GAC5JQ,IAAcC,EAAe,KAAK,MAAMlC,GAASoB,GAAWR,CAAqB;AAEvF,SAAK,iBAAiB;AAAA,MAClB,cAAAI;AAAA,MACA,cAAAE;AAAA,MACA,WAAAE;AAAA,MACA,uBAAAR;AAAA,MACA,aAAAqB;AAAA,MACA,YAAAV;AAAA,MACA,cAAAM;AAAA,MACA,YAAAE;AAAA,MACA,mBAAAN;AAAA,MACA,mBAAAC;AAAA,IAAA;AAAA,EAER;AAAA,EAEA,mBAAmB;AACf,UAAMS,IAAa,KAAK;AACxB,QAAI,CAACA;AACD;AAEJ,UAAM,EAAC,UAAAlC,GAAU,OAAAG,GAAO,QAAAC,GAAQ,SAAAH,GAAS,UAAAC,EAAA,IAAY,KAAK,UACpD,EAAC,WAAAiB,GAAW,YAAAG,EAAA,IAAcY;AAEhC,IAAAf,EAAU,QAAQ,CAAAgB,MAAY;AAC1B,eAASC,IAAI,GAAGA,IAAIhC,EAAO,QAAQgC;AAC/B,QAAAF,EAAW,WAAWC,CAAQ,EAAEC,CAAC,EAAE,OAAOhC,EAAOgC,CAAC;AAAA,IAE1D,CAAC,GAEsB,CAAC,GAAGpC,GAAU,GAAGC,GAAS,GAAGC,CAAQ,EAE7C,QAAQ,CAAC,EAAC,YAAAQ,GAAY,cAAA2B,QAAkB;AACnD,YAAMC,wBAAc,IAAA,GACdC,IAAgE,CAAA;AACtE,MAAAnC,EAAO,QAAQ,CAAAoC,MAAS;AACpB,QAAIA,EAAM,OACN,OAAO,QAAQA,EAAM,GAAG,EAAE,QAAQ,CAAC,CAAC5C,GAAKpC,CAAK,MAAM;AAChD,UAAID,EAAiBC,CAAK,KAAKA,EAAM,UAAUkD,EAAW,UACtD4B,EAAQ,IAAI1C,CAAoB,GAC5BpC,EAAM,YACN+E,EAAoB3C,CAAoB,IAAIpC,EAAM;AAAA,QAG9D,CAAC;AAAA,MAET,CAAC,GACD0E,EAAW,aAAaxB,EAAW,KAAK,EAAE,UAAU,CAAC,GAAG4B,CAAO,GAC/DJ,EAAW,aAAaxB,EAAW,KAAK,EAAE,SAAS+B;AAAA,QAC/C/B;AAAA,QACA6B;AAAA,QACAF;AAAA,MAAA;AAAA,IAER,CAAC,GACGf,KAAcnB,KACd,OAAO,KAAKmB,CAAU,EAAE,QAAQ,CAAC1B,MAAQ;AACrC,MAAA0B,EAAW1B,CAAG,EAAE,QAAQ,CAAA8C,MAAa;AACjC,QAAAA,EAAU,QAAQvC,EAAM,OACxBuC,EAAU,UAAUvC,EAAM;AAAA,MAC9B,CAAC;AAAA,IACL,CAAC;AAAA,EAET;AAAA,EAEA,eAAe;AACX,QAAI,CAAC,KAAK;AACN;AAEJ,UAAM,EAAC,aAAA6B,MAAe,KAAK,gBACrB,EAAC,IAAAW,GAAI,eAAApC,GAAe,eAAAqC,GAAe,UAAA5C,GAAU,SAAAC,GAAS,UAAAC,GAAU,WAAA2C,GAAW,QAAAzC,GAAQ,OAAAD,EAAA,IAAS,KAAK;AAEvG,SAAK,cAAc;AAAA,MACf,KAAK;AAAA,MACLwC;AAAA,MACApC;AAAA,MACAqC;AAAA,MACA,KAAK,eAAe;AAAA,MACpB,KAAK,eAAe,UAAU,IAAI,CAAA7E,MAAKiE,EAAYjE,CAAC,CAAC;AAAA;AAAA,MACrD,KAAK,eAAe;AAAA,MACpB,KAAK,eAAe;AAAA,MACpB8E;AAAA,MACA,KAAK,eAAe;AAAA,MACpB,KAAK,eAAe;AAAA,MACpB,KAAK,eAAe;AAAA,MACpB,CAAC,GAAG7C,EAAS,IAAI,OAAKjC,EAAE,UAAU,GAAG,GAAGkC,EAAQ,IAAI,CAAAlC,MAAKA,EAAE,UAAU,GAAG,GAAGmC,EAAS,IAAI,CAAAnC,MAAKA,EAAE,UAAU,CAAC;AAAA,MAC1GqC;AAAA,MACAD;AAAA,MACA,KAAK,eAAe;AAAA,MACpB,KAAK,eAAe;AAAA,MACpB,KAAK;AAAA,IAAA;AAAA,EAEb;AACJ;"}
|
|
@@ -39,3 +39,4 @@ type TrendInfo = {
|
|
|
39
39
|
export type TrendsData = Record<string, TrendInfo[]>;
|
|
40
40
|
export declare function getRegressionData(dataFrame: DataFrame, dotsByFacets: GroupedDots, facetKeys: string[], groupingKeysValues: string[][], grouping: ColumnName[], trend: ScatterplotSettingsImpl['trend']): TrendsData | null;
|
|
41
41
|
export {};
|
|
42
|
+
//# sourceMappingURL=linearRegression.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"linearRegression.d.ts","sourceRoot":"","sources":["../../src/scatterplot/linearRegression.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,UAAU,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAC3F,OAAO,KAAK,EAAO,WAAW,EAAE,MAAM,QAAQ,CAAC;AAC/C,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEzE,KAAK,UAAU,GAAG;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAC,MAAM,CAAA;CAAC,CAAC;AAgJxC,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAsBrE;AAmBD,MAAM,MAAM,iBAAiB,GAAG;IAC5B,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CACpD,CAAA;AAED,wBAAgB,kBAAkB,CAC9B,IAAI,EAAE,UAAU,EAAE,EAClB,OAAO,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,GAC/B,CAAC,CAAC,EAAE,MAAM,KAAK,iBAAiB,CAiBlC;AAyED,KAAK,SAAS,GAAG;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IAC/B,WAAW,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,iBAAiB,CAAC;IAC9C,OAAO,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,MAAM,CAAC;IACrG,KAAK,EAAE,MAAM,GAAG,qBAAqB,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;IACxE,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1B,KAAK,EAAE;QACH,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,CAAC,CAAC,EAAE,MAAM,CAAC;QACX,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,YAAY,CAAC,EAAE;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAC;YAAC,UAAU,EAAC,MAAM,CAAC;YAAC,cAAc,EAAE,MAAM,CAAA;SAAC,CAAC;KAChG,CAAC;CACL,CAAC;AACF,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;AAErD,wBAAgB,iBAAiB,CAC7B,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,WAAW,EACzB,SAAS,EAAE,MAAM,EAAE,EACnB,kBAAkB,EAAE,MAAM,EAAE,EAAE,EAC9B,QAAQ,EAAE,UAAU,EAAE,EACtB,KAAK,EAAE,uBAAuB,CAAC,OAAO,CAAC,GACxC,UAAU,GAAG,IAAI,CA6CnB"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import { DataFrame } from '../../DataFrame';
|
|
2
2
|
import { AesItem, ContinuousAesFromColumn, InheritAesScatterplot, LineShape, PointShape, ScatterplotLegendInfo } from '../../types';
|
|
3
3
|
export declare function createAesGetter<ValueType extends string | number | PointShape | LineShape>(dataFrame: DataFrame, legendInfo: ScatterplotLegendInfo, aesItem: ValueType | ContinuousAesFromColumn<ValueType> | InheritAesScatterplot, field: keyof AesItem): (rowIndex: number) => ValueType;
|
|
4
|
+
//# sourceMappingURL=createAesGetter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createAesGetter.d.ts","sourceRoot":"","sources":["../../../src/scatterplot/utils/createAesGetter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EACR,OAAO,EACP,uBAAuB,EACvB,qBAAqB,EACrB,SAAS,EACT,UAAU,EACV,qBAAqB,EACxB,MAAM,aAAa,CAAC;AAQrB,wBAAgB,eAAe,CAAC,SAAS,SAAS,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,EACtF,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,qBAAqB,EACjC,OAAO,EAAE,SAAS,GAAG,uBAAuB,CAAC,SAAS,CAAC,GAAG,qBAAqB,EAC/E,KAAK,EAAE,MAAM,OAAO,cAOU,MAAM,KAEO,SAAS,CAuBvD"}
|
|
@@ -3,3 +3,4 @@ import { AesRecord, AesItem, Category, ColumnName, ScatterplotLayer, Scatterplot
|
|
|
3
3
|
import { ScatterplotSettingsImpl } from '../ScatterplotSettingsImpl';
|
|
4
4
|
export declare function addPalettesToAesMapping(columnName: ColumnName, usedAesFromPalettes: Partial<Record<keyof AesItem, string[]>>, inheritedAes?: AesRecord): (category: Category, field: keyof AesItem) => string | number | undefined;
|
|
5
5
|
export declare function createLegendInfo(data: DataFrame, grouping: ScatterplotSettingsImpl['grouping'], layers: ScatterplotLayer[]): ScatterplotLegendInfo;
|
|
6
|
+
//# sourceMappingURL=createLegendInfo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createLegendInfo.d.ts","sourceRoot":"","sources":["../../../src/scatterplot/utils/createLegendInfo.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EACR,OAAO,EACP,QAAQ,EACR,UAAU,EAGV,gBAAgB,EAChB,qBAAqB,EACxB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAyB1E,wBAAgB,uBAAuB,CACnC,UAAU,EAAE,UAAU,EACtB,mBAAmB,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,EAC7D,YAAY,CAAC,EAAE,SAAS,cAQO,QAAQ,SAAS,MAAM,OAAO,iCAchE;AAKD,wBAAgB,gBAAgB,CAC5B,IAAI,EAAE,SAAS,EACf,QAAQ,EAAE,uBAAuB,CAAC,UAAU,CAAC,EAC7C,MAAM,EAAE,gBAAgB,EAAE,GAC3B,qBAAqB,CA2DvB"}
|
|
@@ -1,58 +1,58 @@
|
|
|
1
|
-
import { MAX_SHOWN_UNIQUE_VALUES_IN_LABELS as
|
|
1
|
+
import { MAX_SHOWN_UNIQUE_VALUES_IN_LABELS as L } from "../../constants.js";
|
|
2
2
|
const I = /* @__PURE__ */ (() => {
|
|
3
|
-
const
|
|
3
|
+
const n = /* @__PURE__ */ new Map();
|
|
4
4
|
return {
|
|
5
|
-
clear: () =>
|
|
6
|
-
getIndex: (
|
|
7
|
-
let e =
|
|
8
|
-
e === void 0 && (e = /* @__PURE__ */ new Map(),
|
|
9
|
-
let
|
|
10
|
-
return
|
|
5
|
+
clear: () => n.clear(),
|
|
6
|
+
getIndex: (a, o) => {
|
|
7
|
+
let e = n.get(a.value);
|
|
8
|
+
e === void 0 && (e = /* @__PURE__ */ new Map(), n.set(a.value, e));
|
|
9
|
+
let r = e.get(o);
|
|
10
|
+
return r === void 0 && (r = e.size, e.set(o, r)), r;
|
|
11
11
|
}
|
|
12
12
|
};
|
|
13
13
|
})();
|
|
14
|
-
function v(
|
|
14
|
+
function v(n, h, d) {
|
|
15
15
|
I.clear();
|
|
16
|
-
const
|
|
17
|
-
return (
|
|
18
|
-
var
|
|
19
|
-
const
|
|
20
|
-
return
|
|
16
|
+
const a = d && Object.keys(d).length > 0, o = h.dotFill, e = o && o.length > 0, r = h.lineColor, p = r && r.length > 0;
|
|
17
|
+
return (i, g) => {
|
|
18
|
+
var f;
|
|
19
|
+
const u = a ? (f = d[i]) == null ? void 0 : f[g] : void 0;
|
|
20
|
+
return g === "dotFill" && e ? o[I.getIndex(n, i) % o.length] ?? u : g === "lineColor" && p ? r[I.getIndex(n, i) % r.length] ?? u : u;
|
|
21
21
|
};
|
|
22
22
|
}
|
|
23
|
-
function A(
|
|
24
|
-
return typeof
|
|
23
|
+
function A(n) {
|
|
24
|
+
return typeof n == "object" && "type" in n && n.type === "grouping";
|
|
25
25
|
}
|
|
26
|
-
function F(
|
|
27
|
-
return
|
|
28
|
-
const e =
|
|
29
|
-
d.forEach((
|
|
30
|
-
|
|
31
|
-
A(
|
|
26
|
+
function F(n, h, d) {
|
|
27
|
+
return h.reduce((a, o) => {
|
|
28
|
+
const e = o.columnName, r = e.nullValueLabel ?? "NA", p = o.order, x = (s) => e.valueLabels ? n.getColumnValueCategory(e.valueLabels, s) : void 0, i = /* @__PURE__ */ new Set(), g = {};
|
|
29
|
+
d.forEach((s) => {
|
|
30
|
+
s.aes && Object.entries(s.aes).forEach(([c, t]) => {
|
|
31
|
+
A(t) && t.value === e.value && (i.add(c), g[c] = t.palette);
|
|
32
32
|
});
|
|
33
33
|
});
|
|
34
|
-
let
|
|
35
|
-
if (
|
|
36
|
-
const
|
|
37
|
-
if (
|
|
38
|
-
|
|
39
|
-
const
|
|
40
|
-
return
|
|
41
|
-
},
|
|
42
|
-
const c =
|
|
43
|
-
|
|
44
|
-
var
|
|
45
|
-
return c[
|
|
34
|
+
let u = {}, f = [];
|
|
35
|
+
if (i.has("dotFill") || i.has("dotShape") || i.has("lineColor")) {
|
|
36
|
+
const s = n.getColumnCategories(e.value, !1);
|
|
37
|
+
if (s.length < L) {
|
|
38
|
+
u = s.reduce((t, l) => {
|
|
39
|
+
const C = n.getColumnCategoryRowIndex(e.value, l);
|
|
40
|
+
return t[l] = x(C) ?? l, t[l] === "null" && (t[l] = r), t;
|
|
41
|
+
}, u);
|
|
42
|
+
const c = s.reduce((t, l) => (t[l] = (p == null ? void 0 : p.indexOf(l)) ?? -1, t), {});
|
|
43
|
+
f = s.sort((t, l) => {
|
|
44
|
+
var C;
|
|
45
|
+
return c[t] !== c[l] ? c[t] - c[l] : ((C = u[t]) == null ? void 0 : C.localeCompare(u[l] ?? "", "en", { numeric: !0 })) ?? 0;
|
|
46
46
|
});
|
|
47
47
|
} else
|
|
48
|
-
|
|
48
|
+
f = s;
|
|
49
49
|
}
|
|
50
|
-
return
|
|
51
|
-
values:
|
|
52
|
-
usedAes: [...
|
|
53
|
-
aesMap: v(e,
|
|
54
|
-
labels:
|
|
55
|
-
},
|
|
50
|
+
return a[e.value] = {
|
|
51
|
+
values: f,
|
|
52
|
+
usedAes: [...i],
|
|
53
|
+
aesMap: v(e, g, o.inheritedAes),
|
|
54
|
+
labels: u
|
|
55
|
+
}, a;
|
|
56
56
|
}, {});
|
|
57
57
|
}
|
|
58
58
|
export {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createLegendInfo.js","sources":["../../../src/scatterplot/utils/createLegendInfo.ts"],"sourcesContent":["import { MAX_SHOWN_UNIQUE_VALUES_IN_LABELS } from '../../constants';\nimport type { DataFrame } from '../../DataFrame';\nimport type {AesRecord} from '../../types';\nimport type {\n AesItem,\n Category,\n ColumnName,\n ContinuousAesFromColumn,\n InheritAesScatterplot,\n ScatterplotLayer,\n ScatterplotLegendInfo\n} from '../../types';\nimport type { ScatterplotSettingsImpl } from '../ScatterplotSettingsImpl';\n\nconst categoryIndexer = (() => {\n const map = new Map<string, Map<Category, number>>();\n const clear = () => map.clear();\n const getIndex = (columnName: ColumnName, category: Category): number => {\n let categoryMap = map.get(columnName.value);\n if (categoryMap === undefined) {\n categoryMap = new Map();\n map.set(columnName.value, categoryMap);\n }\n let index = categoryMap.get(category);\n if (index === undefined) {\n index = categoryMap.size;\n categoryMap.set(category, index);\n }\n return index;\n };\n\n return {\n clear,\n getIndex,\n };\n})();\n\nexport function addPalettesToAesMapping(\n columnName: ColumnName,\n usedAesFromPalettes: Partial<Record<keyof AesItem, string[]>>,\n inheritedAes?: AesRecord\n) {\n categoryIndexer.clear();\n const hasInheritedAes = inheritedAes && Object.keys(inheritedAes).length > 0;\n const dotFill = usedAesFromPalettes['dotFill'];\n const hasDotFill = dotFill && dotFill.length > 0;\n const lineColor = usedAesFromPalettes['lineColor'];\n const hasLineColor = lineColor && lineColor.length > 0;\n const getAesField = (category: Category, field: keyof AesItem) => {\n const inheritedResult = hasInheritedAes ? inheritedAes[category]?.[field] : undefined;\n \n if (field === 'dotFill' && hasDotFill) {\n return dotFill[categoryIndexer.getIndex(columnName, category) % dotFill.length] ?? inheritedResult;\n }\n if (field === 'lineColor' && hasLineColor) {\n return lineColor[categoryIndexer.getIndex(columnName, category) % lineColor.length] ?? inheritedResult;\n }\n \n return inheritedResult;\n };\n\n return getAesField;\n}\n\nfunction isInheritMapping<T extends (string | number)>(value:T | InheritAesScatterplot | ContinuousAesFromColumn<T>):value is InheritAesScatterplot {\n return typeof value === 'object' && 'type' in value && value.type === 'grouping';\n}\nexport function createLegendInfo(\n data: DataFrame,\n grouping: ScatterplotSettingsImpl['grouping'],\n layers: ScatterplotLayer[],\n): ScatterplotLegendInfo {\n return grouping.reduce((res: ScatterplotLegendInfo, groupingElement) => {\n // TODO: remove String conversion\n const column = groupingElement.columnName;\n const order = groupingElement.order;\n const getValueLabel = (index: number) => {\n return column.valueLabels\n ? data.getColumnValueCategory(column.valueLabels, index)\n : undefined;\n };\n\n const usedAes = new Set<keyof AesItem>();\n const usedAesFromPalettes:Partial<Record<keyof AesItem, string[]>> = {}; // if there is palette in mapping then\n layers.forEach(layer => {\n if (!layer.aes) return;\n \n Object.entries(layer.aes).forEach(([key, value]) => {\n if (!(isInheritMapping(value) && value.value === column.value)) return;\n \n usedAes.add(key as keyof AesItem);\n usedAesFromPalettes[key as keyof AesItem] = value.palette;\n });\n });\n let labels: Record<Category, string> = {};\n let values: Category[] = [];\n if (usedAes.has('dotFill') || usedAes.has('dotShape') || usedAes.has('lineColor')) {\n const categories = data.getColumnCategories(column.value, false);\n if (categories.length < MAX_SHOWN_UNIQUE_VALUES_IN_LABELS) {\n labels = categories.reduce((res, category) => {\n const index = data.getColumnCategoryRowIndex(column.value, category);\n res[category] = getValueLabel(index) ?? category;\n return res;\n }, labels);\n const sortWeights = categories.reduce((res, v) => {\n res[v] = order?.indexOf(v) ?? -1;\n return res;\n }, {} as Record<string, number>);\n values = categories.sort((a, b) => {\n if (sortWeights[a] !== sortWeights[b]) {\n return sortWeights[a] - sortWeights[b];\n }\n return labels[a]?.localeCompare(labels[b] ?? '', 'en', {numeric: true}) ?? 0;\n });\n } else {\n values = categories;\n }\n }\n res[column.value] = {\n values,\n usedAes: [...usedAes],\n aesMap: addPalettesToAesMapping(column, usedAesFromPalettes, groupingElement.inheritedAes),\n labels,\n };\n return res;\n }, {});\n}"],"names":["categoryIndexer","map","columnName","category","categoryMap","index","addPalettesToAesMapping","usedAesFromPalettes","inheritedAes","hasInheritedAes","dotFill","hasDotFill","lineColor","hasLineColor","field","inheritedResult","_a","isInheritMapping","value","createLegendInfo","data","grouping","layers","res","groupingElement","column","order","getValueLabel","usedAes","layer","key","labels","values","categories","MAX_SHOWN_UNIQUE_VALUES_IN_LABELS","sortWeights","v","a","b"],"mappings":";AAcA,MAAMA,IAAmB,uBAAM;AAC3B,QAAMC,wBAAU,IAAA;AAgBhB,SAAO;AAAA,IACH,OAhBU,MAAMA,EAAI,MAAA;AAAA,IAiBpB,UAhBa,CAACC,GAAwBC,MAA+B;AACrE,UAAIC,IAAcH,EAAI,IAAIC,EAAW,KAAK;AAC1C,MAAIE,MAAgB,WAChBA,wBAAkB,IAAA,GAClBH,EAAI,IAAIC,EAAW,OAAOE,CAAW;AAEzC,UAAIC,IAAQD,EAAY,IAAID,CAAQ;AACpC,aAAIE,MAAU,WACVA,IAAQD,EAAY,MACpBA,EAAY,IAAID,GAAUE,CAAK,IAE5BA;AAAA,IACX;AAAA,EAII;AAER,GAAA;AAEO,SAASC,EACZJ,GACAK,GACAC,GACF;AACE,EAAAR,EAAgB,MAAA;AAChB,QAAMS,IAAkBD,KAAgB,OAAO,KAAKA,CAAY,EAAE,SAAS,GACrEE,IAAUH,EAAoB,SAC9BI,IAAaD,KAAWA,EAAQ,SAAS,GACzCE,IAAYL,EAAoB,WAChCM,IAAeD,KAAaA,EAAU,SAAS;AAcrD,SAboB,CAACT,GAAoBW,MAAyB;;AAC9D,UAAMC,IAAkBN,KAAkBO,IAAAR,EAAaL,CAAQ,MAArB,gBAAAa,EAAyBF,KAAS;AAE5E,WAAIA,MAAU,aAAaH,IAChBD,EAAQV,EAAgB,SAASE,GAAYC,CAAQ,IAAIO,EAAQ,MAAM,KAAKK,IAEnFD,MAAU,eAAeD,IAClBD,EAAUZ,EAAgB,SAASE,GAAYC,CAAQ,IAAIS,EAAU,MAAM,KAAKG,IAGpFA;AAAA,EACX;AAGJ;AAEA,SAASE,EAA8CC,GAA6F;AAChJ,SAAO,OAAOA,KAAU,YAAY,UAAUA,KAASA,EAAM,SAAS;AAC1E;AACO,SAASC,EACZC,GACAC,GACAC,GACqB;AACrB,SAAOD,EAAS,OAAO,CAACE,GAA4BC,MAAoB;AAEpE,UAAMC,IAASD,EAAgB,YACzBE,
|
|
1
|
+
{"version":3,"file":"createLegendInfo.js","sources":["../../../src/scatterplot/utils/createLegendInfo.ts"],"sourcesContent":["import { MAX_SHOWN_UNIQUE_VALUES_IN_LABELS } from '../../constants';\nimport type { DataFrame } from '../../DataFrame';\nimport type {AesRecord} from '../../types';\nimport type {\n AesItem,\n Category,\n ColumnName,\n ContinuousAesFromColumn,\n InheritAesScatterplot,\n ScatterplotLayer,\n ScatterplotLegendInfo\n} from '../../types';\nimport type { ScatterplotSettingsImpl } from '../ScatterplotSettingsImpl';\n\nconst categoryIndexer = (() => {\n const map = new Map<string, Map<Category, number>>();\n const clear = () => map.clear();\n const getIndex = (columnName: ColumnName, category: Category): number => {\n let categoryMap = map.get(columnName.value);\n if (categoryMap === undefined) {\n categoryMap = new Map();\n map.set(columnName.value, categoryMap);\n }\n let index = categoryMap.get(category);\n if (index === undefined) {\n index = categoryMap.size;\n categoryMap.set(category, index);\n }\n return index;\n };\n\n return {\n clear,\n getIndex,\n };\n})();\n\nexport function addPalettesToAesMapping(\n columnName: ColumnName,\n usedAesFromPalettes: Partial<Record<keyof AesItem, string[]>>,\n inheritedAes?: AesRecord\n) {\n categoryIndexer.clear();\n const hasInheritedAes = inheritedAes && Object.keys(inheritedAes).length > 0;\n const dotFill = usedAesFromPalettes['dotFill'];\n const hasDotFill = dotFill && dotFill.length > 0;\n const lineColor = usedAesFromPalettes['lineColor'];\n const hasLineColor = lineColor && lineColor.length > 0;\n const getAesField = (category: Category, field: keyof AesItem) => {\n const inheritedResult = hasInheritedAes ? inheritedAes[category]?.[field] : undefined;\n \n if (field === 'dotFill' && hasDotFill) {\n return dotFill[categoryIndexer.getIndex(columnName, category) % dotFill.length] ?? inheritedResult;\n }\n if (field === 'lineColor' && hasLineColor) {\n return lineColor[categoryIndexer.getIndex(columnName, category) % lineColor.length] ?? inheritedResult;\n }\n \n return inheritedResult;\n };\n\n return getAesField;\n}\n\nfunction isInheritMapping<T extends (string | number)>(value:T | InheritAesScatterplot | ContinuousAesFromColumn<T>):value is InheritAesScatterplot {\n return typeof value === 'object' && 'type' in value && value.type === 'grouping';\n}\nexport function createLegendInfo(\n data: DataFrame,\n grouping: ScatterplotSettingsImpl['grouping'],\n layers: ScatterplotLayer[],\n): ScatterplotLegendInfo {\n return grouping.reduce((res: ScatterplotLegendInfo, groupingElement) => {\n // TODO: remove String conversion\n const column = groupingElement.columnName;\n const nullValueLabel = column.nullValueLabel ?? 'NA';\n const order = groupingElement.order;\n const getValueLabel = (index: number) => {\n return column.valueLabels\n ? data.getColumnValueCategory(column.valueLabels, index)\n : undefined;\n };\n\n const usedAes = new Set<keyof AesItem>();\n const usedAesFromPalettes:Partial<Record<keyof AesItem, string[]>> = {}; // if there is palette in mapping then\n layers.forEach(layer => {\n if (!layer.aes) return;\n \n Object.entries(layer.aes).forEach(([key, value]) => {\n if (!(isInheritMapping(value) && value.value === column.value)) return;\n \n usedAes.add(key as keyof AesItem);\n usedAesFromPalettes[key as keyof AesItem] = value.palette;\n });\n });\n let labels: Record<Category, string> = {};\n let values: Category[] = [];\n if (usedAes.has('dotFill') || usedAes.has('dotShape') || usedAes.has('lineColor')) {\n const categories = data.getColumnCategories(column.value, false);\n if (categories.length < MAX_SHOWN_UNIQUE_VALUES_IN_LABELS) {\n labels = categories.reduce((res, category) => {\n const index = data.getColumnCategoryRowIndex(column.value, category);\n res[category] = getValueLabel(index) ?? category;\n if (res[category] === 'null') {\n res[category] = nullValueLabel;\n }\n return res;\n }, labels);\n const sortWeights = categories.reduce((res, v) => {\n res[v] = order?.indexOf(v) ?? -1;\n return res;\n }, {} as Record<string, number>);\n values = categories.sort((a, b) => {\n if (sortWeights[a] !== sortWeights[b]) {\n return sortWeights[a] - sortWeights[b];\n }\n return labels[a]?.localeCompare(labels[b] ?? '', 'en', {numeric: true}) ?? 0;\n });\n } else {\n values = categories;\n }\n }\n res[column.value] = {\n values,\n usedAes: [...usedAes],\n aesMap: addPalettesToAesMapping(column, usedAesFromPalettes, groupingElement.inheritedAes),\n labels,\n };\n return res;\n }, {});\n}"],"names":["categoryIndexer","map","columnName","category","categoryMap","index","addPalettesToAesMapping","usedAesFromPalettes","inheritedAes","hasInheritedAes","dotFill","hasDotFill","lineColor","hasLineColor","field","inheritedResult","_a","isInheritMapping","value","createLegendInfo","data","grouping","layers","res","groupingElement","column","nullValueLabel","order","getValueLabel","usedAes","layer","key","labels","values","categories","MAX_SHOWN_UNIQUE_VALUES_IN_LABELS","sortWeights","v","a","b"],"mappings":"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"}
|
|
@@ -2,3 +2,4 @@ import { DataFrame } from '../../DataFrame';
|
|
|
2
2
|
import { ColumnName } from '../../types';
|
|
3
3
|
import { numberFormat } from '../../utils/numberFormat';
|
|
4
4
|
export declare function formatColumnValue(data: DataFrame, rowIdx: number, column: ColumnName | null | undefined, numberFormatter?: typeof numberFormat): string | null;
|
|
5
|
+
//# sourceMappingURL=formatColumnValue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatColumnValue.d.ts","sourceRoot":"","sources":["../../../src/scatterplot/utils/formatColumnValue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAC/C,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAC,YAAY,EAAC,MAAM,0BAA0B,CAAC;AAEtD,wBAAgB,iBAAiB,CAAC,IAAI,EAAC,SAAS,EAAE,MAAM,EAAC,MAAM,EAAE,MAAM,EAAC,UAAU,GAAG,IAAI,GAAG,SAAS,EAAE,eAAe,sBAAe,iBAcpI"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import { numberFormat as
|
|
2
|
-
function
|
|
3
|
-
|
|
1
|
+
import { numberFormat as n } from "../../utils/numberFormat.js";
|
|
2
|
+
function i(u, t, e, l = n) {
|
|
3
|
+
const a = (e == null ? void 0 : e.nullValueLabel) ?? "NA";
|
|
4
|
+
if (!e)
|
|
4
5
|
return null;
|
|
5
|
-
const
|
|
6
|
-
return
|
|
6
|
+
const r = u.getColumnValue(e.valueLabels ?? e.value, t);
|
|
7
|
+
return typeof r == "number" ? r === null ? a : l(r) : r;
|
|
7
8
|
}
|
|
8
9
|
export {
|
|
9
|
-
|
|
10
|
+
i as formatColumnValue
|
|
10
11
|
};
|
|
11
12
|
//# sourceMappingURL=formatColumnValue.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatColumnValue.js","sources":["../../../src/scatterplot/utils/formatColumnValue.ts"],"sourcesContent":["import type {DataFrame} from '../../DataFrame';\nimport type {ColumnName} from '../../types';\nimport {numberFormat} from '../../utils/numberFormat';\n\nexport function formatColumnValue(data:DataFrame, rowIdx:number, column:ColumnName | null | undefined, numberFormatter = numberFormat) {\n if (!column) {\n return null;\n }\n const value = data.getColumnValue(column.valueLabels ?? column.value, rowIdx);\n const isNumber = typeof value === 'number';\n if (!isNumber
|
|
1
|
+
{"version":3,"file":"formatColumnValue.js","sources":["../../../src/scatterplot/utils/formatColumnValue.ts"],"sourcesContent":["import type {DataFrame} from '../../DataFrame';\nimport type {ColumnName} from '../../types';\nimport {numberFormat} from '../../utils/numberFormat';\n\nexport function formatColumnValue(data:DataFrame, rowIdx:number, column:ColumnName | null | undefined, numberFormatter = numberFormat) {\n const nullValueLabel = column?.nullValueLabel ?? 'NA';\n if (!column) {\n return null;\n }\n const value = data.getColumnValue(column.valueLabels ?? column.value, rowIdx);\n const isNumber = typeof value === 'number';\n if (!isNumber) {\n return value;\n }\n if (value === null) {\n return nullValueLabel;\n }\n return numberFormatter(value);\n}"],"names":["formatColumnValue","data","rowIdx","column","numberFormatter","numberFormat","nullValueLabel","value"],"mappings":";AAIO,SAASA,EAAkBC,GAAgBC,GAAeC,GAAsCC,IAAkBC,GAAc;AACnI,QAAMC,KAAiBH,KAAA,gBAAAA,EAAQ,mBAAkB;AACjD,MAAI,CAACA;AACD,WAAO;AAEX,QAAMI,IAAQN,EAAK,eAAeE,EAAO,eAAeA,EAAO,OAAOD,CAAM;AAE5E,SADiB,OAAOK,KAAU,WAI9BA,MAAU,OACHD,IAEJF,EAAgBG,CAAK,IALjBA;AAMf;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getTicksAndFormat.d.ts","sourceRoot":"","sources":["../../../src/scatterplot/utils/getTicksAndFormat.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,gBAAgB,EAAE,WAAW,EAAC,MAAM,UAAU,CAAC;AAEzE,KAAK,KAAK,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAK1G,wBAAgB,iBAAiB,CAAC,KAAK,EAAC,KAAK,EAAE,YAAY,EAAC,OAAO,EAAE,UAAU,UAAQ,GAAE;IAAC,KAAK,EAAC,MAAM,EAAE,CAAC;IAAC,MAAM,EAAC,CAAC,CAAC,EAAC,MAAM,KAAK,MAAM,CAAA;CAAC,CA6BrI"}
|
|
@@ -22,3 +22,4 @@ export declare function getLabelMinX(label: Label): number;
|
|
|
22
22
|
export declare function getLabelMinY(label: Label): number;
|
|
23
23
|
export declare function createLabelPositioner(chartW: number, chartH: number, yOffset?: number, xOffset?: number): (x: number, y: number, w: number, h: number, padding: number) => null | [XPosition, YPosition];
|
|
24
24
|
export {};
|
|
25
|
+
//# sourceMappingURL=getVisibleLabels.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getVisibleLabels.d.ts","sourceRoot":"","sources":["../../../src/scatterplot/utils/getVisibleLabels.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,SAAS,CAAC;AAEnC,KAAK,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;AAC7C,KAAK,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAC7C,MAAM,MAAM,KAAK,GAAG;IAChB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,GAAG,EAAE,GAAG,CAAC;IACT,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,EAAE,SAAS,CAAC;CACxB,CAAC;AACF,MAAM,MAAM,SAAS,GAAG;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CAChB,CAAA;AAoDD,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,UAExC;AACD,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,UAExC;AAcD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,SAAe,EAAE,OAAO,SAAe,OAIrG,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,WAAW,MAAM,KAAG,IAAI,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAYtG"}
|
|
@@ -3,3 +3,4 @@ import { ChartScales } from '../components/types';
|
|
|
3
3
|
import { AxisSettings, AxisSettingsContinuous } from '../../types';
|
|
4
4
|
export declare function isNumericScale(scale: ChartScales['x' | 'y']): scale is Exclude<ChartScales['x' | 'y'], ScalePoint<string | number>>;
|
|
5
5
|
export declare function isContinuousAxis(axis: AxisSettings): axis is AxisSettingsContinuous;
|
|
6
|
+
//# sourceMappingURL=isNumericScale.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isNumericScale.d.ts","sourceRoot":"","sources":["../../../src/scatterplot/utils/isNumericScale.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAExE,wBAAgB,cAAc,CAAC,KAAK,EAAE,WAAW,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,KAAK,IAAI,OAAO,CAAC,WAAW,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAEnI;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAC,YAAY,GAAG,IAAI,IAAI,sBAAsB,CAElF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sortDotsByGrouping.d.ts","sourceRoot":"","sources":["../../../src/scatterplot/utils/sortDotsByGrouping.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAC,KAAK,UAAU,EAAE,KAAK,SAAS,EAAkB,MAAM,aAAa,CAAC;AAC7E,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAE5D,wBAAgB,kBAAkB,CAC9B,SAAS,EAAE,SAAS,EACpB,IAAI,EAAC,GAAG,EAAE,EACV,QAAQ,EAAE;IAAC,UAAU,EAAE,UAAU,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC;CAAC,EAAE,EAC1D,SAAS,EAAE,UAAU,GAAG,IAAI,EAC5B,KAAK,CAAC,EAAE,SAAS,QAoCpB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChartRenderer.d.ts","sourceRoot":"","sources":["../../src/scatterplot-umap/ChartRenderer.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAIrE,OAAO,KAAK,EAAe,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAG7C,OAAO,KAAK,EAAc,UAAU,EAAc,MAAM,iBAAiB,CAAC;AAe1E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uCAAuC,CAAC;AAEnE,OAAO,KAAK,EAAE,UAAU,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AAErE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAM3E,OAAO,KAAK,EAAyB,oBAAoB,EAAE,2BAA2B,EAAE,MAAM,gBAAgB,CAAC;AAC/G,OAAO,KAAK,EACR,UAAU,EACV,aAAa,EACb,WAAW,EAAE,UAAU,EACvB,GAAG,EACH,WAAW,EACX,kBAAkB,EAClB,OAAO,EACP,OAAO,EACP,aAAa,EAChB,MAAM,SAAS,CAAC;AAQjB,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AA8BzC,cAAM,aAAa;IACf,SAAS,EAAE,IAAI,GAAG,IAAI,CAAQ;IAC9B,UAAU,EAAE,WAAW,GAAG,IAAI,CAAQ;IACtC,QAAQ,EAAE,WAAW,GAAG,IAAI,CAAQ;IACpC,UAAU,EAAE,WAAW,GAAG,IAAI,CAAQ;IAEtC,eAAe,EAAE,UAAU,GAAG,IAAI,CAAQ;IAC1C,iBAAiB,EAAE,YAAY,CAAW;IAE1C,UAAU,EAAE,UAAU,CAIpB;IAEF,KAAK,EAAE;QACH,UAAU,EAAE,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC7C,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,SAAS,EAAE,MAAM;YACb,KAAK,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC;YACtE,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,EAAE,KAAK,IAAI,CAAC;SACvC,CAAC;QACF,WAAW,EAAE,MAAM,OAAO,CAAC;QAC3B,IAAI,EAAE,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;KACxC,GAAG,IAAI,CAAQ;IAEhB,OAAO,EAAE,OAAO,CAKd;IACF,UAAU,EAAE,UAAU,CAKpB;IACF,MAAM,EAAE,WAAW,CAKjB;IAEF,QAAQ,EAAC,OAAO,EAAE,CAAM;IACxB,sBAAsB,EAAE,wBAAwB,CAAC,iBAAiB,CAAC,CAAmB;IACtF,mBAAmB,EAAE,wBAAwB,CAAC,qBAAqB,CAAC,CAAmB;IACvF,0BAA0B,EAAE,wBAAwB,CAAC,4BAA4B,CAAC,CAAmB;IAErG,aAAa,EAAE,aAAa,GAAG,IAAI,CAAS;IAC5C,YAAY,SAAM;IAClB,WAAW,EAAE,GAAG,GAAG,IAAI,CAAQ;IAC/B,aAAa,EAAE,aAAa,CAG1B;IACF,SAAS,EAAE,MAAM,EAAE,CAAM;IACzB,MAAM,EAAE,UAAU,CAAoC;IAEtD,kBAAkB,EAAE,OAAO,CAAC,aAAa,CAAC,CAAM;IAEhD,OAAO,EAAE,GAAG,EAAE,CAAM;IACpB,aAAa,EAAE,KAAK,EAAE,CAAM;IAC5B,SAAS,EAAE,SAAS,CAAyB;IAE7C,KAAK;IAiBL,IAAI,CAAC,IAAI,EAAE,WAAW;IAWtB,gBAAgB,CAAC,IAAI,EAAE,2BAA2B,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC;IAW3E,cAAc,CACV,KAAK,EAAE,2BAA2B,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,EAC5D,KAAK,EAAE,2BAA2B,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,EAC5D,WAAW,EAAE,WAAW;IAkE5B,kBAAkB;IAgBlB,eAAe,CAAC,KAAK,EAAE,2BAA2B,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC;IAQ5E,aAAa,CAAC,KAAK,EAAE,2BAA2B,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,2BAA2B,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC;IAoBxI,gBAAgB,CACZ,MAAM,EAAE,2BAA2B,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,EAC9D,YAAY,EAAE,yBAAyB,EACvC,QAAQ,EAAE,UAAU,EAAE,EACtB,MAAM,EAAE,oBAAoB,EAAE;IA8ElC,YAAY,CACR,IAAI,EAAE,GAAG,EAAE,EACX,aAAa,EAAE,2BAA2B,CAAC,eAAe,CAAC,EAC3D,UAAU,EAAE,WAAW,EACvB,UAAU,EAAE,yBAAyB,EACrC,MAAM,EAAE,2BAA2B,CAAC,QAAQ,CAAC,EAC7C,QAAQ,EAAE,UAAU,EAAE,EACtB,YAAY,EAAE,CAAC,CAAC,EAAC,OAAO,KAAK,IAAI;IAqHrC,SAAS,CACL,KAAK,EAAE,2BAA2B,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,EAC5D,KAAK,EAAE,2BAA2B,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,EAC5D,WAAW,CAAC,EAAE,WAAW;IAS7B,SAAS,CACL,UAAU,EAAE,yBAAyB,EACrC,MAAM,EAAE,2BAA2B,CAAC,QAAQ,CAAC;IAgBjD,eAAe,CACX,UAAU,EAAE,yBAAyB,EACrC,MAAM,EAAE,2BAA2B,CAAC,QAAQ,CAAC;IAYjD,aAAa;IAeb,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,MAAM;IAUnC,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,GAAG,GAAG,IAAI;IA8BjD,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE;IAYtB,MAAM,CACF,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,2BAA2B,CAAC,eAAe,CAAC,EAC3D,SAAS,EAAE,UAAU,GAAG,IAAI,EAC5B,IAAI,EAAE,GAAG,EAAE,EACX,UAAU,EAAE,WAAW,EACvB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,EACrC,MAAM,EAAE,2BAA2B,CAAC,QAAQ,CAAC,EAC7C,UAAU,EAAE,yBAAyB,EACrC,QAAQ,EAAE,UAAU,EAAE,EACtB,sBAAsB,EAAE,wBAAwB,CAAC,iBAAiB,CAAC,EACnE,mBAAmB,EAAE,CAAC,CAAC,EAAC,OAAO,KAAK,IAAI,EACxC,0BAA0B,EAAE,CAAC,CAAC,EAAC,kBAAkB,KAAK,IAAI,EAC1D,YAAY,EAAE,CAAC,CAAC,EAAC,OAAO,KAAK,IAAI;IA+CrC,gBAAgB;IAMhB,eAAe,MAAM,OAAO,EAAE,UAO5B;IAEF,cAAc;IA+Bd,WAAW,CAAC,OAAO,EAAE,MAAM;IAI3B,OAAO,CAAC,aAAa;IAsCrB,OAAO,CAAC,oBAAoB;CAO/B;AAED,eAAe,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SettingsImpl.d.ts","sourceRoot":"","sources":["../../src/scatterplot-umap/SettingsImpl.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,3 +3,4 @@ export declare function stringToNumberRgba(str: string, out?: number[]): [number
|
|
|
3
3
|
export declare function hexRgbaToNumberRgba(hex: string, out?: number[]): [number, number, number, number];
|
|
4
4
|
export declare function stringRgbaToNumberRgba(rgba: string, out?: number[]): [number, number, number, number];
|
|
5
5
|
export declare function getColorWithFakeOpacity(source: [number, number, number, number], out?: number[]): [number, number, number, number];
|
|
6
|
+
//# sourceMappingURL=colors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"colors.d.ts","sourceRoot":"","sources":["../../src/scatterplot-umap/colors.ts"],"names":[],"mappings":"AAEA,wBAAgB,SAAS,WAExB;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,WAAe,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAQpG;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,WAAe,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CA0BrG;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,WAAe,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAiBzG;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,WAAY,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAOnI"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Lasso.d.ts","sourceRoot":"","sources":["../../../src/scatterplot-umap/components/Lasso.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,kBAAkB,EAAY,MAAM,UAAU,CAAC;AAC5D,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,UAAU,CAAC;AAItC,OAAO,KAAK,EAAC,WAAW,EAAE,UAAU,EAAQ,MAAM,UAAU,CAAC;AAyB7D,wBAAgB,KAAK,CAAC,EAClB,MAAM,EACN,UAAU,EACV,YAAY,EACZ,eAAe,EACf,eAAe,EACf,0BAA0B,GAC7B,EAAE;IACC,MAAM,EAAE,WAAW,CAAC;IACpB,UAAU,EAAE,UAAU,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,OAAO,EAAE,CAAC;IAC3B,eAAe,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAC3C,0BAA0B,EAAE,CAAC,CAAC,EAAE,kBAAkB,KAAK,IAAI,CAAC;CAC/D,2CAwXA"}
|
|
@@ -23,3 +23,4 @@ declare function LowerSvg({ scales, chartSettings, mainTitle, keyColumn: _, marg
|
|
|
23
23
|
}): import("react/jsx-runtime").JSX.Element | null;
|
|
24
24
|
declare const _default: React.MemoExoticComponent<typeof LowerSvg>;
|
|
25
25
|
export default _default;
|
|
26
|
+
//# sourceMappingURL=LowerSVG.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LowerSVG.d.ts","sourceRoot":"","sources":["../../../src/scatterplot-umap/components/LowerSVG.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAKnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAMrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAG9C,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAoB7G,iBAAS,QAAQ,CAAC,EACd,MAAM,EACN,aAAa,EACb,SAAS,EACT,SAAS,EAAE,CAAC,EACZ,OAAO,EACP,UAAU,EACV,SAAS,EACT,YAAY,EACZ,UAAU,EACV,cAAc,EACd,MAAM,EACN,UAAU,EACV,WAAW,EACd,EAAE;IACC,UAAU,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;IACxC,MAAM,EAAE,WAAW,CAAC;IACpB,aAAa,EAAE,2BAA2B,CAAC,eAAe,CAAC,CAAC;IAC5D,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,UAAU,CAAC;IACvB,aAAa,EAAE,aAAa,CAAC;IAC7B,WAAW,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,UAAU,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IACtC,MAAM,EAAE,2BAA2B,CAAC,QAAQ,CAAC,CAAC;IAC9C,WAAW,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;CACtC,kDAgKA;;AAED,wBAAoC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LowerSVG.js","sources":["../../../src/scatterplot-umap/components/LowerSVG.tsx"],"sourcesContent":["import {format} from 'd3-format';\nimport { curveBasis, line } from 'd3-shape';\nimport React, { useEffect, useState } from 'react';\nimport { ChartsTitle } from '../../common/ChartsTitle';\nimport { ContinuousGrid } from '../../common/ContinuousGrid';\nimport fonts from '../../common/fonts';\nimport { Legend } from '../../common/Legend';\nimport type { TooltipsData } from '../../common/Tooltip';\nimport { Tooltip } from '../../common/Tooltip';\nimport type { LegendData } from '../../common/types';\nimport { useDataFrame } from '../../common/useDataFrame';\nimport { BLACK } from '../../constants';\nimport type { DataFrame } from '../../DataFrame';\nimport { ContinuousAxis } from '../../common/ContinuousAxis';\nimport {formatColumnValue} from '../../scatterplot/utils/formatColumnValue';\nimport type { ColumnName } from '../../types';\nimport type { CurveUmapLayer } from '../../types/scatterplot-umap';\nimport { DEFAULT_TICKS_SIZE, LEGEND_OFFSET, TITLE_LINE } from '../constants';\nimport type { ScatterplotUmapSettingsImpl } from '../SettingsImpl';\nimport type { CaptionsSizes, ChartScales, ChartSizes, Dot, DotInfo, Margins, SVGLayerProps } from '../types';\n\nfunction getTooltipContent(dataFrame: DataFrame, dot: DotInfo, columnsList: ColumnName[] = [], ) {\n const lines: string[] = [];\n for (const column of columnsList) {\n const columnFormatter = column?.format ? format(column.format) : undefined;\n lines.push(`${column.label}: ${formatColumnValue(dataFrame, dot.idx, column, columnFormatter)}`);\n }\n return lines;\n}\n\nfunction getTitle(title: string | ColumnName): string {\n if (typeof title === 'string') {\n return title;\n }\n return title.label ?? title.value;\n}\n\nconst lineGenerator = line<Dot>().curve(curveBasis);\n\nfunction LowerSvg({\n scales,\n chartSettings,\n mainTitle,\n keyColumn: _,\n margins,\n chartSizes,\n container,\n zoomStateKey,\n legendData,\n dotsByGrouping,\n layers,\n aesGetters,\n tooltipData\n}: {\n aesGetters: SVGLayerProps['aesGetters'];\n scales: ChartScales;\n chartSettings: ScatterplotUmapSettingsImpl['chartSettings'];\n mainTitle: string[];\n keyColumn: ColumnName | null;\n margins: Margins;\n chartSizes: ChartSizes;\n captionsSizes: CaptionsSizes;\n selectedDot?: DotInfo | null;\n container: SVGElement | null;\n zoomStateKey: string;\n legendData: LegendData;\n dotsByGrouping: Record<string, Dot[]>;\n layers: ScatterplotUmapSettingsImpl['layers'];\n tooltipData: TooltipsData<DotInfo>;\n}) {\n const dataFrame = useDataFrame();\n const {title, xAxis, yAxis, frame, legend} = chartSettings;\n const tickSizeX = xAxis.showTicks ? DEFAULT_TICKS_SIZE : 0;\n const tickSizeY = yAxis.showTicks ? DEFAULT_TICKS_SIZE : 0;\n const xTitle = xAxis.title;\n const yTitle = yAxis.title;\n const needLeftAxis = true;\n const needBottomAxis = true;\n\n const sideDistances = {\n left: 0,\n right: chartSizes.chartWidth,\n top: 0,\n bottom: chartSizes.chartHeight,\n };\n\n if (!container) {\n return null;\n }\n\n const curveLayer = layers.find(layer => layer.type === 'curve') as CurveUmapLayer | undefined;\n const [lines, setLines] = useState<{key: string, d:string, dot: Dot}[]>([]);\n\n function updateLines() {\n const data = Object.entries(dotsByGrouping);\n const nextLines = data.map(([key, dots]) => ({\n key,\n d: curveLayer?.smoothing ? lineGenerator(dots) ?? '' : dots.map(d => `${scales.x(d.x)},${scales.y(d.y)}`).join(' '),\n dot: dots[0]\n }));\n setLines(nextLines);\n }\n useEffect(() => {\n if (!curveLayer) {\n return;\n }\n lineGenerator\n .x((d: Dot) => scales.x(d.x))\n .y((d: Dot) => scales.y(d.y));\n updateLines();\n }, [zoomStateKey, chartSizes.chartWidth, chartSizes.chartHeight]);\n\n useEffect(() => {\n if (!curveLayer) {\n return;\n }\n updateLines();\n }, [curveLayer?.smoothing]);\n\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox={`0 0 ${chartSizes.totalWidth} ${chartSizes.totalHeight}`}\n width={chartSizes.totalWidth}\n height={chartSizes.totalHeight}\n style={{pointerEvents: 'none'}}\n >\n <defs>{fonts}</defs>\n <g transform={`translate(${margins.left},${margins.top})`} fontFamily=\"Manrope\">\n <clipPath id=\"viewportClipPath\">\n <rect x=\"0\" y=\"0\" width={chartSizes.chartWidth} height={chartSizes.chartHeight}/>\n </clipPath>\n <ChartsTitle\n title={mainTitle}\n show={title.show}\n position={title.position}\n leftPadding={-margins.left}\n rightPadding={margins.right}\n chartsWidth={chartSizes.totalWidth}\n />\n <g dominantBaseline=\"central\" textAnchor=\"middle\" fontWeight=\"500\" fontSize=\"14px\" fill={BLACK}>\n {xTitle && (\n <text\n x={chartSizes.chartWidth / 2}\n y={chartSizes.chartHeight + margins.bottom - TITLE_LINE / 2}\n >\n {getTitle(xTitle)}\n </text>\n )}\n {yTitle && (\n <text\n x={-margins.left + TITLE_LINE / 2}\n y={chartSizes.chartHeight / 2}\n transform={`rotate(-90,${-margins.left + TITLE_LINE / 2},${\n chartSizes.chartHeight / 2\n })`}\n >\n {getTitle(yTitle)}\n </text>\n )}\n </g>\n <ContinuousGrid\n width={chartSizes.chartWidth}\n height={chartSizes.chartHeight}\n scaleX={scales.x}\n scaleY={scales.y}\n axisX={xAxis}\n axisY={yAxis}\n updatingKey={zoomStateKey}\n frameType={frame.type}\n />\n {needBottomAxis && (\n <g transform={`translate(0,${chartSizes.chartHeight})`}>\n <ContinuousAxis scale={scales.x} orient=\"bottom\" tickSize={tickSizeX} hiddenLabels={xAxis.hiddenLabels} />\n </g>\n )}\n {needLeftAxis && (\n <g>\n <ContinuousAxis scale={scales.y} orient=\"left\" tickSize={tickSizeY} hiddenLabels={yAxis.hiddenLabels} />\n </g>\n )}\n {curveLayer && curveLayer.smoothing && (\n <g clipPath=\"url(#viewportClipPath)\">\n {lines.map(({key, d, dot}) => (\n <path\n key={key}\n d={d}\n fill=\"none\"\n stroke={aesGetters.dotFill(dot.idx)}\n strokeWidth={curveLayer.aes?.lineWidth}\n strokeDasharray={aesGetters.lineType(dot.idx)}\n />\n ))}\n </g>\n )}\n {curveLayer && !curveLayer.smoothing && (\n <g clipPath=\"url(#viewportClipPath)\">\n {lines.map(({key, d, dot}) => (\n <polyline\n key={key}\n points={d}\n fill=\"none\"\n stroke={aesGetters.dotFill(dot.idx)}\n strokeWidth={curveLayer.aes?.lineWidth}\n strokeDasharray={aesGetters.lineType(dot.idx)}\n />\n ))}\n </g>\n )}\n {chartSettings.tooltips.show && tooltipData.selectedData && (\n <Tooltip\n content={getTooltipContent(dataFrame, tooltipData.selectedData, chartSettings.tooltips?.content)}\n x={scales.x(tooltipData.selectedData.x)}\n y={scales.y(tooltipData.selectedData.y)}\n active={true}\n fixed={tooltipData.fixed}\n sideDistances={sideDistances}\n container={container}\n onClose={tooltipData.onClose}\n />\n )}\n {legend.show && (\n <g transform={`translate(${chartSizes.chartWidth + LEGEND_OFFSET},0)`}>\n <Legend legendData={legendData} />\n </g>\n )}\n </g>\n </svg>\n );\n}\n\nexport default React.memo(LowerSvg);\n"],"names":["getTooltipContent","dataFrame","dot","columnsList","lines","column","columnFormatter","format","formatColumnValue","getTitle","title","lineGenerator","line","curveBasis","LowerSvg","scales","chartSettings","mainTitle","_","margins","chartSizes","container","zoomStateKey","legendData","dotsByGrouping","layers","aesGetters","tooltipData","useDataFrame","xAxis","yAxis","frame","legend","tickSizeX","DEFAULT_TICKS_SIZE","tickSizeY","xTitle","yTitle","sideDistances","curveLayer","layer","setLines","useState","updateLines","nextLines","key","dots","d","useEffect","jsxs","jsx","fonts","ChartsTitle","BLACK","TITLE_LINE","ContinuousGrid","ContinuousAxis","_a","Tooltip","LEGEND_OFFSET","Legend","LowerSvg$1","React"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"LowerSVG.js","sources":["../../../src/scatterplot-umap/components/LowerSVG.tsx"],"sourcesContent":["import {format} from 'd3-format';\nimport { curveBasis, line } from 'd3-shape';\nimport React, { useEffect, useState } from 'react';\nimport { ChartsTitle } from '../../common/ChartsTitle';\nimport { ContinuousGrid } from '../../common/ContinuousGrid';\nimport fonts from '../../common/fonts';\nimport { Legend } from '../../common/Legend';\nimport type { TooltipsData } from '../../common/Tooltip';\nimport { Tooltip } from '../../common/Tooltip';\nimport type { LegendData } from '../../common/types';\nimport { useDataFrame } from '../../common/useDataFrame';\nimport { BLACK } from '../../constants';\nimport type { DataFrame } from '../../DataFrame';\nimport { ContinuousAxis } from '../../common/ContinuousAxis';\nimport {formatColumnValue} from '../../scatterplot/utils/formatColumnValue';\nimport type { ColumnName } from '../../types';\nimport type { CurveUmapLayer } from '../../types/scatterplot-umap';\nimport { DEFAULT_TICKS_SIZE, LEGEND_OFFSET, TITLE_LINE } from '../constants';\nimport type { ScatterplotUmapSettingsImpl } from '../SettingsImpl';\nimport type { CaptionsSizes, ChartScales, ChartSizes, Dot, DotInfo, Margins, SVGLayerProps } from '../types';\n\nfunction getTooltipContent(dataFrame: DataFrame, dot: DotInfo, columnsList: ColumnName[] = []) {\n const lines: string[] = [];\n for (const column of columnsList) {\n const columnFormatter = column?.format ? format(column.format) : undefined;\n lines.push(`${column.label}: ${formatColumnValue(dataFrame, dot.idx, column, columnFormatter)}`);\n }\n return lines;\n}\n\nfunction getTitle(title: string | ColumnName): string {\n if (typeof title === 'string') {\n return title;\n }\n return title.label ?? title.value;\n}\n\nconst lineGenerator = line<Dot>().curve(curveBasis);\n\nfunction LowerSvg({\n scales,\n chartSettings,\n mainTitle,\n keyColumn: _,\n margins,\n chartSizes,\n container,\n zoomStateKey,\n legendData,\n dotsByGrouping,\n layers,\n aesGetters,\n tooltipData\n}: {\n aesGetters: SVGLayerProps['aesGetters'];\n scales: ChartScales;\n chartSettings: ScatterplotUmapSettingsImpl['chartSettings'];\n mainTitle: string[];\n keyColumn: ColumnName | null;\n margins: Margins;\n chartSizes: ChartSizes;\n captionsSizes: CaptionsSizes;\n selectedDot?: DotInfo | null;\n container: SVGElement | null;\n zoomStateKey: string;\n legendData: LegendData;\n dotsByGrouping: Record<string, Dot[]>;\n layers: ScatterplotUmapSettingsImpl['layers'];\n tooltipData: TooltipsData<DotInfo>;\n}) {\n const dataFrame = useDataFrame();\n const {title, xAxis, yAxis, frame, legend} = chartSettings;\n const tickSizeX = xAxis.showTicks ? DEFAULT_TICKS_SIZE : 0;\n const tickSizeY = yAxis.showTicks ? DEFAULT_TICKS_SIZE : 0;\n const xTitle = xAxis.title;\n const yTitle = yAxis.title;\n const needLeftAxis = true;\n const needBottomAxis = true;\n\n const sideDistances = {\n left: 0,\n right: chartSizes.chartWidth,\n top: 0,\n bottom: chartSizes.chartHeight,\n };\n\n if (!container) {\n return null;\n }\n\n const curveLayer = layers.find(layer => layer.type === 'curve') as CurveUmapLayer | undefined;\n const [lines, setLines] = useState<{key: string, d:string, dot: Dot}[]>([]);\n\n function updateLines() {\n const data = Object.entries(dotsByGrouping);\n const nextLines = data.map(([key, dots]) => ({\n key,\n d: curveLayer?.smoothing ? lineGenerator(dots) ?? '' : dots.map(d => `${scales.x(d.x)},${scales.y(d.y)}`).join(' '),\n dot: dots[0]\n }));\n setLines(nextLines);\n }\n useEffect(() => {\n if (!curveLayer) {\n return;\n }\n lineGenerator\n .x((d: Dot) => scales.x(d.x))\n .y((d: Dot) => scales.y(d.y));\n updateLines();\n }, [zoomStateKey, chartSizes.chartWidth, chartSizes.chartHeight]);\n\n useEffect(() => {\n if (!curveLayer) {\n return;\n }\n updateLines();\n }, [curveLayer?.smoothing]);\n\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox={`0 0 ${chartSizes.totalWidth} ${chartSizes.totalHeight}`}\n width={chartSizes.totalWidth}\n height={chartSizes.totalHeight}\n style={{pointerEvents: 'none'}}\n >\n <defs>{fonts}</defs>\n <g transform={`translate(${margins.left},${margins.top})`} fontFamily=\"Manrope\">\n <clipPath id=\"viewportClipPath\">\n <rect x=\"0\" y=\"0\" width={chartSizes.chartWidth} height={chartSizes.chartHeight}/>\n </clipPath>\n <ChartsTitle\n title={mainTitle}\n show={title.show}\n position={title.position}\n leftPadding={-margins.left}\n rightPadding={margins.right}\n chartsWidth={chartSizes.totalWidth}\n />\n <g dominantBaseline=\"central\" textAnchor=\"middle\" fontWeight=\"500\" fontSize=\"14px\" fill={BLACK}>\n {xTitle && (\n <text\n x={chartSizes.chartWidth / 2}\n y={chartSizes.chartHeight + margins.bottom - TITLE_LINE / 2}\n >\n {getTitle(xTitle)}\n </text>\n )}\n {yTitle && (\n <text\n x={-margins.left + TITLE_LINE / 2}\n y={chartSizes.chartHeight / 2}\n transform={`rotate(-90,${-margins.left + TITLE_LINE / 2},${\n chartSizes.chartHeight / 2\n })`}\n >\n {getTitle(yTitle)}\n </text>\n )}\n </g>\n <ContinuousGrid\n width={chartSizes.chartWidth}\n height={chartSizes.chartHeight}\n scaleX={scales.x}\n scaleY={scales.y}\n axisX={xAxis}\n axisY={yAxis}\n updatingKey={zoomStateKey}\n frameType={frame.type}\n />\n {needBottomAxis && (\n <g transform={`translate(0,${chartSizes.chartHeight})`}>\n <ContinuousAxis scale={scales.x} orient=\"bottom\" tickSize={tickSizeX} hiddenLabels={xAxis.hiddenLabels} />\n </g>\n )}\n {needLeftAxis && (\n <g>\n <ContinuousAxis scale={scales.y} orient=\"left\" tickSize={tickSizeY} hiddenLabels={yAxis.hiddenLabels} />\n </g>\n )}\n {curveLayer && curveLayer.smoothing && (\n <g clipPath=\"url(#viewportClipPath)\">\n {lines.map(({key, d, dot}) => (\n <path\n key={key}\n d={d}\n fill=\"none\"\n stroke={aesGetters.dotFill(dot.idx)}\n strokeWidth={curveLayer.aes?.lineWidth}\n strokeDasharray={aesGetters.lineType(dot.idx)}\n />\n ))}\n </g>\n )}\n {curveLayer && !curveLayer.smoothing && (\n <g clipPath=\"url(#viewportClipPath)\">\n {lines.map(({key, d, dot}) => (\n <polyline\n key={key}\n points={d}\n fill=\"none\"\n stroke={aesGetters.dotFill(dot.idx)}\n strokeWidth={curveLayer.aes?.lineWidth}\n strokeDasharray={aesGetters.lineType(dot.idx)}\n />\n ))}\n </g>\n )}\n {chartSettings.tooltips.show && tooltipData.selectedData && (\n <Tooltip\n content={getTooltipContent(dataFrame, tooltipData.selectedData, chartSettings.tooltips?.content)}\n x={scales.x(tooltipData.selectedData.x)}\n y={scales.y(tooltipData.selectedData.y)}\n active={true}\n fixed={tooltipData.fixed}\n sideDistances={sideDistances}\n container={container}\n onClose={tooltipData.onClose}\n />\n )}\n {legend.show && (\n <g transform={`translate(${chartSizes.chartWidth + LEGEND_OFFSET},0)`}>\n <Legend legendData={legendData} />\n </g>\n )}\n </g>\n </svg>\n );\n}\n\nexport default React.memo(LowerSvg);\n"],"names":["getTooltipContent","dataFrame","dot","columnsList","lines","column","columnFormatter","format","formatColumnValue","getTitle","title","lineGenerator","line","curveBasis","LowerSvg","scales","chartSettings","mainTitle","_","margins","chartSizes","container","zoomStateKey","legendData","dotsByGrouping","layers","aesGetters","tooltipData","useDataFrame","xAxis","yAxis","frame","legend","tickSizeX","DEFAULT_TICKS_SIZE","tickSizeY","xTitle","yTitle","sideDistances","curveLayer","layer","setLines","useState","updateLines","nextLines","key","dots","d","useEffect","jsxs","jsx","fonts","ChartsTitle","BLACK","TITLE_LINE","ContinuousGrid","ContinuousAxis","_a","Tooltip","LEGEND_OFFSET","Legend","LowerSvg$1","React"],"mappings":"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"}
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
import { SVGLayerProps } from '../types';
|
|
2
2
|
export declare function SVGLayer({ settingsId, scales, chartSettings, mainTitle, keyColumn, margins, chartSizes, captionsSizes, container, zoomStateKey, aesGetters, legendData, labels, onPolygonUpdate, onTooltipHintSwitch, onLassoControlsStateUpdate, dotsByGrouping, layers, defaultPolygons, selectedDot, }: SVGLayerProps): import("react/jsx-runtime").JSX.Element | null;
|
|
3
|
+
//# sourceMappingURL=SVGLayer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SVGLayer.d.ts","sourceRoot":"","sources":["../../../src/scatterplot-umap/components/SVGLayer.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAW,aAAa,EAAE,MAAM,UAAU,CAAC;AAIvD,wBAAgB,QAAQ,CAAC,EACrB,UAAU,EACV,MAAM,EACN,aAAa,EACb,SAAS,EACT,SAAS,EACT,OAAO,EACP,UAAU,EACV,aAAa,EACb,SAAS,EACT,YAAY,EACZ,UAAU,EACV,UAAU,EACV,MAAM,EACN,eAAe,EACf,mBAAmB,EACnB,0BAA0B,EAC1B,cAAc,EACd,MAAM,EACN,eAAe,EACf,WAAkB,GACrB,EAAE,aAAa,kDAmDf"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UpperSVG.d.ts","sourceRoot":"","sources":["../../../src/scatterplot-umap/components/UpperSVG.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAA8B,KAAK,KAAK,EAAE,MAAM,0CAA0C,CAAC;AAClG,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAG1G,iBAAS,QAAQ,CAAC,EACd,MAAM,EACN,SAAS,EACT,MAAM,EACN,UAAU,EACV,UAAU,EACV,YAAY,EACZ,eAAe,EACf,eAAe,EACf,0BAA0B,EAC1B,WAAW,EACX,WAAW,EACd,EAAE;IACC,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;IAC7B,UAAU,EAAE,UAAU,CAAC;IACvB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,UAAU,EAAE,UAAU,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,OAAO,EAAE,CAAC;IAC3B,0BAA0B,EAAE,CAAC,CAAC,EAAC,kBAAkB,KAAK,IAAI,CAAC;IAC3D,eAAe,EAAE,CAAC,IAAI,EAAC,OAAO,EAAE,KAAK,IAAI,CAAC;IAC1C,WAAW,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IACnC,WAAW,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;CAChC,kDAkDA;AAED,eAAe,QAAQ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/scatterplot-umap/constants.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,QAAQ;;;;;CAKpB,CAAC;AAEF,eAAO,MAAM,UAAU,KAAK,CAAC;AAC7B,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,WAAW,IAAI,CAAC;AAC7B,eAAO,MAAM,WAAW,KAAK,CAAC;AAE9B,eAAO,MAAM,aAAa,KAAK,CAAC;AAEhC,eAAO,MAAM,2BAA2B;;;;;;CAMvC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/scatterplot-umap/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAI9C,OAAO,EAA2F,KAAK,wBAAwB,EAAE,MAAM,UAAU,CAAC;AAClJ,OAAO,KAAK,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpG,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EAAE,2BAA2B,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,KAAK,EAAE,GAAG,EAAE,WAAW,EAAE,kBAAkB,EAAa,OAAO,EAAE,MAAM,SAAS,CAAC;AAmBxF,qBAAa,oBAAqB,SAAQ,aAAa;IACnD,QAAQ,EAAE,2BAA2B,CAAC;IACtC,aAAa,EAAE,aAAa,CAAC;IAE7B,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,IAAI,CAAmB;IACjF,mBAAmB,EAAE,CAAC,CAAC,EAAC,OAAO,KAAK,IAAI,CAAmB;IAC3D,0BAA0B,EAAE,CAAC,CAAC,EAAE,kBAAkB,KAAK,IAAI,CAAmB;IAC9E,YAAY,EAAE,CAAC,aAAa,EAAE,OAAO,KAAK,IAAI,CAAmB;IAEjE,cAAc,EAAE;QACZ,IAAI,EAAE,GAAG,EAAE,CAAC;QACZ,YAAY,EAAE,MAAM,EAAE,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QACtC,WAAW,EAAE,WAAW,CAAC;QACzB,YAAY,EAAE,yBAAyB,CAAC;KAC3C,GAAG,IAAI,CAAQ;gBAEJ,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,uBAAuB,EAAE,aAAa,CAAC,EAAE,wBAAwB;IAcxG,KAAK,CAAC,IAAI,EAAE,WAAW;IAgBvB,OAAO;IAIP,qBAAqB,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,uBAAuB;IAgCxE,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO;IAkC9C,MAAM,IAAI,MAAM;IAOhB,mCAAmC,CAAC,YAAY,EAAE,2BAA2B,EAAE,QAAQ,EAAE,2BAA2B;IAiBpH,+BAA+B,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS;IAUpE,WAAW;IAqFX,gBAAgB;IA0BhB,YAAY;CAsBf"}
|