@cryptlex/web-components 1.3.4 → 1.3.5
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/data-table/column-picker.es.js +12 -11
- package/dist/components/data-table/column-picker.es.js.map +1 -1
- package/dist/components/data-table/data-table.es.js +34 -31
- package/dist/components/data-table/data-table.es.js.map +1 -1
- package/dist/components/data-table/table-actions.es.js +8 -8
- package/dist/components/data-table/table-actions.es.js.map +1 -1
- package/dist/components/data-table/table-content.es.js +21 -17
- package/dist/components/data-table/table-content.es.js.map +1 -1
- package/dist/components/key-value-card/key-value-card.es.js +85 -0
- package/dist/components/key-value-card/key-value-card.es.js.map +1 -0
- package/dist/components/sidebar/app-layout.es.js +12 -22
- package/dist/components/sidebar/app-layout.es.js.map +1 -1
- package/dist/components/sidebar/nav-main.es.js +44 -42
- package/dist/components/sidebar/nav-main.es.js.map +1 -1
- package/dist/components/static-data-table/data-table.es.js +6 -6
- package/dist/components/static-data-table/data-table.es.js.map +1 -1
- package/dist/components/ui/button.es.js +10 -9
- package/dist/components/ui/button.es.js.map +1 -1
- package/dist/components/ui/chart.es.js +9 -9
- package/dist/components/ui/copy-button.es.js +72 -0
- package/dist/components/ui/copy-button.es.js.map +1 -0
- package/dist/components/ui/drawer.es.js +18 -21
- package/dist/components/ui/drawer.es.js.map +1 -1
- package/dist/components/ui/link-button.es.js +22 -0
- package/dist/components/ui/link-button.es.js.map +1 -0
- package/dist/components/ui/mutli-select.es.js +20 -18
- package/dist/components/ui/mutli-select.es.js.map +1 -1
- package/dist/components/ui/pagination.es.js +20 -20
- package/dist/components/ui/select.es.js +13 -13
- package/dist/components/ui/select.es.js.map +1 -1
- package/dist/components/ui/table.es.js +19 -19
- package/dist/components/ui/table.es.js.map +1 -1
- package/dist/index.es.d.ts +43 -15
- package/dist/index.es.js +225 -221
- package/dist/index.es.js.map +1 -1
- package/dist/utils/index.es.js +19 -14
- package/dist/utils/index.es.js.map +1 -1
- package/package.json +4 -3
- package/tailwind.preset.ts +55 -47
- package/dist/components/info-card/info-card.es.js +0 -71
- package/dist/components/info-card/info-card.es.js.map +0 -1
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { jsx as t, jsxs as
|
|
2
|
+
import { jsx as t, jsxs as c } from "react/jsx-runtime";
|
|
3
3
|
import * as l from "react";
|
|
4
4
|
import { Drawer as a } from "vaul";
|
|
5
5
|
import { cn as s } from "../../utils/index.es.js";
|
|
6
|
-
const
|
|
6
|
+
const m = ({
|
|
7
7
|
shouldScaleBackground: e = !0,
|
|
8
8
|
...r
|
|
9
9
|
}) => /* @__PURE__ */ t(a.Root, { shouldScaleBackground: e, ...r });
|
|
10
|
-
|
|
11
|
-
const u = a.Trigger, n = a.Portal, b = a.Close,
|
|
10
|
+
m.displayName = "Drawer";
|
|
11
|
+
const u = a.Trigger, n = a.Portal, b = a.Close, i = l.forwardRef(({ className: e, ...r }, o) => /* @__PURE__ */ t(
|
|
12
12
|
a.Overlay,
|
|
13
13
|
{
|
|
14
14
|
ref: o,
|
|
@@ -16,23 +16,20 @@ const u = a.Trigger, n = a.Portal, b = a.Close, d = l.forwardRef(({ className: e
|
|
|
16
16
|
...r
|
|
17
17
|
}
|
|
18
18
|
));
|
|
19
|
-
|
|
20
|
-
const p = l.forwardRef(({ className: e, children: r, ...o },
|
|
21
|
-
/* @__PURE__ */ t(
|
|
22
|
-
/* @__PURE__ */
|
|
19
|
+
i.displayName = a.Overlay.displayName;
|
|
20
|
+
const p = l.forwardRef(({ className: e, children: r, ...o }, d) => /* @__PURE__ */ c(n, { children: [
|
|
21
|
+
/* @__PURE__ */ t(i, {}),
|
|
22
|
+
/* @__PURE__ */ t(
|
|
23
23
|
a.Content,
|
|
24
24
|
{
|
|
25
|
-
ref:
|
|
25
|
+
ref: d,
|
|
26
26
|
style: { userSelect: "text" },
|
|
27
27
|
className: s(
|
|
28
28
|
"fixed inset-x-0 bottom-0 z-50 mt-24 flex h-auto flex-col rounded-t-[10px] border bg-background",
|
|
29
29
|
e
|
|
30
30
|
),
|
|
31
31
|
...o,
|
|
32
|
-
children:
|
|
33
|
-
/* @__PURE__ */ t("div", { className: "mx-auto mt-4 h-2 w-[100px] rounded-full bg-muted" }),
|
|
34
|
-
r
|
|
35
|
-
]
|
|
32
|
+
children: r
|
|
36
33
|
}
|
|
37
34
|
)
|
|
38
35
|
] }));
|
|
@@ -41,9 +38,9 @@ const f = ({ className: e, ...r }) => /* @__PURE__ */ t("div", { className: s("g
|
|
|
41
38
|
f.displayName = "DrawerHeader";
|
|
42
39
|
const w = ({ className: e, ...r }) => /* @__PURE__ */ t("div", { className: s("mt-auto flex flex-col gap-2 p-4", e), ...r });
|
|
43
40
|
w.displayName = "DrawerFooter";
|
|
44
|
-
const
|
|
45
|
-
|
|
46
|
-
const
|
|
41
|
+
const D = l.forwardRef(({ className: e, ...r }, o) => /* @__PURE__ */ t(a.Title, { ref: o, className: s("text-heading-3", e), ...r }));
|
|
42
|
+
D.displayName = a.Title.displayName;
|
|
43
|
+
const x = l.forwardRef(({ className: e, ...r }, o) => /* @__PURE__ */ t(
|
|
47
44
|
a.Description,
|
|
48
45
|
{
|
|
49
46
|
ref: o,
|
|
@@ -51,17 +48,17 @@ const D = l.forwardRef(({ className: e, ...r }, o) => /* @__PURE__ */ t(
|
|
|
51
48
|
...r
|
|
52
49
|
}
|
|
53
50
|
));
|
|
54
|
-
|
|
51
|
+
x.displayName = a.Description.displayName;
|
|
55
52
|
export {
|
|
56
|
-
|
|
53
|
+
m as Drawer,
|
|
57
54
|
b as DrawerClose,
|
|
58
55
|
p as DrawerContent,
|
|
59
|
-
|
|
56
|
+
x as DrawerDescription,
|
|
60
57
|
w as DrawerFooter,
|
|
61
58
|
f as DrawerHeader,
|
|
62
|
-
|
|
59
|
+
i as DrawerOverlay,
|
|
63
60
|
n as DrawerPortal,
|
|
64
|
-
|
|
61
|
+
D as DrawerTitle,
|
|
65
62
|
u as DrawerTrigger
|
|
66
63
|
};
|
|
67
64
|
//# sourceMappingURL=drawer.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drawer.es.js","sources":["../../../lib/components/ui/drawer.tsx"],"sourcesContent":["'use client';\nimport * as React from 'react';\nimport { Drawer as DrawerPrimitive } from 'vaul';\n\nimport { cn } from '@/utils';\n\nconst Drawer = ({\n shouldScaleBackground = true,\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Root>) => (\n <DrawerPrimitive.Root shouldScaleBackground={shouldScaleBackground} {...props} />\n);\nDrawer.displayName = 'Drawer';\n\nconst DrawerTrigger = DrawerPrimitive.Trigger;\n\nconst DrawerPortal: React.FC<React.ComponentProps<typeof DrawerPrimitive.Portal>> =\n DrawerPrimitive.Portal;\n\nconst DrawerClose = DrawerPrimitive.Close;\n\nconst DrawerOverlay = React.forwardRef<\n React.ElementRef<typeof DrawerPrimitive.Overlay>,\n React.ComponentPropsWithoutRef<typeof DrawerPrimitive.Overlay>\n>(({ className, ...props }, ref) => (\n <DrawerPrimitive.Overlay\n ref={ref}\n className={cn('fixed inset-0 z-50 bg-black/80', className)}\n {...props}\n />\n));\nDrawerOverlay.displayName = DrawerPrimitive.Overlay.displayName;\n\nconst DrawerContent = React.forwardRef<\n React.ElementRef<typeof DrawerPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof DrawerPrimitive.Content>\n>(({ className, children, ...props }, ref) => (\n <DrawerPortal>\n <DrawerOverlay />\n <DrawerPrimitive.Content\n ref={ref}\n style={{ userSelect: 'text' }}\n className={cn(\n 'fixed inset-x-0 bottom-0 z-50 mt-24 flex h-auto flex-col rounded-t-[10px] border bg-background',\n className,\n )}\n {...props}\n >\n <div className=\"mx-auto mt-4 h-2 w-[100px] rounded-full bg-muted\"
|
|
1
|
+
{"version":3,"file":"drawer.es.js","sources":["../../../lib/components/ui/drawer.tsx"],"sourcesContent":["'use client';\nimport * as React from 'react';\nimport { Drawer as DrawerPrimitive } from 'vaul';\n\nimport { cn } from '@/utils';\n\nconst Drawer = ({\n shouldScaleBackground = true,\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Root>) => (\n <DrawerPrimitive.Root shouldScaleBackground={shouldScaleBackground} {...props} />\n);\nDrawer.displayName = 'Drawer';\n\nconst DrawerTrigger = DrawerPrimitive.Trigger;\n\nconst DrawerPortal: React.FC<React.ComponentProps<typeof DrawerPrimitive.Portal>> =\n DrawerPrimitive.Portal;\n\nconst DrawerClose = DrawerPrimitive.Close;\n\nconst DrawerOverlay = React.forwardRef<\n React.ElementRef<typeof DrawerPrimitive.Overlay>,\n React.ComponentPropsWithoutRef<typeof DrawerPrimitive.Overlay>\n>(({ className, ...props }, ref) => (\n <DrawerPrimitive.Overlay\n ref={ref}\n className={cn('fixed inset-0 z-50 bg-black/80', className)}\n {...props}\n />\n));\nDrawerOverlay.displayName = DrawerPrimitive.Overlay.displayName;\n\nconst DrawerContent = React.forwardRef<\n React.ElementRef<typeof DrawerPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof DrawerPrimitive.Content>\n>(({ className, children, ...props }, ref) => (\n <DrawerPortal>\n <DrawerOverlay />\n <DrawerPrimitive.Content\n ref={ref}\n style={{ userSelect: 'text' }}\n className={cn(\n 'fixed inset-x-0 bottom-0 z-50 mt-24 flex h-auto flex-col rounded-t-[10px] border bg-background',\n className,\n )}\n {...props}\n >\n {/* <div className=\"mx-auto mt-4 h-2 w-[100px] rounded-full bg-muted\" /> */}\n {children}\n </DrawerPrimitive.Content>\n </DrawerPortal>\n));\nDrawerContent.displayName = 'DrawerContent';\n\nconst DrawerHeader = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div className={cn('grid gap-1.5 p-4 text-center sm:text-left', className)} {...props} />\n);\nDrawerHeader.displayName = 'DrawerHeader';\n\nconst DrawerFooter = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div className={cn('mt-auto flex flex-col gap-2 p-4', className)} {...props} />\n);\nDrawerFooter.displayName = 'DrawerFooter';\n\nconst DrawerTitle = React.forwardRef<\n React.ElementRef<typeof DrawerPrimitive.Title>,\n React.ComponentPropsWithoutRef<typeof DrawerPrimitive.Title>\n>(({ className, ...props }, ref) => (\n <DrawerPrimitive.Title ref={ref} className={cn('text-heading-3', className)} {...props} />\n));\nDrawerTitle.displayName = DrawerPrimitive.Title.displayName;\n\nconst DrawerDescription = React.forwardRef<\n React.ElementRef<typeof DrawerPrimitive.Description>,\n React.ComponentPropsWithoutRef<typeof DrawerPrimitive.Description>\n>(({ className, ...props }, ref) => (\n <DrawerPrimitive.Description\n ref={ref}\n className={cn('text-body text-muted-foreground', className)}\n {...props}\n />\n));\nDrawerDescription.displayName = DrawerPrimitive.Description.displayName;\n\nexport {\n Drawer,\n DrawerClose,\n DrawerContent,\n DrawerDescription,\n DrawerFooter,\n DrawerHeader,\n DrawerOverlay,\n DrawerPortal,\n DrawerTitle,\n DrawerTrigger,\n};\n\n"],"names":["Drawer","shouldScaleBackground","props","DrawerPrimitive","DrawerTrigger","DrawerPortal","DrawerClose","DrawerOverlay","React","className","ref","jsx","cn","DrawerContent","children","jsxs","DrawerHeader","DrawerFooter","DrawerTitle","DrawerDescription"],"mappings":";;;;;AAMA,MAAMA,IAAS,CAAC;AAAA,EACd,uBAAAC,IAAwB;AAAA,EACxB,GAAGC;AACL,wBACGC,EAAgB,MAAhB,EAAqB,uBAAAF,GAA+C,GAAGC,EAAO,CAAA;AAEjFF,EAAO,cAAc;AAErB,MAAMI,IAAgBD,EAAgB,SAEhCE,IACJF,EAAgB,QAEZG,IAAcH,EAAgB,OAE9BI,IAAgBC,EAAM,WAG1B,CAAC,EAAE,WAAAC,GAAW,GAAGP,EAAM,GAAGQ,MAC1B,gBAAAC;AAAA,EAACR,EAAgB;AAAA,EAAhB;AAAA,IACC,KAAAO;AAAA,IACA,WAAWE,EAAG,kCAAkCH,CAAS;AAAA,IACxD,GAAGP;AAAA,EAAA;AACN,CACD;AACDK,EAAc,cAAcJ,EAAgB,QAAQ;AAEpD,MAAMU,IAAgBL,EAAM,WAG1B,CAAC,EAAE,WAAAC,GAAW,UAAAK,GAAU,GAAGZ,EAAM,GAAGQ,MACpC,gBAAAK,EAACV,GACC,EAAA,UAAA;AAAA,EAAA,gBAAAM,EAACJ,GAAc,EAAA;AAAA,EACf,gBAAAI;AAAA,IAACR,EAAgB;AAAA,IAAhB;AAAA,MACC,KAAAO;AAAA,MACA,OAAO,EAAE,YAAY,OAAO;AAAA,MAC5B,WAAWE;AAAA,QACT;AAAA,QACAH;AAAA,MACF;AAAA,MACC,GAAGP;AAAA,MAGH,UAAAY;AAAA,IAAA;AAAA,EAAA;AACH,GACF,CACD;AACDD,EAAc,cAAc;AAE5B,MAAMG,IAAe,CAAC,EAAE,WAAAP,GAAW,GAAGP,EAAM,MACzC,gBAAAS,EAAA,OAAA,EAAI,WAAWC,EAAG,6CAA6CH,CAAS,GAAI,GAAGP,EAAO,CAAA;AAEzFc,EAAa,cAAc;AAE3B,MAAMC,IAAe,CAAC,EAAE,WAAAR,GAAW,GAAGP,EAAM,MACzC,gBAAAS,EAAA,OAAA,EAAI,WAAWC,EAAG,mCAAmCH,CAAS,GAAI,GAAGP,EAAO,CAAA;AAE/Ee,EAAa,cAAc;AAErB,MAAAC,IAAcV,EAAM,WAGxB,CAAC,EAAE,WAAAC,GAAW,GAAGP,EAAM,GAAGQ,MAC1B,gBAAAC,EAACR,EAAgB,OAAhB,EAAsB,KAAAO,GAAU,WAAWE,EAAG,kBAAkBH,CAAS,GAAI,GAAGP,GAAO,CACzF;AACDgB,EAAY,cAAcf,EAAgB,MAAM;AAE1C,MAAAgB,IAAoBX,EAAM,WAG9B,CAAC,EAAE,WAAAC,GAAW,GAAGP,EAAM,GAAGQ,MAC1B,gBAAAC;AAAA,EAACR,EAAgB;AAAA,EAAhB;AAAA,IACC,KAAAO;AAAA,IACA,WAAWE,EAAG,mCAAmCH,CAAS;AAAA,IACzD,GAAGP;AAAA,EAAA;AACN,CACD;AACDiB,EAAkB,cAAchB,EAAgB,YAAY;"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { jsxs as i, jsx as o } from "react/jsx-runtime";
|
|
2
|
+
import { buttonVariants as r } from "./button.es.js";
|
|
3
|
+
import { cn as a } from "../../utils/index.es.js";
|
|
4
|
+
import { Link as m } from "@tanstack/react-router";
|
|
5
|
+
function l(t) {
|
|
6
|
+
const n = t.icon;
|
|
7
|
+
return /* @__PURE__ */ i(
|
|
8
|
+
m,
|
|
9
|
+
{
|
|
10
|
+
className: a(r({ variant: t.variant, size: t.size }), "flex gap-2"),
|
|
11
|
+
to: t.to,
|
|
12
|
+
children: [
|
|
13
|
+
n && /* @__PURE__ */ o(n, { className: "h-4 w-4" }),
|
|
14
|
+
t.children
|
|
15
|
+
]
|
|
16
|
+
}
|
|
17
|
+
);
|
|
18
|
+
}
|
|
19
|
+
export {
|
|
20
|
+
l as LinkButton
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=link-button.es.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"link-button.es.js","sources":["../../../lib/components/ui/link-button.tsx"],"sourcesContent":["import { buttonVariants } from '@/components/ui/button';\nimport { cn } from '@/utils';\nimport { Link } from '@tanstack/react-router';\nimport type { VariantProps } from 'class-variance-authority';\nimport type { LucideIcon } from 'lucide-react';\n/**\n *\n * @param props buttonVariants\n * @returns Button as Tanstack Link\n */\nexport function LinkButton(\n props: VariantProps<typeof buttonVariants> & {\n icon?: LucideIcon;\n to: string;\n children: React.ReactNode;\n },\n) {\n const Icon = props.icon;\n return (\n <Link\n className={cn(buttonVariants({ variant: props.variant, size: props.size }), 'flex gap-2')}\n to={props.to}\n >\n {Icon && <Icon className=\"h-4 w-4\" />}\n {props.children}\n </Link>\n );\n}\n"],"names":["LinkButton","props","Icon","jsxs","Link","cn","buttonVariants","jsx"],"mappings":";;;;AAUO,SAASA,EACdC,GAKA;AACA,QAAMC,IAAOD,EAAM;AAEjB,SAAA,gBAAAE;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,WAAWC,EAAGC,EAAe,EAAE,SAASL,EAAM,SAAS,MAAMA,EAAM,KAAM,CAAA,GAAG,YAAY;AAAA,MACxF,IAAIA,EAAM;AAAA,MAET,UAAA;AAAA,QAAQC,KAAA,gBAAAK,EAACL,GAAK,EAAA,WAAU,UAAU,CAAA;AAAA,QAClCD,EAAM;AAAA,MAAA;AAAA,IAAA;AAAA,EACT;AAEJ;"}
|
|
@@ -11,6 +11,8 @@ import "./card.es.js";
|
|
|
11
11
|
import "./chart.es.js";
|
|
12
12
|
import "./checkbox.es.js";
|
|
13
13
|
import "@radix-ui/react-collapsible";
|
|
14
|
+
import { XIcon as D, ChevronDown as g, Command as O, CheckIcon as B } from "lucide-react";
|
|
15
|
+
import * as m from "react";
|
|
14
16
|
import "./dialog.es.js";
|
|
15
17
|
import "./drawer.es.js";
|
|
16
18
|
import "./dropdown-menu.es.js";
|
|
@@ -18,16 +20,15 @@ import "./form.es.js";
|
|
|
18
20
|
import "./input.es.js";
|
|
19
21
|
import "./input-otp.es.js";
|
|
20
22
|
import "./label.es.js";
|
|
21
|
-
import { cn as
|
|
22
|
-
import
|
|
23
|
+
import { cn as K } from "../../utils/index.es.js";
|
|
24
|
+
import "@tanstack/react-router";
|
|
23
25
|
import "./navigation-menu.es.js";
|
|
24
26
|
import "./pagination.es.js";
|
|
25
27
|
import "./password-input.es.js";
|
|
26
28
|
import "./popover.es.js";
|
|
27
29
|
import "./radio-group.es.js";
|
|
28
|
-
import * as c from "react";
|
|
29
30
|
import "./select.es.js";
|
|
30
|
-
import { Separator as
|
|
31
|
+
import { Separator as y } from "./separator.es.js";
|
|
31
32
|
import "./sheet.es.js";
|
|
32
33
|
import "./sidebar.es.js";
|
|
33
34
|
import "sonner";
|
|
@@ -52,23 +53,23 @@ G(
|
|
|
52
53
|
}
|
|
53
54
|
}
|
|
54
55
|
);
|
|
55
|
-
const L =
|
|
56
|
+
const L = m.forwardRef(
|
|
56
57
|
({
|
|
57
58
|
className: T,
|
|
58
59
|
variant: X,
|
|
59
60
|
asChild: _ = !1,
|
|
60
61
|
options: p,
|
|
61
|
-
defaultValue:
|
|
62
|
+
defaultValue: c,
|
|
62
63
|
onValueChange: l,
|
|
63
64
|
disabled: q,
|
|
64
65
|
placeholder: x,
|
|
65
66
|
animation: z = 0,
|
|
66
67
|
...b
|
|
67
68
|
}, w) => {
|
|
68
|
-
const [t, s] =
|
|
69
|
-
|
|
70
|
-
s(
|
|
71
|
-
}, [
|
|
69
|
+
const [t, s] = m.useState(c || []), i = m.useRef(new Set(t)), [u, a] = m.useState(!1);
|
|
70
|
+
m.useEffect(() => {
|
|
71
|
+
s(c || []), i.current = new Set(c);
|
|
72
|
+
}, [c]);
|
|
72
73
|
const N = (r) => {
|
|
73
74
|
r.key === "Enter" ? a(!0) : r.key === "Backspace" && !r.target.value && (t.pop(), s([...t]), i.current.delete(t[t.length - 1]), l([...t]));
|
|
74
75
|
}, C = (r) => {
|
|
@@ -81,6 +82,7 @@ const L = c.forwardRef(
|
|
|
81
82
|
ref: w,
|
|
82
83
|
...b,
|
|
83
84
|
onClick: () => a(!u),
|
|
85
|
+
variant: "ghost",
|
|
84
86
|
className: "flex w-full p-1 rounded-md border min-h-10 h-auto items-center justify-between bg-inherit hover:bg-card",
|
|
85
87
|
children: t.length > 0 ? /* @__PURE__ */ n("div", { className: "flex justify-between items-center w-full", children: [
|
|
86
88
|
/* @__PURE__ */ e("div", { className: "flex flex-wrap items-center", children: t.map((r) => {
|
|
@@ -92,7 +94,7 @@ const L = c.forwardRef(
|
|
|
92
94
|
}) }),
|
|
93
95
|
/* @__PURE__ */ n("div", { className: "flex items-center justify-between", children: [
|
|
94
96
|
/* @__PURE__ */ e(
|
|
95
|
-
|
|
97
|
+
D,
|
|
96
98
|
{
|
|
97
99
|
className: "h-4 mx-2 cursor-pointer text-muted-foreground",
|
|
98
100
|
onClick: (r) => {
|
|
@@ -100,12 +102,12 @@ const L = c.forwardRef(
|
|
|
100
102
|
}
|
|
101
103
|
}
|
|
102
104
|
),
|
|
103
|
-
/* @__PURE__ */ e(
|
|
104
|
-
/* @__PURE__ */ e(
|
|
105
|
+
/* @__PURE__ */ e(y, { orientation: "vertical", className: "flex min-h-6 h-full" }),
|
|
106
|
+
/* @__PURE__ */ e(g, { className: "h-4 mx-2 cursor-pointer text-muted-foreground" })
|
|
105
107
|
] })
|
|
106
108
|
] }) : /* @__PURE__ */ n("div", { className: "flex items-center justify-between w-full mx-auto", children: [
|
|
107
109
|
/* @__PURE__ */ e("span", { className: "text-sm text-muted-foreground mx-3", children: x }),
|
|
108
|
-
/* @__PURE__ */ e(
|
|
110
|
+
/* @__PURE__ */ e(g, { className: "h-4 cursor-pointer text-muted-foreground mx-2" })
|
|
109
111
|
] })
|
|
110
112
|
}
|
|
111
113
|
) }),
|
|
@@ -115,7 +117,7 @@ const L = c.forwardRef(
|
|
|
115
117
|
className: "w-[200px] p-0 drop-shadow-sm",
|
|
116
118
|
align: "start",
|
|
117
119
|
onEscapeKeyDown: () => a(!1),
|
|
118
|
-
children: /* @__PURE__ */ n(
|
|
120
|
+
children: /* @__PURE__ */ n(O, { children: [
|
|
119
121
|
/* @__PURE__ */ e(k, { placeholder: "Search...", onKeyDown: N }),
|
|
120
122
|
/* @__PURE__ */ n(P, { children: [
|
|
121
123
|
/* @__PURE__ */ e(F, { children: "No results found." }),
|
|
@@ -134,11 +136,11 @@ const L = c.forwardRef(
|
|
|
134
136
|
/* @__PURE__ */ e(
|
|
135
137
|
"div",
|
|
136
138
|
{
|
|
137
|
-
className:
|
|
139
|
+
className: K(
|
|
138
140
|
"mr-2 flex h-4 w-4 items-center justify-center rounded-sm border border-primary",
|
|
139
141
|
o ? "bg-primary text-primary-foreground" : "opacity-50 [&_svg]:invisible"
|
|
140
142
|
),
|
|
141
|
-
children: /* @__PURE__ */ e(
|
|
143
|
+
children: /* @__PURE__ */ e(B, { className: "h-4 w-4" })
|
|
142
144
|
}
|
|
143
145
|
),
|
|
144
146
|
r.icon && /* @__PURE__ */ e(r.icon, { className: "mr-2 h-4 w-4 text-muted-foreground" }),
|
|
@@ -165,7 +167,7 @@ const L = c.forwardRef(
|
|
|
165
167
|
children: "Clear"
|
|
166
168
|
}
|
|
167
169
|
),
|
|
168
|
-
/* @__PURE__ */ e(
|
|
170
|
+
/* @__PURE__ */ e(y, { orientation: "vertical", className: "flex min-h-6 h-full" })
|
|
169
171
|
] }),
|
|
170
172
|
/* @__PURE__ */ e(v, {}),
|
|
171
173
|
/* @__PURE__ */ e(
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mutli-select.es.js","sources":["../../../lib/components/ui/mutli-select.tsx"],"sourcesContent":["'use client';\nimport { Badge } from '@/components/ui/badge';\nimport { Button } from '@/components/ui/button';\nimport {\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n CommandSeparator,\n} from '@/components/ui/command';\nimport { Separator } from '@/index';\nimport { cn } from '@/utils';\nimport { Popover, PopoverContent, PopoverTrigger } from '@radix-ui/react-popover';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { CheckIcon, ChevronDown, Command, XIcon } from 'lucide-react';\nimport * as React from 'react';\n\nconst multiSelectVariants = cva(\n 'm-1 transition ease-in-out delay-150 hover:-translate-y-1 hover:scale-110 duration-300',\n {\n variants: {\n variant: {\n default: 'border-foreground/10 drop-shadow-md text-foreground bg-card hover:bg-card/80',\n secondary:\n 'border-foreground/10 bg-secondary text-secondary-foreground hover:bg-secondary/80',\n destructive:\n 'border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80',\n inverted: 'inverted',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n },\n);\n\ninterface MultiSelectFormFieldProps\n extends React.ButtonHTMLAttributes<HTMLButtonElement>,\n VariantProps<typeof multiSelectVariants> {\n asChild?: boolean;\n options: {\n label: string;\n value: string;\n icon?: React.ComponentType<{ className?: string }>;\n }[];\n defaultValue?: string[];\n disabled?: boolean;\n placeholder: string;\n className?: string;\n animation?: number;\n onValueChange: (value: string[]) => void;\n}\n\nconst MultiSelectFormField = React.forwardRef<HTMLButtonElement, MultiSelectFormFieldProps>(\n (\n {\n className,\n variant,\n asChild = false,\n options,\n defaultValue,\n onValueChange,\n disabled,\n placeholder,\n animation = 0,\n ...props\n },\n ref,\n ) => {\n const [selectedValues, setSelectedValues] = React.useState<string[]>(defaultValue || []);\n const selectedValuesSet = React.useRef(new Set(selectedValues));\n const [isPopoverOpen, setIsPopoverOpen] = React.useState(false);\n\n React.useEffect(() => {\n setSelectedValues(defaultValue || []);\n selectedValuesSet.current = new Set(defaultValue);\n }, [defaultValue]);\n\n const handleInputKeyDown = (event: any) => {\n if (event.key === 'Enter') {\n setIsPopoverOpen(true);\n } else if (event.key === 'Backspace' && !event.target.value) {\n selectedValues.pop();\n setSelectedValues([...selectedValues]);\n selectedValuesSet.current.delete(selectedValues[selectedValues.length - 1]);\n onValueChange([...selectedValues]);\n }\n };\n\n const toggleOption = (value: string) => {\n if (selectedValuesSet.current.has(value)) {\n selectedValuesSet.current.delete(value);\n setSelectedValues(selectedValues.filter((v) => v !== value));\n } else {\n selectedValuesSet.current.add(value);\n setSelectedValues([...selectedValues, value]);\n }\n onValueChange(Array.from(selectedValuesSet.current));\n };\n\n return (\n <Popover open={isPopoverOpen} onOpenChange={setIsPopoverOpen}>\n <PopoverTrigger asChild>\n <Button\n ref={ref}\n {...props}\n onClick={() => setIsPopoverOpen(!isPopoverOpen)}\n className=\"flex w-full p-1 rounded-md border min-h-10 h-auto items-center justify-between bg-inherit hover:bg-card\"\n >\n {selectedValues.length > 0 ? (\n <div className=\"flex justify-between items-center w-full\">\n <div className=\"flex flex-wrap items-center\">\n {selectedValues.map((value) => {\n const option = options.find((o) => o.value === value);\n const IconComponent = option?.icon;\n return (\n <Badge key={value}>\n {IconComponent && <IconComponent className=\"h-6 w-6 mr-2\" />}\n {option?.label}\n </Badge>\n );\n })}\n </div>\n <div className=\"flex items-center justify-between\">\n <XIcon\n className=\"h-4 mx-2 cursor-pointer text-muted-foreground\"\n onClick={(event) => {\n setSelectedValues([]);\n selectedValuesSet.current.clear();\n onValueChange([]);\n event.stopPropagation();\n }}\n />\n <Separator orientation=\"vertical\" className=\"flex min-h-6 h-full\" />\n <ChevronDown className=\"h-4 mx-2 cursor-pointer text-muted-foreground\" />\n </div>\n </div>\n ) : (\n <div className=\"flex items-center justify-between w-full mx-auto\">\n <span className=\"text-sm text-muted-foreground mx-3\">{placeholder}</span>\n <ChevronDown className=\"h-4 cursor-pointer text-muted-foreground mx-2\" />\n </div>\n )}\n </Button>\n </PopoverTrigger>\n <PopoverContent\n className=\"w-[200px] p-0 drop-shadow-sm\"\n align=\"start\"\n onEscapeKeyDown={() => setIsPopoverOpen(false)}\n >\n <Command>\n <CommandInput placeholder=\"Search...\" onKeyDown={handleInputKeyDown} />\n <CommandList>\n <CommandEmpty>No results found.</CommandEmpty>\n <CommandGroup>\n {options.map((option) => {\n const isSelected = selectedValuesSet.current.has(option.value);\n return (\n <CommandItem\n key={option.value}\n onSelect={() => toggleOption(option.value)}\n style={{\n pointerEvents: 'auto',\n opacity: 1,\n }}\n className=\"cursor-pointer\"\n >\n <div\n className={cn(\n 'mr-2 flex h-4 w-4 items-center justify-center rounded-sm border border-primary',\n isSelected\n ? 'bg-primary text-primary-foreground'\n : 'opacity-50 [&_svg]:invisible',\n )}\n >\n <CheckIcon className=\"h-4 w-4\" />\n </div>\n {option.icon && (\n <option.icon className=\"mr-2 h-4 w-4 text-muted-foreground\" />\n )}\n <span>{option.label}</span>\n </CommandItem>\n );\n })}\n </CommandGroup>\n <CommandSeparator />\n <CommandGroup>\n <div className=\"flex items-center justify-between\">\n {selectedValues.length > 0 && (\n <>\n <CommandItem\n onSelect={() => {\n setSelectedValues([]);\n selectedValuesSet.current.clear();\n onValueChange([]);\n }}\n style={{\n pointerEvents: 'auto',\n opacity: 1,\n }}\n className=\"flex-1 justify-center cursor-pointer\"\n >\n Clear\n </CommandItem>\n <Separator orientation=\"vertical\" className=\"flex min-h-6 h-full\" />\n </>\n )}\n <CommandSeparator />\n <CommandItem\n onSelect={() => setIsPopoverOpen(false)}\n style={{\n pointerEvents: 'auto',\n opacity: 1,\n }}\n className=\"flex-1 justify-center cursor-pointer\"\n >\n Close\n </CommandItem>\n </div>\n </CommandGroup>\n </CommandList>\n </Command>\n </PopoverContent>\n </Popover>\n );\n },\n);\n\nMultiSelectFormField.displayName = 'MultiSelectFormField';\n\nexport default MultiSelectFormField;\n"],"names":["cva","MultiSelectFormField","React","className","variant","asChild","options","defaultValue","onValueChange","disabled","placeholder","animation","props","ref","selectedValues","setSelectedValues","selectedValuesSet","isPopoverOpen","setIsPopoverOpen","handleInputKeyDown","event","toggleOption","value","v","jsxs","Popover","jsx","PopoverTrigger","Button","option","o","IconComponent","Badge","XIcon","Separator","ChevronDown","PopoverContent","Command","CommandInput","CommandList","CommandEmpty","CommandGroup","isSelected","CommandItem","cn","CheckIcon","CommandSeparator","Fragment"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mutli-select.es.js","sources":["../../../lib/components/ui/mutli-select.tsx"],"sourcesContent":["'use client';\nimport { Badge } from '@/components/ui/badge';\nimport { Button } from '@/components/ui/button';\nimport {\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n CommandSeparator,\n} from '@/components/ui/command';\nimport { Separator } from '@/index';\nimport { cn } from '@/utils';\nimport { Popover, PopoverContent, PopoverTrigger } from '@radix-ui/react-popover';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { CheckIcon, ChevronDown, Command, XIcon } from 'lucide-react';\nimport * as React from 'react';\n\nconst multiSelectVariants = cva(\n 'm-1 transition ease-in-out delay-150 hover:-translate-y-1 hover:scale-110 duration-300',\n {\n variants: {\n variant: {\n default: 'border-foreground/10 drop-shadow-md text-foreground bg-card hover:bg-card/80',\n secondary:\n 'border-foreground/10 bg-secondary text-secondary-foreground hover:bg-secondary/80',\n destructive:\n 'border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80',\n inverted: 'inverted',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n },\n);\n\ninterface MultiSelectFormFieldProps\n extends React.ButtonHTMLAttributes<HTMLButtonElement>,\n VariantProps<typeof multiSelectVariants> {\n asChild?: boolean;\n options: {\n label: string;\n value: string;\n icon?: React.ComponentType<{ className?: string }>;\n }[];\n defaultValue?: string[];\n disabled?: boolean;\n placeholder: string;\n className?: string;\n animation?: number;\n onValueChange: (value: string[]) => void;\n}\n\nconst MultiSelectFormField = React.forwardRef<HTMLButtonElement, MultiSelectFormFieldProps>(\n (\n {\n className,\n variant,\n asChild = false,\n options,\n defaultValue,\n onValueChange,\n disabled,\n placeholder,\n animation = 0,\n ...props\n },\n ref,\n ) => {\n const [selectedValues, setSelectedValues] = React.useState<string[]>(defaultValue || []);\n const selectedValuesSet = React.useRef(new Set(selectedValues));\n const [isPopoverOpen, setIsPopoverOpen] = React.useState(false);\n\n React.useEffect(() => {\n setSelectedValues(defaultValue || []);\n selectedValuesSet.current = new Set(defaultValue);\n }, [defaultValue]);\n\n const handleInputKeyDown = (event: any) => {\n if (event.key === 'Enter') {\n setIsPopoverOpen(true);\n } else if (event.key === 'Backspace' && !event.target.value) {\n selectedValues.pop();\n setSelectedValues([...selectedValues]);\n selectedValuesSet.current.delete(selectedValues[selectedValues.length - 1]);\n onValueChange([...selectedValues]);\n }\n };\n\n const toggleOption = (value: string) => {\n if (selectedValuesSet.current.has(value)) {\n selectedValuesSet.current.delete(value);\n setSelectedValues(selectedValues.filter((v) => v !== value));\n } else {\n selectedValuesSet.current.add(value);\n setSelectedValues([...selectedValues, value]);\n }\n onValueChange(Array.from(selectedValuesSet.current));\n };\n\n return (\n <Popover open={isPopoverOpen} onOpenChange={setIsPopoverOpen}>\n <PopoverTrigger asChild>\n <Button\n ref={ref}\n {...props}\n onClick={() => setIsPopoverOpen(!isPopoverOpen)}\n variant={'ghost'}\n className=\"flex w-full p-1 rounded-md border min-h-10 h-auto items-center justify-between bg-inherit hover:bg-card\"\n >\n {selectedValues.length > 0 ? (\n <div className=\"flex justify-between items-center w-full\">\n <div className=\"flex flex-wrap items-center\">\n {selectedValues.map((value) => {\n const option = options.find((o) => o.value === value);\n const IconComponent = option?.icon;\n return (\n <Badge key={value}>\n {IconComponent && <IconComponent className=\"h-6 w-6 mr-2\" />}\n {option?.label}\n </Badge>\n );\n })}\n </div>\n <div className=\"flex items-center justify-between\">\n <XIcon\n className=\"h-4 mx-2 cursor-pointer text-muted-foreground\"\n onClick={(event) => {\n setSelectedValues([]);\n selectedValuesSet.current.clear();\n onValueChange([]);\n event.stopPropagation();\n }}\n />\n <Separator orientation=\"vertical\" className=\"flex min-h-6 h-full\" />\n <ChevronDown className=\"h-4 mx-2 cursor-pointer text-muted-foreground\" />\n </div>\n </div>\n ) : (\n <div className=\"flex items-center justify-between w-full mx-auto\">\n <span className=\"text-sm text-muted-foreground mx-3\">{placeholder}</span>\n <ChevronDown className=\"h-4 cursor-pointer text-muted-foreground mx-2\" />\n </div>\n )}\n </Button>\n </PopoverTrigger>\n <PopoverContent\n className=\"w-[200px] p-0 drop-shadow-sm\"\n align=\"start\"\n onEscapeKeyDown={() => setIsPopoverOpen(false)}\n >\n <Command>\n <CommandInput placeholder=\"Search...\" onKeyDown={handleInputKeyDown} />\n <CommandList>\n <CommandEmpty>No results found.</CommandEmpty>\n <CommandGroup>\n {options.map((option) => {\n const isSelected = selectedValuesSet.current.has(option.value);\n return (\n <CommandItem\n key={option.value}\n onSelect={() => toggleOption(option.value)}\n style={{\n pointerEvents: 'auto',\n opacity: 1,\n }}\n className=\"cursor-pointer\"\n >\n <div\n className={cn(\n 'mr-2 flex h-4 w-4 items-center justify-center rounded-sm border border-primary',\n isSelected\n ? 'bg-primary text-primary-foreground'\n : 'opacity-50 [&_svg]:invisible',\n )}\n >\n <CheckIcon className=\"h-4 w-4\" />\n </div>\n {option.icon && (\n <option.icon className=\"mr-2 h-4 w-4 text-muted-foreground\" />\n )}\n <span>{option.label}</span>\n </CommandItem>\n );\n })}\n </CommandGroup>\n <CommandSeparator />\n <CommandGroup>\n <div className=\"flex items-center justify-between\">\n {selectedValues.length > 0 && (\n <>\n <CommandItem\n onSelect={() => {\n setSelectedValues([]);\n selectedValuesSet.current.clear();\n onValueChange([]);\n }}\n style={{\n pointerEvents: 'auto',\n opacity: 1,\n }}\n className=\"flex-1 justify-center cursor-pointer\"\n >\n Clear\n </CommandItem>\n <Separator orientation=\"vertical\" className=\"flex min-h-6 h-full\" />\n </>\n )}\n <CommandSeparator />\n <CommandItem\n onSelect={() => setIsPopoverOpen(false)}\n style={{\n pointerEvents: 'auto',\n opacity: 1,\n }}\n className=\"flex-1 justify-center cursor-pointer\"\n >\n Close\n </CommandItem>\n </div>\n </CommandGroup>\n </CommandList>\n </Command>\n </PopoverContent>\n </Popover>\n );\n },\n);\n\nMultiSelectFormField.displayName = 'MultiSelectFormField';\n\nexport default MultiSelectFormField;\n"],"names":["cva","MultiSelectFormField","React","className","variant","asChild","options","defaultValue","onValueChange","disabled","placeholder","animation","props","ref","selectedValues","setSelectedValues","selectedValuesSet","isPopoverOpen","setIsPopoverOpen","handleInputKeyDown","event","toggleOption","value","v","jsxs","Popover","jsx","PopoverTrigger","Button","option","o","IconComponent","Badge","XIcon","Separator","ChevronDown","PopoverContent","Command","CommandInput","CommandList","CommandEmpty","CommandGroup","isSelected","CommandItem","cn","CheckIcon","CommandSeparator","Fragment"],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { jsx as n, jsxs as
|
|
1
|
+
import { jsx as n, jsxs as o } from "react/jsx-runtime";
|
|
2
2
|
import * as l from "react";
|
|
3
3
|
import { ChevronLeftIcon as c, ChevronRightIcon as m, DotsHorizontalIcon as p } from "@radix-ui/react-icons";
|
|
4
4
|
import { cn as e } from "../../utils/index.es.js";
|
|
5
5
|
import { buttonVariants as g } from "./button.es.js";
|
|
6
|
-
const
|
|
6
|
+
const d = ({ className: i, ...a }) => /* @__PURE__ */ n(
|
|
7
7
|
"nav",
|
|
8
8
|
{
|
|
9
9
|
role: "navigation",
|
|
@@ -12,22 +12,22 @@ const N = ({ className: i, ...a }) => /* @__PURE__ */ n(
|
|
|
12
12
|
...a
|
|
13
13
|
}
|
|
14
14
|
);
|
|
15
|
-
|
|
16
|
-
const
|
|
15
|
+
d.displayName = "Pagination";
|
|
16
|
+
const N = l.forwardRef(({ className: i, ...a }, t) => /* @__PURE__ */ n(
|
|
17
17
|
"ul",
|
|
18
18
|
{
|
|
19
|
-
ref:
|
|
19
|
+
ref: t,
|
|
20
20
|
className: e("flex flex-row items-center gap-1", i),
|
|
21
21
|
...a
|
|
22
22
|
}
|
|
23
23
|
));
|
|
24
|
-
|
|
25
|
-
const f = l.forwardRef(({ className: i, ...a },
|
|
24
|
+
N.displayName = "PaginationContent";
|
|
25
|
+
const f = l.forwardRef(({ className: i, ...a }, t) => /* @__PURE__ */ n("li", { ref: t, className: e("", i), ...a }));
|
|
26
26
|
f.displayName = "PaginationItem";
|
|
27
27
|
const s = ({
|
|
28
28
|
className: i,
|
|
29
29
|
isActive: a,
|
|
30
|
-
size:
|
|
30
|
+
size: t = "icon",
|
|
31
31
|
...r
|
|
32
32
|
}) => /* @__PURE__ */ n(
|
|
33
33
|
"a",
|
|
@@ -36,7 +36,7 @@ const s = ({
|
|
|
36
36
|
className: e(
|
|
37
37
|
g({
|
|
38
38
|
variant: a ? "outline" : "ghost",
|
|
39
|
-
size:
|
|
39
|
+
size: t
|
|
40
40
|
}),
|
|
41
41
|
i
|
|
42
42
|
),
|
|
@@ -47,7 +47,7 @@ s.displayName = "PaginationLink";
|
|
|
47
47
|
const P = ({
|
|
48
48
|
className: i,
|
|
49
49
|
...a
|
|
50
|
-
}) => /* @__PURE__ */
|
|
50
|
+
}) => /* @__PURE__ */ o(
|
|
51
51
|
s,
|
|
52
52
|
{
|
|
53
53
|
"aria-label": "Go to previous page",
|
|
@@ -61,10 +61,10 @@ const P = ({
|
|
|
61
61
|
}
|
|
62
62
|
);
|
|
63
63
|
P.displayName = "PaginationPrevious";
|
|
64
|
-
const
|
|
64
|
+
const u = ({
|
|
65
65
|
className: i,
|
|
66
66
|
...a
|
|
67
|
-
}) => /* @__PURE__ */
|
|
67
|
+
}) => /* @__PURE__ */ o(
|
|
68
68
|
s,
|
|
69
69
|
{
|
|
70
70
|
"aria-label": "Go to next page",
|
|
@@ -77,11 +77,11 @@ const h = ({
|
|
|
77
77
|
]
|
|
78
78
|
}
|
|
79
79
|
);
|
|
80
|
-
|
|
81
|
-
const
|
|
80
|
+
u.displayName = "PaginationNext";
|
|
81
|
+
const h = ({
|
|
82
82
|
className: i,
|
|
83
83
|
...a
|
|
84
|
-
}) => /* @__PURE__ */
|
|
84
|
+
}) => /* @__PURE__ */ o(
|
|
85
85
|
"span",
|
|
86
86
|
{
|
|
87
87
|
"aria-hidden": !0,
|
|
@@ -93,14 +93,14 @@ const u = ({
|
|
|
93
93
|
]
|
|
94
94
|
}
|
|
95
95
|
);
|
|
96
|
-
|
|
96
|
+
h.displayName = "PaginationEllipsis";
|
|
97
97
|
export {
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
98
|
+
d as Pagination,
|
|
99
|
+
N as PaginationContent,
|
|
100
|
+
h as PaginationEllipsis,
|
|
101
101
|
f as PaginationItem,
|
|
102
102
|
s as PaginationLink,
|
|
103
|
-
|
|
103
|
+
u as PaginationNext,
|
|
104
104
|
P as PaginationPrevious
|
|
105
105
|
};
|
|
106
106
|
//# sourceMappingURL=pagination.es.js.map
|
|
@@ -9,7 +9,7 @@ const I = e.Root, R = e.Group, C = e.Value, y = s.forwardRef(({ className: o, ch
|
|
|
9
9
|
{
|
|
10
10
|
ref: d,
|
|
11
11
|
className: l(
|
|
12
|
-
"flex h-
|
|
12
|
+
"flex h-10 w-full items-center justify-between whitespace-nowrap rounded-md border border-input bg-background px-3 py-2 text-body shadow-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",
|
|
13
13
|
o
|
|
14
14
|
),
|
|
15
15
|
...a,
|
|
@@ -40,7 +40,7 @@ const c = s.forwardRef(({ className: o, ...r }, a) => /* @__PURE__ */ t(
|
|
|
40
40
|
}
|
|
41
41
|
));
|
|
42
42
|
c.displayName = e.ScrollDownButton.displayName;
|
|
43
|
-
const
|
|
43
|
+
const g = s.forwardRef(({ className: o, children: r, position: a = "popper", ...d }, m) => /* @__PURE__ */ t(e.Portal, { children: /* @__PURE__ */ n(
|
|
44
44
|
e.Content,
|
|
45
45
|
{
|
|
46
46
|
ref: m,
|
|
@@ -67,8 +67,8 @@ const w = s.forwardRef(({ className: o, children: r, position: a = "popper", ...
|
|
|
67
67
|
]
|
|
68
68
|
}
|
|
69
69
|
) }));
|
|
70
|
-
|
|
71
|
-
const
|
|
70
|
+
g.displayName = e.Content.displayName;
|
|
71
|
+
const w = s.forwardRef(({ className: o, ...r }, a) => /* @__PURE__ */ t(
|
|
72
72
|
e.Label,
|
|
73
73
|
{
|
|
74
74
|
ref: a,
|
|
@@ -76,8 +76,8 @@ const g = s.forwardRef(({ className: o, ...r }, a) => /* @__PURE__ */ t(
|
|
|
76
76
|
...r
|
|
77
77
|
}
|
|
78
78
|
));
|
|
79
|
-
|
|
80
|
-
const
|
|
79
|
+
w.displayName = e.Label.displayName;
|
|
80
|
+
const b = s.forwardRef(({ className: o, children: r, ...a }, d) => /* @__PURE__ */ n(
|
|
81
81
|
e.Item,
|
|
82
82
|
{
|
|
83
83
|
ref: d,
|
|
@@ -92,8 +92,8 @@ const N = s.forwardRef(({ className: o, children: r, ...a }, d) => /* @__PURE__
|
|
|
92
92
|
]
|
|
93
93
|
}
|
|
94
94
|
));
|
|
95
|
-
|
|
96
|
-
const
|
|
95
|
+
b.displayName = e.Item.displayName;
|
|
96
|
+
const N = s.forwardRef(({ className: o, ...r }, a) => /* @__PURE__ */ t(
|
|
97
97
|
e.Separator,
|
|
98
98
|
{
|
|
99
99
|
ref: a,
|
|
@@ -101,16 +101,16 @@ const b = s.forwardRef(({ className: o, ...r }, a) => /* @__PURE__ */ t(
|
|
|
101
101
|
...r
|
|
102
102
|
}
|
|
103
103
|
));
|
|
104
|
-
|
|
104
|
+
N.displayName = e.Separator.displayName;
|
|
105
105
|
export {
|
|
106
106
|
I as Select,
|
|
107
|
-
|
|
107
|
+
g as SelectContent,
|
|
108
108
|
R as SelectGroup,
|
|
109
|
-
|
|
110
|
-
|
|
109
|
+
b as SelectItem,
|
|
110
|
+
w as SelectLabel,
|
|
111
111
|
c as SelectScrollDownButton,
|
|
112
112
|
i as SelectScrollUpButton,
|
|
113
|
-
|
|
113
|
+
N as SelectSeparator,
|
|
114
114
|
y as SelectTrigger,
|
|
115
115
|
C as SelectValue
|
|
116
116
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select.es.js","sources":["../../../lib/components/ui/select.tsx"],"sourcesContent":["'use client';\nimport { CaretSortIcon, CheckIcon, ChevronDownIcon, ChevronUpIcon } from '@radix-ui/react-icons';\nimport * as SelectPrimitive from '@radix-ui/react-select';\nimport * as React from 'react';\n\nimport { cn } from '@/utils';\n\nconst Select = SelectPrimitive.Root;\n\nconst SelectGroup = SelectPrimitive.Group;\n\nconst SelectValue = SelectPrimitive.Value;\n\nconst SelectTrigger = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Trigger>\n>(({ className, children, ...props }, ref) => (\n <SelectPrimitive.Trigger\n ref={ref}\n className={cn(\n 'flex h-
|
|
1
|
+
{"version":3,"file":"select.es.js","sources":["../../../lib/components/ui/select.tsx"],"sourcesContent":["'use client';\nimport { CaretSortIcon, CheckIcon, ChevronDownIcon, ChevronUpIcon } from '@radix-ui/react-icons';\nimport * as SelectPrimitive from '@radix-ui/react-select';\nimport * as React from 'react';\n\nimport { cn } from '@/utils';\n\nconst Select = SelectPrimitive.Root;\n\nconst SelectGroup = SelectPrimitive.Group;\n\nconst SelectValue = SelectPrimitive.Value;\n\nconst SelectTrigger = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Trigger>\n>(({ className, children, ...props }, ref) => (\n <SelectPrimitive.Trigger\n ref={ref}\n className={cn(\n 'flex h-10 w-full items-center justify-between whitespace-nowrap rounded-md border border-input bg-background px-3 py-2 text-body shadow-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1',\n className,\n )}\n {...props}\n >\n {children}\n <SelectPrimitive.Icon asChild>\n <CaretSortIcon className=\"h-4 w-4 opacity-50\" />\n </SelectPrimitive.Icon>\n </SelectPrimitive.Trigger>\n));\nSelectTrigger.displayName = SelectPrimitive.Trigger.displayName;\n\nconst SelectScrollUpButton = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.ScrollUpButton>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollUpButton>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.ScrollUpButton\n ref={ref}\n className={cn('flex cursor-default items-center justify-center py-1', className)}\n {...props}\n >\n <ChevronUpIcon />\n </SelectPrimitive.ScrollUpButton>\n));\nSelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;\n\nconst SelectScrollDownButton = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.ScrollDownButton>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollDownButton>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.ScrollDownButton\n ref={ref}\n className={cn('flex cursor-default items-center justify-center py-1', className)}\n {...props}\n >\n <ChevronDownIcon />\n </SelectPrimitive.ScrollDownButton>\n));\nSelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;\n\nconst SelectContent = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Content>\n>(({ className, children, position = 'popper', ...props }, ref) => (\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n ref={ref}\n className={cn(\n 'relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md 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',\n position === 'popper' &&\n 'data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1',\n className,\n )}\n position={position}\n {...props}\n >\n <SelectScrollUpButton />\n <SelectPrimitive.Viewport\n className={cn(\n 'p-1',\n position === 'popper' &&\n 'h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]',\n )}\n >\n {children}\n </SelectPrimitive.Viewport>\n <SelectScrollDownButton />\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n));\nSelectContent.displayName = SelectPrimitive.Content.displayName;\n\nconst SelectLabel = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Label>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Label>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.Label\n ref={ref}\n className={cn('px-2 py-1.5 text-body font-semibold', className)}\n {...props}\n />\n));\nSelectLabel.displayName = SelectPrimitive.Label.displayName;\n\nconst SelectItem = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Item>\n>(({ className, children, ...props }, ref) => (\n <SelectPrimitive.Item\n ref={ref}\n className={cn(\n 'relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-2 pr-8 text-body outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50',\n className,\n )}\n {...props}\n >\n <span className=\"absolute right-2 flex h-3.5 w-3.5 items-center justify-center\">\n <SelectPrimitive.ItemIndicator>\n <CheckIcon className=\"h-4 w-4\" />\n </SelectPrimitive.ItemIndicator>\n </span>\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n));\nSelectItem.displayName = SelectPrimitive.Item.displayName;\n\nconst SelectSeparator = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.Separator\n ref={ref}\n className={cn('-mx-1 my-1 h-px bg-muted', className)}\n {...props}\n />\n));\nSelectSeparator.displayName = SelectPrimitive.Separator.displayName;\n\nexport {\n Select,\n SelectContent,\n SelectGroup,\n SelectItem,\n SelectLabel,\n SelectScrollDownButton,\n SelectScrollUpButton,\n SelectSeparator,\n SelectTrigger,\n SelectValue,\n};\n\n"],"names":["Select","SelectPrimitive","SelectGroup","SelectValue","SelectTrigger","React","className","children","props","ref","jsxs","cn","jsx","CaretSortIcon","SelectScrollUpButton","ChevronUpIcon","SelectScrollDownButton","ChevronDownIcon","SelectContent","position","SelectLabel","SelectItem","CheckIcon","SelectSeparator"],"mappings":"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"}
|