@forgedevstack/bear 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +279 -0
- package/dist/components/Accordion/Accordion.cjs +1 -0
- package/dist/components/Accordion/Accordion.d.ts +22 -0
- package/dist/components/Accordion/Accordion.js +79 -0
- package/dist/components/Accordion/Accordion.types.d.ts +32 -0
- package/dist/components/Accordion/index.d.ts +2 -0
- package/dist/components/Alert/Alert.cjs +1 -0
- package/dist/components/Alert/Alert.d.ts +16 -0
- package/dist/components/Alert/Alert.js +109 -0
- package/dist/components/Alert/Alert.types.d.ts +23 -0
- package/dist/components/Alert/index.d.ts +2 -0
- package/dist/components/AppBar/AppBar.cjs +1 -0
- package/dist/components/AppBar/AppBar.d.ts +3 -0
- package/dist/components/AppBar/AppBar.js +49 -0
- package/dist/components/AppBar/AppBar.types.d.ts +12 -0
- package/dist/components/AppBar/index.d.ts +2 -0
- package/dist/components/Autocomplete/Autocomplete.cjs +1 -0
- package/dist/components/Autocomplete/Autocomplete.d.ts +17 -0
- package/dist/components/Autocomplete/Autocomplete.js +137 -0
- package/dist/components/Autocomplete/Autocomplete.types.d.ts +36 -0
- package/dist/components/Autocomplete/index.d.ts +2 -0
- package/dist/components/Avatar/Avatar.cjs +1 -0
- package/dist/components/Avatar/Avatar.d.ts +16 -0
- package/dist/components/Avatar/Avatar.js +102 -0
- package/dist/components/Avatar/Avatar.types.d.ts +31 -0
- package/dist/components/Avatar/index.d.ts +2 -0
- package/dist/components/Badge/Badge.cjs +1 -0
- package/dist/components/Badge/Badge.d.ts +13 -0
- package/dist/components/Badge/Badge.js +67 -0
- package/dist/components/Badge/Badge.types.d.ts +14 -0
- package/dist/components/Badge/index.d.ts +2 -0
- package/dist/components/BearLoader/BearLoader.cjs +40 -0
- package/dist/components/BearLoader/BearLoader.d.ts +14 -0
- package/dist/components/BearLoader/BearLoader.js +183 -0
- package/dist/components/BearLoader/BearLoader.types.d.ts +16 -0
- package/dist/components/BearLoader/index.d.ts +2 -0
- package/dist/components/BearLogo/BearLogo.cjs +1 -0
- package/dist/components/BearLogo/BearLogo.d.ts +18 -0
- package/dist/components/BearLogo/BearLogo.js +134 -0
- package/dist/components/BearLogo/EmberLogo.d.ts +14 -0
- package/dist/components/BearLogo/index.d.ts +2 -0
- package/dist/components/BottomNavigation/BottomNavigation.cjs +1 -0
- package/dist/components/BottomNavigation/BottomNavigation.d.ts +3 -0
- package/dist/components/BottomNavigation/BottomNavigation.js +49 -0
- package/dist/components/BottomNavigation/BottomNavigation.types.d.ts +16 -0
- package/dist/components/BottomNavigation/index.d.ts +2 -0
- package/dist/components/Breadcrumbs/Breadcrumbs.cjs +1 -0
- package/dist/components/Breadcrumbs/Breadcrumbs.d.ts +3 -0
- package/dist/components/Breadcrumbs/Breadcrumbs.js +41 -0
- package/dist/components/Breadcrumbs/Breadcrumbs.types.d.ts +17 -0
- package/dist/components/Breadcrumbs/index.d.ts +2 -0
- package/dist/components/Button/Button.cjs +57 -0
- package/dist/components/Button/Button.d.ts +20 -0
- package/dist/components/Button/Button.js +125 -0
- package/dist/components/Button/Button.types.d.ts +18 -0
- package/dist/components/Button/index.d.ts +2 -0
- package/dist/components/ButtonGroup/ButtonGroup.cjs +1 -0
- package/dist/components/ButtonGroup/ButtonGroup.d.ts +16 -0
- package/dist/components/ButtonGroup/ButtonGroup.js +51 -0
- package/dist/components/ButtonGroup/ButtonGroup.types.d.ts +18 -0
- package/dist/components/ButtonGroup/index.d.ts +2 -0
- package/dist/components/Card/Card.cjs +1 -0
- package/dist/components/Card/Card.d.ts +31 -0
- package/dist/components/Card/Card.js +113 -0
- package/dist/components/Card/Card.types.d.ts +28 -0
- package/dist/components/Card/index.d.ts +2 -0
- package/dist/components/Carousel/Carousel.cjs +1 -0
- package/dist/components/Carousel/Carousel.d.ts +15 -0
- package/dist/components/Carousel/Carousel.js +122 -0
- package/dist/components/Carousel/Carousel.types.d.ts +25 -0
- package/dist/components/Carousel/index.d.ts +2 -0
- package/dist/components/Checkbox/Checkbox.cjs +1 -0
- package/dist/components/Checkbox/Checkbox.d.ts +13 -0
- package/dist/components/Checkbox/Checkbox.js +139 -0
- package/dist/components/Checkbox/Checkbox.types.d.ts +28 -0
- package/dist/components/Checkbox/index.d.ts +2 -0
- package/dist/components/Chip/Chip.cjs +1 -0
- package/dist/components/Chip/Chip.d.ts +3 -0
- package/dist/components/Chip/Chip.js +85 -0
- package/dist/components/Chip/Chip.types.d.ts +13 -0
- package/dist/components/Chip/index.d.ts +2 -0
- package/dist/components/Collapsible/Collapsible.cjs +1 -0
- package/dist/components/Collapsible/Collapsible.d.ts +3 -0
- package/dist/components/Collapsible/Collapsible.js +59 -0
- package/dist/components/Collapsible/Collapsible.types.d.ts +13 -0
- package/dist/components/Collapsible/index.d.ts +2 -0
- package/dist/components/ColorPicker/ColorPicker.cjs +1 -0
- package/dist/components/ColorPicker/ColorPicker.d.ts +3 -0
- package/dist/components/ColorPicker/ColorPicker.js +113 -0
- package/dist/components/ColorPicker/ColorPicker.types.d.ts +11 -0
- package/dist/components/ColorPicker/index.d.ts +2 -0
- package/dist/components/Container/Container.cjs +1 -0
- package/dist/components/Container/Container.d.ts +12 -0
- package/dist/components/Container/Container.js +40 -0
- package/dist/components/Container/Container.types.d.ts +12 -0
- package/dist/components/Container/index.d.ts +2 -0
- package/dist/components/CopyButton/CopyButton.cjs +1 -0
- package/dist/components/CopyButton/CopyButton.d.ts +3 -0
- package/dist/components/CopyButton/CopyButton.js +52 -0
- package/dist/components/CopyButton/CopyButton.types.d.ts +13 -0
- package/dist/components/CopyButton/index.d.ts +2 -0
- package/dist/components/DataTable/DataTable.cjs +1 -0
- package/dist/components/DataTable/DataTable.d.ts +22 -0
- package/dist/components/DataTable/DataTable.js +120 -0
- package/dist/components/DataTable/DataTable.types.d.ts +53 -0
- package/dist/components/DataTable/index.d.ts +2 -0
- package/dist/components/DatePicker/DatePicker.cjs +1 -0
- package/dist/components/DatePicker/DatePicker.d.ts +3 -0
- package/dist/components/DatePicker/DatePicker.js +111 -0
- package/dist/components/DatePicker/DatePicker.types.d.ts +25 -0
- package/dist/components/DatePicker/index.d.ts +2 -0
- package/dist/components/Divider/Divider.cjs +1 -0
- package/dist/components/Divider/Divider.d.ts +22 -0
- package/dist/components/Divider/Divider.js +99 -0
- package/dist/components/Divider/Divider.types.d.ts +19 -0
- package/dist/components/Divider/index.d.ts +2 -0
- package/dist/components/Drawer/Drawer.cjs +1 -0
- package/dist/components/Drawer/Drawer.d.ts +3 -0
- package/dist/components/Drawer/Drawer.js +113 -0
- package/dist/components/Drawer/Drawer.types.d.ts +23 -0
- package/dist/components/Drawer/index.d.ts +2 -0
- package/dist/components/Dropdown/Dropdown.cjs +1 -0
- package/dist/components/Dropdown/Dropdown.d.ts +19 -0
- package/dist/components/Dropdown/Dropdown.js +171 -0
- package/dist/components/Dropdown/Dropdown.types.d.ts +56 -0
- package/dist/components/Dropdown/index.d.ts +2 -0
- package/dist/components/EmptyState/EmptyState.cjs +1 -0
- package/dist/components/EmptyState/EmptyState.d.ts +3 -0
- package/dist/components/EmptyState/EmptyState.js +35 -0
- package/dist/components/EmptyState/EmptyState.types.d.ts +11 -0
- package/dist/components/EmptyState/index.d.ts +2 -0
- package/dist/components/Fab/Fab.cjs +1 -0
- package/dist/components/Fab/Fab.d.ts +17 -0
- package/dist/components/Fab/Fab.js +70 -0
- package/dist/components/Fab/Fab.types.d.ts +24 -0
- package/dist/components/Fab/index.d.ts +2 -0
- package/dist/components/FileUpload/FileUpload.cjs +1 -0
- package/dist/components/FileUpload/FileUpload.d.ts +3 -0
- package/dist/components/FileUpload/FileUpload.js +112 -0
- package/dist/components/FileUpload/FileUpload.types.d.ts +25 -0
- package/dist/components/FileUpload/index.d.ts +2 -0
- package/dist/components/Flex/Flex.cjs +1 -0
- package/dist/components/Flex/Flex.d.ts +13 -0
- package/dist/components/Flex/Flex.js +79 -0
- package/dist/components/Flex/Flex.types.d.ts +23 -0
- package/dist/components/Flex/index.d.ts +2 -0
- package/dist/components/Grid/Grid.cjs +1 -0
- package/dist/components/Grid/Grid.d.ts +20 -0
- package/dist/components/Grid/Grid.js +99 -0
- package/dist/components/Grid/Grid.types.d.ts +29 -0
- package/dist/components/Grid/index.d.ts +2 -0
- package/dist/components/Icon/Icon.cjs +1 -0
- package/dist/components/Icon/Icon.d.ts +39 -0
- package/dist/components/Icon/Icon.js +44 -0
- package/dist/components/Icon/Icon.types.d.ts +16 -0
- package/dist/components/Icon/icons/action.cjs +1 -0
- package/dist/components/Icon/icons/action.d.ts +85 -0
- package/dist/components/Icon/icons/action.js +351 -0
- package/dist/components/Icon/icons/communication.cjs +1 -0
- package/dist/components/Icon/icons/communication.d.ts +48 -0
- package/dist/components/Icon/icons/communication.js +184 -0
- package/dist/components/Icon/icons/content.cjs +1 -0
- package/dist/components/Icon/icons/content.d.ts +53 -0
- package/dist/components/Icon/icons/content.js +231 -0
- package/dist/components/Icon/icons/editor.cjs +1 -0
- package/dist/components/Icon/icons/editor.d.ts +53 -0
- package/dist/components/Icon/icons/editor.js +280 -0
- package/dist/components/Icon/icons/index.d.ts +9 -0
- package/dist/components/Icon/icons/media.cjs +1 -0
- package/dist/components/Icon/icons/media.d.ts +64 -0
- package/dist/components/Icon/icons/media.js +306 -0
- package/dist/components/Icon/icons/misc.cjs +1 -0
- package/dist/components/Icon/icons/misc.d.ts +80 -0
- package/dist/components/Icon/icons/misc.js +367 -0
- package/dist/components/Icon/icons/navigation.cjs +1 -0
- package/dist/components/Icon/icons/navigation.d.ts +56 -0
- package/dist/components/Icon/icons/navigation.js +215 -0
- package/dist/components/Icon/icons/status.cjs +1 -0
- package/dist/components/Icon/icons/status.d.ts +61 -0
- package/dist/components/Icon/icons/status.js +271 -0
- package/dist/components/Icon/index.cjs +1 -0
- package/dist/components/Icon/index.d.ts +506 -0
- package/dist/components/Icon/index.js +38 -0
- package/dist/components/Image/Image.cjs +1 -0
- package/dist/components/Image/Image.d.ts +3 -0
- package/dist/components/Image/Image.js +99 -0
- package/dist/components/Image/Image.types.d.ts +16 -0
- package/dist/components/Image/index.d.ts +2 -0
- package/dist/components/Input/Input.cjs +1 -0
- package/dist/components/Input/Input.d.ts +3 -0
- package/dist/components/Input/Input.js +64 -0
- package/dist/components/Input/Input.types.d.ts +17 -0
- package/dist/components/Input/index.d.ts +2 -0
- package/dist/components/Kbd/Kbd.cjs +1 -0
- package/dist/components/Kbd/Kbd.d.ts +3 -0
- package/dist/components/Kbd/Kbd.js +58 -0
- package/dist/components/Kbd/Kbd.types.d.ts +8 -0
- package/dist/components/Kbd/index.d.ts +2 -0
- package/dist/components/Link/Link.cjs +1 -0
- package/dist/components/Link/Link.d.ts +13 -0
- package/dist/components/Link/Link.js +81 -0
- package/dist/components/Link/Link.types.d.ts +18 -0
- package/dist/components/Link/index.d.ts +2 -0
- package/dist/components/List/List.cjs +1 -0
- package/dist/components/List/List.d.ts +35 -0
- package/dist/components/List/List.js +204 -0
- package/dist/components/List/List.types.d.ts +72 -0
- package/dist/components/List/index.d.ts +2 -0
- package/dist/components/Menu/Menu.cjs +1 -0
- package/dist/components/Menu/Menu.d.ts +29 -0
- package/dist/components/Menu/Menu.js +111 -0
- package/dist/components/Menu/Menu.types.d.ts +39 -0
- package/dist/components/Menu/index.d.ts +2 -0
- package/dist/components/Modal/Modal.cjs +1 -0
- package/dist/components/Modal/Modal.d.ts +3 -0
- package/dist/components/Modal/Modal.js +86 -0
- package/dist/components/Modal/Modal.types.d.ts +23 -0
- package/dist/components/Modal/index.d.ts +2 -0
- package/dist/components/MultiSelect/MultiSelect.cjs +1 -0
- package/dist/components/MultiSelect/MultiSelect.d.ts +20 -0
- package/dist/components/MultiSelect/MultiSelect.js +140 -0
- package/dist/components/MultiSelect/MultiSelect.types.d.ts +33 -0
- package/dist/components/MultiSelect/index.d.ts +2 -0
- package/dist/components/NumberInput/NumberInput.cjs +1 -0
- package/dist/components/NumberInput/NumberInput.d.ts +3 -0
- package/dist/components/NumberInput/NumberInput.js +109 -0
- package/dist/components/NumberInput/NumberInput.types.d.ts +18 -0
- package/dist/components/NumberInput/index.d.ts +2 -0
- package/dist/components/OTPInput/OTPInput.cjs +1 -0
- package/dist/components/OTPInput/OTPInput.d.ts +3 -0
- package/dist/components/OTPInput/OTPInput.js +83 -0
- package/dist/components/OTPInput/OTPInput.types.d.ts +13 -0
- package/dist/components/OTPInput/index.d.ts +2 -0
- package/dist/components/Pagination/Pagination.cjs +1 -0
- package/dist/components/Pagination/Pagination.d.ts +13 -0
- package/dist/components/Pagination/Pagination.js +156 -0
- package/dist/components/Pagination/Pagination.types.d.ts +34 -0
- package/dist/components/Pagination/index.d.ts +2 -0
- package/dist/components/Paper/Paper.cjs +1 -0
- package/dist/components/Paper/Paper.d.ts +17 -0
- package/dist/components/Paper/Paper.js +67 -0
- package/dist/components/Paper/Paper.types.d.ts +19 -0
- package/dist/components/Paper/index.d.ts +2 -0
- package/dist/components/Popover/Popover.cjs +1 -0
- package/dist/components/Popover/Popover.d.ts +3 -0
- package/dist/components/Popover/Popover.js +93 -0
- package/dist/components/Popover/Popover.types.d.ts +16 -0
- package/dist/components/Popover/index.d.ts +2 -0
- package/dist/components/Progress/Progress.cjs +1 -0
- package/dist/components/Progress/Progress.d.ts +13 -0
- package/dist/components/Progress/Progress.js +74 -0
- package/dist/components/Progress/Progress.types.d.ts +24 -0
- package/dist/components/Progress/index.d.ts +2 -0
- package/dist/components/Radio/Radio.cjs +1 -0
- package/dist/components/Radio/Radio.d.ts +11 -0
- package/dist/components/Radio/Radio.js +172 -0
- package/dist/components/Radio/Radio.types.d.ts +52 -0
- package/dist/components/Radio/index.d.ts +2 -0
- package/dist/components/Rating/Rating.cjs +1 -0
- package/dist/components/Rating/Rating.d.ts +19 -0
- package/dist/components/Rating/Rating.js +99 -0
- package/dist/components/Rating/Rating.types.d.ts +38 -0
- package/dist/components/Rating/index.d.ts +2 -0
- package/dist/components/ScrollArea/ScrollArea.cjs +1 -0
- package/dist/components/ScrollArea/ScrollArea.d.ts +3 -0
- package/dist/components/ScrollArea/ScrollArea.js +44 -0
- package/dist/components/ScrollArea/ScrollArea.types.d.ts +10 -0
- package/dist/components/ScrollArea/index.d.ts +2 -0
- package/dist/components/Select/Select.cjs +1 -0
- package/dist/components/Select/Select.d.ts +3 -0
- package/dist/components/Select/Select.js +105 -0
- package/dist/components/Select/Select.types.d.ts +27 -0
- package/dist/components/Select/index.d.ts +2 -0
- package/dist/components/Skeleton/Skeleton.cjs +1 -0
- package/dist/components/Skeleton/Skeleton.d.ts +27 -0
- package/dist/components/Skeleton/Skeleton.js +116 -0
- package/dist/components/Skeleton/Skeleton.types.d.ts +21 -0
- package/dist/components/Skeleton/index.d.ts +2 -0
- package/dist/components/Slider/Slider.cjs +1 -0
- package/dist/components/Slider/Slider.d.ts +14 -0
- package/dist/components/Slider/Slider.js +191 -0
- package/dist/components/Slider/Slider.types.d.ts +41 -0
- package/dist/components/Slider/index.d.ts +2 -0
- package/dist/components/SpeedDial/SpeedDial.cjs +1 -0
- package/dist/components/SpeedDial/SpeedDial.d.ts +20 -0
- package/dist/components/SpeedDial/SpeedDial.js +150 -0
- package/dist/components/SpeedDial/SpeedDial.types.d.ts +48 -0
- package/dist/components/SpeedDial/index.d.ts +2 -0
- package/dist/components/Spinner/Spinner.cjs +1 -0
- package/dist/components/Spinner/Spinner.d.ts +12 -0
- package/dist/components/Spinner/Spinner.js +51 -0
- package/dist/components/Spinner/Spinner.types.d.ts +11 -0
- package/dist/components/Spinner/index.d.ts +2 -0
- package/dist/components/Statistic/Statistic.cjs +1 -0
- package/dist/components/Statistic/Statistic.d.ts +3 -0
- package/dist/components/Statistic/Statistic.js +55 -0
- package/dist/components/Statistic/Statistic.types.d.ts +18 -0
- package/dist/components/Statistic/index.d.ts +2 -0
- package/dist/components/Stepper/Stepper.cjs +1 -0
- package/dist/components/Stepper/Stepper.d.ts +3 -0
- package/dist/components/Stepper/Stepper.js +100 -0
- package/dist/components/Stepper/Stepper.types.d.ts +20 -0
- package/dist/components/Stepper/index.d.ts +2 -0
- package/dist/components/Switch/Switch.cjs +1 -0
- package/dist/components/Switch/Switch.d.ts +3 -0
- package/dist/components/Switch/Switch.js +81 -0
- package/dist/components/Switch/Switch.types.d.ts +13 -0
- package/dist/components/Switch/index.d.ts +2 -0
- package/dist/components/Tabs/Tabs.cjs +1 -0
- package/dist/components/Tabs/Tabs.d.ts +30 -0
- package/dist/components/Tabs/Tabs.js +80 -0
- package/dist/components/Tabs/Tabs.types.d.ts +44 -0
- package/dist/components/Tabs/index.d.ts +2 -0
- package/dist/components/TimePicker/TimePicker.cjs +1 -0
- package/dist/components/TimePicker/TimePicker.d.ts +3 -0
- package/dist/components/TimePicker/TimePicker.js +124 -0
- package/dist/components/TimePicker/TimePicker.types.d.ts +17 -0
- package/dist/components/TimePicker/index.d.ts +2 -0
- package/dist/components/Timeline/Timeline.cjs +1 -0
- package/dist/components/Timeline/Timeline.d.ts +3 -0
- package/dist/components/Timeline/Timeline.js +71 -0
- package/dist/components/Timeline/Timeline.types.d.ts +18 -0
- package/dist/components/Timeline/index.d.ts +2 -0
- package/dist/components/Toast/Toast.cjs +1 -0
- package/dist/components/Toast/Toast.d.ts +9 -0
- package/dist/components/Toast/Toast.js +158 -0
- package/dist/components/Toast/Toast.types.d.ts +49 -0
- package/dist/components/Toast/index.d.ts +2 -0
- package/dist/components/Tooltip/Tooltip.cjs +1 -0
- package/dist/components/Tooltip/Tooltip.d.ts +3 -0
- package/dist/components/Tooltip/Tooltip.js +86 -0
- package/dist/components/Tooltip/Tooltip.types.d.ts +17 -0
- package/dist/components/Tooltip/index.d.ts +2 -0
- package/dist/components/TransferList/TransferList.cjs +1 -0
- package/dist/components/TransferList/TransferList.d.ts +21 -0
- package/dist/components/TransferList/TransferList.js +210 -0
- package/dist/components/TransferList/TransferList.types.d.ts +45 -0
- package/dist/components/TransferList/index.d.ts +2 -0
- package/dist/components/TreeView/TreeView.cjs +1 -0
- package/dist/components/TreeView/TreeView.d.ts +3 -0
- package/dist/components/TreeView/TreeView.js +76 -0
- package/dist/components/TreeView/TreeView.types.d.ts +25 -0
- package/dist/components/TreeView/index.d.ts +2 -0
- package/dist/components/Typography/Typography.cjs +1 -0
- package/dist/components/Typography/Typography.d.ts +14 -0
- package/dist/components/Typography/Typography.js +114 -0
- package/dist/components/Typography/Typography.types.d.ts +37 -0
- package/dist/components/Typography/index.d.ts +2 -0
- package/dist/components/index.cjs +1 -0
- package/dist/components/index.d.ts +132 -0
- package/dist/components/index.js +171 -0
- package/dist/context/BearProvider.cjs +1 -0
- package/dist/context/BearProvider.d.ts +59 -0
- package/dist/context/BearProvider.js +67 -0
- package/dist/context/defaultTheme.cjs +1 -0
- package/dist/context/defaultTheme.d.ts +9 -0
- package/dist/context/defaultTheme.js +215 -0
- package/dist/context/index.cjs +1 -0
- package/dist/context/index.d.ts +2 -0
- package/dist/context/index.js +10 -0
- package/dist/hooks/index.cjs +1 -0
- package/dist/hooks/index.d.ts +3 -0
- package/dist/hooks/index.js +13 -0
- package/dist/hooks/useClickOutside.cjs +1 -0
- package/dist/hooks/useClickOutside.d.ts +13 -0
- package/dist/hooks/useClickOutside.js +15 -0
- package/dist/hooks/useDisclosure.cjs +1 -0
- package/dist/hooks/useDisclosure.d.ts +26 -0
- package/dist/hooks/useDisclosure.js +14 -0
- package/dist/hooks/useMediaQuery.cjs +1 -0
- package/dist/hooks/useMediaQuery.d.ts +15 -0
- package/dist/hooks/useMediaQuery.js +21 -0
- package/dist/index.cjs +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.js +195 -0
- package/dist/types/component.types.d.ts +39 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/theme.types.d.ts +126 -0
- package/dist/utils/cn.cjs +1 -0
- package/dist/utils/cn.d.ts +17 -0
- package/dist/utils/cn.js +19 -0
- package/dist/utils/deepMerge.cjs +1 -0
- package/dist/utils/deepMerge.d.ts +9 -0
- package/dist/utils/deepMerge.js +13 -0
- package/dist/utils/index.cjs +1 -0
- package/dist/utils/index.d.ts +2 -0
- package/dist/utils/index.js +7 -0
- package/package.json +108 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const S=require("react/jsx-runtime"),p=require("react"),f=require("../../utils/cn.cjs"),y={0:"",1:"ember-shadow-sm",2:"ember-shadow",3:"ember-shadow-md",4:"ember-shadow-lg",5:"ember-shadow-xl"},w={none:"ember-rounded-none",sm:"ember-rounded-sm",md:"ember-rounded-md",lg:"ember-rounded-lg",xl:"ember-rounded-xl",full:"ember-rounded-full"},A={none:"",sm:"ember-p-2",md:"ember-p-4",lg:"ember-p-6"},m={default:"ember-bg-white dark:ember-bg-gray-900",paper:"ember-bg-gray-50 dark:ember-bg-gray-800",transparent:"ember-bg-transparent"},o=p.forwardRef(({elevation:n=1,rounded:a="md",variant:r="elevation",fullWidth:s=!1,padding:t="none",background:e="default",children:b,className:l,style:u,testId:g,...c},i)=>{const d=e&&!m[e];return S.jsx("div",{ref:i,className:f.cn(w[a],A[t],!d&&m[e],r==="elevation"&&y[n],r==="outlined"&&"ember-border ember-border-gray-200 dark:ember-border-gray-700",s&&"ember-w-full",l),style:{...u,...d&&{backgroundColor:e}},"data-testid":g,...c,children:b})});o.displayName="Paper";exports.Paper=o;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { PaperProps } from './Paper.types';
|
|
2
|
+
/**
|
|
3
|
+
* Paper component as a surface container
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```tsx
|
|
7
|
+
* <Paper elevation={2} padding="md">
|
|
8
|
+
* Content goes here
|
|
9
|
+
* </Paper>
|
|
10
|
+
*
|
|
11
|
+
* <Paper variant="outlined" rounded="lg">
|
|
12
|
+
* Outlined paper
|
|
13
|
+
* </Paper>
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export declare const Paper: import('react').ForwardRefExoticComponent<PaperProps & import('react').RefAttributes<HTMLDivElement>>;
|
|
17
|
+
export default Paper;
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { jsx as S } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as f } from "react";
|
|
3
|
+
import { cn as i } from "../../utils/cn.js";
|
|
4
|
+
const w = {
|
|
5
|
+
0: "",
|
|
6
|
+
1: "ember-shadow-sm",
|
|
7
|
+
2: "ember-shadow",
|
|
8
|
+
3: "ember-shadow-md",
|
|
9
|
+
4: "ember-shadow-lg",
|
|
10
|
+
5: "ember-shadow-xl"
|
|
11
|
+
}, c = {
|
|
12
|
+
none: "ember-rounded-none",
|
|
13
|
+
sm: "ember-rounded-sm",
|
|
14
|
+
md: "ember-rounded-md",
|
|
15
|
+
lg: "ember-rounded-lg",
|
|
16
|
+
xl: "ember-rounded-xl",
|
|
17
|
+
full: "ember-rounded-full"
|
|
18
|
+
}, y = {
|
|
19
|
+
none: "",
|
|
20
|
+
sm: "ember-p-2",
|
|
21
|
+
md: "ember-p-4",
|
|
22
|
+
lg: "ember-p-6"
|
|
23
|
+
}, o = {
|
|
24
|
+
default: "ember-bg-white dark:ember-bg-gray-900",
|
|
25
|
+
paper: "ember-bg-gray-50 dark:ember-bg-gray-800",
|
|
26
|
+
transparent: "ember-bg-transparent"
|
|
27
|
+
}, A = f(({
|
|
28
|
+
elevation: d = 1,
|
|
29
|
+
rounded: a = "md",
|
|
30
|
+
variant: r = "elevation",
|
|
31
|
+
fullWidth: b = !1,
|
|
32
|
+
padding: n = "none",
|
|
33
|
+
background: e = "default",
|
|
34
|
+
children: s,
|
|
35
|
+
className: t,
|
|
36
|
+
style: l,
|
|
37
|
+
testId: p,
|
|
38
|
+
...g
|
|
39
|
+
}, u) => {
|
|
40
|
+
const m = e && !o[e];
|
|
41
|
+
return /* @__PURE__ */ S(
|
|
42
|
+
"div",
|
|
43
|
+
{
|
|
44
|
+
ref: u,
|
|
45
|
+
className: i(
|
|
46
|
+
c[a],
|
|
47
|
+
y[n],
|
|
48
|
+
!m && o[e],
|
|
49
|
+
r === "elevation" && w[d],
|
|
50
|
+
r === "outlined" && "ember-border ember-border-gray-200 dark:ember-border-gray-700",
|
|
51
|
+
b && "ember-w-full",
|
|
52
|
+
t
|
|
53
|
+
),
|
|
54
|
+
style: {
|
|
55
|
+
...l,
|
|
56
|
+
...m && { backgroundColor: e }
|
|
57
|
+
},
|
|
58
|
+
"data-testid": p,
|
|
59
|
+
...g,
|
|
60
|
+
children: s
|
|
61
|
+
}
|
|
62
|
+
);
|
|
63
|
+
});
|
|
64
|
+
A.displayName = "Paper";
|
|
65
|
+
export {
|
|
66
|
+
A as Paper
|
|
67
|
+
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { HTMLAttributes, ReactNode } from 'react';
|
|
2
|
+
export interface PaperProps extends HTMLAttributes<HTMLDivElement> {
|
|
3
|
+
/** Elevation level (shadow depth) */
|
|
4
|
+
elevation?: 0 | 1 | 2 | 3 | 4 | 5;
|
|
5
|
+
/** Border radius variant */
|
|
6
|
+
rounded?: 'none' | 'sm' | 'md' | 'lg' | 'xl' | 'full';
|
|
7
|
+
/** Paper variant */
|
|
8
|
+
variant?: 'elevation' | 'outlined';
|
|
9
|
+
/** Whether paper should fill parent width */
|
|
10
|
+
fullWidth?: boolean;
|
|
11
|
+
/** Padding size */
|
|
12
|
+
padding?: 'none' | 'sm' | 'md' | 'lg';
|
|
13
|
+
/** Background color */
|
|
14
|
+
background?: 'default' | 'paper' | 'transparent' | string;
|
|
15
|
+
/** Content */
|
|
16
|
+
children?: ReactNode;
|
|
17
|
+
/** Test ID */
|
|
18
|
+
testId?: string;
|
|
19
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),a=require("react"),u=require("../../utils/cn.cjs"),S=({children:p,content:v,placement:b="bottom",trigger:l="click",open:c,onOpenChange:o,className:h,contentClassName:y,arrow:x=!0,closeOnClickOutside:f=!0,closeOnEscape:d=!0,offset:m=8})=>{const[g,k]=a.useState(!1),s=a.useRef(null),E=a.useRef(null),t=c!==void 0?c:g,r=a.useCallback(e=>{k(e),o==null||o(e)},[o]);a.useEffect(()=>{if(!f)return;const e=i=>{s.current&&!s.current.contains(i.target)&&r(!1)};return t&&document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[t,f,r]),a.useEffect(()=>{if(!d)return;const e=i=>{i.key==="Escape"&&r(!1)};return t&&document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)},[t,d,r]);const w=()=>{l==="click"&&r(!t)},z=()=>{l==="hover"&&r(!0)},j=()=>{l==="hover"&&r(!1)},L={top:"bear-bottom-full bear-left-1/2 -bear-translate-x-1/2 bear-mb-2","top-start":"bear-bottom-full bear-left-0 bear-mb-2","top-end":"bear-bottom-full bear-right-0 bear-mb-2",bottom:"bear-top-full bear-left-1/2 -bear-translate-x-1/2 bear-mt-2","bottom-start":"bear-top-full bear-left-0 bear-mt-2","bottom-end":"bear-top-full bear-right-0 bear-mt-2",left:"bear-right-full bear-top-1/2 -bear-translate-y-1/2 bear-mr-2","left-start":"bear-right-full bear-top-0 bear-mr-2","left-end":"bear-right-full bear-bottom-0 bear-mr-2",right:"bear-left-full bear-top-1/2 -bear-translate-y-1/2 bear-ml-2","right-start":"bear-left-full bear-top-0 bear-ml-2","right-end":"bear-left-full bear-bottom-0 bear-ml-2"},R={top:"bear-top-full bear-left-1/2 -bear-translate-x-1/2 bear-border-t-zinc-700 bear-border-x-transparent bear-border-b-transparent",bottom:"bear-bottom-full bear-left-1/2 -bear-translate-x-1/2 bear-border-b-zinc-700 bear-border-x-transparent bear-border-t-transparent",left:"bear-left-full bear-top-1/2 -bear-translate-y-1/2 bear-border-l-zinc-700 bear-border-y-transparent bear-border-r-transparent",right:"bear-right-full bear-top-1/2 -bear-translate-y-1/2 bear-border-r-zinc-700 bear-border-y-transparent bear-border-l-transparent"},M=b.split("-")[0];return n.jsxs("div",{ref:s,className:u.cn("bear-relative bear-inline-block",h),onMouseEnter:z,onMouseLeave:j,children:[n.jsx("div",{onClick:w,className:"bear-cursor-pointer",children:p}),t&&n.jsxs("div",{ref:E,className:u.cn("bear-absolute bear-z-50 bear-bg-zinc-800 bear-border bear-border-zinc-700 bear-rounded-lg bear-shadow-xl bear-p-3",L[b],y),style:{marginTop:b.startsWith("bottom")?m:void 0,marginBottom:b.startsWith("top")?m:void 0},children:[v,x&&n.jsx("div",{className:u.cn("bear-absolute bear-w-0 bear-h-0 bear-border-8",R[M])})]})]})};exports.Popover=S;
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { jsxs as c, jsx as m } from "react/jsx-runtime";
|
|
2
|
+
import { useState as I, useRef as p, useCallback as T, useEffect as h } from "react";
|
|
3
|
+
import { cn as s } from "../../utils/cn.js";
|
|
4
|
+
const P = ({
|
|
5
|
+
children: v,
|
|
6
|
+
content: y,
|
|
7
|
+
placement: a = "bottom",
|
|
8
|
+
trigger: o = "click",
|
|
9
|
+
open: i,
|
|
10
|
+
onOpenChange: b,
|
|
11
|
+
className: x,
|
|
12
|
+
contentClassName: k,
|
|
13
|
+
arrow: g = !0,
|
|
14
|
+
closeOnClickOutside: f = !0,
|
|
15
|
+
closeOnEscape: d = !0,
|
|
16
|
+
offset: u = 8
|
|
17
|
+
}) => {
|
|
18
|
+
const [w, E] = I(!1), l = p(null), z = p(null), t = i !== void 0 ? i : w, r = T((e) => {
|
|
19
|
+
E(e), b == null || b(e);
|
|
20
|
+
}, [b]);
|
|
21
|
+
h(() => {
|
|
22
|
+
if (!f) return;
|
|
23
|
+
const e = (n) => {
|
|
24
|
+
l.current && !l.current.contains(n.target) && r(!1);
|
|
25
|
+
};
|
|
26
|
+
return t && document.addEventListener("mousedown", e), () => document.removeEventListener("mousedown", e);
|
|
27
|
+
}, [t, f, r]), h(() => {
|
|
28
|
+
if (!d) return;
|
|
29
|
+
const e = (n) => {
|
|
30
|
+
n.key === "Escape" && r(!1);
|
|
31
|
+
};
|
|
32
|
+
return t && document.addEventListener("keydown", e), () => document.removeEventListener("keydown", e);
|
|
33
|
+
}, [t, d, r]);
|
|
34
|
+
const L = () => {
|
|
35
|
+
o === "click" && r(!t);
|
|
36
|
+
}, M = () => {
|
|
37
|
+
o === "hover" && r(!0);
|
|
38
|
+
}, N = () => {
|
|
39
|
+
o === "hover" && r(!1);
|
|
40
|
+
}, R = {
|
|
41
|
+
top: "bear-bottom-full bear-left-1/2 -bear-translate-x-1/2 bear-mb-2",
|
|
42
|
+
"top-start": "bear-bottom-full bear-left-0 bear-mb-2",
|
|
43
|
+
"top-end": "bear-bottom-full bear-right-0 bear-mb-2",
|
|
44
|
+
bottom: "bear-top-full bear-left-1/2 -bear-translate-x-1/2 bear-mt-2",
|
|
45
|
+
"bottom-start": "bear-top-full bear-left-0 bear-mt-2",
|
|
46
|
+
"bottom-end": "bear-top-full bear-right-0 bear-mt-2",
|
|
47
|
+
left: "bear-right-full bear-top-1/2 -bear-translate-y-1/2 bear-mr-2",
|
|
48
|
+
"left-start": "bear-right-full bear-top-0 bear-mr-2",
|
|
49
|
+
"left-end": "bear-right-full bear-bottom-0 bear-mr-2",
|
|
50
|
+
right: "bear-left-full bear-top-1/2 -bear-translate-y-1/2 bear-ml-2",
|
|
51
|
+
"right-start": "bear-left-full bear-top-0 bear-ml-2",
|
|
52
|
+
"right-end": "bear-left-full bear-bottom-0 bear-ml-2"
|
|
53
|
+
}, S = {
|
|
54
|
+
top: "bear-top-full bear-left-1/2 -bear-translate-x-1/2 bear-border-t-zinc-700 bear-border-x-transparent bear-border-b-transparent",
|
|
55
|
+
bottom: "bear-bottom-full bear-left-1/2 -bear-translate-x-1/2 bear-border-b-zinc-700 bear-border-x-transparent bear-border-t-transparent",
|
|
56
|
+
left: "bear-left-full bear-top-1/2 -bear-translate-y-1/2 bear-border-l-zinc-700 bear-border-y-transparent bear-border-r-transparent",
|
|
57
|
+
right: "bear-right-full bear-top-1/2 -bear-translate-y-1/2 bear-border-r-zinc-700 bear-border-y-transparent bear-border-l-transparent"
|
|
58
|
+
}, j = a.split("-")[0];
|
|
59
|
+
return /* @__PURE__ */ c(
|
|
60
|
+
"div",
|
|
61
|
+
{
|
|
62
|
+
ref: l,
|
|
63
|
+
className: s("bear-relative bear-inline-block", x),
|
|
64
|
+
onMouseEnter: M,
|
|
65
|
+
onMouseLeave: N,
|
|
66
|
+
children: [
|
|
67
|
+
/* @__PURE__ */ m("div", { onClick: L, className: "bear-cursor-pointer", children: v }),
|
|
68
|
+
t && /* @__PURE__ */ c(
|
|
69
|
+
"div",
|
|
70
|
+
{
|
|
71
|
+
ref: z,
|
|
72
|
+
className: s(
|
|
73
|
+
"bear-absolute bear-z-50 bear-bg-zinc-800 bear-border bear-border-zinc-700 bear-rounded-lg bear-shadow-xl bear-p-3",
|
|
74
|
+
R[a],
|
|
75
|
+
k
|
|
76
|
+
),
|
|
77
|
+
style: { marginTop: a.startsWith("bottom") ? u : void 0, marginBottom: a.startsWith("top") ? u : void 0 },
|
|
78
|
+
children: [
|
|
79
|
+
y,
|
|
80
|
+
g && /* @__PURE__ */ m("div", { className: s(
|
|
81
|
+
"bear-absolute bear-w-0 bear-h-0 bear-border-8",
|
|
82
|
+
S[j]
|
|
83
|
+
) })
|
|
84
|
+
]
|
|
85
|
+
}
|
|
86
|
+
)
|
|
87
|
+
]
|
|
88
|
+
}
|
|
89
|
+
);
|
|
90
|
+
};
|
|
91
|
+
export {
|
|
92
|
+
P as Popover
|
|
93
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export type PopoverPlacement = 'top' | 'top-start' | 'top-end' | 'bottom' | 'bottom-start' | 'bottom-end' | 'left' | 'left-start' | 'left-end' | 'right' | 'right-start' | 'right-end';
|
|
3
|
+
export interface PopoverProps {
|
|
4
|
+
children: ReactNode;
|
|
5
|
+
content: ReactNode;
|
|
6
|
+
placement?: PopoverPlacement;
|
|
7
|
+
trigger?: 'click' | 'hover';
|
|
8
|
+
open?: boolean;
|
|
9
|
+
onOpenChange?: (open: boolean) => void;
|
|
10
|
+
className?: string;
|
|
11
|
+
contentClassName?: string;
|
|
12
|
+
arrow?: boolean;
|
|
13
|
+
closeOnClickOutside?: boolean;
|
|
14
|
+
closeOnEscape?: boolean;
|
|
15
|
+
offset?: number;
|
|
16
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("../../utils/cn.cjs"),m={sm:"bear-h-1.5",md:"bear-h-2.5",lg:"bear-h-4"},f={default:"bear-bg-pink-500",success:"bear-bg-green-500",warning:"bear-bg-yellow-500",danger:"bear-bg-red-500",info:"bear-bg-blue-500"},x=({value:n,max:b=100,size:l="md",color:o="default",showLabel:i=!1,labelPosition:d="outside",striped:r=!1,animated:c=!1,indeterminate:a=!1,className:g,testId:u})=>{const s=Math.min(100,Math.max(0,n/b*100));return e.jsxs("div",{className:t.cn("bear-w-full",g),"data-testid":u,children:[i&&d==="outside"&&e.jsxs("div",{className:"bear-flex bear-justify-between bear-mb-1",children:[e.jsx("span",{className:"bear-text-sm bear-font-medium bear-text-gray-700 dark:bear-text-gray-200",children:"Progress"}),e.jsxs("span",{className:"bear-text-sm bear-font-medium bear-text-gray-700 dark:bear-text-gray-200",children:[Math.round(s),"%"]})]}),e.jsx("div",{className:t.cn("bear-w-full bear-bg-gray-200 dark:bear-bg-gray-700 bear-rounded-full bear-overflow-hidden",m[l]),children:e.jsx("div",{className:t.cn("bear-h-full bear-rounded-full bear-transition-all bear-duration-300 bear-ease-out","bear-flex bear-items-center bear-justify-center",f[o],r&&"bear-bg-stripes",c&&"bear-animate-stripes",a&&"bear-animate-indeterminate"),style:{width:a?"50%":`${s}%`,backgroundSize:r?"1rem 1rem":void 0,backgroundImage:r?"linear-gradient(45deg, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent)":void 0},role:"progressbar","aria-valuenow":a?void 0:n,"aria-valuemin":0,"aria-valuemax":b,children:i&&d==="inside"&&l==="lg"&&!a&&e.jsxs("span",{className:"bear-text-xs bear-font-medium bear-text-white",children:[Math.round(s),"%"]})})})]})};exports.Progress=x;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { ProgressProps } from './Progress.types';
|
|
3
|
+
/**
|
|
4
|
+
* Progress - Progress bar with multiple variants
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```tsx
|
|
8
|
+
* <Progress value={75} showLabel />
|
|
9
|
+
* <Progress value={50} color="success" striped animated />
|
|
10
|
+
* <Progress indeterminate />
|
|
11
|
+
* ```
|
|
12
|
+
*/
|
|
13
|
+
export declare const Progress: FC<ProgressProps>;
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { jsxs as a, jsx as t } from "react/jsx-runtime";
|
|
2
|
+
import { cn as b } from "../../utils/cn.js";
|
|
3
|
+
const f = {
|
|
4
|
+
sm: "bear-h-1.5",
|
|
5
|
+
md: "bear-h-2.5",
|
|
6
|
+
lg: "bear-h-4"
|
|
7
|
+
}, h = {
|
|
8
|
+
default: "bear-bg-pink-500",
|
|
9
|
+
success: "bear-bg-green-500",
|
|
10
|
+
warning: "bear-bg-yellow-500",
|
|
11
|
+
danger: "bear-bg-red-500",
|
|
12
|
+
info: "bear-bg-blue-500"
|
|
13
|
+
}, v = ({
|
|
14
|
+
value: n,
|
|
15
|
+
max: l = 100,
|
|
16
|
+
size: d = "md",
|
|
17
|
+
color: g = "default",
|
|
18
|
+
showLabel: i = !1,
|
|
19
|
+
labelPosition: o = "outside",
|
|
20
|
+
striped: r = !1,
|
|
21
|
+
animated: m = !1,
|
|
22
|
+
indeterminate: e = !1,
|
|
23
|
+
className: c,
|
|
24
|
+
testId: u
|
|
25
|
+
}) => {
|
|
26
|
+
const s = Math.min(100, Math.max(0, n / l * 100));
|
|
27
|
+
return /* @__PURE__ */ a("div", { className: b("bear-w-full", c), "data-testid": u, children: [
|
|
28
|
+
i && o === "outside" && /* @__PURE__ */ a("div", { className: "bear-flex bear-justify-between bear-mb-1", children: [
|
|
29
|
+
/* @__PURE__ */ t("span", { className: "bear-text-sm bear-font-medium bear-text-gray-700 dark:bear-text-gray-200", children: "Progress" }),
|
|
30
|
+
/* @__PURE__ */ a("span", { className: "bear-text-sm bear-font-medium bear-text-gray-700 dark:bear-text-gray-200", children: [
|
|
31
|
+
Math.round(s),
|
|
32
|
+
"%"
|
|
33
|
+
] })
|
|
34
|
+
] }),
|
|
35
|
+
/* @__PURE__ */ t(
|
|
36
|
+
"div",
|
|
37
|
+
{
|
|
38
|
+
className: b(
|
|
39
|
+
"bear-w-full bear-bg-gray-200 dark:bear-bg-gray-700 bear-rounded-full bear-overflow-hidden",
|
|
40
|
+
f[d]
|
|
41
|
+
),
|
|
42
|
+
children: /* @__PURE__ */ t(
|
|
43
|
+
"div",
|
|
44
|
+
{
|
|
45
|
+
className: b(
|
|
46
|
+
"bear-h-full bear-rounded-full bear-transition-all bear-duration-300 bear-ease-out",
|
|
47
|
+
"bear-flex bear-items-center bear-justify-center",
|
|
48
|
+
h[g],
|
|
49
|
+
r && "bear-bg-stripes",
|
|
50
|
+
m && "bear-animate-stripes",
|
|
51
|
+
e && "bear-animate-indeterminate"
|
|
52
|
+
),
|
|
53
|
+
style: {
|
|
54
|
+
width: e ? "50%" : `${s}%`,
|
|
55
|
+
backgroundSize: r ? "1rem 1rem" : void 0,
|
|
56
|
+
backgroundImage: r ? "linear-gradient(45deg, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent)" : void 0
|
|
57
|
+
},
|
|
58
|
+
role: "progressbar",
|
|
59
|
+
"aria-valuenow": e ? void 0 : n,
|
|
60
|
+
"aria-valuemin": 0,
|
|
61
|
+
"aria-valuemax": l,
|
|
62
|
+
children: i && o === "inside" && d === "lg" && !e && /* @__PURE__ */ a("span", { className: "bear-text-xs bear-font-medium bear-text-white", children: [
|
|
63
|
+
Math.round(s),
|
|
64
|
+
"%"
|
|
65
|
+
] })
|
|
66
|
+
}
|
|
67
|
+
)
|
|
68
|
+
}
|
|
69
|
+
)
|
|
70
|
+
] });
|
|
71
|
+
};
|
|
72
|
+
export {
|
|
73
|
+
v as Progress
|
|
74
|
+
};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export interface ProgressProps {
|
|
2
|
+
/** Progress value (0-100) */
|
|
3
|
+
value: number;
|
|
4
|
+
/** Maximum value */
|
|
5
|
+
max?: number;
|
|
6
|
+
/** Size variant */
|
|
7
|
+
size?: 'sm' | 'md' | 'lg';
|
|
8
|
+
/** Color variant */
|
|
9
|
+
color?: 'default' | 'success' | 'warning' | 'danger' | 'info';
|
|
10
|
+
/** Show percentage label */
|
|
11
|
+
showLabel?: boolean;
|
|
12
|
+
/** Label position */
|
|
13
|
+
labelPosition?: 'inside' | 'outside';
|
|
14
|
+
/** Striped animation */
|
|
15
|
+
striped?: boolean;
|
|
16
|
+
/** Animated stripes */
|
|
17
|
+
animated?: boolean;
|
|
18
|
+
/** Indeterminate loading state */
|
|
19
|
+
indeterminate?: boolean;
|
|
20
|
+
/** Custom class name */
|
|
21
|
+
className?: string;
|
|
22
|
+
/** Test ID */
|
|
23
|
+
testId?: string;
|
|
24
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),b=require("react"),s=require("../../utils/cn.cjs"),L={xs:"ember-w-3 ember-h-3",sm:"ember-w-4 ember-h-4",md:"ember-w-5 ember-h-5",lg:"ember-w-6 ember-h-6",xl:"ember-w-7 ember-h-7"},V={xs:"ember-text-xs",sm:"ember-text-sm",md:"ember-text-base",lg:"ember-text-lg",xl:"ember-text-xl"},_={primary:"#ec4899",secondary:"#6b7280",success:"#22c55e",danger:"#ef4444",warning:"#f59e0b",info:"#3b82f6",ghost:"#9ca3af",outline:"#374151",error:"#ef4444"},A=b.createContext(null),E=b.forwardRef(({label:d,size:o="md",variant:v="primary",color:l,disabled:h=!1,error:t=!1,helperText:f,className:j,testId:g,value:m,name:i,checked:x,onChange:a,...N},S)=>{const e=b.useContext(A),p=b.useId(),n=(e==null?void 0:e.size)??o,R=(e==null?void 0:e.variant)??v,c=(e==null?void 0:e.disabled)??h,u=(e==null?void 0:e.name)??i,y=e?e.value===m:x,k=l??_[R],I=b.useCallback(()=>{if(c)return;const w=typeof m=="string"?m:String(m);e&&w&&e.onChange(w),a==null||a({target:{value:w}})},[e,m,a,c]);return r.jsxs("div",{className:s.cn("ember-flex ember-flex-col",j),children:[r.jsxs("label",{className:s.cn("ember-inline-flex ember-items-center ember-gap-2 ember-cursor-pointer",c&&"ember-opacity-50 ember-cursor-not-allowed"),children:[r.jsxs("div",{className:"ember-relative ember-flex ember-items-center ember-justify-center",children:[r.jsx("input",{ref:S,type:"radio",name:u,value:m,checked:y,disabled:c,onChange:I,className:"ember-sr-only",id:p,"data-testid":g,...N}),r.jsx("div",{className:s.cn(L[n],"ember-rounded-full ember-border-2 ember-transition-all ember-flex ember-items-center ember-justify-center",t?"ember-border-red-500":"ember-border-gray-300 dark:ember-border-gray-600",y&&!t&&"ember-border-current",!c&&"hover:ember-border-gray-400"),style:{borderColor:y&&!t?k:void 0},children:r.jsx("div",{className:s.cn("ember-rounded-full ember-transition-all ember-scale-0",y&&"ember-scale-100"),style:{width:"50%",height:"50%",backgroundColor:t?"#ef4444":k}})})]}),d&&r.jsx("span",{className:s.cn(V[n],"ember-text-gray-700 dark:ember-text-gray-300",t&&"ember-text-red-500"),children:d})]}),f&&r.jsx("span",{className:s.cn("ember-text-xs ember-mt-1 ember-ml-7",t?"ember-text-red-500":"ember-text-gray-500"),children:f})]})});E.displayName="Radio";const q=({name:d,value:o,defaultValue:v="",onChange:l,children:h,direction:t="column",size:f,variant:j,disabled:g=!1,gap:m=2,label:i,error:x=!1,helperText:a,className:N,testId:S})=>{const[e,p]=b.useState(v),n=o!==void 0,R=n?o:e,c=b.useCallback(u=>{n||p(u),l==null||l(u)},[n,l]);return r.jsxs("div",{className:s.cn("ember-flex ember-flex-col",N),role:"radiogroup","aria-label":typeof i=="string"?i:void 0,"data-testid":S,children:[i&&r.jsx("span",{className:s.cn("ember-text-sm ember-font-medium ember-mb-2 ember-text-gray-700 dark:ember-text-gray-300",x&&"ember-text-red-500"),children:i}),r.jsx(A.Provider,{value:{name:d,value:R,onChange:c,size:f,variant:j,disabled:g},children:r.jsx("div",{className:s.cn("ember-flex",t==="column"?"ember-flex-col":"ember-flex-row ember-flex-wrap"),style:{gap:`${m*.25}rem`},children:h})}),a&&r.jsx("span",{className:s.cn("ember-text-xs ember-mt-2",x?"ember-text-red-500":"ember-text-gray-500"),children:a})]})};exports.Radio=E;exports.RadioGroup=q;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { RadioProps, RadioGroupProps } from './Radio.types';
|
|
3
|
+
/**
|
|
4
|
+
* Radio input component for single selection from multiple options
|
|
5
|
+
*/
|
|
6
|
+
export declare const Radio: import('react').ForwardRefExoticComponent<RadioProps & import('react').RefAttributes<HTMLInputElement>>;
|
|
7
|
+
/**
|
|
8
|
+
* RadioGroup component for grouping radio inputs
|
|
9
|
+
*/
|
|
10
|
+
export declare const RadioGroup: FC<RadioGroupProps>;
|
|
11
|
+
export default Radio;
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
import { jsxs as y, jsx as t } from "react/jsx-runtime";
|
|
2
|
+
import { createContext as j, forwardRef as V, useContext as _, useId as z, useCallback as E, useState as G } from "react";
|
|
3
|
+
import { cn as r } from "../../utils/cn.js";
|
|
4
|
+
const O = {
|
|
5
|
+
xs: "ember-w-3 ember-h-3",
|
|
6
|
+
sm: "ember-w-4 ember-h-4",
|
|
7
|
+
md: "ember-w-5 ember-h-5",
|
|
8
|
+
lg: "ember-w-6 ember-h-6",
|
|
9
|
+
xl: "ember-w-7 ember-h-7"
|
|
10
|
+
}, Z = {
|
|
11
|
+
xs: "ember-text-xs",
|
|
12
|
+
sm: "ember-text-sm",
|
|
13
|
+
md: "ember-text-base",
|
|
14
|
+
lg: "ember-text-lg",
|
|
15
|
+
xl: "ember-text-xl"
|
|
16
|
+
}, B = {
|
|
17
|
+
primary: "#ec4899",
|
|
18
|
+
secondary: "#6b7280",
|
|
19
|
+
success: "#22c55e",
|
|
20
|
+
danger: "#ef4444",
|
|
21
|
+
warning: "#f59e0b",
|
|
22
|
+
info: "#3b82f6",
|
|
23
|
+
ghost: "#9ca3af",
|
|
24
|
+
outline: "#374151",
|
|
25
|
+
error: "#ef4444"
|
|
26
|
+
}, I = j(null), D = V(({
|
|
27
|
+
label: d,
|
|
28
|
+
size: n = "md",
|
|
29
|
+
variant: v = "primary",
|
|
30
|
+
color: l,
|
|
31
|
+
disabled: h = !1,
|
|
32
|
+
error: m = !1,
|
|
33
|
+
helperText: o,
|
|
34
|
+
className: N,
|
|
35
|
+
testId: p,
|
|
36
|
+
value: s,
|
|
37
|
+
name: c,
|
|
38
|
+
checked: f,
|
|
39
|
+
onChange: a,
|
|
40
|
+
...g
|
|
41
|
+
}, S) => {
|
|
42
|
+
const e = _(I), w = z(), i = (e == null ? void 0 : e.size) ?? n, k = (e == null ? void 0 : e.variant) ?? v, b = (e == null ? void 0 : e.disabled) ?? h, x = (e == null ? void 0 : e.name) ?? c, u = e ? e.value === s : f, A = l ?? B[k], L = E(() => {
|
|
43
|
+
if (b) return;
|
|
44
|
+
const R = typeof s == "string" ? s : String(s);
|
|
45
|
+
e && R && e.onChange(R), a == null || a({ target: { value: R } });
|
|
46
|
+
}, [e, s, a, b]);
|
|
47
|
+
return /* @__PURE__ */ y("div", { className: r("ember-flex ember-flex-col", N), children: [
|
|
48
|
+
/* @__PURE__ */ y(
|
|
49
|
+
"label",
|
|
50
|
+
{
|
|
51
|
+
className: r(
|
|
52
|
+
"ember-inline-flex ember-items-center ember-gap-2 ember-cursor-pointer",
|
|
53
|
+
b && "ember-opacity-50 ember-cursor-not-allowed"
|
|
54
|
+
),
|
|
55
|
+
children: [
|
|
56
|
+
/* @__PURE__ */ y("div", { className: "ember-relative ember-flex ember-items-center ember-justify-center", children: [
|
|
57
|
+
/* @__PURE__ */ t(
|
|
58
|
+
"input",
|
|
59
|
+
{
|
|
60
|
+
ref: S,
|
|
61
|
+
type: "radio",
|
|
62
|
+
name: x,
|
|
63
|
+
value: s,
|
|
64
|
+
checked: u,
|
|
65
|
+
disabled: b,
|
|
66
|
+
onChange: L,
|
|
67
|
+
className: "ember-sr-only",
|
|
68
|
+
id: w,
|
|
69
|
+
"data-testid": p,
|
|
70
|
+
...g
|
|
71
|
+
}
|
|
72
|
+
),
|
|
73
|
+
/* @__PURE__ */ t(
|
|
74
|
+
"div",
|
|
75
|
+
{
|
|
76
|
+
className: r(
|
|
77
|
+
O[i],
|
|
78
|
+
"ember-rounded-full ember-border-2 ember-transition-all ember-flex ember-items-center ember-justify-center",
|
|
79
|
+
m ? "ember-border-red-500" : "ember-border-gray-300 dark:ember-border-gray-600",
|
|
80
|
+
u && !m && "ember-border-current",
|
|
81
|
+
!b && "hover:ember-border-gray-400"
|
|
82
|
+
),
|
|
83
|
+
style: {
|
|
84
|
+
borderColor: u && !m ? A : void 0
|
|
85
|
+
},
|
|
86
|
+
children: /* @__PURE__ */ t(
|
|
87
|
+
"div",
|
|
88
|
+
{
|
|
89
|
+
className: r(
|
|
90
|
+
"ember-rounded-full ember-transition-all ember-scale-0",
|
|
91
|
+
u && "ember-scale-100"
|
|
92
|
+
),
|
|
93
|
+
style: {
|
|
94
|
+
width: "50%",
|
|
95
|
+
height: "50%",
|
|
96
|
+
backgroundColor: m ? "#ef4444" : A
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
)
|
|
100
|
+
}
|
|
101
|
+
)
|
|
102
|
+
] }),
|
|
103
|
+
d && /* @__PURE__ */ t("span", { className: r(
|
|
104
|
+
Z[i],
|
|
105
|
+
"ember-text-gray-700 dark:ember-text-gray-300",
|
|
106
|
+
m && "ember-text-red-500"
|
|
107
|
+
), children: d })
|
|
108
|
+
]
|
|
109
|
+
}
|
|
110
|
+
),
|
|
111
|
+
o && /* @__PURE__ */ t("span", { className: r(
|
|
112
|
+
"ember-text-xs ember-mt-1 ember-ml-7",
|
|
113
|
+
m ? "ember-text-red-500" : "ember-text-gray-500"
|
|
114
|
+
), children: o })
|
|
115
|
+
] });
|
|
116
|
+
});
|
|
117
|
+
D.displayName = "Radio";
|
|
118
|
+
const C = ({
|
|
119
|
+
name: d,
|
|
120
|
+
value: n,
|
|
121
|
+
defaultValue: v = "",
|
|
122
|
+
onChange: l,
|
|
123
|
+
children: h,
|
|
124
|
+
direction: m = "column",
|
|
125
|
+
size: o,
|
|
126
|
+
variant: N,
|
|
127
|
+
disabled: p = !1,
|
|
128
|
+
gap: s = 2,
|
|
129
|
+
label: c,
|
|
130
|
+
error: f = !1,
|
|
131
|
+
helperText: a,
|
|
132
|
+
className: g,
|
|
133
|
+
testId: S
|
|
134
|
+
}) => {
|
|
135
|
+
const [e, w] = G(v), i = n !== void 0, k = i ? n : e, b = E((x) => {
|
|
136
|
+
i || w(x), l == null || l(x);
|
|
137
|
+
}, [i, l]);
|
|
138
|
+
return /* @__PURE__ */ y(
|
|
139
|
+
"div",
|
|
140
|
+
{
|
|
141
|
+
className: r("ember-flex ember-flex-col", g),
|
|
142
|
+
role: "radiogroup",
|
|
143
|
+
"aria-label": typeof c == "string" ? c : void 0,
|
|
144
|
+
"data-testid": S,
|
|
145
|
+
children: [
|
|
146
|
+
c && /* @__PURE__ */ t("span", { className: r(
|
|
147
|
+
"ember-text-sm ember-font-medium ember-mb-2 ember-text-gray-700 dark:ember-text-gray-300",
|
|
148
|
+
f && "ember-text-red-500"
|
|
149
|
+
), children: c }),
|
|
150
|
+
/* @__PURE__ */ t(I.Provider, { value: { name: d, value: k, onChange: b, size: o, variant: N, disabled: p }, children: /* @__PURE__ */ t(
|
|
151
|
+
"div",
|
|
152
|
+
{
|
|
153
|
+
className: r(
|
|
154
|
+
"ember-flex",
|
|
155
|
+
m === "column" ? "ember-flex-col" : "ember-flex-row ember-flex-wrap"
|
|
156
|
+
),
|
|
157
|
+
style: { gap: `${s * 0.25}rem` },
|
|
158
|
+
children: h
|
|
159
|
+
}
|
|
160
|
+
) }),
|
|
161
|
+
a && /* @__PURE__ */ t("span", { className: r(
|
|
162
|
+
"ember-text-xs ember-mt-2",
|
|
163
|
+
f ? "ember-text-red-500" : "ember-text-gray-500"
|
|
164
|
+
), children: a })
|
|
165
|
+
]
|
|
166
|
+
}
|
|
167
|
+
);
|
|
168
|
+
};
|
|
169
|
+
export {
|
|
170
|
+
D as Radio,
|
|
171
|
+
C as RadioGroup
|
|
172
|
+
};
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { InputHTMLAttributes, ReactNode } from 'react';
|
|
2
|
+
import { BearSize, BearVariant } from '../../types';
|
|
3
|
+
export interface RadioProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'size'> {
|
|
4
|
+
/** Radio label */
|
|
5
|
+
label?: ReactNode;
|
|
6
|
+
/** Size of the radio */
|
|
7
|
+
size?: BearSize;
|
|
8
|
+
/** Color variant */
|
|
9
|
+
variant?: BearVariant;
|
|
10
|
+
/** Custom color override */
|
|
11
|
+
color?: string;
|
|
12
|
+
/** Whether radio is disabled */
|
|
13
|
+
disabled?: boolean;
|
|
14
|
+
/** Error state */
|
|
15
|
+
error?: boolean;
|
|
16
|
+
/** Helper text shown below */
|
|
17
|
+
helperText?: string;
|
|
18
|
+
/** Test ID */
|
|
19
|
+
testId?: string;
|
|
20
|
+
}
|
|
21
|
+
export interface RadioGroupProps {
|
|
22
|
+
/** Group name for all radios */
|
|
23
|
+
name: string;
|
|
24
|
+
/** Current selected value */
|
|
25
|
+
value?: string;
|
|
26
|
+
/** Default value for uncontrolled mode */
|
|
27
|
+
defaultValue?: string;
|
|
28
|
+
/** Callback when selection changes */
|
|
29
|
+
onChange?: (value: string) => void;
|
|
30
|
+
/** Radio options */
|
|
31
|
+
children?: ReactNode;
|
|
32
|
+
/** Layout direction */
|
|
33
|
+
direction?: 'row' | 'column';
|
|
34
|
+
/** Size applied to all radios */
|
|
35
|
+
size?: BearSize;
|
|
36
|
+
/** Variant applied to all radios */
|
|
37
|
+
variant?: BearVariant;
|
|
38
|
+
/** Whether all radios are disabled */
|
|
39
|
+
disabled?: boolean;
|
|
40
|
+
/** Gap between items */
|
|
41
|
+
gap?: number;
|
|
42
|
+
/** Label for the group */
|
|
43
|
+
label?: ReactNode;
|
|
44
|
+
/** Error state for the group */
|
|
45
|
+
error?: boolean;
|
|
46
|
+
/** Helper text for the group */
|
|
47
|
+
helperText?: string;
|
|
48
|
+
/** Additional class name */
|
|
49
|
+
className?: string;
|
|
50
|
+
/** Test ID */
|
|
51
|
+
testId?: string;
|
|
52
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),l=require("react"),y=require("../../utils/cn.cjs"),U={xs:14,sm:18,md:24,lg:30,xl:36},W="#fbbf24",Y="#d1d5db",Z=({value:d,defaultValue:F=0,max:u=5,size:L="md",readOnly:o=!1,disabled:r=!1,precision:j=1,color:S=W,emptyColor:h=Y,filledIcon:v,emptyIcon:k,halfIcon:g,highlightOnHover:c=!0,showLabel:C=!1,formatLabel:E,onChange:a,className:_,testId:A,...T})=>{const[$,q]=l.useState(F),[M,w]=l.useState(null),m=d!==void 0,z=m?d:$,f=M!==null&&!o&&!r?M:z,p=U[L],B=l.useCallback(e=>{o||r||(m||q(e),a==null||a(e))},[m,a,o,r]),G=l.useCallback(e=>{o||r||!c||w(e)},[o,r,c]),N=l.useCallback(()=>{o||r||!c||w(null)},[o,r,c]),x=l.useMemo(()=>({FilledStar:({size:s,color:i})=>t.jsx("svg",{width:s,height:s,viewBox:"0 0 24 24",fill:i,stroke:"none",children:t.jsx("polygon",{points:"12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"})}),EmptyStar:({size:s,color:i})=>t.jsx("svg",{width:s,height:s,viewBox:"0 0 24 24",fill:"none",stroke:i,strokeWidth:"2",children:t.jsx("polygon",{points:"12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"})}),HalfStar:({size:s,color:i,emptyColor:R})=>t.jsxs("svg",{width:s,height:s,viewBox:"0 0 24 24",children:[t.jsx("defs",{children:t.jsxs("linearGradient",{id:"halfGrad",children:[t.jsx("stop",{offset:"50%",stopColor:i}),t.jsx("stop",{offset:"50%",stopColor:R,stopOpacity:"0"})]})}),t.jsx("polygon",{points:"12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2",fill:"url(#halfGrad)",stroke:R,strokeWidth:"2"})]})}),[]),P=e=>{const n=f-e,b=n>=1,s=j===.5&&n>=.5&&n<1,i=n<(j===.5?.5:1);return v&&b?v:g&&s?g:k&&i?k:b?t.jsx(x.FilledStar,{size:p,color:S}):s?t.jsx(x.HalfStar,{size:p,color:S,emptyColor:h}):t.jsx(x.EmptyStar,{size:p,color:h})},D=l.useMemo(()=>Array.from({length:u},(e,n)=>n+1),[u]),H=E?E(f):`${f} out of ${u}`;return t.jsxs("div",{className:y.cn("ember-inline-flex ember-items-center ember-gap-1",r&&"ember-opacity-50 ember-cursor-not-allowed",_),role:"radiogroup","aria-label":"Rating","data-testid":A,onMouseLeave:N,...T,children:[D.map(e=>t.jsx("button",{type:"button",role:"radio","aria-checked":z>=e,"aria-label":`${e} star${e>1?"s":""}`,className:y.cn("ember-p-0.5 ember-rounded ember-transition-transform ember-bg-transparent ember-border-none",!o&&!r&&"hover:ember-scale-110 ember-cursor-pointer",o&&"ember-cursor-default",r&&"ember-cursor-not-allowed"),onClick:()=>B(e),onMouseEnter:()=>G(e),disabled:r||o,children:P(e-1)},e)),C&&t.jsx("span",{className:"ember-ml-2 ember-text-sm ember-text-gray-600 dark:ember-text-gray-400",children:H})]})};exports.Rating=Z;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { RatingProps } from './Rating.types';
|
|
3
|
+
/**
|
|
4
|
+
* Rating component for displaying and capturing user ratings
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```tsx
|
|
8
|
+
* // Basic rating
|
|
9
|
+
* <Rating value={3} onChange={(v) => setRating(v)} />
|
|
10
|
+
*
|
|
11
|
+
* // Read-only rating with half stars
|
|
12
|
+
* <Rating value={3.5} readOnly precision={0.5} />
|
|
13
|
+
*
|
|
14
|
+
* // Custom size and color
|
|
15
|
+
* <Rating value={4} size="lg" color="#ec4899" />
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
export declare const Rating: FC<RatingProps>;
|
|
19
|
+
export default Rating;
|