@surfnet/curve-react 0.2.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/dist/components/ui/avatar/avatar.d.ts +12 -0
- package/dist/components/ui/avatar/avatar.js +52 -0
- package/dist/components/ui/avatar/index.d.ts +1 -0
- package/dist/components/ui/avatar/index.js +1 -0
- package/dist/components/ui/breadcrumb/breadcrumb.d.ts +10 -0
- package/dist/components/ui/breadcrumb/breadcrumb.js +74 -0
- package/dist/components/ui/breadcrumb/index.d.ts +1 -0
- package/dist/components/ui/breadcrumb/index.js +1 -0
- package/dist/components/ui/button/button.d.ts +8 -0
- package/dist/components/ui/button/button.js +46 -0
- package/dist/components/ui/button/index.d.ts +1 -0
- package/dist/components/ui/button/index.js +1 -0
- package/dist/components/ui/card/card.d.ts +11 -0
- package/dist/components/ui/card/card.js +56 -0
- package/dist/components/ui/card/index.d.ts +1 -0
- package/dist/components/ui/card/index.js +1 -0
- package/dist/components/ui/checkbox/checkbox.d.ts +3 -0
- package/dist/components/ui/checkbox/checkbox.js +21 -0
- package/dist/components/ui/checkbox/index.d.ts +1 -0
- package/dist/components/ui/checkbox/index.js +1 -0
- package/dist/components/ui/data-table/data-table.d.ts +23 -0
- package/dist/components/ui/data-table/data-table.js +61 -0
- package/dist/components/ui/data-table/index.d.ts +2 -0
- package/dist/components/ui/data-table/index.js +2 -0
- package/dist/components/ui/data-table/use-data-table.d.ts +11 -0
- package/dist/components/ui/data-table/use-data-table.js +33 -0
- package/dist/components/ui/dropdown-menu/dropdown-menu.d.ts +30 -0
- package/dist/components/ui/dropdown-menu/dropdown-menu.js +138 -0
- package/dist/components/ui/dropdown-menu/index.d.ts +1 -0
- package/dist/components/ui/dropdown-menu/index.js +1 -0
- package/dist/components/ui/field/field.d.ts +24 -0
- package/dist/components/ui/field/field.js +111 -0
- package/dist/components/ui/field/index.d.ts +1 -0
- package/dist/components/ui/field/index.js +1 -0
- package/dist/components/ui/input/index.d.ts +1 -0
- package/dist/components/ui/input/index.js +1 -0
- package/dist/components/ui/input/input.d.ts +3 -0
- package/dist/components/ui/input/input.js +17 -0
- package/dist/components/ui/input-group/index.d.ts +1 -0
- package/dist/components/ui/input-group/index.js +1 -0
- package/dist/components/ui/input-group/input-group.d.ts +18 -0
- package/dist/components/ui/input-group/input-group.js +80 -0
- package/dist/components/ui/label/index.d.ts +1 -0
- package/dist/components/ui/label/index.js +1 -0
- package/dist/components/ui/label/label.d.ts +3 -0
- package/dist/components/ui/label/label.js +15 -0
- package/dist/components/ui/select/index.d.ts +1 -0
- package/dist/components/ui/select/index.js +1 -0
- package/dist/components/ui/select/select.d.ts +16 -0
- package/dist/components/ui/select/select.js +99 -0
- package/dist/components/ui/separator/index.d.ts +1 -0
- package/dist/components/ui/separator/index.js +1 -0
- package/dist/components/ui/separator/separator.d.ts +3 -0
- package/dist/components/ui/separator/separator.js +16 -0
- package/dist/components/ui/sidebar/index.d.ts +1 -0
- package/dist/components/ui/sidebar/index.js +1 -0
- package/dist/components/ui/sidebar/sheet.d.ts +14 -0
- package/dist/components/ui/sidebar/sheet.js +72 -0
- package/dist/components/ui/sidebar/sidebar.d.ts +63 -0
- package/dist/components/ui/sidebar/sidebar.js +362 -0
- package/dist/components/ui/sidebar/skeleton.d.ts +2 -0
- package/dist/components/ui/sidebar/skeleton.js +12 -0
- package/dist/components/ui/sidebar/tooltip.d.ts +6 -0
- package/dist/components/ui/sidebar/tooltip.js +35 -0
- package/dist/components/ui/sidebar/use-mobile.d.ts +1 -0
- package/dist/components/ui/sidebar/use-mobile.js +14 -0
- package/dist/components/ui/table/index.d.ts +1 -0
- package/dist/components/ui/table/index.js +1 -0
- package/dist/components/ui/table/table.d.ts +10 -0
- package/dist/components/ui/table/table.js +68 -0
- package/dist/components/ui/textarea/index.d.ts +1 -0
- package/dist/components/ui/textarea/index.js +1 -0
- package/dist/components/ui/textarea/textarea.d.ts +3 -0
- package/dist/components/ui/textarea/textarea.js +13 -0
- package/dist/curve-react.css +3 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.js +36 -0
- package/dist/lib/utils.d.ts +2 -0
- package/dist/lib/utils.js +8 -0
- package/package.json +66 -0
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
"use client";
|
|
3
|
+
import { cn as e } from "../../../lib/utils.js";
|
|
4
|
+
import "react";
|
|
5
|
+
import { jsx as t, jsxs as n } from "react/jsx-runtime";
|
|
6
|
+
import { CaretRightIcon as r, CheckIcon as i } from "@phosphor-icons/react";
|
|
7
|
+
import { Menu as a } from "@base-ui/react/menu";
|
|
8
|
+
//#region src/components/ui/dropdown-menu/dropdown-menu.tsx
|
|
9
|
+
function o({ ...e }) {
|
|
10
|
+
return /* @__PURE__ */ t(a.Root, {
|
|
11
|
+
"data-slot": "dropdown-menu",
|
|
12
|
+
...e
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
function s({ ...e }) {
|
|
16
|
+
return /* @__PURE__ */ t(a.Portal, {
|
|
17
|
+
"data-slot": "dropdown-menu-portal",
|
|
18
|
+
...e
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
function c({ ...e }) {
|
|
22
|
+
return /* @__PURE__ */ t(a.Trigger, {
|
|
23
|
+
"data-slot": "dropdown-menu-trigger",
|
|
24
|
+
...e
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
function l({ align: n = "start", alignOffset: r = 0, side: i = "bottom", sideOffset: o = 4, className: s, ...c }) {
|
|
28
|
+
return /* @__PURE__ */ t(a.Portal, { children: /* @__PURE__ */ t(a.Positioner, {
|
|
29
|
+
className: "isolate z-50 outline-none",
|
|
30
|
+
align: n,
|
|
31
|
+
alignOffset: r,
|
|
32
|
+
side: i,
|
|
33
|
+
sideOffset: o,
|
|
34
|
+
children: /* @__PURE__ */ t(a.Popup, {
|
|
35
|
+
"data-slot": "dropdown-menu-content",
|
|
36
|
+
className: e("z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-md bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-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 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:overflow-hidden data-closed:fade-out-0 data-closed:zoom-out-95", s),
|
|
37
|
+
...c
|
|
38
|
+
})
|
|
39
|
+
}) });
|
|
40
|
+
}
|
|
41
|
+
function u({ ...e }) {
|
|
42
|
+
return /* @__PURE__ */ t(a.Group, {
|
|
43
|
+
"data-slot": "dropdown-menu-group",
|
|
44
|
+
...e
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
function d({ className: n, inset: r, ...i }) {
|
|
48
|
+
return /* @__PURE__ */ t(a.GroupLabel, {
|
|
49
|
+
"data-slot": "dropdown-menu-label",
|
|
50
|
+
"data-inset": r,
|
|
51
|
+
className: e("px-2 py-1.5 text-xs font-medium text-muted-foreground data-inset:pl-8", n),
|
|
52
|
+
...i
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
function f({ className: n, inset: r, variant: i = "default", ...o }) {
|
|
56
|
+
return /* @__PURE__ */ t(a.Item, {
|
|
57
|
+
"data-slot": "dropdown-menu-item",
|
|
58
|
+
"data-inset": r,
|
|
59
|
+
"data-variant": i,
|
|
60
|
+
className: e("group/dropdown-menu-item relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-8 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive", n),
|
|
61
|
+
...o
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
function p({ ...e }) {
|
|
65
|
+
return /* @__PURE__ */ t(a.SubmenuRoot, {
|
|
66
|
+
"data-slot": "dropdown-menu-sub",
|
|
67
|
+
...e
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
function m({ className: i, inset: o, children: s, ...c }) {
|
|
71
|
+
return /* @__PURE__ */ n(a.SubmenuTrigger, {
|
|
72
|
+
"data-slot": "dropdown-menu-sub-trigger",
|
|
73
|
+
"data-inset": o,
|
|
74
|
+
className: e("flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-8 data-popup-open:bg-accent data-popup-open:text-accent-foreground data-open:bg-accent data-open:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", i),
|
|
75
|
+
...c,
|
|
76
|
+
children: [s, /* @__PURE__ */ t(r, { className: "ml-auto" })]
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
function h({ align: n = "start", alignOffset: r = -3, side: i = "right", sideOffset: a = 0, className: o, ...s }) {
|
|
80
|
+
return /* @__PURE__ */ t(l, {
|
|
81
|
+
"data-slot": "dropdown-menu-sub-content",
|
|
82
|
+
className: e("w-auto min-w-[96px] rounded-md bg-popover p-1 text-popover-foreground shadow-lg ring-1 ring-foreground/10 duration-100 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 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95", o),
|
|
83
|
+
align: n,
|
|
84
|
+
alignOffset: r,
|
|
85
|
+
side: i,
|
|
86
|
+
sideOffset: a,
|
|
87
|
+
...s
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
function g({ className: r, children: o, checked: s, inset: c, ...l }) {
|
|
91
|
+
return /* @__PURE__ */ n(a.CheckboxItem, {
|
|
92
|
+
"data-slot": "dropdown-menu-checkbox-item",
|
|
93
|
+
"data-inset": c,
|
|
94
|
+
className: e("relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-8 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", r),
|
|
95
|
+
checked: s,
|
|
96
|
+
...l,
|
|
97
|
+
children: [/* @__PURE__ */ t("span", {
|
|
98
|
+
className: "pointer-events-none absolute right-2 flex items-center justify-center",
|
|
99
|
+
"data-slot": "dropdown-menu-checkbox-item-indicator",
|
|
100
|
+
children: /* @__PURE__ */ t(a.CheckboxItemIndicator, { children: /* @__PURE__ */ t(i, {}) })
|
|
101
|
+
}), o]
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
function _({ ...e }) {
|
|
105
|
+
return /* @__PURE__ */ t(a.RadioGroup, {
|
|
106
|
+
"data-slot": "dropdown-menu-radio-group",
|
|
107
|
+
...e
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
function v({ className: r, children: o, inset: s, ...c }) {
|
|
111
|
+
return /* @__PURE__ */ n(a.RadioItem, {
|
|
112
|
+
"data-slot": "dropdown-menu-radio-item",
|
|
113
|
+
"data-inset": s,
|
|
114
|
+
className: e("relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-8 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", r),
|
|
115
|
+
...c,
|
|
116
|
+
children: [/* @__PURE__ */ t("span", {
|
|
117
|
+
className: "pointer-events-none absolute right-2 flex items-center justify-center",
|
|
118
|
+
"data-slot": "dropdown-menu-radio-item-indicator",
|
|
119
|
+
children: /* @__PURE__ */ t(a.RadioItemIndicator, { children: /* @__PURE__ */ t(i, {}) })
|
|
120
|
+
}), o]
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
function y({ className: n, ...r }) {
|
|
124
|
+
return /* @__PURE__ */ t(a.Separator, {
|
|
125
|
+
"data-slot": "dropdown-menu-separator",
|
|
126
|
+
className: e("-mx-1 my-1 h-px bg-border", n),
|
|
127
|
+
...r
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
function b({ className: n, ...r }) {
|
|
131
|
+
return /* @__PURE__ */ t("span", {
|
|
132
|
+
"data-slot": "dropdown-menu-shortcut",
|
|
133
|
+
className: e("ml-auto text-xs tracking-widest text-muted-foreground group-focus/dropdown-menu-item:text-accent-foreground", n),
|
|
134
|
+
...r
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
//#endregion
|
|
138
|
+
export { o as DropdownMenu, g as DropdownMenuCheckboxItem, l as DropdownMenuContent, u as DropdownMenuGroup, f as DropdownMenuItem, d as DropdownMenuLabel, s as DropdownMenuPortal, _ as DropdownMenuRadioGroup, v as DropdownMenuRadioItem, y as DropdownMenuSeparator, b as DropdownMenuShortcut, p as DropdownMenuSub, h as DropdownMenuSubContent, m as DropdownMenuSubTrigger, c as DropdownMenuTrigger };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './dropdown-menu';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import "./dropdown-menu.js";
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { VariantProps } from 'class-variance-authority';
|
|
2
|
+
import { Label } from '../label';
|
|
3
|
+
declare function FieldSet({ className, ...props }: React.ComponentProps<'fieldset'>): import("react").JSX.Element;
|
|
4
|
+
declare function FieldLegend({ className, variant, ...props }: React.ComponentProps<'legend'> & {
|
|
5
|
+
variant?: 'legend' | 'label';
|
|
6
|
+
}): import("react").JSX.Element;
|
|
7
|
+
declare function FieldGroup({ className, ...props }: React.ComponentProps<'div'>): import("react").JSX.Element;
|
|
8
|
+
declare const fieldVariants: (props?: ({
|
|
9
|
+
orientation?: "horizontal" | "vertical" | "responsive" | null | undefined;
|
|
10
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
11
|
+
declare function Field({ className, orientation, ...props }: React.ComponentProps<'div'> & VariantProps<typeof fieldVariants>): import("react").JSX.Element;
|
|
12
|
+
declare function FieldContent({ className, ...props }: React.ComponentProps<'div'>): import("react").JSX.Element;
|
|
13
|
+
declare function FieldLabel({ className, ...props }: React.ComponentProps<typeof Label>): import("react").JSX.Element;
|
|
14
|
+
declare function FieldTitle({ className, ...props }: React.ComponentProps<'div'>): import("react").JSX.Element;
|
|
15
|
+
declare function FieldDescription({ className, ...props }: React.ComponentProps<'p'>): import("react").JSX.Element;
|
|
16
|
+
declare function FieldSeparator({ children, className, ...props }: React.ComponentProps<'div'> & {
|
|
17
|
+
children?: React.ReactNode;
|
|
18
|
+
}): import("react").JSX.Element;
|
|
19
|
+
declare function FieldError({ className, children, errors, ...props }: React.ComponentProps<'div'> & {
|
|
20
|
+
errors?: Array<{
|
|
21
|
+
message?: string;
|
|
22
|
+
} | undefined>;
|
|
23
|
+
}): import("react").JSX.Element | null;
|
|
24
|
+
export { Field, FieldLabel, FieldDescription, FieldError, FieldGroup, FieldLegend, FieldSeparator, FieldSet, FieldContent, FieldTitle, };
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
"use client";
|
|
3
|
+
import { cn as e } from "../../../lib/utils.js";
|
|
4
|
+
import { Label as t } from "../label/label.js";
|
|
5
|
+
import "../label/index.js";
|
|
6
|
+
import { Separator as n } from "../separator/separator.js";
|
|
7
|
+
import "../separator/index.js";
|
|
8
|
+
import { useMemo as r } from "react";
|
|
9
|
+
import { jsx as i, jsxs as a } from "react/jsx-runtime";
|
|
10
|
+
import { cva as o } from "class-variance-authority";
|
|
11
|
+
//#region src/components/ui/field/field.tsx
|
|
12
|
+
function s({ className: t, ...n }) {
|
|
13
|
+
return /* @__PURE__ */ i("fieldset", {
|
|
14
|
+
"data-slot": "field-set",
|
|
15
|
+
className: e("flex flex-col gap-6 has-[>[data-slot=checkbox-group]]:gap-3 has-[>[data-slot=radio-group]]:gap-3", t),
|
|
16
|
+
...n
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
function c({ className: t, variant: n = "legend", ...r }) {
|
|
20
|
+
return /* @__PURE__ */ i("legend", {
|
|
21
|
+
"data-slot": "field-legend",
|
|
22
|
+
"data-variant": n,
|
|
23
|
+
className: e("mb-3 font-medium data-[variant=label]:text-sm data-[variant=legend]:text-base", t),
|
|
24
|
+
...r
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
function l({ className: t, ...n }) {
|
|
28
|
+
return /* @__PURE__ */ i("div", {
|
|
29
|
+
"data-slot": "field-group",
|
|
30
|
+
className: e("group/field-group @container/field-group flex w-full flex-col gap-7 data-[slot=checkbox-group]:gap-3 *:data-[slot=field-group]:gap-4", t),
|
|
31
|
+
...n
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
var u = o("group/field flex w-full gap-3 data-[invalid=true]:text-destructive", {
|
|
35
|
+
variants: { orientation: {
|
|
36
|
+
vertical: "flex-col *:w-full [&>.sr-only]:w-auto",
|
|
37
|
+
horizontal: "flex-row items-center has-[>[data-slot=field-content]]:items-start *:data-[slot=field-label]:flex-auto has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px",
|
|
38
|
+
responsive: "flex-col *:w-full @md/field-group:flex-row @md/field-group:items-center @md/field-group:*:w-auto @md/field-group:has-[>[data-slot=field-content]]:items-start @md/field-group:*:data-[slot=field-label]:flex-auto [&>.sr-only]:w-auto @md/field-group:has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px"
|
|
39
|
+
} },
|
|
40
|
+
defaultVariants: { orientation: "vertical" }
|
|
41
|
+
});
|
|
42
|
+
function d({ className: t, orientation: n = "vertical", ...r }) {
|
|
43
|
+
return /* @__PURE__ */ i("div", {
|
|
44
|
+
role: "group",
|
|
45
|
+
"data-slot": "field",
|
|
46
|
+
"data-orientation": n,
|
|
47
|
+
className: e(u({ orientation: n }), t),
|
|
48
|
+
...r
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
function f({ className: t, ...n }) {
|
|
52
|
+
return /* @__PURE__ */ i("div", {
|
|
53
|
+
"data-slot": "field-content",
|
|
54
|
+
className: e("group/field-content flex flex-1 flex-col gap-1 leading-snug", t),
|
|
55
|
+
...n
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
function p({ className: n, ...r }) {
|
|
59
|
+
return /* @__PURE__ */ i(t, {
|
|
60
|
+
"data-slot": "field-label",
|
|
61
|
+
className: e("group/field-label peer/field-label flex w-fit gap-2 leading-snug group-data-[disabled=true]/field:opacity-50 has-data-checked:border-primary/30 has-data-checked:bg-primary/5 has-[>[data-slot=field]]:rounded-md has-[>[data-slot=field]]:border *:data-[slot=field]:p-3 dark:has-data-checked:border-primary/20 dark:has-data-checked:bg-primary/10", "has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col", n),
|
|
62
|
+
...r
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
function m({ className: t, ...n }) {
|
|
66
|
+
return /* @__PURE__ */ i("div", {
|
|
67
|
+
"data-slot": "field-label",
|
|
68
|
+
className: e("flex w-fit items-center gap-2 text-sm font-medium group-data-[disabled=true]/field:opacity-50", t),
|
|
69
|
+
...n
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
function h({ className: t, ...n }) {
|
|
73
|
+
return /* @__PURE__ */ i("p", {
|
|
74
|
+
"data-slot": "field-description",
|
|
75
|
+
className: e("text-left text-sm leading-normal font-normal text-muted-foreground group-has-data-horizontal/field:text-balance [[data-variant=legend]+&]:-mt-1.5", "last:mt-0 nth-last-2:-mt-1", "[&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary", t),
|
|
76
|
+
...n
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
function g({ children: t, className: r, ...o }) {
|
|
80
|
+
return /* @__PURE__ */ a("div", {
|
|
81
|
+
"data-slot": "field-separator",
|
|
82
|
+
"data-content": !!t,
|
|
83
|
+
className: e("relative -my-2 h-5 text-sm group-data-[variant=outline]/field-group:-mb-2", r),
|
|
84
|
+
...o,
|
|
85
|
+
children: [/* @__PURE__ */ i(n, { className: "absolute inset-0 top-1/2" }), t && /* @__PURE__ */ i("span", {
|
|
86
|
+
className: "relative mx-auto block w-fit bg-background px-2 text-muted-foreground",
|
|
87
|
+
"data-slot": "field-separator-content",
|
|
88
|
+
children: t
|
|
89
|
+
})]
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
function _({ className: t, children: n, errors: a, ...o }) {
|
|
93
|
+
let s = r(() => {
|
|
94
|
+
if (n) return n;
|
|
95
|
+
if (!a?.length) return null;
|
|
96
|
+
let e = [...new Map(a.map((e) => [e?.message, e])).values()];
|
|
97
|
+
return e?.length == 1 ? e[0]?.message : /* @__PURE__ */ i("ul", {
|
|
98
|
+
className: "ml-4 flex list-disc flex-col gap-1",
|
|
99
|
+
children: e.map((e, t) => e?.message && /* @__PURE__ */ i("li", { children: e.message }, t))
|
|
100
|
+
});
|
|
101
|
+
}, [n, a]);
|
|
102
|
+
return s ? /* @__PURE__ */ i("div", {
|
|
103
|
+
role: "alert",
|
|
104
|
+
"data-slot": "field-error",
|
|
105
|
+
className: e("text-sm font-normal text-destructive", t),
|
|
106
|
+
...o,
|
|
107
|
+
children: s
|
|
108
|
+
}) : null;
|
|
109
|
+
}
|
|
110
|
+
//#endregion
|
|
111
|
+
export { d as Field, f as FieldContent, h as FieldDescription, _ as FieldError, l as FieldGroup, p as FieldLabel, c as FieldLegend, g as FieldSeparator, s as FieldSet, m as FieldTitle };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './field';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import "./field.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './input';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import "./input.js";
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
"use client";
|
|
3
|
+
import { cn as e } from "../../../lib/utils.js";
|
|
4
|
+
import "react";
|
|
5
|
+
import { jsx as t } from "react/jsx-runtime";
|
|
6
|
+
import { Input as n } from "@base-ui/react/input";
|
|
7
|
+
//#region src/components/ui/input/input.tsx
|
|
8
|
+
function r({ className: r, type: i, ...a }) {
|
|
9
|
+
return /* @__PURE__ */ t(n, {
|
|
10
|
+
type: i,
|
|
11
|
+
"data-slot": "input",
|
|
12
|
+
className: e("h-9 w-full min-w-0 rounded-md border border-input bg-transparent px-2.5 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 file:text-foreground placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40", r),
|
|
13
|
+
...a
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
//#endregion
|
|
17
|
+
export { r as Input };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './input-group';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import "./input-group.js";
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { VariantProps } from 'class-variance-authority';
|
|
2
|
+
import { Button } from '../button';
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
declare function InputGroup({ className, ...props }: React.ComponentProps<'div'>): React.JSX.Element;
|
|
5
|
+
declare const inputGroupAddonVariants: (props?: ({
|
|
6
|
+
align?: "inline-end" | "inline-start" | "block-start" | "block-end" | null | undefined;
|
|
7
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
8
|
+
declare function InputGroupAddon({ className, align, ...props }: React.ComponentProps<'div'> & VariantProps<typeof inputGroupAddonVariants>): React.JSX.Element;
|
|
9
|
+
declare const inputGroupButtonVariants: (props?: ({
|
|
10
|
+
size?: "sm" | "xs" | "icon-xs" | "icon-sm" | null | undefined;
|
|
11
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
12
|
+
declare function InputGroupButton({ className, type, variant, size, ...props }: Omit<React.ComponentProps<typeof Button>, 'size' | 'type'> & VariantProps<typeof inputGroupButtonVariants> & {
|
|
13
|
+
type?: 'button' | 'submit' | 'reset';
|
|
14
|
+
}): React.JSX.Element;
|
|
15
|
+
declare function InputGroupText({ className, ...props }: React.ComponentProps<'span'>): React.JSX.Element;
|
|
16
|
+
declare function InputGroupInput({ className, ...props }: React.ComponentProps<'input'>): React.JSX.Element;
|
|
17
|
+
declare function InputGroupTextarea({ className, ...props }: React.ComponentProps<'textarea'>): React.JSX.Element;
|
|
18
|
+
export { InputGroup, InputGroupAddon, InputGroupButton, InputGroupText, InputGroupInput, InputGroupTextarea, };
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { cn as e } from "../../../lib/utils.js";
|
|
2
|
+
import { Button as t } from "../button/button.js";
|
|
3
|
+
import "../button/index.js";
|
|
4
|
+
import { Input as n } from "../input/input.js";
|
|
5
|
+
import "../input/index.js";
|
|
6
|
+
import { Textarea as r } from "../textarea/textarea.js";
|
|
7
|
+
import "../textarea/index.js";
|
|
8
|
+
import "react";
|
|
9
|
+
import { jsx as i } from "react/jsx-runtime";
|
|
10
|
+
import { cva as a } from "class-variance-authority";
|
|
11
|
+
//#region src/components/ui/input-group/input-group.tsx
|
|
12
|
+
function o({ className: t, ...n }) {
|
|
13
|
+
return /* @__PURE__ */ i("div", {
|
|
14
|
+
"data-slot": "input-group",
|
|
15
|
+
role: "group",
|
|
16
|
+
className: e("group/input-group relative flex h-9 w-full min-w-0 items-center rounded-md border border-input shadow-xs transition-[color,box-shadow] outline-none in-data-[slot=combobox-content]:focus-within:border-inherit in-data-[slot=combobox-content]:focus-within:ring-0 has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-3 has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50 has-[[data-slot][aria-invalid=true]]:border-destructive has-[[data-slot][aria-invalid=true]]:ring-3 has-[[data-slot][aria-invalid=true]]:ring-destructive/20 has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>textarea]:h-auto dark:bg-input/30 dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40 has-[>[data-align=block-end]]:[&>input]:pt-3 has-[>[data-align=block-start]]:[&>input]:pb-3 has-[>[data-align=inline-end]]:[&>input]:pr-1.5 has-[>[data-align=inline-start]]:[&>input]:pl-1.5", t),
|
|
17
|
+
...n
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
var s = a("flex h-auto cursor-text items-center justify-center gap-2 py-1.5 text-sm font-medium text-muted-foreground select-none group-data-[disabled=true]/input-group:opacity-50 [&>kbd]:rounded-[calc(var(--radius)-5px)] [&>svg:not([class*='size-'])]:size-4", {
|
|
21
|
+
variants: { align: {
|
|
22
|
+
"inline-start": "order-first pl-2 has-[>button]:-ml-1 has-[>kbd]:ml-[-0.15rem]",
|
|
23
|
+
"inline-end": "order-last pr-2 has-[>button]:-mr-1 has-[>kbd]:mr-[-0.15rem]",
|
|
24
|
+
"block-start": "order-first w-full justify-start px-2.5 pt-2 group-has-[>input]/input-group:pt-2 [.border-b]:pb-2",
|
|
25
|
+
"block-end": "order-last w-full justify-start px-2.5 pb-2 group-has-[>input]/input-group:pb-2 [.border-t]:pt-2"
|
|
26
|
+
} },
|
|
27
|
+
defaultVariants: { align: "inline-start" }
|
|
28
|
+
});
|
|
29
|
+
function c({ className: t, align: n = "inline-start", ...r }) {
|
|
30
|
+
return /* @__PURE__ */ i("div", {
|
|
31
|
+
role: "group",
|
|
32
|
+
"data-slot": "input-group-addon",
|
|
33
|
+
"data-align": n,
|
|
34
|
+
className: e(s({ align: n }), t),
|
|
35
|
+
onClick: (e) => {
|
|
36
|
+
e.target.closest("button") || e.currentTarget.parentElement?.querySelector("input")?.focus();
|
|
37
|
+
},
|
|
38
|
+
...r
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
var l = a("flex items-center gap-2 text-sm shadow-none", {
|
|
42
|
+
variants: { size: {
|
|
43
|
+
xs: "h-6 gap-1 rounded-[calc(var(--radius)-5px)] px-1.5 [&>svg:not([class*='size-'])]:size-3.5",
|
|
44
|
+
sm: "",
|
|
45
|
+
"icon-xs": "size-6 rounded-[calc(var(--radius)-5px)] p-0 has-[>svg]:p-0",
|
|
46
|
+
"icon-sm": "size-8 p-0 has-[>svg]:p-0"
|
|
47
|
+
} },
|
|
48
|
+
defaultVariants: { size: "xs" }
|
|
49
|
+
});
|
|
50
|
+
function u({ className: n, type: r = "button", variant: a = "ghost", size: o = "xs", ...s }) {
|
|
51
|
+
return /* @__PURE__ */ i(t, {
|
|
52
|
+
type: r,
|
|
53
|
+
"data-size": o,
|
|
54
|
+
variant: a,
|
|
55
|
+
className: e(l({ size: o }), n),
|
|
56
|
+
...s
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
function d({ className: t, ...n }) {
|
|
60
|
+
return /* @__PURE__ */ i("span", {
|
|
61
|
+
className: e("flex items-center gap-2 text-sm text-muted-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4", t),
|
|
62
|
+
...n
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
function f({ className: t, ...r }) {
|
|
66
|
+
return /* @__PURE__ */ i(n, {
|
|
67
|
+
"data-slot": "input-group-control",
|
|
68
|
+
className: e("flex-1 rounded-none border-0 bg-transparent shadow-none ring-0 focus-visible:ring-0 aria-invalid:ring-0 dark:bg-transparent", t),
|
|
69
|
+
...r
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
function p({ className: t, ...n }) {
|
|
73
|
+
return /* @__PURE__ */ i(r, {
|
|
74
|
+
"data-slot": "input-group-control",
|
|
75
|
+
className: e("flex-1 resize-none rounded-none border-0 bg-transparent py-2 shadow-none ring-0 focus-visible:ring-0 aria-invalid:ring-0 dark:bg-transparent", t),
|
|
76
|
+
...n
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
//#endregion
|
|
80
|
+
export { o as InputGroup, c as InputGroupAddon, u as InputGroupButton, f as InputGroupInput, d as InputGroupText, p as InputGroupTextarea };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './label';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import "./label.js";
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
"use client";
|
|
3
|
+
import { cn as e } from "../../../lib/utils.js";
|
|
4
|
+
import "react";
|
|
5
|
+
import { jsx as t } from "react/jsx-runtime";
|
|
6
|
+
//#region src/components/ui/label/label.tsx
|
|
7
|
+
function n({ className: n, ...r }) {
|
|
8
|
+
return /* @__PURE__ */ t("label", {
|
|
9
|
+
"data-slot": "label",
|
|
10
|
+
className: e("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),
|
|
11
|
+
...r
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
//#endregion
|
|
15
|
+
export { n as Label };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './select';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import "./select.js";
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Select as SelectPrimitive } from '@base-ui/react/select';
|
|
2
|
+
import { SelectTriggerSizeName } from '@surfnet/curve-contracts';
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
declare const Select: typeof SelectPrimitive.Root;
|
|
5
|
+
declare function SelectGroup({ className, ...props }: SelectPrimitive.Group.Props): React.JSX.Element;
|
|
6
|
+
declare function SelectValue({ className, ...props }: SelectPrimitive.Value.Props): React.JSX.Element;
|
|
7
|
+
declare function SelectTrigger({ className, size, children, ...props }: SelectPrimitive.Trigger.Props & {
|
|
8
|
+
size?: SelectTriggerSizeName;
|
|
9
|
+
}): React.JSX.Element;
|
|
10
|
+
declare function SelectContent({ className, children, side, sideOffset, align, alignOffset, alignItemWithTrigger, ...props }: SelectPrimitive.Popup.Props & Pick<SelectPrimitive.Positioner.Props, 'align' | 'alignOffset' | 'side' | 'sideOffset' | 'alignItemWithTrigger'>): React.JSX.Element;
|
|
11
|
+
declare function SelectLabel({ className, ...props }: SelectPrimitive.GroupLabel.Props): React.JSX.Element;
|
|
12
|
+
declare function SelectItem({ className, children, ...props }: SelectPrimitive.Item.Props): React.JSX.Element;
|
|
13
|
+
declare function SelectSeparator({ className, ...props }: SelectPrimitive.Separator.Props): React.JSX.Element;
|
|
14
|
+
declare function SelectScrollUpButton({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.ScrollUpArrow>): React.JSX.Element;
|
|
15
|
+
declare function SelectScrollDownButton({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.ScrollDownArrow>): React.JSX.Element;
|
|
16
|
+
export { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, };
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
"use client";
|
|
3
|
+
import { cn as e } from "../../../lib/utils.js";
|
|
4
|
+
import "react";
|
|
5
|
+
import { jsx as t, jsxs as n } from "react/jsx-runtime";
|
|
6
|
+
import { CaretDownIcon as r, CaretUpDownIcon as i, CaretUpIcon as a, CheckIcon as o } from "@phosphor-icons/react";
|
|
7
|
+
import { Select as s } from "@base-ui/react/select";
|
|
8
|
+
//#region src/components/ui/select/select.tsx
|
|
9
|
+
var c = s.Root;
|
|
10
|
+
function l({ className: n, ...r }) {
|
|
11
|
+
return /* @__PURE__ */ t(s.Group, {
|
|
12
|
+
"data-slot": "select-group",
|
|
13
|
+
className: e("scroll-my-1 p-1", n),
|
|
14
|
+
...r
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
function u({ className: n, ...r }) {
|
|
18
|
+
return /* @__PURE__ */ t(s.Value, {
|
|
19
|
+
"data-slot": "select-value",
|
|
20
|
+
className: e("flex flex-1 text-left", n),
|
|
21
|
+
...r
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
function d({ className: r, size: a = "default", children: o, ...c }) {
|
|
25
|
+
return /* @__PURE__ */ n(s.Trigger, {
|
|
26
|
+
"data-slot": "select-trigger",
|
|
27
|
+
"data-size": a,
|
|
28
|
+
className: e("flex w-fit items-center justify-between gap-1.5 rounded-md border border-input bg-transparent py-2 pr-2 pl-2.5 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 data-placeholder:text-muted-foreground data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-1.5 dark:bg-input/30 dark:hover:bg-input/50 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", r),
|
|
29
|
+
...c,
|
|
30
|
+
children: [o, /* @__PURE__ */ t(s.Icon, { render: /* @__PURE__ */ t(i, { className: "pointer-events-none size-4 text-muted-foreground" }) })]
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
function f({ className: r, children: i, side: a = "bottom", sideOffset: o = 4, align: c = "center", alignOffset: l = 0, alignItemWithTrigger: u = !0, ...d }) {
|
|
34
|
+
return /* @__PURE__ */ t(s.Portal, { children: /* @__PURE__ */ t(s.Positioner, {
|
|
35
|
+
side: a,
|
|
36
|
+
sideOffset: o,
|
|
37
|
+
align: c,
|
|
38
|
+
alignOffset: l,
|
|
39
|
+
alignItemWithTrigger: u,
|
|
40
|
+
className: "isolate z-50",
|
|
41
|
+
children: /* @__PURE__ */ n(s.Popup, {
|
|
42
|
+
"data-slot": "select-content",
|
|
43
|
+
"data-align-trigger": u,
|
|
44
|
+
className: e("relative isolate z-50 max-h-(--available-height) w-(--anchor-width) min-w-36 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-md bg-popover text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[align-trigger=true]:animate-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-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 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95", r),
|
|
45
|
+
...d,
|
|
46
|
+
children: [
|
|
47
|
+
/* @__PURE__ */ t(g, {}),
|
|
48
|
+
/* @__PURE__ */ t(s.List, { children: i }),
|
|
49
|
+
/* @__PURE__ */ t(_, {})
|
|
50
|
+
]
|
|
51
|
+
})
|
|
52
|
+
}) });
|
|
53
|
+
}
|
|
54
|
+
function p({ className: n, ...r }) {
|
|
55
|
+
return /* @__PURE__ */ t(s.GroupLabel, {
|
|
56
|
+
"data-slot": "select-label",
|
|
57
|
+
className: e("px-2 py-1.5 text-xs text-muted-foreground", n),
|
|
58
|
+
...r
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
function m({ className: r, children: i, ...a }) {
|
|
62
|
+
return /* @__PURE__ */ n(s.Item, {
|
|
63
|
+
"data-slot": "select-item",
|
|
64
|
+
className: e("relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2", r),
|
|
65
|
+
...a,
|
|
66
|
+
children: [/* @__PURE__ */ t(s.ItemText, {
|
|
67
|
+
className: "flex flex-1 shrink-0 gap-2 whitespace-nowrap",
|
|
68
|
+
children: i
|
|
69
|
+
}), /* @__PURE__ */ t(s.ItemIndicator, {
|
|
70
|
+
render: /* @__PURE__ */ t("span", { className: "pointer-events-none absolute right-2 flex size-4 items-center justify-center" }),
|
|
71
|
+
children: /* @__PURE__ */ t(o, { className: "pointer-events-none" })
|
|
72
|
+
})]
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
function h({ className: n, ...r }) {
|
|
76
|
+
return /* @__PURE__ */ t(s.Separator, {
|
|
77
|
+
"data-slot": "select-separator",
|
|
78
|
+
className: e("pointer-events-none -mx-1 my-1 h-px bg-border", n),
|
|
79
|
+
...r
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
function g({ className: n, ...r }) {
|
|
83
|
+
return /* @__PURE__ */ t(s.ScrollUpArrow, {
|
|
84
|
+
"data-slot": "select-scroll-up-button",
|
|
85
|
+
className: e("top-0 z-10 flex w-full cursor-default items-center justify-center bg-popover py-1 [&_svg:not([class*='size-'])]:size-4", n),
|
|
86
|
+
...r,
|
|
87
|
+
children: /* @__PURE__ */ t(a, {})
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
function _({ className: n, ...i }) {
|
|
91
|
+
return /* @__PURE__ */ t(s.ScrollDownArrow, {
|
|
92
|
+
"data-slot": "select-scroll-down-button",
|
|
93
|
+
className: e("bottom-0 z-10 flex w-full cursor-default items-center justify-center bg-popover py-1 [&_svg:not([class*='size-'])]:size-4", n),
|
|
94
|
+
...i,
|
|
95
|
+
children: /* @__PURE__ */ t(r, {})
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
//#endregion
|
|
99
|
+
export { c as Select, f as SelectContent, l as SelectGroup, m as SelectItem, p as SelectLabel, _ as SelectScrollDownButton, g as SelectScrollUpButton, h as SelectSeparator, d as SelectTrigger, u as SelectValue };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './separator';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import "./separator.js";
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
"use client";
|
|
3
|
+
import { cn as e } from "../../../lib/utils.js";
|
|
4
|
+
import { jsx as t } from "react/jsx-runtime";
|
|
5
|
+
import { Separator as n } from "@base-ui/react/separator";
|
|
6
|
+
//#region src/components/ui/separator/separator.tsx
|
|
7
|
+
function r({ className: r, orientation: i = "horizontal", ...a }) {
|
|
8
|
+
return /* @__PURE__ */ t(n, {
|
|
9
|
+
"data-slot": "separator",
|
|
10
|
+
orientation: i,
|
|
11
|
+
className: e("shrink-0 bg-border data-horizontal:h-px data-horizontal:w-full data-vertical:w-px data-vertical:self-stretch", r),
|
|
12
|
+
...a
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
//#endregion
|
|
16
|
+
export { r as Separator };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './sidebar';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import "./sidebar.js";
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Dialog as SheetPrimitive } from '@base-ui/react/dialog';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
declare function Sheet({ ...props }: SheetPrimitive.Root.Props): React.JSX.Element;
|
|
4
|
+
declare function SheetTrigger({ ...props }: SheetPrimitive.Trigger.Props): React.JSX.Element;
|
|
5
|
+
declare function SheetClose({ ...props }: SheetPrimitive.Close.Props): React.JSX.Element;
|
|
6
|
+
declare function SheetContent({ className, children, side, showCloseButton, ...props }: SheetPrimitive.Popup.Props & {
|
|
7
|
+
side?: 'top' | 'right' | 'bottom' | 'left';
|
|
8
|
+
showCloseButton?: boolean;
|
|
9
|
+
}): React.JSX.Element;
|
|
10
|
+
declare function SheetHeader({ className, ...props }: React.ComponentProps<'div'>): React.JSX.Element;
|
|
11
|
+
declare function SheetFooter({ className, ...props }: React.ComponentProps<'div'>): React.JSX.Element;
|
|
12
|
+
declare function SheetTitle({ className, ...props }: SheetPrimitive.Title.Props): React.JSX.Element;
|
|
13
|
+
declare function SheetDescription({ className, ...props }: SheetPrimitive.Description.Props): React.JSX.Element;
|
|
14
|
+
export { Sheet, SheetTrigger, SheetClose, SheetContent, SheetHeader, SheetFooter, SheetTitle, SheetDescription, };
|