react-shadcn-kit 0.1.1 → 0.2.1
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/README.md +145 -71
- package/dist/assets/global.css +1 -1
- package/dist/components/composites/ComponentSearch.d.ts +43 -0
- package/dist/components/composites/ComponentSearch.js +141 -0
- package/dist/components/composites/ComponentSearch.js.map +1 -0
- package/dist/components/composites/action-button.d.ts +16 -0
- package/dist/components/composites/action-button.js +71 -0
- package/dist/components/composites/action-button.js.map +1 -0
- package/dist/components/composites/index.d.ts +9 -0
- package/dist/components/composites/sidebar-wrapper.d.ts +27 -0
- package/dist/components/composites/sidebar-wrapper.js +21 -0
- package/dist/components/composites/sidebar-wrapper.js.map +1 -0
- package/dist/{molecules → components/composites}/theme-toggle.js +3 -3
- package/dist/components/composites/theme-toggle.js.map +1 -0
- package/dist/{molecules → components/composites}/user-menu.js +4 -4
- package/dist/components/composites/user-menu.js.map +1 -0
- package/dist/components/marketing/hero.d.ts +12 -0
- package/dist/components/marketing/hero.js +87 -0
- package/dist/components/marketing/hero.js.map +1 -0
- package/dist/components/marketing/index.d.ts +6 -0
- package/dist/components/marketing/social-proof.d.ts +10 -0
- package/dist/components/marketing/social-proof.js +21 -0
- package/dist/components/marketing/social-proof.js.map +1 -0
- package/dist/components/marketing/value-props.d.ts +14 -0
- package/dist/components/marketing/value-props.js +25 -0
- package/dist/components/marketing/value-props.js.map +1 -0
- package/dist/{atoms → components/primitives}/accordion.js +1 -1
- package/dist/components/primitives/accordion.js.map +1 -0
- package/dist/{atoms → components/primitives}/alert-dialog.js +2 -2
- package/dist/components/primitives/alert-dialog.js.map +1 -0
- package/dist/{atoms → components/primitives}/alert.js +1 -1
- package/dist/components/primitives/alert.js.map +1 -0
- package/dist/components/primitives/aspect-ratio.js.map +1 -0
- package/dist/{atoms → components/primitives}/avatar.js +1 -1
- package/dist/components/primitives/avatar.js.map +1 -0
- package/dist/components/primitives/badge-variants.d.ts +3 -0
- package/dist/{atoms/badge.js → components/primitives/badge-variants.js} +7 -19
- package/dist/components/primitives/badge-variants.js.map +1 -0
- package/dist/components/primitives/badge.d.ts +9 -0
- package/dist/components/primitives/badge.js +21 -0
- package/dist/components/primitives/badge.js.map +1 -0
- package/dist/{atoms → components/primitives}/breadcrumb.js +1 -1
- package/dist/components/primitives/breadcrumb.js.map +1 -0
- package/dist/components/primitives/button-group-variants.d.ts +3 -0
- package/dist/components/primitives/button-group-variants.js +19 -0
- package/dist/components/primitives/button-group-variants.js.map +1 -0
- package/dist/components/primitives/button-group.d.ts +13 -0
- package/dist/components/primitives/button-group.js +52 -0
- package/dist/components/primitives/button-group.js.map +1 -0
- package/dist/components/primitives/button-variants.d.ts +4 -0
- package/dist/{atoms/button.js → components/primitives/button-variants.js} +8 -28
- package/dist/components/primitives/button-variants.js.map +1 -0
- package/dist/components/primitives/button.d.ts +9 -0
- package/dist/components/primitives/button.js +21 -0
- package/dist/components/primitives/button.js.map +1 -0
- package/dist/{atoms → components/primitives}/calendar.d.ts +1 -1
- package/dist/{atoms → components/primitives}/calendar.js +5 -4
- package/dist/components/primitives/calendar.js.map +1 -0
- package/dist/{atoms → components/primitives}/card.js +1 -1
- package/dist/components/primitives/card.js.map +1 -0
- package/dist/{atoms → components/primitives}/carousel.d.ts +1 -1
- package/dist/{atoms → components/primitives}/carousel.js +1 -1
- package/dist/components/primitives/carousel.js.map +1 -0
- package/dist/{atoms → components/primitives}/chart.js +1 -1
- package/dist/components/primitives/chart.js.map +1 -0
- package/dist/{atoms → components/primitives}/checkbox.js +1 -1
- package/dist/components/primitives/checkbox.js.map +1 -0
- package/dist/components/primitives/collapsible.js.map +1 -0
- package/dist/{atoms → components/primitives}/command.d.ts +1 -1
- package/dist/{atoms → components/primitives}/command.js +1 -1
- package/dist/components/primitives/command.js.map +1 -0
- package/dist/{atoms → components/primitives}/context-menu.js +1 -1
- package/dist/components/primitives/context-menu.js.map +1 -0
- package/dist/components/primitives/custom-button-variants.d.ts +5 -0
- package/dist/components/primitives/custom-button-variants.js +38 -0
- package/dist/components/primitives/custom-button-variants.js.map +1 -0
- package/dist/components/primitives/custom-button.d.ts +22 -0
- package/dist/components/primitives/custom-button.js +64 -0
- package/dist/components/primitives/custom-button.js.map +1 -0
- package/dist/{atoms → components/primitives}/dialog.js +8 -8
- package/dist/components/primitives/dialog.js.map +1 -0
- package/dist/{atoms → components/primitives}/drawer.js +1 -1
- package/dist/components/primitives/drawer.js.map +1 -0
- package/dist/{atoms → components/primitives}/dropdown-menu.js +1 -1
- package/dist/components/primitives/dropdown-menu.js.map +1 -0
- package/dist/{atoms → components/primitives}/empty.js +1 -1
- package/dist/components/primitives/empty.js.map +1 -0
- package/dist/{atoms → components/primitives}/field.d.ts +1 -1
- package/dist/{atoms → components/primitives}/field.js +1 -1
- package/dist/components/primitives/field.js.map +1 -0
- package/dist/components/primitives/form-context.d.ts +23 -0
- package/dist/components/primitives/form-context.js +26 -0
- package/dist/components/primitives/form-context.js.map +1 -0
- package/dist/components/primitives/form.d.ts +11 -0
- package/dist/components/primitives/form.js +85 -0
- package/dist/components/primitives/form.js.map +1 -0
- package/dist/{atoms → components/primitives}/hover-card.js +1 -1
- package/dist/components/primitives/hover-card.js.map +1 -0
- package/dist/components/primitives/index.d.ts +116 -0
- package/dist/{atoms → components/primitives}/input-group.d.ts +2 -2
- package/dist/{atoms → components/primitives}/input-group.js +1 -1
- package/dist/components/primitives/input-group.js.map +1 -0
- package/dist/{atoms → components/primitives}/input-otp.js +1 -1
- package/dist/components/primitives/input-otp.js.map +1 -0
- package/dist/{atoms → components/primitives}/input.js +1 -1
- package/dist/components/primitives/input.js.map +1 -0
- package/dist/{atoms → components/primitives}/item.d.ts +2 -2
- package/dist/{atoms → components/primitives}/item.js +1 -1
- package/dist/components/primitives/item.js.map +1 -0
- package/dist/{atoms → components/primitives}/kbd.js +1 -1
- package/dist/components/primitives/kbd.js.map +1 -0
- package/dist/{atoms → components/primitives}/label.js +1 -1
- package/dist/components/primitives/label.js.map +1 -0
- package/dist/components/primitives/loading-swap.d.ts +8 -0
- package/dist/components/primitives/loading-swap.js +25 -0
- package/dist/components/primitives/loading-swap.js.map +1 -0
- package/dist/{atoms → components/primitives}/menubar.js +1 -1
- package/dist/components/primitives/menubar.js.map +1 -0
- package/dist/components/primitives/navigation-menu-variants.d.ts +1 -0
- package/dist/components/primitives/navigation-menu-variants.js +8 -0
- package/dist/components/primitives/navigation-menu-variants.js.map +1 -0
- package/dist/components/primitives/navigation-menu.d.ts +13 -0
- package/dist/components/primitives/navigation-menu.js +102 -0
- package/dist/components/primitives/navigation-menu.js.map +1 -0
- package/dist/{atoms → components/primitives}/pagination.d.ts +1 -1
- package/dist/{atoms → components/primitives}/pagination.js +2 -2
- package/dist/components/primitives/pagination.js.map +1 -0
- package/dist/{atoms → components/primitives}/popover.js +1 -1
- package/dist/components/primitives/popover.js.map +1 -0
- package/dist/{atoms → components/primitives}/progress.js +1 -1
- package/dist/components/primitives/progress.js.map +1 -0
- package/dist/{atoms → components/primitives}/radio-group.js +1 -1
- package/dist/components/primitives/radio-group.js.map +1 -0
- package/dist/{atoms → components/primitives}/resizable.js +1 -1
- package/dist/components/primitives/resizable.js.map +1 -0
- package/dist/{atoms → components/primitives}/scroll-area.js +1 -1
- package/dist/components/primitives/scroll-area.js.map +1 -0
- package/dist/{atoms → components/primitives}/select.js +1 -1
- package/dist/components/primitives/select.js.map +1 -0
- package/dist/{atoms → components/primitives}/separator.js +1 -1
- package/dist/components/primitives/separator.js.map +1 -0
- package/dist/{atoms → components/primitives}/sheet.js +5 -5
- package/dist/components/primitives/sheet.js.map +1 -0
- package/dist/components/primitives/sidebar-context.d.ts +12 -0
- package/dist/components/primitives/sidebar-context.js +13 -0
- package/dist/components/primitives/sidebar-context.js.map +1 -0
- package/dist/components/primitives/sidebar-variants.d.ts +4 -0
- package/dist/components/primitives/sidebar-variants.js +25 -0
- package/dist/components/primitives/sidebar-variants.js.map +1 -0
- package/dist/components/primitives/sidebar.d.ts +56 -0
- package/dist/components/primitives/sidebar.js +542 -0
- package/dist/components/primitives/sidebar.js.map +1 -0
- package/dist/{atoms → components/primitives}/skeleton.js +1 -1
- package/dist/components/primitives/skeleton.js.map +1 -0
- package/dist/{atoms → components/primitives}/slider.js +1 -1
- package/dist/components/primitives/slider.js.map +1 -0
- package/dist/components/primitives/sonner.js.map +1 -0
- package/dist/{atoms → components/primitives}/spinner.js +1 -1
- package/dist/components/primitives/spinner.js.map +1 -0
- package/dist/{atoms → components/primitives}/switch.js +1 -1
- package/dist/components/primitives/switch.js.map +1 -0
- package/dist/{atoms → components/primitives}/table.js +1 -1
- package/dist/components/primitives/table.js.map +1 -0
- package/dist/{atoms → components/primitives}/tabs.js +1 -1
- package/dist/components/primitives/tabs.js.map +1 -0
- package/dist/{atoms → components/primitives}/textarea.js +1 -1
- package/dist/components/primitives/textarea.js.map +1 -0
- package/dist/components/primitives/theme-provider.js.map +1 -0
- package/dist/{atoms → components/primitives}/toggle-group.d.ts +1 -1
- package/dist/{atoms → components/primitives}/toggle-group.js +2 -2
- package/dist/components/primitives/toggle-group.js.map +1 -0
- package/dist/components/primitives/toggle-variants.d.ts +4 -0
- package/dist/{atoms/toggle.js → components/primitives/toggle-variants.js} +5 -24
- package/dist/components/primitives/toggle-variants.js.map +1 -0
- package/dist/components/primitives/toggle.d.ts +9 -0
- package/dist/components/primitives/toggle.js +21 -0
- package/dist/components/primitives/toggle.js.map +1 -0
- package/dist/{atoms → components/primitives}/tooltip.js +1 -1
- package/dist/components/primitives/tooltip.js.map +1 -0
- package/dist/composites/index.js +13 -0
- package/dist/{organisms → composites}/index.js.map +1 -1
- package/dist/hooks/index.d.ts +7 -0
- package/dist/hooks/index.js +8 -2
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/use-aria-live.d.ts +22 -0
- package/dist/hooks/use-aria-live.js +18 -0
- package/dist/hooks/use-aria-live.js.map +1 -0
- package/dist/hooks/use-focus-visible.d.ts +15 -0
- package/dist/hooks/use-focus-visible.js +16 -0
- package/dist/hooks/use-focus-visible.js.map +1 -0
- package/dist/hooks/use-screen-reader-only.d.ts +14 -0
- package/dist/hooks/use-screen-reader-only.js +10 -0
- package/dist/hooks/use-screen-reader-only.js.map +1 -0
- package/dist/index.d.ts +10 -58
- package/dist/index.js +372 -343
- package/dist/index.js.map +1 -1
- package/dist/lib/index.d.ts +3 -0
- package/dist/lib/index.js +8 -2
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/utils-enhanced.d.ts +27 -0
- package/dist/lib/utils-enhanced.js +28 -0
- package/dist/lib/utils-enhanced.js.map +1 -0
- package/dist/lib/utils-enhanced.test.d.ts +1 -0
- package/dist/marketing/index.js +9 -0
- package/dist/primitives/index.js +345 -0
- package/dist/{atoms → primitives}/index.js.map +1 -1
- package/package.json +24 -27
- package/dist/atoms/accordion.js.map +0 -1
- package/dist/atoms/alert-dialog.js.map +0 -1
- package/dist/atoms/alert.js.map +0 -1
- package/dist/atoms/aspect-ratio.js.map +0 -1
- package/dist/atoms/avatar.js.map +0 -1
- package/dist/atoms/badge.d.ts +0 -9
- package/dist/atoms/badge.js.map +0 -1
- package/dist/atoms/breadcrumb.js.map +0 -1
- package/dist/atoms/button-group.d.ts +0 -11
- package/dist/atoms/button-group.js +0 -76
- package/dist/atoms/button-group.js.map +0 -1
- package/dist/atoms/button.d.ts +0 -10
- package/dist/atoms/button.js.map +0 -1
- package/dist/atoms/calendar.js.map +0 -1
- package/dist/atoms/card.js.map +0 -1
- package/dist/atoms/carousel.js.map +0 -1
- package/dist/atoms/chart.js.map +0 -1
- package/dist/atoms/checkbox.js.map +0 -1
- package/dist/atoms/collapsible.js.map +0 -1
- package/dist/atoms/command.js.map +0 -1
- package/dist/atoms/context-menu.js.map +0 -1
- package/dist/atoms/dialog.js.map +0 -1
- package/dist/atoms/drawer.js.map +0 -1
- package/dist/atoms/dropdown-menu.js.map +0 -1
- package/dist/atoms/empty.js.map +0 -1
- package/dist/atoms/field.js.map +0 -1
- package/dist/atoms/form.d.ts +0 -24
- package/dist/atoms/form.js +0 -88
- package/dist/atoms/form.js.map +0 -1
- package/dist/atoms/hover-card.js.map +0 -1
- package/dist/atoms/index.d.ts +0 -54
- package/dist/atoms/index.js +0 -342
- package/dist/atoms/input-group.js.map +0 -1
- package/dist/atoms/input-otp.js.map +0 -1
- package/dist/atoms/input.js.map +0 -1
- package/dist/atoms/item.js.map +0 -1
- package/dist/atoms/kbd.js.map +0 -1
- package/dist/atoms/label.js.map +0 -1
- package/dist/atoms/menubar.js.map +0 -1
- package/dist/atoms/navigation-menu.d.ts +0 -14
- package/dist/atoms/navigation-menu.js +0 -160
- package/dist/atoms/navigation-menu.js.map +0 -1
- package/dist/atoms/pagination.js.map +0 -1
- package/dist/atoms/popover.js.map +0 -1
- package/dist/atoms/progress.js.map +0 -1
- package/dist/atoms/radio-group.js.map +0 -1
- package/dist/atoms/resizable.js.map +0 -1
- package/dist/atoms/scroll-area.js.map +0 -1
- package/dist/atoms/select.js.map +0 -1
- package/dist/atoms/separator.js.map +0 -1
- package/dist/atoms/sheet.js.map +0 -1
- package/dist/atoms/sidebar.d.ts +0 -70
- package/dist/atoms/sidebar.js +0 -573
- package/dist/atoms/sidebar.js.map +0 -1
- package/dist/atoms/skeleton.js.map +0 -1
- package/dist/atoms/slider.js.map +0 -1
- package/dist/atoms/sonner.js.map +0 -1
- package/dist/atoms/spinner.js.map +0 -1
- package/dist/atoms/switch.js.map +0 -1
- package/dist/atoms/table.js.map +0 -1
- package/dist/atoms/tabs.js.map +0 -1
- package/dist/atoms/textarea.js.map +0 -1
- package/dist/atoms/theme-provider.js.map +0 -1
- package/dist/atoms/toggle-group.js.map +0 -1
- package/dist/atoms/toggle.d.ts +0 -9
- package/dist/atoms/toggle.js.map +0 -1
- package/dist/atoms/tooltip.js.map +0 -1
- package/dist/default-layout.js +0 -114
- package/dist/default-layout.js.map +0 -1
- package/dist/molecules/index.d.ts +0 -3
- package/dist/molecules/index.js +0 -9
- package/dist/molecules/sidebar-theme-toggle.d.ts +0 -5
- package/dist/molecules/sidebar-theme-toggle.js +0 -39
- package/dist/molecules/sidebar-theme-toggle.js.map +0 -1
- package/dist/molecules/theme-toggle.js.map +0 -1
- package/dist/molecules/user-menu.js.map +0 -1
- package/dist/organisms/app-navbar.d.ts +0 -73
- package/dist/organisms/app-navbar.js +0 -142
- package/dist/organisms/app-navbar.js.map +0 -1
- package/dist/organisms/app-sidebar.d.ts +0 -67
- package/dist/organisms/app-sidebar.js +0 -161
- package/dist/organisms/app-sidebar.js.map +0 -1
- package/dist/organisms/index.d.ts +0 -2
- package/dist/organisms/index.js +0 -7
- /package/dist/{molecules → components/composites}/theme-toggle.d.ts +0 -0
- /package/dist/{molecules → components/composites}/user-menu.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/accordion.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/alert-dialog.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/alert.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/aspect-ratio.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/aspect-ratio.js +0 -0
- /package/dist/{atoms → components/primitives}/avatar.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/breadcrumb.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/card.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/chart.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/checkbox.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/collapsible.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/collapsible.js +0 -0
- /package/dist/{atoms → components/primitives}/context-menu.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/dialog.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/drawer.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/dropdown-menu.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/empty.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/hover-card.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/input-otp.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/input.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/kbd.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/label.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/menubar.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/popover.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/progress.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/radio-group.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/resizable.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/scroll-area.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/select.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/separator.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/sheet.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/skeleton.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/slider.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/sonner.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/sonner.js +0 -0
- /package/dist/{atoms → components/primitives}/spinner.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/switch.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/table.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/tabs.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/textarea.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/theme-provider.d.ts +0 -0
- /package/dist/{atoms → components/primitives}/theme-provider.js +0 -0
- /package/dist/{atoms → components/primitives}/tooltip.d.ts +0 -0
- /package/dist/{molecules → marketing}/index.js.map +0 -0
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { jsx as m } from "react/jsx-runtime";
|
|
2
|
+
import * as s from "react";
|
|
3
|
+
import { Slot as l } from "@radix-ui/react-slot";
|
|
4
|
+
import { FormProvider as c, Controller as f } from "react-hook-form";
|
|
5
|
+
import { cn as i } from "../../lib/utils.js";
|
|
6
|
+
import { Label as F } from "./label.js";
|
|
7
|
+
import { FormItemContext as p, useFormField as n, FormFieldContext as u } from "./form-context.js";
|
|
8
|
+
const D = c, M = ({
|
|
9
|
+
...r
|
|
10
|
+
}) => /* @__PURE__ */ m(u.Provider, { value: { name: r.name }, children: /* @__PURE__ */ m(f, { ...r }) }), I = s.forwardRef(
|
|
11
|
+
({ className: r, ...o }, e) => {
|
|
12
|
+
const t = s.useId();
|
|
13
|
+
return /* @__PURE__ */ m(p.Provider, { value: { id: t }, children: /* @__PURE__ */ m("div", { ref: e, "data-slot": "form-item", className: i("grid gap-2", r), ...o }) });
|
|
14
|
+
}
|
|
15
|
+
), g = s.forwardRef(({ className: r, ...o }, e) => {
|
|
16
|
+
const { error: t, formItemId: a } = n();
|
|
17
|
+
return /* @__PURE__ */ m(
|
|
18
|
+
F,
|
|
19
|
+
{
|
|
20
|
+
ref: e,
|
|
21
|
+
"data-slot": "form-label",
|
|
22
|
+
"data-error": !!t,
|
|
23
|
+
className: i("data-[error=true]:text-destructive", r),
|
|
24
|
+
htmlFor: a,
|
|
25
|
+
...o
|
|
26
|
+
}
|
|
27
|
+
);
|
|
28
|
+
}), v = s.forwardRef(({ ...r }, o) => {
|
|
29
|
+
const { error: e, formItemId: t, formDescriptionId: a, formMessageId: d } = n();
|
|
30
|
+
return /* @__PURE__ */ m(
|
|
31
|
+
l,
|
|
32
|
+
{
|
|
33
|
+
ref: o,
|
|
34
|
+
"data-slot": "form-control",
|
|
35
|
+
id: t,
|
|
36
|
+
"aria-describedby": e ? `${a} ${d}` : `${a}`,
|
|
37
|
+
"aria-invalid": !!e,
|
|
38
|
+
...r
|
|
39
|
+
}
|
|
40
|
+
);
|
|
41
|
+
}), x = s.forwardRef(
|
|
42
|
+
({ className: r, ...o }, e) => {
|
|
43
|
+
const { formDescriptionId: t } = n();
|
|
44
|
+
return /* @__PURE__ */ m(
|
|
45
|
+
"p",
|
|
46
|
+
{
|
|
47
|
+
ref: e,
|
|
48
|
+
"data-slot": "form-description",
|
|
49
|
+
id: t,
|
|
50
|
+
className: i("text-muted-foreground text-sm", r),
|
|
51
|
+
...o
|
|
52
|
+
}
|
|
53
|
+
);
|
|
54
|
+
}
|
|
55
|
+
), N = s.forwardRef(
|
|
56
|
+
({ className: r, ...o }, e) => {
|
|
57
|
+
const { error: t, formMessageId: a } = n(), d = t ? String(t?.message ?? "") : o.children;
|
|
58
|
+
return d ? /* @__PURE__ */ m(
|
|
59
|
+
"p",
|
|
60
|
+
{
|
|
61
|
+
ref: e,
|
|
62
|
+
"data-slot": "form-message",
|
|
63
|
+
id: a,
|
|
64
|
+
className: i("text-destructive text-sm", r),
|
|
65
|
+
...o,
|
|
66
|
+
children: d
|
|
67
|
+
}
|
|
68
|
+
) : null;
|
|
69
|
+
}
|
|
70
|
+
);
|
|
71
|
+
I.displayName = "FormItem";
|
|
72
|
+
g.displayName = "FormLabel";
|
|
73
|
+
v.displayName = "FormControl";
|
|
74
|
+
x.displayName = "FormDescription";
|
|
75
|
+
N.displayName = "FormMessage";
|
|
76
|
+
export {
|
|
77
|
+
D as Form,
|
|
78
|
+
v as FormControl,
|
|
79
|
+
x as FormDescription,
|
|
80
|
+
M as FormField,
|
|
81
|
+
I as FormItem,
|
|
82
|
+
g as FormLabel,
|
|
83
|
+
N as FormMessage
|
|
84
|
+
};
|
|
85
|
+
//# sourceMappingURL=form.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form.js","sources":["../../../src/components/primitives/form.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport * as LabelPrimitive from \"@radix-ui/react-label\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport {\n Controller,\n FormProvider,\n type ControllerProps,\n type FieldPath,\n type FieldValues,\n} from \"react-hook-form\";\n\nimport { cn } from \"@/lib/utils\";\nimport { Label } from \"../primitives/label\";\nimport { FormFieldContext, FormItemContext, useFormField } from \"./form-context\";\n\nconst Form = FormProvider;\n\nconst FormField = <\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\n>({\n ...props\n}: ControllerProps<TFieldValues, TName>) => {\n return (\n <FormFieldContext.Provider value={{ name: props.name }}>\n <Controller {...props} />\n </FormFieldContext.Provider>\n );\n};\n\nconst FormItem = React.forwardRef<HTMLDivElement, React.ComponentProps<\"div\">>(\n ({ className, ...props }, ref) => {\n const id = React.useId();\n\n return (\n <FormItemContext.Provider value={{ id }}>\n <div ref={ref} data-slot=\"form-item\" className={cn(\"grid gap-2\", className)} {...props} />\n </FormItemContext.Provider>\n );\n },\n);\n\nconst FormLabel = React.forwardRef<\n React.ElementRef<typeof LabelPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof LabelPrimitive.Root>\n>(({ className, ...props }, ref) => {\n const { error, formItemId } = useFormField();\n\n return (\n <Label\n ref={ref}\n data-slot=\"form-label\"\n data-error={!!error}\n className={cn(\"data-[error=true]:text-destructive\", className)}\n htmlFor={formItemId}\n {...props}\n />\n );\n});\n\nconst FormControl = React.forwardRef<\n React.ElementRef<typeof Slot>,\n React.ComponentPropsWithoutRef<typeof Slot>\n>(({ ...props }, ref) => {\n const { error, formItemId, formDescriptionId, formMessageId } = useFormField();\n\n return (\n <Slot\n ref={ref}\n data-slot=\"form-control\"\n id={formItemId}\n aria-describedby={!error ? `${formDescriptionId}` : `${formDescriptionId} ${formMessageId}`}\n aria-invalid={!!error}\n {...props}\n />\n );\n});\n\nconst FormDescription = React.forwardRef<HTMLParagraphElement, React.ComponentProps<\"p\">>(\n ({ className, ...props }, ref) => {\n const { formDescriptionId } = useFormField();\n\n return (\n <p\n ref={ref}\n data-slot=\"form-description\"\n id={formDescriptionId}\n className={cn(\"text-muted-foreground text-sm\", className)}\n {...props}\n />\n );\n },\n);\n\nconst FormMessage = React.forwardRef<HTMLParagraphElement, React.ComponentProps<\"p\">>(\n ({ className, ...props }, ref) => {\n const { error, formMessageId } = useFormField();\n const body = error ? String(error?.message ?? \"\") : props.children;\n\n if (!body) {\n return null;\n }\n\n return (\n <p\n ref={ref}\n data-slot=\"form-message\"\n id={formMessageId}\n className={cn(\"text-destructive text-sm\", className)}\n {...props}\n >\n {body}\n </p>\n );\n },\n);\n\nFormItem.displayName = \"FormItem\";\nFormLabel.displayName = \"FormLabel\";\nFormControl.displayName = \"FormControl\";\nFormDescription.displayName = \"FormDescription\";\nFormMessage.displayName = \"FormMessage\";\n\nexport { Form, FormItem, FormLabel, FormControl, FormDescription, FormMessage, FormField };\n"],"names":["jsx","React","Slot","FormProvider","Controller","cn","Label","FormItemContext","useFormField","FormFieldContext","Form","FormField","props","FormItem","className","ref","id","FormLabel","error","formItemId","FormControl","formDescriptionId","formMessageId","FormDescription","FormMessage","body"],"mappings":"AAiBA,SAAA,OAAAA,SAAA;AAAA,YAAAC,OAAA;AAAA,SAAA,QAAAC,SAAA;AAAA,SAAA,gBAAAC,GAAA,cAAAC,SAAA;AAAA,SAAA,MAAAC,SAAA;AAAA,SAAA,SAAAC,SAAA;AAAA,SAAA,mBAAAC,GAAA,gBAAAC,GAAA,oBAAAC,SAAA;AAAA,MAAMC,IAAOP,GAEPQ,IAAY,CAGhB;AAAA,EACA,GAAGC;AACL,MAEI,gBAAAZ,EAACS,EAAiB,UAAjB,EAA0B,OAAO,EAAE,MAAMG,EAAM,KAAA,GAC9C,UAAA,gBAAAZ,EAACI,GAAA,EAAY,GAAGQ,GAAO,GACzB,GAIEC,IAAWZ,EAAM;AAAA,EACrB,CAAC,EAAE,WAAAa,GAAW,GAAGF,EAAA,GAASG,MAAQ;AAChC,UAAMC,IAAKf,EAAM,MAAA;AAEjB,WACE,gBAAAD,EAACO,EAAgB,UAAhB,EAAyB,OAAO,EAAE,IAAAS,EAAA,GACjC,UAAA,gBAAAhB,EAAC,OAAA,EAAI,KAAAe,GAAU,aAAU,aAAY,WAAWV,EAAG,cAAcS,CAAS,GAAI,GAAGF,GAAO,GAC1F;AAAA,EAEJ;AACF,GAEMK,IAAYhB,EAAM,WAGtB,CAAC,EAAE,WAAAa,GAAW,GAAGF,EAAA,GAASG,MAAQ;AAClC,QAAM,EAAE,OAAAG,GAAO,YAAAC,EAAA,IAAeX,EAAA;AAE9B,SACE,gBAAAR;AAAA,IAACM;AAAA,IAAA;AAAA,MACC,KAAAS;AAAA,MACA,aAAU;AAAA,MACV,cAAY,CAAC,CAACG;AAAA,MACd,WAAWb,EAAG,sCAAsCS,CAAS;AAAA,MAC7D,SAASK;AAAA,MACR,GAAGP;AAAA,IAAA;AAAA,EAAA;AAGV,CAAC,GAEKQ,IAAcnB,EAAM,WAGxB,CAAC,EAAE,GAAGW,EAAA,GAASG,MAAQ;AACvB,QAAM,EAAE,OAAAG,GAAO,YAAAC,GAAY,mBAAAE,GAAmB,eAAAC,EAAA,IAAkBd,EAAA;AAEhE,SACE,gBAAAR;AAAA,IAACE;AAAA,IAAA;AAAA,MACC,KAAAa;AAAA,MACA,aAAU;AAAA,MACV,IAAII;AAAA,MACJ,oBAAmBD,IAAiC,GAAGG,CAAiB,IAAIC,CAAa,KAA9D,GAAGD,CAAiB;AAAA,MAC/C,gBAAc,CAAC,CAACH;AAAA,MACf,GAAGN;AAAA,IAAA;AAAA,EAAA;AAGV,CAAC,GAEKW,IAAkBtB,EAAM;AAAA,EAC5B,CAAC,EAAE,WAAAa,GAAW,GAAGF,EAAA,GAASG,MAAQ;AAChC,UAAM,EAAE,mBAAAM,EAAA,IAAsBb,EAAA;AAE9B,WACE,gBAAAR;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,KAAAe;AAAA,QACA,aAAU;AAAA,QACV,IAAIM;AAAA,QACJ,WAAWhB,EAAG,iCAAiCS,CAAS;AAAA,QACvD,GAAGF;AAAA,MAAA;AAAA,IAAA;AAAA,EAGV;AACF,GAEMY,IAAcvB,EAAM;AAAA,EACxB,CAAC,EAAE,WAAAa,GAAW,GAAGF,EAAA,GAASG,MAAQ;AAChC,UAAM,EAAE,OAAAG,GAAO,eAAAI,EAAA,IAAkBd,EAAA,GAC3BiB,IAAOP,IAAQ,OAAOA,GAAO,WAAW,EAAE,IAAIN,EAAM;AAE1D,WAAKa,IAKH,gBAAAzB;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,KAAAe;AAAA,QACA,aAAU;AAAA,QACV,IAAIO;AAAA,QACJ,WAAWjB,EAAG,4BAA4BS,CAAS;AAAA,QAClD,GAAGF;AAAA,QAEH,UAAAa;AAAA,MAAA;AAAA,IAAA,IAXI;AAAA,EAcX;AACF;AAEAZ,EAAS,cAAc;AACvBI,EAAU,cAAc;AACxBG,EAAY,cAAc;AAC1BG,EAAgB,cAAc;AAC9BC,EAAY,cAAc;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as o } from "react/jsx-runtime";
|
|
2
2
|
import * as r from "@radix-ui/react-hover-card";
|
|
3
|
-
import { cn as i } from "
|
|
3
|
+
import { cn as i } from "../../lib/utils.js";
|
|
4
4
|
function m({ ...t }) {
|
|
5
5
|
return /* @__PURE__ */ o(r.Root, { "data-slot": "hover-card", ...t });
|
|
6
6
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hover-card.js","sources":["../../../src/components/primitives/hover-card.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport * as HoverCardPrimitive from \"@radix-ui/react-hover-card\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction HoverCard({ ...props }: React.ComponentProps<typeof HoverCardPrimitive.Root>) {\n return <HoverCardPrimitive.Root data-slot=\"hover-card\" {...props} />;\n}\n\nfunction HoverCardTrigger({ ...props }: React.ComponentProps<typeof HoverCardPrimitive.Trigger>) {\n return <HoverCardPrimitive.Trigger data-slot=\"hover-card-trigger\" {...props} />;\n}\n\nfunction HoverCardContent({\n className,\n align = \"center\",\n sideOffset = 4,\n ...props\n}: React.ComponentProps<typeof HoverCardPrimitive.Content>) {\n return (\n <HoverCardPrimitive.Portal data-slot=\"hover-card-portal\">\n <HoverCardPrimitive.Content\n data-slot=\"hover-card-content\"\n align={align}\n sideOffset={sideOffset}\n className={cn(\n \"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-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-64 origin-(--radix-hover-card-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden\",\n className,\n )}\n {...props}\n />\n </HoverCardPrimitive.Portal>\n );\n}\n\nexport { HoverCard, HoverCardTrigger, HoverCardContent };\n"],"names":["jsx","HoverCardPrimitive","cn","HoverCard","props","HoverCardTrigger","HoverCardContent","className","align","sideOffset"],"mappings":"AAOA,SAAA,OAAAA,SAAA;AAAA,YAAAC,OAAA;AAAA,SAAA,MAAAC,SAAA;AAAA,SAASC,EAAU,EAAE,GAAGC,KAA+D;AACrF,2BAAQH,EAAmB,MAAnB,EAAwB,aAAU,cAAc,GAAGG,GAAO;AACpE;AAEA,SAASC,EAAiB,EAAE,GAAGD,KAAkE;AAC/F,2BAAQH,EAAmB,SAAnB,EAA2B,aAAU,sBAAsB,GAAGG,GAAO;AAC/E;AAEA,SAASE,EAAiB;AAAA,EACxB,WAAAC;AAAA,EACA,OAAAC,IAAQ;AAAA,EACR,YAAAC,IAAa;AAAA,EACb,GAAGL;AACL,GAA4D;AAC1D,SACE,gBAAAJ,EAACC,EAAmB,QAAnB,EAA0B,aAAU,qBACnC,UAAA,gBAAAD;AAAA,IAACC,EAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,OAAAO;AAAA,MACA,YAAAC;AAAA,MACA,WAAWP;AAAA,QACT;AAAA,QACAK;AAAA,MAAA;AAAA,MAED,GAAGH;AAAA,IAAA;AAAA,EAAA,GAER;AAEJ;"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
export * from './accordion';
|
|
2
|
+
export * from './alert';
|
|
3
|
+
export * from './alert-dialog';
|
|
4
|
+
export * from './aspect-ratio';
|
|
5
|
+
export * from './avatar';
|
|
6
|
+
export * from './badge';
|
|
7
|
+
export * from './breadcrumb';
|
|
8
|
+
export * from './button';
|
|
9
|
+
export * from './button-group';
|
|
10
|
+
export * from './calendar';
|
|
11
|
+
export * from './card';
|
|
12
|
+
export * from './carousel';
|
|
13
|
+
export * from './chart';
|
|
14
|
+
export * from './checkbox';
|
|
15
|
+
export * from './collapsible';
|
|
16
|
+
export * from './command';
|
|
17
|
+
export * from './context-menu';
|
|
18
|
+
export * from './custom-button';
|
|
19
|
+
export * from './dialog';
|
|
20
|
+
export * from './drawer';
|
|
21
|
+
export * from './dropdown-menu';
|
|
22
|
+
export * from './empty';
|
|
23
|
+
export * from './field';
|
|
24
|
+
export * from './form';
|
|
25
|
+
export * from './hover-card';
|
|
26
|
+
export * from './input';
|
|
27
|
+
export * from './input-group';
|
|
28
|
+
export * from './input-otp';
|
|
29
|
+
export * from './item';
|
|
30
|
+
export * from './kbd';
|
|
31
|
+
export * from './label';
|
|
32
|
+
export * from './loading-swap';
|
|
33
|
+
export * from './menubar';
|
|
34
|
+
export * from './navigation-menu';
|
|
35
|
+
export * from './pagination';
|
|
36
|
+
export * from './popover';
|
|
37
|
+
export * from './progress';
|
|
38
|
+
export * from './radio-group';
|
|
39
|
+
export * from './resizable';
|
|
40
|
+
export * from './scroll-area';
|
|
41
|
+
export * from './select';
|
|
42
|
+
export * from './separator';
|
|
43
|
+
export * from './sheet';
|
|
44
|
+
export * from './sidebar';
|
|
45
|
+
export * from './skeleton';
|
|
46
|
+
export * from './slider';
|
|
47
|
+
export * from './sonner';
|
|
48
|
+
export * from './spinner';
|
|
49
|
+
export * from './switch';
|
|
50
|
+
export * from './table';
|
|
51
|
+
export * from './tabs';
|
|
52
|
+
export * from './textarea';
|
|
53
|
+
export * from './theme-provider';
|
|
54
|
+
export * from './toggle';
|
|
55
|
+
export * from './toggle-group';
|
|
56
|
+
export * from './tooltip';
|
|
57
|
+
export type * from './accordion';
|
|
58
|
+
export type * from './alert';
|
|
59
|
+
export type * from './alert-dialog';
|
|
60
|
+
export type * from './aspect-ratio';
|
|
61
|
+
export type * from './avatar';
|
|
62
|
+
export type * from './badge';
|
|
63
|
+
export type * from './breadcrumb';
|
|
64
|
+
export type * from './button';
|
|
65
|
+
export type * from './button-group';
|
|
66
|
+
export type * from './calendar';
|
|
67
|
+
export type * from './card';
|
|
68
|
+
export type * from './carousel';
|
|
69
|
+
export type * from './chart';
|
|
70
|
+
export type * from './checkbox';
|
|
71
|
+
export type * from './collapsible';
|
|
72
|
+
export type * from './command';
|
|
73
|
+
export type * from './context-menu';
|
|
74
|
+
export type * from './custom-button';
|
|
75
|
+
export type * from './dialog';
|
|
76
|
+
export type * from './drawer';
|
|
77
|
+
export type * from './dropdown-menu';
|
|
78
|
+
export type * from './empty';
|
|
79
|
+
export type * from './field';
|
|
80
|
+
export type * from './form';
|
|
81
|
+
export type * from './hover-card';
|
|
82
|
+
export type * from './input';
|
|
83
|
+
export type * from './input-group';
|
|
84
|
+
export type * from './input-otp';
|
|
85
|
+
export type * from './item';
|
|
86
|
+
export type * from './kbd';
|
|
87
|
+
export type * from './label';
|
|
88
|
+
export type * from './loading-swap';
|
|
89
|
+
export type * from './menubar';
|
|
90
|
+
export type * from './navigation-menu';
|
|
91
|
+
export type * from './pagination';
|
|
92
|
+
export type * from './popover';
|
|
93
|
+
export type * from './progress';
|
|
94
|
+
export type * from './radio-group';
|
|
95
|
+
export type * from './resizable';
|
|
96
|
+
export type * from './scroll-area';
|
|
97
|
+
export type * from './select';
|
|
98
|
+
export type * from './separator';
|
|
99
|
+
export type * from './sheet';
|
|
100
|
+
export type * from './sidebar';
|
|
101
|
+
export type * from './skeleton';
|
|
102
|
+
export type * from './slider';
|
|
103
|
+
export type * from './sonner';
|
|
104
|
+
export type * from './spinner';
|
|
105
|
+
export type * from './switch';
|
|
106
|
+
export type * from './table';
|
|
107
|
+
export type * from './tabs';
|
|
108
|
+
export type * from './textarea';
|
|
109
|
+
export type * from './theme-provider';
|
|
110
|
+
export type * from './toggle';
|
|
111
|
+
export type * from './toggle-group';
|
|
112
|
+
export * from './tooltip';
|
|
113
|
+
export * from './custom-button-variants';
|
|
114
|
+
export { Form, FormItem, FormLabel, FormControl, FormDescription, FormMessage, FormField, } from './form';
|
|
115
|
+
export { useFormField } from './form-context';
|
|
116
|
+
export { useSidebar } from './sidebar-context';
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { VariantProps } from 'class-variance-authority';
|
|
2
|
-
import { Button } from '
|
|
2
|
+
import { Button } from '../primitives/button';
|
|
3
3
|
import * as React from "react";
|
|
4
4
|
declare function InputGroup({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
|
|
5
5
|
declare const inputGroupAddonVariants: (props?: ({
|
|
6
|
-
align?: "inline-
|
|
6
|
+
align?: "inline-start" | "inline-end" | "block-start" | "block-end" | null | undefined;
|
|
7
7
|
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
8
8
|
declare function InputGroupAddon({ className, align, ...props }: React.ComponentProps<"div"> & VariantProps<typeof inputGroupAddonVariants>): import("react/jsx-runtime").JSX.Element;
|
|
9
9
|
declare const inputGroupButtonVariants: (props?: ({
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as r } from "react/jsx-runtime";
|
|
2
2
|
import { cva as s } from "class-variance-authority";
|
|
3
|
-
import { cn as n } from "
|
|
3
|
+
import { cn as n } from "../../lib/utils.js";
|
|
4
4
|
import { Button as u } from "./button.js";
|
|
5
5
|
import { Input as p } from "./input.js";
|
|
6
6
|
import { Textarea as l } from "./textarea.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input-group.js","sources":["../../../src/components/primitives/input-group.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"@/lib/utils\";\nimport { Button } from \"../primitives/button\";\nimport { Input } from \"../primitives/input\";\nimport { Textarea } from \"../primitives/textarea\";\n\nfunction InputGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"input-group\"\n role=\"group\"\n className={cn(\n \"group/input-group border-input dark:bg-input/30 relative flex w-full items-center rounded-md border shadow-xs transition-[color,box-shadow] outline-none\",\n \"h-9 min-w-0 has-[>textarea]:h-auto\",\n\n // Variants based on alignment.\n \"has-[>[data-align=inline-start]]:[&>input]:pl-2\",\n \"has-[>[data-align=inline-end]]:[&>input]:pr-2\",\n \"has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>[data-align=block-start]]:[&>input]:pb-3\",\n \"has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-end]]:[&>input]:pt-3\",\n\n // Focus state.\n \"has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50 has-[[data-slot=input-group-control]:focus-visible]:ring-[3px]\",\n\n // Error state.\n \"has-[[data-slot][aria-invalid=true]]:ring-destructive/20 has-[[data-slot][aria-invalid=true]]:border-destructive dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40\",\n\n className,\n )}\n {...props}\n />\n );\n}\n\nconst inputGroupAddonVariants = cva(\n \"text-muted-foreground flex h-auto cursor-text items-center justify-center gap-2 py-1.5 text-sm font-medium select-none [&>svg:not([class*='size-'])]:size-4 [&>kbd]:rounded-[calc(var(--radius)-5px)] group-data-[disabled=true]/input-group:opacity-50\",\n {\n variants: {\n align: {\n \"inline-start\": \"order-first pl-3 has-[>button]:ml-[-0.45rem] has-[>kbd]:ml-[-0.35rem]\",\n \"inline-end\": \"order-last pr-3 has-[>button]:mr-[-0.45rem] has-[>kbd]:mr-[-0.35rem]\",\n \"block-start\":\n \"order-first w-full justify-start px-3 pt-3 [.border-b]:pb-3 group-has-[>input]/input-group:pt-2.5\",\n \"block-end\":\n \"order-last w-full justify-start px-3 pb-3 [.border-t]:pt-3 group-has-[>input]/input-group:pb-2.5\",\n },\n },\n defaultVariants: {\n align: \"inline-start\",\n },\n },\n);\n\nfunction InputGroupAddon({\n className,\n align = \"inline-start\",\n ...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof inputGroupAddonVariants>) {\n return (\n <div\n role=\"group\"\n data-slot=\"input-group-addon\"\n data-align={align}\n className={cn(inputGroupAddonVariants({ align }), className)}\n onClick={(e) => {\n if ((e.target as HTMLElement).closest(\"button\")) {\n return;\n }\n e.currentTarget.parentElement?.querySelector(\"input\")?.focus();\n }}\n {...props}\n />\n );\n}\n\nconst inputGroupButtonVariants = cva(\"text-sm shadow-none flex gap-2 items-center\", {\n variants: {\n size: {\n xs: \"h-6 gap-1 px-2 rounded-[calc(var(--radius)-5px)] [&>svg:not([class*='size-'])]:size-3.5 has-[>svg]:px-2\",\n sm: \"h-8 px-2.5 gap-1.5 rounded-md has-[>svg]:px-2.5\",\n \"icon-xs\": \"size-6 rounded-[calc(var(--radius)-5px)] p-0 has-[>svg]:p-0\",\n \"icon-sm\": \"size-8 p-0 has-[>svg]:p-0\",\n },\n },\n defaultVariants: {\n size: \"xs\",\n },\n});\n\nfunction InputGroupButton({\n className,\n type = \"button\",\n variant = \"ghost\",\n size = \"xs\",\n ...props\n}: Omit<React.ComponentProps<typeof Button>, \"size\"> &\n VariantProps<typeof inputGroupButtonVariants>) {\n return (\n <Button\n type={type}\n data-size={size}\n variant={variant}\n className={cn(inputGroupButtonVariants({ size }), className)}\n {...props}\n />\n );\n}\n\nfunction InputGroupText({ className, ...props }: React.ComponentProps<\"span\">) {\n return (\n <span\n className={cn(\n \"text-muted-foreground flex items-center gap-2 text-sm [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction InputGroupInput({ className, ...props }: React.ComponentProps<\"input\">) {\n return (\n <Input\n data-slot=\"input-group-control\"\n className={cn(\n \"flex-1 rounded-none border-0 bg-transparent shadow-none focus-visible:ring-0 dark:bg-transparent\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction InputGroupTextarea({ className, ...props }: React.ComponentProps<\"textarea\">) {\n return (\n <Textarea\n data-slot=\"input-group-control\"\n className={cn(\n \"flex-1 resize-none rounded-none border-0 bg-transparent py-3 shadow-none focus-visible:ring-0 dark:bg-transparent\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n InputGroup,\n InputGroupAddon,\n InputGroupButton,\n InputGroupText,\n InputGroupInput,\n InputGroupTextarea,\n};\n"],"names":["InputGroup","className","props","jsx","cn","inputGroupAddonVariants","cva","InputGroupAddon","align","e","inputGroupButtonVariants","InputGroupButton","type","variant","size","Button","InputGroupText","InputGroupInput","Input","InputGroupTextarea","Textarea"],"mappings":";;;;;;AAUA,SAASA,EAAW,EAAE,WAAAC,GAAW,GAAGC,KAAsC;AACxE,SACE,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,MAAK;AAAA,MACL,WAAWC;AAAA,QACT;AAAA,QACA;AAAA;AAAA,QAGA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA;AAAA,QAGA;AAAA;AAAA,QAGA;AAAA,QAEAH;AAAA,MAAA;AAAA,MAED,GAAGC;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,MAAMG,IAA0BC;AAAA,EAC9B;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,OAAO;AAAA,QACL,gBAAgB;AAAA,QAChB,cAAc;AAAA,QACd,eACE;AAAA,QACF,aACE;AAAA,MAAA;AAAA,IACJ;AAAA,IAEF,iBAAiB;AAAA,MACf,OAAO;AAAA,IAAA;AAAA,EACT;AAEJ;AAEA,SAASC,EAAgB;AAAA,EACvB,WAAAN;AAAA,EACA,OAAAO,IAAQ;AAAA,EACR,GAAGN;AACL,GAA+E;AAC7E,SACE,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,MAAK;AAAA,MACL,aAAU;AAAA,MACV,cAAYK;AAAA,MACZ,WAAWJ,EAAGC,EAAwB,EAAE,OAAAG,EAAA,CAAO,GAAGP,CAAS;AAAA,MAC3D,SAAS,CAACQ,MAAM;AACd,QAAKA,EAAE,OAAuB,QAAQ,QAAQ,KAG9CA,EAAE,cAAc,eAAe,cAAc,OAAO,GAAG,MAAA;AAAA,MACzD;AAAA,MACC,GAAGP;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,MAAMQ,IAA2BJ,EAAI,+CAA+C;AAAA,EAClF,UAAU;AAAA,IACR,MAAM;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,WAAW;AAAA,MACX,WAAW;AAAA,IAAA;AAAA,EACb;AAAA,EAEF,iBAAiB;AAAA,IACf,MAAM;AAAA,EAAA;AAEV,CAAC;AAED,SAASK,EAAiB;AAAA,EACxB,WAAAV;AAAA,EACA,MAAAW,IAAO;AAAA,EACP,SAAAC,IAAU;AAAA,EACV,MAAAC,IAAO;AAAA,EACP,GAAGZ;AACL,GACiD;AAC/C,SACE,gBAAAC;AAAA,IAACY;AAAA,IAAA;AAAA,MACC,MAAAH;AAAA,MACA,aAAWE;AAAA,MACX,SAAAD;AAAA,MACA,WAAWT,EAAGM,EAAyB,EAAE,MAAAI,EAAA,CAAM,GAAGb,CAAS;AAAA,MAC1D,GAAGC;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,SAASc,EAAe,EAAE,WAAAf,GAAW,GAAGC,KAAuC;AAC7E,SACE,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC;AAAA,QACT;AAAA,QACAH;AAAA,MAAA;AAAA,MAED,GAAGC;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,SAASe,EAAgB,EAAE,WAAAhB,GAAW,GAAGC,KAAwC;AAC/E,SACE,gBAAAC;AAAA,IAACe;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWd;AAAA,QACT;AAAA,QACAH;AAAA,MAAA;AAAA,MAED,GAAGC;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,SAASiB,EAAmB,EAAE,WAAAlB,GAAW,GAAGC,KAA2C;AACrF,SACE,gBAAAC;AAAA,IAACiB;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWhB;AAAA,QACT;AAAA,QACAH;AAAA,MAAA;AAAA,MAED,GAAGC;AAAA,IAAA;AAAA,EAAA;AAGV;"}
|
|
@@ -2,7 +2,7 @@ import { jsx as e, jsxs as u } from "react/jsx-runtime";
|
|
|
2
2
|
import * as c from "react";
|
|
3
3
|
import { OTPInput as l, OTPInputContext as p } from "input-otp";
|
|
4
4
|
import { MinusIcon as m } from "lucide-react";
|
|
5
|
-
import { cn as a } from "
|
|
5
|
+
import { cn as a } from "../../lib/utils.js";
|
|
6
6
|
function g({
|
|
7
7
|
className: t,
|
|
8
8
|
containerClassName: r,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input-otp.js","sources":["../../../src/components/primitives/input-otp.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { OTPInput, OTPInputContext } from \"input-otp\";\nimport { MinusIcon } from \"lucide-react\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction InputOTP({\n className,\n containerClassName,\n ...props\n}: React.ComponentProps<typeof OTPInput> & {\n containerClassName?: string;\n}) {\n return (\n <OTPInput\n data-slot=\"input-otp\"\n containerClassName={cn(\"flex items-center gap-2 has-disabled:opacity-50\", containerClassName)}\n className={cn(\"disabled:cursor-not-allowed\", className)}\n {...props}\n />\n );\n}\n\nfunction InputOTPGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div data-slot=\"input-otp-group\" className={cn(\"flex items-center\", className)} {...props} />\n );\n}\n\nfunction InputOTPSlot({\n index,\n className,\n ...props\n}: React.ComponentProps<\"div\"> & {\n index: number;\n}) {\n const inputOTPContext = React.useContext(OTPInputContext);\n const { char, hasFakeCaret, isActive } = inputOTPContext?.slots[index] ?? {};\n\n return (\n <div\n data-slot=\"input-otp-slot\"\n data-active={isActive}\n className={cn(\n \"data-[active=true]:border-ring data-[active=true]:ring-ring/50 data-[active=true]:aria-invalid:ring-destructive/20 dark:data-[active=true]:aria-invalid:ring-destructive/40 aria-invalid:border-destructive data-[active=true]:aria-invalid:border-destructive dark:bg-input/30 border-input relative flex h-9 w-9 items-center justify-center border-y border-r text-sm shadow-xs transition-all outline-none first:rounded-l-md first:border-l last:rounded-r-md data-[active=true]:z-10 data-[active=true]:ring-[3px]\",\n className,\n )}\n {...props}\n >\n {char}\n {hasFakeCaret && (\n <div className=\"pointer-events-none absolute inset-0 flex items-center justify-center\">\n <div className=\"animate-caret-blink bg-foreground h-4 w-px duration-1000\" />\n </div>\n )}\n </div>\n );\n}\n\nfunction InputOTPSeparator({ ...props }: React.ComponentProps<\"div\">) {\n return (\n <div data-slot=\"input-otp-separator\" role=\"separator\" {...props}>\n <MinusIcon />\n </div>\n );\n}\n\nexport { InputOTP, InputOTPGroup, InputOTPSlot, InputOTPSeparator };\n"],"names":["jsx","jsxs","React","OTPInput","OTPInputContext","MinusIcon","cn","InputOTP","className","containerClassName","props","InputOTPGroup","InputOTPSlot","index","inputOTPContext","char","hasFakeCaret","isActive","InputOTPSeparator"],"mappings":"AAMA,SAAA,OAAAA,GAAA,QAAAC,SAAA;AAAA,YAAAC,OAAA;AAAA,SAAA,YAAAC,GAAA,mBAAAC,SAAA;AAAA,SAAA,aAAAC,SAAA;AAAA,SAAA,MAAAC,SAAA;AAAA,SAASC,EAAS;AAAA,EAChB,WAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,GAAGC;AACL,GAEG;AACD,SACE,gBAAAV;AAAA,IAACG;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,oBAAoBG,EAAG,mDAAmDG,CAAkB;AAAA,MAC5F,WAAWH,EAAG,+BAA+BE,CAAS;AAAA,MACrD,GAAGE;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,SAASC,EAAc,EAAE,WAAAH,GAAW,GAAGE,KAAsC;AAC3E,SACE,gBAAAV,EAAC,OAAA,EAAI,aAAU,mBAAkB,WAAWM,EAAG,qBAAqBE,CAAS,GAAI,GAAGE,EAAA,CAAO;AAE/F;AAEA,SAASE,EAAa;AAAA,EACpB,OAAAC;AAAA,EACA,WAAAL;AAAA,EACA,GAAGE;AACL,GAEG;AACD,QAAMI,IAAkBZ,EAAM,WAAWE,CAAe,GAClD,EAAE,MAAAW,GAAM,cAAAC,GAAc,UAAAC,EAAA,IAAaH,GAAiB,MAAMD,CAAK,KAAK,CAAA;AAE1E,SACE,gBAAAZ;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,eAAagB;AAAA,MACb,WAAWX;AAAA,QACT;AAAA,QACAE;AAAA,MAAA;AAAA,MAED,GAAGE;AAAA,MAEH,UAAA;AAAA,QAAAK;AAAA,QACAC,uBACE,OAAA,EAAI,WAAU,yEACb,UAAA,gBAAAhB,EAAC,OAAA,EAAI,WAAU,2DAAA,CAA2D,EAAA,CAC5E;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAIR;AAEA,SAASkB,EAAkB,EAAE,GAAGR,KAAsC;AACpE,SACE,gBAAAV,EAAC,OAAA,EAAI,aAAU,uBAAsB,MAAK,aAAa,GAAGU,GACxD,UAAA,gBAAAV,EAACK,GAAA,CAAA,CAAU,EAAA,CACb;AAEJ;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input.js","sources":["../../../src/components/primitives/input.tsx"],"sourcesContent":["import * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction Input({ className, type, ...props }: React.ComponentProps<\"input\">) {\n return (\n <input\n type={type}\n data-slot=\"input\"\n className={cn(\n \"file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm\",\n \"focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]\",\n \"aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport { Input };\n"],"names":["Input","className","type","props","jsx","cn"],"mappings":";;AAIA,SAASA,EAAM,EAAE,WAAAC,GAAW,MAAAC,GAAM,GAAGC,KAAwC;AAC3E,SACE,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,MAAAF;AAAA,MACA,aAAU;AAAA,MACV,WAAWG;AAAA,QACT;AAAA,QACA;AAAA,QACA;AAAA,QACAJ;AAAA,MAAA;AAAA,MAED,GAAGE;AAAA,IAAA;AAAA,EAAA;AAGV;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { VariantProps } from 'class-variance-authority';
|
|
2
|
-
import { Separator } from '
|
|
2
|
+
import { Separator } from '../primitives/separator';
|
|
3
3
|
import * as React from "react";
|
|
4
4
|
declare function ItemGroup({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
|
|
5
5
|
declare function ItemSeparator({ className, ...props }: React.ComponentProps<typeof Separator>): import("react/jsx-runtime").JSX.Element;
|
|
@@ -11,7 +11,7 @@ declare function Item({ className, variant, size, asChild, ...props }: React.Com
|
|
|
11
11
|
asChild?: boolean;
|
|
12
12
|
}): import("react/jsx-runtime").JSX.Element;
|
|
13
13
|
declare const itemMediaVariants: (props?: ({
|
|
14
|
-
variant?: "
|
|
14
|
+
variant?: "image" | "default" | "icon" | null | undefined;
|
|
15
15
|
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
16
16
|
declare function ItemMedia({ className, variant, ...props }: React.ComponentProps<"div"> & VariantProps<typeof itemMediaVariants>): import("react/jsx-runtime").JSX.Element;
|
|
17
17
|
declare function ItemContent({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as a } from "react/jsx-runtime";
|
|
2
2
|
import { Slot as l } from "@radix-ui/react-slot";
|
|
3
3
|
import { cva as n } from "class-variance-authority";
|
|
4
|
-
import { cn as i } from "
|
|
4
|
+
import { cn as i } from "../../lib/utils.js";
|
|
5
5
|
import { Separator as m } from "./separator.js";
|
|
6
6
|
function b({ className: e, ...t }) {
|
|
7
7
|
return /* @__PURE__ */ a(
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"item.js","sources":["../../../src/components/primitives/item.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"@/lib/utils\";\nimport { Separator } from \"../primitives/separator\";\n\nfunction ItemGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n role=\"list\"\n data-slot=\"item-group\"\n className={cn(\"group/item-group flex flex-col\", className)}\n {...props}\n />\n );\n}\n\nfunction ItemSeparator({ className, ...props }: React.ComponentProps<typeof Separator>) {\n return (\n <Separator\n data-slot=\"item-separator\"\n orientation=\"horizontal\"\n className={cn(\"my-0\", className)}\n {...props}\n />\n );\n}\n\nconst itemVariants = cva(\n \"group/item flex items-center border border-transparent text-sm rounded-md transition-colors [a]:hover:bg-accent/50 [a]:transition-colors duration-100 flex-wrap outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]\",\n {\n variants: {\n variant: {\n default: \"bg-transparent\",\n outline: \"border-border\",\n muted: \"bg-muted/50\",\n },\n size: {\n default: \"p-4 gap-4 \",\n sm: \"py-3 px-4 gap-2.5\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n },\n);\n\nfunction Item({\n className,\n variant = \"default\",\n size = \"default\",\n asChild = false,\n ...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof itemVariants> & { asChild?: boolean }) {\n const Comp = asChild ? Slot : \"div\";\n return (\n <Comp\n data-slot=\"item\"\n data-variant={variant}\n data-size={size}\n className={cn(itemVariants({ variant, size, className }))}\n {...props}\n />\n );\n}\n\nconst itemMediaVariants = cva(\n \"flex shrink-0 items-center justify-center gap-2 group-has-[[data-slot=item-description]]/item:self-start [&_svg]:pointer-events-none group-has-[[data-slot=item-description]]/item:translate-y-0.5\",\n {\n variants: {\n variant: {\n default: \"bg-transparent\",\n icon: \"size-8 border rounded-sm bg-muted [&_svg:not([class*='size-'])]:size-4\",\n image: \"size-10 rounded-sm overflow-hidden [&_img]:size-full [&_img]:object-cover\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n },\n);\n\nfunction ItemMedia({\n className,\n variant = \"default\",\n ...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof itemMediaVariants>) {\n return (\n <div\n data-slot=\"item-media\"\n data-variant={variant}\n className={cn(itemMediaVariants({ variant, className }))}\n {...props}\n />\n );\n}\n\nfunction ItemContent({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"item-content\"\n className={cn(\"flex flex-1 flex-col gap-1 [&+[data-slot=item-content]]:flex-none\", className)}\n {...props}\n />\n );\n}\n\nfunction ItemTitle({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"item-title\"\n className={cn(\"flex w-fit items-center gap-2 text-sm leading-snug font-medium\", className)}\n {...props}\n />\n );\n}\n\nfunction ItemDescription({ className, ...props }: React.ComponentProps<\"p\">) {\n return (\n <p\n data-slot=\"item-description\"\n className={cn(\n \"text-muted-foreground line-clamp-2 text-sm leading-normal font-normal text-balance\",\n \"[&>a:hover]:text-primary [&>a]:underline [&>a]:underline-offset-4\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction ItemActions({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div data-slot=\"item-actions\" className={cn(\"flex items-center gap-2\", className)} {...props} />\n );\n}\n\nfunction ItemHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"item-header\"\n className={cn(\"flex basis-full items-center justify-between gap-2\", className)}\n {...props}\n />\n );\n}\n\nfunction ItemFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"item-footer\"\n className={cn(\"flex basis-full items-center justify-between gap-2\", className)}\n {...props}\n />\n );\n}\n\nexport {\n Item,\n ItemMedia,\n ItemContent,\n ItemActions,\n ItemGroup,\n ItemSeparator,\n ItemTitle,\n ItemDescription,\n ItemHeader,\n ItemFooter,\n};\n"],"names":["ItemGroup","className","props","jsx","cn","ItemSeparator","Separator","itemVariants","cva","Item","variant","size","asChild","Slot","itemMediaVariants","ItemMedia","ItemContent","ItemTitle","ItemDescription","ItemActions","ItemHeader","ItemFooter"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kbd.js","sources":["../../../src/components/primitives/kbd.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\";\n\nfunction Kbd({ className, ...props }: React.ComponentProps<\"kbd\">) {\n return (\n <kbd\n data-slot=\"kbd\"\n className={cn(\n \"bg-muted text-muted-foreground pointer-events-none inline-flex h-5 w-fit min-w-5 items-center justify-center gap-1 rounded-sm px-1 font-sans text-xs font-medium select-none\",\n \"[&_svg:not([class*='size-'])]:size-3\",\n \"[[data-slot=tooltip-content]_&]:bg-background/20 [[data-slot=tooltip-content]_&]:text-background dark:[[data-slot=tooltip-content]_&]:bg-background/10\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction KbdGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <kbd\n data-slot=\"kbd-group\"\n className={cn(\"inline-flex items-center gap-1\", className)}\n {...props}\n />\n );\n}\n\nexport { Kbd, KbdGroup };\n"],"names":["Kbd","className","props","jsx","cn","KbdGroup"],"mappings":";;AAEA,SAASA,EAAI,EAAE,WAAAC,GAAW,GAAGC,KAAsC;AACjE,SACE,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWC;AAAA,QACT;AAAA,QACA;AAAA,QACA;AAAA,QACAH;AAAA,MAAA;AAAA,MAED,GAAGC;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,SAASG,EAAS,EAAE,WAAAJ,GAAW,GAAGC,KAAsC;AACtE,SACE,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWC,EAAG,kCAAkCH,CAAS;AAAA,MACxD,GAAGC;AAAA,IAAA;AAAA,EAAA;AAGV;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"label.js","sources":["../../../src/components/primitives/label.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport * as LabelPrimitive from \"@radix-ui/react-label\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction Label({ className, ...props }: React.ComponentProps<typeof LabelPrimitive.Root>) {\n return (\n <LabelPrimitive.Root\n data-slot=\"label\"\n className={cn(\n \"flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport { Label };\n"],"names":["Label","className","props","jsx","LabelPrimitive","cn"],"mappings":";;;AAOA,SAASA,EAAM,EAAE,WAAAC,GAAW,GAAGC,KAA2D;AACxF,SACE,gBAAAC;AAAA,IAACC,EAAe;AAAA,IAAf;AAAA,MACC,aAAU;AAAA,MACV,WAAWC;AAAA,QACT;AAAA,QACAJ;AAAA,MAAA;AAAA,MAED,GAAGC;AAAA,IAAA;AAAA,EAAA;AAGV;"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
interface LoadingSwapProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
3
|
+
isLoading: boolean;
|
|
4
|
+
loadingNode?: React.ReactNode;
|
|
5
|
+
}
|
|
6
|
+
declare const LoadingSwap: React.ForwardRefExoticComponent<LoadingSwapProps & React.RefAttributes<HTMLDivElement>>;
|
|
7
|
+
export { LoadingSwap };
|
|
8
|
+
export type { LoadingSwapProps };
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { jsxs as c, jsx as t } from "react/jsx-runtime";
|
|
2
|
+
import * as m from "react";
|
|
3
|
+
import { Spinner as p } from "./spinner.js";
|
|
4
|
+
import { cn as a } from "../../lib/utils.js";
|
|
5
|
+
const d = m.forwardRef(
|
|
6
|
+
({ isLoading: e, loadingNode: i, children: r, className: n, ...s }, o) => /* @__PURE__ */ c(
|
|
7
|
+
"div",
|
|
8
|
+
{
|
|
9
|
+
ref: o,
|
|
10
|
+
className: a("relative inline-flex items-center justify-center", n),
|
|
11
|
+
"data-testid": "loading-swap-container",
|
|
12
|
+
"aria-busy": e,
|
|
13
|
+
...s,
|
|
14
|
+
children: [
|
|
15
|
+
e && /* @__PURE__ */ t("div", { className: "absolute inset-0 flex items-center justify-center", "aria-hidden": "true", children: i || /* @__PURE__ */ t(p, {}) }),
|
|
16
|
+
/* @__PURE__ */ t("div", { className: a("transition-opacity", e ? "opacity-0" : "opacity-100"), children: r })
|
|
17
|
+
]
|
|
18
|
+
}
|
|
19
|
+
)
|
|
20
|
+
);
|
|
21
|
+
d.displayName = "LoadingSwap";
|
|
22
|
+
export {
|
|
23
|
+
d as LoadingSwap
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=loading-swap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loading-swap.js","sources":["../../../src/components/primitives/loading-swap.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport { Spinner } from \"./spinner\";\nimport { cn } from \"@/lib/utils\";\n\ninterface LoadingSwapProps extends React.HTMLAttributes<HTMLDivElement> {\n isLoading: boolean;\n loadingNode?: React.ReactNode;\n}\n\nconst LoadingSwap = React.forwardRef<HTMLDivElement, LoadingSwapProps>(\n ({ isLoading, loadingNode, children, className, ...props }, ref) => {\n return (\n <div\n ref={ref}\n className={cn(\"relative inline-flex items-center justify-center\", className)}\n data-testid=\"loading-swap-container\"\n aria-busy={isLoading}\n {...props}\n >\n {isLoading && (\n <div className=\"absolute inset-0 flex items-center justify-center\" aria-hidden=\"true\">\n {loadingNode || <Spinner />}\n </div>\n )}\n <div className={cn(\"transition-opacity\", isLoading ? \"opacity-0\" : \"opacity-100\")}>\n {children}\n </div>\n </div>\n );\n },\n);\n\nLoadingSwap.displayName = \"LoadingSwap\";\n\nexport { LoadingSwap };\nexport type { LoadingSwapProps };\n"],"names":["jsxs","jsx","React","Spinner","cn","LoadingSwap","isLoading","loadingNode","children","className","props","ref"],"mappings":"AAWA,SAAA,QAAAA,GAAA,OAAAC,SAAA;AAAA,YAAAC,OAAA;AAAA,SAAA,WAAAC,SAAA;AAAA,SAAA,MAAAC,SAAA;AAAA,MAAMC,IAAcH,EAAM;AAAA,EACxB,CAAC,EAAE,WAAAI,GAAW,aAAAC,GAAa,UAAAC,GAAU,WAAAC,GAAW,GAAGC,EAAA,GAASC,MAExD,gBAAAX;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAAW;AAAA,MACA,WAAWP,EAAG,oDAAoDK,CAAS;AAAA,MAC3E,eAAY;AAAA,MACZ,aAAWH;AAAA,MACV,GAAGI;AAAA,MAEH,UAAA;AAAA,QAAAJ,KACC,gBAAAL,EAAC,SAAI,WAAU,qDAAoD,eAAY,QAC5E,UAAAM,KAAe,gBAAAN,EAACE,GAAA,CAAA,CAAQ,EAAA,CAC3B;AAAA,QAEF,gBAAAF,EAAC,SAAI,WAAWG,EAAG,sBAAsBE,IAAY,cAAc,aAAa,GAC7E,UAAAE,EAAA,CACH;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAIR;AAEAH,EAAY,cAAc;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as a, jsxs as d } from "react/jsx-runtime";
|
|
2
2
|
import * as n from "@radix-ui/react-menubar";
|
|
3
3
|
import { CheckIcon as u, CircleIcon as c, ChevronRightIcon as l } from "lucide-react";
|
|
4
|
-
import { cn as o } from "
|
|
4
|
+
import { cn as o } from "../../lib/utils.js";
|
|
5
5
|
function g({ className: e, ...t }) {
|
|
6
6
|
return /* @__PURE__ */ a(
|
|
7
7
|
n.Root,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"menubar.js","sources":["../../../src/components/primitives/menubar.tsx"],"sourcesContent":["import * as React from \"react\";\nimport * as MenubarPrimitive from \"@radix-ui/react-menubar\";\nimport { CheckIcon, ChevronRightIcon, CircleIcon } from \"lucide-react\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction Menubar({ className, ...props }: React.ComponentProps<typeof MenubarPrimitive.Root>) {\n return (\n <MenubarPrimitive.Root\n data-slot=\"menubar\"\n className={cn(\n \"bg-background flex h-9 items-center gap-1 rounded-md border p-1 shadow-xs\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction MenubarMenu({ ...props }: React.ComponentProps<typeof MenubarPrimitive.Menu>) {\n return <MenubarPrimitive.Menu data-slot=\"menubar-menu\" {...props} />;\n}\n\nfunction MenubarGroup({ ...props }: React.ComponentProps<typeof MenubarPrimitive.Group>) {\n return <MenubarPrimitive.Group data-slot=\"menubar-group\" {...props} />;\n}\n\nfunction MenubarPortal({ ...props }: React.ComponentProps<typeof MenubarPrimitive.Portal>) {\n return <MenubarPrimitive.Portal data-slot=\"menubar-portal\" {...props} />;\n}\n\nfunction MenubarRadioGroup({ ...props }: React.ComponentProps<typeof MenubarPrimitive.RadioGroup>) {\n return <MenubarPrimitive.RadioGroup data-slot=\"menubar-radio-group\" {...props} />;\n}\n\nfunction MenubarTrigger({\n className,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Trigger>) {\n return (\n <MenubarPrimitive.Trigger\n data-slot=\"menubar-trigger\"\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex items-center rounded-sm px-2 py-1 text-sm font-medium outline-hidden select-none\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction MenubarContent({\n className,\n align = \"start\",\n alignOffset = -4,\n sideOffset = 8,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Content>) {\n return (\n <MenubarPortal>\n <MenubarPrimitive.Content\n data-slot=\"menubar-content\"\n align={align}\n alignOffset={alignOffset}\n sideOffset={sideOffset}\n className={cn(\n \"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[12rem] origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-md\",\n className,\n )}\n {...props}\n />\n </MenubarPortal>\n );\n}\n\nfunction MenubarItem({\n className,\n inset,\n variant = \"default\",\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Item> & {\n inset?: boolean;\n variant?: \"default\" | \"destructive\";\n}) {\n return (\n <MenubarPrimitive.Item\n data-slot=\"menubar-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction MenubarCheckboxItem({\n className,\n children,\n checked,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.CheckboxItem>) {\n return (\n <MenubarPrimitive.CheckboxItem\n data-slot=\"menubar-checkbox-item\"\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n checked={checked}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <MenubarPrimitive.ItemIndicator>\n <CheckIcon className=\"size-4\" />\n </MenubarPrimitive.ItemIndicator>\n </span>\n {children}\n </MenubarPrimitive.CheckboxItem>\n );\n}\n\nfunction MenubarRadioItem({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.RadioItem>) {\n return (\n <MenubarPrimitive.RadioItem\n data-slot=\"menubar-radio-item\"\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <MenubarPrimitive.ItemIndicator>\n <CircleIcon className=\"size-2 fill-current\" />\n </MenubarPrimitive.ItemIndicator>\n </span>\n {children}\n </MenubarPrimitive.RadioItem>\n );\n}\n\nfunction MenubarLabel({\n className,\n inset,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Label> & {\n inset?: boolean;\n}) {\n return (\n <MenubarPrimitive.Label\n data-slot=\"menubar-label\"\n data-inset={inset}\n className={cn(\"px-2 py-1.5 text-sm font-medium data-[inset]:pl-8\", className)}\n {...props}\n />\n );\n}\n\nfunction MenubarSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Separator>) {\n return (\n <MenubarPrimitive.Separator\n data-slot=\"menubar-separator\"\n className={cn(\"bg-border -mx-1 my-1 h-px\", className)}\n {...props}\n />\n );\n}\n\nfunction MenubarShortcut({ className, ...props }: React.ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"menubar-shortcut\"\n className={cn(\"text-muted-foreground ml-auto text-xs tracking-widest\", className)}\n {...props}\n />\n );\n}\n\nfunction MenubarSub({ ...props }: React.ComponentProps<typeof MenubarPrimitive.Sub>) {\n return <MenubarPrimitive.Sub data-slot=\"menubar-sub\" {...props} />;\n}\n\nfunction MenubarSubTrigger({\n className,\n inset,\n children,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.SubTrigger> & {\n inset?: boolean;\n}) {\n return (\n <MenubarPrimitive.SubTrigger\n data-slot=\"menubar-sub-trigger\"\n data-inset={inset}\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-none select-none data-[inset]:pl-8\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto h-4 w-4\" />\n </MenubarPrimitive.SubTrigger>\n );\n}\n\nfunction MenubarSubContent({\n className,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.SubContent>) {\n return (\n <MenubarPrimitive.SubContent\n data-slot=\"menubar-sub-content\"\n className={cn(\n \"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-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n Menubar,\n MenubarPortal,\n MenubarMenu,\n MenubarTrigger,\n MenubarContent,\n MenubarGroup,\n MenubarSeparator,\n MenubarLabel,\n MenubarItem,\n MenubarShortcut,\n MenubarCheckboxItem,\n MenubarRadioGroup,\n MenubarRadioItem,\n MenubarSub,\n MenubarSubTrigger,\n MenubarSubContent,\n};\n"],"names":["Menubar","className","props","jsx","MenubarPrimitive","cn","MenubarMenu","MenubarGroup","MenubarPortal","MenubarRadioGroup","MenubarTrigger","MenubarContent","align","alignOffset","sideOffset","MenubarItem","inset","variant","MenubarCheckboxItem","children","checked","jsxs","CheckIcon","MenubarRadioItem","CircleIcon","MenubarLabel","MenubarSeparator","MenubarShortcut","MenubarSub","MenubarSubTrigger","ChevronRightIcon","MenubarSubContent"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const navigationMenuTriggerStyle: (props?: import('class-variance-authority/types').ClassProp | undefined) => string;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { cva as e } from "class-variance-authority";
|
|
2
|
+
const o = e(
|
|
3
|
+
"group inline-flex h-9 w-max items-center justify-center rounded-md bg-background px-4 py-2 text-sm font-medium hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=open]:hover:bg-accent data-[state=open]:text-accent-foreground data-[state=open]:focus:bg-accent data-[state=open]:bg-accent/50 focus-visible:ring-ring/50 outline-none transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 cursor-pointer"
|
|
4
|
+
);
|
|
5
|
+
export {
|
|
6
|
+
o as navigationMenuTriggerStyle
|
|
7
|
+
};
|
|
8
|
+
//# sourceMappingURL=navigation-menu-variants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"navigation-menu-variants.js","sources":["../../../src/components/primitives/navigation-menu-variants.ts"],"sourcesContent":["import { cva } from \"class-variance-authority\";\n\nexport const navigationMenuTriggerStyle = cva(\n \"group inline-flex h-9 w-max items-center justify-center rounded-md bg-background px-4 py-2 text-sm font-medium hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=open]:hover:bg-accent data-[state=open]:text-accent-foreground data-[state=open]:focus:bg-accent data-[state=open]:bg-accent/50 focus-visible:ring-ring/50 outline-none transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 cursor-pointer\",\n);\n"],"names":["navigationMenuTriggerStyle","cva"],"mappings":";AAEO,MAAMA,IAA6BC;AAAA,EACxC;AACF;"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import * as NavigationMenuPrimitive from "@radix-ui/react-navigation-menu";
|
|
3
|
+
declare const NavigationMenu: React.ForwardRefExoticComponent<Omit<NavigationMenuPrimitive.NavigationMenuProps & React.RefAttributes<HTMLElement>, "ref"> & {
|
|
4
|
+
viewport?: boolean;
|
|
5
|
+
} & React.RefAttributes<HTMLElement>>;
|
|
6
|
+
declare const NavigationMenuList: React.ForwardRefExoticComponent<Omit<NavigationMenuPrimitive.NavigationMenuListProps & React.RefAttributes<HTMLUListElement>, "ref"> & React.RefAttributes<HTMLUListElement>>;
|
|
7
|
+
declare const NavigationMenuItem: React.ForwardRefExoticComponent<NavigationMenuPrimitive.NavigationMenuItemProps & React.RefAttributes<HTMLLIElement>>;
|
|
8
|
+
declare const NavigationMenuTrigger: React.ForwardRefExoticComponent<Omit<NavigationMenuPrimitive.NavigationMenuTriggerProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
|
|
9
|
+
declare const NavigationMenuContent: React.ForwardRefExoticComponent<Omit<NavigationMenuPrimitive.NavigationMenuContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
10
|
+
declare const NavigationMenuViewport: React.ForwardRefExoticComponent<Omit<NavigationMenuPrimitive.NavigationMenuViewportProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
11
|
+
declare const NavigationMenuLink: React.ForwardRefExoticComponent<NavigationMenuPrimitive.NavigationMenuLinkProps & React.RefAttributes<HTMLAnchorElement>>;
|
|
12
|
+
declare const NavigationMenuIndicator: React.ForwardRefExoticComponent<Omit<NavigationMenuPrimitive.NavigationMenuIndicatorProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
13
|
+
export { NavigationMenu, NavigationMenuList, NavigationMenuItem, NavigationMenuContent, NavigationMenuTrigger, NavigationMenuLink, NavigationMenuIndicator, NavigationMenuViewport, };
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { jsxs as s, jsx as o } from "react/jsx-runtime";
|
|
2
|
+
import * as r from "react";
|
|
3
|
+
import * as i from "@radix-ui/react-navigation-menu";
|
|
4
|
+
import { ChevronDownIcon as l } from "lucide-react";
|
|
5
|
+
import { cn as n } from "../../lib/utils.js";
|
|
6
|
+
import { navigationMenuTriggerStyle as g } from "./navigation-menu-variants.js";
|
|
7
|
+
const p = r.forwardRef(({ className: t, children: e, viewport: a = !0, ...d }, u) => /* @__PURE__ */ s(
|
|
8
|
+
i.Root,
|
|
9
|
+
{
|
|
10
|
+
ref: u,
|
|
11
|
+
"data-slot": "navigation-menu",
|
|
12
|
+
"data-viewport": a,
|
|
13
|
+
className: n(
|
|
14
|
+
"group/navigation-menu relative flex max-w-max flex-1 items-center justify-center",
|
|
15
|
+
t
|
|
16
|
+
),
|
|
17
|
+
...d,
|
|
18
|
+
children: [
|
|
19
|
+
e,
|
|
20
|
+
a && /* @__PURE__ */ o(m, {})
|
|
21
|
+
]
|
|
22
|
+
}
|
|
23
|
+
)), v = r.forwardRef(({ className: t, ...e }, a) => /* @__PURE__ */ o(
|
|
24
|
+
i.List,
|
|
25
|
+
{
|
|
26
|
+
ref: a,
|
|
27
|
+
"data-slot": "navigation-menu-list",
|
|
28
|
+
className: n("group flex flex-1 list-none items-center justify-center gap-1", t),
|
|
29
|
+
...e
|
|
30
|
+
}
|
|
31
|
+
)), y = i.Item, f = r.forwardRef(({ className: t, children: e, ...a }, d) => /* @__PURE__ */ s(
|
|
32
|
+
i.Trigger,
|
|
33
|
+
{
|
|
34
|
+
ref: d,
|
|
35
|
+
"data-slot": "navigation-menu-trigger",
|
|
36
|
+
className: n(g(), "group", t),
|
|
37
|
+
...a,
|
|
38
|
+
children: [
|
|
39
|
+
e,
|
|
40
|
+
" ",
|
|
41
|
+
/* @__PURE__ */ o(
|
|
42
|
+
l,
|
|
43
|
+
{
|
|
44
|
+
className: "relative top-px ml-1 size-3 transition duration-300 group-data-[state=open]:rotate-180",
|
|
45
|
+
"aria-hidden": "true"
|
|
46
|
+
}
|
|
47
|
+
)
|
|
48
|
+
]
|
|
49
|
+
}
|
|
50
|
+
)), c = r.forwardRef(({ className: t, ...e }, a) => /* @__PURE__ */ o(
|
|
51
|
+
i.Content,
|
|
52
|
+
{
|
|
53
|
+
ref: a,
|
|
54
|
+
"data-slot": "navigation-menu-content",
|
|
55
|
+
className: n(
|
|
56
|
+
"data-[motion^=from-]:animate-in data-[motion^=to-]:animate-out data-[motion^=from-]:fade-in data-[motion^=to-]:fade-out data-[motion=from-end]:slide-in-from-right-52 data-[motion=from-start]:slide-in-from-left-52 data-[motion=to-end]:slide-out-to-right-52 data-[motion=to-start]:slide-out-to-left-52 top-0 left-0 w-full p-2 pr-2.5 md:absolute md:w-auto",
|
|
57
|
+
"group-data-[viewport=false]/navigation-menu:bg-popover group-data-[viewport=false]/navigation-menu:text-popover-foreground group-data-[viewport=false]/navigation-menu:data-[state=open]:animate-in group-data-[viewport=false]/navigation-menu:data-[state=closed]:animate-out group-data-[viewport=false]/navigation-menu:data-[state=closed]:zoom-out-95 group-data-[viewport=false]/navigation-menu:data-[state=open]:zoom-in-95 group-data-[viewport=false]/navigation-menu:data-[state=open]:fade-in-0 group-data-[viewport=false]/navigation-menu:data-[state=closed]:fade-out-0 group-data-[viewport=false]/navigation-menu:top-full group-data-[viewport=false]/navigation-menu:mt-1.5 group-data-[viewport=false]/navigation-menu:overflow-hidden group-data-[viewport=false]/navigation-menu:rounded-md group-data-[viewport=false]/navigation-menu:border group-data-[viewport=false]/navigation-menu:shadow group-data-[viewport=false]/navigation-menu:duration-200 **:data-[slot=navigation-menu-link]:focus:ring-0 **:data-[slot=navigation-menu-link]:focus:outline-none",
|
|
58
|
+
t
|
|
59
|
+
),
|
|
60
|
+
...e
|
|
61
|
+
}
|
|
62
|
+
)), m = r.forwardRef(({ className: t, ...e }, a) => /* @__PURE__ */ o("div", { className: n("absolute top-full left-0 isolate z-50 flex justify-center"), children: /* @__PURE__ */ o(
|
|
63
|
+
i.Viewport,
|
|
64
|
+
{
|
|
65
|
+
ref: a,
|
|
66
|
+
"data-slot": "navigation-menu-viewport",
|
|
67
|
+
className: n(
|
|
68
|
+
"origin-top-center bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-90 relative mt-1.5 h-(--radix-navigation-menu-viewport-height) w-full overflow-hidden rounded-md border shadow md:w-(--radix-navigation-menu-viewport-width)",
|
|
69
|
+
t
|
|
70
|
+
),
|
|
71
|
+
...e
|
|
72
|
+
}
|
|
73
|
+
) })), b = i.Link, w = r.forwardRef(({ className: t, ...e }, a) => /* @__PURE__ */ o(
|
|
74
|
+
i.Indicator,
|
|
75
|
+
{
|
|
76
|
+
ref: a,
|
|
77
|
+
"data-slot": "navigation-menu-indicator",
|
|
78
|
+
className: n(
|
|
79
|
+
"data-[state=visible]:animate-in data-[state=hidden]:animate-out data-[state=hidden]:fade-out data-[state=visible]:fade-in top-full z-1 flex h-1.5 items-end justify-center overflow-hidden",
|
|
80
|
+
t
|
|
81
|
+
),
|
|
82
|
+
...e,
|
|
83
|
+
children: /* @__PURE__ */ o("div", { className: "bg-border relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm shadow-md" })
|
|
84
|
+
}
|
|
85
|
+
));
|
|
86
|
+
p.displayName = "NavigationMenu";
|
|
87
|
+
v.displayName = "NavigationMenuList";
|
|
88
|
+
f.displayName = "NavigationMenuTrigger";
|
|
89
|
+
c.displayName = "NavigationMenuContent";
|
|
90
|
+
m.displayName = "NavigationMenuViewport";
|
|
91
|
+
w.displayName = "NavigationMenuIndicator";
|
|
92
|
+
export {
|
|
93
|
+
p as NavigationMenu,
|
|
94
|
+
c as NavigationMenuContent,
|
|
95
|
+
w as NavigationMenuIndicator,
|
|
96
|
+
y as NavigationMenuItem,
|
|
97
|
+
b as NavigationMenuLink,
|
|
98
|
+
v as NavigationMenuList,
|
|
99
|
+
f as NavigationMenuTrigger,
|
|
100
|
+
m as NavigationMenuViewport
|
|
101
|
+
};
|
|
102
|
+
//# sourceMappingURL=navigation-menu.js.map
|