@a-type/ui 3.1.1 → 4.0.0-beta.1
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/cjs/components/actions/ActionBar.d.ts +1 -1
- package/dist/cjs/components/actions/ActionBar.js +2 -2
- package/dist/cjs/components/actions/ActionBar.js.map +1 -1
- package/dist/cjs/components/actions/ActionButton.d.ts +3 -3
- package/dist/cjs/components/actions/ActionButton.js +2 -2
- package/dist/cjs/components/actions/ActionButton.js.map +1 -1
- package/dist/cjs/components/avatar/Avatar.d.ts +4 -2
- package/dist/cjs/components/avatar/Avatar.js +4 -14
- package/dist/cjs/components/avatar/Avatar.js.map +1 -1
- package/dist/cjs/components/box/Box.stories.js +1 -1
- package/dist/cjs/components/box/Box.stories.js.map +1 -1
- package/dist/cjs/components/button/Button.d.ts +7 -7
- package/dist/cjs/components/button/Button.js +7 -12
- package/dist/cjs/components/button/Button.js.map +1 -1
- package/dist/cjs/components/button/Button.stories.d.ts +1 -1
- package/dist/cjs/components/button/ConfirmedButton.js +1 -2
- package/dist/cjs/components/button/ConfirmedButton.js.map +1 -1
- package/dist/cjs/components/camera/Camera.d.ts +4 -4
- package/dist/cjs/components/camera/Camera.js +6 -7
- package/dist/cjs/components/camera/Camera.js.map +1 -1
- package/dist/cjs/components/card/Card.d.ts +8 -2
- package/dist/cjs/components/card/Card.js +21 -9
- package/dist/cjs/components/card/Card.js.map +1 -1
- package/dist/cjs/components/card/Card.stories.js +3 -3
- package/dist/cjs/components/card/Card.stories.js.map +1 -1
- package/dist/cjs/components/checkbox/Checkbox.d.ts +3 -3
- package/dist/cjs/components/checkbox/Checkbox.js +5 -38
- package/dist/cjs/components/checkbox/Checkbox.js.map +1 -1
- package/dist/cjs/components/chip/Chip.d.ts +3 -2
- package/dist/cjs/components/chip/Chip.js +3 -4
- package/dist/cjs/components/chip/Chip.js.map +1 -1
- package/dist/cjs/components/chip/Chip.stories.d.ts +6 -1
- package/dist/cjs/components/chip/Chip.stories.js +9 -3
- package/dist/cjs/components/chip/Chip.stories.js.map +1 -1
- package/dist/cjs/components/collapsible/Collapsible.d.ts +9 -9
- package/dist/cjs/components/collapsible/Collapsible.js +15 -38
- package/dist/cjs/components/collapsible/Collapsible.js.map +1 -1
- package/dist/cjs/components/collapsible/Collapsible.stories.d.ts +1 -1
- package/dist/cjs/components/colorMode/ColorModeToggle.d.ts +4 -2
- package/dist/cjs/components/colorMode/ColorModeToggle.js +8 -9
- package/dist/cjs/components/colorMode/ColorModeToggle.js.map +1 -1
- package/dist/cjs/components/colorPicker/ColorPicker.d.ts +4 -3
- package/dist/cjs/components/colorPicker/ColorPicker.js +8 -4
- package/dist/cjs/components/colorPicker/ColorPicker.js.map +1 -1
- package/dist/cjs/components/contextMenu/contextMenu.d.ts +11 -12
- package/dist/cjs/components/contextMenu/contextMenu.js +9 -42
- package/dist/cjs/components/contextMenu/contextMenu.js.map +1 -1
- package/dist/cjs/components/contextMenu/contextMenu.stories.d.ts +22 -0
- package/dist/cjs/components/contextMenu/contextMenu.stories.js +22 -0
- package/dist/cjs/components/contextMenu/contextMenu.stories.js.map +1 -0
- package/dist/cjs/components/dialog/Dialog.d.ts +27 -22
- package/dist/cjs/components/dialog/Dialog.js +109 -80
- package/dist/cjs/components/dialog/Dialog.js.map +1 -1
- package/dist/cjs/components/dialog/Dialog.stories.d.ts +8 -8
- package/dist/cjs/components/dialog/Dialog.stories.js +6 -6
- package/dist/cjs/components/dialog/Dialog.stories.js.map +1 -1
- package/dist/cjs/components/divider/Divider.js +2 -1
- package/dist/cjs/components/divider/Divider.js.map +1 -1
- package/dist/cjs/components/dropdownMenu/DropdownMenu.d.ts +26 -21
- package/dist/cjs/components/dropdownMenu/DropdownMenu.js +22 -19
- package/dist/cjs/components/dropdownMenu/DropdownMenu.js.map +1 -1
- package/dist/cjs/components/dropdownMenu/DropdownMenu.stories.d.ts +3 -26
- package/dist/cjs/components/dropdownMenu/DropdownMenu.stories.js +6 -2
- package/dist/cjs/components/dropdownMenu/DropdownMenu.stories.js.map +1 -1
- package/dist/cjs/components/forms/EmojiField.d.ts +3 -2
- package/dist/cjs/components/forms/EmojiField.js +1 -1
- package/dist/cjs/components/forms/EmojiField.js.map +1 -1
- package/dist/cjs/components/forms/FormikForm.d.ts +2 -2
- package/dist/cjs/components/forms/FormikForm.stories.d.ts +2 -2
- package/dist/cjs/components/forms/SubmitButton.d.ts +1 -1
- package/dist/cjs/components/forms/SubmitButton.js +14 -2
- package/dist/cjs/components/forms/SubmitButton.js.map +1 -1
- package/dist/cjs/components/forms/TextField.js.map +1 -1
- package/dist/cjs/components/forms/ToggleGroupField.d.ts +3 -2
- package/dist/cjs/components/forms/ToggleGroupField.js +9 -2
- package/dist/cjs/components/forms/ToggleGroupField.js.map +1 -1
- package/dist/cjs/components/horizontalList/HorizontalList.d.ts +1 -3
- package/dist/cjs/components/horizontalList/HorizontalList.js +3 -3
- package/dist/cjs/components/horizontalList/HorizontalList.js.map +1 -1
- package/dist/cjs/components/horizontalList/HorizontalList.stories.js +1 -1
- package/dist/cjs/components/horizontalList/HorizontalList.stories.js.map +1 -1
- package/dist/cjs/components/icon/Icon.d.ts +7 -3
- package/dist/cjs/components/icon/Icon.js +14 -2
- package/dist/cjs/components/icon/Icon.js.map +1 -1
- package/dist/cjs/components/icon/Icon.stories.d.ts +28 -0
- package/dist/cjs/components/icon/Icon.stories.js +34 -0
- package/dist/cjs/components/icon/Icon.stories.js.map +1 -0
- package/dist/cjs/components/imageUploader/ImageUploader.js +1 -1
- package/dist/cjs/components/imageUploader/ImageUploader.js.map +1 -1
- package/dist/cjs/components/index.d.ts +1 -1
- package/dist/cjs/components/index.js +1 -4
- package/dist/cjs/components/index.js.map +1 -1
- package/dist/cjs/components/input/Input.d.ts +1 -2
- package/dist/cjs/components/input/Input.js +4 -5
- package/dist/cjs/components/input/Input.js.map +1 -1
- package/dist/cjs/components/input/Input.stories.d.ts +1 -1
- package/dist/cjs/components/layouts/layouts.stories.js +6 -6
- package/dist/cjs/components/layouts/layouts.stories.js.map +1 -1
- package/dist/cjs/components/lightbox/Lightbox.d.ts +18 -16
- package/dist/cjs/components/lightbox/Lightbox.js +10 -43
- package/dist/cjs/components/lightbox/Lightbox.js.map +1 -1
- package/dist/cjs/components/lightbox/Lightbox.stories.d.ts +9 -7
- package/dist/cjs/components/marquee/marquee.stories.js +1 -1
- package/dist/cjs/components/marquee/marquee.stories.js.map +1 -1
- package/dist/cjs/components/navBar/NavBar.d.ts +9 -9
- package/dist/cjs/components/navBar/NavBar.js +5 -7
- package/dist/cjs/components/navBar/NavBar.js.map +1 -1
- package/dist/cjs/components/popover/Popover.d.ts +19 -13
- package/dist/cjs/components/popover/Popover.js +22 -50
- package/dist/cjs/components/popover/Popover.js.map +1 -1
- package/dist/cjs/components/popover/Popover.stories.d.ts +2 -23
- package/dist/cjs/components/popover/Popover.stories.js +1 -1
- package/dist/cjs/components/popover/Popover.stories.js.map +1 -1
- package/dist/cjs/components/progress/Progress.d.ts +22 -6
- package/dist/cjs/components/progress/Progress.js +17 -42
- package/dist/cjs/components/progress/Progress.js.map +1 -1
- package/dist/cjs/components/progress/Progress.stories.d.ts +13 -3
- package/dist/cjs/components/progress/Progress.stories.js +7 -2
- package/dist/cjs/components/progress/Progress.stories.js.map +1 -1
- package/dist/cjs/components/pwaInstall/PwaInstall.d.ts +3 -3
- package/dist/cjs/components/pwaInstall/PwaInstall.js +6 -4
- package/dist/cjs/components/pwaInstall/PwaInstall.js.map +1 -1
- package/dist/cjs/components/pwaInstall/PwaInstallTrigger.d.ts +1 -2
- package/dist/cjs/components/pwaInstall/PwaInstallTrigger.stories.js +1 -1
- package/dist/cjs/components/pwaInstall/PwaInstallTrigger.stories.js.map +1 -1
- package/dist/cjs/components/scrollArea/ScrollArea.d.ts +23 -28
- package/dist/cjs/components/scrollArea/ScrollArea.js +26 -56
- package/dist/cjs/components/scrollArea/ScrollArea.js.map +1 -1
- package/dist/cjs/components/scrollArea/ScrollArea.stories.d.ts +13 -10
- package/dist/cjs/components/scrollArea/ScrollArea.stories.js +16 -12
- package/dist/cjs/components/scrollArea/ScrollArea.stories.js.map +1 -1
- package/dist/cjs/components/select/Select.d.ts +37 -46
- package/dist/cjs/components/select/Select.js +37 -83
- package/dist/cjs/components/select/Select.js.map +1 -1
- package/dist/cjs/components/select/Select.stories.d.ts +15 -11
- package/dist/cjs/components/select/Select.stories.js +23 -2
- package/dist/cjs/components/select/Select.stories.js.map +1 -1
- package/dist/cjs/components/slider/Slider.d.ts +36 -13
- package/dist/cjs/components/slider/Slider.js +26 -41
- package/dist/cjs/components/slider/Slider.js.map +1 -1
- package/dist/cjs/components/slider/Slider.stories.d.ts +16 -7
- package/dist/cjs/components/slider/Slider.stories.js +23 -10
- package/dist/cjs/components/slider/Slider.stories.js.map +1 -1
- package/dist/cjs/components/switch/Switch.d.ts +4 -4
- package/dist/cjs/components/switch/Switch.js +3 -3
- package/dist/cjs/components/switch/Switch.js.map +1 -1
- package/dist/cjs/components/switch/Switch.stories.d.ts +27 -0
- package/dist/cjs/components/switch/Switch.stories.js +24 -0
- package/dist/cjs/components/switch/Switch.stories.js.map +1 -0
- package/dist/cjs/components/tabs/tabs.d.ts +16 -12
- package/dist/cjs/components/tabs/tabs.js +12 -47
- package/dist/cjs/components/tabs/tabs.js.map +1 -1
- package/dist/cjs/components/tabs/tabs.stories.js +3 -3
- package/dist/cjs/components/tabs/tabs.stories.js.map +1 -1
- package/dist/cjs/components/textArea/TextArea.d.ts +4 -4
- package/dist/cjs/components/textArea/TextArea.js +6 -8
- package/dist/cjs/components/textArea/TextArea.js.map +1 -1
- package/dist/cjs/components/textArea/TextArea.stories.d.ts +1 -1
- package/dist/cjs/components/toggleGroup/toggleGroup.d.ts +5 -6
- package/dist/cjs/components/toggleGroup/toggleGroup.js +6 -38
- package/dist/cjs/components/toggleGroup/toggleGroup.js.map +1 -1
- package/dist/cjs/components/toggleGroup/toggleGroup.stories.d.ts +17 -0
- package/dist/cjs/components/toggleGroup/toggleGroup.stories.js +21 -0
- package/dist/cjs/components/toggleGroup/toggleGroup.stories.js.map +1 -0
- package/dist/cjs/components/tooltip/Tooltip.d.ts +12 -9
- package/dist/cjs/components/tooltip/Tooltip.js +12 -43
- package/dist/cjs/components/tooltip/Tooltip.js.map +1 -1
- package/dist/cjs/components/tooltip/Tooltip.stories.d.ts +2 -20
- package/dist/cjs/components/tooltip/Tooltip.stories.js +14 -5
- package/dist/cjs/components/tooltip/Tooltip.stories.js.map +1 -1
- package/dist/cjs/components/utility/ArrowSvg.d.ts +1 -0
- package/dist/cjs/components/utility/ArrowSvg.js +9 -0
- package/dist/cjs/components/utility/ArrowSvg.js.map +1 -0
- package/dist/cjs/components/utility/HideWhileKeyboardOpen.d.ts +1 -2
- package/dist/cjs/components/utility/HideWhileKeyboardOpen.js +3 -4
- package/dist/cjs/components/utility/HideWhileKeyboardOpen.js.map +1 -1
- package/dist/cjs/components/utility/SlotDiv.d.ts +3 -4
- package/dist/cjs/components/utility/SlotDiv.js +9 -7
- package/dist/cjs/components/utility/SlotDiv.js.map +1 -1
- package/dist/cjs/hooks/useTitleBarColor.stories.js +1 -1
- package/dist/cjs/hooks/useTitleBarColor.stories.js.map +1 -1
- package/dist/cjs/hooks/useVisualViewportOffset.js +31 -10
- package/dist/cjs/hooks/useVisualViewportOffset.js.map +1 -1
- package/dist/cjs/hooks/withClassName.d.ts +2 -2
- package/dist/cjs/hooks/withClassName.js.map +1 -1
- package/dist/cjs/themes.stories.js +2 -2
- package/dist/cjs/themes.stories.js.map +1 -1
- package/dist/cjs/uno/preflights/globals.js +29 -25
- package/dist/cjs/uno/preflights/globals.js.map +1 -1
- package/dist/cjs/uno/rules/util.js +18 -8
- package/dist/cjs/uno/rules/util.js.map +1 -1
- package/dist/cjs/uno/theme/animations.js +0 -74
- package/dist/cjs/uno/theme/animations.js.map +1 -1
- package/dist/css/main.css +9 -42
- package/dist/esm/components/actions/ActionBar.js +2 -2
- package/dist/esm/components/actions/ActionBar.js.map +1 -1
- package/dist/esm/components/actions/ActionButton.d.ts +3 -3
- package/dist/esm/components/actions/ActionButton.js +2 -2
- package/dist/esm/components/actions/ActionButton.js.map +1 -1
- package/dist/esm/components/avatar/Avatar.d.ts +4 -2
- package/dist/esm/components/avatar/Avatar.js +4 -14
- package/dist/esm/components/avatar/Avatar.js.map +1 -1
- package/dist/esm/components/box/Box.stories.js +1 -1
- package/dist/esm/components/box/Box.stories.js.map +1 -1
- package/dist/esm/components/button/Button.d.ts +7 -7
- package/dist/esm/components/button/Button.js +7 -12
- package/dist/esm/components/button/Button.js.map +1 -1
- package/dist/esm/components/button/Button.stories.d.ts +1 -1
- package/dist/esm/components/button/ConfirmedButton.js +1 -2
- package/dist/esm/components/button/ConfirmedButton.js.map +1 -1
- package/dist/esm/components/camera/Camera.d.ts +4 -4
- package/dist/esm/components/camera/Camera.js +6 -7
- package/dist/esm/components/camera/Camera.js.map +1 -1
- package/dist/esm/components/card/Card.d.ts +8 -2
- package/dist/esm/components/card/Card.js +21 -9
- package/dist/esm/components/card/Card.js.map +1 -1
- package/dist/esm/components/card/Card.stories.js +3 -3
- package/dist/esm/components/card/Card.stories.js.map +1 -1
- package/dist/esm/components/checkbox/Checkbox.d.ts +3 -3
- package/dist/esm/components/checkbox/Checkbox.js +5 -5
- package/dist/esm/components/checkbox/Checkbox.js.map +1 -1
- package/dist/esm/components/chip/Chip.d.ts +3 -2
- package/dist/esm/components/chip/Chip.js +3 -4
- package/dist/esm/components/chip/Chip.js.map +1 -1
- package/dist/esm/components/chip/Chip.stories.d.ts +6 -1
- package/dist/esm/components/chip/Chip.stories.js +9 -3
- package/dist/esm/components/chip/Chip.stories.js.map +1 -1
- package/dist/esm/components/collapsible/Collapsible.d.ts +9 -9
- package/dist/esm/components/collapsible/Collapsible.js +15 -5
- package/dist/esm/components/collapsible/Collapsible.js.map +1 -1
- package/dist/esm/components/collapsible/Collapsible.stories.d.ts +1 -1
- package/dist/esm/components/colorMode/ColorModeToggle.d.ts +4 -2
- package/dist/esm/components/colorMode/ColorModeToggle.js +8 -9
- package/dist/esm/components/colorMode/ColorModeToggle.js.map +1 -1
- package/dist/esm/components/colorPicker/ColorPicker.d.ts +4 -3
- package/dist/esm/components/colorPicker/ColorPicker.js +9 -5
- package/dist/esm/components/colorPicker/ColorPicker.js.map +1 -1
- package/dist/esm/components/contextMenu/contextMenu.d.ts +11 -12
- package/dist/esm/components/contextMenu/contextMenu.js +9 -9
- package/dist/esm/components/contextMenu/contextMenu.js.map +1 -1
- package/dist/esm/components/contextMenu/contextMenu.stories.d.ts +22 -0
- package/dist/esm/components/contextMenu/contextMenu.stories.js +19 -0
- package/dist/esm/components/contextMenu/contextMenu.stories.js.map +1 -0
- package/dist/esm/components/dialog/Dialog.d.ts +27 -22
- package/dist/esm/components/dialog/Dialog.js +110 -49
- package/dist/esm/components/dialog/Dialog.js.map +1 -1
- package/dist/esm/components/dialog/Dialog.stories.d.ts +8 -8
- package/dist/esm/components/dialog/Dialog.stories.js +6 -6
- package/dist/esm/components/dialog/Dialog.stories.js.map +1 -1
- package/dist/esm/components/divider/Divider.js +2 -1
- package/dist/esm/components/divider/Divider.js.map +1 -1
- package/dist/esm/components/dropdownMenu/DropdownMenu.d.ts +26 -21
- package/dist/esm/components/dropdownMenu/DropdownMenu.js +22 -19
- package/dist/esm/components/dropdownMenu/DropdownMenu.js.map +1 -1
- package/dist/esm/components/dropdownMenu/DropdownMenu.stories.d.ts +3 -26
- package/dist/esm/components/dropdownMenu/DropdownMenu.stories.js +5 -1
- package/dist/esm/components/dropdownMenu/DropdownMenu.stories.js.map +1 -1
- package/dist/esm/components/forms/EmojiField.d.ts +3 -2
- package/dist/esm/components/forms/EmojiField.js +1 -1
- package/dist/esm/components/forms/EmojiField.js.map +1 -1
- package/dist/esm/components/forms/FormikForm.d.ts +2 -2
- package/dist/esm/components/forms/FormikForm.stories.d.ts +2 -2
- package/dist/esm/components/forms/SubmitButton.d.ts +1 -1
- package/dist/esm/components/forms/SubmitButton.js +14 -2
- package/dist/esm/components/forms/SubmitButton.js.map +1 -1
- package/dist/esm/components/forms/TextField.js.map +1 -1
- package/dist/esm/components/forms/ToggleGroupField.d.ts +3 -2
- package/dist/esm/components/forms/ToggleGroupField.js +9 -2
- package/dist/esm/components/forms/ToggleGroupField.js.map +1 -1
- package/dist/esm/components/horizontalList/HorizontalList.d.ts +1 -3
- package/dist/esm/components/horizontalList/HorizontalList.js +4 -4
- package/dist/esm/components/horizontalList/HorizontalList.js.map +1 -1
- package/dist/esm/components/horizontalList/HorizontalList.stories.js +1 -1
- package/dist/esm/components/horizontalList/HorizontalList.stories.js.map +1 -1
- package/dist/esm/components/icon/Icon.d.ts +7 -3
- package/dist/esm/components/icon/Icon.js +14 -2
- package/dist/esm/components/icon/Icon.js.map +1 -1
- package/dist/esm/components/icon/Icon.stories.d.ts +28 -0
- package/dist/esm/components/icon/Icon.stories.js +31 -0
- package/dist/esm/components/icon/Icon.stories.js.map +1 -0
- package/dist/esm/components/imageUploader/ImageUploader.js +1 -1
- package/dist/esm/components/imageUploader/ImageUploader.js.map +1 -1
- package/dist/esm/components/index.d.ts +1 -1
- package/dist/esm/components/index.js +1 -1
- package/dist/esm/components/index.js.map +1 -1
- package/dist/esm/components/input/Input.d.ts +1 -2
- package/dist/esm/components/input/Input.js +4 -5
- package/dist/esm/components/input/Input.js.map +1 -1
- package/dist/esm/components/input/Input.stories.d.ts +1 -1
- package/dist/esm/components/layouts/layouts.stories.js +4 -4
- package/dist/esm/components/layouts/layouts.stories.js.map +1 -1
- package/dist/esm/components/lightbox/Lightbox.d.ts +18 -16
- package/dist/esm/components/lightbox/Lightbox.js +6 -6
- package/dist/esm/components/lightbox/Lightbox.js.map +1 -1
- package/dist/esm/components/lightbox/Lightbox.stories.d.ts +9 -7
- package/dist/esm/components/marquee/marquee.stories.js +1 -1
- package/dist/esm/components/marquee/marquee.stories.js.map +1 -1
- package/dist/esm/components/navBar/NavBar.d.ts +9 -9
- package/dist/esm/components/navBar/NavBar.js +5 -7
- package/dist/esm/components/navBar/NavBar.js.map +1 -1
- package/dist/esm/components/popover/Popover.d.ts +19 -13
- package/dist/esm/components/popover/Popover.js +18 -13
- package/dist/esm/components/popover/Popover.js.map +1 -1
- package/dist/esm/components/popover/Popover.stories.d.ts +2 -23
- package/dist/esm/components/popover/Popover.stories.js +1 -1
- package/dist/esm/components/popover/Popover.stories.js.map +1 -1
- package/dist/esm/components/progress/Progress.d.ts +22 -6
- package/dist/esm/components/progress/Progress.js +16 -9
- package/dist/esm/components/progress/Progress.js.map +1 -1
- package/dist/esm/components/progress/Progress.stories.d.ts +13 -3
- package/dist/esm/components/progress/Progress.stories.js +6 -1
- package/dist/esm/components/progress/Progress.stories.js.map +1 -1
- package/dist/esm/components/pwaInstall/PwaInstall.d.ts +3 -3
- package/dist/esm/components/pwaInstall/PwaInstall.js +6 -4
- package/dist/esm/components/pwaInstall/PwaInstall.js.map +1 -1
- package/dist/esm/components/pwaInstall/PwaInstallTrigger.d.ts +1 -2
- package/dist/esm/components/pwaInstall/PwaInstallTrigger.stories.js +1 -1
- package/dist/esm/components/pwaInstall/PwaInstallTrigger.stories.js.map +1 -1
- package/dist/esm/components/scrollArea/ScrollArea.d.ts +23 -28
- package/dist/esm/components/scrollArea/ScrollArea.js +25 -21
- package/dist/esm/components/scrollArea/ScrollArea.js.map +1 -1
- package/dist/esm/components/scrollArea/ScrollArea.stories.d.ts +13 -10
- package/dist/esm/components/scrollArea/ScrollArea.stories.js +13 -12
- package/dist/esm/components/scrollArea/ScrollArea.stories.js.map +1 -1
- package/dist/esm/components/select/Select.d.ts +37 -46
- package/dist/esm/components/select/Select.js +32 -77
- package/dist/esm/components/select/Select.js.map +1 -1
- package/dist/esm/components/select/Select.stories.d.ts +15 -11
- package/dist/esm/components/select/Select.stories.js +22 -1
- package/dist/esm/components/select/Select.stories.js.map +1 -1
- package/dist/esm/components/slider/Slider.d.ts +36 -13
- package/dist/esm/components/slider/Slider.js +23 -7
- package/dist/esm/components/slider/Slider.js.map +1 -1
- package/dist/esm/components/slider/Slider.stories.d.ts +16 -7
- package/dist/esm/components/slider/Slider.stories.js +22 -9
- package/dist/esm/components/slider/Slider.stories.js.map +1 -1
- package/dist/esm/components/switch/Switch.d.ts +4 -4
- package/dist/esm/components/switch/Switch.js +3 -3
- package/dist/esm/components/switch/Switch.js.map +1 -1
- package/dist/esm/components/switch/Switch.stories.d.ts +27 -0
- package/dist/esm/components/switch/Switch.stories.js +21 -0
- package/dist/esm/components/switch/Switch.stories.js.map +1 -0
- package/dist/esm/components/tabs/tabs.d.ts +16 -12
- package/dist/esm/components/tabs/tabs.js +10 -12
- package/dist/esm/components/tabs/tabs.js.map +1 -1
- package/dist/esm/components/tabs/tabs.stories.js +3 -3
- package/dist/esm/components/tabs/tabs.stories.js.map +1 -1
- package/dist/esm/components/textArea/TextArea.d.ts +4 -4
- package/dist/esm/components/textArea/TextArea.js +7 -9
- package/dist/esm/components/textArea/TextArea.js.map +1 -1
- package/dist/esm/components/textArea/TextArea.stories.d.ts +1 -1
- package/dist/esm/components/toggleGroup/toggleGroup.d.ts +5 -6
- package/dist/esm/components/toggleGroup/toggleGroup.js +4 -3
- package/dist/esm/components/toggleGroup/toggleGroup.js.map +1 -1
- package/dist/esm/components/toggleGroup/toggleGroup.stories.d.ts +17 -0
- package/dist/esm/components/toggleGroup/toggleGroup.stories.js +18 -0
- package/dist/esm/components/toggleGroup/toggleGroup.stories.js.map +1 -0
- package/dist/esm/components/tooltip/Tooltip.d.ts +12 -9
- package/dist/esm/components/tooltip/Tooltip.js +11 -9
- package/dist/esm/components/tooltip/Tooltip.js.map +1 -1
- package/dist/esm/components/tooltip/Tooltip.stories.d.ts +2 -20
- package/dist/esm/components/tooltip/Tooltip.stories.js +14 -5
- package/dist/esm/components/tooltip/Tooltip.stories.js.map +1 -1
- package/dist/esm/components/utility/ArrowSvg.d.ts +1 -0
- package/dist/esm/components/utility/ArrowSvg.js +6 -0
- package/dist/esm/components/utility/ArrowSvg.js.map +1 -0
- package/dist/esm/components/utility/HideWhileKeyboardOpen.d.ts +1 -2
- package/dist/esm/components/utility/HideWhileKeyboardOpen.js +3 -4
- package/dist/esm/components/utility/HideWhileKeyboardOpen.js.map +1 -1
- package/dist/esm/components/utility/SlotDiv.d.ts +3 -4
- package/dist/esm/components/utility/SlotDiv.js +9 -7
- package/dist/esm/components/utility/SlotDiv.js.map +1 -1
- package/dist/esm/hooks/useTitleBarColor.stories.js +1 -1
- package/dist/esm/hooks/useTitleBarColor.stories.js.map +1 -1
- package/dist/esm/hooks/useVisualViewportOffset.js +31 -10
- package/dist/esm/hooks/useVisualViewportOffset.js.map +1 -1
- package/dist/esm/hooks/withClassName.d.ts +2 -2
- package/dist/esm/hooks/withClassName.js +2 -2
- package/dist/esm/hooks/withClassName.js.map +1 -1
- package/dist/esm/themes.stories.js +2 -2
- package/dist/esm/themes.stories.js.map +1 -1
- package/dist/esm/uno/preflights/globals.js +29 -25
- package/dist/esm/uno/preflights/globals.js.map +1 -1
- package/dist/esm/uno/rules/util.js +18 -8
- package/dist/esm/uno/rules/util.js.map +1 -1
- package/dist/esm/uno/theme/animations.js +0 -74
- package/dist/esm/uno/theme/animations.js.map +1 -1
- package/package.json +1 -21
- package/src/components/actions/ActionBar.tsx +13 -9
- package/src/components/actions/ActionButton.tsx +2 -4
- package/src/components/avatar/Avatar.tsx +24 -40
- package/src/components/box/Box.stories.tsx +1 -1
- package/src/components/button/Button.tsx +13 -21
- package/src/components/button/ConfirmedButton.tsx +3 -7
- package/src/components/camera/Camera.tsx +23 -21
- package/src/components/card/Card.stories.tsx +22 -15
- package/src/components/card/Card.tsx +57 -40
- package/src/components/checkbox/Checkbox.tsx +13 -9
- package/src/components/chip/Chip.stories.tsx +13 -6
- package/src/components/chip/Chip.tsx +6 -7
- package/src/components/collapsible/Collapsible.tsx +29 -18
- package/src/components/colorMode/ColorModeToggle.tsx +13 -12
- package/src/components/colorPicker/ColorPicker.tsx +33 -27
- package/src/components/contextMenu/contextMenu.stories.tsx +39 -0
- package/src/components/contextMenu/contextMenu.tsx +33 -32
- package/src/components/dialog/Dialog.stories.tsx +15 -37
- package/src/components/dialog/Dialog.tsx +219 -102
- package/src/components/divider/Divider.tsx +5 -1
- package/src/components/dropdownMenu/DropdownMenu.stories.tsx +63 -5
- package/src/components/dropdownMenu/DropdownMenu.tsx +86 -47
- package/src/components/forms/EmojiField.tsx +18 -15
- package/src/components/forms/SubmitButton.tsx +2 -2
- package/src/components/forms/TextField.tsx +2 -2
- package/src/components/forms/ToggleGroupField.tsx +9 -1
- package/src/components/horizontalList/HorizontalList.stories.tsx +2 -2
- package/src/components/horizontalList/HorizontalList.tsx +10 -18
- package/src/components/icon/Icon.stories.tsx +47 -0
- package/src/components/icon/Icon.tsx +30 -17
- package/src/components/imageUploader/ImageUploader.tsx +8 -9
- package/src/components/index.ts +1 -1
- package/src/components/input/Input.tsx +3 -7
- package/src/components/layouts/layouts.stories.tsx +10 -16
- package/src/components/lightbox/Lightbox.tsx +25 -13
- package/src/components/marquee/marquee.stories.tsx +5 -3
- package/src/components/navBar/NavBar.tsx +9 -17
- package/src/components/popover/Popover.stories.tsx +6 -7
- package/src/components/popover/Popover.tsx +86 -38
- package/src/components/progress/Progress.stories.tsx +15 -3
- package/src/components/progress/Progress.tsx +65 -11
- package/src/components/pwaInstall/PwaInstall.tsx +21 -22
- package/src/components/pwaInstall/PwaInstallTrigger.stories.tsx +5 -4
- package/src/components/pwaInstall/PwaInstallTrigger.tsx +1 -1
- package/src/components/scrollArea/ScrollArea.stories.tsx +86 -45
- package/src/components/scrollArea/ScrollArea.tsx +108 -96
- package/src/components/select/Select.stories.tsx +39 -10
- package/src/components/select/Select.tsx +158 -218
- package/src/components/slider/Slider.stories.tsx +40 -15
- package/src/components/slider/Slider.tsx +60 -30
- package/src/components/switch/Switch.stories.tsx +24 -0
- package/src/components/switch/Switch.tsx +9 -8
- package/src/components/tabs/tabs.stories.tsx +7 -13
- package/src/components/tabs/tabs.tsx +35 -28
- package/src/components/textArea/TextArea.tsx +17 -25
- package/src/components/toggleGroup/toggleGroup.stories.tsx +27 -0
- package/src/components/toggleGroup/toggleGroup.tsx +10 -8
- package/src/components/tooltip/Tooltip.stories.tsx +20 -10
- package/src/components/tooltip/Tooltip.tsx +72 -30
- package/src/components/utility/ArrowSvg.tsx +15 -0
- package/src/components/utility/HideWhileKeyboardOpen.tsx +3 -8
- package/src/components/utility/SlotDiv.tsx +10 -10
- package/src/hooks/useTitleBarColor.stories.tsx +1 -3
- package/src/hooks/useVisualViewportOffset.ts +34 -11
- package/src/hooks/withClassName.tsx +3 -3
- package/src/themes.stories.tsx +10 -20
- package/src/uno/preflights/globals.ts +25 -21
- package/src/uno/rules/util.ts +18 -8
- package/src/uno/theme/animations.ts +0 -74
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
import type { Meta, StoryObj } from '@storybook/react';
|
|
2
|
+
import { Box } from '../box/Box.js';
|
|
2
3
|
import { Button } from '../button/Button.js';
|
|
3
4
|
import { Icon } from '../icon/index.js';
|
|
4
5
|
import { DropdownMenu } from './DropdownMenu.js';
|
|
5
6
|
|
|
6
|
-
const meta = {
|
|
7
|
+
const meta: Meta<typeof DropdownMenu> = {
|
|
7
8
|
title: 'Components/DropdownMenu',
|
|
8
9
|
component: DropdownMenu,
|
|
9
10
|
argTypes: {},
|
|
10
11
|
parameters: {
|
|
11
12
|
controls: { expanded: true },
|
|
12
13
|
},
|
|
13
|
-
}
|
|
14
|
+
};
|
|
14
15
|
|
|
15
16
|
export default meta;
|
|
16
17
|
|
|
@@ -20,9 +21,7 @@ export const Default: Story = {
|
|
|
20
21
|
args: {
|
|
21
22
|
children: (
|
|
22
23
|
<>
|
|
23
|
-
<DropdownMenu.Trigger
|
|
24
|
-
<Button>Open</Button>
|
|
25
|
-
</DropdownMenu.Trigger>
|
|
24
|
+
<DropdownMenu.Trigger render={<Button />}>Open</DropdownMenu.Trigger>
|
|
26
25
|
<DropdownMenu.Content>
|
|
27
26
|
<DropdownMenu.Item color="attention">
|
|
28
27
|
<DropdownMenu.Label>Item 1</DropdownMenu.Label>
|
|
@@ -41,3 +40,62 @@ export const Default: Story = {
|
|
|
41
40
|
),
|
|
42
41
|
},
|
|
43
42
|
};
|
|
43
|
+
|
|
44
|
+
export const Sides: Story = {
|
|
45
|
+
render: (args) => (
|
|
46
|
+
<Box
|
|
47
|
+
col
|
|
48
|
+
gap="xl"
|
|
49
|
+
items="center"
|
|
50
|
+
justify="center"
|
|
51
|
+
full
|
|
52
|
+
p="xl"
|
|
53
|
+
className="mt-200px"
|
|
54
|
+
>
|
|
55
|
+
<DropdownMenu open={args.open}>
|
|
56
|
+
<DropdownMenu.Trigger render={<Button />}>Top</DropdownMenu.Trigger>
|
|
57
|
+
<DropdownMenu.Content side="top">
|
|
58
|
+
<DropdownMenu.Item>
|
|
59
|
+
<DropdownMenu.Label>Item 1</DropdownMenu.Label>
|
|
60
|
+
</DropdownMenu.Item>
|
|
61
|
+
<DropdownMenu.Item>
|
|
62
|
+
<DropdownMenu.Label>Item 2</DropdownMenu.Label>
|
|
63
|
+
</DropdownMenu.Item>
|
|
64
|
+
</DropdownMenu.Content>
|
|
65
|
+
</DropdownMenu>
|
|
66
|
+
<DropdownMenu open={args.open}>
|
|
67
|
+
<DropdownMenu.Trigger render={<Button />}>Right</DropdownMenu.Trigger>
|
|
68
|
+
<DropdownMenu.Content side="right">
|
|
69
|
+
<DropdownMenu.Item>
|
|
70
|
+
<DropdownMenu.Label>Item 1</DropdownMenu.Label>
|
|
71
|
+
</DropdownMenu.Item>
|
|
72
|
+
<DropdownMenu.Item>
|
|
73
|
+
<DropdownMenu.Label>Item 2</DropdownMenu.Label>
|
|
74
|
+
</DropdownMenu.Item>
|
|
75
|
+
</DropdownMenu.Content>
|
|
76
|
+
</DropdownMenu>
|
|
77
|
+
<DropdownMenu open={args.open}>
|
|
78
|
+
<DropdownMenu.Trigger render={<Button />}>Left</DropdownMenu.Trigger>
|
|
79
|
+
<DropdownMenu.Content side="left" sideOffset={8}>
|
|
80
|
+
<DropdownMenu.Item>
|
|
81
|
+
<DropdownMenu.Label>Item 1</DropdownMenu.Label>
|
|
82
|
+
</DropdownMenu.Item>
|
|
83
|
+
<DropdownMenu.Item>
|
|
84
|
+
<DropdownMenu.Label>Item 2</DropdownMenu.Label>
|
|
85
|
+
</DropdownMenu.Item>
|
|
86
|
+
</DropdownMenu.Content>
|
|
87
|
+
</DropdownMenu>
|
|
88
|
+
<DropdownMenu open={args.open}>
|
|
89
|
+
<DropdownMenu.Trigger render={<Button />}>Bottom</DropdownMenu.Trigger>
|
|
90
|
+
<DropdownMenu.Content side="bottom" sideOffset={8}>
|
|
91
|
+
<DropdownMenu.Item>
|
|
92
|
+
<DropdownMenu.Label>Item 1</DropdownMenu.Label>
|
|
93
|
+
</DropdownMenu.Item>
|
|
94
|
+
<DropdownMenu.Item>
|
|
95
|
+
<DropdownMenu.Label>Item 2</DropdownMenu.Label>
|
|
96
|
+
</DropdownMenu.Item>
|
|
97
|
+
</DropdownMenu.Content>
|
|
98
|
+
</DropdownMenu>
|
|
99
|
+
</Box>
|
|
100
|
+
),
|
|
101
|
+
};
|
|
@@ -1,28 +1,43 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import
|
|
2
|
+
import {
|
|
3
|
+
Menu as BaseMenu,
|
|
4
|
+
MenuArrowProps,
|
|
5
|
+
MenuItemProps,
|
|
6
|
+
MenuPopupProps,
|
|
7
|
+
MenuPositionerProps,
|
|
8
|
+
MenuTriggerProps,
|
|
9
|
+
} from '@base-ui/react/menu';
|
|
3
10
|
import classNames, { clsx } from 'clsx';
|
|
4
11
|
import { Ref } from 'react';
|
|
5
12
|
import { withClassName } from '../../hooks/withClassName.js';
|
|
6
13
|
import { GroupScaleReset } from '../../systems/GroupScale.js';
|
|
7
14
|
import { PaletteName } from '../../uno/index.js';
|
|
15
|
+
import { ArrowSvg } from '../utility/ArrowSvg.js';
|
|
8
16
|
import { SlotDiv } from '../utility/SlotDiv.js';
|
|
9
17
|
import { DropdownTriggerProvider } from './DropdownTriggerContext.js';
|
|
10
18
|
|
|
11
19
|
const StyledContent = withClassName(
|
|
12
|
-
function DropdownMenuContent(
|
|
13
|
-
props: DropdownMenuPrimitive.DropdownMenuContentProps,
|
|
14
|
-
) {
|
|
20
|
+
function DropdownMenuContent(props: MenuPopupProps) {
|
|
15
21
|
return (
|
|
16
22
|
<GroupScaleReset>
|
|
17
|
-
<
|
|
23
|
+
<BaseMenu.Popup {...props} />
|
|
18
24
|
</GroupScaleReset>
|
|
19
25
|
);
|
|
20
26
|
},
|
|
21
|
-
'layer-components:(min-w-220px bg-white z-menu shadow-lg rounded-md border border-
|
|
22
|
-
'layer-components:transform-origin-[var(--
|
|
23
|
-
|
|
24
|
-
'layer-components:[
|
|
25
|
-
'layer-components:
|
|
27
|
+
'layer-components:(min-w-220px bg-white z-menu shadow-lg rounded-md border border-black flex flex-col transition)',
|
|
28
|
+
'layer-components:transform-origin-[var(--transform-origin)]',
|
|
29
|
+
|
|
30
|
+
'layer-components:data-[starting-style]:data-[side=bottom]:(opacity-0 translate-y-4px)',
|
|
31
|
+
'layer-components:data-[ending-style]:data-[side=bottom]:(opacity-0 translate-y-4px)',
|
|
32
|
+
'layer-components:data-[starting-style]:data-[side=top]:(opacity-0 translate-y--4px)',
|
|
33
|
+
'layer-components:data-[ending-style]:data-[side=top]:(opacity-0 translate-y-0)',
|
|
34
|
+
'layer-components:data-[starting-style]:data-[side=right]:(opacity-0 translate-x-4px)',
|
|
35
|
+
'layer-components:data-[ending-style]:data-[side=right]:(opacity-0 translate-x-0)',
|
|
36
|
+
'layer-components:data-[starting-style]:data-[side=left]:(opacity-0 translate-x--4px)',
|
|
37
|
+
'layer-components:data-[ending-style]:data-[side=left]:(opacity-0 translate-x-0)',
|
|
38
|
+
|
|
39
|
+
'layer-components:(max-h-[--available-height] max-w-[--available-width])',
|
|
40
|
+
|
|
26
41
|
'important:motion-reduce:animate-none',
|
|
27
42
|
'will-change-transform',
|
|
28
43
|
);
|
|
@@ -33,9 +48,8 @@ const itemClassName = classNames(
|
|
|
33
48
|
'layer-components:hover:(bg-main-light color-black)',
|
|
34
49
|
'layer-components:focus:outline-none',
|
|
35
50
|
);
|
|
36
|
-
const StyledItemBase = withClassName(
|
|
37
|
-
export interface DropdownMenuItemProps
|
|
38
|
-
extends DropdownMenuPrimitive.DropdownMenuItemProps {
|
|
51
|
+
const StyledItemBase = withClassName(BaseMenu.Item, itemClassName);
|
|
52
|
+
export interface DropdownMenuItemProps extends MenuItemProps {
|
|
39
53
|
color?: PaletteName;
|
|
40
54
|
ref?: Ref<HTMLDivElement>;
|
|
41
55
|
}
|
|
@@ -53,56 +67,51 @@ const StyledItem = ({
|
|
|
53
67
|
/>
|
|
54
68
|
);
|
|
55
69
|
};
|
|
56
|
-
const StyledCheckboxItem = withClassName(
|
|
57
|
-
|
|
58
|
-
itemClassName,
|
|
59
|
-
);
|
|
60
|
-
const StyledRadioItem = withClassName(
|
|
61
|
-
DropdownMenuPrimitive.RadioItem,
|
|
62
|
-
itemClassName,
|
|
63
|
-
);
|
|
70
|
+
const StyledCheckboxItem = withClassName(BaseMenu.CheckboxItem, itemClassName);
|
|
71
|
+
const StyledRadioItem = withClassName(BaseMenu.RadioItem, itemClassName);
|
|
64
72
|
|
|
65
73
|
const StyledLabel = withClassName(
|
|
66
|
-
|
|
74
|
+
'span',
|
|
67
75
|
'layer-components:(pl-3 py-1 font-bold text-sm leading-6)',
|
|
68
76
|
);
|
|
69
77
|
|
|
70
78
|
const StyledSeparator = withClassName(
|
|
71
|
-
|
|
79
|
+
BaseMenu.Separator,
|
|
72
80
|
'layer-components:(h-1px bg-gray m-5px)',
|
|
73
81
|
);
|
|
74
82
|
|
|
75
83
|
const StyledItemIndicator = withClassName(
|
|
76
|
-
|
|
84
|
+
BaseMenu.CheckboxItemIndicator,
|
|
77
85
|
'layer-components:(absolute left-0 w-25px inline-flex items-center justify-center)',
|
|
78
86
|
);
|
|
79
87
|
|
|
80
88
|
const StyledArrow = withClassName(
|
|
81
|
-
|
|
89
|
+
(props: MenuArrowProps) => (
|
|
90
|
+
<BaseMenu.Arrow {...props}>
|
|
91
|
+
<ArrowSvg />
|
|
92
|
+
</BaseMenu.Arrow>
|
|
93
|
+
),
|
|
82
94
|
'layer-components:(arrow)',
|
|
95
|
+
'layer-components:data-[closed]:(opacity-0 scale-0)',
|
|
96
|
+
'layer-components:data-[open]:(opacity-100 scale-100)',
|
|
83
97
|
);
|
|
84
98
|
|
|
85
|
-
const StyledTrigger = withClassName(
|
|
86
|
-
DropdownMenuPrimitive.Trigger,
|
|
87
|
-
'select-none',
|
|
88
|
-
);
|
|
99
|
+
const StyledTrigger = withClassName(BaseMenu.Trigger, 'select-none');
|
|
89
100
|
|
|
90
|
-
const StyledPortal =
|
|
101
|
+
const StyledPortal = BaseMenu.Portal;
|
|
91
102
|
|
|
92
103
|
// Exports
|
|
93
|
-
export const DropdownMenuRoot =
|
|
104
|
+
export const DropdownMenuRoot = BaseMenu.Root;
|
|
94
105
|
export const DropdownMenuItem = StyledItem;
|
|
95
106
|
export const DropdownMenuCheckboxItem = StyledCheckboxItem;
|
|
96
|
-
export const DropdownMenuRadioGroup =
|
|
107
|
+
export const DropdownMenuRadioGroup = BaseMenu.RadioGroup;
|
|
97
108
|
export const DropdownMenuRadioItem = StyledRadioItem;
|
|
98
109
|
export const DropdownMenuItemIndicator = StyledItemIndicator;
|
|
99
110
|
export const DropdownMenuLabel = StyledLabel;
|
|
100
111
|
export const DropdownMenuSeparator = StyledSeparator;
|
|
101
112
|
export const DropdownMenuArrow = StyledArrow;
|
|
102
113
|
|
|
103
|
-
export function DropdownMenuTrigger(
|
|
104
|
-
props: DropdownMenuPrimitive.DropdownMenuTriggerProps,
|
|
105
|
-
) {
|
|
114
|
+
export function DropdownMenuTrigger({ ...props }: MenuTriggerProps) {
|
|
106
115
|
return (
|
|
107
116
|
<DropdownTriggerProvider>
|
|
108
117
|
<StyledTrigger {...props} />
|
|
@@ -111,24 +120,53 @@ export function DropdownMenuTrigger(
|
|
|
111
120
|
}
|
|
112
121
|
export const DropdownMenuTriggerIcon = withClassName(
|
|
113
122
|
SlotDiv,
|
|
114
|
-
'layer-components:[[data-
|
|
123
|
+
'layer-components:[[data-popup-open]>&]:rotate-180 layer-components:transition-transform',
|
|
115
124
|
);
|
|
116
125
|
|
|
117
126
|
export const DropdownMenuContent = ({
|
|
118
127
|
children,
|
|
119
128
|
forceMount,
|
|
129
|
+
keepMounted,
|
|
130
|
+
side,
|
|
131
|
+
sideOffset = 8,
|
|
132
|
+
align,
|
|
133
|
+
alignOffset,
|
|
134
|
+
anchor,
|
|
135
|
+
arrowPadding = 2,
|
|
136
|
+
collisionAvoidance,
|
|
137
|
+
collisionBoundary,
|
|
138
|
+
collisionPadding,
|
|
139
|
+
sticky,
|
|
140
|
+
positionMethod,
|
|
120
141
|
...props
|
|
121
|
-
}:
|
|
122
|
-
|
|
123
|
-
|
|
142
|
+
}: MenuPopupProps &
|
|
143
|
+
MenuPositionerProps & {
|
|
144
|
+
/** @deprecated - use keepMounted */
|
|
145
|
+
forceMount?: boolean;
|
|
146
|
+
keepMounted?: boolean;
|
|
147
|
+
}) => {
|
|
124
148
|
return (
|
|
125
|
-
<StyledPortal
|
|
126
|
-
<
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
149
|
+
<StyledPortal keepMounted={keepMounted ?? forceMount}>
|
|
150
|
+
<BaseMenu.Positioner
|
|
151
|
+
sideOffset={sideOffset}
|
|
152
|
+
side={side}
|
|
153
|
+
align={align}
|
|
154
|
+
alignOffset={alignOffset}
|
|
155
|
+
anchor={anchor}
|
|
156
|
+
arrowPadding={arrowPadding}
|
|
157
|
+
collisionAvoidance={collisionAvoidance}
|
|
158
|
+
collisionBoundary={collisionBoundary}
|
|
159
|
+
collisionPadding={collisionPadding}
|
|
160
|
+
sticky={sticky}
|
|
161
|
+
positionMethod={positionMethod}
|
|
162
|
+
>
|
|
163
|
+
<StyledContent {...props}>
|
|
164
|
+
<div className="layer-components:(overflow-y-auto overflow-x-hidden overflow-unstable max-h-full rounded-md min-h-0)">
|
|
165
|
+
{children}
|
|
166
|
+
</div>
|
|
167
|
+
<StyledArrow />
|
|
168
|
+
</StyledContent>
|
|
169
|
+
</BaseMenu.Positioner>
|
|
132
170
|
</StyledPortal>
|
|
133
171
|
);
|
|
134
172
|
};
|
|
@@ -140,7 +178,7 @@ export const DropdownMenu = Object.assign(DropdownMenuRoot, {
|
|
|
140
178
|
Trigger: DropdownMenuTrigger,
|
|
141
179
|
Item: StyledItem,
|
|
142
180
|
CheckboxItem: StyledCheckboxItem,
|
|
143
|
-
RadioGroup:
|
|
181
|
+
RadioGroup: BaseMenu.RadioGroup,
|
|
144
182
|
RadioItem: StyledRadioItem,
|
|
145
183
|
ItemIndicator: StyledItemIndicator,
|
|
146
184
|
Label: StyledLabel,
|
|
@@ -148,4 +186,5 @@ export const DropdownMenu = Object.assign(DropdownMenuRoot, {
|
|
|
148
186
|
Arrow: StyledArrow,
|
|
149
187
|
ItemRightSlot: DropdownMenuItemRightSlot,
|
|
150
188
|
TriggerIcon: DropdownMenuTriggerIcon,
|
|
189
|
+
createHandle: BaseMenu.createHandle,
|
|
151
190
|
});
|
|
@@ -9,11 +9,12 @@ import { Icon } from '../icon/Icon.js';
|
|
|
9
9
|
import { Popover } from '../popover/Popover.js';
|
|
10
10
|
import { HorizontalFieldLabel } from './FieldLabel.js';
|
|
11
11
|
|
|
12
|
-
export
|
|
12
|
+
export type EmojiFieldProps = Omit<ButtonProps, 'className'> & {
|
|
13
13
|
name: string;
|
|
14
14
|
label?: string;
|
|
15
15
|
required?: string;
|
|
16
|
-
|
|
16
|
+
className?: string;
|
|
17
|
+
};
|
|
17
18
|
|
|
18
19
|
export function EmojiField({
|
|
19
20
|
name,
|
|
@@ -29,19 +30,21 @@ export function EmojiField({
|
|
|
29
30
|
return (
|
|
30
31
|
<Box gap="sm" className={className}>
|
|
31
32
|
<Popover open={open} onOpenChange={setOpen}>
|
|
32
|
-
<Popover.Trigger
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
33
|
+
<Popover.Trigger
|
|
34
|
+
render={
|
|
35
|
+
<Button
|
|
36
|
+
id={id}
|
|
37
|
+
aria-label="Select emoji"
|
|
38
|
+
size="small"
|
|
39
|
+
className={clsx('p-0 transition-color', className)}
|
|
40
|
+
{...rest}
|
|
41
|
+
>
|
|
42
|
+
<Button.Icon className="text-[19px] w-touch h-touch flex items-center justify-center">
|
|
43
|
+
{props.value || <Icon name="smile" />}
|
|
44
|
+
</Button.Icon>
|
|
45
|
+
</Button>
|
|
46
|
+
}
|
|
47
|
+
/>
|
|
45
48
|
<Popover.Content>
|
|
46
49
|
<EmojiPicker
|
|
47
50
|
onValueChange={(v) => {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { useFormikContext } from 'formik';
|
|
2
2
|
import { Button, ButtonProps } from '../button/Button.js';
|
|
3
3
|
|
|
4
|
-
export function SubmitButton(props: ButtonProps) {
|
|
4
|
+
export function SubmitButton({ nativeButton: _, ...props }: ButtonProps) {
|
|
5
5
|
const { isSubmitting, isValid } = useFormikContext();
|
|
6
6
|
return (
|
|
7
7
|
<Button
|
|
@@ -9,8 +9,8 @@ export function SubmitButton(props: ButtonProps) {
|
|
|
9
9
|
disabled={!isValid}
|
|
10
10
|
color="primary"
|
|
11
11
|
emphasis="primary"
|
|
12
|
-
type="submit"
|
|
13
12
|
{...props}
|
|
13
|
+
type="submit"
|
|
14
14
|
/>
|
|
15
15
|
);
|
|
16
16
|
}
|
|
@@ -108,12 +108,12 @@ export function TextAreaField({
|
|
|
108
108
|
const [props] = useField(name);
|
|
109
109
|
const { submitForm } = useFormikContext();
|
|
110
110
|
const onKeyDownInner = useCallback(
|
|
111
|
-
(e: KeyboardEvent<
|
|
111
|
+
(e: KeyboardEvent<HTMLInputElement>) => {
|
|
112
112
|
if (submitOnEnter && e.key === 'Enter' && !e.shiftKey) {
|
|
113
113
|
e.preventDefault();
|
|
114
114
|
submitForm();
|
|
115
115
|
}
|
|
116
|
-
onKeyDown?.(e);
|
|
116
|
+
onKeyDown?.(e as any);
|
|
117
117
|
},
|
|
118
118
|
[submitOnEnter, onKeyDown, submitForm],
|
|
119
119
|
);
|
|
@@ -9,6 +9,7 @@ export type ToggleGroupFieldProps = ToggleGroupProps & {
|
|
|
9
9
|
required?: boolean;
|
|
10
10
|
className?: string;
|
|
11
11
|
id?: string;
|
|
12
|
+
type?: 'single' | 'multiple';
|
|
12
13
|
};
|
|
13
14
|
|
|
14
15
|
function ToggleGroupFieldDefault({
|
|
@@ -16,6 +17,7 @@ function ToggleGroupFieldDefault({
|
|
|
16
17
|
label,
|
|
17
18
|
required,
|
|
18
19
|
className,
|
|
20
|
+
type = 'single',
|
|
19
21
|
id,
|
|
20
22
|
...props
|
|
21
23
|
}: ToggleGroupFieldProps) {
|
|
@@ -26,7 +28,13 @@ function ToggleGroupFieldDefault({
|
|
|
26
28
|
{label && <FieldLabel htmlFor={id}>{label}</FieldLabel>}
|
|
27
29
|
<ToggleGroup
|
|
28
30
|
{...fieldProps}
|
|
29
|
-
onValueChange={(v
|
|
31
|
+
onValueChange={(v) => {
|
|
32
|
+
if (type === 'multiple') {
|
|
33
|
+
tools.setValue(v);
|
|
34
|
+
} else {
|
|
35
|
+
tools.setValue(v[0]);
|
|
36
|
+
}
|
|
37
|
+
}}
|
|
30
38
|
{...props}
|
|
31
39
|
id={id}
|
|
32
40
|
className={className}
|
|
@@ -57,8 +57,8 @@ export const Default: Story = {
|
|
|
57
57
|
render: (args) => {
|
|
58
58
|
const [open, setOpen] = useState(false);
|
|
59
59
|
return (
|
|
60
|
-
<div className="bg-black flex flex-col items-center h-full">
|
|
61
|
-
<div className="bg-white w-400px flex flex-col items-stretch
|
|
60
|
+
<div className="bg-black flex flex-col items-center h-full min-h-80vh">
|
|
61
|
+
<div className="bg-white w-400px flex flex-col items-stretch flex-1">
|
|
62
62
|
<Button
|
|
63
63
|
toggled={open}
|
|
64
64
|
onClick={() => setOpen(!open)}
|
|
@@ -3,12 +3,7 @@ import { ReactNode, useCallback, useEffect, useRef, useState } from 'react';
|
|
|
3
3
|
import { Button } from '../button/index.js';
|
|
4
4
|
import { CollapsibleSimple } from '../collapsible/Collapsible.js';
|
|
5
5
|
import { Icon } from '../icon/index.js';
|
|
6
|
-
import {
|
|
7
|
-
ScrollAreaProps,
|
|
8
|
-
ScrollAreaRoot,
|
|
9
|
-
ScrollAreaScrollbar,
|
|
10
|
-
ScrollAreaViewport,
|
|
11
|
-
} from '../scrollArea/ScrollArea.js';
|
|
6
|
+
import { ScrollArea } from '../scrollArea/ScrollArea.js';
|
|
12
7
|
|
|
13
8
|
export interface HorizontalListProps {
|
|
14
9
|
open?: boolean;
|
|
@@ -16,7 +11,6 @@ export interface HorizontalListProps {
|
|
|
16
11
|
children: ReactNode;
|
|
17
12
|
className?: string;
|
|
18
13
|
contentClassName?: string;
|
|
19
|
-
background?: ScrollAreaProps['background'];
|
|
20
14
|
onCanOpenChange?: (canOpen: boolean) => void;
|
|
21
15
|
openDirection?: 'up' | 'down';
|
|
22
16
|
disableInternalOpenToggle?: boolean;
|
|
@@ -28,7 +22,6 @@ export function HorizontalList({
|
|
|
28
22
|
children,
|
|
29
23
|
className,
|
|
30
24
|
contentClassName,
|
|
31
|
-
background,
|
|
32
25
|
onCanOpenChange,
|
|
33
26
|
openDirection = 'down',
|
|
34
27
|
disableInternalOpenToggle,
|
|
@@ -144,18 +137,17 @@ export function HorizontalList({
|
|
|
144
137
|
const chevronFlip = openDirection === 'down' ? open : !open;
|
|
145
138
|
|
|
146
139
|
return (
|
|
147
|
-
<
|
|
140
|
+
<ScrollArea.Root
|
|
148
141
|
className={clsx(
|
|
149
|
-
'flex flex-col',
|
|
142
|
+
'layer-components:(flex flex-col w-full)',
|
|
150
143
|
'layer-components:max-h-300px',
|
|
151
144
|
className,
|
|
152
145
|
)}
|
|
153
|
-
background={background}
|
|
154
146
|
data-state={open ? 'open' : 'closed'}
|
|
155
147
|
{...rest}
|
|
156
148
|
>
|
|
157
|
-
<
|
|
158
|
-
<
|
|
149
|
+
<ScrollArea.Viewport ref={containerRef}>
|
|
150
|
+
<ScrollArea.Content
|
|
159
151
|
className={clsx(
|
|
160
152
|
'layer-components:(px-3 pt-3 pb-4 gap-2)',
|
|
161
153
|
'flex flex-row items-center gap-2 flex-shrink-0 w-max-content w-auto)',
|
|
@@ -186,10 +178,10 @@ export function HorizontalList({
|
|
|
186
178
|
</Button>
|
|
187
179
|
</CollapsibleSimple>
|
|
188
180
|
{children}
|
|
189
|
-
</
|
|
190
|
-
</
|
|
191
|
-
<
|
|
192
|
-
<
|
|
193
|
-
</
|
|
181
|
+
</ScrollArea.Content>
|
|
182
|
+
</ScrollArea.Viewport>
|
|
183
|
+
<ScrollArea.Scrollbar />
|
|
184
|
+
<ScrollArea.Scrollbar orientation="horizontal" />
|
|
185
|
+
</ScrollArea.Root>
|
|
194
186
|
);
|
|
195
187
|
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/react';
|
|
2
|
+
import { Icon } from './Icon.js';
|
|
3
|
+
import { iconNames } from './generated/iconNames.js';
|
|
4
|
+
|
|
5
|
+
const meta = {
|
|
6
|
+
title: 'Components/Icon',
|
|
7
|
+
component: Icon,
|
|
8
|
+
argTypes: {
|
|
9
|
+
name: {
|
|
10
|
+
control: { type: 'select', options: iconNames },
|
|
11
|
+
},
|
|
12
|
+
},
|
|
13
|
+
args: {
|
|
14
|
+
name: 'placeholder',
|
|
15
|
+
},
|
|
16
|
+
parameters: {
|
|
17
|
+
controls: { expanded: true },
|
|
18
|
+
},
|
|
19
|
+
} satisfies Meta<typeof Icon>;
|
|
20
|
+
|
|
21
|
+
export default meta;
|
|
22
|
+
|
|
23
|
+
type Story = StoryObj<typeof Icon>;
|
|
24
|
+
|
|
25
|
+
export const Default: Story = {
|
|
26
|
+
render(args) {
|
|
27
|
+
return <Icon {...args} />;
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
export const All: Story = {
|
|
32
|
+
render() {
|
|
33
|
+
return (
|
|
34
|
+
<div className="grid grid-cols-6 gap-xs">
|
|
35
|
+
{iconNames.map((name) => (
|
|
36
|
+
<div
|
|
37
|
+
key={name}
|
|
38
|
+
className="flex flex-col items-center justify-center p-4 border border-gray-light gap-2"
|
|
39
|
+
>
|
|
40
|
+
<Icon name={name} size={25} />
|
|
41
|
+
<span className="text-sm text-center">{name}</span>
|
|
42
|
+
</div>
|
|
43
|
+
))}
|
|
44
|
+
</div>
|
|
45
|
+
);
|
|
46
|
+
},
|
|
47
|
+
};
|
|
@@ -1,10 +1,14 @@
|
|
|
1
|
+
import { useRender, UseRenderComponentProps } from '@base-ui/react/use-render';
|
|
1
2
|
import classNames from 'clsx';
|
|
2
|
-
import { HTMLAttributes } from 'react';
|
|
3
3
|
import { Spinner } from '../spinner/Spinner.js';
|
|
4
4
|
import { IconName } from './generated/iconNames.js';
|
|
5
5
|
import { useIconLoading } from './IconLoadingContext.js';
|
|
6
6
|
|
|
7
|
-
export interface IconProps
|
|
7
|
+
export interface IconProps
|
|
8
|
+
extends UseRenderComponentProps<
|
|
9
|
+
'svg',
|
|
10
|
+
{ size: number; name: IconName; loading: boolean }
|
|
11
|
+
> {
|
|
8
12
|
name: IconName;
|
|
9
13
|
size?: number;
|
|
10
14
|
loading?: boolean;
|
|
@@ -16,6 +20,7 @@ export const Icon = function Icon({
|
|
|
16
20
|
size = 15,
|
|
17
21
|
className,
|
|
18
22
|
loading: loadingProp,
|
|
23
|
+
render,
|
|
19
24
|
...rest
|
|
20
25
|
}: IconProps & {
|
|
21
26
|
ref?: React.Ref<SVGSVGElement>;
|
|
@@ -23,6 +28,28 @@ export const Icon = function Icon({
|
|
|
23
28
|
const loadingContext = useIconLoading();
|
|
24
29
|
const loading = loadingProp !== false && (loadingProp || loadingContext);
|
|
25
30
|
|
|
31
|
+
const slotted = useRender({
|
|
32
|
+
defaultTagName: 'svg',
|
|
33
|
+
ref,
|
|
34
|
+
props: {
|
|
35
|
+
className: classNames(
|
|
36
|
+
'icon',
|
|
37
|
+
'flex-shrink-0 layer-components:fill-none',
|
|
38
|
+
className,
|
|
39
|
+
),
|
|
40
|
+
width: size,
|
|
41
|
+
height: size,
|
|
42
|
+
children: <use xlinkHref={`#icon-${name}`} />,
|
|
43
|
+
...rest,
|
|
44
|
+
},
|
|
45
|
+
state: {
|
|
46
|
+
size,
|
|
47
|
+
name,
|
|
48
|
+
loading,
|
|
49
|
+
},
|
|
50
|
+
render,
|
|
51
|
+
});
|
|
52
|
+
|
|
26
53
|
if (loading) {
|
|
27
54
|
return (
|
|
28
55
|
<Spinner
|
|
@@ -32,19 +59,5 @@ export const Icon = function Icon({
|
|
|
32
59
|
);
|
|
33
60
|
}
|
|
34
61
|
|
|
35
|
-
return
|
|
36
|
-
<svg
|
|
37
|
-
ref={ref}
|
|
38
|
-
className={classNames(
|
|
39
|
-
'icon',
|
|
40
|
-
'flex-shrink-0 layer-components:fill-none',
|
|
41
|
-
className,
|
|
42
|
-
)}
|
|
43
|
-
width={size}
|
|
44
|
-
height={size}
|
|
45
|
-
{...rest}
|
|
46
|
-
>
|
|
47
|
-
<use xlinkHref={`#icon-${name}`} />
|
|
48
|
-
</svg>
|
|
49
|
-
);
|
|
62
|
+
return slotted;
|
|
50
63
|
};
|
|
@@ -247,18 +247,17 @@ export function ImageUploaderFileButton({ children, ...props }: ButtonProps) {
|
|
|
247
247
|
<Button
|
|
248
248
|
emphasis="ghost"
|
|
249
249
|
size="small"
|
|
250
|
-
|
|
250
|
+
render={<label htmlFor={inputId} />}
|
|
251
|
+
nativeButton={false}
|
|
251
252
|
visuallyFocused={focused}
|
|
252
253
|
{...props}
|
|
253
254
|
>
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
)}
|
|
261
|
-
</label>
|
|
255
|
+
{children ?? (
|
|
256
|
+
<>
|
|
257
|
+
<Icon name="upload" />
|
|
258
|
+
<span>{dragging ? 'Drop' : 'Upload'}</span>
|
|
259
|
+
</>
|
|
260
|
+
)}
|
|
262
261
|
</Button>
|
|
263
262
|
);
|
|
264
263
|
}
|
package/src/components/index.ts
CHANGED