react-cheminfo 0.27.0 → 0.29.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 +38 -25
- package/lib/chart/core/axisLabels.d.ts +82 -0
- package/lib/chart/core/axisLabels.d.ts.map +1 -0
- package/lib/chart/core/axisLabels.js +111 -0
- package/lib/chart/core/axisLabels.js.map +1 -0
- package/lib/chart/core/boxLayout.d.ts +53 -0
- package/lib/chart/core/boxLayout.d.ts.map +1 -0
- package/lib/chart/core/boxLayout.js +112 -0
- package/lib/chart/core/boxLayout.js.map +1 -0
- package/lib/chart/core/chartAxisScale.d.ts +23 -2
- package/lib/chart/core/chartAxisScale.d.ts.map +1 -1
- package/lib/chart/core/chartAxisScale.js +64 -13
- package/lib/chart/core/chartAxisScale.js.map +1 -1
- package/lib/chart/core/chartDomain.d.ts +160 -0
- package/lib/chart/core/chartDomain.d.ts.map +1 -0
- package/lib/chart/core/chartDomain.js +46 -0
- package/lib/chart/core/chartDomain.js.map +1 -0
- package/lib/chart/core/chartGeometry.d.ts +131 -0
- package/lib/chart/core/chartGeometry.d.ts.map +1 -0
- package/lib/chart/core/chartGeometry.js +101 -0
- package/lib/chart/core/chartGeometry.js.map +1 -0
- package/lib/chart/core/chartPane.d.ts +11 -0
- package/lib/chart/core/chartPane.d.ts.map +1 -0
- package/lib/chart/core/chartPane.js +11 -0
- package/lib/chart/core/chartPane.js.map +1 -0
- package/lib/chart/core/chartScale.d.ts +4 -1
- package/lib/chart/core/chartScale.d.ts.map +1 -1
- package/lib/chart/core/chartScale.js +8 -4
- package/lib/chart/core/chartScale.js.map +1 -1
- package/lib/chart/core/chartTheme.d.ts +156 -0
- package/lib/chart/core/chartTheme.d.ts.map +1 -0
- package/lib/chart/core/chartTheme.js +156 -0
- package/lib/chart/core/chartTheme.js.map +1 -0
- package/lib/chart/core/chartViewport.d.ts +32 -5
- package/lib/chart/core/chartViewport.d.ts.map +1 -1
- package/lib/chart/core/chartViewport.js +40 -11
- package/lib/chart/core/chartViewport.js.map +1 -1
- package/lib/chart/core/guidePlacement.d.ts +52 -0
- package/lib/chart/core/guidePlacement.d.ts.map +1 -0
- package/lib/chart/core/guidePlacement.js +52 -0
- package/lib/chart/core/guidePlacement.js.map +1 -0
- package/lib/chart/core/index.d.ts +29 -2
- package/lib/chart/core/index.d.ts.map +1 -1
- package/lib/chart/core/index.js +19 -2
- package/lib/chart/core/index.js.map +1 -1
- package/lib/chart/core/labelStack.d.ts +27 -0
- package/lib/chart/core/labelStack.d.ts.map +1 -0
- package/lib/chart/core/labelStack.js +62 -0
- package/lib/chart/core/labelStack.js.map +1 -0
- package/lib/chart/core/legendBox.d.ts +152 -0
- package/lib/chart/core/legendBox.d.ts.map +1 -0
- package/lib/chart/core/legendBox.js +169 -0
- package/lib/chart/core/legendBox.js.map +1 -0
- package/lib/chart/core/selectionGeometry.d.ts +45 -0
- package/lib/chart/core/selectionGeometry.d.ts.map +1 -0
- package/lib/chart/core/selectionGeometry.js +49 -0
- package/lib/chart/core/selectionGeometry.js.map +1 -0
- package/lib/chart/core/spectrumColor.d.ts +80 -0
- package/lib/chart/core/spectrumColor.d.ts.map +1 -0
- package/lib/chart/core/spectrumColor.js +120 -0
- package/lib/chart/core/spectrumColor.js.map +1 -0
- package/lib/chart/core/stackCapacity.d.ts +136 -0
- package/lib/chart/core/stackCapacity.d.ts.map +1 -0
- package/lib/chart/core/stackCapacity.js +153 -0
- package/lib/chart/core/stackCapacity.js.map +1 -0
- package/lib/chart/core/svgPoint.d.ts +62 -0
- package/lib/chart/core/svgPoint.d.ts.map +1 -0
- package/lib/chart/core/svgPoint.js +43 -0
- package/lib/chart/core/svgPoint.js.map +1 -0
- package/lib/chart/core/tracePath.d.ts +94 -0
- package/lib/chart/core/tracePath.d.ts.map +1 -0
- package/lib/chart/core/tracePath.js +191 -0
- package/lib/chart/core/tracePath.js.map +1 -0
- package/lib/chart/core/trackerReadout.d.ts +55 -0
- package/lib/chart/core/trackerReadout.d.ts.map +1 -0
- package/lib/chart/core/trackerReadout.js +53 -0
- package/lib/chart/core/trackerReadout.js.map +1 -0
- package/lib/chart/core/viewTransform.d.ts +167 -0
- package/lib/chart/core/viewTransform.d.ts.map +1 -0
- package/lib/chart/core/viewTransform.js +188 -0
- package/lib/chart/core/viewTransform.js.map +1 -0
- package/lib/chart/core/zoomDomain.d.ts +127 -0
- package/lib/chart/core/zoomDomain.d.ts.map +1 -0
- package/lib/chart/core/zoomDomain.js +175 -0
- package/lib/chart/core/zoomDomain.js.map +1 -0
- package/lib/chart/ui/Axes.d.ts +104 -0
- package/lib/chart/ui/Axes.d.ts.map +1 -0
- package/lib/chart/ui/Axes.js +155 -0
- package/lib/chart/ui/Axes.js.map +1 -0
- package/lib/chart/ui/AxisGuide.d.ts +60 -0
- package/lib/chart/ui/AxisGuide.d.ts.map +1 -0
- package/lib/chart/ui/AxisGuide.js +111 -0
- package/lib/chart/ui/AxisGuide.js.map +1 -0
- package/lib/chart/ui/ChartStack.d.ts +81 -0
- package/lib/chart/ui/ChartStack.d.ts.map +1 -0
- package/lib/chart/ui/ChartStack.js +42 -0
- package/lib/chart/ui/ChartStack.js.map +1 -0
- package/lib/chart/ui/ChartTracker.d.ts +36 -0
- package/lib/chart/ui/ChartTracker.d.ts.map +1 -0
- package/lib/chart/ui/ChartTracker.js +27 -0
- package/lib/chart/ui/ChartTracker.js.map +1 -0
- package/lib/chart/ui/PlotCaption.d.ts +44 -0
- package/lib/chart/ui/PlotCaption.d.ts.map +1 -0
- package/lib/chart/ui/PlotCaption.js +68 -0
- package/lib/chart/ui/PlotCaption.js.map +1 -0
- package/lib/chart/ui/SelectionRect.d.ts +27 -0
- package/lib/chart/ui/SelectionRect.d.ts.map +1 -0
- package/lib/chart/ui/SelectionRect.js +31 -0
- package/lib/chart/ui/SelectionRect.js.map +1 -0
- package/lib/chart/ui/TraceLegend.d.ts +99 -0
- package/lib/chart/ui/TraceLegend.d.ts.map +1 -0
- package/lib/chart/ui/TraceLegend.js +45 -0
- package/lib/chart/ui/TraceLegend.js.map +1 -0
- package/lib/chart/ui/chartGestures.d.ts +158 -0
- package/lib/chart/ui/chartGestures.d.ts.map +1 -0
- package/lib/chart/ui/chartGestures.js +145 -0
- package/lib/chart/ui/chartGestures.js.map +1 -0
- package/lib/chart/ui/chartStackLevel.d.ts +115 -0
- package/lib/chart/ui/chartStackLevel.d.ts.map +1 -0
- package/lib/chart/ui/chartStackLevel.js +96 -0
- package/lib/chart/ui/chartStackLevel.js.map +1 -0
- package/lib/chart/ui/chartSurface.d.ts +35 -0
- package/lib/chart/ui/chartSurface.d.ts.map +1 -0
- package/lib/chart/ui/chartSurface.js +58 -0
- package/lib/chart/ui/chartSurface.js.map +1 -0
- package/lib/chart/ui/index.d.ts +24 -0
- package/lib/chart/ui/index.d.ts.map +1 -1
- package/lib/chart/ui/index.js +13 -0
- package/lib/chart/ui/index.js.map +1 -1
- package/lib/chart/ui/useChartPointer.d.ts +124 -0
- package/lib/chart/ui/useChartPointer.d.ts.map +1 -0
- package/lib/chart/ui/useChartPointer.js +152 -0
- package/lib/chart/ui/useChartPointer.js.map +1 -0
- package/lib/chart/ui/useChartSize.d.ts +49 -0
- package/lib/chart/ui/useChartSize.d.ts.map +1 -0
- package/lib/chart/ui/useChartSize.js +91 -0
- package/lib/chart/ui/useChartSize.js.map +1 -0
- package/lib/chart/ui/useChartWindow.d.ts +147 -0
- package/lib/chart/ui/useChartWindow.d.ts.map +1 -0
- package/lib/chart/ui/useChartWindow.js +135 -0
- package/lib/chart/ui/useChartWindow.js.map +1 -0
- package/lib/chart/ui/useChartZoom.d.ts +88 -0
- package/lib/chart/ui/useChartZoom.d.ts.map +1 -0
- package/lib/chart/ui/useChartZoom.js +142 -0
- package/lib/chart/ui/useChartZoom.js.map +1 -0
- package/lib/chart/ui/useWheelListener.d.ts +30 -0
- package/lib/chart/ui/useWheelListener.d.ts.map +1 -0
- package/lib/chart/ui/useWheelListener.js +57 -0
- package/lib/chart/ui/useWheelListener.js.map +1 -0
- package/lib/clipboard/core/copyPng.d.ts +13 -0
- package/lib/clipboard/core/copyPng.d.ts.map +1 -0
- package/lib/clipboard/core/copyPng.js +19 -0
- package/lib/clipboard/core/copyPng.js.map +1 -0
- package/lib/clipboard/core/index.d.ts +1 -0
- package/lib/clipboard/core/index.d.ts.map +1 -1
- package/lib/clipboard/core/index.js +1 -0
- package/lib/clipboard/core/index.js.map +1 -1
- package/lib/clipboard/ui/CopyableValue.d.ts +12 -9
- package/lib/clipboard/ui/CopyableValue.d.ts.map +1 -1
- package/lib/clipboard/ui/CopyableValue.js +11 -15
- package/lib/clipboard/ui/CopyableValue.js.map +1 -1
- package/lib/core.d.ts +1 -0
- package/lib/core.d.ts.map +1 -1
- package/lib/core.js +1 -0
- package/lib/core.js.map +1 -1
- package/lib/download/core/exportStyles.d.ts +22 -0
- package/lib/download/core/exportStyles.d.ts.map +1 -0
- package/lib/download/core/exportStyles.js +19 -0
- package/lib/download/core/exportStyles.js.map +1 -0
- package/lib/download/core/imageResolution.d.ts +88 -0
- package/lib/download/core/imageResolution.d.ts.map +1 -0
- package/lib/download/core/imageResolution.js +77 -0
- package/lib/download/core/imageResolution.js.map +1 -0
- package/lib/download/core/index.d.ts +13 -0
- package/lib/download/core/index.d.ts.map +1 -1
- package/lib/download/core/index.js +8 -0
- package/lib/download/core/index.js.map +1 -1
- package/lib/download/core/pictureExport.d.ts +93 -0
- package/lib/download/core/pictureExport.d.ts.map +1 -0
- package/lib/download/core/pictureExport.js +116 -0
- package/lib/download/core/pictureExport.js.map +1 -0
- package/lib/download/core/stackedDrawing.d.ts +36 -0
- package/lib/download/core/stackedDrawing.d.ts.map +1 -0
- package/lib/download/core/stackedDrawing.js +98 -0
- package/lib/download/core/stackedDrawing.js.map +1 -0
- package/lib/download/core/svgBounds.d.ts +44 -0
- package/lib/download/core/svgBounds.d.ts.map +1 -0
- package/lib/download/core/svgBounds.js +69 -0
- package/lib/download/core/svgBounds.js.map +1 -0
- package/lib/download/core/svgNamespace.d.ts +9 -0
- package/lib/download/core/svgNamespace.d.ts.map +1 -0
- package/lib/download/core/svgNamespace.js +10 -0
- package/lib/download/core/svgNamespace.js.map +1 -0
- package/lib/download/core/svgToPng.d.ts +43 -0
- package/lib/download/core/svgToPng.d.ts.map +1 -0
- package/lib/download/core/svgToPng.js +79 -0
- package/lib/download/core/svgToPng.js.map +1 -0
- package/lib/download/core/svgToString.d.ts +45 -0
- package/lib/download/core/svgToString.d.ts.map +1 -0
- package/lib/download/core/svgToString.js +58 -0
- package/lib/download/core/svgToString.js.map +1 -0
- package/lib/download/ui/ExportDialogFrame.d.ts +46 -0
- package/lib/download/ui/ExportDialogFrame.d.ts.map +1 -0
- package/lib/download/ui/ExportDialogFrame.js +24 -0
- package/lib/download/ui/ExportDialogFrame.js.map +1 -0
- package/lib/download/ui/ExportImageDialog.d.ts +47 -0
- package/lib/download/ui/ExportImageDialog.d.ts.map +1 -0
- package/lib/download/ui/ExportImageDialog.js +25 -0
- package/lib/download/ui/ExportImageDialog.js.map +1 -0
- package/lib/download/ui/ExportNameField.d.ts +29 -0
- package/lib/download/ui/ExportNameField.d.ts.map +1 -0
- package/lib/download/ui/ExportNameField.js +99 -0
- package/lib/download/ui/ExportNameField.js.map +1 -0
- package/lib/download/ui/ExportPictureSection.d.ts +38 -0
- package/lib/download/ui/ExportPictureSection.d.ts.map +1 -0
- package/lib/download/ui/ExportPictureSection.js +48 -0
- package/lib/download/ui/ExportPictureSection.js.map +1 -0
- package/lib/download/ui/index.d.ts +10 -0
- package/lib/download/ui/index.d.ts.map +1 -1
- package/lib/download/ui/index.js +5 -0
- package/lib/download/ui/index.js.map +1 -1
- package/lib/download/ui/useDrawingBox.d.ts +23 -0
- package/lib/download/ui/useDrawingBox.d.ts.map +1 -0
- package/lib/download/ui/useDrawingBox.js +21 -0
- package/lib/download/ui/useDrawingBox.js.map +1 -0
- package/lib/error/core/describeSource.d.ts +17 -0
- package/lib/error/core/describeSource.d.ts.map +1 -0
- package/lib/error/core/describeSource.js +19 -0
- package/lib/error/core/describeSource.js.map +1 -0
- package/lib/error/core/index.d.ts +1 -0
- package/lib/error/core/index.d.ts.map +1 -1
- package/lib/error/core/index.js +1 -0
- package/lib/error/core/index.js.map +1 -1
- package/lib/help/ui/HelpBody.d.ts +10 -1
- package/lib/help/ui/HelpBody.d.ts.map +1 -1
- package/lib/help/ui/HelpBody.js +24 -1
- package/lib/help/ui/HelpBody.js.map +1 -1
- package/lib/help/ui/index.d.ts +1 -1
- package/lib/help/ui/index.d.ts.map +1 -1
- package/lib/help/ui/index.js.map +1 -1
- package/lib/ir/core/analysisSpectra.d.ts +46 -0
- package/lib/ir/core/analysisSpectra.d.ts.map +1 -0
- package/lib/ir/core/analysisSpectra.js +187 -0
- package/lib/ir/core/analysisSpectra.js.map +1 -0
- package/lib/ir/core/assignBands.d.ts +83 -0
- package/lib/ir/core/assignBands.d.ts.map +1 -0
- package/lib/ir/core/assignBands.js +83 -0
- package/lib/ir/core/assignBands.js.map +1 -0
- package/lib/ir/core/bandAssignments.d.ts +47 -0
- package/lib/ir/core/bandAssignments.d.ts.map +1 -0
- package/lib/ir/core/bandAssignments.js +305 -0
- package/lib/ir/core/bandAssignments.js.map +1 -0
- package/lib/ir/core/bandLabelPlan.d.ts +93 -0
- package/lib/ir/core/bandLabelPlan.d.ts.map +1 -0
- package/lib/ir/core/bandLabelPlan.js +104 -0
- package/lib/ir/core/bandLabelPlan.js.map +1 -0
- package/lib/ir/core/detectIrFormat.d.ts +23 -0
- package/lib/ir/core/detectIrFormat.d.ts.map +1 -0
- package/lib/ir/core/detectIrFormat.js +133 -0
- package/lib/ir/core/detectIrFormat.js.map +1 -0
- package/lib/ir/core/downloadSpectra.d.ts +26 -0
- package/lib/ir/core/downloadSpectra.d.ts.map +1 -0
- package/lib/ir/core/downloadSpectra.js +37 -0
- package/lib/ir/core/downloadSpectra.js.map +1 -0
- package/lib/ir/core/fromJcamp.d.ts +35 -0
- package/lib/ir/core/fromJcamp.d.ts.map +1 -0
- package/lib/ir/core/fromJcamp.js +48 -0
- package/lib/ir/core/fromJcamp.js.map +1 -0
- package/lib/ir/core/fromSpc.d.ts +30 -0
- package/lib/ir/core/fromSpc.d.ts.map +1 -0
- package/lib/ir/core/fromSpc.js +40 -0
- package/lib/ir/core/fromSpc.js.map +1 -0
- package/lib/ir/core/index.d.ts +51 -0
- package/lib/ir/core/index.d.ts.map +1 -0
- package/lib/ir/core/index.js +35 -0
- package/lib/ir/core/index.js.map +1 -0
- package/lib/ir/core/irBand.d.ts +45 -0
- package/lib/ir/core/irBand.d.ts.map +1 -0
- package/lib/ir/core/irBand.js +30 -0
- package/lib/ir/core/irBand.js.map +1 -0
- package/lib/ir/core/irCommands.d.ts +168 -0
- package/lib/ir/core/irCommands.d.ts.map +1 -0
- package/lib/ir/core/irCommands.js +94 -0
- package/lib/ir/core/irCommands.js.map +1 -0
- package/lib/ir/core/irDomain.d.ts +63 -0
- package/lib/ir/core/irDomain.d.ts.map +1 -0
- package/lib/ir/core/irDomain.js +136 -0
- package/lib/ir/core/irDomain.js.map +1 -0
- package/lib/ir/core/irEditorApi.d.ts +42 -0
- package/lib/ir/core/irEditorApi.d.ts.map +1 -0
- package/lib/ir/core/irEditorApi.js +10 -0
- package/lib/ir/core/irEditorApi.js.map +1 -0
- package/lib/ir/core/irFormat.d.ts +42 -0
- package/lib/ir/core/irFormat.d.ts.map +1 -0
- package/lib/ir/core/irFormat.js +51 -0
- package/lib/ir/core/irFormat.js.map +1 -0
- package/lib/ir/core/irMode.d.ts +160 -0
- package/lib/ir/core/irMode.d.ts.map +1 -0
- package/lib/ir/core/irMode.js +175 -0
- package/lib/ir/core/irMode.js.map +1 -0
- package/lib/ir/core/irReducer.d.ts +101 -0
- package/lib/ir/core/irReducer.d.ts.map +1 -0
- package/lib/ir/core/irReducer.js +207 -0
- package/lib/ir/core/irReducer.js.map +1 -0
- package/lib/ir/core/irSidePanels.d.ts +22 -0
- package/lib/ir/core/irSidePanels.d.ts.map +1 -0
- package/lib/ir/core/irSidePanels.js +12 -0
- package/lib/ir/core/irSidePanels.js.map +1 -0
- package/lib/ir/core/irSpectrum.d.ts +140 -0
- package/lib/ir/core/irSpectrum.d.ts.map +1 -0
- package/lib/ir/core/irSpectrum.js +34 -0
- package/lib/ir/core/irSpectrum.js.map +1 -0
- package/lib/ir/core/irState.d.ts +119 -0
- package/lib/ir/core/irState.d.ts.map +1 -0
- package/lib/ir/core/irState.js +92 -0
- package/lib/ir/core/irState.js.map +1 -0
- package/lib/ir/core/loadIrSpectra.d.ts +36 -0
- package/lib/ir/core/loadIrSpectra.d.ts.map +1 -0
- package/lib/ir/core/loadIrSpectra.js +44 -0
- package/lib/ir/core/loadIrSpectra.js.map +1 -0
- package/lib/ir/core/nearestBand.d.ts +35 -0
- package/lib/ir/core/nearestBand.d.ts.map +1 -0
- package/lib/ir/core/nearestBand.js +47 -0
- package/lib/ir/core/nearestBand.js.map +1 -0
- package/lib/ir/core/pickBands.d.ts +70 -0
- package/lib/ir/core/pickBands.d.ts.map +1 -0
- package/lib/ir/core/pickBands.js +125 -0
- package/lib/ir/core/pickBands.js.map +1 -0
- package/lib/ir/core/spectrumJcamp.d.ts +58 -0
- package/lib/ir/core/spectrumJcamp.d.ts.map +1 -0
- package/lib/ir/core/spectrumJcamp.js +156 -0
- package/lib/ir/core/spectrumJcamp.js.map +1 -0
- package/lib/ir/core/toIrSpectrum.d.ts +59 -0
- package/lib/ir/core/toIrSpectrum.d.ts.map +1 -0
- package/lib/ir/core/toIrSpectrum.js +56 -0
- package/lib/ir/core/toIrSpectrum.js.map +1 -0
- package/lib/ir/ui/BandMarks.d.ts +52 -0
- package/lib/ir/ui/BandMarks.d.ts.map +1 -0
- package/lib/ir/ui/BandMarks.js +71 -0
- package/lib/ir/ui/BandMarks.js.map +1 -0
- package/lib/ir/ui/BandsPanel.d.ts +31 -0
- package/lib/ir/ui/BandsPanel.d.ts.map +1 -0
- package/lib/ir/ui/BandsPanel.js +94 -0
- package/lib/ir/ui/BandsPanel.js.map +1 -0
- package/lib/ir/ui/IrAboutDialog.d.ts +18 -0
- package/lib/ir/ui/IrAboutDialog.d.ts.map +1 -0
- package/lib/ir/ui/IrAboutDialog.js +32 -0
- package/lib/ir/ui/IrAboutDialog.js.map +1 -0
- package/lib/ir/ui/IrCanvas.d.ts +38 -0
- package/lib/ir/ui/IrCanvas.d.ts.map +1 -0
- package/lib/ir/ui/IrCanvas.js +41 -0
- package/lib/ir/ui/IrCanvas.js.map +1 -0
- package/lib/ir/ui/IrChart.d.ts +28 -0
- package/lib/ir/ui/IrChart.d.ts.map +1 -0
- package/lib/ir/ui/IrChart.js +114 -0
- package/lib/ir/ui/IrChart.js.map +1 -0
- package/lib/ir/ui/IrCommandProvider.d.ts +15 -0
- package/lib/ir/ui/IrCommandProvider.d.ts.map +1 -0
- package/lib/ir/ui/IrCommandProvider.js +14 -0
- package/lib/ir/ui/IrCommandProvider.js.map +1 -0
- package/lib/ir/ui/IrCommandTooltip.d.ts +16 -0
- package/lib/ir/ui/IrCommandTooltip.d.ts.map +1 -0
- package/lib/ir/ui/IrCommandTooltip.js +22 -0
- package/lib/ir/ui/IrCommandTooltip.js.map +1 -0
- package/lib/ir/ui/IrDocumentationDialog.d.ts +18 -0
- package/lib/ir/ui/IrDocumentationDialog.d.ts.map +1 -0
- package/lib/ir/ui/IrDocumentationDialog.js +68 -0
- package/lib/ir/ui/IrDocumentationDialog.js.map +1 -0
- package/lib/ir/ui/IrEditor.d.ts +60 -0
- package/lib/ir/ui/IrEditor.d.ts.map +1 -0
- package/lib/ir/ui/IrEditor.js +42 -0
- package/lib/ir/ui/IrEditor.js.map +1 -0
- package/lib/ir/ui/IrHeader.d.ts +13 -0
- package/lib/ir/ui/IrHeader.d.ts.map +1 -0
- package/lib/ir/ui/IrHeader.js +21 -0
- package/lib/ir/ui/IrHeader.js.map +1 -0
- package/lib/ir/ui/IrLogo.d.ts +20 -0
- package/lib/ir/ui/IrLogo.d.ts.map +1 -0
- package/lib/ir/ui/IrLogo.js +17 -0
- package/lib/ir/ui/IrLogo.js.map +1 -0
- package/lib/ir/ui/IrPointerTracker.d.ts +29 -0
- package/lib/ir/ui/IrPointerTracker.d.ts.map +1 -0
- package/lib/ir/ui/IrPointerTracker.js +47 -0
- package/lib/ir/ui/IrPointerTracker.js.map +1 -0
- package/lib/ir/ui/IrShell.d.ts +25 -0
- package/lib/ir/ui/IrShell.d.ts.map +1 -0
- package/lib/ir/ui/IrShell.js +178 -0
- package/lib/ir/ui/IrShell.js.map +1 -0
- package/lib/ir/ui/IrSidePanel.d.ts +26 -0
- package/lib/ir/ui/IrSidePanel.d.ts.map +1 -0
- package/lib/ir/ui/IrSidePanel.js +39 -0
- package/lib/ir/ui/IrSidePanel.js.map +1 -0
- package/lib/ir/ui/IrStateProvider.d.ts +19 -0
- package/lib/ir/ui/IrStateProvider.d.ts.map +1 -0
- package/lib/ir/ui/IrStateProvider.js +16 -0
- package/lib/ir/ui/IrStateProvider.js.map +1 -0
- package/lib/ir/ui/IrStatusBar.d.ts +14 -0
- package/lib/ir/ui/IrStatusBar.d.ts.map +1 -0
- package/lib/ir/ui/IrStatusBar.js +48 -0
- package/lib/ir/ui/IrStatusBar.js.map +1 -0
- package/lib/ir/ui/IrToolbar.d.ts +18 -0
- package/lib/ir/ui/IrToolbar.d.ts.map +1 -0
- package/lib/ir/ui/IrToolbar.js +32 -0
- package/lib/ir/ui/IrToolbar.js.map +1 -0
- package/lib/ir/ui/IrTraces.d.ts +63 -0
- package/lib/ir/ui/IrTraces.d.ts.map +1 -0
- package/lib/ir/ui/IrTraces.js +72 -0
- package/lib/ir/ui/IrTraces.js.map +1 -0
- package/lib/ir/ui/MetadataPanel.d.ts +15 -0
- package/lib/ir/ui/MetadataPanel.d.ts.map +1 -0
- package/lib/ir/ui/MetadataPanel.js +49 -0
- package/lib/ir/ui/MetadataPanel.js.map +1 -0
- package/lib/ir/ui/SpectraPanel.d.ts +20 -0
- package/lib/ir/ui/SpectraPanel.d.ts.map +1 -0
- package/lib/ir/ui/SpectraPanel.js +42 -0
- package/lib/ir/ui/SpectraPanel.js.map +1 -0
- package/lib/ir/ui/SpectrumRow.d.ts +26 -0
- package/lib/ir/ui/SpectrumRow.d.ts.map +1 -0
- package/lib/ir/ui/SpectrumRow.js +41 -0
- package/lib/ir/ui/SpectrumRow.js.map +1 -0
- package/lib/ir/ui/index.d.ts +56 -0
- package/lib/ir/ui/index.d.ts.map +1 -0
- package/lib/ir/ui/index.js +36 -0
- package/lib/ir/ui/index.js.map +1 -0
- package/lib/ir/ui/irActions.d.ts +52 -0
- package/lib/ir/ui/irActions.d.ts.map +1 -0
- package/lib/ir/ui/irActions.js +62 -0
- package/lib/ir/ui/irActions.js.map +1 -0
- package/lib/ir/ui/irChartProps.d.ts +116 -0
- package/lib/ir/ui/irChartProps.d.ts.map +1 -0
- package/lib/ir/ui/irChartProps.js +14 -0
- package/lib/ir/ui/irChartProps.js.map +1 -0
- package/lib/ir/ui/irCommandContext.d.ts +35 -0
- package/lib/ir/ui/irCommandContext.d.ts.map +1 -0
- package/lib/ir/ui/irCommandContext.js +44 -0
- package/lib/ir/ui/irCommandContext.js.map +1 -0
- package/lib/ir/ui/irStateContext.d.ts +26 -0
- package/lib/ir/ui/irStateContext.d.ts.map +1 -0
- package/lib/ir/ui/irStateContext.js +37 -0
- package/lib/ir/ui/irStateContext.js.map +1 -0
- package/lib/ir/ui/useIrEditor.d.ts +51 -0
- package/lib/ir/ui/useIrEditor.d.ts.map +1 -0
- package/lib/ir/ui/useIrEditor.js +88 -0
- package/lib/ir/ui/useIrEditor.js.map +1 -0
- package/lib/ir/ui/useIrPointer.d.ts +66 -0
- package/lib/ir/ui/useIrPointer.d.ts.map +1 -0
- package/lib/ir/ui/useIrPointer.js +53 -0
- package/lib/ir/ui/useIrPointer.js.map +1 -0
- package/lib/ir/ui/useIrShortcuts.d.ts +24 -0
- package/lib/ir/ui/useIrShortcuts.d.ts.map +1 -0
- package/lib/ir/ui/useIrShortcuts.js +73 -0
- package/lib/ir/ui/useIrShortcuts.js.map +1 -0
- package/lib/ir/ui/useIrZoom.d.ts +51 -0
- package/lib/ir/ui/useIrZoom.d.ts.map +1 -0
- package/lib/ir/ui/useIrZoom.js +46 -0
- package/lib/ir/ui/useIrZoom.js.map +1 -0
- package/lib/ir.d.ts +13 -0
- package/lib/ir.d.ts.map +1 -0
- package/lib/ir.js +13 -0
- package/lib/ir.js.map +1 -0
- package/lib/panel/core/dialogStyles.d.ts +13 -0
- package/lib/panel/core/dialogStyles.d.ts.map +1 -0
- package/lib/panel/core/dialogStyles.js +11 -0
- package/lib/panel/core/dialogStyles.js.map +1 -0
- package/lib/panel/core/index.d.ts +19 -0
- package/lib/panel/core/index.d.ts.map +1 -0
- package/lib/panel/core/index.js +18 -0
- package/lib/panel/core/index.js.map +1 -0
- package/lib/panel/core/isEditingField.d.ts +17 -0
- package/lib/panel/core/isEditingField.d.ts.map +1 -0
- package/lib/panel/core/isEditingField.js +25 -0
- package/lib/panel/core/isEditingField.js.map +1 -0
- package/lib/panel/core/panelStyles.d.ts +242 -0
- package/lib/panel/core/panelStyles.d.ts.map +1 -0
- package/lib/panel/core/panelStyles.js +228 -0
- package/lib/panel/core/panelStyles.js.map +1 -0
- package/lib/panel/core/rowSpacers.d.ts +38 -0
- package/lib/panel/core/rowSpacers.d.ts.map +1 -0
- package/lib/panel/core/rowSpacers.js +31 -0
- package/lib/panel/core/rowSpacers.js.map +1 -0
- package/lib/panel/core/statusBar.d.ts +44 -0
- package/lib/panel/core/statusBar.d.ts.map +1 -0
- package/lib/panel/core/statusBar.js +40 -0
- package/lib/panel/core/statusBar.js.map +1 -0
- package/lib/panel/core/textFilter.d.ts +22 -0
- package/lib/panel/core/textFilter.d.ts.map +1 -0
- package/lib/panel/core/textFilter.js +32 -0
- package/lib/panel/core/textFilter.js.map +1 -0
- package/lib/panel/core/yieldToPainting.d.ts +17 -0
- package/lib/panel/core/yieldToPainting.d.ts.map +1 -0
- package/lib/panel/core/yieldToPainting.js +21 -0
- package/lib/panel/core/yieldToPainting.js.map +1 -0
- package/lib/panel/ui/AboutDialogFrame.d.ts +36 -0
- package/lib/panel/ui/AboutDialogFrame.d.ts.map +1 -0
- package/lib/panel/ui/AboutDialogFrame.js +43 -0
- package/lib/panel/ui/AboutDialogFrame.js.map +1 -0
- package/lib/panel/ui/ClearButton.d.ts +28 -0
- package/lib/panel/ui/ClearButton.d.ts.map +1 -0
- package/lib/panel/ui/ClearButton.js +23 -0
- package/lib/panel/ui/ClearButton.js.map +1 -0
- package/lib/panel/ui/DocumentationDialogFrame.d.ts +39 -0
- package/lib/panel/ui/DocumentationDialogFrame.d.ts.map +1 -0
- package/lib/panel/ui/DocumentationDialogFrame.js +29 -0
- package/lib/panel/ui/DocumentationDialogFrame.js.map +1 -0
- package/lib/panel/ui/FilterInput.d.ts +31 -0
- package/lib/panel/ui/FilterInput.d.ts.map +1 -0
- package/lib/panel/ui/FilterInput.js +23 -0
- package/lib/panel/ui/FilterInput.js.map +1 -0
- package/lib/panel/ui/HelpLabel.d.ts +24 -0
- package/lib/panel/ui/HelpLabel.d.ts.map +1 -0
- package/lib/panel/ui/HelpLabel.js +23 -0
- package/lib/panel/ui/HelpLabel.js.map +1 -0
- package/lib/panel/ui/PanelMessage.d.ts +41 -0
- package/lib/panel/ui/PanelMessage.d.ts.map +1 -0
- package/lib/panel/ui/PanelMessage.js +30 -0
- package/lib/panel/ui/PanelMessage.js.map +1 -0
- package/lib/panel/ui/PanelRail.d.ts +41 -0
- package/lib/panel/ui/PanelRail.d.ts.map +1 -0
- package/lib/panel/ui/PanelRail.js +12 -0
- package/lib/panel/ui/PanelRail.js.map +1 -0
- package/lib/panel/ui/Section.d.ts +25 -0
- package/lib/panel/ui/Section.d.ts.map +1 -0
- package/lib/panel/ui/Section.js +41 -0
- package/lib/panel/ui/Section.js.map +1 -0
- package/lib/panel/ui/SidePanelStack.d.ts +62 -0
- package/lib/panel/ui/SidePanelStack.d.ts.map +1 -0
- package/lib/panel/ui/SidePanelStack.js +40 -0
- package/lib/panel/ui/SidePanelStack.js.map +1 -0
- package/lib/panel/ui/SpectrumColorSwatch.d.ts +33 -0
- package/lib/panel/ui/SpectrumColorSwatch.d.ts.map +1 -0
- package/lib/panel/ui/SpectrumColorSwatch.js +76 -0
- package/lib/panel/ui/SpectrumColorSwatch.js.map +1 -0
- package/lib/panel/ui/index.d.ts +37 -0
- package/lib/panel/ui/index.d.ts.map +1 -0
- package/lib/panel/ui/index.js +24 -0
- package/lib/panel/ui/index.js.map +1 -0
- package/lib/panel/ui/useConfirmOnEnter.d.ts +19 -0
- package/lib/panel/ui/useConfirmOnEnter.d.ts.map +1 -0
- package/lib/panel/ui/useConfirmOnEnter.js +64 -0
- package/lib/panel/ui/useConfirmOnEnter.js.map +1 -0
- package/lib/panel/ui/useFilterBox.d.ts +23 -0
- package/lib/panel/ui/useFilterBox.d.ts.map +1 -0
- package/lib/panel/ui/useFilterBox.js +22 -0
- package/lib/panel/ui/useFilterBox.js.map +1 -0
- package/lib/panel/ui/useVirtualRows.d.ts +46 -0
- package/lib/panel/ui/useVirtualRows.d.ts.map +1 -0
- package/lib/panel/ui/useVirtualRows.js +56 -0
- package/lib/panel/ui/useVirtualRows.js.map +1 -0
- package/lib/panel/ui/useVirtualWindowRows.d.ts +40 -0
- package/lib/panel/ui/useVirtualWindowRows.d.ts.map +1 -0
- package/lib/panel/ui/useVirtualWindowRows.js +65 -0
- package/lib/panel/ui/useVirtualWindowRows.js.map +1 -0
- package/lib/ui.d.ts +1 -0
- package/lib/ui.d.ts.map +1 -1
- package/lib/ui.js +1 -0
- package/lib/ui.js.map +1 -1
- package/package.json +8 -1
- package/src/chart/core/axisLabels.ts +117 -0
- package/src/chart/core/boxLayout.ts +126 -0
- package/src/chart/core/chartAxisScale.ts +92 -10
- package/src/chart/core/chartDomain.ts +185 -0
- package/src/chart/core/chartGeometry.ts +159 -0
- package/src/chart/core/chartPane.ts +10 -0
- package/src/chart/core/chartScale.ts +7 -4
- package/src/chart/core/chartTheme.ts +161 -0
- package/src/chart/core/chartViewport.ts +40 -13
- package/src/chart/core/guidePlacement.ts +66 -0
- package/src/chart/core/index.ts +121 -2
- package/src/chart/core/labelStack.ts +72 -0
- package/src/chart/core/legendBox.ts +263 -0
- package/src/chart/core/selectionGeometry.ts +68 -0
- package/src/chart/core/spectrumColor.ts +129 -0
- package/src/chart/core/stackCapacity.ts +162 -0
- package/src/chart/core/svgPoint.ts +77 -0
- package/src/chart/core/tracePath.ts +228 -0
- package/src/chart/core/trackerReadout.ts +78 -0
- package/src/chart/core/viewTransform.ts +287 -0
- package/src/chart/core/zoomDomain.ts +235 -0
- package/src/chart/ui/Axes.tsx +361 -0
- package/src/chart/ui/AxisGuide.tsx +187 -0
- package/src/chart/ui/ChartStack.tsx +130 -0
- package/src/chart/ui/ChartTracker.tsx +101 -0
- package/src/chart/ui/PlotCaption.tsx +108 -0
- package/src/chart/ui/SelectionRect.tsx +52 -0
- package/src/chart/ui/TraceLegend.tsx +193 -0
- package/src/chart/ui/chartGestures.ts +270 -0
- package/src/chart/ui/chartStackLevel.tsx +210 -0
- package/src/chart/ui/chartSurface.ts +66 -0
- package/src/chart/ui/index.ts +35 -0
- package/src/chart/ui/useChartPointer.ts +223 -0
- package/src/chart/ui/useChartSize.ts +115 -0
- package/src/chart/ui/useChartWindow.ts +240 -0
- package/src/chart/ui/useChartZoom.ts +255 -0
- package/src/chart/ui/useWheelListener.ts +62 -0
- package/src/clipboard/core/copyPng.ts +20 -0
- package/src/clipboard/core/index.ts +1 -0
- package/src/clipboard/ui/CopyableValue.tsx +22 -35
- package/src/core.ts +1 -0
- package/src/download/core/exportStyles.ts +20 -0
- package/src/download/core/imageResolution.ts +118 -0
- package/src/download/core/index.ts +34 -0
- package/src/download/core/pictureExport.ts +207 -0
- package/src/download/core/stackedDrawing.ts +108 -0
- package/src/download/core/svgBounds.ts +80 -0
- package/src/download/core/svgNamespace.ts +9 -0
- package/src/download/core/svgToPng.ts +121 -0
- package/src/download/core/svgToString.ts +95 -0
- package/src/download/ui/ExportDialogFrame.tsx +86 -0
- package/src/download/ui/ExportImageDialog.tsx +91 -0
- package/src/download/ui/ExportNameField.tsx +148 -0
- package/src/download/ui/ExportPictureSection.tsx +142 -0
- package/src/download/ui/index.ts +11 -0
- package/src/download/ui/useDrawingBox.ts +37 -0
- package/src/error/core/describeSource.ts +18 -0
- package/src/error/core/index.ts +1 -0
- package/src/help/ui/HelpBody.tsx +41 -2
- package/src/help/ui/index.ts +6 -1
- package/src/ir/core/analysisSpectra.ts +231 -0
- package/src/ir/core/assignBands.ts +144 -0
- package/src/ir/core/bandAssignments.ts +329 -0
- package/src/ir/core/bandLabelPlan.ts +194 -0
- package/src/ir/core/detectIrFormat.ts +139 -0
- package/src/ir/core/downloadSpectra.ts +57 -0
- package/src/ir/core/fromJcamp.ts +70 -0
- package/src/ir/core/fromSpc.ts +61 -0
- package/src/ir/core/index.ts +113 -0
- package/src/ir/core/irBand.ts +57 -0
- package/src/ir/core/irCommands.ts +154 -0
- package/src/ir/core/irDomain.ts +163 -0
- package/src/ir/core/irEditorApi.ts +44 -0
- package/src/ir/core/irFormat.ts +57 -0
- package/src/ir/core/irMode.ts +203 -0
- package/src/ir/core/irReducer.ts +273 -0
- package/src/ir/core/irSidePanels.ts +20 -0
- package/src/ir/core/irSpectrum.ts +155 -0
- package/src/ir/core/irState.ts +173 -0
- package/src/ir/core/loadIrSpectra.ts +79 -0
- package/src/ir/core/nearestBand.ts +57 -0
- package/src/ir/core/pickBands.ts +181 -0
- package/src/ir/core/spectrumJcamp.ts +178 -0
- package/src/ir/core/toIrSpectrum.ts +102 -0
- package/src/ir/ui/BandMarks.tsx +166 -0
- package/src/ir/ui/BandsPanel.tsx +271 -0
- package/src/ir/ui/IrAboutDialog.tsx +121 -0
- package/src/ir/ui/IrCanvas.tsx +91 -0
- package/src/ir/ui/IrChart.tsx +215 -0
- package/src/ir/ui/IrCommandProvider.tsx +32 -0
- package/src/ir/ui/IrCommandTooltip.tsx +36 -0
- package/src/ir/ui/IrDocumentationDialog.tsx +174 -0
- package/src/ir/ui/IrEditor.tsx +99 -0
- package/src/ir/ui/IrHeader.tsx +39 -0
- package/src/ir/ui/IrLogo.tsx +49 -0
- package/src/ir/ui/IrPointerTracker.tsx +102 -0
- package/src/ir/ui/IrShell.tsx +285 -0
- package/src/ir/ui/IrSidePanel.tsx +78 -0
- package/src/ir/ui/IrStateProvider.tsx +32 -0
- package/src/ir/ui/IrStatusBar.tsx +97 -0
- package/src/ir/ui/IrToolbar.tsx +102 -0
- package/src/ir/ui/IrTraces.tsx +134 -0
- package/src/ir/ui/MetadataPanel.tsx +88 -0
- package/src/ir/ui/SpectraPanel.tsx +114 -0
- package/src/ir/ui/SpectrumRow.tsx +127 -0
- package/src/ir/ui/index.ts +56 -0
- package/src/ir/ui/irActions.ts +103 -0
- package/src/ir/ui/irChartProps.ts +118 -0
- package/src/ir/ui/irCommandContext.tsx +62 -0
- package/src/ir/ui/irStateContext.ts +48 -0
- package/src/ir/ui/useIrEditor.ts +139 -0
- package/src/ir/ui/useIrPointer.ts +109 -0
- package/src/ir/ui/useIrShortcuts.ts +95 -0
- package/src/ir/ui/useIrZoom.ts +86 -0
- package/src/ir.ts +13 -0
- package/src/panel/core/dialogStyles.ts +11 -0
- package/src/panel/core/index.ts +47 -0
- package/src/panel/core/isEditingField.ts +23 -0
- package/src/panel/core/panelStyles.ts +248 -0
- package/src/panel/core/rowSpacers.ts +50 -0
- package/src/panel/core/statusBar.ts +48 -0
- package/src/panel/core/textFilter.ts +33 -0
- package/src/panel/core/yieldToPainting.ts +20 -0
- package/src/panel/ui/AboutDialogFrame.tsx +100 -0
- package/src/panel/ui/ClearButton.tsx +42 -0
- package/src/panel/ui/DocumentationDialogFrame.tsx +86 -0
- package/src/panel/ui/FilterInput.tsx +60 -0
- package/src/panel/ui/HelpLabel.tsx +43 -0
- package/src/panel/ui/PanelMessage.tsx +64 -0
- package/src/panel/ui/PanelRail.tsx +64 -0
- package/src/panel/ui/Section.tsx +66 -0
- package/src/panel/ui/SidePanelStack.tsx +109 -0
- package/src/panel/ui/SpectrumColorSwatch.tsx +119 -0
- package/src/panel/ui/index.ts +47 -0
- package/src/panel/ui/useConfirmOnEnter.ts +68 -0
- package/src/panel/ui/useFilterBox.ts +35 -0
- package/src/panel/ui/useVirtualRows.ts +82 -0
- package/src/panel/ui/useVirtualWindowRows.ts +86 -0
- package/src/ui.ts +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"textFilter.d.ts","sourceRoot":"","sources":["../../../src/panel/core/textFilter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,EACd,GAAG,MAAM,EAAE,aAAa,CAAC,MAAM,GAAG,SAAS,CAAC,GAC3C,OAAO,CAMT"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Read what the user typed into a filter box.
|
|
3
|
+
* @param filter - What was typed.
|
|
4
|
+
* @returns It trimmed and lowercased, which is what a match is made against.
|
|
5
|
+
* @example
|
|
6
|
+
* filterNeedle(' GlcNAc '); // 'glcnac'
|
|
7
|
+
*/
|
|
8
|
+
export function filterNeedle(filter) {
|
|
9
|
+
return filter.trim().toLowerCase();
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Whether any of the things an entry is known by carries what was typed.
|
|
13
|
+
*
|
|
14
|
+
* Every list the editor filters is filtered the same way — case-insensitively,
|
|
15
|
+
* on a substring, across the few fields an entry is recognised by — so a
|
|
16
|
+
* residue, a template and a symbol all answer to the same test.
|
|
17
|
+
* @param needle - The filter, already through `filterNeedle`.
|
|
18
|
+
* @param values - What the entry is known by; an absent one never matches.
|
|
19
|
+
* @returns Whether the entry is worth showing, always true for an empty filter.
|
|
20
|
+
* @example
|
|
21
|
+
* matchesNeedle('nac', 'GlcNAc', 'N-acetylglucosamine'); // true
|
|
22
|
+
*/
|
|
23
|
+
export function matchesNeedle(needle, ...values) {
|
|
24
|
+
if (needle === '')
|
|
25
|
+
return true;
|
|
26
|
+
for (const value of values) {
|
|
27
|
+
if (value?.toLowerCase().includes(needle))
|
|
28
|
+
return true;
|
|
29
|
+
}
|
|
30
|
+
return false;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=textFilter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"textFilter.js","sourceRoot":"","sources":["../../../src/panel/core/textFilter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,MAAc;IACzC,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AACrC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,aAAa,CAC3B,MAAc,EACd,GAAG,MAAyC;IAE5C,IAAI,MAAM,KAAK,EAAE;QAAE,OAAO,IAAI,CAAC;IAC/B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,KAAK,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,OAAO,IAAI,CAAC;IACzD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Give the browser a turn, in the middle of work that would otherwise hold it.
|
|
3
|
+
*
|
|
4
|
+
* A long read that reports its progress reports it into a page that never gets
|
|
5
|
+
* to draw: awaiting a value already in hand queues a microtask, and the browser
|
|
6
|
+
* paints between tasks, not between microtasks. So a loop over a run held in
|
|
7
|
+
* memory can walk twenty-six million peaks announcing each percent and leave
|
|
8
|
+
* the screen showing the percent it was at when the loop began.
|
|
9
|
+
*
|
|
10
|
+
* `setTimeout` and not `requestAnimationFrame`, for two reasons: these packages
|
|
11
|
+
* are tested without a DOM, so work that only advanced inside a browser could
|
|
12
|
+
* not be tested at all; and a tab in the background stops painting frames
|
|
13
|
+
* altogether, which would stop a read its owner is waiting for.
|
|
14
|
+
* @returns When the browser has had its turn.
|
|
15
|
+
*/
|
|
16
|
+
export declare function yieldToPainting(): Promise<void>;
|
|
17
|
+
//# sourceMappingURL=yieldToPainting.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"yieldToPainting.d.ts","sourceRoot":"","sources":["../../../src/panel/core/yieldToPainting.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAI/C"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Give the browser a turn, in the middle of work that would otherwise hold it.
|
|
3
|
+
*
|
|
4
|
+
* A long read that reports its progress reports it into a page that never gets
|
|
5
|
+
* to draw: awaiting a value already in hand queues a microtask, and the browser
|
|
6
|
+
* paints between tasks, not between microtasks. So a loop over a run held in
|
|
7
|
+
* memory can walk twenty-six million peaks announcing each percent and leave
|
|
8
|
+
* the screen showing the percent it was at when the loop began.
|
|
9
|
+
*
|
|
10
|
+
* `setTimeout` and not `requestAnimationFrame`, for two reasons: these packages
|
|
11
|
+
* are tested without a DOM, so work that only advanced inside a browser could
|
|
12
|
+
* not be tested at all; and a tab in the background stops painting frames
|
|
13
|
+
* altogether, which would stop a read its owner is waiting for.
|
|
14
|
+
* @returns When the browser has had its turn.
|
|
15
|
+
*/
|
|
16
|
+
export function yieldToPainting() {
|
|
17
|
+
return new Promise((resolve) => {
|
|
18
|
+
setTimeout(resolve, 0);
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=yieldToPainting.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"yieldToPainting.js","sourceRoot":"","sources":["../../../src/panel/core/yieldToPainting.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,eAAe;IAC7B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The shape an editor's About dialog takes, so every viewer wears the same one.
|
|
3
|
+
*
|
|
4
|
+
* What differs between them is what they are and whose work they are built on;
|
|
5
|
+
* what does not is the frame — the mark beside the title, the mark again at
|
|
6
|
+
* full size beside a one-paragraph statement of what the editor does, then the
|
|
7
|
+
* sections crediting the parts, then a way out. A viewer hands over its words
|
|
8
|
+
* and its logo and writes none of that geometry itself.
|
|
9
|
+
*/
|
|
10
|
+
import type { ReactNode } from 'react';
|
|
11
|
+
/** What an About dialog is given. */
|
|
12
|
+
export interface AboutDialogFrameProps {
|
|
13
|
+
/** Whether the dialog is showing. */
|
|
14
|
+
isOpen: boolean;
|
|
15
|
+
/** Called when it is dismissed. */
|
|
16
|
+
onClose: () => void;
|
|
17
|
+
/** What the title bar reads. */
|
|
18
|
+
title: string;
|
|
19
|
+
/** The editor's mark, at title size. */
|
|
20
|
+
mark: ReactNode;
|
|
21
|
+
/** The same mark, at the size the header shows it. */
|
|
22
|
+
logo: ReactNode;
|
|
23
|
+
/** What the editor is called, beside the logo. */
|
|
24
|
+
name: string;
|
|
25
|
+
/** One paragraph on what it does. */
|
|
26
|
+
intro: ReactNode;
|
|
27
|
+
/** The sections under it: credits, licence, whatever else is owed. */
|
|
28
|
+
children: ReactNode;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Draw an About dialog around a viewer's own words.
|
|
32
|
+
* @param props - The words, the mark, and how the dialog is opened and closed.
|
|
33
|
+
* @returns The dialog.
|
|
34
|
+
*/
|
|
35
|
+
export declare function AboutDialogFrame(props: AboutDialogFrameProps): ReactNode;
|
|
36
|
+
//# sourceMappingURL=AboutDialogFrame.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AboutDialogFrame.d.ts","sourceRoot":"","sources":["../../../src/panel/ui/AboutDialogFrame.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,qCAAqC;AACrC,MAAM,WAAW,qBAAqB;IACpC,qCAAqC;IACrC,MAAM,EAAE,OAAO,CAAC;IAChB,mCAAmC;IACnC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,wCAAwC;IACxC,IAAI,EAAE,SAAS,CAAC;IAChB,sDAAsD;IACtD,IAAI,EAAE,SAAS,CAAC;IAChB,kDAAkD;IAClD,IAAI,EAAE,MAAM,CAAC;IACb,qCAAqC;IACrC,KAAK,EAAE,SAAS,CAAC;IACjB,sEAAsE;IACtE,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,SAAS,CAiCxE"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* The shape an editor's About dialog takes, so every viewer wears the same one.
|
|
4
|
+
*
|
|
5
|
+
* What differs between them is what they are and whose work they are built on;
|
|
6
|
+
* what does not is the frame — the mark beside the title, the mark again at
|
|
7
|
+
* full size beside a one-paragraph statement of what the editor does, then the
|
|
8
|
+
* sections crediting the parts, then a way out. A viewer hands over its words
|
|
9
|
+
* and its logo and writes none of that geometry itself.
|
|
10
|
+
*/
|
|
11
|
+
import { Button, Dialog, DialogBody, DialogFooter } from '@blueprintjs/core';
|
|
12
|
+
import { useConfirmOnEnter } from "./useConfirmOnEnter.js";
|
|
13
|
+
/**
|
|
14
|
+
* Draw an About dialog around a viewer's own words.
|
|
15
|
+
* @param props - The words, the mark, and how the dialog is opened and closed.
|
|
16
|
+
* @returns The dialog.
|
|
17
|
+
*/
|
|
18
|
+
export function AboutDialogFrame(props) {
|
|
19
|
+
const { isOpen, onClose, title, mark, logo, name, intro, children } = props;
|
|
20
|
+
useConfirmOnEnter(isOpen, onClose);
|
|
21
|
+
return (_jsxs(Dialog, { isOpen: isOpen, title: title, icon: _jsx("span", { style: titleLogoStyle, children: mark }), style: dialogStyle, onClose: onClose, children: [_jsx(DialogBody, { children: _jsxs("div", { style: bodyStyle, children: [_jsxs("div", { style: headerStyle, children: [_jsx("div", { style: logoStyle, children: logo }), _jsxs("div", { children: [_jsx("div", { style: nameStyle, children: name }), intro] })] }), children] }) }), _jsx(DialogFooter, { actions: _jsx(Button, { intent: "primary", onClick: onClose, children: "Close" }) })] }));
|
|
22
|
+
}
|
|
23
|
+
const dialogStyle = { width: 480, maxWidth: '92vw' };
|
|
24
|
+
const bodyStyle = {
|
|
25
|
+
display: 'flex',
|
|
26
|
+
flexDirection: 'column',
|
|
27
|
+
gap: 16,
|
|
28
|
+
};
|
|
29
|
+
const headerStyle = { display: 'flex', alignItems: 'center', gap: 16 };
|
|
30
|
+
/** A fixed size, not a share of the row: a flex item gives up its width first. */
|
|
31
|
+
const logoStyle = { flexShrink: 0 };
|
|
32
|
+
/** The header spaces a Blueprint icon off the title; the mark is not one. */
|
|
33
|
+
const titleLogoStyle = {
|
|
34
|
+
display: 'inline-flex',
|
|
35
|
+
flexShrink: 0,
|
|
36
|
+
marginRight: 10,
|
|
37
|
+
};
|
|
38
|
+
const nameStyle = {
|
|
39
|
+
fontSize: 16,
|
|
40
|
+
fontWeight: 600,
|
|
41
|
+
marginBottom: 4,
|
|
42
|
+
};
|
|
43
|
+
//# sourceMappingURL=AboutDialogFrame.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AboutDialogFrame.js","sourceRoot":"","sources":["../../../src/panel/ui/AboutDialogFrame.tsx"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAG7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAsB3D;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAA4B;IAC3D,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAC5E,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEnC,OAAO,CACL,MAAC,MAAM,IACL,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,eAAM,KAAK,EAAE,cAAc,YAAG,IAAI,GAAQ,EAChD,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,OAAO,aAEhB,KAAC,UAAU,cACT,eAAK,KAAK,EAAE,SAAS,aACnB,eAAK,KAAK,EAAE,WAAW,aACrB,cAAK,KAAK,EAAE,SAAS,YAAG,IAAI,GAAO,EACnC,0BACE,cAAK,KAAK,EAAE,SAAS,YAAG,IAAI,GAAO,EAClC,KAAK,IACF,IACF,EACL,QAAQ,IACL,GACK,EACb,KAAC,YAAY,IACX,OAAO,EACL,KAAC,MAAM,IAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAE,OAAO,sBAEhC,GAEX,IACK,CACV,CAAC;AACJ,CAAC;AAED,MAAM,WAAW,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAW,CAAC;AAE9D,MAAM,SAAS,GAAG;IAChB,OAAO,EAAE,MAAM;IACf,aAAa,EAAE,QAAQ;IACvB,GAAG,EAAE,EAAE;CACC,CAAC;AAEX,MAAM,WAAW,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAW,CAAC;AAEhF,kFAAkF;AAClF,MAAM,SAAS,GAAG,EAAE,UAAU,EAAE,CAAC,EAAW,CAAC;AAE7C,6EAA6E;AAC7E,MAAM,cAAc,GAAG;IACrB,OAAO,EAAE,aAAa;IACtB,UAAU,EAAE,CAAC;IACb,WAAW,EAAE,EAAE;CACP,CAAC;AAEX,MAAM,SAAS,GAAG;IAChB,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE,GAAG;IACf,YAAY,EAAE,CAAC;CACP,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export interface ClearButtonProps {
|
|
2
|
+
/**
|
|
3
|
+
* What emptying the box does, said as the thing it achieves rather than as
|
|
4
|
+
* "clear" — a screen reader and a hovering pointer both get this one line,
|
|
5
|
+
* and `Leave green out` says what `Clear` does not.
|
|
6
|
+
*/
|
|
7
|
+
label: string;
|
|
8
|
+
/** Called when it is clicked, with the box left for the caller to empty. */
|
|
9
|
+
onClick: () => void;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* The cross that empties a box, worn inside it as Blueprint's `rightElement`.
|
|
13
|
+
*
|
|
14
|
+
* Blueprint has no clearable input of its own; what it has is the slot, and a
|
|
15
|
+
* minimal cross button in it is the shape its own examples use. Which is why
|
|
16
|
+
* this carries no `size`: the input group sizes whatever is put in the slot
|
|
17
|
+
* from its own size class — 20 square inside a small box, 24 inside a medium
|
|
18
|
+
* one — so a button that stated a size of its own would only be able to
|
|
19
|
+
* disagree with the box it is in.
|
|
20
|
+
*
|
|
21
|
+
* One component rather than eight lines repeated at each box, because the
|
|
22
|
+
* cross has to be the same size, the same colour and in the same place
|
|
23
|
+
* everywhere or it reads as a different control each time.
|
|
24
|
+
* @param props - What clearing achieves, and what to do about it.
|
|
25
|
+
* @returns The button, for an `InputGroup`'s `rightElement`.
|
|
26
|
+
*/
|
|
27
|
+
export declare function ClearButton(props: ClearButtonProps): import("react").JSX.Element;
|
|
28
|
+
//# sourceMappingURL=ClearButton.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ClearButton.d.ts","sourceRoot":"","sources":["../../../src/panel/ui/ClearButton.tsx"],"names":[],"mappings":"AAEA,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,KAAK,EAAE,MAAM,CAAC;IACd,4EAA4E;IAC5E,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,+BAYlD"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Button } from '@blueprintjs/core';
|
|
3
|
+
/**
|
|
4
|
+
* The cross that empties a box, worn inside it as Blueprint's `rightElement`.
|
|
5
|
+
*
|
|
6
|
+
* Blueprint has no clearable input of its own; what it has is the slot, and a
|
|
7
|
+
* minimal cross button in it is the shape its own examples use. Which is why
|
|
8
|
+
* this carries no `size`: the input group sizes whatever is put in the slot
|
|
9
|
+
* from its own size class — 20 square inside a small box, 24 inside a medium
|
|
10
|
+
* one — so a button that stated a size of its own would only be able to
|
|
11
|
+
* disagree with the box it is in.
|
|
12
|
+
*
|
|
13
|
+
* One component rather than eight lines repeated at each box, because the
|
|
14
|
+
* cross has to be the same size, the same colour and in the same place
|
|
15
|
+
* everywhere or it reads as a different control each time.
|
|
16
|
+
* @param props - What clearing achieves, and what to do about it.
|
|
17
|
+
* @returns The button, for an `InputGroup`'s `rightElement`.
|
|
18
|
+
*/
|
|
19
|
+
export function ClearButton(props) {
|
|
20
|
+
const { label, onClick } = props;
|
|
21
|
+
return (_jsx(Button, { variant: "minimal", icon: "cross", "aria-label": label, title: label, onClick: onClick }));
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=ClearButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ClearButton.js","sourceRoot":"","sources":["../../../src/panel/ui/ClearButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAa3C;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,WAAW,CAAC,KAAuB;IACjD,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAEjC,OAAO,CACL,KAAC,MAAM,IACL,OAAO,EAAC,SAAS,EACjB,IAAI,EAAC,OAAO,gBACA,KAAK,EACjB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,GAChB,CACH,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The dialog an editor answers "how do I use this" in.
|
|
3
|
+
*
|
|
4
|
+
* Documentation that lives on a website is documentation nobody reads with a
|
|
5
|
+
* structure half drawn, so each viewer ships its own — but only the words are
|
|
6
|
+
* its own. The dialog, the width, the way the sections are stacked and the way
|
|
7
|
+
* out are the same in all of them, and are written here once.
|
|
8
|
+
*/
|
|
9
|
+
import type { ReactNode } from 'react';
|
|
10
|
+
/** One part of what a viewer has to say about itself. */
|
|
11
|
+
export interface DocumentationSection {
|
|
12
|
+
/** Stable key, so a section keeps its place as the list grows. */
|
|
13
|
+
id: string;
|
|
14
|
+
/** What the section is called. */
|
|
15
|
+
title: string;
|
|
16
|
+
/** What it says. */
|
|
17
|
+
body: ReactNode;
|
|
18
|
+
}
|
|
19
|
+
/** What the documentation dialog is given. */
|
|
20
|
+
export interface DocumentationDialogFrameProps {
|
|
21
|
+
/** Whether the dialog is showing. */
|
|
22
|
+
isOpen: boolean;
|
|
23
|
+
/** Called when it is dismissed. */
|
|
24
|
+
onClose: () => void;
|
|
25
|
+
/** The sections, in reading order. */
|
|
26
|
+
sections: readonly DocumentationSection[];
|
|
27
|
+
/**
|
|
28
|
+
* What the title bar reads.
|
|
29
|
+
* @default 'Documentation'
|
|
30
|
+
*/
|
|
31
|
+
title?: string;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Draw the documentation of one viewer.
|
|
35
|
+
* @param props - The sections and how the dialog is opened and closed.
|
|
36
|
+
* @returns The dialog.
|
|
37
|
+
*/
|
|
38
|
+
export declare function DocumentationDialogFrame(props: DocumentationDialogFrameProps): ReactNode;
|
|
39
|
+
//# sourceMappingURL=DocumentationDialogFrame.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DocumentationDialogFrame.d.ts","sourceRoot":"","sources":["../../../src/panel/ui/DocumentationDialogFrame.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKvC,yDAAyD;AACzD,MAAM,WAAW,oBAAoB;IACnC,kEAAkE;IAClE,EAAE,EAAE,MAAM,CAAC;IACX,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,oBAAoB;IACpB,IAAI,EAAE,SAAS,CAAC;CACjB;AAED,8CAA8C;AAC9C,MAAM,WAAW,6BAA6B;IAC5C,qCAAqC;IACrC,MAAM,EAAE,OAAO,CAAC;IAChB,mCAAmC;IACnC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,sCAAsC;IACtC,QAAQ,EAAE,SAAS,oBAAoB,EAAE,CAAC;IAC1C;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,6BAA6B,GACnC,SAAS,CA8BX"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* The dialog an editor answers "how do I use this" in.
|
|
4
|
+
*
|
|
5
|
+
* Documentation that lives on a website is documentation nobody reads with a
|
|
6
|
+
* structure half drawn, so each viewer ships its own — but only the words are
|
|
7
|
+
* its own. The dialog, the width, the way the sections are stacked and the way
|
|
8
|
+
* out are the same in all of them, and are written here once.
|
|
9
|
+
*/
|
|
10
|
+
import { Button, Dialog, DialogBody, DialogFooter } from '@blueprintjs/core';
|
|
11
|
+
import { Section } from "./Section.js";
|
|
12
|
+
import { useConfirmOnEnter } from "./useConfirmOnEnter.js";
|
|
13
|
+
/**
|
|
14
|
+
* Draw the documentation of one viewer.
|
|
15
|
+
* @param props - The sections and how the dialog is opened and closed.
|
|
16
|
+
* @returns The dialog.
|
|
17
|
+
*/
|
|
18
|
+
export function DocumentationDialogFrame(props) {
|
|
19
|
+
const { isOpen, onClose, sections, title = 'Documentation' } = props;
|
|
20
|
+
useConfirmOnEnter(isOpen, onClose);
|
|
21
|
+
return (_jsxs(Dialog, { isOpen: isOpen, title: title, icon: "help", style: dialogStyle, onClose: onClose, children: [_jsx(DialogBody, { children: _jsx("div", { style: bodyStyle, children: sections.map((section) => (_jsx(Section, { title: section.title, children: section.body }, section.id))) }) }), _jsx(DialogFooter, { actions: _jsx(Button, { intent: "primary", onClick: onClose, children: "Close" }) })] }));
|
|
22
|
+
}
|
|
23
|
+
const dialogStyle = { width: 640, maxWidth: '92vw' };
|
|
24
|
+
const bodyStyle = {
|
|
25
|
+
display: 'flex',
|
|
26
|
+
flexDirection: 'column',
|
|
27
|
+
gap: 20,
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=DocumentationDialogFrame.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DocumentationDialogFrame.js","sourceRoot":"","sources":["../../../src/panel/ui/DocumentationDialogFrame.tsx"],"names":[],"mappings":";AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAG7E,OAAO,EAAE,OAAO,EAAE,MAAM,cAAe,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AA2B3D;;;;GAIG;AACH,MAAM,UAAU,wBAAwB,CACtC,KAAoC;IAEpC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,GAAG,eAAe,EAAE,GAAG,KAAK,CAAC;IACrE,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEnC,OAAO,CACL,MAAC,MAAM,IACL,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,EACZ,IAAI,EAAC,MAAM,EACX,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,OAAO,aAEhB,KAAC,UAAU,cACT,cAAK,KAAK,EAAE,SAAS,YAClB,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CACzB,KAAC,OAAO,IAAkB,KAAK,EAAE,OAAO,CAAC,KAAK,YAC3C,OAAO,CAAC,IAAI,IADD,OAAO,CAAC,EAAE,CAEd,CACX,CAAC,GACE,GACK,EACb,KAAC,YAAY,IACX,OAAO,EACL,KAAC,MAAM,IAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAE,OAAO,sBAEhC,GAEX,IACK,CACV,CAAC;AACJ,CAAC;AAED,MAAM,WAAW,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAW,CAAC;AAE9D,MAAM,SAAS,GAAG;IAChB,OAAO,EAAE,MAAM;IACf,aAAa,EAAE,QAAQ;IACvB,GAAG,EAAE,EAAE;CACC,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
export interface FilterInputProps {
|
|
2
|
+
/** What the user typed. */
|
|
3
|
+
value: string;
|
|
4
|
+
/** Called with what the user typed, and with `''` when the cross is clicked. */
|
|
5
|
+
onValueChange: (value: string) => void;
|
|
6
|
+
/** What the box says while it is empty. */
|
|
7
|
+
placeholder: string;
|
|
8
|
+
/**
|
|
9
|
+
* Whether the box takes the caret as it appears, for the times it is revealed
|
|
10
|
+
* by a click on a toolbar item somewhere else.
|
|
11
|
+
* @default false
|
|
12
|
+
*/
|
|
13
|
+
autoFocus?: boolean;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* The box a list is filtered through, with a cross to empty it again.
|
|
17
|
+
*
|
|
18
|
+
* A filter left behind hides entries that are still there, and a peak table is
|
|
19
|
+
* exactly where that goes unnoticed — a spectrum with three peaks in it looks
|
|
20
|
+
* like a spectrum with three peaks in it. So every list that offers a filter
|
|
21
|
+
* also offers one click back to the whole of it rather than a held backspace.
|
|
22
|
+
*
|
|
23
|
+
* Every correction the browser offers is turned off: a formula, an m/z and a
|
|
24
|
+
* residue name are neither words nor sentences, and a mobile keyboard
|
|
25
|
+
* capitalising `mNa+` or autocorrecting `Hex` is how a query stops matching
|
|
26
|
+
* anything.
|
|
27
|
+
* @param props - Component props.
|
|
28
|
+
* @returns The box.
|
|
29
|
+
*/
|
|
30
|
+
export declare function FilterInput(props: FilterInputProps): import("react").JSX.Element;
|
|
31
|
+
//# sourceMappingURL=FilterInput.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterInput.d.ts","sourceRoot":"","sources":["../../../src/panel/ui/FilterInput.tsx"],"names":[],"mappings":"AAIA,MAAM,WAAW,gBAAgB;IAC/B,2BAA2B;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,gFAAgF;IAChF,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,2CAA2C;IAC3C,WAAW,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,+BAyBlD"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { InputGroup } from '@blueprintjs/core';
|
|
3
|
+
import { ClearButton } from "./ClearButton.js";
|
|
4
|
+
/**
|
|
5
|
+
* The box a list is filtered through, with a cross to empty it again.
|
|
6
|
+
*
|
|
7
|
+
* A filter left behind hides entries that are still there, and a peak table is
|
|
8
|
+
* exactly where that goes unnoticed — a spectrum with three peaks in it looks
|
|
9
|
+
* like a spectrum with three peaks in it. So every list that offers a filter
|
|
10
|
+
* also offers one click back to the whole of it rather than a held backspace.
|
|
11
|
+
*
|
|
12
|
+
* Every correction the browser offers is turned off: a formula, an m/z and a
|
|
13
|
+
* residue name are neither words nor sentences, and a mobile keyboard
|
|
14
|
+
* capitalising `mNa+` or autocorrecting `Hex` is how a query stops matching
|
|
15
|
+
* anything.
|
|
16
|
+
* @param props - Component props.
|
|
17
|
+
* @returns The box.
|
|
18
|
+
*/
|
|
19
|
+
export function FilterInput(props) {
|
|
20
|
+
const { value, onValueChange, placeholder, autoFocus = false } = props;
|
|
21
|
+
return (_jsx(InputGroup, { autoFocus: autoFocus, leftIcon: "search", size: "small", value: value, placeholder: placeholder, spellCheck: false, autoCapitalize: "off", autoCorrect: "off", autoComplete: "off", rightElement: value.length > 0 ? (_jsx(ClearButton, { label: "Clear the filter", onClick: () => onValueChange('') })) : undefined, onValueChange: onValueChange }));
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=FilterInput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterInput.js","sourceRoot":"","sources":["../../../src/panel/ui/FilterInput.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAmB,CAAC;AAiBhD;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,WAAW,CAAC,KAAuB;IACjD,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,GAAG,KAAK,EAAE,GAAG,KAAK,CAAC;IAEvE,OAAO,CACL,KAAC,UAAU,IACT,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAC,QAAQ,EACjB,IAAI,EAAC,OAAO,EACZ,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,KAAK,EACjB,cAAc,EAAC,KAAK,EACpB,WAAW,EAAC,KAAK,EACjB,YAAY,EAAC,KAAK,EAClB,YAAY,EACV,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACjB,KAAC,WAAW,IACV,KAAK,EAAC,kBAAkB,EACxB,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,GAChC,CACH,CAAC,CAAC,CAAC,SAAS,EAEf,aAAa,EAAE,aAAa,GAC5B,CACH,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { HelpText } from '../../help/ui/HelpBody.tsx';
|
|
2
|
+
/** What the label names, and what its question mark answers. */
|
|
3
|
+
export interface HelpLabelProps {
|
|
4
|
+
/** What the value is, written small and quiet above it. */
|
|
5
|
+
label: string;
|
|
6
|
+
/** The sentences the question mark carries, one string per paragraph. */
|
|
7
|
+
help: HelpText;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* A panel label with a question mark beside it.
|
|
11
|
+
*
|
|
12
|
+
* The label is the half that has to be read at a glance — it names the field
|
|
13
|
+
* under it — so it stays plain, and everything that would otherwise be a
|
|
14
|
+
* paragraph of instructions under the control hangs off the glyph beside it.
|
|
15
|
+
*
|
|
16
|
+
* The help opens to the side rather than above, and that is not a preference:
|
|
17
|
+
* these glyphs sit in a panel beside the very thing they explain — a picture, a
|
|
18
|
+
* chart, a spectrum — and a tooltip placed over the top of a control covers the
|
|
19
|
+
* subject of its own first sentence.
|
|
20
|
+
* @param props - Component props.
|
|
21
|
+
* @returns The label row.
|
|
22
|
+
*/
|
|
23
|
+
export declare function HelpLabel(props: HelpLabelProps): import("react").JSX.Element;
|
|
24
|
+
//# sourceMappingURL=HelpLabel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HelpLabel.d.ts","sourceRoot":"","sources":["../../../src/panel/ui/HelpLabel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAI3D,gEAAgE;AAChE,MAAM,WAAW,cAAc;IAC7B,2DAA2D;IAC3D,KAAK,EAAE,MAAM,CAAC;IACd,yEAAyE;IACzE,IAAI,EAAE,QAAQ,CAAC;CAChB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,+BAc9C"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { HelpIcon } from "../../help/ui/HelpIcon.js";
|
|
3
|
+
import { labelStyle } from "../core/panelStyles.js";
|
|
4
|
+
/**
|
|
5
|
+
* A panel label with a question mark beside it.
|
|
6
|
+
*
|
|
7
|
+
* The label is the half that has to be read at a glance — it names the field
|
|
8
|
+
* under it — so it stays plain, and everything that would otherwise be a
|
|
9
|
+
* paragraph of instructions under the control hangs off the glyph beside it.
|
|
10
|
+
*
|
|
11
|
+
* The help opens to the side rather than above, and that is not a preference:
|
|
12
|
+
* these glyphs sit in a panel beside the very thing they explain — a picture, a
|
|
13
|
+
* chart, a spectrum — and a tooltip placed over the top of a control covers the
|
|
14
|
+
* subject of its own first sentence.
|
|
15
|
+
* @param props - Component props.
|
|
16
|
+
* @returns The label row.
|
|
17
|
+
*/
|
|
18
|
+
export function HelpLabel(props) {
|
|
19
|
+
const { label, help } = props;
|
|
20
|
+
return (_jsxs("div", { style: rowStyle, children: [_jsx("span", { style: labelStyle, children: label }), _jsx(HelpIcon, { content: { body: help }, label: `What ${label} means`, placement: "left", size: 12 })] }));
|
|
21
|
+
}
|
|
22
|
+
const rowStyle = { display: 'flex', alignItems: 'center', gap: 4 };
|
|
23
|
+
//# sourceMappingURL=HelpLabel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HelpLabel.js","sourceRoot":"","sources":["../../../src/panel/ui/HelpLabel.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA4B,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAUpD;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,SAAS,CAAC,KAAqB;IAC7C,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;IAE9B,OAAO,CACL,eAAK,KAAK,EAAE,QAAQ,aAClB,eAAM,KAAK,EAAE,UAAU,YAAG,KAAK,GAAQ,EACvC,KAAC,QAAQ,IACP,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EACvB,KAAK,EAAE,QAAQ,KAAK,QAAQ,EAC5B,SAAS,EAAC,MAAM,EAChB,IAAI,EAAE,EAAE,GACR,IACE,CACP,CAAC;AACJ,CAAC;AAED,MAAM,QAAQ,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAW,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import type { IconName } from '@blueprintjs/core';
|
|
2
|
+
import type { ReactNode } from 'react';
|
|
3
|
+
/** What a panel says when it cannot show what it is for. */
|
|
4
|
+
export type PanelMessageIntent = 'none' | 'warning' | 'danger';
|
|
5
|
+
export interface PanelMessageProps {
|
|
6
|
+
/**
|
|
7
|
+
* How much is in the way: `danger` for something the editor refused,
|
|
8
|
+
* `warning` for something it could only do in part, `none` for a remark.
|
|
9
|
+
* @default 'warning'
|
|
10
|
+
*/
|
|
11
|
+
intent?: PanelMessageIntent;
|
|
12
|
+
/**
|
|
13
|
+
* The icon, when the one the intent carries is not the one meant — a lookup
|
|
14
|
+
* that found nothing is a search that came back empty, not a warning.
|
|
15
|
+
* @default the icon of the intent
|
|
16
|
+
*/
|
|
17
|
+
icon?: IconName;
|
|
18
|
+
/** What to say, in the terms the drawing is in. */
|
|
19
|
+
children: ReactNode;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Why a panel is showing this instead of what it is for.
|
|
23
|
+
*
|
|
24
|
+
* A refusal, a limitation and a remark are told apart by colour rather than by
|
|
25
|
+
* wording, and they are told apart the same way in every panel — which is what
|
|
26
|
+
* this is for: eight places said the same thing in three spellings before.
|
|
27
|
+
* @param props - Component props.
|
|
28
|
+
* @returns The callout.
|
|
29
|
+
*/
|
|
30
|
+
export declare function PanelMessage(props: PanelMessageProps): import("react").JSX.Element;
|
|
31
|
+
export interface PanelEmptyProps {
|
|
32
|
+
/** What there is instead of the list, in a few words. */
|
|
33
|
+
children: ReactNode;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* The quiet line a panel shows in place of a list it has nothing to fill.
|
|
37
|
+
* @param props - Component props.
|
|
38
|
+
* @returns The line.
|
|
39
|
+
*/
|
|
40
|
+
export declare function PanelEmpty(props: PanelEmptyProps): import("react").JSX.Element;
|
|
41
|
+
//# sourceMappingURL=PanelMessage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PanelMessage.d.ts","sourceRoot":"","sources":["../../../src/panel/ui/PanelMessage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAElD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,4DAA4D;AAC5D,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE/D,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAC5B;;;;OAIG;IACH,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,mDAAmD;IACnD,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,+BAQpD;AAED,MAAM,WAAW,eAAe;IAC9B,yDAAyD;IACzD,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,+BAEhD"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Callout } from '@blueprintjs/core';
|
|
3
|
+
import { panelEmptyStyle } from "../core/panelStyles.js";
|
|
4
|
+
/**
|
|
5
|
+
* Why a panel is showing this instead of what it is for.
|
|
6
|
+
*
|
|
7
|
+
* A refusal, a limitation and a remark are told apart by colour rather than by
|
|
8
|
+
* wording, and they are told apart the same way in every panel — which is what
|
|
9
|
+
* this is for: eight places said the same thing in three spellings before.
|
|
10
|
+
* @param props - Component props.
|
|
11
|
+
* @returns The callout.
|
|
12
|
+
*/
|
|
13
|
+
export function PanelMessage(props) {
|
|
14
|
+
const { intent = 'warning', icon = INTENT_ICONS[intent], children } = props;
|
|
15
|
+
return (_jsx(Callout, { intent: intent, compact: true, icon: icon, children: children }));
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* The quiet line a panel shows in place of a list it has nothing to fill.
|
|
19
|
+
* @param props - Component props.
|
|
20
|
+
* @returns The line.
|
|
21
|
+
*/
|
|
22
|
+
export function PanelEmpty(props) {
|
|
23
|
+
return _jsx("div", { style: panelEmptyStyle, children: props.children });
|
|
24
|
+
}
|
|
25
|
+
const INTENT_ICONS = {
|
|
26
|
+
none: 'info-sign',
|
|
27
|
+
warning: 'warning-sign',
|
|
28
|
+
danger: 'error',
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=PanelMessage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PanelMessage.js","sourceRoot":"","sources":["../../../src/panel/ui/PanelMessage.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAG5C,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAsBzD;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAAC,KAAwB;IACnD,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,GAAG,YAAY,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAE5E,OAAO,CACL,KAAC,OAAO,IAAC,MAAM,EAAE,MAAM,EAAE,OAAO,QAAC,IAAI,EAAE,IAAI,YACxC,QAAQ,GACD,CACX,CAAC;AACJ,CAAC;AAOD;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,KAAsB;IAC/C,OAAO,cAAK,KAAK,EAAE,eAAe,YAAG,KAAK,CAAC,QAAQ,GAAO,CAAC;AAC7D,CAAC;AAED,MAAM,YAAY,GAAyC;IACzD,IAAI,EAAE,WAAW;IACjB,OAAO,EAAE,cAAc;IACvB,MAAM,EAAE,OAAO;CAChB,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The column of icons down the right edge, which opens and shuts the panels.
|
|
3
|
+
*
|
|
4
|
+
* Only the bar and its icons: each editor keeps the element it hangs the rail
|
|
5
|
+
* in, because where the rail sits — outside the split, so the icons stay against
|
|
6
|
+
* the edge while the panel beside them is resized — is a decision about that
|
|
7
|
+
* editor's layout rather than about the rail.
|
|
8
|
+
*/
|
|
9
|
+
import type { IconName, MaybeElement } from '@blueprintjs/core';
|
|
10
|
+
import type { ReactNode } from 'react';
|
|
11
|
+
/**
|
|
12
|
+
* One panel the rail can open.
|
|
13
|
+
*
|
|
14
|
+
* Generic in its own id, because each editor names its panels in a union of its
|
|
15
|
+
* own and hands the rail the very function that opens them — a rail that took
|
|
16
|
+
* plain strings would refuse every one of those functions.
|
|
17
|
+
*/
|
|
18
|
+
export interface RailPanel<TId extends string = string> {
|
|
19
|
+
/** Which panel, matching what the editor's state calls it. */
|
|
20
|
+
id: TId;
|
|
21
|
+
/** The Blueprint icon it is known by. */
|
|
22
|
+
icon: IconName | MaybeElement;
|
|
23
|
+
/** What the tooltip reads. */
|
|
24
|
+
title: string;
|
|
25
|
+
}
|
|
26
|
+
/** What the rail is given. */
|
|
27
|
+
export interface PanelRailProps<TId extends string = string> {
|
|
28
|
+
/** The panels offered, in the order they are shown. */
|
|
29
|
+
panels: ReadonlyArray<RailPanel<TId>>;
|
|
30
|
+
/** Which of them are open. */
|
|
31
|
+
openIds: readonly string[];
|
|
32
|
+
/** Called with the panel an icon was clicked for. */
|
|
33
|
+
onToggle: (id: TId) => void;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Draw the rail.
|
|
37
|
+
* @param props - The panels, which are open, and what to do about a click.
|
|
38
|
+
* @returns The rail.
|
|
39
|
+
*/
|
|
40
|
+
export declare function PanelRail<TId extends string>(props: PanelRailProps<TId>): ReactNode;
|
|
41
|
+
//# sourceMappingURL=PanelRail.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PanelRail.d.ts","sourceRoot":"","sources":["../../../src/panel/ui/PanelRail.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC;;;;;;GAMG;AACH,MAAM,WAAW,SAAS,CAAC,GAAG,SAAS,MAAM,GAAG,MAAM;IACpD,8DAA8D;IAC9D,EAAE,EAAE,GAAG,CAAC;IACR,yCAAyC;IACzC,IAAI,EAAE,QAAQ,GAAG,YAAY,CAAC;IAC9B,8BAA8B;IAC9B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,8BAA8B;AAC9B,MAAM,WAAW,cAAc,CAAC,GAAG,SAAS,MAAM,GAAG,MAAM;IACzD,uDAAuD;IACvD,MAAM,EAAE,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;IACtC,8BAA8B;IAC9B,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,qDAAqD;IACrD,QAAQ,EAAE,CAAC,EAAE,EAAE,GAAG,KAAK,IAAI,CAAC;CAC7B;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,GAAG,SAAS,MAAM,EAC1C,KAAK,EAAE,cAAc,CAAC,GAAG,CAAC,GACzB,SAAS,CAiBX"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { ActivityBar } from 'react-science/ui';
|
|
3
|
+
/**
|
|
4
|
+
* Draw the rail.
|
|
5
|
+
* @param props - The panels, which are open, and what to do about a click.
|
|
6
|
+
* @returns The rail.
|
|
7
|
+
*/
|
|
8
|
+
export function PanelRail(props) {
|
|
9
|
+
const { panels, openIds, onToggle } = props;
|
|
10
|
+
return (_jsx(ActivityBar, { children: panels.map((panel) => (_jsx(ActivityBar.Item, { id: panel.id, icon: panel.icon, tooltip: panel.title, active: openIds.includes(panel.id), onClick: () => onToggle(panel.id) }, panel.id))) }));
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=PanelRail.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PanelRail.js","sourceRoot":"","sources":["../../../src/panel/ui/PanelRail.tsx"],"names":[],"mappings":";AAWA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AA4B/C;;;;GAIG;AACH,MAAM,UAAU,SAAS,CACvB,KAA0B;IAE1B,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAE5C,OAAO,CACL,KAAC,WAAW,cACT,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CACrB,KAAC,WAAW,CAAC,IAAI,IAEf,EAAE,EAAE,KAAK,CAAC,EAAE,EACZ,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,OAAO,EAAE,KAAK,CAAC,KAAK,EACpB,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,EAClC,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,IAL5B,KAAK,CAAC,EAAE,CAMb,CACH,CAAC,GACU,CACf,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
export interface SectionProps {
|
|
3
|
+
/** What the block is about, written above it. */
|
|
4
|
+
title: string;
|
|
5
|
+
/** The block. */
|
|
6
|
+
children: ReactNode;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* One titled block of a dialog.
|
|
10
|
+
* @param props - Component props.
|
|
11
|
+
* @returns The section.
|
|
12
|
+
*/
|
|
13
|
+
export declare function Section(props: SectionProps): import("react").JSX.Element;
|
|
14
|
+
export interface LinkProps {
|
|
15
|
+
href: string;
|
|
16
|
+
children: ReactNode;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* A link out of a dialog, opened away from the editor so a drawing in progress
|
|
20
|
+
* or a spectrum being read is never lost to a click.
|
|
21
|
+
* @param props - Component props.
|
|
22
|
+
* @returns The link.
|
|
23
|
+
*/
|
|
24
|
+
export declare function Link(props: LinkProps): import("react").JSX.Element;
|
|
25
|
+
//# sourceMappingURL=Section.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Section.d.ts","sourceRoot":"","sources":["../../../src/panel/ui/Section.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,WAAW,YAAY;IAC3B,iDAAiD;IACjD,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB;IACjB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,YAAY,+BAQ1C;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED;;;;;GAKG;AACH,wBAAgB,IAAI,CAAC,KAAK,EAAE,SAAS,+BAOpC"}
|