@codefast/ui 0.0.9 → 0.0.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/accordion.d.mts +7 -7
- package/dist/accordion.d.ts +7 -7
- package/dist/accordion.js +42 -32
- package/dist/accordion.js.map +1 -1
- package/dist/accordion.mjs +42 -32
- package/dist/accordion.mjs.map +1 -1
- package/dist/alert-dialog.d.mts +12 -12
- package/dist/alert-dialog.d.ts +12 -12
- package/dist/alert-dialog.js +47 -75
- package/dist/alert-dialog.js.map +1 -1
- package/dist/alert-dialog.mjs +47 -75
- package/dist/alert-dialog.mjs.map +1 -1
- package/dist/alert.js +5 -30
- package/dist/alert.js.map +1 -1
- package/dist/alert.mjs +5 -30
- package/dist/alert.mjs.map +1 -1
- package/dist/aspect-ratio.d.mts +1 -1
- package/dist/aspect-ratio.d.ts +1 -1
- package/dist/aspect-ratio.js.map +1 -1
- package/dist/aspect-ratio.mjs.map +1 -1
- package/dist/avatar.d.mts +6 -6
- package/dist/avatar.d.ts +6 -6
- package/dist/avatar.js +3 -16
- package/dist/avatar.js.map +1 -1
- package/dist/avatar.mjs +3 -16
- package/dist/avatar.mjs.map +1 -1
- package/dist/badge.js +1 -5
- package/dist/badge.js.map +1 -1
- package/dist/badge.mjs +1 -5
- package/dist/badge.mjs.map +1 -1
- package/dist/blockquote.js +4 -6
- package/dist/blockquote.js.map +1 -1
- package/dist/blockquote.mjs +4 -6
- package/dist/blockquote.mjs.map +1 -1
- package/dist/box.js +4 -6
- package/dist/box.js.map +1 -1
- package/dist/box.mjs +4 -6
- package/dist/box.mjs.map +1 -1
- package/dist/breadcrumb.js +30 -67
- package/dist/breadcrumb.js.map +1 -1
- package/dist/breadcrumb.mjs +30 -67
- package/dist/breadcrumb.mjs.map +1 -1
- package/dist/button.d.mts +1 -0
- package/dist/button.d.ts +1 -0
- package/dist/button.js +3 -2
- package/dist/button.mjs +2 -1
- package/dist/calendar.js +7 -19
- package/dist/calendar.js.map +1 -1
- package/dist/calendar.mjs +6 -18
- package/dist/calendar.mjs.map +1 -1
- package/dist/card.js +8 -55
- package/dist/card.js.map +1 -1
- package/dist/card.mjs +8 -55
- package/dist/card.mjs.map +1 -1
- package/dist/carousel.js +58 -64
- package/dist/carousel.js.map +1 -1
- package/dist/carousel.mjs +57 -63
- package/dist/carousel.mjs.map +1 -1
- package/dist/checkbox-cards.d.mts +15 -0
- package/dist/checkbox-cards.d.ts +15 -0
- package/dist/checkbox-cards.js +56 -0
- package/dist/checkbox-cards.js.map +1 -0
- package/dist/checkbox-cards.mjs +56 -0
- package/dist/checkbox-cards.mjs.map +1 -0
- package/dist/checkbox-group.d.mts +13 -0
- package/dist/checkbox-group.d.ts +13 -0
- package/dist/checkbox-group.js +44 -0
- package/dist/checkbox-group.js.map +1 -0
- package/dist/checkbox-group.mjs +44 -0
- package/dist/checkbox-group.mjs.map +1 -0
- package/dist/checkbox-group.primitive.d.mts +38 -0
- package/dist/checkbox-group.primitive.d.ts +38 -0
- package/dist/checkbox-group.primitive.js +19 -0
- package/dist/checkbox-group.primitive.js.map +1 -0
- package/dist/checkbox-group.primitive.mjs +19 -0
- package/dist/checkbox-group.primitive.mjs.map +1 -0
- package/dist/checkbox.d.mts +2 -2
- package/dist/checkbox.d.ts +2 -2
- package/dist/checkbox.js +5 -1
- package/dist/checkbox.js.map +1 -1
- package/dist/checkbox.mjs +5 -1
- package/dist/checkbox.mjs.map +1 -1
- package/dist/chunk-3ZZ3SRTJ.js +148 -0
- package/dist/chunk-3ZZ3SRTJ.js.map +1 -0
- package/dist/{chunk-MJDKD2K4.mjs → chunk-6J6VPUBP.mjs} +9 -10
- package/dist/chunk-6J6VPUBP.mjs.map +1 -0
- package/dist/{chunk-PKB2G726.js → chunk-7S4DOWLB.js} +9 -10
- package/dist/chunk-7S4DOWLB.js.map +1 -0
- package/dist/{chunk-JOJW7BBY.js → chunk-BWCO2ZQQ.js} +29 -8
- package/dist/chunk-BWCO2ZQQ.js.map +1 -0
- package/dist/chunk-EWS3N4OZ.mjs +148 -0
- package/dist/chunk-EWS3N4OZ.mjs.map +1 -0
- package/dist/{chunk-PIU627A3.mjs → chunk-FGI3JA75.mjs} +1 -1
- package/dist/chunk-FGI3JA75.mjs.map +1 -0
- package/dist/{chunk-GRKABVK4.js → chunk-IVYGBU4G.js} +1 -1
- package/dist/chunk-IVYGBU4G.js.map +1 -0
- package/dist/chunk-IXEJO7ZP.js +86 -0
- package/dist/chunk-IXEJO7ZP.js.map +1 -0
- package/dist/chunk-JULVZPCS.mjs +120 -0
- package/dist/chunk-JULVZPCS.mjs.map +1 -0
- package/dist/chunk-LNSEYAPJ.js +121 -0
- package/dist/chunk-LNSEYAPJ.js.map +1 -0
- package/dist/chunk-MDSPK3M6.js +54 -0
- package/dist/chunk-MDSPK3M6.js.map +1 -0
- package/dist/chunk-MOJNV3XZ.js +120 -0
- package/dist/chunk-MOJNV3XZ.js.map +1 -0
- package/dist/chunk-OK63Q6EJ.mjs +121 -0
- package/dist/chunk-OK63Q6EJ.mjs.map +1 -0
- package/dist/chunk-V2254PQL.mjs +54 -0
- package/dist/chunk-V2254PQL.mjs.map +1 -0
- package/dist/chunk-WFXEFJRB.mjs +77 -0
- package/dist/chunk-WFXEFJRB.mjs.map +1 -0
- package/dist/chunk-XCKLBP2V.mjs +86 -0
- package/dist/chunk-XCKLBP2V.mjs.map +1 -0
- package/dist/code.js +4 -6
- package/dist/code.js.map +1 -1
- package/dist/code.mjs +4 -6
- package/dist/code.mjs.map +1 -1
- package/dist/collapsible.d.mts +3 -3
- package/dist/collapsible.d.ts +3 -3
- package/dist/collapsible.js.map +1 -1
- package/dist/collapsible.mjs.map +1 -1
- package/dist/command.d.mts +11 -10
- package/dist/command.d.ts +11 -10
- package/dist/command.js +10 -44
- package/dist/command.js.map +1 -1
- package/dist/command.mjs +10 -44
- package/dist/command.mjs.map +1 -1
- package/dist/container.js +4 -6
- package/dist/container.js.map +1 -1
- package/dist/container.mjs +4 -6
- package/dist/container.mjs.map +1 -1
- package/dist/context-menu.d.mts +18 -18
- package/dist/context-menu.d.ts +18 -18
- package/dist/context-menu.js +108 -124
- package/dist/context-menu.js.map +1 -1
- package/dist/context-menu.mjs +109 -125
- package/dist/context-menu.mjs.map +1 -1
- package/dist/data-table.d.mts +1 -1
- package/dist/data-table.d.ts +1 -1
- package/dist/data-table.js +131 -149
- package/dist/data-table.js.map +1 -1
- package/dist/data-table.mjs +120 -138
- package/dist/data-table.mjs.map +1 -1
- package/dist/dialog.d.mts +9 -9
- package/dist/dialog.d.ts +9 -9
- package/dist/dialog.js +2 -2
- package/dist/dialog.mjs +1 -1
- package/dist/drawer.d.mts +2 -2
- package/dist/drawer.d.ts +2 -2
- package/dist/drawer.js +30 -63
- package/dist/drawer.js.map +1 -1
- package/dist/drawer.mjs +30 -63
- package/dist/drawer.mjs.map +1 -1
- package/dist/dropdown-menu.d.mts +16 -16
- package/dist/dropdown-menu.d.ts +16 -16
- package/dist/dropdown-menu.js +2 -2
- package/dist/dropdown-menu.mjs +1 -1
- package/dist/em.js +4 -6
- package/dist/em.js.map +1 -1
- package/dist/em.mjs +4 -6
- package/dist/em.mjs.map +1 -1
- package/dist/form.js +23 -54
- package/dist/form.js.map +1 -1
- package/dist/form.mjs +23 -54
- package/dist/form.mjs.map +1 -1
- package/dist/heading.js +4 -6
- package/dist/heading.js.map +1 -1
- package/dist/heading.mjs +4 -6
- package/dist/heading.mjs.map +1 -1
- package/dist/hover-card.d.mts +4 -4
- package/dist/hover-card.d.ts +4 -4
- package/dist/hover-card.js +15 -13
- package/dist/hover-card.js.map +1 -1
- package/dist/hover-card.mjs +15 -13
- package/dist/hover-card.mjs.map +1 -1
- package/dist/input-otp.js +32 -37
- package/dist/input-otp.js.map +1 -1
- package/dist/input-otp.mjs +32 -37
- package/dist/input-otp.mjs.map +1 -1
- package/dist/input.js +10 -14
- package/dist/input.js.map +1 -1
- package/dist/input.mjs +10 -14
- package/dist/input.mjs.map +1 -1
- package/dist/kbd.js +14 -16
- package/dist/kbd.js.map +1 -1
- package/dist/kbd.mjs +14 -16
- package/dist/kbd.mjs.map +1 -1
- package/dist/label.d.mts +2 -2
- package/dist/label.d.ts +2 -2
- package/dist/label.js +2 -2
- package/dist/label.mjs +1 -1
- package/dist/menubar.d.mts +21 -21
- package/dist/menubar.d.ts +21 -21
- package/dist/menubar.js +73 -93
- package/dist/menubar.js.map +1 -1
- package/dist/menubar.mjs +74 -94
- package/dist/menubar.mjs.map +1 -1
- package/dist/navigation-menu.d.mts +16 -16
- package/dist/navigation-menu.d.ts +16 -16
- package/dist/navigation-menu.js +89 -93
- package/dist/navigation-menu.js.map +1 -1
- package/dist/navigation-menu.mjs +89 -93
- package/dist/navigation-menu.mjs.map +1 -1
- package/dist/pagination.js +19 -58
- package/dist/pagination.js.map +1 -1
- package/dist/pagination.mjs +19 -58
- package/dist/pagination.mjs.map +1 -1
- package/dist/popover.d.mts +7 -7
- package/dist/popover.d.ts +7 -7
- package/dist/popover.js +16 -21
- package/dist/popover.js.map +1 -1
- package/dist/popover.mjs +16 -21
- package/dist/popover.mjs.map +1 -1
- package/dist/pre.js +4 -6
- package/dist/pre.js.map +1 -1
- package/dist/pre.mjs +4 -6
- package/dist/pre.mjs.map +1 -1
- package/dist/progress.d.mts +2 -2
- package/dist/progress.d.ts +2 -2
- package/dist/progress.js +1 -4
- package/dist/progress.js.map +1 -1
- package/dist/progress.mjs +1 -4
- package/dist/progress.mjs.map +1 -1
- package/dist/quote.js +4 -6
- package/dist/quote.js.map +1 -1
- package/dist/quote.mjs +4 -6
- package/dist/quote.mjs.map +1 -1
- package/dist/radio-cards.d.mts +9 -0
- package/dist/radio-cards.d.ts +9 -0
- package/dist/radio-cards.js +36 -0
- package/dist/radio-cards.js.map +1 -0
- package/dist/radio-cards.mjs +36 -0
- package/dist/radio-cards.mjs.map +1 -0
- package/dist/radio-group.d.mts +4 -4
- package/dist/radio-group.d.ts +4 -4
- package/dist/radio-group.js +3 -9
- package/dist/radio-group.js.map +1 -1
- package/dist/radio-group.mjs +3 -9
- package/dist/radio-group.mjs.map +1 -1
- package/dist/radio.d.mts +8 -0
- package/dist/radio.d.ts +8 -0
- package/dist/radio.js +35 -0
- package/dist/radio.js.map +1 -0
- package/dist/radio.mjs +35 -0
- package/dist/radio.mjs.map +1 -0
- package/dist/resizable.d.mts +2 -2
- package/dist/resizable.d.ts +2 -2
- package/dist/resizable.js +3 -5
- package/dist/resizable.js.map +1 -1
- package/dist/resizable.mjs +3 -5
- package/dist/resizable.mjs.map +1 -1
- package/dist/scroll-area.d.mts +4 -4
- package/dist/scroll-area.d.ts +4 -4
- package/dist/scroll-area.js +23 -29
- package/dist/scroll-area.js.map +1 -1
- package/dist/scroll-area.mjs +23 -29
- package/dist/scroll-area.mjs.map +1 -1
- package/dist/section.js +4 -6
- package/dist/section.js.map +1 -1
- package/dist/section.mjs +4 -6
- package/dist/section.mjs.map +1 -1
- package/dist/segmented.d.mts +22 -0
- package/dist/segmented.d.ts +22 -0
- package/dist/segmented.js +126 -0
- package/dist/segmented.js.map +1 -0
- package/dist/segmented.mjs +126 -0
- package/dist/segmented.mjs.map +1 -0
- package/dist/select.d.mts +17 -17
- package/dist/select.d.ts +17 -17
- package/dist/select.js +2 -2
- package/dist/select.mjs +1 -1
- package/dist/separator.d.mts +2 -2
- package/dist/separator.d.ts +2 -2
- package/dist/separator.js +1 -5
- package/dist/separator.js.map +1 -1
- package/dist/separator.mjs +1 -5
- package/dist/separator.mjs.map +1 -1
- package/dist/sheet.d.mts +9 -9
- package/dist/sheet.d.ts +9 -9
- package/dist/sheet.js +35 -76
- package/dist/sheet.js.map +1 -1
- package/dist/sheet.mjs +35 -76
- package/dist/sheet.mjs.map +1 -1
- package/dist/skeleton.js +1 -7
- package/dist/skeleton.js.map +1 -1
- package/dist/skeleton.mjs +1 -7
- package/dist/skeleton.mjs.map +1 -1
- package/dist/slider.d.mts +2 -2
- package/dist/slider.d.ts +2 -2
- package/dist/slider.js +10 -5
- package/dist/slider.js.map +1 -1
- package/dist/slider.mjs +10 -5
- package/dist/slider.mjs.map +1 -1
- package/dist/sonner.js +1 -6
- package/dist/sonner.js.map +1 -1
- package/dist/sonner.mjs +1 -6
- package/dist/sonner.mjs.map +1 -1
- package/dist/spinner.d.mts +8 -0
- package/dist/spinner.d.ts +8 -0
- package/dist/spinner.js +8 -0
- package/dist/spinner.js.map +1 -0
- package/dist/spinner.mjs +8 -0
- package/dist/spinner.mjs.map +1 -0
- package/dist/strong.js +4 -6
- package/dist/strong.js.map +1 -1
- package/dist/strong.mjs +4 -6
- package/dist/strong.mjs.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/styles.css.map +1 -1
- package/dist/switch.d.mts +2 -2
- package/dist/switch.d.ts +2 -2
- package/dist/switch.js +2 -1
- package/dist/switch.js.map +1 -1
- package/dist/switch.mjs +2 -1
- package/dist/switch.mjs.map +1 -1
- package/dist/table.js +22 -80
- package/dist/table.js.map +1 -1
- package/dist/table.mjs +22 -80
- package/dist/table.mjs.map +1 -1
- package/dist/tabs.d.mts +7 -7
- package/dist/tabs.d.ts +7 -7
- package/dist/tabs.js +4 -2
- package/dist/tabs.js.map +1 -1
- package/dist/tabs.mjs +4 -2
- package/dist/tabs.mjs.map +1 -1
- package/dist/text.js +4 -6
- package/dist/text.js.map +1 -1
- package/dist/text.mjs +4 -6
- package/dist/text.mjs.map +1 -1
- package/dist/textarea.js +14 -15
- package/dist/textarea.js.map +1 -1
- package/dist/textarea.mjs +14 -15
- package/dist/textarea.mjs.map +1 -1
- package/dist/toggle-group.d.mts +2 -2
- package/dist/toggle-group.d.ts +2 -2
- package/dist/toggle-group.js +41 -34
- package/dist/toggle-group.js.map +1 -1
- package/dist/toggle-group.mjs +40 -33
- package/dist/toggle-group.mjs.map +1 -1
- package/dist/toggle.d.mts +2 -2
- package/dist/toggle.d.ts +2 -2
- package/dist/toggle.js +2 -2
- package/dist/toggle.mjs +1 -1
- package/dist/tooltip.d.mts +7 -7
- package/dist/tooltip.d.ts +7 -7
- package/dist/tooltip.js +15 -20
- package/dist/tooltip.js.map +1 -1
- package/dist/tooltip.mjs +15 -20
- package/dist/tooltip.mjs.map +1 -1
- package/package.json +43 -6
- package/src/accordion.tsx +53 -43
- package/src/alert-dialog.tsx +73 -92
- package/src/alert.tsx +24 -41
- package/src/aspect-ratio.tsx +2 -1
- package/src/avatar.tsx +19 -36
- package/src/badge.tsx +3 -7
- package/src/blockquote.tsx +9 -8
- package/src/box.tsx +7 -6
- package/src/breadcrumb.tsx +54 -63
- package/src/button.tsx +42 -16
- package/src/calendar.tsx +6 -22
- package/src/card.tsx +40 -56
- package/src/carousel.tsx +95 -81
- package/src/checkbox-cards.tsx +68 -0
- package/src/checkbox-group.primitive.tsx +199 -0
- package/src/checkbox-group.tsx +57 -0
- package/src/checkbox.tsx +10 -6
- package/src/code.tsx +8 -6
- package/src/collapsible.tsx +4 -3
- package/src/command.tsx +53 -90
- package/src/container.tsx +8 -6
- package/src/context-menu.tsx +163 -175
- package/src/data-table.tsx +26 -43
- package/src/dialog.tsx +58 -77
- package/src/drawer.tsx +48 -78
- package/src/dropdown-menu.tsx +143 -154
- package/src/em.tsx +8 -6
- package/src/form.tsx +61 -86
- package/src/heading.tsx +8 -6
- package/src/hover-card.tsx +22 -20
- package/src/input-otp.tsx +50 -48
- package/src/input.tsx +14 -15
- package/src/kbd.tsx +18 -16
- package/src/label.tsx +5 -5
- package/src/menubar.tsx +133 -149
- package/src/navigation-menu.tsx +110 -114
- package/src/pagination.tsx +26 -48
- package/src/popover.tsx +29 -31
- package/src/pre.tsx +8 -6
- package/src/progress.tsx +6 -9
- package/src/quote.tsx +8 -6
- package/src/radio-cards.tsx +50 -0
- package/src/radio-group.tsx +14 -24
- package/src/radio.tsx +44 -0
- package/src/resizable.tsx +5 -7
- package/src/scroll-area.tsx +29 -40
- package/src/section.tsx +8 -6
- package/src/segmented.tsx +176 -0
- package/src/select.tsx +106 -115
- package/src/separator.tsx +7 -14
- package/src/sheet.tsx +50 -76
- package/src/skeleton.tsx +2 -6
- package/src/slider.tsx +12 -10
- package/src/sonner.tsx +3 -7
- package/src/spinner.tsx +71 -0
- package/src/strong.tsx +8 -6
- package/src/switch.tsx +7 -6
- package/src/table.tsx +60 -82
- package/src/tabs.tsx +20 -18
- package/src/text.tsx +8 -8
- package/src/textarea.tsx +16 -14
- package/src/toggle-group.tsx +59 -58
- package/src/toggle.tsx +14 -13
- package/src/tooltip.tsx +28 -30
- package/dist/chunk-3BDLWZ3W.js +0 -158
- package/dist/chunk-3BDLWZ3W.js.map +0 -1
- package/dist/chunk-43YGVOCO.js +0 -135
- package/dist/chunk-43YGVOCO.js.map +0 -1
- package/dist/chunk-AJLEALVP.mjs +0 -112
- package/dist/chunk-AJLEALVP.mjs.map +0 -1
- package/dist/chunk-D6NQEMTJ.js +0 -112
- package/dist/chunk-D6NQEMTJ.js.map +0 -1
- package/dist/chunk-FATZHRHR.mjs +0 -56
- package/dist/chunk-FATZHRHR.mjs.map +0 -1
- package/dist/chunk-GRKABVK4.js.map +0 -1
- package/dist/chunk-JOJW7BBY.js.map +0 -1
- package/dist/chunk-KV4VL2ZF.mjs +0 -135
- package/dist/chunk-KV4VL2ZF.mjs.map +0 -1
- package/dist/chunk-MJDKD2K4.mjs.map +0 -1
- package/dist/chunk-NCEN3XBK.mjs +0 -158
- package/dist/chunk-NCEN3XBK.mjs.map +0 -1
- package/dist/chunk-PIU627A3.mjs.map +0 -1
- package/dist/chunk-PKB2G726.js.map +0 -1
package/src/navigation-menu.tsx
CHANGED
|
@@ -9,7 +9,7 @@ import { cn, cva } from "./utils";
|
|
|
9
9
|
* Variant: NavigationMenu
|
|
10
10
|
* -------------------------------------------------------------------------- */
|
|
11
11
|
|
|
12
|
-
const
|
|
12
|
+
const navigationMenuTriggerVariants = cva({
|
|
13
13
|
base: "bg-background hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent/50 data-[active]:bg-accent/50 group inline-flex h-10 w-max items-center justify-center rounded-md px-3 py-2 text-sm font-medium transition-colors focus:outline-none disabled:pointer-events-none disabled:opacity-50",
|
|
14
14
|
});
|
|
15
15
|
|
|
@@ -17,166 +17,162 @@ const navigationMenuTriggerStyle = cva({
|
|
|
17
17
|
* Component: NavigationMenu
|
|
18
18
|
* -------------------------------------------------------------------------- */
|
|
19
19
|
|
|
20
|
-
type
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
));
|
|
20
|
+
type NavigationMenuElement = React.ElementRef<typeof NavigationMenuPrimitive.Root>;
|
|
21
|
+
type NavigationMenuProps = React.ComponentPropsWithoutRef<typeof NavigationMenuPrimitive.Root>;
|
|
22
|
+
|
|
23
|
+
const NavigationMenu = React.forwardRef<NavigationMenuElement, NavigationMenuProps>(
|
|
24
|
+
({ className, children, ...props }, ref) => (
|
|
25
|
+
<NavigationMenuPrimitive.Root
|
|
26
|
+
ref={ref}
|
|
27
|
+
className={cn("relative z-10 flex max-w-max flex-1 items-center justify-center", className)}
|
|
28
|
+
{...props}
|
|
29
|
+
>
|
|
30
|
+
{children}
|
|
31
|
+
<NavigationMenuViewport />
|
|
32
|
+
</NavigationMenuPrimitive.Root>
|
|
33
|
+
),
|
|
34
|
+
);
|
|
35
|
+
|
|
37
36
|
NavigationMenu.displayName = NavigationMenuPrimitive.Root.displayName;
|
|
38
37
|
|
|
39
38
|
/* -----------------------------------------------------------------------------
|
|
40
39
|
* Component: NavigationMenuList
|
|
41
40
|
* -------------------------------------------------------------------------- */
|
|
42
41
|
|
|
43
|
-
type
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
));
|
|
42
|
+
type NavigationMenuListElement = React.ElementRef<typeof NavigationMenuPrimitive.List>;
|
|
43
|
+
type NavigationMenuListProps = React.ComponentPropsWithoutRef<typeof NavigationMenuPrimitive.List>;
|
|
44
|
+
|
|
45
|
+
const NavigationMenuList = React.forwardRef<NavigationMenuListElement, NavigationMenuListProps>(
|
|
46
|
+
({ className, ...props }, ref) => (
|
|
47
|
+
<NavigationMenuPrimitive.List
|
|
48
|
+
ref={ref}
|
|
49
|
+
className={cn("group flex flex-1 list-none items-center justify-center space-x-1", className)}
|
|
50
|
+
{...props}
|
|
51
|
+
/>
|
|
52
|
+
),
|
|
53
|
+
);
|
|
54
|
+
|
|
57
55
|
NavigationMenuList.displayName = NavigationMenuPrimitive.List.displayName;
|
|
58
56
|
|
|
59
57
|
/* -----------------------------------------------------------------------------
|
|
60
58
|
* Component: NavigationMenuItem
|
|
61
59
|
* -------------------------------------------------------------------------- */
|
|
62
60
|
|
|
63
|
-
type NavigationMenuItemProps = NavigationMenuPrimitive.
|
|
61
|
+
type NavigationMenuItemProps = React.ComponentPropsWithoutRef<typeof NavigationMenuPrimitive.Item>;
|
|
62
|
+
|
|
64
63
|
const NavigationMenuItem = NavigationMenuPrimitive.Item;
|
|
65
64
|
|
|
66
65
|
/* -----------------------------------------------------------------------------
|
|
67
66
|
* Component: NavigationMenuContent
|
|
68
67
|
* -------------------------------------------------------------------------- */
|
|
69
68
|
|
|
70
|
-
type
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
));
|
|
69
|
+
type NavigationMenuTriggerElement = React.ElementRef<typeof NavigationMenuPrimitive.Trigger>;
|
|
70
|
+
type NavigationMenuTriggerProps = React.ComponentPropsWithoutRef<typeof NavigationMenuPrimitive.Trigger>;
|
|
71
|
+
|
|
72
|
+
const NavigationMenuTrigger = React.forwardRef<NavigationMenuTriggerElement, NavigationMenuTriggerProps>(
|
|
73
|
+
({ className, children, ...props }, ref) => (
|
|
74
|
+
<NavigationMenuPrimitive.Trigger
|
|
75
|
+
ref={ref}
|
|
76
|
+
className={navigationMenuTriggerVariants({
|
|
77
|
+
className: ["group", className],
|
|
78
|
+
})}
|
|
79
|
+
{...props}
|
|
80
|
+
>
|
|
81
|
+
{children}{" "}
|
|
82
|
+
<ChevronDownIcon
|
|
83
|
+
className={cn("relative top-px ml-1 h-3 w-3 transition duration-300 group-data-[state=open]:rotate-180")}
|
|
84
|
+
aria-hidden="true"
|
|
85
|
+
/>
|
|
86
|
+
</NavigationMenuPrimitive.Trigger>
|
|
87
|
+
),
|
|
88
|
+
);
|
|
89
|
+
|
|
92
90
|
NavigationMenuTrigger.displayName = NavigationMenuPrimitive.Trigger.displayName;
|
|
93
91
|
|
|
94
92
|
/* -----------------------------------------------------------------------------
|
|
95
93
|
* Component: NavigationMenuContent
|
|
96
94
|
* -------------------------------------------------------------------------- */
|
|
97
95
|
|
|
98
|
-
type
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
)
|
|
96
|
+
type NavigationMenuContentElement = React.ElementRef<typeof NavigationMenuPrimitive.Content>;
|
|
97
|
+
type NavigationMenuContentProps = React.ComponentPropsWithoutRef<typeof NavigationMenuPrimitive.Content>;
|
|
98
|
+
|
|
99
|
+
const NavigationMenuContent = React.forwardRef<NavigationMenuContentElement, NavigationMenuContentProps>(
|
|
100
|
+
({ className, ...props }, ref) => (
|
|
101
|
+
<NavigationMenuPrimitive.Content
|
|
102
|
+
ref={ref}
|
|
103
|
+
className={cn(
|
|
104
|
+
"data-[motion^=from-]:animate-in data-[motion^=from-]:fade-in data-[motion=from-end]:slide-in-from-right-52 data-[motion=from-start]:slide-in-from-left-52 data-[motion^=to-]:animate-out data-[motion^=to-]:fade-out data-[motion=to-end]:slide-out-to-right-52 data-[motion=to-start]:slide-out-to-left-52 left-0 top-0 w-full focus:outline-none md:absolute md:w-auto",
|
|
105
|
+
className,
|
|
106
|
+
)}
|
|
107
|
+
{...props}
|
|
108
|
+
/>
|
|
109
|
+
),
|
|
110
|
+
);
|
|
111
|
+
|
|
113
112
|
NavigationMenuContent.displayName = NavigationMenuPrimitive.Content.displayName;
|
|
114
113
|
|
|
115
114
|
/* -----------------------------------------------------------------------------
|
|
116
115
|
* Component: NavigationMenuLink
|
|
117
116
|
* -------------------------------------------------------------------------- */
|
|
118
117
|
|
|
119
|
-
type NavigationMenuLinkProps = NavigationMenuPrimitive.
|
|
118
|
+
type NavigationMenuLinkProps = React.ComponentPropsWithoutRef<typeof NavigationMenuPrimitive.Link>;
|
|
119
|
+
|
|
120
120
|
const NavigationMenuLink = NavigationMenuPrimitive.Link;
|
|
121
121
|
|
|
122
122
|
/* -----------------------------------------------------------------------------
|
|
123
123
|
* Component: NavigationMenuViewport
|
|
124
124
|
* -------------------------------------------------------------------------- */
|
|
125
125
|
|
|
126
|
-
type
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
</div>
|
|
146
|
-
));
|
|
147
|
-
NavigationMenuViewport.displayName =
|
|
148
|
-
NavigationMenuPrimitive.Viewport.displayName;
|
|
126
|
+
type NavigationMenuViewportElement = React.ElementRef<typeof NavigationMenuPrimitive.Viewport>;
|
|
127
|
+
type NavigationMenuViewportProps = React.ComponentPropsWithoutRef<typeof NavigationMenuPrimitive.Viewport>;
|
|
128
|
+
|
|
129
|
+
const NavigationMenuViewport = React.forwardRef<NavigationMenuViewportElement, NavigationMenuViewportProps>(
|
|
130
|
+
({ className, ...props }, ref) => (
|
|
131
|
+
<div className={cn("perspective-[2000px] absolute left-0 top-full flex justify-center")}>
|
|
132
|
+
<NavigationMenuPrimitive.Viewport
|
|
133
|
+
className={cn(
|
|
134
|
+
"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=open]:zoom-in-90 data-[state=closed]:animate-out data-[state=closed]:zoom-out-95 relative mt-1.5 h-[var(--radix-navigation-menu-viewport-height)] w-full origin-[top_center] overflow-hidden rounded-md border shadow md:w-[var(--radix-navigation-menu-viewport-width)]",
|
|
135
|
+
className,
|
|
136
|
+
)}
|
|
137
|
+
ref={ref}
|
|
138
|
+
{...props}
|
|
139
|
+
/>
|
|
140
|
+
</div>
|
|
141
|
+
),
|
|
142
|
+
);
|
|
143
|
+
|
|
144
|
+
NavigationMenuViewport.displayName = NavigationMenuPrimitive.Viewport.displayName;
|
|
149
145
|
|
|
150
146
|
/* -----------------------------------------------------------------------------
|
|
151
147
|
* Component: NavigationMenuIndicator
|
|
152
148
|
* -------------------------------------------------------------------------- */
|
|
153
149
|
|
|
154
|
-
type
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
)
|
|
171
|
-
|
|
172
|
-
|
|
150
|
+
type NavigationMenuIndicatorElement = React.ElementRef<typeof NavigationMenuPrimitive.Indicator>;
|
|
151
|
+
type NavigationMenuIndicatorProps = React.ComponentPropsWithoutRef<typeof NavigationMenuPrimitive.Indicator>;
|
|
152
|
+
|
|
153
|
+
const NavigationMenuIndicator = React.forwardRef<NavigationMenuIndicatorElement, NavigationMenuIndicatorProps>(
|
|
154
|
+
({ className, ...props }, ref) => (
|
|
155
|
+
<NavigationMenuPrimitive.Indicator
|
|
156
|
+
ref={ref}
|
|
157
|
+
className={cn(
|
|
158
|
+
"data-[state=visible]:animate-in data-[state=visible]:fade-in data-[state=hidden]:animate-out data-[state=hidden]:fade-out top-full z-[1] flex h-1.5 items-end justify-center overflow-hidden transition",
|
|
159
|
+
className,
|
|
160
|
+
)}
|
|
161
|
+
{...props}
|
|
162
|
+
>
|
|
163
|
+
<div className="bg-border relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm shadow-md" />
|
|
164
|
+
</NavigationMenuPrimitive.Indicator>
|
|
165
|
+
),
|
|
166
|
+
);
|
|
167
|
+
|
|
168
|
+
NavigationMenuIndicator.displayName = NavigationMenuPrimitive.Indicator.displayName;
|
|
173
169
|
|
|
174
170
|
/* -----------------------------------------------------------------------------
|
|
175
171
|
* Exports
|
|
176
172
|
* -------------------------------------------------------------------------- */
|
|
177
173
|
|
|
178
174
|
export {
|
|
179
|
-
|
|
175
|
+
navigationMenuTriggerVariants,
|
|
180
176
|
NavigationMenu,
|
|
181
177
|
NavigationMenuList,
|
|
182
178
|
NavigationMenuItem,
|
package/src/pagination.tsx
CHANGED
|
@@ -1,9 +1,5 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
import {
|
|
3
|
-
ChevronLeftIcon,
|
|
4
|
-
ChevronRightIcon,
|
|
5
|
-
DotsHorizontalIcon,
|
|
6
|
-
} from "@radix-ui/react-icons";
|
|
2
|
+
import { ChevronLeftIcon, ChevronRightIcon, DotsHorizontalIcon } from "@radix-ui/react-icons";
|
|
7
3
|
import { cn } from "./utils";
|
|
8
4
|
import { type ButtonProps, buttonVariants } from "./button";
|
|
9
5
|
|
|
@@ -12,10 +8,8 @@ import { type ButtonProps, buttonVariants } from "./button";
|
|
|
12
8
|
* -------------------------------------------------------------------------- */
|
|
13
9
|
|
|
14
10
|
type PaginationProps = React.HTMLAttributes<HTMLElement>;
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
...props
|
|
18
|
-
}: PaginationProps): React.JSX.Element {
|
|
11
|
+
|
|
12
|
+
function Pagination({ className, ...props }: PaginationProps): React.JSX.Element {
|
|
19
13
|
return (
|
|
20
14
|
<nav
|
|
21
15
|
role="navigation"
|
|
@@ -30,36 +24,35 @@ function Pagination({
|
|
|
30
24
|
* Component: PaginationContent
|
|
31
25
|
* -------------------------------------------------------------------------- */
|
|
32
26
|
|
|
27
|
+
type PaginationContentElement = HTMLUListElement;
|
|
33
28
|
type PaginationContentProps = React.HTMLAttributes<HTMLUListElement>;
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
{...props}
|
|
42
|
-
/>
|
|
43
|
-
));
|
|
29
|
+
|
|
30
|
+
const PaginationContent = React.forwardRef<PaginationContentElement, PaginationContentProps>(
|
|
31
|
+
({ className, ...props }, ref) => (
|
|
32
|
+
<ul ref={ref} className={cn("flex flex-row items-center gap-1", className)} {...props} />
|
|
33
|
+
),
|
|
34
|
+
);
|
|
35
|
+
|
|
44
36
|
PaginationContent.displayName = "PaginationContent";
|
|
45
37
|
|
|
46
38
|
/* -----------------------------------------------------------------------------
|
|
47
39
|
* Component: PaginationItem
|
|
48
40
|
* -------------------------------------------------------------------------- */
|
|
49
41
|
|
|
42
|
+
type PaginationItemElement = HTMLLIElement;
|
|
50
43
|
type PaginationItemProps = React.LiHTMLAttributes<HTMLLIElement>;
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
44
|
+
|
|
45
|
+
const PaginationItem = React.forwardRef<PaginationItemElement, PaginationItemProps>((props, ref) => (
|
|
46
|
+
<li ref={ref} {...props} />
|
|
47
|
+
));
|
|
48
|
+
|
|
54
49
|
PaginationItem.displayName = "PaginationItem";
|
|
55
50
|
|
|
56
51
|
/* -----------------------------------------------------------------------------
|
|
57
52
|
* Component: PaginationLink
|
|
58
53
|
* -------------------------------------------------------------------------- */
|
|
59
54
|
|
|
60
|
-
interface PaginationLinkProps
|
|
61
|
-
extends React.AnchorHTMLAttributes<HTMLAnchorElement>,
|
|
62
|
-
Pick<ButtonProps, "size"> {
|
|
55
|
+
interface PaginationLinkProps extends React.AnchorHTMLAttributes<HTMLAnchorElement>, Pick<ButtonProps, "size"> {
|
|
63
56
|
isActive?: boolean;
|
|
64
57
|
}
|
|
65
58
|
|
|
@@ -90,10 +83,8 @@ function PaginationLink({
|
|
|
90
83
|
* -------------------------------------------------------------------------- */
|
|
91
84
|
|
|
92
85
|
type PaginationPreviousProps = PaginationLinkProps;
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
...props
|
|
96
|
-
}: PaginationPreviousProps): React.JSX.Element {
|
|
86
|
+
|
|
87
|
+
function PaginationPrevious({ className, ...props }: PaginationPreviousProps): React.JSX.Element {
|
|
97
88
|
return (
|
|
98
89
|
<PaginationLink
|
|
99
90
|
aria-label="Go to previous page"
|
|
@@ -112,17 +103,10 @@ function PaginationPrevious({
|
|
|
112
103
|
* -------------------------------------------------------------------------- */
|
|
113
104
|
|
|
114
105
|
type PaginationNextProps = PaginationLinkProps;
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
...props
|
|
118
|
-
}: PaginationNextProps): React.JSX.Element {
|
|
106
|
+
|
|
107
|
+
function PaginationNext({ className, ...props }: PaginationNextProps): React.JSX.Element {
|
|
119
108
|
return (
|
|
120
|
-
<PaginationLink
|
|
121
|
-
aria-label="Go to next page"
|
|
122
|
-
size="default"
|
|
123
|
-
className={cn("gap-1 pr-2.5", className)}
|
|
124
|
-
{...props}
|
|
125
|
-
>
|
|
109
|
+
<PaginationLink aria-label="Go to next page" size="default" className={cn("gap-1 pr-2.5", className)} {...props}>
|
|
126
110
|
<span>Next</span>
|
|
127
111
|
<ChevronRightIcon className="size-4" />
|
|
128
112
|
</PaginationLink>
|
|
@@ -134,16 +118,10 @@ function PaginationNext({
|
|
|
134
118
|
* -------------------------------------------------------------------------- */
|
|
135
119
|
|
|
136
120
|
type PaginationEllipsisProps = React.HTMLAttributes<HTMLSpanElement>;
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
...props
|
|
140
|
-
}: PaginationEllipsisProps): React.JSX.Element {
|
|
121
|
+
|
|
122
|
+
function PaginationEllipsis({ className, ...props }: PaginationEllipsisProps): React.JSX.Element {
|
|
141
123
|
return (
|
|
142
|
-
<span
|
|
143
|
-
aria-hidden
|
|
144
|
-
className={cn("flex size-10 items-center justify-center", className)}
|
|
145
|
-
{...props}
|
|
146
|
-
>
|
|
124
|
+
<span aria-hidden className={cn("flex size-10 items-center justify-center", className)} {...props}>
|
|
147
125
|
<DotsHorizontalIcon className="size-4" />
|
|
148
126
|
<span className="sr-only">More pages</span>
|
|
149
127
|
</span>
|
package/src/popover.tsx
CHANGED
|
@@ -8,62 +8,60 @@ import { cn } from "./utils";
|
|
|
8
8
|
* Component: Popover
|
|
9
9
|
* -------------------------------------------------------------------------- */
|
|
10
10
|
|
|
11
|
-
type PopoverProps = PopoverPrimitive.
|
|
11
|
+
type PopoverProps = React.ComponentProps<typeof PopoverPrimitive.Root>;
|
|
12
12
|
const Popover = PopoverPrimitive.Root;
|
|
13
13
|
|
|
14
14
|
/* -----------------------------------------------------------------------------
|
|
15
15
|
* Component: PopoverTrigger
|
|
16
16
|
* -------------------------------------------------------------------------- */
|
|
17
17
|
|
|
18
|
-
type PopoverTriggerProps = PopoverPrimitive.
|
|
18
|
+
type PopoverTriggerProps = React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Trigger>;
|
|
19
19
|
const PopoverTrigger = PopoverPrimitive.Trigger;
|
|
20
20
|
|
|
21
21
|
/* -----------------------------------------------------------------------------
|
|
22
22
|
* Component: PopoverAnchor
|
|
23
23
|
* -------------------------------------------------------------------------- */
|
|
24
24
|
|
|
25
|
-
type PopoverAnchorProps = PopoverPrimitive.
|
|
25
|
+
type PopoverAnchorProps = React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Anchor>;
|
|
26
26
|
const PopoverAnchor = PopoverPrimitive.Anchor;
|
|
27
27
|
|
|
28
28
|
/* -----------------------------------------------------------------------------
|
|
29
29
|
* Component: PopoverContent
|
|
30
30
|
* -------------------------------------------------------------------------- */
|
|
31
31
|
|
|
32
|
-
type
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
)
|
|
32
|
+
type PopoverContentElement = React.ElementRef<typeof PopoverPrimitive.Content>;
|
|
33
|
+
type PopoverContentProps = React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Content>;
|
|
34
|
+
|
|
35
|
+
const PopoverContent = React.forwardRef<PopoverContentElement, PopoverContentProps>(
|
|
36
|
+
({ className, align = "center", sideOffset = 4, ...props }, ref) => (
|
|
37
|
+
<PopoverPrimitive.Portal>
|
|
38
|
+
<PopoverPrimitive.Content
|
|
39
|
+
ref={ref}
|
|
40
|
+
align={align}
|
|
41
|
+
sideOffset={sideOffset}
|
|
42
|
+
className={cn(
|
|
43
|
+
"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=open]:data-[side=top]:slide-in-from-bottom-2 data-[state=open]:data-[side=right]:slide-in-from-left-2 data-[state=open]:data-[side=bottom]:slide-in-from-top-2 data-[state=open]:data-[side=left]:slide-in-from-right-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=closed]:data-[side=top]:slide-out-to-bottom-2 data-[state=closed]:data-[side=left]:slide-out-to-right-2 data-[state=closed]:data-[side=bottom]:slide-out-to-top-2 data-[state=closed]:data-[side=right]:slide-out-to-left-2 z-50 min-w-[8rem] rounded-md border p-4 shadow-md focus:outline-none",
|
|
44
|
+
className,
|
|
45
|
+
)}
|
|
46
|
+
{...props}
|
|
47
|
+
/>
|
|
48
|
+
</PopoverPrimitive.Portal>
|
|
49
|
+
),
|
|
50
|
+
);
|
|
51
|
+
|
|
50
52
|
PopoverContent.displayName = PopoverPrimitive.Content.displayName;
|
|
51
53
|
|
|
52
54
|
/* -----------------------------------------------------------------------------
|
|
53
55
|
* Component: PopoverArrow
|
|
54
56
|
* -------------------------------------------------------------------------- */
|
|
55
57
|
|
|
56
|
-
type
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
<PopoverPrimitive.Arrow
|
|
62
|
-
ref={ref}
|
|
63
|
-
className={cn("fill-popover", className)}
|
|
64
|
-
{...props}
|
|
65
|
-
/>
|
|
58
|
+
type PopoverArrowElement = React.ElementRef<typeof PopoverPrimitive.Arrow>;
|
|
59
|
+
type PopoverArrowProps = React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Arrow>;
|
|
60
|
+
|
|
61
|
+
const PopoverArrow = React.forwardRef<PopoverArrowElement, PopoverArrowProps>(({ className, ...props }, ref) => (
|
|
62
|
+
<PopoverPrimitive.Arrow ref={ref} className={cn("fill-popover", className)} {...props} />
|
|
66
63
|
));
|
|
64
|
+
|
|
67
65
|
PopoverArrow.displayName = PopoverPrimitive.Arrow.displayName;
|
|
68
66
|
|
|
69
67
|
/* -----------------------------------------------------------------------------
|
package/src/pre.tsx
CHANGED
|
@@ -5,16 +5,18 @@ import { Slot } from "@radix-ui/react-slot";
|
|
|
5
5
|
* Component: Pre
|
|
6
6
|
* -------------------------------------------------------------------------- */
|
|
7
7
|
|
|
8
|
+
type PreElement = HTMLPreElement;
|
|
9
|
+
|
|
8
10
|
interface PreProps extends React.HTMLAttributes<HTMLPreElement> {
|
|
9
11
|
asChild?: boolean;
|
|
10
12
|
}
|
|
11
|
-
const Pre = React.forwardRef<HTMLPreElement, PreProps>(
|
|
12
|
-
({ asChild, ...props }, ref) => {
|
|
13
|
-
const Comp = asChild ? Slot : "pre";
|
|
14
13
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
14
|
+
const Pre = React.forwardRef<PreElement, PreProps>(({ asChild, ...props }, ref) => {
|
|
15
|
+
const Component = asChild ? Slot : "pre";
|
|
16
|
+
|
|
17
|
+
return <Component ref={ref} {...props} />;
|
|
18
|
+
});
|
|
19
|
+
|
|
18
20
|
Pre.displayName = "Pre";
|
|
19
21
|
|
|
20
22
|
/* -----------------------------------------------------------------------------
|
package/src/progress.tsx
CHANGED
|
@@ -8,17 +8,13 @@ import { cn } from "./utils";
|
|
|
8
8
|
* Component: Progress
|
|
9
9
|
* -------------------------------------------------------------------------- */
|
|
10
10
|
|
|
11
|
-
type
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
>(({ className, value, ...props }, ref) => (
|
|
11
|
+
type ProgressElement = React.ElementRef<typeof ProgressPrimitive.Root>;
|
|
12
|
+
type ProgressProps = React.ComponentPropsWithoutRef<typeof ProgressPrimitive.Root>;
|
|
13
|
+
|
|
14
|
+
const Progress = React.forwardRef<ProgressElement, ProgressProps>(({ className, value, ...props }, ref) => (
|
|
16
15
|
<ProgressPrimitive.Root
|
|
17
16
|
ref={ref}
|
|
18
|
-
className={cn(
|
|
19
|
-
"bg-primary/20 relative h-2 w-full overflow-hidden rounded-full",
|
|
20
|
-
className,
|
|
21
|
-
)}
|
|
17
|
+
className={cn("bg-primary/20 relative h-2 w-full overflow-hidden rounded-full", className)}
|
|
22
18
|
{...props}
|
|
23
19
|
>
|
|
24
20
|
<ProgressPrimitive.Indicator
|
|
@@ -29,6 +25,7 @@ const Progress = React.forwardRef<
|
|
|
29
25
|
/>
|
|
30
26
|
</ProgressPrimitive.Root>
|
|
31
27
|
));
|
|
28
|
+
|
|
32
29
|
Progress.displayName = ProgressPrimitive.Root.displayName;
|
|
33
30
|
|
|
34
31
|
/* -----------------------------------------------------------------------------
|
package/src/quote.tsx
CHANGED
|
@@ -5,16 +5,18 @@ import { Slot } from "@radix-ui/react-slot";
|
|
|
5
5
|
* Component: Quote
|
|
6
6
|
* -------------------------------------------------------------------------- */
|
|
7
7
|
|
|
8
|
+
type QuoteElement = HTMLQuoteElement;
|
|
9
|
+
|
|
8
10
|
interface QuoteProps extends React.QuoteHTMLAttributes<HTMLQuoteElement> {
|
|
9
11
|
asChild?: boolean;
|
|
10
12
|
}
|
|
11
|
-
const Quote = React.forwardRef<HTMLQuoteElement, QuoteProps>(
|
|
12
|
-
({ asChild, ...props }, ref) => {
|
|
13
|
-
const Comp = asChild ? Slot : "q";
|
|
14
13
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
14
|
+
const Quote = React.forwardRef<QuoteElement, QuoteProps>(({ asChild, ...props }, ref) => {
|
|
15
|
+
const Component = asChild ? Slot : "q";
|
|
16
|
+
|
|
17
|
+
return <Component ref={ref} {...props} />;
|
|
18
|
+
});
|
|
19
|
+
|
|
18
20
|
Quote.displayName = "Quote";
|
|
19
21
|
|
|
20
22
|
/* -----------------------------------------------------------------------------
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import * as React from "react";
|
|
4
|
+
import * as RadioGroupPrimitive from "@radix-ui/react-radio-group";
|
|
5
|
+
import { cn } from "./utils";
|
|
6
|
+
|
|
7
|
+
/* -----------------------------------------------------------------------------
|
|
8
|
+
* Component: RadioCards
|
|
9
|
+
* -------------------------------------------------------------------------- */
|
|
10
|
+
|
|
11
|
+
type RadioCardsElement = React.ElementRef<typeof RadioGroupPrimitive.Root>;
|
|
12
|
+
type RadioCardsProps = React.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Root>;
|
|
13
|
+
|
|
14
|
+
const RadioCards = React.forwardRef<RadioCardsElement, RadioCardsProps>(({ className, ...props }, ref) => {
|
|
15
|
+
return <RadioGroupPrimitive.Root className={cn("grid gap-2", className)} {...props} ref={ref} />;
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
RadioCards.displayName = RadioGroupPrimitive.Root.displayName;
|
|
19
|
+
|
|
20
|
+
/* -----------------------------------------------------------------------------
|
|
21
|
+
* Component: RadioCardsItem
|
|
22
|
+
* -------------------------------------------------------------------------- */
|
|
23
|
+
|
|
24
|
+
type RadioCardsItemElement = React.ElementRef<typeof RadioGroupPrimitive.Item>;
|
|
25
|
+
type RadioCardsItemProps = React.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Item>;
|
|
26
|
+
|
|
27
|
+
const RadioCardsItem = React.forwardRef<RadioCardsItemElement, RadioCardsItemProps>(({ className, ...props }, ref) => {
|
|
28
|
+
return (
|
|
29
|
+
<RadioGroupPrimitive.Item
|
|
30
|
+
ref={ref}
|
|
31
|
+
className={cn(
|
|
32
|
+
"border-compound/70 text-compound-foreground group peer flex cursor-default items-center justify-center rounded-md border p-4",
|
|
33
|
+
"hover:border-compound",
|
|
34
|
+
"aria-checked:border-primary",
|
|
35
|
+
"disabled:cursor-not-allowed disabled:opacity-50",
|
|
36
|
+
"focus-visible:bg-primary/10 focus-visible:ring-ring focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2",
|
|
37
|
+
className,
|
|
38
|
+
)}
|
|
39
|
+
{...props}
|
|
40
|
+
/>
|
|
41
|
+
);
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
RadioCardsItem.displayName = RadioGroupPrimitive.Item.displayName;
|
|
45
|
+
|
|
46
|
+
/* -----------------------------------------------------------------------------
|
|
47
|
+
* Exports
|
|
48
|
+
* -------------------------------------------------------------------------- */
|
|
49
|
+
|
|
50
|
+
export { RadioCards, RadioCardsItem, type RadioCardsProps, type RadioCardsItemProps };
|