@arolariu/components 0.0.38 → 0.0.39
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 +94 -0
- package/CONTRIBUTING.md +371 -0
- package/DEBUGGING.md +401 -0
- package/EXAMPLES.md +1035 -0
- package/LICENSE +21 -21
- package/README.md +627 -0
- package/dist/cjs/components/ui/accordion.cjs +2 -2
- package/dist/cjs/components/ui/accordion.cjs.map +1 -1
- package/dist/cjs/components/ui/alert-dialog.cjs +7 -7
- package/dist/cjs/components/ui/alert-dialog.cjs.map +1 -1
- package/dist/cjs/components/ui/alert.cjs +2 -2
- package/dist/cjs/components/ui/alert.cjs.map +1 -1
- package/dist/cjs/components/ui/aspect-ratio.cjs.map +1 -1
- package/dist/cjs/components/ui/avatar.cjs +2 -2
- package/dist/cjs/components/ui/avatar.cjs.map +1 -1
- package/dist/cjs/components/ui/background-beams.cjs.map +1 -1
- package/dist/cjs/components/ui/badge.cjs +2 -2
- package/dist/cjs/components/ui/badge.cjs.map +1 -1
- package/dist/cjs/components/ui/breadcrumb.cjs +5 -5
- package/dist/cjs/components/ui/breadcrumb.cjs.map +1 -1
- package/dist/cjs/components/ui/bubble-background.cjs.map +1 -1
- package/dist/cjs/components/ui/button.cjs.map +1 -1
- package/dist/cjs/components/ui/calendar.cjs +89 -35
- package/dist/cjs/components/ui/calendar.cjs.map +1 -1
- package/dist/cjs/components/ui/card.cjs +5 -5
- package/dist/cjs/components/ui/card.cjs.map +1 -1
- package/dist/cjs/components/ui/carousel.cjs +3 -3
- package/dist/cjs/components/ui/carousel.cjs.map +1 -1
- package/dist/cjs/components/ui/chart.cjs +14 -14
- package/dist/cjs/components/ui/chart.cjs.map +1 -1
- package/dist/cjs/components/ui/checkbox.cjs.map +1 -1
- package/dist/cjs/components/ui/collapsible.cjs +2 -2
- package/dist/cjs/components/ui/collapsible.cjs.map +1 -1
- package/dist/cjs/components/ui/command.cjs +8 -7
- package/dist/cjs/components/ui/command.cjs.map +1 -1
- package/dist/cjs/components/ui/context-menu.cjs +9 -9
- package/dist/cjs/components/ui/context-menu.cjs.map +1 -1
- package/dist/cjs/components/ui/counting-number.cjs.map +1 -1
- package/dist/cjs/components/ui/dialog.cjs +8 -7
- package/dist/cjs/components/ui/dialog.cjs.map +1 -1
- package/dist/cjs/components/ui/dot-background.cjs.map +1 -1
- package/dist/cjs/components/ui/drawer.cjs +6 -6
- package/dist/cjs/components/ui/drawer.cjs.map +1 -1
- package/dist/cjs/components/ui/dropdown-menu.cjs +10 -10
- package/dist/cjs/components/ui/dropdown-menu.cjs.map +1 -1
- package/dist/cjs/components/ui/dropdrawer.cjs +8 -8
- package/dist/cjs/components/ui/dropdrawer.cjs.map +1 -1
- package/dist/cjs/components/ui/fireworks-background.cjs.map +1 -1
- package/dist/cjs/components/ui/flip-button.cjs.map +1 -1
- package/dist/cjs/components/ui/form.cjs +5 -5
- package/dist/cjs/components/ui/form.cjs.map +1 -1
- package/dist/cjs/components/ui/gradient-background.cjs.map +1 -1
- package/dist/cjs/components/ui/gradient-text.cjs.map +1 -1
- package/dist/cjs/components/ui/highlight-text.cjs.map +1 -1
- package/dist/cjs/components/ui/hole-background.cjs.map +1 -1
- package/dist/cjs/components/ui/hover-card.cjs +2 -2
- package/dist/cjs/components/ui/hover-card.cjs.map +1 -1
- package/dist/cjs/components/ui/input-otp.cjs +3 -3
- package/dist/cjs/components/ui/input-otp.cjs.map +1 -1
- package/dist/cjs/components/ui/input.cjs.map +1 -1
- package/dist/cjs/components/ui/label.cjs.map +1 -1
- package/dist/cjs/components/ui/menubar.cjs +9 -9
- package/dist/cjs/components/ui/menubar.cjs.map +1 -1
- package/dist/cjs/components/ui/navigation-menu.cjs +4 -4
- package/dist/cjs/components/ui/navigation-menu.cjs.map +1 -1
- package/dist/cjs/components/ui/pagination.cjs +3 -3
- package/dist/cjs/components/ui/pagination.cjs.map +1 -1
- package/dist/cjs/components/ui/popover.cjs.map +1 -1
- package/dist/cjs/components/ui/progress.cjs.map +1 -1
- package/dist/cjs/components/ui/radio-group.cjs.map +1 -1
- package/dist/cjs/components/ui/resizable.cjs +1 -1
- package/dist/cjs/components/ui/resizable.cjs.map +1 -1
- package/dist/cjs/components/ui/ripple-button.cjs.map +1 -1
- package/dist/cjs/components/ui/scratcher.cjs.map +1 -1
- package/dist/cjs/components/ui/scroll-area.cjs.map +1 -1
- package/dist/cjs/components/ui/select.cjs +5 -5
- package/dist/cjs/components/ui/select.cjs.map +1 -1
- package/dist/cjs/components/ui/separator.cjs +1 -1
- package/dist/cjs/components/ui/separator.cjs.map +1 -1
- package/dist/cjs/components/ui/sheet.cjs +5 -5
- package/dist/cjs/components/ui/sheet.cjs.map +1 -1
- package/dist/cjs/components/ui/sidebar.cjs +19 -19
- package/dist/cjs/components/ui/sidebar.cjs.map +1 -1
- package/dist/cjs/components/ui/skeleton.cjs.map +1 -1
- package/dist/cjs/components/ui/slider.cjs.map +1 -1
- package/dist/cjs/components/ui/sonner.cjs.map +1 -1
- package/dist/cjs/components/ui/switch.cjs.map +1 -1
- package/dist/cjs/components/ui/table.cjs +6 -6
- package/dist/cjs/components/ui/table.cjs.map +1 -1
- package/dist/cjs/components/ui/tabs.cjs +2 -2
- package/dist/cjs/components/ui/tabs.cjs.map +1 -1
- package/dist/cjs/components/ui/textarea.cjs.map +1 -1
- package/dist/cjs/components/ui/toggle-group.cjs +2 -2
- package/dist/cjs/components/ui/toggle-group.cjs.map +1 -1
- package/dist/cjs/components/ui/toggle.cjs +2 -2
- package/dist/cjs/components/ui/toggle.cjs.map +1 -1
- package/dist/cjs/components/ui/tooltip.cjs +2 -2
- package/dist/cjs/components/ui/tooltip.cjs.map +1 -1
- package/dist/cjs/hooks/use-mobile.cjs.map +1 -1
- package/dist/cjs/index.cjs +244 -242
- package/dist/cjs/index.cjs.map +1 -0
- package/dist/cjs/index.css +399 -149
- package/dist/cjs/index.css.map +1 -0
- package/dist/cjs/lib/utils.cjs.map +1 -1
- package/dist/esm/components/ui/accordion.js +14 -14
- package/dist/esm/components/ui/accordion.js.map +1 -1
- package/dist/esm/components/ui/alert-dialog.js +25 -25
- package/dist/esm/components/ui/alert-dialog.js.map +1 -1
- package/dist/esm/components/ui/alert.js +10 -10
- package/dist/esm/components/ui/alert.js.map +1 -1
- package/dist/esm/components/ui/aspect-ratio.js +3 -3
- package/dist/esm/components/ui/aspect-ratio.js.map +1 -1
- package/dist/esm/components/ui/avatar.js +9 -9
- package/dist/esm/components/ui/avatar.js.map +1 -1
- package/dist/esm/components/ui/background-beams.js +20 -20
- package/dist/esm/components/ui/background-beams.js.map +1 -1
- package/dist/esm/components/ui/badge.js +8 -8
- package/dist/esm/components/ui/badge.js.map +1 -1
- package/dist/esm/components/ui/breadcrumb.js +21 -21
- package/dist/esm/components/ui/breadcrumb.js.map +1 -1
- package/dist/esm/components/ui/bubble-background.js +31 -31
- package/dist/esm/components/ui/bubble-background.js.map +1 -1
- package/dist/esm/components/ui/button.js +8 -8
- package/dist/esm/components/ui/button.js.map +1 -1
- package/dist/esm/components/ui/calendar.js +93 -42
- package/dist/esm/components/ui/calendar.js.map +1 -1
- package/dist/esm/components/ui/card.js +16 -16
- package/dist/esm/components/ui/card.js.map +1 -1
- package/dist/esm/components/ui/carousel.js +33 -33
- package/dist/esm/components/ui/carousel.js.map +1 -1
- package/dist/esm/components/ui/chart.js +45 -45
- package/dist/esm/components/ui/chart.js.map +1 -1
- package/dist/esm/components/ui/checkbox.js +8 -8
- package/dist/esm/components/ui/checkbox.js.map +1 -1
- package/dist/esm/components/ui/collapsible.js +8 -8
- package/dist/esm/components/ui/collapsible.js.map +1 -1
- package/dist/esm/components/ui/command.js +33 -32
- package/dist/esm/components/ui/command.js.map +1 -1
- package/dist/esm/components/ui/context-menu.js +36 -36
- package/dist/esm/components/ui/context-menu.js.map +1 -1
- package/dist/esm/components/ui/counting-number.js +12 -12
- package/dist/esm/components/ui/counting-number.js.map +1 -1
- package/dist/esm/components/ui/dialog.js +27 -26
- package/dist/esm/components/ui/dialog.js.map +1 -1
- package/dist/esm/components/ui/dot-background.js +15 -15
- package/dist/esm/components/ui/dot-background.js.map +1 -1
- package/dist/esm/components/ui/drawer.js +24 -24
- package/dist/esm/components/ui/drawer.js.map +1 -1
- package/dist/esm/components/ui/dropdown-menu.js +36 -36
- package/dist/esm/components/ui/dropdown-menu.js.map +1 -1
- package/dist/esm/components/ui/dropdrawer.js +104 -104
- package/dist/esm/components/ui/dropdrawer.js.map +1 -1
- package/dist/esm/components/ui/fireworks-background.js +12 -12
- package/dist/esm/components/ui/fireworks-background.js.map +1 -1
- package/dist/esm/components/ui/flip-button.js +12 -12
- package/dist/esm/components/ui/flip-button.js.map +1 -1
- package/dist/esm/components/ui/form.js +26 -26
- package/dist/esm/components/ui/form.js.map +1 -1
- package/dist/esm/components/ui/gradient-background.js +7 -7
- package/dist/esm/components/ui/gradient-background.js.map +1 -1
- package/dist/esm/components/ui/gradient-text.js +9 -9
- package/dist/esm/components/ui/gradient-text.js.map +1 -1
- package/dist/esm/components/ui/highlight-text.js +10 -10
- package/dist/esm/components/ui/highlight-text.js.map +1 -1
- package/dist/esm/components/ui/hole-background.js +30 -30
- package/dist/esm/components/ui/hole-background.js.map +1 -1
- package/dist/esm/components/ui/hover-card.js +8 -8
- package/dist/esm/components/ui/hover-card.js.map +1 -1
- package/dist/esm/components/ui/input-otp.js +17 -17
- package/dist/esm/components/ui/input-otp.js.map +1 -1
- package/dist/esm/components/ui/input.js +4 -4
- package/dist/esm/components/ui/input.js.map +1 -1
- package/dist/esm/components/ui/label.js +5 -5
- package/dist/esm/components/ui/label.js.map +1 -1
- package/dist/esm/components/ui/menubar.js +39 -39
- package/dist/esm/components/ui/menubar.js.map +1 -1
- package/dist/esm/components/ui/navigation-menu.js +27 -27
- package/dist/esm/components/ui/navigation-menu.js.map +1 -1
- package/dist/esm/components/ui/pagination.js +23 -23
- package/dist/esm/components/ui/pagination.js.map +1 -1
- package/dist/esm/components/ui/popover.js +9 -9
- package/dist/esm/components/ui/popover.js.map +1 -1
- package/dist/esm/components/ui/progress.js +6 -6
- package/dist/esm/components/ui/progress.js.map +1 -1
- package/dist/esm/components/ui/radio-group.js +10 -10
- package/dist/esm/components/ui/radio-group.js.map +1 -1
- package/dist/esm/components/ui/resizable.js +11 -11
- package/dist/esm/components/ui/resizable.js.map +1 -1
- package/dist/esm/components/ui/ripple-button.js +14 -14
- package/dist/esm/components/ui/ripple-button.js.map +1 -1
- package/dist/esm/components/ui/scratcher.js +13 -13
- package/dist/esm/components/ui/scratcher.js.map +1 -1
- package/dist/esm/components/ui/scroll-area.js +11 -11
- package/dist/esm/components/ui/scroll-area.js.map +1 -1
- package/dist/esm/components/ui/select.js +34 -34
- package/dist/esm/components/ui/select.js.map +1 -1
- package/dist/esm/components/ui/separator.js +6 -6
- package/dist/esm/components/ui/separator.js.map +1 -1
- package/dist/esm/components/ui/sheet.js +25 -25
- package/dist/esm/components/ui/sheet.js.map +1 -1
- package/dist/esm/components/ui/sidebar.js +96 -96
- package/dist/esm/components/ui/sidebar.js.map +1 -1
- package/dist/esm/components/ui/skeleton.js +4 -4
- package/dist/esm/components/ui/skeleton.js.map +1 -1
- package/dist/esm/components/ui/slider.js +12 -12
- package/dist/esm/components/ui/slider.js.map +1 -1
- package/dist/esm/components/ui/sonner.js +7 -8
- package/dist/esm/components/ui/sonner.js.map +1 -1
- package/dist/esm/components/ui/switch.js +7 -7
- package/dist/esm/components/ui/switch.js.map +1 -1
- package/dist/esm/components/ui/table.js +19 -19
- package/dist/esm/components/ui/table.js.map +1 -1
- package/dist/esm/components/ui/tabs.js +11 -11
- package/dist/esm/components/ui/tabs.js.map +1 -1
- package/dist/esm/components/ui/textarea.js +4 -4
- package/dist/esm/components/ui/textarea.js.map +1 -1
- package/dist/esm/components/ui/toggle-group.js +12 -12
- package/dist/esm/components/ui/toggle-group.js.map +1 -1
- package/dist/esm/components/ui/toggle.js +7 -7
- package/dist/esm/components/ui/toggle.js.map +1 -1
- package/dist/esm/components/ui/tooltip.js +11 -11
- package/dist/esm/components/ui/tooltip.js.map +1 -1
- package/dist/esm/hooks/use-mobile.js +3 -3
- package/dist/esm/hooks/use-mobile.js.map +1 -1
- package/dist/esm/index.css +399 -149
- package/dist/esm/index.css.map +1 -0
- package/dist/esm/index.js +62 -332
- package/dist/esm/lib/utils.js +3 -3
- package/dist/esm/lib/utils.js.map +1 -1
- package/dist/index.css +399 -149
- package/dist/index.js +62 -332
- package/dist/types/components/ui/accordion.d.ts +1 -0
- package/dist/types/components/ui/accordion.d.ts.map +1 -0
- package/dist/types/components/ui/alert-dialog.d.ts +1 -0
- package/dist/types/components/ui/alert-dialog.d.ts.map +1 -0
- package/dist/types/components/ui/alert.d.ts +1 -0
- package/dist/types/components/ui/alert.d.ts.map +1 -0
- package/dist/types/components/ui/aspect-ratio.d.ts +1 -0
- package/dist/types/components/ui/aspect-ratio.d.ts.map +1 -0
- package/dist/types/components/ui/avatar.d.ts +1 -0
- package/dist/types/components/ui/avatar.d.ts.map +1 -0
- package/dist/types/components/ui/background-beams.d.ts +1 -0
- package/dist/types/components/ui/background-beams.d.ts.map +1 -0
- package/dist/types/components/ui/badge.d.ts +1 -0
- package/dist/types/components/ui/badge.d.ts.map +1 -0
- package/dist/types/components/ui/breadcrumb.d.ts +1 -0
- package/dist/types/components/ui/breadcrumb.d.ts.map +1 -0
- package/dist/types/components/ui/bubble-background.d.ts +1 -0
- package/dist/types/components/ui/bubble-background.d.ts.map +1 -0
- package/dist/types/components/ui/button.d.ts +1 -0
- package/dist/types/components/ui/button.d.ts.map +1 -0
- package/dist/types/components/ui/calendar.d.ts +8 -3
- package/dist/types/components/ui/calendar.d.ts.map +1 -0
- package/dist/types/components/ui/card.d.ts +1 -0
- package/dist/types/components/ui/card.d.ts.map +1 -0
- package/dist/types/components/ui/carousel.d.ts +1 -0
- package/dist/types/components/ui/carousel.d.ts.map +1 -0
- package/dist/types/components/ui/chart.d.ts +19 -4
- package/dist/types/components/ui/chart.d.ts.map +1 -0
- package/dist/types/components/ui/checkbox.d.ts +1 -0
- package/dist/types/components/ui/checkbox.d.ts.map +1 -0
- package/dist/types/components/ui/collapsible.d.ts +1 -0
- package/dist/types/components/ui/collapsible.d.ts.map +1 -0
- package/dist/types/components/ui/command.d.ts +4 -1
- package/dist/types/components/ui/command.d.ts.map +1 -0
- package/dist/types/components/ui/context-menu.d.ts +1 -0
- package/dist/types/components/ui/context-menu.d.ts.map +1 -0
- package/dist/types/components/ui/counting-number.d.ts +1 -0
- package/dist/types/components/ui/counting-number.d.ts.map +1 -0
- package/dist/types/components/ui/dialog.d.ts +4 -1
- package/dist/types/components/ui/dialog.d.ts.map +1 -0
- package/dist/types/components/ui/dot-background.d.ts +1 -0
- package/dist/types/components/ui/dot-background.d.ts.map +1 -0
- package/dist/types/components/ui/drawer.d.ts +1 -0
- package/dist/types/components/ui/drawer.d.ts.map +1 -0
- package/dist/types/components/ui/dropdown-menu.d.ts +1 -0
- package/dist/types/components/ui/dropdown-menu.d.ts.map +1 -0
- package/dist/types/components/ui/dropdrawer.d.ts +1 -0
- package/dist/types/components/ui/dropdrawer.d.ts.map +1 -0
- package/dist/types/components/ui/fireworks-background.d.ts +1 -0
- package/dist/types/components/ui/fireworks-background.d.ts.map +1 -0
- package/dist/types/components/ui/flip-button.d.ts +1 -0
- package/dist/types/components/ui/flip-button.d.ts.map +1 -0
- package/dist/types/components/ui/form.d.ts +1 -0
- package/dist/types/components/ui/form.d.ts.map +1 -0
- package/dist/types/components/ui/gradient-background.d.ts +1 -0
- package/dist/types/components/ui/gradient-background.d.ts.map +1 -0
- package/dist/types/components/ui/gradient-text.d.ts +1 -0
- package/dist/types/components/ui/gradient-text.d.ts.map +1 -0
- package/dist/types/components/ui/highlight-text.d.ts +1 -0
- package/dist/types/components/ui/highlight-text.d.ts.map +1 -0
- package/dist/types/components/ui/hole-background.d.ts +1 -0
- package/dist/types/components/ui/hole-background.d.ts.map +1 -0
- package/dist/types/components/ui/hover-card.d.ts +1 -0
- package/dist/types/components/ui/hover-card.d.ts.map +1 -0
- package/dist/types/components/ui/input-otp.d.ts +1 -0
- package/dist/types/components/ui/input-otp.d.ts.map +1 -0
- package/dist/types/components/ui/input.d.ts +1 -0
- package/dist/types/components/ui/input.d.ts.map +1 -0
- package/dist/types/components/ui/label.d.ts +1 -0
- package/dist/types/components/ui/label.d.ts.map +1 -0
- package/dist/types/components/ui/menubar.d.ts +1 -0
- package/dist/types/components/ui/menubar.d.ts.map +1 -0
- package/dist/types/components/ui/navigation-menu.d.ts +1 -0
- package/dist/types/components/ui/navigation-menu.d.ts.map +1 -0
- package/dist/types/components/ui/pagination.d.ts +1 -0
- package/dist/types/components/ui/pagination.d.ts.map +1 -0
- package/dist/types/components/ui/popover.d.ts +1 -0
- package/dist/types/components/ui/popover.d.ts.map +1 -0
- package/dist/types/components/ui/progress.d.ts +1 -0
- package/dist/types/components/ui/progress.d.ts.map +1 -0
- package/dist/types/components/ui/radio-group.d.ts +1 -0
- package/dist/types/components/ui/radio-group.d.ts.map +1 -0
- package/dist/types/components/ui/resizable.d.ts +1 -0
- package/dist/types/components/ui/resizable.d.ts.map +1 -0
- package/dist/types/components/ui/ripple-button.d.ts +1 -0
- package/dist/types/components/ui/ripple-button.d.ts.map +1 -0
- package/dist/types/components/ui/scratcher.d.ts +1 -0
- package/dist/types/components/ui/scratcher.d.ts.map +1 -0
- package/dist/types/components/ui/scroll-area.d.ts +1 -0
- package/dist/types/components/ui/scroll-area.d.ts.map +1 -0
- package/dist/types/components/ui/select.d.ts +1 -0
- package/dist/types/components/ui/select.d.ts.map +1 -0
- package/dist/types/components/ui/separator.d.ts +1 -0
- package/dist/types/components/ui/separator.d.ts.map +1 -0
- package/dist/types/components/ui/sheet.d.ts +1 -0
- package/dist/types/components/ui/sheet.d.ts.map +1 -0
- package/dist/types/components/ui/sidebar.d.ts +1 -0
- package/dist/types/components/ui/sidebar.d.ts.map +1 -0
- package/dist/types/components/ui/skeleton.d.ts +1 -0
- package/dist/types/components/ui/skeleton.d.ts.map +1 -0
- package/dist/types/components/ui/slider.d.ts +1 -0
- package/dist/types/components/ui/slider.d.ts.map +1 -0
- package/dist/types/components/ui/sonner.d.ts +1 -0
- package/dist/types/components/ui/sonner.d.ts.map +1 -0
- package/dist/types/components/ui/switch.d.ts +1 -0
- package/dist/types/components/ui/switch.d.ts.map +1 -0
- package/dist/types/components/ui/table.d.ts +1 -0
- package/dist/types/components/ui/table.d.ts.map +1 -0
- package/dist/types/components/ui/tabs.d.ts +1 -0
- package/dist/types/components/ui/tabs.d.ts.map +1 -0
- package/dist/types/components/ui/textarea.d.ts +1 -0
- package/dist/types/components/ui/textarea.d.ts.map +1 -0
- package/dist/types/components/ui/toggle-group.d.ts +1 -0
- package/dist/types/components/ui/toggle-group.d.ts.map +1 -0
- package/dist/types/components/ui/toggle.d.ts +1 -0
- package/dist/types/components/ui/toggle.d.ts.map +1 -0
- package/dist/types/components/ui/tooltip.d.ts +1 -0
- package/dist/types/components/ui/tooltip.d.ts.map +1 -0
- package/dist/types/hooks/use-mobile.d.ts +1 -0
- package/dist/types/hooks/use-mobile.d.ts.map +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/lib/utils.d.ts +1 -0
- package/dist/types/lib/utils.d.ts.map +1 -0
- package/package.json +95 -76
- package/src/components/ui/accordion.tsx +1 -1
- package/src/components/ui/alert-dialog.tsx +4 -4
- package/src/components/ui/alert.tsx +3 -3
- package/src/components/ui/avatar.tsx +2 -2
- package/src/components/ui/badge.tsx +1 -1
- package/src/components/ui/breadcrumb.tsx +3 -3
- package/src/components/ui/bubble-background.tsx +4 -4
- package/src/components/ui/button.tsx +1 -1
- package/src/components/ui/calendar.tsx +213 -75
- package/src/components/ui/card.tsx +4 -4
- package/src/components/ui/carousel.tsx +6 -6
- package/src/components/ui/chart.tsx +66 -39
- package/src/components/ui/checkbox.tsx +1 -1
- package/src/components/ui/command.tsx +14 -7
- package/src/components/ui/context-menu.tsx +9 -9
- package/src/components/ui/counting-number.tsx +4 -4
- package/src/components/ui/dialog.tsx +17 -9
- package/src/components/ui/dot-background.tsx +2 -2
- package/src/components/ui/drawer.tsx +4 -1
- package/src/components/ui/dropdrawer.tsx +973 -973
- package/src/components/ui/fireworks-background.tsx +12 -12
- package/src/components/ui/flip-button.tsx +6 -6
- package/src/components/ui/form.tsx +6 -6
- package/src/components/ui/gradient-background.tsx +3 -3
- package/src/components/ui/gradient-text.tsx +2 -2
- package/src/components/ui/highlight-text.tsx +3 -3
- package/src/components/ui/hole-background.tsx +9 -9
- package/src/components/ui/hover-card.tsx +1 -1
- package/src/components/ui/input-otp.tsx +2 -2
- package/src/components/ui/input.tsx +5 -6
- package/src/components/ui/label.tsx +1 -1
- package/src/components/ui/menubar.tsx +11 -11
- package/src/components/ui/navigation-menu.tsx +8 -8
- package/src/components/ui/pagination.tsx +1 -1
- package/src/components/ui/popover.tsx +1 -1
- package/src/components/ui/progress.tsx +1 -1
- package/src/components/ui/radio-group.tsx +1 -1
- package/src/components/ui/resizable.tsx +3 -3
- package/src/components/ui/ripple-button.tsx +7 -7
- package/src/components/ui/scratcher.tsx +1 -1
- package/src/components/ui/scroll-area.tsx +1 -1
- package/src/components/ui/select.tsx +8 -8
- package/src/components/ui/separator.tsx +2 -2
- package/src/components/ui/sheet.tsx +4 -4
- package/src/components/ui/sidebar.tsx +18 -18
- package/src/components/ui/skeleton.tsx +1 -1
- package/src/components/ui/slider.tsx +6 -6
- package/src/components/ui/switch.tsx +2 -2
- package/src/components/ui/table.tsx +5 -5
- package/src/components/ui/tabs.tsx +2 -2
- package/src/components/ui/textarea.tsx +1 -1
- package/src/components/ui/toggle-group.tsx +2 -2
- package/src/components/ui/toggle.tsx +1 -1
- package/src/components/ui/tooltip.tsx +1 -1
- package/src/hooks/use-mobile.tsx +44 -44
- package/src/index.css +68 -68
- package/src/index.ts +400 -400
- package/src/lib/utils.ts +10 -10
- package/tailwind.config.mjs +65 -65
- package/tsconfig.json +8 -0
- package/changelog.md +0 -45
- package/readme.md +0 -215
|
@@ -36,7 +36,7 @@ const createParticle = (
|
|
|
36
36
|
direction: number,
|
|
37
37
|
gravity: number,
|
|
38
38
|
friction: number,
|
|
39
|
-
size: number
|
|
39
|
+
size: number,
|
|
40
40
|
): ParticleType => {
|
|
41
41
|
const vx = Math.cos(direction) * speed;
|
|
42
42
|
const vy = Math.sin(direction) * speed;
|
|
@@ -106,7 +106,7 @@ const createFirework = (
|
|
|
106
106
|
size: number,
|
|
107
107
|
particleSpeed: { min: number; max: number } | number,
|
|
108
108
|
particleSize: { min: number; max: number } | number,
|
|
109
|
-
onExplode: (particles: ParticleType[]) => void
|
|
109
|
+
onExplode: (particles: ParticleType[]) => void,
|
|
110
110
|
): FireworkType => {
|
|
111
111
|
const angle = -Math.PI / 2 + rand(-0.3, 0.3);
|
|
112
112
|
const vx = Math.cos(angle) * speed;
|
|
@@ -157,8 +157,8 @@ const createFirework = (
|
|
|
157
157
|
particleAngle,
|
|
158
158
|
0.05,
|
|
159
159
|
0.98,
|
|
160
|
-
localParticleSize
|
|
161
|
-
)
|
|
160
|
+
localParticleSize,
|
|
161
|
+
),
|
|
162
162
|
);
|
|
163
163
|
}
|
|
164
164
|
onExplode(particles);
|
|
@@ -185,7 +185,7 @@ const createFirework = (
|
|
|
185
185
|
};
|
|
186
186
|
|
|
187
187
|
const getValueByRange = (
|
|
188
|
-
range: { min: number; max: number } | number
|
|
188
|
+
range: { min: number; max: number } | number,
|
|
189
189
|
): number => {
|
|
190
190
|
if (typeof range === "number") {
|
|
191
191
|
return range;
|
|
@@ -227,13 +227,13 @@ const FireworksBackground = React.forwardRef<
|
|
|
227
227
|
particleSize = { min: 1, max: 5 },
|
|
228
228
|
...props
|
|
229
229
|
},
|
|
230
|
-
ref
|
|
230
|
+
ref,
|
|
231
231
|
) => {
|
|
232
232
|
const canvasRef = React.useRef<HTMLCanvasElement>(null);
|
|
233
233
|
const containerRef = React.useRef<HTMLDivElement>(null);
|
|
234
234
|
React.useImperativeHandle(
|
|
235
235
|
ref,
|
|
236
|
-
() => containerRef.current as HTMLDivElement
|
|
236
|
+
() => containerRef.current as HTMLDivElement,
|
|
237
237
|
);
|
|
238
238
|
|
|
239
239
|
React.useEffect(() => {
|
|
@@ -282,8 +282,8 @@ const FireworksBackground = React.forwardRef<
|
|
|
282
282
|
size,
|
|
283
283
|
particleSpeed,
|
|
284
284
|
particleSize,
|
|
285
|
-
handleExplosion
|
|
286
|
-
)
|
|
285
|
+
handleExplosion,
|
|
286
|
+
),
|
|
287
287
|
);
|
|
288
288
|
const timeout = rand(300, 800) / population;
|
|
289
289
|
setTimeout(launchFirework, timeout);
|
|
@@ -336,8 +336,8 @@ const FireworksBackground = React.forwardRef<
|
|
|
336
336
|
size,
|
|
337
337
|
particleSpeed,
|
|
338
338
|
particleSize,
|
|
339
|
-
handleExplosion
|
|
340
|
-
)
|
|
339
|
+
handleExplosion,
|
|
340
|
+
),
|
|
341
341
|
);
|
|
342
342
|
};
|
|
343
343
|
|
|
@@ -370,7 +370,7 @@ const FireworksBackground = React.forwardRef<
|
|
|
370
370
|
/>
|
|
371
371
|
</div>
|
|
372
372
|
);
|
|
373
|
-
}
|
|
373
|
+
},
|
|
374
374
|
);
|
|
375
375
|
|
|
376
376
|
FireworksBackground.displayName = "FireworksBackground";
|
|
@@ -36,7 +36,7 @@ const FlipButton = React.forwardRef<HTMLButtonElement, FlipButtonProps>(
|
|
|
36
36
|
from = "top",
|
|
37
37
|
...props
|
|
38
38
|
},
|
|
39
|
-
ref
|
|
39
|
+
ref,
|
|
40
40
|
) => {
|
|
41
41
|
const isVertical = from === "top" || from === "bottom";
|
|
42
42
|
const rotateAxis = isVertical ? "rotateX" : "rotateY";
|
|
@@ -47,7 +47,7 @@ const FlipButton = React.forwardRef<HTMLButtonElement, FlipButtonProps>(
|
|
|
47
47
|
const buildVariant = (
|
|
48
48
|
opacity: number,
|
|
49
49
|
rotation: number,
|
|
50
|
-
offset: string | null = null
|
|
50
|
+
offset: string | null = null,
|
|
51
51
|
): Variant => ({
|
|
52
52
|
opacity,
|
|
53
53
|
[rotateAxis]: rotation,
|
|
@@ -73,7 +73,7 @@ const FlipButton = React.forwardRef<HTMLButtonElement, FlipButtonProps>(
|
|
|
73
73
|
whileTap={{ scale: 0.95 }}
|
|
74
74
|
className={cn(
|
|
75
75
|
"relative inline-block h-10 px-4 py-2 text-sm font-medium cursor-pointer perspective-[1000px] focus:outline-none",
|
|
76
|
-
className
|
|
76
|
+
className,
|
|
77
77
|
)}
|
|
78
78
|
{...props}
|
|
79
79
|
>
|
|
@@ -83,7 +83,7 @@ const FlipButton = React.forwardRef<HTMLButtonElement, FlipButtonProps>(
|
|
|
83
83
|
className={cn(
|
|
84
84
|
defaultSpanClassName,
|
|
85
85
|
"bg-muted text-black dark:text-white",
|
|
86
|
-
frontClassName
|
|
86
|
+
frontClassName,
|
|
87
87
|
)}
|
|
88
88
|
>
|
|
89
89
|
{frontText}
|
|
@@ -94,7 +94,7 @@ const FlipButton = React.forwardRef<HTMLButtonElement, FlipButtonProps>(
|
|
|
94
94
|
className={cn(
|
|
95
95
|
defaultSpanClassName,
|
|
96
96
|
"bg-primary text-primary-foreground",
|
|
97
|
-
backClassName
|
|
97
|
+
backClassName,
|
|
98
98
|
)}
|
|
99
99
|
>
|
|
100
100
|
{backText}
|
|
@@ -102,7 +102,7 @@ const FlipButton = React.forwardRef<HTMLButtonElement, FlipButtonProps>(
|
|
|
102
102
|
<span className="invisible">{frontText}</span>
|
|
103
103
|
</motion.button>
|
|
104
104
|
);
|
|
105
|
-
}
|
|
105
|
+
},
|
|
106
106
|
);
|
|
107
107
|
|
|
108
108
|
FlipButton.displayName = "FlipButton";
|
|
@@ -20,18 +20,18 @@ const Form = FormProvider;
|
|
|
20
20
|
|
|
21
21
|
type FormFieldContextValue<
|
|
22
22
|
TFieldValues extends FieldValues = FieldValues,
|
|
23
|
-
TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues
|
|
23
|
+
TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,
|
|
24
24
|
> = {
|
|
25
25
|
name: TName;
|
|
26
26
|
};
|
|
27
27
|
|
|
28
28
|
const FormFieldContext = React.createContext<FormFieldContextValue>(
|
|
29
|
-
{} as FormFieldContextValue
|
|
29
|
+
{} as FormFieldContextValue,
|
|
30
30
|
);
|
|
31
31
|
|
|
32
32
|
const FormField = <
|
|
33
33
|
TFieldValues extends FieldValues = FieldValues,
|
|
34
|
-
TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues
|
|
34
|
+
TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,
|
|
35
35
|
>({
|
|
36
36
|
...props
|
|
37
37
|
}: ControllerProps<TFieldValues, TName>) => {
|
|
@@ -70,7 +70,7 @@ type FormItemContextValue = {
|
|
|
70
70
|
};
|
|
71
71
|
|
|
72
72
|
const FormItemContext = React.createContext<FormItemContextValue>(
|
|
73
|
-
{} as FormItemContextValue
|
|
73
|
+
{} as FormItemContextValue,
|
|
74
74
|
);
|
|
75
75
|
|
|
76
76
|
function FormItem({ className, ...props }: React.ComponentProps<"div">) {
|
|
@@ -99,7 +99,7 @@ function FormLabel({
|
|
|
99
99
|
data-error={!!error}
|
|
100
100
|
className={cn(
|
|
101
101
|
"data-[error=true]:text-red-500 dark:data-[error=true]:text-red-900",
|
|
102
|
-
className
|
|
102
|
+
className,
|
|
103
103
|
)}
|
|
104
104
|
htmlFor={formItemId}
|
|
105
105
|
{...props}
|
|
@@ -135,7 +135,7 @@ function FormDescription({ className, ...props }: React.ComponentProps<"p">) {
|
|
|
135
135
|
id={formDescriptionId}
|
|
136
136
|
className={cn(
|
|
137
137
|
"text-neutral-500 text-sm dark:text-neutral-400",
|
|
138
|
-
className
|
|
138
|
+
className,
|
|
139
139
|
)}
|
|
140
140
|
{...props}
|
|
141
141
|
/>
|
|
@@ -19,14 +19,14 @@ const GradientBackground = React.forwardRef<
|
|
|
19
19
|
transition = { duration: 15, ease: "easeInOut", repeat: Infinity },
|
|
20
20
|
...props
|
|
21
21
|
},
|
|
22
|
-
ref
|
|
22
|
+
ref,
|
|
23
23
|
) => {
|
|
24
24
|
return (
|
|
25
25
|
<motion.div
|
|
26
26
|
ref={ref}
|
|
27
27
|
className={cn(
|
|
28
28
|
"size-full bg-gradient-to-br from-blue-500 via-purple-500 to-pink-500 bg-[length:400%_400%]",
|
|
29
|
-
className
|
|
29
|
+
className,
|
|
30
30
|
)}
|
|
31
31
|
animate={{
|
|
32
32
|
backgroundPosition: ["0% 50%", "100% 50%", "0% 50%"],
|
|
@@ -35,7 +35,7 @@ const GradientBackground = React.forwardRef<
|
|
|
35
35
|
{...props}
|
|
36
36
|
/>
|
|
37
37
|
);
|
|
38
|
-
}
|
|
38
|
+
},
|
|
39
39
|
);
|
|
40
40
|
|
|
41
41
|
GradientBackground.displayName = "GradientBackground";
|
|
@@ -22,7 +22,7 @@ const GradientText = React.forwardRef<HTMLSpanElement, GradientTextProps>(
|
|
|
22
22
|
transition = { duration: 50, repeat: Infinity, ease: "linear" },
|
|
23
23
|
...props
|
|
24
24
|
},
|
|
25
|
-
ref
|
|
25
|
+
ref,
|
|
26
26
|
) => {
|
|
27
27
|
const baseStyle: React.CSSProperties = {
|
|
28
28
|
backgroundImage: gradient,
|
|
@@ -57,7 +57,7 @@ const GradientText = React.forwardRef<HTMLSpanElement, GradientTextProps>(
|
|
|
57
57
|
)}
|
|
58
58
|
</span>
|
|
59
59
|
);
|
|
60
|
-
}
|
|
60
|
+
},
|
|
61
61
|
);
|
|
62
62
|
|
|
63
63
|
GradientText.displayName = "GradientText";
|
|
@@ -31,7 +31,7 @@ const HighlightText = React.forwardRef<HTMLSpanElement, HighlightTextProps>(
|
|
|
31
31
|
transition = { duration: 2, ease: "easeInOut" },
|
|
32
32
|
...props
|
|
33
33
|
},
|
|
34
|
-
ref
|
|
34
|
+
ref,
|
|
35
35
|
) => {
|
|
36
36
|
const localRef = React.useRef<HTMLSpanElement>(null);
|
|
37
37
|
React.useImperativeHandle(ref, () => localRef.current as HTMLSpanElement);
|
|
@@ -57,14 +57,14 @@ const HighlightText = React.forwardRef<HTMLSpanElement, HighlightTextProps>(
|
|
|
57
57
|
}}
|
|
58
58
|
className={cn(
|
|
59
59
|
`relative inline-block px-2 py-1 rounded-lg bg-gradient-to-r from-blue-100 to-purple-100 dark:from-blue-500 dark:to-purple-500`,
|
|
60
|
-
className
|
|
60
|
+
className,
|
|
61
61
|
)}
|
|
62
62
|
{...props}
|
|
63
63
|
>
|
|
64
64
|
{text}
|
|
65
65
|
</motion.span>
|
|
66
66
|
);
|
|
67
|
-
}
|
|
67
|
+
},
|
|
68
68
|
);
|
|
69
69
|
HighlightText.displayName = "HighlightText";
|
|
70
70
|
|
|
@@ -23,12 +23,12 @@ const HoleBackground = React.forwardRef<HTMLCanvasElement, HoleBackgroundProps>(
|
|
|
23
23
|
children,
|
|
24
24
|
...props
|
|
25
25
|
},
|
|
26
|
-
ref
|
|
26
|
+
ref,
|
|
27
27
|
) => {
|
|
28
28
|
const canvasRef = React.useRef<HTMLCanvasElement>(null);
|
|
29
29
|
React.useImperativeHandle(
|
|
30
30
|
ref,
|
|
31
|
-
() => canvasRef.current as HTMLCanvasElement
|
|
31
|
+
() => canvasRef.current as HTMLCanvasElement,
|
|
32
32
|
);
|
|
33
33
|
|
|
34
34
|
const animationFrameIdRef = React.useRef<number>(0);
|
|
@@ -54,7 +54,7 @@ const HoleBackground = React.forwardRef<HTMLCanvasElement, HoleBackgroundProps>(
|
|
|
54
54
|
const easeFn = ease === "inExpo" ? easeInExpo : linear;
|
|
55
55
|
return start + delta * easeFn(p);
|
|
56
56
|
},
|
|
57
|
-
[]
|
|
57
|
+
[],
|
|
58
58
|
);
|
|
59
59
|
|
|
60
60
|
const tweenDisc = React.useCallback(
|
|
@@ -65,7 +65,7 @@ const HoleBackground = React.forwardRef<HTMLCanvasElement, HoleBackgroundProps>(
|
|
|
65
65
|
disc.w = tweenValue(startDisc.w, endDisc.w, disc.p);
|
|
66
66
|
disc.h = tweenValue(startDisc.h, endDisc.h, disc.p);
|
|
67
67
|
},
|
|
68
|
-
[tweenValue]
|
|
68
|
+
[tweenValue],
|
|
69
69
|
);
|
|
70
70
|
|
|
71
71
|
const setSize = React.useCallback(() => {
|
|
@@ -228,7 +228,7 @@ const HoleBackground = React.forwardRef<HTMLCanvasElement, HoleBackgroundProps>(
|
|
|
228
228
|
outerDisc.h,
|
|
229
229
|
0,
|
|
230
230
|
0,
|
|
231
|
-
Math.PI * 2
|
|
231
|
+
Math.PI * 2,
|
|
232
232
|
);
|
|
233
233
|
ctx.stroke();
|
|
234
234
|
ctx.closePath();
|
|
@@ -247,7 +247,7 @@ const HoleBackground = React.forwardRef<HTMLCanvasElement, HoleBackgroundProps>(
|
|
|
247
247
|
}
|
|
248
248
|
});
|
|
249
249
|
},
|
|
250
|
-
[strokeColor]
|
|
250
|
+
[strokeColor],
|
|
251
251
|
);
|
|
252
252
|
|
|
253
253
|
const drawLines = React.useCallback((ctx: CanvasRenderingContext2D) => {
|
|
@@ -335,7 +335,7 @@ const HoleBackground = React.forwardRef<HTMLCanvasElement, HoleBackgroundProps>(
|
|
|
335
335
|
"relative size-full overflow-hidden",
|
|
336
336
|
'before:content-[""] before:absolute before:top-1/2 before:left-1/2 before:block before:size-[140%] dark:before:[background:radial-gradient(ellipse_at_50%_55%,transparent_10%,black_50%)] before:[background:radial-gradient(ellipse_at_50%_55%,transparent_10%,white_50%)] before:[transform:translate3d(-50%,-50%,0)]',
|
|
337
337
|
'after:content-[""] after:absolute after:z-[5] after:top-1/2 after:left-1/2 after:block after:size-full after:[background:radial-gradient(ellipse_at_50%_75%,#a900ff_20%,transparent_75%)] after:[transform:translate3d(-50%,-50%,0)] after:mix-blend-overlay',
|
|
338
|
-
className
|
|
338
|
+
className,
|
|
339
339
|
)}
|
|
340
340
|
>
|
|
341
341
|
{children}
|
|
@@ -347,7 +347,7 @@ const HoleBackground = React.forwardRef<HTMLCanvasElement, HoleBackgroundProps>(
|
|
|
347
347
|
<motion.div
|
|
348
348
|
className={cn(
|
|
349
349
|
"absolute top-[-71.5%] left-1/2 z-[3] w-[30%] h-[140%] rounded-b-full blur-3xl opacity-75 dark:mix-blend-plus-lighter mix-blend-plus-darker [transform:translate3d(-50%,0,0)] [background-position:0%_100%] [background-size:100%_200%]",
|
|
350
|
-
"dark:[background:linear-gradient(20deg,#00f8f1,#ffbd1e20_16.5%,#fe848f_33%,#fe848f20_49.5%,#00f8f1_66%,#00f8f160_85.5%,#ffbd1e_100%)_0_100%_/_100%_200%] [background:linear-gradient(20deg,#00f8f1,#ffbd1e40_16.5%,#fe848f_33%,#fe848f40_49.5%,#00f8f1_66%,#00f8f180_85.5%,#ffbd1e_100%)_0_100%_/_100%_200%]"
|
|
350
|
+
"dark:[background:linear-gradient(20deg,#00f8f1,#ffbd1e20_16.5%,#fe848f_33%,#fe848f20_49.5%,#00f8f1_66%,#00f8f160_85.5%,#ffbd1e_100%)_0_100%_/_100%_200%] [background:linear-gradient(20deg,#00f8f1,#ffbd1e40_16.5%,#fe848f_33%,#fe848f40_49.5%,#00f8f1_66%,#00f8f180_85.5%,#ffbd1e_100%)_0_100%_/_100%_200%]",
|
|
351
351
|
)}
|
|
352
352
|
animate={{ backgroundPosition: "0% 300%" }}
|
|
353
353
|
transition={{ duration: 5, ease: "linear", repeat: Infinity }}
|
|
@@ -355,7 +355,7 @@ const HoleBackground = React.forwardRef<HTMLCanvasElement, HoleBackgroundProps>(
|
|
|
355
355
|
<div className="absolute top-0 left-0 z-[7] size-full dark:[background:repeating-linear-gradient(transparent,transparent_1px,white_1px,white_2px)] mix-blend-overlay opacity-50" />
|
|
356
356
|
</div>
|
|
357
357
|
);
|
|
358
|
-
}
|
|
358
|
+
},
|
|
359
359
|
);
|
|
360
360
|
|
|
361
361
|
export { HoleBackground, type HoleBackgroundProps };
|
|
@@ -33,7 +33,7 @@ function HoverCardContent({
|
|
|
33
33
|
sideOffset={sideOffset}
|
|
34
34
|
className={cn(
|
|
35
35
|
"bg-white text-neutral-950 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 w-64 origin-(--radix-hover-card-content-transform-origin) rounded-md border border-neutral-200 p-4 shadow-md outline-hidden dark:bg-neutral-950 dark:text-neutral-50 dark:border-neutral-800",
|
|
36
|
-
className
|
|
36
|
+
className,
|
|
37
37
|
)}
|
|
38
38
|
{...props}
|
|
39
39
|
/>
|
|
@@ -18,7 +18,7 @@ function InputOTP({
|
|
|
18
18
|
data-slot="input-otp"
|
|
19
19
|
containerClassName={cn(
|
|
20
20
|
"flex items-center gap-2 has-disabled:opacity-50",
|
|
21
|
-
containerClassName
|
|
21
|
+
containerClassName,
|
|
22
22
|
)}
|
|
23
23
|
className={cn("disabled:cursor-not-allowed", className)}
|
|
24
24
|
{...props}
|
|
@@ -52,7 +52,7 @@ function InputOTPSlot({
|
|
|
52
52
|
data-active={isActive}
|
|
53
53
|
className={cn(
|
|
54
54
|
"data-[active=true]:border-neutral-950 data-[active=true]:ring-neutral-950/50 data-[active=true]:aria-invalid:ring-red-500/20 dark:data-[active=true]:aria-invalid:ring-red-500/40 aria-invalid:border-red-500 data-[active=true]:aria-invalid:border-red-500 dark:bg-neutral-200/30 border-neutral-200 relative flex h-9 w-9 items-center justify-center border-y border-r text-sm shadow-xs transition-all outline-none first:rounded-l-md first:border-l last:rounded-r-md data-[active=true]:z-10 data-[active=true]:ring-[3px] dark:data-[active=true]:border-neutral-300 dark:data-[active=true]:ring-neutral-300/50 dark:data-[active=true]:aria-invalid:ring-red-900/20 dark:dark:data-[active=true]:aria-invalid:ring-red-900/40 dark:aria-invalid:border-red-900 dark:data-[active=true]:aria-invalid:border-red-900 dark:dark:bg-neutral-800/30 dark:border-neutral-800",
|
|
55
|
-
className
|
|
55
|
+
className,
|
|
56
56
|
)}
|
|
57
57
|
{...props}
|
|
58
58
|
>
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
import * as React from "react"
|
|
4
|
-
|
|
5
|
-
import { cn } from "@/lib/utils"
|
|
3
|
+
import * as React from "react";
|
|
4
|
+
import { cn } from "@/lib/utils";
|
|
6
5
|
|
|
7
6
|
function Input({ className, type, ...props }: React.ComponentProps<"input">) {
|
|
8
7
|
return (
|
|
@@ -13,11 +12,11 @@ function Input({ className, type, ...props }: React.ComponentProps<"input">) {
|
|
|
13
12
|
"file:text-neutral-950 placeholder:text-neutral-500 selection:bg-neutral-900 selection:text-neutral-50 dark:bg-neutral-200/30 border-neutral-200 flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm dark:file:text-neutral-50 dark:placeholder:text-neutral-400 dark:selection:bg-neutral-50 dark:selection:text-neutral-900 dark:dark:bg-neutral-800/30 dark:border-neutral-800",
|
|
14
13
|
"focus-visible:border-neutral-950 focus-visible:ring-neutral-950/50 focus-visible:ring-[3px] dark:focus-visible:border-neutral-300 dark:focus-visible:ring-neutral-300/50",
|
|
15
14
|
"aria-invalid:ring-red-500/20 dark:aria-invalid:ring-red-500/40 aria-invalid:border-red-500 dark:aria-invalid:ring-red-900/20 dark:dark:aria-invalid:ring-red-900/40 dark:aria-invalid:border-red-900",
|
|
16
|
-
className
|
|
15
|
+
className,
|
|
17
16
|
)}
|
|
18
17
|
{...props}
|
|
19
18
|
/>
|
|
20
|
-
)
|
|
19
|
+
);
|
|
21
20
|
}
|
|
22
21
|
|
|
23
|
-
export { Input }
|
|
22
|
+
export { Input };
|
|
@@ -14,7 +14,7 @@ function Label({
|
|
|
14
14
|
data-slot="label"
|
|
15
15
|
className={cn(
|
|
16
16
|
"flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",
|
|
17
|
-
className
|
|
17
|
+
className,
|
|
18
18
|
)}
|
|
19
19
|
{...props}
|
|
20
20
|
/>
|
|
@@ -15,7 +15,7 @@ function Menubar({
|
|
|
15
15
|
data-slot="menubar"
|
|
16
16
|
className={cn(
|
|
17
17
|
"bg-white flex h-9 items-center gap-1 rounded-md border border-neutral-200 p-1 shadow-xs dark:bg-neutral-950 dark:border-neutral-800",
|
|
18
|
-
className
|
|
18
|
+
className,
|
|
19
19
|
)}
|
|
20
20
|
{...props}
|
|
21
21
|
/>
|
|
@@ -57,7 +57,7 @@ function MenubarTrigger({
|
|
|
57
57
|
data-slot="menubar-trigger"
|
|
58
58
|
className={cn(
|
|
59
59
|
"focus:bg-neutral-100 focus:text-neutral-900 data-[state=open]:bg-neutral-100 data-[state=open]:text-neutral-900 flex items-center rounded-sm px-2 py-1 text-sm font-medium outline-hidden select-none dark:focus:bg-neutral-800 dark:focus:text-neutral-50 dark:data-[state=open]:bg-neutral-800 dark:data-[state=open]:text-neutral-50",
|
|
60
|
-
className
|
|
60
|
+
className,
|
|
61
61
|
)}
|
|
62
62
|
{...props}
|
|
63
63
|
/>
|
|
@@ -80,7 +80,7 @@ function MenubarContent({
|
|
|
80
80
|
sideOffset={sideOffset}
|
|
81
81
|
className={cn(
|
|
82
82
|
"bg-white text-neutral-950 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 p-1 shadow-md dark:bg-neutral-950 dark:text-neutral-50 dark:border-neutral-800",
|
|
83
|
-
className
|
|
83
|
+
className,
|
|
84
84
|
)}
|
|
85
85
|
{...props}
|
|
86
86
|
/>
|
|
@@ -104,7 +104,7 @@ function MenubarItem({
|
|
|
104
104
|
data-variant={variant}
|
|
105
105
|
className={cn(
|
|
106
106
|
"focus:bg-neutral-100 focus:text-neutral-900 data-[variant=destructive]:text-red-500 data-[variant=destructive]:focus:bg-red-500/10 dark:data-[variant=destructive]:focus:bg-red-500/20 data-[variant=destructive]:focus:text-red-500 data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-neutral-500 relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 dark:focus:bg-neutral-800 dark:focus:text-neutral-50 dark:data-[variant=destructive]:text-red-900 dark:data-[variant=destructive]:focus:bg-red-900/10 dark:dark:data-[variant=destructive]:focus:bg-red-900/20 dark:data-[variant=destructive]:focus:text-red-900 dark:[&_svg:not([class*='text-'])]:text-neutral-400",
|
|
107
|
-
className
|
|
107
|
+
className,
|
|
108
108
|
)}
|
|
109
109
|
{...props}
|
|
110
110
|
/>
|
|
@@ -122,7 +122,7 @@ function MenubarCheckboxItem({
|
|
|
122
122
|
data-slot="menubar-checkbox-item"
|
|
123
123
|
className={cn(
|
|
124
124
|
"focus:bg-neutral-100 focus:text-neutral-900 relative flex cursor-default items-center gap-2 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 dark:focus:bg-neutral-800 dark:focus:text-neutral-50",
|
|
125
|
-
className
|
|
125
|
+
className,
|
|
126
126
|
)}
|
|
127
127
|
checked={checked}
|
|
128
128
|
{...props}
|
|
@@ -147,7 +147,7 @@ function MenubarRadioItem({
|
|
|
147
147
|
data-slot="menubar-radio-item"
|
|
148
148
|
className={cn(
|
|
149
149
|
"focus:bg-neutral-100 focus:text-neutral-900 relative flex cursor-default items-center gap-2 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 dark:focus:bg-neutral-800 dark:focus:text-neutral-50",
|
|
150
|
-
className
|
|
150
|
+
className,
|
|
151
151
|
)}
|
|
152
152
|
{...props}
|
|
153
153
|
>
|
|
@@ -174,7 +174,7 @@ function MenubarLabel({
|
|
|
174
174
|
data-inset={inset}
|
|
175
175
|
className={cn(
|
|
176
176
|
"px-2 py-1.5 text-sm font-medium data-[inset]:pl-8",
|
|
177
|
-
className
|
|
177
|
+
className,
|
|
178
178
|
)}
|
|
179
179
|
{...props}
|
|
180
180
|
/>
|
|
@@ -190,7 +190,7 @@ function MenubarSeparator({
|
|
|
190
190
|
data-slot="menubar-separator"
|
|
191
191
|
className={cn(
|
|
192
192
|
"bg-neutral-200 -mx-1 my-1 h-px dark:bg-neutral-800",
|
|
193
|
-
className
|
|
193
|
+
className,
|
|
194
194
|
)}
|
|
195
195
|
{...props}
|
|
196
196
|
/>
|
|
@@ -206,7 +206,7 @@ function MenubarShortcut({
|
|
|
206
206
|
data-slot="menubar-shortcut"
|
|
207
207
|
className={cn(
|
|
208
208
|
"text-neutral-500 ml-auto text-xs tracking-widest dark:text-neutral-400",
|
|
209
|
-
className
|
|
209
|
+
className,
|
|
210
210
|
)}
|
|
211
211
|
{...props}
|
|
212
212
|
/>
|
|
@@ -233,7 +233,7 @@ function MenubarSubTrigger({
|
|
|
233
233
|
data-inset={inset}
|
|
234
234
|
className={cn(
|
|
235
235
|
"focus:bg-neutral-100 focus:text-neutral-900 data-[state=open]:bg-neutral-100 data-[state=open]:text-neutral-900 flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-none select-none data-[inset]:pl-8 dark:focus:bg-neutral-800 dark:focus:text-neutral-50 dark:data-[state=open]:bg-neutral-800 dark:data-[state=open]:text-neutral-50",
|
|
236
|
-
className
|
|
236
|
+
className,
|
|
237
237
|
)}
|
|
238
238
|
{...props}
|
|
239
239
|
>
|
|
@@ -252,7 +252,7 @@ function MenubarSubContent({
|
|
|
252
252
|
data-slot="menubar-sub-content"
|
|
253
253
|
className={cn(
|
|
254
254
|
"bg-white text-neutral-950 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 p-1 shadow-lg dark:bg-neutral-950 dark:text-neutral-50 dark:border-neutral-800",
|
|
255
|
-
className
|
|
255
|
+
className,
|
|
256
256
|
)}
|
|
257
257
|
{...props}
|
|
258
258
|
/>
|
|
@@ -21,7 +21,7 @@ function NavigationMenu({
|
|
|
21
21
|
data-viewport={viewport}
|
|
22
22
|
className={cn(
|
|
23
23
|
"group/navigation-menu relative flex max-w-max flex-1 items-center justify-center",
|
|
24
|
-
className
|
|
24
|
+
className,
|
|
25
25
|
)}
|
|
26
26
|
{...props}
|
|
27
27
|
>
|
|
@@ -40,7 +40,7 @@ function NavigationMenuList({
|
|
|
40
40
|
data-slot="navigation-menu-list"
|
|
41
41
|
className={cn(
|
|
42
42
|
"group flex flex-1 list-none items-center justify-center gap-1",
|
|
43
|
-
className
|
|
43
|
+
className,
|
|
44
44
|
)}
|
|
45
45
|
{...props}
|
|
46
46
|
/>
|
|
@@ -61,7 +61,7 @@ function NavigationMenuItem({
|
|
|
61
61
|
}
|
|
62
62
|
|
|
63
63
|
const navigationMenuTriggerStyle = cva(
|
|
64
|
-
"group inline-flex h-9 w-max items-center justify-center rounded-md bg-white px-4 py-2 text-sm font-medium hover:bg-neutral-100 hover:text-neutral-900 focus:bg-neutral-100 focus:text-neutral-900 disabled:pointer-events-none disabled:opacity-50 data-[state=open]:hover:bg-neutral-100 data-[state=open]:text-neutral-900 data-[state=open]:focus:bg-neutral-100 data-[state=open]:bg-neutral-100/50 focus-visible:ring-neutral-950/50 outline-none transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 dark:bg-neutral-950 dark:hover:bg-neutral-800 dark:hover:text-neutral-50 dark:focus:bg-neutral-800 dark:focus:text-neutral-50 dark:data-[state=open]:hover:bg-neutral-800 dark:data-[state=open]:text-neutral-50 dark:data-[state=open]:focus:bg-neutral-800 dark:data-[state=open]:bg-neutral-800/50 dark:focus-visible:ring-neutral-300/50"
|
|
64
|
+
"group inline-flex h-9 w-max items-center justify-center rounded-md bg-white px-4 py-2 text-sm font-medium hover:bg-neutral-100 hover:text-neutral-900 focus:bg-neutral-100 focus:text-neutral-900 disabled:pointer-events-none disabled:opacity-50 data-[state=open]:hover:bg-neutral-100 data-[state=open]:text-neutral-900 data-[state=open]:focus:bg-neutral-100 data-[state=open]:bg-neutral-100/50 focus-visible:ring-neutral-950/50 outline-none transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 dark:bg-neutral-950 dark:hover:bg-neutral-800 dark:hover:text-neutral-50 dark:focus:bg-neutral-800 dark:focus:text-neutral-50 dark:data-[state=open]:hover:bg-neutral-800 dark:data-[state=open]:text-neutral-50 dark:data-[state=open]:focus:bg-neutral-800 dark:data-[state=open]:bg-neutral-800/50 dark:focus-visible:ring-neutral-300/50",
|
|
65
65
|
);
|
|
66
66
|
|
|
67
67
|
function NavigationMenuTrigger({
|
|
@@ -95,7 +95,7 @@ function NavigationMenuContent({
|
|
|
95
95
|
className={cn(
|
|
96
96
|
"data-[motion^=from-]:animate-in data-[motion^=to-]:animate-out data-[motion^=from-]:fade-in data-[motion^=to-]:fade-out data-[motion=from-end]:slide-in-from-right-52 data-[motion=from-start]:slide-in-from-left-52 data-[motion=to-end]:slide-out-to-right-52 data-[motion=to-start]:slide-out-to-left-52 top-0 left-0 w-full p-2 pr-2.5 md:absolute md:w-auto",
|
|
97
97
|
"group-data-[viewport=false]/navigation-menu:bg-popover group-data-[viewport=false]/navigation-menu:text-popover-foreground group-data-[viewport=false]/navigation-menu:data-[state=open]:animate-in group-data-[viewport=false]/navigation-menu:data-[state=closed]:animate-out group-data-[viewport=false]/navigation-menu:data-[state=closed]:zoom-out-95 group-data-[viewport=false]/navigation-menu:data-[state=open]:zoom-in-95 group-data-[viewport=false]/navigation-menu:data-[state=open]:fade-in-0 group-data-[viewport=false]/navigation-menu:data-[state=closed]:fade-out-0 group-data-[viewport=false]/navigation-menu:top-full group-data-[viewport=false]/navigation-menu:mt-1.5 group-data-[viewport=false]/navigation-menu:overflow-hidden group-data-[viewport=false]/navigation-menu:rounded-md group-data-[viewport=false]/navigation-menu:border group-data-[viewport=false]/navigation-menu:shadow group-data-[viewport=false]/navigation-menu:duration-200 **:data-[slot=navigation-menu-link]:focus:ring-0 **:data-[slot=navigation-menu-link]:focus:outline-none",
|
|
98
|
-
className
|
|
98
|
+
className,
|
|
99
99
|
)}
|
|
100
100
|
{...props}
|
|
101
101
|
/>
|
|
@@ -109,14 +109,14 @@ function NavigationMenuViewport({
|
|
|
109
109
|
return (
|
|
110
110
|
<div
|
|
111
111
|
className={cn(
|
|
112
|
-
"absolute top-full left-0 isolate z-50 flex justify-center"
|
|
112
|
+
"absolute top-full left-0 isolate z-50 flex justify-center",
|
|
113
113
|
)}
|
|
114
114
|
>
|
|
115
115
|
<NavigationMenuPrimitive.Viewport
|
|
116
116
|
data-slot="navigation-menu-viewport"
|
|
117
117
|
className={cn(
|
|
118
118
|
"origin-top-center bg-white text-neutral-950 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-90 relative mt-1.5 h-[var(--radix-navigation-menu-viewport-height)] w-full overflow-hidden rounded-md border border-neutral-200 shadow md:w-[var(--radix-navigation-menu-viewport-width)] dark:bg-neutral-950 dark:text-neutral-50 dark:border-neutral-800",
|
|
119
|
-
className
|
|
119
|
+
className,
|
|
120
120
|
)}
|
|
121
121
|
{...props}
|
|
122
122
|
/>
|
|
@@ -133,7 +133,7 @@ function NavigationMenuLink({
|
|
|
133
133
|
data-slot="navigation-menu-link"
|
|
134
134
|
className={cn(
|
|
135
135
|
"data-[active=true]:focus:bg-neutral-100 data-[active=true]:hover:bg-neutral-100 data-[active=true]:bg-neutral-100/50 data-[active=true]:text-neutral-900 hover:bg-neutral-100 hover:text-neutral-900 focus:bg-neutral-100 focus:text-neutral-900 focus-visible:ring-neutral-950/50 [&_svg:not([class*='text-'])]:text-neutral-500 flex flex-col gap-1 rounded-sm p-2 text-sm transition-all outline-none focus-visible:ring-[3px] focus-visible:outline-1 [&_svg:not([class*='size-'])]:size-4 dark:data-[active=true]:focus:bg-neutral-800 dark:data-[active=true]:hover:bg-neutral-800 dark:data-[active=true]:bg-neutral-800/50 dark:data-[active=true]:text-neutral-50 dark:hover:bg-neutral-800 dark:hover:text-neutral-50 dark:focus:bg-neutral-800 dark:focus:text-neutral-50 dark:focus-visible:ring-neutral-300/50 dark:[&_svg:not([class*='text-'])]:text-neutral-400",
|
|
136
|
-
className
|
|
136
|
+
className,
|
|
137
137
|
)}
|
|
138
138
|
{...props}
|
|
139
139
|
/>
|
|
@@ -149,7 +149,7 @@ function NavigationMenuIndicator({
|
|
|
149
149
|
data-slot="navigation-menu-indicator"
|
|
150
150
|
className={cn(
|
|
151
151
|
"data-[state=visible]:animate-in data-[state=hidden]:animate-out data-[state=hidden]:fade-out data-[state=visible]:fade-in top-full z-[1] flex h-1.5 items-end justify-center overflow-hidden",
|
|
152
|
-
className
|
|
152
|
+
className,
|
|
153
153
|
)}
|
|
154
154
|
{...props}
|
|
155
155
|
>
|
|
@@ -31,7 +31,7 @@ function PopoverContent({
|
|
|
31
31
|
sideOffset={sideOffset}
|
|
32
32
|
className={cn(
|
|
33
33
|
"bg-white text-neutral-950 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 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border border-neutral-200 p-4 shadow-md outline-hidden dark:bg-neutral-950 dark:text-neutral-50 dark:border-neutral-800",
|
|
34
|
-
className
|
|
34
|
+
className,
|
|
35
35
|
)}
|
|
36
36
|
{...props}
|
|
37
37
|
/>
|
|
@@ -28,7 +28,7 @@ function RadioGroupItem({
|
|
|
28
28
|
data-slot="radio-group-item"
|
|
29
29
|
className={cn(
|
|
30
30
|
"border-neutral-200 text-neutral-900 focus-visible:border-neutral-950 focus-visible:ring-neutral-950/50 aria-invalid:ring-red-500/20 dark:aria-invalid:ring-red-500/40 aria-invalid:border-red-500 dark:bg-neutral-200/30 aspect-square size-4 shrink-0 rounded-full border shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 dark:border-neutral-800 dark:text-neutral-50 dark:focus-visible:border-neutral-300 dark:focus-visible:ring-neutral-300/50 dark:aria-invalid:ring-red-900/20 dark:dark:aria-invalid:ring-red-900/40 dark:aria-invalid:border-red-900 dark:dark:bg-neutral-800/30",
|
|
31
|
-
className
|
|
31
|
+
className,
|
|
32
32
|
)}
|
|
33
33
|
{...props}
|
|
34
34
|
>
|
|
@@ -15,7 +15,7 @@ function ResizablePanelGroup({
|
|
|
15
15
|
data-slot="resizable-panel-group"
|
|
16
16
|
className={cn(
|
|
17
17
|
"flex h-full w-full data-[panel-group-direction=vertical]:flex-col",
|
|
18
|
-
className
|
|
18
|
+
className,
|
|
19
19
|
)}
|
|
20
20
|
{...props}
|
|
21
21
|
/>
|
|
@@ -39,8 +39,8 @@ function ResizableHandle({
|
|
|
39
39
|
<ResizablePrimitive.PanelResizeHandle
|
|
40
40
|
data-slot="resizable-handle"
|
|
41
41
|
className={cn(
|
|
42
|
-
"bg-neutral-200 focus-visible:ring-neutral-950 relative flex w-px items-center justify-center after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2 focus-visible:ring-1 focus-visible:ring-offset-1 focus-visible:outline-hidden data-[panel-group-direction=vertical]:h-px data-[panel-group-direction=vertical]:w-full data-[panel-group-direction=vertical]:after:left-0 data-[panel-group-direction=vertical]:after:h-1 data-[panel-group-direction=vertical]:after:w-full data-[panel-group-direction=vertical]:after
|
|
43
|
-
className
|
|
42
|
+
"bg-neutral-200 focus-visible:ring-neutral-950 relative flex w-px items-center justify-center after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2 focus-visible:ring-1 focus-visible:ring-offset-1 focus-visible:outline-hidden data-[panel-group-direction=vertical]:h-px data-[panel-group-direction=vertical]:w-full data-[panel-group-direction=vertical]:after:left-0 data-[panel-group-direction=vertical]:after:h-1 data-[panel-group-direction=vertical]:after:w-full data-[panel-group-direction=vertical]:after:translate-x-0 data-[panel-group-direction=vertical]:after:-translate-y-1/2 [&[data-panel-group-direction=vertical]>div]:rotate-90 dark:bg-neutral-800 dark:focus-visible:ring-neutral-300",
|
|
43
|
+
className,
|
|
44
44
|
)}
|
|
45
45
|
{...props}
|
|
46
46
|
>
|