@taiv/ui 1.15.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/assets.d.ts +12 -1
- package/dist/assets/assets.d.ts.map +1 -1
- package/dist/assets/assets.js +22 -16
- package/dist/assets/brand/taiv-favicon-dark.png +0 -0
- package/dist/assets/brand/taiv-favicon-light.png +0 -0
- package/dist/assets/brand/taiv-icon-black.svg +10 -0
- package/dist/assets/brand/taiv-icon-dark.svg +17 -0
- package/dist/assets/brand/taiv-icon-white.svg +17 -0
- package/dist/assets/brand/taiv-logo-black.svg +16 -0
- package/dist/assets/brand/taiv-logo-dark.svg +23 -0
- package/dist/assets/brand/taiv-logo-old.svg +1 -0
- package/dist/assets/brand/taiv-logo-purple.svg +16 -0
- package/dist/assets/brand/taiv-logo-white.svg +23 -0
- package/dist/assets/icons.d.ts +1 -1
- package/dist/assets/icons.d.ts.map +1 -1
- package/dist/assets/icons.js +57 -53
- package/dist/assets/index.d.ts +3 -0
- package/dist/assets/index.d.ts.map +1 -0
- package/dist/assets/index.js +2 -0
- package/dist/components/Data/BigCalendar/BigCalendar.d.ts +26 -0
- package/dist/components/Data/BigCalendar/BigCalendar.d.ts.map +1 -0
- package/dist/components/Data/BigCalendar/BigCalendar.js +54 -0
- package/dist/components/Data/BigCalendar/BigCalendar.stories.d.ts +8 -0
- package/dist/components/Data/BigCalendar/BigCalendar.stories.d.ts.map +1 -0
- package/dist/components/Data/BigCalendar/BigCalendar.stories.js +77 -0
- package/dist/components/Data/Calendar/Calendar.d.ts +102 -0
- package/dist/components/Data/Calendar/Calendar.d.ts.map +1 -0
- package/dist/components/Data/Calendar/Calendar.js +671 -0
- package/dist/components/Data/Calendar/Calendar.stories.d.ts +10 -0
- package/dist/components/Data/Calendar/Calendar.stories.d.ts.map +1 -0
- package/dist/components/Data/Calendar/Calendar.stories.js +87 -0
- package/dist/components/Data/MediaPill/MediaPill.d.ts +27 -0
- package/dist/components/Data/MediaPill/MediaPill.d.ts.map +1 -0
- package/dist/components/Data/MediaPill/MediaPill.js +53 -0
- package/dist/components/Data/MediaPill/MediaPill.stories.d.ts +10 -0
- package/dist/components/Data/MediaPill/MediaPill.stories.d.ts.map +1 -0
- package/dist/components/Data/MediaPill/MediaPill.stories.js +51 -0
- package/dist/components/Info/Avatar/Avatar.d.ts +9 -0
- package/dist/components/Info/Avatar/Avatar.d.ts.map +1 -0
- package/dist/components/Info/Avatar/Avatar.js +36 -0
- package/dist/components/Info/Avatar/Avatar.stories.d.ts +9 -0
- package/dist/components/Info/Avatar/Avatar.stories.d.ts.map +1 -0
- package/dist/components/Info/Avatar/Avatar.stories.js +78 -0
- package/dist/components/Info/Badge/Badge.stories.d.ts.map +1 -1
- package/dist/components/Info/Badge/Badge.stories.js +21 -6
- package/dist/components/Info/Badge/sizes.d.ts +10 -10
- package/dist/components/Info/Badge/sizes.js +16 -16
- package/dist/components/Info/Badge/variants.d.ts +4 -4
- package/dist/components/Info/Badge/variants.d.ts.map +1 -1
- package/dist/components/Info/Badge/variants.js +26 -13
- package/dist/components/Info/Drawer/Drawer.d.ts +24 -0
- package/dist/components/Info/Drawer/Drawer.d.ts.map +1 -0
- package/dist/components/Info/Drawer/Drawer.js +44 -0
- package/dist/components/Info/Drawer/Drawer.stories.d.ts +10 -0
- package/dist/components/Info/Drawer/Drawer.stories.d.ts.map +1 -0
- package/dist/components/Info/Drawer/Drawer.stories.js +47 -0
- package/dist/components/Info/HoverCard/HoverCard.d.ts +16 -0
- package/dist/components/Info/HoverCard/HoverCard.d.ts.map +1 -0
- package/dist/components/Info/HoverCard/HoverCard.js +26 -0
- package/dist/components/Info/HoverCard/HoverCard.stories.d.ts +11 -0
- package/dist/components/Info/HoverCard/HoverCard.stories.d.ts.map +1 -0
- package/dist/components/Info/HoverCard/HoverCard.stories.js +86 -0
- package/dist/components/Info/HoverCard/HoverCardMenuItem.d.ts +12 -0
- package/dist/components/Info/HoverCard/HoverCardMenuItem.d.ts.map +1 -0
- package/dist/components/Info/HoverCard/HoverCardMenuItem.js +22 -0
- package/dist/components/Info/Indicator/Indicator.d.ts +3 -0
- package/dist/components/Info/Indicator/Indicator.d.ts.map +1 -0
- package/dist/components/Info/Indicator/Indicator.js +1 -0
- package/dist/components/Info/Indicator/Indicator.stories.d.ts +11 -0
- package/dist/components/Info/Indicator/Indicator.stories.d.ts.map +1 -0
- package/dist/components/Info/Indicator/Indicator.stories.js +123 -0
- package/dist/components/Info/InfoCard/InfoCard.d.ts +2 -2
- package/dist/components/Info/InfoCard/InfoCard.d.ts.map +1 -1
- package/dist/components/Info/InfoCard/InfoCard.js +5 -5
- package/dist/components/Info/MobileDrawer/MobileDrawer.d.ts +30 -0
- package/dist/components/Info/MobileDrawer/MobileDrawer.d.ts.map +1 -0
- package/dist/components/Info/MobileDrawer/MobileDrawer.js +52 -0
- package/dist/components/Info/MobileDrawer/MobileDrawer.stories.d.ts +9 -0
- package/dist/components/Info/MobileDrawer/MobileDrawer.stories.d.ts.map +1 -0
- package/dist/components/Info/MobileDrawer/MobileDrawer.stories.js +38 -0
- package/dist/components/Info/Modals/FormModal/FormModal.d.ts +17 -1
- package/dist/components/Info/Modals/FormModal/FormModal.d.ts.map +1 -1
- package/dist/components/Info/Modals/FormModal/FormModal.js +30 -12
- package/dist/components/Info/Modals/FormModalV2/FormModalV2.d.ts +60 -0
- package/dist/components/Info/Modals/FormModalV2/FormModalV2.d.ts.map +1 -0
- package/dist/components/Info/Modals/FormModalV2/FormModalV2.js +96 -0
- package/dist/components/Info/Modals/Modal/Modal.d.ts.map +1 -1
- package/dist/components/Info/Modals/Modal/Modal.js +9 -1
- package/dist/components/Info/Modals/variants.d.ts +61 -41
- package/dist/components/Info/Modals/variants.d.ts.map +1 -1
- package/dist/components/Info/Modals/variants.js +58 -38
- package/dist/components/Info/Notifications/Notifications.stories.d.ts +1 -0
- package/dist/components/Info/Notifications/Notifications.stories.d.ts.map +1 -1
- package/dist/components/Info/Notifications/Notifications.stories.js +31 -0
- package/dist/components/Info/Notifications/variants.d.ts +25 -19
- package/dist/components/Info/Notifications/variants.d.ts.map +1 -1
- package/dist/components/Info/Notifications/variants.js +30 -24
- package/dist/components/Info/ResponsiveDrawer/ResponsiveDrawer.d.ts +37 -0
- package/dist/components/Info/ResponsiveDrawer/ResponsiveDrawer.d.ts.map +1 -0
- package/dist/components/Info/ResponsiveDrawer/ResponsiveDrawer.js +17 -0
- package/dist/components/Info/ResponsiveDrawer/ResponsiveDrawer.stories.d.ts +7 -0
- package/dist/components/Info/ResponsiveDrawer/ResponsiveDrawer.stories.d.ts.map +1 -0
- package/dist/components/Info/ResponsiveDrawer/ResponsiveDrawer.stories.js +26 -0
- package/dist/components/Info/Tooltips/InfoTooltip/InfoTooltip.d.ts +1 -1
- package/dist/components/Info/Tooltips/InfoTooltip/InfoTooltip.d.ts.map +1 -1
- package/dist/components/Info/Tooltips/InfoTooltip/InfoTooltip.js +9 -3
- package/dist/components/Info/Tooltips/Popover/Popover.d.ts +16 -0
- package/dist/components/Info/Tooltips/Popover/Popover.d.ts.map +1 -0
- package/dist/components/Info/Tooltips/Popover/Popover.js +32 -0
- package/dist/components/Info/Tooltips/Tooltip/Tooltip.d.ts +5 -1
- package/dist/components/Info/Tooltips/Tooltip/Tooltip.d.ts.map +1 -1
- package/dist/components/Info/Tooltips/Tooltip/Tooltip.js +10 -8
- package/dist/components/Inputs/Buttons/Button/Button.d.ts +3 -1
- package/dist/components/Inputs/Buttons/Button/Button.d.ts.map +1 -1
- package/dist/components/Inputs/Buttons/Button/Button.js +38 -5
- package/dist/components/Inputs/Buttons/Button/Button.stories.d.ts +1 -0
- package/dist/components/Inputs/Buttons/Button/Button.stories.d.ts.map +1 -1
- package/dist/components/Inputs/Buttons/Button/Button.stories.js +105 -79
- package/dist/components/Inputs/Buttons/IconButton/IconButton.d.ts +7 -2
- package/dist/components/Inputs/Buttons/IconButton/IconButton.d.ts.map +1 -1
- package/dist/components/Inputs/Buttons/IconButton/IconButton.js +35 -11
- package/dist/components/Inputs/Buttons/IconButton/IconButton.stories.d.ts +1 -0
- package/dist/components/Inputs/Buttons/IconButton/IconButton.stories.d.ts.map +1 -1
- package/dist/components/Inputs/Buttons/IconButton/IconButton.stories.js +100 -74
- package/dist/components/Inputs/Buttons/IconButton/sizes.d.ts +15 -0
- package/dist/components/Inputs/Buttons/IconButton/sizes.d.ts.map +1 -1
- package/dist/components/Inputs/Buttons/IconButton/sizes.js +3 -0
- package/dist/components/Inputs/Buttons/shared/variants.d.ts +399 -164
- package/dist/components/Inputs/Buttons/shared/variants.d.ts.map +1 -1
- package/dist/components/Inputs/Buttons/shared/variants.js +353 -143
- package/dist/components/Inputs/ColorPickerTrigger/ColorPickerTrigger.d.ts +40 -0
- package/dist/components/Inputs/ColorPickerTrigger/ColorPickerTrigger.d.ts.map +1 -0
- package/dist/components/Inputs/ColorPickerTrigger/ColorPickerTrigger.js +139 -0
- package/dist/components/Inputs/ColorPickerTrigger/ColorPickerTrigger.stories.d.ts +13 -0
- package/dist/components/Inputs/ColorPickerTrigger/ColorPickerTrigger.stories.d.ts.map +1 -0
- package/dist/components/Inputs/ColorPickerTrigger/ColorPickerTrigger.stories.js +75 -0
- package/dist/components/Inputs/ColorSwatch/ColorSwatch.d.ts +27 -0
- package/dist/components/Inputs/ColorSwatch/ColorSwatch.d.ts.map +1 -0
- package/dist/components/Inputs/ColorSwatch/ColorSwatch.js +46 -0
- package/dist/components/Inputs/Controls/DaysOfWeek/DaysOfWeek.d.ts +32 -0
- package/dist/components/Inputs/Controls/DaysOfWeek/DaysOfWeek.d.ts.map +1 -0
- package/dist/components/Inputs/Controls/DaysOfWeek/DaysOfWeek.js +92 -0
- package/dist/components/Inputs/Controls/SegmentedControl/SegmentedControl.d.ts +11 -8
- package/dist/components/Inputs/Controls/SegmentedControl/SegmentedControl.d.ts.map +1 -1
- package/dist/components/Inputs/Controls/SegmentedControl/SegmentedControl.js +20 -12
- package/dist/components/Inputs/Controls/Toggle/Toggle.d.ts +25 -11
- package/dist/components/Inputs/Controls/Toggle/Toggle.d.ts.map +1 -1
- package/dist/components/Inputs/Controls/Toggle/Toggle.js +67 -20
- package/dist/components/Inputs/Controls/Toggle/Toggle.stories.d.ts +1 -0
- package/dist/components/Inputs/Controls/Toggle/Toggle.stories.d.ts.map +1 -1
- package/dist/components/Inputs/Controls/Toggle/Toggle.stories.js +86 -69
- package/dist/components/Inputs/Dates/DatePicker/DatePicker.d.ts.map +1 -1
- package/dist/components/Inputs/Dates/DatePicker/DatePicker.js +23 -7
- package/dist/components/Inputs/Dates/DateTimePicker/DateTimePicker.d.ts +12 -0
- package/dist/components/Inputs/Dates/DateTimePicker/DateTimePicker.d.ts.map +1 -0
- package/dist/components/Inputs/Dates/DateTimePicker/DateTimePicker.js +87 -0
- package/dist/components/Inputs/Dates/DateTimePicker/DateTimePicker.stories.d.ts +13 -0
- package/dist/components/Inputs/Dates/DateTimePicker/DateTimePicker.stories.d.ts.map +1 -0
- package/dist/components/Inputs/Dates/DateTimePicker/DateTimePicker.stories.js +239 -0
- package/dist/components/Inputs/Dates/TimeInput/TimeInput.d.ts +19 -0
- package/dist/components/Inputs/Dates/TimeInput/TimeInput.d.ts.map +1 -0
- package/dist/components/Inputs/Dates/TimeInput/TimeInput.js +51 -0
- package/dist/components/Inputs/Dropdowns/FontSelect/FontSelect.d.ts.map +1 -1
- package/dist/components/Inputs/Dropdowns/FontSelect/FontSelect.js +8 -1
- package/dist/components/Inputs/Dropdowns/MultiSelect/MultiSelect.d.ts +2 -2
- package/dist/components/Inputs/Dropdowns/MultiSelect/MultiSelect.d.ts.map +1 -1
- package/dist/components/Inputs/Dropdowns/MultiSelect/MultiSelect.js +76 -57
- package/dist/components/Inputs/Dropdowns/Select/Select.d.ts.map +1 -1
- package/dist/components/Inputs/Dropdowns/Select/Select.js +5 -3
- package/dist/components/Inputs/Dropzone/Dropzone.d.ts +23 -0
- package/dist/components/Inputs/Dropzone/Dropzone.d.ts.map +1 -0
- package/dist/components/Inputs/Dropzone/Dropzone.js +44 -0
- package/dist/components/Inputs/Dropzone/Dropzone.stories.d.ts +12 -0
- package/dist/components/Inputs/Dropzone/Dropzone.stories.d.ts.map +1 -0
- package/dist/components/Inputs/Dropzone/Dropzone.stories.js +114 -0
- package/dist/components/Inputs/TextInputs/NumberInput/NumberInput.d.ts.map +1 -1
- package/dist/components/Inputs/TextInputs/NumberInput/NumberInput.js +4 -1
- package/dist/components/Inputs/TextInputs/NumberInput/ResponsiveNumberInput.d.ts +46 -0
- package/dist/components/Inputs/TextInputs/NumberInput/ResponsiveNumberInput.d.ts.map +1 -0
- package/dist/components/Inputs/TextInputs/NumberInput/ResponsiveNumberInput.js +60 -0
- package/dist/components/Layout/Accordion/Accordion.d.ts +16 -0
- package/dist/components/Layout/Accordion/Accordion.d.ts.map +1 -0
- package/dist/components/Layout/Accordion/Accordion.js +63 -0
- package/dist/components/Layout/Accordion/Accordion.stories.d.ts +11 -0
- package/dist/components/Layout/Accordion/Accordion.stories.d.ts.map +1 -0
- package/dist/components/Layout/Accordion/Accordion.stories.js +148 -0
- package/dist/components/Layout/AutoGrid/AutoGrid.d.ts +20 -5
- package/dist/components/Layout/AutoGrid/AutoGrid.d.ts.map +1 -1
- package/dist/components/Layout/AutoGrid/AutoGrid.js +51 -3
- package/dist/components/Layout/AutoGrid/AutoGrid.stories.d.ts +1 -0
- package/dist/components/Layout/AutoGrid/AutoGrid.stories.d.ts.map +1 -1
- package/dist/components/Layout/AutoGrid/AutoGrid.stories.js +39 -29
- package/dist/components/Layout/BottomActionBar/BottomActionBar.d.ts +40 -0
- package/dist/components/Layout/BottomActionBar/BottomActionBar.d.ts.map +1 -0
- package/dist/components/Layout/BottomActionBar/BottomActionBar.js +79 -0
- package/dist/components/Layout/BottomActionBar/BottomActionBar.stories.d.ts +10 -0
- package/dist/components/Layout/BottomActionBar/BottomActionBar.stories.d.ts.map +1 -0
- package/dist/components/Layout/BottomActionBar/BottomActionBar.stories.js +102 -0
- package/dist/components/Layout/Card/Card.d.ts +1 -1
- package/dist/components/Layout/Card/Card.d.ts.map +1 -1
- package/dist/components/Layout/Container/Container.d.ts +3 -0
- package/dist/components/Layout/Container/Container.d.ts.map +1 -0
- package/dist/components/Layout/Container/Container.js +1 -0
- package/dist/components/Layout/Container/Container.stories.d.ts +8 -0
- package/dist/components/Layout/Container/Container.stories.d.ts.map +1 -0
- package/dist/components/Layout/Container/Container.stories.js +52 -0
- package/dist/components/Layout/DataState/DataState.d.ts +34 -0
- package/dist/components/Layout/DataState/DataState.d.ts.map +1 -0
- package/dist/components/Layout/DataState/DataState.js +22 -0
- package/dist/components/Layout/DataState/DataState.stories.d.ts +11 -0
- package/dist/components/Layout/DataState/DataState.stories.d.ts.map +1 -0
- package/dist/components/Layout/DataState/DataState.stories.js +38 -0
- package/dist/components/Layout/Divider/Divider.d.ts.map +1 -1
- package/dist/components/Layout/Divider/Divider.js +4 -2
- package/dist/components/Layout/Group/Group.d.ts +1 -1
- package/dist/components/Layout/Group/Group.d.ts.map +1 -1
- package/dist/components/Layout/Loader/Loader.d.ts +1 -1
- package/dist/components/Layout/Loader/Loader.d.ts.map +1 -1
- package/dist/components/Layout/Loader/Loader.js +3 -2
- package/dist/components/Layout/Navbar/Navbar.d.ts +15 -0
- package/dist/components/Layout/Navbar/Navbar.d.ts.map +1 -0
- package/dist/components/Layout/Navbar/Navbar.js +20 -0
- package/dist/components/Layout/Navbar/Navbar.stories.d.ts +9 -0
- package/dist/components/Layout/Navbar/Navbar.stories.d.ts.map +1 -0
- package/dist/components/Layout/Navbar/Navbar.stories.js +98 -0
- package/dist/components/Layout/Page/Page.d.ts +13 -0
- package/dist/components/Layout/Page/Page.d.ts.map +1 -0
- package/dist/components/Layout/Page/Page.js +13 -0
- package/dist/components/Layout/Pagination/Pagination.d.ts +23 -0
- package/dist/components/Layout/Pagination/Pagination.d.ts.map +1 -0
- package/dist/components/Layout/Pagination/Pagination.js +53 -0
- package/dist/components/Layout/Pagination/Pagination.stories.d.ts +10 -0
- package/dist/components/Layout/Pagination/Pagination.stories.d.ts.map +1 -0
- package/dist/components/Layout/Pagination/Pagination.stories.js +76 -0
- package/dist/components/Layout/ScrollArea/ScrollArea.d.ts +3 -0
- package/dist/components/Layout/ScrollArea/ScrollArea.d.ts.map +1 -0
- package/dist/components/Layout/ScrollArea/ScrollArea.js +1 -0
- package/dist/components/Layout/ScrollArea/ScrollArea.stories.d.ts +8 -0
- package/dist/components/Layout/ScrollArea/ScrollArea.stories.d.ts.map +1 -0
- package/dist/components/Layout/ScrollArea/ScrollArea.stories.js +62 -0
- package/dist/components/Layout/Tabs/Tabs.d.ts +16 -5
- package/dist/components/Layout/Tabs/Tabs.d.ts.map +1 -1
- package/dist/components/Layout/Tabs/Tabs.js +53 -18
- package/dist/components/Layout/Tabs/Tabs.stories.d.ts.map +1 -1
- package/dist/components/Layout/Tabs/Tabs.stories.js +39 -39
- package/dist/components/Layout/VirtualGrid/VirtualGrid.d.ts +63 -0
- package/dist/components/Layout/VirtualGrid/VirtualGrid.d.ts.map +1 -0
- package/dist/components/Layout/VirtualGrid/VirtualGrid.js +159 -0
- package/dist/components/Misc/Burger/Burger.d.ts +6 -0
- package/dist/components/Misc/Burger/Burger.d.ts.map +1 -0
- package/dist/components/Misc/Burger/Burger.js +7 -0
- package/dist/components/Misc/Burger/Burger.stories.d.ts +10 -0
- package/dist/components/Misc/Burger/Burger.stories.d.ts.map +1 -0
- package/dist/components/Misc/Burger/Burger.stories.js +86 -0
- package/dist/components/Misc/Carousel/Carousel.d.ts +32 -0
- package/dist/components/Misc/Carousel/Carousel.d.ts.map +1 -0
- package/dist/components/Misc/Carousel/Carousel.js +16 -0
- package/dist/components/Misc/DragHandle/DragHandle.d.ts +19 -0
- package/dist/components/Misc/DragHandle/DragHandle.d.ts.map +1 -0
- package/dist/components/Misc/DragHandle/DragHandle.js +39 -0
- package/dist/components/Misc/DragHandle/DragHandle.stories.d.ts +9 -0
- package/dist/components/Misc/DragHandle/DragHandle.stories.d.ts.map +1 -0
- package/dist/components/Misc/DragHandle/DragHandle.stories.js +54 -0
- package/dist/components/Misc/FAB/FAB.d.ts +54 -0
- package/dist/components/Misc/FAB/FAB.d.ts.map +1 -0
- package/dist/components/Misc/FAB/FAB.js +53 -0
- package/dist/components/Misc/FAB/FAB.stories.d.ts +10 -0
- package/dist/components/Misc/FAB/FAB.stories.d.ts.map +1 -0
- package/dist/components/Misc/FAB/FAB.stories.js +100 -0
- package/dist/components/Misc/FloatingToolbar/FloatingToolbar.d.ts +50 -0
- package/dist/components/Misc/FloatingToolbar/FloatingToolbar.d.ts.map +1 -0
- package/dist/components/Misc/FloatingToolbar/FloatingToolbar.js +40 -0
- package/dist/components/Misc/FloatingToolbar/FloatingToolbar.stories.d.ts +9 -0
- package/dist/components/Misc/FloatingToolbar/FloatingToolbar.stories.d.ts.map +1 -0
- package/dist/components/Misc/FloatingToolbar/FloatingToolbar.stories.js +53 -0
- package/dist/components/Misc/HoverAction/HoverAction.d.ts +50 -0
- package/dist/components/Misc/HoverAction/HoverAction.d.ts.map +1 -0
- package/dist/components/Misc/HoverAction/HoverAction.js +61 -0
- package/dist/components/Misc/HoverAction/HoverAction.stories.d.ts +12 -0
- package/dist/components/Misc/HoverAction/HoverAction.stories.d.ts.map +1 -0
- package/dist/components/Misc/HoverAction/HoverAction.stories.js +96 -0
- package/dist/components/Misc/IconBadge/IconBadge.d.ts.map +1 -1
- package/dist/components/Misc/IconBadge/IconBadge.js +8 -6
- package/dist/components/Misc/Image/Image.d.ts +3 -0
- package/dist/components/Misc/Image/Image.d.ts.map +1 -0
- package/dist/components/Misc/Image/Image.js +1 -0
- package/dist/components/Misc/Image/Image.stories.d.ts +11 -0
- package/dist/components/Misc/Image/Image.stories.d.ts.map +1 -0
- package/dist/components/Misc/Image/Image.stories.js +63 -0
- package/dist/components/Misc/Kbd/Kbd.d.ts +6 -0
- package/dist/components/Misc/Kbd/Kbd.d.ts.map +1 -0
- package/dist/components/Misc/Kbd/Kbd.js +16 -0
- package/dist/components/Misc/Kbd/Kbd.stories.d.ts +9 -0
- package/dist/components/Misc/Kbd/Kbd.stories.d.ts.map +1 -0
- package/dist/components/Misc/Kbd/Kbd.stories.js +52 -0
- package/dist/components/Misc/Menu/Menu.d.ts +17 -0
- package/dist/components/Misc/Menu/Menu.d.ts.map +1 -0
- package/dist/components/Misc/Menu/Menu.js +52 -0
- package/dist/components/Misc/OverflowFade/OverflowFade.d.ts +42 -0
- package/dist/components/Misc/OverflowFade/OverflowFade.d.ts.map +1 -0
- package/dist/components/Misc/OverflowFade/OverflowFade.js +110 -0
- package/dist/components/Misc/OverflowFade/OverflowFade.stories.d.ts +11 -0
- package/dist/components/Misc/OverflowFade/OverflowFade.stories.d.ts.map +1 -0
- package/dist/components/Misc/OverflowFade/OverflowFade.stories.js +112 -0
- package/dist/components/Misc/Picker/Picker.d.ts +62 -0
- package/dist/components/Misc/Picker/Picker.d.ts.map +1 -0
- package/dist/components/Misc/Picker/Picker.js +111 -0
- package/dist/components/Misc/Picker/Picker.stories.d.ts +14 -0
- package/dist/components/Misc/Picker/Picker.stories.d.ts.map +1 -0
- package/dist/components/Misc/Picker/Picker.stories.js +154 -0
- package/dist/components/Misc/SelectableObject/SelectableObject.d.ts +38 -0
- package/dist/components/Misc/SelectableObject/SelectableObject.d.ts.map +1 -0
- package/dist/components/Misc/SelectableObject/SelectableObject.js +70 -0
- package/dist/components/Misc/SelectableObject/SelectableObject.stories.d.ts +11 -0
- package/dist/components/Misc/SelectableObject/SelectableObject.stories.d.ts.map +1 -0
- package/dist/components/Misc/SelectableObject/SelectableObject.stories.js +84 -0
- package/dist/components/Misc/SelectionToolbar/SelectionToolbar.d.ts +26 -0
- package/dist/components/Misc/SelectionToolbar/SelectionToolbar.d.ts.map +1 -0
- package/dist/components/Misc/SelectionToolbar/SelectionToolbar.js +41 -0
- package/dist/components/Misc/SelectionToolbar/SelectionToolbar.stories.d.ts +10 -0
- package/dist/components/Misc/SelectionToolbar/SelectionToolbar.stories.d.ts.map +1 -0
- package/dist/components/Misc/SelectionToolbar/SelectionToolbar.stories.js +48 -0
- package/dist/components/Misc/Stepper/Step.stories.d.ts +118 -118
- package/dist/components/Misc/Stepper/variants.d.ts +1 -1
- package/dist/components/Misc/Timeline/Timeline.d.ts +18 -0
- package/dist/components/Misc/Timeline/Timeline.d.ts.map +1 -0
- package/dist/components/Misc/Timeline/Timeline.js +38 -0
- package/dist/components/Misc/Timeline/Timeline.stories.d.ts +8 -0
- package/dist/components/Misc/Timeline/Timeline.stories.d.ts.map +1 -0
- package/dist/components/Misc/Timeline/Timeline.stories.js +54 -0
- package/dist/components/Typography/InlineEditableText/InlineEditableText.d.ts +35 -0
- package/dist/components/Typography/InlineEditableText/InlineEditableText.d.ts.map +1 -0
- package/dist/components/Typography/InlineEditableText/InlineEditableText.js +112 -0
- package/dist/components/Typography/InlineEditableText/InlineEditableText.stories.d.ts +11 -0
- package/dist/components/Typography/InlineEditableText/InlineEditableText.stories.d.ts.map +1 -0
- package/dist/components/Typography/InlineEditableText/InlineEditableText.stories.js +48 -0
- package/dist/components/index.d.ts +148 -66
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +110 -68
- package/dist/constants/colors.d.ts +117 -91
- package/dist/constants/colors.d.ts.map +1 -1
- package/dist/constants/colors.js +56 -43
- package/dist/constants/font.d.ts +4 -4
- package/dist/constants/font.js +2 -2
- package/dist/hooks/index.d.ts +9 -1
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +7 -1
- package/dist/hooks/useConfirmationModal.d.ts.map +1 -1
- package/dist/hooks/useConfirmationModal.js +20 -1
- package/dist/hooks/useDisclosure.d.ts +11 -0
- package/dist/hooks/useDisclosure.d.ts.map +1 -0
- package/dist/hooks/useDisclosure.js +10 -0
- package/dist/hooks/useHeadroom.d.ts +18 -0
- package/dist/hooks/useHeadroom.d.ts.map +1 -0
- package/dist/hooks/useHeadroom.js +17 -0
- package/dist/hooks/useInfoModal.d.ts.map +1 -1
- package/dist/hooks/useInfoModal.js +13 -1
- package/dist/hooks/useMediaQuery.d.ts +1 -0
- package/dist/hooks/useMediaQuery.d.ts.map +1 -1
- package/dist/hooks/useMediaQuery.js +1 -0
- package/dist/hooks/useNotifications.d.ts +39 -7
- package/dist/hooks/useNotifications.d.ts.map +1 -1
- package/dist/hooks/useNotifications.js +108 -5
- package/dist/hooks/usePagination.d.ts +11 -0
- package/dist/hooks/usePagination.d.ts.map +1 -0
- package/dist/hooks/usePagination.js +2 -0
- package/dist/hooks/useScrollLock.d.ts +21 -0
- package/dist/hooks/useScrollLock.d.ts.map +1 -0
- package/dist/hooks/useScrollLock.js +20 -0
- package/dist/index.d.ts +5 -5
- package/dist/index.js +5 -5
- package/dist/styles/iosInputZoomFix.d.ts +31 -0
- package/dist/styles/iosInputZoomFix.d.ts.map +1 -0
- package/dist/styles/iosInputZoomFix.js +135 -0
- package/dist/utils/bytes.d.ts +10 -0
- package/dist/utils/bytes.d.ts.map +1 -0
- package/dist/utils/bytes.js +17 -0
- package/dist/utils/datetime.d.ts +18 -0
- package/dist/utils/datetime.d.ts.map +1 -0
- package/dist/utils/datetime.js +42 -0
- package/dist/utils/duration.d.ts +17 -0
- package/dist/utils/duration.d.ts.map +1 -0
- package/dist/utils/duration.js +30 -0
- package/dist/utils/index.d.ts +8 -2
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +7 -2
- package/dist/utils/sort.d.ts +44 -0
- package/dist/utils/sort.d.ts.map +1 -0
- package/dist/utils/sort.js +53 -0
- package/dist/utils/string.d.ts +22 -0
- package/dist/utils/string.d.ts.map +1 -0
- package/dist/utils/string.js +25 -0
- package/package.json +26 -2
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { NavbarProps as MantineNavbarProps, CSSObject } from '@mantine/core';
|
|
3
|
+
export interface NavbarProps extends Omit<MantineNavbarProps, 'styles'> {
|
|
4
|
+
styles?: Record<string, CSSObject>;
|
|
5
|
+
}
|
|
6
|
+
export declare const Navbar: (({ styles, children, ...props }: NavbarProps) => import("react/jsx-runtime").JSX.Element) & {
|
|
7
|
+
Section: (<C = "div">(props: import("@mantine/utils").PolymorphicComponentProps<C, import("@mantine/core/lib/AppShell/HorizontalSection/Section/Section").SectionProps>) => React.ReactElement<any, string | React.JSXElementConstructor<any>>) & Omit<React.FunctionComponent<(import("@mantine/core/lib/AppShell/HorizontalSection/Section/Section").SectionProps & {
|
|
8
|
+
component?: any;
|
|
9
|
+
} & Omit<Pick<any, string | number | symbol>, "component" | keyof import("@mantine/core/lib/AppShell/HorizontalSection/Section/Section").SectionProps> & {
|
|
10
|
+
ref?: any;
|
|
11
|
+
}) | (import("@mantine/core/lib/AppShell/HorizontalSection/Section/Section").SectionProps & {
|
|
12
|
+
component: React.ElementType<any>;
|
|
13
|
+
})>, never> & Record<string, never>;
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=Navbar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Navbar.d.ts","sourceRoot":"","sources":["../../../../src/components/Layout/Navbar/Navbar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAEL,WAAW,IAAI,kBAAkB,EACjC,SAAS,EACV,MAAM,eAAe,CAAC;AAKvB,MAAM,WAAW,WAAY,SAAQ,IAAI,CAAC,kBAAkB,EAAE,QAAQ,CAAC;IACrE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;CACpC;AAoBD,eAAO,MAAM,MAAM,oCAlBsC,WAAW;;;;;;;;CAoBlE,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Navbar as MantineNavbar, } from '@mantine/core';
|
|
3
|
+
import { colors } from '../../../constants/colors';
|
|
4
|
+
import { fontBase } from '../../../constants/font';
|
|
5
|
+
import { spacing } from '../../../constants/spacing';
|
|
6
|
+
const NavbarComponent = ({ styles, children, ...props }) => {
|
|
7
|
+
const style = {
|
|
8
|
+
root: {
|
|
9
|
+
...fontBase,
|
|
10
|
+
backgroundColor: 'white',
|
|
11
|
+
borderRight: `1px solid ${colors.neutral[100]}`,
|
|
12
|
+
padding: spacing.lg,
|
|
13
|
+
},
|
|
14
|
+
...styles,
|
|
15
|
+
};
|
|
16
|
+
return (_jsx(MantineNavbar, { styles: style, ...props, children: children }));
|
|
17
|
+
};
|
|
18
|
+
export const Navbar = Object.assign(NavbarComponent, {
|
|
19
|
+
Section: MantineNavbar.Section,
|
|
20
|
+
});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/react-vite';
|
|
2
|
+
import { Navbar } from './Navbar';
|
|
3
|
+
declare const meta: Meta<typeof Navbar>;
|
|
4
|
+
export default meta;
|
|
5
|
+
type Story = StoryObj<typeof meta>;
|
|
6
|
+
export declare const Default: Story;
|
|
7
|
+
export declare const WithSections: Story;
|
|
8
|
+
export declare const WithoutBorder: Story;
|
|
9
|
+
//# sourceMappingURL=Navbar.stories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Navbar.stories.d.ts","sourceRoot":"","sources":["../../../../src/components/Layout/Navbar/Navbar.stories.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AASlC,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,MAAM,CAqD7B,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAkBnC,eAAO,MAAM,OAAO,EAAE,KAgBrB,CAAC;AAIF,eAAO,MAAM,YAAY,EAAE,KAuC1B,CAAC;AAIF,eAAO,MAAM,aAAa,EAAE,KAe3B,CAAC"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Navbar } from './Navbar';
|
|
3
|
+
import { Divider } from '../Divider/Divider';
|
|
4
|
+
import { Stack } from '../Stack/Stack';
|
|
5
|
+
import { Text } from '../../Typography/Text/Text';
|
|
6
|
+
import { Title } from '../../Typography/Title/Title';
|
|
7
|
+
import { UnstyledButton } from '../../Inputs/Buttons/UnstyledButton/UnstyledButton';
|
|
8
|
+
import { neutral } from '../../../constants/colors';
|
|
9
|
+
import { spacing } from '../../../constants/spacing';
|
|
10
|
+
const meta = {
|
|
11
|
+
title: 'Components/Layout/Navbar',
|
|
12
|
+
component: Navbar,
|
|
13
|
+
parameters: {
|
|
14
|
+
layout: 'fullscreen',
|
|
15
|
+
docs: {
|
|
16
|
+
description: {
|
|
17
|
+
component: '[View Mantine Docs](https://v6.mantine.dev/core/navbar/)\n\nNavbar is a left-aligned vertical navigation sidebar. It extends Mantine v6\'s `Navbar` (from AppShell) with Taiv styling: Poppins font, `neutral[100]` right-border, and `spacing.lg` padding.\n\nUse `Navbar.Section` to group content. Add `grow` to a section to have it fill remaining vertical space, pushing subsequent sections to the bottom.',
|
|
18
|
+
},
|
|
19
|
+
},
|
|
20
|
+
},
|
|
21
|
+
argTypes: {
|
|
22
|
+
width: {
|
|
23
|
+
control: false,
|
|
24
|
+
description: 'Navbar width with optional responsive breakpoints',
|
|
25
|
+
table: { type: { summary: '{ base: number; sm?: number; md?: number; ... }' } },
|
|
26
|
+
},
|
|
27
|
+
height: {
|
|
28
|
+
control: { type: 'text' },
|
|
29
|
+
description: 'Navbar height',
|
|
30
|
+
table: { type: { summary: 'string | number' } },
|
|
31
|
+
},
|
|
32
|
+
fixed: {
|
|
33
|
+
control: { type: 'boolean' },
|
|
34
|
+
description: 'Use fixed positioning',
|
|
35
|
+
table: {
|
|
36
|
+
type: { summary: 'boolean' },
|
|
37
|
+
defaultValue: { summary: 'false' },
|
|
38
|
+
},
|
|
39
|
+
},
|
|
40
|
+
withBorder: {
|
|
41
|
+
control: { type: 'boolean' },
|
|
42
|
+
description: 'Show the right-hand border',
|
|
43
|
+
table: {
|
|
44
|
+
type: { summary: 'boolean' },
|
|
45
|
+
defaultValue: { summary: 'true' },
|
|
46
|
+
},
|
|
47
|
+
},
|
|
48
|
+
hidden: {
|
|
49
|
+
control: { type: 'boolean' },
|
|
50
|
+
description: 'Hide the navbar below `hiddenBreakpoint`',
|
|
51
|
+
table: {
|
|
52
|
+
type: { summary: 'boolean' },
|
|
53
|
+
defaultValue: { summary: 'false' },
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
styles: {
|
|
57
|
+
control: { type: 'object' },
|
|
58
|
+
description: 'Style overrides via Mantine styles API',
|
|
59
|
+
table: { type: { summary: 'Record<string, CSSObject>' } },
|
|
60
|
+
},
|
|
61
|
+
},
|
|
62
|
+
};
|
|
63
|
+
export default meta;
|
|
64
|
+
const NavItem = ({ label, active }) => (_jsx(UnstyledButton, { style: {
|
|
65
|
+
padding: `${spacing.sm} ${spacing.md}`,
|
|
66
|
+
borderRadius: '6px',
|
|
67
|
+
backgroundColor: active ? neutral[25] : 'transparent',
|
|
68
|
+
width: '100%',
|
|
69
|
+
textAlign: 'left',
|
|
70
|
+
}, children: _jsx(Text, { variant: active ? 'body' : 'subtle', children: label }) }));
|
|
71
|
+
// ─── Default ─────────────────────────────────────────────────────────────────
|
|
72
|
+
export const Default = {
|
|
73
|
+
args: {
|
|
74
|
+
width: { base: 240 },
|
|
75
|
+
height: 600,
|
|
76
|
+
},
|
|
77
|
+
render: (args) => (_jsx(Navbar, { ...args, children: _jsxs(Stack, { spacing: spacing.xs, children: [_jsx(NavItem, { label: 'Dashboard', active: true }), _jsx(NavItem, { label: 'Campaigns' }), _jsx(NavItem, { label: 'Devices' }), _jsx(NavItem, { label: 'Ad Preferences' }), _jsx(NavItem, { label: 'Reports' })] }) })),
|
|
78
|
+
};
|
|
79
|
+
// ─── Sections with grow (pushes footer to bottom) ────────────────────────────
|
|
80
|
+
export const WithSections = {
|
|
81
|
+
render: () => (_jsxs(Navbar, { width: { base: 240 }, height: 600, children: [_jsx(Navbar.Section, { children: _jsx(Title, { variant: 'cardHeader', mb: spacing.md, children: "Taiv" }) }), _jsx(Divider, { my: spacing.md }), _jsx(Navbar.Section, { grow: true, children: _jsxs(Stack, { spacing: spacing.xs, children: [_jsx(NavItem, { label: 'Dashboard', active: true }), _jsx(NavItem, { label: 'Campaigns' }), _jsx(NavItem, { label: 'Devices' }), _jsx(NavItem, { label: 'Ad Preferences' }), _jsx(NavItem, { label: 'Reports' })] }) }), _jsx(Divider, { my: spacing.md }), _jsx(Navbar.Section, { children: _jsxs(Stack, { spacing: spacing.xs, children: [_jsx(NavItem, { label: 'Settings' }), _jsx(NavItem, { label: 'Log out' })] }) })] })),
|
|
82
|
+
parameters: {
|
|
83
|
+
docs: {
|
|
84
|
+
description: {
|
|
85
|
+
story: 'Apply `grow` to the middle `Navbar.Section` so sibling sections pin to the top and bottom of the sidebar.',
|
|
86
|
+
},
|
|
87
|
+
},
|
|
88
|
+
},
|
|
89
|
+
};
|
|
90
|
+
// ─── Without border ──────────────────────────────────────────────────────────
|
|
91
|
+
export const WithoutBorder = {
|
|
92
|
+
args: {
|
|
93
|
+
width: { base: 240 },
|
|
94
|
+
height: 600,
|
|
95
|
+
withBorder: false,
|
|
96
|
+
},
|
|
97
|
+
render: (args) => (_jsx(Navbar, { ...args, children: _jsxs(Stack, { spacing: spacing.xs, children: [_jsx(NavItem, { label: 'Dashboard', active: true }), _jsx(NavItem, { label: 'Campaigns' }), _jsx(NavItem, { label: 'Devices' })] }) })),
|
|
98
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type ContainerProps } from '@mantine/core';
|
|
2
|
+
export interface PageProps extends Omit<ContainerProps, 'size'> {
|
|
3
|
+
/** Max content width on desktop. Default '1300px'. */
|
|
4
|
+
maxWidth?: string | number;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Standard page wrapper. Caps content width on desktop and tightens
|
|
8
|
+
* horizontal padding on mobile so narrow viewports don't waste real estate.
|
|
9
|
+
* Pages should render `<Page><Stack>...</Stack></Page>` as their outermost
|
|
10
|
+
* structural element.
|
|
11
|
+
*/
|
|
12
|
+
export declare const Page: ({ children, maxWidth, ...props }: PageProps) => import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
//# sourceMappingURL=Page.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Page.d.ts","sourceRoot":"","sources":["../../../../src/components/Layout/Page/Page.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAG/D,MAAM,WAAW,SAAU,SAAQ,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC;IAC7D,sDAAsD;IACtD,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC5B;AAED;;;;;GAKG;AACH,eAAO,MAAM,IAAI,GAAI,kCAIlB,SAAS,4CAYX,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Container } from '@mantine/core';
|
|
3
|
+
import { useMobile } from '../../../hooks';
|
|
4
|
+
/**
|
|
5
|
+
* Standard page wrapper. Caps content width on desktop and tightens
|
|
6
|
+
* horizontal padding on mobile so narrow viewports don't waste real estate.
|
|
7
|
+
* Pages should render `<Page><Stack>...</Stack></Page>` as their outermost
|
|
8
|
+
* structural element.
|
|
9
|
+
*/
|
|
10
|
+
export const Page = ({ children, maxWidth = '1300px', ...props }) => {
|
|
11
|
+
const isMobile = useMobile();
|
|
12
|
+
return (_jsx(Container, { my: '24px', px: isMobile ? '12px' : '32px', size: maxWidth, ...props, children: children }));
|
|
13
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { type PaginationProps as MantinePaginationProps } from '@mantine/core';
|
|
2
|
+
export interface PaginationProps extends Omit<MantinePaginationProps, 'size' | 'radius'> {
|
|
3
|
+
/** Total number of pages */
|
|
4
|
+
total: number;
|
|
5
|
+
/** Active page (controlled) */
|
|
6
|
+
value?: number;
|
|
7
|
+
/** Default active page (uncontrolled) */
|
|
8
|
+
defaultValue?: number;
|
|
9
|
+
/** Called when page changes */
|
|
10
|
+
onChange?: (page: number) => void;
|
|
11
|
+
/** Render first/last edge controls */
|
|
12
|
+
withEdges?: boolean;
|
|
13
|
+
/** Render previous/next controls */
|
|
14
|
+
withControls?: boolean;
|
|
15
|
+
/** Sibling pages shown around the active page */
|
|
16
|
+
siblings?: number;
|
|
17
|
+
/** Pages shown at each boundary */
|
|
18
|
+
boundaries?: number;
|
|
19
|
+
/** Visual size of pagination items */
|
|
20
|
+
size?: 'sm' | 'md' | 'lg';
|
|
21
|
+
}
|
|
22
|
+
export declare const Pagination: ({ size, styles, withControls, ...props }: PaginationProps) => import("react/jsx-runtime").JSX.Element;
|
|
23
|
+
//# sourceMappingURL=Pagination.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Pagination.d.ts","sourceRoot":"","sources":["../../../../src/components/Layout/Pagination/Pagination.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,eAAe,IAAI,sBAAsB,EAC/C,MAAM,eAAe,CAAC;AAMvB,MAAM,WAAW,eACf,SAAQ,IAAI,CAAC,sBAAsB,EAAE,MAAM,GAAG,QAAQ,CAAC;IACvD,4BAA4B;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,+BAA+B;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yCAAyC;IACzC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,sCAAsC;IACtC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,oCAAoC;IACpC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,iDAAiD;IACjD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mCAAmC;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sCAAsC;IACtC,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;CAC3B;AAQD,eAAO,MAAM,UAAU,GAAI,0CAKxB,eAAe,4CA6CjB,CAAC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Pagination as MantinePagination, } from '@mantine/core';
|
|
3
|
+
import { colors } from '../../../constants/colors';
|
|
4
|
+
import { fontBase } from '../../../constants/font';
|
|
5
|
+
import { spacing } from '../../../constants/spacing';
|
|
6
|
+
const SIZE_PX = {
|
|
7
|
+
lg: 36,
|
|
8
|
+
md: 32,
|
|
9
|
+
sm: 28,
|
|
10
|
+
};
|
|
11
|
+
export const Pagination = ({ size = 'md', styles, withControls = true, ...props }) => {
|
|
12
|
+
const itemSize = SIZE_PX[size];
|
|
13
|
+
const style = {
|
|
14
|
+
control: {
|
|
15
|
+
...fontBase,
|
|
16
|
+
'&:hover:not([data-disabled])': {
|
|
17
|
+
backgroundColor: colors.neutral[25],
|
|
18
|
+
color: colors.primary[200],
|
|
19
|
+
},
|
|
20
|
+
'&[data-active]': {
|
|
21
|
+
backgroundColor: colors.primary[200],
|
|
22
|
+
borderColor: colors.primary[200],
|
|
23
|
+
color: 'white',
|
|
24
|
+
},
|
|
25
|
+
'&[data-active]:hover': {
|
|
26
|
+
backgroundColor: colors.primary[200],
|
|
27
|
+
borderColor: colors.primary[200],
|
|
28
|
+
color: 'white',
|
|
29
|
+
},
|
|
30
|
+
'&[data-disabled]': {
|
|
31
|
+
cursor: 'not-allowed',
|
|
32
|
+
opacity: 0.5,
|
|
33
|
+
},
|
|
34
|
+
backgroundColor: 'transparent',
|
|
35
|
+
border: `1px solid ${colors.neutral[50]}`,
|
|
36
|
+
borderRadius: '8px',
|
|
37
|
+
color: colors.neutral[300],
|
|
38
|
+
fontSize: '14px',
|
|
39
|
+
height: itemSize,
|
|
40
|
+
lineHeight: '20px',
|
|
41
|
+
minWidth: itemSize,
|
|
42
|
+
},
|
|
43
|
+
dots: {
|
|
44
|
+
...fontBase,
|
|
45
|
+
color: colors.neutral[200],
|
|
46
|
+
},
|
|
47
|
+
root: {
|
|
48
|
+
gap: spacing.xs,
|
|
49
|
+
},
|
|
50
|
+
...styles,
|
|
51
|
+
};
|
|
52
|
+
return (_jsx(MantinePagination, { styles: style, withControls: withControls, ...props }));
|
|
53
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/react-vite';
|
|
2
|
+
import { Pagination } from './Pagination';
|
|
3
|
+
declare const meta: Meta<typeof Pagination>;
|
|
4
|
+
export default meta;
|
|
5
|
+
type Story = StoryObj<typeof meta>;
|
|
6
|
+
export declare const Default: Story;
|
|
7
|
+
export declare const WithEdges: Story;
|
|
8
|
+
export declare const Controlled: Story;
|
|
9
|
+
export declare const Sizes: Story;
|
|
10
|
+
//# sourceMappingURL=Pagination.stories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Pagination.stories.d.ts","sourceRoot":"","sources":["../../../../src/components/Layout/Pagination/Pagination.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAK1C,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,UAAU,CA8CjC,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAMrB,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,KAMvB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,KAUxB,CAAC;AAEF,eAAO,MAAM,KAAK,EAAE,KAQnB,CAAC"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useState } from 'react';
|
|
3
|
+
import { Pagination } from './Pagination';
|
|
4
|
+
import { Stack } from '../Stack/Stack';
|
|
5
|
+
import { Text } from '../../Typography/Text/Text';
|
|
6
|
+
import { spacing } from '../../../constants/spacing';
|
|
7
|
+
const meta = {
|
|
8
|
+
title: 'Components/Layout/Pagination',
|
|
9
|
+
component: Pagination,
|
|
10
|
+
parameters: {
|
|
11
|
+
layout: 'centered',
|
|
12
|
+
docs: {
|
|
13
|
+
description: {
|
|
14
|
+
component: "[View Mantine Docs](https://v6.mantine.dev/core/pagination/)\n\nPaginates a list of items across multiple pages. Wraps Mantine v6's Pagination with Taiv styling.",
|
|
15
|
+
},
|
|
16
|
+
},
|
|
17
|
+
},
|
|
18
|
+
argTypes: {
|
|
19
|
+
total: {
|
|
20
|
+
control: { type: 'number' },
|
|
21
|
+
description: 'Total number of pages',
|
|
22
|
+
},
|
|
23
|
+
value: {
|
|
24
|
+
control: { type: 'number' },
|
|
25
|
+
description: 'Active page (controlled)',
|
|
26
|
+
},
|
|
27
|
+
defaultValue: {
|
|
28
|
+
control: { type: 'number' },
|
|
29
|
+
description: 'Default active page (uncontrolled)',
|
|
30
|
+
},
|
|
31
|
+
siblings: {
|
|
32
|
+
control: { type: 'number' },
|
|
33
|
+
description: 'Sibling pages shown on each side of the active page',
|
|
34
|
+
},
|
|
35
|
+
boundaries: {
|
|
36
|
+
control: { type: 'number' },
|
|
37
|
+
description: 'Pages shown at each boundary',
|
|
38
|
+
},
|
|
39
|
+
withEdges: {
|
|
40
|
+
control: { type: 'boolean' },
|
|
41
|
+
description: 'Render first/last edge controls',
|
|
42
|
+
},
|
|
43
|
+
withControls: {
|
|
44
|
+
control: { type: 'boolean' },
|
|
45
|
+
description: 'Render previous/next controls',
|
|
46
|
+
},
|
|
47
|
+
size: {
|
|
48
|
+
control: { type: 'select' },
|
|
49
|
+
options: ['sm', 'md', 'lg'],
|
|
50
|
+
},
|
|
51
|
+
},
|
|
52
|
+
};
|
|
53
|
+
export default meta;
|
|
54
|
+
export const Default = {
|
|
55
|
+
args: {
|
|
56
|
+
total: 10,
|
|
57
|
+
defaultValue: 1,
|
|
58
|
+
size: 'md',
|
|
59
|
+
},
|
|
60
|
+
};
|
|
61
|
+
export const WithEdges = {
|
|
62
|
+
args: {
|
|
63
|
+
total: 25,
|
|
64
|
+
defaultValue: 5,
|
|
65
|
+
withEdges: true,
|
|
66
|
+
},
|
|
67
|
+
};
|
|
68
|
+
export const Controlled = {
|
|
69
|
+
render: () => {
|
|
70
|
+
const [page, setPage] = useState(1);
|
|
71
|
+
return (_jsxs(Stack, { spacing: spacing.sm, align: "center", children: [_jsxs(Text, { variant: "body", children: ["Active page: ", page] }), _jsx(Pagination, { total: 12, value: page, onChange: setPage })] }));
|
|
72
|
+
},
|
|
73
|
+
};
|
|
74
|
+
export const Sizes = {
|
|
75
|
+
render: () => (_jsxs(Stack, { spacing: spacing.lg, children: [_jsx(Pagination, { total: 8, defaultValue: 3, size: "sm" }), _jsx(Pagination, { total: 8, defaultValue: 3, size: "md" }), _jsx(Pagination, { total: 8, defaultValue: 3, size: "lg" })] })),
|
|
76
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ScrollArea.d.ts","sourceRoot":"","sources":["../../../../src/components/Layout/ScrollArea/ScrollArea.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,YAAY,EAAE,uBAAuB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { ScrollArea } from '@mantine/core';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/react-vite';
|
|
2
|
+
import { ScrollArea } from './ScrollArea';
|
|
3
|
+
declare const meta: Meta<typeof ScrollArea>;
|
|
4
|
+
export default meta;
|
|
5
|
+
type Story = StoryObj<typeof meta>;
|
|
6
|
+
export declare const Default: Story;
|
|
7
|
+
export declare const Autosize: Story;
|
|
8
|
+
//# sourceMappingURL=ScrollArea.stories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ScrollArea.stories.d.ts","sourceRoot":"","sources":["../../../../src/components/Layout/ScrollArea/ScrollArea.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAM1C,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,UAAU,CAgCjC,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAWnC,eAAO,MAAM,OAAO,EAAE,KAerB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KAWtB,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { ScrollArea } from './ScrollArea';
|
|
3
|
+
import { Stack } from '../Stack/Stack';
|
|
4
|
+
import { Text } from '../../Typography/Text/Text';
|
|
5
|
+
import { neutral } from '../../../constants/colors';
|
|
6
|
+
import { spacing } from '../../../constants/spacing';
|
|
7
|
+
const meta = {
|
|
8
|
+
title: 'Components/Layout/ScrollArea',
|
|
9
|
+
component: ScrollArea,
|
|
10
|
+
parameters: {
|
|
11
|
+
layout: 'centered',
|
|
12
|
+
},
|
|
13
|
+
argTypes: {
|
|
14
|
+
children: {
|
|
15
|
+
control: false,
|
|
16
|
+
description: 'Content inside the scroll viewport',
|
|
17
|
+
table: { type: { summary: 'ReactNode' } },
|
|
18
|
+
},
|
|
19
|
+
h: {
|
|
20
|
+
control: { type: 'text' },
|
|
21
|
+
description: 'Viewport height',
|
|
22
|
+
table: { type: { summary: 'string | number' } },
|
|
23
|
+
},
|
|
24
|
+
type: {
|
|
25
|
+
control: { type: 'select' },
|
|
26
|
+
options: ['auto', 'always', 'scroll', 'hover', 'never'],
|
|
27
|
+
description: 'When scrollbars are shown',
|
|
28
|
+
table: {
|
|
29
|
+
type: { summary: "'auto' | 'always' | 'scroll' | 'hover' | 'never'" },
|
|
30
|
+
defaultValue: { summary: "'hover'" },
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
scrollbarSize: {
|
|
34
|
+
control: { type: 'number' },
|
|
35
|
+
description: 'Scrollbar thickness',
|
|
36
|
+
table: { type: { summary: 'number | string' } },
|
|
37
|
+
},
|
|
38
|
+
},
|
|
39
|
+
};
|
|
40
|
+
export default meta;
|
|
41
|
+
const longContent = Array.from({ length: 24 }, (_, i) => {
|
|
42
|
+
const lineNumber = i + 1;
|
|
43
|
+
return (_jsxs(Text, { size: "sm", color: "dimmed", children: ["Line ", lineNumber, " \u2014 scroll the viewport to see more content."] }, `scroll-area-demo-line-${lineNumber}`));
|
|
44
|
+
});
|
|
45
|
+
export const Default = {
|
|
46
|
+
args: {
|
|
47
|
+
h: 200,
|
|
48
|
+
w: 320,
|
|
49
|
+
type: 'auto',
|
|
50
|
+
children: (_jsx(Stack, { spacing: spacing.sm, p: spacing.md, children: longContent })),
|
|
51
|
+
sx: {
|
|
52
|
+
border: `1px solid ${neutral[100]}`,
|
|
53
|
+
borderRadius: 8,
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
};
|
|
57
|
+
export const Autosize = {
|
|
58
|
+
render: () => (_jsx(ScrollArea.Autosize, { mah: 200, maw: 360, type: "hover", sx: { border: `1px solid ${neutral[100]}`, borderRadius: 8 }, children: _jsx(Stack, { spacing: spacing.sm, p: spacing.md, children: longContent }) })),
|
|
59
|
+
parameters: {
|
|
60
|
+
docs: { source: { code: false } },
|
|
61
|
+
},
|
|
62
|
+
};
|
|
@@ -1,15 +1,26 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
1
|
+
import { type TabProps as MantineTabProps, type TabsProps as MantineTabsProps } from '@mantine/core';
|
|
2
|
+
import type React from 'react';
|
|
3
3
|
export interface TabsProps extends Omit<MantineTabsProps, 'children' | 'onChange'> {
|
|
4
|
+
/**
|
|
5
|
+
* Color the edge-fade indicators on `Tabs.List` fade into. Match the
|
|
6
|
+
* surrounding surface so the strip dissolves cleanly into the page.
|
|
7
|
+
* Default: 'white'.
|
|
8
|
+
*/
|
|
9
|
+
background?: string;
|
|
4
10
|
children: React.ReactNode;
|
|
5
11
|
defaultValue?: string;
|
|
6
12
|
value?: string;
|
|
7
13
|
onChange?: (value: string | null) => void;
|
|
8
14
|
variant?: 'default' | 'outline' | 'pills';
|
|
9
15
|
}
|
|
10
|
-
export
|
|
11
|
-
|
|
12
|
-
|
|
16
|
+
export interface TabProps extends Omit<MantineTabProps, 'rightSection' | 'icon'> {
|
|
17
|
+
count?: number;
|
|
18
|
+
rightSection?: React.ReactNode;
|
|
19
|
+
icon?: React.ReactNode;
|
|
20
|
+
}
|
|
21
|
+
export declare const Tabs: (({ background, children, defaultValue, value, onChange, variant, styles, ...props }: TabsProps) => import("react/jsx-runtime").JSX.Element) & {
|
|
22
|
+
List: React.ForwardRefExoticComponent<Omit<import("@mantine/core").TabsListProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
13
23
|
Panel: React.ForwardRefExoticComponent<import("@mantine/core").TabsPanelProps & React.RefAttributes<HTMLDivElement>>;
|
|
24
|
+
Tab: React.ForwardRefExoticComponent<TabProps & React.RefAttributes<HTMLButtonElement>>;
|
|
14
25
|
};
|
|
15
26
|
//# sourceMappingURL=Tabs.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tabs.d.ts","sourceRoot":"","sources":["../../../../src/components/Layout/Tabs/Tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"Tabs.d.ts","sourceRoot":"","sources":["../../../../src/components/Layout/Tabs/Tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,QAAQ,IAAI,eAAe,EAEhC,KAAK,SAAS,IAAI,gBAAgB,EACnC,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAa/B,MAAM,WAAW,SACf,SAAQ,IAAI,CAAC,gBAAgB,EAAE,UAAU,GAAG,UAAU,CAAC;IACvD;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC1C,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;CAC3C;AA6ED,MAAM,WAAW,QACf,SAAQ,IAAI,CAAC,eAAe,EAAE,cAAc,GAAG,MAAM,CAAC;IACtD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC/B,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACxB;AA0DD,eAAO,MAAM,IAAI,wFA7Hd,SAAS;;;;CAiIV,CAAC"}
|
|
@@ -1,49 +1,84 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { Tabs as MantineTabs } from '@mantine/core';
|
|
3
|
-
import {
|
|
2
|
+
import { Tabs as MantineTabs, } from '@mantine/core';
|
|
3
|
+
import { createContext, forwardRef, useContext, } from 'react';
|
|
4
4
|
import { colors } from '../../../constants/colors';
|
|
5
|
+
import { fontBase } from '../../../constants/font';
|
|
5
6
|
import { spacing } from '../../../constants/spacing';
|
|
6
|
-
|
|
7
|
+
import { Badge } from '../../Info/Badge/Badge';
|
|
8
|
+
import { OverflowFade } from '../../Misc/OverflowFade/OverflowFade';
|
|
9
|
+
// Internal context so `Tabs.List` can pull the parent `<Tabs background>`
|
|
10
|
+
// without consumers having to thread the prop through manually.
|
|
11
|
+
const TabsBackgroundContext = createContext('white');
|
|
12
|
+
const TabsComponent = ({ background = 'white', children, defaultValue, value, onChange, variant = 'default', styles, ...props }) => {
|
|
7
13
|
const style = {
|
|
14
|
+
panel: {
|
|
15
|
+
padding: `${spacing.lg} ${spacing.sm}`,
|
|
16
|
+
},
|
|
8
17
|
root: {
|
|
9
18
|
width: '100%',
|
|
10
19
|
},
|
|
11
|
-
list: {
|
|
12
|
-
borderBottom: variant === 'default' ? `1px solid ${colors.neutral[100]}` : 'none',
|
|
13
|
-
gap: '0',
|
|
14
|
-
},
|
|
15
20
|
tab: {
|
|
16
|
-
padding: `${spacing.sm} 28px`,
|
|
17
|
-
backgroundColor: 'transparent',
|
|
18
|
-
color: colors.neutral[300],
|
|
19
21
|
'&:hover': {
|
|
20
22
|
backgroundColor: variant === 'pills' ? colors.neutral[25] : 'transparent',
|
|
21
|
-
color: colors.primary[
|
|
23
|
+
color: colors.primary[200],
|
|
22
24
|
},
|
|
23
25
|
'&[data-active]': {
|
|
24
26
|
backgroundColor: variant === 'pills' ? colors.primary[200] : 'transparent',
|
|
25
|
-
color: variant === 'pills' ? 'white' : colors.primary[300],
|
|
26
27
|
borderBottom: variant === 'default' ? `2px solid ${colors.primary[200]}` : 'none',
|
|
28
|
+
color: variant === 'pills' ? 'white' : colors.primary[200],
|
|
27
29
|
},
|
|
28
30
|
'&[data-active]:hover': {
|
|
29
31
|
backgroundColor: variant === 'pills' ? colors.primary[200] : 'transparent',
|
|
30
|
-
color: variant === 'pills' ? 'white' : colors.primary[
|
|
32
|
+
color: variant === 'pills' ? 'white' : colors.primary[200],
|
|
31
33
|
},
|
|
34
|
+
backgroundColor: 'transparent',
|
|
35
|
+
color: colors.neutral[300],
|
|
36
|
+
flexShrink: 0,
|
|
37
|
+
padding: `${spacing.sm} 28px`,
|
|
32
38
|
},
|
|
33
39
|
tabLabel: {
|
|
34
40
|
...fontBase,
|
|
35
41
|
fontSize: '16px',
|
|
36
42
|
lineHeight: '24px',
|
|
37
43
|
},
|
|
38
|
-
|
|
39
|
-
|
|
44
|
+
tabsList: {
|
|
45
|
+
borderBottom: variant === 'default' ? `1px solid ${colors.neutral[100]}` : 'none',
|
|
46
|
+
flexWrap: 'nowrap',
|
|
47
|
+
gap: '0',
|
|
40
48
|
},
|
|
41
49
|
...styles,
|
|
42
50
|
};
|
|
43
|
-
return (_jsx(MantineTabs, {
|
|
51
|
+
return (_jsx(TabsBackgroundContext.Provider, { value: background, children: _jsx(MantineTabs, { defaultValue: defaultValue, onTabChange: onChange, radius: 'lg', styles: style, value: value, variant: variant, ...props, children: children }) }));
|
|
44
52
|
};
|
|
53
|
+
// `forwardRef` so consumers (and Mantine internals) can attach a ref to the
|
|
54
|
+
// underlying `<button role="tab">` — focus management, scroll-into-view, and
|
|
55
|
+
// intersection observers all expect this. Mirrors `TabsList` below; without
|
|
56
|
+
// it, `<Tabs.Tab ref={...}>` would silently no-op.
|
|
57
|
+
const Tab = forwardRef(({ count, rightSection, icon, children, ...props }, ref) => {
|
|
58
|
+
const resolvedRightSection = count !== undefined ? (_jsx(Badge, { color: 'neutral', size: 'sm', variant: 'filled', children: count })) : (rightSection);
|
|
59
|
+
return (_jsx(MantineTabs.Tab, { ref: ref, icon: icon, rightSection: resolvedRightSection, ...props, children: children }));
|
|
60
|
+
});
|
|
61
|
+
Tab.displayName = 'Tabs.Tab';
|
|
62
|
+
// Tabs.List wrapper: injects the OverflowFade so any horizontally-overflowing
|
|
63
|
+
// tab strip (long labels, many tabs, narrow viewport) gets a bidirectional
|
|
64
|
+
// gradient cue automatically — no consumer changes required.
|
|
65
|
+
//
|
|
66
|
+
// DOM contract: there is now an extra wrapper element above `.mantine-Tabs-tabsList`
|
|
67
|
+
// (the OverflowFade div). Implications:
|
|
68
|
+
// • CSS `>` direct-child selectors against the list will skip a level.
|
|
69
|
+
// • `position: sticky` applied to `Tabs.List` resolves against the OverflowFade
|
|
70
|
+
// ancestor, not the page — sticky should be applied to the parent `<Tabs>`
|
|
71
|
+
// root instead.
|
|
72
|
+
// • The OverflowFade clips horizontal overflow; positioned descendants of
|
|
73
|
+
// `Tabs.List` (popovers/dropdowns escaping the strip) will be clipped.
|
|
74
|
+
// Anchor those off the parent `<Tabs>` root or use `Portal`.
|
|
75
|
+
const TabsList = forwardRef(({ children, ...props }, ref) => {
|
|
76
|
+
const background = useContext(TabsBackgroundContext);
|
|
77
|
+
return (_jsx(OverflowFade, { background: background, children: _jsx(MantineTabs.List, { ref: ref, ...props, children: children }) }));
|
|
78
|
+
});
|
|
79
|
+
TabsList.displayName = 'Tabs.List';
|
|
45
80
|
export const Tabs = Object.assign(TabsComponent, {
|
|
46
|
-
List:
|
|
47
|
-
Tab: MantineTabs.Tab,
|
|
81
|
+
List: TabsList,
|
|
48
82
|
Panel: MantineTabs.Panel,
|
|
83
|
+
Tab,
|
|
49
84
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tabs.stories.d.ts","sourceRoot":"","sources":["../../../../src/components/Layout/Tabs/Tabs.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"Tabs.stories.d.ts","sourceRoot":"","sources":["../../../../src/components/Layout/Tabs/Tabs.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAK5D,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,IAAI,CA4D3B,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KA+BrB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KA4BtB,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,KA6E3B,CAAC"}
|