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,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Where a floating control sits over a figure, and how big it is.
|
|
3
|
+
*
|
|
4
|
+
* The geometry lives apart from the components that use it so it can be
|
|
5
|
+
* reasoned about and tested without a browser: which corner of a scatter is
|
|
6
|
+
* emptiest, whether a panel has room for a labelled strip or only a gear, and
|
|
7
|
+
* where a card must flip so it stays on screen.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
export type { EmptiestCornerOptions } from './emptiestCorner.ts';
|
|
11
|
+
export { emptiestCorner } from './emptiestCorner.ts';
|
|
12
|
+
export { shouldCollapseOverlay } from './overlayCollapse.ts';
|
|
13
|
+
export type { OverlayMarkShape } from './overlayMarks.ts';
|
|
14
|
+
export { OVERLAY_MARK_SHAPES, isFilledMark } from './overlayMarks.ts';
|
|
15
|
+
export type {
|
|
16
|
+
OverlayDensity,
|
|
17
|
+
OverlayMetrics,
|
|
18
|
+
OverlayPointerKind,
|
|
19
|
+
} from './overlayMetrics.ts';
|
|
20
|
+
export { overlayMetrics } from './overlayMetrics.ts';
|
|
21
|
+
export type {
|
|
22
|
+
OverlayCorner,
|
|
23
|
+
OverlayCornerStyle,
|
|
24
|
+
OverlayPlacement,
|
|
25
|
+
} from './overlayPlacement.ts';
|
|
26
|
+
export { overlayCornerStyle } from './overlayPlacement.ts';
|
|
27
|
+
export type { OverlayTierRoom, OverlayTierSetting } from './overlayTierRoom.ts';
|
|
28
|
+
export type { OverlayTier, OverlayTierWidths } from './overlayTiers.ts';
|
|
29
|
+
export { overlayTier, overlayTierWidths } from './overlayTiers.ts';
|
|
30
|
+
export type {
|
|
31
|
+
OverlayCardPlacement,
|
|
32
|
+
OverlayCardPlacementOptions,
|
|
33
|
+
} from './placeOverlayCard.ts';
|
|
34
|
+
export { placeOverlayCard } from './placeOverlayCard.ts';
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Whether a floating card folds into a single button at this figure width.
|
|
3
|
+
*
|
|
4
|
+
* A width of zero — which is what a figure reports before it has been measured,
|
|
5
|
+
* and what a server render always reports — keeps the card expanded, so the
|
|
6
|
+
* string-rendering tests and the first paint both see the real controls. A
|
|
7
|
+
* threshold that is not a real number is read the same way, so a missing
|
|
8
|
+
* breakpoint never silently hides every control on the figure.
|
|
9
|
+
* @param width - Width of the figure, in pixels.
|
|
10
|
+
* @param collapseBelow - The width under which the card folds.
|
|
11
|
+
* @returns Whether it folds.
|
|
12
|
+
*/
|
|
13
|
+
export function shouldCollapseOverlay(
|
|
14
|
+
width: number,
|
|
15
|
+
collapseBelow: number,
|
|
16
|
+
): boolean {
|
|
17
|
+
if (!Number.isFinite(width) || width <= 0) return false;
|
|
18
|
+
if (!Number.isFinite(collapseBelow)) return false;
|
|
19
|
+
return width < collapseBelow;
|
|
20
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The marks a legend entry, a reference point or a series can be drawn with.
|
|
3
|
+
*
|
|
4
|
+
* It lives in the framework-free half although only a component ever draws
|
|
5
|
+
* one, because the data that names a mark is written far from the drawing: a
|
|
6
|
+
* k-means centroid says it is a cross while it is still a plain object, long
|
|
7
|
+
* before any of it reaches React. Keeping the union here is what lets a result
|
|
8
|
+
* describe its own marks without a `core` module reaching into a `ui` one.
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
/** Which mark a legend entry, a marker or a series stands for. */
|
|
12
|
+
export type OverlayMarkShape =
|
|
13
|
+
'dot' | 'ring' | 'square' | 'line' | 'dashed' | 'cross';
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Every mark, in the order a picker offers them.
|
|
17
|
+
*
|
|
18
|
+
* The first three separate one filled thing from another by colour alone; the
|
|
19
|
+
* last three carry a second meaning on one figure — a line for a component
|
|
20
|
+
* beside dots for the samples — which is what keeps a figure readable when the
|
|
21
|
+
* colours run out or the reader does not separate two of them.
|
|
22
|
+
*/
|
|
23
|
+
export const OVERLAY_MARK_SHAPES: readonly OverlayMarkShape[] = [
|
|
24
|
+
'dot',
|
|
25
|
+
'ring',
|
|
26
|
+
'square',
|
|
27
|
+
'line',
|
|
28
|
+
'dashed',
|
|
29
|
+
'cross',
|
|
30
|
+
];
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Whether a mark is drawn as a solid area rather than as a stroke.
|
|
34
|
+
*
|
|
35
|
+
* A solid mark takes its colour as a fill and a stroked one as a stroke, which
|
|
36
|
+
* is the one thing every renderer of a mark has to know and the one thing that
|
|
37
|
+
* is easy to get wrong in each of them separately.
|
|
38
|
+
* @param shape - The mark.
|
|
39
|
+
* @returns `true` for the filled marks, `false` for the drawn ones.
|
|
40
|
+
*/
|
|
41
|
+
export function isFilledMark(shape: OverlayMarkShape): boolean {
|
|
42
|
+
return shape === 'dot' || shape === 'square';
|
|
43
|
+
}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
/** How tightly a floating card packs its controls. */
|
|
2
|
+
export type OverlayDensity = 'compact' | 'comfortable';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* What kind of pointer the reader has.
|
|
6
|
+
*
|
|
7
|
+
* A finger cannot hover and cannot aim at a twenty-four pixel target, so a
|
|
8
|
+
* coarse pointer overrides the density outright rather than nudging it.
|
|
9
|
+
*/
|
|
10
|
+
export type OverlayPointerKind = 'fine' | 'coarse';
|
|
11
|
+
|
|
12
|
+
/** Every measurement a floating card and its controls are drawn from. */
|
|
13
|
+
export interface OverlayMetrics {
|
|
14
|
+
/** Height of a control, in pixels. */
|
|
15
|
+
controlHeight: number;
|
|
16
|
+
/** Space between two controls, and between a caption and its control. */
|
|
17
|
+
gap: number;
|
|
18
|
+
/** Space inside the card, left and right. */
|
|
19
|
+
paddingX: number;
|
|
20
|
+
/** Space inside the card, top and bottom. */
|
|
21
|
+
paddingY: number;
|
|
22
|
+
/** Size of the text a control says. */
|
|
23
|
+
fontSize: number;
|
|
24
|
+
/** Size of the caption in front of a control. */
|
|
25
|
+
labelSize: number;
|
|
26
|
+
/** Corner radius of a control; the card itself uses `--radius`. */
|
|
27
|
+
controlRadius: number;
|
|
28
|
+
/** Space kept between the card and the edge of the figure. */
|
|
29
|
+
inset: number;
|
|
30
|
+
/** Side of the square button the card collapses to. */
|
|
31
|
+
buttonSize: number;
|
|
32
|
+
/** The size Blueprint's own controls are asked for. */
|
|
33
|
+
blueprintSize: 'small' | 'medium' | 'large';
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* The measurements a card is drawn from.
|
|
38
|
+
* @param density - How tightly the caller asked for the controls to be packed.
|
|
39
|
+
* @param pointer - What the reader is pointing with. Defaults to `'fine'`.
|
|
40
|
+
* @returns The measurements. A coarse pointer always gets the largest set,
|
|
41
|
+
* whatever the density says.
|
|
42
|
+
*/
|
|
43
|
+
export function overlayMetrics(
|
|
44
|
+
density: OverlayDensity,
|
|
45
|
+
pointer: OverlayPointerKind = 'fine',
|
|
46
|
+
): OverlayMetrics {
|
|
47
|
+
if (pointer === 'coarse') return COARSE_METRICS;
|
|
48
|
+
return density === 'compact' ? COMPACT_METRICS : COMFORTABLE_METRICS;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* The set a figure embedded in somebody else's page is drawn from.
|
|
53
|
+
*
|
|
54
|
+
* A figure that is a guest on a page it does not own has to spend as little of
|
|
55
|
+
* that page as it can, so every measurement here is the smallest one that is
|
|
56
|
+
* still honest. The control stays at twenty-four pixels — the floor a mouse
|
|
57
|
+
* can be aimed at, and the reason nothing below it is offered at all — while
|
|
58
|
+
* the room around it goes: a four pixel gap, a three pixel band above and
|
|
59
|
+
* below, and a six pixel inset from the figure's edge. A bar built from these
|
|
60
|
+
* stands thirty pixels tall, which is one line of the host's own text.
|
|
61
|
+
*
|
|
62
|
+
* The type steps down a size with it. Eleven pixels is what a control says and
|
|
63
|
+
* ten is what its caption says, because the caption is read once to find the
|
|
64
|
+
* control and the control's own words are read every time it is used.
|
|
65
|
+
*/
|
|
66
|
+
const COMPACT_METRICS: OverlayMetrics = {
|
|
67
|
+
controlHeight: 24,
|
|
68
|
+
gap: 4,
|
|
69
|
+
paddingX: 6,
|
|
70
|
+
paddingY: 3,
|
|
71
|
+
fontSize: 11,
|
|
72
|
+
labelSize: 10,
|
|
73
|
+
controlRadius: 5,
|
|
74
|
+
inset: 6,
|
|
75
|
+
buttonSize: 24,
|
|
76
|
+
blueprintSize: 'small',
|
|
77
|
+
};
|
|
78
|
+
|
|
79
|
+
/** The everyday set: room to read the captions without crowding the figure. */
|
|
80
|
+
const COMFORTABLE_METRICS: OverlayMetrics = {
|
|
81
|
+
controlHeight: 30,
|
|
82
|
+
gap: 8,
|
|
83
|
+
paddingX: 8,
|
|
84
|
+
paddingY: 6,
|
|
85
|
+
fontSize: 12,
|
|
86
|
+
labelSize: 11,
|
|
87
|
+
controlRadius: 6,
|
|
88
|
+
inset: 8,
|
|
89
|
+
buttonSize: 30,
|
|
90
|
+
blueprintSize: 'medium',
|
|
91
|
+
};
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* Forty pixels is the smallest target a fingertip hits reliably, and the type
|
|
95
|
+
* grows with it because a phone is held further from the eye than a screen.
|
|
96
|
+
*
|
|
97
|
+
* Nothing here follows the density down. A finger does not become smaller
|
|
98
|
+
* because the figure was embedded, so a compact chart on a phone is a compact
|
|
99
|
+
* chart whose controls are still forty pixels across.
|
|
100
|
+
*/
|
|
101
|
+
const COARSE_METRICS: OverlayMetrics = {
|
|
102
|
+
controlHeight: 40,
|
|
103
|
+
gap: 10,
|
|
104
|
+
paddingX: 10,
|
|
105
|
+
paddingY: 8,
|
|
106
|
+
fontSize: 13,
|
|
107
|
+
labelSize: 12,
|
|
108
|
+
controlRadius: 8,
|
|
109
|
+
inset: 10,
|
|
110
|
+
buttonSize: 40,
|
|
111
|
+
blueprintSize: 'large',
|
|
112
|
+
};
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/** Which corner of a figure a floating card sits in. */
|
|
2
|
+
export type OverlayCorner =
|
|
3
|
+
'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Where a floating card sits: over one of the figure's corners, or docked
|
|
7
|
+
* outside the picture entirely.
|
|
8
|
+
*
|
|
9
|
+
* The three docked forms are the escape hatch for a figure whose data reaches
|
|
10
|
+
* all four corners. A chart that cannot spare a corner should move its
|
|
11
|
+
* controls out rather than cover the one cluster the reader came for.
|
|
12
|
+
*
|
|
13
|
+
* `stretch` is the one that spans the whole width rather than sitting at one
|
|
14
|
+
* end of the row: the settings bar of a figure embedded in somebody else's
|
|
15
|
+
* page, which is chrome above the picture and not a card floating on it. It is
|
|
16
|
+
* deliberately not offered as a floating placement — a full-width strip over a
|
|
17
|
+
* figure covers the very data it is there to explain.
|
|
18
|
+
*/
|
|
19
|
+
export type OverlayPlacement = OverlayCorner | 'above' | 'below' | 'stretch';
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* The offsets a placement gives a card.
|
|
23
|
+
*
|
|
24
|
+
* Written out as a plain object of numbers rather than borrowed from React, so
|
|
25
|
+
* the whole of this entry point stays free of the framework that eventually
|
|
26
|
+
* spreads it onto a `style` prop. Only the two edges a corner is actually
|
|
27
|
+
* measured from are present: a key carrying `undefined` would still win over
|
|
28
|
+
* an offset the caller had merged in underneath it.
|
|
29
|
+
*/
|
|
30
|
+
export interface OverlayCornerStyle {
|
|
31
|
+
/** Whether the card is lifted out of the flow, or left in it and docked. */
|
|
32
|
+
position: 'absolute' | 'static';
|
|
33
|
+
/**
|
|
34
|
+
* Distance from the figure's top edge, in pixels.
|
|
35
|
+
* @default undefined — absent unless the card sits in a top corner
|
|
36
|
+
*/
|
|
37
|
+
top?: number;
|
|
38
|
+
/**
|
|
39
|
+
* Distance from the figure's right edge, in pixels.
|
|
40
|
+
* @default undefined — absent unless the card sits in a right corner
|
|
41
|
+
*/
|
|
42
|
+
right?: number;
|
|
43
|
+
/**
|
|
44
|
+
* Distance from the figure's bottom edge, in pixels.
|
|
45
|
+
* @default undefined — absent unless the card sits in a bottom corner
|
|
46
|
+
*/
|
|
47
|
+
bottom?: number;
|
|
48
|
+
/**
|
|
49
|
+
* Distance from the figure's left edge, in pixels.
|
|
50
|
+
* @default undefined — absent unless the card sits in a left corner
|
|
51
|
+
*/
|
|
52
|
+
left?: number;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* The positioning a placement gives a card.
|
|
57
|
+
* @param placement - Where the card sits.
|
|
58
|
+
* @param inset - Distance kept between the card and the figure's edge, in pixels.
|
|
59
|
+
* @returns The style to spread onto the card. Every docked placement returns
|
|
60
|
+
* `position: 'static'`, so the same component lays out in the flow without a
|
|
61
|
+
* second code path.
|
|
62
|
+
*/
|
|
63
|
+
export function overlayCornerStyle(
|
|
64
|
+
placement: OverlayPlacement,
|
|
65
|
+
inset: number,
|
|
66
|
+
): OverlayCornerStyle {
|
|
67
|
+
if (placement === 'top-left') {
|
|
68
|
+
return { position: 'absolute', top: inset, left: inset };
|
|
69
|
+
}
|
|
70
|
+
if (placement === 'top-right') {
|
|
71
|
+
return { position: 'absolute', top: inset, right: inset };
|
|
72
|
+
}
|
|
73
|
+
if (placement === 'bottom-left') {
|
|
74
|
+
return { position: 'absolute', bottom: inset, left: inset };
|
|
75
|
+
}
|
|
76
|
+
if (placement === 'bottom-right') {
|
|
77
|
+
return { position: 'absolute', bottom: inset, right: inset };
|
|
78
|
+
}
|
|
79
|
+
return { position: 'static' };
|
|
80
|
+
}
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What a bar of controls is holding, and how much room each part of it needs.
|
|
3
|
+
*
|
|
4
|
+
* Every width here is an estimate of laid-out type rather than a measurement.
|
|
5
|
+
* Measuring the real labels would mean putting them in the document and
|
|
6
|
+
* reading their boxes back, which costs a layout pass on every render of every
|
|
7
|
+
* embedded figure on the page — and the answer would still arrive one frame
|
|
8
|
+
* after the width that prompted it. The estimate is deliberately generous: a
|
|
9
|
+
* bar that folds a word early costs the reader a caret, while one that folds
|
|
10
|
+
* late runs its controls off the edge of the figure.
|
|
11
|
+
*
|
|
12
|
+
* The geometry is restated here rather than read off the styles that draw it,
|
|
13
|
+
* because those styles are React's and this has to answer on a server, before
|
|
14
|
+
* anything exists to measure. Being an estimate is the point — it is allowed
|
|
15
|
+
* to be a few pixels out, and it is not allowed to need a browser.
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
import type { OverlayMetrics } from './overlayMetrics.ts';
|
|
19
|
+
|
|
20
|
+
/** One setting at the far end of a bar, for the room needed to write it. */
|
|
21
|
+
export interface OverlayTierSetting {
|
|
22
|
+
/**
|
|
23
|
+
* The word written in front of the value where there is room — `Outlines`,
|
|
24
|
+
* `Colour`. It is the first thing dropped, because the name of a setting is
|
|
25
|
+
* read once and its value is read every time.
|
|
26
|
+
*/
|
|
27
|
+
key: string;
|
|
28
|
+
/** What the setting currently reads: `Species`, `95%`. */
|
|
29
|
+
value: string;
|
|
30
|
+
/**
|
|
31
|
+
* Whether a row of the figure's own colours rides in front of the words.
|
|
32
|
+
* @default false
|
|
33
|
+
*/
|
|
34
|
+
swatches?: boolean;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
/** What a bar is holding, for the widths it needs to hold it. */
|
|
38
|
+
export interface OverlayTierRoom {
|
|
39
|
+
/** What each tab reads. Empty for a figure with a single view. */
|
|
40
|
+
tabs: readonly string[];
|
|
41
|
+
/**
|
|
42
|
+
* The short form of each tab, in the same order — `Explains` for `How much
|
|
43
|
+
* each explains`. A tab with no short form keeps its long one, so shortening
|
|
44
|
+
* the two labels that are long does not blank the two that are not.
|
|
45
|
+
* @default the tabs themselves, which shortens nothing
|
|
46
|
+
*/
|
|
47
|
+
shortTabs?: readonly string[];
|
|
48
|
+
/** The settings at the far end, in the order they are written. */
|
|
49
|
+
settings: readonly OverlayTierSetting[];
|
|
50
|
+
/**
|
|
51
|
+
* How many bare glyphs ride at the end: the `?` and the cog.
|
|
52
|
+
* @default 2
|
|
53
|
+
*/
|
|
54
|
+
glyphs?: number;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* The tab strip, sunken track and all.
|
|
59
|
+
* @param labels - What each tab reads.
|
|
60
|
+
* @param metrics - The measurements the bar is drawn from.
|
|
61
|
+
* @returns The width in pixels; `0` where there is no strip at all.
|
|
62
|
+
*/
|
|
63
|
+
export function overlayStripWidth(
|
|
64
|
+
labels: readonly string[],
|
|
65
|
+
metrics: OverlayMetrics,
|
|
66
|
+
): number {
|
|
67
|
+
if (labels.length === 0) return 0;
|
|
68
|
+
const segment = 2 * (metrics.paddingX + 2) + OVERLAY_TRACK_PADDING;
|
|
69
|
+
let total = OVERLAY_TRACK_PADDING * 2;
|
|
70
|
+
for (const label of labels) {
|
|
71
|
+
total += overlayTextWidth(label, metrics) + segment;
|
|
72
|
+
}
|
|
73
|
+
return total;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
* The settings, each written as a value button of its own.
|
|
78
|
+
* @param settings - What the bar holds at its far end.
|
|
79
|
+
* @param withKeys - Whether each value still carries its key word.
|
|
80
|
+
* @param metrics - The measurements the bar is drawn from.
|
|
81
|
+
* @returns The width in pixels, the gaps between the buttons included.
|
|
82
|
+
*/
|
|
83
|
+
export function overlaySettingsWidth(
|
|
84
|
+
settings: readonly OverlayTierSetting[],
|
|
85
|
+
withKeys: boolean,
|
|
86
|
+
metrics: OverlayMetrics,
|
|
87
|
+
): number {
|
|
88
|
+
let total = 0;
|
|
89
|
+
for (let index = 0; index < settings.length; index++) {
|
|
90
|
+
const setting = settings[index];
|
|
91
|
+
if (setting === undefined) continue;
|
|
92
|
+
const written = withKeys
|
|
93
|
+
? `${setting.key} ${setting.value}`
|
|
94
|
+
: setting.value;
|
|
95
|
+
total += controlWidth(written, setting.swatches === true, metrics);
|
|
96
|
+
if (index > 0) total += metrics.gap;
|
|
97
|
+
}
|
|
98
|
+
return total;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* Every setting gathered into one chip.
|
|
103
|
+
*
|
|
104
|
+
* What the chip saves is one button's worth of padding and one caret per
|
|
105
|
+
* setting it swallows — never the words themselves, which are the whole reason
|
|
106
|
+
* the reader is given a chip rather than a cog.
|
|
107
|
+
* @param settings - What the bar holds at its far end.
|
|
108
|
+
* @param metrics - The measurements the bar is drawn from.
|
|
109
|
+
* @returns The width in pixels.
|
|
110
|
+
*/
|
|
111
|
+
export function overlayChipRoom(
|
|
112
|
+
settings: readonly OverlayTierSetting[],
|
|
113
|
+
metrics: OverlayMetrics,
|
|
114
|
+
): number {
|
|
115
|
+
let written = '';
|
|
116
|
+
let swatches = false;
|
|
117
|
+
let separators = 0;
|
|
118
|
+
for (let index = 0; index < settings.length; index++) {
|
|
119
|
+
const setting = settings[index];
|
|
120
|
+
if (setting === undefined) continue;
|
|
121
|
+
written += setting.value;
|
|
122
|
+
if (setting.swatches === true) swatches = true;
|
|
123
|
+
if (index > 0) separators++;
|
|
124
|
+
}
|
|
125
|
+
return (
|
|
126
|
+
controlWidth(written, swatches, metrics) +
|
|
127
|
+
separators * OVERLAY_CHIP_SEPARATOR
|
|
128
|
+
);
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* The bare glyphs at the very end of the bar, with the bar's own padding.
|
|
133
|
+
*
|
|
134
|
+
* One extra gap is counted for the space between the two ends of the row,
|
|
135
|
+
* which is what a bar spanning the figure pushes its ends apart with.
|
|
136
|
+
* @param glyphs - How many bare glyphs ride at the end.
|
|
137
|
+
* @param metrics - The measurements the bar is drawn from.
|
|
138
|
+
* @returns The width in pixels.
|
|
139
|
+
*/
|
|
140
|
+
export function overlayTailWidth(
|
|
141
|
+
glyphs: number,
|
|
142
|
+
metrics: OverlayMetrics,
|
|
143
|
+
): number {
|
|
144
|
+
const count = Number.isFinite(glyphs) ? Math.max(0, Math.floor(glyphs)) : 0;
|
|
145
|
+
const buttons = count * (metrics.buttonSize + metrics.gap);
|
|
146
|
+
return buttons + 2 * metrics.paddingX + metrics.gap;
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
/**
|
|
150
|
+
* The room a run of words takes.
|
|
151
|
+
* @param text - The words.
|
|
152
|
+
* @param metrics - The measurements the bar is drawn from.
|
|
153
|
+
* @returns The width in pixels.
|
|
154
|
+
*/
|
|
155
|
+
function overlayTextWidth(text: string, metrics: OverlayMetrics): number {
|
|
156
|
+
return text.length * metrics.fontSize * OVERLAY_CHARACTER_RATIO;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
/**
|
|
160
|
+
* What one character of a label takes, as a fraction of the type size.
|
|
161
|
+
*
|
|
162
|
+
* A mixed-case interface sans averages a little over half its size per
|
|
163
|
+
* character. This sits above that average on purpose: the labels that decide a
|
|
164
|
+
* fold are the long ones, and a long label of wide letters is the case where
|
|
165
|
+
* being wrong runs the row off the figure rather than merely folding it early.
|
|
166
|
+
*/
|
|
167
|
+
const OVERLAY_CHARACTER_RATIO = 0.58;
|
|
168
|
+
|
|
169
|
+
/** The band of sunken track showing around a segment, on every side. */
|
|
170
|
+
const OVERLAY_TRACK_PADDING = 2;
|
|
171
|
+
|
|
172
|
+
/** How many colours the swatch glyph draws before the last becomes a count. */
|
|
173
|
+
const OVERLAY_SWATCH_DOTS = 4;
|
|
174
|
+
|
|
175
|
+
/** What sits between two settings inside a chip, hairline and margins. */
|
|
176
|
+
const OVERLAY_CHIP_SEPARATOR = 9;
|
|
177
|
+
|
|
178
|
+
/**
|
|
179
|
+
* One button carrying words, a caret, and possibly a row of colours.
|
|
180
|
+
* @param written - The words on it.
|
|
181
|
+
* @param swatches - Whether the figure's colours ride in front of them.
|
|
182
|
+
* @param metrics - The measurements the bar is drawn from.
|
|
183
|
+
* @returns The width in pixels, never under the button's own floor.
|
|
184
|
+
*/
|
|
185
|
+
function controlWidth(
|
|
186
|
+
written: string,
|
|
187
|
+
swatches: boolean,
|
|
188
|
+
metrics: OverlayMetrics,
|
|
189
|
+
): number {
|
|
190
|
+
const dot = Math.max(4, Math.round(metrics.buttonSize / 6));
|
|
191
|
+
const glyph = swatches
|
|
192
|
+
? OVERLAY_SWATCH_DOTS * dot + (OVERLAY_SWATCH_DOTS - 1) * 2 + 4
|
|
193
|
+
: 0;
|
|
194
|
+
const room = 2 * metrics.paddingX + metrics.fontSize;
|
|
195
|
+
return Math.max(
|
|
196
|
+
metrics.buttonSize,
|
|
197
|
+
overlayTextWidth(written, metrics) + glyph + room,
|
|
198
|
+
);
|
|
199
|
+
}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* How much of itself a bar of controls writes, at the width it actually has.
|
|
3
|
+
*
|
|
4
|
+
* An embedded figure has no idea how wide the page around it is; it only knows
|
|
5
|
+
* its own box, which is why this answers from a measured component width and
|
|
6
|
+
* why there is no media query anywhere in the domain. A figure four hundred
|
|
7
|
+
* pixels wide in a wide page and the same figure filling a phone are the same
|
|
8
|
+
* problem, and a rule written against the viewport gets one of the two wrong.
|
|
9
|
+
*
|
|
10
|
+
* The ladder never *hides* a control. Each rung writes less of one: the key
|
|
11
|
+
* word in front of a value goes, then the long form of a tab label, then the
|
|
12
|
+
* settings gather into a single chip that still reads the configuration. That
|
|
13
|
+
* chip is the point of the whole ladder — a cog tells the reader nothing about
|
|
14
|
+
* how the figure is drawn, where `Species · 95%` answers the question they
|
|
15
|
+
* actually have without being opened at all.
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
import type { OverlayMetrics } from './overlayMetrics.ts';
|
|
19
|
+
import type { OverlayTierRoom } from './overlayTierRoom.ts';
|
|
20
|
+
import {
|
|
21
|
+
overlayChipRoom,
|
|
22
|
+
overlaySettingsWidth,
|
|
23
|
+
overlayStripWidth,
|
|
24
|
+
overlayTailWidth,
|
|
25
|
+
} from './overlayTierRoom.ts';
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* How much of itself a bar writes.
|
|
29
|
+
*
|
|
30
|
+
* `full` writes every word. `condensed` drops the key word in front of each
|
|
31
|
+
* setting's value. `short` shortens the tab labels with it. `chip` gathers
|
|
32
|
+
* every setting into one chip that still reads the configuration. `tiny` keeps
|
|
33
|
+
* that chip and lets the tab strip scroll rather than shrink any further, so
|
|
34
|
+
* the strip is never clipped down to a row of initials.
|
|
35
|
+
*/
|
|
36
|
+
export type OverlayTier = 'full' | 'condensed' | 'short' | 'chip' | 'tiny';
|
|
37
|
+
|
|
38
|
+
/** The width each rung of the ladder needs, in pixels. */
|
|
39
|
+
export interface OverlayTierWidths {
|
|
40
|
+
/** Every word: full tab labels, and a key word in front of every value. */
|
|
41
|
+
full: number;
|
|
42
|
+
/** Full tab labels, values written without their key words. */
|
|
43
|
+
condensed: number;
|
|
44
|
+
/** Short tab labels, values written without their key words. */
|
|
45
|
+
short: number;
|
|
46
|
+
/** Short tab labels, every setting gathered into one chip. */
|
|
47
|
+
chip: number;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Which rung of the ladder a bar holding this content is on at this width.
|
|
52
|
+
*
|
|
53
|
+
* An unmeasured bar — a width of zero, which is what a component reports
|
|
54
|
+
* before its first layout and what a server render always reports — is given
|
|
55
|
+
* the roomiest tier. Folded is the answer that costs the reader something, so
|
|
56
|
+
* it is never the answer given on a guess; a bar that opened folded and sprang
|
|
57
|
+
* open a frame later would flicker on every page that embeds the figure.
|
|
58
|
+
* @param width - Width of the bar itself, in pixels, never of the page.
|
|
59
|
+
* @param room - See {@link OverlayTierRoom}.
|
|
60
|
+
* @param metrics - The measurements the bar is drawn from.
|
|
61
|
+
* @returns The tier.
|
|
62
|
+
*/
|
|
63
|
+
export function overlayTier(
|
|
64
|
+
width: number,
|
|
65
|
+
room: OverlayTierRoom,
|
|
66
|
+
metrics: OverlayMetrics,
|
|
67
|
+
): OverlayTier {
|
|
68
|
+
if (!Number.isFinite(width) || width <= 0) return 'full';
|
|
69
|
+
const widths = overlayTierWidths(room, metrics);
|
|
70
|
+
if (width >= widths.full) return 'full';
|
|
71
|
+
if (width >= widths.condensed) return 'condensed';
|
|
72
|
+
if (width >= widths.short) return 'short';
|
|
73
|
+
if (width >= widths.chip) return 'chip';
|
|
74
|
+
return 'tiny';
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* The width each rung needs, for this content at these measurements.
|
|
79
|
+
*
|
|
80
|
+
* Nothing here is a number a caller has to know: a viewer with two tabs stays
|
|
81
|
+
* roomy far longer than one with six, and a site that has translated the tab
|
|
82
|
+
* names has changed exactly these widths. That is why the content goes in and
|
|
83
|
+
* the thresholds come out, rather than the other way round.
|
|
84
|
+
*
|
|
85
|
+
* The rungs are forced to descend even where the writing saves nothing — a bar
|
|
86
|
+
* holding one setting has a chip exactly as wide as the value button it
|
|
87
|
+
* replaces — because a lower rung asking for more room than the rung above it
|
|
88
|
+
* would step the bar *down* into a tier that does not fit.
|
|
89
|
+
* @param room - See {@link OverlayTierRoom}.
|
|
90
|
+
* @param metrics - The measurements the bar is drawn from.
|
|
91
|
+
* @returns See {@link OverlayTierWidths}.
|
|
92
|
+
*/
|
|
93
|
+
export function overlayTierWidths(
|
|
94
|
+
room: OverlayTierRoom,
|
|
95
|
+
metrics: OverlayMetrics,
|
|
96
|
+
): OverlayTierWidths {
|
|
97
|
+
const { tabs, shortTabs = tabs, settings, glyphs = 2 } = room;
|
|
98
|
+
const long = overlayStripWidth(tabs, metrics);
|
|
99
|
+
const brief = overlayStripWidth(shortened(tabs, shortTabs), metrics);
|
|
100
|
+
const tail = overlayTailWidth(glyphs, metrics);
|
|
101
|
+
const keyed = overlaySettingsWidth(settings, true, metrics);
|
|
102
|
+
const bare = overlaySettingsWidth(settings, false, metrics);
|
|
103
|
+
|
|
104
|
+
const full = long + keyed + tail;
|
|
105
|
+
const condensed = Math.min(full, long + bare + tail);
|
|
106
|
+
const short = Math.min(condensed, brief + bare + tail);
|
|
107
|
+
const chip = Math.min(
|
|
108
|
+
short,
|
|
109
|
+
brief + overlayChipRoom(settings, metrics) + tail,
|
|
110
|
+
);
|
|
111
|
+
return { full, condensed, short, chip };
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
/**
|
|
115
|
+
* The tab labels as they read once shortened.
|
|
116
|
+
* @param tabs - What each tab reads in full.
|
|
117
|
+
* @param shortTabs - The short forms, in the same order.
|
|
118
|
+
* @returns The labels to lay out.
|
|
119
|
+
*/
|
|
120
|
+
function shortened(
|
|
121
|
+
tabs: readonly string[],
|
|
122
|
+
shortTabs: readonly string[],
|
|
123
|
+
): readonly string[] {
|
|
124
|
+
if (shortTabs === tabs) return tabs;
|
|
125
|
+
const labels: string[] = [];
|
|
126
|
+
for (let index = 0; index < tabs.length; index++) {
|
|
127
|
+
labels.push(shortTabs[index] ?? tabs[index] ?? '');
|
|
128
|
+
}
|
|
129
|
+
return labels;
|
|
130
|
+
}
|