@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
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import type { ExpandedState as TanstackExpandedState, OnChangeFn as TanstackOnChangeFn } from "@tanstack/react-table";
|
|
2
|
-
interface UseTableRowExpansionOptions {
|
|
3
|
-
expandedRowIds?: string[];
|
|
4
|
-
defaultExpandedRowIds?: string[];
|
|
5
|
-
onExpandedChange?: (expandedRowIds: string[]) => void;
|
|
6
|
-
enableMultiRowExpansion?: boolean;
|
|
7
|
-
}
|
|
8
|
-
export interface TableRowExpansion {
|
|
9
|
-
/** Always defined, so it can be fed to TanStack's `state.expanded`. */
|
|
10
|
-
expanded: TanstackExpandedState;
|
|
11
|
-
expandedRowIds: string[];
|
|
12
|
-
onExpandedChange: TanstackOnChangeFn<TanstackExpandedState>;
|
|
13
|
-
/** Drops ids for rows that no longer exist, e.g. after a refetch. */
|
|
14
|
-
pruneMissingRowIds: (rowIds: string[]) => void;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Owns row-expansion state, controlled or uncontrolled, and translates between
|
|
18
|
-
* the `string[]` public shape and TanStack's `ExpandedState` record.
|
|
19
|
-
*
|
|
20
|
-
* Expansion lives in table state rather than in the column definitions, so
|
|
21
|
-
* toggling a row no longer rebuilds every column def.
|
|
22
|
-
*/
|
|
23
|
-
export declare function useTableRowExpansion({ expandedRowIds, defaultExpandedRowIds, onExpandedChange, enableMultiRowExpansion, }: UseTableRowExpansionOptions): TableRowExpansion;
|
|
24
|
-
export {};
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
2
|
-
//#region src/table/useTableRowExpansion.ts
|
|
3
|
-
function toExpandedState(expandedRowIds) {
|
|
4
|
-
return Object.fromEntries(expandedRowIds.map((rowId) => [rowId, true]));
|
|
5
|
-
}
|
|
6
|
-
function toExpandedRowIds(expanded) {
|
|
7
|
-
if (expanded === true) return [];
|
|
8
|
-
return Object.entries(expanded).filter(([, isExpanded]) => isExpanded).map(([rowId]) => rowId);
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* Owns row-expansion state, controlled or uncontrolled, and translates between
|
|
12
|
-
* the `string[]` public shape and TanStack's `ExpandedState` record.
|
|
13
|
-
*
|
|
14
|
-
* Expansion lives in table state rather than in the column definitions, so
|
|
15
|
-
* toggling a row no longer rebuilds every column def.
|
|
16
|
-
*/
|
|
17
|
-
function useTableRowExpansion({ expandedRowIds, defaultExpandedRowIds, onExpandedChange, enableMultiRowExpansion = true }) {
|
|
18
|
-
const [internalRowIds, setInternalRowIds] = useState(defaultExpandedRowIds ?? []);
|
|
19
|
-
const isControlled = expandedRowIds !== void 0;
|
|
20
|
-
const resolvedRowIds = isControlled ? expandedRowIds : internalRowIds;
|
|
21
|
-
const rowIdsRef = useRef(resolvedRowIds);
|
|
22
|
-
const onChangeRef = useRef(onExpandedChange);
|
|
23
|
-
useEffect(() => {
|
|
24
|
-
rowIdsRef.current = resolvedRowIds;
|
|
25
|
-
onChangeRef.current = onExpandedChange;
|
|
26
|
-
});
|
|
27
|
-
const applyRowIds = useCallback((nextRowIds) => {
|
|
28
|
-
rowIdsRef.current = nextRowIds;
|
|
29
|
-
if (!isControlled) setInternalRowIds(nextRowIds);
|
|
30
|
-
onChangeRef.current?.(nextRowIds);
|
|
31
|
-
}, [isControlled]);
|
|
32
|
-
const handleExpandedChange = useCallback((updater) => {
|
|
33
|
-
const current = toExpandedState(rowIdsRef.current);
|
|
34
|
-
const nextRowIds = toExpandedRowIds(typeof updater === "function" ? updater(current) : updater);
|
|
35
|
-
if (!enableMultiRowExpansion && nextRowIds.length > 1) {
|
|
36
|
-
const opened = nextRowIds.filter((rowId) => !rowIdsRef.current.includes(rowId));
|
|
37
|
-
applyRowIds(opened.length > 0 ? [opened[opened.length - 1]] : []);
|
|
38
|
-
return;
|
|
39
|
-
}
|
|
40
|
-
applyRowIds(nextRowIds);
|
|
41
|
-
}, [applyRowIds, enableMultiRowExpansion]);
|
|
42
|
-
const pruneMissingRowIds = useCallback((rowIds) => {
|
|
43
|
-
const present = new Set(rowIds);
|
|
44
|
-
const nextRowIds = rowIdsRef.current.filter((rowId) => present.has(rowId));
|
|
45
|
-
if (nextRowIds.length === rowIdsRef.current.length) return;
|
|
46
|
-
applyRowIds(nextRowIds);
|
|
47
|
-
}, [applyRowIds]);
|
|
48
|
-
const expanded = useMemo(() => toExpandedState(resolvedRowIds), [resolvedRowIds]);
|
|
49
|
-
return useMemo(() => ({
|
|
50
|
-
expanded,
|
|
51
|
-
expandedRowIds: resolvedRowIds,
|
|
52
|
-
onExpandedChange: handleExpandedChange,
|
|
53
|
-
pruneMissingRowIds
|
|
54
|
-
}), [
|
|
55
|
-
expanded,
|
|
56
|
-
resolvedRowIds,
|
|
57
|
-
handleExpandedChange,
|
|
58
|
-
pruneMissingRowIds
|
|
59
|
-
]);
|
|
60
|
-
}
|
|
61
|
-
//#endregion
|
|
62
|
-
export { useTableRowExpansion };
|
package/dist/table/utils.d.ts
DELETED
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import type { Theme } from "../theme/types";
|
|
2
|
-
import { EstimateColumnWidthOptions, Row, TableDensity, TableVariant } from "./types";
|
|
3
|
-
/**
|
|
4
|
-
* Density and variant tokens for every table surface.
|
|
5
|
-
*
|
|
6
|
-
* This module is evaluated by Linaria at build time (its constants are
|
|
7
|
-
* interpolated statically into styled templates), so it must stay free of
|
|
8
|
-
* component imports — pulling in React, framer-motion or Phosphor here would
|
|
9
|
-
* drag them into build-time evaluation.
|
|
10
|
-
*/
|
|
11
|
-
/** Synthetic column injected in front of the consumer's columns. */
|
|
12
|
-
export declare const SELECT_COLUMN_ID = "__select__";
|
|
13
|
-
export declare const SELECT_COLUMN_WIDTH = 44;
|
|
14
|
-
export declare const EXPAND_COLUMN_ID = "__expand__";
|
|
15
|
-
export declare const EXPAND_COLUMN_WIDTH = 44;
|
|
16
|
-
/** Width assumed for a pinned column that declares no explicit `size`. */
|
|
17
|
-
export declare const DEFAULT_COLUMN_WIDTH = 150;
|
|
18
|
-
/** Bounds applied when a resized column declares no `minSize`/`maxSize`. */
|
|
19
|
-
export declare const DEFAULT_MIN_COLUMN_WIDTH = 60;
|
|
20
|
-
export declare const DEFAULT_MAX_COLUMN_WIDTH = 800;
|
|
21
|
-
/** How far past the last row the infinite-scroll sentinel reaches. */
|
|
22
|
-
export declare const INFINITE_SCROLL_ROOT_MARGIN_PX = 500;
|
|
23
|
-
/** Spreadsheet: trailing sticky column holding row actions and add-column. */
|
|
24
|
-
export declare const ROW_ACTION_COLUMN_WIDTH = 48;
|
|
25
|
-
/** Spreadsheet: diameter of the per-cell enrichment status dot. */
|
|
26
|
-
export declare const CELL_STATUS_DOT_SIZE = 6;
|
|
27
|
-
/**
|
|
28
|
-
* Builds a stand-in row for surfaces with no TanStack table instance — the
|
|
29
|
-
* virtualized table and the spreadsheet both render straight from an index.
|
|
30
|
-
*
|
|
31
|
-
* Only `original` and `index` exist at runtime. Every other member of
|
|
32
|
-
* TanStack's `Row` — `id`, `getIsSelected()`, `subRows`, `getValue()` — is
|
|
33
|
-
* typed as present but absent, so calling one throws. Cell renderers on those
|
|
34
|
-
* surfaces should read `original` and `index` and nothing else.
|
|
35
|
-
*/
|
|
36
|
-
export declare function createVirtualRow<TData>(original: TData, index: number): Row<TData>;
|
|
37
|
-
/** Vertical padding is constant across densities; only the horizontal changes. */
|
|
38
|
-
export declare const CELL_PADDING_Y = "8px";
|
|
39
|
-
export declare function getDensityRowHeightPx(density?: TableDensity): number;
|
|
40
|
-
export declare function getDensityRowHeight(density?: TableDensity): string;
|
|
41
|
-
export declare function getDensityCellPaddingX(density?: TableDensity): string;
|
|
42
|
-
export declare function getDensityCellPadding(density?: TableDensity): string;
|
|
43
|
-
export declare function getVariantBackgroundColor(theme: Theme, variant?: TableVariant): string;
|
|
44
|
-
export declare function getVariantHoverBackgroundColor(theme: Theme, variant?: TableVariant): string;
|
|
45
|
-
export declare function getVariantSelectedBackgroundColor(theme: Theme, variant?: TableVariant): string;
|
|
46
|
-
/**
|
|
47
|
-
* Estimate column width based on header name and sample data values.
|
|
48
|
-
* Useful for auto-sizing table columns based on content.
|
|
49
|
-
*/
|
|
50
|
-
export declare const estimateColumnWidth: (columnName: string, sampleValues: string[], options?: EstimateColumnWidthOptions) => number;
|
package/dist/table/utils.js
DELETED
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
import { TableDensity, TableVariant } from "./types.js";
|
|
2
|
-
import { match } from "ts-pattern";
|
|
3
|
-
//#region src/table/utils.ts
|
|
4
|
-
/**
|
|
5
|
-
* Density and variant tokens for every table surface.
|
|
6
|
-
*
|
|
7
|
-
* This module is evaluated by Linaria at build time (its constants are
|
|
8
|
-
* interpolated statically into styled templates), so it must stay free of
|
|
9
|
-
* component imports — pulling in React, framer-motion or Phosphor here would
|
|
10
|
-
* drag them into build-time evaluation.
|
|
11
|
-
*/
|
|
12
|
-
/** Synthetic column injected in front of the consumer's columns. */
|
|
13
|
-
var SELECT_COLUMN_ID = "__select__";
|
|
14
|
-
var SELECT_COLUMN_WIDTH = 44;
|
|
15
|
-
var EXPAND_COLUMN_ID = "__expand__";
|
|
16
|
-
var EXPAND_COLUMN_WIDTH = 44;
|
|
17
|
-
/** Width assumed for a pinned column that declares no explicit `size`. */
|
|
18
|
-
var DEFAULT_COLUMN_WIDTH = 150;
|
|
19
|
-
/** Bounds applied when a resized column declares no `minSize`/`maxSize`. */
|
|
20
|
-
var DEFAULT_MIN_COLUMN_WIDTH = 60;
|
|
21
|
-
var DEFAULT_MAX_COLUMN_WIDTH = 800;
|
|
22
|
-
/** How far past the last row the infinite-scroll sentinel reaches. */
|
|
23
|
-
var INFINITE_SCROLL_ROOT_MARGIN_PX = 500;
|
|
24
|
-
/** Spreadsheet: trailing sticky column holding row actions and add-column. */
|
|
25
|
-
var ROW_ACTION_COLUMN_WIDTH = 48;
|
|
26
|
-
/** Spreadsheet: diameter of the per-cell enrichment status dot. */
|
|
27
|
-
var CELL_STATUS_DOT_SIZE = 6;
|
|
28
|
-
/**
|
|
29
|
-
* Builds a stand-in row for surfaces with no TanStack table instance — the
|
|
30
|
-
* virtualized table and the spreadsheet both render straight from an index.
|
|
31
|
-
*
|
|
32
|
-
* Only `original` and `index` exist at runtime. Every other member of
|
|
33
|
-
* TanStack's `Row` — `id`, `getIsSelected()`, `subRows`, `getValue()` — is
|
|
34
|
-
* typed as present but absent, so calling one throws. Cell renderers on those
|
|
35
|
-
* surfaces should read `original` and `index` and nothing else.
|
|
36
|
-
*/
|
|
37
|
-
function createVirtualRow(original, index) {
|
|
38
|
-
return {
|
|
39
|
-
original,
|
|
40
|
-
index
|
|
41
|
-
};
|
|
42
|
-
}
|
|
43
|
-
/** Vertical padding is constant across densities; only the horizontal changes. */
|
|
44
|
-
var CELL_PADDING_Y = "8px";
|
|
45
|
-
function getDensityRowHeightPx(density) {
|
|
46
|
-
return match(density).with(TableDensity.SMALL, () => 32).with(TableDensity.MEDIUM, () => 48).with(TableDensity.LARGE, () => 56).with(void 0, () => 48).exhaustive();
|
|
47
|
-
}
|
|
48
|
-
function getDensityRowHeight(density) {
|
|
49
|
-
return `${getDensityRowHeightPx(density)}px`;
|
|
50
|
-
}
|
|
51
|
-
function getDensityCellPaddingX(density) {
|
|
52
|
-
return match(density).with(TableDensity.SMALL, () => "12px").with(TableDensity.MEDIUM, () => "16px").with(TableDensity.LARGE, () => "20px").with(void 0, () => "16px").exhaustive();
|
|
53
|
-
}
|
|
54
|
-
function getDensityCellPadding(density) {
|
|
55
|
-
return `8px ${getDensityCellPaddingX(density)}`;
|
|
56
|
-
}
|
|
57
|
-
function getVariantBackgroundColor(theme, variant) {
|
|
58
|
-
return match(variant).with(TableVariant.BASE, () => theme.color.background.base).with(TableVariant.PRIMARY, () => theme.color.background.primary).with(TableVariant.SECONDARY, () => theme.color.background.secondary).with(TableVariant.TERTIARY, () => theme.color.background.tertiary).with(void 0, () => theme.color.background.primary).exhaustive();
|
|
59
|
-
}
|
|
60
|
-
function getVariantHoverBackgroundColor(theme, variant) {
|
|
61
|
-
return match(variant).with(TableVariant.BASE, () => theme.color.background.tertiary).with(TableVariant.PRIMARY, () => theme.color.background.tertiary).with(TableVariant.SECONDARY, () => theme.color.background.tertiary).with(TableVariant.TERTIARY, () => theme.color.background.secondary).with(void 0, () => theme.color.background.tertiary).exhaustive();
|
|
62
|
-
}
|
|
63
|
-
function getVariantSelectedBackgroundColor(theme, variant) {
|
|
64
|
-
return match(variant).with(TableVariant.BASE, () => theme.color.background.secondary).with(TableVariant.PRIMARY, () => theme.color.background.secondary).with(TableVariant.SECONDARY, () => theme.color.background.primary).with(TableVariant.TERTIARY, () => theme.color.background.primary).with(void 0, () => theme.color.background.secondary).exhaustive();
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
* Estimate column width based on header name and sample data values.
|
|
68
|
-
* Useful for auto-sizing table columns based on content.
|
|
69
|
-
*/
|
|
70
|
-
var estimateColumnWidth = (columnName, sampleValues, options = {}) => {
|
|
71
|
-
const { minWidth = 80, maxWidth = 400, charWidth = 8, padding = 32 } = options;
|
|
72
|
-
const headerLength = columnName.length;
|
|
73
|
-
const maxValueLength = sampleValues.reduce((max, val) => Math.max(max, String(val).length), 0);
|
|
74
|
-
const estimatedWidth = Math.max(headerLength, maxValueLength) * charWidth + padding;
|
|
75
|
-
return Math.max(minWidth, Math.min(maxWidth, estimatedWidth));
|
|
76
|
-
};
|
|
77
|
-
//#endregion
|
|
78
|
-
export { CELL_PADDING_Y, CELL_STATUS_DOT_SIZE, DEFAULT_COLUMN_WIDTH, DEFAULT_MAX_COLUMN_WIDTH, DEFAULT_MIN_COLUMN_WIDTH, EXPAND_COLUMN_ID, EXPAND_COLUMN_WIDTH, INFINITE_SCROLL_ROOT_MARGIN_PX, ROW_ACTION_COLUMN_WIDTH, SELECT_COLUMN_ID, SELECT_COLUMN_WIDTH, createVirtualRow, estimateColumnWidth, getDensityCellPadding, getDensityCellPaddingX, getDensityRowHeight, getDensityRowHeightPx, getVariantBackgroundColor, getVariantHoverBackgroundColor, getVariantSelectedBackgroundColor };
|
package/dist/text/HotKeys.d.ts
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
/** Key-cap contrast. Step it down when the shortcut is secondary to its label. */
|
|
2
|
-
export declare enum HotKeysVariant {
|
|
3
|
-
BASE = "BASE",
|
|
4
|
-
PRIMARY = "PRIMARY",
|
|
5
|
-
SECONDARY = "SECONDARY",
|
|
6
|
-
TERTIARY = "TERTIARY",
|
|
7
|
-
DISABLED = "DISABLED"
|
|
8
|
-
}
|
|
9
|
-
/** Key-cap size — 14 / 16 / 18px minimum width. Match the adjacent text. */
|
|
10
|
-
export declare enum HotKeysSize {
|
|
11
|
-
SMALL = "SMALL",
|
|
12
|
-
MEDIUM = "MEDIUM",
|
|
13
|
-
LARGE = "LARGE"
|
|
14
|
-
}
|
|
15
|
-
export interface HotKeysProps {
|
|
16
|
-
/** One cap per entry, in press order — e.g. `["⌘", "K"]`. Rendered verbatim. */
|
|
17
|
-
hotKeys: string[];
|
|
18
|
-
/** @default HotKeysVariant.BASE */
|
|
19
|
-
variant?: HotKeysVariant;
|
|
20
|
-
/** @default HotKeysSize.MEDIUM */
|
|
21
|
-
size?: HotKeysSize;
|
|
22
|
-
/** Render caps in the mono family. */
|
|
23
|
-
isMonospace?: boolean;
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Renders a keyboard shortcut as a row of key caps. Display only — it does not
|
|
27
|
-
* bind anything; wire the actual handler yourself.
|
|
28
|
-
*/
|
|
29
|
-
declare const HotKeys: ({ hotKeys, variant, size, isMonospace, }: HotKeysProps) => import("react").JSX.Element;
|
|
30
|
-
export default HotKeys;
|
package/dist/text/HotKeys.js
DELETED
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
import { withTheme } from "../theme/GalaxyTheme.js";
|
|
2
|
-
/* empty css */
|
|
3
|
-
import { styled } from "@linaria/react";
|
|
4
|
-
import { match } from "ts-pattern";
|
|
5
|
-
import { jsx } from "react/jsx-runtime";
|
|
6
|
-
//#region src/text/HotKeys.tsx
|
|
7
|
-
/** Key-cap contrast. Step it down when the shortcut is secondary to its label. */
|
|
8
|
-
var HotKeysVariant = /* @__PURE__ */ function(HotKeysVariant) {
|
|
9
|
-
HotKeysVariant["BASE"] = "BASE";
|
|
10
|
-
HotKeysVariant["PRIMARY"] = "PRIMARY";
|
|
11
|
-
HotKeysVariant["SECONDARY"] = "SECONDARY";
|
|
12
|
-
HotKeysVariant["TERTIARY"] = "TERTIARY";
|
|
13
|
-
HotKeysVariant["DISABLED"] = "DISABLED";
|
|
14
|
-
return HotKeysVariant;
|
|
15
|
-
}({});
|
|
16
|
-
/** Key-cap size — 14 / 16 / 18px minimum width. Match the adjacent text. */
|
|
17
|
-
var HotKeysSize = /* @__PURE__ */ function(HotKeysSize) {
|
|
18
|
-
HotKeysSize["SMALL"] = "SMALL";
|
|
19
|
-
HotKeysSize["MEDIUM"] = "MEDIUM";
|
|
20
|
-
HotKeysSize["LARGE"] = "LARGE";
|
|
21
|
-
return HotKeysSize;
|
|
22
|
-
}({});
|
|
23
|
-
var HotKeysWrapper = /*#__PURE__*/ styled("div")({
|
|
24
|
-
name: "HotKeysWrapper",
|
|
25
|
-
class: "hokyumm",
|
|
26
|
-
propsAsIs: false
|
|
27
|
-
});
|
|
28
|
-
var _exp2 = () => ({ $size }) => {
|
|
29
|
-
return match($size).with("SMALL", () => "14px").with("MEDIUM", () => "16px").with("LARGE", () => "20px").exhaustive();
|
|
30
|
-
};
|
|
31
|
-
var _exp3 = () => ({ $variant, theme }) => {
|
|
32
|
-
return match($variant).with("BASE", () => theme.color.background.base).with("PRIMARY", () => theme.color.background.primary).with("SECONDARY", () => theme.color.background.secondary).with("TERTIARY", () => theme.color.background.tertiary).with("DISABLED", () => theme.color.background.secondary).with(void 0, () => theme.color.background.tertiary).exhaustive();
|
|
33
|
-
};
|
|
34
|
-
var _exp4 = () => ({ theme }) => theme.color.border.primary;
|
|
35
|
-
var _exp5 = () => ({ $variant, theme }) => {
|
|
36
|
-
return match($variant).with("DISABLED", () => theme.color.text.disabled).otherwise(() => theme.color.text.secondary);
|
|
37
|
-
};
|
|
38
|
-
var _exp6 = () => ({ theme, $isMonospace }) => $isMonospace ? theme.font.mono.family : theme.font.sans.family;
|
|
39
|
-
var _exp7 = () => ({ theme, $size }) => {
|
|
40
|
-
return match($size).with("SMALL", () => theme.font.sans.size.caption).with("MEDIUM", () => theme.font.sans.size.body_sm).with("LARGE", () => theme.font.sans.size.body_md).exhaustive();
|
|
41
|
-
};
|
|
42
|
-
var _exp8 = () => ({ theme, $size }) => {
|
|
43
|
-
return match($size).with("SMALL", () => theme.font.sans.height.caption).with("MEDIUM", () => theme.font.sans.height.body_sm).with("LARGE", () => theme.font.sans.height.body_md).exhaustive();
|
|
44
|
-
};
|
|
45
|
-
var _exp9 = () => ({ theme }) => theme.font.sans.weight.regular;
|
|
46
|
-
var StyledHotKey = withTheme(/*#__PURE__*/ styled("div")({
|
|
47
|
-
name: "StyledHotKey",
|
|
48
|
-
class: "sl247mt",
|
|
49
|
-
propsAsIs: false,
|
|
50
|
-
vars: {
|
|
51
|
-
"sl247mt-0": [_exp2()],
|
|
52
|
-
"sl247mt-1": [_exp3()],
|
|
53
|
-
"sl247mt-2": [_exp4()],
|
|
54
|
-
"sl247mt-3": [_exp5()],
|
|
55
|
-
"sl247mt-4": [_exp6()],
|
|
56
|
-
"sl247mt-5": [_exp7()],
|
|
57
|
-
"sl247mt-6": [_exp8()],
|
|
58
|
-
"sl247mt-7": [_exp9()]
|
|
59
|
-
}
|
|
60
|
-
}));
|
|
61
|
-
/**
|
|
62
|
-
* Renders a keyboard shortcut as a row of key caps. Display only — it does not
|
|
63
|
-
* bind anything; wire the actual handler yourself.
|
|
64
|
-
*/
|
|
65
|
-
var HotKeys = ({ hotKeys, variant, size = "MEDIUM", isMonospace = false }) => {
|
|
66
|
-
return /* @__PURE__ */ jsx(HotKeysWrapper, { children: hotKeys.map((hotKey) => /* @__PURE__ */ jsx(StyledHotKey, {
|
|
67
|
-
$variant: variant,
|
|
68
|
-
$size: size,
|
|
69
|
-
$isMonospace: isMonospace,
|
|
70
|
-
children: hotKey
|
|
71
|
-
}, hotKey)) });
|
|
72
|
-
};
|
|
73
|
-
//#endregion
|
|
74
|
-
export { HotKeysSize, HotKeysVariant, HotKeys as default };
|
package/dist/text/Paragraph.d.ts
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import type { CSSProperties, PropsWithChildren } from "react";
|
|
2
|
-
import { TextSize, TextVariant, TextWeight } from "./Text";
|
|
3
|
-
export interface ParagraphProps {
|
|
4
|
-
/** Color role. @default TextVariant.PRIMARY */
|
|
5
|
-
variant?: TextVariant;
|
|
6
|
-
/** Type scale step. @default TextSize.BODY_MD */
|
|
7
|
-
size?: TextSize;
|
|
8
|
-
/** @default TextWeight.REGULAR */
|
|
9
|
-
weight?: TextWeight;
|
|
10
|
-
/** @default "left" */
|
|
11
|
-
align?: CSSProperties["textAlign"];
|
|
12
|
-
/** Cursor over the text. Inherits from the parent when unset. */
|
|
13
|
-
cursor?: CSSProperties["cursor"];
|
|
14
|
-
/** Raw color that bypasses `variant`. Escape hatch — prefer `variant`. */
|
|
15
|
-
hex?: string;
|
|
16
|
-
/** Render in the mono family (Berkeley Mono) instead of sans. */
|
|
17
|
-
isMonospace?: boolean;
|
|
18
|
-
/** Let the user select the text. Off by default so UI chrome isn't selectable. */
|
|
19
|
-
isSelectable?: boolean;
|
|
20
|
-
/** Truncate after this many lines with an ellipsis. Omit to let it run. */
|
|
21
|
-
lineClamp?: number;
|
|
22
|
-
/** Reserve height so clamped copy doesn't shift layout. Defaults to `lineClamp` em. */
|
|
23
|
-
minHeight?: string;
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Multi-line body copy. Same tokens as `Text`, but with a 1.25× line height for
|
|
27
|
-
* readability and `lineClamp` instead of single-line ellipsis.
|
|
28
|
-
*
|
|
29
|
-
* Use `Text` for labels and single-line UI strings; reach for this when the copy
|
|
30
|
-
* is a real paragraph.
|
|
31
|
-
*/
|
|
32
|
-
declare const Paragraph: ({ children, size, variant, weight, align, cursor, isMonospace, isSelectable, lineClamp, minHeight, hex, }: PropsWithChildren<ParagraphProps>) => import("react").JSX.Element;
|
|
33
|
-
export default Paragraph;
|
package/dist/text/Paragraph.js
DELETED
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
import { withTheme } from "../theme/GalaxyTheme.js";
|
|
2
|
-
import { TextSize, TextVariant, TextWeight } from "./Text.js";
|
|
3
|
-
/* empty css */
|
|
4
|
-
import { styled } from "@linaria/react";
|
|
5
|
-
import { match } from "ts-pattern";
|
|
6
|
-
import { jsx } from "react/jsx-runtime";
|
|
7
|
-
//#region src/text/Paragraph.tsx
|
|
8
|
-
var _exp = () => ({ theme, $variant, $hex }) => {
|
|
9
|
-
if ($hex) return $hex;
|
|
10
|
-
return match($variant).with(TextVariant.PRIMARY, () => theme.color.text.primary).with(TextVariant.PRIMARY_ALT, () => theme.color.text.primaryAlt).with(TextVariant.SECONDARY, () => theme.color.text.secondary).with(TextVariant.SECONDARY_ALT, () => theme.color.text.secondaryAlt).with(TextVariant.TERTIARY, () => theme.color.text.tertiary).with(TextVariant.TERTIARY_ALT, () => theme.color.text.tertiaryAlt).with(TextVariant.SUCCESS, () => theme.color.text.success).with(TextVariant.ERROR, () => theme.color.text.error).with(TextVariant.LIME, () => theme.color.text.lime).with(TextVariant.PURPLE, () => theme.color.text.purple).with(TextVariant.TEAL, () => theme.color.text.teal).with(TextVariant.YELLOW, () => theme.color.text.yellow).with(TextVariant.ORANGE, () => theme.color.text.orange).with(TextVariant.PINK, () => theme.color.text.pink).with(TextVariant.BLUE, () => theme.color.text.blue).with(TextVariant.WARNING, () => theme.color.text.warning).with(TextVariant.DISABLED, () => theme.color.text.disabled).exhaustive();
|
|
11
|
-
};
|
|
12
|
-
var _exp2 = () => ({ theme, $isMonospace }) => $isMonospace ? theme.font.mono.family : theme.font.sans.family;
|
|
13
|
-
var _exp3 = () => ({ theme, $size }) => {
|
|
14
|
-
return match($size).with(TextSize.CAPTION, () => theme.font.sans.size.caption).with(TextSize.BODY_SM, () => theme.font.sans.size.body_sm).with(TextSize.BODY_MD, () => theme.font.sans.size.body_md).with(TextSize.BODY_LG, () => theme.font.sans.size.body_lg).with(TextSize.HEADING_SM, () => theme.font.sans.size.heading_sm).with(TextSize.HEADING_MD, () => theme.font.sans.size.heading_md).with(TextSize.HEADING_LG, () => theme.font.sans.size.heading_lg).exhaustive();
|
|
15
|
-
};
|
|
16
|
-
var _exp4 = () => ({ theme, $weight }) => {
|
|
17
|
-
return match($weight).with(TextWeight.REGULAR, () => theme.font.sans.weight.regular).with(TextWeight.MEDIUM, () => theme.font.sans.weight.medium).exhaustive();
|
|
18
|
-
};
|
|
19
|
-
var _exp5 = () => ({ theme, $size }) => {
|
|
20
|
-
return match($size).with(TextSize.CAPTION, () => `calc(${theme.font.sans.height.caption} * 1.25)`).with(TextSize.BODY_SM, () => `calc(${theme.font.sans.height.body_sm} * 1.25)`).with(TextSize.BODY_MD, () => `calc(${theme.font.sans.height.body_md} * 1.25)`).with(TextSize.BODY_LG, () => `calc(${theme.font.sans.height.body_lg} * 1.25)`).with(TextSize.HEADING_SM, () => `calc(${theme.font.sans.height.heading_sm} * 1.25)`).with(TextSize.HEADING_MD, () => `calc(${theme.font.sans.height.heading_md} * 1.25)`).with(TextSize.HEADING_LG, () => `calc(${theme.font.sans.height.heading_lg} * 1.25)`).exhaustive();
|
|
21
|
-
};
|
|
22
|
-
var _exp6 = () => ({ theme, $size }) => {
|
|
23
|
-
return match($size).with(TextSize.CAPTION, () => theme.font.sans.spacing.caption).with(TextSize.BODY_SM, () => theme.font.sans.spacing.body_sm).with(TextSize.BODY_MD, () => theme.font.sans.spacing.body_md).with(TextSize.BODY_LG, () => theme.font.sans.spacing.body_lg).with(TextSize.HEADING_SM, () => theme.font.sans.spacing.heading_sm).with(TextSize.HEADING_MD, () => theme.font.sans.spacing.heading_md).with(TextSize.HEADING_LG, () => theme.font.sans.spacing.heading_lg).exhaustive();
|
|
24
|
-
};
|
|
25
|
-
var _exp7 = () => ({ $align }) => $align ?? "left";
|
|
26
|
-
var _exp8 = () => ({ $cursor }) => $cursor ?? "inherit";
|
|
27
|
-
var _exp10 = () => ({ $isSelectable }) => $isSelectable ? "text" : "none";
|
|
28
|
-
var _exp11 = () => ({ $lineClamp }) => $lineClamp ? "-webkit-box" : "inline";
|
|
29
|
-
var _exp12 = () => ({ $lineClamp }) => $lineClamp ?? "none";
|
|
30
|
-
var _exp13 = () => ({ $lineClamp }) => $lineClamp ? "vertical" : "unset";
|
|
31
|
-
var _exp14 = () => ({ $lineClamp }) => $lineClamp ? "hidden" : "visible";
|
|
32
|
-
var _exp15 = () => ({ $lineClamp }) => $lineClamp ? "100%" : "auto";
|
|
33
|
-
var _exp16 = () => ({ $lineClamp, $minHeight }) => {
|
|
34
|
-
if ($minHeight) return $minHeight;
|
|
35
|
-
if ($lineClamp) return `${$lineClamp}em`;
|
|
36
|
-
return "auto";
|
|
37
|
-
};
|
|
38
|
-
var StyledParagraph = withTheme(/*#__PURE__*/ styled("span")({
|
|
39
|
-
name: "StyledParagraph",
|
|
40
|
-
class: "sts1mtj",
|
|
41
|
-
propsAsIs: false,
|
|
42
|
-
vars: {
|
|
43
|
-
"sts1mtj-0": [_exp()],
|
|
44
|
-
"sts1mtj-1": [_exp2()],
|
|
45
|
-
"sts1mtj-2": [_exp3()],
|
|
46
|
-
"sts1mtj-3": [_exp4()],
|
|
47
|
-
"sts1mtj-4": [_exp5()],
|
|
48
|
-
"sts1mtj-5": [_exp6()],
|
|
49
|
-
"sts1mtj-6": [_exp7()],
|
|
50
|
-
"sts1mtj-7": [_exp8()],
|
|
51
|
-
"sts1mtj-8": [_exp10()],
|
|
52
|
-
"sts1mtj-9": [_exp11()],
|
|
53
|
-
"sts1mtj-10": [_exp12()],
|
|
54
|
-
"sts1mtj-11": [_exp13()],
|
|
55
|
-
"sts1mtj-12": [_exp14()],
|
|
56
|
-
"sts1mtj-13": [_exp15()],
|
|
57
|
-
"sts1mtj-14": [_exp16()]
|
|
58
|
-
}
|
|
59
|
-
}));
|
|
60
|
-
/**
|
|
61
|
-
* Multi-line body copy. Same tokens as `Text`, but with a 1.25× line height for
|
|
62
|
-
* readability and `lineClamp` instead of single-line ellipsis.
|
|
63
|
-
*
|
|
64
|
-
* Use `Text` for labels and single-line UI strings; reach for this when the copy
|
|
65
|
-
* is a real paragraph.
|
|
66
|
-
*/
|
|
67
|
-
var Paragraph = ({ children, size = TextSize.BODY_MD, variant = TextVariant.PRIMARY, weight = TextWeight.REGULAR, align = "left", cursor, isMonospace = false, isSelectable = false, lineClamp, minHeight, hex }) => {
|
|
68
|
-
return /* @__PURE__ */ jsx(StyledParagraph, {
|
|
69
|
-
$size: size,
|
|
70
|
-
$variant: variant,
|
|
71
|
-
$weight: weight,
|
|
72
|
-
$align: align,
|
|
73
|
-
$cursor: cursor,
|
|
74
|
-
$isMonospace: isMonospace,
|
|
75
|
-
$isSelectable: isSelectable,
|
|
76
|
-
$lineClamp: lineClamp,
|
|
77
|
-
$minHeight: minHeight,
|
|
78
|
-
$hex: hex,
|
|
79
|
-
children
|
|
80
|
-
});
|
|
81
|
-
};
|
|
82
|
-
//#endregion
|
|
83
|
-
export { Paragraph as default };
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
export interface TextShimmerProps {
|
|
2
|
-
/** A number is px. Match the line height of the text being stood in for. */
|
|
3
|
-
height: number | string;
|
|
4
|
-
/** A number is px. */
|
|
5
|
-
width: number | string;
|
|
6
|
-
/** Render square corners instead of the default 4px radius. */
|
|
7
|
-
noBorderRadius?: boolean;
|
|
8
|
-
}
|
|
9
|
-
/**
|
|
10
|
-
* A shimmering placeholder bar for text that hasn't loaded. Size it to the copy
|
|
11
|
-
* it replaces so the layout doesn't jump when the real text arrives.
|
|
12
|
-
*/
|
|
13
|
-
declare const TextShimmer: ({ height, width, noBorderRadius }: TextShimmerProps) => import("react").JSX.Element;
|
|
14
|
-
export default TextShimmer;
|
package/dist/text/TextShimmer.js
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { withTheme } from "../theme/GalaxyTheme.js";
|
|
2
|
-
import { getCssSizeValue } from "../utils/linaria.js";
|
|
3
|
-
/* empty css */
|
|
4
|
-
import { styled } from "@linaria/react";
|
|
5
|
-
import { jsx } from "react/jsx-runtime";
|
|
6
|
-
//#region src/text/TextShimmer.tsx
|
|
7
|
-
var _exp3 = () => ({ theme }) => theme.color.border.primary;
|
|
8
|
-
var _exp4 = () => ({ $height }) => getCssSizeValue($height);
|
|
9
|
-
var _exp5 = () => ({ $width }) => getCssSizeValue($width);
|
|
10
|
-
var _exp6 = () => ({ $noBorderRadius }) => $noBorderRadius ? "0" : "4px";
|
|
11
|
-
var StyledTextShimmer = withTheme(/*#__PURE__*/ styled("span")({
|
|
12
|
-
name: "StyledTextShimmer",
|
|
13
|
-
class: "s1p67zkf",
|
|
14
|
-
propsAsIs: false,
|
|
15
|
-
vars: {
|
|
16
|
-
"s1p67zkf-0": [_exp3()],
|
|
17
|
-
"s1p67zkf-1": [_exp4()],
|
|
18
|
-
"s1p67zkf-2": [_exp5()],
|
|
19
|
-
"s1p67zkf-3": [_exp6()]
|
|
20
|
-
}
|
|
21
|
-
}));
|
|
22
|
-
/**
|
|
23
|
-
* A shimmering placeholder bar for text that hasn't loaded. Size it to the copy
|
|
24
|
-
* it replaces so the layout doesn't jump when the real text arrives.
|
|
25
|
-
*/
|
|
26
|
-
var TextShimmer = ({ height, width, noBorderRadius }) => {
|
|
27
|
-
return /* @__PURE__ */ jsx(StyledTextShimmer, {
|
|
28
|
-
$height: height,
|
|
29
|
-
$width: width,
|
|
30
|
-
$noBorderRadius: noBorderRadius
|
|
31
|
-
});
|
|
32
|
-
};
|
|
33
|
-
//#endregion
|
|
34
|
-
export { TextShimmer as default };
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
import { type PropsWithChildren } from "react";
|
|
2
|
-
import { GalaxyTheme, type Theme } from "./types";
|
|
3
|
-
declare const ThemeProvider: import("react").ComponentType<{
|
|
4
|
-
children: React.ReactNode;
|
|
5
|
-
theme?: Theme | undefined;
|
|
6
|
-
}>, withTheme: <Props extends {
|
|
7
|
-
theme: Theme;
|
|
8
|
-
}, C>(WrappedComponent: import("react").ComponentType<Props> & C) => import("react").ComponentType<import("@callstack/react-theme-provider").$Without<Props, "theme"> & {
|
|
9
|
-
theme?: import("@callstack/react-theme-provider").$DeepPartial<Theme> | undefined;
|
|
10
|
-
}> & import("@callstack/react-theme-provider/typings/hoist-non-react-statics").NonReactStatics<import("react").ComponentType<Props> & C, {}>, useTheme: <T = Theme>(overrides?: import("@callstack/react-theme-provider").$DeepPartial<T> | undefined) => T;
|
|
11
|
-
/**
|
|
12
|
-
* How the provider learns the OS theme. Supply your own on platforms where
|
|
13
|
-
* `prefers-color-scheme` isn't the source of truth (Electron, React Native).
|
|
14
|
-
*/
|
|
15
|
-
export interface ThemeDetector {
|
|
16
|
-
/** Read the OS theme once, at mount. */
|
|
17
|
-
detectInitialTheme(): Promise<GalaxyTheme.DARK | GalaxyTheme.LIGHT>;
|
|
18
|
-
/** Subscribe to OS theme changes. Returns an unsubscribe function. */
|
|
19
|
-
onThemeChange(callback: (theme: GalaxyTheme.DARK | GalaxyTheme.LIGHT) => void): () => void;
|
|
20
|
-
}
|
|
21
|
-
/** Default detector — reads `prefers-color-scheme`. Falls back to DARK off-browser. */
|
|
22
|
-
export declare const BrowserThemeDetector: ThemeDetector;
|
|
23
|
-
/** What `useGalaxyTheme()` returns. */
|
|
24
|
-
export interface GalaxyThemeContextValue {
|
|
25
|
-
/** The resolved token set. Read colors and fonts from here. */
|
|
26
|
-
theme: Theme;
|
|
27
|
-
/** The theme actually rendering. Never `SYSTEM` — that's already resolved. */
|
|
28
|
-
activeTheme: Exclude<GalaxyTheme, GalaxyTheme.SYSTEM>;
|
|
29
|
-
/** The user's stored preference. Can be `SYSTEM`. Bind theme pickers to this. */
|
|
30
|
-
selectedTheme: GalaxyTheme;
|
|
31
|
-
/** What the OS reports. Use it to label "System (Dark)" in a picker. */
|
|
32
|
-
systemTheme: GalaxyTheme.DARK | GalaxyTheme.LIGHT;
|
|
33
|
-
/** Whether the detector can read an OS theme at all. */
|
|
34
|
-
isSystemThemeSupported: boolean;
|
|
35
|
-
/** Update the preference. Persists through `storage` when one is supplied. */
|
|
36
|
-
setTheme: (theme: GalaxyTheme) => void;
|
|
37
|
-
}
|
|
38
|
-
export interface GalaxyThemeProviderProps {
|
|
39
|
-
/** Theme to start on when nothing is stored. @default GalaxyTheme.SYSTEM */
|
|
40
|
-
initialTheme?: GalaxyTheme;
|
|
41
|
-
/** Key the preference is stored under. @default "galaxy-theme" */
|
|
42
|
-
storageKey?: string;
|
|
43
|
-
/** How the OS theme is read. @default BrowserThemeDetector */
|
|
44
|
-
themeDetector?: ThemeDetector;
|
|
45
|
-
/**
|
|
46
|
-
* Where the preference persists. Omit and the choice is lost on reload.
|
|
47
|
-
* Pass your own adapter — DLS never touches `localStorage` directly, so it
|
|
48
|
-
* stays safe to render on a server.
|
|
49
|
-
*/
|
|
50
|
-
storage?: {
|
|
51
|
-
get: (key: string) => GalaxyTheme | null;
|
|
52
|
-
set: (key: string, theme: GalaxyTheme) => void;
|
|
53
|
-
};
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* Root provider. Wrap the app once, above everything that renders DLS.
|
|
57
|
-
*
|
|
58
|
-
* Resolves `SYSTEM` to the OS theme and feeds the token set to every
|
|
59
|
-
* `withTheme(styled.x)` component. Without it `useGalaxyTheme()` throws.
|
|
60
|
-
*/
|
|
61
|
-
declare const GalaxyThemeProvider: ({ children, initialTheme, storageKey, themeDetector, storage, }: PropsWithChildren<GalaxyThemeProviderProps>) => import("react").JSX.Element;
|
|
62
|
-
/**
|
|
63
|
-
* Read the active theme, the user's preference, and `setTheme`.
|
|
64
|
-
* Throws when called outside a `GalaxyThemeProvider`.
|
|
65
|
-
*/
|
|
66
|
-
export declare const useGalaxyTheme: () => GalaxyThemeContextValue;
|
|
67
|
-
export { GalaxyThemeProvider, ThemeProvider, useTheme, withTheme };
|