@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,71 @@
|
|
|
1
|
+
import { jsx as a, jsxs as h } from "react/jsx-runtime";
|
|
2
|
+
import { cn as r } from "../../utils/cn.js";
|
|
3
|
+
const w = ({
|
|
4
|
+
items: d,
|
|
5
|
+
orientation: f = "vertical",
|
|
6
|
+
position: t = "left",
|
|
7
|
+
className: m,
|
|
8
|
+
size: l = "md",
|
|
9
|
+
showConnector: g = !0
|
|
10
|
+
}) => {
|
|
11
|
+
const c = {
|
|
12
|
+
default: "bear-bg-zinc-600 bear-border-zinc-600",
|
|
13
|
+
primary: "bear-bg-pink-500 bear-border-pink-500",
|
|
14
|
+
success: "bear-bg-green-500 bear-border-green-500",
|
|
15
|
+
warning: "bear-bg-yellow-500 bear-border-yellow-500",
|
|
16
|
+
error: "bear-bg-red-500 bear-border-red-500",
|
|
17
|
+
info: "bear-bg-blue-500 bear-border-blue-500"
|
|
18
|
+
}, o = {
|
|
19
|
+
sm: { dot: "bear-w-2.5 bear-h-2.5", iconDot: "bear-w-6 bear-h-6", text: "bear-text-xs", title: "bear-text-sm" },
|
|
20
|
+
md: { dot: "bear-w-3 bear-h-3", iconDot: "bear-w-8 bear-h-8", text: "bear-text-sm", title: "bear-text-base" },
|
|
21
|
+
lg: { dot: "bear-w-4 bear-h-4", iconDot: "bear-w-10 bear-h-10", text: "bear-text-base", title: "bear-text-lg" }
|
|
22
|
+
}, b = f === "vertical";
|
|
23
|
+
return /* @__PURE__ */ a("div", { className: r(
|
|
24
|
+
"bear-relative",
|
|
25
|
+
b ? "" : "bear-flex bear-items-start",
|
|
26
|
+
m
|
|
27
|
+
), children: d.map((e, i) => {
|
|
28
|
+
const n = t === "left" || t === "alternate" && i % 2 === 0, u = i === d.length - 1, s = e.color || "default", x = e.dotVariant === "icon" && e.icon;
|
|
29
|
+
return /* @__PURE__ */ h(
|
|
30
|
+
"div",
|
|
31
|
+
{
|
|
32
|
+
className: r(
|
|
33
|
+
"bear-relative",
|
|
34
|
+
b ? "bear-pb-6" : "bear-flex-1 bear-pr-4",
|
|
35
|
+
b && t === "alternate" && (n ? "bear-pr-8 bear-text-right" : "bear-pl-8")
|
|
36
|
+
),
|
|
37
|
+
children: [
|
|
38
|
+
/* @__PURE__ */ a("div", { className: r(
|
|
39
|
+
"bear-absolute",
|
|
40
|
+
b ? t === "alternate" ? n ? "bear-right-0 bear-translate-x-1/2" : "bear-left-0 -bear-translate-x-1/2" : "bear-left-0" : "bear-top-0",
|
|
41
|
+
x ? "" : "bear-top-1"
|
|
42
|
+
), children: x ? /* @__PURE__ */ a("div", { className: r(
|
|
43
|
+
"bear-rounded-full bear-flex bear-items-center bear-justify-center bear-text-white",
|
|
44
|
+
o[l].iconDot,
|
|
45
|
+
c[s]
|
|
46
|
+
), children: e.icon }) : /* @__PURE__ */ a("div", { className: r(
|
|
47
|
+
"bear-rounded-full",
|
|
48
|
+
o[l].dot,
|
|
49
|
+
e.dotVariant === "outlined" ? `bear-border-2 bear-bg-zinc-900 ${c[s]}` : c[s]
|
|
50
|
+
) }) }),
|
|
51
|
+
g && !u && /* @__PURE__ */ a("div", { className: r(
|
|
52
|
+
"bear-absolute bear-bg-zinc-700",
|
|
53
|
+
b ? t === "alternate" ? n ? "bear-right-0 bear-w-0.5 bear-top-4 bear-bottom-0 bear-translate-x-1/2" : "bear-left-0 bear-w-0.5 bear-top-4 bear-bottom-0 -bear-translate-x-1/2" : "bear-left-1 bear-w-0.5 bear-top-4 bear-bottom-0" : "bear-left-3 bear-h-0.5 bear-top-1.5 bear-right-0"
|
|
54
|
+
) }),
|
|
55
|
+
/* @__PURE__ */ h("div", { className: r(
|
|
56
|
+
b && t !== "alternate" && "bear-pl-6",
|
|
57
|
+
b && t === "alternate" && !n && "bear-pl-6"
|
|
58
|
+
), children: [
|
|
59
|
+
e.date && /* @__PURE__ */ a("div", { className: r("bear-text-zinc-500 bear-mb-1", o[l].text), children: e.date }),
|
|
60
|
+
/* @__PURE__ */ a("div", { className: r("bear-font-medium bear-text-white", o[l].title), children: e.title }),
|
|
61
|
+
e.description && /* @__PURE__ */ a("div", { className: r("bear-text-zinc-400 bear-mt-1", o[l].text), children: e.description })
|
|
62
|
+
] })
|
|
63
|
+
]
|
|
64
|
+
},
|
|
65
|
+
e.id
|
|
66
|
+
);
|
|
67
|
+
}) });
|
|
68
|
+
};
|
|
69
|
+
export {
|
|
70
|
+
w as Timeline
|
|
71
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export interface TimelineItem {
|
|
3
|
+
id: string;
|
|
4
|
+
title: string;
|
|
5
|
+
description?: ReactNode;
|
|
6
|
+
date?: string;
|
|
7
|
+
icon?: ReactNode;
|
|
8
|
+
color?: 'default' | 'primary' | 'success' | 'warning' | 'error' | 'info';
|
|
9
|
+
dotVariant?: 'filled' | 'outlined' | 'icon';
|
|
10
|
+
}
|
|
11
|
+
export interface TimelineProps {
|
|
12
|
+
items: TimelineItem[];
|
|
13
|
+
orientation?: 'vertical' | 'horizontal';
|
|
14
|
+
position?: 'left' | 'right' | 'alternate';
|
|
15
|
+
className?: string;
|
|
16
|
+
size?: 'sm' | 'md' | 'lg';
|
|
17
|
+
showConnector?: boolean;
|
|
18
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),s=require("react"),y=require("../../utils/cn.cjs"),T=()=>`toast-${Date.now()}-${Math.random().toString(36).slice(2,9)}`,p={success:e.jsxs("svg",{width:20,height:20,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,children:[e.jsx("path",{d:"M22 11.08V12a10 10 0 1 1-5.93-9.14"}),e.jsx("polyline",{points:"22 4 12 14.01 9 11.01"})]}),info:e.jsxs("svg",{width:20,height:20,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,children:[e.jsx("circle",{cx:"12",cy:"12",r:"10"}),e.jsx("line",{x1:"12",y1:"16",x2:"12",y2:"12"}),e.jsx("line",{x1:"12",y1:"8",x2:"12.01",y2:"8"})]}),warning:e.jsxs("svg",{width:20,height:20,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,children:[e.jsx("path",{d:"M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"}),e.jsx("line",{x1:"12",y1:"9",x2:"12",y2:"13"}),e.jsx("line",{x1:"12",y1:"17",x2:"12.01",y2:"17"})]}),error:e.jsxs("svg",{width:20,height:20,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,children:[e.jsx("circle",{cx:"12",cy:"12",r:"10"}),e.jsx("line",{x1:"15",y1:"9",x2:"9",y2:"15"}),e.jsx("line",{x1:"9",y1:"9",x2:"15",y2:"15"})]})},k=()=>e.jsxs("svg",{width:16,height:16,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,children:[e.jsx("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),e.jsx("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]}),C={success:"bear-bg-green-500 bear-text-white",info:"bear-bg-blue-500 bear-text-white",warning:"bear-bg-amber-500 bear-text-white",error:"bear-bg-red-500 bear-text-white"},S={"top-left":"bear-top-4 bear-left-4","top-center":"bear-top-4 bear-left-1/2 bear-transform bear--translate-x-1/2","top-right":"bear-top-4 bear-right-4","bottom-left":"bear-bottom-4 bear-left-4","bottom-center":"bear-bottom-4 bear-left-1/2 bear-transform bear--translate-x-1/2","bottom-right":"bear-bottom-4 bear-right-4"},v=s.createContext(null),I=()=>{const i=s.useContext(v);if(!i)throw new Error("useToast must be used within a ToastProvider");return i},N=({message:i,title:c,severity:b="info",duration:n=5e3,closable:l=!0,icon:r,action:x,onClose:a,onRemove:u,className:m})=>{const[f,d]=s.useState(!1);s.useEffect(()=>{if(n>0){const t=setTimeout(()=>{d(!0),setTimeout(()=>{u(),a==null||a()},200)},n);return()=>clearTimeout(t)}},[n,u,a]);const g=()=>{d(!0),setTimeout(()=>{u(),a==null||a()},200)},h=()=>r===!1?null:r||p[b];return e.jsxs("div",{role:"alert",className:y.cn("bear-flex bear-items-start bear-gap-3 bear-p-4 bear-rounded-lg bear-shadow-lg bear-min-w-[300px] bear-max-w-[400px]","bear-transition-all bear-duration-200",f?"bear-opacity-0 bear-translate-x-2":"bear-opacity-100 bear-translate-x-0",C[b],m),children:[h()&&e.jsx("span",{className:"bear-flex-shrink-0 bear-mt-0.5",children:h()}),e.jsxs("div",{className:"bear-flex-1 bear-min-w-0",children:[c&&e.jsx("div",{className:"bear-font-semibold bear-mb-0.5",children:c}),e.jsx("div",{className:"bear-text-sm bear-opacity-90",children:i})]}),x&&e.jsx("div",{className:"bear-flex-shrink-0",children:x}),l&&e.jsx("button",{type:"button",onClick:g,className:"bear-flex-shrink-0 bear-p-1 bear-rounded hover:bear-bg-white/20 bear-transition-colors bear-bg-transparent bear-border-none bear-cursor-pointer","aria-label":"Close",children:e.jsx(k,{})})]})},w=({position:i="top-right",maxToasts:c=5,className:b})=>{const n=s.useContext(v);if(!n)return null;const{_toasts:l,_removeToast:r}=n,x=l.slice(0,c);return e.jsx("div",{className:y.cn("bear-fixed bear-z-50 bear-flex bear-flex-col bear-gap-2",S[i],b),children:x.map(a=>e.jsx(N,{...a,onRemove:()=>r(a.id)},a.id))})},E=({children:i,position:c="top-right"})=>{const[b,n]=s.useState([]),l=s.useCallback(t=>{n(o=>o.filter(j=>j.id!==t))},[]),r=s.useCallback(t=>{const o=t.id||T();return n(j=>[...j,{...t,id:o}]),o},[]),x=s.useCallback(t=>r(t),[r]),a=s.useCallback((t,o)=>r({message:t,severity:"success",...o}),[r]),u=s.useCallback((t,o)=>r({message:t,severity:"info",...o}),[r]),m=s.useCallback((t,o)=>r({message:t,severity:"warning",...o}),[r]),f=s.useCallback((t,o)=>r({message:t,severity:"error",...o}),[r]),d=s.useCallback(t=>l(t),[l]),g=s.useCallback(()=>n([]),[]),h={toast:x,success:a,info:u,warning:m,error:f,dismiss:d,dismissAll:g,_toasts:b,_removeToast:l};return e.jsxs(v.Provider,{value:h,children:[i,e.jsx(w,{position:c})]})};exports.ToastContainer=w;exports.ToastProvider=E;exports.useToast=I;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { FC, ReactNode } from 'react';
|
|
2
|
+
import { ToastContainerProps, ToastContextValue, ToastPosition } from './Toast.types';
|
|
3
|
+
export declare const useToast: () => ToastContextValue;
|
|
4
|
+
export declare const ToastContainer: FC<ToastContainerProps>;
|
|
5
|
+
export declare const ToastProvider: FC<{
|
|
6
|
+
children: ReactNode;
|
|
7
|
+
position?: ToastPosition;
|
|
8
|
+
}>;
|
|
9
|
+
export default ToastProvider;
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
import { jsx as e, jsxs as c } from "react/jsx-runtime";
|
|
2
|
+
import { createContext as I, useContext as y, useState as T, useCallback as i, useEffect as N } from "react";
|
|
3
|
+
import { cn as k } from "../../utils/cn.js";
|
|
4
|
+
const E = () => `toast-${Date.now()}-${Math.random().toString(36).slice(2, 9)}`, S = {
|
|
5
|
+
success: /* @__PURE__ */ c("svg", { width: 20, height: 20, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: 2, children: [
|
|
6
|
+
/* @__PURE__ */ e("path", { d: "M22 11.08V12a10 10 0 1 1-5.93-9.14" }),
|
|
7
|
+
/* @__PURE__ */ e("polyline", { points: "22 4 12 14.01 9 11.01" })
|
|
8
|
+
] }),
|
|
9
|
+
info: /* @__PURE__ */ c("svg", { width: 20, height: 20, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: 2, children: [
|
|
10
|
+
/* @__PURE__ */ e("circle", { cx: "12", cy: "12", r: "10" }),
|
|
11
|
+
/* @__PURE__ */ e("line", { x1: "12", y1: "16", x2: "12", y2: "12" }),
|
|
12
|
+
/* @__PURE__ */ e("line", { x1: "12", y1: "8", x2: "12.01", y2: "8" })
|
|
13
|
+
] }),
|
|
14
|
+
warning: /* @__PURE__ */ c("svg", { width: 20, height: 20, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: 2, children: [
|
|
15
|
+
/* @__PURE__ */ e("path", { d: "M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z" }),
|
|
16
|
+
/* @__PURE__ */ e("line", { x1: "12", y1: "9", x2: "12", y2: "13" }),
|
|
17
|
+
/* @__PURE__ */ e("line", { x1: "12", y1: "17", x2: "12.01", y2: "17" })
|
|
18
|
+
] }),
|
|
19
|
+
error: /* @__PURE__ */ c("svg", { width: 20, height: 20, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: 2, children: [
|
|
20
|
+
/* @__PURE__ */ e("circle", { cx: "12", cy: "12", r: "10" }),
|
|
21
|
+
/* @__PURE__ */ e("line", { x1: "15", y1: "9", x2: "9", y2: "15" }),
|
|
22
|
+
/* @__PURE__ */ e("line", { x1: "9", y1: "9", x2: "15", y2: "15" })
|
|
23
|
+
] })
|
|
24
|
+
}, _ = () => /* @__PURE__ */ c("svg", { width: 16, height: 16, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: 2, children: [
|
|
25
|
+
/* @__PURE__ */ e("line", { x1: "18", y1: "6", x2: "6", y2: "18" }),
|
|
26
|
+
/* @__PURE__ */ e("line", { x1: "6", y1: "6", x2: "18", y2: "18" })
|
|
27
|
+
] }), B = {
|
|
28
|
+
success: "bear-bg-green-500 bear-text-white",
|
|
29
|
+
info: "bear-bg-blue-500 bear-text-white",
|
|
30
|
+
warning: "bear-bg-amber-500 bear-text-white",
|
|
31
|
+
error: "bear-bg-red-500 bear-text-white"
|
|
32
|
+
}, W = {
|
|
33
|
+
"top-left": "bear-top-4 bear-left-4",
|
|
34
|
+
"top-center": "bear-top-4 bear-left-1/2 bear-transform bear--translate-x-1/2",
|
|
35
|
+
"top-right": "bear-top-4 bear-right-4",
|
|
36
|
+
"bottom-left": "bear-bottom-4 bear-left-4",
|
|
37
|
+
"bottom-center": "bear-bottom-4 bear-left-1/2 bear-transform bear--translate-x-1/2",
|
|
38
|
+
"bottom-right": "bear-bottom-4 bear-right-4"
|
|
39
|
+
}, w = I(null), Y = () => {
|
|
40
|
+
const n = y(w);
|
|
41
|
+
if (!n)
|
|
42
|
+
throw new Error("useToast must be used within a ToastProvider");
|
|
43
|
+
return n;
|
|
44
|
+
}, C = ({
|
|
45
|
+
message: n,
|
|
46
|
+
title: b,
|
|
47
|
+
severity: d = "info",
|
|
48
|
+
duration: o = 5e3,
|
|
49
|
+
closable: l = !0,
|
|
50
|
+
icon: r,
|
|
51
|
+
action: h,
|
|
52
|
+
onClose: a,
|
|
53
|
+
onRemove: x,
|
|
54
|
+
className: f
|
|
55
|
+
}) => {
|
|
56
|
+
const [g, m] = T(!1);
|
|
57
|
+
N(() => {
|
|
58
|
+
if (o > 0) {
|
|
59
|
+
const t = setTimeout(() => {
|
|
60
|
+
m(!0), setTimeout(() => {
|
|
61
|
+
x(), a == null || a();
|
|
62
|
+
}, 200);
|
|
63
|
+
}, o);
|
|
64
|
+
return () => clearTimeout(t);
|
|
65
|
+
}
|
|
66
|
+
}, [o, x, a]);
|
|
67
|
+
const p = () => {
|
|
68
|
+
m(!0), setTimeout(() => {
|
|
69
|
+
x(), a == null || a();
|
|
70
|
+
}, 200);
|
|
71
|
+
}, u = () => r === !1 ? null : r || S[d];
|
|
72
|
+
return /* @__PURE__ */ c(
|
|
73
|
+
"div",
|
|
74
|
+
{
|
|
75
|
+
role: "alert",
|
|
76
|
+
className: k(
|
|
77
|
+
"bear-flex bear-items-start bear-gap-3 bear-p-4 bear-rounded-lg bear-shadow-lg bear-min-w-[300px] bear-max-w-[400px]",
|
|
78
|
+
"bear-transition-all bear-duration-200",
|
|
79
|
+
g ? "bear-opacity-0 bear-translate-x-2" : "bear-opacity-100 bear-translate-x-0",
|
|
80
|
+
B[d],
|
|
81
|
+
f
|
|
82
|
+
),
|
|
83
|
+
children: [
|
|
84
|
+
u() && /* @__PURE__ */ e("span", { className: "bear-flex-shrink-0 bear-mt-0.5", children: u() }),
|
|
85
|
+
/* @__PURE__ */ c("div", { className: "bear-flex-1 bear-min-w-0", children: [
|
|
86
|
+
b && /* @__PURE__ */ e("div", { className: "bear-font-semibold bear-mb-0.5", children: b }),
|
|
87
|
+
/* @__PURE__ */ e("div", { className: "bear-text-sm bear-opacity-90", children: n })
|
|
88
|
+
] }),
|
|
89
|
+
h && /* @__PURE__ */ e("div", { className: "bear-flex-shrink-0", children: h }),
|
|
90
|
+
l && /* @__PURE__ */ e(
|
|
91
|
+
"button",
|
|
92
|
+
{
|
|
93
|
+
type: "button",
|
|
94
|
+
onClick: p,
|
|
95
|
+
className: "bear-flex-shrink-0 bear-p-1 bear-rounded hover:bear-bg-white/20 bear-transition-colors bear-bg-transparent bear-border-none bear-cursor-pointer",
|
|
96
|
+
"aria-label": "Close",
|
|
97
|
+
children: /* @__PURE__ */ e(_, {})
|
|
98
|
+
}
|
|
99
|
+
)
|
|
100
|
+
]
|
|
101
|
+
}
|
|
102
|
+
);
|
|
103
|
+
}, L = ({
|
|
104
|
+
position: n = "top-right",
|
|
105
|
+
maxToasts: b = 5,
|
|
106
|
+
className: d
|
|
107
|
+
}) => {
|
|
108
|
+
const o = y(w);
|
|
109
|
+
if (!o) return null;
|
|
110
|
+
const { _toasts: l, _removeToast: r } = o, h = l.slice(0, b);
|
|
111
|
+
return /* @__PURE__ */ e(
|
|
112
|
+
"div",
|
|
113
|
+
{
|
|
114
|
+
className: k(
|
|
115
|
+
"bear-fixed bear-z-50 bear-flex bear-flex-col bear-gap-2",
|
|
116
|
+
W[n],
|
|
117
|
+
d
|
|
118
|
+
),
|
|
119
|
+
children: h.map((a) => /* @__PURE__ */ e(
|
|
120
|
+
C,
|
|
121
|
+
{
|
|
122
|
+
...a,
|
|
123
|
+
onRemove: () => r(a.id)
|
|
124
|
+
},
|
|
125
|
+
a.id
|
|
126
|
+
))
|
|
127
|
+
}
|
|
128
|
+
);
|
|
129
|
+
}, j = ({
|
|
130
|
+
children: n,
|
|
131
|
+
position: b = "top-right"
|
|
132
|
+
}) => {
|
|
133
|
+
const [d, o] = T([]), l = i((t) => {
|
|
134
|
+
o((s) => s.filter((v) => v.id !== t));
|
|
135
|
+
}, []), r = i((t) => {
|
|
136
|
+
const s = t.id || E();
|
|
137
|
+
return o((v) => [...v, { ...t, id: s }]), s;
|
|
138
|
+
}, []), h = i((t) => r(t), [r]), a = i((t, s) => r({ message: t, severity: "success", ...s }), [r]), x = i((t, s) => r({ message: t, severity: "info", ...s }), [r]), f = i((t, s) => r({ message: t, severity: "warning", ...s }), [r]), g = i((t, s) => r({ message: t, severity: "error", ...s }), [r]), m = i((t) => l(t), [l]), p = i(() => o([]), []), u = {
|
|
139
|
+
toast: h,
|
|
140
|
+
success: a,
|
|
141
|
+
info: x,
|
|
142
|
+
warning: f,
|
|
143
|
+
error: g,
|
|
144
|
+
dismiss: m,
|
|
145
|
+
dismissAll: p,
|
|
146
|
+
_toasts: d,
|
|
147
|
+
_removeToast: l
|
|
148
|
+
};
|
|
149
|
+
return /* @__PURE__ */ c(w.Provider, { value: u, children: [
|
|
150
|
+
n,
|
|
151
|
+
/* @__PURE__ */ e(L, { position: b })
|
|
152
|
+
] });
|
|
153
|
+
};
|
|
154
|
+
export {
|
|
155
|
+
L as ToastContainer,
|
|
156
|
+
j as ToastProvider,
|
|
157
|
+
Y as useToast
|
|
158
|
+
};
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export type ToastPosition = 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right';
|
|
3
|
+
export type ToastSeverity = 'success' | 'info' | 'warning' | 'error';
|
|
4
|
+
export interface ToastProps {
|
|
5
|
+
/** Unique identifier for the toast */
|
|
6
|
+
id?: string;
|
|
7
|
+
/** Toast message content */
|
|
8
|
+
message: ReactNode;
|
|
9
|
+
/** Optional title */
|
|
10
|
+
title?: string;
|
|
11
|
+
/** Severity/type of the toast */
|
|
12
|
+
severity?: ToastSeverity;
|
|
13
|
+
/** Duration in milliseconds before auto-dismiss (0 = no auto-dismiss) */
|
|
14
|
+
duration?: number;
|
|
15
|
+
/** Whether the toast can be manually closed */
|
|
16
|
+
closable?: boolean;
|
|
17
|
+
/** Custom icon */
|
|
18
|
+
icon?: ReactNode | false;
|
|
19
|
+
/** Action button */
|
|
20
|
+
action?: ReactNode;
|
|
21
|
+
/** Callback when toast is closed */
|
|
22
|
+
onClose?: () => void;
|
|
23
|
+
/** Additional CSS class */
|
|
24
|
+
className?: string;
|
|
25
|
+
}
|
|
26
|
+
export interface ToastContainerProps {
|
|
27
|
+
/** Position of toast container */
|
|
28
|
+
position?: ToastPosition;
|
|
29
|
+
/** Maximum number of visible toasts */
|
|
30
|
+
maxToasts?: number;
|
|
31
|
+
/** Additional CSS class */
|
|
32
|
+
className?: string;
|
|
33
|
+
}
|
|
34
|
+
export interface ToastContextValue {
|
|
35
|
+
/** Show a toast notification */
|
|
36
|
+
toast: (props: ToastProps) => string;
|
|
37
|
+
/** Show a success toast */
|
|
38
|
+
success: (message: ReactNode, options?: Partial<ToastProps>) => string;
|
|
39
|
+
/** Show an info toast */
|
|
40
|
+
info: (message: ReactNode, options?: Partial<ToastProps>) => string;
|
|
41
|
+
/** Show a warning toast */
|
|
42
|
+
warning: (message: ReactNode, options?: Partial<ToastProps>) => string;
|
|
43
|
+
/** Show an error toast */
|
|
44
|
+
error: (message: ReactNode, options?: Partial<ToastProps>) => string;
|
|
45
|
+
/** Dismiss a specific toast */
|
|
46
|
+
dismiss: (id: string) => void;
|
|
47
|
+
/** Dismiss all toasts */
|
|
48
|
+
dismissAll: () => void;
|
|
49
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),r=require("react"),j=require("react-dom"),v=require("../../utils/cn.cjs"),q=({content:p,children:x,position:w,placement:R,delay:y=200,className:M,disabled:k=!1})=>{const d=R||w||"top",[c,h]=r.useState(!1),[b,T]=r.useState({x:0,y:0}),u=r.useRef(null),l=r.useRef(null),n=r.useRef(),f=r.useCallback(()=>{if(!u.current||!l.current)return;const e=u.current.getBoundingClientRect(),t=l.current.getBoundingClientRect(),s=8;let o=0,i=0;switch(d){case"top":o=e.left+(e.width-t.width)/2,i=e.top-t.height-s;break;case"bottom":o=e.left+(e.width-t.width)/2,i=e.bottom+s;break;case"left":o=e.left-t.width-s,i=e.top+(e.height-t.height)/2;break;case"right":o=e.right+s,i=e.top+(e.height-t.height)/2;break}o=Math.max(8,Math.min(o,window.innerWidth-t.width-8)),i=Math.max(8,Math.min(i,window.innerHeight-t.height-8)),T({x:o,y:i})},[d]),g=()=>{k||(n.current=setTimeout(()=>{h(!0)},y))},m=()=>{n.current&&clearTimeout(n.current),h(!1)};return r.useEffect(()=>{c&&f()},[c,f]),r.useEffect(()=>()=>{n.current&&clearTimeout(n.current)},[]),a.jsxs(a.Fragment,{children:[a.jsx("div",{ref:u,onMouseEnter:g,onMouseLeave:m,onFocus:g,onBlur:m,className:"bear-inline-block",children:x}),c&&j.createPortal(a.jsx("div",{ref:l,role:"tooltip",style:{position:"fixed",left:b.x,top:b.y,zIndex:9999},className:v.cn("bear-px-3 bear-py-2 bear-rounded-lg","bear-bg-gray-800 bear-text-white bear-text-sm","bear-border bear-border-gray-700","bear-shadow-lg","bear-animate-in bear-fade-in bear-duration-150",M),children:p}),document.body)]})};exports.Tooltip=q;
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { jsxs as B, Fragment as E, jsx as m } from "react/jsx-runtime";
|
|
2
|
+
import { useState as p, useRef as l, useCallback as j, useEffect as w } from "react";
|
|
3
|
+
import { createPortal as F } from "react-dom";
|
|
4
|
+
import { cn as I } from "../../utils/cn.js";
|
|
5
|
+
const z = ({
|
|
6
|
+
content: x,
|
|
7
|
+
children: y,
|
|
8
|
+
position: M,
|
|
9
|
+
placement: R,
|
|
10
|
+
delay: k = 200,
|
|
11
|
+
className: v,
|
|
12
|
+
disabled: C = !1
|
|
13
|
+
}) => {
|
|
14
|
+
const u = R || M || "top", [a, h] = p(!1), [d, T] = p({ x: 0, y: 0 }), s = l(null), c = l(null), i = l(), b = j(() => {
|
|
15
|
+
if (!s.current || !c.current) return;
|
|
16
|
+
const e = s.current.getBoundingClientRect(), t = c.current.getBoundingClientRect(), n = 8;
|
|
17
|
+
let r = 0, o = 0;
|
|
18
|
+
switch (u) {
|
|
19
|
+
case "top":
|
|
20
|
+
r = e.left + (e.width - t.width) / 2, o = e.top - t.height - n;
|
|
21
|
+
break;
|
|
22
|
+
case "bottom":
|
|
23
|
+
r = e.left + (e.width - t.width) / 2, o = e.bottom + n;
|
|
24
|
+
break;
|
|
25
|
+
case "left":
|
|
26
|
+
r = e.left - t.width - n, o = e.top + (e.height - t.height) / 2;
|
|
27
|
+
break;
|
|
28
|
+
case "right":
|
|
29
|
+
r = e.right + n, o = e.top + (e.height - t.height) / 2;
|
|
30
|
+
break;
|
|
31
|
+
}
|
|
32
|
+
r = Math.max(8, Math.min(r, window.innerWidth - t.width - 8)), o = Math.max(8, Math.min(o, window.innerHeight - t.height - 8)), T({ x: r, y: o });
|
|
33
|
+
}, [u]), f = () => {
|
|
34
|
+
C || (i.current = setTimeout(() => {
|
|
35
|
+
h(!0);
|
|
36
|
+
}, k));
|
|
37
|
+
}, g = () => {
|
|
38
|
+
i.current && clearTimeout(i.current), h(!1);
|
|
39
|
+
};
|
|
40
|
+
return w(() => {
|
|
41
|
+
a && b();
|
|
42
|
+
}, [a, b]), w(() => () => {
|
|
43
|
+
i.current && clearTimeout(i.current);
|
|
44
|
+
}, []), /* @__PURE__ */ B(E, { children: [
|
|
45
|
+
/* @__PURE__ */ m(
|
|
46
|
+
"div",
|
|
47
|
+
{
|
|
48
|
+
ref: s,
|
|
49
|
+
onMouseEnter: f,
|
|
50
|
+
onMouseLeave: g,
|
|
51
|
+
onFocus: f,
|
|
52
|
+
onBlur: g,
|
|
53
|
+
className: "bear-inline-block",
|
|
54
|
+
children: y
|
|
55
|
+
}
|
|
56
|
+
),
|
|
57
|
+
a && F(
|
|
58
|
+
/* @__PURE__ */ m(
|
|
59
|
+
"div",
|
|
60
|
+
{
|
|
61
|
+
ref: c,
|
|
62
|
+
role: "tooltip",
|
|
63
|
+
style: {
|
|
64
|
+
position: "fixed",
|
|
65
|
+
left: d.x,
|
|
66
|
+
top: d.y,
|
|
67
|
+
zIndex: 9999
|
|
68
|
+
},
|
|
69
|
+
className: I(
|
|
70
|
+
"bear-px-3 bear-py-2 bear-rounded-lg",
|
|
71
|
+
"bear-bg-gray-800 bear-text-white bear-text-sm",
|
|
72
|
+
"bear-border bear-border-gray-700",
|
|
73
|
+
"bear-shadow-lg",
|
|
74
|
+
"bear-animate-in bear-fade-in bear-duration-150",
|
|
75
|
+
v
|
|
76
|
+
),
|
|
77
|
+
children: x
|
|
78
|
+
}
|
|
79
|
+
),
|
|
80
|
+
document.body
|
|
81
|
+
)
|
|
82
|
+
] });
|
|
83
|
+
};
|
|
84
|
+
export {
|
|
85
|
+
z as Tooltip
|
|
86
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export interface TooltipProps {
|
|
3
|
+
/** Tooltip content */
|
|
4
|
+
content: ReactNode;
|
|
5
|
+
/** Trigger element */
|
|
6
|
+
children: ReactNode;
|
|
7
|
+
/** Tooltip position */
|
|
8
|
+
position?: 'top' | 'bottom' | 'left' | 'right';
|
|
9
|
+
/** Alias for position */
|
|
10
|
+
placement?: 'top' | 'bottom' | 'left' | 'right';
|
|
11
|
+
/** Delay before showing (ms) */
|
|
12
|
+
delay?: number;
|
|
13
|
+
/** Additional class names */
|
|
14
|
+
className?: string;
|
|
15
|
+
/** Whether tooltip is disabled */
|
|
16
|
+
disabled?: boolean;
|
|
17
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),n=require("react"),v=require("../../utils/cn.cjs"),h=require("../Button/Button.cjs"),F=require("../Input/Input.cjs"),M=require("../Checkbox/Checkbox.cjs"),I=()=>e.jsx("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:e.jsx("polyline",{points:"9 18 15 12 9 6"})}),ee=()=>e.jsx("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:e.jsx("polyline",{points:"15 18 9 12 15 6"})}),re=()=>e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:[e.jsx("polyline",{points:"6 18 12 12 6 6"}),e.jsx("polyline",{points:"12 18 18 12 12 6"})]}),se=()=>e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:[e.jsx("polyline",{points:"18 18 12 12 18 6"}),e.jsx("polyline",{points:"12 18 6 12 12 6"})]}),te=({leftItems:c,rightItems:i,leftTitle:N="Available",rightTitle:S="Selected",searchable:g=!0,leftSearchPlaceholder:C="Search...",rightSearchPlaceholder:z="Search...",showCount:B=!0,showCheckboxes:L=!0,maxHeight:T=300,onChange:t,onMoveRight:d,onMoveLeft:m,disabled:o=!1,className:q,testId:R,...W})=>{const[x,y]=n.useState(new Set),[u,j]=n.useState(new Set),[k,A]=n.useState(""),[p,D]=n.useState(""),P=n.useMemo(()=>c.filter(r=>r.label.toLowerCase().includes(k.toLowerCase())),[c,k]),O=n.useMemo(()=>i.filter(r=>r.label.toLowerCase().includes(p.toLowerCase())),[i,p]),E=n.useCallback(r=>{y(a=>{const s=new Set(a);return s.has(r)?s.delete(r):s.add(r),s})},[]),G=n.useCallback(r=>{j(a=>{const s=new Set(a);return s.has(r)?s.delete(r):s.add(r),s})},[]),H=n.useCallback(()=>{const r=c.filter(b=>x.has(b.id)&&!b.disabled),a=c.filter(b=>!x.has(b.id)),s=[...i,...r];y(new Set),t==null||t(a,s),d==null||d(r)},[c,i,x,t,d]),J=n.useCallback(()=>{const r=c.filter(s=>!s.disabled),a=[...i,...r];y(new Set),t==null||t([],a),d==null||d(r)},[c,i,t,d]),K=n.useCallback(()=>{const r=i.filter(b=>u.has(b.id)&&!b.disabled),a=i.filter(b=>!u.has(b.id)),s=[...c,...r];j(new Set),t==null||t(s,a),m==null||m(r)},[c,i,u,t,m]),Q=n.useCallback(()=>{const r=i.filter(s=>!s.disabled),a=[...c,...r];j(new Set),t==null||t(a,[]),m==null||m(r)},[c,i,t,m]),w=(r,a,s,b,Z,f,_,$)=>e.jsxs("div",{className:"ember-flex-1 ember-min-w-0 ember-border ember-border-gray-200 dark:ember-border-gray-700 ember-rounded-lg ember-overflow-hidden",children:[e.jsxs("div",{className:"ember-px-4 ember-py-3 ember-bg-gray-50 dark:ember-bg-gray-800/50 ember-border-b ember-border-gray-200 dark:ember-border-gray-700",children:[e.jsxs("div",{className:"ember-flex ember-items-center ember-justify-between",children:[e.jsx("span",{className:"ember-font-medium ember-text-gray-900 dark:ember-text-gray-100",children:Z}),B&&e.jsxs("span",{className:"ember-text-sm ember-text-gray-500 dark:ember-text-gray-400",children:[s.size,"/",r.length]})]}),g&&e.jsx(F.Input,{value:f,onChange:l=>_(l.target.value),placeholder:$,size:"sm",className:"ember-mt-2",disabled:o})]}),e.jsx("div",{className:"ember-overflow-y-auto",style:{maxHeight:T},children:a.length===0?e.jsx("div",{className:"ember-px-4 ember-py-8 ember-text-center ember-text-gray-500 dark:ember-text-gray-400 ember-text-sm",children:f?"No items match your search":"No items"}):e.jsx("ul",{className:"ember-list-none ember-m-0 ember-p-0",children:a.map(l=>e.jsxs("li",{className:v.cn("ember-flex ember-items-center ember-gap-3 ember-px-4 ember-py-2","ember-border-b ember-border-gray-100 dark:ember-border-gray-800 last:ember-border-b-0",!l.disabled&&!o&&"hover:ember-bg-gray-50 dark:hover:ember-bg-gray-800/30 ember-cursor-pointer",l.disabled&&"ember-opacity-50 ember-cursor-not-allowed"),onClick:()=>!l.disabled&&!o&&b(l.id),children:[L&&e.jsx(M.Checkbox,{checked:s.has(l.id),onChange:()=>b(l.id),disabled:l.disabled||o,size:"sm"}),l.icon&&e.jsx("span",{className:"ember-flex-shrink-0 ember-text-gray-500",children:l.icon}),e.jsxs("div",{className:"ember-flex-1 ember-min-w-0",children:[e.jsx("div",{className:"ember-text-sm ember-text-gray-900 dark:ember-text-gray-100 ember-truncate",children:l.label}),l.secondary&&e.jsx("div",{className:"ember-text-xs ember-text-gray-500 dark:ember-text-gray-400 ember-truncate",children:l.secondary})]})]},l.id))})})]}),U=x.size>0,V=u.size>0,X=c.some(r=>!r.disabled),Y=i.some(r=>!r.disabled);return e.jsxs("div",{className:v.cn("ember-flex ember-items-stretch ember-gap-4",o&&"ember-opacity-60 ember-pointer-events-none",q),"data-testid":R,...W,children:[w(c,P,x,E,N,k,A,C),e.jsxs("div",{className:"ember-flex ember-flex-col ember-justify-center ember-gap-2",children:[e.jsx(h.Button,{variant:"outline",size:"sm",onClick:J,disabled:o||!X,"aria-label":"Move all to right",className:"ember-px-2",children:e.jsx(re,{})}),e.jsx(h.Button,{variant:"outline",size:"sm",onClick:H,disabled:o||!U,"aria-label":"Move selected to right",className:"ember-px-2",children:e.jsx(I,{})}),e.jsx(h.Button,{variant:"outline",size:"sm",onClick:K,disabled:o||!V,"aria-label":"Move selected to left",className:"ember-px-2",children:e.jsx(ee,{})}),e.jsx(h.Button,{variant:"outline",size:"sm",onClick:Q,disabled:o||!Y,"aria-label":"Move all to left",className:"ember-px-2",children:e.jsx(se,{})})]}),w(i,O,u,G,S,p,D,z)]})};exports.TransferList=te;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { TransferListProps } from './TransferList.types';
|
|
3
|
+
/**
|
|
4
|
+
* TransferList - Two-panel list for transferring items between collections
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```tsx
|
|
8
|
+
* const [left, setLeft] = useState([{ id: 1, label: 'Item 1' }]);
|
|
9
|
+
* const [right, setRight] = useState([]);
|
|
10
|
+
*
|
|
11
|
+
* <TransferList
|
|
12
|
+
* leftItems={left}
|
|
13
|
+
* rightItems={right}
|
|
14
|
+
* leftTitle="Available"
|
|
15
|
+
* rightTitle="Selected"
|
|
16
|
+
* onChange={(l, r) => { setLeft(l); setRight(r); }}
|
|
17
|
+
* />
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
export declare const TransferList: FC<TransferListProps>;
|
|
21
|
+
export default TransferList;
|