@jordan-mace/chaser-design-system 1.2.8 → 1.2.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +1834 -0
- package/dist/index.mjs +4729 -0
- package/dist/styles/layers.css.d.mts +6 -0
- package/dist/styles/layers.css.mjs +7 -0
- package/dist/styles/reset.css.d.mts +1 -0
- package/dist/styles/reset.css.mjs +24 -0
- package/dist/styles/sprinkles.css.d.mts +246 -0
- package/dist/styles/sprinkles.css.mjs +200 -0
- package/dist/styles/theme.css.d.mts +41 -0
- package/dist/styles/theme.css.mjs +50 -0
- package/package.json +18 -9
- package/src/components/Box/reset.css.ts +2 -2
- package/src/index.ts +6 -1
- package/dist/components/Accordion/Accordion.d.ts +0 -15
- package/dist/components/Accordion/Accordion.js +0 -43
- package/dist/components/Accordion/index.d.ts +0 -1
- package/dist/components/Accordion/index.js +0 -1
- package/dist/components/Accordion/styles.css.d.ts +0 -7
- package/dist/components/Accordion/styles.css.js +0 -65
- package/dist/components/Alert/Alert.d.ts +0 -10
- package/dist/components/Alert/Alert.js +0 -8
- package/dist/components/Alert/index.d.ts +0 -1
- package/dist/components/Alert/index.js +0 -1
- package/dist/components/Alert/styles.css.d.ts +0 -4
- package/dist/components/Alert/styles.css.js +0 -54
- package/dist/components/AspectRatio/AspectRatio.d.ts +0 -9
- package/dist/components/AspectRatio/AspectRatio.js +0 -12
- package/dist/components/AspectRatio/index.d.ts +0 -2
- package/dist/components/AspectRatio/index.js +0 -1
- package/dist/components/Avatar/Avatar.d.ts +0 -11
- package/dist/components/Avatar/Avatar.js +0 -13
- package/dist/components/Avatar/index.d.ts +0 -1
- package/dist/components/Avatar/index.js +0 -1
- package/dist/components/Avatar/styles.css.d.ts +0 -4
- package/dist/components/Avatar/styles.css.js +0 -151
- package/dist/components/Badge/Badge.d.ts +0 -12
- package/dist/components/Badge/Badge.js +0 -8
- package/dist/components/Badge/index.d.ts +0 -2
- package/dist/components/Badge/index.js +0 -1
- package/dist/components/Badge/styles.css.d.ts +0 -5
- package/dist/components/Badge/styles.css.js +0 -77
- package/dist/components/Box/Box.d.ts +0 -11
- package/dist/components/Box/Box.js +0 -54
- package/dist/components/Box/index.d.ts +0 -2
- package/dist/components/Box/index.js +0 -1
- package/dist/components/Box/reset.css.d.ts +0 -1
- package/dist/components/Box/reset.css.js +0 -15
- package/dist/components/Breadcrumb/Breadcrumb.d.ts +0 -13
- package/dist/components/Breadcrumb/Breadcrumb.js +0 -8
- package/dist/components/Breadcrumb/index.d.ts +0 -1
- package/dist/components/Breadcrumb/index.js +0 -1
- package/dist/components/Breadcrumb/styles.css.d.ts +0 -6
- package/dist/components/Breadcrumb/styles.css.js +0 -50
- package/dist/components/Button/Button.d.ts +0 -10
- package/dist/components/Button/Button.js +0 -8
- package/dist/components/Button/index.d.ts +0 -1
- package/dist/components/Button/index.js +0 -1
- package/dist/components/Button/styles.css.d.ts +0 -2
- package/dist/components/Button/styles.css.js +0 -30
- package/dist/components/Card/Card.d.ts +0 -9
- package/dist/components/Card/Card.js +0 -8
- package/dist/components/Card/index.d.ts +0 -1
- package/dist/components/Card/index.js +0 -1
- package/dist/components/Card/styles.css.d.ts +0 -2
- package/dist/components/Card/styles.css.js +0 -25
- package/dist/components/Checkbox/Checkbox.d.ts +0 -151
- package/dist/components/Checkbox/Checkbox.js +0 -25
- package/dist/components/Checkbox/index.d.ts +0 -1
- package/dist/components/Checkbox/index.js +0 -1
- package/dist/components/Checkbox/styles.css.d.ts +0 -3
- package/dist/components/Checkbox/styles.css.js +0 -31
- package/dist/components/Collapse/Collapse.d.ts +0 -12
- package/dist/components/Collapse/Collapse.js +0 -56
- package/dist/components/Collapse/index.d.ts +0 -2
- package/dist/components/Collapse/index.js +0 -1
- package/dist/components/Collapse/styles.css.d.ts +0 -3
- package/dist/components/Collapse/styles.css.js +0 -36
- package/dist/components/Combobox/Combobox.d.ts +0 -24
- package/dist/components/Combobox/Combobox.js +0 -111
- package/dist/components/Combobox/index.d.ts +0 -2
- package/dist/components/Combobox/index.js +0 -1
- package/dist/components/Combobox/styles.css.d.ts +0 -13
- package/dist/components/Combobox/styles.css.js +0 -142
- package/dist/components/Container/Container.d.ts +0 -163
- package/dist/components/Container/Container.js +0 -21
- package/dist/components/Container/index.d.ts +0 -2
- package/dist/components/Container/index.js +0 -1
- package/dist/components/Divider/Divider.d.ts +0 -10
- package/dist/components/Divider/Divider.js +0 -10
- package/dist/components/Divider/index.d.ts +0 -2
- package/dist/components/Divider/index.js +0 -1
- package/dist/components/Divider/styles.css.d.ts +0 -4
- package/dist/components/Divider/styles.css.js +0 -41
- package/dist/components/Drawer/Drawer.d.ts +0 -18
- package/dist/components/Drawer/Drawer.js +0 -65
- package/dist/components/Drawer/index.d.ts +0 -2
- package/dist/components/Drawer/index.js +0 -1
- package/dist/components/Drawer/styles.css.d.ts +0 -8
- package/dist/components/Drawer/styles.css.js +0 -125
- package/dist/components/DropdownMenu/DropdownMenu.d.ts +0 -24
- package/dist/components/DropdownMenu/DropdownMenu.js +0 -46
- package/dist/components/DropdownMenu/index.d.ts +0 -2
- package/dist/components/DropdownMenu/index.js +0 -1
- package/dist/components/DropdownMenu/styles.css.d.ts +0 -9
- package/dist/components/DropdownMenu/styles.css.js +0 -93
- package/dist/components/EmptyState/EmptyState.d.ts +0 -10
- package/dist/components/EmptyState/EmptyState.js +0 -8
- package/dist/components/EmptyState/index.d.ts +0 -2
- package/dist/components/EmptyState/index.js +0 -1
- package/dist/components/EmptyState/styles.css.d.ts +0 -5
- package/dist/components/EmptyState/styles.css.js +0 -30
- package/dist/components/FileUpload/FileUpload.d.ts +0 -28
- package/dist/components/FileUpload/FileUpload.js +0 -106
- package/dist/components/FileUpload/index.d.ts +0 -2
- package/dist/components/FileUpload/index.js +0 -1
- package/dist/components/FileUpload/styles.css.d.ts +0 -19
- package/dist/components/FileUpload/styles.css.js +0 -145
- package/dist/components/Form/Form.d.ts +0 -7
- package/dist/components/Form/Form.js +0 -8
- package/dist/components/Form/FormInput.d.ts +0 -5
- package/dist/components/Form/FormInput.js +0 -9
- package/dist/components/Form/index.d.ts +0 -2
- package/dist/components/Form/index.js +0 -2
- package/dist/components/Form/styles.css.d.ts +0 -2
- package/dist/components/Form/styles.css.js +0 -11
- package/dist/components/Grid/Grid.d.ts +0 -162
- package/dist/components/Grid/Grid.js +0 -25
- package/dist/components/Grid/index.d.ts +0 -2
- package/dist/components/Grid/index.js +0 -1
- package/dist/components/Icon/Icon.d.ts +0 -12
- package/dist/components/Icon/Icon.js +0 -21
- package/dist/components/Icon/index.d.ts +0 -1
- package/dist/components/Icon/index.js +0 -1
- package/dist/components/Icon/styles.css.d.ts +0 -1
- package/dist/components/Icon/styles.css.js +0 -9
- package/dist/components/Input/Input.d.ts +0 -8
- package/dist/components/Input/Input.js +0 -9
- package/dist/components/Input/index.d.ts +0 -1
- package/dist/components/Input/index.js +0 -1
- package/dist/components/Input/styles.css.d.ts +0 -2
- package/dist/components/Input/styles.css.js +0 -8
- package/dist/components/Kbd/Kbd.d.ts +0 -7
- package/dist/components/Kbd/Kbd.js +0 -6
- package/dist/components/Kbd/index.d.ts +0 -2
- package/dist/components/Kbd/index.js +0 -1
- package/dist/components/Kbd/styles.css.d.ts +0 -1
- package/dist/components/Kbd/styles.css.js +0 -16
- package/dist/components/List/List.d.ts +0 -6
- package/dist/components/List/List.js +0 -7
- package/dist/components/List/ListItem.d.ts +0 -6
- package/dist/components/List/ListItem.js +0 -7
- package/dist/components/List/index.d.ts +0 -2
- package/dist/components/List/index.js +0 -2
- package/dist/components/List/styles.css.d.ts +0 -2
- package/dist/components/List/styles.css.js +0 -11
- package/dist/components/Modal/Modal.d.ts +0 -15
- package/dist/components/Modal/Modal.js +0 -35
- package/dist/components/Modal/index.d.ts +0 -2
- package/dist/components/Modal/index.js +0 -1
- package/dist/components/Modal/styles.css.d.ts +0 -7
- package/dist/components/Modal/styles.css.js +0 -92
- package/dist/components/Navbar/Navbar.d.ts +0 -7
- package/dist/components/Navbar/Navbar.js +0 -8
- package/dist/components/Navbar/NavbarItem.d.ts +0 -7
- package/dist/components/Navbar/NavbarItem.js +0 -8
- package/dist/components/Navbar/index.d.ts +0 -2
- package/dist/components/Navbar/index.js +0 -2
- package/dist/components/Navbar/styles.css.d.ts +0 -2
- package/dist/components/Navbar/styles.css.js +0 -3
- package/dist/components/NumberInput/NumberInput.d.ts +0 -21
- package/dist/components/NumberInput/NumberInput.js +0 -39
- package/dist/components/NumberInput/index.d.ts +0 -2
- package/dist/components/NumberInput/index.js +0 -1
- package/dist/components/NumberInput/styles.css.d.ts +0 -10
- package/dist/components/NumberInput/styles.css.js +0 -117
- package/dist/components/Pagination/Pagination.d.ts +0 -12
- package/dist/components/Pagination/Pagination.js +0 -50
- package/dist/components/Pagination/index.d.ts +0 -2
- package/dist/components/Pagination/index.js +0 -1
- package/dist/components/Pagination/styles.css.d.ts +0 -4
- package/dist/components/Pagination/styles.css.js +0 -44
- package/dist/components/Popover/Popover.d.ts +0 -19
- package/dist/components/Popover/Popover.js +0 -56
- package/dist/components/Popover/index.d.ts +0 -2
- package/dist/components/Popover/index.js +0 -1
- package/dist/components/Popover/styles.css.d.ts +0 -11
- package/dist/components/Popover/styles.css.js +0 -185
- package/dist/components/Progress/Progress.d.ts +0 -11
- package/dist/components/Progress/Progress.js +0 -9
- package/dist/components/Progress/index.d.ts +0 -1
- package/dist/components/Progress/index.js +0 -1
- package/dist/components/Progress/styles.css.d.ts +0 -4
- package/dist/components/Progress/styles.css.js +0 -71
- package/dist/components/Radio/Radio.d.ts +0 -161
- package/dist/components/Radio/Radio.js +0 -25
- package/dist/components/Radio/index.d.ts +0 -1
- package/dist/components/Radio/index.js +0 -1
- package/dist/components/Radio/styles.css.d.ts +0 -5
- package/dist/components/Radio/styles.css.js +0 -42
- package/dist/components/ScrollArea/ScrollArea.d.ts +0 -11
- package/dist/components/ScrollArea/ScrollArea.js +0 -12
- package/dist/components/ScrollArea/index.d.ts +0 -2
- package/dist/components/ScrollArea/index.js +0 -1
- package/dist/components/ScrollArea/styles.css.d.ts +0 -3
- package/dist/components/ScrollArea/styles.css.js +0 -25
- package/dist/components/Select/Select.d.ts +0 -158
- package/dist/components/Select/Select.js +0 -10
- package/dist/components/Select/index.d.ts +0 -1
- package/dist/components/Select/index.js +0 -1
- package/dist/components/Select/styles.css.d.ts +0 -4
- package/dist/components/Select/styles.css.js +0 -82
- package/dist/components/Separator/Separator.d.ts +0 -9
- package/dist/components/Separator/Separator.js +0 -8
- package/dist/components/Separator/index.d.ts +0 -2
- package/dist/components/Separator/index.js +0 -1
- package/dist/components/Separator/styles.css.d.ts +0 -4
- package/dist/components/Separator/styles.css.js +0 -28
- package/dist/components/Skeleton/Skeleton.d.ts +0 -15
- package/dist/components/Skeleton/Skeleton.js +0 -13
- package/dist/components/Skeleton/index.d.ts +0 -2
- package/dist/components/Skeleton/index.js +0 -1
- package/dist/components/Skeleton/styles.css.d.ts +0 -4
- package/dist/components/Skeleton/styles.css.js +0 -56
- package/dist/components/Spinner/Spinner.d.ts +0 -11
- package/dist/components/Spinner/Spinner.js +0 -8
- package/dist/components/Spinner/index.d.ts +0 -2
- package/dist/components/Spinner/index.js +0 -1
- package/dist/components/Spinner/styles.css.d.ts +0 -4
- package/dist/components/Spinner/styles.css.js +0 -55
- package/dist/components/Stack/Stack.d.ts +0 -167
- package/dist/components/Stack/Stack.js +0 -24
- package/dist/components/Stack/index.d.ts +0 -2
- package/dist/components/Stack/index.js +0 -1
- package/dist/components/Stepper/Stepper.d.ts +0 -19
- package/dist/components/Stepper/Stepper.js +0 -25
- package/dist/components/Stepper/index.d.ts +0 -2
- package/dist/components/Stepper/index.js +0 -1
- package/dist/components/Stepper/styles.css.d.ts +0 -14
- package/dist/components/Stepper/styles.css.js +0 -104
- package/dist/components/Table/Table.d.ts +0 -41
- package/dist/components/Table/Table.js +0 -39
- package/dist/components/Table/index.d.ts +0 -1
- package/dist/components/Table/index.js +0 -1
- package/dist/components/Table/styles.css.d.ts +0 -8
- package/dist/components/Table/styles.css.js +0 -49
- package/dist/components/Tabs/Tabs.d.ts +0 -29
- package/dist/components/Tabs/Tabs.js +0 -52
- package/dist/components/Tabs/index.d.ts +0 -1
- package/dist/components/Tabs/index.js +0 -1
- package/dist/components/Tabs/styles.css.d.ts +0 -6
- package/dist/components/Tabs/styles.css.js +0 -100
- package/dist/components/Tag/Tag.d.ts +0 -16
- package/dist/components/Tag/Tag.js +0 -18
- package/dist/components/Tag/index.d.ts +0 -1
- package/dist/components/Tag/index.js +0 -1
- package/dist/components/Tag/styles.css.d.ts +0 -3
- package/dist/components/Tag/styles.css.js +0 -93
- package/dist/components/Text/Header.d.ts +0 -8
- package/dist/components/Text/Header.js +0 -8
- package/dist/components/Text/P.d.ts +0 -7
- package/dist/components/Text/P.js +0 -8
- package/dist/components/Text/index.d.ts +0 -2
- package/dist/components/Text/index.js +0 -2
- package/dist/components/Text/styles.css.d.ts +0 -2
- package/dist/components/Text/styles.css.js +0 -13
- package/dist/components/TextArea/TextArea.d.ts +0 -8
- package/dist/components/TextArea/TextArea.js +0 -9
- package/dist/components/TextArea/index.d.ts +0 -2
- package/dist/components/TextArea/index.js +0 -1
- package/dist/components/TextArea/styles.css.d.ts +0 -2
- package/dist/components/TextArea/styles.css.js +0 -10
- package/dist/components/Toast/Toast.d.ts +0 -34
- package/dist/components/Toast/Toast.js +0 -177
- package/dist/components/Toast/index.d.ts +0 -1
- package/dist/components/Toast/index.js +0 -1
- package/dist/components/Toast/styles.css.d.ts +0 -21
- package/dist/components/Toast/styles.css.js +0 -192
- package/dist/components/Toggle/Toggle.d.ts +0 -11
- package/dist/components/Toggle/Toggle.js +0 -17
- package/dist/components/Toggle/index.d.ts +0 -2
- package/dist/components/Toggle/index.js +0 -1
- package/dist/components/Toggle/styles.css.d.ts +0 -12
- package/dist/components/Toggle/styles.css.js +0 -118
- package/dist/components/Tooltip/Tooltip.d.ts +0 -11
- package/dist/components/Tooltip/Tooltip.js +0 -16
- package/dist/components/Tooltip/index.d.ts +0 -2
- package/dist/components/Tooltip/index.js +0 -1
- package/dist/components/Tooltip/styles.css.d.ts +0 -8
- package/dist/components/Tooltip/styles.css.js +0 -86
- package/dist/components/VisuallyHidden/VisuallyHidden.d.ts +0 -8
- package/dist/components/VisuallyHidden/VisuallyHidden.js +0 -9
- package/dist/components/VisuallyHidden/index.d.ts +0 -2
- package/dist/components/VisuallyHidden/index.js +0 -1
- package/dist/components/VisuallyHidden/styles.css.d.ts +0 -1
- package/dist/components/VisuallyHidden/styles.css.js +0 -12
- package/dist/components/index.d.ts +0 -68
- package/dist/components/index.js +0 -47
- package/dist/index.d.ts +0 -1
- package/dist/index.js +0 -1
- package/dist/styles/layers.css.d.ts +0 -3
- package/dist/styles/layers.css.js +0 -3
- package/dist/styles/sprinkles.css.d.ts +0 -241
- package/dist/styles/sprinkles.css.js +0 -165
- package/dist/styles/theme.css.d.ts +0 -38
- package/dist/styles/theme.css.js +0 -51
- package/dist/styles/utils.d.ts +0 -2
- package/dist/styles/utils.js +0 -7
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { styleVariants, keyframes } from '@vanilla-extract/css';
|
|
2
|
-
import { styleWithLayer } from '../../styles/utils';
|
|
3
|
-
const collapseIn = keyframes({
|
|
4
|
-
from: {
|
|
5
|
-
height: 0,
|
|
6
|
-
opacity: 0,
|
|
7
|
-
},
|
|
8
|
-
to: {
|
|
9
|
-
height: 'auto',
|
|
10
|
-
opacity: 1,
|
|
11
|
-
},
|
|
12
|
-
});
|
|
13
|
-
const collapseOut = keyframes({
|
|
14
|
-
from: {
|
|
15
|
-
height: 'auto',
|
|
16
|
-
opacity: 1,
|
|
17
|
-
},
|
|
18
|
-
to: {
|
|
19
|
-
height: 0,
|
|
20
|
-
opacity: 0,
|
|
21
|
-
},
|
|
22
|
-
});
|
|
23
|
-
export const collapseContainer = styleWithLayer({
|
|
24
|
-
overflow: 'hidden',
|
|
25
|
-
});
|
|
26
|
-
export const collapseContent = styleWithLayer({
|
|
27
|
-
width: '100%',
|
|
28
|
-
});
|
|
29
|
-
export const collapseAnimation = styleVariants({
|
|
30
|
-
in: {
|
|
31
|
-
animation: `${collapseIn} 0.3s ease-out forwards`,
|
|
32
|
-
},
|
|
33
|
-
out: {
|
|
34
|
-
animation: `${collapseOut} 0.3s ease-out forwards`,
|
|
35
|
-
},
|
|
36
|
-
});
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { Sprinkles } from '../../styles/sprinkles.css';
|
|
3
|
-
export interface ComboboxOption {
|
|
4
|
-
value: string;
|
|
5
|
-
label: string;
|
|
6
|
-
disabled?: boolean;
|
|
7
|
-
}
|
|
8
|
-
export type ComboboxProps = Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onChange' | 'value'> & Sprinkles & {
|
|
9
|
-
label?: string;
|
|
10
|
-
options: ComboboxOption[];
|
|
11
|
-
value?: string;
|
|
12
|
-
onChange?: (value: string, option: ComboboxOption | null) => void;
|
|
13
|
-
onInputChange?: (inputValue: string) => void;
|
|
14
|
-
placeholder?: string;
|
|
15
|
-
hint?: string;
|
|
16
|
-
error?: boolean;
|
|
17
|
-
errorMessage?: string;
|
|
18
|
-
fullWidth?: boolean;
|
|
19
|
-
clearable?: boolean;
|
|
20
|
-
disabled?: boolean;
|
|
21
|
-
filterFn?: (option: ComboboxOption, inputValue: string) => boolean;
|
|
22
|
-
};
|
|
23
|
-
declare const Combobox: ({ label, options, value, onChange, onInputChange, placeholder, hint, error, errorMessage, fullWidth, clearable, disabled, filterFn, className, ...props }: ComboboxProps) => import("react/jsx-runtime").JSX.Element;
|
|
24
|
-
export default Combobox;
|
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import clsx from 'clsx';
|
|
3
|
-
import { useState, useRef, useEffect } from 'react';
|
|
4
|
-
import { comboboxContainer, comboboxInput, comboboxInputVariants, comboboxLabel, comboboxDropdown, comboboxOption, comboboxOptionSelected, comboboxOptionDisabled, comboboxClearButton, comboboxArrow, comboboxNoResults, comboboxHint, comboboxErrorMessage, } from './styles.css';
|
|
5
|
-
import Box from '../Box';
|
|
6
|
-
const defaultFilterFn = (option, inputValue) => {
|
|
7
|
-
return option.label.toLowerCase().includes(inputValue.toLowerCase());
|
|
8
|
-
};
|
|
9
|
-
const Combobox = ({ label, options, value, onChange, onInputChange, placeholder = 'Search...', hint, error = false, errorMessage, fullWidth = true, clearable = true, disabled = false, filterFn = defaultFilterFn, className, ...props }) => {
|
|
10
|
-
const [inputValue, setInputValue] = useState('');
|
|
11
|
-
const [isOpen, setIsOpen] = useState(false);
|
|
12
|
-
const [highlightedIndex, setHighlightedIndex] = useState(-1);
|
|
13
|
-
const containerRef = useRef(null);
|
|
14
|
-
const inputRef = useRef(null);
|
|
15
|
-
const selectedOption = options.find((opt) => opt.value === value);
|
|
16
|
-
useEffect(() => {
|
|
17
|
-
if (selectedOption) {
|
|
18
|
-
setInputValue(selectedOption.label);
|
|
19
|
-
}
|
|
20
|
-
else if (!isOpen) {
|
|
21
|
-
setInputValue('');
|
|
22
|
-
}
|
|
23
|
-
}, [selectedOption, isOpen]);
|
|
24
|
-
const filteredOptions = options.filter((option) => filterFn(option, inputValue));
|
|
25
|
-
useEffect(() => {
|
|
26
|
-
const handleClickOutside = (event) => {
|
|
27
|
-
if (containerRef.current &&
|
|
28
|
-
!containerRef.current.contains(event.target)) {
|
|
29
|
-
setIsOpen(false);
|
|
30
|
-
if (selectedOption) {
|
|
31
|
-
setInputValue(selectedOption.label);
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
34
|
-
setInputValue('');
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
document.addEventListener('mousedown', handleClickOutside);
|
|
39
|
-
return () => document.removeEventListener('mousedown', handleClickOutside);
|
|
40
|
-
}, [selectedOption]);
|
|
41
|
-
const handleInputChange = (e) => {
|
|
42
|
-
const newValue = e.target.value;
|
|
43
|
-
setInputValue(newValue);
|
|
44
|
-
setIsOpen(true);
|
|
45
|
-
setHighlightedIndex(-1);
|
|
46
|
-
onInputChange?.(newValue);
|
|
47
|
-
if (!newValue) {
|
|
48
|
-
onChange?.('', null);
|
|
49
|
-
}
|
|
50
|
-
};
|
|
51
|
-
const handleOptionClick = (option) => {
|
|
52
|
-
if (option.disabled)
|
|
53
|
-
return;
|
|
54
|
-
setInputValue(option.label);
|
|
55
|
-
setIsOpen(false);
|
|
56
|
-
onChange?.(option.value, option);
|
|
57
|
-
};
|
|
58
|
-
const handleClear = (e) => {
|
|
59
|
-
e.stopPropagation();
|
|
60
|
-
setInputValue('');
|
|
61
|
-
setIsOpen(false);
|
|
62
|
-
onChange?.('', null);
|
|
63
|
-
inputRef.current?.focus();
|
|
64
|
-
};
|
|
65
|
-
const handleKeyDown = (e) => {
|
|
66
|
-
if (disabled)
|
|
67
|
-
return;
|
|
68
|
-
switch (e.key) {
|
|
69
|
-
case 'ArrowDown':
|
|
70
|
-
e.preventDefault();
|
|
71
|
-
if (!isOpen) {
|
|
72
|
-
setIsOpen(true);
|
|
73
|
-
}
|
|
74
|
-
setHighlightedIndex((prev) => prev < filteredOptions.length - 1 ? prev + 1 : prev);
|
|
75
|
-
break;
|
|
76
|
-
case 'ArrowUp':
|
|
77
|
-
e.preventDefault();
|
|
78
|
-
setHighlightedIndex((prev) => (prev > 0 ? prev - 1 : prev));
|
|
79
|
-
break;
|
|
80
|
-
case 'Enter':
|
|
81
|
-
e.preventDefault();
|
|
82
|
-
if (isOpen &&
|
|
83
|
-
highlightedIndex >= 0 &&
|
|
84
|
-
filteredOptions[highlightedIndex]) {
|
|
85
|
-
handleOptionClick(filteredOptions[highlightedIndex]);
|
|
86
|
-
}
|
|
87
|
-
else {
|
|
88
|
-
setIsOpen(!isOpen);
|
|
89
|
-
}
|
|
90
|
-
break;
|
|
91
|
-
case 'Escape':
|
|
92
|
-
setIsOpen(false);
|
|
93
|
-
if (selectedOption) {
|
|
94
|
-
setInputValue(selectedOption.label);
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
97
|
-
setInputValue('');
|
|
98
|
-
}
|
|
99
|
-
break;
|
|
100
|
-
}
|
|
101
|
-
};
|
|
102
|
-
const displayValue = selectedOption && !isOpen ? selectedOption.label : inputValue;
|
|
103
|
-
return (_jsxs(Box, { className: comboboxContainer, ref: containerRef, width: fullWidth ? '100%' : undefined, children: [label && (_jsx(Box, { as: "label", className: comboboxLabel, children: label })), _jsxs(Box, { position: "relative", children: [_jsx(Box, { as: "input", ref: inputRef, type: "text", value: displayValue, onChange: handleInputChange, onKeyDown: handleKeyDown, onFocus: () => setIsOpen(true), placeholder: placeholder, disabled: disabled, className: clsx(comboboxInput, comboboxInputVariants[error ? 'error' : 'default'], className), role: "combobox", "aria-expanded": isOpen, "aria-autocomplete": "list", "aria-controls": isOpen ? 'combobox-listbox' : undefined, "aria-activedescendant": highlightedIndex >= 0
|
|
104
|
-
? `option-${filteredOptions[highlightedIndex]?.value}`
|
|
105
|
-
: undefined, ...props }), clearable && inputValue && !disabled && (_jsx(Box, { as: "button", className: comboboxClearButton, onClick: handleClear, type: "button", "aria-label": "Clear selection", children: "\u00D7" })), _jsx(Box, { className: comboboxArrow, "aria-hidden": "true", children: _jsx("svg", { width: "12", height: "12", viewBox: "0 0 12 12", fill: "currentColor", children: _jsx("path", { d: "M6 8L1 3h10z" }) }) })] }), isOpen && (_jsx(Box, { as: "ul", id: "combobox-listbox", className: comboboxDropdown, role: "listbox", children: filteredOptions.length === 0 ? (_jsx(Box, { as: "li", className: comboboxNoResults, children: "No results found" })) : (filteredOptions.map((option, index) => (_jsx(Box, { as: "li", id: `option-${option.value}`, className: clsx(comboboxOption, option.value === value && comboboxOptionSelected, option.disabled && comboboxOptionDisabled), onClick: () => handleOptionClick(option), role: "option", "aria-selected": option.value === value, "aria-disabled": option.disabled, style: {
|
|
106
|
-
backgroundColor: index === highlightedIndex
|
|
107
|
-
? 'var(--highlight-color, #f3f4f6)'
|
|
108
|
-
: undefined,
|
|
109
|
-
}, children: option.label }, option.value)))) })), error && errorMessage && (_jsx(Box, { as: "div", className: comboboxErrorMessage, role: "alert", children: errorMessage })), hint && !error && (_jsx(Box, { as: "div", className: comboboxHint, children: hint }))] }));
|
|
110
|
-
};
|
|
111
|
-
export default Combobox;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default as Combobox } from './Combobox';
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
export declare const comboboxContainer: string;
|
|
2
|
-
export declare const comboboxInput: string;
|
|
3
|
-
export declare const comboboxInputVariants: Record<"default" | "error", string>;
|
|
4
|
-
export declare const comboboxLabel: string;
|
|
5
|
-
export declare const comboboxDropdown: string;
|
|
6
|
-
export declare const comboboxOption: string;
|
|
7
|
-
export declare const comboboxOptionSelected: string;
|
|
8
|
-
export declare const comboboxOptionDisabled: string;
|
|
9
|
-
export declare const comboboxClearButton: string;
|
|
10
|
-
export declare const comboboxArrow: string;
|
|
11
|
-
export declare const comboboxNoResults: string;
|
|
12
|
-
export declare const comboboxHint: string;
|
|
13
|
-
export declare const comboboxErrorMessage: string;
|
|
@@ -1,142 +0,0 @@
|
|
|
1
|
-
import { styleVariants } from '@vanilla-extract/css';
|
|
2
|
-
import { vars } from '../../styles/theme.css';
|
|
3
|
-
import { styleWithLayer } from '../../styles/utils';
|
|
4
|
-
export const comboboxContainer = styleWithLayer({
|
|
5
|
-
position: 'relative',
|
|
6
|
-
width: '100%',
|
|
7
|
-
});
|
|
8
|
-
export const comboboxInput = styleWithLayer({
|
|
9
|
-
width: '100%',
|
|
10
|
-
padding: '0.75rem 2.5rem 0.75rem 1rem',
|
|
11
|
-
fontSize: '14px',
|
|
12
|
-
fontFamily: vars.fontFamily.body,
|
|
13
|
-
color: vars.colors.textPrimary,
|
|
14
|
-
backgroundColor: vars.colors.inputBackground,
|
|
15
|
-
border: `1px solid ${vars.colors.inputBorder}`,
|
|
16
|
-
borderRadius: '8px',
|
|
17
|
-
outline: 'none',
|
|
18
|
-
transition: 'border-color 0.2s ease',
|
|
19
|
-
'::placeholder': {
|
|
20
|
-
color: vars.colors.inputPlaceholder,
|
|
21
|
-
},
|
|
22
|
-
':focus-visible': {
|
|
23
|
-
outline: `2px solid ${vars.colors.inputBorderFocused}`,
|
|
24
|
-
outlineOffset: '2px',
|
|
25
|
-
},
|
|
26
|
-
':hover': {
|
|
27
|
-
borderColor: vars.colors.inputBorderFocused,
|
|
28
|
-
},
|
|
29
|
-
selectors: {
|
|
30
|
-
'&:disabled': {
|
|
31
|
-
cursor: 'not-allowed',
|
|
32
|
-
opacity: 0.5,
|
|
33
|
-
backgroundColor: vars.colors.backgroundMuted,
|
|
34
|
-
},
|
|
35
|
-
'&:disabled:hover': {
|
|
36
|
-
borderColor: vars.colors.inputBorder,
|
|
37
|
-
},
|
|
38
|
-
},
|
|
39
|
-
});
|
|
40
|
-
export const comboboxInputVariants = styleVariants({
|
|
41
|
-
default: {},
|
|
42
|
-
error: {
|
|
43
|
-
border: `1px solid ${vars.colors.alertErrorBorder}`,
|
|
44
|
-
':focus-visible': {
|
|
45
|
-
outline: `2px solid ${vars.colors.alertErrorBorder}`,
|
|
46
|
-
},
|
|
47
|
-
':hover': {
|
|
48
|
-
borderColor: vars.colors.alertErrorBorder,
|
|
49
|
-
},
|
|
50
|
-
},
|
|
51
|
-
});
|
|
52
|
-
export const comboboxLabel = styleWithLayer({
|
|
53
|
-
display: 'block',
|
|
54
|
-
fontSize: '14px',
|
|
55
|
-
fontWeight: '500',
|
|
56
|
-
color: vars.colors.textPrimary,
|
|
57
|
-
marginBottom: '8px',
|
|
58
|
-
});
|
|
59
|
-
export const comboboxDropdown = styleWithLayer({
|
|
60
|
-
position: 'absolute',
|
|
61
|
-
top: '100%',
|
|
62
|
-
left: 0,
|
|
63
|
-
right: 0,
|
|
64
|
-
backgroundColor: vars.colors.backgroundDefault,
|
|
65
|
-
border: `1px solid ${vars.colors.borderDefault}`,
|
|
66
|
-
borderRadius: '8px',
|
|
67
|
-
boxShadow: '0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)',
|
|
68
|
-
maxHeight: '200px',
|
|
69
|
-
overflowY: 'auto',
|
|
70
|
-
zIndex: 50,
|
|
71
|
-
marginTop: '4px',
|
|
72
|
-
});
|
|
73
|
-
export const comboboxOption = styleWithLayer({
|
|
74
|
-
padding: '0.75rem 1rem',
|
|
75
|
-
cursor: 'pointer',
|
|
76
|
-
fontSize: '14px',
|
|
77
|
-
color: vars.colors.textPrimary,
|
|
78
|
-
transition: 'background-color 0.15s ease',
|
|
79
|
-
':hover': {
|
|
80
|
-
backgroundColor: vars.colors.backgroundMuted,
|
|
81
|
-
},
|
|
82
|
-
':focus-visible': {
|
|
83
|
-
outline: 'none',
|
|
84
|
-
backgroundColor: vars.colors.backgroundMuted,
|
|
85
|
-
},
|
|
86
|
-
});
|
|
87
|
-
export const comboboxOptionSelected = styleWithLayer({
|
|
88
|
-
backgroundColor: vars.colors.buttonBackgroundPrimary,
|
|
89
|
-
color: vars.colors.buttonTextPrimary,
|
|
90
|
-
':hover': {
|
|
91
|
-
backgroundColor: vars.colors.buttonBackgroundFocusedPrimary,
|
|
92
|
-
},
|
|
93
|
-
});
|
|
94
|
-
export const comboboxOptionDisabled = styleWithLayer({
|
|
95
|
-
opacity: 0.5,
|
|
96
|
-
cursor: 'not-allowed',
|
|
97
|
-
':hover': {
|
|
98
|
-
backgroundColor: 'transparent',
|
|
99
|
-
},
|
|
100
|
-
});
|
|
101
|
-
export const comboboxClearButton = styleWithLayer({
|
|
102
|
-
position: 'absolute',
|
|
103
|
-
right: '2.5rem',
|
|
104
|
-
top: '50%',
|
|
105
|
-
transform: 'translateY(-50%)',
|
|
106
|
-
background: 'none',
|
|
107
|
-
border: 'none',
|
|
108
|
-
cursor: 'pointer',
|
|
109
|
-
padding: '0.25rem',
|
|
110
|
-
color: vars.colors.textSecondary,
|
|
111
|
-
fontSize: '16px',
|
|
112
|
-
display: 'flex',
|
|
113
|
-
alignItems: 'center',
|
|
114
|
-
justifyContent: 'center',
|
|
115
|
-
':hover': {
|
|
116
|
-
color: vars.colors.textPrimary,
|
|
117
|
-
},
|
|
118
|
-
});
|
|
119
|
-
export const comboboxArrow = styleWithLayer({
|
|
120
|
-
position: 'absolute',
|
|
121
|
-
right: '0.75rem',
|
|
122
|
-
top: '50%',
|
|
123
|
-
transform: 'translateY(-50%)',
|
|
124
|
-
pointerEvents: 'none',
|
|
125
|
-
color: vars.colors.textSecondary,
|
|
126
|
-
});
|
|
127
|
-
export const comboboxNoResults = styleWithLayer({
|
|
128
|
-
padding: '0.75rem 1rem',
|
|
129
|
-
fontSize: '14px',
|
|
130
|
-
color: vars.colors.textSecondary,
|
|
131
|
-
textAlign: 'center',
|
|
132
|
-
});
|
|
133
|
-
export const comboboxHint = styleWithLayer({
|
|
134
|
-
fontSize: '12px',
|
|
135
|
-
color: vars.colors.textSecondary,
|
|
136
|
-
marginTop: '4px',
|
|
137
|
-
});
|
|
138
|
-
export const comboboxErrorMessage = styleWithLayer({
|
|
139
|
-
fontSize: '12px',
|
|
140
|
-
color: vars.colors.alertErrorText,
|
|
141
|
-
marginTop: '4px',
|
|
142
|
-
});
|
|
@@ -1,163 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { Sprinkles } from '../../styles/sprinkles.css';
|
|
3
|
-
export type ContainerSize = 'sm' | 'md' | 'lg' | 'xl' | 'full';
|
|
4
|
-
export type ContainerProps = Sprinkles & {
|
|
5
|
-
size?: ContainerSize;
|
|
6
|
-
centerContent?: boolean;
|
|
7
|
-
children?: React.ReactNode;
|
|
8
|
-
className?: string;
|
|
9
|
-
style?: React.CSSProperties;
|
|
10
|
-
};
|
|
11
|
-
declare const Container: React.ForwardRefExoticComponent<{
|
|
12
|
-
display?: ("flex" | "none" | "block" | "inline" | {
|
|
13
|
-
mobile?: "flex" | "none" | "block" | "inline";
|
|
14
|
-
tablet?: "flex" | "none" | "block" | "inline";
|
|
15
|
-
desktop?: "flex" | "none" | "block" | "inline";
|
|
16
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "flex" | "none" | "block" | "inline">;
|
|
17
|
-
width?: ("auto" | "100%" | "50%" | "25%" | {
|
|
18
|
-
mobile?: "auto" | "100%" | "50%" | "25%";
|
|
19
|
-
tablet?: "auto" | "100%" | "50%" | "25%";
|
|
20
|
-
desktop?: "auto" | "100%" | "50%" | "25%";
|
|
21
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "auto" | "100%" | "50%" | "25%">;
|
|
22
|
-
height?: ("auto" | "100%" | "50%" | "25%" | {
|
|
23
|
-
mobile?: "auto" | "100%" | "50%" | "25%";
|
|
24
|
-
tablet?: "auto" | "100%" | "50%" | "25%";
|
|
25
|
-
desktop?: "auto" | "100%" | "50%" | "25%";
|
|
26
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "auto" | "100%" | "50%" | "25%">;
|
|
27
|
-
flexDirection?: ("column" | "row" | {
|
|
28
|
-
mobile?: "column" | "row";
|
|
29
|
-
tablet?: "column" | "row";
|
|
30
|
-
desktop?: "column" | "row";
|
|
31
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "column" | "row">;
|
|
32
|
-
justifyContent?: ("space-around" | "space-between" | "stretch" | "center" | "flex-end" | "flex-start" | {
|
|
33
|
-
mobile?: "space-around" | "space-between" | "stretch" | "center" | "flex-end" | "flex-start";
|
|
34
|
-
tablet?: "space-around" | "space-between" | "stretch" | "center" | "flex-end" | "flex-start";
|
|
35
|
-
desktop?: "space-around" | "space-between" | "stretch" | "center" | "flex-end" | "flex-start";
|
|
36
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "space-around" | "space-between" | "stretch" | "center" | "flex-end" | "flex-start">;
|
|
37
|
-
alignItems?: ("stretch" | "center" | "flex-end" | "flex-start" | {
|
|
38
|
-
mobile?: "stretch" | "center" | "flex-end" | "flex-start";
|
|
39
|
-
tablet?: "stretch" | "center" | "flex-end" | "flex-start";
|
|
40
|
-
desktop?: "stretch" | "center" | "flex-end" | "flex-start";
|
|
41
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "stretch" | "center" | "flex-end" | "flex-start">;
|
|
42
|
-
paddingTop?: ("auto" | "medium" | "none" | "large" | "small" | {
|
|
43
|
-
mobile?: "auto" | "medium" | "none" | "large" | "small";
|
|
44
|
-
tablet?: "auto" | "medium" | "none" | "large" | "small";
|
|
45
|
-
desktop?: "auto" | "medium" | "none" | "large" | "small";
|
|
46
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "auto" | "medium" | "none" | "large" | "small">;
|
|
47
|
-
paddingBottom?: ("auto" | "medium" | "none" | "large" | "small" | {
|
|
48
|
-
mobile?: "auto" | "medium" | "none" | "large" | "small";
|
|
49
|
-
tablet?: "auto" | "medium" | "none" | "large" | "small";
|
|
50
|
-
desktop?: "auto" | "medium" | "none" | "large" | "small";
|
|
51
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "auto" | "medium" | "none" | "large" | "small">;
|
|
52
|
-
paddingLeft?: ("auto" | "medium" | "none" | "large" | "small" | {
|
|
53
|
-
mobile?: "auto" | "medium" | "none" | "large" | "small";
|
|
54
|
-
tablet?: "auto" | "medium" | "none" | "large" | "small";
|
|
55
|
-
desktop?: "auto" | "medium" | "none" | "large" | "small";
|
|
56
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "auto" | "medium" | "none" | "large" | "small">;
|
|
57
|
-
paddingRight?: ("auto" | "medium" | "none" | "large" | "small" | {
|
|
58
|
-
mobile?: "auto" | "medium" | "none" | "large" | "small";
|
|
59
|
-
tablet?: "auto" | "medium" | "none" | "large" | "small";
|
|
60
|
-
desktop?: "auto" | "medium" | "none" | "large" | "small";
|
|
61
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "auto" | "medium" | "none" | "large" | "small">;
|
|
62
|
-
marginLeft?: ("auto" | "medium" | "none" | "large" | "small" | {
|
|
63
|
-
mobile?: "auto" | "medium" | "none" | "large" | "small";
|
|
64
|
-
tablet?: "auto" | "medium" | "none" | "large" | "small";
|
|
65
|
-
desktop?: "auto" | "medium" | "none" | "large" | "small";
|
|
66
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "auto" | "medium" | "none" | "large" | "small">;
|
|
67
|
-
marginRight?: ("auto" | "medium" | "none" | "large" | "small" | {
|
|
68
|
-
mobile?: "auto" | "medium" | "none" | "large" | "small";
|
|
69
|
-
tablet?: "auto" | "medium" | "none" | "large" | "small";
|
|
70
|
-
desktop?: "auto" | "medium" | "none" | "large" | "small";
|
|
71
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "auto" | "medium" | "none" | "large" | "small">;
|
|
72
|
-
marginTop?: ("auto" | "medium" | "none" | "large" | "small" | {
|
|
73
|
-
mobile?: "auto" | "medium" | "none" | "large" | "small";
|
|
74
|
-
tablet?: "auto" | "medium" | "none" | "large" | "small";
|
|
75
|
-
desktop?: "auto" | "medium" | "none" | "large" | "small";
|
|
76
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "auto" | "medium" | "none" | "large" | "small">;
|
|
77
|
-
marginBottom?: ("auto" | "medium" | "none" | "large" | "small" | {
|
|
78
|
-
mobile?: "auto" | "medium" | "none" | "large" | "small";
|
|
79
|
-
tablet?: "auto" | "medium" | "none" | "large" | "small";
|
|
80
|
-
desktop?: "auto" | "medium" | "none" | "large" | "small";
|
|
81
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "auto" | "medium" | "none" | "large" | "small">;
|
|
82
|
-
borderLeft?: ("auto" | "medium" | "none" | "large" | "small" | {
|
|
83
|
-
mobile?: "auto" | "medium" | "none" | "large" | "small";
|
|
84
|
-
tablet?: "auto" | "medium" | "none" | "large" | "small";
|
|
85
|
-
desktop?: "auto" | "medium" | "none" | "large" | "small";
|
|
86
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "auto" | "medium" | "none" | "large" | "small">;
|
|
87
|
-
borderRight?: ("auto" | "medium" | "none" | "large" | "small" | {
|
|
88
|
-
mobile?: "auto" | "medium" | "none" | "large" | "small";
|
|
89
|
-
tablet?: "auto" | "medium" | "none" | "large" | "small";
|
|
90
|
-
desktop?: "auto" | "medium" | "none" | "large" | "small";
|
|
91
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "auto" | "medium" | "none" | "large" | "small">;
|
|
92
|
-
borderTop?: ("auto" | "medium" | "none" | "large" | "small" | {
|
|
93
|
-
mobile?: "auto" | "medium" | "none" | "large" | "small";
|
|
94
|
-
tablet?: "auto" | "medium" | "none" | "large" | "small";
|
|
95
|
-
desktop?: "auto" | "medium" | "none" | "large" | "small";
|
|
96
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "auto" | "medium" | "none" | "large" | "small">;
|
|
97
|
-
borderBottom?: ("auto" | "medium" | "none" | "large" | "small" | {
|
|
98
|
-
mobile?: "auto" | "medium" | "none" | "large" | "small";
|
|
99
|
-
tablet?: "auto" | "medium" | "none" | "large" | "small";
|
|
100
|
-
desktop?: "auto" | "medium" | "none" | "large" | "small";
|
|
101
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "auto" | "medium" | "none" | "large" | "small">;
|
|
102
|
-
borderRadius?: ("auto" | "medium" | "none" | "large" | "small" | {
|
|
103
|
-
mobile?: "auto" | "medium" | "none" | "large" | "small";
|
|
104
|
-
tablet?: "auto" | "medium" | "none" | "large" | "small";
|
|
105
|
-
desktop?: "auto" | "medium" | "none" | "large" | "small";
|
|
106
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "auto" | "medium" | "none" | "large" | "small">;
|
|
107
|
-
gap?: ("auto" | "medium" | "none" | "large" | "small" | {
|
|
108
|
-
mobile?: "auto" | "medium" | "none" | "large" | "small";
|
|
109
|
-
tablet?: "auto" | "medium" | "none" | "large" | "small";
|
|
110
|
-
desktop?: "auto" | "medium" | "none" | "large" | "small";
|
|
111
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "auto" | "medium" | "none" | "large" | "small">;
|
|
112
|
-
padding?: ("auto" | "medium" | "none" | "large" | "small" | {
|
|
113
|
-
mobile?: "auto" | "medium" | "none" | "large" | "small";
|
|
114
|
-
tablet?: "auto" | "medium" | "none" | "large" | "small";
|
|
115
|
-
desktop?: "auto" | "medium" | "none" | "large" | "small";
|
|
116
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "auto" | "medium" | "none" | "large" | "small">;
|
|
117
|
-
border?: ("auto" | "medium" | "none" | "large" | "small" | {
|
|
118
|
-
mobile?: "auto" | "medium" | "none" | "large" | "small";
|
|
119
|
-
tablet?: "auto" | "medium" | "none" | "large" | "small";
|
|
120
|
-
desktop?: "auto" | "medium" | "none" | "large" | "small";
|
|
121
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "auto" | "medium" | "none" | "large" | "small">;
|
|
122
|
-
paddingX?: ("auto" | "medium" | "none" | "large" | "small" | {
|
|
123
|
-
mobile?: "auto" | "medium" | "none" | "large" | "small";
|
|
124
|
-
tablet?: "auto" | "medium" | "none" | "large" | "small";
|
|
125
|
-
desktop?: "auto" | "medium" | "none" | "large" | "small";
|
|
126
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "auto" | "medium" | "none" | "large" | "small">;
|
|
127
|
-
paddingY?: ("auto" | "medium" | "none" | "large" | "small" | {
|
|
128
|
-
mobile?: "auto" | "medium" | "none" | "large" | "small";
|
|
129
|
-
tablet?: "auto" | "medium" | "none" | "large" | "small";
|
|
130
|
-
desktop?: "auto" | "medium" | "none" | "large" | "small";
|
|
131
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "auto" | "medium" | "none" | "large" | "small">;
|
|
132
|
-
marginX?: ("auto" | "medium" | "none" | "large" | "small" | {
|
|
133
|
-
mobile?: "auto" | "medium" | "none" | "large" | "small";
|
|
134
|
-
tablet?: "auto" | "medium" | "none" | "large" | "small";
|
|
135
|
-
desktop?: "auto" | "medium" | "none" | "large" | "small";
|
|
136
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "auto" | "medium" | "none" | "large" | "small">;
|
|
137
|
-
marginY?: ("auto" | "medium" | "none" | "large" | "small" | {
|
|
138
|
-
mobile?: "auto" | "medium" | "none" | "large" | "small";
|
|
139
|
-
tablet?: "auto" | "medium" | "none" | "large" | "small";
|
|
140
|
-
desktop?: "auto" | "medium" | "none" | "large" | "small";
|
|
141
|
-
}) | import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "auto" | "medium" | "none" | "large" | "small">;
|
|
142
|
-
placeItems?: import("@vanilla-extract/sprinkles").ResponsiveArray<2 | 3 | 1, "stretch" | "center" | "flex-end" | "flex-start"> | ("stretch" | "center" | "flex-end" | "flex-start" | {
|
|
143
|
-
mobile?: "stretch" | "center" | "flex-end" | "flex-start";
|
|
144
|
-
tablet?: "stretch" | "center" | "flex-end" | "flex-start";
|
|
145
|
-
desktop?: "stretch" | "center" | "flex-end" | "flex-start";
|
|
146
|
-
});
|
|
147
|
-
} & {
|
|
148
|
-
color?: "c1-50" | "c1-100" | "c1-150" | "c1-200" | "c1-250" | "c1-300" | "c1-350" | "c1-400" | "c1-450" | "c1-500" | "c1-550" | "c1-600" | "c1-650" | "c1-700" | "c1-750" | "c1-800" | "c1-850" | "c1-900" | "c2-50" | "c2-100" | "c2-150" | "c2-200" | "c2-250" | "c2-300" | "c2-350" | "c2-400" | "c2-450" | "c2-500" | "c2-550" | "c2-600" | "c2-650" | "c2-700" | "c2-750" | "c2-800" | "c2-850" | "c2-900" | "c3-50" | "c3-100" | "c3-150" | "c3-200" | "c3-250" | "c3-300" | "c3-350" | "c3-400" | "c3-450" | "c3-500" | "c3-550" | "c3-600" | "c3-650" | "c3-700" | "c3-750" | "c3-800" | "c3-850" | "c3-900" | "c4-50" | "c4-100" | "c4-150" | "c4-200" | "c4-250" | "c4-300" | "c4-350" | "c4-400" | "c4-450" | "c4-500" | "c4-550" | "c4-600" | "c4-650" | "c4-700" | "c4-750" | "c4-800" | "c4-850" | "c4-900" | "c5-50" | "c5-100" | "c5-150" | "c5-200" | "c5-250" | "c5-300" | "c5-350" | "c5-400" | "c5-450" | "c5-500" | "c5-550" | "c5-600" | "c5-650" | "c5-700" | "c5-750" | "c5-800" | "c5-850" | "c5-900" | {
|
|
149
|
-
lightMode?: "c1-50" | "c1-100" | "c1-150" | "c1-200" | "c1-250" | "c1-300" | "c1-350" | "c1-400" | "c1-450" | "c1-500" | "c1-550" | "c1-600" | "c1-650" | "c1-700" | "c1-750" | "c1-800" | "c1-850" | "c1-900" | "c2-50" | "c2-100" | "c2-150" | "c2-200" | "c2-250" | "c2-300" | "c2-350" | "c2-400" | "c2-450" | "c2-500" | "c2-550" | "c2-600" | "c2-650" | "c2-700" | "c2-750" | "c2-800" | "c2-850" | "c2-900" | "c3-50" | "c3-100" | "c3-150" | "c3-200" | "c3-250" | "c3-300" | "c3-350" | "c3-400" | "c3-450" | "c3-500" | "c3-550" | "c3-600" | "c3-650" | "c3-700" | "c3-750" | "c3-800" | "c3-850" | "c3-900" | "c4-50" | "c4-100" | "c4-150" | "c4-200" | "c4-250" | "c4-300" | "c4-350" | "c4-400" | "c4-450" | "c4-500" | "c4-550" | "c4-600" | "c4-650" | "c4-700" | "c4-750" | "c4-800" | "c4-850" | "c4-900" | "c5-50" | "c5-100" | "c5-150" | "c5-200" | "c5-250" | "c5-300" | "c5-350" | "c5-400" | "c5-450" | "c5-500" | "c5-550" | "c5-600" | "c5-650" | "c5-700" | "c5-750" | "c5-800" | "c5-850" | "c5-900";
|
|
150
|
-
darkMode?: "c1-50" | "c1-100" | "c1-150" | "c1-200" | "c1-250" | "c1-300" | "c1-350" | "c1-400" | "c1-450" | "c1-500" | "c1-550" | "c1-600" | "c1-650" | "c1-700" | "c1-750" | "c1-800" | "c1-850" | "c1-900" | "c2-50" | "c2-100" | "c2-150" | "c2-200" | "c2-250" | "c2-300" | "c2-350" | "c2-400" | "c2-450" | "c2-500" | "c2-550" | "c2-600" | "c2-650" | "c2-700" | "c2-750" | "c2-800" | "c2-850" | "c2-900" | "c3-50" | "c3-100" | "c3-150" | "c3-200" | "c3-250" | "c3-300" | "c3-350" | "c3-400" | "c3-450" | "c3-500" | "c3-550" | "c3-600" | "c3-650" | "c3-700" | "c3-750" | "c3-800" | "c3-850" | "c3-900" | "c4-50" | "c4-100" | "c4-150" | "c4-200" | "c4-250" | "c4-300" | "c4-350" | "c4-400" | "c4-450" | "c4-500" | "c4-550" | "c4-600" | "c4-650" | "c4-700" | "c4-750" | "c4-800" | "c4-850" | "c4-900" | "c5-50" | "c5-100" | "c5-150" | "c5-200" | "c5-250" | "c5-300" | "c5-350" | "c5-400" | "c5-450" | "c5-500" | "c5-550" | "c5-600" | "c5-650" | "c5-700" | "c5-750" | "c5-800" | "c5-850" | "c5-900";
|
|
151
|
-
};
|
|
152
|
-
background?: "c1-50" | "c1-100" | "c1-150" | "c1-200" | "c1-250" | "c1-300" | "c1-350" | "c1-400" | "c1-450" | "c1-500" | "c1-550" | "c1-600" | "c1-650" | "c1-700" | "c1-750" | "c1-800" | "c1-850" | "c1-900" | "c2-50" | "c2-100" | "c2-150" | "c2-200" | "c2-250" | "c2-300" | "c2-350" | "c2-400" | "c2-450" | "c2-500" | "c2-550" | "c2-600" | "c2-650" | "c2-700" | "c2-750" | "c2-800" | "c2-850" | "c2-900" | "c3-50" | "c3-100" | "c3-150" | "c3-200" | "c3-250" | "c3-300" | "c3-350" | "c3-400" | "c3-450" | "c3-500" | "c3-550" | "c3-600" | "c3-650" | "c3-700" | "c3-750" | "c3-800" | "c3-850" | "c3-900" | "c4-50" | "c4-100" | "c4-150" | "c4-200" | "c4-250" | "c4-300" | "c4-350" | "c4-400" | "c4-450" | "c4-500" | "c4-550" | "c4-600" | "c4-650" | "c4-700" | "c4-750" | "c4-800" | "c4-850" | "c4-900" | "c5-50" | "c5-100" | "c5-150" | "c5-200" | "c5-250" | "c5-300" | "c5-350" | "c5-400" | "c5-450" | "c5-500" | "c5-550" | "c5-600" | "c5-650" | "c5-700" | "c5-750" | "c5-800" | "c5-850" | "c5-900" | {
|
|
153
|
-
lightMode?: "c1-50" | "c1-100" | "c1-150" | "c1-200" | "c1-250" | "c1-300" | "c1-350" | "c1-400" | "c1-450" | "c1-500" | "c1-550" | "c1-600" | "c1-650" | "c1-700" | "c1-750" | "c1-800" | "c1-850" | "c1-900" | "c2-50" | "c2-100" | "c2-150" | "c2-200" | "c2-250" | "c2-300" | "c2-350" | "c2-400" | "c2-450" | "c2-500" | "c2-550" | "c2-600" | "c2-650" | "c2-700" | "c2-750" | "c2-800" | "c2-850" | "c2-900" | "c3-50" | "c3-100" | "c3-150" | "c3-200" | "c3-250" | "c3-300" | "c3-350" | "c3-400" | "c3-450" | "c3-500" | "c3-550" | "c3-600" | "c3-650" | "c3-700" | "c3-750" | "c3-800" | "c3-850" | "c3-900" | "c4-50" | "c4-100" | "c4-150" | "c4-200" | "c4-250" | "c4-300" | "c4-350" | "c4-400" | "c4-450" | "c4-500" | "c4-550" | "c4-600" | "c4-650" | "c4-700" | "c4-750" | "c4-800" | "c4-850" | "c4-900" | "c5-50" | "c5-100" | "c5-150" | "c5-200" | "c5-250" | "c5-300" | "c5-350" | "c5-400" | "c5-450" | "c5-500" | "c5-550" | "c5-600" | "c5-650" | "c5-700" | "c5-750" | "c5-800" | "c5-850" | "c5-900";
|
|
154
|
-
darkMode?: "c1-50" | "c1-100" | "c1-150" | "c1-200" | "c1-250" | "c1-300" | "c1-350" | "c1-400" | "c1-450" | "c1-500" | "c1-550" | "c1-600" | "c1-650" | "c1-700" | "c1-750" | "c1-800" | "c1-850" | "c1-900" | "c2-50" | "c2-100" | "c2-150" | "c2-200" | "c2-250" | "c2-300" | "c2-350" | "c2-400" | "c2-450" | "c2-500" | "c2-550" | "c2-600" | "c2-650" | "c2-700" | "c2-750" | "c2-800" | "c2-850" | "c2-900" | "c3-50" | "c3-100" | "c3-150" | "c3-200" | "c3-250" | "c3-300" | "c3-350" | "c3-400" | "c3-450" | "c3-500" | "c3-550" | "c3-600" | "c3-650" | "c3-700" | "c3-750" | "c3-800" | "c3-850" | "c3-900" | "c4-50" | "c4-100" | "c4-150" | "c4-200" | "c4-250" | "c4-300" | "c4-350" | "c4-400" | "c4-450" | "c4-500" | "c4-550" | "c4-600" | "c4-650" | "c4-700" | "c4-750" | "c4-800" | "c4-850" | "c4-900" | "c5-50" | "c5-100" | "c5-150" | "c5-200" | "c5-250" | "c5-300" | "c5-350" | "c5-400" | "c5-450" | "c5-500" | "c5-550" | "c5-600" | "c5-650" | "c5-700" | "c5-750" | "c5-800" | "c5-850" | "c5-900";
|
|
155
|
-
};
|
|
156
|
-
} & {
|
|
157
|
-
size?: ContainerSize;
|
|
158
|
-
centerContent?: boolean;
|
|
159
|
-
children?: React.ReactNode;
|
|
160
|
-
className?: string;
|
|
161
|
-
style?: React.CSSProperties;
|
|
162
|
-
} & React.RefAttributes<HTMLElement>>;
|
|
163
|
-
export default Container;
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { forwardRef } from 'react';
|
|
3
|
-
import Box from '../Box';
|
|
4
|
-
const sizeMap = {
|
|
5
|
-
sm: '640px',
|
|
6
|
-
md: '768px',
|
|
7
|
-
lg: '1024px',
|
|
8
|
-
xl: '1280px',
|
|
9
|
-
full: '100%',
|
|
10
|
-
};
|
|
11
|
-
const Container = forwardRef(({ size = 'lg', centerContent = true, children, className, style }, ref) => {
|
|
12
|
-
const sizeValue = size;
|
|
13
|
-
const containerStyle = {
|
|
14
|
-
maxWidth: sizeMap[sizeValue],
|
|
15
|
-
marginLeft: centerContent ? 'auto' : undefined,
|
|
16
|
-
marginRight: centerContent ? 'auto' : undefined,
|
|
17
|
-
};
|
|
18
|
-
return (_jsx(Box, { ref: ref, width: "100%", className: className, style: { ...containerStyle, ...style }, children: children }));
|
|
19
|
-
});
|
|
20
|
-
Container.displayName = 'Container';
|
|
21
|
-
export default Container;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default as Container } from './Container';
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { Sprinkles } from '../../styles/sprinkles.css';
|
|
3
|
-
export type DividerOrientation = 'horizontal' | 'vertical';
|
|
4
|
-
export type DividerSize = 'small' | 'medium' | 'large';
|
|
5
|
-
export type DividerProps = React.HTMLAttributes<HTMLHRElement> & Sprinkles & {
|
|
6
|
-
orientation?: DividerOrientation;
|
|
7
|
-
size?: DividerSize;
|
|
8
|
-
};
|
|
9
|
-
declare const Divider: ({ orientation, size, ...props }: DividerProps) => import("react/jsx-runtime").JSX.Element;
|
|
10
|
-
export default Divider;
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import clsx from 'clsx';
|
|
3
|
-
import { divider, dividerOrientations, dividerSizes, dividerVerticalSizes, } from './styles.css';
|
|
4
|
-
import Box from '../Box';
|
|
5
|
-
const Divider = ({ orientation = 'horizontal', size = 'medium', ...props }) => {
|
|
6
|
-
return (_jsx(Box, { as: "hr", className: clsx(divider, dividerOrientations[orientation], orientation === 'vertical'
|
|
7
|
-
? dividerVerticalSizes[size]
|
|
8
|
-
: dividerSizes[size], props.className), role: "separator", "aria-orientation": orientation, ...props }));
|
|
9
|
-
};
|
|
10
|
-
export default Divider;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default as Divider } from './Divider';
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export declare const dividerOrientations: Record<"horizontal" | "vertical", string>;
|
|
2
|
-
export declare const dividerSizes: Record<"medium" | "large" | "small", string>;
|
|
3
|
-
export declare const divider: string;
|
|
4
|
-
export declare const dividerVerticalSizes: Record<"medium" | "large" | "small", string>;
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { styleVariants } from '@vanilla-extract/css';
|
|
2
|
-
import { vars } from '../../styles/theme.css';
|
|
3
|
-
import { styleWithLayer } from '../../styles/utils';
|
|
4
|
-
export const dividerOrientations = styleVariants({
|
|
5
|
-
horizontal: {
|
|
6
|
-
width: '100%',
|
|
7
|
-
height: '1px',
|
|
8
|
-
borderTop: `1px solid ${vars.colors.borderMuted}`,
|
|
9
|
-
},
|
|
10
|
-
vertical: {
|
|
11
|
-
width: '1px',
|
|
12
|
-
height: '100%',
|
|
13
|
-
borderLeft: `1px solid ${vars.colors.borderMuted}`,
|
|
14
|
-
},
|
|
15
|
-
});
|
|
16
|
-
export const dividerSizes = styleVariants({
|
|
17
|
-
small: {
|
|
18
|
-
margin: '0.5rem 0',
|
|
19
|
-
},
|
|
20
|
-
medium: {
|
|
21
|
-
margin: '1rem 0',
|
|
22
|
-
},
|
|
23
|
-
large: {
|
|
24
|
-
margin: '1.5rem 0',
|
|
25
|
-
},
|
|
26
|
-
});
|
|
27
|
-
export const divider = styleWithLayer({
|
|
28
|
-
border: 'none',
|
|
29
|
-
flexShrink: 0,
|
|
30
|
-
});
|
|
31
|
-
export const dividerVerticalSizes = styleVariants({
|
|
32
|
-
small: {
|
|
33
|
-
margin: '0 0.5rem',
|
|
34
|
-
},
|
|
35
|
-
medium: {
|
|
36
|
-
margin: '0 1rem',
|
|
37
|
-
},
|
|
38
|
-
large: {
|
|
39
|
-
margin: '0 1.5rem',
|
|
40
|
-
},
|
|
41
|
-
});
|