@perses-dev/components 0.55.0-beta.1 → 0.55.0-beta.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AlignSelector/AlignSelector.d.ts +2 -2
- package/dist/AlignSelector/AlignSelector.d.ts.map +1 -1
- package/dist/AlignSelector/AlignSelector.js +2 -2
- package/dist/AlignSelector/AlignSelector.js.map +1 -1
- package/dist/AlignSelector/index.js +1 -1
- package/dist/AlignSelector/index.js.map +1 -1
- package/dist/ColorPicker/ColorPicker.d.ts +1 -1
- package/dist/ColorPicker/ColorPicker.d.ts.map +1 -1
- package/dist/ColorPicker/ColorPicker.js +5 -5
- package/dist/ColorPicker/ColorPicker.js.map +1 -1
- package/dist/ColorPicker/OptionsColorPicker.d.ts +1 -1
- package/dist/ColorPicker/OptionsColorPicker.d.ts.map +1 -1
- package/dist/ColorPicker/OptionsColorPicker.js +5 -5
- package/dist/ColorPicker/OptionsColorPicker.js.map +1 -1
- package/dist/ColorPicker/index.js +2 -2
- package/dist/ColorPicker/index.js.map +1 -1
- package/dist/ContentWithLegend/ContentWithLegend.d.ts +2 -2
- package/dist/ContentWithLegend/ContentWithLegend.d.ts.map +1 -1
- package/dist/ContentWithLegend/ContentWithLegend.js +5 -5
- package/dist/ContentWithLegend/ContentWithLegend.js.map +1 -1
- package/dist/ContentWithLegend/index.js +1 -1
- package/dist/ContentWithLegend/index.js.map +1 -1
- package/dist/ContentWithLegend/model/content-with-legend-model.d.ts +3 -4
- package/dist/ContentWithLegend/model/content-with-legend-model.d.ts.map +1 -1
- package/dist/ContentWithLegend/model/content-with-legend-model.js +2 -2
- package/dist/ContentWithLegend/model/content-with-legend-model.js.map +1 -1
- package/dist/DensitySelector/DensitySelector.d.ts +1 -1
- package/dist/DensitySelector/DensitySelector.d.ts.map +1 -1
- package/dist/DensitySelector/DensitySelector.js +2 -2
- package/dist/DensitySelector/DensitySelector.js.map +1 -1
- package/dist/DensitySelector/index.js +1 -1
- package/dist/DensitySelector/index.js.map +1 -1
- package/dist/Dialog/Dialog.d.ts +4 -3
- package/dist/Dialog/Dialog.d.ts.map +1 -1
- package/dist/Dialog/Dialog.js +3 -3
- package/dist/Dialog/Dialog.js.map +1 -1
- package/dist/Dialog/DiscardChangesConfirmationDialog.d.ts +1 -1
- package/dist/Dialog/DiscardChangesConfirmationDialog.d.ts.map +1 -1
- package/dist/Dialog/DiscardChangesConfirmationDialog.js +2 -2
- package/dist/Dialog/DiscardChangesConfirmationDialog.js.map +1 -1
- package/dist/Dialog/index.js +2 -2
- package/dist/Dialog/index.js.map +1 -1
- package/dist/DragAndDrop/DragAndDropList.d.ts +1 -1
- package/dist/DragAndDrop/DragAndDropList.d.ts.map +1 -1
- package/dist/DragAndDrop/DragAndDropList.js +8 -8
- package/dist/DragAndDrop/DragAndDropList.js.map +1 -1
- package/dist/DragAndDrop/DragButton.d.ts +1 -2
- package/dist/DragAndDrop/DragButton.d.ts.map +1 -1
- package/dist/DragAndDrop/DragButton.js +4 -4
- package/dist/DragAndDrop/DragButton.js.map +1 -1
- package/dist/DragAndDrop/DropIndicator.d.ts +1 -1
- package/dist/DragAndDrop/DropIndicator.d.ts.map +1 -1
- package/dist/DragAndDrop/DropIndicator.js +1 -1
- package/dist/DragAndDrop/DropIndicator.js.map +1 -1
- package/dist/DragAndDrop/index.js +3 -3
- package/dist/DragAndDrop/index.js.map +1 -1
- package/dist/DragAndDrop/model.d.ts +1 -1
- package/dist/DragAndDrop/model.d.ts.map +1 -1
- package/dist/DragAndDrop/model.js.map +1 -1
- package/dist/Drawer/Drawer.d.ts +2 -2
- package/dist/Drawer/Drawer.d.ts.map +1 -1
- package/dist/Drawer/Drawer.js +3 -3
- package/dist/Drawer/Drawer.js.map +1 -1
- package/dist/Drawer/index.js +1 -1
- package/dist/Drawer/index.js.map +1 -1
- package/dist/EChart/EChart.d.ts +7 -7
- package/dist/EChart/EChart.d.ts.map +1 -1
- package/dist/EChart/EChart.js +10 -10
- package/dist/EChart/EChart.js.map +1 -1
- package/dist/EChart/index.js +2 -2
- package/dist/EChart/index.js.map +1 -1
- package/dist/EChart/timezone-formatter.js +1 -1
- package/dist/ErrorAlert.d.ts +1 -1
- package/dist/ErrorAlert.d.ts.map +1 -1
- package/dist/ErrorAlert.js +1 -1
- package/dist/ErrorAlert.js.map +1 -1
- package/dist/ErrorBoundary.js +1 -1
- package/dist/ExemplarMetadata/ExemplarMetadataTooltip.d.ts +27 -0
- package/dist/ExemplarMetadata/ExemplarMetadataTooltip.d.ts.map +1 -0
- package/dist/ExemplarMetadata/ExemplarMetadataTooltip.js +239 -0
- package/dist/ExemplarMetadata/ExemplarMetadataTooltip.js.map +1 -0
- package/dist/ExemplarMetadata/index.d.ts +2 -0
- package/dist/ExemplarMetadata/index.d.ts.map +1 -0
- package/dist/{cjs/model/thresholds.js → ExemplarMetadata/index.js} +3 -5
- package/dist/ExemplarMetadata/index.js.map +1 -0
- package/dist/FontSizeSelector/FontSizeSelector.d.ts +1 -1
- package/dist/FontSizeSelector/FontSizeSelector.d.ts.map +1 -1
- package/dist/FontSizeSelector/FontSizeSelector.js +2 -2
- package/dist/FontSizeSelector/FontSizeSelector.js.map +1 -1
- package/dist/FontSizeSelector/index.js +1 -1
- package/dist/FontSizeSelector/index.js.map +1 -1
- package/dist/FormEditor/FormActions.d.ts +3 -3
- package/dist/FormEditor/FormActions.d.ts.map +1 -1
- package/dist/FormEditor/FormActions.js +2 -2
- package/dist/FormEditor/FormActions.js.map +1 -1
- package/dist/FormEditor/index.js +1 -1
- package/dist/FormEditor/index.js.map +1 -1
- package/dist/FormatControls/FormatControls.d.ts +2 -2
- package/dist/FormatControls/FormatControls.d.ts.map +1 -1
- package/dist/FormatControls/FormatControls.js +6 -6
- package/dist/FormatControls/FormatControls.js.map +1 -1
- package/dist/FormatControls/UnitSelector.d.ts +2 -2
- package/dist/FormatControls/UnitSelector.d.ts.map +1 -1
- package/dist/FormatControls/UnitSelector.js +35 -6
- package/dist/FormatControls/UnitSelector.js.map +1 -1
- package/dist/FormatControls/index.js +2 -2
- package/dist/FormatControls/index.js.map +1 -1
- package/dist/InfoTooltip/InfoTooltip.d.ts +1 -1
- package/dist/InfoTooltip/InfoTooltip.d.ts.map +1 -1
- package/dist/InfoTooltip/InfoTooltip.js +1 -1
- package/dist/InfoTooltip/InfoTooltip.js.map +1 -1
- package/dist/InfoTooltip/index.js +1 -1
- package/dist/InfoTooltip/index.js.map +1 -1
- package/dist/JSONEditor.d.ts +2 -2
- package/dist/JSONEditor.d.ts.map +1 -1
- package/dist/JSONEditor.js +5 -5
- package/dist/JSONEditor.js.map +1 -1
- package/dist/Legend/CompactLegend.d.ts +3 -3
- package/dist/Legend/CompactLegend.d.ts.map +1 -1
- package/dist/Legend/CompactLegend.js +3 -3
- package/dist/Legend/CompactLegend.js.map +1 -1
- package/dist/Legend/Legend.d.ts +4 -4
- package/dist/Legend/Legend.d.ts.map +1 -1
- package/dist/Legend/Legend.js +6 -6
- package/dist/Legend/Legend.js.map +1 -1
- package/dist/Legend/LegendColorBadge.d.ts +3 -3
- package/dist/Legend/LegendColorBadge.d.ts.map +1 -1
- package/dist/Legend/LegendColorBadge.js +4 -4
- package/dist/Legend/LegendColorBadge.js.map +1 -1
- package/dist/Legend/ListLegend.d.ts +3 -3
- package/dist/Legend/ListLegend.d.ts.map +1 -1
- package/dist/Legend/ListLegend.js +7 -6
- package/dist/Legend/ListLegend.js.map +1 -1
- package/dist/Legend/ListLegendItem.d.ts +3 -3
- package/dist/Legend/ListLegendItem.d.ts.map +1 -1
- package/dist/Legend/ListLegendItem.js +8 -7
- package/dist/Legend/ListLegendItem.js.map +1 -1
- package/dist/Legend/TableLegend.d.ts +3 -3
- package/dist/Legend/TableLegend.d.ts.map +1 -1
- package/dist/Legend/TableLegend.js +3 -3
- package/dist/Legend/TableLegend.js.map +1 -1
- package/dist/Legend/index.js +2 -2
- package/dist/Legend/index.js.map +1 -1
- package/dist/Legend/legend-model.d.ts +2 -2
- package/dist/Legend/legend-model.d.ts.map +1 -1
- package/dist/Legend/legend-model.js.map +1 -1
- package/dist/LinksEditor/LinkEditorForm.d.ts +1 -1
- package/dist/LinksEditor/LinkEditorForm.d.ts.map +1 -1
- package/dist/LinksEditor/LinkEditorForm.js +2 -2
- package/dist/LinksEditor/LinkEditorForm.js.map +1 -1
- package/dist/LinksEditor/index.js +1 -1
- package/dist/LinksEditor/index.js.map +1 -1
- package/dist/ModeSelector/ModeSelector.d.ts +1 -1
- package/dist/ModeSelector/ModeSelector.d.ts.map +1 -1
- package/dist/ModeSelector/ModeSelector.js +2 -2
- package/dist/ModeSelector/ModeSelector.js.map +1 -1
- package/dist/ModeSelector/index.js +1 -1
- package/dist/ModeSelector/index.js.map +1 -1
- package/dist/OptionsEditorLayout/OptionsEditorColumn.d.ts +1 -1
- package/dist/OptionsEditorLayout/OptionsEditorColumn.d.ts.map +1 -1
- package/dist/OptionsEditorLayout/OptionsEditorColumn.js +1 -1
- package/dist/OptionsEditorLayout/OptionsEditorColumn.js.map +1 -1
- package/dist/OptionsEditorLayout/OptionsEditorControl.d.ts +2 -2
- package/dist/OptionsEditorLayout/OptionsEditorControl.d.ts.map +1 -1
- package/dist/OptionsEditorLayout/OptionsEditorControl.js +6 -6
- package/dist/OptionsEditorLayout/OptionsEditorControl.js.map +1 -1
- package/dist/OptionsEditorLayout/OptionsEditorGrid.d.ts +1 -1
- package/dist/OptionsEditorLayout/OptionsEditorGrid.d.ts.map +1 -1
- package/dist/OptionsEditorLayout/OptionsEditorGrid.js +1 -1
- package/dist/OptionsEditorLayout/OptionsEditorGrid.js.map +1 -1
- package/dist/OptionsEditorLayout/OptionsEditorGroup.d.ts +2 -1
- package/dist/OptionsEditorLayout/OptionsEditorGroup.d.ts.map +1 -1
- package/dist/OptionsEditorLayout/OptionsEditorGroup.js +2 -2
- package/dist/OptionsEditorLayout/OptionsEditorGroup.js.map +1 -1
- package/dist/OptionsEditorLayout/index.js +4 -4
- package/dist/OptionsEditorLayout/index.js.map +1 -1
- package/dist/Overlay/Overlay.d.ts +2 -2
- package/dist/Overlay/Overlay.d.ts.map +1 -1
- package/dist/Overlay/Overlay.js +2 -2
- package/dist/Overlay/Overlay.js.map +1 -1
- package/dist/Overlay/index.js +1 -1
- package/dist/Overlay/index.js.map +1 -1
- package/dist/RefreshIntervalPicker/RefreshIntervalPicker.d.ts +3 -3
- package/dist/RefreshIntervalPicker/RefreshIntervalPicker.d.ts.map +1 -1
- package/dist/RefreshIntervalPicker/RefreshIntervalPicker.js +2 -2
- package/dist/RefreshIntervalPicker/RefreshIntervalPicker.js.map +1 -1
- package/dist/RefreshIntervalPicker/index.js +1 -1
- package/dist/RefreshIntervalPicker/index.js.map +1 -1
- package/dist/RepeatGrid/RepeatGrid.d.ts +15 -0
- package/dist/RepeatGrid/RepeatGrid.d.ts.map +1 -0
- package/dist/RepeatGrid/RepeatGrid.js +68 -0
- package/dist/RepeatGrid/RepeatGrid.js.map +1 -0
- package/dist/RepeatGrid/index.d.ts +2 -0
- package/dist/RepeatGrid/index.d.ts.map +1 -0
- package/dist/{cjs/model/types.js → RepeatGrid/index.js} +3 -4
- package/dist/RepeatGrid/index.js.map +1 -0
- package/dist/SettingsAutocomplete/SettingsAutocomplete.d.ts +2 -2
- package/dist/SettingsAutocomplete/SettingsAutocomplete.d.ts.map +1 -1
- package/dist/SettingsAutocomplete/SettingsAutocomplete.js +2 -2
- package/dist/SettingsAutocomplete/SettingsAutocomplete.js.map +1 -1
- package/dist/SettingsAutocomplete/index.js +1 -1
- package/dist/SettingsAutocomplete/index.js.map +1 -1
- package/dist/SortSelector/SortSelector.d.ts +1 -1
- package/dist/SortSelector/SortSelector.d.ts.map +1 -1
- package/dist/SortSelector/SortSelector.js +2 -2
- package/dist/SortSelector/SortSelector.js.map +1 -1
- package/dist/SortSelector/SortSelectorButtons.d.ts +3 -3
- package/dist/SortSelector/SortSelectorButtons.d.ts.map +1 -1
- package/dist/SortSelector/SortSelectorButtons.js +2 -2
- package/dist/SortSelector/SortSelectorButtons.js.map +1 -1
- package/dist/SortSelector/index.js +2 -2
- package/dist/SortSelector/index.js.map +1 -1
- package/dist/Table/InnerTable.d.ts +2 -3
- package/dist/Table/InnerTable.d.ts.map +1 -1
- package/dist/Table/InnerTable.js +3 -3
- package/dist/Table/InnerTable.js.map +1 -1
- package/dist/Table/Table.d.ts +2 -2
- package/dist/Table/Table.d.ts.map +1 -1
- package/dist/Table/Table.js +7 -7
- package/dist/Table/Table.js.map +1 -1
- package/dist/Table/TableBody.d.ts +1 -2
- package/dist/Table/TableBody.d.ts.map +1 -1
- package/dist/Table/TableBody.js +3 -3
- package/dist/Table/TableBody.js.map +1 -1
- package/dist/Table/TableCell.d.ts +3 -3
- package/dist/Table/TableCell.d.ts.map +1 -1
- package/dist/Table/TableCell.js +5 -5
- package/dist/Table/TableCell.js.map +1 -1
- package/dist/Table/TableCheckbox.d.ts +3 -3
- package/dist/Table/TableCheckbox.d.ts.map +1 -1
- package/dist/Table/TableCheckbox.js +2 -2
- package/dist/Table/TableCheckbox.js.map +1 -1
- package/dist/Table/TableFoot.d.ts +1 -2
- package/dist/Table/TableFoot.d.ts.map +1 -1
- package/dist/Table/TableFoot.js +3 -3
- package/dist/Table/TableFoot.js.map +1 -1
- package/dist/Table/TableHead.d.ts +1 -2
- package/dist/Table/TableHead.d.ts.map +1 -1
- package/dist/Table/TableHead.js +3 -3
- package/dist/Table/TableHead.js.map +1 -1
- package/dist/Table/TableHeaderCell.d.ts +3 -3
- package/dist/Table/TableHeaderCell.d.ts.map +1 -1
- package/dist/Table/TableHeaderCell.js +2 -2
- package/dist/Table/TableHeaderCell.js.map +1 -1
- package/dist/Table/TableRow.d.ts +2 -3
- package/dist/Table/TableRow.d.ts.map +1 -1
- package/dist/Table/TableRow.js +3 -3
- package/dist/Table/TableRow.js.map +1 -1
- package/dist/Table/TableToolbar.d.ts +2 -2
- package/dist/Table/TableToolbar.d.ts.map +1 -1
- package/dist/Table/TableToolbar.js +8 -8
- package/dist/Table/TableToolbar.js.map +1 -1
- package/dist/Table/VirtualizedTable.d.ts +4 -4
- package/dist/Table/VirtualizedTable.d.ts.map +1 -1
- package/dist/Table/VirtualizedTable.js +14 -14
- package/dist/Table/VirtualizedTable.js.map +1 -1
- package/dist/Table/VirtualizedTableContainer.d.ts +1 -2
- package/dist/Table/VirtualizedTableContainer.d.ts.map +1 -1
- package/dist/Table/VirtualizedTableContainer.js +4 -4
- package/dist/Table/VirtualizedTableContainer.js.map +1 -1
- package/dist/Table/hooks/useFuzzySearch.d.ts +3 -3
- package/dist/Table/hooks/useFuzzySearch.d.ts.map +1 -1
- package/dist/Table/hooks/useFuzzySearch.js +3 -3
- package/dist/Table/hooks/useFuzzySearch.js.map +1 -1
- package/dist/Table/hooks/useTableKeyboardNav.d.ts +1 -1
- package/dist/Table/hooks/useTableKeyboardNav.d.ts.map +1 -1
- package/dist/Table/hooks/useTableKeyboardNav.js +4 -4
- package/dist/Table/hooks/useTableKeyboardNav.js.map +1 -1
- package/dist/Table/hooks/useVirtualizedTableKeyboardNav.d.ts +3 -3
- package/dist/Table/hooks/useVirtualizedTableKeyboardNav.d.ts.map +1 -1
- package/dist/Table/hooks/useVirtualizedTableKeyboardNav.js +1 -1
- package/dist/Table/hooks/useVirtualizedTableKeyboardNav.js.map +1 -1
- package/dist/Table/index.js +2 -2
- package/dist/Table/index.js.map +1 -1
- package/dist/Table/model/table-model.d.ts +5 -5
- package/dist/Table/model/table-model.d.ts.map +1 -1
- package/dist/Table/model/table-model.js.map +1 -1
- package/dist/ThresholdsEditor/ThresholdInput.d.ts +2 -2
- package/dist/ThresholdsEditor/ThresholdInput.d.ts.map +1 -1
- package/dist/ThresholdsEditor/ThresholdInput.js +4 -4
- package/dist/ThresholdsEditor/ThresholdInput.js.map +1 -1
- package/dist/ThresholdsEditor/ThresholdsEditor.d.ts +2 -2
- package/dist/ThresholdsEditor/ThresholdsEditor.d.ts.map +1 -1
- package/dist/ThresholdsEditor/ThresholdsEditor.js +11 -11
- package/dist/ThresholdsEditor/ThresholdsEditor.js.map +1 -1
- package/dist/ThresholdsEditor/index.js +1 -1
- package/dist/ThresholdsEditor/index.js.map +1 -1
- package/dist/TimeRangeSelector/DateTimeRangePicker.d.ts +2 -2
- package/dist/TimeRangeSelector/DateTimeRangePicker.d.ts.map +1 -1
- package/dist/TimeRangeSelector/DateTimeRangePicker.js +8 -8
- package/dist/TimeRangeSelector/DateTimeRangePicker.js.map +1 -1
- package/dist/TimeRangeSelector/TimeRangeSelector.d.ts +4 -4
- package/dist/TimeRangeSelector/TimeRangeSelector.d.ts.map +1 -1
- package/dist/TimeRangeSelector/TimeRangeSelector.js +12 -19
- package/dist/TimeRangeSelector/TimeRangeSelector.js.map +1 -1
- package/dist/TimeRangeSelector/index.js +2 -2
- package/dist/TimeRangeSelector/index.js.map +1 -1
- package/dist/TimeRangeSelector/utils.d.ts +1 -1
- package/dist/TimeRangeSelector/utils.d.ts.map +1 -1
- package/dist/TimeRangeSelector/utils.js +3 -3
- package/dist/TimeRangeSelector/utils.js.map +1 -1
- package/dist/TimeSeriesTooltip/SeriesInfo.d.ts +1 -1
- package/dist/TimeSeriesTooltip/SeriesInfo.d.ts.map +1 -1
- package/dist/TimeSeriesTooltip/SeriesInfo.js +4 -4
- package/dist/TimeSeriesTooltip/SeriesInfo.js.map +1 -1
- package/dist/TimeSeriesTooltip/SeriesLabelsStack.d.ts +1 -1
- package/dist/TimeSeriesTooltip/SeriesLabelsStack.d.ts.map +1 -1
- package/dist/TimeSeriesTooltip/SeriesLabelsStack.js +2 -2
- package/dist/TimeSeriesTooltip/SeriesLabelsStack.js.map +1 -1
- package/dist/TimeSeriesTooltip/SeriesMarker.d.ts +2 -2
- package/dist/TimeSeriesTooltip/SeriesMarker.d.ts.map +1 -1
- package/dist/TimeSeriesTooltip/SeriesMarker.js +3 -3
- package/dist/TimeSeriesTooltip/SeriesMarker.js.map +1 -1
- package/dist/TimeSeriesTooltip/TimeChartTooltip.d.ts +6 -6
- package/dist/TimeSeriesTooltip/TimeChartTooltip.d.ts.map +1 -1
- package/dist/TimeSeriesTooltip/TimeChartTooltip.js +8 -8
- package/dist/TimeSeriesTooltip/TimeChartTooltip.js.map +1 -1
- package/dist/TimeSeriesTooltip/TooltipContent.d.ts +2 -2
- package/dist/TimeSeriesTooltip/TooltipContent.d.ts.map +1 -1
- package/dist/TimeSeriesTooltip/TooltipContent.js +4 -4
- package/dist/TimeSeriesTooltip/TooltipContent.js.map +1 -1
- package/dist/TimeSeriesTooltip/TooltipHeader.d.ts +2 -3
- package/dist/TimeSeriesTooltip/TooltipHeader.d.ts.map +1 -1
- package/dist/TimeSeriesTooltip/TooltipHeader.js +6 -6
- package/dist/TimeSeriesTooltip/TooltipHeader.js.map +1 -1
- package/dist/TimeSeriesTooltip/index.js +10 -10
- package/dist/TimeSeriesTooltip/index.js.map +1 -1
- package/dist/TimeSeriesTooltip/nearby-series.d.ts +5 -5
- package/dist/TimeSeriesTooltip/nearby-series.d.ts.map +1 -1
- package/dist/TimeSeriesTooltip/nearby-series.js +5 -5
- package/dist/TimeSeriesTooltip/nearby-series.js.map +1 -1
- package/dist/TimeSeriesTooltip/tooltip-model.d.ts +1 -1
- package/dist/TimeSeriesTooltip/tooltip-model.d.ts.map +1 -1
- package/dist/TimeSeriesTooltip/tooltip-model.js +1 -1
- package/dist/TimeSeriesTooltip/tooltip-model.js.map +1 -1
- package/dist/TimeSeriesTooltip/utils.d.ts +4 -4
- package/dist/TimeSeriesTooltip/utils.d.ts.map +1 -1
- package/dist/TimeSeriesTooltip/utils.js +1 -1
- package/dist/TimeSeriesTooltip/utils.js.map +1 -1
- package/dist/TimeZoneSelector.d.ts +3 -3
- package/dist/TimeZoneSelector.d.ts.map +1 -1
- package/dist/TimeZoneSelector.js +8 -5
- package/dist/TimeZoneSelector.js.map +1 -1
- package/dist/ToolbarIconButton/ToolbarIconButton.d.ts +1 -2
- package/dist/ToolbarIconButton/ToolbarIconButton.d.ts.map +1 -1
- package/dist/ToolbarIconButton/ToolbarIconButton.js +3 -3
- package/dist/ToolbarIconButton/ToolbarIconButton.js.map +1 -1
- package/dist/ToolbarIconButton/index.js +1 -1
- package/dist/ToolbarIconButton/index.js.map +1 -1
- package/dist/TransformsEditor/TransformEditor.d.ts +3 -3
- package/dist/TransformsEditor/TransformEditor.d.ts.map +1 -1
- package/dist/TransformsEditor/TransformEditor.js +92 -3
- package/dist/TransformsEditor/TransformEditor.js.map +1 -1
- package/dist/TransformsEditor/TransformEditorContainer.d.ts +2 -2
- package/dist/TransformsEditor/TransformEditorContainer.d.ts.map +1 -1
- package/dist/TransformsEditor/TransformEditorContainer.js +8 -8
- package/dist/TransformsEditor/TransformEditorContainer.js.map +1 -1
- package/dist/TransformsEditor/TransformsEditor.d.ts +3 -3
- package/dist/TransformsEditor/TransformsEditor.d.ts.map +1 -1
- package/dist/TransformsEditor/TransformsEditor.js +5 -5
- package/dist/TransformsEditor/TransformsEditor.js.map +1 -1
- package/dist/TransformsEditor/index.js +1 -1
- package/dist/TransformsEditor/index.js.map +1 -1
- package/dist/ValueMappingEditor/ValueMappingEditor.d.ts +3 -3
- package/dist/ValueMappingEditor/ValueMappingEditor.d.ts.map +1 -1
- package/dist/ValueMappingEditor/ValueMappingEditor.js +5 -5
- package/dist/ValueMappingEditor/ValueMappingEditor.js.map +1 -1
- package/dist/ValueMappingEditor/ValueMappingsEditor.d.ts +2 -2
- package/dist/ValueMappingEditor/ValueMappingsEditor.d.ts.map +1 -1
- package/dist/ValueMappingEditor/ValueMappingsEditor.js +4 -4
- package/dist/ValueMappingEditor/ValueMappingsEditor.js.map +1 -1
- package/dist/ValueMappingEditor/index.js +1 -1
- package/dist/ValueMappingEditor/index.js.map +1 -1
- package/dist/YAxisLabel.d.ts +1 -1
- package/dist/YAxisLabel.d.ts.map +1 -1
- package/dist/YAxisLabel.js +1 -1
- package/dist/YAxisLabel.js.map +1 -1
- package/dist/context/ChartsProvider.d.ts +4 -3
- package/dist/context/ChartsProvider.d.ts.map +1 -1
- package/dist/context/ChartsProvider.js +2 -2
- package/dist/context/ChartsProvider.js.map +1 -1
- package/dist/context/ItemActionsProvider.d.ts +1 -1
- package/dist/context/ItemActionsProvider.d.ts.map +1 -1
- package/dist/context/ItemActionsProvider.js +2 -2
- package/dist/context/ItemActionsProvider.js.map +1 -1
- package/dist/context/SelectionProvider.d.ts +1 -1
- package/dist/context/SelectionProvider.d.ts.map +1 -1
- package/dist/context/SelectionProvider.js +2 -2
- package/dist/context/SelectionProvider.js.map +1 -1
- package/dist/context/SnackbarProvider.d.ts +2 -1
- package/dist/context/SnackbarProvider.d.ts.map +1 -1
- package/dist/context/SnackbarProvider.js +3 -3
- package/dist/context/SnackbarProvider.js.map +1 -1
- package/dist/context/TimeZoneProvider.d.ts +2 -1
- package/dist/context/TimeZoneProvider.d.ts.map +1 -1
- package/dist/context/TimeZoneProvider.js +3 -3
- package/dist/context/TimeZoneProvider.js.map +1 -1
- package/dist/context/index.js +5 -5
- package/dist/context/index.js.map +1 -1
- package/dist/controls/TextField.d.ts +1 -2
- package/dist/controls/TextField.d.ts.map +1 -1
- package/dist/controls/TextField.js +4 -4
- package/dist/controls/TextField.js.map +1 -1
- package/dist/controls/index.js +1 -1
- package/dist/controls/index.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +40 -38
- package/dist/index.js.map +1 -1
- package/dist/model/action.d.ts +1 -1
- package/dist/model/action.d.ts.map +1 -1
- package/dist/model/action.js.map +1 -1
- package/dist/model/bits.d.ts +1 -1
- package/dist/model/bits.d.ts.map +1 -1
- package/dist/model/bits.js +4 -4
- package/dist/model/bits.js.map +1 -1
- package/dist/model/bytes.d.ts +1 -1
- package/dist/model/bytes.d.ts.map +1 -1
- package/dist/model/bytes.js +4 -4
- package/dist/model/bytes.js.map +1 -1
- package/dist/model/currency.d.ts +1 -1
- package/dist/model/currency.d.ts.map +1 -1
- package/dist/model/currency.js +4 -4
- package/dist/model/currency.js.map +1 -1
- package/dist/model/date.d.ts +1 -1
- package/dist/model/date.d.ts.map +1 -1
- package/dist/model/date.js.map +1 -1
- package/dist/model/decimal.d.ts +1 -1
- package/dist/model/decimal.d.ts.map +1 -1
- package/dist/model/decimal.js +3 -3
- package/dist/model/decimal.js.map +1 -1
- package/dist/model/formatterCache.js.map +1 -1
- package/dist/model/graph.d.ts +3 -3
- package/dist/model/graph.d.ts.map +1 -1
- package/dist/model/graph.js.map +1 -1
- package/dist/model/index.js +21 -21
- package/dist/model/index.js.map +1 -1
- package/dist/model/legend.d.ts +3 -3
- package/dist/model/legend.d.ts.map +1 -1
- package/dist/model/percent.d.ts +1 -1
- package/dist/model/percent.d.ts.map +1 -1
- package/dist/model/percent.js +3 -3
- package/dist/model/percent.js.map +1 -1
- package/dist/model/temperature.d.ts +1 -1
- package/dist/model/temperature.d.ts.map +1 -1
- package/dist/model/temperature.js +3 -3
- package/dist/model/temperature.js.map +1 -1
- package/dist/model/theme.d.ts +1 -1
- package/dist/model/theme.d.ts.map +1 -1
- package/dist/model/theme.js.map +1 -1
- package/dist/model/throughput.d.ts +1 -1
- package/dist/model/throughput.d.ts.map +1 -1
- package/dist/model/throughput.js +5 -5
- package/dist/model/throughput.js.map +1 -1
- package/dist/model/time.d.ts +1 -1
- package/dist/model/time.d.ts.map +1 -1
- package/dist/model/time.js +3 -3
- package/dist/model/time.js.map +1 -1
- package/dist/model/timeOption.d.ts +1 -1
- package/dist/model/timeOption.d.ts.map +1 -1
- package/dist/model/timeOption.js +2 -2
- package/dist/model/timeOption.js.map +1 -1
- package/dist/model/transforms.d.ts +22 -1
- package/dist/model/transforms.d.ts.map +1 -1
- package/dist/model/transforms.js +2 -1
- package/dist/model/transforms.js.map +1 -1
- package/dist/model/types.d.ts +3 -3
- package/dist/model/types.d.ts.map +1 -1
- package/dist/model/types.js.map +1 -1
- package/dist/model/units.d.ts +51 -51
- package/dist/model/units.d.ts.map +1 -1
- package/dist/model/units.js +9 -9
- package/dist/model/units.js.map +1 -1
- package/dist/test/index.js +1 -1
- package/dist/test/index.js.map +1 -1
- package/dist/test/render.d.ts +2 -2
- package/dist/test/render.d.ts.map +1 -1
- package/dist/test/render.js +2 -2
- package/dist/test/render.js.map +1 -1
- package/dist/test/setup-tests.d.ts +1 -1
- package/dist/test/setup-tests.d.ts.map +1 -1
- package/dist/test/setup-tests.js +3 -2
- package/dist/test/setup-tests.js.map +1 -1
- package/dist/test-utils/index.js +1 -1
- package/dist/test-utils/index.js.map +1 -1
- package/dist/test-utils/theme.d.ts +2 -2
- package/dist/test-utils/theme.d.ts.map +1 -1
- package/dist/test-utils/theme.js +2 -2
- package/dist/test-utils/theme.js.map +1 -1
- package/dist/theme/component-overrides/alert.d.ts +1 -1
- package/dist/theme/component-overrides/alert.d.ts.map +1 -1
- package/dist/theme/component-overrides/alert.js +1 -1
- package/dist/theme/component-overrides/alert.js.map +1 -1
- package/dist/theme/component-overrides/paper.d.ts +1 -1
- package/dist/theme/component-overrides/paper.d.ts.map +1 -1
- package/dist/theme/component-overrides/paper.js.map +1 -1
- package/dist/theme/index.d.ts +1 -1
- package/dist/theme/index.d.ts.map +1 -1
- package/dist/theme/index.js +2 -2
- package/dist/theme/index.js.map +1 -1
- package/dist/theme/palette/background.d.ts +1 -1
- package/dist/theme/palette/background.d.ts.map +1 -1
- package/dist/theme/palette/background.js +1 -1
- package/dist/theme/palette/background.js.map +1 -1
- package/dist/theme/palette/colors/blue.d.ts +1 -1
- package/dist/theme/palette/colors/blue.d.ts.map +1 -1
- package/dist/theme/palette/colors/blue.js.map +1 -1
- package/dist/theme/palette/colors/green.d.ts +1 -1
- package/dist/theme/palette/colors/green.d.ts.map +1 -1
- package/dist/theme/palette/colors/green.js.map +1 -1
- package/dist/theme/palette/colors/grey.d.ts +1 -1
- package/dist/theme/palette/colors/grey.d.ts.map +1 -1
- package/dist/theme/palette/colors/grey.js.map +1 -1
- package/dist/theme/palette/colors/index.js +8 -8
- package/dist/theme/palette/colors/index.js.map +1 -1
- package/dist/theme/palette/colors/orange.d.ts +1 -1
- package/dist/theme/palette/colors/orange.d.ts.map +1 -1
- package/dist/theme/palette/colors/orange.js.map +1 -1
- package/dist/theme/palette/colors/purple.d.ts +1 -1
- package/dist/theme/palette/colors/purple.d.ts.map +1 -1
- package/dist/theme/palette/colors/purple.js.map +1 -1
- package/dist/theme/palette/colors/red.d.ts +1 -1
- package/dist/theme/palette/colors/red.d.ts.map +1 -1
- package/dist/theme/palette/colors/red.js.map +1 -1
- package/dist/theme/palette/error.d.ts +1 -1
- package/dist/theme/palette/error.d.ts.map +1 -1
- package/dist/theme/palette/error.js +1 -1
- package/dist/theme/palette/error.js.map +1 -1
- package/dist/theme/palette/grey.d.ts +1 -1
- package/dist/theme/palette/grey.d.ts.map +1 -1
- package/dist/theme/palette/grey.js +1 -1
- package/dist/theme/palette/grey.js.map +1 -1
- package/dist/theme/palette/index.js +1 -1
- package/dist/theme/palette/index.js.map +1 -1
- package/dist/theme/palette/palette-options.d.ts +1 -1
- package/dist/theme/palette/palette-options.d.ts.map +1 -1
- package/dist/theme/palette/palette-options.js +10 -10
- package/dist/theme/palette/palette-options.js.map +1 -1
- package/dist/theme/palette/primary.d.ts +1 -1
- package/dist/theme/palette/primary.d.ts.map +1 -1
- package/dist/theme/palette/primary.js +1 -1
- package/dist/theme/palette/primary.js.map +1 -1
- package/dist/theme/palette/secondary.d.ts +1 -1
- package/dist/theme/palette/secondary.d.ts.map +1 -1
- package/dist/theme/palette/secondary.js +1 -1
- package/dist/theme/palette/secondary.js.map +1 -1
- package/dist/theme/palette/success.d.ts +1 -1
- package/dist/theme/palette/success.d.ts.map +1 -1
- package/dist/theme/palette/success.js +1 -1
- package/dist/theme/palette/success.js.map +1 -1
- package/dist/theme/palette/text.d.ts +1 -1
- package/dist/theme/palette/text.d.ts.map +1 -1
- package/dist/theme/palette/text.js +1 -1
- package/dist/theme/palette/text.js.map +1 -1
- package/dist/theme/palette/warning.d.ts +1 -1
- package/dist/theme/palette/warning.d.ts.map +1 -1
- package/dist/theme/palette/warning.js +1 -1
- package/dist/theme/palette/warning.js.map +1 -1
- package/dist/theme/theme.d.ts +2 -1
- package/dist/theme/theme.d.ts.map +1 -1
- package/dist/theme/theme.js +5 -5
- package/dist/theme/theme.js.map +1 -1
- package/dist/theme/types/ThemeExtension.d.js +2 -1
- package/dist/theme/types/ThemeExtension.d.js.map +1 -1
- package/dist/{cjs/model/theme.js → theme/types/fonts.d.js} +2 -4
- package/dist/theme/types/fonts.d.js.map +1 -0
- package/dist/theme/typography.d.ts +1 -1
- package/dist/theme/typography.d.ts.map +1 -1
- package/dist/theme/typography.js +6 -6
- package/dist/theme/typography.js.map +1 -1
- package/dist/utils/axis.d.ts +1 -1
- package/dist/utils/axis.d.ts.map +1 -1
- package/dist/utils/axis.js +2 -2
- package/dist/utils/axis.js.map +1 -1
- package/dist/utils/browser-storage.js +1 -1
- package/dist/utils/browser-storage.js.map +1 -1
- package/dist/utils/chart-actions.d.ts +3 -3
- package/dist/utils/chart-actions.d.ts.map +1 -1
- package/dist/utils/chart-actions.js +1 -1
- package/dist/utils/chart-actions.js.map +1 -1
- package/dist/utils/combine-sx.d.ts +1 -1
- package/dist/utils/combine-sx.d.ts.map +1 -1
- package/dist/utils/combine-sx.js.map +1 -1
- package/dist/utils/component-ids.js +1 -1
- package/dist/utils/data-field-interpolation.js +1 -1
- package/dist/utils/data-field-interpolation.js.map +1 -1
- package/dist/utils/format.js +8 -3
- package/dist/utils/format.js.map +1 -1
- package/dist/utils/index.js +19 -19
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/mathjs.d.ts +1 -1
- package/dist/utils/mathjs.js +1 -1
- package/dist/utils/memo.d.ts +1 -1
- package/dist/utils/memo.d.ts.map +1 -1
- package/dist/utils/memo.js +2 -2
- package/dist/utils/memo.js.map +1 -1
- package/dist/utils/regexp.js +3 -1
- package/dist/utils/regexp.js.map +1 -1
- package/dist/utils/request-interpolation.d.ts +2 -2
- package/dist/utils/request-interpolation.d.ts.map +1 -1
- package/dist/utils/request-interpolation.js +2 -2
- package/dist/utils/request-interpolation.js.map +1 -1
- package/dist/utils/selection-interpolation.d.ts +2 -2
- package/dist/utils/selection-interpolation.d.ts.map +1 -1
- package/dist/utils/selection-interpolation.js +2 -2
- package/dist/utils/selection-interpolation.js.map +1 -1
- package/dist/utils/text.d.ts +1 -1
- package/dist/utils/text.d.ts.map +1 -1
- package/dist/utils/text.js.map +1 -1
- package/dist/utils/theme-gen.d.ts +2 -2
- package/dist/utils/theme-gen.d.ts.map +1 -1
- package/dist/utils/theme-gen.js +1 -1
- package/dist/utils/theme-gen.js.map +1 -1
- package/dist/utils/time-series-data.d.ts +1 -1
- package/dist/utils/time-series-data.d.ts.map +1 -1
- package/dist/utils/time-series-data.js +1 -1
- package/dist/utils/time-series-data.js.map +1 -1
- package/dist/utils/trace-data.d.ts +2 -2
- package/dist/utils/trace-data.d.ts.map +1 -1
- package/dist/utils/trace-data.js.map +1 -1
- package/dist/utils/transform-data.d.ts +6 -1
- package/dist/utils/transform-data.d.ts.map +1 -1
- package/dist/utils/transform-data.js +97 -1
- package/dist/utils/transform-data.js.map +1 -1
- package/dist/utils/value-mapping.d.ts +1 -1
- package/dist/utils/value-mapping.d.ts.map +1 -1
- package/dist/utils/value-mapping.js +1 -1
- package/dist/utils/value-mapping.js.map +1 -1
- package/dist/utils/variable-interpolation.d.ts +20 -1
- package/dist/utils/variable-interpolation.d.ts.map +1 -1
- package/dist/utils/variable-interpolation.js +77 -1
- package/dist/utils/variable-interpolation.js.map +1 -1
- package/package.json +12 -12
- package/dist/cjs/AlignSelector/AlignSelector.js +0 -50
- package/dist/cjs/AlignSelector/index.js +0 -30
- package/dist/cjs/ColorPicker/ColorPicker.js +0 -106
- package/dist/cjs/ColorPicker/OptionsColorPicker.js +0 -92
- package/dist/cjs/ColorPicker/index.js +0 -31
- package/dist/cjs/ContentWithLegend/ContentWithLegend.js +0 -71
- package/dist/cjs/ContentWithLegend/index.js +0 -30
- package/dist/cjs/ContentWithLegend/model/content-with-legend-model.js +0 -122
- package/dist/cjs/DensitySelector/DensitySelector.js +0 -54
- package/dist/cjs/DensitySelector/index.js +0 -30
- package/dist/cjs/Dialog/Dialog.js +0 -102
- package/dist/cjs/Dialog/DiscardChangesConfirmationDialog.js +0 -55
- package/dist/cjs/Dialog/index.js +0 -31
- package/dist/cjs/DragAndDrop/DragAndDropList.js +0 -159
- package/dist/cjs/DragAndDrop/DragButton.js +0 -123
- package/dist/cjs/DragAndDrop/DropIndicator.js +0 -52
- package/dist/cjs/DragAndDrop/index.js +0 -32
- package/dist/cjs/DragAndDrop/model.js +0 -25
- package/dist/cjs/Drawer/Drawer.js +0 -44
- package/dist/cjs/Drawer/index.js +0 -30
- package/dist/cjs/EChart/EChart.js +0 -203
- package/dist/cjs/EChart/index.js +0 -31
- package/dist/cjs/EChart/timezone-formatter.js +0 -49
- package/dist/cjs/ErrorAlert.js +0 -31
- package/dist/cjs/ErrorBoundary.js +0 -24
- package/dist/cjs/FontSizeSelector/FontSizeSelector.js +0 -132
- package/dist/cjs/FontSizeSelector/index.js +0 -30
- package/dist/cjs/FormEditor/FormActions.js +0 -83
- package/dist/cjs/FormEditor/index.js +0 -30
- package/dist/cjs/FormatControls/FormatControls.js +0 -119
- package/dist/cjs/FormatControls/UnitSelector.js +0 -55
- package/dist/cjs/FormatControls/index.js +0 -31
- package/dist/cjs/InfoTooltip/InfoTooltip.js +0 -86
- package/dist/cjs/InfoTooltip/index.js +0 -30
- package/dist/cjs/JSONEditor.js +0 -69
- package/dist/cjs/Legend/CompactLegend.js +0 -56
- package/dist/cjs/Legend/Legend.js +0 -131
- package/dist/cjs/Legend/LegendColorBadge.js +0 -39
- package/dist/cjs/Legend/ListLegend.js +0 -54
- package/dist/cjs/Legend/ListLegendItem.js +0 -84
- package/dist/cjs/Legend/TableLegend.js +0 -98
- package/dist/cjs/Legend/index.js +0 -31
- package/dist/cjs/Legend/legend-model.js +0 -27
- package/dist/cjs/LinksEditor/LinkEditorForm.js +0 -95
- package/dist/cjs/LinksEditor/index.js +0 -30
- package/dist/cjs/ModeSelector/ModeSelector.js +0 -51
- package/dist/cjs/ModeSelector/index.js +0 -30
- package/dist/cjs/OptionsEditorLayout/OptionsEditorColumn.js +0 -34
- package/dist/cjs/OptionsEditorLayout/OptionsEditorControl.js +0 -95
- package/dist/cjs/OptionsEditorLayout/OptionsEditorGrid.js +0 -31
- package/dist/cjs/OptionsEditorLayout/OptionsEditorGroup.js +0 -59
- package/dist/cjs/OptionsEditorLayout/index.js +0 -33
- package/dist/cjs/Overlay/Overlay.js +0 -71
- package/dist/cjs/Overlay/index.js +0 -30
- package/dist/cjs/RefreshIntervalPicker/RefreshIntervalPicker.js +0 -68
- package/dist/cjs/RefreshIntervalPicker/index.js +0 -30
- package/dist/cjs/SettingsAutocomplete/SettingsAutocomplete.js +0 -82
- package/dist/cjs/SettingsAutocomplete/index.js +0 -30
- package/dist/cjs/SortSelector/SortSelector.js +0 -50
- package/dist/cjs/SortSelector/SortSelectorButtons.js +0 -50
- package/dist/cjs/SortSelector/index.js +0 -31
- package/dist/cjs/Table/InnerTable.js +0 -47
- package/dist/cjs/Table/Table.js +0 -222
- package/dist/cjs/Table/TableBody.js +0 -31
- package/dist/cjs/Table/TableCell.js +0 -153
- package/dist/cjs/Table/TableCheckbox.js +0 -57
- package/dist/cjs/Table/TableFoot.js +0 -31
- package/dist/cjs/Table/TableHead.js +0 -31
- package/dist/cjs/Table/TableHeaderCell.js +0 -93
- package/dist/cjs/Table/TableRow.js +0 -37
- package/dist/cjs/Table/TableToolbar.js +0 -151
- package/dist/cjs/Table/VirtualizedTable.js +0 -284
- package/dist/cjs/Table/VirtualizedTableContainer.js +0 -36
- package/dist/cjs/Table/hooks/useFuzzySearch.js +0 -67
- package/dist/cjs/Table/hooks/useTableKeyboardNav.js +0 -108
- package/dist/cjs/Table/hooks/useVirtualizedTableKeyboardNav.js +0 -89
- package/dist/cjs/Table/index.js +0 -31
- package/dist/cjs/Table/model/table-model.js +0 -138
- package/dist/cjs/ThresholdsEditor/ThresholdInput.js +0 -80
- package/dist/cjs/ThresholdsEditor/ThresholdsEditor.js +0 -282
- package/dist/cjs/ThresholdsEditor/index.js +0 -30
- package/dist/cjs/TimeRangeSelector/DateTimeRangePicker.js +0 -204
- package/dist/cjs/TimeRangeSelector/TimeRangeSelector.js +0 -271
- package/dist/cjs/TimeRangeSelector/index.js +0 -31
- package/dist/cjs/TimeRangeSelector/utils.js +0 -72
- package/dist/cjs/TimeSeriesTooltip/SeriesInfo.js +0 -98
- package/dist/cjs/TimeSeriesTooltip/SeriesLabelsStack.js +0 -107
- package/dist/cjs/TimeSeriesTooltip/SeriesMarker.js +0 -41
- package/dist/cjs/TimeSeriesTooltip/TimeChartTooltip.js +0 -113
- package/dist/cjs/TimeSeriesTooltip/TooltipContent.js +0 -58
- package/dist/cjs/TimeSeriesTooltip/TooltipHeader.js +0 -168
- package/dist/cjs/TimeSeriesTooltip/index.js +0 -39
- package/dist/cjs/TimeSeriesTooltip/nearby-series.js +0 -454
- package/dist/cjs/TimeSeriesTooltip/tooltip-model.js +0 -148
- package/dist/cjs/TimeSeriesTooltip/types.js +0 -16
- package/dist/cjs/TimeSeriesTooltip/utils.js +0 -199
- package/dist/cjs/TimeZoneSelector.js +0 -63
- package/dist/cjs/ToolbarIconButton/ToolbarIconButton.js +0 -40
- package/dist/cjs/ToolbarIconButton/index.js +0 -30
- package/dist/cjs/TransformsEditor/TransformEditor.js +0 -297
- package/dist/cjs/TransformsEditor/TransformEditorContainer.js +0 -131
- package/dist/cjs/TransformsEditor/TransformsEditor.js +0 -103
- package/dist/cjs/TransformsEditor/index.js +0 -30
- package/dist/cjs/ValueMappingEditor/ValueMappingEditor.js +0 -387
- package/dist/cjs/ValueMappingEditor/ValueMappingsEditor.js +0 -131
- package/dist/cjs/ValueMappingEditor/index.js +0 -30
- package/dist/cjs/YAxisLabel.js +0 -50
- package/dist/cjs/context/ChartsProvider.js +0 -114
- package/dist/cjs/context/ItemActionsProvider.js +0 -111
- package/dist/cjs/context/SelectionProvider.js +0 -128
- package/dist/cjs/context/SnackbarProvider.js +0 -126
- package/dist/cjs/context/TimeZoneProvider.js +0 -98
- package/dist/cjs/context/index.js +0 -34
- package/dist/cjs/controls/TextField.js +0 -54
- package/dist/cjs/controls/index.js +0 -30
- package/dist/cjs/index.js +0 -67
- package/dist/cjs/model/action.js +0 -43
- package/dist/cjs/model/bits.js +0 -113
- package/dist/cjs/model/bytes.js +0 -115
- package/dist/cjs/model/constants.js +0 -23
- package/dist/cjs/model/currency.js +0 -126
- package/dist/cjs/model/date.js +0 -297
- package/dist/cjs/model/decimal.js +0 -72
- package/dist/cjs/model/formatterCache.js +0 -120
- package/dist/cjs/model/graph.js +0 -59
- package/dist/cjs/model/index.js +0 -50
- package/dist/cjs/model/legend.js +0 -101
- package/dist/cjs/model/percent.js +0 -82
- package/dist/cjs/model/temperature.js +0 -72
- package/dist/cjs/model/throughput.js +0 -161
- package/dist/cjs/model/time.js +0 -178
- package/dist/cjs/model/timeOption.js +0 -34
- package/dist/cjs/model/timeZoneOption.js +0 -34
- package/dist/cjs/model/transforms.js +0 -29
- package/dist/cjs/model/units.js +0 -186
- package/dist/cjs/model/utils.js +0 -48
- package/dist/cjs/model/value-mapping.js +0 -16
- package/dist/cjs/test/index.js +0 -30
- package/dist/cjs/test/render.js +0 -38
- package/dist/cjs/test/setup-tests.js +0 -20
- package/dist/cjs/test-utils/index.js +0 -30
- package/dist/cjs/test-utils/theme.js +0 -61
- package/dist/cjs/theme/component-overrides/alert.js +0 -104
- package/dist/cjs/theme/component-overrides/paper.js +0 -29
- package/dist/cjs/theme/index.js +0 -31
- package/dist/cjs/theme/palette/background.js +0 -46
- package/dist/cjs/theme/palette/colors/blue.js +0 -37
- package/dist/cjs/theme/palette/colors/common.js +0 -32
- package/dist/cjs/theme/palette/colors/green.js +0 -37
- package/dist/cjs/theme/palette/colors/grey.js +0 -37
- package/dist/cjs/theme/palette/colors/index.js +0 -37
- package/dist/cjs/theme/palette/colors/orange.js +0 -37
- package/dist/cjs/theme/palette/colors/purple.js +0 -37
- package/dist/cjs/theme/palette/colors/red.js +0 -37
- package/dist/cjs/theme/palette/colors/types.js +0 -16
- package/dist/cjs/theme/palette/error.js +0 -34
- package/dist/cjs/theme/palette/grey.js +0 -50
- package/dist/cjs/theme/palette/index.js +0 -30
- package/dist/cjs/theme/palette/palette-options.js +0 -61
- package/dist/cjs/theme/palette/primary.js +0 -34
- package/dist/cjs/theme/palette/secondary.js +0 -34
- package/dist/cjs/theme/palette/success.js +0 -34
- package/dist/cjs/theme/palette/text.js +0 -44
- package/dist/cjs/theme/palette/warning.js +0 -34
- package/dist/cjs/theme/theme.js +0 -90
- package/dist/cjs/theme/types/ThemeExtension.d.js +0 -17
- package/dist/cjs/theme/typography.js +0 -99
- package/dist/cjs/utils/axis.js +0 -122
- package/dist/cjs/utils/browser-storage.js +0 -62
- package/dist/cjs/utils/chart-actions.js +0 -180
- package/dist/cjs/utils/combine-sx.js +0 -31
- package/dist/cjs/utils/component-ids.js +0 -33
- package/dist/cjs/utils/data-field-interpolation.js +0 -230
- package/dist/cjs/utils/format.js +0 -127
- package/dist/cjs/utils/index.js +0 -48
- package/dist/cjs/utils/mathjs.js +0 -38
- package/dist/cjs/utils/memo.js +0 -64
- package/dist/cjs/utils/regexp.js +0 -54
- package/dist/cjs/utils/request-interpolation.js +0 -99
- package/dist/cjs/utils/selection-interpolation.js +0 -69
- package/dist/cjs/utils/text.js +0 -52
- package/dist/cjs/utils/theme-gen.js +0 -274
- package/dist/cjs/utils/time-series-data.js +0 -141
- package/dist/cjs/utils/trace-data.js +0 -25
- package/dist/cjs/utils/transform-data.js +0 -157
- package/dist/cjs/utils/types.js +0 -16
- package/dist/cjs/utils/value-mapping.js +0 -105
- package/dist/cjs/utils/variable-interpolation.js +0 -198
|
@@ -170,7 +170,7 @@ const VARIABLE_REGEX = /\$(\w+)|\${(\w+)(?:\.([^:^}]+))?(?::([^}]+))?}/gm;
|
|
|
170
170
|
variables// Sorting variables by their length.
|
|
171
171
|
// In order to not have a variable name have contained in another variable name.
|
|
172
172
|
// i.e.: $__range replacing $__range_ms => '3600_ms' instead of '3600000'
|
|
173
|
-
.
|
|
173
|
+
.toSorted((a, b)=>b.length - a.length).forEach((v)=>{
|
|
174
174
|
const variable = variableState[v];
|
|
175
175
|
if (variable && variable.value !== undefined) {
|
|
176
176
|
finalText = replaceVariable(finalText, v, variable?.value, variablesMap.get(v));
|
|
@@ -178,5 +178,81 @@ const VARIABLE_REGEX = /\$(\w+)|\${(\w+)(?:\.([^:^}]+))?(?::([^}]+))?}/gm;
|
|
|
178
178
|
});
|
|
179
179
|
return finalText;
|
|
180
180
|
}
|
|
181
|
+
/**
|
|
182
|
+
* Replace variables using their compact display values when available.
|
|
183
|
+
*/ export function replaceVariablesForDisplay(text, variableState) {
|
|
184
|
+
const displayState = {};
|
|
185
|
+
for (const [name, state] of Object.entries(variableState)){
|
|
186
|
+
displayState[name] = state.displayValue === undefined ? state : {
|
|
187
|
+
...state,
|
|
188
|
+
value: state.displayValue
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
return replaceVariables(text, displayState);
|
|
192
|
+
}
|
|
193
|
+
/**
|
|
194
|
+
* Replace dashboard variables in a URL, including those nested inside
|
|
195
|
+
* percent-encoded query parameters (e.g. Explore `data=%24var`).
|
|
196
|
+
*
|
|
197
|
+
* 1. `replaceVariables` on the raw string (unencoded `$var` still works).
|
|
198
|
+
* 2. Parse query params (URLSearchParams decodes once), expand each value,
|
|
199
|
+
* rebuild with `append` so repeated keys are preserved.
|
|
200
|
+
* 3. Keep the original path/prefix before `?` so relative targets are unchanged
|
|
201
|
+
* (`?data=…`, `explore?…`, not forced `/…`).
|
|
202
|
+
*/ export function replaceVariablesInUrl(url, variableState) {
|
|
203
|
+
let result = replaceVariables(url, variableState);
|
|
204
|
+
try {
|
|
205
|
+
const isAbsolute = /^https?:\/\//i.test(result);
|
|
206
|
+
const isProtocolRelative = result.startsWith('//');
|
|
207
|
+
// Skip non-http schemes (mailto:, etc.) — only expand via step 1.
|
|
208
|
+
const hasNonHttpScheme = /^[a-z][a-z0-9+.-]*:/i.test(result);
|
|
209
|
+
if (!isAbsolute && !isProtocolRelative && hasNonHttpScheme) {
|
|
210
|
+
return result;
|
|
211
|
+
}
|
|
212
|
+
const parseInput = isProtocolRelative ? `http:${result}` : result;
|
|
213
|
+
const parsedUrl = new URL(parseInput, isAbsolute || isProtocolRelative ? undefined : 'http://perses.local');
|
|
214
|
+
// Rebuild query in original pair order so searchParams key order is stable.
|
|
215
|
+
const originalEntries = Array.from(parsedUrl.searchParams.entries());
|
|
216
|
+
let changed = false;
|
|
217
|
+
const replacedEntries = originalEntries.map(([key, value])=>{
|
|
218
|
+
const replacedValue = replaceVariables(value, variableState);
|
|
219
|
+
if (replacedValue !== value) {
|
|
220
|
+
changed = true;
|
|
221
|
+
}
|
|
222
|
+
return [
|
|
223
|
+
key,
|
|
224
|
+
replacedValue
|
|
225
|
+
];
|
|
226
|
+
});
|
|
227
|
+
if (!changed) {
|
|
228
|
+
return result;
|
|
229
|
+
}
|
|
230
|
+
const keysToClear = [
|
|
231
|
+
...new Set(originalEntries.map(([key])=>key))
|
|
232
|
+
];
|
|
233
|
+
for (const key of keysToClear){
|
|
234
|
+
parsedUrl.searchParams.delete(key);
|
|
235
|
+
}
|
|
236
|
+
for (const [key, value] of replacedEntries){
|
|
237
|
+
parsedUrl.searchParams.append(key, value);
|
|
238
|
+
}
|
|
239
|
+
if (isAbsolute) {
|
|
240
|
+
return parsedUrl.href;
|
|
241
|
+
}
|
|
242
|
+
if (isProtocolRelative) {
|
|
243
|
+
return `//${parsedUrl.host}${parsedUrl.pathname}${parsedUrl.search}${parsedUrl.hash}`;
|
|
244
|
+
}
|
|
245
|
+
// Relative: preserve original substring before ?/# (do not force leading /).
|
|
246
|
+
const q = result.indexOf('?');
|
|
247
|
+
const h = result.indexOf('#');
|
|
248
|
+
let baseEnd = result.length;
|
|
249
|
+
if (q >= 0) baseEnd = q;
|
|
250
|
+
else if (h >= 0) baseEnd = h;
|
|
251
|
+
const base = result.slice(0, baseEnd);
|
|
252
|
+
return `${base}${parsedUrl.search}${parsedUrl.hash}`;
|
|
253
|
+
} catch {
|
|
254
|
+
return result;
|
|
255
|
+
}
|
|
256
|
+
}
|
|
181
257
|
|
|
182
258
|
//# sourceMappingURL=variable-interpolation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utils/variable-interpolation.ts"],"sourcesContent":["// Copyright The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport { VariableValue } from '@perses-dev/spec';\n\n/**\n * Option for a variable with label and value\n */\nexport type VariableOption = { label: string; value: string };\n\n/**\n * State of a variable including its current value, options, and loading state\n */\nexport type VariableState = {\n value: VariableValue;\n options?: VariableOption[];\n loading: boolean;\n error?: Error;\n /**\n * If a local variable is overriding an external variable, local var will have the flag ``overriding=true``.\n */\n overriding?: boolean;\n /**\n * If a local variable is overriding an external variable, external var will have the flag ``overridden=true``.\n */\n overridden?: boolean;\n defaultValue?: VariableValue;\n customAllValue?: string;\n};\n\n/**\n * Map of variable names to their states\n */\nexport type VariableStateMap = Record<string, VariableState>;\n\n/**\n * Supported interpolation formats for variable values\n */\nexport enum InterpolationFormat {\n CSV = 'csv',\n DISTRIBUTED = 'distributed',\n DOUBLEQUOTE = 'doublequote',\n GLOB = 'glob',\n JSON = 'json',\n LUCENE = 'lucene',\n PERCENTENCODE = 'percentencode',\n PIPE = 'pipe',\n PROMETHEUS = 'prometheus',\n RAW = 'raw',\n REGEX = 'regex',\n SINGLEQUOTE = 'singlequote',\n SQLSTRING = 'sqlstring',\n TEXT = 'text',\n QUERYPARAM = 'queryparam',\n REGEX_LITERAL = 'regexliteral',\n}\n\nfunction stringToFormat(val: string | undefined): InterpolationFormat | undefined {\n if (!val) return undefined;\n\n const lowerVal = val.toLowerCase();\n return Object.values(InterpolationFormat).find((format) => format === lowerVal) || undefined;\n}\n\n/**\n * Interpolate an array of values with a specific format\n */\nexport function interpolate(values: string[], name: string, format: InterpolationFormat): string {\n switch (format) {\n case InterpolationFormat.CSV:\n case InterpolationFormat.RAW:\n return values.join(',');\n case InterpolationFormat.DISTRIBUTED: {\n const [first, ...rest] = values;\n return `${[first, ...rest.map((v) => `${name}=${v}`)].join(',')}`;\n }\n case InterpolationFormat.DOUBLEQUOTE:\n return values.map((v) => `\"${v}\"`).join(',');\n case InterpolationFormat.GLOB:\n return `{${values.join(',')}}`;\n case InterpolationFormat.JSON: {\n // values might contain stringified JSON objects so we need to parse them first\n // and then return a JSON stringified array to return valid JSON\n const parsedValues = values.map((v) => {\n try {\n return JSON.parse(v);\n } catch {\n return v;\n }\n });\n\n return JSON.stringify(parsedValues);\n }\n case InterpolationFormat.LUCENE:\n return `(${values.map((v) => `\"${v}\"`).join(' OR ')})`;\n case InterpolationFormat.PERCENTENCODE:\n return encodeURIComponent(values.join(','));\n case InterpolationFormat.PIPE:\n return values.join('|');\n case InterpolationFormat.REGEX: {\n const escapedRegex = values.map((v) => v.replace(/[-/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&'));\n return `(${escapedRegex.join('|')})`;\n }\n case InterpolationFormat.REGEX_LITERAL: {\n const escapedRegex = values.map((v) => v.replace(/[-/\\\\^$*+?.()|[\\]{}]/g, '\\\\\\\\$&'));\n return `(${escapedRegex.join('|')})`;\n }\n case InterpolationFormat.SINGLEQUOTE:\n return values.map((v) => `'${v}'`).join(',');\n case InterpolationFormat.SQLSTRING:\n return values.map((v) => `'${v.replace(/'/g, \"''\")}'`).join(',');\n case InterpolationFormat.TEXT:\n return values.join(' + ');\n case InterpolationFormat.QUERYPARAM:\n return values.map((v) => `${name}=${encodeURIComponent(v)}`).join('&');\n case InterpolationFormat.PROMETHEUS:\n default:\n return `(${values.join('|')})`;\n }\n}\n\n/**\n * Replace a single variable in text with its value\n */\nexport function replaceVariable(\n text: string,\n varName: string,\n variableValue: VariableValue,\n varFormat?: InterpolationFormat\n): string {\n const variableSyntax = '$' + varName;\n const alternativeVariableSyntax = '${' + varName + (varFormat ? ':' + varFormat : '') + '}';\n\n let replaceString = '';\n if (Array.isArray(variableValue)) {\n replaceString = interpolate(variableValue, varName, varFormat || InterpolationFormat.PROMETHEUS);\n }\n if (typeof variableValue === 'string') {\n replaceString = interpolate([variableValue], varName, varFormat || InterpolationFormat.RAW);\n }\n text = text.replaceAll(variableSyntax, replaceString);\n return text.replaceAll(alternativeVariableSyntax, replaceString);\n}\n\n// This regular expression is designed to identify variable references in a string.\n// It supports two formats for referencing variables:\n// 1. $variableName - This is a simpler format, and the regular expression captures the variable name (\\w+ matches one or more word characters).\n// 2. ${variableName} - This is a more complex format and the regular expression captures the variable name (\\w+ matches one or more word characters) in the curly braces.\n// 3. ${variableName:format} - This is a more complex format that allows specifying a format interpolation.\n\nconst VARIABLE_REGEX = /\\$(\\w+)|\\${(\\w+)(?:\\.([^:^}]+))?(?::([^}]+))?}/gm;\n\n/**\n * Returns a list of variables\n */\nexport function parseVariables(text: string): string[] {\n const matches = new Set<string>();\n let match;\n\n while ((match = VARIABLE_REGEX.exec(text)) !== null) {\n if (match) {\n if (match[1]) {\n // \\$(\\w+)\\\n matches.add(match[1]);\n } else if (match[2]) {\n // \\${(\\w+)}\\\n matches.add(match[2]);\n }\n }\n }\n // return unique matches\n return Array.from(matches.values());\n}\n\n/**\n * Returns a map of variable names and its format. If no format is specified, it will be undefined.\n */\nexport function parseVariablesAndFormat(text: string): Map<string, InterpolationFormat | undefined> {\n const matches = new Map<string, InterpolationFormat | undefined>();\n let match;\n\n while ((match = VARIABLE_REGEX.exec(text)) !== null) {\n if (match) {\n let format = undefined;\n if (match[4]) {\n format = match[4];\n }\n if (match[1]) {\n // \\$(\\w+)\\\n matches.set(match[1], stringToFormat(format));\n } else if (match[2]) {\n // \\${(\\w+)}\\\n matches.set(match[2], stringToFormat(format));\n }\n }\n }\n return matches;\n}\n\n/**\n * Replace all variables in text with their values from the variable state map\n */\nexport function replaceVariables(text: string, variableState: VariableStateMap): string {\n const variablesMap = parseVariablesAndFormat(text);\n const variables = Array.from(variablesMap.keys());\n let finalText = text;\n variables\n // Sorting variables by their length.\n // In order to not have a variable name have contained in another variable name.\n // i.e.: $__range replacing $__range_ms => '3600_ms' instead of '3600000'\n .sort((a, b) => b.length - a.length)\n .forEach((v) => {\n const variable = variableState[v];\n if (variable && variable.value !== undefined) {\n finalText = replaceVariable(finalText, v, variable?.value, variablesMap.get(v));\n }\n });\n\n return finalText;\n}\n"],"names":["InterpolationFormat","stringToFormat","val","undefined","lowerVal","toLowerCase","Object","values","find","format","interpolate","name","join","first","rest","map","v","parsedValues","JSON","parse","stringify","encodeURIComponent","escapedRegex","replace","replaceVariable","text","varName","variableValue","varFormat","variableSyntax","alternativeVariableSyntax","replaceString","Array","isArray","replaceAll","VARIABLE_REGEX","parseVariables","matches","Set","match","exec","add","from","parseVariablesAndFormat","Map","set","replaceVariables","variableState","variablesMap","variables","keys","finalText","sort","a","b","length","forEach","variable","value","get"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../src/utils/variable-interpolation.ts"],"sourcesContent":["// Copyright The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport type { VariableValue } from '@perses-dev/spec';\n\n/**\n * Option for a variable with label and value\n */\nexport type VariableOption = { label: string; value: string };\n\n/**\n * State of a variable including its current value, options, and loading state\n */\nexport type VariableState = {\n value: VariableValue;\n /**\n * Optional compact value for human-readable text. Query interpolation continues to use `value`.\n */\n displayValue?: VariableValue;\n options?: VariableOption[];\n loading: boolean;\n error?: Error;\n /**\n * If a local variable is overriding an external variable, local var will have the flag ``overriding=true``.\n */\n overriding?: boolean;\n /**\n * If a local variable is overriding an external variable, external var will have the flag ``overridden=true``.\n */\n overridden?: boolean;\n defaultValue?: VariableValue;\n customAllValue?: string;\n};\n\n/**\n * Map of variable names to their states\n */\nexport type VariableStateMap = Record<string, VariableState>;\n\n/**\n * Supported interpolation formats for variable values\n */\nexport enum InterpolationFormat {\n CSV = 'csv',\n DISTRIBUTED = 'distributed',\n DOUBLEQUOTE = 'doublequote',\n GLOB = 'glob',\n JSON = 'json',\n LUCENE = 'lucene',\n PERCENTENCODE = 'percentencode',\n PIPE = 'pipe',\n PROMETHEUS = 'prometheus',\n RAW = 'raw',\n REGEX = 'regex',\n SINGLEQUOTE = 'singlequote',\n SQLSTRING = 'sqlstring',\n TEXT = 'text',\n QUERYPARAM = 'queryparam',\n REGEX_LITERAL = 'regexliteral',\n}\n\nfunction stringToFormat(val: string | undefined): InterpolationFormat | undefined {\n if (!val) return undefined;\n\n const lowerVal = val.toLowerCase();\n return Object.values(InterpolationFormat).find((format) => format === lowerVal) || undefined;\n}\n\n/**\n * Interpolate an array of values with a specific format\n */\nexport function interpolate(values: string[], name: string, format: InterpolationFormat): string {\n switch (format) {\n case InterpolationFormat.CSV:\n case InterpolationFormat.RAW:\n return values.join(',');\n case InterpolationFormat.DISTRIBUTED: {\n const [first, ...rest] = values;\n return `${[first, ...rest.map((v) => `${name}=${v}`)].join(',')}`;\n }\n case InterpolationFormat.DOUBLEQUOTE:\n return values.map((v) => `\"${v}\"`).join(',');\n case InterpolationFormat.GLOB:\n return `{${values.join(',')}}`;\n case InterpolationFormat.JSON: {\n // values might contain stringified JSON objects so we need to parse them first\n // and then return a JSON stringified array to return valid JSON\n const parsedValues = values.map((v) => {\n try {\n return JSON.parse(v);\n } catch {\n return v;\n }\n });\n\n return JSON.stringify(parsedValues);\n }\n case InterpolationFormat.LUCENE:\n return `(${values.map((v) => `\"${v}\"`).join(' OR ')})`;\n case InterpolationFormat.PERCENTENCODE:\n return encodeURIComponent(values.join(','));\n case InterpolationFormat.PIPE:\n return values.join('|');\n case InterpolationFormat.REGEX: {\n const escapedRegex = values.map((v) => v.replace(/[-/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&'));\n return `(${escapedRegex.join('|')})`;\n }\n case InterpolationFormat.REGEX_LITERAL: {\n const escapedRegex = values.map((v) => v.replace(/[-/\\\\^$*+?.()|[\\]{}]/g, '\\\\\\\\$&'));\n return `(${escapedRegex.join('|')})`;\n }\n case InterpolationFormat.SINGLEQUOTE:\n return values.map((v) => `'${v}'`).join(',');\n case InterpolationFormat.SQLSTRING:\n return values.map((v) => `'${v.replace(/'/g, \"''\")}'`).join(',');\n case InterpolationFormat.TEXT:\n return values.join(' + ');\n case InterpolationFormat.QUERYPARAM:\n return values.map((v) => `${name}=${encodeURIComponent(v)}`).join('&');\n case InterpolationFormat.PROMETHEUS:\n default:\n return `(${values.join('|')})`;\n }\n}\n\n/**\n * Replace a single variable in text with its value\n */\nexport function replaceVariable(\n text: string,\n varName: string,\n variableValue: VariableValue,\n varFormat?: InterpolationFormat,\n): string {\n const variableSyntax = '$' + varName;\n const alternativeVariableSyntax = '${' + varName + (varFormat ? ':' + varFormat : '') + '}';\n\n let replaceString = '';\n if (Array.isArray(variableValue)) {\n replaceString = interpolate(variableValue, varName, varFormat || InterpolationFormat.PROMETHEUS);\n }\n if (typeof variableValue === 'string') {\n replaceString = interpolate([variableValue], varName, varFormat || InterpolationFormat.RAW);\n }\n text = text.replaceAll(variableSyntax, replaceString);\n return text.replaceAll(alternativeVariableSyntax, replaceString);\n}\n\n// This regular expression is designed to identify variable references in a string.\n// It supports two formats for referencing variables:\n// 1. $variableName - This is a simpler format, and the regular expression captures the variable name (\\w+ matches one or more word characters).\n// 2. ${variableName} - This is a more complex format and the regular expression captures the variable name (\\w+ matches one or more word characters) in the curly braces.\n// 3. ${variableName:format} - This is a more complex format that allows specifying a format interpolation.\n\nconst VARIABLE_REGEX = /\\$(\\w+)|\\${(\\w+)(?:\\.([^:^}]+))?(?::([^}]+))?}/gm;\n\n/**\n * Returns a list of variables\n */\nexport function parseVariables(text: string): string[] {\n const matches = new Set<string>();\n let match;\n\n while ((match = VARIABLE_REGEX.exec(text)) !== null) {\n if (match) {\n if (match[1]) {\n // \\$(\\w+)\\\n matches.add(match[1]);\n } else if (match[2]) {\n // \\${(\\w+)}\\\n matches.add(match[2]);\n }\n }\n }\n // return unique matches\n return Array.from(matches.values());\n}\n\n/**\n * Returns a map of variable names and its format. If no format is specified, it will be undefined.\n */\nexport function parseVariablesAndFormat(text: string): Map<string, InterpolationFormat | undefined> {\n const matches = new Map<string, InterpolationFormat | undefined>();\n let match;\n\n while ((match = VARIABLE_REGEX.exec(text)) !== null) {\n if (match) {\n let format = undefined;\n if (match[4]) {\n format = match[4];\n }\n if (match[1]) {\n // \\$(\\w+)\\\n matches.set(match[1], stringToFormat(format));\n } else if (match[2]) {\n // \\${(\\w+)}\\\n matches.set(match[2], stringToFormat(format));\n }\n }\n }\n return matches;\n}\n\n/**\n * Replace all variables in text with their values from the variable state map\n */\nexport function replaceVariables(text: string, variableState: VariableStateMap): string {\n const variablesMap = parseVariablesAndFormat(text);\n const variables = Array.from(variablesMap.keys());\n let finalText = text;\n variables\n // Sorting variables by their length.\n // In order to not have a variable name have contained in another variable name.\n // i.e.: $__range replacing $__range_ms => '3600_ms' instead of '3600000'\n .toSorted((a, b) => b.length - a.length)\n .forEach((v) => {\n const variable = variableState[v];\n if (variable && variable.value !== undefined) {\n finalText = replaceVariable(finalText, v, variable?.value, variablesMap.get(v));\n }\n });\n\n return finalText;\n}\n\n/**\n * Replace variables using their compact display values when available.\n */\nexport function replaceVariablesForDisplay(text: string, variableState: VariableStateMap): string {\n const displayState: VariableStateMap = {};\n for (const [name, state] of Object.entries(variableState)) {\n displayState[name] = state.displayValue === undefined ? state : { ...state, value: state.displayValue };\n }\n return replaceVariables(text, displayState);\n}\n\n/**\n * Replace dashboard variables in a URL, including those nested inside\n * percent-encoded query parameters (e.g. Explore `data=%24var`).\n *\n * 1. `replaceVariables` on the raw string (unencoded `$var` still works).\n * 2. Parse query params (URLSearchParams decodes once), expand each value,\n * rebuild with `append` so repeated keys are preserved.\n * 3. Keep the original path/prefix before `?` so relative targets are unchanged\n * (`?data=…`, `explore?…`, not forced `/…`).\n */\nexport function replaceVariablesInUrl(url: string, variableState: VariableStateMap): string {\n let result = replaceVariables(url, variableState);\n\n try {\n const isAbsolute = /^https?:\\/\\//i.test(result);\n const isProtocolRelative = result.startsWith('//');\n // Skip non-http schemes (mailto:, etc.) — only expand via step 1.\n const hasNonHttpScheme = /^[a-z][a-z0-9+.-]*:/i.test(result);\n if (!isAbsolute && !isProtocolRelative && hasNonHttpScheme) {\n return result;\n }\n\n const parseInput = isProtocolRelative ? `http:${result}` : result;\n const parsedUrl = new URL(parseInput, isAbsolute || isProtocolRelative ? undefined : 'http://perses.local');\n\n // Rebuild query in original pair order so searchParams key order is stable.\n const originalEntries = Array.from(parsedUrl.searchParams.entries());\n let changed = false;\n const replacedEntries = originalEntries.map(([key, value]) => {\n const replacedValue = replaceVariables(value, variableState);\n if (replacedValue !== value) {\n changed = true;\n }\n return [key, replacedValue] as const;\n });\n\n if (!changed) {\n return result;\n }\n\n const keysToClear = [...new Set(originalEntries.map(([key]) => key))];\n for (const key of keysToClear) {\n parsedUrl.searchParams.delete(key);\n }\n for (const [key, value] of replacedEntries) {\n parsedUrl.searchParams.append(key, value);\n }\n\n if (isAbsolute) {\n return parsedUrl.href;\n }\n if (isProtocolRelative) {\n return `//${parsedUrl.host}${parsedUrl.pathname}${parsedUrl.search}${parsedUrl.hash}`;\n }\n\n // Relative: preserve original substring before ?/# (do not force leading /).\n const q = result.indexOf('?');\n const h = result.indexOf('#');\n let baseEnd = result.length;\n if (q >= 0) baseEnd = q;\n else if (h >= 0) baseEnd = h;\n const base = result.slice(0, baseEnd);\n return `${base}${parsedUrl.search}${parsedUrl.hash}`;\n } catch {\n return result;\n }\n}\n"],"names":["InterpolationFormat","stringToFormat","val","undefined","lowerVal","toLowerCase","Object","values","find","format","interpolate","name","join","first","rest","map","v","parsedValues","JSON","parse","stringify","encodeURIComponent","escapedRegex","replace","replaceVariable","text","varName","variableValue","varFormat","variableSyntax","alternativeVariableSyntax","replaceString","Array","isArray","replaceAll","VARIABLE_REGEX","parseVariables","matches","Set","match","exec","add","from","parseVariablesAndFormat","Map","set","replaceVariables","variableState","variablesMap","variables","keys","finalText","toSorted","a","b","length","forEach","variable","value","get","replaceVariablesForDisplay","displayState","state","entries","displayValue","replaceVariablesInUrl","url","result","isAbsolute","test","isProtocolRelative","startsWith","hasNonHttpScheme","parseInput","parsedUrl","URL","originalEntries","searchParams","changed","replacedEntries","key","replacedValue","keysToClear","delete","append","href","host","pathname","search","hash","q","indexOf","h","baseEnd","base","slice"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,31 +1,31 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@perses-dev/components",
|
|
3
|
-
"version": "0.55.0-beta.
|
|
3
|
+
"version": "0.55.0-beta.11",
|
|
4
4
|
"description": "Common UI components used across Perses features",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"homepage": "https://github.com/perses/perses/blob/main/README.md",
|
|
7
7
|
"repository": {
|
|
8
8
|
"type": "git",
|
|
9
|
-
"url": "git+https://github.com/perses/
|
|
9
|
+
"url": "git+https://github.com/perses/shared.git"
|
|
10
10
|
},
|
|
11
11
|
"bugs": {
|
|
12
12
|
"url": "https://github.com/perses/perses/issues"
|
|
13
13
|
},
|
|
14
|
+
"type": "module",
|
|
14
15
|
"module": "dist/index.js",
|
|
15
|
-
"main": "dist/
|
|
16
|
+
"main": "dist/index.js",
|
|
16
17
|
"types": "dist/index.d.ts",
|
|
17
18
|
"scripts": {
|
|
18
19
|
"clean": "rimraf dist/",
|
|
19
20
|
"build": "concurrently \"npm:build:*\"",
|
|
20
|
-
"build:cjs": "swc ./src -d dist/cjs --strip-leading-paths --config-file ../.cjs.swcrc",
|
|
21
21
|
"build:esm": "swc ./src -d dist --strip-leading-paths --config-file ../.swcrc",
|
|
22
22
|
"build:types": "tsc --project tsconfig.build.json",
|
|
23
23
|
"type-check": "tsc --noEmit",
|
|
24
24
|
"start": "concurrently -P \"npm:build:* -- {*}\" -- --watch",
|
|
25
|
-
"test": "cross-env TZ=UTC
|
|
26
|
-
"test:watch": "cross-env TZ=UTC
|
|
27
|
-
"lint": "
|
|
28
|
-
"lint:fix": "
|
|
25
|
+
"test": "cross-env TZ=UTC vitest run",
|
|
26
|
+
"test:watch": "cross-env TZ=UTC vitest",
|
|
27
|
+
"lint": "oxlint src",
|
|
28
|
+
"lint:fix": "oxlint --fix src"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
31
|
"@atlaskit/pragmatic-drag-and-drop": "^1.4.0",
|
|
@@ -34,8 +34,8 @@
|
|
|
34
34
|
"@date-fns/tz": "^1.4.1",
|
|
35
35
|
"@fontsource/inter": "^5.0.0",
|
|
36
36
|
"@mui/x-date-pickers": "^7.23.1",
|
|
37
|
-
"@perses-dev/spec": "0.3.0-beta.
|
|
38
|
-
"@perses-dev/client": "0.55.0-beta.
|
|
37
|
+
"@perses-dev/spec": "0.3.0-beta.8",
|
|
38
|
+
"@perses-dev/client": "0.55.0-beta.11",
|
|
39
39
|
"numbro": "^2.3.6",
|
|
40
40
|
"@tanstack/match-sorter-utils": "^8.19.4",
|
|
41
41
|
"@tanstack/react-table": "^8.20.5",
|
|
@@ -59,8 +59,8 @@
|
|
|
59
59
|
"@emotion/styled": "^11.14.1",
|
|
60
60
|
"@mui/material": "^6.1.10",
|
|
61
61
|
"lodash": "^4.17.21",
|
|
62
|
-
"react": "^
|
|
63
|
-
"react-dom": "^
|
|
62
|
+
"react": "^18.3.0",
|
|
63
|
+
"react-dom": "^18.3.0"
|
|
64
64
|
},
|
|
65
65
|
"files": [
|
|
66
66
|
"dist"
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
// Copyright The Perses Authors
|
|
2
|
-
// Licensed under the Apache License | Version 2.0 (the "License");
|
|
3
|
-
// you may not use this file except in compliance with the License.
|
|
4
|
-
// You may obtain a copy of the License at
|
|
5
|
-
//
|
|
6
|
-
// http://www.apache.org/licenses/LICENSE-2.0
|
|
7
|
-
//
|
|
8
|
-
// Unless required by applicable law or agreed to in writing | software
|
|
9
|
-
// distributed under the License is distributed on an "AS IS" BASIS |
|
|
10
|
-
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND | either express or implied.
|
|
11
|
-
// See the License for the specific language governing permissions and
|
|
12
|
-
// limitations under the License.
|
|
13
|
-
"use strict";
|
|
14
|
-
Object.defineProperty(exports, "__esModule", {
|
|
15
|
-
value: true
|
|
16
|
-
});
|
|
17
|
-
Object.defineProperty(exports, "AlignSelector", {
|
|
18
|
-
enumerable: true,
|
|
19
|
-
get: function() {
|
|
20
|
-
return AlignSelector;
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
const _jsxruntime = require("react/jsx-runtime");
|
|
24
|
-
const _material = require("@mui/material");
|
|
25
|
-
function AlignSelector({ onChange, value = 'left', ...props }) {
|
|
26
|
-
const handleSortChange = (option)=>{
|
|
27
|
-
onChange(option);
|
|
28
|
-
};
|
|
29
|
-
return /*#__PURE__*/ (0, _jsxruntime.jsxs)(_material.ButtonGroup, {
|
|
30
|
-
"aria-label": "Alignement",
|
|
31
|
-
...props,
|
|
32
|
-
children: [
|
|
33
|
-
/*#__PURE__*/ (0, _jsxruntime.jsx)(_material.Button, {
|
|
34
|
-
onClick: ()=>handleSortChange('left'),
|
|
35
|
-
variant: value === 'left' ? 'contained' : 'outlined',
|
|
36
|
-
children: "Left"
|
|
37
|
-
}, "left"),
|
|
38
|
-
/*#__PURE__*/ (0, _jsxruntime.jsx)(_material.Button, {
|
|
39
|
-
onClick: ()=>handleSortChange('center'),
|
|
40
|
-
variant: value === 'center' ? 'contained' : 'outlined',
|
|
41
|
-
children: "Center"
|
|
42
|
-
}, "center"),
|
|
43
|
-
/*#__PURE__*/ (0, _jsxruntime.jsx)(_material.Button, {
|
|
44
|
-
onClick: ()=>handleSortChange('right'),
|
|
45
|
-
variant: value === 'right' ? 'contained' : 'outlined',
|
|
46
|
-
children: "Right"
|
|
47
|
-
}, "right")
|
|
48
|
-
]
|
|
49
|
-
});
|
|
50
|
-
}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
// Copyright The Perses Authors
|
|
2
|
-
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
3
|
-
// you may not use this file except in compliance with the License.
|
|
4
|
-
// You may obtain a copy of the License at
|
|
5
|
-
//
|
|
6
|
-
// http://www.apache.org/licenses/LICENSE-2.0
|
|
7
|
-
//
|
|
8
|
-
// Unless required by applicable law or agreed to in writing, software
|
|
9
|
-
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
10
|
-
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
11
|
-
// See the License for the specific language governing permissions and
|
|
12
|
-
// limitations under the License.
|
|
13
|
-
"use strict";
|
|
14
|
-
Object.defineProperty(exports, "__esModule", {
|
|
15
|
-
value: true
|
|
16
|
-
});
|
|
17
|
-
_export_star(require("./AlignSelector"), exports);
|
|
18
|
-
function _export_star(from, to) {
|
|
19
|
-
Object.keys(from).forEach(function(k) {
|
|
20
|
-
if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) {
|
|
21
|
-
Object.defineProperty(to, k, {
|
|
22
|
-
enumerable: true,
|
|
23
|
-
get: function() {
|
|
24
|
-
return from[k];
|
|
25
|
-
}
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
});
|
|
29
|
-
return from;
|
|
30
|
-
}
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
// Copyright The Perses Authors
|
|
2
|
-
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
3
|
-
// you may not use this file except in compliance with the License.
|
|
4
|
-
// You may obtain a copy of the License at
|
|
5
|
-
//
|
|
6
|
-
// http://www.apache.org/licenses/LICENSE-2.0
|
|
7
|
-
//
|
|
8
|
-
// Unless required by applicable law or agreed to in writing, software
|
|
9
|
-
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
10
|
-
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
11
|
-
// See the License for the specific language governing permissions and
|
|
12
|
-
// limitations under the License.
|
|
13
|
-
"use strict";
|
|
14
|
-
Object.defineProperty(exports, "__esModule", {
|
|
15
|
-
value: true
|
|
16
|
-
});
|
|
17
|
-
Object.defineProperty(exports, "ColorPicker", {
|
|
18
|
-
enumerable: true,
|
|
19
|
-
get: function() {
|
|
20
|
-
return ColorPicker;
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
const _jsxruntime = require("react/jsx-runtime");
|
|
24
|
-
const _material = require("@mui/material");
|
|
25
|
-
const _react = require("react");
|
|
26
|
-
const _reactcolorful = require("react-colorful");
|
|
27
|
-
const _Circle = /*#__PURE__*/ _interop_require_default(require("mdi-material-ui/Circle"));
|
|
28
|
-
const _Delete = /*#__PURE__*/ _interop_require_default(require("mdi-material-ui/Delete"));
|
|
29
|
-
function _interop_require_default(obj) {
|
|
30
|
-
return obj && obj.__esModule ? obj : {
|
|
31
|
-
default: obj
|
|
32
|
-
};
|
|
33
|
-
}
|
|
34
|
-
const ColorPicker = ({ color, onChange, onClear, palette })=>{
|
|
35
|
-
// value is the visible value for the controlled text input
|
|
36
|
-
const [value, setValue] = (0, _react.useState)(color);
|
|
37
|
-
const handleColorChange = (color)=>{
|
|
38
|
-
setValue(color);
|
|
39
|
-
onChange?.(color);
|
|
40
|
-
};
|
|
41
|
-
// we should update this if https://github.com/omgovich/react-colorful/issues/157 is resolved
|
|
42
|
-
const handleInputChange = (e)=>{
|
|
43
|
-
const inputValue = e.target.value.replace(/([^0-9A-F]+)/gi, '').substring(0, 8);
|
|
44
|
-
setValue(`#${inputValue}`); // always prefix input value with # to indicate hex format
|
|
45
|
-
// only set color if input value is a valid hex color
|
|
46
|
-
if (isValidHex(e.target.value)) {
|
|
47
|
-
onChange?.(e.target.value);
|
|
48
|
-
}
|
|
49
|
-
};
|
|
50
|
-
return /*#__PURE__*/ (0, _jsxruntime.jsxs)(_material.Stack, {
|
|
51
|
-
spacing: 1,
|
|
52
|
-
children: [
|
|
53
|
-
/*#__PURE__*/ (0, _jsxruntime.jsx)(_reactcolorful.HexColorPicker, {
|
|
54
|
-
color: color,
|
|
55
|
-
onChange: handleColorChange,
|
|
56
|
-
style: {
|
|
57
|
-
width: '100%'
|
|
58
|
-
}
|
|
59
|
-
}),
|
|
60
|
-
/*#__PURE__*/ (0, _jsxruntime.jsx)(_material.Stack, {
|
|
61
|
-
direction: "row",
|
|
62
|
-
flexWrap: "wrap",
|
|
63
|
-
justifyContent: "space-evenly",
|
|
64
|
-
width: "200px",
|
|
65
|
-
children: palette && palette.map((color, i)=>/*#__PURE__*/ (0, _jsxruntime.jsx)(_material.IconButton, {
|
|
66
|
-
size: "small",
|
|
67
|
-
"aria-label": `change color to ${color}`,
|
|
68
|
-
sx: {
|
|
69
|
-
color
|
|
70
|
-
},
|
|
71
|
-
onClick: ()=>handleColorChange(color),
|
|
72
|
-
children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_Circle.default, {})
|
|
73
|
-
}, i))
|
|
74
|
-
}),
|
|
75
|
-
/*#__PURE__*/ (0, _jsxruntime.jsxs)(_material.Stack, {
|
|
76
|
-
direction: "row",
|
|
77
|
-
gap: 1,
|
|
78
|
-
alignItems: "center",
|
|
79
|
-
children: [
|
|
80
|
-
/*#__PURE__*/ (0, _jsxruntime.jsx)(_material.TextField, {
|
|
81
|
-
inputProps: {
|
|
82
|
-
'aria-label': 'enter hex color'
|
|
83
|
-
},
|
|
84
|
-
fullWidth: true,
|
|
85
|
-
value: value,
|
|
86
|
-
onChange: handleInputChange
|
|
87
|
-
}),
|
|
88
|
-
onClear && /*#__PURE__*/ (0, _jsxruntime.jsx)(_material.IconButton, {
|
|
89
|
-
onClick: onClear,
|
|
90
|
-
children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_Delete.default, {})
|
|
91
|
-
})
|
|
92
|
-
]
|
|
93
|
-
})
|
|
94
|
-
]
|
|
95
|
-
});
|
|
96
|
-
};
|
|
97
|
-
const isValidHex = (value, alpha)=>{
|
|
98
|
-
const matcher = /^#?([0-9A-F]{3,8})$/i;
|
|
99
|
-
const match = matcher.exec(value);
|
|
100
|
-
const length = match && match[1] ? match[1].length : 0;
|
|
101
|
-
return length === 3 || // '#rgb' format
|
|
102
|
-
length === 6 || // '#rrggbb' format
|
|
103
|
-
!!alpha && length === 4 || // '#rgba' format
|
|
104
|
-
!!alpha && length === 8 // '#rrggbbaa' format
|
|
105
|
-
;
|
|
106
|
-
};
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
// Copyright The Perses Authors
|
|
2
|
-
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
3
|
-
// you may not use this file except in compliance with the License.
|
|
4
|
-
// You may obtain a copy of the License at
|
|
5
|
-
//
|
|
6
|
-
// http://www.apache.org/licenses/LICENSE-2.0
|
|
7
|
-
//
|
|
8
|
-
// Unless required by applicable law or agreed to in writing, software
|
|
9
|
-
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
10
|
-
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
11
|
-
// See the License for the specific language governing permissions and
|
|
12
|
-
// limitations under the License.
|
|
13
|
-
"use strict";
|
|
14
|
-
Object.defineProperty(exports, "__esModule", {
|
|
15
|
-
value: true
|
|
16
|
-
});
|
|
17
|
-
Object.defineProperty(exports, "OptionsColorPicker", {
|
|
18
|
-
enumerable: true,
|
|
19
|
-
get: function() {
|
|
20
|
-
return OptionsColorPicker;
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
const _jsxruntime = require("react/jsx-runtime");
|
|
24
|
-
const _react = require("react");
|
|
25
|
-
const _material = require("@mui/material");
|
|
26
|
-
const _Circle = /*#__PURE__*/ _interop_require_default(require("mdi-material-ui/Circle"));
|
|
27
|
-
const _context = require("../context");
|
|
28
|
-
const _ColorPicker = require("./ColorPicker");
|
|
29
|
-
function _interop_require_default(obj) {
|
|
30
|
-
return obj && obj.__esModule ? obj : {
|
|
31
|
-
default: obj
|
|
32
|
-
};
|
|
33
|
-
}
|
|
34
|
-
function OptionsColorPicker({ label, color, size = 'small', onColorChange, onClear }) {
|
|
35
|
-
const [anchorEl, setAnchorEl] = (0, _react.useState)(null);
|
|
36
|
-
const isOpen = Boolean(anchorEl);
|
|
37
|
-
const openColorPicker = (event)=>{
|
|
38
|
-
setAnchorEl(event.currentTarget);
|
|
39
|
-
};
|
|
40
|
-
const closeColorPicker = ()=>{
|
|
41
|
-
setAnchorEl(null);
|
|
42
|
-
};
|
|
43
|
-
const { thresholds: { defaultColor, palette } } = (0, _context.useChartsTheme)();
|
|
44
|
-
return /*#__PURE__*/ (0, _jsxruntime.jsxs)(_jsxruntime.Fragment, {
|
|
45
|
-
children: [
|
|
46
|
-
/*#__PURE__*/ (0, _jsxruntime.jsx)(ColorIconButton, {
|
|
47
|
-
size: size,
|
|
48
|
-
"aria-label": `change ${label} color`,
|
|
49
|
-
isSelected: isOpen,
|
|
50
|
-
iconColor: color,
|
|
51
|
-
onClick: openColorPicker,
|
|
52
|
-
children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_Circle.default, {})
|
|
53
|
-
}),
|
|
54
|
-
/*#__PURE__*/ (0, _jsxruntime.jsx)(_material.Popover, {
|
|
55
|
-
"data-testid": "options color picker",
|
|
56
|
-
open: isOpen,
|
|
57
|
-
anchorEl: anchorEl,
|
|
58
|
-
onClose: closeColorPicker,
|
|
59
|
-
slotProps: {
|
|
60
|
-
paper: {
|
|
61
|
-
sx: {
|
|
62
|
-
padding: (theme)=>theme.spacing(2)
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
},
|
|
66
|
-
anchorOrigin: {
|
|
67
|
-
vertical: 'top',
|
|
68
|
-
horizontal: 'left'
|
|
69
|
-
},
|
|
70
|
-
transformOrigin: {
|
|
71
|
-
vertical: 'top',
|
|
72
|
-
horizontal: 'right'
|
|
73
|
-
},
|
|
74
|
-
children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_ColorPicker.ColorPicker, {
|
|
75
|
-
color: color,
|
|
76
|
-
palette: [
|
|
77
|
-
defaultColor,
|
|
78
|
-
...palette
|
|
79
|
-
],
|
|
80
|
-
onChange: onColorChange,
|
|
81
|
-
onClear: onClear
|
|
82
|
-
})
|
|
83
|
-
})
|
|
84
|
-
]
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
const ColorIconButton = (0, _material.styled)(_material.IconButton, {
|
|
88
|
-
shouldForwardProp: (props)=>props !== 'isSelected' && props !== 'iconColor'
|
|
89
|
-
})(({ iconColor, isSelected })=>({
|
|
90
|
-
backgroundColor: isSelected && iconColor ? `${iconColor}3F` : 'undefined',
|
|
91
|
-
color: iconColor
|
|
92
|
-
}));
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
// Copyright The Perses Authors
|
|
2
|
-
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
3
|
-
// you may not use this file except in compliance with the License.
|
|
4
|
-
// You may obtain a copy of the License at
|
|
5
|
-
//
|
|
6
|
-
// http://www.apache.org/licenses/LICENSE-2.0
|
|
7
|
-
//
|
|
8
|
-
// Unless required by applicable law or agreed to in writing, software
|
|
9
|
-
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
10
|
-
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
11
|
-
// See the License for the specific language governing permissions and
|
|
12
|
-
// limitations under the License.
|
|
13
|
-
"use strict";
|
|
14
|
-
Object.defineProperty(exports, "__esModule", {
|
|
15
|
-
value: true
|
|
16
|
-
});
|
|
17
|
-
_export_star(require("./ColorPicker"), exports);
|
|
18
|
-
_export_star(require("./OptionsColorPicker"), exports);
|
|
19
|
-
function _export_star(from, to) {
|
|
20
|
-
Object.keys(from).forEach(function(k) {
|
|
21
|
-
if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) {
|
|
22
|
-
Object.defineProperty(to, k, {
|
|
23
|
-
enumerable: true,
|
|
24
|
-
get: function() {
|
|
25
|
-
return from[k];
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
});
|
|
30
|
-
return from;
|
|
31
|
-
}
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
// Copyright The Perses Authors
|
|
2
|
-
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
3
|
-
// you may not use this file except in compliance with the License.
|
|
4
|
-
// You may obtain a copy of the License at
|
|
5
|
-
//
|
|
6
|
-
// http://www.apache.org/licenses/LICENSE-2.0
|
|
7
|
-
//
|
|
8
|
-
// Unless required by applicable law or agreed to in writing, software
|
|
9
|
-
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
10
|
-
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
11
|
-
// See the License for the specific language governing permissions and
|
|
12
|
-
// limitations under the License.
|
|
13
|
-
"use strict";
|
|
14
|
-
Object.defineProperty(exports, "__esModule", {
|
|
15
|
-
value: true
|
|
16
|
-
});
|
|
17
|
-
Object.defineProperty(exports, "ContentWithLegend", {
|
|
18
|
-
enumerable: true,
|
|
19
|
-
get: function() {
|
|
20
|
-
return ContentWithLegend;
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
const _jsxruntime = require("react/jsx-runtime");
|
|
24
|
-
const _material = require("@mui/material");
|
|
25
|
-
const _model = require("../model");
|
|
26
|
-
const _Legend = require("../Legend");
|
|
27
|
-
const _contentwithlegendmodel = require("./model/content-with-legend-model");
|
|
28
|
-
function ContentWithLegend({ children, legendProps, width, height, spacing = 0, legendSize, minChildrenWidth = 100, minChildrenHeight = 100 }) {
|
|
29
|
-
const theme = (0, _material.useTheme)();
|
|
30
|
-
const { content, legend, margin } = (0, _contentwithlegendmodel.getContentWithLegendLayout)({
|
|
31
|
-
width,
|
|
32
|
-
height,
|
|
33
|
-
legendProps,
|
|
34
|
-
minChildrenHeight,
|
|
35
|
-
minChildrenWidth,
|
|
36
|
-
spacing,
|
|
37
|
-
theme,
|
|
38
|
-
legendSize: (0, _model.getLegendSize)(legendSize)
|
|
39
|
-
});
|
|
40
|
-
return /*#__PURE__*/ (0, _jsxruntime.jsxs)(_material.Box, {
|
|
41
|
-
style: {
|
|
42
|
-
width,
|
|
43
|
-
height
|
|
44
|
-
},
|
|
45
|
-
sx: {
|
|
46
|
-
position: 'relative',
|
|
47
|
-
overflow: 'hidden'
|
|
48
|
-
},
|
|
49
|
-
children: [
|
|
50
|
-
/*#__PURE__*/ (0, _jsxruntime.jsx)(_material.Box, {
|
|
51
|
-
style: {
|
|
52
|
-
width: content.width,
|
|
53
|
-
height: content.height
|
|
54
|
-
},
|
|
55
|
-
sx: {
|
|
56
|
-
marginRight: `${margin.right}px`,
|
|
57
|
-
marginBottom: `${margin.bottom}px`
|
|
58
|
-
},
|
|
59
|
-
children: typeof children === 'function' ? children({
|
|
60
|
-
width: content.width,
|
|
61
|
-
height: content.height
|
|
62
|
-
}) : children
|
|
63
|
-
}),
|
|
64
|
-
legendProps && legend.show && /*#__PURE__*/ (0, _jsxruntime.jsx)(_Legend.Legend, {
|
|
65
|
-
...legendProps,
|
|
66
|
-
height: legend.height,
|
|
67
|
-
width: legend.width
|
|
68
|
-
})
|
|
69
|
-
]
|
|
70
|
-
});
|
|
71
|
-
}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
// Copyright The Perses Authors
|
|
2
|
-
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
3
|
-
// you may not use this file except in compliance with the License.
|
|
4
|
-
// You may obtain a copy of the License at
|
|
5
|
-
//
|
|
6
|
-
// http://www.apache.org/licenses/LICENSE-2.0
|
|
7
|
-
//
|
|
8
|
-
// Unless required by applicable law or agreed to in writing, software
|
|
9
|
-
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
10
|
-
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
11
|
-
// See the License for the specific language governing permissions and
|
|
12
|
-
// limitations under the License.
|
|
13
|
-
"use strict";
|
|
14
|
-
Object.defineProperty(exports, "__esModule", {
|
|
15
|
-
value: true
|
|
16
|
-
});
|
|
17
|
-
_export_star(require("./ContentWithLegend"), exports);
|
|
18
|
-
function _export_star(from, to) {
|
|
19
|
-
Object.keys(from).forEach(function(k) {
|
|
20
|
-
if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) {
|
|
21
|
-
Object.defineProperty(to, k, {
|
|
22
|
-
enumerable: true,
|
|
23
|
-
get: function() {
|
|
24
|
-
return from[k];
|
|
25
|
-
}
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
});
|
|
29
|
-
return from;
|
|
30
|
-
}
|