react-cheminfo 0.9.0 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +251 -20
- package/lib/chart/core/chartAxisScale.d.ts +88 -0
- package/lib/chart/core/chartAxisScale.d.ts.map +1 -0
- package/lib/chart/core/chartAxisScale.js +205 -0
- package/lib/chart/core/chartAxisScale.js.map +1 -0
- package/lib/chart/core/chartBand.d.ts +47 -0
- package/lib/chart/core/chartBand.d.ts.map +1 -0
- package/lib/chart/core/chartBand.js +55 -0
- package/lib/chart/core/chartBand.js.map +1 -0
- package/lib/chart/core/chartBins.d.ts +32 -0
- package/lib/chart/core/chartBins.d.ts.map +1 -0
- package/lib/chart/core/chartBins.js +64 -0
- package/lib/chart/core/chartBins.js.map +1 -0
- package/lib/chart/core/chartExtent.d.ts +105 -0
- package/lib/chart/core/chartExtent.d.ts.map +1 -0
- package/lib/chart/core/chartExtent.js +134 -0
- package/lib/chart/core/chartExtent.js.map +1 -0
- package/lib/chart/core/chartLabels.d.ts +49 -0
- package/lib/chart/core/chartLabels.d.ts.map +1 -0
- package/lib/chart/core/chartLabels.js +44 -0
- package/lib/chart/core/chartLabels.js.map +1 -0
- package/lib/chart/core/chartPalette.d.ts +33 -0
- package/lib/chart/core/chartPalette.d.ts.map +1 -0
- package/lib/chart/core/chartPalette.js +51 -0
- package/lib/chart/core/chartPalette.js.map +1 -0
- package/lib/chart/core/chartScale.d.ts +49 -0
- package/lib/chart/core/chartScale.d.ts.map +1 -0
- package/lib/chart/core/chartScale.js +53 -0
- package/lib/chart/core/chartScale.js.map +1 -0
- package/lib/chart/core/chartViewport.d.ts +88 -0
- package/lib/chart/core/chartViewport.d.ts.map +1 -0
- package/lib/chart/core/chartViewport.js +164 -0
- package/lib/chart/core/chartViewport.js.map +1 -0
- package/lib/chart/core/index.d.ts +29 -0
- package/lib/chart/core/index.d.ts.map +1 -0
- package/lib/chart/core/index.js +20 -0
- package/lib/chart/core/index.js.map +1 -0
- package/lib/chart/core/matrix.d.ts +56 -0
- package/lib/chart/core/matrix.d.ts.map +1 -0
- package/lib/chart/core/matrix.js +75 -0
- package/lib/chart/core/matrix.js.map +1 -0
- package/lib/chart/ui/ChartAxis.d.ts +50 -0
- package/lib/chart/ui/ChartAxis.d.ts.map +1 -0
- package/lib/chart/ui/ChartAxis.js +89 -0
- package/lib/chart/ui/ChartAxis.js.map +1 -0
- package/lib/chart/ui/ChartFrame.d.ts +136 -0
- package/lib/chart/ui/ChartFrame.d.ts.map +1 -0
- package/lib/chart/ui/ChartFrame.js +61 -0
- package/lib/chart/ui/ChartFrame.js.map +1 -0
- package/lib/chart/ui/ChartSeriesMarks.d.ts +44 -0
- package/lib/chart/ui/ChartSeriesMarks.d.ts.map +1 -0
- package/lib/chart/ui/ChartSeriesMarks.js +48 -0
- package/lib/chart/ui/ChartSeriesMarks.js.map +1 -0
- package/lib/chart/ui/ChartTrackingLayer.d.ts +54 -0
- package/lib/chart/ui/ChartTrackingLayer.d.ts.map +1 -0
- package/lib/chart/ui/ChartTrackingLayer.js +98 -0
- package/lib/chart/ui/ChartTrackingLayer.js.map +1 -0
- package/lib/chart/ui/TrackedLineChart.d.ts +136 -0
- package/lib/chart/ui/TrackedLineChart.d.ts.map +1 -0
- package/lib/chart/ui/TrackedLineChart.js +90 -0
- package/lib/chart/ui/TrackedLineChart.js.map +1 -0
- package/lib/chart/ui/TrackedStickChart.d.ts +88 -0
- package/lib/chart/ui/TrackedStickChart.d.ts.map +1 -0
- package/lib/chart/ui/TrackedStickChart.js +58 -0
- package/lib/chart/ui/TrackedStickChart.js.map +1 -0
- package/lib/chart/ui/chartStyles.d.ts +141 -0
- package/lib/chart/ui/chartStyles.d.ts.map +1 -0
- package/lib/chart/ui/chartStyles.js +154 -0
- package/lib/chart/ui/chartStyles.js.map +1 -0
- package/lib/chart/ui/index.d.ts +20 -0
- package/lib/chart/ui/index.d.ts.map +1 -0
- package/lib/chart/ui/index.js +13 -0
- package/lib/chart/ui/index.js.map +1 -0
- package/lib/chart/ui/stickChartModel.d.ts +99 -0
- package/lib/chart/ui/stickChartModel.d.ts.map +1 -0
- package/lib/chart/ui/stickChartModel.js +140 -0
- package/lib/chart/ui/stickChartModel.js.map +1 -0
- package/lib/chart/ui/useWheelZoom.d.ts +69 -0
- package/lib/chart/ui/useWheelZoom.d.ts.map +1 -0
- package/lib/chart/ui/useWheelZoom.js +122 -0
- package/lib/chart/ui/useWheelZoom.js.map +1 -0
- package/lib/color/core/gradient.d.ts +15 -0
- package/lib/color/core/gradient.d.ts.map +1 -0
- package/lib/color/core/gradient.js +28 -0
- package/lib/color/core/gradient.js.map +1 -0
- package/lib/color/core/hsv.d.ts +38 -0
- package/lib/color/core/hsv.d.ts.map +1 -0
- package/lib/color/core/hsv.js +92 -0
- package/lib/color/core/hsv.js.map +1 -0
- package/lib/color/core/index.d.ts +12 -1
- package/lib/color/core/index.d.ts.map +1 -1
- package/lib/color/core/index.js +6 -0
- package/lib/color/core/index.js.map +1 -1
- package/lib/color/core/interpolate.d.ts +67 -0
- package/lib/color/core/interpolate.d.ts.map +1 -0
- package/lib/color/core/interpolate.js +121 -0
- package/lib/color/core/interpolate.js.map +1 -0
- package/lib/color/core/scale.d.ts +11 -15
- package/lib/color/core/scale.d.ts.map +1 -1
- package/lib/color/core/scale.js +14 -41
- package/lib/color/core/scale.js.map +1 -1
- package/lib/color/core/scaleData.d.ts +19 -0
- package/lib/color/core/scaleData.d.ts.map +1 -0
- package/lib/color/core/scaleData.js +120 -0
- package/lib/color/core/scaleData.js.map +1 -0
- package/lib/color/core/scaleText.d.ts +43 -0
- package/lib/color/core/scaleText.d.ts.map +1 -0
- package/lib/color/core/scaleText.js +109 -0
- package/lib/color/core/scaleText.js.map +1 -0
- package/lib/color/core/scales.d.ts +42 -0
- package/lib/color/core/scales.d.ts.map +1 -0
- package/lib/color/core/scales.js +110 -0
- package/lib/color/core/scales.js.map +1 -0
- package/lib/color/ui/ColorScaleBar.d.ts +39 -0
- package/lib/color/ui/ColorScaleBar.d.ts.map +1 -0
- package/lib/color/ui/ColorScaleBar.js +27 -0
- package/lib/color/ui/ColorScaleBar.js.map +1 -0
- package/lib/color/ui/ColorScaleEditor.d.ts +21 -0
- package/lib/color/ui/ColorScaleEditor.d.ts.map +1 -0
- package/lib/color/ui/ColorScaleEditor.js +141 -0
- package/lib/color/ui/ColorScaleEditor.js.map +1 -0
- package/lib/color/ui/ColorScaleSelect.d.ts +38 -0
- package/lib/color/ui/ColorScaleSelect.d.ts.map +1 -0
- package/lib/color/ui/ColorScaleSelect.js +109 -0
- package/lib/color/ui/ColorScaleSelect.js.map +1 -0
- package/lib/color/ui/index.d.ts +6 -0
- package/lib/color/ui/index.d.ts.map +1 -1
- package/lib/color/ui/index.js +3 -0
- package/lib/color/ui/index.js.map +1 -1
- package/lib/core.d.ts +5 -0
- package/lib/core.d.ts.map +1 -1
- package/lib/core.js +5 -0
- package/lib/core.js.map +1 -1
- package/lib/credits/core/credits.d.ts +17 -0
- package/lib/credits/core/credits.d.ts.map +1 -1
- package/lib/credits/core/credits.js +20 -0
- package/lib/credits/core/credits.js.map +1 -1
- package/lib/download/core/cssTokens.d.ts +33 -0
- package/lib/download/core/cssTokens.d.ts.map +1 -0
- package/lib/download/core/cssTokens.js +82 -0
- package/lib/download/core/cssTokens.js.map +1 -0
- package/lib/download/core/downloadFigure.d.ts +39 -0
- package/lib/download/core/downloadFigure.d.ts.map +1 -0
- package/lib/download/core/downloadFigure.js +35 -0
- package/lib/download/core/downloadFigure.js.map +1 -0
- package/lib/download/core/figurePng.d.ts +21 -0
- package/lib/download/core/figurePng.d.ts.map +1 -0
- package/lib/download/core/figurePng.js +76 -0
- package/lib/download/core/figurePng.js.map +1 -0
- package/lib/download/core/figureScale.d.ts +61 -0
- package/lib/download/core/figureScale.d.ts.map +1 -0
- package/lib/download/core/figureScale.js +67 -0
- package/lib/download/core/figureScale.js.map +1 -0
- package/lib/download/core/figureSvg.d.ts +37 -0
- package/lib/download/core/figureSvg.d.ts.map +1 -0
- package/lib/download/core/figureSvg.js +94 -0
- package/lib/download/core/figureSvg.js.map +1 -0
- package/lib/download/core/figureSvgDocument.d.ts +55 -0
- package/lib/download/core/figureSvgDocument.d.ts.map +1 -0
- package/lib/download/core/figureSvgDocument.js +79 -0
- package/lib/download/core/figureSvgDocument.js.map +1 -0
- package/lib/download/core/figureTarget.d.ts +56 -0
- package/lib/download/core/figureTarget.d.ts.map +1 -0
- package/lib/download/core/figureTarget.js +119 -0
- package/lib/download/core/figureTarget.js.map +1 -0
- package/lib/download/core/index.d.ts +12 -0
- package/lib/download/core/index.d.ts.map +1 -1
- package/lib/download/core/index.js +7 -0
- package/lib/download/core/index.js.map +1 -1
- package/lib/download/ui/FigureDownload.d.ts +81 -0
- package/lib/download/ui/FigureDownload.d.ts.map +1 -0
- package/lib/download/ui/FigureDownload.js +65 -0
- package/lib/download/ui/FigureDownload.js.map +1 -0
- package/lib/download/ui/FigureDownloadPanel.d.ts +45 -0
- package/lib/download/ui/FigureDownloadPanel.d.ts.map +1 -0
- package/lib/download/ui/FigureDownloadPanel.js +86 -0
- package/lib/download/ui/FigureDownloadPanel.js.map +1 -0
- package/lib/download/ui/index.d.ts +13 -0
- package/lib/download/ui/index.d.ts.map +1 -0
- package/lib/download/ui/index.js +11 -0
- package/lib/download/ui/index.js.map +1 -0
- package/lib/ecosystem/core/sites.d.ts +1 -1
- package/lib/ecosystem/core/sites.d.ts.map +1 -1
- package/lib/ecosystem/core/sites.js +10 -0
- package/lib/ecosystem/core/sites.js.map +1 -1
- package/lib/ecosystem/ui/glyphs.d.ts.map +1 -1
- package/lib/ecosystem/ui/glyphs.js +4 -0
- package/lib/ecosystem/ui/glyphs.js.map +1 -1
- package/lib/overlay/core/emptiestCorner.d.ts +47 -0
- package/lib/overlay/core/emptiestCorner.d.ts.map +1 -0
- package/lib/overlay/core/emptiestCorner.js +84 -0
- package/lib/overlay/core/emptiestCorner.js.map +1 -0
- package/lib/overlay/core/index.d.ts +23 -0
- package/lib/overlay/core/index.d.ts.map +1 -0
- package/lib/overlay/core/index.js +16 -0
- package/lib/overlay/core/index.js.map +1 -0
- package/lib/overlay/core/overlayCollapse.d.ts +14 -0
- package/lib/overlay/core/overlayCollapse.d.ts.map +1 -0
- package/lib/overlay/core/overlayCollapse.js +20 -0
- package/lib/overlay/core/overlayCollapse.js.map +1 -0
- package/lib/overlay/core/overlayMarks.d.ts +31 -0
- package/lib/overlay/core/overlayMarks.d.ts.map +1 -0
- package/lib/overlay/core/overlayMarks.js +38 -0
- package/lib/overlay/core/overlayMarks.js.map +1 -0
- package/lib/overlay/core/overlayMetrics.d.ts +41 -0
- package/lib/overlay/core/overlayMetrics.d.ts.map +1 -0
- package/lib/overlay/core/overlayMetrics.js +73 -0
- package/lib/overlay/core/overlayMetrics.js.map +1 -0
- package/lib/overlay/core/overlayPlacement.d.ts +60 -0
- package/lib/overlay/core/overlayPlacement.d.ts.map +1 -0
- package/lib/overlay/core/overlayPlacement.js +24 -0
- package/lib/overlay/core/overlayPlacement.js.map +1 -0
- package/lib/overlay/core/overlayTierRoom.d.ts +89 -0
- package/lib/overlay/core/overlayTierRoom.d.ts.map +1 -0
- package/lib/overlay/core/overlayTierRoom.js +135 -0
- package/lib/overlay/core/overlayTierRoom.js.map +1 -0
- package/lib/overlay/core/overlayTiers.d.ts +71 -0
- package/lib/overlay/core/overlayTiers.d.ts.map +1 -0
- package/lib/overlay/core/overlayTiers.js +89 -0
- package/lib/overlay/core/overlayTiers.js.map +1 -0
- package/lib/overlay/core/placeOverlayCard.d.ts +47 -0
- package/lib/overlay/core/placeOverlayCard.d.ts.map +1 -0
- package/lib/overlay/core/placeOverlayCard.js +42 -0
- package/lib/overlay/core/placeOverlayCard.js.map +1 -0
- package/lib/overlay/ui/OverlayAction.d.ts +32 -0
- package/lib/overlay/ui/OverlayAction.d.ts.map +1 -0
- package/lib/overlay/ui/OverlayAction.js +19 -0
- package/lib/overlay/ui/OverlayAction.js.map +1 -0
- package/lib/overlay/ui/OverlayBar.d.ts +122 -0
- package/lib/overlay/ui/OverlayBar.d.ts.map +1 -0
- package/lib/overlay/ui/OverlayBar.js +42 -0
- package/lib/overlay/ui/OverlayBar.js.map +1 -0
- package/lib/overlay/ui/OverlayBarButton.d.ts +38 -0
- package/lib/overlay/ui/OverlayBarButton.d.ts.map +1 -0
- package/lib/overlay/ui/OverlayBarButton.js +40 -0
- package/lib/overlay/ui/OverlayBarButton.js.map +1 -0
- package/lib/overlay/ui/OverlayBarCard.d.ts +25 -0
- package/lib/overlay/ui/OverlayBarCard.d.ts.map +1 -0
- package/lib/overlay/ui/OverlayBarCard.js +28 -0
- package/lib/overlay/ui/OverlayBarCard.js.map +1 -0
- package/lib/overlay/ui/OverlayBarStrip.d.ts +18 -0
- package/lib/overlay/ui/OverlayBarStrip.d.ts.map +1 -0
- package/lib/overlay/ui/OverlayBarStrip.js +26 -0
- package/lib/overlay/ui/OverlayBarStrip.js.map +1 -0
- package/lib/overlay/ui/OverlayCaption.d.ts +52 -0
- package/lib/overlay/ui/OverlayCaption.d.ts.map +1 -0
- package/lib/overlay/ui/OverlayCaption.js +62 -0
- package/lib/overlay/ui/OverlayCaption.js.map +1 -0
- package/lib/overlay/ui/OverlayChip.d.ts +60 -0
- package/lib/overlay/ui/OverlayChip.d.ts.map +1 -0
- package/lib/overlay/ui/OverlayChip.js +73 -0
- package/lib/overlay/ui/OverlayChip.js.map +1 -0
- package/lib/overlay/ui/OverlayDivider.d.ts +11 -0
- package/lib/overlay/ui/OverlayDivider.d.ts.map +1 -0
- package/lib/overlay/ui/OverlayDivider.js +16 -0
- package/lib/overlay/ui/OverlayDivider.js.map +1 -0
- package/lib/overlay/ui/OverlayGroup.d.ts +53 -0
- package/lib/overlay/ui/OverlayGroup.d.ts.map +1 -0
- package/lib/overlay/ui/OverlayGroup.js +63 -0
- package/lib/overlay/ui/OverlayGroup.js.map +1 -0
- package/lib/overlay/ui/OverlayIconButton.d.ts +75 -0
- package/lib/overlay/ui/OverlayIconButton.d.ts.map +1 -0
- package/lib/overlay/ui/OverlayIconButton.js +43 -0
- package/lib/overlay/ui/OverlayIconButton.js.map +1 -0
- package/lib/overlay/ui/OverlayInfo.d.ts +43 -0
- package/lib/overlay/ui/OverlayInfo.d.ts.map +1 -0
- package/lib/overlay/ui/OverlayInfo.js +47 -0
- package/lib/overlay/ui/OverlayInfo.js.map +1 -0
- package/lib/overlay/ui/OverlayLayer.d.ts +54 -0
- package/lib/overlay/ui/OverlayLayer.d.ts.map +1 -0
- package/lib/overlay/ui/OverlayLayer.js +50 -0
- package/lib/overlay/ui/OverlayLayer.js.map +1 -0
- package/lib/overlay/ui/OverlayLegend.d.ts +75 -0
- package/lib/overlay/ui/OverlayLegend.d.ts.map +1 -0
- package/lib/overlay/ui/OverlayLegend.js +81 -0
- package/lib/overlay/ui/OverlayLegend.js.map +1 -0
- package/lib/overlay/ui/OverlayLegendMark.d.ts +36 -0
- package/lib/overlay/ui/OverlayLegendMark.d.ts.map +1 -0
- package/lib/overlay/ui/OverlayLegendMark.js +43 -0
- package/lib/overlay/ui/OverlayLegendMark.js.map +1 -0
- package/lib/overlay/ui/OverlayNumber.d.ts +43 -0
- package/lib/overlay/ui/OverlayNumber.d.ts.map +1 -0
- package/lib/overlay/ui/OverlayNumber.js +74 -0
- package/lib/overlay/ui/OverlayNumber.js.map +1 -0
- package/lib/overlay/ui/OverlayPanel.d.ts +81 -0
- package/lib/overlay/ui/OverlayPanel.d.ts.map +1 -0
- package/lib/overlay/ui/OverlayPanel.js +42 -0
- package/lib/overlay/ui/OverlayPanel.js.map +1 -0
- package/lib/overlay/ui/OverlayPills.d.ts +73 -0
- package/lib/overlay/ui/OverlayPills.d.ts.map +1 -0
- package/lib/overlay/ui/OverlayPills.js +55 -0
- package/lib/overlay/ui/OverlayPills.js.map +1 -0
- package/lib/overlay/ui/OverlayReadout.d.ts +63 -0
- package/lib/overlay/ui/OverlayReadout.d.ts.map +1 -0
- package/lib/overlay/ui/OverlayReadout.js +129 -0
- package/lib/overlay/ui/OverlayReadout.js.map +1 -0
- package/lib/overlay/ui/OverlayRow.d.ts +111 -0
- package/lib/overlay/ui/OverlayRow.d.ts.map +1 -0
- package/lib/overlay/ui/OverlayRow.js +50 -0
- package/lib/overlay/ui/OverlayRow.js.map +1 -0
- package/lib/overlay/ui/OverlaySegmented.d.ts +28 -0
- package/lib/overlay/ui/OverlaySegmented.d.ts.map +1 -0
- package/lib/overlay/ui/OverlaySegmented.js +23 -0
- package/lib/overlay/ui/OverlaySegmented.js.map +1 -0
- package/lib/overlay/ui/OverlaySelect.d.ts +35 -0
- package/lib/overlay/ui/OverlaySelect.d.ts.map +1 -0
- package/lib/overlay/ui/OverlaySelect.js +30 -0
- package/lib/overlay/ui/OverlaySelect.js.map +1 -0
- package/lib/overlay/ui/OverlaySwatchIcon.d.ts +26 -0
- package/lib/overlay/ui/OverlaySwatchIcon.d.ts.map +1 -0
- package/lib/overlay/ui/OverlaySwatchIcon.js +94 -0
- package/lib/overlay/ui/OverlaySwatchIcon.js.map +1 -0
- package/lib/overlay/ui/OverlayToggle.d.ts +56 -0
- package/lib/overlay/ui/OverlayToggle.d.ts.map +1 -0
- package/lib/overlay/ui/OverlayToggle.js +42 -0
- package/lib/overlay/ui/OverlayToggle.js.map +1 -0
- package/lib/overlay/ui/OverlayValueButton.d.ts +80 -0
- package/lib/overlay/ui/OverlayValueButton.d.ts.map +1 -0
- package/lib/overlay/ui/OverlayValueButton.js +46 -0
- package/lib/overlay/ui/OverlayValueButton.js.map +1 -0
- package/lib/overlay/ui/OverlayValueMenu.d.ts +68 -0
- package/lib/overlay/ui/OverlayValueMenu.d.ts.map +1 -0
- package/lib/overlay/ui/OverlayValueMenu.js +40 -0
- package/lib/overlay/ui/OverlayValueMenu.js.map +1 -0
- package/lib/overlay/ui/index.d.ts +55 -0
- package/lib/overlay/ui/index.d.ts.map +1 -0
- package/lib/overlay/ui/index.js +33 -0
- package/lib/overlay/ui/index.js.map +1 -0
- package/lib/overlay/ui/overlayBarShape.d.ts +85 -0
- package/lib/overlay/ui/overlayBarShape.d.ts.map +1 -0
- package/lib/overlay/ui/overlayBarShape.js +48 -0
- package/lib/overlay/ui/overlayBarShape.js.map +1 -0
- package/lib/overlay/ui/overlayControlStyles.d.ts +82 -0
- package/lib/overlay/ui/overlayControlStyles.d.ts.map +1 -0
- package/lib/overlay/ui/overlayControlStyles.js +142 -0
- package/lib/overlay/ui/overlayControlStyles.js.map +1 -0
- package/lib/overlay/ui/overlayFigureStyles.d.ts +52 -0
- package/lib/overlay/ui/overlayFigureStyles.d.ts.map +1 -0
- package/lib/overlay/ui/overlayFigureStyles.js +98 -0
- package/lib/overlay/ui/overlayFigureStyles.js.map +1 -0
- package/lib/overlay/ui/overlayPanelContext.d.ts +34 -0
- package/lib/overlay/ui/overlayPanelContext.d.ts.map +1 -0
- package/lib/overlay/ui/overlayPanelContext.js +29 -0
- package/lib/overlay/ui/overlayPanelContext.js.map +1 -0
- package/lib/overlay/ui/overlayPanelStyles.d.ts +112 -0
- package/lib/overlay/ui/overlayPanelStyles.d.ts.map +1 -0
- package/lib/overlay/ui/overlayPanelStyles.js +193 -0
- package/lib/overlay/ui/overlayPanelStyles.js.map +1 -0
- package/lib/overlay/ui/overlayPillKeys.d.ts +19 -0
- package/lib/overlay/ui/overlayPillKeys.d.ts.map +1 -0
- package/lib/overlay/ui/overlayPillKeys.js +33 -0
- package/lib/overlay/ui/overlayPillKeys.js.map +1 -0
- package/lib/overlay/ui/overlayPillStyles.d.ts +78 -0
- package/lib/overlay/ui/overlayPillStyles.d.ts.map +1 -0
- package/lib/overlay/ui/overlayPillStyles.js +140 -0
- package/lib/overlay/ui/overlayPillStyles.js.map +1 -0
- package/lib/overlay/ui/overlayRowStyles.d.ts +113 -0
- package/lib/overlay/ui/overlayRowStyles.d.ts.map +1 -0
- package/lib/overlay/ui/overlayRowStyles.js +135 -0
- package/lib/overlay/ui/overlayRowStyles.js.map +1 -0
- package/lib/overlay/ui/overlayStepperStyles.d.ts +51 -0
- package/lib/overlay/ui/overlayStepperStyles.d.ts.map +1 -0
- package/lib/overlay/ui/overlayStepperStyles.js +96 -0
- package/lib/overlay/ui/overlayStepperStyles.js.map +1 -0
- package/lib/overlay/ui/overlayStyles.d.ts +123 -0
- package/lib/overlay/ui/overlayStyles.d.ts.map +1 -0
- package/lib/overlay/ui/overlayStyles.js +203 -0
- package/lib/overlay/ui/overlayStyles.js.map +1 -0
- package/lib/overlay/ui/overlaySurface.d.ts +54 -0
- package/lib/overlay/ui/overlaySurface.d.ts.map +1 -0
- package/lib/overlay/ui/overlaySurface.js +85 -0
- package/lib/overlay/ui/overlaySurface.js.map +1 -0
- package/lib/overlay/ui/overlaySwitchStyles.d.ts +70 -0
- package/lib/overlay/ui/overlaySwitchStyles.d.ts.map +1 -0
- package/lib/overlay/ui/overlaySwitchStyles.js +102 -0
- package/lib/overlay/ui/overlaySwitchStyles.js.map +1 -0
- package/lib/overlay/ui/overlayValueStyles.d.ts +101 -0
- package/lib/overlay/ui/overlayValueStyles.d.ts.map +1 -0
- package/lib/overlay/ui/overlayValueStyles.js +166 -0
- package/lib/overlay/ui/overlayValueStyles.js.map +1 -0
- package/lib/projection/core/embeddingResult.d.ts +60 -0
- package/lib/projection/core/embeddingResult.d.ts.map +1 -0
- package/lib/projection/core/embeddingResult.js +52 -0
- package/lib/projection/core/embeddingResult.js.map +1 -0
- package/lib/projection/core/explainedShares.d.ts +51 -0
- package/lib/projection/core/explainedShares.d.ts.map +1 -0
- package/lib/projection/core/explainedShares.js +55 -0
- package/lib/projection/core/explainedShares.js.map +1 -0
- package/lib/projection/core/index.d.ts +38 -0
- package/lib/projection/core/index.d.ts.map +1 -0
- package/lib/projection/core/index.js +25 -0
- package/lib/projection/core/index.js.map +1 -0
- package/lib/projection/core/loadingProfiles.d.ts +87 -0
- package/lib/projection/core/loadingProfiles.d.ts.map +1 -0
- package/lib/projection/core/loadingProfiles.js +125 -0
- package/lib/projection/core/loadingProfiles.js.map +1 -0
- package/lib/projection/core/pcaLike.d.ts +32 -0
- package/lib/projection/core/pcaLike.d.ts.map +1 -0
- package/lib/projection/core/pcaLike.js +2 -0
- package/lib/projection/core/pcaLike.js.map +1 -0
- package/lib/projection/core/pcaResult.d.ts +86 -0
- package/lib/projection/core/pcaResult.d.ts.map +1 -0
- package/lib/projection/core/pcaResult.js +122 -0
- package/lib/projection/core/pcaResult.js.map +1 -0
- package/lib/projection/core/projectionCopy.d.ts +130 -0
- package/lib/projection/core/projectionCopy.d.ts.map +1 -0
- package/lib/projection/core/projectionCopy.js +111 -0
- package/lib/projection/core/projectionCopy.js.map +1 -0
- package/lib/projection/core/projectionCopyPatch.d.ts +13 -0
- package/lib/projection/core/projectionCopyPatch.d.ts.map +1 -0
- package/lib/projection/core/projectionCopyPatch.js +2 -0
- package/lib/projection/core/projectionCopyPatch.js.map +1 -0
- package/lib/projection/core/projectionOptions.d.ts +131 -0
- package/lib/projection/core/projectionOptions.d.ts.map +1 -0
- package/lib/projection/core/projectionOptions.js +85 -0
- package/lib/projection/core/projectionOptions.js.map +1 -0
- package/lib/projection/core/projectionResult.d.ts +119 -0
- package/lib/projection/core/projectionResult.d.ts.map +1 -0
- package/lib/projection/core/projectionResult.js +2 -0
- package/lib/projection/core/projectionResult.js.map +1 -0
- package/lib/projection/core/projectionSamples.d.ts +77 -0
- package/lib/projection/core/projectionSamples.d.ts.map +1 -0
- package/lib/projection/core/projectionSamples.js +81 -0
- package/lib/projection/core/projectionSamples.js.map +1 -0
- package/lib/projection/core/projectionStrings.d.ts +134 -0
- package/lib/projection/core/projectionStrings.d.ts.map +1 -0
- package/lib/projection/core/projectionStrings.js +168 -0
- package/lib/projection/core/projectionStrings.js.map +1 -0
- package/lib/projection/core/projectionTabDefaults.d.ts +18 -0
- package/lib/projection/core/projectionTabDefaults.d.ts.map +1 -0
- package/lib/projection/core/projectionTabDefaults.js +46 -0
- package/lib/projection/core/projectionTabDefaults.js.map +1 -0
- package/lib/projection/core/projectionTabs.d.ts +25 -0
- package/lib/projection/core/projectionTabs.d.ts.map +1 -0
- package/lib/projection/core/projectionTabs.js +51 -0
- package/lib/projection/core/projectionTabs.js.map +1 -0
- package/lib/projection/core/variableAxis.d.ts +106 -0
- package/lib/projection/core/variableAxis.d.ts.map +1 -0
- package/lib/projection/core/variableAxis.js +84 -0
- package/lib/projection/core/variableAxis.js.map +1 -0
- package/lib/projection/core/variablesView.d.ts +33 -0
- package/lib/projection/core/variablesView.d.ts.map +1 -0
- package/lib/projection/core/variablesView.js +49 -0
- package/lib/projection/core/variablesView.js.map +1 -0
- package/lib/projection/ui/PcaViewer.d.ts +31 -0
- package/lib/projection/ui/PcaViewer.d.ts.map +1 -0
- package/lib/projection/ui/PcaViewer.js +46 -0
- package/lib/projection/ui/PcaViewer.js.map +1 -0
- package/lib/projection/ui/ProjectionBar.d.ts +55 -0
- package/lib/projection/ui/ProjectionBar.d.ts.map +1 -0
- package/lib/projection/ui/ProjectionBar.js +112 -0
- package/lib/projection/ui/ProjectionBar.js.map +1 -0
- package/lib/projection/ui/ProjectionMapCaption.d.ts +46 -0
- package/lib/projection/ui/ProjectionMapCaption.d.ts.map +1 -0
- package/lib/projection/ui/ProjectionMapCaption.js +54 -0
- package/lib/projection/ui/ProjectionMapCaption.js.map +1 -0
- package/lib/projection/ui/ProjectionMapControls.d.ts +67 -0
- package/lib/projection/ui/ProjectionMapControls.d.ts.map +1 -0
- package/lib/projection/ui/ProjectionMapControls.js +108 -0
- package/lib/projection/ui/ProjectionMapControls.js.map +1 -0
- package/lib/projection/ui/ProjectionMapLegend.d.ts +39 -0
- package/lib/projection/ui/ProjectionMapLegend.d.ts.map +1 -0
- package/lib/projection/ui/ProjectionMapLegend.js +29 -0
- package/lib/projection/ui/ProjectionMapLegend.js.map +1 -0
- package/lib/projection/ui/ProjectionMapMore.d.ts +42 -0
- package/lib/projection/ui/ProjectionMapMore.d.ts.map +1 -0
- package/lib/projection/ui/ProjectionMapMore.js +74 -0
- package/lib/projection/ui/ProjectionMapMore.js.map +1 -0
- package/lib/projection/ui/ProjectionMapTab.d.ts +101 -0
- package/lib/projection/ui/ProjectionMapTab.d.ts.map +1 -0
- package/lib/projection/ui/ProjectionMapTab.js +42 -0
- package/lib/projection/ui/ProjectionMapTab.js.map +1 -0
- package/lib/projection/ui/ProjectionPairsControls.d.ts +37 -0
- package/lib/projection/ui/ProjectionPairsControls.d.ts.map +1 -0
- package/lib/projection/ui/ProjectionPairsControls.js +20 -0
- package/lib/projection/ui/ProjectionPairsControls.js.map +1 -0
- package/lib/projection/ui/ProjectionPairsMore.d.ts +40 -0
- package/lib/projection/ui/ProjectionPairsMore.d.ts.map +1 -0
- package/lib/projection/ui/ProjectionPairsMore.js +31 -0
- package/lib/projection/ui/ProjectionPairsMore.js.map +1 -0
- package/lib/projection/ui/ProjectionPairsTab.d.ts +66 -0
- package/lib/projection/ui/ProjectionPairsTab.d.ts.map +1 -0
- package/lib/projection/ui/ProjectionPairsTab.js +64 -0
- package/lib/projection/ui/ProjectionPairsTab.js.map +1 -0
- package/lib/projection/ui/ProjectionPanel.d.ts +73 -0
- package/lib/projection/ui/ProjectionPanel.d.ts.map +1 -0
- package/lib/projection/ui/ProjectionPanel.js +58 -0
- package/lib/projection/ui/ProjectionPanel.js.map +1 -0
- package/lib/projection/ui/ProjectionReadout.d.ts +65 -0
- package/lib/projection/ui/ProjectionReadout.d.ts.map +1 -0
- package/lib/projection/ui/ProjectionReadout.js +46 -0
- package/lib/projection/ui/ProjectionReadout.js.map +1 -0
- package/lib/projection/ui/ProjectionSharesControls.d.ts +34 -0
- package/lib/projection/ui/ProjectionSharesControls.d.ts.map +1 -0
- package/lib/projection/ui/ProjectionSharesControls.js +20 -0
- package/lib/projection/ui/ProjectionSharesControls.js.map +1 -0
- package/lib/projection/ui/ProjectionSharesMarks.d.ts +49 -0
- package/lib/projection/ui/ProjectionSharesMarks.d.ts.map +1 -0
- package/lib/projection/ui/ProjectionSharesMarks.js +110 -0
- package/lib/projection/ui/ProjectionSharesMarks.js.map +1 -0
- package/lib/projection/ui/ProjectionSharesMore.d.ts +19 -0
- package/lib/projection/ui/ProjectionSharesMore.d.ts.map +1 -0
- package/lib/projection/ui/ProjectionSharesMore.js +25 -0
- package/lib/projection/ui/ProjectionSharesMore.js.map +1 -0
- package/lib/projection/ui/ProjectionSharesTab.d.ts +50 -0
- package/lib/projection/ui/ProjectionSharesTab.d.ts.map +1 -0
- package/lib/projection/ui/ProjectionSharesTab.js +48 -0
- package/lib/projection/ui/ProjectionSharesTab.js.map +1 -0
- package/lib/projection/ui/ProjectionSurface.d.ts +33 -0
- package/lib/projection/ui/ProjectionSurface.d.ts.map +1 -0
- package/lib/projection/ui/ProjectionSurface.js +35 -0
- package/lib/projection/ui/ProjectionSurface.js.map +1 -0
- package/lib/projection/ui/ProjectionTabStrip.d.ts +74 -0
- package/lib/projection/ui/ProjectionTabStrip.d.ts.map +1 -0
- package/lib/projection/ui/ProjectionTabStrip.js +64 -0
- package/lib/projection/ui/ProjectionTabStrip.js.map +1 -0
- package/lib/projection/ui/ProjectionVariablesControls.d.ts +33 -0
- package/lib/projection/ui/ProjectionVariablesControls.d.ts.map +1 -0
- package/lib/projection/ui/ProjectionVariablesControls.js +26 -0
- package/lib/projection/ui/ProjectionVariablesControls.js.map +1 -0
- package/lib/projection/ui/ProjectionVariablesMore.d.ts +33 -0
- package/lib/projection/ui/ProjectionVariablesMore.d.ts.map +1 -0
- package/lib/projection/ui/ProjectionVariablesMore.js +55 -0
- package/lib/projection/ui/ProjectionVariablesMore.js.map +1 -0
- package/lib/projection/ui/ProjectionVariablesTab.d.ts +78 -0
- package/lib/projection/ui/ProjectionVariablesTab.d.ts.map +1 -0
- package/lib/projection/ui/ProjectionVariablesTab.js +93 -0
- package/lib/projection/ui/ProjectionVariablesTab.js.map +1 -0
- package/lib/projection/ui/ProjectionViewer.d.ts +32 -0
- package/lib/projection/ui/ProjectionViewer.d.ts.map +1 -0
- package/lib/projection/ui/ProjectionViewer.js +90 -0
- package/lib/projection/ui/ProjectionViewer.js.map +1 -0
- package/lib/projection/ui/index.d.ts +19 -0
- package/lib/projection/ui/index.d.ts.map +1 -0
- package/lib/projection/ui/index.js +15 -0
- package/lib/projection/ui/index.js.map +1 -0
- package/lib/projection/ui/projectionBarModel.d.ts +92 -0
- package/lib/projection/ui/projectionBarModel.d.ts.map +1 -0
- package/lib/projection/ui/projectionBarModel.js +140 -0
- package/lib/projection/ui/projectionBarModel.js.map +1 -0
- package/lib/projection/ui/projectionBarReadings.d.ts +65 -0
- package/lib/projection/ui/projectionBarReadings.d.ts.map +1 -0
- package/lib/projection/ui/projectionBarReadings.js +121 -0
- package/lib/projection/ui/projectionBarReadings.js.map +1 -0
- package/lib/projection/ui/projectionBarSlots.d.ts +59 -0
- package/lib/projection/ui/projectionBarSlots.d.ts.map +1 -0
- package/lib/projection/ui/projectionBarSlots.js +81 -0
- package/lib/projection/ui/projectionBarSlots.js.map +1 -0
- package/lib/projection/ui/projectionBarStyles.d.ts +102 -0
- package/lib/projection/ui/projectionBarStyles.d.ts.map +1 -0
- package/lib/projection/ui/projectionBarStyles.js +154 -0
- package/lib/projection/ui/projectionBarStyles.js.map +1 -0
- package/lib/projection/ui/projectionEllipse.d.ts +50 -0
- package/lib/projection/ui/projectionEllipse.d.ts.map +1 -0
- package/lib/projection/ui/projectionEllipse.js +101 -0
- package/lib/projection/ui/projectionEllipse.js.map +1 -0
- package/lib/projection/ui/projectionFormat.d.ts +13 -0
- package/lib/projection/ui/projectionFormat.d.ts.map +1 -0
- package/lib/projection/ui/projectionFormat.js +19 -0
- package/lib/projection/ui/projectionFormat.js.map +1 -0
- package/lib/projection/ui/projectionMapChoices.d.ts +31 -0
- package/lib/projection/ui/projectionMapChoices.d.ts.map +1 -0
- package/lib/projection/ui/projectionMapChoices.js +46 -0
- package/lib/projection/ui/projectionMapChoices.js.map +1 -0
- package/lib/projection/ui/projectionMapChrome.d.ts +73 -0
- package/lib/projection/ui/projectionMapChrome.d.ts.map +1 -0
- package/lib/projection/ui/projectionMapChrome.js +135 -0
- package/lib/projection/ui/projectionMapChrome.js.map +1 -0
- package/lib/projection/ui/projectionMapModel.d.ts +114 -0
- package/lib/projection/ui/projectionMapModel.d.ts.map +1 -0
- package/lib/projection/ui/projectionMapModel.js +177 -0
- package/lib/projection/ui/projectionMapModel.js.map +1 -0
- package/lib/projection/ui/projectionMapView.d.ts +59 -0
- package/lib/projection/ui/projectionMapView.d.ts.map +1 -0
- package/lib/projection/ui/projectionMapView.js +90 -0
- package/lib/projection/ui/projectionMapView.js.map +1 -0
- package/lib/projection/ui/projectionPairsCeiling.d.ts +29 -0
- package/lib/projection/ui/projectionPairsCeiling.d.ts.map +1 -0
- package/lib/projection/ui/projectionPairsCeiling.js +29 -0
- package/lib/projection/ui/projectionPairsCeiling.js.map +1 -0
- package/lib/projection/ui/projectionSelection.d.ts +51 -0
- package/lib/projection/ui/projectionSelection.d.ts.map +1 -0
- package/lib/projection/ui/projectionSelection.js +66 -0
- package/lib/projection/ui/projectionSelection.js.map +1 -0
- package/lib/projection/ui/projectionTabInfo.d.ts +59 -0
- package/lib/projection/ui/projectionTabInfo.d.ts.map +1 -0
- package/lib/projection/ui/projectionTabInfo.js +108 -0
- package/lib/projection/ui/projectionTabInfo.js.map +1 -0
- package/lib/projection/ui/projectionTabModels.d.ts +49 -0
- package/lib/projection/ui/projectionTabModels.d.ts.map +1 -0
- package/lib/projection/ui/projectionTabModels.js +59 -0
- package/lib/projection/ui/projectionTabModels.js.map +1 -0
- package/lib/projection/ui/projectionTabStyles.d.ts +131 -0
- package/lib/projection/ui/projectionTabStyles.d.ts.map +1 -0
- package/lib/projection/ui/projectionTabStyles.js +134 -0
- package/lib/projection/ui/projectionTabStyles.js.map +1 -0
- package/lib/projection/ui/projectionVariablesModel.d.ts +104 -0
- package/lib/projection/ui/projectionVariablesModel.d.ts.map +1 -0
- package/lib/projection/ui/projectionVariablesModel.js +165 -0
- package/lib/projection/ui/projectionVariablesModel.js.map +1 -0
- package/lib/projection/ui/projectionVariablesWords.d.ts +50 -0
- package/lib/projection/ui/projectionVariablesWords.d.ts.map +1 -0
- package/lib/projection/ui/projectionVariablesWords.js +91 -0
- package/lib/projection/ui/projectionVariablesWords.js.map +1 -0
- package/lib/projection/ui/projectionViewChoices.d.ts +31 -0
- package/lib/projection/ui/projectionViewChoices.d.ts.map +1 -0
- package/lib/projection/ui/projectionViewChoices.js +53 -0
- package/lib/projection/ui/projectionViewChoices.js.map +1 -0
- package/lib/projection/ui/projectionViewerProps.d.ts +153 -0
- package/lib/projection/ui/projectionViewerProps.d.ts.map +1 -0
- package/lib/projection/ui/projectionViewerProps.js +9 -0
- package/lib/projection/ui/projectionViewerProps.js.map +1 -0
- package/lib/projection/ui/useProjectionState.d.ts +63 -0
- package/lib/projection/ui/useProjectionState.d.ts.map +1 -0
- package/lib/projection/ui/useProjectionState.js +107 -0
- package/lib/projection/ui/useProjectionState.js.map +1 -0
- package/lib/scatter/core/confidenceEllipse.d.ts +117 -0
- package/lib/scatter/core/confidenceEllipse.d.ts.map +1 -0
- package/lib/scatter/core/confidenceEllipse.js +132 -0
- package/lib/scatter/core/confidenceEllipse.js.map +1 -0
- package/lib/scatter/core/ellipseCoverage.d.ts +33 -0
- package/lib/scatter/core/ellipseCoverage.d.ts.map +1 -0
- package/lib/scatter/core/ellipseCoverage.js +46 -0
- package/lib/scatter/core/ellipseCoverage.js.map +1 -0
- package/lib/scatter/core/ellipseProjection.d.ts +53 -0
- package/lib/scatter/core/ellipseProjection.d.ts.map +1 -0
- package/lib/scatter/core/ellipseProjection.js +94 -0
- package/lib/scatter/core/ellipseProjection.js.map +1 -0
- package/lib/scatter/core/index.d.ts +24 -0
- package/lib/scatter/core/index.d.ts.map +1 -0
- package/lib/scatter/core/index.js +19 -0
- package/lib/scatter/core/index.js.map +1 -0
- package/lib/scatter/core/lassoPath.d.ts +60 -0
- package/lib/scatter/core/lassoPath.d.ts.map +1 -0
- package/lib/scatter/core/lassoPath.js +101 -0
- package/lib/scatter/core/lassoPath.js.map +1 -0
- package/lib/scatter/core/polygon.d.ts +58 -0
- package/lib/scatter/core/polygon.d.ts.map +1 -0
- package/lib/scatter/core/polygon.js +140 -0
- package/lib/scatter/core/polygon.js.map +1 -0
- package/lib/scatter/core/scatterSelection.d.ts +44 -0
- package/lib/scatter/core/scatterSelection.d.ts.map +1 -0
- package/lib/scatter/core/scatterSelection.js +81 -0
- package/lib/scatter/core/scatterSelection.js.map +1 -0
- package/lib/scatter/core/screenPoints.d.ts +58 -0
- package/lib/scatter/core/screenPoints.d.ts.map +1 -0
- package/lib/scatter/core/screenPoints.js +78 -0
- package/lib/scatter/core/screenPoints.js.map +1 -0
- package/lib/scatter/ui/ScatterEllipseLayer.d.ts +69 -0
- package/lib/scatter/ui/ScatterEllipseLayer.d.ts.map +1 -0
- package/lib/scatter/ui/ScatterEllipseLayer.js +77 -0
- package/lib/scatter/ui/ScatterEllipseLayer.js.map +1 -0
- package/lib/scatter/ui/ScatterLabelLayer.d.ts +40 -0
- package/lib/scatter/ui/ScatterLabelLayer.d.ts.map +1 -0
- package/lib/scatter/ui/ScatterLabelLayer.js +77 -0
- package/lib/scatter/ui/ScatterLabelLayer.js.map +1 -0
- package/lib/scatter/ui/ScatterMarkLayer.d.ts +68 -0
- package/lib/scatter/ui/ScatterMarkLayer.d.ts.map +1 -0
- package/lib/scatter/ui/ScatterMarkLayer.js +134 -0
- package/lib/scatter/ui/ScatterMarkLayer.js.map +1 -0
- package/lib/scatter/ui/ScatterMatrix.d.ts +19 -0
- package/lib/scatter/ui/ScatterMatrix.d.ts.map +1 -0
- package/lib/scatter/ui/ScatterMatrix.js +125 -0
- package/lib/scatter/ui/ScatterMatrix.js.map +1 -0
- package/lib/scatter/ui/ScatterMatrixCell.d.ts +24 -0
- package/lib/scatter/ui/ScatterMatrixCell.d.ts.map +1 -0
- package/lib/scatter/ui/ScatterMatrixCell.js +90 -0
- package/lib/scatter/ui/ScatterMatrixCell.js.map +1 -0
- package/lib/scatter/ui/ScatterMatrixDiagonal.d.ts +78 -0
- package/lib/scatter/ui/ScatterMatrixDiagonal.d.ts.map +1 -0
- package/lib/scatter/ui/ScatterMatrixDiagonal.js +83 -0
- package/lib/scatter/ui/ScatterMatrixDiagonal.js.map +1 -0
- package/lib/scatter/ui/ScatterPlot.d.ts +17 -0
- package/lib/scatter/ui/ScatterPlot.d.ts.map +1 -0
- package/lib/scatter/ui/ScatterPlot.js +91 -0
- package/lib/scatter/ui/ScatterPlot.js.map +1 -0
- package/lib/scatter/ui/ScatterPointLayer.d.ts +67 -0
- package/lib/scatter/ui/ScatterPointLayer.d.ts.map +1 -0
- package/lib/scatter/ui/ScatterPointLayer.js +87 -0
- package/lib/scatter/ui/ScatterPointLayer.js.map +1 -0
- package/lib/scatter/ui/index.d.ts +53 -0
- package/lib/scatter/ui/index.d.ts.map +1 -0
- package/lib/scatter/ui/index.js +34 -0
- package/lib/scatter/ui/index.js.map +1 -0
- package/lib/scatter/ui/lassoGesture.d.ts +185 -0
- package/lib/scatter/ui/lassoGesture.d.ts.map +1 -0
- package/lib/scatter/ui/lassoGesture.js +100 -0
- package/lib/scatter/ui/lassoGesture.js.map +1 -0
- package/lib/scatter/ui/scatterGroupSpread.d.ts +81 -0
- package/lib/scatter/ui/scatterGroupSpread.d.ts.map +1 -0
- package/lib/scatter/ui/scatterGroupSpread.js +147 -0
- package/lib/scatter/ui/scatterGroupSpread.js.map +1 -0
- package/lib/scatter/ui/scatterLabelBoxes.d.ts +94 -0
- package/lib/scatter/ui/scatterLabelBoxes.d.ts.map +1 -0
- package/lib/scatter/ui/scatterLabelBoxes.js +140 -0
- package/lib/scatter/ui/scatterLabelBoxes.js.map +1 -0
- package/lib/scatter/ui/scatterLabelPlacement.d.ts +96 -0
- package/lib/scatter/ui/scatterLabelPlacement.d.ts.map +1 -0
- package/lib/scatter/ui/scatterLabelPlacement.js +210 -0
- package/lib/scatter/ui/scatterLabelPlacement.js.map +1 -0
- package/lib/scatter/ui/scatterLabels.d.ts +81 -0
- package/lib/scatter/ui/scatterLabels.d.ts.map +1 -0
- package/lib/scatter/ui/scatterLabels.js +101 -0
- package/lib/scatter/ui/scatterLabels.js.map +1 -0
- package/lib/scatter/ui/scatterMarkGlyph.d.ts +37 -0
- package/lib/scatter/ui/scatterMarkGlyph.d.ts.map +1 -0
- package/lib/scatter/ui/scatterMarkGlyph.js +33 -0
- package/lib/scatter/ui/scatterMarkGlyph.js.map +1 -0
- package/lib/scatter/ui/scatterMatrixDots.d.ts +24 -0
- package/lib/scatter/ui/scatterMatrixDots.d.ts.map +1 -0
- package/lib/scatter/ui/scatterMatrixDots.js +84 -0
- package/lib/scatter/ui/scatterMatrixDots.js.map +1 -0
- package/lib/scatter/ui/scatterMatrixLayout.d.ts +93 -0
- package/lib/scatter/ui/scatterMatrixLayout.d.ts.map +1 -0
- package/lib/scatter/ui/scatterMatrixLayout.js +117 -0
- package/lib/scatter/ui/scatterMatrixLayout.js.map +1 -0
- package/lib/scatter/ui/scatterMatrixOutlines.d.ts +27 -0
- package/lib/scatter/ui/scatterMatrixOutlines.d.ts.map +1 -0
- package/lib/scatter/ui/scatterMatrixOutlines.js +34 -0
- package/lib/scatter/ui/scatterMatrixOutlines.js.map +1 -0
- package/lib/scatter/ui/scatterMatrixProps.d.ts +99 -0
- package/lib/scatter/ui/scatterMatrixProps.d.ts.map +1 -0
- package/lib/scatter/ui/scatterMatrixProps.js +10 -0
- package/lib/scatter/ui/scatterMatrixProps.js.map +1 -0
- package/lib/scatter/ui/scatterOutlineShape.d.ts +63 -0
- package/lib/scatter/ui/scatterOutlineShape.d.ts.map +1 -0
- package/lib/scatter/ui/scatterOutlineShape.js +82 -0
- package/lib/scatter/ui/scatterOutlineShape.js.map +1 -0
- package/lib/scatter/ui/scatterPlotModel.d.ts +107 -0
- package/lib/scatter/ui/scatterPlotModel.d.ts.map +1 -0
- package/lib/scatter/ui/scatterPlotModel.js +139 -0
- package/lib/scatter/ui/scatterPlotModel.js.map +1 -0
- package/lib/scatter/ui/scatterPlotProps.d.ts +235 -0
- package/lib/scatter/ui/scatterPlotProps.d.ts.map +1 -0
- package/lib/scatter/ui/scatterPlotProps.js +10 -0
- package/lib/scatter/ui/scatterPlotProps.js.map +1 -0
- package/lib/scatter/ui/useLassoGesture.d.ts +18 -0
- package/lib/scatter/ui/useLassoGesture.d.ts.map +1 -0
- package/lib/scatter/ui/useLassoGesture.js +140 -0
- package/lib/scatter/ui/useLassoGesture.js.map +1 -0
- package/lib/scatter/ui/usePointHover.d.ts +88 -0
- package/lib/scatter/ui/usePointHover.d.ts.map +1 -0
- package/lib/scatter/ui/usePointHover.js +88 -0
- package/lib/scatter/ui/usePointHover.js.map +1 -0
- package/lib/scatter/ui/useScatterFrame.d.ts +80 -0
- package/lib/scatter/ui/useScatterFrame.d.ts.map +1 -0
- package/lib/scatter/ui/useScatterFrame.js +101 -0
- package/lib/scatter/ui/useScatterFrame.js.map +1 -0
- package/lib/scatter/ui/useScatterInteraction.d.ts +103 -0
- package/lib/scatter/ui/useScatterInteraction.d.ts.map +1 -0
- package/lib/scatter/ui/useScatterInteraction.js +93 -0
- package/lib/scatter/ui/useScatterInteraction.js.map +1 -0
- package/lib/scatter/ui/useScatterKeyboard.d.ts +60 -0
- package/lib/scatter/ui/useScatterKeyboard.d.ts.map +1 -0
- package/lib/scatter/ui/useScatterKeyboard.js +56 -0
- package/lib/scatter/ui/useScatterKeyboard.js.map +1 -0
- package/lib/scatter/ui/useScatterSelection.d.ts +78 -0
- package/lib/scatter/ui/useScatterSelection.d.ts.map +1 -0
- package/lib/scatter/ui/useScatterSelection.js +72 -0
- package/lib/scatter/ui/useScatterSelection.js.map +1 -0
- package/lib/share/core/query.d.ts +10 -4
- package/lib/share/core/query.d.ts.map +1 -1
- package/lib/share/core/query.js +11 -7
- package/lib/share/core/query.js.map +1 -1
- package/lib/spectra/core/axisEntries.d.ts +50 -0
- package/lib/spectra/core/axisEntries.d.ts.map +1 -0
- package/lib/spectra/core/axisEntries.js +78 -0
- package/lib/spectra/core/axisEntries.js.map +1 -0
- package/lib/spectra/core/chainProblems.d.ts +14 -0
- package/lib/spectra/core/chainProblems.d.ts.map +1 -0
- package/lib/spectra/core/chainProblems.js +100 -0
- package/lib/spectra/core/chainProblems.js.map +1 -0
- package/lib/spectra/core/filterCatalog.d.ts +57 -0
- package/lib/spectra/core/filterCatalog.d.ts.map +1 -0
- package/lib/spectra/core/filterCatalog.js +81 -0
- package/lib/spectra/core/filterCatalog.js.map +1 -0
- package/lib/spectra/core/filterChain.d.ts +69 -0
- package/lib/spectra/core/filterChain.d.ts.map +1 -0
- package/lib/spectra/core/filterChain.js +163 -0
- package/lib/spectra/core/filterChain.js.map +1 -0
- package/lib/spectra/core/filterEntries.d.ts +136 -0
- package/lib/spectra/core/filterEntries.d.ts.map +1 -0
- package/lib/spectra/core/filterEntries.js +139 -0
- package/lib/spectra/core/filterEntries.js.map +1 -0
- package/lib/spectra/core/filterFields.d.ts +94 -0
- package/lib/spectra/core/filterFields.d.ts.map +1 -0
- package/lib/spectra/core/filterFields.js +82 -0
- package/lib/spectra/core/filterFields.js.map +1 -0
- package/lib/spectra/core/index.d.ts +14 -0
- package/lib/spectra/core/index.d.ts.map +1 -0
- package/lib/spectra/core/index.js +9 -0
- package/lib/spectra/core/index.js.map +1 -0
- package/lib/spectra/core/principalComponents.d.ts +70 -0
- package/lib/spectra/core/principalComponents.d.ts.map +1 -0
- package/lib/spectra/core/principalComponents.js +90 -0
- package/lib/spectra/core/principalComponents.js.map +1 -0
- package/lib/spectra/core/problems.d.ts +57 -0
- package/lib/spectra/core/problems.d.ts.map +1 -0
- package/lib/spectra/core/problems.js +121 -0
- package/lib/spectra/core/problems.js.map +1 -0
- package/lib/spectra/core/settings.d.ts +67 -0
- package/lib/spectra/core/settings.d.ts.map +1 -0
- package/lib/spectra/core/settings.js +35 -0
- package/lib/spectra/core/settings.js.map +1 -0
- package/lib/spectra/core/settingsProblems.d.ts +18 -0
- package/lib/spectra/core/settingsProblems.d.ts.map +1 -0
- package/lib/spectra/core/settingsProblems.js +148 -0
- package/lib/spectra/core/settingsProblems.js.map +1 -0
- package/lib/spectra/core/stepProblems.d.ts +13 -0
- package/lib/spectra/core/stepProblems.d.ts.map +1 -0
- package/lib/spectra/core/stepProblems.js +133 -0
- package/lib/spectra/core/stepProblems.js.map +1 -0
- package/lib/spectra/ui/CalculationRows.d.ts +21 -0
- package/lib/spectra/ui/CalculationRows.d.ts.map +1 -0
- package/lib/spectra/ui/CalculationRows.js +77 -0
- package/lib/spectra/ui/CalculationRows.js.map +1 -0
- package/lib/spectra/ui/FilterChainEditor.d.ts +34 -0
- package/lib/spectra/ui/FilterChainEditor.d.ts.map +1 -0
- package/lib/spectra/ui/FilterChainEditor.js +111 -0
- package/lib/spectra/ui/FilterChainEditor.js.map +1 -0
- package/lib/spectra/ui/FilterChoiceControl.d.ts +23 -0
- package/lib/spectra/ui/FilterChoiceControl.d.ts.map +1 -0
- package/lib/spectra/ui/FilterChoiceControl.js +65 -0
- package/lib/spectra/ui/FilterChoiceControl.js.map +1 -0
- package/lib/spectra/ui/FilterFieldControl.d.ts +25 -0
- package/lib/spectra/ui/FilterFieldControl.d.ts.map +1 -0
- package/lib/spectra/ui/FilterFieldControl.js +68 -0
- package/lib/spectra/ui/FilterFieldControl.js.map +1 -0
- package/lib/spectra/ui/FilterRow.d.ts +33 -0
- package/lib/spectra/ui/FilterRow.d.ts.map +1 -0
- package/lib/spectra/ui/FilterRow.js +76 -0
- package/lib/spectra/ui/FilterRow.js.map +1 -0
- package/lib/spectra/ui/MatrixFilterRows.d.ts +22 -0
- package/lib/spectra/ui/MatrixFilterRows.d.ts.map +1 -0
- package/lib/spectra/ui/MatrixFilterRows.js +92 -0
- package/lib/spectra/ui/MatrixFilterRows.js.map +1 -0
- package/lib/spectra/ui/NormalizationEditor.d.ts +24 -0
- package/lib/spectra/ui/NormalizationEditor.d.ts.map +1 -0
- package/lib/spectra/ui/NormalizationEditor.js +108 -0
- package/lib/spectra/ui/NormalizationEditor.js.map +1 -0
- package/lib/spectra/ui/NumberField.d.ts +41 -0
- package/lib/spectra/ui/NumberField.d.ts.map +1 -0
- package/lib/spectra/ui/NumberField.js +81 -0
- package/lib/spectra/ui/NumberField.js.map +1 -0
- package/lib/spectra/ui/PostProcessingEditor.d.ts +29 -0
- package/lib/spectra/ui/PostProcessingEditor.d.ts.map +1 -0
- package/lib/spectra/ui/PostProcessingEditor.js +53 -0
- package/lib/spectra/ui/PostProcessingEditor.js.map +1 -0
- package/lib/spectra/ui/PrincipalComponentSelect.d.ts +40 -0
- package/lib/spectra/ui/PrincipalComponentSelect.d.ts.map +1 -0
- package/lib/spectra/ui/PrincipalComponentSelect.js +97 -0
- package/lib/spectra/ui/PrincipalComponentSelect.js.map +1 -0
- package/lib/spectra/ui/ProblemList.d.ts +24 -0
- package/lib/spectra/ui/ProblemList.d.ts.map +1 -0
- package/lib/spectra/ui/ProblemList.js +40 -0
- package/lib/spectra/ui/ProblemList.js.map +1 -0
- package/lib/spectra/ui/RangeRows.d.ts +23 -0
- package/lib/spectra/ui/RangeRows.d.ts.map +1 -0
- package/lib/spectra/ui/RangeRows.js +76 -0
- package/lib/spectra/ui/RangeRows.js.map +1 -0
- package/lib/spectra/ui/ScaleFields.d.ts +28 -0
- package/lib/spectra/ui/ScaleFields.d.ts.map +1 -0
- package/lib/spectra/ui/ScaleFields.js +67 -0
- package/lib/spectra/ui/ScaleFields.js.map +1 -0
- package/lib/spectra/ui/SettingsPart.d.ts +25 -0
- package/lib/spectra/ui/SettingsPart.d.ts.map +1 -0
- package/lib/spectra/ui/SettingsPart.js +35 -0
- package/lib/spectra/ui/SettingsPart.js.map +1 -0
- package/lib/spectra/ui/SpectraSettingsEditor.d.ts +62 -0
- package/lib/spectra/ui/SpectraSettingsEditor.d.ts.map +1 -0
- package/lib/spectra/ui/SpectraSettingsEditor.js +39 -0
- package/lib/spectra/ui/SpectraSettingsEditor.js.map +1 -0
- package/lib/spectra/ui/SpectrumSelection.d.ts +30 -0
- package/lib/spectra/ui/SpectrumSelection.d.ts.map +1 -0
- package/lib/spectra/ui/SpectrumSelection.js +116 -0
- package/lib/spectra/ui/SpectrumSelection.js.map +1 -0
- package/lib/spectra/ui/ZoneRows.d.ts +41 -0
- package/lib/spectra/ui/ZoneRows.d.ts.map +1 -0
- package/lib/spectra/ui/ZoneRows.js +70 -0
- package/lib/spectra/ui/ZoneRows.js.map +1 -0
- package/lib/spectra/ui/index.d.ts +7 -0
- package/lib/spectra/ui/index.d.ts.map +1 -0
- package/lib/spectra/ui/index.js +4 -0
- package/lib/spectra/ui/index.js.map +1 -0
- package/lib/spectra/ui/matrixSteps.d.ts +61 -0
- package/lib/spectra/ui/matrixSteps.d.ts.map +1 -0
- package/lib/spectra/ui/matrixSteps.js +92 -0
- package/lib/spectra/ui/matrixSteps.js.map +1 -0
- package/lib/spectra/ui/problemsAbout.d.ts +14 -0
- package/lib/spectra/ui/problemsAbout.d.ts.map +1 -0
- package/lib/spectra/ui/problemsAbout.js +15 -0
- package/lib/spectra/ui/problemsAbout.js.map +1 -0
- package/lib/spectra/ui/rowKeys.d.ts +27 -0
- package/lib/spectra/ui/rowKeys.d.ts.map +1 -0
- package/lib/spectra/ui/rowKeys.js +45 -0
- package/lib/spectra/ui/rowKeys.js.map +1 -0
- package/lib/spectra/ui/scaleOptions.d.ts +50 -0
- package/lib/spectra/ui/scaleOptions.d.ts.map +1 -0
- package/lib/spectra/ui/scaleOptions.js +103 -0
- package/lib/spectra/ui/scaleOptions.js.map +1 -0
- package/lib/ui.d.ts +6 -0
- package/lib/ui.d.ts.map +1 -1
- package/lib/ui.js +6 -0
- package/lib/ui.js.map +1 -1
- package/package.json +17 -1
- package/src/chart/core/chartAxisScale.ts +249 -0
- package/src/chart/core/chartBand.ts +82 -0
- package/src/chart/core/chartBins.ts +96 -0
- package/src/chart/core/chartExtent.ts +203 -0
- package/src/chart/core/chartLabels.ts +68 -0
- package/src/chart/core/chartPalette.ts +71 -0
- package/src/chart/core/chartScale.ts +72 -0
- package/src/chart/core/chartViewport.ts +211 -0
- package/src/chart/core/index.ts +58 -0
- package/src/chart/core/matrix.ts +100 -0
- package/src/chart/ui/ChartAxis.tsx +232 -0
- package/src/chart/ui/ChartFrame.tsx +246 -0
- package/src/chart/ui/ChartSeriesMarks.tsx +98 -0
- package/src/chart/ui/ChartTrackingLayer.tsx +192 -0
- package/src/chart/ui/TrackedLineChart.tsx +267 -0
- package/src/chart/ui/TrackedStickChart.tsx +197 -0
- package/src/chart/ui/chartStyles.ts +194 -0
- package/src/chart/ui/index.ts +34 -0
- package/src/chart/ui/stickChartModel.ts +201 -0
- package/src/chart/ui/useWheelZoom.ts +177 -0
- package/src/color/core/gradient.ts +29 -0
- package/src/color/core/hsv.ts +112 -0
- package/src/color/core/index.ts +27 -1
- package/src/color/core/interpolate.ts +179 -0
- package/src/color/core/scale.ts +17 -49
- package/src/color/core/scaleData.ts +128 -0
- package/src/color/core/scaleText.ts +134 -0
- package/src/color/core/scales.ts +148 -0
- package/src/color/ui/ColorScaleBar.tsx +73 -0
- package/src/color/ui/ColorScaleEditor.tsx +243 -0
- package/src/color/ui/ColorScaleSelect.tsx +252 -0
- package/src/color/ui/index.ts +6 -0
- package/src/core.ts +5 -0
- package/src/credits/core/credits.ts +20 -0
- package/src/download/core/cssTokens.ts +90 -0
- package/src/download/core/downloadFigure.ts +66 -0
- package/src/download/core/figurePng.ts +87 -0
- package/src/download/core/figureScale.ts +83 -0
- package/src/download/core/figureSvg.ts +130 -0
- package/src/download/core/figureSvgDocument.ts +129 -0
- package/src/download/core/figureTarget.ts +130 -0
- package/src/download/core/index.ts +28 -0
- package/src/download/ui/FigureDownload.tsx +158 -0
- package/src/download/ui/FigureDownloadPanel.tsx +165 -0
- package/src/download/ui/index.ts +13 -0
- package/src/ecosystem/core/sites.ts +12 -1
- package/src/ecosystem/ui/glyphs.tsx +16 -0
- package/src/overlay/core/emptiestCorner.ts +122 -0
- package/src/overlay/core/index.ts +34 -0
- package/src/overlay/core/overlayCollapse.ts +20 -0
- package/src/overlay/core/overlayMarks.ts +43 -0
- package/src/overlay/core/overlayMetrics.ts +112 -0
- package/src/overlay/core/overlayPlacement.ts +80 -0
- package/src/overlay/core/overlayTierRoom.ts +199 -0
- package/src/overlay/core/overlayTiers.ts +130 -0
- package/src/overlay/core/placeOverlayCard.ts +93 -0
- package/src/overlay/ui/OverlayAction.tsx +66 -0
- package/src/overlay/ui/OverlayBar.tsx +188 -0
- package/src/overlay/ui/OverlayBarButton.tsx +83 -0
- package/src/overlay/ui/OverlayBarCard.tsx +78 -0
- package/src/overlay/ui/OverlayBarStrip.tsx +62 -0
- package/src/overlay/ui/OverlayCaption.tsx +124 -0
- package/src/overlay/ui/OverlayChip.tsx +181 -0
- package/src/overlay/ui/OverlayDivider.tsx +24 -0
- package/src/overlay/ui/OverlayGroup.tsx +157 -0
- package/src/overlay/ui/OverlayIconButton.tsx +131 -0
- package/src/overlay/ui/OverlayInfo.tsx +92 -0
- package/src/overlay/ui/OverlayLayer.tsx +118 -0
- package/src/overlay/ui/OverlayLegend.tsx +222 -0
- package/src/overlay/ui/OverlayLegendMark.tsx +95 -0
- package/src/overlay/ui/OverlayNumber.tsx +160 -0
- package/src/overlay/ui/OverlayPanel.tsx +162 -0
- package/src/overlay/ui/OverlayPills.tsx +157 -0
- package/src/overlay/ui/OverlayReadout.tsx +247 -0
- package/src/overlay/ui/OverlayRow.tsx +200 -0
- package/src/overlay/ui/OverlaySegmented.tsx +67 -0
- package/src/overlay/ui/OverlaySelect.tsx +114 -0
- package/src/overlay/ui/OverlaySwatchIcon.tsx +126 -0
- package/src/overlay/ui/OverlayToggle.tsx +136 -0
- package/src/overlay/ui/OverlayValueButton.tsx +149 -0
- package/src/overlay/ui/OverlayValueMenu.tsx +141 -0
- package/src/overlay/ui/index.ts +72 -0
- package/src/overlay/ui/overlayBarShape.ts +113 -0
- package/src/overlay/ui/overlayControlStyles.ts +176 -0
- package/src/overlay/ui/overlayFigureStyles.ts +111 -0
- package/src/overlay/ui/overlayPanelContext.ts +42 -0
- package/src/overlay/ui/overlayPanelStyles.ts +235 -0
- package/src/overlay/ui/overlayPillKeys.ts +45 -0
- package/src/overlay/ui/overlayPillStyles.ts +190 -0
- package/src/overlay/ui/overlayRowStyles.ts +166 -0
- package/src/overlay/ui/overlayStepperStyles.ts +112 -0
- package/src/overlay/ui/overlayStyles.ts +222 -0
- package/src/overlay/ui/overlaySurface.ts +120 -0
- package/src/overlay/ui/overlaySwitchStyles.ts +136 -0
- package/src/overlay/ui/overlayValueStyles.ts +210 -0
- package/src/projection/core/embeddingResult.ts +119 -0
- package/src/projection/core/explainedShares.ts +105 -0
- package/src/projection/core/index.ts +81 -0
- package/src/projection/core/loadingProfiles.ts +226 -0
- package/src/projection/core/pcaLike.ts +33 -0
- package/src/projection/core/pcaResult.ts +238 -0
- package/src/projection/core/projectionCopy.ts +252 -0
- package/src/projection/core/projectionCopyPatch.ts +12 -0
- package/src/projection/core/projectionOptions.ts +238 -0
- package/src/projection/core/projectionResult.ts +123 -0
- package/src/projection/core/projectionSamples.ts +170 -0
- package/src/projection/core/projectionStrings.ts +265 -0
- package/src/projection/core/projectionTabDefaults.ts +51 -0
- package/src/projection/core/projectionTabs.ts +56 -0
- package/src/projection/core/variableAxis.ts +161 -0
- package/src/projection/core/variablesView.ts +53 -0
- package/src/projection/ui/PcaViewer.tsx +80 -0
- package/src/projection/ui/ProjectionBar.tsx +222 -0
- package/src/projection/ui/ProjectionMapCaption.tsx +96 -0
- package/src/projection/ui/ProjectionMapControls.tsx +271 -0
- package/src/projection/ui/ProjectionMapLegend.tsx +70 -0
- package/src/projection/ui/ProjectionMapMore.tsx +178 -0
- package/src/projection/ui/ProjectionMapTab.tsx +205 -0
- package/src/projection/ui/ProjectionPairsControls.tsx +58 -0
- package/src/projection/ui/ProjectionPairsMore.tsx +95 -0
- package/src/projection/ui/ProjectionPairsTab.tsx +159 -0
- package/src/projection/ui/ProjectionPanel.tsx +199 -0
- package/src/projection/ui/ProjectionReadout.tsx +149 -0
- package/src/projection/ui/ProjectionSharesControls.tsx +56 -0
- package/src/projection/ui/ProjectionSharesMarks.tsx +241 -0
- package/src/projection/ui/ProjectionSharesMore.tsx +53 -0
- package/src/projection/ui/ProjectionSharesTab.tsx +118 -0
- package/src/projection/ui/ProjectionSurface.tsx +63 -0
- package/src/projection/ui/ProjectionTabStrip.tsx +144 -0
- package/src/projection/ui/ProjectionVariablesControls.tsx +62 -0
- package/src/projection/ui/ProjectionVariablesMore.tsx +144 -0
- package/src/projection/ui/ProjectionVariablesTab.tsx +216 -0
- package/src/projection/ui/ProjectionViewer.tsx +143 -0
- package/src/projection/ui/index.ts +19 -0
- package/src/projection/ui/projectionBarModel.ts +193 -0
- package/src/projection/ui/projectionBarReadings.ts +177 -0
- package/src/projection/ui/projectionBarSlots.tsx +139 -0
- package/src/projection/ui/projectionBarStyles.ts +174 -0
- package/src/projection/ui/projectionEllipse.ts +104 -0
- package/src/projection/ui/projectionFormat.ts +18 -0
- package/src/projection/ui/projectionMapChoices.ts +64 -0
- package/src/projection/ui/projectionMapChrome.ts +207 -0
- package/src/projection/ui/projectionMapModel.ts +253 -0
- package/src/projection/ui/projectionMapView.ts +188 -0
- package/src/projection/ui/projectionPairsCeiling.ts +45 -0
- package/src/projection/ui/projectionSelection.ts +87 -0
- package/src/projection/ui/projectionTabInfo.ts +126 -0
- package/src/projection/ui/projectionTabModels.ts +106 -0
- package/src/projection/ui/projectionTabStyles.ts +161 -0
- package/src/projection/ui/projectionVariablesModel.ts +231 -0
- package/src/projection/ui/projectionVariablesWords.ts +105 -0
- package/src/projection/ui/projectionViewChoices.ts +77 -0
- package/src/projection/ui/projectionViewerProps.ts +155 -0
- package/src/projection/ui/useProjectionState.ts +224 -0
- package/src/scatter/core/confidenceEllipse.ts +230 -0
- package/src/scatter/core/ellipseCoverage.ts +46 -0
- package/src/scatter/core/ellipseProjection.ts +126 -0
- package/src/scatter/core/index.ts +48 -0
- package/src/scatter/core/lassoPath.ts +127 -0
- package/src/scatter/core/polygon.ts +155 -0
- package/src/scatter/core/scatterSelection.ts +88 -0
- package/src/scatter/core/screenPoints.ts +110 -0
- package/src/scatter/ui/ScatterEllipseLayer.tsx +153 -0
- package/src/scatter/ui/ScatterLabelLayer.tsx +135 -0
- package/src/scatter/ui/ScatterMarkLayer.tsx +245 -0
- package/src/scatter/ui/ScatterMatrix.tsx +177 -0
- package/src/scatter/ui/ScatterMatrixCell.tsx +140 -0
- package/src/scatter/ui/ScatterMatrixDiagonal.tsx +182 -0
- package/src/scatter/ui/ScatterPlot.tsx +234 -0
- package/src/scatter/ui/ScatterPointLayer.tsx +168 -0
- package/src/scatter/ui/index.ts +123 -0
- package/src/scatter/ui/lassoGesture.ts +237 -0
- package/src/scatter/ui/scatterGroupSpread.ts +206 -0
- package/src/scatter/ui/scatterLabelBoxes.ts +177 -0
- package/src/scatter/ui/scatterLabelPlacement.ts +325 -0
- package/src/scatter/ui/scatterLabels.ts +147 -0
- package/src/scatter/ui/scatterMarkGlyph.tsx +94 -0
- package/src/scatter/ui/scatterMatrixDots.tsx +134 -0
- package/src/scatter/ui/scatterMatrixLayout.ts +133 -0
- package/src/scatter/ui/scatterMatrixOutlines.tsx +53 -0
- package/src/scatter/ui/scatterMatrixProps.ts +103 -0
- package/src/scatter/ui/scatterOutlineShape.tsx +169 -0
- package/src/scatter/ui/scatterPlotModel.ts +200 -0
- package/src/scatter/ui/scatterPlotProps.ts +240 -0
- package/src/scatter/ui/useLassoGesture.ts +214 -0
- package/src/scatter/ui/usePointHover.ts +187 -0
- package/src/scatter/ui/useScatterFrame.ts +191 -0
- package/src/scatter/ui/useScatterInteraction.ts +237 -0
- package/src/scatter/ui/useScatterKeyboard.ts +120 -0
- package/src/scatter/ui/useScatterSelection.ts +189 -0
- package/src/share/core/query.ts +11 -7
- package/src/spectra/core/axisEntries.ts +107 -0
- package/src/spectra/core/chainProblems.ts +165 -0
- package/src/spectra/core/filterCatalog.ts +100 -0
- package/src/spectra/core/filterChain.ts +194 -0
- package/src/spectra/core/filterEntries.ts +214 -0
- package/src/spectra/core/filterFields.ts +159 -0
- package/src/spectra/core/index.ts +67 -0
- package/src/spectra/core/principalComponents.ts +130 -0
- package/src/spectra/core/problems.ts +143 -0
- package/src/spectra/core/settings.ts +119 -0
- package/src/spectra/core/settingsProblems.ts +222 -0
- package/src/spectra/core/stepProblems.ts +228 -0
- package/src/spectra/ui/CalculationRows.tsx +161 -0
- package/src/spectra/ui/FilterChainEditor.tsx +199 -0
- package/src/spectra/ui/FilterChoiceControl.tsx +153 -0
- package/src/spectra/ui/FilterFieldControl.tsx +105 -0
- package/src/spectra/ui/FilterRow.tsx +190 -0
- package/src/spectra/ui/MatrixFilterRows.tsx +184 -0
- package/src/spectra/ui/NormalizationEditor.tsx +235 -0
- package/src/spectra/ui/NumberField.tsx +126 -0
- package/src/spectra/ui/PostProcessingEditor.tsx +136 -0
- package/src/spectra/ui/PrincipalComponentSelect.tsx +245 -0
- package/src/spectra/ui/ProblemList.tsx +77 -0
- package/src/spectra/ui/RangeRows.tsx +175 -0
- package/src/spectra/ui/ScaleFields.tsx +183 -0
- package/src/spectra/ui/SettingsPart.tsx +60 -0
- package/src/spectra/ui/SpectraSettingsEditor.tsx +143 -0
- package/src/spectra/ui/SpectrumSelection.tsx +193 -0
- package/src/spectra/ui/ZoneRows.tsx +159 -0
- package/src/spectra/ui/index.ts +9 -0
- package/src/spectra/ui/matrixSteps.ts +128 -0
- package/src/spectra/ui/problemsAbout.ts +21 -0
- package/src/spectra/ui/rowKeys.ts +47 -0
- package/src/spectra/ui/scaleOptions.ts +116 -0
- package/src/ui.ts +6 -0
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* How many measurements an axis carries.
|
|
3
|
+
* @param axis - The axis.
|
|
4
|
+
* @returns The count.
|
|
5
|
+
*/
|
|
6
|
+
export function variableCount(axis) {
|
|
7
|
+
return axis.kind === 'named' ? axis.names.length : axis.values.length;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Where each measurement sits, for an axis that is a number line.
|
|
11
|
+
* @param axis - The axis.
|
|
12
|
+
* @returns The positions, or `null` for a named axis, which has none.
|
|
13
|
+
*/
|
|
14
|
+
export function variablePositions(axis) {
|
|
15
|
+
return axis.kind === 'named' ? null : axis.values;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* What one measurement is called, written out.
|
|
19
|
+
* @param axis - The axis.
|
|
20
|
+
* @param index - Which measurement, from 0.
|
|
21
|
+
* @param decimals - Decimals the value is rounded to, from `variableDecimals`,
|
|
22
|
+
* for a label written under a tick.
|
|
23
|
+
* @default undefined — the number is written as it was handed in, which is
|
|
24
|
+
* what a readout naming one slot wants
|
|
25
|
+
* @returns The name, or the value with its unit — `1650 cm⁻¹`. An index
|
|
26
|
+
* outside the axis gives an empty string.
|
|
27
|
+
*/
|
|
28
|
+
export function variableLabel(axis, index, decimals) {
|
|
29
|
+
if (!Number.isInteger(index) || index < 0)
|
|
30
|
+
return '';
|
|
31
|
+
if (axis.kind === 'named')
|
|
32
|
+
return axis.names[index] ?? '';
|
|
33
|
+
const value = axis.values[index];
|
|
34
|
+
if (value === undefined)
|
|
35
|
+
return '';
|
|
36
|
+
// Asked for in full, a number is written as it was handed in: rounding a
|
|
37
|
+
// wavenumber to a tidier one would name a slot the reader cannot find in
|
|
38
|
+
// their own file.
|
|
39
|
+
const written = decimals === undefined ? String(value) : String(rounded(value, decimals));
|
|
40
|
+
const unit = axis.unit ?? '';
|
|
41
|
+
return unit === '' ? written : `${written} ${unit}`;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* How many decimals the axis writes its own values with.
|
|
45
|
+
*
|
|
46
|
+
* About a hundred steps across the span the axis covers, which is finer than
|
|
47
|
+
* the dozen-odd ticks a chart labels and coarse enough to drop what a
|
|
48
|
+
* resampling left behind: a spectrum landed on its own grid carries values
|
|
49
|
+
* like 878.9834, where every digit past the second says something about the
|
|
50
|
+
* grid rather than about the measurement, so a tick reads `879 cm⁻¹`. A named
|
|
51
|
+
* axis has no values to write and gets none.
|
|
52
|
+
* @param axis - The axis.
|
|
53
|
+
* @returns The decimals, from 0 to 6.
|
|
54
|
+
*/
|
|
55
|
+
export function variableDecimals(axis) {
|
|
56
|
+
if (axis.kind === 'named')
|
|
57
|
+
return 0;
|
|
58
|
+
let min = Number.POSITIVE_INFINITY;
|
|
59
|
+
let max = Number.NEGATIVE_INFINITY;
|
|
60
|
+
for (const value of axis.values) {
|
|
61
|
+
if (!Number.isFinite(value))
|
|
62
|
+
continue;
|
|
63
|
+
if (value < min)
|
|
64
|
+
min = value;
|
|
65
|
+
if (value > max)
|
|
66
|
+
max = value;
|
|
67
|
+
}
|
|
68
|
+
const span = max - min;
|
|
69
|
+
if (!Number.isFinite(span) || span <= 0)
|
|
70
|
+
return MOST_DECIMALS;
|
|
71
|
+
const decimals = AXIS_DIGITS - Math.ceil(Math.log10(span));
|
|
72
|
+
return Math.min(MOST_DECIMALS, Math.max(0, decimals));
|
|
73
|
+
}
|
|
74
|
+
function rounded(value, decimals) {
|
|
75
|
+
if (!Number.isFinite(value))
|
|
76
|
+
return value;
|
|
77
|
+
const factor = 10 ** decimals;
|
|
78
|
+
return Math.round(value * factor) / factor;
|
|
79
|
+
}
|
|
80
|
+
/** Digits kept above the decimal point when the axis writes a value. */
|
|
81
|
+
const AXIS_DIGITS = 2;
|
|
82
|
+
/** Decimals an axis is never written past, however narrow its span. */
|
|
83
|
+
const MOST_DECIMALS = 6;
|
|
84
|
+
//# sourceMappingURL=variableAxis.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"variableAxis.js","sourceRoot":"","sources":["../../../src/projection/core/variableAxis.ts"],"names":[],"mappings":"AAyEA;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,IAAkB;IAC9C,OAAO,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;AACxE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAC/B,IAAkB;IAElB,OAAO,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;AACpD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,aAAa,CAC3B,IAAkB,EAClB,KAAa,EACb,QAAiB;IAEjB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC;QAAE,OAAO,EAAE,CAAC;IACrD,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IAE1D,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACjC,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACnC,yEAAyE;IACzE,yEAAyE;IACzE,kBAAkB;IAClB,MAAM,OAAO,GACX,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC5E,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;IAC7B,OAAO,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,IAAI,IAAI,EAAE,CAAC;AACtD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAkB;IACjD,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,CAAC,CAAC;IACpC,IAAI,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC;IACnC,IAAI,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC;IACnC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,SAAS;QACtC,IAAI,KAAK,GAAG,GAAG;YAAE,GAAG,GAAG,KAAK,CAAC;QAC7B,IAAI,KAAK,GAAG,GAAG;YAAE,GAAG,GAAG,KAAK,CAAC;IAC/B,CAAC;IACD,MAAM,IAAI,GAAG,GAAG,GAAG,GAAG,CAAC;IACvB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC;QAAE,OAAO,aAAa,CAAC;IAC9D,MAAM,QAAQ,GAAG,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3D,OAAO,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,OAAO,CAAC,KAAa,EAAE,QAAgB;IAC9C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC1C,MAAM,MAAM,GAAG,EAAE,IAAI,QAAQ,CAAC;IAC9B,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,GAAG,MAAM,CAAC;AAC7C,CAAC;AAED,wEAAwE;AACxE,MAAM,WAAW,GAAG,CAAC,CAAC;AAEtB,uEAAuE;AACvE,MAAM,aAAa,GAAG,CAAC,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { ProjectionVariablesView } from './projectionOptions.ts';
|
|
2
|
+
import type { ProjectionLoadings } from './projectionResult.ts';
|
|
3
|
+
/**
|
|
4
|
+
* The view that can actually be drawn from what the result carries.
|
|
5
|
+
*
|
|
6
|
+
* Three of the four views need something beyond the weights, and a result is
|
|
7
|
+
* free not to publish it: `effect` walks from the average sample along the
|
|
8
|
+
* component, so it needs both the average and the spread; `rescaled` undoes a
|
|
9
|
+
* scaling, so it needs the scaling; `sample` rebuilds one sample from the
|
|
10
|
+
* components, so it needs the average and a sample to rebuild. What is missing
|
|
11
|
+
* falls back to `weights`, which every result can fill.
|
|
12
|
+
*
|
|
13
|
+
* It is one function because it is one question, asked twice — once by the
|
|
14
|
+
* settings bar deciding which views to offer, and once by the panels deciding
|
|
15
|
+
* what to draw. Two answers is not a tidiness problem: a bar that offers a
|
|
16
|
+
* view the panels refuse leaves a reader picking `sample` and watching the
|
|
17
|
+
* weights redraw, with nothing anywhere saying why.
|
|
18
|
+
*
|
|
19
|
+
* `sampleScores` is what tells the two callers apart, and leaving it out is a
|
|
20
|
+
* third answer rather than a shorthand for none. The bar cannot know what is
|
|
21
|
+
* selected — a selection is not part of a result — so it omits the argument
|
|
22
|
+
* and asks only whether the *result* could support the view at all. The panels
|
|
23
|
+
* always know, so they pass what is selected, and an empty array is a real
|
|
24
|
+
* answer: nothing to rebuild, so nothing to draw.
|
|
25
|
+
* @param view - The view that was asked for.
|
|
26
|
+
* @param loadings - What loads onto each axis, or nothing when the result
|
|
27
|
+
* published none.
|
|
28
|
+
* @param sampleScores - The selected sample's scores; empty for a selection of
|
|
29
|
+
* nothing, omitted by a caller that cannot see the selection.
|
|
30
|
+
* @returns The view to draw, which is the one asked for or `weights`.
|
|
31
|
+
*/
|
|
32
|
+
export declare function drawableVariablesView(view: ProjectionVariablesView, loadings: ProjectionLoadings | undefined, sampleScores?: readonly number[]): ProjectionVariablesView;
|
|
33
|
+
//# sourceMappingURL=variablesView.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"variablesView.d.ts","sourceRoot":"","sources":["../../../src/projection/core/variablesView.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAEhE;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,uBAAuB,EAC7B,QAAQ,EAAE,kBAAkB,GAAG,SAAS,EACxC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,GAC/B,uBAAuB,CAgBzB"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The view that can actually be drawn from what the result carries.
|
|
3
|
+
*
|
|
4
|
+
* Three of the four views need something beyond the weights, and a result is
|
|
5
|
+
* free not to publish it: `effect` walks from the average sample along the
|
|
6
|
+
* component, so it needs both the average and the spread; `rescaled` undoes a
|
|
7
|
+
* scaling, so it needs the scaling; `sample` rebuilds one sample from the
|
|
8
|
+
* components, so it needs the average and a sample to rebuild. What is missing
|
|
9
|
+
* falls back to `weights`, which every result can fill.
|
|
10
|
+
*
|
|
11
|
+
* It is one function because it is one question, asked twice — once by the
|
|
12
|
+
* settings bar deciding which views to offer, and once by the panels deciding
|
|
13
|
+
* what to draw. Two answers is not a tidiness problem: a bar that offers a
|
|
14
|
+
* view the panels refuse leaves a reader picking `sample` and watching the
|
|
15
|
+
* weights redraw, with nothing anywhere saying why.
|
|
16
|
+
*
|
|
17
|
+
* `sampleScores` is what tells the two callers apart, and leaving it out is a
|
|
18
|
+
* third answer rather than a shorthand for none. The bar cannot know what is
|
|
19
|
+
* selected — a selection is not part of a result — so it omits the argument
|
|
20
|
+
* and asks only whether the *result* could support the view at all. The panels
|
|
21
|
+
* always know, so they pass what is selected, and an empty array is a real
|
|
22
|
+
* answer: nothing to rebuild, so nothing to draw.
|
|
23
|
+
* @param view - The view that was asked for.
|
|
24
|
+
* @param loadings - What loads onto each axis, or nothing when the result
|
|
25
|
+
* published none.
|
|
26
|
+
* @param sampleScores - The selected sample's scores; empty for a selection of
|
|
27
|
+
* nothing, omitted by a caller that cannot see the selection.
|
|
28
|
+
* @returns The view to draw, which is the one asked for or `weights`.
|
|
29
|
+
*/
|
|
30
|
+
export function drawableVariablesView(view, loadings, sampleScores) {
|
|
31
|
+
if (loadings === undefined || view === 'weights')
|
|
32
|
+
return 'weights';
|
|
33
|
+
if (view === 'rescaled') {
|
|
34
|
+
return loadings.scales === undefined ? 'weights' : 'rescaled';
|
|
35
|
+
}
|
|
36
|
+
if (view === 'effect') {
|
|
37
|
+
const walkable = loadings.mean !== undefined && loadings.spread !== undefined;
|
|
38
|
+
return walkable ? 'effect' : 'weights';
|
|
39
|
+
}
|
|
40
|
+
// `sample` is rebuilt from the average and the sample's own scores. It never
|
|
41
|
+
// reads the spread, which is what walking to the ends of a component needs
|
|
42
|
+
// and this does not do.
|
|
43
|
+
if (loadings.mean === undefined)
|
|
44
|
+
return 'weights';
|
|
45
|
+
if (sampleScores === undefined)
|
|
46
|
+
return 'sample';
|
|
47
|
+
return sampleScores.length > 0 ? 'sample' : 'weights';
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=variablesView.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"variablesView.js","sourceRoot":"","sources":["../../../src/projection/core/variablesView.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,UAAU,qBAAqB,CACnC,IAA6B,EAC7B,QAAwC,EACxC,YAAgC;IAEhC,IAAI,QAAQ,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACnE,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;QACxB,OAAO,QAAQ,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;IAChE,CAAC;IACD,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,MAAM,QAAQ,GACZ,QAAQ,CAAC,IAAI,KAAK,SAAS,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,CAAC;QAC/D,OAAO,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IACzC,CAAC;IACD,6EAA6E;IAC7E,2EAA2E;IAC3E,wBAAwB;IACxB,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAClD,IAAI,YAAY,KAAK,SAAS;QAAE,OAAO,QAAQ,CAAC;IAChD,OAAO,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;AACxD,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { ReactElement } from 'react';
|
|
2
|
+
import type { PcaLike } from '../core/pcaLike.ts';
|
|
3
|
+
import type { PcaResultOptions } from '../core/pcaResult.ts';
|
|
4
|
+
import type { ProjectionViewerProps } from './projectionViewerProps.ts';
|
|
5
|
+
/** What {@link PcaViewer} needs on top of what every projection viewer takes. */
|
|
6
|
+
export interface PcaViewerProps extends Omit<ProjectionViewerProps, 'result'>, Omit<PcaResultOptions, 'method'> {
|
|
7
|
+
/**
|
|
8
|
+
* The fitted model. It is described structurally, so `ml-pca`'s `PCA`
|
|
9
|
+
* satisfies it as it is and this package never imports `ml-pca`.
|
|
10
|
+
*/
|
|
11
|
+
pca: PcaLike;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* A fitted principal component analysis, shown as a map a reader can
|
|
15
|
+
* interrogate.
|
|
16
|
+
*
|
|
17
|
+
* It is {@link ProjectionViewer} with one call in front of it: everything the
|
|
18
|
+
* four tabs draw is built by `pcaResult` into the same record a k-means or a
|
|
19
|
+
* UMAP run fills in by hand, and no tab, no layer and no callback below this
|
|
20
|
+
* line knows what a principal component is.
|
|
21
|
+
*
|
|
22
|
+
* `projected` is the reason to reach for this rather than call `pcaResult`
|
|
23
|
+
* first: samples handed to it took no part in choosing where the axes point,
|
|
24
|
+
* so the map draws them hollow and says so, and a reader can see at a glance
|
|
25
|
+
* which points the model has already accounted for and which it is being asked
|
|
26
|
+
* about.
|
|
27
|
+
* @param props - See {@link PcaViewerProps}.
|
|
28
|
+
* @returns The viewer.
|
|
29
|
+
*/
|
|
30
|
+
export declare function PcaViewer(props: PcaViewerProps): ReactElement;
|
|
31
|
+
//# sourceMappingURL=PcaViewer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PcaViewer.d.ts","sourceRoot":"","sources":["../../../src/projection/ui/PcaViewer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAG1C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAI7D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAExE,iFAAiF;AACjF,MAAM,WAAW,cACf,SACE,IAAI,CAAC,qBAAqB,EAAE,QAAQ,CAAC,EACrC,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC;IAClC;;;OAGG;IACH,GAAG,EAAE,OAAO,CAAC;CACd;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,YAAY,CAwC7D"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo } from 'react';
|
|
3
|
+
import { pcaResult } from "../core/pcaResult.js";
|
|
4
|
+
import { ProjectionViewer } from "./ProjectionViewer.js";
|
|
5
|
+
/**
|
|
6
|
+
* A fitted principal component analysis, shown as a map a reader can
|
|
7
|
+
* interrogate.
|
|
8
|
+
*
|
|
9
|
+
* It is {@link ProjectionViewer} with one call in front of it: everything the
|
|
10
|
+
* four tabs draw is built by `pcaResult` into the same record a k-means or a
|
|
11
|
+
* UMAP run fills in by hand, and no tab, no layer and no callback below this
|
|
12
|
+
* line knows what a principal component is.
|
|
13
|
+
*
|
|
14
|
+
* `projected` is the reason to reach for this rather than call `pcaResult`
|
|
15
|
+
* first: samples handed to it took no part in choosing where the axes point,
|
|
16
|
+
* so the map draws them hollow and says so, and a reader can see at a glance
|
|
17
|
+
* which points the model has already accounted for and which it is being asked
|
|
18
|
+
* about.
|
|
19
|
+
* @param props - See {@link PcaViewerProps}.
|
|
20
|
+
* @returns The viewer.
|
|
21
|
+
*/
|
|
22
|
+
export function PcaViewer(props) {
|
|
23
|
+
const { pca, rows, projected, variables, scores, scaled, count, valueLabel, signConvention, ...viewer } = props;
|
|
24
|
+
const result = useMemo(() => pcaResult(pca, {
|
|
25
|
+
rows,
|
|
26
|
+
projected,
|
|
27
|
+
variables,
|
|
28
|
+
scores,
|
|
29
|
+
scaled,
|
|
30
|
+
count,
|
|
31
|
+
valueLabel,
|
|
32
|
+
signConvention,
|
|
33
|
+
}), [
|
|
34
|
+
count,
|
|
35
|
+
pca,
|
|
36
|
+
projected,
|
|
37
|
+
rows,
|
|
38
|
+
scaled,
|
|
39
|
+
scores,
|
|
40
|
+
signConvention,
|
|
41
|
+
valueLabel,
|
|
42
|
+
variables,
|
|
43
|
+
]);
|
|
44
|
+
return _jsx(ProjectionViewer, { ...viewer, result: result });
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=PcaViewer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PcaViewer.js","sourceRoot":"","sources":["../../../src/projection/ui/PcaViewer.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAIhC,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAwB,CAAC;AAe1D;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,SAAS,CAAC,KAAqB;IAC7C,MAAM,EACJ,GAAG,EACH,IAAI,EACJ,SAAS,EACT,SAAS,EACT,MAAM,EACN,MAAM,EACN,KAAK,EACL,UAAU,EACV,cAAc,EACd,GAAG,MAAM,EACV,GAAG,KAAK,CAAC;IAEV,MAAM,MAAM,GAAG,OAAO,CACpB,GAAG,EAAE,CACH,SAAS,CAAC,GAAG,EAAE;QACb,IAAI;QACJ,SAAS;QACT,SAAS;QACT,MAAM;QACN,MAAM;QACN,KAAK;QACL,UAAU;QACV,cAAc;KACf,CAAC,EACJ;QACE,KAAK;QACL,GAAG;QACH,SAAS;QACT,IAAI;QACJ,MAAM;QACN,MAAM;QACN,cAAc;QACd,UAAU;QACV,SAAS;KACV,CACF,CAAC;IAEF,OAAO,KAAC,gBAAgB,OAAK,MAAM,EAAE,MAAM,EAAE,MAAM,GAAI,CAAC;AAC1D,CAAC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import type { ReactElement } from 'react';
|
|
2
|
+
import type { ProjectionCopy } from '../core/projectionCopy.ts';
|
|
3
|
+
import type { ProjectionResult } from '../core/projectionResult.ts';
|
|
4
|
+
import type { ProjectionMapView } from './projectionMapView.ts';
|
|
5
|
+
import type { ProjectionModels } from './projectionTabModels.ts';
|
|
6
|
+
import type { ProjectionStateApi } from './useProjectionState.ts';
|
|
7
|
+
/** What {@link ProjectionBar} needs. */
|
|
8
|
+
export interface ProjectionBarProps {
|
|
9
|
+
/** The tab, the options and the selection every tab shares. */
|
|
10
|
+
state: ProjectionStateApi;
|
|
11
|
+
/** What the run produced, whatever produced it. */
|
|
12
|
+
result: ProjectionResult;
|
|
13
|
+
/** The words the viewer writes, already merged over the defaults. */
|
|
14
|
+
copy: ProjectionCopy;
|
|
15
|
+
/** The two figures the bar explains and a tab draws. */
|
|
16
|
+
models: ProjectionModels;
|
|
17
|
+
/** The map's frame and the three buttons that change it. */
|
|
18
|
+
map: ProjectionMapView;
|
|
19
|
+
/** Stem of the `id` every pill carries, for the panel to name its tab with. */
|
|
20
|
+
baseId: string;
|
|
21
|
+
/** The `id` of the panel the pills drive, which is also what is saved. */
|
|
22
|
+
panelId: string;
|
|
23
|
+
/** What a figure saved from the bar is called, without its extension. */
|
|
24
|
+
fileName: string;
|
|
25
|
+
/** Width of the viewer, in pixels, which decides how much it writes. */
|
|
26
|
+
width: number;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* One bar across the top of the figure: the views at the start, the settings
|
|
30
|
+
* of the view showing at the end, and the question mark between them.
|
|
31
|
+
*
|
|
32
|
+
* It belongs to the viewer rather than to any tab because it is the
|
|
33
|
+
* component's own chrome — a reader moves between four figures with it, and
|
|
34
|
+
* four bars, three of them hidden, would be four places for that row to sit a
|
|
35
|
+
* pixel differently.
|
|
36
|
+
*
|
|
37
|
+
* It stays one row at every width, because a bar that wrapped would change the
|
|
38
|
+
* figure's height as the host page resized. What a narrowing figure costs the
|
|
39
|
+
* reader is words rather than controls: the key word in front of each setting
|
|
40
|
+
* goes first, then the long form of the view names, then the boxes around the
|
|
41
|
+
* settings, which gather into one chip still reading `Species · 95%`. Only on
|
|
42
|
+
* the narrowest figures does anything leave the row at all, and it is the
|
|
43
|
+
* question mark — whose paragraph is then written at the head of the panel the
|
|
44
|
+
* cog opens, so nothing is lost, only moved.
|
|
45
|
+
*
|
|
46
|
+
* The one thing on the bar that acts on the figure rather than describing it
|
|
47
|
+
* is the save glyph, which is why it rides beside the question mark rather than
|
|
48
|
+
* among the settings: it is offered on every view, because every view draws a
|
|
49
|
+
* figure somebody may want to keep, and it saves whatever the box below the bar
|
|
50
|
+
* is currently holding — one map, or the sixteen charts of a pair grid.
|
|
51
|
+
* @param props - See {@link ProjectionBarProps}.
|
|
52
|
+
* @returns The bar.
|
|
53
|
+
*/
|
|
54
|
+
export declare function ProjectionBar(props: ProjectionBarProps): ReactElement;
|
|
55
|
+
//# sourceMappingURL=ProjectionBar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProjectionBar.d.ts","sourceRoot":"","sources":["../../../src/projection/ui/ProjectionBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAa,MAAM,OAAO,CAAC;AASrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAkBpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,wCAAwC;AACxC,MAAM,WAAW,kBAAkB;IACjC,+DAA+D;IAC/D,KAAK,EAAE,kBAAkB,CAAC;IAC1B,mDAAmD;IACnD,MAAM,EAAE,gBAAgB,CAAC;IACzB,qEAAqE;IACrE,IAAI,EAAE,cAAc,CAAC;IACrB,wDAAwD;IACxD,MAAM,EAAE,gBAAgB,CAAC;IACzB,4DAA4D;IAC5D,GAAG,EAAE,iBAAiB,CAAC;IACvB,+EAA+E;IAC/E,MAAM,EAAE,MAAM,CAAC;IACf,0EAA0E;IAC1E,OAAO,EAAE,MAAM,CAAC;IAChB,yEAAyE;IACzE,QAAQ,EAAE,MAAM,CAAC;IACjB,wEAAwE;IACxE,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,YAAY,CA2FrE"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo } from 'react';
|
|
3
|
+
import { FigureDownload } from "../../download/ui/FigureDownload.js";
|
|
4
|
+
import { overlayMetrics } from "../../overlay/core/overlayMetrics.js";
|
|
5
|
+
import { OverlayBar } from "../../overlay/ui/OverlayBar.js";
|
|
6
|
+
import { OverlayInfo } from "../../overlay/ui/OverlayInfo.js";
|
|
7
|
+
import { useCoarsePointer } from "../../overlay/ui/overlaySurface.js";
|
|
8
|
+
import { ProjectionSurface } from "./ProjectionSurface.js";
|
|
9
|
+
import { ProjectionTabStrip } from "./ProjectionTabStrip.js";
|
|
10
|
+
import { projectionBarEndRoom, projectionBarGlyphs, projectionBarTier, } from "./projectionBarModel.js";
|
|
11
|
+
import { projectionBarReadings } from "./projectionBarReadings.js";
|
|
12
|
+
import { projectionBarSlots } from "./projectionBarSlots.js";
|
|
13
|
+
import { PROJECTION_CAPTION_TEXT_STYLE, projectionBarEndStyle, projectionBarRowStyle, projectionFoldedCaptionStyle, } from "./projectionBarStyles.js";
|
|
14
|
+
/**
|
|
15
|
+
* One bar across the top of the figure: the views at the start, the settings
|
|
16
|
+
* of the view showing at the end, and the question mark between them.
|
|
17
|
+
*
|
|
18
|
+
* It belongs to the viewer rather than to any tab because it is the
|
|
19
|
+
* component's own chrome — a reader moves between four figures with it, and
|
|
20
|
+
* four bars, three of them hidden, would be four places for that row to sit a
|
|
21
|
+
* pixel differently.
|
|
22
|
+
*
|
|
23
|
+
* It stays one row at every width, because a bar that wrapped would change the
|
|
24
|
+
* figure's height as the host page resized. What a narrowing figure costs the
|
|
25
|
+
* reader is words rather than controls: the key word in front of each setting
|
|
26
|
+
* goes first, then the long form of the view names, then the boxes around the
|
|
27
|
+
* settings, which gather into one chip still reading `Species · 95%`. Only on
|
|
28
|
+
* the narrowest figures does anything leave the row at all, and it is the
|
|
29
|
+
* question mark — whose paragraph is then written at the head of the panel the
|
|
30
|
+
* cog opens, so nothing is lost, only moved.
|
|
31
|
+
*
|
|
32
|
+
* The one thing on the bar that acts on the figure rather than describing it
|
|
33
|
+
* is the save glyph, which is why it rides beside the question mark rather than
|
|
34
|
+
* among the settings: it is offered on every view, because every view draws a
|
|
35
|
+
* figure somebody may want to keep, and it saves whatever the box below the bar
|
|
36
|
+
* is currently holding — one map, or the sixteen charts of a pair grid.
|
|
37
|
+
* @param props - See {@link ProjectionBarProps}.
|
|
38
|
+
* @returns The bar.
|
|
39
|
+
*/
|
|
40
|
+
export function ProjectionBar(props) {
|
|
41
|
+
const { state, result, copy, models, map, baseId, panelId } = props;
|
|
42
|
+
const { fileName, width } = props;
|
|
43
|
+
const { tab, tabs, options, groups, selected, setOptions, setTab } = state;
|
|
44
|
+
// Read here rather than off the surface below, because the row the bar is
|
|
45
|
+
// laid into is the surface's own parent: it has to know how tall a control
|
|
46
|
+
// will be before there is a surface to ask.
|
|
47
|
+
const pointer = useCoarsePointer() ? 'coarse' : 'fine';
|
|
48
|
+
const metrics = overlayMetrics('compact', pointer);
|
|
49
|
+
const strip = tabs.length > 1;
|
|
50
|
+
const labels = useMemo(() => (strip ? tabNames(tabs, copy.tab) : NO_LABELS), [strip, tabs, copy]);
|
|
51
|
+
const shortLabels = useMemo(() => (strip ? tabNames(tabs, copy.shortTab) : NO_LABELS), [strip, tabs, copy]);
|
|
52
|
+
const readings = projectionBarReadings({ tab, copy, options, groups });
|
|
53
|
+
const room = {
|
|
54
|
+
tabLabels: labels,
|
|
55
|
+
shortTabLabels: shortLabels,
|
|
56
|
+
readings,
|
|
57
|
+
glyphs: projectionBarGlyphs(tab),
|
|
58
|
+
};
|
|
59
|
+
const tier = projectionBarTier(width, room, metrics);
|
|
60
|
+
const strippable = Math.max(metrics.buttonSize, width - projectionBarEndRoom(room, metrics, tier));
|
|
61
|
+
const slots = projectionBarSlots({
|
|
62
|
+
tab,
|
|
63
|
+
result,
|
|
64
|
+
copy,
|
|
65
|
+
models,
|
|
66
|
+
map,
|
|
67
|
+
options,
|
|
68
|
+
groups,
|
|
69
|
+
selected,
|
|
70
|
+
width,
|
|
71
|
+
readings,
|
|
72
|
+
tier,
|
|
73
|
+
onChange: setOptions,
|
|
74
|
+
});
|
|
75
|
+
const folded = tier === 'tiny' && slots.info !== '';
|
|
76
|
+
return (_jsx(ProjectionSurface, { width: width, children: _jsx("div", { style: projectionBarRowStyle(metrics), children: _jsx(OverlayBar, { placement: "stretch", label: copy.action.options, collapsed: false, morePadded: false, end: _jsx("div", { style: projectionBarEndStyle(metrics), children: slots.end }), more: folded ? withCaption(slots.info, slots.more, metrics) : slots.more, tools: _jsx(FigureDownload, { targetId: panelId, fileName: `${fileName}-${tab}`, label: copy.action.download }), info: folded || slots.info === '' ? undefined : (_jsx(OverlayInfo, { children: slots.info })), children: strip ? (_jsx(ProjectionTabStrip, { tabs: tabs, tab: tab, onTabChange: setTab, labels: copy.tab, shortLabels: copy.shortTab, tier: tier, maxWidth: strippable, baseId: baseId, panelId: panelId })) : null }) }) }));
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* What each tab showing is called, in one of the two lengths.
|
|
80
|
+
* @param tabs - The tabs the result can fill, in reading order.
|
|
81
|
+
* @param names - What each tab is called at that length.
|
|
82
|
+
* @returns The names, in the same order.
|
|
83
|
+
*/
|
|
84
|
+
function tabNames(tabs, names) {
|
|
85
|
+
const labels = [];
|
|
86
|
+
for (const tab of tabs)
|
|
87
|
+
labels.push(names[tab]);
|
|
88
|
+
return labels;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* The figure's explanation at the head of the panel the cog opens.
|
|
92
|
+
*
|
|
93
|
+
* On the narrowest figures the question mark is the one glyph that leaves the
|
|
94
|
+
* row, because the settings and the second tier both have to stay reachable —
|
|
95
|
+
* so its paragraph is written here instead. A reader short of room is exactly
|
|
96
|
+
* the reader who has not been told what they are looking at, which is why it
|
|
97
|
+
* is moved rather than dropped.
|
|
98
|
+
*
|
|
99
|
+
* It is a band above the panel rather than a row inside it: the panel's rows
|
|
100
|
+
* are settings the reader changes, and a paragraph filed among them is one
|
|
101
|
+
* more thing to scan past on the way to the switch they came for.
|
|
102
|
+
* @param caption - The paragraph the question mark used to open.
|
|
103
|
+
* @param more - The panel the cog already held.
|
|
104
|
+
* @param metrics - The measurements the chrome is drawn from.
|
|
105
|
+
* @returns The panel's contents.
|
|
106
|
+
*/
|
|
107
|
+
function withCaption(caption, more, metrics) {
|
|
108
|
+
return (_jsxs(_Fragment, { children: [_jsx("div", { style: projectionFoldedCaptionStyle(metrics), children: _jsx("p", { style: PROJECTION_CAPTION_TEXT_STYLE, children: caption }) }), more] }));
|
|
109
|
+
}
|
|
110
|
+
/** No pills at all, which is what one tab gets. */
|
|
111
|
+
const NO_LABELS = [];
|
|
112
|
+
//# sourceMappingURL=ProjectionBar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProjectionBar.js","sourceRoot":"","sources":["../../../src/projection/ui/ProjectionBar.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import type { ReactElement } from 'react';
|
|
2
|
+
import type { ScatterSelectionMode } from '../../scatter/core/scatterSelection.ts';
|
|
3
|
+
import type { ProjectionCopy } from '../core/projectionCopy.ts';
|
|
4
|
+
/** What a gesture just picked out, and when. */
|
|
5
|
+
export interface SelectionReport {
|
|
6
|
+
/** The sentence to show, already written out. */
|
|
7
|
+
text: string;
|
|
8
|
+
/** A number that rises with every gesture, so two identical reports are still two reports. */
|
|
9
|
+
at: number;
|
|
10
|
+
}
|
|
11
|
+
/** What {@link ProjectionMapCaption} needs. */
|
|
12
|
+
export interface ProjectionMapCaptionProps {
|
|
13
|
+
/** What the last gesture picked out, or `null` before there was one. */
|
|
14
|
+
report: SelectionReport | null;
|
|
15
|
+
/** The words the map writes, already merged over the defaults. */
|
|
16
|
+
copy: ProjectionCopy;
|
|
17
|
+
/** What a plain drag does, which is what a drag under way is promised to do. */
|
|
18
|
+
mode: ScatterSelectionMode;
|
|
19
|
+
/**
|
|
20
|
+
* Whether a lasso is being drawn right now.
|
|
21
|
+
* @default false
|
|
22
|
+
*/
|
|
23
|
+
drawing?: boolean;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* The one sentence on this figure that is not behind the question mark.
|
|
27
|
+
*
|
|
28
|
+
* Everything the map has to say about itself standing still — what a dot is,
|
|
29
|
+
* what an outline holds — waits behind the `?` in the bar, because an embedded
|
|
30
|
+
* figure cannot spend three lines of somebody else's page on a paragraph most
|
|
31
|
+
* readers will not read twice. This sentence is the exception, and it is a
|
|
32
|
+
* different kind of thing: it says what is happening *now*, and a reader half
|
|
33
|
+
* way through a lasso cannot open a popover to find out whether letting go
|
|
34
|
+
* will replace what they had already picked or add to it.
|
|
35
|
+
*
|
|
36
|
+
* So it appears only while a gesture is under way, and for a few seconds after
|
|
37
|
+
* one, and it takes no room at all in between. That is also what lets it sit
|
|
38
|
+
* across the strip the horizontal axis is titled in: a standing caption there
|
|
39
|
+
* would cost the reader the axis name for good, while this one hands it back
|
|
40
|
+
* on its own a moment later, and during a drag the reader is watching the loop
|
|
41
|
+
* rather than the axis.
|
|
42
|
+
* @param props - See {@link ProjectionMapCaptionProps}.
|
|
43
|
+
* @returns The line, or nothing at all when nothing is happening.
|
|
44
|
+
*/
|
|
45
|
+
export declare function ProjectionMapCaption(props: ProjectionMapCaptionProps): ReactElement | null;
|
|
46
|
+
//# sourceMappingURL=ProjectionMapCaption.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProjectionMapCaption.d.ts","sourceRoot":"","sources":["../../../src/projection/ui/ProjectionMapCaption.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAI1C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AACnF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAEhE,gDAAgD;AAChD,MAAM,WAAW,eAAe;IAC9B,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,8FAA8F;IAC9F,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,+CAA+C;AAC/C,MAAM,WAAW,yBAAyB;IACxC,wEAAwE;IACxE,MAAM,EAAE,eAAe,GAAG,IAAI,CAAC;IAC/B,kEAAkE;IAClE,IAAI,EAAE,cAAc,CAAC;IACrB,gFAAgF;IAChF,IAAI,EAAE,oBAAoB,CAAC;IAC3B;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,yBAAyB,GAC/B,YAAY,GAAG,IAAI,CA0BrB"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useEffect, useState } from 'react';
|
|
3
|
+
import { OverlayCaption } from "../../overlay/ui/OverlayCaption.js";
|
|
4
|
+
/**
|
|
5
|
+
* The one sentence on this figure that is not behind the question mark.
|
|
6
|
+
*
|
|
7
|
+
* Everything the map has to say about itself standing still — what a dot is,
|
|
8
|
+
* what an outline holds — waits behind the `?` in the bar, because an embedded
|
|
9
|
+
* figure cannot spend three lines of somebody else's page on a paragraph most
|
|
10
|
+
* readers will not read twice. This sentence is the exception, and it is a
|
|
11
|
+
* different kind of thing: it says what is happening *now*, and a reader half
|
|
12
|
+
* way through a lasso cannot open a popover to find out whether letting go
|
|
13
|
+
* will replace what they had already picked or add to it.
|
|
14
|
+
*
|
|
15
|
+
* So it appears only while a gesture is under way, and for a few seconds after
|
|
16
|
+
* one, and it takes no room at all in between. That is also what lets it sit
|
|
17
|
+
* across the strip the horizontal axis is titled in: a standing caption there
|
|
18
|
+
* would cost the reader the axis name for good, while this one hands it back
|
|
19
|
+
* on its own a moment later, and during a drag the reader is watching the loop
|
|
20
|
+
* rather than the axis.
|
|
21
|
+
* @param props - See {@link ProjectionMapCaptionProps}.
|
|
22
|
+
* @returns The line, or nothing at all when nothing is happening.
|
|
23
|
+
*/
|
|
24
|
+
export function ProjectionMapCaption(props) {
|
|
25
|
+
const { report, copy, mode, drawing = false } = props;
|
|
26
|
+
const [faded, setFaded] = useState(0);
|
|
27
|
+
useEffect(() => {
|
|
28
|
+
if (report === null)
|
|
29
|
+
return undefined;
|
|
30
|
+
const { at } = report;
|
|
31
|
+
const timer = setTimeout(() => setFaded(at), ANNOUNCEMENT_MS);
|
|
32
|
+
return () => clearTimeout(timer);
|
|
33
|
+
}, [report]);
|
|
34
|
+
if (drawing) {
|
|
35
|
+
return (_jsx(OverlayCaption, { tone: "strong", live: true, children: copy.sentence[LASSO_SENTENCES[mode]] }));
|
|
36
|
+
}
|
|
37
|
+
if (report !== null && faded !== report.at) {
|
|
38
|
+
return (_jsx(OverlayCaption, { tone: "strong", live: true, children: report.text }));
|
|
39
|
+
}
|
|
40
|
+
return null;
|
|
41
|
+
}
|
|
42
|
+
/** Which sentence describes a drag under way, per mode. */
|
|
43
|
+
const LASSO_SENTENCES = {
|
|
44
|
+
replace: 'lassoReplace',
|
|
45
|
+
add: 'lassoAdd',
|
|
46
|
+
remove: 'lassoRemove',
|
|
47
|
+
};
|
|
48
|
+
/**
|
|
49
|
+
* How long a report holds the line. Long enough to read a short sentence
|
|
50
|
+
* twice, short enough that a reader who has moved on is not still being told
|
|
51
|
+
* what they did.
|
|
52
|
+
*/
|
|
53
|
+
const ANNOUNCEMENT_MS = 4000;
|
|
54
|
+
//# sourceMappingURL=ProjectionMapCaption.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProjectionMapCaption.js","sourceRoot":"","sources":["../../../src/projection/ui/ProjectionMapCaption.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAqC,CAAC;AA2BrE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,oBAAoB,CAClC,KAAgC;IAEhC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,GAAG,KAAK,EAAE,GAAG,KAAK,CAAC;IACtD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAEtC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,SAAS,CAAC;QACtC,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM,CAAC;QACtB,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,eAAe,CAAC,CAAC;QAC9D,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CACL,KAAC,cAAc,IAAC,IAAI,EAAC,QAAQ,EAAC,IAAI,kBAC/B,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,GACtB,CAClB,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,KAAK,IAAI,IAAI,KAAK,KAAK,MAAM,CAAC,EAAE,EAAE,CAAC;QAC3C,OAAO,CACL,KAAC,cAAc,IAAC,IAAI,EAAC,QAAQ,EAAC,IAAI,kBAC/B,MAAM,CAAC,IAAI,GACG,CAClB,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,2DAA2D;AAC3D,MAAM,eAAe,GAAG;IACtB,OAAO,EAAE,cAAc;IACvB,GAAG,EAAE,UAAU;IACf,MAAM,EAAE,aAAa;CAItB,CAAC;AAEF;;;;GAIG;AACH,MAAM,eAAe,GAAG,IAAI,CAAC"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import type { ReactElement } from 'react';
|
|
2
|
+
import type { OverlayTier } from '../../overlay/core/overlayTiers.ts';
|
|
3
|
+
import type { ProjectionCopy } from '../core/projectionCopy.ts';
|
|
4
|
+
import type { ProjectionOptions } from '../core/projectionOptions.ts';
|
|
5
|
+
import type { ProjectionReading } from './projectionBarReadings.ts';
|
|
6
|
+
/** What the map's controls are drawn from, wherever in the bar they sit. */
|
|
7
|
+
export interface ProjectionMapControlsProps {
|
|
8
|
+
/** What the map is showing, already resolved against the result. */
|
|
9
|
+
options: ProjectionOptions;
|
|
10
|
+
/** Called with only the options that changed, for the viewer to merge. */
|
|
11
|
+
onChange: (patch: Partial<ProjectionOptions>) => void;
|
|
12
|
+
/** The words the bar writes, already merged over the defaults. */
|
|
13
|
+
copy: ProjectionCopy;
|
|
14
|
+
/** What the set of groups is called, which is what `Colour by` offers. */
|
|
15
|
+
groupLabel: string;
|
|
16
|
+
/**
|
|
17
|
+
* Whether the samples carry groups at all. Without them the colour and the
|
|
18
|
+
* outlines stand for nothing, so their controls are greyed rather than
|
|
19
|
+
* removed: a reader who cannot find a control assumes the figure has none.
|
|
20
|
+
* @default false
|
|
21
|
+
*/
|
|
22
|
+
hasGroups?: boolean;
|
|
23
|
+
/**
|
|
24
|
+
* What the two settings currently read, with the figure's own colours. They
|
|
25
|
+
* are built once for the bar and handed down rather than spelled again here,
|
|
26
|
+
* so the chip can never write a value the fold was not measured against.
|
|
27
|
+
* @default [] — nothing is written, which is what the panel behind the cog
|
|
28
|
+
* wants
|
|
29
|
+
*/
|
|
30
|
+
readings?: readonly ProjectionReading[];
|
|
31
|
+
/**
|
|
32
|
+
* How much of itself the bar is writing.
|
|
33
|
+
* @default 'full'
|
|
34
|
+
*/
|
|
35
|
+
tier?: OverlayTier;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* The map settings a reader changes while looking at the picture.
|
|
39
|
+
*
|
|
40
|
+
* They are the ones a reader who has never met a component still has an
|
|
41
|
+
* opinion about — what the colour means, whether the groups are ringed, and
|
|
42
|
+
* whether the picture writes the names — while the axes, the dot size and the
|
|
43
|
+
* gestures belong to somebody who already knows what they are looking for and
|
|
44
|
+
* wait behind the cog.
|
|
45
|
+
*
|
|
46
|
+
* The two names are switches rather than menus because they are the settings a
|
|
47
|
+
* reader throws and unthrows while reading rather than choosing once: a map of
|
|
48
|
+
* forty groups needs its crowds named, and a reader who has just found an
|
|
49
|
+
* outlier wants its name for as long as it takes to write it down.
|
|
50
|
+
*
|
|
51
|
+
* The first two are written as their values rather than as captions beside
|
|
52
|
+
* boxes: the name of a setting is read once, on the first visit, and its value
|
|
53
|
+
* is read every time the figure is looked at, so the bar says `Species` and
|
|
54
|
+
* `95%` and leaves `Colour by` and `Group outlines` to the pointer and the
|
|
55
|
+
* menu. Once the figure is too narrow to carry both, they gather into one chip
|
|
56
|
+
* that still reads them — a cog there would tell the reader nothing about how
|
|
57
|
+
* the picture in front of them is drawn.
|
|
58
|
+
*
|
|
59
|
+
* The two switches never gather. A switch has no value to write, so it is
|
|
60
|
+
* already as small as it can be drawn, and it stays a glyph on the bar at every
|
|
61
|
+
* width — beside the question mark and the cog, which are the same shape for
|
|
62
|
+
* the same reason.
|
|
63
|
+
* @param props - See {@link ProjectionMapControlsProps}.
|
|
64
|
+
* @returns The controls.
|
|
65
|
+
*/
|
|
66
|
+
export declare function ProjectionMapControls(props: ProjectionMapControlsProps): ReactElement;
|
|
67
|
+
//# sourceMappingURL=ProjectionMapControls.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProjectionMapControls.d.ts","sourceRoot":"","sources":["../../../src/projection/ui/ProjectionMapControls.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAE1C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AAOtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,EAEV,iBAAiB,EAClB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAWpE,4EAA4E;AAC5E,MAAM,WAAW,0BAA0B;IACzC,oEAAoE;IACpE,OAAO,EAAE,iBAAiB,CAAC;IAC3B,0EAA0E;IAC1E,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IACtD,kEAAkE;IAClE,IAAI,EAAE,cAAc,CAAC;IACrB,0EAA0E;IAC1E,UAAU,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACxC;;;OAGG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,0BAA0B,GAChC,YAAY,CA+Ed"}
|