@codefast/ui 0.0.8 → 0.0.10
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 +8 -4
- package/dist/accordion.d.ts +8 -4
- 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 +17 -8
- package/dist/alert-dialog.d.ts +17 -8
- 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.d.mts +10 -5
- package/dist/alert.d.ts +10 -5
- package/dist/alert.js +5 -26
- package/dist/alert.js.map +1 -1
- package/dist/alert.mjs +5 -26
- package/dist/alert.mjs.map +1 -1
- package/dist/aspect-ratio.d.mts +2 -1
- package/dist/aspect-ratio.d.ts +2 -1
- package/dist/aspect-ratio.js.map +1 -1
- package/dist/aspect-ratio.mjs.map +1 -1
- package/dist/avatar.d.mts +7 -4
- package/dist/avatar.d.ts +7 -4
- 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.d.mts +5 -2
- package/dist/badge.d.ts +5 -2
- 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.d.mts +5 -4
- package/dist/blockquote.d.ts +5 -4
- package/dist/blockquote.js.map +1 -1
- package/dist/blockquote.mjs.map +1 -1
- package/dist/box.d.mts +1 -1
- package/dist/box.d.ts +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.d.mts +18 -11
- package/dist/breadcrumb.d.ts +18 -11
- package/dist/breadcrumb.js +12 -39
- package/dist/breadcrumb.js.map +1 -1
- package/dist/breadcrumb.mjs +12 -39
- package/dist/breadcrumb.mjs.map +1 -1
- package/dist/button.d.mts +4 -2
- package/dist/button.d.ts +4 -2
- package/dist/button.js +3 -2
- package/dist/button.mjs +2 -1
- package/dist/calendar.d.mts +3 -2
- package/dist/calendar.d.ts +3 -2
- 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.d.mts +13 -7
- package/dist/card.d.ts +13 -7
- package/dist/card.js +7 -44
- package/dist/card.js.map +1 -1
- package/dist/card.mjs +7 -44
- package/dist/card.mjs.map +1 -1
- package/dist/carousel.d.mts +13 -8
- package/dist/carousel.d.ts +13 -8
- package/dist/carousel.js +104 -104
- package/dist/carousel.js.map +1 -1
- package/dist/carousel.mjs +104 -104
- 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 +3 -2
- package/dist/checkbox.d.ts +3 -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-5UHPKXF4.mjs +60 -0
- package/dist/chunk-5UHPKXF4.mjs.map +1 -0
- package/dist/chunk-EWS3N4OZ.mjs +148 -0
- package/dist/chunk-EWS3N4OZ.mjs.map +1 -0
- package/dist/{chunk-PTD4AMHI.mjs → chunk-FGI3JA75.mjs} +1 -1
- package/dist/chunk-FGI3JA75.mjs.map +1 -0
- package/dist/{chunk-RTKEO347.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-J6COVJTP.js +60 -0
- package/dist/chunk-J6COVJTP.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-MOJNV3XZ.js +120 -0
- package/dist/chunk-MOJNV3XZ.js.map +1 -0
- package/dist/{chunk-U2WDUCW3.js → chunk-NEP3JDVQ.js} +31 -6
- package/dist/chunk-NEP3JDVQ.js.map +1 -0
- package/dist/chunk-OK63Q6EJ.mjs +121 -0
- package/dist/chunk-OK63Q6EJ.mjs.map +1 -0
- package/dist/{chunk-5GHZ6EXI.js → chunk-ORAVN37L.js} +6 -10
- package/dist/chunk-ORAVN37L.js.map +1 -0
- package/dist/{chunk-T52N6ZBP.mjs → chunk-XCBBSHAK.mjs} +6 -10
- package/dist/chunk-XCBBSHAK.mjs.map +1 -0
- package/dist/chunk-XCKLBP2V.mjs +86 -0
- package/dist/chunk-XCKLBP2V.mjs.map +1 -0
- package/dist/chunk-XHZUPL2U.mjs +81 -0
- package/dist/chunk-XHZUPL2U.mjs.map +1 -0
- package/dist/code.d.mts +5 -4
- package/dist/code.d.ts +5 -4
- package/dist/code.js.map +1 -1
- package/dist/code.mjs.map +1 -1
- package/dist/collapsible.d.mts +4 -1
- package/dist/collapsible.d.ts +4 -1
- package/dist/collapsible.js.map +1 -1
- package/dist/collapsible.mjs.map +1 -1
- package/dist/command.d.mts +24 -12
- package/dist/command.d.ts +24 -12
- package/dist/command.js +9 -40
- package/dist/command.js.map +1 -1
- package/dist/command.mjs +9 -40
- package/dist/command.mjs.map +1 -1
- package/dist/container.d.mts +5 -4
- package/dist/container.d.ts +5 -4
- package/dist/container.js.map +1 -1
- package/dist/container.mjs.map +1 -1
- package/dist/context-menu.d.mts +31 -16
- package/dist/context-menu.d.ts +31 -16
- 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 +10 -7
- package/dist/data-table.d.ts +10 -7
- 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 +14 -6
- package/dist/dialog.d.ts +14 -6
- package/dist/dialog.js +2 -2
- package/dist/dialog.mjs +1 -1
- package/dist/drawer.d.mts +12 -4
- package/dist/drawer.d.ts +12 -4
- 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 +29 -15
- package/dist/dropdown-menu.d.ts +29 -15
- package/dist/dropdown-menu.js +2 -2
- package/dist/dropdown-menu.mjs +1 -1
- package/dist/em.d.mts +5 -4
- package/dist/em.d.ts +5 -4
- package/dist/em.js.map +1 -1
- package/dist/em.mjs.map +1 -1
- package/dist/form.d.mts +14 -6
- package/dist/form.d.ts +14 -6
- package/dist/form.js +13 -40
- package/dist/form.js.map +1 -1
- package/dist/form.mjs +13 -40
- package/dist/form.mjs.map +1 -1
- package/dist/heading.d.mts +6 -5
- package/dist/heading.d.ts +6 -5
- package/dist/heading.js.map +1 -1
- package/dist/heading.mjs.map +1 -1
- package/dist/hover-card.d.mts +5 -2
- package/dist/hover-card.d.ts +5 -2
- 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.d.mts +12 -32
- package/dist/input-otp.d.ts +12 -32
- package/dist/input-otp.js +16 -13
- package/dist/input-otp.js.map +1 -1
- package/dist/input-otp.mjs +15 -12
- package/dist/input-otp.mjs.map +1 -1
- package/dist/input.d.mts +6 -3
- package/dist/input.d.ts +6 -3
- package/dist/input.js +8 -10
- package/dist/input.js.map +1 -1
- package/dist/input.mjs +8 -10
- package/dist/input.mjs.map +1 -1
- package/dist/kbd.d.mts +5 -4
- package/dist/kbd.d.ts +5 -4
- package/dist/kbd.js.map +1 -1
- package/dist/kbd.mjs.map +1 -1
- package/dist/label.d.mts +3 -2
- package/dist/label.d.ts +3 -2
- package/dist/label.js +2 -2
- package/dist/label.mjs +1 -1
- package/dist/menubar.d.mts +32 -17
- package/dist/menubar.d.ts +32 -17
- 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 -8
- package/dist/navigation-menu.d.ts +16 -8
- 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.d.mts +13 -7
- package/dist/pagination.d.ts +13 -7
- package/dist/pagination.js +18 -55
- package/dist/pagination.js.map +1 -1
- package/dist/pagination.mjs +18 -55
- package/dist/pagination.mjs.map +1 -1
- package/dist/popover.d.mts +8 -3
- package/dist/popover.d.ts +8 -3
- 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.d.mts +5 -4
- package/dist/pre.d.ts +5 -4
- package/dist/pre.js.map +1 -1
- package/dist/pre.mjs.map +1 -1
- package/dist/progress.d.mts +3 -2
- package/dist/progress.d.ts +3 -2
- package/dist/progress.js +2 -5
- package/dist/progress.js.map +1 -1
- package/dist/progress.mjs +2 -5
- package/dist/progress.mjs.map +1 -1
- package/dist/quote.d.mts +5 -4
- package/dist/quote.d.ts +5 -4
- package/dist/quote.js.map +1 -1
- 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 +5 -3
- package/dist/radio-group.d.ts +5 -3
- 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 +6 -6
- package/dist/resizable.d.ts +6 -6
- package/dist/resizable.js +4 -6
- package/dist/resizable.js.map +1 -1
- package/dist/resizable.mjs +4 -6
- package/dist/resizable.mjs.map +1 -1
- package/dist/scroll-area.d.mts +5 -3
- package/dist/scroll-area.d.ts +5 -3
- package/dist/scroll-area.js +25 -31
- package/dist/scroll-area.js.map +1 -1
- package/dist/scroll-area.mjs +25 -31
- package/dist/scroll-area.mjs.map +1 -1
- package/dist/section.d.mts +5 -4
- package/dist/section.d.ts +5 -4
- package/dist/section.js.map +1 -1
- package/dist/section.mjs.map +1 -1
- package/dist/select.d.mts +18 -8
- package/dist/select.d.ts +18 -8
- package/dist/select.js +2 -2
- package/dist/select.mjs +1 -1
- package/dist/separator.d.mts +3 -2
- package/dist/separator.d.ts +3 -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 +20 -10
- package/dist/sheet.d.ts +20 -10
- 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.d.mts +3 -2
- package/dist/skeleton.d.ts +3 -2
- package/dist/skeleton.js +2 -11
- package/dist/skeleton.js.map +1 -1
- package/dist/skeleton.mjs +2 -11
- package/dist/skeleton.mjs.map +1 -1
- package/dist/slider.d.mts +3 -2
- package/dist/slider.d.ts +3 -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.d.mts +1 -1
- package/dist/sonner.d.ts +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.d.mts +5 -4
- package/dist/strong.d.ts +5 -4
- package/dist/strong.js.map +1 -1
- 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 +3 -2
- package/dist/switch.d.ts +3 -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.d.mts +17 -9
- package/dist/table.d.ts +17 -9
- package/dist/table.js +6 -47
- package/dist/table.js.map +1 -1
- package/dist/table.mjs +6 -47
- package/dist/table.mjs.map +1 -1
- package/dist/tabs.d.mts +8 -4
- package/dist/tabs.d.ts +8 -4
- 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.d.mts +1 -1
- package/dist/text.d.ts +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.d.mts +3 -2
- package/dist/textarea.d.ts +3 -2
- package/dist/textarea.js +2 -1
- package/dist/textarea.js.map +1 -1
- package/dist/textarea.mjs +2 -1
- package/dist/textarea.mjs.map +1 -1
- package/dist/toggle-group.d.mts +5 -3
- package/dist/toggle-group.d.ts +5 -3
- 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 +3 -2
- package/dist/toggle.d.ts +3 -2
- package/dist/toggle.js +2 -2
- package/dist/toggle.mjs +1 -1
- package/dist/tooltip.d.mts +8 -3
- package/dist/tooltip.d.ts +8 -3
- 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 +40 -9
- package/src/accordion.tsx +63 -40
- package/src/alert-dialog.tsx +84 -84
- package/src/alert.tsx +25 -32
- package/src/aspect-ratio.tsx +3 -1
- package/src/avatar.tsx +19 -26
- package/src/badge.tsx +8 -9
- package/src/blockquote.tsx +9 -7
- package/src/box.tsx +8 -7
- package/src/breadcrumb.tsx +55 -54
- package/src/button.tsx +44 -15
- package/src/calendar.tsx +8 -23
- package/src/card.tsx +44 -53
- package/src/carousel.tsx +152 -134
- 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 +11 -6
- package/src/code.tsx +9 -5
- package/src/collapsible.tsx +12 -1
- package/src/command.tsx +65 -65
- package/src/container.tsx +9 -7
- package/src/context-menu.tsx +184 -160
- package/src/data-table.tsx +43 -48
- package/src/dialog.tsx +68 -71
- package/src/drawer.tsx +59 -67
- package/src/dropdown-menu.tsx +164 -139
- package/src/em.tsx +9 -5
- package/src/form.tsx +61 -69
- package/src/heading.tsx +10 -8
- package/src/hover-card.tsx +30 -18
- package/src/input-otp.tsx +40 -26
- package/src/input.tsx +16 -15
- package/src/kbd.tsx +9 -5
- package/src/label.tsx +6 -5
- package/src/menubar.tsx +154 -139
- package/src/navigation-menu.tsx +118 -102
- package/src/pagination.tsx +39 -49
- package/src/popover.tsx +41 -27
- package/src/pre.tsx +9 -5
- package/src/progress.tsx +8 -10
- package/src/quote.tsx +9 -5
- package/src/radio-cards.tsx +50 -0
- package/src/radio-group.tsx +14 -17
- package/src/radio.tsx +44 -0
- package/src/resizable.tsx +7 -8
- package/src/scroll-area.tsx +33 -37
- package/src/section.tsx +9 -7
- package/src/select.tsx +116 -105
- package/src/separator.tsx +8 -14
- package/src/sheet.tsx +62 -70
- package/src/skeleton.tsx +5 -11
- package/src/slider.tsx +13 -10
- package/src/sonner.tsx +4 -8
- package/src/spinner.tsx +75 -0
- package/src/strong.tsx +9 -5
- package/src/switch.tsx +8 -6
- package/src/table.tsx +54 -64
- package/src/tabs.tsx +30 -15
- package/src/text.tsx +9 -9
- package/src/textarea.tsx +8 -6
- package/src/toggle-group.tsx +59 -48
- package/src/toggle.tsx +12 -13
- package/src/tooltip.tsx +33 -25
- package/dist/chunk-2D7SRYKN.js +0 -135
- package/dist/chunk-2D7SRYKN.js.map +0 -1
- package/dist/chunk-5GHZ6EXI.js.map +0 -1
- package/dist/chunk-EDVCMWDT.mjs +0 -158
- package/dist/chunk-EDVCMWDT.mjs.map +0 -1
- package/dist/chunk-EIHWTXQ4.mjs +0 -112
- package/dist/chunk-EIHWTXQ4.mjs.map +0 -1
- package/dist/chunk-ESWGFN3R.mjs +0 -135
- package/dist/chunk-ESWGFN3R.mjs.map +0 -1
- package/dist/chunk-KW5FJ62U.mjs +0 -56
- package/dist/chunk-KW5FJ62U.mjs.map +0 -1
- package/dist/chunk-LDYBRDAY.js +0 -112
- package/dist/chunk-LDYBRDAY.js.map +0 -1
- package/dist/chunk-OCLLX7EY.js +0 -158
- package/dist/chunk-OCLLX7EY.js.map +0 -1
- package/dist/chunk-PTD4AMHI.mjs.map +0 -1
- package/dist/chunk-RTKEO347.js.map +0 -1
- package/dist/chunk-T52N6ZBP.mjs.map +0 -1
- package/dist/chunk-U2WDUCW3.js.map +0 -1
|
@@ -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 };
|
package/src/radio-group.tsx
CHANGED
|
@@ -8,33 +8,29 @@ import { cn } from "./utils";
|
|
|
8
8
|
* Component: RadioGroup
|
|
9
9
|
* -------------------------------------------------------------------------- */
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
>(({ className, ...props }, ref) => {
|
|
15
|
-
return (
|
|
16
|
-
<RadioGroupPrimitive.Root
|
|
17
|
-
className={cn("grid gap-2", className)}
|
|
18
|
-
{...props}
|
|
19
|
-
ref={ref}
|
|
20
|
-
/>
|
|
21
|
-
);
|
|
11
|
+
type RadioGroupElement = React.ElementRef<typeof RadioGroupPrimitive.Root>;
|
|
12
|
+
type RadioGroupProps = React.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Root>;
|
|
13
|
+
|
|
14
|
+
const RadioGroup = React.forwardRef<RadioGroupElement, RadioGroupProps>(({ className, ...props }, ref) => {
|
|
15
|
+
return <RadioGroupPrimitive.Root className={cn("grid gap-2", className)} {...props} ref={ref} />;
|
|
22
16
|
});
|
|
17
|
+
|
|
23
18
|
RadioGroup.displayName = RadioGroupPrimitive.Root.displayName;
|
|
24
19
|
|
|
25
20
|
/* -----------------------------------------------------------------------------
|
|
26
21
|
* Component: RadioGroupItem
|
|
27
22
|
* -------------------------------------------------------------------------- */
|
|
28
23
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
>(({ className, ...props }, ref) => {
|
|
24
|
+
type RadioGroupItemElement = React.ElementRef<typeof RadioGroupPrimitive.Item>;
|
|
25
|
+
type RadioGroupItemProps = React.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Item>;
|
|
26
|
+
|
|
27
|
+
const RadioGroupItem = React.forwardRef<RadioGroupItemElement, RadioGroupItemProps>(({ className, ...props }, ref) => {
|
|
33
28
|
return (
|
|
34
29
|
<RadioGroupPrimitive.Item
|
|
35
30
|
ref={ref}
|
|
36
31
|
className={cn(
|
|
37
|
-
"border-compound text-compound-foreground
|
|
32
|
+
"border-compound/70 hover:border-compound text-compound-foreground aria-checked:border-primary group peer aspect-square size-4 rounded-full border disabled:cursor-not-allowed disabled:opacity-50",
|
|
33
|
+
"focus-visible:ring-ring focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2",
|
|
38
34
|
className,
|
|
39
35
|
)}
|
|
40
36
|
{...props}
|
|
@@ -47,10 +43,11 @@ const RadioGroupItem = React.forwardRef<
|
|
|
47
43
|
</RadioGroupPrimitive.Item>
|
|
48
44
|
);
|
|
49
45
|
});
|
|
46
|
+
|
|
50
47
|
RadioGroupItem.displayName = RadioGroupPrimitive.Item.displayName;
|
|
51
48
|
|
|
52
49
|
/* -----------------------------------------------------------------------------
|
|
53
50
|
* Exports
|
|
54
51
|
* -------------------------------------------------------------------------- */
|
|
55
52
|
|
|
56
|
-
export { RadioGroup, RadioGroupItem };
|
|
53
|
+
export { RadioGroup, RadioGroupItem, type RadioGroupProps, type RadioGroupItemProps };
|
package/src/radio.tsx
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import * as React from "react";
|
|
4
|
+
import { composeEventHandlers } from "@radix-ui/primitive";
|
|
5
|
+
import { cn } from "./utils";
|
|
6
|
+
|
|
7
|
+
/* -----------------------------------------------------------------------------
|
|
8
|
+
* Component: Radio
|
|
9
|
+
* -------------------------------------------------------------------------- */
|
|
10
|
+
|
|
11
|
+
type RadioElement = HTMLInputElement;
|
|
12
|
+
|
|
13
|
+
interface RadioProps extends React.InputHTMLAttributes<HTMLInputElement> {
|
|
14
|
+
onValueChange?: (value: string) => void;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
const Radio = React.forwardRef<RadioElement, RadioProps>(({ className, onValueChange, onChange, ...props }, ref) => {
|
|
18
|
+
return (
|
|
19
|
+
<input
|
|
20
|
+
ref={ref}
|
|
21
|
+
type="radio"
|
|
22
|
+
onChange={composeEventHandlers(onChange, (event) => onValueChange?.(event.currentTarget.value))}
|
|
23
|
+
className={cn(
|
|
24
|
+
"peer relative flex appearance-none items-center justify-center rounded-full",
|
|
25
|
+
"disabled:cursor-not-allowed disabled:opacity-50",
|
|
26
|
+
"before:border-compound/70 before:size-4 before:rounded-full before:border",
|
|
27
|
+
"hover:before:border-compound",
|
|
28
|
+
"checked:before:border-primary",
|
|
29
|
+
"checked:after:bg-primary checked:after:absolute checked:after:size-2.5 checked:after:rounded-full",
|
|
30
|
+
"focus-visible:ring-ring focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2",
|
|
31
|
+
className,
|
|
32
|
+
)}
|
|
33
|
+
{...props}
|
|
34
|
+
/>
|
|
35
|
+
);
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
Radio.displayName = "Radio";
|
|
39
|
+
|
|
40
|
+
/* -----------------------------------------------------------------------------
|
|
41
|
+
* Exports
|
|
42
|
+
* -------------------------------------------------------------------------- */
|
|
43
|
+
|
|
44
|
+
export { Radio };
|
package/src/resizable.tsx
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
import
|
|
3
|
+
import * as React from "react";
|
|
4
4
|
import * as ResizablePrimitive from "react-resizable-panels";
|
|
5
|
+
import { DragHandleDots2Icon } from "@radix-ui/react-icons";
|
|
5
6
|
import { cn } from "./utils";
|
|
6
7
|
|
|
7
8
|
/* -----------------------------------------------------------------------------
|
|
@@ -11,13 +12,10 @@ import { cn } from "./utils";
|
|
|
11
12
|
function ResizablePanelGroup({
|
|
12
13
|
className,
|
|
13
14
|
...props
|
|
14
|
-
}: ResizablePrimitive.
|
|
15
|
+
}: React.ComponentProps<typeof ResizablePrimitive.PanelGroup>): React.JSX.Element {
|
|
15
16
|
return (
|
|
16
17
|
<ResizablePrimitive.PanelGroup
|
|
17
|
-
className={cn(
|
|
18
|
-
"flex h-full w-full data-[panel-group-direction=vertical]:flex-col",
|
|
19
|
-
className,
|
|
20
|
-
)}
|
|
18
|
+
className={cn("flex h-full w-full", "data-[panel-group-direction=vertical]:flex-col", className)}
|
|
21
19
|
{...props}
|
|
22
20
|
/>
|
|
23
21
|
);
|
|
@@ -37,13 +35,14 @@ function ResizableHandle({
|
|
|
37
35
|
withHandle,
|
|
38
36
|
className,
|
|
39
37
|
...props
|
|
40
|
-
}: ResizablePrimitive.
|
|
38
|
+
}: React.ComponentProps<typeof ResizablePrimitive.PanelResizeHandle> & {
|
|
41
39
|
withHandle?: boolean;
|
|
42
40
|
}): React.JSX.Element {
|
|
43
41
|
return (
|
|
44
42
|
<ResizablePrimitive.PanelResizeHandle
|
|
45
43
|
className={cn(
|
|
46
|
-
"bg-border
|
|
44
|
+
"bg-border 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 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-y-1/2 data-[panel-group-direction=vertical]:after:translate-x-0 [&[data-panel-group-direction=vertical]>div]:rotate-90",
|
|
45
|
+
"focus-visible:ring-ring focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2",
|
|
47
46
|
className,
|
|
48
47
|
)}
|
|
49
48
|
{...props}
|
package/src/scroll-area.tsx
CHANGED
|
@@ -8,53 +8,49 @@ import { cn } from "./utils";
|
|
|
8
8
|
* Component: ScrollArea
|
|
9
9
|
* -------------------------------------------------------------------------- */
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
>(({ className, children, ...props }, ref) => (
|
|
15
|
-
<ScrollAreaPrimitive.Root
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
>
|
|
20
|
-
<ScrollAreaPrimitive.Viewport className="size-full rounded-[inherit]">
|
|
21
|
-
{children}
|
|
22
|
-
</ScrollAreaPrimitive.Viewport>
|
|
23
|
-
<ScrollBar orientation="vertical" />
|
|
24
|
-
<ScrollBar orientation="horizontal" />
|
|
11
|
+
type ScrollAreaElement = React.ElementRef<typeof ScrollAreaPrimitive.Root>;
|
|
12
|
+
type ScrollAreaProps = React.ComponentPropsWithoutRef<typeof ScrollAreaPrimitive.Root>;
|
|
13
|
+
|
|
14
|
+
const ScrollArea = React.forwardRef<ScrollAreaElement, ScrollAreaProps>(({ className, children, ...props }, ref) => (
|
|
15
|
+
<ScrollAreaPrimitive.Root ref={ref} className={cn("relative overflow-hidden", className)} {...props}>
|
|
16
|
+
<ScrollAreaPrimitive.Viewport className="size-full rounded-[inherit]">{children}</ScrollAreaPrimitive.Viewport>
|
|
17
|
+
<ScrollAreaScrollbar orientation="vertical" />
|
|
18
|
+
<ScrollAreaScrollbar orientation="horizontal" />
|
|
25
19
|
<ScrollAreaPrimitive.Corner />
|
|
26
20
|
</ScrollAreaPrimitive.Root>
|
|
27
21
|
));
|
|
22
|
+
|
|
28
23
|
ScrollArea.displayName = ScrollAreaPrimitive.Root.displayName;
|
|
29
24
|
|
|
30
25
|
/* -----------------------------------------------------------------------------
|
|
31
|
-
* Component:
|
|
26
|
+
* Component: ScrollAreaScrollbar
|
|
32
27
|
* -------------------------------------------------------------------------- */
|
|
33
28
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
"h-full w-2.5 border-l border-l-transparent p-px",
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
)
|
|
54
|
-
|
|
29
|
+
type ScrollAreaScrollbarElement = React.ElementRef<typeof ScrollAreaPrimitive.Scrollbar>;
|
|
30
|
+
type ScrollAreaScrollbarProps = React.ComponentPropsWithoutRef<typeof ScrollAreaPrimitive.Scrollbar>;
|
|
31
|
+
|
|
32
|
+
const ScrollAreaScrollbar = React.forwardRef<ScrollAreaScrollbarElement, ScrollAreaScrollbarProps>(
|
|
33
|
+
({ className, orientation = "vertical", ...props }, ref) => (
|
|
34
|
+
<ScrollAreaPrimitive.Scrollbar
|
|
35
|
+
ref={ref}
|
|
36
|
+
orientation={orientation}
|
|
37
|
+
className={cn(
|
|
38
|
+
"flex touch-none select-none transition-colors",
|
|
39
|
+
orientation === "vertical" && "h-full w-2.5 border-l border-l-transparent p-px",
|
|
40
|
+
orientation === "horizontal" && "h-2.5 flex-col border-t border-t-transparent p-px",
|
|
41
|
+
className,
|
|
42
|
+
)}
|
|
43
|
+
{...props}
|
|
44
|
+
>
|
|
45
|
+
<ScrollAreaPrimitive.ScrollAreaThumb className="bg-border relative flex-1 rounded-full" />
|
|
46
|
+
</ScrollAreaPrimitive.Scrollbar>
|
|
47
|
+
),
|
|
48
|
+
);
|
|
49
|
+
|
|
50
|
+
ScrollAreaScrollbar.displayName = ScrollAreaPrimitive.Scrollbar.displayName;
|
|
55
51
|
|
|
56
52
|
/* -----------------------------------------------------------------------------
|
|
57
53
|
* Exports
|
|
58
54
|
* -------------------------------------------------------------------------- */
|
|
59
55
|
|
|
60
|
-
export { ScrollArea,
|
|
56
|
+
export { ScrollArea, ScrollAreaScrollbar, type ScrollAreaProps, type ScrollAreaScrollbarProps };
|
package/src/section.tsx
CHANGED
|
@@ -5,20 +5,22 @@ import { Slot } from "@radix-ui/react-slot";
|
|
|
5
5
|
* Component: Section
|
|
6
6
|
* -------------------------------------------------------------------------- */
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
8
|
+
type SectionElement = HTMLElement;
|
|
9
|
+
|
|
10
|
+
interface SectionProps extends React.HTMLAttributes<HTMLElement> {
|
|
11
|
+
asChild?: boolean;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
const Section = React.forwardRef<SectionElement, SectionProps>(({ asChild, ...props }, ref) => {
|
|
14
15
|
const Comp = asChild ? Slot : "section";
|
|
15
16
|
|
|
16
17
|
return <Comp ref={ref} {...props} />;
|
|
17
18
|
});
|
|
19
|
+
|
|
18
20
|
Section.displayName = "Section";
|
|
19
21
|
|
|
20
22
|
/* -----------------------------------------------------------------------------
|
|
21
23
|
* Exports
|
|
22
24
|
* -------------------------------------------------------------------------- */
|
|
23
25
|
|
|
24
|
-
export { Section };
|
|
26
|
+
export { Section, type SectionProps };
|
package/src/select.tsx
CHANGED
|
@@ -1,12 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import * as React from "react";
|
|
4
|
-
import {
|
|
5
|
-
CaretSortIcon,
|
|
6
|
-
CheckIcon,
|
|
7
|
-
ChevronDownIcon,
|
|
8
|
-
ChevronUpIcon,
|
|
9
|
-
} from "@radix-ui/react-icons";
|
|
4
|
+
import { CaretSortIcon, CheckIcon, ChevronDownIcon, ChevronUpIcon } from "@radix-ui/react-icons";
|
|
10
5
|
import * as SelectPrimitive from "@radix-ui/react-select";
|
|
11
6
|
import { cn } from "./utils";
|
|
12
7
|
|
|
@@ -14,147 +9,153 @@ import { cn } from "./utils";
|
|
|
14
9
|
* Component: Select
|
|
15
10
|
* -------------------------------------------------------------------------- */
|
|
16
11
|
|
|
12
|
+
type SelectProps = React.ComponentProps<typeof SelectPrimitive.Root>;
|
|
17
13
|
const Select = SelectPrimitive.Root;
|
|
18
14
|
|
|
19
15
|
/* -----------------------------------------------------------------------------
|
|
20
16
|
* Component: SelectGroup
|
|
21
17
|
* -------------------------------------------------------------------------- */
|
|
22
18
|
|
|
19
|
+
type SelectGroupProps = React.ComponentPropsWithoutRef<typeof SelectPrimitive.Group>;
|
|
23
20
|
const SelectGroup = SelectPrimitive.Group;
|
|
24
21
|
|
|
25
22
|
/* -----------------------------------------------------------------------------
|
|
26
23
|
* Component: SelectValue
|
|
27
24
|
* -------------------------------------------------------------------------- */
|
|
28
25
|
|
|
26
|
+
type SelectValueProps = React.ComponentPropsWithoutRef<typeof SelectPrimitive.Value>;
|
|
29
27
|
const SelectValue = SelectPrimitive.Value;
|
|
30
28
|
|
|
31
29
|
/* -----------------------------------------------------------------------------
|
|
32
30
|
* Component: SelectTrigger
|
|
33
31
|
* -------------------------------------------------------------------------- */
|
|
34
32
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
33
|
+
type SelectTriggerElement = React.ElementRef<typeof SelectPrimitive.Trigger>;
|
|
34
|
+
type SelectTriggerProps = React.ComponentPropsWithoutRef<typeof SelectPrimitive.Trigger>;
|
|
35
|
+
|
|
36
|
+
const SelectTrigger = React.forwardRef<SelectTriggerElement, SelectTriggerProps>(
|
|
37
|
+
({ className, children, ...props }, ref) => (
|
|
38
|
+
<SelectPrimitive.Trigger
|
|
39
|
+
ref={ref}
|
|
40
|
+
className={cn(
|
|
41
|
+
"border-input placeholder:text-muted-foreground flex h-10 w-full items-center justify-between whitespace-nowrap rounded-md border bg-transparent px-3 text-sm shadow-sm disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",
|
|
42
|
+
"focus-visible:ring-ring focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2",
|
|
43
|
+
className,
|
|
44
|
+
)}
|
|
45
|
+
{...props}
|
|
46
|
+
>
|
|
47
|
+
{children}
|
|
48
|
+
<SelectPrimitive.Icon asChild>
|
|
49
|
+
<CaretSortIcon className="size-4 opacity-50" />
|
|
50
|
+
</SelectPrimitive.Icon>
|
|
51
|
+
</SelectPrimitive.Trigger>
|
|
52
|
+
),
|
|
53
|
+
);
|
|
54
|
+
|
|
53
55
|
SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
|
|
54
56
|
|
|
55
57
|
/* -----------------------------------------------------------------------------
|
|
56
58
|
* Component: SelectScrollUpButton
|
|
57
59
|
* -------------------------------------------------------------------------- */
|
|
58
60
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
"flex cursor-default items-center justify-center py-1",
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
61
|
+
type SelectScrollUpButtonElement = React.ElementRef<typeof SelectPrimitive.ScrollUpButton>;
|
|
62
|
+
type SelectScrollUpButtonProps = React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollUpButton>;
|
|
63
|
+
|
|
64
|
+
const SelectScrollUpButton = React.forwardRef<SelectScrollUpButtonElement, SelectScrollUpButtonProps>(
|
|
65
|
+
({ className, ...props }, ref) => (
|
|
66
|
+
<SelectPrimitive.ScrollUpButton
|
|
67
|
+
ref={ref}
|
|
68
|
+
className={cn("flex cursor-default items-center justify-center py-1", className)}
|
|
69
|
+
{...props}
|
|
70
|
+
>
|
|
71
|
+
<ChevronUpIcon />
|
|
72
|
+
</SelectPrimitive.ScrollUpButton>
|
|
73
|
+
),
|
|
74
|
+
);
|
|
75
|
+
|
|
74
76
|
SelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;
|
|
75
77
|
|
|
76
78
|
/* -----------------------------------------------------------------------------
|
|
77
79
|
* Component: SelectScrollDownButton
|
|
78
80
|
* -------------------------------------------------------------------------- */
|
|
79
81
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
"flex cursor-default items-center justify-center py-1",
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
SelectScrollDownButton.displayName =
|
|
96
|
-
SelectPrimitive.ScrollDownButton.displayName;
|
|
82
|
+
type SelectScrollDownButtonElement = React.ElementRef<typeof SelectPrimitive.ScrollDownButton>;
|
|
83
|
+
type SelectScrollDownButtonProps = React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollDownButton>;
|
|
84
|
+
|
|
85
|
+
const SelectScrollDownButton = React.forwardRef<SelectScrollDownButtonElement, SelectScrollDownButtonProps>(
|
|
86
|
+
({ className, ...props }, ref) => (
|
|
87
|
+
<SelectPrimitive.ScrollDownButton
|
|
88
|
+
ref={ref}
|
|
89
|
+
className={cn("flex cursor-default items-center justify-center py-1", className)}
|
|
90
|
+
{...props}
|
|
91
|
+
>
|
|
92
|
+
<ChevronDownIcon />
|
|
93
|
+
</SelectPrimitive.ScrollDownButton>
|
|
94
|
+
),
|
|
95
|
+
);
|
|
96
|
+
|
|
97
|
+
SelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;
|
|
97
98
|
|
|
98
99
|
/* -----------------------------------------------------------------------------
|
|
99
100
|
* Component: SelectContent
|
|
100
101
|
* -------------------------------------------------------------------------- */
|
|
101
102
|
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
<SelectPrimitive.
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
"bg-popover text-popover-foreground 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-[state=open]:data-[side=bottom]:slide-in-from-top-2 data-[state=open]:data-[side=left]:slide-in-from-right-2 data-[state=open]:data-[side=right]:slide-in-from-left-2 data-[state=open]:data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:data-[side=bottom]:slide-out-to-top-2 data-[state=closed]:data-[side=left]:slide-out-to-right-2 data-[state=closed]:data-[side=right]:slide-out-to-left-2 data-[state=closed]:data-[side=top]:slide-out-to-bottom-2 relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border shadow-md",
|
|
111
|
-
position === "popper" &&
|
|
112
|
-
"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",
|
|
113
|
-
className,
|
|
114
|
-
)}
|
|
115
|
-
position={position}
|
|
116
|
-
{...props}
|
|
117
|
-
>
|
|
118
|
-
<SelectScrollUpButton />
|
|
119
|
-
<SelectPrimitive.Viewport
|
|
103
|
+
type SelectContentElement = React.ElementRef<typeof SelectPrimitive.Content>;
|
|
104
|
+
type SelectContentProps = React.ComponentPropsWithoutRef<typeof SelectPrimitive.Content>;
|
|
105
|
+
|
|
106
|
+
const SelectContent = React.forwardRef<SelectContentElement, SelectContentProps>(
|
|
107
|
+
({ className, children, position = "popper", ...props }, ref) => (
|
|
108
|
+
<SelectPrimitive.Portal>
|
|
109
|
+
<SelectPrimitive.Content
|
|
110
|
+
ref={ref}
|
|
120
111
|
className={cn(
|
|
121
|
-
"
|
|
112
|
+
"bg-popover text-popover-foreground 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-[state=open]:data-[side=bottom]:slide-in-from-top-2 data-[state=open]:data-[side=left]:slide-in-from-right-2 data-[state=open]:data-[side=right]:slide-in-from-left-2 data-[state=open]:data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:data-[side=bottom]:slide-out-to-top-2 data-[state=closed]:data-[side=left]:slide-out-to-right-2 data-[state=closed]:data-[side=right]:slide-out-to-left-2 data-[state=closed]:data-[side=top]:slide-out-to-bottom-2 relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border shadow-md",
|
|
122
113
|
position === "popper" &&
|
|
123
|
-
"
|
|
114
|
+
"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",
|
|
115
|
+
className,
|
|
124
116
|
)}
|
|
117
|
+
position={position}
|
|
118
|
+
{...props}
|
|
125
119
|
>
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
))
|
|
120
|
+
<SelectScrollUpButton />
|
|
121
|
+
<SelectPrimitive.Viewport
|
|
122
|
+
className={cn(
|
|
123
|
+
"p-1",
|
|
124
|
+
position === "popper" &&
|
|
125
|
+
"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]",
|
|
126
|
+
)}
|
|
127
|
+
>
|
|
128
|
+
{children}
|
|
129
|
+
</SelectPrimitive.Viewport>
|
|
130
|
+
<SelectScrollDownButton />
|
|
131
|
+
</SelectPrimitive.Content>
|
|
132
|
+
</SelectPrimitive.Portal>
|
|
133
|
+
),
|
|
134
|
+
);
|
|
135
|
+
|
|
132
136
|
SelectContent.displayName = SelectPrimitive.Content.displayName;
|
|
133
137
|
|
|
134
138
|
/* -----------------------------------------------------------------------------
|
|
135
139
|
* Component: SelectLabel
|
|
136
140
|
* -------------------------------------------------------------------------- */
|
|
137
141
|
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
>(({ className, ...props }, ref) => (
|
|
142
|
-
<SelectPrimitive.Label
|
|
143
|
-
ref={ref}
|
|
144
|
-
className={cn("px-2 py-1.5 text-sm font-semibold", className)}
|
|
145
|
-
{...props}
|
|
146
|
-
/>
|
|
142
|
+
type SelectLabelElement = React.ElementRef<typeof SelectPrimitive.Label>;
|
|
143
|
+
type SelectLabelProps = React.ComponentPropsWithoutRef<typeof SelectPrimitive.Label>;
|
|
144
|
+
|
|
145
|
+
const SelectLabel = React.forwardRef<SelectLabelElement, SelectLabelProps>(({ className, ...props }, ref) => (
|
|
146
|
+
<SelectPrimitive.Label ref={ref} className={cn("px-2 py-1.5 text-sm font-semibold", className)} {...props} />
|
|
147
147
|
));
|
|
148
|
+
|
|
148
149
|
SelectLabel.displayName = SelectPrimitive.Label.displayName;
|
|
149
150
|
|
|
150
151
|
/* -----------------------------------------------------------------------------
|
|
151
152
|
* Component: SelectItem
|
|
152
153
|
* -------------------------------------------------------------------------- */
|
|
153
154
|
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
>(({ className, children, ...props }, ref) => (
|
|
155
|
+
type SelectItemElement = React.ElementRef<typeof SelectPrimitive.Item>;
|
|
156
|
+
type SelectItemProps = React.ComponentPropsWithoutRef<typeof SelectPrimitive.Item>;
|
|
157
|
+
|
|
158
|
+
const SelectItem = React.forwardRef<SelectItemElement, SelectItemProps>(({ className, children, ...props }, ref) => (
|
|
158
159
|
<SelectPrimitive.Item
|
|
159
160
|
ref={ref}
|
|
160
161
|
className={cn(
|
|
@@ -171,22 +172,22 @@ const SelectItem = React.forwardRef<
|
|
|
171
172
|
<SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>
|
|
172
173
|
</SelectPrimitive.Item>
|
|
173
174
|
));
|
|
175
|
+
|
|
174
176
|
SelectItem.displayName = SelectPrimitive.Item.displayName;
|
|
175
177
|
|
|
176
178
|
/* -----------------------------------------------------------------------------
|
|
177
179
|
* Component: SelectSeparator
|
|
178
180
|
* -------------------------------------------------------------------------- */
|
|
179
181
|
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
ref={ref}
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
));
|
|
182
|
+
type SelectSeparatorElement = React.ElementRef<typeof SelectPrimitive.Separator>;
|
|
183
|
+
type SelectSeparatorProps = React.ComponentPropsWithoutRef<typeof SelectPrimitive.Separator>;
|
|
184
|
+
|
|
185
|
+
const SelectSeparator = React.forwardRef<SelectSeparatorElement, SelectSeparatorProps>(
|
|
186
|
+
({ className, ...props }, ref) => (
|
|
187
|
+
<SelectPrimitive.Separator ref={ref} className={cn("bg-muted -mx-1 my-1 h-px", className)} {...props} />
|
|
188
|
+
),
|
|
189
|
+
);
|
|
190
|
+
|
|
190
191
|
SelectSeparator.displayName = SelectPrimitive.Separator.displayName;
|
|
191
192
|
|
|
192
193
|
/* -----------------------------------------------------------------------------
|
|
@@ -204,4 +205,14 @@ export {
|
|
|
204
205
|
SelectSeparator,
|
|
205
206
|
SelectScrollUpButton,
|
|
206
207
|
SelectScrollDownButton,
|
|
208
|
+
type SelectProps,
|
|
209
|
+
type SelectGroupProps,
|
|
210
|
+
type SelectValueProps,
|
|
211
|
+
type SelectTriggerProps,
|
|
212
|
+
type SelectContentProps,
|
|
213
|
+
type SelectLabelProps,
|
|
214
|
+
type SelectItemProps,
|
|
215
|
+
type SelectSeparatorProps,
|
|
216
|
+
type SelectScrollUpButtonProps,
|
|
217
|
+
type SelectScrollDownButtonProps,
|
|
207
218
|
};
|