@egose/shadcn-theme 0.0.21 → 0.0.22
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/chunk-7SHQOSBJ.js +123 -0
- package/chunk-7SHQOSBJ.js.map +1 -0
- package/chunk-CEJOC6JT.mjs +123 -0
- package/chunk-CEJOC6JT.mjs.map +1 -0
- package/{chunk-4J7ZCWRI.mjs → chunk-LFW2GKN3.mjs} +5 -5
- package/chunk-LFW2GKN3.mjs.map +1 -0
- package/chunk-PGE7GQZC.js +71 -0
- package/chunk-PGE7GQZC.js.map +1 -0
- package/chunk-Y6WBDYJY.mjs +71 -0
- package/chunk-Y6WBDYJY.mjs.map +1 -0
- package/{chunk-RUACSQT3.js → chunk-ZHHY5JVV.js} +5 -5
- package/chunk-ZHHY5JVV.js.map +1 -0
- package/components/form/hook-native-select.d.mts +11 -0
- package/components/form/hook-native-select.d.ts +11 -0
- package/components/form/hook-native-select.js +72 -0
- package/components/form/hook-native-select.js.map +1 -0
- package/components/form/hook-native-select.mjs +72 -0
- package/components/form/hook-native-select.mjs.map +1 -0
- package/components/form/hook-select.d.mts +5 -4
- package/components/form/hook-select.d.ts +5 -4
- package/components/form/hook-select.js +29 -32
- package/components/form/hook-select.js.map +1 -1
- package/components/form/hook-select.mjs +30 -33
- package/components/form/hook-select.mjs.map +1 -1
- package/components/form/multi-select.d.mts +2 -0
- package/components/form/multi-select.d.ts +2 -0
- package/components/form/multi-select.js +1 -0
- package/components/form/multi-select.js.map +1 -0
- package/components/form/multi-select.mjs +1 -0
- package/components/form/multi-select.mjs.map +1 -0
- package/components/form/native-select.d.mts +23 -0
- package/components/form/native-select.d.ts +23 -0
- package/components/form/native-select.js +11 -0
- package/components/form/native-select.js.map +1 -0
- package/components/form/native-select.mjs +11 -0
- package/components/form/native-select.mjs.map +1 -0
- package/components/form/select.d.mts +8 -5
- package/components/form/select.d.ts +8 -5
- package/components/form/select.js +3 -2
- package/components/form/select.js.map +1 -1
- package/components/form/select.mjs +2 -1
- package/components/ui/select.js +27 -122
- package/components/ui/select.js.map +1 -1
- package/components/ui/select.mjs +13 -108
- package/components/ui/select.mjs.map +1 -1
- package/package.json +1 -1
- package/chunk-4J7ZCWRI.mjs.map +0 -1
- package/chunk-RUACSQT3.js.map +0 -1
package/components/ui/select.js
CHANGED
|
@@ -1,123 +1,28 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
var
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
children,
|
|
29
|
-
/* @__PURE__ */ React.createElement(SelectPrimitive.Icon, { asChild: true }, /* @__PURE__ */ React.createElement(_lucidereact.ChevronDown, { className: "h-4 w-4 opacity-50" }))
|
|
30
|
-
);
|
|
31
|
-
});
|
|
32
|
-
SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
|
|
33
|
-
var SelectScrollUpButton = React.forwardRef((_a, ref) => {
|
|
34
|
-
var _b = _a, { className } = _b, props = _chunk2NMEKWO5js.__objRest.call(void 0, _b, ["className"]);
|
|
35
|
-
return /* @__PURE__ */ React.createElement(
|
|
36
|
-
SelectPrimitive.ScrollUpButton,
|
|
37
|
-
_chunk2NMEKWO5js.__spreadValues.call(void 0, {
|
|
38
|
-
ref,
|
|
39
|
-
className: _chunkB2G2EZ4Pjs.cn.call(void 0, "flex cursor-default items-center justify-center py-1", className)
|
|
40
|
-
}, props),
|
|
41
|
-
/* @__PURE__ */ React.createElement(_lucidereact.ChevronUp, { className: "h-4 w-4" })
|
|
42
|
-
);
|
|
43
|
-
});
|
|
44
|
-
SelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;
|
|
45
|
-
var SelectScrollDownButton = React.forwardRef((_a, ref) => {
|
|
46
|
-
var _b = _a, { className } = _b, props = _chunk2NMEKWO5js.__objRest.call(void 0, _b, ["className"]);
|
|
47
|
-
return /* @__PURE__ */ React.createElement(
|
|
48
|
-
SelectPrimitive.ScrollDownButton,
|
|
49
|
-
_chunk2NMEKWO5js.__spreadValues.call(void 0, {
|
|
50
|
-
ref,
|
|
51
|
-
className: _chunkB2G2EZ4Pjs.cn.call(void 0, "flex cursor-default items-center justify-center py-1", className)
|
|
52
|
-
}, props),
|
|
53
|
-
/* @__PURE__ */ React.createElement(_lucidereact.ChevronDown, { className: "h-4 w-4" })
|
|
54
|
-
);
|
|
55
|
-
});
|
|
56
|
-
SelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;
|
|
57
|
-
var SelectContent = React.forwardRef((_a, ref) => {
|
|
58
|
-
var _b = _a, { className, children, position = "popper" } = _b, props = _chunk2NMEKWO5js.__objRest.call(void 0, _b, ["className", "children", "position"]);
|
|
59
|
-
return /* @__PURE__ */ React.createElement(SelectPrimitive.Portal, null, /* @__PURE__ */ React.createElement(
|
|
60
|
-
SelectPrimitive.Content,
|
|
61
|
-
_chunk2NMEKWO5js.__spreadValues.call(void 0, {
|
|
62
|
-
ref,
|
|
63
|
-
className: _chunkB2G2EZ4Pjs.cn.call(void 0,
|
|
64
|
-
"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",
|
|
65
|
-
position === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",
|
|
66
|
-
className
|
|
67
|
-
),
|
|
68
|
-
position
|
|
69
|
-
}, props),
|
|
70
|
-
/* @__PURE__ */ React.createElement(SelectScrollUpButton, null),
|
|
71
|
-
/* @__PURE__ */ React.createElement(
|
|
72
|
-
SelectPrimitive.Viewport,
|
|
73
|
-
{
|
|
74
|
-
className: _chunkB2G2EZ4Pjs.cn.call(void 0,
|
|
75
|
-
"p-1",
|
|
76
|
-
position === "popper" && "h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"
|
|
77
|
-
)
|
|
78
|
-
},
|
|
79
|
-
children
|
|
80
|
-
),
|
|
81
|
-
/* @__PURE__ */ React.createElement(SelectScrollDownButton, null)
|
|
82
|
-
));
|
|
83
|
-
});
|
|
84
|
-
SelectContent.displayName = SelectPrimitive.Content.displayName;
|
|
85
|
-
var SelectLabel = React.forwardRef((_a, ref) => {
|
|
86
|
-
var _b = _a, { className } = _b, props = _chunk2NMEKWO5js.__objRest.call(void 0, _b, ["className"]);
|
|
87
|
-
return /* @__PURE__ */ React.createElement(SelectPrimitive.Label, _chunk2NMEKWO5js.__spreadValues.call(void 0, { ref, className: _chunkB2G2EZ4Pjs.cn.call(void 0, "px-2 py-1.5 text-sm font-semibold", className) }, props));
|
|
88
|
-
});
|
|
89
|
-
SelectLabel.displayName = SelectPrimitive.Label.displayName;
|
|
90
|
-
var SelectItem = React.forwardRef((_a, ref) => {
|
|
91
|
-
var _b = _a, { className, children } = _b, props = _chunk2NMEKWO5js.__objRest.call(void 0, _b, ["className", "children"]);
|
|
92
|
-
return /* @__PURE__ */ React.createElement(
|
|
93
|
-
SelectPrimitive.Item,
|
|
94
|
-
_chunk2NMEKWO5js.__spreadValues.call(void 0, {
|
|
95
|
-
ref,
|
|
96
|
-
className: _chunkB2G2EZ4Pjs.cn.call(void 0,
|
|
97
|
-
"relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-2 pr-8 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
|
|
98
|
-
className
|
|
99
|
-
)
|
|
100
|
-
}, props),
|
|
101
|
-
/* @__PURE__ */ React.createElement("span", { className: "absolute right-2 flex h-3.5 w-3.5 items-center justify-center" }, /* @__PURE__ */ React.createElement(SelectPrimitive.ItemIndicator, null, /* @__PURE__ */ React.createElement(_lucidereact.Check, { className: "h-4 w-4" }))),
|
|
102
|
-
/* @__PURE__ */ React.createElement(SelectPrimitive.ItemText, null, children)
|
|
103
|
-
);
|
|
104
|
-
});
|
|
105
|
-
SelectItem.displayName = SelectPrimitive.Item.displayName;
|
|
106
|
-
var SelectSeparator = React.forwardRef((_a, ref) => {
|
|
107
|
-
var _b = _a, { className } = _b, props = _chunk2NMEKWO5js.__objRest.call(void 0, _b, ["className"]);
|
|
108
|
-
return /* @__PURE__ */ React.createElement(SelectPrimitive.Separator, _chunk2NMEKWO5js.__spreadValues.call(void 0, { ref, className: _chunkB2G2EZ4Pjs.cn.call(void 0, "-mx-1 my-1 h-px bg-muted", className) }, props));
|
|
109
|
-
});
|
|
110
|
-
SelectSeparator.displayName = SelectPrimitive.Separator.displayName;
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
exports.Select = Select; exports.SelectContent = SelectContent; exports.SelectGroup = SelectGroup; exports.SelectItem = SelectItem; exports.SelectLabel = SelectLabel; exports.SelectScrollDownButton = SelectScrollDownButton; exports.SelectScrollUpButton = SelectScrollUpButton; exports.SelectSeparator = SelectSeparator; exports.SelectTrigger = SelectTrigger; exports.SelectValue = SelectValue;
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
var _chunk7SHQOSBJjs = require('../../chunk-7SHQOSBJ.js');
|
|
14
|
+
require('../../chunk-B2G2EZ4P.js');
|
|
15
|
+
require('../../chunk-2NMEKWO5.js');
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
exports.Select = _chunk7SHQOSBJjs.Select; exports.SelectContent = _chunk7SHQOSBJjs.SelectContent; exports.SelectGroup = _chunk7SHQOSBJjs.SelectGroup; exports.SelectItem = _chunk7SHQOSBJjs.SelectItem; exports.SelectLabel = _chunk7SHQOSBJjs.SelectLabel; exports.SelectScrollDownButton = _chunk7SHQOSBJjs.SelectScrollDownButton; exports.SelectScrollUpButton = _chunk7SHQOSBJjs.SelectScrollUpButton; exports.SelectSeparator = _chunk7SHQOSBJjs.SelectSeparator; exports.SelectTrigger = _chunk7SHQOSBJjs.SelectTrigger; exports.SelectValue = _chunk7SHQOSBJjs.SelectValue;
|
|
123
28
|
//# sourceMappingURL=select.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/ahnjun/projects/egose-shadcn/package/dist/components/ui/select.js","../../../components/ui/select.tsx"],"names":[],"mappings":"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","file":"/home/ahnjun/projects/egose-shadcn/package/dist/components/ui/select.js","sourcesContent":[null,"'use client';\n\nimport * as React from 'react';\nimport * as SelectPrimitive from '@radix-ui/react-select';\nimport { Check, ChevronDown, ChevronUp } from 'lucide-react';\n\nimport { cn } from '../../lib/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-9 w-full items-center justify-between whitespace-nowrap rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm ring-offset-background data-[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 <ChevronDown 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 <ChevronUp className=\"h-4 w-4\" />\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 <ChevronDown className=\"h-4 w-4\" />\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 ref={ref} className={cn('px-2 py-1.5 text-sm font-semibold', className)} {...props} />\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-sm 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 <Check 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 ref={ref} className={cn('-mx-1 my-1 h-px bg-muted', className)} {...props} />\n));\nSelectSeparator.displayName = SelectPrimitive.Separator.displayName;\n\nexport {\n Select,\n SelectGroup,\n SelectValue,\n SelectTrigger,\n SelectContent,\n SelectLabel,\n SelectItem,\n SelectSeparator,\n SelectScrollUpButton,\n SelectScrollDownButton,\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["/home/ahnjun/projects/egose-shadcn/package/dist/components/ui/select.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,0DAAgC;AAChC,mCAAgC;AAChC,mCAAgC;AAChC;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,mjBAAC","file":"/home/ahnjun/projects/egose-shadcn/package/dist/components/ui/select.js"}
|
package/components/ui/select.mjs
CHANGED
|
@@ -1,113 +1,18 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
var SelectValue = SelectPrimitive.Value;
|
|
17
|
-
var SelectTrigger = React.forwardRef((_a, ref) => {
|
|
18
|
-
var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
|
|
19
|
-
return /* @__PURE__ */ React.createElement(
|
|
20
|
-
SelectPrimitive.Trigger,
|
|
21
|
-
__spreadValues({
|
|
22
|
-
ref,
|
|
23
|
-
className: cn(
|
|
24
|
-
"flex h-9 w-full items-center justify-between whitespace-nowrap rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm ring-offset-background data-[placeholder]:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",
|
|
25
|
-
className
|
|
26
|
-
)
|
|
27
|
-
}, props),
|
|
28
|
-
children,
|
|
29
|
-
/* @__PURE__ */ React.createElement(SelectPrimitive.Icon, { asChild: true }, /* @__PURE__ */ React.createElement(ChevronDown, { className: "h-4 w-4 opacity-50" }))
|
|
30
|
-
);
|
|
31
|
-
});
|
|
32
|
-
SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
|
|
33
|
-
var SelectScrollUpButton = React.forwardRef((_a, ref) => {
|
|
34
|
-
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
35
|
-
return /* @__PURE__ */ React.createElement(
|
|
36
|
-
SelectPrimitive.ScrollUpButton,
|
|
37
|
-
__spreadValues({
|
|
38
|
-
ref,
|
|
39
|
-
className: cn("flex cursor-default items-center justify-center py-1", className)
|
|
40
|
-
}, props),
|
|
41
|
-
/* @__PURE__ */ React.createElement(ChevronUp, { className: "h-4 w-4" })
|
|
42
|
-
);
|
|
43
|
-
});
|
|
44
|
-
SelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;
|
|
45
|
-
var SelectScrollDownButton = React.forwardRef((_a, ref) => {
|
|
46
|
-
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
47
|
-
return /* @__PURE__ */ React.createElement(
|
|
48
|
-
SelectPrimitive.ScrollDownButton,
|
|
49
|
-
__spreadValues({
|
|
50
|
-
ref,
|
|
51
|
-
className: cn("flex cursor-default items-center justify-center py-1", className)
|
|
52
|
-
}, props),
|
|
53
|
-
/* @__PURE__ */ React.createElement(ChevronDown, { className: "h-4 w-4" })
|
|
54
|
-
);
|
|
55
|
-
});
|
|
56
|
-
SelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;
|
|
57
|
-
var SelectContent = React.forwardRef((_a, ref) => {
|
|
58
|
-
var _b = _a, { className, children, position = "popper" } = _b, props = __objRest(_b, ["className", "children", "position"]);
|
|
59
|
-
return /* @__PURE__ */ React.createElement(SelectPrimitive.Portal, null, /* @__PURE__ */ React.createElement(
|
|
60
|
-
SelectPrimitive.Content,
|
|
61
|
-
__spreadValues({
|
|
62
|
-
ref,
|
|
63
|
-
className: cn(
|
|
64
|
-
"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",
|
|
65
|
-
position === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",
|
|
66
|
-
className
|
|
67
|
-
),
|
|
68
|
-
position
|
|
69
|
-
}, props),
|
|
70
|
-
/* @__PURE__ */ React.createElement(SelectScrollUpButton, null),
|
|
71
|
-
/* @__PURE__ */ React.createElement(
|
|
72
|
-
SelectPrimitive.Viewport,
|
|
73
|
-
{
|
|
74
|
-
className: cn(
|
|
75
|
-
"p-1",
|
|
76
|
-
position === "popper" && "h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"
|
|
77
|
-
)
|
|
78
|
-
},
|
|
79
|
-
children
|
|
80
|
-
),
|
|
81
|
-
/* @__PURE__ */ React.createElement(SelectScrollDownButton, null)
|
|
82
|
-
));
|
|
83
|
-
});
|
|
84
|
-
SelectContent.displayName = SelectPrimitive.Content.displayName;
|
|
85
|
-
var SelectLabel = React.forwardRef((_a, ref) => {
|
|
86
|
-
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
87
|
-
return /* @__PURE__ */ React.createElement(SelectPrimitive.Label, __spreadValues({ ref, className: cn("px-2 py-1.5 text-sm font-semibold", className) }, props));
|
|
88
|
-
});
|
|
89
|
-
SelectLabel.displayName = SelectPrimitive.Label.displayName;
|
|
90
|
-
var SelectItem = React.forwardRef((_a, ref) => {
|
|
91
|
-
var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
|
|
92
|
-
return /* @__PURE__ */ React.createElement(
|
|
93
|
-
SelectPrimitive.Item,
|
|
94
|
-
__spreadValues({
|
|
95
|
-
ref,
|
|
96
|
-
className: cn(
|
|
97
|
-
"relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-2 pr-8 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
|
|
98
|
-
className
|
|
99
|
-
)
|
|
100
|
-
}, props),
|
|
101
|
-
/* @__PURE__ */ React.createElement("span", { className: "absolute right-2 flex h-3.5 w-3.5 items-center justify-center" }, /* @__PURE__ */ React.createElement(SelectPrimitive.ItemIndicator, null, /* @__PURE__ */ React.createElement(Check, { className: "h-4 w-4" }))),
|
|
102
|
-
/* @__PURE__ */ React.createElement(SelectPrimitive.ItemText, null, children)
|
|
103
|
-
);
|
|
104
|
-
});
|
|
105
|
-
SelectItem.displayName = SelectPrimitive.Item.displayName;
|
|
106
|
-
var SelectSeparator = React.forwardRef((_a, ref) => {
|
|
107
|
-
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
108
|
-
return /* @__PURE__ */ React.createElement(SelectPrimitive.Separator, __spreadValues({ ref, className: cn("-mx-1 my-1 h-px bg-muted", className) }, props));
|
|
109
|
-
});
|
|
110
|
-
SelectSeparator.displayName = SelectPrimitive.Separator.displayName;
|
|
3
|
+
Select,
|
|
4
|
+
SelectContent,
|
|
5
|
+
SelectGroup,
|
|
6
|
+
SelectItem,
|
|
7
|
+
SelectLabel,
|
|
8
|
+
SelectScrollDownButton,
|
|
9
|
+
SelectScrollUpButton,
|
|
10
|
+
SelectSeparator,
|
|
11
|
+
SelectTrigger,
|
|
12
|
+
SelectValue
|
|
13
|
+
} from "../../chunk-CEJOC6JT.mjs";
|
|
14
|
+
import "../../chunk-3ONILUYO.mjs";
|
|
15
|
+
import "../../chunk-YOSPWY5K.mjs";
|
|
111
16
|
export {
|
|
112
17
|
Select,
|
|
113
18
|
SelectContent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
package/package.json
CHANGED
package/chunk-4J7ZCWRI.mjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../components/form/select.tsx"],"sourcesContent":["'use client';\n\nimport React, { SelectHTMLAttributes } from 'react';\nimport _kebabCase from 'lodash-es/kebabCase';\nimport _isString from 'lodash-es/isString';\nimport { cn } from '../../lib/utils';\nimport { Label } from '../ui/label';\n\ntype SelectProps = SelectHTMLAttributes<HTMLSelectElement>;\n\nexport interface SelectOption {\n label: string;\n value: string;\n}\n\nfunction listToSelectOptions(items: string[]) {\n return items.map((item) => {\n return { label: item, value: item };\n });\n}\n\nexport interface FormSelectProps extends SelectProps {\n id?: string;\n name: string;\n label: string;\n selectProps: SelectProps;\n data: SelectOption[] | string[];\n defaultValue?: string;\n classNames?: {\n wrapper?: string;\n label?: string;\n input?: string;\n };\n}\n\nexport function FormSelect({\n id,\n name,\n label,\n selectProps,\n data,\n defaultValue,\n classNames,\n required,\n disabled,\n ...others\n}: FormSelectProps) {\n let _options: SelectOption[] = [];\n if (data.length > 0) {\n if (_isString(data[0])) {\n _options = listToSelectOptions(data as string[]);\n } else {\n _options = data as SelectOption[];\n }\n }\n\n if (!id) id = _kebabCase(name);\n\n return (\n <div className={classNames?.wrapper}>\n {label && (\n <Label htmlFor={id} className={classNames?.label} required={required}>\n {label}\n </Label>\n )}\n\n <select\n {...selectProps}\n id={id}\n name={name}\n autoComplete={id}\n className={cn(\n 'flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-sm transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm',\n classNames?.input ?? '',\n )}\n required={required}\n disabled={disabled}\n defaultValue={defaultValue}\n {...others}\n >\n {_options.map((option, index) => {\n return (\n <option\n key={option.value}\n value={option.value}\n // Unfortunately, the selected prop is not properly set at the nested component level.\n // use `defaultValue` in select element.\n // selected={defaultValue ? defaultValue === option.value : index === 0}\n >\n {option.label}\n </option>\n );\n })}\n </select>\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;AAEA,OAAO,WAAqC;AAC5C,OAAO,gBAAgB;AACvB,OAAO,eAAe;AAWtB,SAAS,oBAAoB,OAAiB;AAC5C,SAAO,MAAM,IAAI,CAAC,SAAS;AACzB,WAAO,EAAE,OAAO,MAAM,OAAO,KAAK;AAAA,EACpC,CAAC;AACH;AAgBO,SAAS,WAAW,IAWP;AAXO,eACzB;AAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EA5CF,IAmC2B,IAUtB,mBAVsB,IAUtB;AAAA,IATH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AA5CF,MAAAA;AA+CE,MAAI,WAA2B,CAAC;AAChC,MAAI,KAAK,SAAS,GAAG;AACnB,QAAI,UAAU,KAAK,CAAC,CAAC,GAAG;AACtB,iBAAW,oBAAoB,IAAgB;AAAA,IACjD,OAAO;AACL,iBAAW;AAAA,IACb;AAAA,EACF;AAEA,MAAI,CAAC,GAAI,MAAK,WAAW,IAAI;AAE7B,SACE,oCAAC,SAAI,WAAW,yCAAY,WACzB,SACC,oCAAC,SAAM,SAAS,IAAI,WAAW,yCAAY,OAAO,YAC/C,KACH,GAGF;AAAA,IAAC;AAAA,oDACK,cADL;AAAA,MAEC;AAAA,MACA;AAAA,MACA,cAAc;AAAA,MACd,WAAW;AAAA,QACT;AAAA,SACAA,MAAA,yCAAY,UAAZ,OAAAA,MAAqB;AAAA,MACvB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,QACI;AAAA,IAEH,SAAS,IAAI,CAAC,QAAQ,UAAU;AAC/B,aACE;AAAA,QAAC;AAAA;AAAA,UACC,KAAK,OAAO;AAAA,UACZ,OAAO,OAAO;AAAA;AAAA,QAKb,OAAO;AAAA,MACV;AAAA,IAEJ,CAAC;AAAA,EACH,CACF;AAEJ;","names":["_a"]}
|
package/chunk-RUACSQT3.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/ahnjun/projects/egose-shadcn/package/dist/chunk-RUACSQT3.js","../components/form/select.tsx"],"names":["_a"],"mappings":"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","file":"/home/ahnjun/projects/egose-shadcn/package/dist/chunk-RUACSQT3.js","sourcesContent":[null,"'use client';\n\nimport React, { SelectHTMLAttributes } from 'react';\nimport _kebabCase from 'lodash-es/kebabCase';\nimport _isString from 'lodash-es/isString';\nimport { cn } from '../../lib/utils';\nimport { Label } from '../ui/label';\n\ntype SelectProps = SelectHTMLAttributes<HTMLSelectElement>;\n\nexport interface SelectOption {\n label: string;\n value: string;\n}\n\nfunction listToSelectOptions(items: string[]) {\n return items.map((item) => {\n return { label: item, value: item };\n });\n}\n\nexport interface FormSelectProps extends SelectProps {\n id?: string;\n name: string;\n label: string;\n selectProps: SelectProps;\n data: SelectOption[] | string[];\n defaultValue?: string;\n classNames?: {\n wrapper?: string;\n label?: string;\n input?: string;\n };\n}\n\nexport function FormSelect({\n id,\n name,\n label,\n selectProps,\n data,\n defaultValue,\n classNames,\n required,\n disabled,\n ...others\n}: FormSelectProps) {\n let _options: SelectOption[] = [];\n if (data.length > 0) {\n if (_isString(data[0])) {\n _options = listToSelectOptions(data as string[]);\n } else {\n _options = data as SelectOption[];\n }\n }\n\n if (!id) id = _kebabCase(name);\n\n return (\n <div className={classNames?.wrapper}>\n {label && (\n <Label htmlFor={id} className={classNames?.label} required={required}>\n {label}\n </Label>\n )}\n\n <select\n {...selectProps}\n id={id}\n name={name}\n autoComplete={id}\n className={cn(\n 'flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-sm transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm',\n classNames?.input ?? '',\n )}\n required={required}\n disabled={disabled}\n defaultValue={defaultValue}\n {...others}\n >\n {_options.map((option, index) => {\n return (\n <option\n key={option.value}\n value={option.value}\n // Unfortunately, the selected prop is not properly set at the nested component level.\n // use `defaultValue` in select element.\n // selected={defaultValue ? defaultValue === option.value : index === 0}\n >\n {option.label}\n </option>\n );\n })}\n </select>\n </div>\n );\n}\n"]}
|