@brycks/core-front 0.2.7 → 0.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/components/data/InfoItem/InfoItem.cjs +2 -0
- package/dist/components/data/InfoItem/InfoItem.cjs.map +1 -0
- package/dist/components/data/InfoItem/InfoItem.js +140 -0
- package/dist/components/data/InfoItem/InfoItem.js.map +1 -0
- package/dist/components/data/List/List.cjs +2 -0
- package/dist/components/data/List/List.cjs.map +1 -0
- package/dist/components/data/List/List.js +178 -0
- package/dist/components/data/List/List.js.map +1 -0
- package/dist/components/data/Table/Table.cjs +2 -0
- package/dist/components/data/Table/Table.cjs.map +1 -0
- package/dist/components/data/Table/Table.js +247 -0
- package/dist/components/data/Table/Table.js.map +1 -0
- package/dist/components/data.cjs +2 -0
- package/dist/components/data.cjs.map +1 -0
- package/dist/components/data.d.ts +2 -0
- package/dist/components/data.js +20 -0
- package/dist/components/data.js.map +1 -0
- package/dist/components/feedback/Alert/Alert.cjs +2 -0
- package/dist/components/feedback/Alert/Alert.cjs.map +1 -0
- package/dist/components/feedback/Alert/Alert.js +204 -0
- package/dist/components/feedback/Alert/Alert.js.map +1 -0
- package/dist/components/feedback/Drawer/Drawer.cjs +23 -0
- package/dist/components/feedback/Drawer/Drawer.cjs.map +1 -0
- package/dist/components/feedback/Drawer/Drawer.js +199 -0
- package/dist/components/feedback/Drawer/Drawer.js.map +1 -0
- package/dist/components/feedback/Modal/Modal.cjs +2 -0
- package/dist/components/feedback/Modal/Modal.cjs.map +1 -0
- package/dist/components/feedback/Modal/Modal.js +183 -0
- package/dist/components/feedback/Modal/Modal.js.map +1 -0
- package/dist/components/feedback/Popover/Popover.cjs +7 -0
- package/dist/components/feedback/Popover/Popover.cjs.map +1 -0
- package/dist/components/feedback/Popover/Popover.js +168 -0
- package/dist/components/feedback/Popover/Popover.js.map +1 -0
- package/dist/components/feedback/Progress/Progress.cjs +12 -0
- package/dist/components/feedback/Progress/Progress.cjs.map +1 -0
- package/dist/components/feedback/Progress/Progress.js +172 -0
- package/dist/components/feedback/Progress/Progress.js.map +1 -0
- package/dist/components/feedback/Toast/Toast.cjs +11 -0
- package/dist/components/feedback/Toast/Toast.cjs.map +1 -0
- package/dist/components/feedback/Toast/Toast.js +216 -0
- package/dist/components/feedback/Toast/Toast.js.map +1 -0
- package/dist/components/feedback/Toast/ToastContext.cjs +2 -0
- package/dist/components/feedback/Toast/ToastContext.cjs.map +1 -0
- package/dist/components/feedback/Toast/ToastContext.js +13 -0
- package/dist/components/feedback/Toast/ToastContext.js.map +1 -0
- package/dist/components/feedback/Tooltip/Tooltip.cjs +7 -0
- package/dist/components/feedback/Tooltip/Tooltip.cjs.map +1 -0
- package/dist/components/feedback/Tooltip/Tooltip.js +128 -0
- package/dist/components/feedback/Tooltip/Tooltip.js.map +1 -0
- package/dist/components/feedback.cjs +2 -0
- package/dist/components/feedback.cjs.map +1 -0
- package/dist/components/feedback.d.ts +2 -0
- package/dist/components/feedback.js +20 -0
- package/dist/components/feedback.js.map +1 -0
- package/dist/components/form/Checkbox/Checkbox.cjs +2 -0
- package/dist/components/form/Checkbox/Checkbox.cjs.map +1 -0
- package/dist/components/form/Checkbox/Checkbox.js +144 -0
- package/dist/components/form/Checkbox/Checkbox.js.map +1 -0
- package/dist/components/form/DateInput/DateInput.cjs +2 -0
- package/dist/components/form/DateInput/DateInput.cjs.map +1 -0
- package/dist/components/form/DateInput/DateInput.js +119 -0
- package/dist/components/form/DateInput/DateInput.js.map +1 -0
- package/dist/components/form/DropZone/DropZone.cjs +2 -0
- package/dist/components/form/DropZone/DropZone.cjs.map +1 -0
- package/dist/components/form/DropZone/DropZone.js +132 -0
- package/dist/components/form/DropZone/DropZone.js.map +1 -0
- package/dist/components/form/FieldError/FieldError.cjs +2 -0
- package/dist/components/form/FieldError/FieldError.cjs.map +1 -0
- package/dist/components/form/FieldError/FieldError.js +77 -0
- package/dist/components/form/FieldError/FieldError.js.map +1 -0
- package/dist/components/form/FileInput/FileInput.cjs +2 -0
- package/dist/components/form/FileInput/FileInput.cjs.map +1 -0
- package/dist/components/form/FileInput/FileInput.js +163 -0
- package/dist/components/form/FileInput/FileInput.js.map +1 -0
- package/dist/components/form/Form/Form.cjs +2 -0
- package/dist/components/form/Form/Form.cjs.map +1 -0
- package/dist/components/form/Form/Form.js +67 -0
- package/dist/components/form/Form/Form.js.map +1 -0
- package/dist/components/form/FormCard/FormCard.cjs +2 -0
- package/dist/components/form/FormCard/FormCard.cjs.map +1 -0
- package/dist/components/form/FormCard/FormCard.js +91 -0
- package/dist/components/form/FormCard/FormCard.js.map +1 -0
- package/dist/components/form/FormField/FormField.cjs +2 -0
- package/dist/components/form/FormField/FormField.cjs.map +1 -0
- package/dist/components/form/FormField/FormField.js +97 -0
- package/dist/components/form/FormField/FormField.js.map +1 -0
- package/dist/components/form/FormGroup/FormGroup.cjs +2 -0
- package/dist/components/form/FormGroup/FormGroup.cjs.map +1 -0
- package/dist/components/form/FormGroup/FormGroup.js +79 -0
- package/dist/components/form/FormGroup/FormGroup.js.map +1 -0
- package/dist/components/form/FormLabel/FormLabel.cjs +2 -0
- package/dist/components/form/FormLabel/FormLabel.cjs.map +1 -0
- package/dist/components/form/FormLabel/FormLabel.js +68 -0
- package/dist/components/form/FormLabel/FormLabel.js.map +1 -0
- package/dist/components/form/Input/Input.cjs +2 -0
- package/dist/components/form/Input/Input.cjs.map +1 -0
- package/dist/components/form/Input/Input.js +155 -0
- package/dist/components/form/Input/Input.js.map +1 -0
- package/dist/components/form/Radio/Radio.cjs +2 -0
- package/dist/components/form/Radio/Radio.cjs.map +1 -0
- package/dist/components/form/Radio/Radio.js +162 -0
- package/dist/components/form/Radio/Radio.js.map +1 -0
- package/dist/components/form/Select/Select.cjs +2 -0
- package/dist/components/form/Select/Select.cjs.map +1 -0
- package/dist/components/form/Select/Select.js +114 -0
- package/dist/components/form/Select/Select.js.map +1 -0
- package/dist/components/form/Slider/Slider.cjs +2 -0
- package/dist/components/form/Slider/Slider.cjs.map +1 -0
- package/dist/components/form/Slider/Slider.js +147 -0
- package/dist/components/form/Slider/Slider.js.map +1 -0
- package/dist/components/form/Switch/Switch.cjs +2 -0
- package/dist/components/form/Switch/Switch.cjs.map +1 -0
- package/dist/components/form/Switch/Switch.js +118 -0
- package/dist/components/form/Switch/Switch.js.map +1 -0
- package/dist/components/form/TextField/TextField.cjs +2 -0
- package/dist/components/form/TextField/TextField.cjs.map +1 -0
- package/dist/components/form/TextField/TextField.js +89 -0
- package/dist/components/form/TextField/TextField.js.map +1 -0
- package/dist/components/form/Textarea/Textarea.cjs +2 -0
- package/dist/components/form/Textarea/Textarea.cjs.map +1 -0
- package/dist/components/form/Textarea/Textarea.js +121 -0
- package/dist/components/form/Textarea/Textarea.js.map +1 -0
- package/dist/components/form.cjs +2 -0
- package/dist/components/form.cjs.map +1 -0
- package/dist/components/form.d.ts +2 -0
- package/dist/components/form.js +34 -0
- package/dist/components/form.js.map +1 -0
- package/dist/components/layout/AspectRatio/AspectRatio.cjs +2 -0
- package/dist/components/layout/AspectRatio/AspectRatio.cjs.map +1 -0
- package/dist/components/layout/AspectRatio/AspectRatio.js +50 -0
- package/dist/components/layout/AspectRatio/AspectRatio.js.map +1 -0
- package/dist/components/layout/Box/Box.cjs +2 -0
- package/dist/components/layout/Box/Box.cjs.map +1 -0
- package/dist/components/layout/Box/Box.js +58 -0
- package/dist/components/layout/Box/Box.js.map +1 -0
- package/dist/components/layout/Box/Box.styles.cjs +2 -0
- package/dist/components/layout/Box/Box.styles.cjs.map +1 -0
- package/dist/components/layout/Box/Box.styles.js +30 -0
- package/dist/components/layout/Box/Box.styles.js.map +1 -0
- package/dist/components/layout/Card/Card.cjs +2 -0
- package/dist/components/layout/Card/Card.cjs.map +1 -0
- package/dist/components/layout/Card/Card.js +135 -0
- package/dist/components/layout/Card/Card.js.map +1 -0
- package/dist/components/layout/Container/Container.cjs +2 -0
- package/dist/components/layout/Container/Container.cjs.map +1 -0
- package/dist/components/layout/Container/Container.js +57 -0
- package/dist/components/layout/Container/Container.js.map +1 -0
- package/dist/components/layout/Flex/Flex.cjs +2 -0
- package/dist/components/layout/Flex/Flex.cjs.map +1 -0
- package/dist/components/layout/Flex/Flex.js +101 -0
- package/dist/components/layout/Flex/Flex.js.map +1 -0
- package/dist/components/layout/Grid/Grid.cjs +2 -0
- package/dist/components/layout/Grid/Grid.cjs.map +1 -0
- package/dist/components/layout/Grid/Grid.js +92 -0
- package/dist/components/layout/Grid/Grid.js.map +1 -0
- package/dist/components/layout/Section/Section.cjs +2 -0
- package/dist/components/layout/Section/Section.cjs.map +1 -0
- package/dist/components/layout/Section/Section.js +85 -0
- package/dist/components/layout/Section/Section.js.map +1 -0
- package/dist/components/layout/Semantic/Semantic.cjs +2 -0
- package/dist/components/layout/Semantic/Semantic.cjs.map +1 -0
- package/dist/components/layout/Semantic/Semantic.js +103 -0
- package/dist/components/layout/Semantic/Semantic.js.map +1 -0
- package/dist/components/layout/Spacer/Spacer.cjs +2 -0
- package/dist/components/layout/Spacer/Spacer.cjs.map +1 -0
- package/dist/components/layout/Spacer/Spacer.js +38 -0
- package/dist/components/layout/Spacer/Spacer.js.map +1 -0
- package/dist/components/layout/Stack/Stack.cjs +2 -0
- package/dist/components/layout/Stack/Stack.cjs.map +1 -0
- package/dist/components/layout/Stack/Stack.js +67 -0
- package/dist/components/layout/Stack/Stack.js.map +1 -0
- package/dist/components/layout.cjs +2 -0
- package/dist/components/layout.cjs.map +1 -0
- package/dist/components/layout.d.ts +2 -0
- package/dist/components/layout.js +35 -0
- package/dist/components/layout.js.map +1 -0
- package/dist/components/media/Image/Image.cjs +2 -0
- package/dist/components/media/Image/Image.cjs.map +1 -0
- package/dist/components/media/Image/Image.js +171 -0
- package/dist/components/media/Image/Image.js.map +1 -0
- package/dist/components/media/ImageThumbnail/ImageThumbnail.cjs +2 -0
- package/dist/components/media/ImageThumbnail/ImageThumbnail.cjs.map +1 -0
- package/dist/components/media/ImageThumbnail/ImageThumbnail.js +112 -0
- package/dist/components/media/ImageThumbnail/ImageThumbnail.js.map +1 -0
- package/dist/components/media/Video/Video.cjs +2 -0
- package/dist/components/media/Video/Video.cjs.map +1 -0
- package/dist/components/media/Video/Video.js +185 -0
- package/dist/components/media/Video/Video.js.map +1 -0
- package/dist/components/navigation/Accordion/Accordion.cjs +2 -0
- package/dist/components/navigation/Accordion/Accordion.cjs.map +1 -0
- package/dist/components/navigation/Accordion/Accordion.js +180 -0
- package/dist/components/navigation/Accordion/Accordion.js.map +1 -0
- package/dist/components/navigation/Breadcrumb/Breadcrumb.cjs +2 -0
- package/dist/components/navigation/Breadcrumb/Breadcrumb.cjs.map +1 -0
- package/dist/components/navigation/Breadcrumb/Breadcrumb.js +137 -0
- package/dist/components/navigation/Breadcrumb/Breadcrumb.js.map +1 -0
- package/dist/components/navigation/Dropdown/Dropdown.cjs +7 -0
- package/dist/components/navigation/Dropdown/Dropdown.cjs.map +1 -0
- package/dist/components/navigation/Dropdown/Dropdown.js +259 -0
- package/dist/components/navigation/Dropdown/Dropdown.js.map +1 -0
- package/dist/components/navigation/Menu/Menu.cjs +2 -0
- package/dist/components/navigation/Menu/Menu.cjs.map +1 -0
- package/dist/components/navigation/Menu/Menu.js +151 -0
- package/dist/components/navigation/Menu/Menu.js.map +1 -0
- package/dist/components/navigation/Pagination/Pagination.cjs +2 -0
- package/dist/components/navigation/Pagination/Pagination.cjs.map +1 -0
- package/dist/components/navigation/Pagination/Pagination.js +201 -0
- package/dist/components/navigation/Pagination/Pagination.js.map +1 -0
- package/dist/components/navigation/Tabs/Tabs.cjs +7 -0
- package/dist/components/navigation/Tabs/Tabs.cjs.map +1 -0
- package/dist/components/navigation/Tabs/Tabs.js +196 -0
- package/dist/components/navigation/Tabs/Tabs.js.map +1 -0
- package/dist/components/navigation.cjs +2 -0
- package/dist/components/navigation.cjs.map +1 -0
- package/dist/components/navigation.d.ts +2 -0
- package/dist/components/navigation.js +29 -0
- package/dist/components/navigation.js.map +1 -0
- package/dist/components/primitives/Button/Button.cjs +2 -0
- package/dist/components/primitives/Button/Button.cjs.map +1 -0
- package/dist/components/primitives/Button/Button.js +173 -0
- package/dist/components/primitives/Button/Button.js.map +1 -0
- package/dist/components/primitives/Button/Button.styles.cjs +2 -0
- package/dist/components/primitives/Button/Button.styles.cjs.map +1 -0
- package/dist/components/primitives/Button/Button.styles.js +321 -0
- package/dist/components/primitives/Button/Button.styles.js.map +1 -0
- package/dist/components/primitives/Icon/Icon.cjs +2 -0
- package/dist/components/primitives/Icon/Icon.cjs.map +1 -0
- package/dist/components/primitives/Icon/Icon.js +58 -0
- package/dist/components/primitives/Icon/Icon.js.map +1 -0
- package/dist/components/primitives/Icon/iconPaths.cjs +2 -0
- package/dist/components/primitives/Icon/iconPaths.cjs.map +1 -0
- package/dist/components/primitives/Icon/iconPaths.js +63 -0
- package/dist/components/primitives/Icon/iconPaths.js.map +1 -0
- package/dist/components/typography/Heading/Heading.cjs +2 -0
- package/dist/components/typography/Heading/Heading.cjs.map +1 -0
- package/dist/components/typography/Heading/Heading.js +65 -0
- package/dist/components/typography/Heading/Heading.js.map +1 -0
- package/dist/components/typography/Text/Text.cjs +2 -0
- package/dist/components/typography/Text/Text.cjs.map +1 -0
- package/dist/components/typography/Text/Text.js +88 -0
- package/dist/components/typography/Text/Text.js.map +1 -0
- package/dist/components/utility/Avatar/Avatar.cjs +2 -0
- package/dist/components/utility/Avatar/Avatar.cjs.map +1 -0
- package/dist/components/utility/Avatar/Avatar.js +91 -0
- package/dist/components/utility/Avatar/Avatar.js.map +1 -0
- package/dist/components/utility/Badge/Badge.cjs +2 -0
- package/dist/components/utility/Badge/Badge.cjs.map +1 -0
- package/dist/components/utility/Badge/Badge.js +90 -0
- package/dist/components/utility/Badge/Badge.js.map +1 -0
- package/dist/components/utility/Divider/Divider.cjs +2 -0
- package/dist/components/utility/Divider/Divider.cjs.map +1 -0
- package/dist/components/utility/Divider/Divider.js +87 -0
- package/dist/components/utility/Divider/Divider.js.map +1 -0
- package/dist/components/utility/EmptyState/EmptyState.cjs +2 -0
- package/dist/components/utility/EmptyState/EmptyState.cjs.map +1 -0
- package/dist/components/utility/EmptyState/EmptyState.js +132 -0
- package/dist/components/utility/EmptyState/EmptyState.js.map +1 -0
- package/dist/components/utility/FocusTrap/FocusTrap.cjs +2 -0
- package/dist/components/utility/FocusTrap/FocusTrap.cjs.map +1 -0
- package/dist/components/utility/FocusTrap/FocusTrap.js +35 -0
- package/dist/components/utility/FocusTrap/FocusTrap.js.map +1 -0
- package/dist/components/utility/Loader/Loader.cjs +2 -0
- package/dist/components/utility/Loader/Loader.cjs.map +1 -0
- package/dist/components/utility/Loader/Loader.js +142 -0
- package/dist/components/utility/Loader/Loader.js.map +1 -0
- package/dist/components/utility/Logo/Logo.cjs +2 -0
- package/dist/components/utility/Logo/Logo.cjs.map +1 -0
- package/dist/components/utility/Logo/Logo.js +61 -0
- package/dist/components/utility/Logo/Logo.js.map +1 -0
- package/dist/components/utility/Overlay/Overlay.cjs +7 -0
- package/dist/components/utility/Overlay/Overlay.cjs.map +1 -0
- package/dist/components/utility/Overlay/Overlay.js +59 -0
- package/dist/components/utility/Overlay/Overlay.js.map +1 -0
- package/dist/components/utility/Portal/Portal.cjs +2 -0
- package/dist/components/utility/Portal/Portal.cjs.map +1 -0
- package/dist/components/utility/Portal/Portal.js +18 -0
- package/dist/components/utility/Portal/Portal.js.map +1 -0
- package/dist/components/utility/ScreenReaderOnly/ScreenReaderOnly.cjs +2 -0
- package/dist/components/utility/ScreenReaderOnly/ScreenReaderOnly.cjs.map +1 -0
- package/dist/components/utility/ScreenReaderOnly/ScreenReaderOnly.js +53 -0
- package/dist/components/utility/ScreenReaderOnly/ScreenReaderOnly.js.map +1 -0
- package/dist/components/utility/Skeleton/Skeleton.cjs +2 -0
- package/dist/components/utility/Skeleton/Skeleton.cjs.map +1 -0
- package/dist/components/utility/Skeleton/Skeleton.js +91 -0
- package/dist/components/utility/Skeleton/Skeleton.js.map +1 -0
- package/dist/components/utility.cjs +2 -0
- package/dist/components/utility.cjs.map +1 -0
- package/dist/components/utility.d.ts +2 -0
- package/dist/components/utility.js +29 -0
- package/dist/components/utility.js.map +1 -0
- package/dist/data.d.ts +198 -0
- package/dist/design-system/primitives/focus.cjs +2 -0
- package/dist/design-system/primitives/focus.cjs.map +1 -0
- package/dist/design-system/primitives/focus.js +42 -0
- package/dist/design-system/primitives/focus.js.map +1 -0
- package/dist/design-system/primitives/layout.cjs +2 -0
- package/dist/design-system/primitives/layout.cjs.map +1 -0
- package/dist/design-system/primitives/layout.js +79 -0
- package/dist/design-system/primitives/layout.js.map +1 -0
- package/dist/design-system/primitives/opacity.cjs +2 -0
- package/dist/design-system/primitives/opacity.cjs.map +1 -0
- package/dist/design-system/primitives/opacity.js +72 -0
- package/dist/design-system/primitives/opacity.js.map +1 -0
- package/dist/design-system/primitives/sizing.cjs +2 -0
- package/dist/design-system/primitives/sizing.cjs.map +1 -0
- package/dist/design-system/primitives/sizing.js +118 -0
- package/dist/design-system/primitives/sizing.js.map +1 -0
- package/dist/design-system/primitives/transitions.cjs +52 -0
- package/dist/design-system/primitives/transitions.cjs.map +1 -0
- package/dist/design-system/primitives/transitions.js +121 -0
- package/dist/design-system/primitives/transitions.js.map +1 -0
- package/dist/design-system/primitives/typography.cjs +2 -0
- package/dist/design-system/primitives/typography.cjs.map +1 -0
- package/dist/design-system/primitives/typography.js +146 -0
- package/dist/design-system/primitives/typography.js.map +1 -0
- package/dist/design-system/themes/ThemeProvider.cjs +2 -0
- package/dist/design-system/themes/ThemeProvider.cjs.map +1 -0
- package/dist/design-system/themes/ThemeProvider.js +78 -0
- package/dist/design-system/themes/ThemeProvider.js.map +1 -0
- package/dist/design-system/themes/cssVariables.cjs +2 -0
- package/dist/design-system/themes/cssVariables.cjs.map +1 -0
- package/dist/design-system/themes/cssVariables.js +57 -0
- package/dist/design-system/themes/cssVariables.js.map +1 -0
- package/dist/design-system/themes/darkTheme.cjs +2 -0
- package/dist/design-system/themes/darkTheme.cjs.map +1 -0
- package/dist/design-system/themes/darkTheme.js +76 -0
- package/dist/design-system/themes/darkTheme.js.map +1 -0
- package/dist/design-system/themes/lightTheme.cjs +2 -0
- package/dist/design-system/themes/lightTheme.cjs.map +1 -0
- package/dist/design-system/themes/lightTheme.js +76 -0
- package/dist/design-system/themes/lightTheme.js.map +1 -0
- package/dist/design-system/tokens/borders.cjs +2 -0
- package/dist/design-system/tokens/borders.cjs.map +1 -0
- package/dist/design-system/tokens/borders.js +78 -0
- package/dist/design-system/tokens/borders.js.map +1 -0
- package/dist/design-system/tokens/breakpoints.cjs +2 -0
- package/dist/design-system/tokens/breakpoints.cjs.map +1 -0
- package/dist/design-system/tokens/breakpoints.js +58 -0
- package/dist/design-system/tokens/breakpoints.js.map +1 -0
- package/dist/design-system/tokens/colors.cjs +2 -0
- package/dist/design-system/tokens/colors.cjs.map +1 -0
- package/dist/{colors-B_8a3coi.js → design-system/tokens/colors.js} +16 -16
- package/dist/design-system/tokens/colors.js.map +1 -0
- package/dist/design-system/tokens/motion.cjs +2 -0
- package/dist/design-system/tokens/motion.cjs.map +1 -0
- package/dist/design-system/tokens/motion.js +133 -0
- package/dist/design-system/tokens/motion.js.map +1 -0
- package/dist/design-system/tokens/shadows.cjs +2 -0
- package/dist/design-system/tokens/shadows.cjs.map +1 -0
- package/dist/design-system/tokens/shadows.js +46 -0
- package/dist/design-system/tokens/shadows.js.map +1 -0
- package/dist/design-system/tokens/spacing.cjs +2 -0
- package/dist/design-system/tokens/spacing.cjs.map +1 -0
- package/dist/design-system/tokens/spacing.js +96 -0
- package/dist/design-system/tokens/spacing.js.map +1 -0
- package/dist/design-system/tokens/typography.cjs +2 -0
- package/dist/design-system/tokens/typography.cjs.map +1 -0
- package/dist/design-system/tokens/typography.js +199 -0
- package/dist/design-system/tokens/typography.js.map +1 -0
- package/dist/design-system/tokens/zIndex.cjs +2 -0
- package/dist/design-system/tokens/zIndex.cjs.map +1 -0
- package/dist/design-system/tokens/zIndex.js +32 -0
- package/dist/design-system/tokens/zIndex.js.map +1 -0
- package/dist/feedback.d.ts +244 -0
- package/dist/form.d.ts +415 -0
- package/dist/hooks/useClickOutside.cjs +2 -0
- package/dist/hooks/useClickOutside.cjs.map +1 -0
- package/dist/hooks/useClickOutside.js +18 -0
- package/dist/hooks/useClickOutside.js.map +1 -0
- package/dist/hooks/useControllable.cjs +2 -0
- package/dist/hooks/useControllable.cjs.map +1 -0
- package/dist/hooks/useControllable.js +25 -0
- package/dist/hooks/useControllable.js.map +1 -0
- package/dist/hooks/useDisclosure.cjs +2 -0
- package/dist/hooks/useDisclosure.cjs.map +1 -0
- package/dist/hooks/useDisclosure.js +22 -0
- package/dist/hooks/useDisclosure.js.map +1 -0
- package/dist/hooks/useFocusTrap.cjs +2 -0
- package/dist/hooks/useFocusTrap.cjs.map +1 -0
- package/dist/hooks/useFocusTrap.js +56 -0
- package/dist/hooks/useFocusTrap.js.map +1 -0
- package/dist/hooks/useId.cjs +2 -0
- package/dist/hooks/useId.cjs.map +1 -0
- package/dist/hooks/useId.js +22 -0
- package/dist/hooks/useId.js.map +1 -0
- package/dist/hooks/useKeyboardNavigation.cjs +2 -0
- package/dist/hooks/useKeyboardNavigation.cjs.map +1 -0
- package/dist/hooks/useKeyboardNavigation.js +82 -0
- package/dist/hooks/useKeyboardNavigation.js.map +1 -0
- package/dist/hooks/useMediaQuery.cjs +2 -0
- package/dist/hooks/useMediaQuery.cjs.map +1 -0
- package/dist/hooks/useMediaQuery.js +33 -0
- package/dist/hooks/useMediaQuery.js.map +1 -0
- package/dist/hooks.cjs +2 -0
- package/dist/hooks.cjs.map +1 -0
- package/dist/hooks.d.ts +146 -0
- package/dist/hooks.js +23 -0
- package/dist/hooks.js.map +1 -0
- package/dist/index.cjs +1 -148
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +4311 -141
- package/dist/index.js +291 -8305
- package/dist/index.js.map +1 -1
- package/dist/layout.d.ts +543 -0
- package/dist/navigation.d.ts +290 -0
- package/dist/styles.css +1 -1
- package/dist/themes.cjs +1 -1
- package/dist/themes.d.ts +214 -2
- package/dist/themes.js +11 -8
- package/dist/themes.js.map +1 -1
- package/dist/tokens.cjs +1 -1
- package/dist/tokens.cjs.map +1 -1
- package/dist/tokens.d.ts +976 -2
- package/dist/tokens.js +38 -624
- package/dist/tokens.js.map +1 -1
- package/dist/utility.d.ts +259 -0
- package/dist/utils/lazyComponent.cjs +2 -0
- package/dist/utils/lazyComponent.cjs.map +1 -0
- package/dist/utils/lazyComponent.js +26 -0
- package/dist/utils/lazyComponent.js.map +1 -0
- package/dist/utils/styles.cjs +2 -0
- package/dist/utils/styles.cjs.map +1 -0
- package/dist/utils/styles.js +35 -0
- package/dist/utils/styles.js.map +1 -0
- package/package.json +37 -1
- package/dist/colors-B_8a3coi.js.map +0 -1
- package/dist/colors-Bp6ROxvx.cjs +0 -2
- package/dist/colors-Bp6ROxvx.cjs.map +0 -1
- package/dist/components/data/InfoItem/InfoItem.d.ts +0 -44
- package/dist/components/data/InfoItem/InfoItem.d.ts.map +0 -1
- package/dist/components/data/InfoItem/index.d.ts +0 -2
- package/dist/components/data/InfoItem/index.d.ts.map +0 -1
- package/dist/components/data/List/List.d.ts +0 -44
- package/dist/components/data/List/List.d.ts.map +0 -1
- package/dist/components/data/List/index.d.ts +0 -3
- package/dist/components/data/List/index.d.ts.map +0 -1
- package/dist/components/data/Table/Table.d.ts +0 -74
- package/dist/components/data/Table/Table.d.ts.map +0 -1
- package/dist/components/data/Table/index.d.ts +0 -3
- package/dist/components/data/Table/index.d.ts.map +0 -1
- package/dist/components/data/index.d.ts +0 -7
- package/dist/components/data/index.d.ts.map +0 -1
- package/dist/components/feedback/Alert/Alert.d.ts +0 -29
- package/dist/components/feedback/Alert/Alert.d.ts.map +0 -1
- package/dist/components/feedback/Alert/index.d.ts +0 -3
- package/dist/components/feedback/Alert/index.d.ts.map +0 -1
- package/dist/components/feedback/Drawer/Drawer.d.ts +0 -29
- package/dist/components/feedback/Drawer/Drawer.d.ts.map +0 -1
- package/dist/components/feedback/Drawer/index.d.ts +0 -3
- package/dist/components/feedback/Drawer/index.d.ts.map +0 -1
- package/dist/components/feedback/Modal/Modal.d.ts +0 -28
- package/dist/components/feedback/Modal/Modal.d.ts.map +0 -1
- package/dist/components/feedback/Modal/index.d.ts +0 -3
- package/dist/components/feedback/Modal/index.d.ts.map +0 -1
- package/dist/components/feedback/Popover/Popover.d.ts +0 -35
- package/dist/components/feedback/Popover/Popover.d.ts.map +0 -1
- package/dist/components/feedback/Popover/index.d.ts +0 -3
- package/dist/components/feedback/Popover/index.d.ts.map +0 -1
- package/dist/components/feedback/Progress/Progress.d.ts +0 -30
- package/dist/components/feedback/Progress/Progress.d.ts.map +0 -1
- package/dist/components/feedback/Progress/index.d.ts +0 -3
- package/dist/components/feedback/Progress/index.d.ts.map +0 -1
- package/dist/components/feedback/Toast/Toast.d.ts +0 -47
- package/dist/components/feedback/Toast/Toast.d.ts.map +0 -1
- package/dist/components/feedback/Toast/index.d.ts +0 -3
- package/dist/components/feedback/Toast/index.d.ts.map +0 -1
- package/dist/components/feedback/Tooltip/Tooltip.d.ts +0 -20
- package/dist/components/feedback/Tooltip/Tooltip.d.ts.map +0 -1
- package/dist/components/feedback/Tooltip/index.d.ts +0 -3
- package/dist/components/feedback/Tooltip/index.d.ts.map +0 -1
- package/dist/components/feedback/index.d.ts +0 -13
- package/dist/components/feedback/index.d.ts.map +0 -1
- package/dist/components/form/Checkbox/Checkbox.d.ts +0 -20
- package/dist/components/form/Checkbox/Checkbox.d.ts.map +0 -1
- package/dist/components/form/Checkbox/index.d.ts +0 -3
- package/dist/components/form/Checkbox/index.d.ts.map +0 -1
- package/dist/components/form/DateInput/DateInput.d.ts +0 -28
- package/dist/components/form/DateInput/DateInput.d.ts.map +0 -1
- package/dist/components/form/DateInput/index.d.ts +0 -3
- package/dist/components/form/DateInput/index.d.ts.map +0 -1
- package/dist/components/form/DropZone/DropZone.d.ts +0 -27
- package/dist/components/form/DropZone/DropZone.d.ts.map +0 -1
- package/dist/components/form/DropZone/index.d.ts +0 -2
- package/dist/components/form/DropZone/index.d.ts.map +0 -1
- package/dist/components/form/FieldError/FieldError.d.ts +0 -18
- package/dist/components/form/FieldError/FieldError.d.ts.map +0 -1
- package/dist/components/form/FieldError/index.d.ts +0 -3
- package/dist/components/form/FieldError/index.d.ts.map +0 -1
- package/dist/components/form/FileInput/FileInput.d.ts +0 -33
- package/dist/components/form/FileInput/FileInput.d.ts.map +0 -1
- package/dist/components/form/FileInput/index.d.ts +0 -3
- package/dist/components/form/FileInput/index.d.ts.map +0 -1
- package/dist/components/form/Form/Form.d.ts +0 -16
- package/dist/components/form/Form/Form.d.ts.map +0 -1
- package/dist/components/form/Form/index.d.ts +0 -2
- package/dist/components/form/Form/index.d.ts.map +0 -1
- package/dist/components/form/FormCard/FormCard.d.ts +0 -20
- package/dist/components/form/FormCard/FormCard.d.ts.map +0 -1
- package/dist/components/form/FormCard/index.d.ts +0 -2
- package/dist/components/form/FormCard/index.d.ts.map +0 -1
- package/dist/components/form/FormField/FormField.d.ts +0 -36
- package/dist/components/form/FormField/FormField.d.ts.map +0 -1
- package/dist/components/form/FormField/index.d.ts +0 -3
- package/dist/components/form/FormField/index.d.ts.map +0 -1
- package/dist/components/form/FormGroup/FormGroup.d.ts +0 -31
- package/dist/components/form/FormGroup/FormGroup.d.ts.map +0 -1
- package/dist/components/form/FormGroup/index.d.ts +0 -2
- package/dist/components/form/FormGroup/index.d.ts.map +0 -1
- package/dist/components/form/FormLabel/FormLabel.d.ts +0 -20
- package/dist/components/form/FormLabel/FormLabel.d.ts.map +0 -1
- package/dist/components/form/FormLabel/index.d.ts +0 -2
- package/dist/components/form/FormLabel/index.d.ts.map +0 -1
- package/dist/components/form/Input/Input.d.ts +0 -21
- package/dist/components/form/Input/Input.d.ts.map +0 -1
- package/dist/components/form/Input/index.d.ts +0 -3
- package/dist/components/form/Input/index.d.ts.map +0 -1
- package/dist/components/form/Radio/Radio.d.ts +0 -46
- package/dist/components/form/Radio/Radio.d.ts.map +0 -1
- package/dist/components/form/Radio/index.d.ts +0 -3
- package/dist/components/form/Radio/index.d.ts.map +0 -1
- package/dist/components/form/Select/Select.d.ts +0 -21
- package/dist/components/form/Select/Select.d.ts.map +0 -1
- package/dist/components/form/Select/index.d.ts +0 -3
- package/dist/components/form/Select/index.d.ts.map +0 -1
- package/dist/components/form/Slider/Slider.d.ts +0 -32
- package/dist/components/form/Slider/Slider.d.ts.map +0 -1
- package/dist/components/form/Slider/index.d.ts +0 -3
- package/dist/components/form/Slider/index.d.ts.map +0 -1
- package/dist/components/form/Switch/Switch.d.ts +0 -16
- package/dist/components/form/Switch/Switch.d.ts.map +0 -1
- package/dist/components/form/Switch/index.d.ts +0 -3
- package/dist/components/form/Switch/index.d.ts.map +0 -1
- package/dist/components/form/TextField/TextField.d.ts +0 -16
- package/dist/components/form/TextField/TextField.d.ts.map +0 -1
- package/dist/components/form/TextField/index.d.ts +0 -3
- package/dist/components/form/TextField/index.d.ts.map +0 -1
- package/dist/components/form/Textarea/Textarea.d.ts +0 -27
- package/dist/components/form/Textarea/Textarea.d.ts.map +0 -1
- package/dist/components/form/Textarea/index.d.ts +0 -3
- package/dist/components/form/Textarea/index.d.ts.map +0 -1
- package/dist/components/form/index.d.ts +0 -21
- package/dist/components/form/index.d.ts.map +0 -1
- package/dist/components/index.d.ts +0 -12
- package/dist/components/index.d.ts.map +0 -1
- package/dist/components/layout/AspectRatio/AspectRatio.d.ts +0 -19
- package/dist/components/layout/AspectRatio/AspectRatio.d.ts.map +0 -1
- package/dist/components/layout/AspectRatio/index.d.ts +0 -2
- package/dist/components/layout/AspectRatio/index.d.ts.map +0 -1
- package/dist/components/layout/Box/Box.d.ts +0 -11
- package/dist/components/layout/Box/Box.d.ts.map +0 -1
- package/dist/components/layout/Box/Box.styles.d.ts +0 -4
- package/dist/components/layout/Box/Box.styles.d.ts.map +0 -1
- package/dist/components/layout/Box/Box.types.d.ts +0 -38
- package/dist/components/layout/Box/Box.types.d.ts.map +0 -1
- package/dist/components/layout/Box/index.d.ts +0 -3
- package/dist/components/layout/Box/index.d.ts.map +0 -1
- package/dist/components/layout/Card/Card.d.ts +0 -40
- package/dist/components/layout/Card/Card.d.ts.map +0 -1
- package/dist/components/layout/Card/index.d.ts +0 -3
- package/dist/components/layout/Card/index.d.ts.map +0 -1
- package/dist/components/layout/Container/Container.d.ts +0 -31
- package/dist/components/layout/Container/Container.d.ts.map +0 -1
- package/dist/components/layout/Container/index.d.ts +0 -3
- package/dist/components/layout/Container/index.d.ts.map +0 -1
- package/dist/components/layout/Flex/Flex.d.ts +0 -63
- package/dist/components/layout/Flex/Flex.d.ts.map +0 -1
- package/dist/components/layout/Flex/index.d.ts +0 -3
- package/dist/components/layout/Flex/index.d.ts.map +0 -1
- package/dist/components/layout/Grid/Grid.d.ts +0 -80
- package/dist/components/layout/Grid/Grid.d.ts.map +0 -1
- package/dist/components/layout/Grid/index.d.ts +0 -3
- package/dist/components/layout/Grid/index.d.ts.map +0 -1
- package/dist/components/layout/Section/Section.d.ts +0 -22
- package/dist/components/layout/Section/Section.d.ts.map +0 -1
- package/dist/components/layout/Section/index.d.ts +0 -3
- package/dist/components/layout/Section/index.d.ts.map +0 -1
- package/dist/components/layout/Semantic/Semantic.d.ts +0 -32
- package/dist/components/layout/Semantic/Semantic.d.ts.map +0 -1
- package/dist/components/layout/Semantic/index.d.ts +0 -3
- package/dist/components/layout/Semantic/index.d.ts.map +0 -1
- package/dist/components/layout/Spacer/Spacer.d.ts +0 -18
- package/dist/components/layout/Spacer/Spacer.d.ts.map +0 -1
- package/dist/components/layout/Spacer/index.d.ts +0 -3
- package/dist/components/layout/Spacer/index.d.ts.map +0 -1
- package/dist/components/layout/Stack/Stack.d.ts +0 -13
- package/dist/components/layout/Stack/Stack.d.ts.map +0 -1
- package/dist/components/layout/Stack/Stack.types.d.ts +0 -33
- package/dist/components/layout/Stack/Stack.types.d.ts.map +0 -1
- package/dist/components/layout/Stack/index.d.ts +0 -3
- package/dist/components/layout/Stack/index.d.ts.map +0 -1
- package/dist/components/layout/index.d.ts +0 -16
- package/dist/components/layout/index.d.ts.map +0 -1
- package/dist/components/media/Image/Image.d.ts +0 -33
- package/dist/components/media/Image/Image.d.ts.map +0 -1
- package/dist/components/media/Image/index.d.ts +0 -2
- package/dist/components/media/Image/index.d.ts.map +0 -1
- package/dist/components/media/ImageThumbnail/ImageThumbnail.d.ts +0 -27
- package/dist/components/media/ImageThumbnail/ImageThumbnail.d.ts.map +0 -1
- package/dist/components/media/ImageThumbnail/index.d.ts +0 -2
- package/dist/components/media/ImageThumbnail/index.d.ts.map +0 -1
- package/dist/components/media/Video/Video.d.ts +0 -67
- package/dist/components/media/Video/Video.d.ts.map +0 -1
- package/dist/components/media/Video/index.d.ts +0 -2
- package/dist/components/media/Video/index.d.ts.map +0 -1
- package/dist/components/media/index.d.ts +0 -8
- package/dist/components/media/index.d.ts.map +0 -1
- package/dist/components/navigation/Accordion/Accordion.d.ts +0 -41
- package/dist/components/navigation/Accordion/Accordion.d.ts.map +0 -1
- package/dist/components/navigation/Accordion/index.d.ts +0 -3
- package/dist/components/navigation/Accordion/index.d.ts.map +0 -1
- package/dist/components/navigation/Breadcrumb/Breadcrumb.d.ts +0 -31
- package/dist/components/navigation/Breadcrumb/Breadcrumb.d.ts.map +0 -1
- package/dist/components/navigation/Breadcrumb/index.d.ts +0 -3
- package/dist/components/navigation/Breadcrumb/index.d.ts.map +0 -1
- package/dist/components/navigation/Dropdown/Dropdown.d.ts +0 -47
- package/dist/components/navigation/Dropdown/Dropdown.d.ts.map +0 -1
- package/dist/components/navigation/Dropdown/index.d.ts +0 -3
- package/dist/components/navigation/Dropdown/index.d.ts.map +0 -1
- package/dist/components/navigation/Menu/Menu.d.ts +0 -45
- package/dist/components/navigation/Menu/Menu.d.ts.map +0 -1
- package/dist/components/navigation/Menu/index.d.ts +0 -3
- package/dist/components/navigation/Menu/index.d.ts.map +0 -1
- package/dist/components/navigation/Pagination/Pagination.d.ts +0 -29
- package/dist/components/navigation/Pagination/Pagination.d.ts.map +0 -1
- package/dist/components/navigation/Pagination/index.d.ts +0 -3
- package/dist/components/navigation/Pagination/index.d.ts.map +0 -1
- package/dist/components/navigation/Tabs/Tabs.d.ts +0 -52
- package/dist/components/navigation/Tabs/Tabs.d.ts.map +0 -1
- package/dist/components/navigation/Tabs/index.d.ts +0 -3
- package/dist/components/navigation/Tabs/index.d.ts.map +0 -1
- package/dist/components/navigation/index.d.ts +0 -10
- package/dist/components/navigation/index.d.ts.map +0 -1
- package/dist/components/primitives/Button/Button.d.ts +0 -12
- package/dist/components/primitives/Button/Button.d.ts.map +0 -1
- package/dist/components/primitives/Button/Button.styles.d.ts +0 -29
- package/dist/components/primitives/Button/Button.styles.d.ts.map +0 -1
- package/dist/components/primitives/Button/Button.types.d.ts +0 -37
- package/dist/components/primitives/Button/Button.types.d.ts.map +0 -1
- package/dist/components/primitives/Button/index.d.ts +0 -3
- package/dist/components/primitives/Button/index.d.ts.map +0 -1
- package/dist/components/primitives/Icon/Icon.d.ts +0 -88
- package/dist/components/primitives/Icon/Icon.d.ts.map +0 -1
- package/dist/components/primitives/Icon/index.d.ts +0 -3
- package/dist/components/primitives/Icon/index.d.ts.map +0 -1
- package/dist/components/primitives/index.d.ts +0 -8
- package/dist/components/primitives/index.d.ts.map +0 -1
- package/dist/components/typography/Heading/Heading.d.ts +0 -38
- package/dist/components/typography/Heading/Heading.d.ts.map +0 -1
- package/dist/components/typography/Heading/index.d.ts +0 -3
- package/dist/components/typography/Heading/index.d.ts.map +0 -1
- package/dist/components/typography/Text/Text.d.ts +0 -43
- package/dist/components/typography/Text/Text.d.ts.map +0 -1
- package/dist/components/typography/Text/index.d.ts +0 -3
- package/dist/components/typography/Text/index.d.ts.map +0 -1
- package/dist/components/typography/index.d.ts +0 -8
- package/dist/components/typography/index.d.ts.map +0 -1
- package/dist/components/utility/Avatar/Avatar.d.ts +0 -22
- package/dist/components/utility/Avatar/Avatar.d.ts.map +0 -1
- package/dist/components/utility/Avatar/index.d.ts +0 -3
- package/dist/components/utility/Avatar/index.d.ts.map +0 -1
- package/dist/components/utility/Badge/Badge.d.ts +0 -20
- package/dist/components/utility/Badge/Badge.d.ts.map +0 -1
- package/dist/components/utility/Badge/index.d.ts +0 -3
- package/dist/components/utility/Badge/index.d.ts.map +0 -1
- package/dist/components/utility/Divider/Divider.d.ts +0 -19
- package/dist/components/utility/Divider/Divider.d.ts.map +0 -1
- package/dist/components/utility/Divider/index.d.ts +0 -3
- package/dist/components/utility/Divider/index.d.ts.map +0 -1
- package/dist/components/utility/EmptyState/EmptyState.d.ts +0 -26
- package/dist/components/utility/EmptyState/EmptyState.d.ts.map +0 -1
- package/dist/components/utility/EmptyState/index.d.ts +0 -3
- package/dist/components/utility/EmptyState/index.d.ts.map +0 -1
- package/dist/components/utility/FocusTrap/FocusTrap.d.ts +0 -19
- package/dist/components/utility/FocusTrap/FocusTrap.d.ts.map +0 -1
- package/dist/components/utility/FocusTrap/index.d.ts +0 -3
- package/dist/components/utility/FocusTrap/index.d.ts.map +0 -1
- package/dist/components/utility/Loader/Loader.d.ts +0 -21
- package/dist/components/utility/Loader/Loader.d.ts.map +0 -1
- package/dist/components/utility/Loader/index.d.ts +0 -3
- package/dist/components/utility/Loader/index.d.ts.map +0 -1
- package/dist/components/utility/Logo/Logo.d.ts +0 -14
- package/dist/components/utility/Logo/Logo.d.ts.map +0 -1
- package/dist/components/utility/Logo/index.d.ts +0 -3
- package/dist/components/utility/Logo/index.d.ts.map +0 -1
- package/dist/components/utility/Overlay/Overlay.d.ts +0 -25
- package/dist/components/utility/Overlay/Overlay.d.ts.map +0 -1
- package/dist/components/utility/Overlay/index.d.ts +0 -3
- package/dist/components/utility/Overlay/index.d.ts.map +0 -1
- package/dist/components/utility/Portal/Portal.d.ts +0 -14
- package/dist/components/utility/Portal/Portal.d.ts.map +0 -1
- package/dist/components/utility/Portal/index.d.ts +0 -3
- package/dist/components/utility/Portal/index.d.ts.map +0 -1
- package/dist/components/utility/ScreenReaderOnly/ScreenReaderOnly.d.ts +0 -17
- package/dist/components/utility/ScreenReaderOnly/ScreenReaderOnly.d.ts.map +0 -1
- package/dist/components/utility/ScreenReaderOnly/index.d.ts +0 -2
- package/dist/components/utility/ScreenReaderOnly/index.d.ts.map +0 -1
- package/dist/components/utility/Skeleton/Skeleton.d.ts +0 -35
- package/dist/components/utility/Skeleton/Skeleton.d.ts.map +0 -1
- package/dist/components/utility/Skeleton/index.d.ts +0 -3
- package/dist/components/utility/Skeleton/index.d.ts.map +0 -1
- package/dist/components/utility/index.d.ts +0 -17
- package/dist/components/utility/index.d.ts.map +0 -1
- package/dist/cssVariables-BguyVeCi.cjs +0 -2
- package/dist/cssVariables-BguyVeCi.cjs.map +0 -1
- package/dist/cssVariables-D9uw0uKO.js +0 -273
- package/dist/cssVariables-D9uw0uKO.js.map +0 -1
- package/dist/design-system/index.d.ts +0 -16
- package/dist/design-system/index.d.ts.map +0 -1
- package/dist/design-system/primitives/focus.d.ts +0 -67
- package/dist/design-system/primitives/focus.d.ts.map +0 -1
- package/dist/design-system/primitives/index.d.ts +0 -15
- package/dist/design-system/primitives/index.d.ts.map +0 -1
- package/dist/design-system/primitives/layout.d.ts +0 -114
- package/dist/design-system/primitives/layout.d.ts.map +0 -1
- package/dist/design-system/primitives/opacity.d.ts +0 -88
- package/dist/design-system/primitives/opacity.d.ts.map +0 -1
- package/dist/design-system/primitives/sizing.d.ts +0 -155
- package/dist/design-system/primitives/sizing.d.ts.map +0 -1
- package/dist/design-system/primitives/transitions.d.ts +0 -92
- package/dist/design-system/primitives/transitions.d.ts.map +0 -1
- package/dist/design-system/primitives/typography.d.ts +0 -164
- package/dist/design-system/primitives/typography.d.ts.map +0 -1
- package/dist/design-system/themes/ThemeProvider.d.ts +0 -18
- package/dist/design-system/themes/ThemeProvider.d.ts.map +0 -1
- package/dist/design-system/themes/cssVariables.d.ts +0 -52
- package/dist/design-system/themes/cssVariables.d.ts.map +0 -1
- package/dist/design-system/themes/darkTheme.d.ts +0 -3
- package/dist/design-system/themes/darkTheme.d.ts.map +0 -1
- package/dist/design-system/themes/index.d.ts +0 -11
- package/dist/design-system/themes/index.d.ts.map +0 -1
- package/dist/design-system/themes/lightTheme.d.ts +0 -3
- package/dist/design-system/themes/lightTheme.d.ts.map +0 -1
- package/dist/design-system/themes/types.d.ts +0 -134
- package/dist/design-system/themes/types.d.ts.map +0 -1
- package/dist/design-system/tokens/borders.d.ts +0 -86
- package/dist/design-system/tokens/borders.d.ts.map +0 -1
- package/dist/design-system/tokens/breakpoints.d.ts +0 -66
- package/dist/design-system/tokens/breakpoints.d.ts.map +0 -1
- package/dist/design-system/tokens/colors.d.ts +0 -206
- package/dist/design-system/tokens/colors.d.ts.map +0 -1
- package/dist/design-system/tokens/index.d.ts +0 -23
- package/dist/design-system/tokens/index.d.ts.map +0 -1
- package/dist/design-system/tokens/motion.d.ts +0 -204
- package/dist/design-system/tokens/motion.d.ts.map +0 -1
- package/dist/design-system/tokens/shadows.d.ts +0 -55
- package/dist/design-system/tokens/shadows.d.ts.map +0 -1
- package/dist/design-system/tokens/spacing.d.ts +0 -104
- package/dist/design-system/tokens/spacing.d.ts.map +0 -1
- package/dist/design-system/tokens/typography.d.ts +0 -214
- package/dist/design-system/tokens/typography.d.ts.map +0 -1
- package/dist/design-system/tokens/zIndex.d.ts +0 -36
- package/dist/design-system/tokens/zIndex.d.ts.map +0 -1
- package/dist/hooks/index.d.ts +0 -13
- package/dist/hooks/index.d.ts.map +0 -1
- package/dist/hooks/useClickOutside.d.ts +0 -9
- package/dist/hooks/useClickOutside.d.ts.map +0 -1
- package/dist/hooks/useControllable.d.ts +0 -24
- package/dist/hooks/useControllable.d.ts.map +0 -1
- package/dist/hooks/useDisclosure.d.ts +0 -19
- package/dist/hooks/useDisclosure.d.ts.map +0 -1
- package/dist/hooks/useFocusTrap.d.ts +0 -21
- package/dist/hooks/useFocusTrap.d.ts.map +0 -1
- package/dist/hooks/useId.d.ts +0 -9
- package/dist/hooks/useId.d.ts.map +0 -1
- package/dist/hooks/useKeyboardNavigation.d.ts +0 -35
- package/dist/hooks/useKeyboardNavigation.d.ts.map +0 -1
- package/dist/hooks/useMediaQuery.d.ts +0 -13
- package/dist/hooks/useMediaQuery.d.ts.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/types/common.d.ts +0 -90
- package/dist/types/common.d.ts.map +0 -1
- package/dist/types/index.d.ts +0 -7
- package/dist/types/index.d.ts.map +0 -1
- package/dist/utils/index.d.ts +0 -7
- package/dist/utils/index.d.ts.map +0 -1
- package/dist/utils/styles.d.ts +0 -17
- package/dist/utils/styles.d.ts.map +0 -1
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { jsxs as s, jsx as o } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as I, useId as S } from "react";
|
|
3
|
+
import { cx as w } from "../../../utils/styles.js";
|
|
4
|
+
import { Input as B } from "../Input/Input.js";
|
|
5
|
+
const F = I(function({
|
|
6
|
+
label: d,
|
|
7
|
+
helperText: t,
|
|
8
|
+
errorMessage: i,
|
|
9
|
+
isRequired: l,
|
|
10
|
+
hideLabel: f,
|
|
11
|
+
isInvalid: p,
|
|
12
|
+
id: y,
|
|
13
|
+
className: m,
|
|
14
|
+
testId: h,
|
|
15
|
+
...b
|
|
16
|
+
}, u) {
|
|
17
|
+
const g = S(), e = y ?? g, n = `${e}-helper`, a = `${e}-error`, r = !!i || p, k = [r && a, t && n].filter(Boolean).join(" "), v = {
|
|
18
|
+
display: "block",
|
|
19
|
+
marginBottom: 6,
|
|
20
|
+
fontSize: 13,
|
|
21
|
+
fontWeight: 500,
|
|
22
|
+
color: "var(--brycks-foreground-default)",
|
|
23
|
+
...f && {
|
|
24
|
+
position: "absolute",
|
|
25
|
+
width: 1,
|
|
26
|
+
height: 1,
|
|
27
|
+
padding: 0,
|
|
28
|
+
margin: -1,
|
|
29
|
+
overflow: "hidden",
|
|
30
|
+
clip: "rect(0, 0, 0, 0)",
|
|
31
|
+
whiteSpace: "nowrap",
|
|
32
|
+
border: 0
|
|
33
|
+
}
|
|
34
|
+
}, c = {
|
|
35
|
+
display: "block",
|
|
36
|
+
marginTop: 6,
|
|
37
|
+
fontSize: 12,
|
|
38
|
+
lineHeight: 1.5,
|
|
39
|
+
color: "var(--brycks-foreground-muted)"
|
|
40
|
+
}, x = {
|
|
41
|
+
...c,
|
|
42
|
+
color: "var(--brycks-error-default)"
|
|
43
|
+
};
|
|
44
|
+
return /* @__PURE__ */ s(
|
|
45
|
+
"div",
|
|
46
|
+
{
|
|
47
|
+
className: w(
|
|
48
|
+
"brycks-text-field",
|
|
49
|
+
r && "brycks-text-field--error",
|
|
50
|
+
m
|
|
51
|
+
),
|
|
52
|
+
"data-testid": h,
|
|
53
|
+
children: [
|
|
54
|
+
d && /* @__PURE__ */ s("label", { htmlFor: e, style: v, children: [
|
|
55
|
+
d,
|
|
56
|
+
l && /* @__PURE__ */ o(
|
|
57
|
+
"span",
|
|
58
|
+
{
|
|
59
|
+
"aria-hidden": "true",
|
|
60
|
+
style: {
|
|
61
|
+
color: "var(--brycks-error-default)",
|
|
62
|
+
marginLeft: 2
|
|
63
|
+
},
|
|
64
|
+
children: "*"
|
|
65
|
+
}
|
|
66
|
+
)
|
|
67
|
+
] }),
|
|
68
|
+
/* @__PURE__ */ o(
|
|
69
|
+
B,
|
|
70
|
+
{
|
|
71
|
+
ref: u,
|
|
72
|
+
id: e,
|
|
73
|
+
isInvalid: r,
|
|
74
|
+
"aria-describedby": k || void 0,
|
|
75
|
+
"aria-required": l,
|
|
76
|
+
...b
|
|
77
|
+
}
|
|
78
|
+
),
|
|
79
|
+
r && i && /* @__PURE__ */ o("span", { id: a, role: "alert", style: x, children: i }),
|
|
80
|
+
!r && t && /* @__PURE__ */ o("span", { id: n, style: c, children: t })
|
|
81
|
+
]
|
|
82
|
+
}
|
|
83
|
+
);
|
|
84
|
+
});
|
|
85
|
+
F.displayName = "TextField";
|
|
86
|
+
export {
|
|
87
|
+
F as TextField
|
|
88
|
+
};
|
|
89
|
+
//# sourceMappingURL=TextField.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TextField.js","sources":["../../../../src/components/form/TextField/TextField.tsx"],"sourcesContent":["/**\r\n * TextField Component\r\n *\r\n * Complete text input field with label, helper text, and error handling.\r\n * Combines Input with proper accessibility and form structure.\r\n */\r\n\r\nimport { forwardRef, useId, type ReactNode } from 'react'\r\nimport { Input, type InputProps } from '../Input'\r\nimport { cx } from '../../../utils/styles'\r\n\r\nexport interface TextFieldProps extends InputProps {\r\n /** Field label */\r\n label?: ReactNode\r\n /** Helper text below the input */\r\n helperText?: ReactNode\r\n /** Error message (also sets isInvalid) */\r\n errorMessage?: ReactNode\r\n /** Whether the field is required */\r\n isRequired?: boolean\r\n /** Whether to hide the label visually (still accessible) */\r\n hideLabel?: boolean\r\n}\r\n\r\nexport const TextField = forwardRef<HTMLInputElement, TextFieldProps>(function TextField(\r\n {\r\n label,\r\n helperText,\r\n errorMessage,\r\n isRequired,\r\n hideLabel,\r\n isInvalid,\r\n id,\r\n className,\r\n testId,\r\n ...inputProps\r\n },\r\n ref\r\n) {\r\n const generatedId = useId()\r\n const fieldId = id ?? generatedId\r\n const helperId = `${fieldId}-helper`\r\n const errorId = `${fieldId}-error`\r\n\r\n const hasError = Boolean(errorMessage) || isInvalid\r\n const describedBy = [hasError && errorId, helperText && helperId].filter(Boolean).join(' ')\r\n\r\n const labelStyle: React.CSSProperties = {\r\n display: 'block',\r\n marginBottom: 6,\r\n fontSize: 13,\r\n fontWeight: 500,\r\n color: 'var(--brycks-foreground-default)',\r\n ...(hideLabel && {\r\n position: 'absolute',\r\n width: 1,\r\n height: 1,\r\n padding: 0,\r\n margin: -1,\r\n overflow: 'hidden',\r\n clip: 'rect(0, 0, 0, 0)',\r\n whiteSpace: 'nowrap',\r\n border: 0,\r\n }),\r\n }\r\n\r\n const helperStyle: React.CSSProperties = {\r\n display: 'block',\r\n marginTop: 6,\r\n fontSize: 12,\r\n lineHeight: 1.5,\r\n color: 'var(--brycks-foreground-muted)',\r\n }\r\n\r\n const errorStyle: React.CSSProperties = {\r\n ...helperStyle,\r\n color: 'var(--brycks-error-default)',\r\n }\r\n\r\n return (\r\n <div\r\n className={cx(\r\n 'brycks-text-field',\r\n hasError && 'brycks-text-field--error',\r\n className\r\n )}\r\n data-testid={testId}\r\n >\r\n {label && (\r\n <label htmlFor={fieldId} style={labelStyle}>\r\n {label}\r\n {isRequired && (\r\n <span\r\n aria-hidden=\"true\"\r\n style={{\r\n color: 'var(--brycks-error-default)',\r\n marginLeft: 2,\r\n }}\r\n >\r\n *\r\n </span>\r\n )}\r\n </label>\r\n )}\r\n\r\n <Input\r\n ref={ref}\r\n id={fieldId}\r\n isInvalid={hasError}\r\n aria-describedby={describedBy || undefined}\r\n aria-required={isRequired}\r\n {...inputProps}\r\n />\r\n\r\n {hasError && errorMessage && (\r\n <span id={errorId} role=\"alert\" style={errorStyle}>\r\n {errorMessage}\r\n </span>\r\n )}\r\n\r\n {!hasError && helperText && (\r\n <span id={helperId} style={helperStyle}>\r\n {helperText}\r\n </span>\r\n )}\r\n </div>\r\n )\r\n})\r\n\r\nTextField.displayName = 'TextField'\r\n"],"names":["TextField","forwardRef","label","helperText","errorMessage","isRequired","hideLabel","isInvalid","id","className","testId","inputProps","ref","generatedId","useId","fieldId","helperId","errorId","hasError","describedBy","labelStyle","helperStyle","errorStyle","jsxs","cx","jsx","Input"],"mappings":";;;;AAwBO,MAAMA,IAAYC,EAA6C,SACpE;AAAA,EACE,OAAAC;AAAA,EACA,YAAAC;AAAA,EACA,cAAAC;AAAA,EACA,YAAAC;AAAA,EACA,WAAAC;AAAA,EACA,WAAAC;AAAA,EACA,IAAAC;AAAA,EACA,WAAAC;AAAA,EACA,QAAAC;AAAA,EACA,GAAGC;AACL,GACAC,GACA;AACA,QAAMC,IAAcC,EAAA,GACdC,IAAUP,KAAMK,GAChBG,IAAW,GAAGD,CAAO,WACrBE,IAAU,GAAGF,CAAO,UAEpBG,IAAW,EAAQd,KAAiBG,GACpCY,IAAc,CAACD,KAAYD,GAASd,KAAca,CAAQ,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG,GAEpFI,IAAkC;AAAA,IACtC,SAAS;AAAA,IACT,cAAc;AAAA,IACd,UAAU;AAAA,IACV,YAAY;AAAA,IACZ,OAAO;AAAA,IACP,GAAId,KAAa;AAAA,MACf,UAAU;AAAA,MACV,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,SAAS;AAAA,MACT,QAAQ;AAAA,MACR,UAAU;AAAA,MACV,MAAM;AAAA,MACN,YAAY;AAAA,MACZ,QAAQ;AAAA,IAAA;AAAA,EACV,GAGIe,IAAmC;AAAA,IACvC,SAAS;AAAA,IACT,WAAW;AAAA,IACX,UAAU;AAAA,IACV,YAAY;AAAA,IACZ,OAAO;AAAA,EAAA,GAGHC,IAAkC;AAAA,IACtC,GAAGD;AAAA,IACH,OAAO;AAAA,EAAA;AAGT,SACE,gBAAAE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC;AAAA,QACT;AAAA,QACAN,KAAY;AAAA,QACZT;AAAA,MAAA;AAAA,MAEF,eAAaC;AAAA,MAEZ,UAAA;AAAA,QAAAR,KACC,gBAAAqB,EAAC,SAAA,EAAM,SAASR,GAAS,OAAOK,GAC7B,UAAA;AAAA,UAAAlB;AAAA,UACAG,KACC,gBAAAoB;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,eAAY;AAAA,cACZ,OAAO;AAAA,gBACL,OAAO;AAAA,gBACP,YAAY;AAAA,cAAA;AAAA,cAEf,UAAA;AAAA,YAAA;AAAA,UAAA;AAAA,QAED,GAEJ;AAAA,QAGF,gBAAAA;AAAA,UAACC;AAAA,UAAA;AAAA,YACC,KAAAd;AAAA,YACA,IAAIG;AAAA,YACJ,WAAWG;AAAA,YACX,oBAAkBC,KAAe;AAAA,YACjC,iBAAed;AAAA,YACd,GAAGM;AAAA,UAAA;AAAA,QAAA;AAAA,QAGLO,KAAYd,KACX,gBAAAqB,EAAC,QAAA,EAAK,IAAIR,GAAS,MAAK,SAAQ,OAAOK,GACpC,UAAAlB,EAAA,CACH;AAAA,QAGD,CAACc,KAAYf,KACZ,gBAAAsB,EAAC,UAAK,IAAIT,GAAU,OAAOK,GACxB,UAAAlB,EAAA,CACH;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAIR,CAAC;AAEDH,EAAU,cAAc;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("react/jsx-runtime"),r=require("react"),J=require("../../../utils/styles.cjs"),K={sm:{fontSize:13,padding:10,lineHeight:1.5},md:{fontSize:14,padding:12,lineHeight:1.5},lg:{fontSize:15,padding:14,lineHeight:1.5}},m=r.forwardRef(function({size:p="md",variant:i="outline",isInvalid:n,autoResize:a,minRows:H=3,maxRows:w=10,showCount:v,maxLength:o,className:z,style:C,testId:j,disabled:c,value:s,defaultValue:l,onChange:T,onFocus:F,onBlur:$,...R},q){const[h,y]=r.useState(!1),[b,x]=r.useState(0),E=r.useRef(null),d=q||E,t=K[p],k=t.fontSize*t.lineHeight,u=k*H+t.padding*2,g=k*w+t.padding*2,S=r.useCallback(()=>{const e=d.current;if(!e||!a)return;e.style.height="auto";const D=e.scrollHeight,G=Math.min(Math.max(D,u),g);e.style.height=`${G}px`},[a,u,g,d]);r.useEffect(()=>{S()},[s,S]),r.useEffect(()=>{const e=String(s??l??"");x(e.length)},[s,l]);const M=()=>{const e={width:"100%",minHeight:u,maxHeight:a?g:void 0,padding:t.padding,fontSize:t.fontSize,lineHeight:t.lineHeight,fontFamily:"var(--brycks-font-sans)",color:"var(--brycks-foreground-default)",backgroundColor:i==="filled"?"var(--brycks-background-muted)":"var(--brycks-background-app)",border:`1px solid ${n?"var(--brycks-error-default)":h?"var(--brycks-border-focus)":i==="filled"?"transparent":"var(--brycks-border-default)"}`,borderRadius:"var(--brycks-radius-default)",outline:"none",resize:a?"none":"vertical",transition:"all 200ms ease-out",boxShadow:h?n?"0 0 0 3px rgba(239, 68, 68, 0.15)":"0 0 0 3px rgba(85, 120, 244, 0.15)":"none"};return c&&(e.opacity=.5,e.cursor="not-allowed",e.resize="none"),e},N={position:"relative",width:"100%"},B={position:"absolute",bottom:8,right:12,fontSize:11,color:b>=(o??1/0)?"var(--brycks-error-default)":"var(--brycks-foreground-muted)",pointerEvents:"none",transition:"color 150ms ease-out"},P=e=>{x(e.target.value.length),T?.(e)},O=e=>{y(!0),F?.(e)},A=e=>{y(!1),$?.(e)};return f.jsxs("div",{className:J.cx("brycks-textarea-wrapper",`brycks-textarea-wrapper--${i}`,`brycks-textarea-wrapper--${p}`,n&&"brycks-textarea-wrapper--invalid",c&&"brycks-textarea-wrapper--disabled",z),style:{...N,...C},children:[f.jsx("textarea",{ref:d,className:"brycks-textarea",style:M(),disabled:c,"aria-invalid":n,"data-testid":j,value:s,defaultValue:l,maxLength:o,onChange:P,onFocus:O,onBlur:A,...R}),v&&f.jsxs("span",{style:B,children:[b,o?`/${o}`:""]})]})});m.displayName="Textarea";exports.Textarea=m;
|
|
2
|
+
//# sourceMappingURL=Textarea.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Textarea.cjs","sources":["../../../../src/components/form/Textarea/Textarea.tsx"],"sourcesContent":["/**\r\n * Textarea Component\r\n *\r\n * Multi-line text input with Apple-inspired styling.\r\n * Supports auto-resize and character counting.\r\n */\r\n\r\nimport {\r\n forwardRef,\r\n useState,\r\n useEffect,\r\n useRef,\r\n useCallback,\r\n type CSSProperties,\r\n type TextareaHTMLAttributes,\r\n} from 'react'\r\nimport { cx } from '../../../utils/styles'\r\n\r\nexport type TextareaSize = 'sm' | 'md' | 'lg'\r\nexport type TextareaVariant = 'outline' | 'filled'\r\n\r\nexport interface TextareaProps extends Omit<TextareaHTMLAttributes<HTMLTextAreaElement>, 'size'> {\r\n /** Textarea size */\r\n size?: TextareaSize\r\n /** Visual variant */\r\n variant?: TextareaVariant\r\n /** Error state */\r\n isInvalid?: boolean\r\n /** Auto resize based on content */\r\n autoResize?: boolean\r\n /** Minimum rows */\r\n minRows?: number\r\n /** Maximum rows */\r\n maxRows?: number\r\n /** Show character count */\r\n showCount?: boolean\r\n /** Max character length */\r\n maxLength?: number\r\n /** Custom class name */\r\n className?: string\r\n /** Test ID */\r\n testId?: string\r\n}\r\n\r\nconst sizeStyles: Record<TextareaSize, { fontSize: number; padding: number; lineHeight: number }> = {\r\n sm: { fontSize: 13, padding: 10, lineHeight: 1.5 },\r\n md: { fontSize: 14, padding: 12, lineHeight: 1.5 },\r\n lg: { fontSize: 15, padding: 14, lineHeight: 1.5 },\r\n}\r\n\r\nexport const Textarea = forwardRef<HTMLTextAreaElement, TextareaProps>(function Textarea(\r\n {\r\n size = 'md',\r\n variant = 'outline',\r\n isInvalid,\r\n autoResize,\r\n minRows = 3,\r\n maxRows = 10,\r\n showCount,\r\n maxLength,\r\n className,\r\n style,\r\n testId,\r\n disabled,\r\n value,\r\n defaultValue,\r\n onChange,\r\n onFocus,\r\n onBlur,\r\n ...props\r\n },\r\n ref\r\n) {\r\n const [isFocused, setIsFocused] = useState(false)\r\n const [charCount, setCharCount] = useState(0)\r\n const internalRef = useRef<HTMLTextAreaElement>(null)\r\n const textareaRef = (ref as React.RefObject<HTMLTextAreaElement>) || internalRef\r\n\r\n const sizeValue = sizeStyles[size]\r\n const lineHeightPx = sizeValue.fontSize * sizeValue.lineHeight\r\n const minHeight = lineHeightPx * minRows + sizeValue.padding * 2\r\n const maxHeight = lineHeightPx * maxRows + sizeValue.padding * 2\r\n\r\n const adjustHeight = useCallback(() => {\r\n const textarea = textareaRef.current\r\n if (!textarea || !autoResize) return\r\n\r\n textarea.style.height = 'auto'\r\n const scrollHeight = textarea.scrollHeight\r\n const newHeight = Math.min(Math.max(scrollHeight, minHeight), maxHeight)\r\n textarea.style.height = `${newHeight}px`\r\n }, [autoResize, minHeight, maxHeight, textareaRef])\r\n\r\n useEffect(() => {\r\n adjustHeight()\r\n }, [value, adjustHeight])\r\n\r\n useEffect(() => {\r\n const initialValue = String(value ?? defaultValue ?? '')\r\n setCharCount(initialValue.length)\r\n }, [value, defaultValue])\r\n\r\n const getTextareaStyle = (): CSSProperties => {\r\n const base: CSSProperties = {\r\n width: '100%',\r\n minHeight,\r\n maxHeight: autoResize ? maxHeight : undefined,\r\n padding: sizeValue.padding,\r\n fontSize: sizeValue.fontSize,\r\n lineHeight: sizeValue.lineHeight,\r\n fontFamily: 'var(--brycks-font-sans)',\r\n color: 'var(--brycks-foreground-default)',\r\n backgroundColor: variant === 'filled' ? 'var(--brycks-background-muted)' : 'var(--brycks-background-app)',\r\n border: `1px solid ${\r\n isInvalid\r\n ? 'var(--brycks-error-default)'\r\n : isFocused\r\n ? 'var(--brycks-border-focus)'\r\n : variant === 'filled'\r\n ? 'transparent'\r\n : 'var(--brycks-border-default)'\r\n }`,\r\n borderRadius: 'var(--brycks-radius-default)',\r\n outline: 'none',\r\n resize: autoResize ? 'none' : 'vertical',\r\n transition: 'all 200ms ease-out',\r\n boxShadow: isFocused\r\n ? isInvalid\r\n ? '0 0 0 3px rgba(239, 68, 68, 0.15)'\r\n : '0 0 0 3px rgba(85, 120, 244, 0.15)'\r\n : 'none',\r\n }\r\n\r\n if (disabled) {\r\n base.opacity = 0.5\r\n base.cursor = 'not-allowed'\r\n base.resize = 'none'\r\n }\r\n\r\n return base\r\n }\r\n\r\n const wrapperStyle: CSSProperties = {\r\n position: 'relative',\r\n width: '100%',\r\n }\r\n\r\n const countStyle: CSSProperties = {\r\n position: 'absolute',\r\n bottom: 8,\r\n right: 12,\r\n fontSize: 11,\r\n color: charCount >= (maxLength ?? Infinity)\r\n ? 'var(--brycks-error-default)'\r\n : 'var(--brycks-foreground-muted)',\r\n pointerEvents: 'none',\r\n transition: 'color 150ms ease-out',\r\n }\r\n\r\n const handleChange = (e: React.ChangeEvent<HTMLTextAreaElement>) => {\r\n setCharCount(e.target.value.length)\r\n onChange?.(e)\r\n }\r\n\r\n const handleFocus = (e: React.FocusEvent<HTMLTextAreaElement>) => {\r\n setIsFocused(true)\r\n onFocus?.(e)\r\n }\r\n\r\n const handleBlur = (e: React.FocusEvent<HTMLTextAreaElement>) => {\r\n setIsFocused(false)\r\n onBlur?.(e)\r\n }\r\n\r\n return (\r\n <div\r\n className={cx(\r\n 'brycks-textarea-wrapper',\r\n `brycks-textarea-wrapper--${variant}`,\r\n `brycks-textarea-wrapper--${size}`,\r\n isInvalid && 'brycks-textarea-wrapper--invalid',\r\n disabled && 'brycks-textarea-wrapper--disabled',\r\n className\r\n )}\r\n style={{ ...wrapperStyle, ...style }}\r\n >\r\n <textarea\r\n ref={textareaRef}\r\n className=\"brycks-textarea\"\r\n style={getTextareaStyle()}\r\n disabled={disabled}\r\n aria-invalid={isInvalid}\r\n data-testid={testId}\r\n value={value}\r\n defaultValue={defaultValue}\r\n maxLength={maxLength}\r\n onChange={handleChange}\r\n onFocus={handleFocus}\r\n onBlur={handleBlur}\r\n {...props}\r\n />\r\n\r\n {showCount && (\r\n <span style={countStyle}>\r\n {charCount}{maxLength ? `/${maxLength}` : ''}\r\n </span>\r\n )}\r\n </div>\r\n )\r\n})\r\n\r\nTextarea.displayName = 'Textarea'\r\n"],"names":["sizeStyles","Textarea","forwardRef","size","variant","isInvalid","autoResize","minRows","maxRows","showCount","maxLength","className","style","testId","disabled","value","defaultValue","onChange","onFocus","onBlur","props","ref","isFocused","setIsFocused","useState","charCount","setCharCount","internalRef","useRef","textareaRef","sizeValue","lineHeightPx","minHeight","maxHeight","adjustHeight","useCallback","textarea","scrollHeight","newHeight","useEffect","initialValue","getTextareaStyle","base","wrapperStyle","countStyle","handleChange","handleFocus","handleBlur","jsxs","cx","jsx"],"mappings":"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"}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { jsxs as k, jsx as K } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as O, useState as m, useRef as Q, useCallback as U, useEffect as H } from "react";
|
|
3
|
+
import { cx as V } from "../../../utils/styles.js";
|
|
4
|
+
const W = {
|
|
5
|
+
sm: { fontSize: 13, padding: 10, lineHeight: 1.5 },
|
|
6
|
+
md: { fontSize: 14, padding: 12, lineHeight: 1.5 },
|
|
7
|
+
lg: { fontSize: 15, padding: 14, lineHeight: 1.5 }
|
|
8
|
+
}, X = O(function({
|
|
9
|
+
size: p = "md",
|
|
10
|
+
variant: s = "outline",
|
|
11
|
+
isInvalid: r,
|
|
12
|
+
autoResize: n,
|
|
13
|
+
minRows: S = 3,
|
|
14
|
+
maxRows: w = 10,
|
|
15
|
+
showCount: v,
|
|
16
|
+
maxLength: o,
|
|
17
|
+
className: z,
|
|
18
|
+
style: C,
|
|
19
|
+
testId: F,
|
|
20
|
+
disabled: i,
|
|
21
|
+
value: a,
|
|
22
|
+
defaultValue: c,
|
|
23
|
+
onChange: $,
|
|
24
|
+
onFocus: T,
|
|
25
|
+
onBlur: j,
|
|
26
|
+
...N
|
|
27
|
+
}, B) {
|
|
28
|
+
const [u, f] = m(!1), [h, b] = m(0), E = Q(null), l = B || E, t = W[p], y = t.fontSize * t.lineHeight, d = y * S + t.padding * 2, g = y * w + t.padding * 2, x = U(() => {
|
|
29
|
+
const e = l.current;
|
|
30
|
+
if (!e || !n) return;
|
|
31
|
+
e.style.height = "auto";
|
|
32
|
+
const G = e.scrollHeight, J = Math.min(Math.max(G, d), g);
|
|
33
|
+
e.style.height = `${J}px`;
|
|
34
|
+
}, [n, d, g, l]);
|
|
35
|
+
H(() => {
|
|
36
|
+
x();
|
|
37
|
+
}, [a, x]), H(() => {
|
|
38
|
+
const e = String(a ?? c ?? "");
|
|
39
|
+
b(e.length);
|
|
40
|
+
}, [a, c]);
|
|
41
|
+
const M = () => {
|
|
42
|
+
const e = {
|
|
43
|
+
width: "100%",
|
|
44
|
+
minHeight: d,
|
|
45
|
+
maxHeight: n ? g : void 0,
|
|
46
|
+
padding: t.padding,
|
|
47
|
+
fontSize: t.fontSize,
|
|
48
|
+
lineHeight: t.lineHeight,
|
|
49
|
+
fontFamily: "var(--brycks-font-sans)",
|
|
50
|
+
color: "var(--brycks-foreground-default)",
|
|
51
|
+
backgroundColor: s === "filled" ? "var(--brycks-background-muted)" : "var(--brycks-background-app)",
|
|
52
|
+
border: `1px solid ${r ? "var(--brycks-error-default)" : u ? "var(--brycks-border-focus)" : s === "filled" ? "transparent" : "var(--brycks-border-default)"}`,
|
|
53
|
+
borderRadius: "var(--brycks-radius-default)",
|
|
54
|
+
outline: "none",
|
|
55
|
+
resize: n ? "none" : "vertical",
|
|
56
|
+
transition: "all 200ms ease-out",
|
|
57
|
+
boxShadow: u ? r ? "0 0 0 3px rgba(239, 68, 68, 0.15)" : "0 0 0 3px rgba(85, 120, 244, 0.15)" : "none"
|
|
58
|
+
};
|
|
59
|
+
return i && (e.opacity = 0.5, e.cursor = "not-allowed", e.resize = "none"), e;
|
|
60
|
+
}, R = {
|
|
61
|
+
position: "relative",
|
|
62
|
+
width: "100%"
|
|
63
|
+
}, P = {
|
|
64
|
+
position: "absolute",
|
|
65
|
+
bottom: 8,
|
|
66
|
+
right: 12,
|
|
67
|
+
fontSize: 11,
|
|
68
|
+
color: h >= (o ?? 1 / 0) ? "var(--brycks-error-default)" : "var(--brycks-foreground-muted)",
|
|
69
|
+
pointerEvents: "none",
|
|
70
|
+
transition: "color 150ms ease-out"
|
|
71
|
+
}, q = (e) => {
|
|
72
|
+
b(e.target.value.length), $?.(e);
|
|
73
|
+
}, A = (e) => {
|
|
74
|
+
f(!0), T?.(e);
|
|
75
|
+
}, D = (e) => {
|
|
76
|
+
f(!1), j?.(e);
|
|
77
|
+
};
|
|
78
|
+
return /* @__PURE__ */ k(
|
|
79
|
+
"div",
|
|
80
|
+
{
|
|
81
|
+
className: V(
|
|
82
|
+
"brycks-textarea-wrapper",
|
|
83
|
+
`brycks-textarea-wrapper--${s}`,
|
|
84
|
+
`brycks-textarea-wrapper--${p}`,
|
|
85
|
+
r && "brycks-textarea-wrapper--invalid",
|
|
86
|
+
i && "brycks-textarea-wrapper--disabled",
|
|
87
|
+
z
|
|
88
|
+
),
|
|
89
|
+
style: { ...R, ...C },
|
|
90
|
+
children: [
|
|
91
|
+
/* @__PURE__ */ K(
|
|
92
|
+
"textarea",
|
|
93
|
+
{
|
|
94
|
+
ref: l,
|
|
95
|
+
className: "brycks-textarea",
|
|
96
|
+
style: M(),
|
|
97
|
+
disabled: i,
|
|
98
|
+
"aria-invalid": r,
|
|
99
|
+
"data-testid": F,
|
|
100
|
+
value: a,
|
|
101
|
+
defaultValue: c,
|
|
102
|
+
maxLength: o,
|
|
103
|
+
onChange: q,
|
|
104
|
+
onFocus: A,
|
|
105
|
+
onBlur: D,
|
|
106
|
+
...N
|
|
107
|
+
}
|
|
108
|
+
),
|
|
109
|
+
v && /* @__PURE__ */ k("span", { style: P, children: [
|
|
110
|
+
h,
|
|
111
|
+
o ? `/${o}` : ""
|
|
112
|
+
] })
|
|
113
|
+
]
|
|
114
|
+
}
|
|
115
|
+
);
|
|
116
|
+
});
|
|
117
|
+
X.displayName = "Textarea";
|
|
118
|
+
export {
|
|
119
|
+
X as Textarea
|
|
120
|
+
};
|
|
121
|
+
//# sourceMappingURL=Textarea.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Textarea.js","sources":["../../../../src/components/form/Textarea/Textarea.tsx"],"sourcesContent":["/**\r\n * Textarea Component\r\n *\r\n * Multi-line text input with Apple-inspired styling.\r\n * Supports auto-resize and character counting.\r\n */\r\n\r\nimport {\r\n forwardRef,\r\n useState,\r\n useEffect,\r\n useRef,\r\n useCallback,\r\n type CSSProperties,\r\n type TextareaHTMLAttributes,\r\n} from 'react'\r\nimport { cx } from '../../../utils/styles'\r\n\r\nexport type TextareaSize = 'sm' | 'md' | 'lg'\r\nexport type TextareaVariant = 'outline' | 'filled'\r\n\r\nexport interface TextareaProps extends Omit<TextareaHTMLAttributes<HTMLTextAreaElement>, 'size'> {\r\n /** Textarea size */\r\n size?: TextareaSize\r\n /** Visual variant */\r\n variant?: TextareaVariant\r\n /** Error state */\r\n isInvalid?: boolean\r\n /** Auto resize based on content */\r\n autoResize?: boolean\r\n /** Minimum rows */\r\n minRows?: number\r\n /** Maximum rows */\r\n maxRows?: number\r\n /** Show character count */\r\n showCount?: boolean\r\n /** Max character length */\r\n maxLength?: number\r\n /** Custom class name */\r\n className?: string\r\n /** Test ID */\r\n testId?: string\r\n}\r\n\r\nconst sizeStyles: Record<TextareaSize, { fontSize: number; padding: number; lineHeight: number }> = {\r\n sm: { fontSize: 13, padding: 10, lineHeight: 1.5 },\r\n md: { fontSize: 14, padding: 12, lineHeight: 1.5 },\r\n lg: { fontSize: 15, padding: 14, lineHeight: 1.5 },\r\n}\r\n\r\nexport const Textarea = forwardRef<HTMLTextAreaElement, TextareaProps>(function Textarea(\r\n {\r\n size = 'md',\r\n variant = 'outline',\r\n isInvalid,\r\n autoResize,\r\n minRows = 3,\r\n maxRows = 10,\r\n showCount,\r\n maxLength,\r\n className,\r\n style,\r\n testId,\r\n disabled,\r\n value,\r\n defaultValue,\r\n onChange,\r\n onFocus,\r\n onBlur,\r\n ...props\r\n },\r\n ref\r\n) {\r\n const [isFocused, setIsFocused] = useState(false)\r\n const [charCount, setCharCount] = useState(0)\r\n const internalRef = useRef<HTMLTextAreaElement>(null)\r\n const textareaRef = (ref as React.RefObject<HTMLTextAreaElement>) || internalRef\r\n\r\n const sizeValue = sizeStyles[size]\r\n const lineHeightPx = sizeValue.fontSize * sizeValue.lineHeight\r\n const minHeight = lineHeightPx * minRows + sizeValue.padding * 2\r\n const maxHeight = lineHeightPx * maxRows + sizeValue.padding * 2\r\n\r\n const adjustHeight = useCallback(() => {\r\n const textarea = textareaRef.current\r\n if (!textarea || !autoResize) return\r\n\r\n textarea.style.height = 'auto'\r\n const scrollHeight = textarea.scrollHeight\r\n const newHeight = Math.min(Math.max(scrollHeight, minHeight), maxHeight)\r\n textarea.style.height = `${newHeight}px`\r\n }, [autoResize, minHeight, maxHeight, textareaRef])\r\n\r\n useEffect(() => {\r\n adjustHeight()\r\n }, [value, adjustHeight])\r\n\r\n useEffect(() => {\r\n const initialValue = String(value ?? defaultValue ?? '')\r\n setCharCount(initialValue.length)\r\n }, [value, defaultValue])\r\n\r\n const getTextareaStyle = (): CSSProperties => {\r\n const base: CSSProperties = {\r\n width: '100%',\r\n minHeight,\r\n maxHeight: autoResize ? maxHeight : undefined,\r\n padding: sizeValue.padding,\r\n fontSize: sizeValue.fontSize,\r\n lineHeight: sizeValue.lineHeight,\r\n fontFamily: 'var(--brycks-font-sans)',\r\n color: 'var(--brycks-foreground-default)',\r\n backgroundColor: variant === 'filled' ? 'var(--brycks-background-muted)' : 'var(--brycks-background-app)',\r\n border: `1px solid ${\r\n isInvalid\r\n ? 'var(--brycks-error-default)'\r\n : isFocused\r\n ? 'var(--brycks-border-focus)'\r\n : variant === 'filled'\r\n ? 'transparent'\r\n : 'var(--brycks-border-default)'\r\n }`,\r\n borderRadius: 'var(--brycks-radius-default)',\r\n outline: 'none',\r\n resize: autoResize ? 'none' : 'vertical',\r\n transition: 'all 200ms ease-out',\r\n boxShadow: isFocused\r\n ? isInvalid\r\n ? '0 0 0 3px rgba(239, 68, 68, 0.15)'\r\n : '0 0 0 3px rgba(85, 120, 244, 0.15)'\r\n : 'none',\r\n }\r\n\r\n if (disabled) {\r\n base.opacity = 0.5\r\n base.cursor = 'not-allowed'\r\n base.resize = 'none'\r\n }\r\n\r\n return base\r\n }\r\n\r\n const wrapperStyle: CSSProperties = {\r\n position: 'relative',\r\n width: '100%',\r\n }\r\n\r\n const countStyle: CSSProperties = {\r\n position: 'absolute',\r\n bottom: 8,\r\n right: 12,\r\n fontSize: 11,\r\n color: charCount >= (maxLength ?? Infinity)\r\n ? 'var(--brycks-error-default)'\r\n : 'var(--brycks-foreground-muted)',\r\n pointerEvents: 'none',\r\n transition: 'color 150ms ease-out',\r\n }\r\n\r\n const handleChange = (e: React.ChangeEvent<HTMLTextAreaElement>) => {\r\n setCharCount(e.target.value.length)\r\n onChange?.(e)\r\n }\r\n\r\n const handleFocus = (e: React.FocusEvent<HTMLTextAreaElement>) => {\r\n setIsFocused(true)\r\n onFocus?.(e)\r\n }\r\n\r\n const handleBlur = (e: React.FocusEvent<HTMLTextAreaElement>) => {\r\n setIsFocused(false)\r\n onBlur?.(e)\r\n }\r\n\r\n return (\r\n <div\r\n className={cx(\r\n 'brycks-textarea-wrapper',\r\n `brycks-textarea-wrapper--${variant}`,\r\n `brycks-textarea-wrapper--${size}`,\r\n isInvalid && 'brycks-textarea-wrapper--invalid',\r\n disabled && 'brycks-textarea-wrapper--disabled',\r\n className\r\n )}\r\n style={{ ...wrapperStyle, ...style }}\r\n >\r\n <textarea\r\n ref={textareaRef}\r\n className=\"brycks-textarea\"\r\n style={getTextareaStyle()}\r\n disabled={disabled}\r\n aria-invalid={isInvalid}\r\n data-testid={testId}\r\n value={value}\r\n defaultValue={defaultValue}\r\n maxLength={maxLength}\r\n onChange={handleChange}\r\n onFocus={handleFocus}\r\n onBlur={handleBlur}\r\n {...props}\r\n />\r\n\r\n {showCount && (\r\n <span style={countStyle}>\r\n {charCount}{maxLength ? `/${maxLength}` : ''}\r\n </span>\r\n )}\r\n </div>\r\n )\r\n})\r\n\r\nTextarea.displayName = 'Textarea'\r\n"],"names":["sizeStyles","Textarea","forwardRef","size","variant","isInvalid","autoResize","minRows","maxRows","showCount","maxLength","className","style","testId","disabled","value","defaultValue","onChange","onFocus","onBlur","props","ref","isFocused","setIsFocused","useState","charCount","setCharCount","internalRef","useRef","textareaRef","sizeValue","lineHeightPx","minHeight","maxHeight","adjustHeight","useCallback","textarea","scrollHeight","newHeight","useEffect","initialValue","getTextareaStyle","base","wrapperStyle","countStyle","handleChange","handleFocus","handleBlur","jsxs","cx","jsx"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./form/Input/Input.cjs"),o=require("./form/TextField/TextField.cjs"),t=require("./form/Select/Select.cjs"),i=require("./form/Checkbox/Checkbox.cjs"),u=require("./form/Switch/Switch.cjs"),c=require("./form/Textarea/Textarea.cjs"),e=require("./form/Radio/Radio.cjs"),n=require("./form/Slider/Slider.cjs"),l=require("./form/DateInput/DateInput.cjs"),F=require("./form/FileInput/FileInput.cjs"),a=require("./form/FormField/FormField.cjs"),d=require("./form/FieldError/FieldError.cjs"),s=require("./form/Form/Form.cjs"),p=require("./form/FormLabel/FormLabel.cjs"),q=require("./form/FormGroup/FormGroup.cjs");exports.Input=r.Input;exports.TextField=o.TextField;exports.Select=t.Select;exports.Checkbox=i.Checkbox;exports.Switch=u.Switch;exports.Textarea=c.Textarea;exports.Radio=e.Radio;exports.RadioGroup=e.RadioGroup;exports.Slider=n.Slider;exports.DateInput=l.DateInput;exports.FileInput=F.FileInput;exports.FormField=a.FormField;exports.FieldError=d.FieldError;exports.Form=s.Form;exports.FormLabel=p.FormLabel;exports.FormGroup=q.FormGroup;
|
|
2
|
+
//# sourceMappingURL=form.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Input as e } from "./form/Input/Input.js";
|
|
2
|
+
import { TextField as p } from "./form/TextField/TextField.js";
|
|
3
|
+
import { Select as x } from "./form/Select/Select.js";
|
|
4
|
+
import { Checkbox as i } from "./form/Checkbox/Checkbox.js";
|
|
5
|
+
import { Switch as l } from "./form/Switch/Switch.js";
|
|
6
|
+
import { Textarea as d } from "./form/Textarea/Textarea.js";
|
|
7
|
+
import { Radio as c, RadioGroup as n } from "./form/Radio/Radio.js";
|
|
8
|
+
import { Slider as S } from "./form/Slider/Slider.js";
|
|
9
|
+
import { DateInput as h } from "./form/DateInput/DateInput.js";
|
|
10
|
+
import { FileInput as R } from "./form/FileInput/FileInput.js";
|
|
11
|
+
import { FormField as k } from "./form/FormField/FormField.js";
|
|
12
|
+
import { FieldError as C } from "./form/FieldError/FieldError.js";
|
|
13
|
+
import { Form as E } from "./form/Form/Form.js";
|
|
14
|
+
import { FormLabel as g } from "./form/FormLabel/FormLabel.js";
|
|
15
|
+
import { FormGroup as q } from "./form/FormGroup/FormGroup.js";
|
|
16
|
+
export {
|
|
17
|
+
i as Checkbox,
|
|
18
|
+
h as DateInput,
|
|
19
|
+
C as FieldError,
|
|
20
|
+
R as FileInput,
|
|
21
|
+
E as Form,
|
|
22
|
+
k as FormField,
|
|
23
|
+
q as FormGroup,
|
|
24
|
+
g as FormLabel,
|
|
25
|
+
e as Input,
|
|
26
|
+
c as Radio,
|
|
27
|
+
n as RadioGroup,
|
|
28
|
+
x as Select,
|
|
29
|
+
S as Slider,
|
|
30
|
+
l as Switch,
|
|
31
|
+
p as TextField,
|
|
32
|
+
d as Textarea
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=form.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),R=require("react"),f=require("../../../utils/styles.cjs"),m={"1:1":1,"4:3":4/3,"3:2":3/2,"16:9":16/9,"21:9":21/9,"2:3":2/3,"3:4":3/4,"9:16":9/16};function b(t){return typeof t=="number"?t:m[t]??16/9}const o=R.forwardRef(function({ratio:i="16:9",children:s,className:n,style:r,testId:c,...a},l){const u=`${1/b(i)*100}%`,d={position:"relative",width:"100%",...r},p={position:"relative",paddingBottom:u},y={position:"absolute",top:0,left:0,right:0,bottom:0};return e.jsx("div",{ref:l,className:f.cx("brycks-aspect-ratio",n),style:d,"data-testid":c,...a,children:e.jsx("div",{style:p,children:e.jsx("div",{style:y,children:s})})})});o.displayName="AspectRatio";exports.AspectRatio=o;
|
|
2
|
+
//# sourceMappingURL=AspectRatio.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AspectRatio.cjs","sources":["../../../../src/components/layout/AspectRatio/AspectRatio.tsx"],"sourcesContent":["/**\r\n * AspectRatio Component\r\n *\r\n * Maintains a consistent aspect ratio for its children.\r\n * Useful for images, videos, maps, and other embedded content.\r\n */\r\n\r\nimport {\r\n forwardRef,\r\n type CSSProperties,\r\n type HTMLAttributes,\r\n type ReactNode,\r\n} from 'react'\r\nimport { cx } from '../../../utils/styles'\r\n\r\n/** Common aspect ratio presets */\r\nexport type AspectRatioPreset =\r\n | '1:1'\r\n | '4:3'\r\n | '3:2'\r\n | '16:9'\r\n | '21:9'\r\n | '2:3'\r\n | '3:4'\r\n | '9:16'\r\n\r\nexport interface AspectRatioProps extends HTMLAttributes<HTMLDivElement> {\r\n /**\r\n * Aspect ratio as a preset string or custom number.\r\n * Number represents width/height (e.g., 16/9 = 1.777...)\r\n * @default '16:9'\r\n */\r\n ratio?: AspectRatioPreset | number\r\n /** Content to render inside the ratio container */\r\n children?: ReactNode\r\n /** Custom class name */\r\n className?: string\r\n /** Test ID */\r\n testId?: string\r\n}\r\n\r\nconst presetRatios: Record<AspectRatioPreset, number> = {\r\n '1:1': 1,\r\n '4:3': 4 / 3,\r\n '3:2': 3 / 2,\r\n '16:9': 16 / 9,\r\n '21:9': 21 / 9,\r\n '2:3': 2 / 3,\r\n '3:4': 3 / 4,\r\n '9:16': 9 / 16,\r\n}\r\n\r\nfunction getRatioValue(ratio: AspectRatioPreset | number): number {\r\n if (typeof ratio === 'number') return ratio\r\n return presetRatios[ratio] ?? 16 / 9\r\n}\r\n\r\nexport const AspectRatio = forwardRef<HTMLDivElement, AspectRatioProps>(\r\n function AspectRatio(\r\n { ratio = '16:9', children, className, style, testId, ...props },\r\n ref\r\n ) {\r\n const ratioValue = getRatioValue(ratio)\r\n const paddingBottom = `${(1 / ratioValue) * 100}%`\r\n\r\n const containerStyle: CSSProperties = {\r\n position: 'relative',\r\n width: '100%',\r\n ...style,\r\n }\r\n\r\n const innerStyle: CSSProperties = {\r\n position: 'relative',\r\n paddingBottom,\r\n }\r\n\r\n const contentStyle: CSSProperties = {\r\n position: 'absolute',\r\n top: 0,\r\n left: 0,\r\n right: 0,\r\n bottom: 0,\r\n }\r\n\r\n return (\r\n <div\r\n ref={ref}\r\n className={cx('brycks-aspect-ratio', className)}\r\n style={containerStyle}\r\n data-testid={testId}\r\n {...props}\r\n >\r\n <div style={innerStyle}>\r\n <div style={contentStyle}>{children}</div>\r\n </div>\r\n </div>\r\n )\r\n }\r\n)\r\n\r\nAspectRatio.displayName = 'AspectRatio'\r\n"],"names":["presetRatios","getRatioValue","ratio","AspectRatio","forwardRef","children","className","style","testId","props","ref","paddingBottom","containerStyle","innerStyle","contentStyle","jsx","cx"],"mappings":"+KAyCMA,EAAkD,CACtD,MAAO,EACP,MAAO,EAAI,EACX,MAAO,EAAI,EACX,OAAQ,GAAK,EACb,OAAQ,GAAK,EACb,MAAO,EAAI,EACX,MAAO,EAAI,EACX,OAAQ,EAAI,EACd,EAEA,SAASC,EAAcC,EAA2C,CAChE,OAAI,OAAOA,GAAU,SAAiBA,EAC/BF,EAAaE,CAAK,GAAK,GAAK,CACrC,CAEO,MAAMC,EAAcC,EAAAA,WACzB,SACE,CAAE,MAAAF,EAAQ,OAAQ,SAAAG,EAAU,UAAAC,EAAW,MAAAC,EAAO,OAAAC,EAAQ,GAAGC,CAAA,EACzDC,EACA,CAEA,MAAMC,EAAgB,GAAI,EADPV,EAAcC,CAAK,EACM,GAAG,IAEzCU,EAAgC,CACpC,SAAU,WACV,MAAO,OACP,GAAGL,CAAA,EAGCM,EAA4B,CAChC,SAAU,WACV,cAAAF,CAAA,EAGIG,EAA8B,CAClC,SAAU,WACV,IAAK,EACL,KAAM,EACN,MAAO,EACP,OAAQ,CAAA,EAGV,OACEC,EAAAA,IAAC,MAAA,CACC,IAAAL,EACA,UAAWM,EAAAA,GAAG,sBAAuBV,CAAS,EAC9C,MAAOM,EACP,cAAaJ,EACZ,GAAGC,EAEJ,SAAAM,EAAAA,IAAC,OAAI,MAAOF,EACV,eAAC,MAAA,CAAI,MAAOC,EAAe,SAAAT,CAAA,CAAS,CAAA,CACtC,CAAA,CAAA,CAGN,CACF,EAEAF,EAAY,YAAc"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { jsx as o } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as f } from "react";
|
|
3
|
+
import { cx as u } from "../../../utils/styles.js";
|
|
4
|
+
const y = {
|
|
5
|
+
"1:1": 1,
|
|
6
|
+
"4:3": 4 / 3,
|
|
7
|
+
"3:2": 3 / 2,
|
|
8
|
+
"16:9": 16 / 9,
|
|
9
|
+
"21:9": 21 / 9,
|
|
10
|
+
"2:3": 2 / 3,
|
|
11
|
+
"3:4": 3 / 4,
|
|
12
|
+
"9:16": 9 / 16
|
|
13
|
+
};
|
|
14
|
+
function R(t) {
|
|
15
|
+
return typeof t == "number" ? t : y[t] ?? 16 / 9;
|
|
16
|
+
}
|
|
17
|
+
const v = f(
|
|
18
|
+
function({ ratio: e = "16:9", children: i, className: n, style: r, testId: s, ...a }, c) {
|
|
19
|
+
const l = `${1 / R(e) * 100}%`, p = {
|
|
20
|
+
position: "relative",
|
|
21
|
+
width: "100%",
|
|
22
|
+
...r
|
|
23
|
+
}, d = {
|
|
24
|
+
position: "relative",
|
|
25
|
+
paddingBottom: l
|
|
26
|
+
}, m = {
|
|
27
|
+
position: "absolute",
|
|
28
|
+
top: 0,
|
|
29
|
+
left: 0,
|
|
30
|
+
right: 0,
|
|
31
|
+
bottom: 0
|
|
32
|
+
};
|
|
33
|
+
return /* @__PURE__ */ o(
|
|
34
|
+
"div",
|
|
35
|
+
{
|
|
36
|
+
ref: c,
|
|
37
|
+
className: u("brycks-aspect-ratio", n),
|
|
38
|
+
style: p,
|
|
39
|
+
"data-testid": s,
|
|
40
|
+
...a,
|
|
41
|
+
children: /* @__PURE__ */ o("div", { style: d, children: /* @__PURE__ */ o("div", { style: m, children: i }) })
|
|
42
|
+
}
|
|
43
|
+
);
|
|
44
|
+
}
|
|
45
|
+
);
|
|
46
|
+
v.displayName = "AspectRatio";
|
|
47
|
+
export {
|
|
48
|
+
v as AspectRatio
|
|
49
|
+
};
|
|
50
|
+
//# sourceMappingURL=AspectRatio.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AspectRatio.js","sources":["../../../../src/components/layout/AspectRatio/AspectRatio.tsx"],"sourcesContent":["/**\r\n * AspectRatio Component\r\n *\r\n * Maintains a consistent aspect ratio for its children.\r\n * Useful for images, videos, maps, and other embedded content.\r\n */\r\n\r\nimport {\r\n forwardRef,\r\n type CSSProperties,\r\n type HTMLAttributes,\r\n type ReactNode,\r\n} from 'react'\r\nimport { cx } from '../../../utils/styles'\r\n\r\n/** Common aspect ratio presets */\r\nexport type AspectRatioPreset =\r\n | '1:1'\r\n | '4:3'\r\n | '3:2'\r\n | '16:9'\r\n | '21:9'\r\n | '2:3'\r\n | '3:4'\r\n | '9:16'\r\n\r\nexport interface AspectRatioProps extends HTMLAttributes<HTMLDivElement> {\r\n /**\r\n * Aspect ratio as a preset string or custom number.\r\n * Number represents width/height (e.g., 16/9 = 1.777...)\r\n * @default '16:9'\r\n */\r\n ratio?: AspectRatioPreset | number\r\n /** Content to render inside the ratio container */\r\n children?: ReactNode\r\n /** Custom class name */\r\n className?: string\r\n /** Test ID */\r\n testId?: string\r\n}\r\n\r\nconst presetRatios: Record<AspectRatioPreset, number> = {\r\n '1:1': 1,\r\n '4:3': 4 / 3,\r\n '3:2': 3 / 2,\r\n '16:9': 16 / 9,\r\n '21:9': 21 / 9,\r\n '2:3': 2 / 3,\r\n '3:4': 3 / 4,\r\n '9:16': 9 / 16,\r\n}\r\n\r\nfunction getRatioValue(ratio: AspectRatioPreset | number): number {\r\n if (typeof ratio === 'number') return ratio\r\n return presetRatios[ratio] ?? 16 / 9\r\n}\r\n\r\nexport const AspectRatio = forwardRef<HTMLDivElement, AspectRatioProps>(\r\n function AspectRatio(\r\n { ratio = '16:9', children, className, style, testId, ...props },\r\n ref\r\n ) {\r\n const ratioValue = getRatioValue(ratio)\r\n const paddingBottom = `${(1 / ratioValue) * 100}%`\r\n\r\n const containerStyle: CSSProperties = {\r\n position: 'relative',\r\n width: '100%',\r\n ...style,\r\n }\r\n\r\n const innerStyle: CSSProperties = {\r\n position: 'relative',\r\n paddingBottom,\r\n }\r\n\r\n const contentStyle: CSSProperties = {\r\n position: 'absolute',\r\n top: 0,\r\n left: 0,\r\n right: 0,\r\n bottom: 0,\r\n }\r\n\r\n return (\r\n <div\r\n ref={ref}\r\n className={cx('brycks-aspect-ratio', className)}\r\n style={containerStyle}\r\n data-testid={testId}\r\n {...props}\r\n >\r\n <div style={innerStyle}>\r\n <div style={contentStyle}>{children}</div>\r\n </div>\r\n </div>\r\n )\r\n }\r\n)\r\n\r\nAspectRatio.displayName = 'AspectRatio'\r\n"],"names":["presetRatios","getRatioValue","ratio","AspectRatio","forwardRef","children","className","style","testId","props","ref","paddingBottom","containerStyle","innerStyle","contentStyle","jsx","cx"],"mappings":";;;AAyCA,MAAMA,IAAkD;AAAA,EACtD,OAAO;AAAA,EACP,OAAO,IAAI;AAAA,EACX,OAAO,IAAI;AAAA,EACX,QAAQ,KAAK;AAAA,EACb,QAAQ,KAAK;AAAA,EACb,OAAO,IAAI;AAAA,EACX,OAAO,IAAI;AAAA,EACX,QAAQ,IAAI;AACd;AAEA,SAASC,EAAcC,GAA2C;AAChE,SAAI,OAAOA,KAAU,WAAiBA,IAC/BF,EAAaE,CAAK,KAAK,KAAK;AACrC;AAEO,MAAMC,IAAcC;AAAA,EACzB,SACE,EAAE,OAAAF,IAAQ,QAAQ,UAAAG,GAAU,WAAAC,GAAW,OAAAC,GAAO,QAAAC,GAAQ,GAAGC,EAAA,GACzDC,GACA;AAEA,UAAMC,IAAgB,GAAI,IADPV,EAAcC,CAAK,IACM,GAAG,KAEzCU,IAAgC;AAAA,MACpC,UAAU;AAAA,MACV,OAAO;AAAA,MACP,GAAGL;AAAA,IAAA,GAGCM,IAA4B;AAAA,MAChC,UAAU;AAAA,MACV,eAAAF;AAAA,IAAA,GAGIG,IAA8B;AAAA,MAClC,UAAU;AAAA,MACV,KAAK;AAAA,MACL,MAAM;AAAA,MACN,OAAO;AAAA,MACP,QAAQ;AAAA,IAAA;AAGV,WACE,gBAAAC;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,KAAAL;AAAA,QACA,WAAWM,EAAG,uBAAuBV,CAAS;AAAA,QAC9C,OAAOM;AAAA,QACP,eAAaJ;AAAA,QACZ,GAAGC;AAAA,QAEJ,UAAA,gBAAAM,EAAC,SAAI,OAAOF,GACV,4BAAC,OAAA,EAAI,OAAOC,GAAe,UAAAT,EAAA,CAAS,EAAA,CACtC;AAAA,MAAA;AAAA,IAAA;AAAA,EAGN;AACF;AAEAF,EAAY,cAAc;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const x=require("react/jsx-runtime"),a=require("react"),u=require("./Box.styles.cjs"),y=require("../../../utils/styles.cjs"),p=["m","mx","my","mt","mr","mb","ml","p","px","py","pt","pr","pb","pl","display","position","width","height","minWidth","maxWidth","minHeight","maxHeight","overflow","bg","radius","shadow","testId"];function b(e){const t={...e};for(const o of p)delete t[o];return t}const f=({as:e,className:t,style:o,children:i,testId:n,...s},c)=>{const l=e||"div",d=u.buildBoxStyles(s),m=b(s);return x.jsx(l,{ref:c,className:y.cx("brycks-box",t),style:{...d,...o},"data-testid":n,...m,children:i})},r=a.forwardRef(f);r.displayName="Box";exports.Box=r;
|
|
2
|
+
//# sourceMappingURL=Box.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Box.cjs","sources":["../../../../src/components/layout/Box/Box.tsx"],"sourcesContent":["/**\r\n * Box Component\r\n *\r\n * A polymorphic layout primitive that serves as the foundation for all other components.\r\n * Provides spacing, sizing, and visual styling through props.\r\n */\r\n\r\nimport React, { forwardRef, type ElementType, type ComponentPropsWithRef } from 'react'\r\nimport type { BoxProps, BoxOwnProps } from './Box.types'\r\nimport { buildBoxStyles } from './Box.styles'\r\nimport { cx } from '../../../utils/styles'\r\n\r\ninterface BoxComponent {\r\n <E extends ElementType = 'div'>(\r\n props: BoxProps<E> & { ref?: ComponentPropsWithRef<E>['ref'] }\r\n ): React.JSX.Element | null\r\n displayName?: string\r\n}\r\n\r\n// Keys to omit from props before spreading\r\nconst boxOwnPropKeys: (keyof BoxOwnProps)[] = [\r\n 'm',\r\n 'mx',\r\n 'my',\r\n 'mt',\r\n 'mr',\r\n 'mb',\r\n 'ml',\r\n 'p',\r\n 'px',\r\n 'py',\r\n 'pt',\r\n 'pr',\r\n 'pb',\r\n 'pl',\r\n 'display',\r\n 'position',\r\n 'width',\r\n 'height',\r\n 'minWidth',\r\n 'maxWidth',\r\n 'minHeight',\r\n 'maxHeight',\r\n 'overflow',\r\n 'bg',\r\n 'radius',\r\n 'shadow',\r\n 'testId',\r\n]\r\n\r\nfunction omitBoxProps<P extends Record<string, unknown>>(\r\n props: P\r\n): Omit<P, (typeof boxOwnPropKeys)[number]> {\r\n const result = { ...props }\r\n for (const key of boxOwnPropKeys) {\r\n delete result[key]\r\n }\r\n return result\r\n}\r\n\r\nconst BoxInner = <E extends ElementType = 'div'>(\r\n { as, className, style, children, testId, ...props }: BoxProps<E>,\r\n ref: React.ForwardedRef<Element>\r\n) => {\r\n const Component = as || 'div'\r\n const boxStyles = buildBoxStyles(props as BoxOwnProps)\r\n const filteredProps = omitBoxProps(props)\r\n\r\n return (\r\n <Component\r\n ref={ref}\r\n className={cx('brycks-box', className)}\r\n style={{ ...boxStyles, ...style }}\r\n data-testid={testId}\r\n {...filteredProps}\r\n >\r\n {children}\r\n </Component>\r\n )\r\n}\r\n\r\nexport const Box = forwardRef(BoxInner) as BoxComponent\r\n\r\nBox.displayName = 'Box'\r\n"],"names":["boxOwnPropKeys","omitBoxProps","props","result","key","BoxInner","as","className","style","children","testId","ref","Component","boxStyles","buildBoxStyles","filteredProps","jsx","cx","Box","forwardRef"],"mappings":"6MAoBMA,EAAwC,CAC5C,IACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,UACA,WACA,QACA,SACA,WACA,WACA,YACA,YACA,WACA,KACA,SACA,SACA,QACF,EAEA,SAASC,EACPC,EAC0C,CAC1C,MAAMC,EAAS,CAAE,GAAGD,CAAA,EACpB,UAAWE,KAAOJ,EAChB,OAAOG,EAAOC,CAAG,EAEnB,OAAOD,CACT,CAEA,MAAME,EAAW,CACf,CAAE,GAAAC,EAAI,UAAAC,EAAW,MAAAC,EAAO,SAAAC,EAAU,OAAAC,EAAQ,GAAGR,CAAA,EAC7CS,IACG,CACH,MAAMC,EAAYN,GAAM,MAClBO,EAAYC,EAAAA,eAAeZ,CAAoB,EAC/Ca,EAAgBd,EAAaC,CAAK,EAExC,OACEc,EAAAA,IAACJ,EAAA,CACC,IAAAD,EACA,UAAWM,EAAAA,GAAG,aAAcV,CAAS,EACrC,MAAO,CAAE,GAAGM,EAAW,GAAGL,CAAA,EAC1B,cAAaE,EACZ,GAAGK,EAEH,SAAAN,CAAA,CAAA,CAGP,EAEaS,EAAMC,EAAAA,WAAWd,CAAQ,EAEtCa,EAAI,YAAc"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { jsx as x } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as l } from "react";
|
|
3
|
+
import { buildBoxStyles as a } from "./Box.styles.js";
|
|
4
|
+
import { cx as c } from "../../../utils/styles.js";
|
|
5
|
+
const f = [
|
|
6
|
+
"m",
|
|
7
|
+
"mx",
|
|
8
|
+
"my",
|
|
9
|
+
"mt",
|
|
10
|
+
"mr",
|
|
11
|
+
"mb",
|
|
12
|
+
"ml",
|
|
13
|
+
"p",
|
|
14
|
+
"px",
|
|
15
|
+
"py",
|
|
16
|
+
"pt",
|
|
17
|
+
"pr",
|
|
18
|
+
"pb",
|
|
19
|
+
"pl",
|
|
20
|
+
"display",
|
|
21
|
+
"position",
|
|
22
|
+
"width",
|
|
23
|
+
"height",
|
|
24
|
+
"minWidth",
|
|
25
|
+
"maxWidth",
|
|
26
|
+
"minHeight",
|
|
27
|
+
"maxHeight",
|
|
28
|
+
"overflow",
|
|
29
|
+
"bg",
|
|
30
|
+
"radius",
|
|
31
|
+
"shadow",
|
|
32
|
+
"testId"
|
|
33
|
+
];
|
|
34
|
+
function y(t) {
|
|
35
|
+
const o = { ...t };
|
|
36
|
+
for (const r of f)
|
|
37
|
+
delete o[r];
|
|
38
|
+
return o;
|
|
39
|
+
}
|
|
40
|
+
const b = ({ as: t, className: o, style: r, children: s, testId: i, ...e }, m) => {
|
|
41
|
+
const n = t || "div", p = a(e), d = y(e);
|
|
42
|
+
return /* @__PURE__ */ x(
|
|
43
|
+
n,
|
|
44
|
+
{
|
|
45
|
+
ref: m,
|
|
46
|
+
className: c("brycks-box", o),
|
|
47
|
+
style: { ...p, ...r },
|
|
48
|
+
"data-testid": i,
|
|
49
|
+
...d,
|
|
50
|
+
children: s
|
|
51
|
+
}
|
|
52
|
+
);
|
|
53
|
+
}, h = l(b);
|
|
54
|
+
h.displayName = "Box";
|
|
55
|
+
export {
|
|
56
|
+
h as Box
|
|
57
|
+
};
|
|
58
|
+
//# sourceMappingURL=Box.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Box.js","sources":["../../../../src/components/layout/Box/Box.tsx"],"sourcesContent":["/**\r\n * Box Component\r\n *\r\n * A polymorphic layout primitive that serves as the foundation for all other components.\r\n * Provides spacing, sizing, and visual styling through props.\r\n */\r\n\r\nimport React, { forwardRef, type ElementType, type ComponentPropsWithRef } from 'react'\r\nimport type { BoxProps, BoxOwnProps } from './Box.types'\r\nimport { buildBoxStyles } from './Box.styles'\r\nimport { cx } from '../../../utils/styles'\r\n\r\ninterface BoxComponent {\r\n <E extends ElementType = 'div'>(\r\n props: BoxProps<E> & { ref?: ComponentPropsWithRef<E>['ref'] }\r\n ): React.JSX.Element | null\r\n displayName?: string\r\n}\r\n\r\n// Keys to omit from props before spreading\r\nconst boxOwnPropKeys: (keyof BoxOwnProps)[] = [\r\n 'm',\r\n 'mx',\r\n 'my',\r\n 'mt',\r\n 'mr',\r\n 'mb',\r\n 'ml',\r\n 'p',\r\n 'px',\r\n 'py',\r\n 'pt',\r\n 'pr',\r\n 'pb',\r\n 'pl',\r\n 'display',\r\n 'position',\r\n 'width',\r\n 'height',\r\n 'minWidth',\r\n 'maxWidth',\r\n 'minHeight',\r\n 'maxHeight',\r\n 'overflow',\r\n 'bg',\r\n 'radius',\r\n 'shadow',\r\n 'testId',\r\n]\r\n\r\nfunction omitBoxProps<P extends Record<string, unknown>>(\r\n props: P\r\n): Omit<P, (typeof boxOwnPropKeys)[number]> {\r\n const result = { ...props }\r\n for (const key of boxOwnPropKeys) {\r\n delete result[key]\r\n }\r\n return result\r\n}\r\n\r\nconst BoxInner = <E extends ElementType = 'div'>(\r\n { as, className, style, children, testId, ...props }: BoxProps<E>,\r\n ref: React.ForwardedRef<Element>\r\n) => {\r\n const Component = as || 'div'\r\n const boxStyles = buildBoxStyles(props as BoxOwnProps)\r\n const filteredProps = omitBoxProps(props)\r\n\r\n return (\r\n <Component\r\n ref={ref}\r\n className={cx('brycks-box', className)}\r\n style={{ ...boxStyles, ...style }}\r\n data-testid={testId}\r\n {...filteredProps}\r\n >\r\n {children}\r\n </Component>\r\n )\r\n}\r\n\r\nexport const Box = forwardRef(BoxInner) as BoxComponent\r\n\r\nBox.displayName = 'Box'\r\n"],"names":["boxOwnPropKeys","omitBoxProps","props","result","key","BoxInner","as","className","style","children","testId","ref","Component","boxStyles","buildBoxStyles","filteredProps","jsx","cx","Box","forwardRef"],"mappings":";;;;AAoBA,MAAMA,IAAwC;AAAA,EAC5C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEA,SAASC,EACPC,GAC0C;AAC1C,QAAMC,IAAS,EAAE,GAAGD,EAAA;AACpB,aAAWE,KAAOJ;AAChB,WAAOG,EAAOC,CAAG;AAEnB,SAAOD;AACT;AAEA,MAAME,IAAW,CACf,EAAE,IAAAC,GAAI,WAAAC,GAAW,OAAAC,GAAO,UAAAC,GAAU,QAAAC,GAAQ,GAAGR,EAAA,GAC7CS,MACG;AACH,QAAMC,IAAYN,KAAM,OAClBO,IAAYC,EAAeZ,CAAoB,GAC/Ca,IAAgBd,EAAaC,CAAK;AAExC,SACE,gBAAAc;AAAA,IAACJ;AAAA,IAAA;AAAA,MACC,KAAAD;AAAA,MACA,WAAWM,EAAG,cAAcV,CAAS;AAAA,MACrC,OAAO,EAAE,GAAGM,GAAW,GAAGL,EAAA;AAAA,MAC1B,eAAaE;AAAA,MACZ,GAAGK;AAAA,MAEH,UAAAN;AAAA,IAAA;AAAA,EAAA;AAGP,GAEaS,IAAMC,EAAWd,CAAQ;AAEtCa,EAAI,cAAc;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("../../../utils/styles.cjs"),s={none:"0",xs:"var(--brycks-radius-xs)",sm:"var(--brycks-radius-sm)",md:"var(--brycks-radius-md)",lg:"var(--brycks-radius-lg)",xl:"var(--brycks-radius-xl)","2xl":"var(--brycks-radius-2xl)","3xl":"var(--brycks-radius-3xl)",full:"var(--brycks-radius-full)"},t={none:"none",xs:"var(--brycks-shadow-xs)",sm:"var(--brycks-shadow-sm)",md:"var(--brycks-shadow-md)",lg:"var(--brycks-shadow-lg)",xl:"var(--brycks-shadow-xl)","2xl":"var(--brycks-shadow-2xl)"};function l(i){const a={...d.buildSpacingStyles(i)};return i.display&&(a.display=i.display),i.position&&(a.position=i.position),i.width&&(a.width=i.width),i.height&&(a.height=i.height),i.minWidth&&(a.minWidth=i.minWidth),i.maxWidth&&(a.maxWidth=i.maxWidth),i.minHeight&&(a.minHeight=i.minHeight),i.maxHeight&&(a.maxHeight=i.maxHeight),i.overflow&&(a.overflow=i.overflow),i.bg&&(a.backgroundColor=i.bg),i.radius&&(a.borderRadius=s[i.radius]),i.shadow&&(a.boxShadow=t[i.shadow]),a}exports.buildBoxStyles=l;
|
|
2
|
+
//# sourceMappingURL=Box.styles.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Box.styles.cjs","sources":["../../../../src/components/layout/Box/Box.styles.ts"],"sourcesContent":["/**\r\n * Box Component Styles\r\n */\r\n\r\nimport type { CSSProperties } from 'react'\r\nimport type { BoxOwnProps } from './Box.types'\r\nimport { buildSpacingStyles } from '../../../utils/styles'\r\n\r\nconst radiusMap: Record<NonNullable<BoxOwnProps['radius']>, string> = {\r\n none: '0',\r\n xs: 'var(--brycks-radius-xs)',\r\n sm: 'var(--brycks-radius-sm)',\r\n md: 'var(--brycks-radius-md)',\r\n lg: 'var(--brycks-radius-lg)',\r\n xl: 'var(--brycks-radius-xl)',\r\n '2xl': 'var(--brycks-radius-2xl)',\r\n '3xl': 'var(--brycks-radius-3xl)',\r\n full: 'var(--brycks-radius-full)',\r\n}\r\n\r\nconst shadowMap: Record<NonNullable<BoxOwnProps['shadow']>, string> = {\r\n none: 'none',\r\n xs: 'var(--brycks-shadow-xs)',\r\n sm: 'var(--brycks-shadow-sm)',\r\n md: 'var(--brycks-shadow-md)',\r\n lg: 'var(--brycks-shadow-lg)',\r\n xl: 'var(--brycks-shadow-xl)',\r\n '2xl': 'var(--brycks-shadow-2xl)',\r\n}\r\n\r\nexport function buildBoxStyles(props: BoxOwnProps): CSSProperties {\r\n const spacingStyles = buildSpacingStyles(props)\r\n\r\n const styles: CSSProperties = {\r\n ...spacingStyles,\r\n }\r\n\r\n if (props.display) styles.display = props.display\r\n if (props.position) styles.position = props.position\r\n if (props.width) styles.width = props.width\r\n if (props.height) styles.height = props.height\r\n if (props.minWidth) styles.minWidth = props.minWidth\r\n if (props.maxWidth) styles.maxWidth = props.maxWidth\r\n if (props.minHeight) styles.minHeight = props.minHeight\r\n if (props.maxHeight) styles.maxHeight = props.maxHeight\r\n if (props.overflow) styles.overflow = props.overflow\r\n if (props.bg) styles.backgroundColor = props.bg\r\n if (props.radius) styles.borderRadius = radiusMap[props.radius]\r\n if (props.shadow) styles.boxShadow = shadowMap[props.shadow]\r\n\r\n return styles\r\n}\r\n"],"names":["radiusMap","shadowMap","buildBoxStyles","props","styles","buildSpacingStyles"],"mappings":"6HAQMA,EAAgE,CACpE,KAAM,IACN,GAAI,0BACJ,GAAI,0BACJ,GAAI,0BACJ,GAAI,0BACJ,GAAI,0BACJ,MAAO,2BACP,MAAO,2BACP,KAAM,2BACR,EAEMC,EAAgE,CACpE,KAAM,OACN,GAAI,0BACJ,GAAI,0BACJ,GAAI,0BACJ,GAAI,0BACJ,GAAI,0BACJ,MAAO,0BACT,EAEO,SAASC,EAAeC,EAAmC,CAGhE,MAAMC,EAAwB,CAC5B,GAHoBC,EAAAA,mBAAmBF,CAAK,CAGzC,EAGL,OAAIA,EAAM,UAASC,EAAO,QAAUD,EAAM,SACtCA,EAAM,WAAUC,EAAO,SAAWD,EAAM,UACxCA,EAAM,QAAOC,EAAO,MAAQD,EAAM,OAClCA,EAAM,SAAQC,EAAO,OAASD,EAAM,QACpCA,EAAM,WAAUC,EAAO,SAAWD,EAAM,UACxCA,EAAM,WAAUC,EAAO,SAAWD,EAAM,UACxCA,EAAM,YAAWC,EAAO,UAAYD,EAAM,WAC1CA,EAAM,YAAWC,EAAO,UAAYD,EAAM,WAC1CA,EAAM,WAAUC,EAAO,SAAWD,EAAM,UACxCA,EAAM,KAAIC,EAAO,gBAAkBD,EAAM,IACzCA,EAAM,SAAQC,EAAO,aAAeJ,EAAUG,EAAM,MAAM,GAC1DA,EAAM,SAAQC,EAAO,UAAYH,EAAUE,EAAM,MAAM,GAEpDC,CACT"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { buildSpacingStyles as d } from "../../../utils/styles.js";
|
|
2
|
+
const s = {
|
|
3
|
+
none: "0",
|
|
4
|
+
xs: "var(--brycks-radius-xs)",
|
|
5
|
+
sm: "var(--brycks-radius-sm)",
|
|
6
|
+
md: "var(--brycks-radius-md)",
|
|
7
|
+
lg: "var(--brycks-radius-lg)",
|
|
8
|
+
xl: "var(--brycks-radius-xl)",
|
|
9
|
+
"2xl": "var(--brycks-radius-2xl)",
|
|
10
|
+
"3xl": "var(--brycks-radius-3xl)",
|
|
11
|
+
full: "var(--brycks-radius-full)"
|
|
12
|
+
}, t = {
|
|
13
|
+
none: "none",
|
|
14
|
+
xs: "var(--brycks-shadow-xs)",
|
|
15
|
+
sm: "var(--brycks-shadow-sm)",
|
|
16
|
+
md: "var(--brycks-shadow-md)",
|
|
17
|
+
lg: "var(--brycks-shadow-lg)",
|
|
18
|
+
xl: "var(--brycks-shadow-xl)",
|
|
19
|
+
"2xl": "var(--brycks-shadow-2xl)"
|
|
20
|
+
};
|
|
21
|
+
function r(i) {
|
|
22
|
+
const a = {
|
|
23
|
+
...d(i)
|
|
24
|
+
};
|
|
25
|
+
return i.display && (a.display = i.display), i.position && (a.position = i.position), i.width && (a.width = i.width), i.height && (a.height = i.height), i.minWidth && (a.minWidth = i.minWidth), i.maxWidth && (a.maxWidth = i.maxWidth), i.minHeight && (a.minHeight = i.minHeight), i.maxHeight && (a.maxHeight = i.maxHeight), i.overflow && (a.overflow = i.overflow), i.bg && (a.backgroundColor = i.bg), i.radius && (a.borderRadius = s[i.radius]), i.shadow && (a.boxShadow = t[i.shadow]), a;
|
|
26
|
+
}
|
|
27
|
+
export {
|
|
28
|
+
r as buildBoxStyles
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=Box.styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Box.styles.js","sources":["../../../../src/components/layout/Box/Box.styles.ts"],"sourcesContent":["/**\r\n * Box Component Styles\r\n */\r\n\r\nimport type { CSSProperties } from 'react'\r\nimport type { BoxOwnProps } from './Box.types'\r\nimport { buildSpacingStyles } from '../../../utils/styles'\r\n\r\nconst radiusMap: Record<NonNullable<BoxOwnProps['radius']>, string> = {\r\n none: '0',\r\n xs: 'var(--brycks-radius-xs)',\r\n sm: 'var(--brycks-radius-sm)',\r\n md: 'var(--brycks-radius-md)',\r\n lg: 'var(--brycks-radius-lg)',\r\n xl: 'var(--brycks-radius-xl)',\r\n '2xl': 'var(--brycks-radius-2xl)',\r\n '3xl': 'var(--brycks-radius-3xl)',\r\n full: 'var(--brycks-radius-full)',\r\n}\r\n\r\nconst shadowMap: Record<NonNullable<BoxOwnProps['shadow']>, string> = {\r\n none: 'none',\r\n xs: 'var(--brycks-shadow-xs)',\r\n sm: 'var(--brycks-shadow-sm)',\r\n md: 'var(--brycks-shadow-md)',\r\n lg: 'var(--brycks-shadow-lg)',\r\n xl: 'var(--brycks-shadow-xl)',\r\n '2xl': 'var(--brycks-shadow-2xl)',\r\n}\r\n\r\nexport function buildBoxStyles(props: BoxOwnProps): CSSProperties {\r\n const spacingStyles = buildSpacingStyles(props)\r\n\r\n const styles: CSSProperties = {\r\n ...spacingStyles,\r\n }\r\n\r\n if (props.display) styles.display = props.display\r\n if (props.position) styles.position = props.position\r\n if (props.width) styles.width = props.width\r\n if (props.height) styles.height = props.height\r\n if (props.minWidth) styles.minWidth = props.minWidth\r\n if (props.maxWidth) styles.maxWidth = props.maxWidth\r\n if (props.minHeight) styles.minHeight = props.minHeight\r\n if (props.maxHeight) styles.maxHeight = props.maxHeight\r\n if (props.overflow) styles.overflow = props.overflow\r\n if (props.bg) styles.backgroundColor = props.bg\r\n if (props.radius) styles.borderRadius = radiusMap[props.radius]\r\n if (props.shadow) styles.boxShadow = shadowMap[props.shadow]\r\n\r\n return styles\r\n}\r\n"],"names":["radiusMap","shadowMap","buildBoxStyles","props","styles","buildSpacingStyles"],"mappings":";AAQA,MAAMA,IAAgE;AAAA,EACpE,MAAM;AAAA,EACN,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,OAAO;AAAA,EACP,MAAM;AACR,GAEMC,IAAgE;AAAA,EACpE,MAAM;AAAA,EACN,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,OAAO;AACT;AAEO,SAASC,EAAeC,GAAmC;AAGhE,QAAMC,IAAwB;AAAA,IAC5B,GAHoBC,EAAmBF,CAAK;AAAA,EAGzC;AAGL,SAAIA,EAAM,YAASC,EAAO,UAAUD,EAAM,UACtCA,EAAM,aAAUC,EAAO,WAAWD,EAAM,WACxCA,EAAM,UAAOC,EAAO,QAAQD,EAAM,QAClCA,EAAM,WAAQC,EAAO,SAASD,EAAM,SACpCA,EAAM,aAAUC,EAAO,WAAWD,EAAM,WACxCA,EAAM,aAAUC,EAAO,WAAWD,EAAM,WACxCA,EAAM,cAAWC,EAAO,YAAYD,EAAM,YAC1CA,EAAM,cAAWC,EAAO,YAAYD,EAAM,YAC1CA,EAAM,aAAUC,EAAO,WAAWD,EAAM,WACxCA,EAAM,OAAIC,EAAO,kBAAkBD,EAAM,KACzCA,EAAM,WAAQC,EAAO,eAAeJ,EAAUG,EAAM,MAAM,IAC1DA,EAAM,WAAQC,EAAO,YAAYH,EAAUE,EAAM,MAAM,IAEpDC;AACT;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),y=require("react"),b=require("../../../utils/styles.cjs"),C={none:0,sm:12,md:16,lg:24,xl:32},p=y.forwardRef(function({variant:r="elevated",padding:s="md",interactive:a=!1,selected:e=!1,className:t,style:d,children:l,testId:f,...u},x){const v={...(()=>{const o={borderRadius:"var(--brycks-radius-lg)",transition:"transform 150ms ease-out, box-shadow 150ms ease-out, border-color 150ms ease-out"};switch(r){case"elevated":return{...o,backgroundColor:"var(--brycks-background-elevated)",boxShadow:e?"0 0 0 2px var(--brycks-primary-default), var(--brycks-shadow-md)":"var(--brycks-shadow-md)",border:"1px solid var(--brycks-border-subtle)"};case"outline":return{...o,backgroundColor:"var(--brycks-background-default)",border:e?"2px solid var(--brycks-primary-default)":"1px solid var(--brycks-border-default)"};case"filled":return{...o,backgroundColor:"var(--brycks-background-muted)",border:e?"2px solid var(--brycks-primary-default)":"1px solid transparent"};case"ghost":return{...o,backgroundColor:"transparent",border:e?"2px solid var(--brycks-primary-default)":"1px solid transparent"}}})(),padding:C[s],display:"flex",flexDirection:"column",cursor:a?"pointer":void 0,...d};return n.jsx("div",{ref:x,className:b.cx("brycks-card",`brycks-card--${r}`,a&&"brycks-card--interactive",e&&"brycks-card--selected",t),style:v,"data-testid":f,onMouseEnter:a?o=>{const c=o.currentTarget;r==="elevated"?(c.style.boxShadow=e?"0 0 0 2px var(--brycks-primary-default), var(--brycks-shadow-lg)":"var(--brycks-shadow-lg)",c.style.transform="translateY(-2px)"):r!=="ghost"&&(c.style.borderColor="var(--brycks-border-strong)")}:void 0,onMouseLeave:a?o=>{const c=o.currentTarget;r==="elevated"?(c.style.boxShadow=e?"0 0 0 2px var(--brycks-primary-default), var(--brycks-shadow-md)":"var(--brycks-shadow-md)",c.style.transform="translateY(0)"):r!=="ghost"&&(c.style.borderColor=e?"var(--brycks-primary-default)":"var(--brycks-border-default)")}:void 0,...u,children:l})});p.displayName="Card";const m=y.forwardRef(function({divider:r=!1,className:s,style:a,children:e,...t},d){const l={display:"flex",alignItems:"center",justifyContent:"space-between",gap:12,paddingBottom:r?16:0,marginBottom:r?16:12,borderBottom:r?"1px solid var(--brycks-border-muted)":void 0,...a};return n.jsx("div",{ref:d,className:b.cx("brycks-card-header",s),style:l,...t,children:e})});m.displayName="CardHeader";const g=y.forwardRef(function({className:r,style:s,children:a,...e},t){const d={flex:1,...s};return n.jsx("div",{ref:t,className:b.cx("brycks-card-body",r),style:d,...e,children:a})});g.displayName="CardBody";const k=y.forwardRef(function({divider:r=!1,align:s="right",className:a,style:e,children:t,...d},l){const u={display:"flex",alignItems:"center",justifyContent:{left:"flex-start",center:"center",right:"flex-end",between:"space-between"}[s],gap:12,paddingTop:r?16:0,marginTop:r?16:12,borderTop:r?"1px solid var(--brycks-border-muted)":void 0,...e};return n.jsx("div",{ref:l,className:b.cx("brycks-card-footer",a),style:u,...d,children:t})});k.displayName="CardFooter";exports.Card=p;exports.CardBody=g;exports.CardFooter=k;exports.CardHeader=m;
|
|
2
|
+
//# sourceMappingURL=Card.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Card.cjs","sources":["../../../../src/components/layout/Card/Card.tsx"],"sourcesContent":["/**\n * Card Component\n *\n * A flexible card container with optional header, footer, and body sections.\n * Supports different variants and padding sizes.\n */\n\nimport { forwardRef, type CSSProperties, type HTMLAttributes } from 'react'\nimport { cx } from '../../../utils/styles'\n\nexport type CardVariant = 'elevated' | 'outline' | 'filled' | 'ghost'\nexport type CardPadding = 'none' | 'sm' | 'md' | 'lg' | 'xl'\n\nexport interface CardProps extends HTMLAttributes<HTMLDivElement> {\n /** Card variant */\n variant?: CardVariant\n /** Card padding */\n padding?: CardPadding\n /** Whether the card is interactive (adds hover effect) */\n interactive?: boolean\n /** Whether the card is selected */\n selected?: boolean\n /** Custom class name */\n className?: string\n /** Test ID */\n testId?: string\n}\n\nexport interface CardHeaderProps extends HTMLAttributes<HTMLDivElement> {\n /** Whether to show a divider below the header */\n divider?: boolean\n /** Custom class name */\n className?: string\n}\n\nexport interface CardBodyProps extends HTMLAttributes<HTMLDivElement> {\n /** Custom class name */\n className?: string\n}\n\nexport interface CardFooterProps extends HTMLAttributes<HTMLDivElement> {\n /** Whether to show a divider above the footer */\n divider?: boolean\n /** Footer alignment */\n align?: 'left' | 'center' | 'right' | 'between'\n /** Custom class name */\n className?: string\n}\n\nconst paddingMap: Record<CardPadding, number> = {\n none: 0,\n sm: 12,\n md: 16,\n lg: 24,\n xl: 32,\n}\n\nexport const Card = forwardRef<HTMLDivElement, CardProps>(function Card(\n {\n variant = 'elevated',\n padding = 'md',\n interactive = false,\n selected = false,\n className,\n style,\n children,\n testId,\n ...props\n },\n ref\n) {\n const getVariantStyles = (): CSSProperties => {\n const base: CSSProperties = {\n borderRadius: 'var(--brycks-radius-lg)',\n transition: 'transform 150ms ease-out, box-shadow 150ms ease-out, border-color 150ms ease-out',\n }\n\n switch (variant) {\n case 'elevated':\n return {\n ...base,\n backgroundColor: 'var(--brycks-background-elevated)',\n boxShadow: selected\n ? '0 0 0 2px var(--brycks-primary-default), var(--brycks-shadow-md)'\n : 'var(--brycks-shadow-md)',\n border: '1px solid var(--brycks-border-subtle)',\n }\n case 'outline':\n return {\n ...base,\n backgroundColor: 'var(--brycks-background-default)',\n border: selected\n ? '2px solid var(--brycks-primary-default)'\n : '1px solid var(--brycks-border-default)',\n }\n case 'filled':\n return {\n ...base,\n backgroundColor: 'var(--brycks-background-muted)',\n border: selected\n ? '2px solid var(--brycks-primary-default)'\n : '1px solid transparent',\n }\n case 'ghost':\n return {\n ...base,\n backgroundColor: 'transparent',\n border: selected\n ? '2px solid var(--brycks-primary-default)'\n : '1px solid transparent',\n }\n }\n }\n\n const cardStyle: CSSProperties = {\n ...getVariantStyles(),\n padding: paddingMap[padding],\n display: 'flex',\n flexDirection: 'column',\n cursor: interactive ? 'pointer' : undefined,\n ...style,\n }\n\n return (\n <div\n ref={ref}\n className={cx(\n 'brycks-card',\n `brycks-card--${variant}`,\n interactive && 'brycks-card--interactive',\n selected && 'brycks-card--selected',\n className\n )}\n style={cardStyle}\n data-testid={testId}\n onMouseEnter={\n interactive\n ? (e) => {\n const target = e.currentTarget\n if (variant === 'elevated') {\n target.style.boxShadow = selected\n ? '0 0 0 2px var(--brycks-primary-default), var(--brycks-shadow-lg)'\n : 'var(--brycks-shadow-lg)'\n target.style.transform = 'translateY(-2px)'\n } else if (variant !== 'ghost') {\n target.style.borderColor = 'var(--brycks-border-strong)'\n }\n }\n : undefined\n }\n onMouseLeave={\n interactive\n ? (e) => {\n const target = e.currentTarget\n if (variant === 'elevated') {\n target.style.boxShadow = selected\n ? '0 0 0 2px var(--brycks-primary-default), var(--brycks-shadow-md)'\n : 'var(--brycks-shadow-md)'\n target.style.transform = 'translateY(0)'\n } else if (variant !== 'ghost') {\n target.style.borderColor = selected\n ? 'var(--brycks-primary-default)'\n : 'var(--brycks-border-default)'\n }\n }\n : undefined\n }\n {...props}\n >\n {children}\n </div>\n )\n})\n\nCard.displayName = 'Card'\n\nexport const CardHeader = forwardRef<HTMLDivElement, CardHeaderProps>(function CardHeader(\n { divider = false, className, style, children, ...props },\n ref\n) {\n const headerStyle: CSSProperties = {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n gap: 12,\n paddingBottom: divider ? 16 : 0,\n marginBottom: divider ? 16 : 12,\n borderBottom: divider ? '1px solid var(--brycks-border-muted)' : undefined,\n ...style,\n }\n\n return (\n <div ref={ref} className={cx('brycks-card-header', className)} style={headerStyle} {...props}>\n {children}\n </div>\n )\n})\n\nCardHeader.displayName = 'CardHeader'\n\nexport const CardBody = forwardRef<HTMLDivElement, CardBodyProps>(function CardBody(\n { className, style, children, ...props },\n ref\n) {\n const bodyStyle: CSSProperties = {\n flex: 1,\n ...style,\n }\n\n return (\n <div ref={ref} className={cx('brycks-card-body', className)} style={bodyStyle} {...props}>\n {children}\n </div>\n )\n})\n\nCardBody.displayName = 'CardBody'\n\nexport const CardFooter = forwardRef<HTMLDivElement, CardFooterProps>(function CardFooter(\n { divider = false, align = 'right', className, style, children, ...props },\n ref\n) {\n const alignMap: Record<string, CSSProperties['justifyContent']> = {\n left: 'flex-start',\n center: 'center',\n right: 'flex-end',\n between: 'space-between',\n }\n\n const footerStyle: CSSProperties = {\n display: 'flex',\n alignItems: 'center',\n justifyContent: alignMap[align],\n gap: 12,\n paddingTop: divider ? 16 : 0,\n marginTop: divider ? 16 : 12,\n borderTop: divider ? '1px solid var(--brycks-border-muted)' : undefined,\n ...style,\n }\n\n return (\n <div ref={ref} className={cx('brycks-card-footer', className)} style={footerStyle} {...props}>\n {children}\n </div>\n )\n})\n\nCardFooter.displayName = 'CardFooter'\n"],"names":["paddingMap","Card","forwardRef","variant","padding","interactive","selected","className","style","children","testId","props","ref","cardStyle","base","jsx","cx","e","target","CardHeader","divider","headerStyle","CardBody","bodyStyle","CardFooter","align","footerStyle"],"mappings":"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"}
|