@galaxy-io/dls 1.6.0 → 2.0.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 +47 -50
- package/biome/index.json +74 -0
- package/biome/plugins/no-hex-literal.grit +20 -0
- package/biome/plugins/no-inline-style.grit +13 -0
- package/biome/plugins/no-margin.grit +9 -0
- package/biome/plugins/warn/no-hex-literal.grit +23 -0
- package/biome/plugins/warn/no-inline-style.grit +13 -0
- package/biome/plugins/warn/no-margin.grit +9 -0
- package/dist/a11y/FocusScope.d.ts +44 -0
- package/dist/a11y/FocusScope.js +229 -0
- package/dist/a11y/VisuallyHidden.d.ts +21 -0
- package/dist/a11y/VisuallyHidden.js +30 -0
- package/dist/avatar/Avatar.d.ts +56 -14
- package/dist/avatar/Avatar.js +250 -96
- package/dist/avatar/AvatarGroup.d.ts +43 -0
- package/dist/avatar/AvatarGroup.js +153 -0
- package/dist/backgrounds/GridBackground.d.ts +48 -0
- package/dist/backgrounds/GridBackground.js +146 -0
- package/dist/beacons/Beacon.d.ts +86 -22
- package/dist/beacons/Beacon.js +170 -47
- package/dist/brand/GalaxyFilamentWordmark.d.ts +30 -0
- package/dist/brand/GalaxyFilamentWordmark.js +39 -0
- package/dist/brand/GalaxyLogomark.d.ts +26 -0
- package/dist/brand/GalaxyLogomark.js +41 -0
- package/dist/brand/GalaxyLogomarkAnimation.d.ts +36 -0
- package/dist/brand/GalaxyLogomarkAnimation.js +107 -0
- package/dist/brand/GalaxyWordmark.d.ts +30 -0
- package/dist/brand/GalaxyWordmark.js +63 -0
- package/dist/brand/assets/galaxy-logomark-animation.js +136678 -0
- package/dist/brand/brandMark.d.ts +26 -0
- package/dist/brand/brandMark.js +35 -0
- package/dist/buttons/Button.d.ts +148 -59
- package/dist/buttons/Button.js +437 -227
- package/dist/buttons/ButtonGroup.d.ts +38 -0
- package/dist/buttons/ButtonGroup.js +68 -0
- package/dist/buttons/CopyButton.d.ts +77 -0
- package/dist/buttons/CopyButton.js +65 -0
- package/dist/charts/AreaChart.d.ts +49 -0
- package/dist/charts/AreaChart.js +31 -0
- package/dist/charts/BarChart.d.ts +54 -67
- package/dist/charts/BarChart.js +136 -116
- package/dist/charts/ChartAxis.d.ts +35 -40
- package/dist/charts/ChartAxis.js +114 -90
- package/dist/charts/ChartCategoryTargets.d.ts +12 -26
- package/dist/charts/ChartCategoryTargets.js +32 -20
- package/dist/charts/ChartFrame.d.ts +69 -116
- package/dist/charts/ChartFrame.js +253 -119
- package/dist/charts/ChartGroupProvider.d.ts +30 -41
- package/dist/charts/ChartGroupProvider.js +20 -7
- package/dist/charts/ChartLegend.d.ts +27 -48
- package/dist/charts/ChartLegend.js +206 -125
- package/dist/charts/ChartMarkTargets.d.ts +12 -28
- package/dist/charts/ChartMarkTargets.js +33 -20
- package/dist/charts/ChartPrimitives.d.ts +50 -305
- package/dist/charts/ChartPrimitives.js +65 -413
- package/dist/charts/ChartTooltip.d.ts +20 -26
- package/dist/charts/ChartTooltip.js +77 -40
- package/dist/charts/Heatmap.d.ts +35 -0
- package/dist/charts/Heatmap.js +295 -0
- package/dist/charts/LineChart.d.ts +54 -47
- package/dist/charts/LineChart.js +159 -117
- package/dist/charts/PieChart.d.ts +32 -53
- package/dist/charts/PieChart.js +149 -135
- package/dist/charts/Sparkline.d.ts +107 -0
- package/dist/charts/Sparkline.js +244 -0
- package/dist/charts/StatChart.d.ts +37 -13
- package/dist/charts/StatChart.js +82 -35
- package/dist/charts/barChartGeometry.d.ts +138 -86
- package/dist/charts/barChartGeometry.js +122 -101
- package/dist/charts/barChartLegend.d.ts +14 -18
- package/dist/charts/barChartLegend.js +18 -13
- package/dist/charts/chartFormat.d.ts +12 -18
- package/dist/charts/chartFormat.js +20 -52
- package/dist/charts/chartPalette.d.ts +33 -0
- package/dist/charts/chartPalette.js +68 -0
- package/dist/charts/chartScales.d.ts +41 -108
- package/dist/charts/chartScales.js +62 -128
- package/dist/charts/constants.d.ts +96 -256
- package/dist/charts/constants.js +105 -275
- package/dist/charts/heatmapGeometry.d.ts +95 -0
- package/dist/charts/heatmapGeometry.js +155 -0
- package/dist/charts/lineChartGeometry.d.ts +108 -58
- package/dist/charts/lineChartGeometry.js +120 -78
- package/dist/charts/pieChartGeometry.d.ts +66 -40
- package/dist/charts/pieChartGeometry.js +68 -38
- package/dist/charts/types.d.ts +197 -466
- package/dist/charts/types.js +55 -144
- package/dist/charts/useCartesianChartLayout.d.ts +28 -59
- package/dist/charts/useCartesianChartLayout.js +47 -32
- package/dist/charts/useChartDimensions.d.ts +19 -40
- package/dist/charts/useChartDimensions.js +40 -56
- package/dist/charts/useChartFormatters.d.ts +6 -15
- package/dist/charts/useChartFormatters.js +4 -9
- package/dist/charts/useChartInteraction.d.ts +47 -116
- package/dist/charts/useChartInteraction.js +95 -71
- package/dist/charts/useChartTooltipPosition.d.ts +29 -39
- package/dist/charts/useChartTooltipPosition.js +14 -5
- package/dist/charts/useSeriesColorResolver.d.ts +11 -33
- package/dist/charts/useSeriesColorResolver.js +19 -12
- package/dist/chips/Chip.d.ts +155 -44
- package/dist/chips/Chip.js +329 -155
- package/dist/chips/ChipGroup.d.ts +53 -0
- package/dist/chips/ChipGroup.js +98 -0
- package/dist/drawer/Drawer.d.ts +81 -17
- package/dist/drawer/Drawer.js +370 -65
- package/dist/dropdown/Dropdown.d.ts +80 -63
- package/dist/dropdown/Dropdown.js +127 -129
- package/dist/editor/CodeEditor.d.ts +119 -40
- package/dist/editor/CodeEditor.js +490 -400
- package/dist/editor/CodeEditorReactWidget.d.ts +20 -17
- package/dist/editor/CodeEditorReactWidget.js +28 -21
- package/dist/feedback/Alert.d.ts +49 -0
- package/dist/feedback/Alert.js +172 -0
- package/dist/feedback/EmptyState.d.ts +39 -0
- package/dist/feedback/EmptyState.js +109 -0
- package/dist/feedback/ProgressBar.d.ts +125 -0
- package/dist/feedback/ProgressBar.js +183 -0
- package/dist/feedback/ProgressCircle.d.ts +99 -0
- package/dist/feedback/ProgressCircle.js +187 -0
- package/dist/feedback/Skeleton.d.ts +69 -0
- package/dist/feedback/Skeleton.js +130 -0
- package/dist/feedback/Spinner.d.ts +63 -0
- package/dist/feedback/Spinner.js +141 -0
- package/dist/fonts.css +70 -0
- package/dist/hooks/internal/useIsClient.d.ts +2 -0
- package/dist/hooks/internal/useIsClient.js +14 -0
- package/dist/hooks/useClipboard.d.ts +19 -0
- package/dist/hooks/useClipboard.js +45 -0
- package/dist/hooks/useControlledOpenState.d.ts +21 -0
- package/dist/hooks/useControlledOpenState.js +19 -0
- package/dist/hooks/useControlledState.d.ts +19 -0
- package/dist/hooks/useControlledState.js +22 -0
- package/dist/hooks/useDebouncedValue.d.ts +14 -0
- package/dist/hooks/useDebouncedValue.js +33 -0
- package/dist/hooks/useDisclosure.d.ts +26 -0
- package/dist/hooks/useDisclosure.js +36 -0
- package/dist/hooks/useDismiss.d.ts +23 -27
- package/dist/hooks/useDismiss.js +39 -27
- package/dist/hooks/useElementClientSize.d.ts +10 -10
- package/dist/hooks/useElementClientSize.js +8 -11
- package/dist/hooks/useElementWidth.d.ts +6 -13
- package/dist/hooks/useElementWidth.js +6 -14
- package/dist/hooks/useField.d.ts +47 -0
- package/dist/hooks/useField.js +40 -0
- package/dist/hooks/useHotkey.d.ts +77 -0
- package/dist/hooks/useHotkey.js +246 -0
- package/dist/hooks/useIsMac.d.ts +12 -0
- package/dist/hooks/useIsMac.js +27 -0
- package/dist/hooks/useIsomorphicLayoutEffect.d.ts +17 -0
- package/dist/hooks/useIsomorphicLayoutEffect.js +20 -0
- package/dist/hooks/useLocalStorage.d.ts +28 -0
- package/dist/hooks/useLocalStorage.js +145 -0
- package/dist/hooks/useMediaQuery.d.ts +11 -0
- package/dist/hooks/useMediaQuery.js +23 -0
- package/dist/hooks/usePrefersReducedMotion.d.ts +12 -0
- package/dist/hooks/usePrefersReducedMotion.js +25 -0
- package/dist/hooks/useResize.d.ts +42 -62
- package/dist/hooks/useResize.js +43 -31
- package/dist/icons/Icon.d.ts +64 -37
- package/dist/icons/Icon.js +96 -37
- package/dist/icons/internal/IconSlot.d.ts +10 -0
- package/dist/icons/internal/IconSlot.js +32 -0
- package/dist/inputs/CheckboxGroup.d.ts +115 -0
- package/dist/inputs/CheckboxGroup.js +183 -0
- package/dist/inputs/CheckboxInput.d.ts +98 -28
- package/dist/inputs/CheckboxInput.js +218 -88
- package/dist/inputs/ColorInput.d.ts +115 -29
- package/dist/inputs/ColorInput.js +748 -326
- package/dist/inputs/CopyInput.d.ts +49 -20
- package/dist/inputs/CopyInput.js +57 -49
- package/dist/inputs/CronInput.d.ts +94 -0
- package/dist/inputs/CronInput.js +618 -0
- package/dist/inputs/DateInput.d.ts +175 -28
- package/dist/inputs/DateInput.js +1109 -451
- package/dist/inputs/DurationInput.d.ts +101 -0
- package/dist/inputs/DurationInput.js +441 -0
- package/dist/inputs/Field.d.ts +75 -0
- package/dist/inputs/Field.js +247 -0
- package/dist/inputs/Fieldset.d.ts +53 -0
- package/dist/inputs/Fieldset.js +149 -0
- package/dist/inputs/FileInput.d.ts +110 -0
- package/dist/inputs/FileInput.js +476 -0
- package/dist/inputs/Input.d.ts +148 -187
- package/dist/inputs/Input.js +339 -259
- package/dist/inputs/KeyValueInput.d.ts +120 -0
- package/dist/inputs/KeyValueInput.js +383 -0
- package/dist/inputs/MultiSelectInput.d.ts +165 -54
- package/dist/inputs/MultiSelectInput.js +175 -559
- package/dist/inputs/NumberInput.d.ts +65 -9
- package/dist/inputs/NumberInput.js +197 -40
- package/dist/inputs/PasswordInput.d.ts +17 -12
- package/dist/inputs/PasswordInput.js +33 -33
- package/dist/inputs/PinInput.d.ts +117 -0
- package/dist/inputs/PinInput.js +364 -0
- package/dist/inputs/RadioGroup.d.ts +115 -0
- package/dist/inputs/RadioGroup.js +179 -0
- package/dist/inputs/RadioInput.d.ts +87 -24
- package/dist/inputs/RadioInput.js +182 -95
- package/dist/inputs/SearchInput.d.ts +66 -0
- package/dist/inputs/SearchInput.js +156 -0
- package/dist/inputs/SelectInput.d.ts +195 -55
- package/dist/inputs/SelectInput.js +1308 -446
- package/dist/inputs/SliderInput.d.ts +150 -30
- package/dist/inputs/SliderInput.js +441 -186
- package/dist/inputs/SwitchInput.d.ts +109 -0
- package/dist/inputs/SwitchInput.js +248 -0
- package/dist/inputs/TagInput.d.ts +117 -0
- package/dist/inputs/TagInput.js +408 -0
- package/dist/inputs/TextAreaInput.d.ts +146 -44
- package/dist/inputs/TextAreaInput.js +292 -198
- package/dist/inputs/TextInput.d.ts +4 -13
- package/dist/inputs/TextInput.js +13 -48
- package/dist/inputs/ToggleInput.d.ts +120 -22
- package/dist/inputs/ToggleInput.js +262 -116
- package/dist/inputs/internal/bareField.d.ts +18 -0
- package/dist/inputs/internal/bareField.js +38 -0
- package/dist/inputs/internal/devWarn.d.ts +7 -0
- package/dist/inputs/internal/devWarn.js +30 -0
- package/dist/inputs/internal/fieldFrame.d.ts +34 -0
- package/dist/inputs/internal/fieldFrame.js +64 -0
- package/dist/inputs/internal/fieldWiring.d.ts +50 -0
- package/dist/inputs/internal/fieldWiring.js +38 -0
- package/dist/inputs/internal/innerButton.d.ts +2 -0
- package/dist/inputs/internal/innerButton.js +24 -0
- package/dist/inputs/internal/ownField.d.ts +45 -0
- package/dist/inputs/internal/ownField.js +58 -0
- package/dist/inputs/internal/predicates.d.ts +9 -0
- package/dist/inputs/internal/predicates.js +11 -0
- package/dist/inputs/internal/useComboboxPopover.d.ts +46 -0
- package/dist/inputs/internal/useComboboxPopover.js +92 -0
- package/dist/json/JsonViewer.d.ts +62 -0
- package/dist/json/JsonViewer.js +483 -0
- package/dist/layout/Box.d.ts +87 -0
- package/dist/layout/Box.js +109 -0
- package/dist/layout/Divider.d.ts +25 -0
- package/dist/layout/Divider.js +70 -0
- package/dist/layout/Flex.d.ts +139 -0
- package/dist/layout/Flex.js +165 -0
- package/dist/layout/FlexItem.d.ts +72 -0
- package/dist/layout/FlexItem.js +84 -0
- package/dist/layout/Grid.d.ts +140 -0
- package/dist/layout/Grid.js +178 -0
- package/dist/layout/Portal.d.ts +29 -0
- package/dist/layout/Portal.js +27 -0
- package/dist/layout/ResizablePanels.d.ts +88 -0
- package/dist/layout/ResizablePanels.js +198 -0
- package/dist/layout/ResizeHandle.d.ts +48 -0
- package/dist/layout/ResizeHandle.js +143 -0
- package/dist/layout/ScrollArea.d.ts +30 -0
- package/dist/layout/ScrollArea.js +138 -0
- package/dist/links/Link.d.ts +101 -1
- package/dist/links/Link.js +166 -4
- package/dist/lists/BulletedList.d.ts +25 -7
- package/dist/lists/BulletedList.js +72 -27
- package/dist/lists/DescriptionList.d.ts +91 -0
- package/dist/lists/DescriptionList.js +147 -0
- package/dist/menu/ContextMenu.d.ts +64 -0
- package/dist/menu/ContextMenu.js +34 -0
- package/dist/menu/Menu.d.ts +280 -0
- package/dist/menu/Menu.js +1003 -0
- package/dist/modal/ConfirmDialog.d.ts +55 -0
- package/dist/modal/ConfirmDialog.js +151 -0
- package/dist/modal/Modal.d.ts +64 -14
- package/dist/modal/Modal.js +189 -48
- package/dist/navigation/Breadcrumbs.d.ts +65 -0
- package/dist/navigation/Breadcrumbs.js +243 -0
- package/dist/navigation/CommandPalette.d.ts +83 -0
- package/dist/navigation/CommandPalette.js +509 -0
- package/dist/navigation/Pagination.d.ts +87 -0
- package/dist/navigation/Pagination.js +300 -0
- package/dist/navigation/SidebarNav.d.ts +107 -0
- package/dist/navigation/SidebarNav.js +341 -0
- package/dist/navigation/Stepper.d.ts +52 -0
- package/dist/navigation/Stepper.js +207 -0
- package/dist/navigation/Tabs.d.ts +113 -0
- package/dist/navigation/Tabs.js +543 -0
- package/dist/navigation/Topbar.d.ts +20 -0
- package/dist/navigation/Topbar.js +62 -0
- package/dist/overlay/OverlayProvider.d.ts +28 -32
- package/dist/overlay/OverlayProvider.js +42 -93
- package/dist/overlay/useOverlay.d.ts +88 -12
- package/dist/overlay/useOverlay.js +220 -43
- package/dist/overlays/Popover.d.ts +114 -0
- package/dist/overlays/Popover.js +389 -0
- package/dist/shapes/Circle.d.ts +84 -8
- package/dist/shapes/Circle.js +122 -20
- package/dist/shapes/Square.d.ts +84 -8
- package/dist/shapes/Square.js +123 -20
- package/dist/styles/mixins.d.ts +35 -0
- package/dist/styles/mixins.js +60 -0
- package/dist/styles.css +1 -202
- package/dist/table/InfiniteSpreadsheet.d.ts +140 -10
- package/dist/table/InfiniteSpreadsheet.js +762 -225
- package/dist/table/InfiniteTable.d.ts +116 -14
- package/dist/table/InfiniteTable.js +287 -429
- package/dist/table/SpreadsheetCellEditor.d.ts +54 -6
- package/dist/table/SpreadsheetCellEditor.js +163 -84
- package/dist/table/TableCore.d.ts +252 -0
- package/dist/table/TableCore.js +1077 -0
- package/dist/table/VirtualizedInfiniteTable.d.ts +104 -14
- package/dist/table/VirtualizedInfiniteTable.js +280 -219
- package/dist/table/types.d.ts +66 -244
- package/dist/table/types.js +0 -51
- package/dist/table/useInfiniteScrollSentinel.d.ts +25 -21
- package/dist/table/useInfiniteScrollSentinel.js +38 -30
- package/dist/table/useSpreadsheetCellNavigation.d.ts +44 -0
- package/dist/table/useSpreadsheetCellNavigation.js +141 -0
- package/dist/table/useTableColumnLayout.d.ts +90 -25
- package/dist/table/useTableColumnLayout.js +255 -50
- package/dist/table/useTableKeyboardNavigation.d.ts +32 -21
- package/dist/table/useTableKeyboardNavigation.js +95 -71
- package/dist/table/useTableRowSelection.d.ts +24 -25
- package/dist/table/useTableRowSelection.js +57 -84
- package/dist/table/useTableVirtualizer.d.ts +20 -0
- package/dist/table/useTableVirtualizer.js +48 -0
- package/dist/text/Bold.d.ts +5 -6
- package/dist/text/Bold.js +16 -15
- package/dist/text/Code.d.ts +5 -6
- package/dist/text/Code.js +16 -25
- package/dist/text/CodeBlock.d.ts +77 -0
- package/dist/text/CodeBlock.js +373 -0
- package/dist/text/EditableText.d.ts +55 -15
- package/dist/text/EditableText.js +153 -135
- package/dist/text/Ellipsis.d.ts +34 -8
- package/dist/text/Ellipsis.js +55 -23
- package/dist/text/Kbd.d.ts +72 -0
- package/dist/text/Kbd.js +284 -0
- package/dist/text/MarkdownText.d.ts +27 -10
- package/dist/text/MarkdownText.js +317 -300
- package/dist/text/RequiredMarker.d.ts +17 -5
- package/dist/text/RequiredMarker.js +34 -36
- package/dist/text/Selectable.d.ts +5 -6
- package/dist/text/Selectable.js +16 -13
- package/dist/text/Span.d.ts +82 -0
- package/dist/text/Span.js +115 -0
- package/dist/text/Text.d.ts +128 -41
- package/dist/text/Text.js +209 -76
- package/dist/theme/GalaxyProvider.d.ts +75 -0
- package/dist/theme/GalaxyProvider.js +223 -0
- package/dist/theme/ThemeSwitcher.d.ts +52 -0
- package/dist/theme/ThemeSwitcher.js +94 -0
- package/dist/theme/enums.d.ts +118 -0
- package/dist/theme/enums.js +144 -0
- package/dist/theme/tokens/dark.d.ts +2 -0
- package/dist/theme/tokens/dark.js +275 -0
- package/dist/theme/tokens/generate.d.ts +15 -0
- package/dist/theme/tokens/generate.js +47 -0
- package/dist/theme/tokens/light.d.ts +2 -0
- package/dist/theme/tokens/light.js +274 -0
- package/dist/theme/tokens/palette.d.ts +14 -0
- package/dist/theme/tokens/palette.js +153 -0
- package/dist/theme/tokens/scales.d.ts +26 -0
- package/dist/theme/tokens/scales.js +154 -0
- package/dist/theme/tokens/t.d.ts +3 -0
- package/dist/theme/tokens/t.js +25 -0
- package/dist/theme/tokens/types.d.ts +189 -0
- package/dist/theme/tokens/types.js +0 -0
- package/dist/theme/useGalaxyTheme.d.ts +46 -0
- package/dist/theme/useGalaxyTheme.js +36 -0
- package/dist/theme/useInverseScope.d.ts +18 -0
- package/dist/theme/useInverseScope.js +33 -0
- package/dist/three/GalaxyLogomark3D.d.ts +46 -0
- package/dist/three/GalaxyLogomark3D.js +134 -0
- package/dist/three/assets/galaxy-logomark.js +4 -0
- package/dist/three/galaxyLogomark3DScene.d.ts +27 -0
- package/dist/three/galaxyLogomark3DScene.js +165 -0
- package/dist/timeline/Timeline.d.ts +99 -0
- package/dist/timeline/Timeline.js +269 -0
- package/dist/toast/Toast.d.ts +43 -19
- package/dist/toast/Toast.js +130 -89
- package/dist/toast/ToastProvider.d.ts +23 -23
- package/dist/toast/ToastProvider.js +298 -101
- package/dist/toast/ToastViewport.d.ts +12 -0
- package/dist/toast/ToastViewport.js +210 -0
- package/dist/toast/useToast.d.ts +139 -5
- package/dist/toast/useToast.js +15 -13
- package/dist/tokens.css +654 -0
- package/dist/tooltip/Tooltip.d.ts +64 -44
- package/dist/tooltip/Tooltip.js +280 -73
- package/dist/tooltip/internal/LazyTooltip.d.ts +7 -0
- package/dist/tooltip/internal/LazyTooltip.js +53 -0
- package/dist/transform/Fade.d.ts +33 -11
- package/dist/transform/Fade.js +71 -19
- package/dist/transform/Flasher.d.ts +25 -0
- package/dist/transform/Flasher.js +39 -0
- package/dist/transform/Rotate.d.ts +24 -12
- package/dist/transform/Rotate.js +36 -22
- package/dist/transform/ScaleFade.d.ts +36 -11
- package/dist/transform/ScaleFade.js +86 -28
- package/dist/transform/internal/CollapseMotion.d.ts +10 -0
- package/dist/transform/internal/CollapseMotion.js +65 -0
- package/dist/tree/Tree.d.ts +85 -0
- package/dist/tree/Tree.js +387 -0
- package/dist/tree/treeRow.d.ts +39 -0
- package/dist/tree/treeRow.js +75 -0
- package/dist/utils/colors.d.ts +46 -13
- package/dist/utils/colors.js +92 -34
- package/dist/utils/css.d.ts +23 -0
- package/dist/utils/css.js +30 -0
- package/dist/utils/format.d.ts +58 -0
- package/dist/utils/format.js +220 -0
- package/dist/vite/index.d.ts +16 -0
- package/dist/vite/index.js +52 -0
- package/dist/widget/Widget.d.ts +164 -48
- package/dist/widget/Widget.js +335 -96
- package/dist/widget/WidgetGroup.d.ts +36 -0
- package/dist/widget/WidgetGroup.js +103 -0
- package/package.json +851 -157
- package/dist/accordion/Accordion.d.ts +0 -54
- package/dist/accordion/Accordion.js +0 -183
- package/dist/assets/components/GalaxyFilamentWordmarkDark.d.ts +0 -3
- package/dist/assets/components/GalaxyFilamentWordmarkDark.js +0 -14
- package/dist/assets/components/GalaxyFilamentWordmarkLight.d.ts +0 -3
- package/dist/assets/components/GalaxyFilamentWordmarkLight.js +0 -14
- package/dist/assets/components/GalaxyLogomarkDark.d.ts +0 -3
- package/dist/assets/components/GalaxyLogomarkDark.js +0 -11
- package/dist/assets/components/GalaxyLogomarkLight.d.ts +0 -3
- package/dist/assets/components/GalaxyLogomarkLight.js +0 -17
- package/dist/assets/components/GalaxyWordmarkDark.d.ts +0 -3
- package/dist/assets/components/GalaxyWordmarkDark.js +0 -15
- package/dist/assets/components/GalaxyWordmarkLight.d.ts +0 -3
- package/dist/assets/components/GalaxyWordmarkLight.js +0 -28
- package/dist/assets/models/galaxy-animation.js +0 -136666
- package/dist/assets/models/galaxy-logomark.js +0 -4
- package/dist/avatar/AvatarShimmer.d.ts +0 -30
- package/dist/avatar/AvatarShimmer.js +0 -22
- package/dist/backgrounds/CellGridBackground.d.ts +0 -24
- package/dist/backgrounds/CellGridBackground.js +0 -44
- package/dist/backgrounds/CrossGridBackground.d.ts +0 -26
- package/dist/backgrounds/CrossGridBackground.js +0 -49
- package/dist/backgrounds/DotGridBackground.d.ts +0 -24
- package/dist/backgrounds/DotGridBackground.js +0 -47
- package/dist/badge/Badge.d.ts +0 -42
- package/dist/badge/Badge.js +0 -99
- package/dist/charts/ChartEmptyState.d.ts +0 -17
- package/dist/charts/ChartEmptyState.js +0 -29
- package/dist/charts/ProgressBar.d.ts +0 -29
- package/dist/charts/ProgressBar.js +0 -65
- package/dist/charts/chartTheme.d.ts +0 -18
- package/dist/charts/chartTheme.js +0 -26
- package/dist/containers/FlexItem.d.ts +0 -50
- package/dist/containers/FlexItem.js +0 -91
- package/dist/containers/FlexWrapper.d.ts +0 -96
- package/dist/containers/FlexWrapper.js +0 -143
- package/dist/containers/GridWrapper.d.ts +0 -79
- package/dist/containers/GridWrapper.js +0 -125
- package/dist/containers/Spacing.d.ts +0 -23
- package/dist/containers/Spacing.js +0 -59
- package/dist/containers/Wrapper.d.ts +0 -26
- package/dist/containers/Wrapper.js +0 -54
- package/dist/dividers/HorizontalDivider.d.ts +0 -7
- package/dist/dividers/HorizontalDivider.js +0 -39
- package/dist/dividers/VerticalDivider.d.ts +0 -6
- package/dist/dividers/VerticalDivider.js +0 -21
- package/dist/icons/GalaxyFilamentWordmark.d.ts +0 -11
- package/dist/icons/GalaxyFilamentWordmark.js +0 -25
- package/dist/icons/GalaxyLogomark.d.ts +0 -13
- package/dist/icons/GalaxyLogomark.js +0 -27
- package/dist/icons/GalaxyLogomark3D.d.ts +0 -56
- package/dist/icons/GalaxyLogomark3D.js +0 -319
- package/dist/icons/GalaxyLogomarkAnimation.d.ts +0 -18
- package/dist/icons/GalaxyLogomarkAnimation.js +0 -48
- package/dist/icons/GalaxyWordmark.d.ts +0 -11
- package/dist/icons/GalaxyWordmark.js +0 -25
- package/dist/inputs/MultiTextInput.d.ts +0 -32
- package/dist/inputs/MultiTextInput.js +0 -180
- package/dist/inputs/SwitcherInput.d.ts +0 -27
- package/dist/inputs/SwitcherInput.js +0 -64
- package/dist/inputs/hooks.d.ts +0 -10
- package/dist/inputs/hooks.js +0 -22
- package/dist/overlay/constants.d.ts +0 -28
- package/dist/overlay/constants.js +0 -37
- package/dist/resizable/HorizontalResizeHandle.d.ts +0 -17
- package/dist/resizable/HorizontalResizeHandle.js +0 -38
- package/dist/resizable/VerticalResizeHandle.d.ts +0 -18
- package/dist/resizable/VerticalResizeHandle.js +0 -39
- package/dist/table/SpreadsheetCell.d.ts +0 -21
- package/dist/table/SpreadsheetCell.js +0 -71
- package/dist/table/SpreadsheetHeaderCell.d.ts +0 -23
- package/dist/table/SpreadsheetHeaderCell.js +0 -91
- package/dist/table/SpreadsheetMenuItem.d.ts +0 -14
- package/dist/table/SpreadsheetMenuItem.js +0 -33
- package/dist/table/SpreadsheetPrimitives.d.ts +0 -172
- package/dist/table/SpreadsheetPrimitives.js +0 -105
- package/dist/table/SpreadsheetRow.d.ts +0 -33
- package/dist/table/SpreadsheetRow.js +0 -73
- package/dist/table/SpreadsheetRowActionCell.d.ts +0 -14
- package/dist/table/SpreadsheetRowActionCell.js +0 -51
- package/dist/table/TableExpandCell.d.ts +0 -11
- package/dist/table/TableExpandCell.js +0 -24
- package/dist/table/TableExpandedRow.d.ts +0 -16
- package/dist/table/TableExpandedRow.js +0 -77
- package/dist/table/TableHeaderCellContent.d.ts +0 -30
- package/dist/table/TableHeaderCellContent.js +0 -48
- package/dist/table/TablePrimitives.d.ts +0 -313
- package/dist/table/TablePrimitives.js +0 -302
- package/dist/table/TableSelectCell.d.ts +0 -18
- package/dist/table/TableSelectCell.js +0 -27
- package/dist/table/TableStatusRow.d.ts +0 -18
- package/dist/table/TableStatusRow.js +0 -50
- package/dist/table/useSpreadsheetEditing.d.ts +0 -13
- package/dist/table/useSpreadsheetEditing.js +0 -41
- package/dist/table/useTableColumnResize.d.ts +0 -38
- package/dist/table/useTableColumnResize.js +0 -155
- package/dist/table/useTableRowExpansion.d.ts +0 -24
- package/dist/table/useTableRowExpansion.js +0 -62
- package/dist/table/utils.d.ts +0 -50
- package/dist/table/utils.js +0 -78
- package/dist/text/HotKeys.d.ts +0 -30
- package/dist/text/HotKeys.js +0 -74
- package/dist/text/Paragraph.d.ts +0 -33
- package/dist/text/Paragraph.js +0 -83
- package/dist/text/TextShimmer.d.ts +0 -14
- package/dist/text/TextShimmer.js +0 -34
- package/dist/theme/GalaxyTheme.d.ts +0 -67
- package/dist/theme/GalaxyTheme.js +0 -119
- package/dist/theme/constants.d.ts +0 -8
- package/dist/theme/constants.js +0 -38
- package/dist/theme/index.d.ts +0 -6
- package/dist/theme/index.js +0 -7
- package/dist/theme/types.d.ts +0 -195
- package/dist/theme/types.js +0 -10
- package/dist/theme/typography.d.ts +0 -2
- package/dist/theme/typography.js +0 -73
- package/dist/theme/variants/dark.d.ts +0 -2
- package/dist/theme/variants/dark.js +0 -125
- package/dist/theme/variants/light.d.ts +0 -2
- package/dist/theme/variants/light.js +0 -125
- package/dist/toast/ToastContainer.d.ts +0 -10
- package/dist/toast/ToastContainer.js +0 -31
- package/dist/toast/ToastWrapper.d.ts +0 -6
- package/dist/toast/ToastWrapper.js +0 -27
- package/dist/transform/Flash.d.ts +0 -7
- package/dist/transform/Flash.js +0 -18
- package/dist/transform/Spin.d.ts +0 -14
- package/dist/transform/Spin.js +0 -25
- package/dist/utils/linaria.d.ts +0 -1
- package/dist/utils/linaria.js +0 -8
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
import { Placement } from "../theme/enums.js";
|
|
2
|
+
import Text, { TextSize, TextVariant, TextWeight } from "../text/Text.js";
|
|
3
|
+
import Icon, { IconVariant } from "../icons/Icon.js";
|
|
4
|
+
import Button, { ButtonSize, ButtonVariant } from "../buttons/Button.js";
|
|
5
|
+
import Link, { LinkUnderline, LinkVariant } from "../links/Link.js";
|
|
6
|
+
import Menu, { MenuItem, MenuSize } from "../menu/Menu.js";
|
|
7
|
+
/* empty css */
|
|
8
|
+
import { styled } from "@linaria/react";
|
|
9
|
+
import { forwardRef } from "react";
|
|
10
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
11
|
+
import { cx } from "@linaria/core";
|
|
12
|
+
import { match } from "ts-pattern";
|
|
13
|
+
import { CaretRightIcon, DotsThreeIcon } from "@phosphor-icons/react";
|
|
14
|
+
//#region src/navigation/Breadcrumbs.tsx
|
|
15
|
+
/**
|
|
16
|
+
* Where the current page sits in the app's hierarchy, from the top level down (Workspace /
|
|
17
|
+
* Project / Pipeline / Run), with a way back up. Every crumb but the last is a link (rendered
|
|
18
|
+
* through a router component via `as`); the last is the current page, as plain text with
|
|
19
|
+
* `aria-current="page"`. Crumbs are joined by a quiet separator (a slash or a caret). A trail
|
|
20
|
+
* longer than `maxItems` collapses its middle into a "…" button that opens a `Menu` of the hidden
|
|
21
|
+
* crumbs, so the trail stays on one line; labels truncate with a tooltip when it is too wide.
|
|
22
|
+
*
|
|
23
|
+
* Not `Tabs` (peers, not ancestors), not `Stepper` (a sequence to move through), not a path input.
|
|
24
|
+
*
|
|
25
|
+
* SSR: the collapse is count-based, so server and client render the same trail. Nothing touches
|
|
26
|
+
* `window` or `document` at module scope.
|
|
27
|
+
*/
|
|
28
|
+
/** Canonical rungs, subset; only the text step applies (a crumb has no control height). */
|
|
29
|
+
var BreadcrumbsSize = /* @__PURE__ */ function(BreadcrumbsSize) {
|
|
30
|
+
/** body_sm crumbs (12 / 16), 12px icons. Topbars and dense headers. */
|
|
31
|
+
BreadcrumbsSize["SMALL"] = "SMALL";
|
|
32
|
+
/** body_md crumbs (13 / 16), 14px icons. The default. */
|
|
33
|
+
BreadcrumbsSize["MEDIUM"] = "MEDIUM";
|
|
34
|
+
return BreadcrumbsSize;
|
|
35
|
+
}({});
|
|
36
|
+
/** The mark drawn between crumbs. */
|
|
37
|
+
var BreadcrumbsSeparator = /* @__PURE__ */ function(BreadcrumbsSeparator) {
|
|
38
|
+
/** A "/" in tertiary text. The default. */
|
|
39
|
+
BreadcrumbsSeparator["SLASH"] = "SLASH";
|
|
40
|
+
/** A `CaretRightIcon` in the tertiary icon color. */
|
|
41
|
+
BreadcrumbsSeparator["CARET"] = "CARET";
|
|
42
|
+
return BreadcrumbsSeparator;
|
|
43
|
+
}({});
|
|
44
|
+
/** The fewest crumbs a collapsed trail shows: the first, "…", the current page. */
|
|
45
|
+
var MIN_ITEMS = 3;
|
|
46
|
+
/** The characters a long current page keeps (the `8ch` in `CURRENT_LONG_CSS`). */
|
|
47
|
+
var CURRENT_KEPT_CHARACTERS = 8;
|
|
48
|
+
/** The default accessible name of the landmark. */
|
|
49
|
+
var DEFAULT_ARIA_LABEL = "Breadcrumb";
|
|
50
|
+
/** The landmark; the row is as tall as the `X_SMALL` "…" button, so collapsing never shifts it. */
|
|
51
|
+
var Root = /*#__PURE__*/ styled("nav")({
|
|
52
|
+
name: "Root",
|
|
53
|
+
class: "gx-Breadcrumbs-rdzrj0m",
|
|
54
|
+
propsAsIs: false
|
|
55
|
+
});
|
|
56
|
+
var List = /*#__PURE__*/ styled("ol")({
|
|
57
|
+
name: "List",
|
|
58
|
+
class: "gx-Breadcrumbs-List-lnd26k4",
|
|
59
|
+
propsAsIs: false
|
|
60
|
+
});
|
|
61
|
+
/** One list item: its separator (after the first) and the crumb. */
|
|
62
|
+
var Crumb = /*#__PURE__*/ styled("li")({
|
|
63
|
+
name: "Crumb",
|
|
64
|
+
class: "gx-Breadcrumbs-Crumb-c6ilfri",
|
|
65
|
+
propsAsIs: false
|
|
66
|
+
});
|
|
67
|
+
var SeparatorSlot = /*#__PURE__*/ styled("span")({
|
|
68
|
+
name: "SeparatorSlot",
|
|
69
|
+
class: "gx-Breadcrumbs-SeparatorSlot-sjgkhuc",
|
|
70
|
+
propsAsIs: false
|
|
71
|
+
});
|
|
72
|
+
var CrumbContent = /*#__PURE__*/ styled("span")({
|
|
73
|
+
name: "CrumbContent",
|
|
74
|
+
class: "gx-Breadcrumbs-CrumbContent-c1tsq0hr",
|
|
75
|
+
propsAsIs: false
|
|
76
|
+
});
|
|
77
|
+
var CurrentPage = /*#__PURE__*/ styled("span")({
|
|
78
|
+
name: "CurrentPage",
|
|
79
|
+
class: "gx-Breadcrumbs-CurrentPage-cnx9rpd",
|
|
80
|
+
propsAsIs: false
|
|
81
|
+
});
|
|
82
|
+
/** Gap per text step (custom property on `Root`). */
|
|
83
|
+
var BREADCRUMBS_SIZE_TO_CSS_MAP = {
|
|
84
|
+
["SMALL"]: "gx-Breadcrumbs-SMALL-s1vtmzbd",
|
|
85
|
+
["MEDIUM"]: "gx-Breadcrumbs-MEDIUM-m1isjdcl"
|
|
86
|
+
};
|
|
87
|
+
/** Each crumb's color comes from here; its text and icon inherit it. */
|
|
88
|
+
var CRUMB_KIND_TO_CSS_MAP = {
|
|
89
|
+
["LINK"]: "gx-Breadcrumbs-LINK-l3mhh4t",
|
|
90
|
+
["TEXT"]: "gx-Breadcrumbs-TEXT-td0y1an",
|
|
91
|
+
["CURRENT"]: "gx-Breadcrumbs-CURRENT-c1oky86c",
|
|
92
|
+
["ELLIPSIS"]: "gx-Breadcrumbs-ELLIPSIS-e3y6zao"
|
|
93
|
+
};
|
|
94
|
+
/**
|
|
95
|
+
* A current page longer than `CURRENT_KEPT_CHARACTERS` keeps about that many characters while
|
|
96
|
+
* ancestors give up width first.
|
|
97
|
+
*/
|
|
98
|
+
var CURRENT_LONG_CSS = "gx-Breadcrumbs-CURRENT_LONG_CSS-ch05qd8";
|
|
99
|
+
/** A shorter current page never shrinks (a `ch` minimum would make it wider than its label). */
|
|
100
|
+
var CURRENT_SHORT_CSS = "gx-Breadcrumbs-CURRENT_SHORT_CSS-cm65n5z";
|
|
101
|
+
/** Lets the label inside a crumb link truncate. */
|
|
102
|
+
var CRUMB_LINK_CSS = "gx-Breadcrumbs-CRUMB_LINK_CSS-c9pfn9";
|
|
103
|
+
var BREADCRUMBS_SIZE_TO_TEXT_SIZE_MAP = {
|
|
104
|
+
["SMALL"]: TextSize.BODY_SM,
|
|
105
|
+
["MEDIUM"]: TextSize.BODY_MD
|
|
106
|
+
};
|
|
107
|
+
/** Crumb icon px per rung: one step below the rung's III-A.4 icon (Mitch, 2026-10-04). */
|
|
108
|
+
var BREADCRUMBS_SIZE_TO_ICON_PX_MAP = {
|
|
109
|
+
["SMALL"]: 12,
|
|
110
|
+
["MEDIUM"]: 14
|
|
111
|
+
};
|
|
112
|
+
/** The caret separator: 12px at both rungs, the collapsible Widget's caret. */
|
|
113
|
+
var BREADCRUMBS_SIZE_TO_SEPARATOR_ICON_PX_MAP = {
|
|
114
|
+
["SMALL"]: 12,
|
|
115
|
+
["MEDIUM"]: 12
|
|
116
|
+
};
|
|
117
|
+
var BREADCRUMBS_SIZE_TO_MENU_SIZE_MAP = {
|
|
118
|
+
["SMALL"]: MenuSize.SMALL,
|
|
119
|
+
["MEDIUM"]: MenuSize.MEDIUM
|
|
120
|
+
};
|
|
121
|
+
var BREADCRUMBS_SEPARATOR_TO_NODE_MAP = {
|
|
122
|
+
["SLASH"]: (size) => /* @__PURE__ */ jsx(Text, {
|
|
123
|
+
as: "span",
|
|
124
|
+
size: BREADCRUMBS_SIZE_TO_TEXT_SIZE_MAP[size],
|
|
125
|
+
variant: TextVariant.TERTIARY,
|
|
126
|
+
children: "/"
|
|
127
|
+
}),
|
|
128
|
+
["CARET"]: (size) => /* @__PURE__ */ jsx(Icon, {
|
|
129
|
+
component: CaretRightIcon,
|
|
130
|
+
size: BREADCRUMBS_SIZE_TO_SEPARATOR_ICON_PX_MAP[size],
|
|
131
|
+
variant: IconVariant.TERTIARY
|
|
132
|
+
})
|
|
133
|
+
};
|
|
134
|
+
/** The shown slots and the hidden crumbs for a trail and a limit. */
|
|
135
|
+
function collapse(items, maxItems) {
|
|
136
|
+
const limit = Math.max(MIN_ITEMS, Number.isNaN(maxItems) ? MIN_ITEMS : maxItems);
|
|
137
|
+
const last = items.length - 1;
|
|
138
|
+
const entryOf = (item, index) => {
|
|
139
|
+
const key = String(index);
|
|
140
|
+
if (index === last) return {
|
|
141
|
+
kind: "CURRENT",
|
|
142
|
+
item,
|
|
143
|
+
key
|
|
144
|
+
};
|
|
145
|
+
if (item.href !== void 0) return {
|
|
146
|
+
kind: "LINK",
|
|
147
|
+
item,
|
|
148
|
+
href: item.href,
|
|
149
|
+
key
|
|
150
|
+
};
|
|
151
|
+
return {
|
|
152
|
+
kind: "TEXT",
|
|
153
|
+
item,
|
|
154
|
+
key
|
|
155
|
+
};
|
|
156
|
+
};
|
|
157
|
+
if (items.length <= limit) return {
|
|
158
|
+
shown: items.map(entryOf),
|
|
159
|
+
hidden: []
|
|
160
|
+
};
|
|
161
|
+
const tailStart = items.length - (limit - 2);
|
|
162
|
+
const first = items[0];
|
|
163
|
+
return {
|
|
164
|
+
shown: [
|
|
165
|
+
...first === void 0 ? [] : [entryOf(first, 0)],
|
|
166
|
+
{
|
|
167
|
+
kind: "ELLIPSIS",
|
|
168
|
+
key: "ellipsis"
|
|
169
|
+
},
|
|
170
|
+
...items.slice(tailStart).map((item, offset) => entryOf(item, tailStart + offset))
|
|
171
|
+
],
|
|
172
|
+
hidden: items.slice(1, tailStart).map((item, offset) => ({
|
|
173
|
+
item,
|
|
174
|
+
key: String(1 + offset)
|
|
175
|
+
}))
|
|
176
|
+
};
|
|
177
|
+
}
|
|
178
|
+
/** A trail of links up the app's hierarchy, ending at the current page. */
|
|
179
|
+
var Breadcrumbs = forwardRef(function Breadcrumbs({ items, separator = "SLASH", maxItems = 4, size = "MEDIUM", as, ariaLabel, id, className, style, ...rest }, ref) {
|
|
180
|
+
const { shown, hidden } = collapse(items, maxItems);
|
|
181
|
+
const name = ariaLabel || rest["aria-label"] || (rest["aria-labelledby"] ? void 0 : DEFAULT_ARIA_LABEL);
|
|
182
|
+
const asProps = as === void 0 ? {} : { as };
|
|
183
|
+
const contentOf = (item, isCurrent) => /* @__PURE__ */ jsxs(CrumbContent, { children: [item.icon !== void 0 && /* @__PURE__ */ jsx(Icon, {
|
|
184
|
+
component: item.icon,
|
|
185
|
+
size: BREADCRUMBS_SIZE_TO_ICON_PX_MAP[size],
|
|
186
|
+
variant: IconVariant.INHERIT
|
|
187
|
+
}), /* @__PURE__ */ jsx(Text, {
|
|
188
|
+
as: "span",
|
|
189
|
+
size: BREADCRUMBS_SIZE_TO_TEXT_SIZE_MAP[size],
|
|
190
|
+
weight: isCurrent ? TextWeight.MEDIUM : TextWeight.REGULAR,
|
|
191
|
+
variant: TextVariant.INHERIT,
|
|
192
|
+
lineClamp: 1,
|
|
193
|
+
shouldTooltipOnOverflow: true,
|
|
194
|
+
children: item.label
|
|
195
|
+
})] });
|
|
196
|
+
return /* @__PURE__ */ jsx(Root, {
|
|
197
|
+
...rest,
|
|
198
|
+
ref,
|
|
199
|
+
"aria-label": name,
|
|
200
|
+
id,
|
|
201
|
+
className: cx(BREADCRUMBS_SIZE_TO_CSS_MAP[size], className),
|
|
202
|
+
style,
|
|
203
|
+
children: /* @__PURE__ */ jsx(List, { children: shown.map((entry, position) => /* @__PURE__ */ jsxs(Crumb, {
|
|
204
|
+
className: cx(CRUMB_KIND_TO_CSS_MAP[entry.kind], entry.kind === "CURRENT" && (entry.item.label.length > CURRENT_KEPT_CHARACTERS ? CURRENT_LONG_CSS : CURRENT_SHORT_CSS)),
|
|
205
|
+
children: [position > 0 && /* @__PURE__ */ jsx(SeparatorSlot, {
|
|
206
|
+
"aria-hidden": true,
|
|
207
|
+
children: BREADCRUMBS_SEPARATOR_TO_NODE_MAP[separator](size)
|
|
208
|
+
}), match(entry).with({ kind: "ELLIPSIS" }, () => /* @__PURE__ */ jsx(Menu, {
|
|
209
|
+
trigger: /* @__PURE__ */ jsx(Button, {
|
|
210
|
+
icon: DotsThreeIcon,
|
|
211
|
+
variant: ButtonVariant.TERTIARY,
|
|
212
|
+
size: ButtonSize.X_SMALL,
|
|
213
|
+
ariaLabel: "Show hidden breadcrumbs"
|
|
214
|
+
}),
|
|
215
|
+
size: BREADCRUMBS_SIZE_TO_MENU_SIZE_MAP[size],
|
|
216
|
+
placement: Placement.BOTTOM_START,
|
|
217
|
+
children: hidden.map(({ item, key }) => item.href !== void 0 ? /* @__PURE__ */ jsx(MenuItem, {
|
|
218
|
+
label: item.label,
|
|
219
|
+
...item.icon === void 0 ? {} : { icon: item.icon },
|
|
220
|
+
href: item.href,
|
|
221
|
+
...asProps
|
|
222
|
+
}, key) : /* @__PURE__ */ jsx(MenuItem, {
|
|
223
|
+
label: item.label,
|
|
224
|
+
...item.icon === void 0 ? {} : { icon: item.icon },
|
|
225
|
+
isDisabled: true
|
|
226
|
+
}, key))
|
|
227
|
+
})).with({ kind: "LINK" }, ({ item, href }) => /* @__PURE__ */ jsx(Link, {
|
|
228
|
+
href,
|
|
229
|
+
...asProps,
|
|
230
|
+
variant: LinkVariant.INHERIT,
|
|
231
|
+
underline: LinkUnderline.HOVER,
|
|
232
|
+
className: CRUMB_LINK_CSS,
|
|
233
|
+
children: contentOf(item, false)
|
|
234
|
+
})).with({ kind: "TEXT" }, ({ item }) => contentOf(item, false)).with({ kind: "CURRENT" }, ({ item }) => /* @__PURE__ */ jsx(CurrentPage, {
|
|
235
|
+
"aria-current": "page",
|
|
236
|
+
children: contentOf(item, true)
|
|
237
|
+
})).exhaustive()]
|
|
238
|
+
}, entry.key)) })
|
|
239
|
+
});
|
|
240
|
+
});
|
|
241
|
+
Breadcrumbs.displayName = "Breadcrumbs";
|
|
242
|
+
//#endregion
|
|
243
|
+
export { BreadcrumbsSeparator, BreadcrumbsSize, Breadcrumbs as default };
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import type { Icon as PhosphorIcon } from "@phosphor-icons/react";
|
|
2
|
+
import { type AriaAttributes, type CSSProperties, type ReactNode } from "react";
|
|
3
|
+
/** One command in the palette. */
|
|
4
|
+
export interface CommandPaletteItem {
|
|
5
|
+
/** Stable id: the React key, and what recents remember. Unique within `items`. */
|
|
6
|
+
id: string;
|
|
7
|
+
/** Row text; also what the built-in filter matches. */
|
|
8
|
+
label: string;
|
|
9
|
+
/** Second line under the label, one line; the filter matches it too. */
|
|
10
|
+
description?: string;
|
|
11
|
+
/** Phosphor icon component before the label, sized and colored by the row. */
|
|
12
|
+
icon?: PhosphorIcon;
|
|
13
|
+
/** Anything else before the label (an `Avatar`, a `Beacon`). Must not be interactive. */
|
|
14
|
+
leading?: ReactNode;
|
|
15
|
+
/** Shortcut shown as `Kbd` caps at the end of the row, in `useHotkey` grammar. Display only. */
|
|
16
|
+
hotKeys?: string[];
|
|
17
|
+
/** Heading this command is listed under. Items without one come first, with no heading. */
|
|
18
|
+
group?: string;
|
|
19
|
+
/** Extra words the built-in filter matches ("settings" for "Preferences"). Not shown. */
|
|
20
|
+
keywords?: string[];
|
|
21
|
+
/** Shown in the disabled colors; skipped by the arrow keys and cannot be chosen. */
|
|
22
|
+
isDisabled?: boolean;
|
|
23
|
+
/** Runs when the command is chosen (Enter or click), after the palette starts closing. */
|
|
24
|
+
onSelect: () => void;
|
|
25
|
+
}
|
|
26
|
+
export interface CommandPaletteProps extends AriaAttributes {
|
|
27
|
+
/** The commands, in display order. Items that share a `group` are shown together under its heading. */
|
|
28
|
+
items: CommandPaletteItem[];
|
|
29
|
+
/** Controlled open state. When set, the palette calls `onOpenChange` and lets the caller decide. */
|
|
30
|
+
isOpen?: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Initial open state while uncontrolled.
|
|
33
|
+
* @default false
|
|
34
|
+
*/
|
|
35
|
+
defaultIsOpen?: boolean;
|
|
36
|
+
/** Called with `false` on Escape, a backdrop click and a chosen command, and with the toggled state when the bound shortcut fires. */
|
|
37
|
+
onOpenChange?: (isOpen: boolean) => void;
|
|
38
|
+
/**
|
|
39
|
+
* Hint in the empty search field.
|
|
40
|
+
* @default "Type a command or search"
|
|
41
|
+
*/
|
|
42
|
+
placeholder?: string;
|
|
43
|
+
/** Server search. Receives the term once typing pauses (150ms), at once on clear, and `""` when the palette closes with a term. Turns off built-in filtering: the app passes the matching `items`. */
|
|
44
|
+
onSearch?: (term: string) => void;
|
|
45
|
+
/**
|
|
46
|
+
* Shows a spinner in the search field while the app's search runs, and holds back `emptyMessage`. Typing stays possible.
|
|
47
|
+
* @default false
|
|
48
|
+
*/
|
|
49
|
+
isLoading?: boolean;
|
|
50
|
+
/**
|
|
51
|
+
* Shown in place of the list when nothing matches.
|
|
52
|
+
* @default "No results"
|
|
53
|
+
*/
|
|
54
|
+
emptyMessage?: string;
|
|
55
|
+
/** Remembers the last 5 chosen commands under this `localStorage` key and lists them first, under "Recent", while the search is empty. Off when omitted. */
|
|
56
|
+
storageKey?: string;
|
|
57
|
+
/**
|
|
58
|
+
* Shortcut that toggles the palette, in `useHotkey` grammar. Only bound with `shouldBindHotKey`.
|
|
59
|
+
* @default ["mod", "k"]
|
|
60
|
+
*/
|
|
61
|
+
hotKeys?: string[];
|
|
62
|
+
/**
|
|
63
|
+
* Bind `hotKeys` with `useHotkey`, so the shortcut opens and closes the palette from anywhere, inside text fields too.
|
|
64
|
+
* @default false
|
|
65
|
+
*/
|
|
66
|
+
shouldBindHotKey?: boolean;
|
|
67
|
+
/**
|
|
68
|
+
* Accessible name of the dialog.
|
|
69
|
+
* @default "Command palette"
|
|
70
|
+
*/
|
|
71
|
+
ariaLabel?: string;
|
|
72
|
+
/** DOM id on the panel (`role="dialog"`). @default a `useId()` value */
|
|
73
|
+
id?: string;
|
|
74
|
+
/** Any `data-*` attribute, forwarded to the panel. */
|
|
75
|
+
[dataAttribute: `data-${string}`]: string | number | boolean | undefined;
|
|
76
|
+
/** Extra class on the panel. */
|
|
77
|
+
className?: string;
|
|
78
|
+
/** Inline style on the panel; only for setting CSS custom properties. */
|
|
79
|
+
style?: CSSProperties;
|
|
80
|
+
}
|
|
81
|
+
/** A modal search-and-run dialog over a list of commands. */
|
|
82
|
+
declare const CommandPalette: import("react").ForwardRefExoticComponent<CommandPaletteProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
83
|
+
export default CommandPalette;
|