@arolariu/components 0.4.2 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{changelog.md → CHANGELOG.md} +36 -0
- package/CONTRIBUTING.md +344 -265
- package/DEBUGGING.md +185 -103
- package/EXAMPLES.md +470 -345
- package/{readme.md → README.md} +306 -203
- package/dist/components/ui/accordion.d.ts +157 -5
- package/dist/components/ui/accordion.d.ts.map +1 -1
- package/dist/components/ui/accordion.js +100 -22
- package/dist/components/ui/accordion.js.map +1 -1
- package/dist/components/ui/accordion.module.js +12 -0
- package/dist/components/ui/accordion.module.js.map +1 -0
- package/dist/components/ui/accordion_module.css +72 -0
- package/dist/components/ui/accordion_module.css.map +1 -0
- package/dist/components/ui/alert-dialog.d.ts +321 -18
- package/dist/components/ui/alert-dialog.d.ts.map +1 -1
- package/dist/components/ui/alert-dialog.js +145 -52
- package/dist/components/ui/alert-dialog.js.map +1 -1
- package/dist/components/ui/alert-dialog.module.js +13 -0
- package/dist/components/ui/alert-dialog.module.js.map +1 -0
- package/dist/components/ui/alert-dialog_module.css +89 -0
- package/dist/components/ui/alert-dialog_module.css.map +1 -0
- package/dist/components/ui/alert.d.ts +109 -6
- package/dist/components/ui/alert.d.ts.map +1 -1
- package/dist/components/ui/alert.js +12 -21
- package/dist/components/ui/alert.js.map +1 -1
- package/dist/components/ui/alert.module.js +11 -0
- package/dist/components/ui/alert.module.js.map +1 -0
- package/dist/components/ui/alert_module.css +59 -0
- package/dist/components/ui/alert_module.css.map +1 -0
- package/dist/components/ui/aspect-ratio.d.ts +24 -2
- package/dist/components/ui/aspect-ratio.d.ts.map +1 -1
- package/dist/components/ui/aspect-ratio.js +14 -3
- package/dist/components/ui/aspect-ratio.js.map +1 -1
- package/dist/components/ui/aspect-ratio.module.js +7 -0
- package/dist/components/ui/aspect-ratio.module.js.map +1 -0
- package/dist/components/ui/aspect-ratio_module.css +10 -0
- package/dist/components/ui/aspect-ratio_module.css.map +1 -0
- package/dist/components/ui/async-boundary.js +17 -0
- package/dist/components/ui/async-boundary.js.map +1 -0
- package/dist/components/ui/avatar.d.ts +97 -4
- package/dist/components/ui/avatar.d.ts.map +1 -1
- package/dist/components/ui/avatar.js +50 -21
- package/dist/components/ui/avatar.js.map +1 -1
- package/dist/components/ui/avatar.module.js +9 -0
- package/dist/components/ui/avatar.module.js.map +1 -0
- package/dist/components/ui/avatar_module.css +35 -0
- package/dist/components/ui/avatar_module.css.map +1 -0
- package/dist/components/ui/background-beams.d.ts +21 -3
- package/dist/components/ui/background-beams.d.ts.map +1 -1
- package/dist/components/ui/background-beams.js +22 -11
- package/dist/components/ui/background-beams.js.map +1 -1
- package/dist/components/ui/background-beams.module.js +8 -0
- package/dist/components/ui/background-beams.module.js.map +1 -0
- package/dist/components/ui/background-beams_module.css +22 -0
- package/dist/components/ui/background-beams_module.css.map +1 -0
- package/dist/components/ui/badge.d.ts +79 -6
- package/dist/components/ui/badge.d.ts.map +1 -1
- package/dist/components/ui/badge.js +19 -23
- package/dist/components/ui/badge.js.map +1 -1
- package/dist/components/ui/badge.module.js +11 -0
- package/dist/components/ui/badge.module.js.map +1 -0
- package/dist/components/ui/badge_module.css +63 -0
- package/dist/components/ui/badge_module.css.map +1 -0
- package/dist/components/ui/breadcrumb.d.ts +158 -13
- package/dist/components/ui/breadcrumb.d.ts.map +1 -1
- package/dist/components/ui/breadcrumb.js +39 -30
- package/dist/components/ui/breadcrumb.js.map +1 -1
- package/dist/components/ui/breadcrumb.module.js +14 -0
- package/dist/components/ui/breadcrumb.module.js.map +1 -0
- package/dist/components/ui/breadcrumb_module.css +90 -0
- package/dist/components/ui/breadcrumb_module.css.map +1 -0
- package/dist/components/ui/bubble-background.d.ts +38 -10
- package/dist/components/ui/bubble-background.d.ts.map +1 -1
- package/dist/components/ui/bubble-background.js +33 -35
- package/dist/components/ui/bubble-background.js.map +1 -1
- package/dist/components/ui/bubble-background.module.js +20 -0
- package/dist/components/ui/bubble-background.module.js.map +1 -0
- package/dist/components/ui/bubble-background_module.css +99 -0
- package/dist/components/ui/bubble-background_module.css.map +1 -0
- package/dist/components/ui/button-group.d.ts +88 -8
- package/dist/components/ui/button-group.d.ts.map +1 -1
- package/dist/components/ui/button-group.js +35 -32
- package/dist/components/ui/button-group.js.map +1 -1
- package/dist/components/ui/button-group.module.js +11 -0
- package/dist/components/ui/button-group.module.js.map +1 -0
- package/dist/components/ui/button-group_module.css +79 -0
- package/dist/components/ui/button-group_module.css.map +1 -0
- package/dist/components/ui/button.d.ts +82 -7
- package/dist/components/ui/button.d.ts.map +1 -1
- package/dist/components/ui/button.js +69 -34
- package/dist/components/ui/button.js.map +1 -1
- package/dist/components/ui/button.module.js +17 -0
- package/dist/components/ui/button.module.js.map +1 -0
- package/dist/components/ui/button_module.css +137 -0
- package/dist/components/ui/button_module.css.map +1 -0
- package/dist/components/ui/calendar.d.ts +39 -5
- package/dist/components/ui/calendar.d.ts.map +1 -1
- package/dist/components/ui/calendar.js +72 -61
- package/dist/components/ui/calendar.js.map +1 -1
- package/dist/components/ui/calendar.module.js +35 -0
- package/dist/components/ui/calendar.module.js.map +1 -0
- package/dist/components/ui/calendar_module.css +245 -0
- package/dist/components/ui/calendar_module.css.map +1 -0
- package/dist/components/ui/card-skeleton.js +41 -0
- package/dist/components/ui/card-skeleton.js.map +1 -0
- package/dist/components/ui/card-skeleton.module.js +15 -0
- package/dist/components/ui/card-skeleton.module.js.map +1 -0
- package/dist/components/ui/card-skeleton_module.css +54 -0
- package/dist/components/ui/card-skeleton_module.css.map +1 -0
- package/dist/components/ui/card.d.ts +162 -7
- package/dist/components/ui/card.d.ts.map +1 -1
- package/dist/components/ui/card.js +13 -13
- package/dist/components/ui/card.js.map +1 -1
- package/dist/components/ui/card.module.js +13 -0
- package/dist/components/ui/card.module.js.map +1 -0
- package/dist/components/ui/card_module.css +43 -0
- package/dist/components/ui/card_module.css.map +1 -0
- package/dist/components/ui/carousel.d.ts +127 -3
- package/dist/components/ui/carousel.d.ts.map +1 -1
- package/dist/components/ui/carousel.js +63 -36
- package/dist/components/ui/carousel.js.map +1 -1
- package/dist/components/ui/carousel.module.js +17 -0
- package/dist/components/ui/carousel.module.js.map +1 -0
- package/dist/components/ui/carousel_module.css +82 -0
- package/dist/components/ui/carousel_module.css.map +1 -0
- package/dist/components/ui/chart.d.ts +323 -13
- package/dist/components/ui/chart.d.ts.map +1 -1
- package/dist/components/ui/chart.js +158 -53
- package/dist/components/ui/chart.js.map +1 -1
- package/dist/components/ui/chart.module.js +27 -0
- package/dist/components/ui/chart.module.js.map +1 -0
- package/dist/components/ui/chart_module.css +159 -0
- package/dist/components/ui/chart_module.css.map +1 -0
- package/dist/components/ui/checkbox-group.d.ts +31 -0
- package/dist/components/ui/checkbox-group.d.ts.map +1 -0
- package/dist/components/ui/checkbox-group.js +25 -0
- package/dist/components/ui/checkbox-group.js.map +1 -0
- package/dist/components/ui/checkbox-group.module.js +7 -0
- package/dist/components/ui/checkbox-group.module.js.map +1 -0
- package/dist/components/ui/checkbox-group_module.css +11 -0
- package/dist/components/ui/checkbox-group_module.css.map +1 -0
- package/dist/components/ui/checkbox.d.ts +33 -2
- package/dist/components/ui/checkbox.d.ts.map +1 -1
- package/dist/components/ui/checkbox.js +37 -12
- package/dist/components/ui/checkbox.js.map +1 -1
- package/dist/components/ui/checkbox.module.js +8 -0
- package/dist/components/ui/checkbox.module.js.map +1 -0
- package/dist/components/ui/checkbox_module.css +45 -0
- package/dist/components/ui/checkbox_module.css.map +1 -0
- package/dist/components/ui/collapsible.d.ts +87 -3
- package/dist/components/ui/collapsible.d.ts.map +1 -1
- package/dist/components/ui/collapsible.js +46 -32
- package/dist/components/ui/collapsible.js.map +1 -1
- package/dist/components/ui/collapsible.module.js +8 -0
- package/dist/components/ui/collapsible.module.js.map +1 -0
- package/dist/components/ui/collapsible_module.css +26 -0
- package/dist/components/ui/collapsible_module.css.map +1 -0
- package/dist/components/ui/command.d.ts +284 -51
- package/dist/components/ui/command.d.ts.map +1 -1
- package/dist/components/ui/command.js +391 -50
- package/dist/components/ui/command.js.map +1 -1
- package/dist/components/ui/command.module.js +20 -0
- package/dist/components/ui/command.module.js.map +1 -0
- package/dist/components/ui/command_module.css +194 -0
- package/dist/components/ui/command_module.css.map +1 -0
- package/dist/components/ui/context-menu.d.ts +414 -21
- package/dist/components/ui/context-menu.d.ts.map +1 -1
- package/dist/components/ui/context-menu.js +190 -68
- package/dist/components/ui/context-menu.js.map +1 -1
- package/dist/components/ui/context-menu.module.js +19 -0
- package/dist/components/ui/context-menu.module.js.map +1 -0
- package/dist/components/ui/context-menu_module.css +114 -0
- package/dist/components/ui/context-menu_module.css.map +1 -0
- package/dist/components/ui/copy-button.d.ts +41 -0
- package/dist/components/ui/copy-button.d.ts.map +1 -0
- package/dist/components/ui/copy-button.js +51 -0
- package/dist/components/ui/copy-button.js.map +1 -0
- package/dist/components/ui/copy-button.module.js +8 -0
- package/dist/components/ui/copy-button.module.js.map +1 -0
- package/dist/components/ui/copy-button_module.css +37 -0
- package/dist/components/ui/copy-button_module.css.map +1 -0
- package/dist/components/ui/counting-number.d.ts +28 -2
- package/dist/components/ui/counting-number.d.ts.map +1 -1
- package/dist/components/ui/counting-number.js +31 -27
- package/dist/components/ui/counting-number.js.map +1 -1
- package/dist/components/ui/counting-number.module.js +7 -0
- package/dist/components/ui/counting-number.module.js.map +1 -0
- package/dist/components/ui/counting-number_module.css +7 -0
- package/dist/components/ui/counting-number_module.css.map +1 -0
- package/dist/components/ui/dialog.d.ts +287 -17
- package/dist/components/ui/dialog.d.ts.map +1 -1
- package/dist/components/ui/dialog.js +129 -52
- package/dist/components/ui/dialog.js.map +1 -1
- package/dist/components/ui/dialog.module.js +13 -0
- package/dist/components/ui/dialog.module.js.map +1 -0
- package/dist/components/ui/dialog_module.css +114 -0
- package/dist/components/ui/dialog_module.css.map +1 -0
- package/dist/components/ui/dot-background.d.ts +25 -35
- package/dist/components/ui/dot-background.d.ts.map +1 -1
- package/dist/components/ui/dot-background.js +31 -22
- package/dist/components/ui/dot-background.js.map +1 -1
- package/dist/components/ui/dot-background.module.js +8 -0
- package/dist/components/ui/dot-background.module.js.map +1 -0
- package/dist/components/ui/dot-background_module.css +15 -0
- package/dist/components/ui/dot-background_module.css.map +1 -0
- package/dist/components/ui/drawer.d.ts +287 -18
- package/dist/components/ui/drawer.d.ts.map +1 -1
- package/dist/components/ui/drawer.js +117 -40
- package/dist/components/ui/drawer.js.map +1 -1
- package/dist/components/ui/drawer.module.js +14 -0
- package/dist/components/ui/drawer.module.js.map +1 -0
- package/dist/components/ui/drawer_module.css +86 -0
- package/dist/components/ui/drawer_module.css.map +1 -0
- package/dist/components/ui/dropdown-menu.d.ts +414 -21
- package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
- package/dist/components/ui/dropdown-menu.js +189 -68
- package/dist/components/ui/dropdown-menu.js.map +1 -1
- package/dist/components/ui/dropdown-menu.module.js +19 -0
- package/dist/components/ui/dropdown-menu.module.js.map +1 -0
- package/dist/components/ui/dropdown-menu_module.css +114 -0
- package/dist/components/ui/dropdown-menu_module.css.map +1 -0
- package/dist/components/ui/dropdrawer.d.ts +313 -17
- package/dist/components/ui/dropdrawer.d.ts.map +1 -1
- package/dist/components/ui/dropdrawer.js +423 -159
- package/dist/components/ui/dropdrawer.js.map +1 -1
- package/dist/components/ui/dropdrawer.module.js +43 -0
- package/dist/components/ui/dropdrawer.module.js.map +1 -0
- package/dist/components/ui/dropdrawer_module.css +307 -0
- package/dist/components/ui/dropdrawer_module.css.map +1 -0
- package/dist/components/ui/empty.d.ts +129 -10
- package/dist/components/ui/empty.d.ts.map +1 -1
- package/dist/components/ui/empty.js +32 -47
- package/dist/components/ui/empty.js.map +1 -1
- package/dist/components/ui/empty.module.js +13 -0
- package/dist/components/ui/empty.module.js.map +1 -0
- package/dist/components/ui/empty_module.css +85 -0
- package/dist/components/ui/empty_module.css.map +1 -0
- package/dist/components/ui/error-boundary.js +61 -0
- package/dist/components/ui/error-boundary.js.map +1 -0
- package/dist/components/ui/error-boundary.module.js +10 -0
- package/dist/components/ui/error-boundary.module.js.map +1 -0
- package/dist/components/ui/error-boundary_module.css +41 -0
- package/dist/components/ui/error-boundary_module.css.map +1 -0
- package/dist/components/ui/field.d.ts +225 -0
- package/dist/components/ui/field.d.ts.map +1 -0
- package/dist/components/ui/field.js +76 -86
- package/dist/components/ui/field.js.map +1 -1
- package/dist/components/ui/field.module.js +24 -0
- package/dist/components/ui/field.module.js.map +1 -0
- package/dist/components/ui/field_module.css +185 -0
- package/dist/components/ui/field_module.css.map +1 -0
- package/dist/components/ui/fireworks-background.d.ts +27 -3
- package/dist/components/ui/fireworks-background.d.ts.map +1 -1
- package/dist/components/ui/fireworks-background.js +36 -35
- package/dist/components/ui/fireworks-background.js.map +1 -1
- package/dist/components/ui/fireworks-background.module.js +8 -0
- package/dist/components/ui/fireworks-background.module.js.map +1 -0
- package/dist/components/ui/fireworks-background_module.css +17 -0
- package/dist/components/ui/fireworks-background_module.css.map +1 -0
- package/dist/components/ui/flip-button.d.ts +27 -3
- package/dist/components/ui/flip-button.d.ts.map +1 -1
- package/dist/components/ui/flip-button.js +27 -17
- package/dist/components/ui/flip-button.js.map +1 -1
- package/dist/components/ui/flip-button.module.js +11 -0
- package/dist/components/ui/flip-button.module.js.map +1 -0
- package/dist/components/ui/flip-button_module.css +47 -0
- package/dist/components/ui/flip-button_module.css.map +1 -0
- package/dist/components/ui/focus-scope.js +70 -0
- package/dist/components/ui/focus-scope.js.map +1 -0
- package/dist/components/ui/focus-scope.module.js +7 -0
- package/dist/components/ui/focus-scope.module.js.map +1 -0
- package/dist/components/ui/focus-scope_module.css +6 -0
- package/dist/components/ui/focus-scope_module.css.map +1 -0
- package/dist/components/ui/form-skeleton.js +32 -0
- package/dist/components/ui/form-skeleton.js.map +1 -0
- package/dist/components/ui/form-skeleton.module.js +11 -0
- package/dist/components/ui/form-skeleton.module.js.map +1 -0
- package/dist/components/ui/form-skeleton_module.css +30 -0
- package/dist/components/ui/form-skeleton_module.css.map +1 -0
- package/dist/components/ui/form.d.ts +143 -13
- package/dist/components/ui/form.d.ts.map +1 -1
- package/dist/components/ui/form.js +55 -21
- package/dist/components/ui/form.js.map +1 -1
- package/dist/components/ui/form.module.js +10 -0
- package/dist/components/ui/form.module.js.map +1 -0
- package/dist/components/ui/form_module.css +22 -0
- package/dist/components/ui/form_module.css.map +1 -0
- package/dist/components/ui/gradient-background.d.ts +21 -3
- package/dist/components/ui/gradient-background.d.ts.map +1 -1
- package/dist/components/ui/gradient-background.js +8 -4
- package/dist/components/ui/gradient-background.js.map +1 -1
- package/dist/components/ui/gradient-background.module.js +7 -0
- package/dist/components/ui/gradient-background.module.js.map +1 -0
- package/dist/components/ui/gradient-background_module.css +9 -0
- package/dist/components/ui/gradient-background_module.css.map +1 -0
- package/dist/components/ui/gradient-text.d.ts +23 -2
- package/dist/components/ui/gradient-text.d.ts.map +1 -1
- package/dist/components/ui/gradient-text.js +8 -6
- package/dist/components/ui/gradient-text.js.map +1 -1
- package/dist/components/ui/gradient-text.module.js +9 -0
- package/dist/components/ui/gradient-text.module.js.map +1 -0
- package/dist/components/ui/gradient-text_module.css +24 -0
- package/dist/components/ui/gradient-text_module.css.map +1 -0
- package/dist/components/ui/highlight-text.d.ts +24 -2
- package/dist/components/ui/highlight-text.d.ts.map +1 -1
- package/dist/components/ui/highlight-text.js +7 -10
- package/dist/components/ui/highlight-text.js.map +1 -1
- package/dist/components/ui/highlight-text.module.js +7 -0
- package/dist/components/ui/highlight-text.module.js.map +1 -0
- package/dist/components/ui/highlight-text_module.css +16 -0
- package/dist/components/ui/highlight-text_module.css.map +1 -0
- package/dist/components/ui/hole-background.d.ts +23 -2
- package/dist/components/ui/hole-background.d.ts.map +1 -1
- package/dist/components/ui/hole-background.js +155 -118
- package/dist/components/ui/hole-background.js.map +1 -1
- package/dist/components/ui/hole-background.module.js +10 -0
- package/dist/components/ui/hole-background.module.js.map +1 -0
- package/dist/components/ui/hole-background_module.css +85 -0
- package/dist/components/ui/hole-background_module.css.map +1 -0
- package/dist/components/ui/hover-card.d.ts +85 -4
- package/dist/components/ui/hover-card.d.ts.map +1 -1
- package/dist/components/ui/hover-card.js +52 -10
- package/dist/components/ui/hover-card.js.map +1 -1
- package/dist/components/ui/hover-card.module.js +8 -0
- package/dist/components/ui/hover-card.module.js.map +1 -0
- package/dist/components/ui/hover-card_module.css +23 -0
- package/dist/components/ui/hover-card_module.css.map +1 -0
- package/dist/components/ui/input-group.d.ts +132 -13
- package/dist/components/ui/input-group.d.ts.map +1 -1
- package/dist/components/ui/input-group.js +62 -66
- package/dist/components/ui/input-group.js.map +1 -1
- package/dist/components/ui/input-group.module.js +20 -0
- package/dist/components/ui/input-group.module.js.map +1 -0
- package/dist/components/ui/input-group_module.css +150 -0
- package/dist/components/ui/input-group_module.css.map +1 -0
- package/dist/components/ui/input-otp.d.ts +110 -30
- package/dist/components/ui/input-otp.d.ts.map +1 -1
- package/dist/components/ui/input-otp.js +24 -15
- package/dist/components/ui/input-otp.js.map +1 -1
- package/dist/components/ui/input-otp.module.js +17 -0
- package/dist/components/ui/input-otp.module.js.map +1 -0
- package/dist/components/ui/input-otp_module.css +89 -0
- package/dist/components/ui/input-otp_module.css.map +1 -0
- package/dist/components/ui/input.d.ts +31 -1
- package/dist/components/ui/input.d.ts.map +1 -1
- package/dist/components/ui/input.js +21 -8
- package/dist/components/ui/input.js.map +1 -1
- package/dist/components/ui/input.module.js +7 -0
- package/dist/components/ui/input.module.js.map +1 -0
- package/dist/components/ui/input_module.css +40 -0
- package/dist/components/ui/input_module.css.map +1 -0
- package/dist/components/ui/item.d.ts +221 -19
- package/dist/components/ui/item.d.ts.map +1 -1
- package/dist/components/ui/item.js +66 -90
- package/dist/components/ui/item.js.map +1 -1
- package/dist/components/ui/item.module.js +22 -0
- package/dist/components/ui/item.module.js.map +1 -0
- package/dist/components/ui/item_module.css +143 -0
- package/dist/components/ui/item_module.css.map +1 -0
- package/dist/components/ui/kbd.d.ts +43 -2
- package/dist/components/ui/kbd.d.ts.map +1 -1
- package/dist/components/ui/kbd.js +12 -12
- package/dist/components/ui/kbd.js.map +1 -1
- package/dist/components/ui/kbd.module.js +8 -0
- package/dist/components/ui/kbd.module.js.map +1 -0
- package/dist/components/ui/kbd_module.css +35 -0
- package/dist/components/ui/kbd_module.css.map +1 -0
- package/dist/components/ui/label.d.ts +30 -3
- package/dist/components/ui/label.d.ts.map +1 -1
- package/dist/components/ui/label.js +7 -8
- package/dist/components/ui/label.js.map +1 -1
- package/dist/components/ui/label.module.js +7 -0
- package/dist/components/ui/label.module.js.map +1 -0
- package/dist/components/ui/label_module.css +17 -0
- package/dist/components/ui/label_module.css.map +1 -0
- package/dist/components/ui/list-skeleton.js +35 -0
- package/dist/components/ui/list-skeleton.js.map +1 -0
- package/dist/components/ui/list-skeleton.module.js +12 -0
- package/dist/components/ui/list-skeleton.module.js.map +1 -0
- package/dist/components/ui/list-skeleton_module.css +39 -0
- package/dist/components/ui/list-skeleton_module.css.map +1 -0
- package/dist/components/ui/loading-overlay.js +21 -0
- package/dist/components/ui/loading-overlay.js.map +1 -0
- package/dist/components/ui/loading-overlay.module.js +9 -0
- package/dist/components/ui/loading-overlay.module.js.map +1 -0
- package/dist/components/ui/loading-overlay_module.css +22 -0
- package/dist/components/ui/loading-overlay_module.css.map +1 -0
- package/dist/components/ui/menubar.d.ts +422 -22
- package/dist/components/ui/menubar.d.ts.map +1 -1
- package/dist/components/ui/menubar.js +199 -100
- package/dist/components/ui/menubar.js.map +1 -1
- package/dist/components/ui/menubar.module.js +21 -0
- package/dist/components/ui/menubar.module.js.map +1 -0
- package/dist/components/ui/menubar_module.css +145 -0
- package/dist/components/ui/menubar_module.css.map +1 -0
- package/dist/components/ui/meter.d.ts +101 -0
- package/dist/components/ui/meter.d.ts.map +1 -0
- package/dist/components/ui/meter.js +71 -0
- package/dist/components/ui/meter.js.map +1 -0
- package/dist/components/ui/meter.module.js +10 -0
- package/dist/components/ui/meter.module.js.map +1 -0
- package/dist/components/ui/meter_module.css +31 -0
- package/dist/components/ui/meter_module.css.map +1 -0
- package/dist/components/ui/navigation-menu.d.ts +242 -11
- package/dist/components/ui/navigation-menu.d.ts.map +1 -1
- package/dist/components/ui/navigation-menu.js +135 -49
- package/dist/components/ui/navigation-menu.js.map +1 -1
- package/dist/components/ui/navigation-menu.module.js +18 -0
- package/dist/components/ui/navigation-menu.module.js.map +1 -0
- package/dist/components/ui/navigation-menu_module.css +112 -0
- package/dist/components/ui/navigation-menu_module.css.map +1 -0
- package/dist/components/ui/number-field.d.ts +144 -0
- package/dist/components/ui/number-field.d.ts.map +1 -0
- package/dist/components/ui/number-field.js +111 -0
- package/dist/components/ui/number-field.js.map +1 -0
- package/dist/components/ui/number-field.module.js +15 -0
- package/dist/components/ui/number-field.module.js.map +1 -0
- package/dist/components/ui/number-field_module.css +125 -0
- package/dist/components/ui/number-field_module.css.map +1 -0
- package/dist/components/ui/pagination.d.ts +150 -24
- package/dist/components/ui/pagination.d.ts.map +1 -1
- package/dist/components/ui/pagination.js +41 -38
- package/dist/components/ui/pagination.js.map +1 -1
- package/dist/components/ui/pagination.module.js +14 -0
- package/dist/components/ui/pagination.module.js.map +1 -0
- package/dist/components/ui/pagination_module.css +66 -0
- package/dist/components/ui/pagination_module.css.map +1 -0
- package/dist/components/ui/popover.d.ts +133 -5
- package/dist/components/ui/popover.d.ts.map +1 -1
- package/dist/components/ui/popover.js +68 -14
- package/dist/components/ui/popover.js.map +1 -1
- package/dist/components/ui/popover.module.js +9 -0
- package/dist/components/ui/popover.module.js.map +1 -0
- package/dist/components/ui/popover_module.css +28 -0
- package/dist/components/ui/popover_module.css.map +1 -0
- package/dist/components/ui/progress.d.ts +34 -2
- package/dist/components/ui/progress.d.ts.map +1 -1
- package/dist/components/ui/progress.js +22 -14
- package/dist/components/ui/progress.js.map +1 -1
- package/dist/components/ui/progress.module.js +8 -0
- package/dist/components/ui/progress.module.js.map +1 -0
- package/dist/components/ui/progress_module.css +20 -0
- package/dist/components/ui/progress_module.css.map +1 -0
- package/dist/components/ui/radio-group.d.ts +44 -3
- package/dist/components/ui/radio-group.d.ts.map +1 -1
- package/dist/components/ui/radio-group.js +38 -16
- package/dist/components/ui/radio-group.js.map +1 -1
- package/dist/components/ui/radio-group.module.js +10 -0
- package/dist/components/ui/radio-group.module.js.map +1 -0
- package/dist/components/ui/radio-group_module.css +44 -0
- package/dist/components/ui/radio-group_module.css.map +1 -0
- package/dist/components/ui/resizable.d.ts +79 -6
- package/dist/components/ui/resizable.d.ts.map +1 -1
- package/dist/components/ui/resizable.js +23 -13
- package/dist/components/ui/resizable.js.map +1 -1
- package/dist/components/ui/resizable.module.js +10 -0
- package/dist/components/ui/resizable.module.js.map +1 -0
- package/dist/components/ui/resizable_module.css +70 -0
- package/dist/components/ui/resizable_module.css.map +1 -0
- package/dist/components/ui/ripple-button.d.ts +23 -2
- package/dist/components/ui/ripple-button.d.ts.map +1 -1
- package/dist/components/ui/ripple-button.js +26 -11
- package/dist/components/ui/ripple-button.js.map +1 -1
- package/dist/components/ui/ripple-button.module.js +9 -0
- package/dist/components/ui/ripple-button.module.js.map +1 -0
- package/dist/components/ui/ripple-button_module.css +38 -0
- package/dist/components/ui/ripple-button_module.css.map +1 -0
- package/dist/components/ui/scratcher.d.ts +25 -2
- package/dist/components/ui/scratcher.d.ts.map +1 -1
- package/dist/components/ui/scratcher.js +85 -87
- package/dist/components/ui/scratcher.js.map +1 -1
- package/dist/components/ui/scratcher.module.js +8 -0
- package/dist/components/ui/scratcher.module.js.map +1 -0
- package/dist/components/ui/scratcher_module.css +13 -0
- package/dist/components/ui/scratcher_module.css.map +1 -0
- package/dist/components/ui/scroll-area.d.ts +46 -3
- package/dist/components/ui/scroll-area.d.ts.map +1 -1
- package/dist/components/ui/scroll-area.js +44 -19
- package/dist/components/ui/scroll-area.js.map +1 -1
- package/dist/components/ui/scroll-area.module.js +14 -0
- package/dist/components/ui/scroll-area.module.js.map +1 -0
- package/dist/components/ui/scroll-area_module.css +51 -0
- package/dist/components/ui/scroll-area_module.css.map +1 -0
- package/dist/components/ui/select.d.ts +269 -11
- package/dist/components/ui/select.d.ts.map +1 -1
- package/dist/components/ui/select.js +152 -67
- package/dist/components/ui/select.js.map +1 -1
- package/dist/components/ui/select.module.js +20 -0
- package/dist/components/ui/select.module.js.map +1 -0
- package/dist/components/ui/select_module.css +134 -0
- package/dist/components/ui/select_module.css.map +1 -0
- package/dist/components/ui/separator.d.ts +36 -2
- package/dist/components/ui/separator.d.ts.map +1 -1
- package/dist/components/ui/separator.js +20 -10
- package/dist/components/ui/separator.js.map +1 -1
- package/dist/components/ui/separator.module.js +9 -0
- package/dist/components/ui/separator.module.js.map +1 -0
- package/dist/components/ui/separator_module.css +17 -0
- package/dist/components/ui/separator_module.css.map +1 -0
- package/dist/components/ui/sheet.d.ts +297 -23
- package/dist/components/ui/sheet.d.ts.map +1 -1
- package/dist/components/ui/sheet.js +121 -63
- package/dist/components/ui/sheet.js.map +1 -1
- package/dist/components/ui/sheet.module.js +18 -0
- package/dist/components/ui/sheet.module.js.map +1 -0
- package/dist/components/ui/sheet_module.css +136 -0
- package/dist/components/ui/sheet_module.css.map +1 -0
- package/dist/components/ui/sidebar.d.ts +491 -23
- package/dist/components/ui/sidebar.d.ts.map +1 -1
- package/dist/components/ui/sidebar.js +214 -143
- package/dist/components/ui/sidebar.js.map +1 -1
- package/dist/components/ui/sidebar.module.js +50 -0
- package/dist/components/ui/sidebar.module.js.map +1 -0
- package/dist/components/ui/sidebar_module.css +569 -0
- package/dist/components/ui/sidebar_module.css.map +1 -0
- package/dist/components/ui/skeleton.d.ts +30 -1
- package/dist/components/ui/skeleton.d.ts.map +1 -1
- package/dist/components/ui/skeleton.js +7 -7
- package/dist/components/ui/skeleton.js.map +1 -1
- package/dist/components/ui/skeleton.module.js +8 -0
- package/dist/components/ui/skeleton.module.js.map +1 -0
- package/dist/components/ui/skeleton_module.css +18 -0
- package/dist/components/ui/skeleton_module.css.map +1 -0
- package/dist/components/ui/slider.d.ts +48 -2
- package/dist/components/ui/slider.d.ts.map +1 -1
- package/dist/components/ui/slider.js +44 -17
- package/dist/components/ui/slider.js.map +1 -1
- package/dist/components/ui/slider.module.js +11 -0
- package/dist/components/ui/slider.module.js.map +1 -0
- package/dist/components/ui/slider_module.css +55 -0
- package/dist/components/ui/slider_module.css.map +1 -0
- package/dist/components/ui/sonner.d.ts +137 -4
- package/dist/components/ui/sonner.d.ts.map +1 -1
- package/dist/components/ui/sonner.js +450 -18
- package/dist/components/ui/sonner.js.map +1 -1
- package/dist/components/ui/sonner.module.js +34 -0
- package/dist/components/ui/sonner.module.js.map +1 -0
- package/dist/components/ui/sonner_module.css +233 -0
- package/dist/components/ui/sonner_module.css.map +1 -0
- package/dist/components/ui/spinner.d.ts +20 -1
- package/dist/components/ui/spinner.d.ts.map +1 -1
- package/dist/components/ui/spinner.js +29 -11
- package/dist/components/ui/spinner.js.map +1 -1
- package/dist/components/ui/spinner.module.js +10 -0
- package/dist/components/ui/spinner.module.js.map +1 -0
- package/dist/components/ui/spinner_module.css +28 -0
- package/dist/components/ui/spinner_module.css.map +1 -0
- package/dist/components/ui/stepper.d.ts +48 -0
- package/dist/components/ui/stepper.d.ts.map +1 -0
- package/dist/components/ui/stepper.js +41 -0
- package/dist/components/ui/stepper.js.map +1 -0
- package/dist/components/ui/stepper.module.js +12 -0
- package/dist/components/ui/stepper.module.js.map +1 -0
- package/dist/components/ui/stepper_module.css +75 -0
- package/dist/components/ui/stepper_module.css.map +1 -0
- package/dist/components/ui/switch.d.ts +29 -2
- package/dist/components/ui/switch.d.ts.map +1 -1
- package/dist/components/ui/switch.js +21 -9
- package/dist/components/ui/switch.js.map +1 -1
- package/dist/components/ui/switch.module.js +8 -0
- package/dist/components/ui/switch.module.js.map +1 -0
- package/dist/components/ui/switch_module.css +45 -0
- package/dist/components/ui/switch_module.css.map +1 -0
- package/dist/components/ui/table-skeleton.js +34 -0
- package/dist/components/ui/table-skeleton.js.map +1 -0
- package/dist/components/ui/table-skeleton.module.js +11 -0
- package/dist/components/ui/table-skeleton.module.js.map +1 -0
- package/dist/components/ui/table-skeleton_module.css +32 -0
- package/dist/components/ui/table-skeleton_module.css.map +1 -0
- package/dist/components/ui/table.d.ts +170 -8
- package/dist/components/ui/table.d.ts.map +1 -1
- package/dist/components/ui/table.js +17 -17
- package/dist/components/ui/table.js.map +1 -1
- package/dist/components/ui/table.module.js +15 -0
- package/dist/components/ui/table.module.js.map +1 -0
- package/dist/components/ui/table_module.css +71 -0
- package/dist/components/ui/table_module.css.map +1 -0
- package/dist/components/ui/tabs.d.ts +114 -5
- package/dist/components/ui/tabs.d.ts.map +1 -1
- package/dist/components/ui/tabs.js +71 -20
- package/dist/components/ui/tabs.js.map +1 -1
- package/dist/components/ui/tabs.module.js +10 -0
- package/dist/components/ui/tabs.module.js.map +1 -0
- package/dist/components/ui/tabs_module.css +89 -0
- package/dist/components/ui/tabs_module.css.map +1 -0
- package/dist/components/ui/textarea.d.ts +24 -1
- package/dist/components/ui/textarea.d.ts.map +1 -1
- package/dist/components/ui/textarea.js +2 -2
- package/dist/components/ui/textarea.js.map +1 -1
- package/dist/components/ui/textarea.module.js +7 -0
- package/dist/components/ui/textarea.module.js.map +1 -0
- package/dist/components/ui/textarea_module.css +33 -0
- package/dist/components/ui/textarea_module.css.map +1 -0
- package/dist/components/ui/timeline.d.ts +111 -0
- package/dist/components/ui/timeline.d.ts.map +1 -0
- package/dist/components/ui/timeline.js +34 -0
- package/dist/components/ui/timeline.js.map +1 -0
- package/dist/components/ui/timeline.module.js +10 -0
- package/dist/components/ui/timeline.module.js.map +1 -0
- package/dist/components/ui/timeline_module.css +47 -0
- package/dist/components/ui/timeline_module.css.map +1 -0
- package/dist/components/ui/toggle-group.d.ts +81 -10
- package/dist/components/ui/toggle-group.d.ts.map +1 -1
- package/dist/components/ui/toggle-group.js +32 -23
- package/dist/components/ui/toggle-group.js.map +1 -1
- package/dist/components/ui/toggle-group.module.js +7 -0
- package/dist/components/ui/toggle-group.module.js.map +1 -0
- package/dist/components/ui/toggle-group_module.css +8 -0
- package/dist/components/ui/toggle-group_module.css.map +1 -0
- package/dist/components/ui/toggle.d.ts +60 -11
- package/dist/components/ui/toggle.d.ts.map +1 -1
- package/dist/components/ui/toggle.js +29 -29
- package/dist/components/ui/toggle.js.map +1 -1
- package/dist/components/ui/toggle.module.js +12 -0
- package/dist/components/ui/toggle.module.js.map +1 -0
- package/dist/components/ui/toggle_module.css +62 -0
- package/dist/components/ui/toggle_module.css.map +1 -0
- package/dist/components/ui/toolbar.d.ts +127 -0
- package/dist/components/ui/toolbar.d.ts.map +1 -0
- package/dist/components/ui/toolbar.js +85 -0
- package/dist/components/ui/toolbar.js.map +1 -0
- package/dist/components/ui/toolbar.module.js +12 -0
- package/dist/components/ui/toolbar.module.js.map +1 -0
- package/dist/components/ui/toolbar_module.css +115 -0
- package/dist/components/ui/toolbar_module.css.map +1 -0
- package/dist/components/ui/tooltip.d.ts +119 -5
- package/dist/components/ui/tooltip.d.ts.map +1 -1
- package/dist/components/ui/tooltip.js +48 -13
- package/dist/components/ui/tooltip.js.map +1 -1
- package/dist/components/ui/tooltip.module.js +9 -0
- package/dist/components/ui/tooltip.module.js.map +1 -0
- package/dist/components/ui/tooltip_module.css +35 -0
- package/dist/components/ui/tooltip_module.css.map +1 -0
- package/dist/components/ui/typewriter.d.ts +48 -13
- package/dist/components/ui/typewriter.d.ts.map +1 -1
- package/dist/components/ui/typewriter.js +46 -49
- package/dist/components/ui/typewriter.js.map +1 -1
- package/dist/components/ui/typewriter.module.js +16 -0
- package/dist/components/ui/typewriter.module.js.map +1 -0
- package/dist/components/ui/typewriter_module.css +102 -0
- package/dist/components/ui/typewriter_module.css.map +1 -0
- package/dist/components/ui/visually-hidden.d.ts +38 -0
- package/dist/components/ui/visually-hidden.d.ts.map +1 -0
- package/dist/components/ui/visually-hidden.js +13 -0
- package/dist/components/ui/visually-hidden.js.map +1 -0
- package/dist/components/ui/visually-hidden.module.js +7 -0
- package/dist/components/ui/visually-hidden.module.js.map +1 -0
- package/dist/components/ui/visually-hidden_module.css +14 -0
- package/dist/components/ui/visually-hidden_module.css.map +1 -0
- package/dist/hooks/useAnnounce.js +46 -0
- package/dist/hooks/useAnnounce.js.map +1 -0
- package/dist/hooks/useBreakpoint.d.ts +17 -0
- package/dist/hooks/useBreakpoint.d.ts.map +1 -0
- package/dist/hooks/useBreakpoint.js +16 -0
- package/dist/hooks/useBreakpoint.js.map +1 -0
- package/dist/hooks/useColorScheme.d.ts +14 -0
- package/dist/hooks/useColorScheme.d.ts.map +1 -0
- package/dist/hooks/useColorScheme.js +9 -0
- package/dist/hooks/useColorScheme.js.map +1 -0
- package/dist/hooks/useFocusManager.js +51 -0
- package/dist/hooks/useFocusManager.js.map +1 -0
- package/dist/hooks/useFocusVisible.d.ts +50 -0
- package/dist/hooks/useFocusVisible.d.ts.map +1 -0
- package/dist/hooks/useFocusVisible.js +35 -0
- package/dist/hooks/useFocusVisible.js.map +1 -0
- package/dist/hooks/useIsMobile.d.ts +5 -11
- package/dist/hooks/useIsMobile.d.ts.map +1 -1
- package/dist/hooks/useIsMobile.js +2 -13
- package/dist/hooks/useIsMobile.js.map +1 -1
- package/dist/hooks/useMediaQuery.d.ts +14 -0
- package/dist/hooks/useMediaQuery.d.ts.map +1 -0
- package/dist/hooks/useMediaQuery.js +20 -0
- package/dist/hooks/useMediaQuery.js.map +1 -0
- package/dist/hooks/usePrefersContrast.d.ts +19 -0
- package/dist/hooks/usePrefersContrast.d.ts.map +1 -0
- package/dist/hooks/usePrefersContrast.js +8 -0
- package/dist/hooks/usePrefersContrast.js.map +1 -0
- package/dist/hooks/useReducedMotion.d.ts +19 -0
- package/dist/hooks/useReducedMotion.d.ts.map +1 -0
- package/dist/hooks/useReducedMotion.js +2 -0
- package/dist/index.css +104 -5355
- package/dist/index.css.map +1 -1
- package/dist/index.d.ts +40 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +89 -70
- package/dist/lib/color-conversion-utilities.d.ts +82 -0
- package/dist/lib/color-conversion-utilities.d.ts.map +1 -0
- package/dist/lib/color-conversion-utilities.js +94 -0
- package/dist/lib/color-conversion-utilities.js.map +1 -0
- package/dist/lib/utilities.d.ts +5 -4
- package/dist/lib/utilities.d.ts.map +1 -1
- package/dist/lib/utilities.js +1 -2
- package/dist/lib/utilities.js.map +1 -1
- package/dist/motion/Collapse.js +19 -0
- package/dist/motion/Collapse.js.map +1 -0
- package/dist/motion/Collapse.module.js +8 -0
- package/dist/motion/Collapse.module.js.map +1 -0
- package/dist/motion/Collapse_module.css +25 -0
- package/dist/motion/Collapse_module.css.map +1 -0
- package/dist/motion/Presence.js +14 -0
- package/dist/motion/Presence.js.map +1 -0
- package/dist/motion/index.js +5 -0
- package/dist/motion/presets.js +117 -0
- package/dist/motion/presets.js.map +1 -0
- package/dist/motion/tokens.js +41 -0
- package/dist/motion/tokens.js.map +1 -0
- package/package.json +159 -65
- package/src/components/ui/accordion.module.css +70 -0
- package/src/components/ui/accordion.tsx +278 -44
- package/src/components/ui/alert-dialog.module.css +87 -0
- package/src/components/ui/alert-dialog.tsx +474 -99
- package/src/components/ui/alert.module.css +57 -0
- package/src/components/ui/alert.tsx +136 -43
- package/src/components/ui/aspect-ratio.module.css +7 -0
- package/src/components/ui/aspect-ratio.tsx +38 -3
- package/src/components/ui/async-boundary.tsx +56 -0
- package/src/components/ui/avatar.module.css +31 -0
- package/src/components/ui/avatar.tsx +146 -36
- package/src/components/ui/background-beams.module.css +20 -0
- package/src/components/ui/background-beams.tsx +173 -134
- package/src/components/ui/badge.module.css +60 -0
- package/src/components/ui/badge.tsx +100 -32
- package/src/components/ui/breadcrumb.module.css +87 -0
- package/src/components/ui/breadcrumb.tsx +256 -74
- package/src/components/ui/bubble-background.module.css +97 -0
- package/src/components/ui/bubble-background.tsx +92 -52
- package/src/components/ui/button-group.module.css +76 -0
- package/src/components/ui/button-group.tsx +135 -46
- package/src/components/ui/button.module.css +138 -0
- package/src/components/ui/button.tsx +159 -41
- package/src/components/ui/calendar.module.css +250 -0
- package/src/components/ui/calendar.tsx +133 -103
- package/src/components/ui/card-skeleton.module.css +50 -0
- package/src/components/ui/card-skeleton.tsx +69 -0
- package/src/components/ui/card.module.css +41 -0
- package/src/components/ui/card.tsx +175 -22
- package/src/components/ui/carousel.module.css +80 -0
- package/src/components/ui/carousel.tsx +184 -43
- package/src/components/ui/chart.module.css +164 -0
- package/src/components/ui/chart.tsx +444 -102
- package/src/components/ui/checkbox-group.module.css +8 -0
- package/src/components/ui/checkbox-group.tsx +54 -0
- package/src/components/ui/checkbox.module.css +43 -0
- package/src/components/ui/checkbox.tsx +73 -19
- package/src/components/ui/collapsible.module.css +24 -0
- package/src/components/ui/collapsible.tsx +139 -3
- package/src/components/ui/command.module.css +193 -0
- package/src/components/ui/command.tsx +877 -113
- package/src/components/ui/context-menu.module.css +113 -0
- package/src/components/ui/context-menu.tsx +616 -157
- package/src/components/ui/copy-button.module.css +34 -0
- package/src/components/ui/copy-button.tsx +116 -0
- package/src/components/ui/counting-number.module.css +4 -0
- package/src/components/ui/counting-number.tsx +69 -31
- package/src/components/ui/dialog.module.css +113 -0
- package/src/components/ui/dialog.tsx +427 -81
- package/src/components/ui/dot-background.module.css +12 -0
- package/src/components/ui/dot-background.tsx +134 -126
- package/src/components/ui/drawer.module.css +85 -0
- package/src/components/ui/drawer.tsx +408 -80
- package/src/components/ui/dropdown-menu.module.css +113 -0
- package/src/components/ui/dropdown-menu.tsx +616 -159
- package/src/components/ui/dropdrawer.module.css +322 -0
- package/src/components/ui/dropdrawer.tsx +850 -398
- package/src/components/ui/empty.module.css +84 -0
- package/src/components/ui/empty.tsx +176 -52
- package/src/components/ui/error-boundary.module.css +36 -0
- package/src/components/ui/error-boundary.tsx +127 -0
- package/src/components/ui/field.module.css +179 -0
- package/src/components/ui/field.tsx +345 -139
- package/src/components/ui/fireworks-background.module.css +13 -0
- package/src/components/ui/fireworks-background.tsx +89 -51
- package/src/components/ui/flip-button.module.css +44 -0
- package/src/components/ui/flip-button.tsx +59 -28
- package/src/components/ui/focus-scope.module.css +3 -0
- package/src/components/ui/focus-scope.tsx +160 -0
- package/src/components/ui/form-skeleton.module.css +28 -0
- package/src/components/ui/form-skeleton.tsx +62 -0
- package/src/components/ui/form.module.css +20 -0
- package/src/components/ui/form.tsx +244 -33
- package/src/components/ui/gradient-background.module.css +6 -0
- package/src/components/ui/gradient-background.tsx +27 -5
- package/src/components/ui/gradient-text.module.css +23 -0
- package/src/components/ui/gradient-text.tsx +36 -9
- package/src/components/ui/highlight-text.module.css +14 -0
- package/src/components/ui/highlight-text.tsx +37 -15
- package/src/components/ui/hole-background.module.css +84 -0
- package/src/components/ui/hole-background.tsx +290 -162
- package/src/components/ui/hover-card.module.css +21 -0
- package/src/components/ui/hover-card.tsx +142 -21
- package/src/components/ui/input-group.module.css +148 -0
- package/src/components/ui/input-group.tsx +222 -98
- package/src/components/ui/input-otp.module.css +92 -0
- package/src/components/ui/input-otp.tsx +159 -33
- package/src/components/ui/input.module.css +37 -0
- package/src/components/ui/input.tsx +56 -14
- package/src/components/ui/item.module.css +143 -0
- package/src/components/ui/item.tsx +331 -104
- package/src/components/ui/kbd.module.css +31 -0
- package/src/components/ui/kbd.tsx +60 -17
- package/src/components/ui/label.module.css +13 -0
- package/src/components/ui/label.tsx +38 -14
- package/src/components/ui/list-skeleton.module.css +35 -0
- package/src/components/ui/list-skeleton.tsx +70 -0
- package/src/components/ui/loading-overlay.module.css +19 -0
- package/src/components/ui/loading-overlay.tsx +72 -0
- package/src/components/ui/menubar.module.css +144 -0
- package/src/components/ui/menubar.tsx +605 -192
- package/src/components/ui/meter.module.css +32 -0
- package/src/components/ui/meter.tsx +170 -0
- package/src/components/ui/navigation-menu.module.css +110 -0
- package/src/components/ui/navigation-menu.tsx +375 -101
- package/src/components/ui/number-field.module.css +126 -0
- package/src/components/ui/number-field.tsx +254 -0
- package/src/components/ui/pagination.module.css +64 -0
- package/src/components/ui/pagination.tsx +250 -72
- package/src/components/ui/popover.module.css +26 -0
- package/src/components/ui/popover.tsx +207 -25
- package/src/components/ui/progress.module.css +15 -0
- package/src/components/ui/progress.tsx +53 -16
- package/src/components/ui/radio-group.module.css +41 -0
- package/src/components/ui/radio-group.tsx +91 -34
- package/src/components/ui/resizable.module.css +67 -0
- package/src/components/ui/resizable.tsx +106 -26
- package/src/components/ui/ripple-button.module.css +35 -0
- package/src/components/ui/ripple-button.tsx +55 -21
- package/src/components/ui/scratcher.module.css +9 -0
- package/src/components/ui/scratcher.tsx +129 -99
- package/src/components/ui/scroll-area.module.css +47 -0
- package/src/components/ui/scroll-area.tsx +96 -34
- package/src/components/ui/select.module.css +131 -0
- package/src/components/ui/select.tsx +435 -124
- package/src/components/ui/separator.module.css +14 -0
- package/src/components/ui/separator.tsx +59 -18
- package/src/components/ui/sheet.module.css +138 -0
- package/src/components/ui/sheet.tsx +424 -95
- package/src/components/ui/sidebar.module.css +594 -0
- package/src/components/ui/sidebar.tsx +899 -425
- package/src/components/ui/skeleton.module.css +14 -0
- package/src/components/ui/skeleton.tsx +39 -9
- package/src/components/ui/slider.module.css +48 -0
- package/src/components/ui/slider.tsx +89 -16
- package/src/components/ui/sonner.module.css +246 -0
- package/src/components/ui/sonner.tsx +769 -25
- package/src/components/ui/spinner.module.css +25 -0
- package/src/components/ui/spinner.tsx +51 -12
- package/src/components/ui/stepper.module.css +72 -0
- package/src/components/ui/stepper.tsx +95 -0
- package/src/components/ui/switch.module.css +42 -0
- package/src/components/ui/switch.tsx +53 -20
- package/src/components/ui/table-skeleton.module.css +29 -0
- package/src/components/ui/table-skeleton.tsx +79 -0
- package/src/components/ui/table.module.css +66 -0
- package/src/components/ui/table.tsx +235 -61
- package/src/components/ui/tabs.module.css +89 -0
- package/src/components/ui/tabs.tsx +192 -45
- package/src/components/ui/textarea.module.css +30 -0
- package/src/components/ui/textarea.tsx +30 -10
- package/src/components/ui/timeline.module.css +43 -0
- package/src/components/ui/timeline.tsx +153 -0
- package/src/components/ui/toggle-group.module.css +5 -0
- package/src/components/ui/toggle-group.tsx +116 -35
- package/src/components/ui/toggle.module.css +57 -0
- package/src/components/ui/toggle.tsx +89 -33
- package/src/components/ui/toolbar.module.css +112 -0
- package/src/components/ui/toolbar.tsx +210 -0
- package/src/components/ui/tooltip.module.css +39 -0
- package/src/components/ui/tooltip.tsx +181 -24
- package/src/components/ui/typewriter.module.css +101 -0
- package/src/components/ui/typewriter.tsx +130 -128
- package/src/components/ui/visually-hidden.module.css +11 -0
- package/src/components/ui/visually-hidden.tsx +50 -0
- package/src/css-modules.d.ts +9 -0
- package/src/hooks/useAnnounce.tsx +73 -0
- package/src/hooks/useBreakpoint.tsx +41 -0
- package/src/hooks/useColorScheme.tsx +23 -0
- package/src/hooks/useFocusManager.tsx +89 -0
- package/src/hooks/useFocusVisible.tsx +88 -0
- package/src/hooks/useIsMobile.tsx +7 -28
- package/src/hooks/useMediaQuery.tsx +34 -0
- package/src/hooks/usePrefersContrast.tsx +24 -0
- package/src/hooks/useReducedMotion.tsx +20 -0
- package/src/index.css +127 -65
- package/src/index.ts +223 -16
- package/src/lib/color-conversion-utilities.ts +165 -0
- package/src/lib/utilities.ts +7 -6
- package/src/motion/Collapse.module.css +22 -0
- package/src/motion/Collapse.tsx +52 -0
- package/src/motion/Presence.tsx +44 -0
- package/src/motion/index.ts +13 -0
- package/src/motion/presets.ts +77 -0
- package/src/motion/tokens.ts +37 -0
|
@@ -1,217 +1,630 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
import
|
|
3
|
+
import {Menu as BaseMenu} from "@base-ui/react/menu";
|
|
4
|
+
import {Menubar as BaseMenubar} from "@base-ui/react/menubar";
|
|
5
|
+
import {mergeProps} from "@base-ui/react/merge-props";
|
|
6
|
+
import {useRender} from "@base-ui/react/use-render";
|
|
4
7
|
import {Check, ChevronRight, Circle} from "lucide-react";
|
|
5
8
|
import * as React from "react";
|
|
6
9
|
|
|
7
10
|
import {cn} from "@/lib/utilities";
|
|
11
|
+
import styles from "./menubar.module.css";
|
|
8
12
|
|
|
9
|
-
|
|
10
|
-
|
|
13
|
+
type MenubarProps = Omit<React.ComponentPropsWithRef<typeof BaseMenubar>, "className"> & {className?: string};
|
|
14
|
+
interface MenubarTriggerProps extends Omit<React.ComponentPropsWithRef<typeof BaseMenu.Trigger>, "className"> {
|
|
15
|
+
/**
|
|
16
|
+
* Applies additional CSS classes to the component root element.
|
|
17
|
+
* @default undefined
|
|
18
|
+
*/
|
|
19
|
+
className?: string;
|
|
11
20
|
}
|
|
21
|
+
interface MenubarSubTriggerProps extends Omit<React.ComponentPropsWithRef<typeof BaseMenu.SubmenuTrigger>, "className"> {
|
|
22
|
+
/**
|
|
23
|
+
* Applies additional CSS classes to the component root element.
|
|
24
|
+
* @default undefined
|
|
25
|
+
*/
|
|
26
|
+
className?: string;
|
|
27
|
+
/**
|
|
28
|
+
* Applies inset spacing to align nested content.
|
|
29
|
+
* @default false
|
|
30
|
+
*/
|
|
31
|
+
inset?: boolean;
|
|
32
|
+
}
|
|
33
|
+
interface MenubarContentProps extends Omit<React.ComponentPropsWithRef<typeof BaseMenu.Positioner>, "className"> {
|
|
34
|
+
/**
|
|
35
|
+
* Applies additional CSS classes to the component root element.
|
|
36
|
+
* @default undefined
|
|
37
|
+
*/
|
|
38
|
+
className?: string;
|
|
39
|
+
}
|
|
40
|
+
interface MenubarItemProps extends Omit<React.ComponentPropsWithRef<typeof BaseMenu.Item>, "className"> {
|
|
41
|
+
/**
|
|
42
|
+
* Applies additional CSS classes to the component root element.
|
|
43
|
+
* @default undefined
|
|
44
|
+
*/
|
|
45
|
+
className?: string;
|
|
46
|
+
/**
|
|
47
|
+
* Applies inset spacing to align nested content.
|
|
48
|
+
* @default false
|
|
49
|
+
*/
|
|
50
|
+
inset?: boolean;
|
|
51
|
+
}
|
|
52
|
+
interface MenubarCheckboxItemProps extends Omit<React.ComponentPropsWithRef<typeof BaseMenu.CheckboxItem>, "className"> {
|
|
53
|
+
/**
|
|
54
|
+
* Applies additional CSS classes to the component root element.
|
|
55
|
+
* @default undefined
|
|
56
|
+
*/
|
|
57
|
+
className?: string;
|
|
58
|
+
}
|
|
59
|
+
interface MenubarRadioItemProps extends Omit<React.ComponentPropsWithRef<typeof BaseMenu.RadioItem>, "className"> {
|
|
60
|
+
/**
|
|
61
|
+
* Applies additional CSS classes to the component root element.
|
|
62
|
+
* @default undefined
|
|
63
|
+
*/
|
|
64
|
+
className?: string;
|
|
65
|
+
}
|
|
66
|
+
interface MenubarLabelProps extends Omit<React.ComponentPropsWithRef<typeof BaseMenu.GroupLabel>, "className"> {
|
|
67
|
+
/**
|
|
68
|
+
* Applies additional CSS classes to the component root element.
|
|
69
|
+
* @default undefined
|
|
70
|
+
*/
|
|
71
|
+
className?: string;
|
|
72
|
+
/**
|
|
73
|
+
* Applies inset spacing to align nested content.
|
|
74
|
+
* @default false
|
|
75
|
+
*/
|
|
76
|
+
inset?: boolean;
|
|
77
|
+
}
|
|
78
|
+
interface MenubarSeparatorProps extends Omit<React.ComponentPropsWithRef<typeof BaseMenu.Separator>, "className"> {
|
|
79
|
+
/**
|
|
80
|
+
* Applies additional CSS classes to the component root element.
|
|
81
|
+
* @default undefined
|
|
82
|
+
*/
|
|
83
|
+
className?: string;
|
|
84
|
+
}
|
|
85
|
+
interface MenubarShortcutProps extends React.ComponentPropsWithRef<"span"> {
|
|
86
|
+
/**
|
|
87
|
+
* Applies additional CSS classes to the component root element.
|
|
88
|
+
* @default undefined
|
|
89
|
+
*/
|
|
90
|
+
className?: string;
|
|
91
|
+
/**
|
|
92
|
+
* Overrides the default rendered element while preserving component behavior.
|
|
93
|
+
* @default undefined
|
|
94
|
+
*/
|
|
95
|
+
render?: useRender.RenderProp<Record<string, never>>;
|
|
96
|
+
/**
|
|
97
|
+
* Enables child element composition instead of rendering the default wrapper.
|
|
98
|
+
* @default false
|
|
99
|
+
* @deprecated Prefer Base UI's `render` prop.
|
|
100
|
+
*/
|
|
101
|
+
asChild?: boolean;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* Renders the menubar menu.
|
|
106
|
+
*
|
|
107
|
+
* @remarks
|
|
108
|
+
* - Delegates structure and state to the underlying Base UI primitive
|
|
109
|
+
* - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}
|
|
110
|
+
* - Preserves the underlying primitive API for advanced composition
|
|
111
|
+
*
|
|
112
|
+
* @example
|
|
113
|
+
* ```tsx
|
|
114
|
+
* <MenubarMenu>Content</MenubarMenu>
|
|
115
|
+
* ```
|
|
116
|
+
*
|
|
117
|
+
* @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}
|
|
118
|
+
*/
|
|
119
|
+
const MenubarMenu: typeof BaseMenu.Root & {displayName?: string} = BaseMenu.Root;
|
|
120
|
+
/**
|
|
121
|
+
* Renders the menubar group.
|
|
122
|
+
*
|
|
123
|
+
* @remarks
|
|
124
|
+
* - Delegates structure and state to the underlying Base UI primitive
|
|
125
|
+
* - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}
|
|
126
|
+
* - Preserves the underlying primitive API for advanced composition
|
|
127
|
+
*
|
|
128
|
+
* @example
|
|
129
|
+
* ```tsx
|
|
130
|
+
* <MenubarGroup>Content</MenubarGroup>
|
|
131
|
+
* ```
|
|
132
|
+
*
|
|
133
|
+
* @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}
|
|
134
|
+
*/
|
|
135
|
+
const MenubarGroup = BaseMenu.Group;
|
|
136
|
+
/**
|
|
137
|
+
* Provides the menubar portal container.
|
|
138
|
+
*
|
|
139
|
+
* @remarks
|
|
140
|
+
* - Delegates structure and state to the underlying Base UI primitive
|
|
141
|
+
* - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}
|
|
142
|
+
* - Preserves the underlying primitive API for advanced composition
|
|
143
|
+
*
|
|
144
|
+
* @example
|
|
145
|
+
* ```tsx
|
|
146
|
+
* <MenubarPortal>Content</MenubarPortal>
|
|
147
|
+
* ```
|
|
148
|
+
*
|
|
149
|
+
* @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}
|
|
150
|
+
*/
|
|
151
|
+
const MenubarPortal = BaseMenu.Portal;
|
|
152
|
+
/**
|
|
153
|
+
* Coordinates the menubar radio group.
|
|
154
|
+
*
|
|
155
|
+
* @remarks
|
|
156
|
+
* - Delegates structure and state to the underlying Base UI primitive
|
|
157
|
+
* - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}
|
|
158
|
+
* - Preserves the underlying primitive API for advanced composition
|
|
159
|
+
*
|
|
160
|
+
* @example
|
|
161
|
+
* ```tsx
|
|
162
|
+
* <MenubarRadioGroup>Content</MenubarRadioGroup>
|
|
163
|
+
* ```
|
|
164
|
+
*
|
|
165
|
+
* @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}
|
|
166
|
+
*/
|
|
167
|
+
const MenubarRadioGroup = BaseMenu.RadioGroup;
|
|
168
|
+
/**
|
|
169
|
+
* Coordinates the menubar sub.
|
|
170
|
+
*
|
|
171
|
+
* @remarks
|
|
172
|
+
* - Delegates structure and state to the underlying Base UI primitive
|
|
173
|
+
* - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}
|
|
174
|
+
* - Preserves the underlying primitive API for advanced composition
|
|
175
|
+
*
|
|
176
|
+
* @example
|
|
177
|
+
* ```tsx
|
|
178
|
+
* <MenubarSub>Content</MenubarSub>
|
|
179
|
+
* ```
|
|
180
|
+
*
|
|
181
|
+
* @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}
|
|
182
|
+
*/
|
|
183
|
+
const MenubarSub: typeof BaseMenu.SubmenuRoot & {displayName?: string} = BaseMenu.SubmenuRoot;
|
|
184
|
+
|
|
185
|
+
/**
|
|
186
|
+
* Coordinates menubar state and accessibility behavior.
|
|
187
|
+
*
|
|
188
|
+
* @remarks
|
|
189
|
+
* - Renders a `<div>` element by default
|
|
190
|
+
* - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}
|
|
191
|
+
* - Supports the `render` prop for element composition
|
|
192
|
+
*
|
|
193
|
+
* @example
|
|
194
|
+
* ```tsx
|
|
195
|
+
* <Menubar>Content</Menubar>
|
|
196
|
+
* ```
|
|
197
|
+
*
|
|
198
|
+
* @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}
|
|
199
|
+
*/
|
|
200
|
+
function Menubar(props: Readonly<Menubar.Props>): React.ReactElement {
|
|
201
|
+
const {className, children, render, ...otherProps} = props;
|
|
202
|
+
|
|
203
|
+
return (
|
|
204
|
+
<BaseMenubar
|
|
205
|
+
{...otherProps}
|
|
206
|
+
render={useRender({
|
|
207
|
+
defaultTagName: "div",
|
|
208
|
+
render: render as never,
|
|
209
|
+
props: mergeProps({className: cn(styles.root, className)}, {}),
|
|
210
|
+
})}>
|
|
211
|
+
{children}
|
|
212
|
+
</BaseMenubar>
|
|
213
|
+
);
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
/**
|
|
217
|
+
* Renders the menubar trigger.
|
|
218
|
+
*
|
|
219
|
+
* @remarks
|
|
220
|
+
* - Renders a `<button>` element by default
|
|
221
|
+
* - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}
|
|
222
|
+
* - Supports the `render` prop for element composition
|
|
223
|
+
*
|
|
224
|
+
* @example
|
|
225
|
+
* ```tsx
|
|
226
|
+
* <MenubarTrigger>Content</MenubarTrigger>
|
|
227
|
+
* ```
|
|
228
|
+
*
|
|
229
|
+
* @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}
|
|
230
|
+
*/
|
|
231
|
+
const MenubarTrigger = React.forwardRef<HTMLButtonElement, MenubarTrigger.Props>(
|
|
232
|
+
(props: Readonly<MenubarTrigger.Props>, ref): React.ReactElement => {
|
|
233
|
+
const {className, children, render, ...otherProps} = props;
|
|
12
234
|
|
|
13
|
-
|
|
14
|
-
|
|
235
|
+
return (
|
|
236
|
+
<BaseMenu.Trigger
|
|
237
|
+
ref={ref}
|
|
238
|
+
{...otherProps}
|
|
239
|
+
render={useRender({
|
|
240
|
+
defaultTagName: "button",
|
|
241
|
+
render: render as never,
|
|
242
|
+
props: mergeProps({className: cn(styles.trigger, className)}, {}),
|
|
243
|
+
})}>
|
|
244
|
+
{children}
|
|
245
|
+
</BaseMenu.Trigger>
|
|
246
|
+
);
|
|
247
|
+
},
|
|
248
|
+
);
|
|
249
|
+
|
|
250
|
+
/**
|
|
251
|
+
* Renders the menubar sub trigger.
|
|
252
|
+
*
|
|
253
|
+
* @remarks
|
|
254
|
+
* - Renders a `<div>` element by default
|
|
255
|
+
* - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}
|
|
256
|
+
* - Supports the `render` prop for element composition
|
|
257
|
+
*
|
|
258
|
+
* @example
|
|
259
|
+
* ```tsx
|
|
260
|
+
* <MenubarSubTrigger>Content</MenubarSubTrigger>
|
|
261
|
+
* ```
|
|
262
|
+
*
|
|
263
|
+
* @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}
|
|
264
|
+
*/
|
|
265
|
+
function MenubarSubTrigger(props: Readonly<MenubarSubTrigger.Props>): React.ReactElement {
|
|
266
|
+
const {className, children, inset = false, render, ...otherProps} = props;
|
|
267
|
+
|
|
268
|
+
return (
|
|
269
|
+
<BaseMenu.SubmenuTrigger
|
|
270
|
+
{...otherProps}
|
|
271
|
+
render={useRender({
|
|
272
|
+
defaultTagName: "div",
|
|
273
|
+
render: render as never,
|
|
274
|
+
props: mergeProps({className: cn(styles.item, styles.subTrigger, inset && styles.inset, className)}, {}),
|
|
275
|
+
})}>
|
|
276
|
+
{children}
|
|
277
|
+
<ChevronRight className={styles.subTriggerIcon} />
|
|
278
|
+
</BaseMenu.SubmenuTrigger>
|
|
279
|
+
);
|
|
15
280
|
}
|
|
16
281
|
|
|
17
|
-
|
|
18
|
-
|
|
282
|
+
/**
|
|
283
|
+
* Renders the menubar sub content.
|
|
284
|
+
*
|
|
285
|
+
* @remarks
|
|
286
|
+
* - Renders a `<div>` element by default
|
|
287
|
+
* - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}
|
|
288
|
+
* - Supports the `render` prop for element composition
|
|
289
|
+
*
|
|
290
|
+
* @example
|
|
291
|
+
* ```tsx
|
|
292
|
+
* <MenubarSubContent>Content</MenubarSubContent>
|
|
293
|
+
* ```
|
|
294
|
+
*
|
|
295
|
+
* @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}
|
|
296
|
+
*/
|
|
297
|
+
function MenubarSubContent(props: Readonly<MenubarContent.Props>): React.ReactElement {
|
|
298
|
+
const {className, children, render, ...otherProps} = props;
|
|
299
|
+
|
|
300
|
+
return (
|
|
301
|
+
<BaseMenu.Positioner
|
|
302
|
+
{...otherProps}
|
|
303
|
+
render={useRender({
|
|
304
|
+
defaultTagName: "div",
|
|
305
|
+
props: mergeProps({className: styles.positioner}, {}),
|
|
306
|
+
})}>
|
|
307
|
+
<BaseMenu.Popup
|
|
308
|
+
render={useRender({
|
|
309
|
+
defaultTagName: "div",
|
|
310
|
+
render: render as never,
|
|
311
|
+
props: mergeProps({className: cn(styles.content, className)}, {}),
|
|
312
|
+
})}>
|
|
313
|
+
{children}
|
|
314
|
+
</BaseMenu.Popup>
|
|
315
|
+
</BaseMenu.Positioner>
|
|
316
|
+
);
|
|
19
317
|
}
|
|
20
318
|
|
|
21
|
-
|
|
22
|
-
|
|
319
|
+
/**
|
|
320
|
+
* Renders the menubar content.
|
|
321
|
+
*
|
|
322
|
+
* @remarks
|
|
323
|
+
* - Renders a `<div>` element by default
|
|
324
|
+
* - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}
|
|
325
|
+
* - Supports the `render` prop for element composition
|
|
326
|
+
*
|
|
327
|
+
* @example
|
|
328
|
+
* ```tsx
|
|
329
|
+
* <MenubarContent>Content</MenubarContent>
|
|
330
|
+
* ```
|
|
331
|
+
*
|
|
332
|
+
* @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}
|
|
333
|
+
*/
|
|
334
|
+
const MenubarContent = React.forwardRef<React.ComponentRef<typeof BaseMenu.Popup>, MenubarContent.Props>(
|
|
335
|
+
(props: Readonly<MenubarContent.Props>, ref): React.ReactElement => {
|
|
336
|
+
const {alignOffset = -4, className, children, render, sideOffset = 8, ...otherProps} = props;
|
|
337
|
+
|
|
338
|
+
return (
|
|
339
|
+
<MenubarPortal>
|
|
340
|
+
<BaseMenu.Positioner
|
|
341
|
+
alignOffset={alignOffset}
|
|
342
|
+
sideOffset={sideOffset}
|
|
343
|
+
{...otherProps}
|
|
344
|
+
render={useRender({
|
|
345
|
+
defaultTagName: "div",
|
|
346
|
+
props: mergeProps({className: styles.positioner}, {}),
|
|
347
|
+
})}>
|
|
348
|
+
<BaseMenu.Popup
|
|
349
|
+
ref={ref}
|
|
350
|
+
render={useRender({
|
|
351
|
+
defaultTagName: "div",
|
|
352
|
+
render: render as never,
|
|
353
|
+
props: mergeProps({className: cn(styles.content, className)}, {}),
|
|
354
|
+
})}>
|
|
355
|
+
{children}
|
|
356
|
+
</BaseMenu.Popup>
|
|
357
|
+
</BaseMenu.Positioner>
|
|
358
|
+
</MenubarPortal>
|
|
359
|
+
);
|
|
360
|
+
},
|
|
361
|
+
);
|
|
362
|
+
|
|
363
|
+
/**
|
|
364
|
+
* Renders the menubar item.
|
|
365
|
+
*
|
|
366
|
+
* @remarks
|
|
367
|
+
* - Renders a `<div>` element by default
|
|
368
|
+
* - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}
|
|
369
|
+
* - Supports the `render` prop for element composition
|
|
370
|
+
*
|
|
371
|
+
* @example
|
|
372
|
+
* ```tsx
|
|
373
|
+
* <MenubarItem>Content</MenubarItem>
|
|
374
|
+
* ```
|
|
375
|
+
*
|
|
376
|
+
* @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}
|
|
377
|
+
*/
|
|
378
|
+
function MenubarItem(props: Readonly<MenubarItem.Props>): React.ReactElement {
|
|
379
|
+
const {className, children, inset = false, render, ...otherProps} = props;
|
|
380
|
+
|
|
381
|
+
return (
|
|
382
|
+
<BaseMenu.Item
|
|
383
|
+
{...otherProps}
|
|
384
|
+
render={useRender({
|
|
385
|
+
defaultTagName: "div",
|
|
386
|
+
render: render as never,
|
|
387
|
+
props: mergeProps({className: cn(styles.item, inset && styles.inset, className)}, {}),
|
|
388
|
+
})}>
|
|
389
|
+
{children}
|
|
390
|
+
</BaseMenu.Item>
|
|
391
|
+
);
|
|
23
392
|
}
|
|
24
393
|
|
|
25
|
-
|
|
394
|
+
/**
|
|
395
|
+
* Renders the menubar checkbox item.
|
|
396
|
+
*
|
|
397
|
+
* @remarks
|
|
398
|
+
* - Renders a `<div>` element by default
|
|
399
|
+
* - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}
|
|
400
|
+
* - Supports the `render` prop for element composition
|
|
401
|
+
*
|
|
402
|
+
* @example
|
|
403
|
+
* ```tsx
|
|
404
|
+
* <MenubarCheckboxItem>Content</MenubarCheckboxItem>
|
|
405
|
+
* ```
|
|
406
|
+
*
|
|
407
|
+
* @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}
|
|
408
|
+
*/
|
|
409
|
+
function MenubarCheckboxItem(props: Readonly<MenubarCheckboxItem.Props>): React.ReactElement {
|
|
410
|
+
const {className, children, render, ...otherProps} = props;
|
|
411
|
+
|
|
26
412
|
return (
|
|
27
|
-
<
|
|
28
|
-
|
|
29
|
-
{
|
|
30
|
-
|
|
413
|
+
<BaseMenu.CheckboxItem
|
|
414
|
+
{...otherProps}
|
|
415
|
+
render={useRender({
|
|
416
|
+
defaultTagName: "div",
|
|
417
|
+
render: render as never,
|
|
418
|
+
props: mergeProps({className: cn(styles.item, styles.indicatorItem, className)}, {}),
|
|
419
|
+
})}>
|
|
420
|
+
<span className={styles.indicatorSlot}>
|
|
421
|
+
<BaseMenu.CheckboxItemIndicator>
|
|
422
|
+
<Check className={styles.indicatorIcon} />
|
|
423
|
+
</BaseMenu.CheckboxItemIndicator>
|
|
424
|
+
</span>
|
|
425
|
+
{children}
|
|
426
|
+
</BaseMenu.CheckboxItem>
|
|
31
427
|
);
|
|
32
428
|
}
|
|
33
429
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
<MenubarPrimitive.SubContent
|
|
89
|
-
ref={ref}
|
|
90
|
-
className={cn(
|
|
91
|
-
"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-[--radix-menubar-content-transform-origin] overflow-hidden rounded-md border border-neutral-200 bg-white p-1 text-neutral-950 shadow-lg dark:border-neutral-800 dark:bg-neutral-950 dark:text-neutral-50",
|
|
92
|
-
className,
|
|
93
|
-
)}
|
|
94
|
-
{...props}
|
|
95
|
-
/>
|
|
96
|
-
));
|
|
97
|
-
MenubarSubContent.displayName = MenubarPrimitive.SubContent.displayName;
|
|
98
|
-
|
|
99
|
-
const MenubarContent = React.forwardRef<
|
|
100
|
-
React.ComponentRef<typeof MenubarPrimitive.Content>,
|
|
101
|
-
React.ComponentPropsWithoutRef<typeof MenubarPrimitive.Content>
|
|
102
|
-
>(({className, align = "start", alignOffset = -4, sideOffset = 8, ...props}, ref) => (
|
|
103
|
-
<MenubarPrimitive.Portal>
|
|
104
|
-
<MenubarPrimitive.Content
|
|
105
|
-
ref={ref}
|
|
106
|
-
align={align}
|
|
107
|
-
alignOffset={alignOffset}
|
|
108
|
-
sideOffset={sideOffset}
|
|
109
|
-
className={cn(
|
|
110
|
-
"data-[state=open]:animate-in data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[12rem] origin-[--radix-menubar-content-transform-origin] overflow-hidden rounded-md border border-neutral-200 bg-white p-1 text-neutral-950 shadow-md dark:border-neutral-800 dark:bg-neutral-950 dark:text-neutral-50",
|
|
111
|
-
className,
|
|
112
|
-
)}
|
|
113
|
-
{...props}
|
|
114
|
-
/>
|
|
115
|
-
</MenubarPrimitive.Portal>
|
|
116
|
-
));
|
|
117
|
-
MenubarContent.displayName = MenubarPrimitive.Content.displayName;
|
|
118
|
-
|
|
119
|
-
const MenubarItem = React.forwardRef<
|
|
120
|
-
React.ComponentRef<typeof MenubarPrimitive.Item>,
|
|
121
|
-
React.ComponentPropsWithoutRef<typeof MenubarPrimitive.Item> & {
|
|
122
|
-
inset?: boolean;
|
|
123
|
-
}
|
|
124
|
-
>(({className, inset, ...props}, ref) => (
|
|
125
|
-
<MenubarPrimitive.Item
|
|
126
|
-
ref={ref}
|
|
127
|
-
className={cn(
|
|
128
|
-
"relative flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-none select-none focus:bg-neutral-100 focus:text-neutral-900 data-[disabled]:pointer-events-none data-[disabled]:opacity-50 dark:focus:bg-neutral-800 dark:focus:text-neutral-50",
|
|
129
|
-
inset && "pl-8",
|
|
130
|
-
className,
|
|
131
|
-
)}
|
|
132
|
-
{...props}
|
|
133
|
-
/>
|
|
134
|
-
));
|
|
135
|
-
MenubarItem.displayName = MenubarPrimitive.Item.displayName;
|
|
136
|
-
|
|
137
|
-
const MenubarCheckboxItem = React.forwardRef<
|
|
138
|
-
React.ComponentRef<typeof MenubarPrimitive.CheckboxItem>,
|
|
139
|
-
React.ComponentPropsWithoutRef<typeof MenubarPrimitive.CheckboxItem>
|
|
140
|
-
>(({className, children, checked, ...props}, ref) => (
|
|
141
|
-
<MenubarPrimitive.CheckboxItem
|
|
142
|
-
ref={ref}
|
|
143
|
-
className={cn(
|
|
144
|
-
"relative flex cursor-default items-center rounded-sm py-1.5 pr-2 pl-8 text-sm outline-none select-none focus:bg-neutral-100 focus:text-neutral-900 data-[disabled]:pointer-events-none data-[disabled]:opacity-50 dark:focus:bg-neutral-800 dark:focus:text-neutral-50",
|
|
145
|
-
className,
|
|
146
|
-
)}
|
|
147
|
-
checked={checked}
|
|
148
|
-
{...props}>
|
|
149
|
-
<span className='absolute left-2 flex h-3.5 w-3.5 items-center justify-center'>
|
|
150
|
-
<MenubarPrimitive.ItemIndicator>
|
|
151
|
-
<Check className='h-4 w-4' />
|
|
152
|
-
</MenubarPrimitive.ItemIndicator>
|
|
153
|
-
</span>
|
|
154
|
-
{children}
|
|
155
|
-
</MenubarPrimitive.CheckboxItem>
|
|
156
|
-
));
|
|
157
|
-
MenubarCheckboxItem.displayName = MenubarPrimitive.CheckboxItem.displayName;
|
|
158
|
-
|
|
159
|
-
const MenubarRadioItem = React.forwardRef<
|
|
160
|
-
React.ComponentRef<typeof MenubarPrimitive.RadioItem>,
|
|
161
|
-
React.ComponentPropsWithoutRef<typeof MenubarPrimitive.RadioItem>
|
|
162
|
-
>(({className, children, ...props}, ref) => (
|
|
163
|
-
<MenubarPrimitive.RadioItem
|
|
164
|
-
ref={ref}
|
|
165
|
-
className={cn(
|
|
166
|
-
"relative flex cursor-default items-center rounded-sm py-1.5 pr-2 pl-8 text-sm outline-none select-none focus:bg-neutral-100 focus:text-neutral-900 data-[disabled]:pointer-events-none data-[disabled]:opacity-50 dark:focus:bg-neutral-800 dark:focus:text-neutral-50",
|
|
167
|
-
className,
|
|
168
|
-
)}
|
|
169
|
-
{...props}>
|
|
170
|
-
<span className='absolute left-2 flex h-3.5 w-3.5 items-center justify-center'>
|
|
171
|
-
<MenubarPrimitive.ItemIndicator>
|
|
172
|
-
<Circle className='h-4 w-4 fill-current' />
|
|
173
|
-
</MenubarPrimitive.ItemIndicator>
|
|
174
|
-
</span>
|
|
175
|
-
{children}
|
|
176
|
-
</MenubarPrimitive.RadioItem>
|
|
177
|
-
));
|
|
178
|
-
MenubarRadioItem.displayName = MenubarPrimitive.RadioItem.displayName;
|
|
179
|
-
|
|
180
|
-
const MenubarLabel = React.forwardRef<
|
|
181
|
-
React.ComponentRef<typeof MenubarPrimitive.Label>,
|
|
182
|
-
React.ComponentPropsWithoutRef<typeof MenubarPrimitive.Label> & {
|
|
183
|
-
inset?: boolean;
|
|
184
|
-
}
|
|
185
|
-
>(({className, inset, ...props}, ref) => (
|
|
186
|
-
<MenubarPrimitive.Label
|
|
187
|
-
ref={ref}
|
|
188
|
-
className={cn("px-2 py-1.5 text-sm font-semibold", inset && "pl-8", className)}
|
|
189
|
-
{...props}
|
|
190
|
-
/>
|
|
191
|
-
));
|
|
192
|
-
MenubarLabel.displayName = MenubarPrimitive.Label.displayName;
|
|
193
|
-
|
|
194
|
-
const MenubarSeparator = React.forwardRef<
|
|
195
|
-
React.ComponentRef<typeof MenubarPrimitive.Separator>,
|
|
196
|
-
React.ComponentPropsWithoutRef<typeof MenubarPrimitive.Separator>
|
|
197
|
-
>(({className, ...props}, ref) => (
|
|
198
|
-
<MenubarPrimitive.Separator
|
|
199
|
-
ref={ref}
|
|
200
|
-
className={cn("-mx-1 my-1 h-px bg-neutral-100 dark:bg-neutral-800", className)}
|
|
201
|
-
{...props}
|
|
202
|
-
/>
|
|
203
|
-
));
|
|
204
|
-
MenubarSeparator.displayName = MenubarPrimitive.Separator.displayName;
|
|
205
|
-
|
|
206
|
-
const MenubarShortcut = ({className, ...props}: React.HTMLAttributes<HTMLSpanElement>) => {
|
|
430
|
+
/**
|
|
431
|
+
* Renders the menubar radio item.
|
|
432
|
+
*
|
|
433
|
+
* @remarks
|
|
434
|
+
* - Renders a `<div>` element by default
|
|
435
|
+
* - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}
|
|
436
|
+
* - Supports the `render` prop for element composition
|
|
437
|
+
*
|
|
438
|
+
* @example
|
|
439
|
+
* ```tsx
|
|
440
|
+
* <MenubarRadioItem>Content</MenubarRadioItem>
|
|
441
|
+
* ```
|
|
442
|
+
*
|
|
443
|
+
* @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}
|
|
444
|
+
*/
|
|
445
|
+
function MenubarRadioItem(props: Readonly<MenubarRadioItem.Props>): React.ReactElement {
|
|
446
|
+
const {className, children, render, ...otherProps} = props;
|
|
447
|
+
|
|
448
|
+
return (
|
|
449
|
+
<BaseMenu.RadioItem
|
|
450
|
+
{...otherProps}
|
|
451
|
+
render={useRender({
|
|
452
|
+
defaultTagName: "div",
|
|
453
|
+
render: render as never,
|
|
454
|
+
props: mergeProps({className: cn(styles.item, styles.indicatorItem, className)}, {}),
|
|
455
|
+
})}>
|
|
456
|
+
<span className={styles.indicatorSlot}>
|
|
457
|
+
<BaseMenu.RadioItemIndicator>
|
|
458
|
+
<Circle className={styles.radioIndicatorIcon} />
|
|
459
|
+
</BaseMenu.RadioItemIndicator>
|
|
460
|
+
</span>
|
|
461
|
+
{children}
|
|
462
|
+
</BaseMenu.RadioItem>
|
|
463
|
+
);
|
|
464
|
+
}
|
|
465
|
+
|
|
466
|
+
/**
|
|
467
|
+
* Renders the menubar label.
|
|
468
|
+
*
|
|
469
|
+
* @remarks
|
|
470
|
+
* - Renders a `<div>` element by default
|
|
471
|
+
* - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}
|
|
472
|
+
* - Supports the `render` prop for element composition
|
|
473
|
+
*
|
|
474
|
+
* @example
|
|
475
|
+
* ```tsx
|
|
476
|
+
* <MenubarLabel>Content</MenubarLabel>
|
|
477
|
+
* ```
|
|
478
|
+
*
|
|
479
|
+
* @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}
|
|
480
|
+
*/
|
|
481
|
+
function MenubarLabel(props: Readonly<MenubarLabel.Props>): React.ReactElement {
|
|
482
|
+
const {className, children, inset = false, render, ...otherProps} = props;
|
|
483
|
+
|
|
207
484
|
return (
|
|
208
|
-
<
|
|
209
|
-
|
|
210
|
-
{
|
|
485
|
+
<BaseMenu.GroupLabel
|
|
486
|
+
{...otherProps}
|
|
487
|
+
render={useRender({
|
|
488
|
+
defaultTagName: "div",
|
|
489
|
+
render: render as never,
|
|
490
|
+
props: mergeProps({className: cn(styles.label, inset && styles.inset, className)}, {}),
|
|
491
|
+
})}>
|
|
492
|
+
{children}
|
|
493
|
+
</BaseMenu.GroupLabel>
|
|
494
|
+
);
|
|
495
|
+
}
|
|
496
|
+
|
|
497
|
+
/**
|
|
498
|
+
* Renders the menubar separator.
|
|
499
|
+
*
|
|
500
|
+
* @remarks
|
|
501
|
+
* - Renders a `<div>` element by default
|
|
502
|
+
* - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}
|
|
503
|
+
* - Supports the `render` prop for element composition
|
|
504
|
+
*
|
|
505
|
+
* @example
|
|
506
|
+
* ```tsx
|
|
507
|
+
* <MenubarSeparator>Content</MenubarSeparator>
|
|
508
|
+
* ```
|
|
509
|
+
*
|
|
510
|
+
* @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}
|
|
511
|
+
*/
|
|
512
|
+
function MenubarSeparator(props: Readonly<MenubarSeparator.Props>): React.ReactElement {
|
|
513
|
+
const {className, render, ...otherProps} = props;
|
|
514
|
+
|
|
515
|
+
return (
|
|
516
|
+
<BaseMenu.Separator
|
|
517
|
+
{...otherProps}
|
|
518
|
+
render={useRender({
|
|
519
|
+
defaultTagName: "div",
|
|
520
|
+
render: render as never,
|
|
521
|
+
props: mergeProps({className: cn(styles.separator, className)}, {}),
|
|
522
|
+
})}
|
|
211
523
|
/>
|
|
212
524
|
);
|
|
213
|
-
}
|
|
214
|
-
|
|
525
|
+
}
|
|
526
|
+
|
|
527
|
+
/**
|
|
528
|
+
* Renders the menubar shortcut.
|
|
529
|
+
*
|
|
530
|
+
* @remarks
|
|
531
|
+
* - Renders a `<span>` element by default
|
|
532
|
+
* - Built on {@link https://base-ui.com/react/components/menubar | Base UI Menubar}
|
|
533
|
+
* - Supports the `render` prop for element composition
|
|
534
|
+
*
|
|
535
|
+
* @example
|
|
536
|
+
* ```tsx
|
|
537
|
+
* <MenubarShortcut>Content</MenubarShortcut>
|
|
538
|
+
* ```
|
|
539
|
+
*
|
|
540
|
+
* @see {@link https://base-ui.com/react/components/menubar | Base UI Documentation}
|
|
541
|
+
*/
|
|
542
|
+
function MenubarShortcut(props: Readonly<MenubarShortcut.Props>): React.ReactElement {
|
|
543
|
+
const {asChild = false, children, className, render, ...otherProps} = props;
|
|
544
|
+
const renderProp = asChild && React.isValidElement(children) ? children : render;
|
|
545
|
+
|
|
546
|
+
return useRender({
|
|
547
|
+
defaultTagName: "span",
|
|
548
|
+
render: renderProp as never,
|
|
549
|
+
props: mergeProps({className: cn(styles.shortcut, className)}, otherProps, {
|
|
550
|
+
children: renderProp ? undefined : children,
|
|
551
|
+
}),
|
|
552
|
+
});
|
|
553
|
+
}
|
|
554
|
+
|
|
555
|
+
// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API
|
|
556
|
+
namespace Menubar {
|
|
557
|
+
export type Props = MenubarProps;
|
|
558
|
+
export type State = BaseMenubar.State;
|
|
559
|
+
}
|
|
560
|
+
|
|
561
|
+
// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API
|
|
562
|
+
namespace MenubarTrigger {
|
|
563
|
+
export type Props = MenubarTriggerProps;
|
|
564
|
+
export type State = BaseMenu.Trigger.State;
|
|
565
|
+
}
|
|
566
|
+
// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API
|
|
567
|
+
namespace MenubarSubTrigger {
|
|
568
|
+
export type Props = MenubarSubTriggerProps;
|
|
569
|
+
export type State = BaseMenu.SubmenuTrigger.State;
|
|
570
|
+
}
|
|
571
|
+
// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API
|
|
572
|
+
namespace MenubarContent {
|
|
573
|
+
export type Props = MenubarContentProps;
|
|
574
|
+
export type State = BaseMenu.Popup.State;
|
|
575
|
+
}
|
|
576
|
+
// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API
|
|
577
|
+
namespace MenubarSubContent {
|
|
578
|
+
export type Props = MenubarContentProps;
|
|
579
|
+
export type State = BaseMenu.Popup.State;
|
|
580
|
+
}
|
|
581
|
+
// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API
|
|
582
|
+
namespace MenubarItem {
|
|
583
|
+
export type Props = MenubarItemProps;
|
|
584
|
+
export type State = BaseMenu.Item.State;
|
|
585
|
+
}
|
|
586
|
+
// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API
|
|
587
|
+
namespace MenubarCheckboxItem {
|
|
588
|
+
export type Props = MenubarCheckboxItemProps;
|
|
589
|
+
export type State = BaseMenu.CheckboxItem.State;
|
|
590
|
+
}
|
|
591
|
+
// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API
|
|
592
|
+
namespace MenubarRadioItem {
|
|
593
|
+
export type Props = MenubarRadioItemProps;
|
|
594
|
+
export type State = BaseMenu.RadioItem.State;
|
|
595
|
+
}
|
|
596
|
+
// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API
|
|
597
|
+
namespace MenubarLabel {
|
|
598
|
+
export type Props = MenubarLabelProps;
|
|
599
|
+
export type State = BaseMenu.GroupLabel.State;
|
|
600
|
+
}
|
|
601
|
+
// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API
|
|
602
|
+
namespace MenubarSeparator {
|
|
603
|
+
export type Props = MenubarSeparatorProps;
|
|
604
|
+
export type State = BaseMenu.Separator.State;
|
|
605
|
+
}
|
|
606
|
+
// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API
|
|
607
|
+
namespace MenubarShortcut {
|
|
608
|
+
export type Props = MenubarShortcutProps;
|
|
609
|
+
export type State = Record<string, never>;
|
|
610
|
+
}
|
|
611
|
+
|
|
612
|
+
MenubarMenu.displayName = "MenubarMenu";
|
|
613
|
+
MenubarGroup.displayName = "MenubarGroup";
|
|
614
|
+
MenubarPortal.displayName = "MenubarPortal";
|
|
615
|
+
MenubarRadioGroup.displayName = "MenubarRadioGroup";
|
|
616
|
+
MenubarSub.displayName = "MenubarSub";
|
|
617
|
+
Menubar.displayName = "Menubar";
|
|
618
|
+
MenubarTrigger.displayName = "MenubarTrigger";
|
|
619
|
+
MenubarSubTrigger.displayName = "MenubarSubTrigger";
|
|
620
|
+
MenubarSubContent.displayName = "MenubarSubContent";
|
|
621
|
+
MenubarContent.displayName = "MenubarContent";
|
|
622
|
+
MenubarItem.displayName = "MenubarItem";
|
|
623
|
+
MenubarCheckboxItem.displayName = "MenubarCheckboxItem";
|
|
624
|
+
MenubarRadioItem.displayName = "MenubarRadioItem";
|
|
625
|
+
MenubarLabel.displayName = "MenubarLabel";
|
|
626
|
+
MenubarSeparator.displayName = "MenubarSeparator";
|
|
627
|
+
MenubarShortcut.displayName = "MenubarShortcut";
|
|
215
628
|
|
|
216
629
|
export {
|
|
217
630
|
Menubar,
|