@hyunsdev/ui 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +674 -0
- package/README.md +89 -0
- package/SKILL.md +38 -0
- package/dist/WindowContext-DybYtZJa.d.ts +50 -0
- package/dist/_styles-BbTx89aX.d.ts +3 -0
- package/dist/chunk-23KUNTRD.js +49 -0
- package/dist/chunk-23KUNTRD.js.map +1 -0
- package/dist/chunk-3RTSANKB.js +51 -0
- package/dist/chunk-3RTSANKB.js.map +1 -0
- package/dist/chunk-4QIWBOF4.js +129 -0
- package/dist/chunk-4QIWBOF4.js.map +1 -0
- package/dist/chunk-5JCWC7IU.js +293 -0
- package/dist/chunk-5JCWC7IU.js.map +1 -0
- package/dist/chunk-6ANDNGHD.js +33 -0
- package/dist/chunk-6ANDNGHD.js.map +1 -0
- package/dist/chunk-7W7QZHEZ.js +42 -0
- package/dist/chunk-7W7QZHEZ.js.map +1 -0
- package/dist/chunk-BHO4WT2N.js +51 -0
- package/dist/chunk-BHO4WT2N.js.map +1 -0
- package/dist/chunk-BI3KKBIC.js +11 -0
- package/dist/chunk-BI3KKBIC.js.map +1 -0
- package/dist/chunk-D3SP7GL3.js +55 -0
- package/dist/chunk-D3SP7GL3.js.map +1 -0
- package/dist/chunk-D7W4RSQX.js +115 -0
- package/dist/chunk-D7W4RSQX.js.map +1 -0
- package/dist/chunk-DN2AEEA2.js +11 -0
- package/dist/chunk-DN2AEEA2.js.map +1 -0
- package/dist/chunk-ETTKFCO6.js +84 -0
- package/dist/chunk-ETTKFCO6.js.map +1 -0
- package/dist/chunk-GJT7TDBS.js +66 -0
- package/dist/chunk-GJT7TDBS.js.map +1 -0
- package/dist/chunk-HZT6RQYZ.js +109 -0
- package/dist/chunk-HZT6RQYZ.js.map +1 -0
- package/dist/chunk-JB2QZV7K.js +60 -0
- package/dist/chunk-JB2QZV7K.js.map +1 -0
- package/dist/chunk-KJJB2PVC.js +21 -0
- package/dist/chunk-KJJB2PVC.js.map +1 -0
- package/dist/chunk-NE3IVPMO.js +31 -0
- package/dist/chunk-NE3IVPMO.js.map +1 -0
- package/dist/chunk-O2BG2KSY.js +23 -0
- package/dist/chunk-O2BG2KSY.js.map +1 -0
- package/dist/chunk-OUFGNJ3V.js +1726 -0
- package/dist/chunk-OUFGNJ3V.js.map +1 -0
- package/dist/chunk-PLZMCJSL.js +351 -0
- package/dist/chunk-PLZMCJSL.js.map +1 -0
- package/dist/chunk-POG5DZBT.js +104 -0
- package/dist/chunk-POG5DZBT.js.map +1 -0
- package/dist/chunk-SECZM6JE.js +170 -0
- package/dist/chunk-SECZM6JE.js.map +1 -0
- package/dist/chunk-T64WPXSC.js +48 -0
- package/dist/chunk-T64WPXSC.js.map +1 -0
- package/dist/chunk-TU5CYBB4.js +90 -0
- package/dist/chunk-TU5CYBB4.js.map +1 -0
- package/dist/chunk-UVAI2U6X.js +153 -0
- package/dist/chunk-UVAI2U6X.js.map +1 -0
- package/dist/chunk-UXCBLYG6.js +142 -0
- package/dist/chunk-UXCBLYG6.js.map +1 -0
- package/dist/chunk-VUR4MQMH.js +53 -0
- package/dist/chunk-VUR4MQMH.js.map +1 -0
- package/dist/chunk-WIEKNG4S.js +26 -0
- package/dist/chunk-WIEKNG4S.js.map +1 -0
- package/dist/chunk-WIZ4OLOB.js +23 -0
- package/dist/chunk-WIZ4OLOB.js.map +1 -0
- package/dist/chunk-WJRJBMFN.js +21 -0
- package/dist/chunk-WJRJBMFN.js.map +1 -0
- package/dist/chunk-YUPLJP3F.js +33 -0
- package/dist/chunk-YUPLJP3F.js.map +1 -0
- package/dist/chunk-Z7ITPSUF.js +184 -0
- package/dist/chunk-Z7ITPSUF.js.map +1 -0
- package/dist/chunk-ZC76ALSI.js +75 -0
- package/dist/chunk-ZC76ALSI.js.map +1 -0
- package/dist/code-block-core-xkE94Rk5.d.ts +30 -0
- package/dist/components/accordion.d.ts +9 -0
- package/dist/components/accordion.js +98 -0
- package/dist/components/accordion.js.map +1 -0
- package/dist/components/alert-dialog.d.ts +26 -0
- package/dist/components/alert-dialog.js +341 -0
- package/dist/components/alert-dialog.js.map +1 -0
- package/dist/components/alert.d.ts +13 -0
- package/dist/components/alert.js +76 -0
- package/dist/components/alert.js.map +1 -0
- package/dist/components/aspect-ratio.d.ts +6 -0
- package/dist/components/aspect-ratio.js +12 -0
- package/dist/components/aspect-ratio.js.map +1 -0
- package/dist/components/avatar.d.ts +13 -0
- package/dist/components/avatar.js +19 -0
- package/dist/components/avatar.js.map +1 -0
- package/dist/components/badge.d.ts +12 -0
- package/dist/components/badge.js +11 -0
- package/dist/components/badge.js.map +1 -0
- package/dist/components/breadcrumb.d.ts +13 -0
- package/dist/components/breadcrumb.js +102 -0
- package/dist/components/breadcrumb.js.map +1 -0
- package/dist/components/button-group.d.ts +16 -0
- package/dist/components/button-group.js +15 -0
- package/dist/components/button-group.js.map +1 -0
- package/dist/components/button.d.ts +14 -0
- package/dist/components/button.js +11 -0
- package/dist/components/button.js.map +1 -0
- package/dist/components/calendar.d.ts +14 -0
- package/dist/components/calendar.js +13 -0
- package/dist/components/calendar.js.map +1 -0
- package/dist/components/card.d.ts +13 -0
- package/dist/components/card.js +21 -0
- package/dist/components/card.js.map +1 -0
- package/dist/components/carousel.d.ts +32 -0
- package/dist/components/carousel.js +196 -0
- package/dist/components/carousel.js.map +1 -0
- package/dist/components/chart.d.ts +46 -0
- package/dist/components/chart.js +254 -0
- package/dist/components/chart.js.map +1 -0
- package/dist/components/checkbox.d.ts +6 -0
- package/dist/components/checkbox.js +41 -0
- package/dist/components/checkbox.js.map +1 -0
- package/dist/components/code-block-core.d.ts +3 -0
- package/dist/components/code-block-core.js +13 -0
- package/dist/components/code-block-core.js.map +1 -0
- package/dist/components/code-block-custom.d.ts +20 -0
- package/dist/components/code-block-custom.js +16 -0
- package/dist/components/code-block-custom.js.map +1 -0
- package/dist/components/code-block-shiki.d.ts +13 -0
- package/dist/components/code-block-shiki.js +15 -0
- package/dist/components/code-block-shiki.js.map +1 -0
- package/dist/components/code-block.d.ts +5 -0
- package/dist/components/code-block.js +14 -0
- package/dist/components/code-block.js.map +1 -0
- package/dist/components/collapsible.d.ts +8 -0
- package/dist/components/collapsible.js +24 -0
- package/dist/components/collapsible.js.map +1 -0
- package/dist/components/collection.d.ts +63 -0
- package/dist/components/collection.js +598 -0
- package/dist/components/collection.js.map +1 -0
- package/dist/components/color-dot.d.ts +19 -0
- package/dist/components/color-dot.js +41 -0
- package/dist/components/color-dot.js.map +1 -0
- package/dist/components/color-picker.d.ts +12 -0
- package/dist/components/color-picker.js +142 -0
- package/dist/components/color-picker.js.map +1 -0
- package/dist/components/combobox.d.ts +74 -0
- package/dist/components/combobox.js +610 -0
- package/dist/components/combobox.js.map +1 -0
- package/dist/components/command.d.ts +21 -0
- package/dist/components/command.js +31 -0
- package/dist/components/command.js.map +1 -0
- package/dist/components/date-picker.d.ts +43 -0
- package/dist/components/date-picker.js +235 -0
- package/dist/components/date-picker.js.map +1 -0
- package/dist/components/dialog.d.ts +25 -0
- package/dist/components/dialog.js +31 -0
- package/dist/components/dialog.js.map +1 -0
- package/dist/components/drawer.d.ts +15 -0
- package/dist/components/drawer.js +124 -0
- package/dist/components/drawer.js.map +1 -0
- package/dist/components/dropdown-menu.d.ts +34 -0
- package/dist/components/dropdown-menu.js +248 -0
- package/dist/components/dropdown-menu.js.map +1 -0
- package/dist/components/empty.d.ts +15 -0
- package/dist/components/empty.js +104 -0
- package/dist/components/empty.js.map +1 -0
- package/dist/components/field.d.ts +29 -0
- package/dist/components/field.js +214 -0
- package/dist/components/field.js.map +1 -0
- package/dist/components/format-bytes.d.ts +12 -0
- package/dist/components/format-bytes.js +30 -0
- package/dist/components/format-bytes.js.map +1 -0
- package/dist/components/format-number.d.ts +12 -0
- package/dist/components/format-number.js +30 -0
- package/dist/components/format-number.js.map +1 -0
- package/dist/components/gauge.d.ts +11 -0
- package/dist/components/gauge.js +82 -0
- package/dist/components/gauge.js.map +1 -0
- package/dist/components/hover-card.d.ts +8 -0
- package/dist/components/hover-card.js +45 -0
- package/dist/components/hover-card.js.map +1 -0
- package/dist/components/input-group.d.ts +24 -0
- package/dist/components/input-group.js +23 -0
- package/dist/components/input-group.js.map +1 -0
- package/dist/components/input-otp.d.ts +20 -0
- package/dist/components/input-otp.js +95 -0
- package/dist/components/input-otp.js.map +1 -0
- package/dist/components/input.d.ts +9 -0
- package/dist/components/input.js +9 -0
- package/dist/components/input.js.map +1 -0
- package/dist/components/item.d.ts +27 -0
- package/dist/components/item.js +182 -0
- package/dist/components/item.js.map +1 -0
- package/dist/components/kbd.d.ts +6 -0
- package/dist/components/kbd.js +34 -0
- package/dist/components/kbd.js.map +1 -0
- package/dist/components/label.d.ts +6 -0
- package/dist/components/label.js +9 -0
- package/dist/components/label.js.map +1 -0
- package/dist/components/loading-bar.d.ts +8 -0
- package/dist/components/loading-bar.js +127 -0
- package/dist/components/loading-bar.js.map +1 -0
- package/dist/components/loading-dots.d.ts +5 -0
- package/dist/components/loading-dots.js +45 -0
- package/dist/components/loading-dots.js.map +1 -0
- package/dist/components/main-provider.d.ts +7 -0
- package/dist/components/main-provider.js +12 -0
- package/dist/components/main-provider.js.map +1 -0
- package/dist/components/mark.d.ts +11 -0
- package/dist/components/mark.js +44 -0
- package/dist/components/mark.js.map +1 -0
- package/dist/components/pagination.d.ts +21 -0
- package/dist/components/pagination.js +114 -0
- package/dist/components/pagination.js.map +1 -0
- package/dist/components/popover.d.ts +12 -0
- package/dist/components/popover.js +22 -0
- package/dist/components/popover.js.map +1 -0
- package/dist/components/prev-next-navigation.d.ts +15 -0
- package/dist/components/prev-next-navigation.js +85 -0
- package/dist/components/prev-next-navigation.js.map +1 -0
- package/dist/components/progress.d.ts +6 -0
- package/dist/components/progress.js +38 -0
- package/dist/components/progress.js.map +1 -0
- package/dist/components/radio-group.d.ts +7 -0
- package/dist/components/radio-group.js +57 -0
- package/dist/components/radio-group.js.map +1 -0
- package/dist/components/relative-time.d.ts +16 -0
- package/dist/components/relative-time.js +75 -0
- package/dist/components/relative-time.js.map +1 -0
- package/dist/components/resizable.d.ts +10 -0
- package/dist/components/resizable.js +45 -0
- package/dist/components/resizable.js.map +1 -0
- package/dist/components/scroll-area.d.ts +7 -0
- package/dist/components/scroll-area.js +11 -0
- package/dist/components/scroll-area.js.map +1 -0
- package/dist/components/select.d.ts +20 -0
- package/dist/components/select.js +189 -0
- package/dist/components/select.js.map +1 -0
- package/dist/components/separator.d.ts +6 -0
- package/dist/components/separator.js +9 -0
- package/dist/components/separator.js.map +1 -0
- package/dist/components/sheet.d.ts +16 -0
- package/dist/components/sheet.js +25 -0
- package/dist/components/sheet.js.map +1 -0
- package/dist/components/show-more.d.ts +15 -0
- package/dist/components/show-more.js +79 -0
- package/dist/components/show-more.js.map +1 -0
- package/dist/components/skeleton.d.ts +5 -0
- package/dist/components/skeleton.js +8 -0
- package/dist/components/skeleton.js.map +1 -0
- package/dist/components/slider.d.ts +6 -0
- package/dist/components/slider.js +65 -0
- package/dist/components/slider.js.map +1 -0
- package/dist/components/snippet.d.ts +13 -0
- package/dist/components/snippet.js +135 -0
- package/dist/components/snippet.js.map +1 -0
- package/dist/components/sonner.d.ts +6 -0
- package/dist/components/sonner.js +10 -0
- package/dist/components/sonner.js.map +1 -0
- package/dist/components/spinner.d.ts +5 -0
- package/dist/components/spinner.js +8 -0
- package/dist/components/spinner.js.map +1 -0
- package/dist/components/stat.d.ts +17 -0
- package/dist/components/stat.js +71 -0
- package/dist/components/stat.js.map +1 -0
- package/dist/components/steps.d.ts +17 -0
- package/dist/components/steps.js +133 -0
- package/dist/components/steps.js.map +1 -0
- package/dist/components/switch.d.ts +8 -0
- package/dist/components/switch.js +44 -0
- package/dist/components/switch.js.map +1 -0
- package/dist/components/table.d.ts +12 -0
- package/dist/components/table.js +101 -0
- package/dist/components/table.js.map +1 -0
- package/dist/components/tabs.d.ts +14 -0
- package/dist/components/tabs.js +88 -0
- package/dist/components/tabs.js.map +1 -0
- package/dist/components/textarea.d.ts +5 -0
- package/dist/components/textarea.js +9 -0
- package/dist/components/textarea.js.map +1 -0
- package/dist/components/theme-provider.d.ts +10 -0
- package/dist/components/theme-provider.js +14 -0
- package/dist/components/theme-provider.js.map +1 -0
- package/dist/components/time-picker.d.ts +17 -0
- package/dist/components/time-picker.js +219 -0
- package/dist/components/time-picker.js.map +1 -0
- package/dist/components/timeline.d.ts +17 -0
- package/dist/components/timeline.js +138 -0
- package/dist/components/timeline.js.map +1 -0
- package/dist/components/toggle-group.d.ts +14 -0
- package/dist/components/toggle-group.js +82 -0
- package/dist/components/toggle-group.js.map +1 -0
- package/dist/components/toggle.d.ts +12 -0
- package/dist/components/toggle.js +11 -0
- package/dist/components/toggle.js.map +1 -0
- package/dist/components/tooltip.d.ts +9 -0
- package/dist/components/tooltip.js +15 -0
- package/dist/components/tooltip.js.map +1 -0
- package/dist/components/typography.d.ts +17 -0
- package/dist/components/typography.js +91 -0
- package/dist/components/typography.js.map +1 -0
- package/dist/hooks/use-mobile.d.ts +3 -0
- package/dist/hooks/use-mobile.js +7 -0
- package/dist/hooks/use-mobile.js.map +1 -0
- package/dist/hooks/use-theme.d.ts +3 -0
- package/dist/hooks/use-theme.js +8 -0
- package/dist/hooks/use-theme.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.js +27 -0
- package/dist/index.js.map +1 -0
- package/dist/layouts/center/index.d.ts +18 -0
- package/dist/layouts/center/index.js +73 -0
- package/dist/layouts/center/index.js.map +1 -0
- package/dist/layouts/chat/index.d.ts +42 -0
- package/dist/layouts/chat/index.js +191 -0
- package/dist/layouts/chat/index.js.map +1 -0
- package/dist/layouts/command/index.d.ts +2 -0
- package/dist/layouts/command/index.js +1 -0
- package/dist/layouts/command/index.js.map +1 -0
- package/dist/layouts/panel/index.d.ts +55 -0
- package/dist/layouts/panel/index.js +513 -0
- package/dist/layouts/panel/index.js.map +1 -0
- package/dist/layouts/presentation/index.d.ts +14 -0
- package/dist/layouts/presentation/index.js +100 -0
- package/dist/layouts/presentation/index.js.map +1 -0
- package/dist/layouts/site/index.d.ts +17 -0
- package/dist/layouts/site/index.js +82 -0
- package/dist/layouts/site/index.js.map +1 -0
- package/dist/layouts/window/index.d.ts +223 -0
- package/dist/layouts/window/index.js +127 -0
- package/dist/layouts/window/index.js.map +1 -0
- package/dist/layouts/workbench/index.d.ts +281 -0
- package/dist/layouts/workbench/index.js +2457 -0
- package/dist/layouts/workbench/index.js.map +1 -0
- package/dist/lib/format.d.ts +15 -0
- package/dist/lib/format.js +9 -0
- package/dist/lib/format.js.map +1 -0
- package/dist/lib/theme.d.ts +22 -0
- package/dist/lib/theme.js +25 -0
- package/dist/lib/theme.js.map +1 -0
- package/dist/lib/utils.d.ts +5 -0
- package/dist/lib/utils.js +7 -0
- package/dist/lib/utils.js.map +1 -0
- package/dist/styles/fonts.css +1 -0
- package/dist/styles/globals.css +717 -0
- package/dist/styles/tokens.css +693 -0
- package/package.json +137 -0
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Button
|
|
3
|
+
} from "../chunk-TU5CYBB4.js";
|
|
4
|
+
import "../chunk-O2BG2KSY.js";
|
|
5
|
+
import {
|
|
6
|
+
cn
|
|
7
|
+
} from "../chunk-DN2AEEA2.js";
|
|
8
|
+
|
|
9
|
+
// src/components/pagination.tsx
|
|
10
|
+
import "react";
|
|
11
|
+
import { ChevronLeftIcon, ChevronRightIcon, MoreHorizontalIcon } from "lucide-react";
|
|
12
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
13
|
+
function Pagination({ className, ...props }) {
|
|
14
|
+
return /* @__PURE__ */ jsx(
|
|
15
|
+
"nav",
|
|
16
|
+
{
|
|
17
|
+
role: "navigation",
|
|
18
|
+
"aria-label": "pagination",
|
|
19
|
+
"data-slot": "pagination",
|
|
20
|
+
className: cn("mx-auto flex w-full justify-center", className),
|
|
21
|
+
...props
|
|
22
|
+
}
|
|
23
|
+
);
|
|
24
|
+
}
|
|
25
|
+
function PaginationContent({ className, ...props }) {
|
|
26
|
+
return /* @__PURE__ */ jsx(
|
|
27
|
+
"ul",
|
|
28
|
+
{
|
|
29
|
+
"data-slot": "pagination-content",
|
|
30
|
+
className: cn("flex items-center gap-0.5", className),
|
|
31
|
+
...props
|
|
32
|
+
}
|
|
33
|
+
);
|
|
34
|
+
}
|
|
35
|
+
function PaginationItem({ ...props }) {
|
|
36
|
+
return /* @__PURE__ */ jsx("li", { "data-slot": "pagination-item", ...props });
|
|
37
|
+
}
|
|
38
|
+
function PaginationLink({ className, isActive, size = "icon", ...props }) {
|
|
39
|
+
return /* @__PURE__ */ jsx(Button, { asChild: true, variant: isActive ? "outline" : "ghost", size, className: cn(className), children: /* @__PURE__ */ jsx(
|
|
40
|
+
"a",
|
|
41
|
+
{
|
|
42
|
+
"aria-current": isActive ? "page" : void 0,
|
|
43
|
+
"data-slot": "pagination-link",
|
|
44
|
+
"data-active": isActive,
|
|
45
|
+
...props
|
|
46
|
+
}
|
|
47
|
+
) });
|
|
48
|
+
}
|
|
49
|
+
function PaginationPrevious({
|
|
50
|
+
className,
|
|
51
|
+
text = "Previous",
|
|
52
|
+
...props
|
|
53
|
+
}) {
|
|
54
|
+
return /* @__PURE__ */ jsxs(
|
|
55
|
+
PaginationLink,
|
|
56
|
+
{
|
|
57
|
+
"aria-label": "Go to previous page",
|
|
58
|
+
size: "default",
|
|
59
|
+
className: cn("pl-1.5!", className),
|
|
60
|
+
...props,
|
|
61
|
+
children: [
|
|
62
|
+
/* @__PURE__ */ jsx(ChevronLeftIcon, { "data-icon": "inline-start" }),
|
|
63
|
+
/* @__PURE__ */ jsx("span", { className: "hidden sm:block", children: text })
|
|
64
|
+
]
|
|
65
|
+
}
|
|
66
|
+
);
|
|
67
|
+
}
|
|
68
|
+
function PaginationNext({
|
|
69
|
+
className,
|
|
70
|
+
text = "Next",
|
|
71
|
+
...props
|
|
72
|
+
}) {
|
|
73
|
+
return /* @__PURE__ */ jsxs(
|
|
74
|
+
PaginationLink,
|
|
75
|
+
{
|
|
76
|
+
"aria-label": "Go to next page",
|
|
77
|
+
size: "default",
|
|
78
|
+
className: cn("pr-1.5!", className),
|
|
79
|
+
...props,
|
|
80
|
+
children: [
|
|
81
|
+
/* @__PURE__ */ jsx("span", { className: "hidden sm:block", children: text }),
|
|
82
|
+
/* @__PURE__ */ jsx(ChevronRightIcon, { "data-icon": "inline-end" })
|
|
83
|
+
]
|
|
84
|
+
}
|
|
85
|
+
);
|
|
86
|
+
}
|
|
87
|
+
function PaginationEllipsis({ className, ...props }) {
|
|
88
|
+
return /* @__PURE__ */ jsxs(
|
|
89
|
+
"span",
|
|
90
|
+
{
|
|
91
|
+
"aria-hidden": true,
|
|
92
|
+
"data-slot": "pagination-ellipsis",
|
|
93
|
+
className: cn(
|
|
94
|
+
"flex size-8 items-center justify-center [&_svg:not([class*='size-'])]:size-4",
|
|
95
|
+
className
|
|
96
|
+
),
|
|
97
|
+
...props,
|
|
98
|
+
children: [
|
|
99
|
+
/* @__PURE__ */ jsx(MoreHorizontalIcon, {}),
|
|
100
|
+
/* @__PURE__ */ jsx("span", { className: "sr-only", children: "More pages" })
|
|
101
|
+
]
|
|
102
|
+
}
|
|
103
|
+
);
|
|
104
|
+
}
|
|
105
|
+
export {
|
|
106
|
+
Pagination,
|
|
107
|
+
PaginationContent,
|
|
108
|
+
PaginationEllipsis,
|
|
109
|
+
PaginationItem,
|
|
110
|
+
PaginationLink,
|
|
111
|
+
PaginationNext,
|
|
112
|
+
PaginationPrevious
|
|
113
|
+
};
|
|
114
|
+
//# sourceMappingURL=pagination.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/components/pagination.tsx"],"sourcesContent":["import * as React from \"react\"\n\nimport { ChevronLeftIcon, ChevronRightIcon, MoreHorizontalIcon } from \"lucide-react\"\n\nimport { Button } from \"@hyunsdev/ui/components/button\"\nimport { cn } from \"@hyunsdev/ui/lib/utils\"\n\nfunction Pagination({ className, ...props }: React.ComponentProps<\"nav\">) {\n return (\n <nav\n role=\"navigation\"\n aria-label=\"pagination\"\n data-slot=\"pagination\"\n className={cn(\"mx-auto flex w-full justify-center\", className)}\n {...props}\n />\n )\n}\n\nfunction PaginationContent({ className, ...props }: React.ComponentProps<\"ul\">) {\n return (\n <ul\n data-slot=\"pagination-content\"\n className={cn(\"flex items-center gap-0.5\", className)}\n {...props}\n />\n )\n}\n\nfunction PaginationItem({ ...props }: React.ComponentProps<\"li\">) {\n return <li data-slot=\"pagination-item\" {...props} />\n}\n\ntype PaginationLinkProps = {\n isActive?: boolean\n} & Pick<React.ComponentProps<typeof Button>, \"size\"> &\n React.ComponentProps<\"a\">\n\nfunction PaginationLink({ className, isActive, size = \"icon\", ...props }: PaginationLinkProps) {\n return (\n <Button asChild variant={isActive ? \"outline\" : \"ghost\"} size={size} className={cn(className)}>\n <a\n aria-current={isActive ? \"page\" : undefined}\n data-slot=\"pagination-link\"\n data-active={isActive}\n {...props}\n />\n </Button>\n )\n}\n\nfunction PaginationPrevious({\n className,\n text = \"Previous\",\n ...props\n}: React.ComponentProps<typeof PaginationLink> & { text?: string }) {\n return (\n <PaginationLink\n aria-label=\"Go to previous page\"\n size=\"default\"\n className={cn(\"pl-1.5!\", className)}\n {...props}\n >\n <ChevronLeftIcon data-icon=\"inline-start\" />\n <span className=\"hidden sm:block\">{text}</span>\n </PaginationLink>\n )\n}\n\nfunction PaginationNext({\n className,\n text = \"Next\",\n ...props\n}: React.ComponentProps<typeof PaginationLink> & { text?: string }) {\n return (\n <PaginationLink\n aria-label=\"Go to next page\"\n size=\"default\"\n className={cn(\"pr-1.5!\", className)}\n {...props}\n >\n <span className=\"hidden sm:block\">{text}</span>\n <ChevronRightIcon data-icon=\"inline-end\" />\n </PaginationLink>\n )\n}\n\nfunction PaginationEllipsis({ className, ...props }: React.ComponentProps<\"span\">) {\n return (\n <span\n aria-hidden\n data-slot=\"pagination-ellipsis\"\n className={cn(\n \"flex size-8 items-center justify-center [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n <MoreHorizontalIcon />\n <span className=\"sr-only\">More pages</span>\n </span>\n )\n}\n\nexport {\n Pagination,\n PaginationContent,\n PaginationEllipsis,\n PaginationItem,\n PaginationLink,\n PaginationNext,\n PaginationPrevious,\n}\n"],"mappings":";;;;;;;;;AAAA,OAAuB;AAEvB,SAAS,iBAAiB,kBAAkB,0BAA0B;AAOlE,cAgDA,YAhDA;AAFJ,SAAS,WAAW,EAAE,WAAW,GAAG,MAAM,GAAgC;AACxE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MACL,cAAW;AAAA,MACX,aAAU;AAAA,MACV,WAAW,GAAG,sCAAsC,SAAS;AAAA,MAC5D,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,kBAAkB,EAAE,WAAW,GAAG,MAAM,GAA+B;AAC9E,SACE;AAAA,IAAC;AAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAW,GAAG,6BAA6B,SAAS;AAAA,MACnD,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,eAAe,EAAE,GAAG,MAAM,GAA+B;AAChE,SAAO,oBAAC,QAAG,aAAU,mBAAmB,GAAG,OAAO;AACpD;AAOA,SAAS,eAAe,EAAE,WAAW,UAAU,OAAO,QAAQ,GAAG,MAAM,GAAwB;AAC7F,SACE,oBAAC,UAAO,SAAO,MAAC,SAAS,WAAW,YAAY,SAAS,MAAY,WAAW,GAAG,SAAS,GAC1F;AAAA,IAAC;AAAA;AAAA,MACC,gBAAc,WAAW,SAAS;AAAA,MAClC,aAAU;AAAA,MACV,eAAa;AAAA,MACZ,GAAG;AAAA;AAAA,EACN,GACF;AAEJ;AAEA,SAAS,mBAAmB;AAAA,EAC1B;AAAA,EACA,OAAO;AAAA,EACP,GAAG;AACL,GAAoE;AAClE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,cAAW;AAAA,MACX,MAAK;AAAA,MACL,WAAW,GAAG,WAAW,SAAS;AAAA,MACjC,GAAG;AAAA,MAEJ;AAAA,4BAAC,mBAAgB,aAAU,gBAAe;AAAA,QAC1C,oBAAC,UAAK,WAAU,mBAAmB,gBAAK;AAAA;AAAA;AAAA,EAC1C;AAEJ;AAEA,SAAS,eAAe;AAAA,EACtB;AAAA,EACA,OAAO;AAAA,EACP,GAAG;AACL,GAAoE;AAClE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,cAAW;AAAA,MACX,MAAK;AAAA,MACL,WAAW,GAAG,WAAW,SAAS;AAAA,MACjC,GAAG;AAAA,MAEJ;AAAA,4BAAC,UAAK,WAAU,mBAAmB,gBAAK;AAAA,QACxC,oBAAC,oBAAiB,aAAU,cAAa;AAAA;AAAA;AAAA,EAC3C;AAEJ;AAEA,SAAS,mBAAmB,EAAE,WAAW,GAAG,MAAM,GAAiC;AACjF,SACE;AAAA,IAAC;AAAA;AAAA,MACC,eAAW;AAAA,MACX,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEJ;AAAA,4BAAC,sBAAmB;AAAA,QACpB,oBAAC,UAAK,WAAU,WAAU,wBAAU;AAAA;AAAA;AAAA,EACtC;AAEJ;","names":[]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import * as PopoverPrimitive from '@radix-ui/react-popover';
|
|
3
|
+
|
|
4
|
+
declare function Popover({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Root>): React.JSX.Element;
|
|
5
|
+
declare function PopoverTrigger({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Trigger>): React.JSX.Element;
|
|
6
|
+
declare function PopoverContent({ className, align, sideOffset, ...props }: React.ComponentProps<typeof PopoverPrimitive.Content>): React.JSX.Element;
|
|
7
|
+
declare function PopoverAnchor({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Anchor>): React.JSX.Element;
|
|
8
|
+
declare function PopoverHeader({ className, ...props }: React.ComponentProps<"div">): React.JSX.Element;
|
|
9
|
+
declare function PopoverTitle({ className, ...props }: React.ComponentProps<"h2">): React.JSX.Element;
|
|
10
|
+
declare function PopoverDescription({ className, ...props }: React.ComponentProps<"p">): React.JSX.Element;
|
|
11
|
+
|
|
12
|
+
export { Popover, PopoverAnchor, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger };
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
Popover,
|
|
4
|
+
PopoverAnchor,
|
|
5
|
+
PopoverContent,
|
|
6
|
+
PopoverDescription,
|
|
7
|
+
PopoverHeader,
|
|
8
|
+
PopoverTitle,
|
|
9
|
+
PopoverTrigger
|
|
10
|
+
} from "../chunk-ZC76ALSI.js";
|
|
11
|
+
import "../chunk-O2BG2KSY.js";
|
|
12
|
+
import "../chunk-DN2AEEA2.js";
|
|
13
|
+
export {
|
|
14
|
+
Popover,
|
|
15
|
+
PopoverAnchor,
|
|
16
|
+
PopoverContent,
|
|
17
|
+
PopoverDescription,
|
|
18
|
+
PopoverHeader,
|
|
19
|
+
PopoverTitle,
|
|
20
|
+
PopoverTrigger
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=popover.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React__default from 'react';
|
|
2
|
+
|
|
3
|
+
declare function PrevNextNavigation({ className, ...props }: React__default.ComponentProps<"nav">): React__default.JSX.Element;
|
|
4
|
+
declare function PrevNextPrev({ className, children, asChild, title, label, ...props }: React__default.ComponentProps<"a"> & {
|
|
5
|
+
asChild?: boolean;
|
|
6
|
+
label?: string;
|
|
7
|
+
title: string;
|
|
8
|
+
}): React__default.JSX.Element;
|
|
9
|
+
declare function PrevNextNext({ className, children, asChild, title, label, ...props }: React__default.ComponentProps<"a"> & {
|
|
10
|
+
asChild?: boolean;
|
|
11
|
+
label?: string;
|
|
12
|
+
title: string;
|
|
13
|
+
}): React__default.JSX.Element;
|
|
14
|
+
|
|
15
|
+
export { PrevNextNavigation, PrevNextNext, PrevNextPrev };
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import {
|
|
2
|
+
cn
|
|
3
|
+
} from "../chunk-DN2AEEA2.js";
|
|
4
|
+
|
|
5
|
+
// src/components/prev-next-navigation.tsx
|
|
6
|
+
import "react";
|
|
7
|
+
import * as Slot from "@radix-ui/react-slot";
|
|
8
|
+
import { ChevronLeft, ChevronRight } from "lucide-react";
|
|
9
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
10
|
+
function PrevNextNavigation({ className, ...props }) {
|
|
11
|
+
return /* @__PURE__ */ jsx(
|
|
12
|
+
"nav",
|
|
13
|
+
{
|
|
14
|
+
role: "navigation",
|
|
15
|
+
"aria-label": "pagination",
|
|
16
|
+
className: cn("flex h-16 w-full items-center justify-between gap-2", className),
|
|
17
|
+
...props
|
|
18
|
+
}
|
|
19
|
+
);
|
|
20
|
+
}
|
|
21
|
+
function PrevNextLabel({ className, ...props }) {
|
|
22
|
+
return /* @__PURE__ */ jsx("p", { className: cn("text-text-faint text-sm", className), ...props });
|
|
23
|
+
}
|
|
24
|
+
function PrevNextTitle({ className, ...props }) {
|
|
25
|
+
return /* @__PURE__ */ jsx("p", { className: cn("text-text-normal truncate text-base font-medium", className), ...props });
|
|
26
|
+
}
|
|
27
|
+
var sharedLinkStyle = "group flex-1 min-w-0 bg-interactive-normal border border-border hover:bg-interactive-hover active:bg-interactive-active-hover text-text-faint flex w-full items-center gap-3 rounded-lg py-3 px-4 text-left text-sm";
|
|
28
|
+
function PrevNextPrev({
|
|
29
|
+
className,
|
|
30
|
+
children,
|
|
31
|
+
asChild,
|
|
32
|
+
title,
|
|
33
|
+
label = "Previous",
|
|
34
|
+
...props
|
|
35
|
+
}) {
|
|
36
|
+
const Comp = asChild ? Slot.Root : "a";
|
|
37
|
+
return /* @__PURE__ */ jsxs(
|
|
38
|
+
Comp,
|
|
39
|
+
{
|
|
40
|
+
"data-slot": "a",
|
|
41
|
+
className: cn(sharedLinkStyle, "justify-start text-left", className),
|
|
42
|
+
...props,
|
|
43
|
+
children: [
|
|
44
|
+
/* @__PURE__ */ jsx(ChevronLeft, { className: "shrink-0 transition-transform duration-200 ease-out group-hover:-translate-x-1" }),
|
|
45
|
+
/* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-col", children: [
|
|
46
|
+
/* @__PURE__ */ jsx(PrevNextLabel, { children: label }),
|
|
47
|
+
/* @__PURE__ */ jsx(PrevNextTitle, { children: title })
|
|
48
|
+
] }),
|
|
49
|
+
asChild ? /* @__PURE__ */ jsx(Slot.Slottable, { children }) : null
|
|
50
|
+
]
|
|
51
|
+
}
|
|
52
|
+
);
|
|
53
|
+
}
|
|
54
|
+
function PrevNextNext({
|
|
55
|
+
className,
|
|
56
|
+
children,
|
|
57
|
+
asChild,
|
|
58
|
+
title,
|
|
59
|
+
label = "Next",
|
|
60
|
+
...props
|
|
61
|
+
}) {
|
|
62
|
+
const Comp = asChild ? Slot.Root : "a";
|
|
63
|
+
return /* @__PURE__ */ jsxs(
|
|
64
|
+
Comp,
|
|
65
|
+
{
|
|
66
|
+
"data-slot": "a",
|
|
67
|
+
className: cn(sharedLinkStyle, "justify-end text-right", className),
|
|
68
|
+
...props,
|
|
69
|
+
children: [
|
|
70
|
+
/* @__PURE__ */ jsx("div", { className: "flex min-w-0 flex-col", children: /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-col", children: [
|
|
71
|
+
/* @__PURE__ */ jsx(PrevNextLabel, { children: label }),
|
|
72
|
+
/* @__PURE__ */ jsx(PrevNextTitle, { children: title })
|
|
73
|
+
] }) }),
|
|
74
|
+
/* @__PURE__ */ jsx(ChevronRight, { className: "shrink-0 transition-transform duration-200 ease-out group-hover:translate-x-1" }),
|
|
75
|
+
asChild ? /* @__PURE__ */ jsx(Slot.Slottable, { children }) : null
|
|
76
|
+
]
|
|
77
|
+
}
|
|
78
|
+
);
|
|
79
|
+
}
|
|
80
|
+
export {
|
|
81
|
+
PrevNextNavigation,
|
|
82
|
+
PrevNextNext,
|
|
83
|
+
PrevNextPrev
|
|
84
|
+
};
|
|
85
|
+
//# sourceMappingURL=prev-next-navigation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/components/prev-next-navigation.tsx"],"sourcesContent":["import React from \"react\"\n\nimport * as Slot from \"@radix-ui/react-slot\"\nimport { ChevronLeft, ChevronRight } from \"lucide-react\"\n\nimport { cn } from \"@hyunsdev/ui/lib/utils\"\n\nexport function PrevNextNavigation({ className, ...props }: React.ComponentProps<\"nav\">) {\n return (\n <nav\n role=\"navigation\"\n aria-label=\"pagination\"\n className={cn(\"flex h-16 w-full items-center justify-between gap-2\", className)}\n {...props}\n />\n )\n}\n\nfunction PrevNextLabel({ className, ...props }: React.ComponentProps<\"p\">) {\n return <p className={cn(\"text-text-faint text-sm\", className)} {...props} />\n}\n\nfunction PrevNextTitle({ className, ...props }: React.ComponentProps<\"p\">) {\n return (\n <p className={cn(\"text-text-normal truncate text-base font-medium\", className)} {...props} />\n )\n}\n\nconst sharedLinkStyle =\n \"group flex-1 min-w-0 bg-interactive-normal border border-border hover:bg-interactive-hover active:bg-interactive-active-hover text-text-faint flex w-full items-center gap-3 rounded-lg py-3 px-4 text-left text-sm\"\n\nexport function PrevNextPrev({\n className,\n children,\n asChild,\n title,\n label = \"Previous\",\n ...props\n}: React.ComponentProps<\"a\"> & {\n asChild?: boolean\n label?: string\n title: string\n}) {\n const Comp = asChild ? Slot.Root : \"a\"\n\n return (\n <Comp\n data-slot=\"a\"\n className={cn(sharedLinkStyle, \"justify-start text-left\", className)}\n {...props}\n >\n <ChevronLeft className=\"shrink-0 transition-transform duration-200 ease-out group-hover:-translate-x-1\" />\n <div className=\"flex min-w-0 flex-col\">\n <PrevNextLabel>{label}</PrevNextLabel>\n <PrevNextTitle>{title}</PrevNextTitle>\n </div>\n {asChild ? <Slot.Slottable>{children}</Slot.Slottable> : null}\n </Comp>\n )\n}\n\nexport function PrevNextNext({\n className,\n children,\n asChild,\n title,\n label = \"Next\",\n ...props\n}: React.ComponentProps<\"a\"> & {\n asChild?: boolean\n label?: string\n title: string\n}) {\n const Comp = asChild ? Slot.Root : \"a\"\n\n return (\n <Comp\n data-slot=\"a\"\n className={cn(sharedLinkStyle, \"justify-end text-right\", className)}\n {...props}\n >\n <div className=\"flex min-w-0 flex-col\">\n <div className=\"flex min-w-0 flex-col\">\n <PrevNextLabel>{label}</PrevNextLabel>\n <PrevNextTitle>{title}</PrevNextTitle>\n </div>\n </div>\n <ChevronRight className=\"shrink-0 transition-transform duration-200 ease-out group-hover:translate-x-1\" />\n {asChild ? <Slot.Slottable>{children}</Slot.Slottable> : null}\n </Comp>\n )\n}\n"],"mappings":";;;;;AAAA,OAAkB;AAElB,YAAY,UAAU;AACtB,SAAS,aAAa,oBAAoB;AAMtC,cA2CE,YA3CF;AAFG,SAAS,mBAAmB,EAAE,WAAW,GAAG,MAAM,GAAgC;AACvF,SACE;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MACL,cAAW;AAAA,MACX,WAAW,GAAG,uDAAuD,SAAS;AAAA,MAC7E,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,cAAc,EAAE,WAAW,GAAG,MAAM,GAA8B;AACzE,SAAO,oBAAC,OAAE,WAAW,GAAG,2BAA2B,SAAS,GAAI,GAAG,OAAO;AAC5E;AAEA,SAAS,cAAc,EAAE,WAAW,GAAG,MAAM,GAA8B;AACzE,SACE,oBAAC,OAAE,WAAW,GAAG,mDAAmD,SAAS,GAAI,GAAG,OAAO;AAE/F;AAEA,IAAM,kBACJ;AAEK,SAAS,aAAa;AAAA,EAC3B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,QAAQ;AAAA,EACR,GAAG;AACL,GAIG;AACD,QAAM,OAAO,UAAe,YAAO;AAEnC,SACE;AAAA,IAAC;AAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAW,GAAG,iBAAiB,2BAA2B,SAAS;AAAA,MAClE,GAAG;AAAA,MAEJ;AAAA,4BAAC,eAAY,WAAU,kFAAiF;AAAA,QACxG,qBAAC,SAAI,WAAU,yBACb;AAAA,8BAAC,iBAAe,iBAAM;AAAA,UACtB,oBAAC,iBAAe,iBAAM;AAAA,WACxB;AAAA,QACC,UAAU,oBAAM,gBAAL,EAAgB,UAAS,IAAoB;AAAA;AAAA;AAAA,EAC3D;AAEJ;AAEO,SAAS,aAAa;AAAA,EAC3B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,QAAQ;AAAA,EACR,GAAG;AACL,GAIG;AACD,QAAM,OAAO,UAAe,YAAO;AAEnC,SACE;AAAA,IAAC;AAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAW,GAAG,iBAAiB,0BAA0B,SAAS;AAAA,MACjE,GAAG;AAAA,MAEJ;AAAA,4BAAC,SAAI,WAAU,yBACb,+BAAC,SAAI,WAAU,yBACb;AAAA,8BAAC,iBAAe,iBAAM;AAAA,UACtB,oBAAC,iBAAe,iBAAM;AAAA,WACxB,GACF;AAAA,QACA,oBAAC,gBAAa,WAAU,iFAAgF;AAAA,QACvG,UAAU,oBAAM,gBAAL,EAAgB,UAAS,IAAoB;AAAA;AAAA;AAAA,EAC3D;AAEJ;","names":[]}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
cn
|
|
4
|
+
} from "../chunk-DN2AEEA2.js";
|
|
5
|
+
|
|
6
|
+
// src/components/progress.tsx
|
|
7
|
+
import "react";
|
|
8
|
+
import * as ProgressPrimitive from "@radix-ui/react-progress";
|
|
9
|
+
import { jsx } from "react/jsx-runtime";
|
|
10
|
+
function Progress({
|
|
11
|
+
className,
|
|
12
|
+
value,
|
|
13
|
+
...props
|
|
14
|
+
}) {
|
|
15
|
+
return /* @__PURE__ */ jsx(
|
|
16
|
+
ProgressPrimitive.Root,
|
|
17
|
+
{
|
|
18
|
+
"data-slot": "progress",
|
|
19
|
+
className: cn(
|
|
20
|
+
"bg-border relative flex h-1 w-full items-center overflow-x-hidden rounded-full",
|
|
21
|
+
className
|
|
22
|
+
),
|
|
23
|
+
...props,
|
|
24
|
+
children: /* @__PURE__ */ jsx(
|
|
25
|
+
ProgressPrimitive.Indicator,
|
|
26
|
+
{
|
|
27
|
+
"data-slot": "progress-indicator",
|
|
28
|
+
className: "bg-interactive-accent size-full flex-1 transition-all",
|
|
29
|
+
style: { transform: `translateX(-${100 - (value || 0)}%)` }
|
|
30
|
+
}
|
|
31
|
+
)
|
|
32
|
+
}
|
|
33
|
+
);
|
|
34
|
+
}
|
|
35
|
+
export {
|
|
36
|
+
Progress
|
|
37
|
+
};
|
|
38
|
+
//# sourceMappingURL=progress.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/components/progress.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\n\nimport * as ProgressPrimitive from \"@radix-ui/react-progress\"\n\nimport { cn } from \"@hyunsdev/ui/lib/utils\"\n\nfunction Progress({\n className,\n value,\n ...props\n}: React.ComponentProps<typeof ProgressPrimitive.Root>) {\n return (\n <ProgressPrimitive.Root\n data-slot=\"progress\"\n className={cn(\n \"bg-border relative flex h-1 w-full items-center overflow-x-hidden rounded-full\",\n className,\n )}\n {...props}\n >\n <ProgressPrimitive.Indicator\n data-slot=\"progress-indicator\"\n className=\"bg-interactive-accent size-full flex-1 transition-all\"\n style={{ transform: `translateX(-${100 - (value || 0)}%)` }}\n />\n </ProgressPrimitive.Root>\n )\n}\n\nexport { Progress }\n"],"mappings":";;;;;;AAEA,OAAuB;AAEvB,YAAY,uBAAuB;AAkB7B;AAdN,SAAS,SAAS;AAAA,EAChB;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAAwD;AACtD,SACE;AAAA,IAAmB;AAAA,IAAlB;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEJ;AAAA,QAAmB;AAAA,QAAlB;AAAA,UACC,aAAU;AAAA,UACV,WAAU;AAAA,UACV,OAAO,EAAE,WAAW,eAAe,OAAO,SAAS,EAAE,KAAK;AAAA;AAAA,MAC5D;AAAA;AAAA,EACF;AAEJ;","names":[]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import * as RadioGroupPrimitive from '@radix-ui/react-radio-group';
|
|
3
|
+
|
|
4
|
+
declare function RadioGroup({ className, ...props }: React.ComponentProps<typeof RadioGroupPrimitive.Root>): React.JSX.Element;
|
|
5
|
+
declare function RadioGroupItem({ className, ...props }: React.ComponentProps<typeof RadioGroupPrimitive.Item>): React.JSX.Element;
|
|
6
|
+
|
|
7
|
+
export { RadioGroup, RadioGroupItem };
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
fieldFocusClass,
|
|
4
|
+
fieldInvalidClass
|
|
5
|
+
} from "../chunk-O2BG2KSY.js";
|
|
6
|
+
import {
|
|
7
|
+
cn
|
|
8
|
+
} from "../chunk-DN2AEEA2.js";
|
|
9
|
+
|
|
10
|
+
// src/components/radio-group.tsx
|
|
11
|
+
import "react";
|
|
12
|
+
import * as RadioGroupPrimitive from "@radix-ui/react-radio-group";
|
|
13
|
+
import { jsx } from "react/jsx-runtime";
|
|
14
|
+
function RadioGroup({
|
|
15
|
+
className,
|
|
16
|
+
...props
|
|
17
|
+
}) {
|
|
18
|
+
return /* @__PURE__ */ jsx(
|
|
19
|
+
RadioGroupPrimitive.Root,
|
|
20
|
+
{
|
|
21
|
+
"data-slot": "radio-group",
|
|
22
|
+
className: cn("grid w-full gap-2", className),
|
|
23
|
+
...props
|
|
24
|
+
}
|
|
25
|
+
);
|
|
26
|
+
}
|
|
27
|
+
function RadioGroupItem({
|
|
28
|
+
className,
|
|
29
|
+
...props
|
|
30
|
+
}) {
|
|
31
|
+
return /* @__PURE__ */ jsx(
|
|
32
|
+
RadioGroupPrimitive.Item,
|
|
33
|
+
{
|
|
34
|
+
"data-slot": "radio-group-item",
|
|
35
|
+
className: cn(
|
|
36
|
+
"group/radio-group-item peer border-field-border bg-field-background text-field-text disabled:bg-field-background-disabled aria-invalid:aria-checked:border-interactive-accent data-checked:border-interactive-accent data-checked:bg-interactive-accent data-checked:text-text-on-accent data-checked:hover:bg-interactive-accent-hover data-checked:hover:border-interactive-accent-hover data-checked:active:bg-interactive-accent-active-hover data-checked:active:border-interactive-accent-active-hover relative flex aspect-square size-4 shrink-0 rounded-full border transition-colors outline-none after:absolute after:-inset-x-3 after:-inset-y-2 disabled:cursor-not-allowed disabled:opacity-50",
|
|
37
|
+
fieldFocusClass,
|
|
38
|
+
fieldInvalidClass,
|
|
39
|
+
className
|
|
40
|
+
),
|
|
41
|
+
...props,
|
|
42
|
+
children: /* @__PURE__ */ jsx(
|
|
43
|
+
RadioGroupPrimitive.Indicator,
|
|
44
|
+
{
|
|
45
|
+
"data-slot": "radio-group-indicator",
|
|
46
|
+
className: "flex size-4 items-center justify-center",
|
|
47
|
+
children: /* @__PURE__ */ jsx("span", { className: "bg-text-on-accent absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2 rounded-full" })
|
|
48
|
+
}
|
|
49
|
+
)
|
|
50
|
+
}
|
|
51
|
+
);
|
|
52
|
+
}
|
|
53
|
+
export {
|
|
54
|
+
RadioGroup,
|
|
55
|
+
RadioGroupItem
|
|
56
|
+
};
|
|
57
|
+
//# sourceMappingURL=radio-group.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/components/radio-group.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\n\nimport * as RadioGroupPrimitive from \"@radix-ui/react-radio-group\"\n\nimport { cn } from \"@hyunsdev/ui/lib/utils\"\n\nimport { fieldFocusClass, fieldInvalidClass } from \"./_styles\"\n\nfunction RadioGroup({\n className,\n ...props\n}: React.ComponentProps<typeof RadioGroupPrimitive.Root>) {\n return (\n <RadioGroupPrimitive.Root\n data-slot=\"radio-group\"\n className={cn(\"grid w-full gap-2\", className)}\n {...props}\n />\n )\n}\n\nfunction RadioGroupItem({\n className,\n ...props\n}: React.ComponentProps<typeof RadioGroupPrimitive.Item>) {\n return (\n <RadioGroupPrimitive.Item\n data-slot=\"radio-group-item\"\n className={cn(\n \"group/radio-group-item peer border-field-border bg-field-background text-field-text disabled:bg-field-background-disabled aria-invalid:aria-checked:border-interactive-accent data-checked:border-interactive-accent data-checked:bg-interactive-accent data-checked:text-text-on-accent data-checked:hover:bg-interactive-accent-hover data-checked:hover:border-interactive-accent-hover data-checked:active:bg-interactive-accent-active-hover data-checked:active:border-interactive-accent-active-hover relative flex aspect-square size-4 shrink-0 rounded-full border transition-colors outline-none after:absolute after:-inset-x-3 after:-inset-y-2 disabled:cursor-not-allowed disabled:opacity-50\",\n fieldFocusClass,\n fieldInvalidClass,\n className,\n )}\n {...props}\n >\n <RadioGroupPrimitive.Indicator\n data-slot=\"radio-group-indicator\"\n className=\"flex size-4 items-center justify-center\"\n >\n <span className=\"bg-text-on-accent absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2 rounded-full\" />\n </RadioGroupPrimitive.Indicator>\n </RadioGroupPrimitive.Item>\n )\n}\n\nexport { RadioGroup, RadioGroupItem }\n"],"mappings":";;;;;;;;;;AAEA,OAAuB;AAEvB,YAAY,yBAAyB;AAWjC;AALJ,SAAS,WAAW;AAAA,EAClB;AAAA,EACA,GAAG;AACL,GAA0D;AACxD,SACE;AAAA,IAAqB;AAAA,IAApB;AAAA,MACC,aAAU;AAAA,MACV,WAAW,GAAG,qBAAqB,SAAS;AAAA,MAC3C,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,eAAe;AAAA,EACtB;AAAA,EACA,GAAG;AACL,GAA0D;AACxD,SACE;AAAA,IAAqB;AAAA,IAApB;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEJ;AAAA,QAAqB;AAAA,QAApB;AAAA,UACC,aAAU;AAAA,UACV,WAAU;AAAA,UAEV,8BAAC,UAAK,WAAU,qGAAoG;AAAA;AAAA,MACtH;AAAA;AAAA,EACF;AAEJ;","names":[]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { FormatDistanceOptions } from 'date-fns';
|
|
3
|
+
|
|
4
|
+
type RelativeTimeValue = Date | number | string;
|
|
5
|
+
type RelativeTimeFormatOptions = Pick<FormatDistanceOptions, "addSuffix" | "includeSeconds" | "locale"> & {
|
|
6
|
+
now?: RelativeTimeValue | undefined;
|
|
7
|
+
};
|
|
8
|
+
type RelativeTimeProps = Omit<React.ComponentProps<"time">, "children" | "dateTime"> & RelativeTimeFormatOptions & {
|
|
9
|
+
value: RelativeTimeValue;
|
|
10
|
+
fallback?: React.ReactNode;
|
|
11
|
+
refreshInterval?: false | number;
|
|
12
|
+
};
|
|
13
|
+
declare function formatRelativeTime(value: RelativeTimeValue, { addSuffix, includeSeconds, locale, now }?: RelativeTimeFormatOptions): string | null;
|
|
14
|
+
declare function RelativeTime({ value, addSuffix, className, fallback, includeSeconds, locale, now, refreshInterval, title, ...props }: RelativeTimeProps): string | number | bigint | boolean | React.JSX.Element | Iterable<React.ReactNode> | Promise<string | number | bigint | boolean | React.ReactPortal | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | Iterable<React.ReactNode> | null | undefined> | null;
|
|
15
|
+
|
|
16
|
+
export { RelativeTime, type RelativeTimeFormatOptions, type RelativeTimeProps, type RelativeTimeValue, formatRelativeTime };
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
cn
|
|
4
|
+
} from "../chunk-DN2AEEA2.js";
|
|
5
|
+
|
|
6
|
+
// src/components/relative-time.tsx
|
|
7
|
+
import * as React from "react";
|
|
8
|
+
import { formatDistance } from "date-fns";
|
|
9
|
+
import { jsx } from "react/jsx-runtime";
|
|
10
|
+
function toDate(value) {
|
|
11
|
+
return value instanceof Date ? value : new Date(value);
|
|
12
|
+
}
|
|
13
|
+
function isValidDate(date) {
|
|
14
|
+
return !Number.isNaN(date.getTime());
|
|
15
|
+
}
|
|
16
|
+
function formatRelativeTime(value, { addSuffix = true, includeSeconds, locale, now = /* @__PURE__ */ new Date() } = {}) {
|
|
17
|
+
const date = toDate(value);
|
|
18
|
+
const resolvedNow = toDate(now);
|
|
19
|
+
if (!isValidDate(date) || !isValidDate(resolvedNow)) {
|
|
20
|
+
return null;
|
|
21
|
+
}
|
|
22
|
+
return formatDistance(date, resolvedNow, {
|
|
23
|
+
addSuffix,
|
|
24
|
+
...includeSeconds !== void 0 ? { includeSeconds } : {},
|
|
25
|
+
...locale !== void 0 ? { locale } : {}
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
function RelativeTime({
|
|
29
|
+
value,
|
|
30
|
+
addSuffix = true,
|
|
31
|
+
className,
|
|
32
|
+
fallback = null,
|
|
33
|
+
includeSeconds,
|
|
34
|
+
locale,
|
|
35
|
+
now,
|
|
36
|
+
refreshInterval = 6e4,
|
|
37
|
+
title,
|
|
38
|
+
...props
|
|
39
|
+
}) {
|
|
40
|
+
const [, rerender] = React.useReducer((count) => count + 1, 0);
|
|
41
|
+
React.useEffect(() => {
|
|
42
|
+
if (now !== void 0 || refreshInterval === false || refreshInterval <= 0) {
|
|
43
|
+
return void 0;
|
|
44
|
+
}
|
|
45
|
+
const timer = window.setInterval(rerender, refreshInterval);
|
|
46
|
+
return () => window.clearInterval(timer);
|
|
47
|
+
}, [now, refreshInterval]);
|
|
48
|
+
const date = toDate(value);
|
|
49
|
+
const label = formatRelativeTime(value, {
|
|
50
|
+
addSuffix,
|
|
51
|
+
...includeSeconds !== void 0 ? { includeSeconds } : {},
|
|
52
|
+
...locale !== void 0 ? { locale } : {},
|
|
53
|
+
...now !== void 0 ? { now } : {}
|
|
54
|
+
});
|
|
55
|
+
if (!label || !isValidDate(date)) {
|
|
56
|
+
return fallback;
|
|
57
|
+
}
|
|
58
|
+
return /* @__PURE__ */ jsx(
|
|
59
|
+
"time",
|
|
60
|
+
{
|
|
61
|
+
"data-slot": "relative-time",
|
|
62
|
+
dateTime: date.toISOString(),
|
|
63
|
+
title: title ?? date.toLocaleString(),
|
|
64
|
+
suppressHydrationWarning: true,
|
|
65
|
+
className: cn("text-text-muted tabular-nums", className),
|
|
66
|
+
...props,
|
|
67
|
+
children: label
|
|
68
|
+
}
|
|
69
|
+
);
|
|
70
|
+
}
|
|
71
|
+
export {
|
|
72
|
+
RelativeTime,
|
|
73
|
+
formatRelativeTime
|
|
74
|
+
};
|
|
75
|
+
//# sourceMappingURL=relative-time.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/components/relative-time.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\n\nimport { formatDistance, type FormatDistanceOptions } from \"date-fns\"\n\nimport { cn } from \"@hyunsdev/ui/lib/utils\"\n\ntype RelativeTimeValue = Date | number | string\n\ntype RelativeTimeFormatOptions = Pick<\n FormatDistanceOptions,\n \"addSuffix\" | \"includeSeconds\" | \"locale\"\n> & {\n now?: RelativeTimeValue | undefined\n}\n\ntype RelativeTimeProps = Omit<React.ComponentProps<\"time\">, \"children\" | \"dateTime\"> &\n RelativeTimeFormatOptions & {\n value: RelativeTimeValue\n fallback?: React.ReactNode\n refreshInterval?: false | number\n }\n\nfunction toDate(value: RelativeTimeValue) {\n return value instanceof Date ? value : new Date(value)\n}\n\nfunction isValidDate(date: Date) {\n return !Number.isNaN(date.getTime())\n}\n\nfunction formatRelativeTime(\n value: RelativeTimeValue,\n { addSuffix = true, includeSeconds, locale, now = new Date() }: RelativeTimeFormatOptions = {},\n) {\n const date = toDate(value)\n const resolvedNow = toDate(now)\n\n if (!isValidDate(date) || !isValidDate(resolvedNow)) {\n return null\n }\n\n return formatDistance(date, resolvedNow, {\n addSuffix,\n ...(includeSeconds !== undefined ? { includeSeconds } : {}),\n ...(locale !== undefined ? { locale } : {}),\n })\n}\n\nfunction RelativeTime({\n value,\n addSuffix = true,\n className,\n fallback = null,\n includeSeconds,\n locale,\n now,\n refreshInterval = 60_000,\n title,\n ...props\n}: RelativeTimeProps) {\n const [, rerender] = React.useReducer((count: number) => count + 1, 0)\n\n React.useEffect(() => {\n if (now !== undefined || refreshInterval === false || refreshInterval <= 0) {\n return undefined\n }\n\n const timer = window.setInterval(rerender, refreshInterval)\n\n return () => window.clearInterval(timer)\n }, [now, refreshInterval])\n\n const date = toDate(value)\n const label = formatRelativeTime(value, {\n addSuffix,\n ...(includeSeconds !== undefined ? { includeSeconds } : {}),\n ...(locale !== undefined ? { locale } : {}),\n ...(now !== undefined ? { now } : {}),\n })\n\n if (!label || !isValidDate(date)) {\n return fallback\n }\n\n return (\n <time\n data-slot=\"relative-time\"\n dateTime={date.toISOString()}\n title={title ?? date.toLocaleString()}\n suppressHydrationWarning\n className={cn(\"text-text-muted tabular-nums\", className)}\n {...props}\n >\n {label}\n </time>\n )\n}\n\nexport {\n RelativeTime,\n formatRelativeTime,\n type RelativeTimeFormatOptions,\n type RelativeTimeProps,\n type RelativeTimeValue,\n}\n"],"mappings":";;;;;;AAEA,YAAY,WAAW;AAEvB,SAAS,sBAAkD;AAmFvD;AA/DJ,SAAS,OAAO,OAA0B;AACxC,SAAO,iBAAiB,OAAO,QAAQ,IAAI,KAAK,KAAK;AACvD;AAEA,SAAS,YAAY,MAAY;AAC/B,SAAO,CAAC,OAAO,MAAM,KAAK,QAAQ,CAAC;AACrC;AAEA,SAAS,mBACP,OACA,EAAE,YAAY,MAAM,gBAAgB,QAAQ,MAAM,oBAAI,KAAK,EAAE,IAA+B,CAAC,GAC7F;AACA,QAAM,OAAO,OAAO,KAAK;AACzB,QAAM,cAAc,OAAO,GAAG;AAE9B,MAAI,CAAC,YAAY,IAAI,KAAK,CAAC,YAAY,WAAW,GAAG;AACnD,WAAO;AAAA,EACT;AAEA,SAAO,eAAe,MAAM,aAAa;AAAA,IACvC;AAAA,IACA,GAAI,mBAAmB,SAAY,EAAE,eAAe,IAAI,CAAC;AAAA,IACzD,GAAI,WAAW,SAAY,EAAE,OAAO,IAAI,CAAC;AAAA,EAC3C,CAAC;AACH;AAEA,SAAS,aAAa;AAAA,EACpB;AAAA,EACA,YAAY;AAAA,EACZ;AAAA,EACA,WAAW;AAAA,EACX;AAAA,EACA;AAAA,EACA;AAAA,EACA,kBAAkB;AAAA,EAClB;AAAA,EACA,GAAG;AACL,GAAsB;AACpB,QAAM,CAAC,EAAE,QAAQ,IAAU,iBAAW,CAAC,UAAkB,QAAQ,GAAG,CAAC;AAErE,EAAM,gBAAU,MAAM;AACpB,QAAI,QAAQ,UAAa,oBAAoB,SAAS,mBAAmB,GAAG;AAC1E,aAAO;AAAA,IACT;AAEA,UAAM,QAAQ,OAAO,YAAY,UAAU,eAAe;AAE1D,WAAO,MAAM,OAAO,cAAc,KAAK;AAAA,EACzC,GAAG,CAAC,KAAK,eAAe,CAAC;AAEzB,QAAM,OAAO,OAAO,KAAK;AACzB,QAAM,QAAQ,mBAAmB,OAAO;AAAA,IACtC;AAAA,IACA,GAAI,mBAAmB,SAAY,EAAE,eAAe,IAAI,CAAC;AAAA,IACzD,GAAI,WAAW,SAAY,EAAE,OAAO,IAAI,CAAC;AAAA,IACzC,GAAI,QAAQ,SAAY,EAAE,IAAI,IAAI,CAAC;AAAA,EACrC,CAAC;AAED,MAAI,CAAC,SAAS,CAAC,YAAY,IAAI,GAAG;AAChC,WAAO;AAAA,EACT;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,aAAU;AAAA,MACV,UAAU,KAAK,YAAY;AAAA,MAC3B,OAAO,SAAS,KAAK,eAAe;AAAA,MACpC,0BAAwB;AAAA,MACxB,WAAW,GAAG,gCAAgC,SAAS;AAAA,MACtD,GAAG;AAAA,MAEH;AAAA;AAAA,EACH;AAEJ;","names":[]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import * as ResizablePrimitive from 'react-resizable-panels';
|
|
3
|
+
|
|
4
|
+
declare function ResizablePanelGroup({ className, ...props }: ResizablePrimitive.GroupProps): React.JSX.Element;
|
|
5
|
+
declare function ResizablePanel({ ...props }: ResizablePrimitive.PanelProps): React.JSX.Element;
|
|
6
|
+
declare function ResizableHandle({ withHandle, className, ...props }: ResizablePrimitive.SeparatorProps & {
|
|
7
|
+
withHandle?: boolean;
|
|
8
|
+
}): React.JSX.Element;
|
|
9
|
+
|
|
10
|
+
export { ResizableHandle, ResizablePanel, ResizablePanelGroup };
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
cn
|
|
4
|
+
} from "../chunk-DN2AEEA2.js";
|
|
5
|
+
|
|
6
|
+
// src/components/resizable.tsx
|
|
7
|
+
import * as ResizablePrimitive from "react-resizable-panels";
|
|
8
|
+
import { jsx } from "react/jsx-runtime";
|
|
9
|
+
function ResizablePanelGroup({ className, ...props }) {
|
|
10
|
+
return /* @__PURE__ */ jsx(
|
|
11
|
+
ResizablePrimitive.Group,
|
|
12
|
+
{
|
|
13
|
+
"data-slot": "resizable-panel-group",
|
|
14
|
+
className: cn("flex h-full w-full aria-[orientation=vertical]:flex-col", className),
|
|
15
|
+
...props
|
|
16
|
+
}
|
|
17
|
+
);
|
|
18
|
+
}
|
|
19
|
+
function ResizablePanel({ ...props }) {
|
|
20
|
+
return /* @__PURE__ */ jsx(ResizablePrimitive.Panel, { "data-slot": "resizable-panel", ...props });
|
|
21
|
+
}
|
|
22
|
+
function ResizableHandle({
|
|
23
|
+
withHandle,
|
|
24
|
+
className,
|
|
25
|
+
...props
|
|
26
|
+
}) {
|
|
27
|
+
return /* @__PURE__ */ jsx(
|
|
28
|
+
ResizablePrimitive.Separator,
|
|
29
|
+
{
|
|
30
|
+
"data-slot": "resizable-handle",
|
|
31
|
+
className: cn(
|
|
32
|
+
"bg-border ring-offset-background-primary focus-visible:ring-focus-ring 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:outline-hidden aria-[orientation=horizontal]:h-px aria-[orientation=horizontal]:w-full aria-[orientation=horizontal]:after:left-0 aria-[orientation=horizontal]:after:h-1 aria-[orientation=horizontal]:after:w-full aria-[orientation=horizontal]:after:translate-x-0 aria-[orientation=horizontal]:after:-translate-y-1/2 [&[aria-orientation=horizontal]>div]:rotate-90",
|
|
33
|
+
className
|
|
34
|
+
),
|
|
35
|
+
...props,
|
|
36
|
+
children: withHandle && /* @__PURE__ */ jsx("div", { className: "bg-border z-10 flex h-6 w-1 shrink-0 rounded-lg" })
|
|
37
|
+
}
|
|
38
|
+
);
|
|
39
|
+
}
|
|
40
|
+
export {
|
|
41
|
+
ResizableHandle,
|
|
42
|
+
ResizablePanel,
|
|
43
|
+
ResizablePanelGroup
|
|
44
|
+
};
|
|
45
|
+
//# sourceMappingURL=resizable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/components/resizable.tsx"],"sourcesContent":["\"use client\"\n\nimport * as ResizablePrimitive from \"react-resizable-panels\"\n\nimport { cn } from \"@hyunsdev/ui/lib/utils\"\n\nfunction ResizablePanelGroup({ className, ...props }: ResizablePrimitive.GroupProps) {\n return (\n <ResizablePrimitive.Group\n data-slot=\"resizable-panel-group\"\n className={cn(\"flex h-full w-full aria-[orientation=vertical]:flex-col\", className)}\n {...props}\n />\n )\n}\n\nfunction ResizablePanel({ ...props }: ResizablePrimitive.PanelProps) {\n return <ResizablePrimitive.Panel data-slot=\"resizable-panel\" {...props} />\n}\n\nfunction ResizableHandle({\n withHandle,\n className,\n ...props\n}: ResizablePrimitive.SeparatorProps & {\n withHandle?: boolean\n}) {\n return (\n <ResizablePrimitive.Separator\n data-slot=\"resizable-handle\"\n className={cn(\n \"bg-border ring-offset-background-primary focus-visible:ring-focus-ring 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:outline-hidden aria-[orientation=horizontal]:h-px aria-[orientation=horizontal]:w-full aria-[orientation=horizontal]:after:left-0 aria-[orientation=horizontal]:after:h-1 aria-[orientation=horizontal]:after:w-full aria-[orientation=horizontal]:after:translate-x-0 aria-[orientation=horizontal]:after:-translate-y-1/2 [&[aria-orientation=horizontal]>div]:rotate-90\",\n className,\n )}\n {...props}\n >\n {withHandle && <div className=\"bg-border z-10 flex h-6 w-1 shrink-0 rounded-lg\" />}\n </ResizablePrimitive.Separator>\n )\n}\n\nexport { ResizableHandle, ResizablePanel, ResizablePanelGroup }\n"],"mappings":";;;;;;AAEA,YAAY,wBAAwB;AAMhC;AAFJ,SAAS,oBAAoB,EAAE,WAAW,GAAG,MAAM,GAAkC;AACnF,SACE;AAAA,IAAoB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAW,GAAG,2DAA2D,SAAS;AAAA,MACjF,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,eAAe,EAAE,GAAG,MAAM,GAAkC;AACnE,SAAO,oBAAoB,0BAAnB,EAAyB,aAAU,mBAAmB,GAAG,OAAO;AAC1E;AAEA,SAAS,gBAAgB;AAAA,EACvB;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAEG;AACD,SACE;AAAA,IAAoB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEH,wBAAc,oBAAC,SAAI,WAAU,mDAAkD;AAAA;AAAA,EAClF;AAEJ;","names":[]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area';
|
|
3
|
+
|
|
4
|
+
declare function ScrollArea({ className, children, ...props }: React.ComponentProps<typeof ScrollAreaPrimitive.Root>): React.JSX.Element;
|
|
5
|
+
declare function ScrollBar({ className, orientation, ...props }: React.ComponentProps<typeof ScrollAreaPrimitive.ScrollAreaScrollbar>): React.JSX.Element;
|
|
6
|
+
|
|
7
|
+
export { ScrollArea, ScrollBar };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import * as SelectPrimitive from '@radix-ui/react-select';
|
|
3
|
+
|
|
4
|
+
declare function Select({ ...props }: React.ComponentProps<typeof SelectPrimitive.Root>): React.JSX.Element;
|
|
5
|
+
declare function SelectGroup({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.Group>): React.JSX.Element;
|
|
6
|
+
declare function SelectValue({ ...props }: React.ComponentProps<typeof SelectPrimitive.Value>): React.JSX.Element;
|
|
7
|
+
declare function SelectTrigger({ className, size, children, ...props }: React.ComponentProps<typeof SelectPrimitive.Trigger> & {
|
|
8
|
+
size?: "sm" | "default";
|
|
9
|
+
}): React.JSX.Element;
|
|
10
|
+
type SelectContentProps = React.ComponentProps<typeof SelectPrimitive.Content> & {
|
|
11
|
+
portalContainer?: React.ComponentProps<typeof SelectPrimitive.Portal>["container"];
|
|
12
|
+
};
|
|
13
|
+
declare function SelectContent({ className, children, position, align, portalContainer, ...props }: SelectContentProps): React.JSX.Element;
|
|
14
|
+
declare function SelectLabel({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.Label>): React.JSX.Element;
|
|
15
|
+
declare function SelectItem({ className, children, ...props }: React.ComponentProps<typeof SelectPrimitive.Item>): React.JSX.Element;
|
|
16
|
+
declare function SelectSeparator({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.Separator>): React.JSX.Element;
|
|
17
|
+
declare function SelectScrollUpButton({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.ScrollUpButton>): React.JSX.Element;
|
|
18
|
+
declare function SelectScrollDownButton({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.ScrollDownButton>): React.JSX.Element;
|
|
19
|
+
|
|
20
|
+
export { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue };
|