@dev-dga/react 0.4.0 → 0.5.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/CHANGELOG.md +74 -0
- package/README.md +9 -1
- package/dist/index.cjs +2095 -399
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +690 -4
- package/dist/index.d.ts +690 -4
- package/dist/index.js +1993 -378
- package/dist/index.js.map +1 -1
- package/package.json +4 -3
package/dist/index.cjs
CHANGED
|
@@ -20,12 +20,63 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
20
20
|
// src/index.ts
|
|
21
21
|
var src_exports = {};
|
|
22
22
|
__export(src_exports, {
|
|
23
|
+
Accordion: () => Accordion,
|
|
24
|
+
AccordionContent: () => AccordionContent,
|
|
25
|
+
AccordionItem: () => AccordionItem,
|
|
26
|
+
AccordionTrigger: () => AccordionTrigger,
|
|
23
27
|
Alert: () => Alert,
|
|
24
28
|
AlertDescription: () => AlertDescription,
|
|
25
29
|
AlertTitle: () => AlertTitle,
|
|
30
|
+
Avatar: () => Avatar,
|
|
31
|
+
AvatarFallback: () => AvatarFallback,
|
|
32
|
+
AvatarGroup: () => AvatarGroup,
|
|
33
|
+
AvatarImage: () => AvatarImage,
|
|
34
|
+
Badge: () => Badge,
|
|
35
|
+
Breadcrumb: () => Breadcrumb,
|
|
36
|
+
BreadcrumbEllipsis: () => BreadcrumbEllipsis,
|
|
37
|
+
BreadcrumbItem: () => BreadcrumbItem,
|
|
38
|
+
BreadcrumbLink: () => BreadcrumbLink,
|
|
39
|
+
BreadcrumbList: () => BreadcrumbList,
|
|
40
|
+
BreadcrumbPage: () => BreadcrumbPage,
|
|
41
|
+
BreadcrumbSeparator: () => BreadcrumbSeparator,
|
|
26
42
|
Button: () => Button,
|
|
43
|
+
Card: () => Card,
|
|
44
|
+
CardContent: () => CardContent,
|
|
45
|
+
CardDescription: () => CardDescription,
|
|
46
|
+
CardFooter: () => CardFooter,
|
|
47
|
+
CardHeader: () => CardHeader,
|
|
48
|
+
CardImage: () => CardImage,
|
|
49
|
+
CardTitle: () => CardTitle,
|
|
27
50
|
Checkbox: () => Checkbox,
|
|
51
|
+
CircularProgress: () => CircularProgress,
|
|
52
|
+
Combobox: () => Combobox,
|
|
53
|
+
ComboboxGroup: () => ComboboxGroup,
|
|
54
|
+
ComboboxItem: () => ComboboxItem,
|
|
55
|
+
ComboboxSeparator: () => ComboboxSeparator,
|
|
28
56
|
DgaProvider: () => DgaProvider,
|
|
57
|
+
Divider: () => Divider,
|
|
58
|
+
Drawer: () => Drawer,
|
|
59
|
+
DrawerBody: () => DrawerBody,
|
|
60
|
+
DrawerClose: () => DrawerClose,
|
|
61
|
+
DrawerContent: () => DrawerContent,
|
|
62
|
+
DrawerDescription: () => DrawerDescription,
|
|
63
|
+
DrawerFooter: () => DrawerFooter,
|
|
64
|
+
DrawerHeader: () => DrawerHeader,
|
|
65
|
+
DrawerTitle: () => DrawerTitle,
|
|
66
|
+
DrawerTrigger: () => DrawerTrigger,
|
|
67
|
+
DropdownMenu: () => DropdownMenu,
|
|
68
|
+
DropdownMenuCheckboxItem: () => DropdownMenuCheckboxItem,
|
|
69
|
+
DropdownMenuContent: () => DropdownMenuContent,
|
|
70
|
+
DropdownMenuGroup: () => DropdownMenuGroup,
|
|
71
|
+
DropdownMenuItem: () => DropdownMenuItem,
|
|
72
|
+
DropdownMenuLabel: () => DropdownMenuLabel,
|
|
73
|
+
DropdownMenuRadioGroup: () => DropdownMenuRadioGroup,
|
|
74
|
+
DropdownMenuRadioItem: () => DropdownMenuRadioItem,
|
|
75
|
+
DropdownMenuSeparator: () => DropdownMenuSeparator,
|
|
76
|
+
DropdownMenuSub: () => DropdownMenuSub,
|
|
77
|
+
DropdownMenuSubContent: () => DropdownMenuSubContent,
|
|
78
|
+
DropdownMenuSubTrigger: () => DropdownMenuSubTrigger,
|
|
79
|
+
DropdownMenuTrigger: () => DropdownMenuTrigger,
|
|
29
80
|
FieldMessage: () => FieldMessage,
|
|
30
81
|
Input: () => Input,
|
|
31
82
|
Modal: () => Modal,
|
|
@@ -36,28 +87,67 @@ __export(src_exports, {
|
|
|
36
87
|
ModalHeader: () => ModalHeader,
|
|
37
88
|
ModalTitle: () => ModalTitle,
|
|
38
89
|
ModalTrigger: () => ModalTrigger,
|
|
90
|
+
Pagination: () => Pagination,
|
|
91
|
+
PaginationContent: () => PaginationContent,
|
|
92
|
+
PaginationEllipsis: () => PaginationEllipsis,
|
|
93
|
+
PaginationItem: () => PaginationItem,
|
|
94
|
+
PaginationLink: () => PaginationLink,
|
|
95
|
+
PaginationNext: () => PaginationNext,
|
|
96
|
+
PaginationPrevious: () => PaginationPrevious,
|
|
97
|
+
Progress: () => Progress,
|
|
39
98
|
Radio: () => Radio,
|
|
40
99
|
RadioGroup: () => RadioGroup,
|
|
41
100
|
Select: () => Select,
|
|
42
101
|
SelectItem: () => SelectItem,
|
|
102
|
+
Skeleton: () => Skeleton,
|
|
103
|
+
Spinner: () => Spinner,
|
|
104
|
+
Step: () => Step,
|
|
105
|
+
StepDescription: () => StepDescription,
|
|
106
|
+
StepIndicator: () => StepIndicator,
|
|
107
|
+
StepTitle: () => StepTitle,
|
|
108
|
+
Steps: () => Steps,
|
|
43
109
|
Switch: () => Switch,
|
|
110
|
+
Tabs: () => Tabs,
|
|
111
|
+
TabsContent: () => TabsContent,
|
|
112
|
+
TabsList: () => TabsList,
|
|
113
|
+
TabsTrigger: () => TabsTrigger,
|
|
44
114
|
Textarea: () => Textarea,
|
|
45
115
|
Toaster: () => Toaster,
|
|
46
116
|
Tooltip: () => Tooltip,
|
|
47
117
|
TooltipContent: () => TooltipContent,
|
|
48
118
|
TooltipTrigger: () => TooltipTrigger,
|
|
119
|
+
accordionVariants: () => accordionVariants,
|
|
49
120
|
alertVariants: () => alertVariants,
|
|
121
|
+
avatarVariants: () => avatarVariants,
|
|
122
|
+
badgeVariants: () => badgeVariants,
|
|
123
|
+
breadcrumbVariants: () => breadcrumbVariants,
|
|
50
124
|
buttonVariants: () => buttonVariants,
|
|
125
|
+
cardVariants: () => cardVariants,
|
|
51
126
|
checkboxVariants: () => checkboxVariants,
|
|
127
|
+
circularProgressVariants: () => circularProgressVariants,
|
|
52
128
|
cn: () => cn,
|
|
129
|
+
comboboxTriggerVariants: () => comboboxTriggerVariants,
|
|
130
|
+
comboboxVariants: () => comboboxVariants,
|
|
53
131
|
createToast: () => createToast,
|
|
54
132
|
createToastStore: () => createToastStore,
|
|
133
|
+
dividerVariants: () => dividerVariants,
|
|
134
|
+
drawerVariants: () => drawerVariants,
|
|
135
|
+
dropdownMenuVariants: () => dropdownMenuVariants,
|
|
55
136
|
inputVariants: () => inputVariants,
|
|
56
137
|
modalContentVariants: () => modalContentVariants,
|
|
138
|
+
paginationLinkVariants: () => paginationLinkVariants,
|
|
139
|
+
paginationVariants: () => paginationVariants,
|
|
140
|
+
progressVariants: () => progressVariants,
|
|
57
141
|
radioGroupVariants: () => radioGroupVariants,
|
|
58
142
|
radioVariants: () => radioVariants,
|
|
59
143
|
selectTriggerVariants: () => selectTriggerVariants,
|
|
144
|
+
skeletonVariants: () => skeletonVariants,
|
|
145
|
+
spinnerVariants: () => spinnerVariants,
|
|
146
|
+
stepVariants: () => stepVariants,
|
|
147
|
+
stepsVariants: () => stepsVariants,
|
|
60
148
|
switchVariants: () => switchVariants,
|
|
149
|
+
tabsListVariants: () => tabsListVariants,
|
|
150
|
+
tabsVariants: () => tabsVariants,
|
|
61
151
|
textareaVariants: () => textareaVariants,
|
|
62
152
|
toast: () => toast,
|
|
63
153
|
toastStore: () => toastStore,
|
|
@@ -73,7 +163,7 @@ module.exports = __toCommonJS(src_exports);
|
|
|
73
163
|
// src/components/Button/Button.tsx
|
|
74
164
|
var import_react = require("react");
|
|
75
165
|
var import_radix_ui = require("radix-ui");
|
|
76
|
-
var
|
|
166
|
+
var import_class_variance_authority2 = require("class-variance-authority");
|
|
77
167
|
|
|
78
168
|
// src/utils/cn.ts
|
|
79
169
|
var import_clsx = require("clsx");
|
|
@@ -81,151 +171,20 @@ function cn(...inputs) {
|
|
|
81
171
|
return (0, import_clsx.clsx)(inputs);
|
|
82
172
|
}
|
|
83
173
|
|
|
84
|
-
// src/
|
|
174
|
+
// src/components/Spinner/Spinner.tsx
|
|
175
|
+
var import_class_variance_authority = require("class-variance-authority");
|
|
85
176
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
height: "1em",
|
|
93
|
-
viewBox: "0 0 24 24",
|
|
94
|
-
fill: "none",
|
|
95
|
-
stroke: "currentColor",
|
|
96
|
-
strokeWidth: "2",
|
|
97
|
-
strokeLinecap: "round",
|
|
98
|
-
strokeLinejoin: "round",
|
|
99
|
-
className: "ddga-spinner",
|
|
100
|
-
...props,
|
|
101
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M21 12a9 9 0 1 1-6.219-8.56" })
|
|
102
|
-
}
|
|
103
|
-
);
|
|
104
|
-
}
|
|
105
|
-
function Check(props) {
|
|
106
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
107
|
-
"svg",
|
|
108
|
-
{
|
|
109
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
110
|
-
width: "1em",
|
|
111
|
-
height: "1em",
|
|
112
|
-
viewBox: "0 0 24 24",
|
|
113
|
-
fill: "none",
|
|
114
|
-
stroke: "currentColor",
|
|
115
|
-
strokeWidth: "3",
|
|
116
|
-
strokeLinecap: "round",
|
|
117
|
-
strokeLinejoin: "round",
|
|
118
|
-
...props,
|
|
119
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M20 6 9 17l-5-5" })
|
|
120
|
-
}
|
|
121
|
-
);
|
|
122
|
-
}
|
|
123
|
-
function Minus(props) {
|
|
124
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
125
|
-
"svg",
|
|
126
|
-
{
|
|
127
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
128
|
-
width: "1em",
|
|
129
|
-
height: "1em",
|
|
130
|
-
viewBox: "0 0 24 24",
|
|
131
|
-
fill: "none",
|
|
132
|
-
stroke: "currentColor",
|
|
133
|
-
strokeWidth: "3",
|
|
134
|
-
strokeLinecap: "round",
|
|
135
|
-
strokeLinejoin: "round",
|
|
136
|
-
...props,
|
|
137
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M5 12h14" })
|
|
138
|
-
}
|
|
139
|
-
);
|
|
140
|
-
}
|
|
141
|
-
function Info(props) {
|
|
142
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
143
|
-
"svg",
|
|
144
|
-
{
|
|
145
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
146
|
-
width: "1em",
|
|
147
|
-
height: "1em",
|
|
148
|
-
viewBox: "0 0 24 24",
|
|
149
|
-
fill: "none",
|
|
150
|
-
stroke: "currentColor",
|
|
151
|
-
strokeWidth: "2",
|
|
152
|
-
strokeLinecap: "round",
|
|
153
|
-
strokeLinejoin: "round",
|
|
154
|
-
...props,
|
|
155
|
-
children: [
|
|
156
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("circle", { cx: "12", cy: "12", r: "10" }),
|
|
157
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M12 16v-4" }),
|
|
158
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M12 8h.01" })
|
|
159
|
-
]
|
|
160
|
-
}
|
|
161
|
-
);
|
|
162
|
-
}
|
|
163
|
-
function AlertTriangle(props) {
|
|
164
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
165
|
-
"svg",
|
|
166
|
-
{
|
|
167
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
168
|
-
width: "1em",
|
|
169
|
-
height: "1em",
|
|
170
|
-
viewBox: "0 0 24 24",
|
|
171
|
-
fill: "none",
|
|
172
|
-
stroke: "currentColor",
|
|
173
|
-
strokeWidth: "2",
|
|
174
|
-
strokeLinecap: "round",
|
|
175
|
-
strokeLinejoin: "round",
|
|
176
|
-
...props,
|
|
177
|
-
children: [
|
|
178
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3Z" }),
|
|
179
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M12 9v4" }),
|
|
180
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M12 17h.01" })
|
|
181
|
-
]
|
|
182
|
-
}
|
|
183
|
-
);
|
|
184
|
-
}
|
|
185
|
-
function AlertCircle(props) {
|
|
186
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
187
|
-
"svg",
|
|
188
|
-
{
|
|
189
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
190
|
-
width: "1em",
|
|
191
|
-
height: "1em",
|
|
192
|
-
viewBox: "0 0 24 24",
|
|
193
|
-
fill: "none",
|
|
194
|
-
stroke: "currentColor",
|
|
195
|
-
strokeWidth: "2",
|
|
196
|
-
strokeLinecap: "round",
|
|
197
|
-
strokeLinejoin: "round",
|
|
198
|
-
...props,
|
|
199
|
-
children: [
|
|
200
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("circle", { cx: "12", cy: "12", r: "10" }),
|
|
201
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("line", { x1: "12", x2: "12", y1: "8", y2: "12" }),
|
|
202
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("line", { x1: "12", x2: "12.01", y1: "16", y2: "16" })
|
|
203
|
-
]
|
|
204
|
-
}
|
|
205
|
-
);
|
|
206
|
-
}
|
|
207
|
-
function Close(props) {
|
|
208
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
209
|
-
"svg",
|
|
210
|
-
{
|
|
211
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
212
|
-
width: "1em",
|
|
213
|
-
height: "1em",
|
|
214
|
-
viewBox: "0 0 24 24",
|
|
215
|
-
fill: "none",
|
|
216
|
-
stroke: "currentColor",
|
|
217
|
-
strokeWidth: "2",
|
|
218
|
-
strokeLinecap: "round",
|
|
219
|
-
strokeLinejoin: "round",
|
|
220
|
-
...props,
|
|
221
|
-
children: [
|
|
222
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M18 6 6 18" }),
|
|
223
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "m6 6 12 12" })
|
|
224
|
-
]
|
|
177
|
+
var spinnerVariants = (0, import_class_variance_authority.cva)("ddga-spinner", {
|
|
178
|
+
variants: {
|
|
179
|
+
size: {
|
|
180
|
+
sm: "ddga-spinner--sm",
|
|
181
|
+
md: "ddga-spinner--md",
|
|
182
|
+
lg: "ddga-spinner--lg"
|
|
225
183
|
}
|
|
226
|
-
|
|
227
|
-
}
|
|
228
|
-
function
|
|
184
|
+
}
|
|
185
|
+
});
|
|
186
|
+
function Spinner({ size, className, "aria-label": ariaLabel, ...props }) {
|
|
187
|
+
const hidden = props["aria-hidden"] === true || props["aria-hidden"] === "true";
|
|
229
188
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
230
189
|
"svg",
|
|
231
190
|
{
|
|
@@ -238,22 +197,31 @@ function ChevronDown(props) {
|
|
|
238
197
|
strokeWidth: "2",
|
|
239
198
|
strokeLinecap: "round",
|
|
240
199
|
strokeLinejoin: "round",
|
|
200
|
+
role: hidden ? void 0 : "status",
|
|
201
|
+
"aria-label": hidden ? void 0 : ariaLabel ?? "Loading",
|
|
202
|
+
"data-slot": "spinner",
|
|
203
|
+
className: cn(spinnerVariants({ size }), className),
|
|
241
204
|
...props,
|
|
242
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "
|
|
205
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M21 12a9 9 0 1 1-6.219-8.56" })
|
|
243
206
|
}
|
|
244
207
|
);
|
|
245
208
|
}
|
|
246
209
|
|
|
247
210
|
// src/components/Button/Button.tsx
|
|
248
211
|
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
249
|
-
var buttonVariants = (0,
|
|
212
|
+
var buttonVariants = (0, import_class_variance_authority2.cva)("ddga-button", {
|
|
250
213
|
variants: {
|
|
251
214
|
variant: {
|
|
252
215
|
primary: "ddga-button--primary",
|
|
253
216
|
secondary: "ddga-button--secondary",
|
|
254
217
|
outline: "ddga-button--outline",
|
|
255
218
|
ghost: "ddga-button--ghost",
|
|
256
|
-
destructive: "ddga-button--destructive"
|
|
219
|
+
destructive: "ddga-button--destructive",
|
|
220
|
+
// Destructive sub-variants — match the DGA library's full destructive
|
|
221
|
+
// family (des-primary maps to plain `destructive` above).
|
|
222
|
+
"destructive-outline": "ddga-button--destructive-outline",
|
|
223
|
+
"destructive-subtle": "ddga-button--destructive-subtle",
|
|
224
|
+
"destructive-ghost": "ddga-button--destructive-ghost"
|
|
257
225
|
},
|
|
258
226
|
size: {
|
|
259
227
|
sm: "ddga-button--sm",
|
|
@@ -264,6 +232,16 @@ var buttonVariants = (0, import_class_variance_authority.cva)("ddga-button", {
|
|
|
264
232
|
},
|
|
265
233
|
fullWidth: {
|
|
266
234
|
true: "ddga-button--full-width"
|
|
235
|
+
},
|
|
236
|
+
/**
|
|
237
|
+
* Use on dark / branded colored backgrounds. Visually inverts non-filled
|
|
238
|
+
* variants (`outline`, `ghost`, destructive's outline/ghost forms) so
|
|
239
|
+
* text + border stay visible against the surface. Filled variants
|
|
240
|
+
* (`primary`, `secondary`, `destructive`, `destructive-subtle`) ignore
|
|
241
|
+
* it — they already carry their own background contrast.
|
|
242
|
+
*/
|
|
243
|
+
inverted: {
|
|
244
|
+
true: "ddga-button--inverted"
|
|
267
245
|
}
|
|
268
246
|
},
|
|
269
247
|
compoundVariants: [],
|
|
@@ -276,6 +254,7 @@ function Button({
|
|
|
276
254
|
variant,
|
|
277
255
|
size,
|
|
278
256
|
fullWidth,
|
|
257
|
+
inverted,
|
|
279
258
|
loading,
|
|
280
259
|
disabled,
|
|
281
260
|
startIcon,
|
|
@@ -305,7 +284,7 @@ function Button({
|
|
|
305
284
|
"aria-busy": loading || void 0,
|
|
306
285
|
"data-slot": "button",
|
|
307
286
|
className: cn(
|
|
308
|
-
buttonVariants({ variant, size, fullWidth }),
|
|
287
|
+
buttonVariants({ variant, size, fullWidth, inverted }),
|
|
309
288
|
loading && "ddga-button--loading",
|
|
310
289
|
className
|
|
311
290
|
),
|
|
@@ -326,7 +305,7 @@ function Button({
|
|
|
326
305
|
}
|
|
327
306
|
|
|
328
307
|
// src/components/Input/Input.tsx
|
|
329
|
-
var
|
|
308
|
+
var import_class_variance_authority3 = require("class-variance-authority");
|
|
330
309
|
|
|
331
310
|
// src/field/use-field-a11y.ts
|
|
332
311
|
var import_react2 = require("react");
|
|
@@ -380,7 +359,7 @@ function FieldMessage({ id, variant, children }) {
|
|
|
380
359
|
|
|
381
360
|
// src/components/Input/Input.tsx
|
|
382
361
|
var import_jsx_runtime4 = require("react/jsx-runtime");
|
|
383
|
-
var inputVariants = (0,
|
|
362
|
+
var inputVariants = (0, import_class_variance_authority3.cva)("ddga-input", {
|
|
384
363
|
variants: {
|
|
385
364
|
size: {
|
|
386
365
|
sm: "ddga-input--sm",
|
|
@@ -464,9 +443,9 @@ function Input({
|
|
|
464
443
|
}
|
|
465
444
|
|
|
466
445
|
// src/components/Textarea/Textarea.tsx
|
|
467
|
-
var
|
|
446
|
+
var import_class_variance_authority4 = require("class-variance-authority");
|
|
468
447
|
var import_jsx_runtime5 = require("react/jsx-runtime");
|
|
469
|
-
var textareaVariants = (0,
|
|
448
|
+
var textareaVariants = (0, import_class_variance_authority4.cva)("ddga-textarea", {
|
|
470
449
|
variants: {
|
|
471
450
|
size: {
|
|
472
451
|
sm: "ddga-textarea--sm",
|
|
@@ -534,112 +513,295 @@ function Textarea({
|
|
|
534
513
|
|
|
535
514
|
// src/components/Checkbox/Checkbox.tsx
|
|
536
515
|
var import_radix_ui2 = require("radix-ui");
|
|
537
|
-
var
|
|
516
|
+
var import_class_variance_authority5 = require("class-variance-authority");
|
|
517
|
+
|
|
518
|
+
// src/internal/icons/index.tsx
|
|
538
519
|
var import_jsx_runtime6 = require("react/jsx-runtime");
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
520
|
+
function Check(props) {
|
|
521
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
522
|
+
"svg",
|
|
523
|
+
{
|
|
524
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
525
|
+
width: "1em",
|
|
526
|
+
height: "1em",
|
|
527
|
+
viewBox: "0 0 24 24",
|
|
528
|
+
fill: "none",
|
|
529
|
+
stroke: "currentColor",
|
|
530
|
+
strokeWidth: "3",
|
|
531
|
+
strokeLinecap: "round",
|
|
532
|
+
strokeLinejoin: "round",
|
|
533
|
+
...props,
|
|
534
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("path", { d: "M20 6 9 17l-5-5" })
|
|
547
535
|
}
|
|
548
|
-
|
|
549
|
-
defaultVariants: {
|
|
550
|
-
size: "md"
|
|
551
|
-
}
|
|
552
|
-
});
|
|
553
|
-
function Checkbox({
|
|
554
|
-
id: externalId,
|
|
555
|
-
label,
|
|
556
|
-
helperText,
|
|
557
|
-
errorMessage,
|
|
558
|
-
error,
|
|
559
|
-
size,
|
|
560
|
-
required,
|
|
561
|
-
className,
|
|
562
|
-
...props
|
|
563
|
-
}) {
|
|
564
|
-
const { fieldId, errorId, helperId, hasError, hasErrorMessage, hasHelper, controlProps } = useFieldA11y({
|
|
565
|
-
name: "Checkbox",
|
|
566
|
-
id: externalId,
|
|
567
|
-
label,
|
|
568
|
-
error,
|
|
569
|
-
errorMessage,
|
|
570
|
-
helperText,
|
|
571
|
-
"aria-label": props["aria-label"],
|
|
572
|
-
"aria-labelledby": props["aria-labelledby"]
|
|
573
|
-
});
|
|
574
|
-
return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { "data-slot": "checkbox-field", className: "ddga-field", children: [
|
|
575
|
-
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "ddga-checkbox-row", children: [
|
|
576
|
-
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
577
|
-
import_radix_ui2.Checkbox.Root,
|
|
578
|
-
{
|
|
579
|
-
...props,
|
|
580
|
-
...controlProps,
|
|
581
|
-
"data-slot": "checkbox",
|
|
582
|
-
required,
|
|
583
|
-
className: cn(checkboxVariants({ size, error: hasError }), className),
|
|
584
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
|
|
585
|
-
import_radix_ui2.Checkbox.Indicator,
|
|
586
|
-
{
|
|
587
|
-
"data-slot": "checkbox-indicator",
|
|
588
|
-
className: "ddga-checkbox__indicator",
|
|
589
|
-
children: [
|
|
590
|
-
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(Check, { className: "ddga-checkbox__check", "aria-hidden": "true" }),
|
|
591
|
-
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(Minus, { className: "ddga-checkbox__minus", "aria-hidden": "true" })
|
|
592
|
-
]
|
|
593
|
-
}
|
|
594
|
-
)
|
|
595
|
-
}
|
|
596
|
-
),
|
|
597
|
-
label && /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("label", { htmlFor: fieldId, className: "ddga-checkbox__label", children: [
|
|
598
|
-
label,
|
|
599
|
-
required && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { "aria-hidden": "true", className: "ddga-checkbox__required", children: "*" })
|
|
600
|
-
] })
|
|
601
|
-
] }),
|
|
602
|
-
hasErrorMessage && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(FieldMessage, { id: errorId, variant: "error", children: errorMessage }),
|
|
603
|
-
hasHelper && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(FieldMessage, { id: helperId, variant: "helper", children: helperText })
|
|
604
|
-
] });
|
|
536
|
+
);
|
|
605
537
|
}
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
},
|
|
622
|
-
error: {
|
|
623
|
-
true: "ddga-radio-group--error"
|
|
538
|
+
function Minus(props) {
|
|
539
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
540
|
+
"svg",
|
|
541
|
+
{
|
|
542
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
543
|
+
width: "1em",
|
|
544
|
+
height: "1em",
|
|
545
|
+
viewBox: "0 0 24 24",
|
|
546
|
+
fill: "none",
|
|
547
|
+
stroke: "currentColor",
|
|
548
|
+
strokeWidth: "3",
|
|
549
|
+
strokeLinecap: "round",
|
|
550
|
+
strokeLinejoin: "round",
|
|
551
|
+
...props,
|
|
552
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("path", { d: "M5 12h14" })
|
|
624
553
|
}
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
554
|
+
);
|
|
555
|
+
}
|
|
556
|
+
function Info(props) {
|
|
557
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
|
|
558
|
+
"svg",
|
|
559
|
+
{
|
|
560
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
561
|
+
width: "1em",
|
|
562
|
+
height: "1em",
|
|
563
|
+
viewBox: "0 0 24 24",
|
|
564
|
+
fill: "none",
|
|
565
|
+
stroke: "currentColor",
|
|
566
|
+
strokeWidth: "2",
|
|
567
|
+
strokeLinecap: "round",
|
|
568
|
+
strokeLinejoin: "round",
|
|
569
|
+
...props,
|
|
570
|
+
children: [
|
|
571
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("circle", { cx: "12", cy: "12", r: "10" }),
|
|
572
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("path", { d: "M12 16v-4" }),
|
|
573
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("path", { d: "M12 8h.01" })
|
|
574
|
+
]
|
|
575
|
+
}
|
|
576
|
+
);
|
|
577
|
+
}
|
|
578
|
+
function AlertTriangle(props) {
|
|
579
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
|
|
580
|
+
"svg",
|
|
581
|
+
{
|
|
582
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
583
|
+
width: "1em",
|
|
584
|
+
height: "1em",
|
|
585
|
+
viewBox: "0 0 24 24",
|
|
586
|
+
fill: "none",
|
|
587
|
+
stroke: "currentColor",
|
|
588
|
+
strokeWidth: "2",
|
|
589
|
+
strokeLinecap: "round",
|
|
590
|
+
strokeLinejoin: "round",
|
|
591
|
+
...props,
|
|
592
|
+
children: [
|
|
593
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("path", { d: "m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3Z" }),
|
|
594
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("path", { d: "M12 9v4" }),
|
|
595
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("path", { d: "M12 17h.01" })
|
|
596
|
+
]
|
|
597
|
+
}
|
|
598
|
+
);
|
|
599
|
+
}
|
|
600
|
+
function AlertCircle(props) {
|
|
601
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
|
|
602
|
+
"svg",
|
|
603
|
+
{
|
|
604
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
605
|
+
width: "1em",
|
|
606
|
+
height: "1em",
|
|
607
|
+
viewBox: "0 0 24 24",
|
|
608
|
+
fill: "none",
|
|
609
|
+
stroke: "currentColor",
|
|
610
|
+
strokeWidth: "2",
|
|
611
|
+
strokeLinecap: "round",
|
|
612
|
+
strokeLinejoin: "round",
|
|
613
|
+
...props,
|
|
614
|
+
children: [
|
|
615
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("circle", { cx: "12", cy: "12", r: "10" }),
|
|
616
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("line", { x1: "12", x2: "12", y1: "8", y2: "12" }),
|
|
617
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("line", { x1: "12", x2: "12.01", y1: "16", y2: "16" })
|
|
618
|
+
]
|
|
619
|
+
}
|
|
620
|
+
);
|
|
621
|
+
}
|
|
622
|
+
function Close(props) {
|
|
623
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
|
|
624
|
+
"svg",
|
|
625
|
+
{
|
|
626
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
627
|
+
width: "1em",
|
|
628
|
+
height: "1em",
|
|
629
|
+
viewBox: "0 0 24 24",
|
|
630
|
+
fill: "none",
|
|
631
|
+
stroke: "currentColor",
|
|
632
|
+
strokeWidth: "2",
|
|
633
|
+
strokeLinecap: "round",
|
|
634
|
+
strokeLinejoin: "round",
|
|
635
|
+
...props,
|
|
636
|
+
children: [
|
|
637
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("path", { d: "M18 6 6 18" }),
|
|
638
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("path", { d: "m6 6 12 12" })
|
|
639
|
+
]
|
|
640
|
+
}
|
|
641
|
+
);
|
|
642
|
+
}
|
|
643
|
+
function ChevronDown(props) {
|
|
644
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
645
|
+
"svg",
|
|
646
|
+
{
|
|
647
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
648
|
+
width: "1em",
|
|
649
|
+
height: "1em",
|
|
650
|
+
viewBox: "0 0 24 24",
|
|
651
|
+
fill: "none",
|
|
652
|
+
stroke: "currentColor",
|
|
653
|
+
strokeWidth: "2",
|
|
654
|
+
strokeLinecap: "round",
|
|
655
|
+
strokeLinejoin: "round",
|
|
656
|
+
...props,
|
|
657
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("path", { d: "m6 9 6 6 6-6" })
|
|
658
|
+
}
|
|
659
|
+
);
|
|
660
|
+
}
|
|
661
|
+
function ChevronRight(props) {
|
|
662
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
663
|
+
"svg",
|
|
664
|
+
{
|
|
665
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
666
|
+
width: "1em",
|
|
667
|
+
height: "1em",
|
|
668
|
+
viewBox: "0 0 24 24",
|
|
669
|
+
fill: "none",
|
|
670
|
+
stroke: "currentColor",
|
|
671
|
+
strokeWidth: "2",
|
|
672
|
+
strokeLinecap: "round",
|
|
673
|
+
strokeLinejoin: "round",
|
|
674
|
+
...props,
|
|
675
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("path", { d: "m9 18 6-6-6-6" })
|
|
676
|
+
}
|
|
677
|
+
);
|
|
678
|
+
}
|
|
679
|
+
function MoreHorizontal(props) {
|
|
680
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
|
|
681
|
+
"svg",
|
|
682
|
+
{
|
|
683
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
684
|
+
width: "1em",
|
|
685
|
+
height: "1em",
|
|
686
|
+
viewBox: "0 0 24 24",
|
|
687
|
+
fill: "currentColor",
|
|
688
|
+
stroke: "none",
|
|
689
|
+
...props,
|
|
690
|
+
children: [
|
|
691
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("circle", { cx: "5", cy: "12", r: "1.5" }),
|
|
692
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("circle", { cx: "12", cy: "12", r: "1.5" }),
|
|
693
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("circle", { cx: "19", cy: "12", r: "1.5" })
|
|
694
|
+
]
|
|
695
|
+
}
|
|
696
|
+
);
|
|
697
|
+
}
|
|
698
|
+
|
|
699
|
+
// src/components/Checkbox/Checkbox.tsx
|
|
700
|
+
var import_jsx_runtime7 = require("react/jsx-runtime");
|
|
701
|
+
var checkboxVariants = (0, import_class_variance_authority5.cva)("ddga-checkbox", {
|
|
702
|
+
variants: {
|
|
703
|
+
size: {
|
|
704
|
+
sm: "ddga-checkbox--sm",
|
|
705
|
+
md: "ddga-checkbox--md"
|
|
706
|
+
},
|
|
707
|
+
error: {
|
|
708
|
+
true: "ddga-checkbox--error"
|
|
709
|
+
}
|
|
710
|
+
},
|
|
711
|
+
defaultVariants: {
|
|
712
|
+
size: "md"
|
|
713
|
+
}
|
|
714
|
+
});
|
|
715
|
+
function Checkbox({
|
|
716
|
+
id: externalId,
|
|
717
|
+
label,
|
|
718
|
+
helperText,
|
|
719
|
+
errorMessage,
|
|
720
|
+
error,
|
|
721
|
+
size,
|
|
722
|
+
required,
|
|
723
|
+
className,
|
|
724
|
+
...props
|
|
725
|
+
}) {
|
|
726
|
+
const { fieldId, errorId, helperId, hasError, hasErrorMessage, hasHelper, controlProps } = useFieldA11y({
|
|
727
|
+
name: "Checkbox",
|
|
728
|
+
id: externalId,
|
|
729
|
+
label,
|
|
730
|
+
error,
|
|
731
|
+
errorMessage,
|
|
732
|
+
helperText,
|
|
733
|
+
"aria-label": props["aria-label"],
|
|
734
|
+
"aria-labelledby": props["aria-labelledby"]
|
|
735
|
+
});
|
|
736
|
+
return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { "data-slot": "checkbox-field", className: "ddga-field", children: [
|
|
737
|
+
/* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "ddga-checkbox-row", children: [
|
|
738
|
+
/* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
|
|
739
|
+
import_radix_ui2.Checkbox.Root,
|
|
740
|
+
{
|
|
741
|
+
...props,
|
|
742
|
+
...controlProps,
|
|
743
|
+
"data-slot": "checkbox",
|
|
744
|
+
required,
|
|
745
|
+
className: cn(checkboxVariants({ size, error: hasError }), className),
|
|
746
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
|
|
747
|
+
import_radix_ui2.Checkbox.Indicator,
|
|
748
|
+
{
|
|
749
|
+
"data-slot": "checkbox-indicator",
|
|
750
|
+
className: "ddga-checkbox__indicator",
|
|
751
|
+
children: [
|
|
752
|
+
/* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Check, { className: "ddga-checkbox__check", "aria-hidden": "true" }),
|
|
753
|
+
/* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Minus, { className: "ddga-checkbox__minus", "aria-hidden": "true" })
|
|
754
|
+
]
|
|
755
|
+
}
|
|
756
|
+
)
|
|
757
|
+
}
|
|
758
|
+
),
|
|
759
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("label", { htmlFor: fieldId, className: "ddga-checkbox__label", children: [
|
|
760
|
+
label,
|
|
761
|
+
required && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("span", { "aria-hidden": "true", className: "ddga-checkbox__required", children: "*" })
|
|
762
|
+
] })
|
|
763
|
+
] }),
|
|
764
|
+
hasErrorMessage && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(FieldMessage, { id: errorId, variant: "error", children: errorMessage }),
|
|
765
|
+
hasHelper && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(FieldMessage, { id: helperId, variant: "helper", children: helperText })
|
|
766
|
+
] });
|
|
767
|
+
}
|
|
768
|
+
|
|
769
|
+
// src/components/Radio/Radio.tsx
|
|
770
|
+
var import_react3 = require("react");
|
|
771
|
+
var import_radix_ui3 = require("radix-ui");
|
|
772
|
+
var import_class_variance_authority6 = require("class-variance-authority");
|
|
773
|
+
var import_jsx_runtime8 = require("react/jsx-runtime");
|
|
774
|
+
var radioGroupVariants = (0, import_class_variance_authority6.cva)("ddga-radio-group", {
|
|
775
|
+
variants: {
|
|
776
|
+
size: {
|
|
777
|
+
sm: "ddga-radio-group--sm",
|
|
778
|
+
md: "ddga-radio-group--md"
|
|
779
|
+
},
|
|
780
|
+
orientation: {
|
|
781
|
+
vertical: "ddga-radio-group--vertical",
|
|
782
|
+
horizontal: "ddga-radio-group--horizontal"
|
|
783
|
+
},
|
|
784
|
+
error: {
|
|
785
|
+
true: "ddga-radio-group--error"
|
|
786
|
+
}
|
|
787
|
+
},
|
|
788
|
+
defaultVariants: {
|
|
789
|
+
size: "md",
|
|
790
|
+
orientation: "vertical"
|
|
791
|
+
}
|
|
792
|
+
});
|
|
793
|
+
var radioVariants = (0, import_class_variance_authority6.cva)("ddga-radio");
|
|
794
|
+
function RadioGroup({
|
|
795
|
+
id: externalId,
|
|
796
|
+
label,
|
|
797
|
+
helperText,
|
|
798
|
+
errorMessage,
|
|
799
|
+
error,
|
|
800
|
+
size,
|
|
801
|
+
orientation,
|
|
802
|
+
required,
|
|
803
|
+
className,
|
|
804
|
+
children,
|
|
643
805
|
...props
|
|
644
806
|
}) {
|
|
645
807
|
const { errorId, helperId, hasError, hasErrorMessage, hasHelper, controlProps, fieldId } = useFieldA11y({
|
|
@@ -653,12 +815,12 @@ function RadioGroup({
|
|
|
653
815
|
"aria-labelledby": props["aria-labelledby"]
|
|
654
816
|
});
|
|
655
817
|
const labelId = `${fieldId}-label`;
|
|
656
|
-
return /* @__PURE__ */ (0,
|
|
657
|
-
label && /* @__PURE__ */ (0,
|
|
818
|
+
return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { "data-slot": "radio-group-field", className: "ddga-field", children: [
|
|
819
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("span", { id: labelId, className: "ddga-radio-group__label", children: [
|
|
658
820
|
label,
|
|
659
|
-
required && /* @__PURE__ */ (0,
|
|
821
|
+
required && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { "aria-hidden": "true", className: "ddga-radio-group__required", children: "*" })
|
|
660
822
|
] }),
|
|
661
|
-
/* @__PURE__ */ (0,
|
|
823
|
+
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
662
824
|
import_radix_ui3.RadioGroup.Root,
|
|
663
825
|
{
|
|
664
826
|
...props,
|
|
@@ -672,40 +834,40 @@ function RadioGroup({
|
|
|
672
834
|
children
|
|
673
835
|
}
|
|
674
836
|
),
|
|
675
|
-
hasErrorMessage && /* @__PURE__ */ (0,
|
|
676
|
-
hasHelper && /* @__PURE__ */ (0,
|
|
837
|
+
hasErrorMessage && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(FieldMessage, { id: errorId, variant: "error", children: errorMessage }),
|
|
838
|
+
hasHelper && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(FieldMessage, { id: helperId, variant: "helper", children: helperText })
|
|
677
839
|
] });
|
|
678
840
|
}
|
|
679
841
|
function Radio({ id: externalId, label, className, ...props }) {
|
|
680
842
|
const generatedId = (0, import_react3.useId)();
|
|
681
843
|
const itemId = externalId ?? generatedId;
|
|
682
|
-
return /* @__PURE__ */ (0,
|
|
683
|
-
/* @__PURE__ */ (0,
|
|
844
|
+
return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "ddga-radio-row", children: [
|
|
845
|
+
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
684
846
|
import_radix_ui3.RadioGroup.Item,
|
|
685
847
|
{
|
|
686
848
|
...props,
|
|
687
849
|
id: itemId,
|
|
688
850
|
"data-slot": "radio",
|
|
689
851
|
className: cn(radioVariants(), className),
|
|
690
|
-
children: /* @__PURE__ */ (0,
|
|
852
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
691
853
|
import_radix_ui3.RadioGroup.Indicator,
|
|
692
854
|
{
|
|
693
855
|
"data-slot": "radio-indicator",
|
|
694
856
|
className: "ddga-radio__indicator",
|
|
695
|
-
children: /* @__PURE__ */ (0,
|
|
857
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { className: "ddga-radio__dot", "aria-hidden": "true" })
|
|
696
858
|
}
|
|
697
859
|
)
|
|
698
860
|
}
|
|
699
861
|
),
|
|
700
|
-
label && /* @__PURE__ */ (0,
|
|
862
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("label", { htmlFor: itemId, className: "ddga-radio__label", children: label })
|
|
701
863
|
] });
|
|
702
864
|
}
|
|
703
865
|
|
|
704
866
|
// src/components/Switch/Switch.tsx
|
|
705
867
|
var import_radix_ui4 = require("radix-ui");
|
|
706
|
-
var
|
|
707
|
-
var
|
|
708
|
-
var switchVariants = (0,
|
|
868
|
+
var import_class_variance_authority7 = require("class-variance-authority");
|
|
869
|
+
var import_jsx_runtime9 = require("react/jsx-runtime");
|
|
870
|
+
var switchVariants = (0, import_class_variance_authority7.cva)("ddga-switch", {
|
|
709
871
|
variants: {
|
|
710
872
|
size: {
|
|
711
873
|
sm: "ddga-switch--sm",
|
|
@@ -740,9 +902,9 @@ function Switch({
|
|
|
740
902
|
"aria-label": props["aria-label"],
|
|
741
903
|
"aria-labelledby": props["aria-labelledby"]
|
|
742
904
|
});
|
|
743
|
-
return /* @__PURE__ */ (0,
|
|
744
|
-
/* @__PURE__ */ (0,
|
|
745
|
-
/* @__PURE__ */ (0,
|
|
905
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { "data-slot": "switch-field", className: "ddga-field", children: [
|
|
906
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { className: "ddga-switch-row", children: [
|
|
907
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
746
908
|
import_radix_ui4.Switch.Root,
|
|
747
909
|
{
|
|
748
910
|
...props,
|
|
@@ -750,23 +912,23 @@ function Switch({
|
|
|
750
912
|
"data-slot": "switch",
|
|
751
913
|
required,
|
|
752
914
|
className: cn(switchVariants({ size, error: hasError }), className),
|
|
753
|
-
children: /* @__PURE__ */ (0,
|
|
915
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_radix_ui4.Switch.Thumb, { "data-slot": "switch-thumb", className: "ddga-switch__thumb" })
|
|
754
916
|
}
|
|
755
917
|
),
|
|
756
|
-
label && /* @__PURE__ */ (0,
|
|
918
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("label", { htmlFor: fieldId, className: "ddga-switch__label", children: [
|
|
757
919
|
label,
|
|
758
|
-
required && /* @__PURE__ */ (0,
|
|
920
|
+
required && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("span", { "aria-hidden": "true", className: "ddga-switch__required", children: "*" })
|
|
759
921
|
] })
|
|
760
922
|
] }),
|
|
761
|
-
hasErrorMessage && /* @__PURE__ */ (0,
|
|
762
|
-
hasHelper && /* @__PURE__ */ (0,
|
|
923
|
+
hasErrorMessage && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(FieldMessage, { id: errorId, variant: "error", children: errorMessage }),
|
|
924
|
+
hasHelper && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(FieldMessage, { id: helperId, variant: "helper", children: helperText })
|
|
763
925
|
] });
|
|
764
926
|
}
|
|
765
927
|
|
|
766
928
|
// src/components/Select/Select.tsx
|
|
767
929
|
var import_react5 = require("react");
|
|
768
930
|
var import_radix_ui5 = require("radix-ui");
|
|
769
|
-
var
|
|
931
|
+
var import_class_variance_authority8 = require("class-variance-authority");
|
|
770
932
|
|
|
771
933
|
// src/providers/DgaContext.ts
|
|
772
934
|
var import_react4 = require("react");
|
|
@@ -780,8 +942,8 @@ function useDga() {
|
|
|
780
942
|
}
|
|
781
943
|
|
|
782
944
|
// src/components/Select/Select.tsx
|
|
783
|
-
var
|
|
784
|
-
var selectTriggerVariants = (0,
|
|
945
|
+
var import_jsx_runtime10 = require("react/jsx-runtime");
|
|
946
|
+
var selectTriggerVariants = (0, import_class_variance_authority8.cva)("ddga-select-trigger", {
|
|
785
947
|
variants: {
|
|
786
948
|
size: {
|
|
787
949
|
sm: "ddga-select-trigger--sm",
|
|
@@ -820,88 +982,427 @@ function Select({
|
|
|
820
982
|
});
|
|
821
983
|
const ctx = (0, import_react5.useContext)(DgaContext);
|
|
822
984
|
const portalContainer = ctx?.rootEl ?? void 0;
|
|
823
|
-
return /* @__PURE__ */ (0,
|
|
824
|
-
label && /* @__PURE__ */ (0,
|
|
985
|
+
return /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { "data-slot": "select-field", className: "ddga-field", children: [
|
|
986
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("label", { htmlFor: fieldId, className: "ddga-select__label", children: [
|
|
825
987
|
label,
|
|
826
|
-
required && /* @__PURE__ */ (0,
|
|
988
|
+
required && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("span", { "aria-hidden": "true", className: "ddga-select__required", children: "*" })
|
|
827
989
|
] }),
|
|
828
|
-
/* @__PURE__ */ (0,
|
|
829
|
-
/* @__PURE__ */ (0,
|
|
990
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(import_radix_ui5.Select.Root, { required, ...rootProps, children: [
|
|
991
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(
|
|
830
992
|
import_radix_ui5.Select.Trigger,
|
|
831
993
|
{
|
|
832
994
|
...controlProps,
|
|
833
995
|
"data-slot": "select-trigger",
|
|
834
996
|
className: cn(selectTriggerVariants({ size, error: hasError }), className),
|
|
835
997
|
children: [
|
|
836
|
-
/* @__PURE__ */ (0,
|
|
837
|
-
/* @__PURE__ */ (0,
|
|
998
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_radix_ui5.Select.Value, { placeholder }),
|
|
999
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_radix_ui5.Select.Icon, { asChild: true, className: "ddga-select__icon", children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(ChevronDown, { "aria-hidden": "true" }) })
|
|
838
1000
|
]
|
|
839
1001
|
}
|
|
840
1002
|
),
|
|
841
|
-
/* @__PURE__ */ (0,
|
|
1003
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_radix_ui5.Select.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
842
1004
|
import_radix_ui5.Select.Content,
|
|
843
1005
|
{
|
|
844
1006
|
"data-slot": "select-content",
|
|
845
1007
|
className: "ddga-select-content",
|
|
846
1008
|
position: "popper",
|
|
847
1009
|
sideOffset: 4,
|
|
848
|
-
children: /* @__PURE__ */ (0,
|
|
1010
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_radix_ui5.Select.Viewport, { className: "ddga-select-viewport", children })
|
|
849
1011
|
}
|
|
850
1012
|
) })
|
|
851
1013
|
] }),
|
|
852
|
-
hasErrorMessage && /* @__PURE__ */ (0,
|
|
853
|
-
hasHelper && /* @__PURE__ */ (0,
|
|
1014
|
+
hasErrorMessage && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(FieldMessage, { id: errorId, variant: "error", children: errorMessage }),
|
|
1015
|
+
hasHelper && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(FieldMessage, { id: helperId, variant: "helper", children: helperText })
|
|
854
1016
|
] });
|
|
855
1017
|
}
|
|
856
1018
|
function SelectItem({ className, children, ...props }) {
|
|
857
|
-
return /* @__PURE__ */ (0,
|
|
1019
|
+
return /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(
|
|
858
1020
|
import_radix_ui5.Select.Item,
|
|
859
1021
|
{
|
|
860
1022
|
...props,
|
|
861
1023
|
"data-slot": "select-item",
|
|
862
1024
|
className: cn("ddga-select-item", className),
|
|
863
1025
|
children: [
|
|
864
|
-
/* @__PURE__ */ (0,
|
|
865
|
-
/* @__PURE__ */ (0,
|
|
1026
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_radix_ui5.Select.ItemText, { children }),
|
|
1027
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_radix_ui5.Select.ItemIndicator, { className: "ddga-select-item__indicator", children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Check, { className: "ddga-select-item__check", "aria-hidden": "true" }) })
|
|
866
1028
|
]
|
|
867
1029
|
}
|
|
868
1030
|
);
|
|
869
1031
|
}
|
|
870
1032
|
|
|
871
|
-
// src/components/
|
|
872
|
-
var import_react6 = require("react");
|
|
1033
|
+
// src/components/Card/Card.tsx
|
|
873
1034
|
var import_radix_ui6 = require("radix-ui");
|
|
874
|
-
var
|
|
875
|
-
var
|
|
876
|
-
var
|
|
1035
|
+
var import_class_variance_authority9 = require("class-variance-authority");
|
|
1036
|
+
var import_jsx_runtime11 = require("react/jsx-runtime");
|
|
1037
|
+
var cardVariants = (0, import_class_variance_authority9.cva)("ddga-card", {
|
|
877
1038
|
variants: {
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
1039
|
+
variant: {
|
|
1040
|
+
default: "ddga-card--default",
|
|
1041
|
+
outline: "ddga-card--outline",
|
|
1042
|
+
elevated: "ddga-card--elevated",
|
|
1043
|
+
filled: "ddga-card--filled",
|
|
1044
|
+
gradient: "ddga-card--gradient",
|
|
1045
|
+
ghost: "ddga-card--ghost"
|
|
1046
|
+
},
|
|
1047
|
+
padding: {
|
|
1048
|
+
sm: "ddga-card--padding-sm",
|
|
1049
|
+
md: "ddga-card--padding-md",
|
|
1050
|
+
lg: "ddga-card--padding-lg"
|
|
1051
|
+
},
|
|
1052
|
+
orientation: {
|
|
1053
|
+
vertical: "ddga-card--vertical",
|
|
1054
|
+
horizontal: "ddga-card--horizontal"
|
|
1055
|
+
},
|
|
1056
|
+
interactive: {
|
|
1057
|
+
true: "ddga-card--interactive"
|
|
881
1058
|
}
|
|
882
1059
|
},
|
|
883
1060
|
defaultVariants: {
|
|
884
|
-
|
|
1061
|
+
variant: "default",
|
|
1062
|
+
padding: "md",
|
|
1063
|
+
orientation: "vertical"
|
|
885
1064
|
}
|
|
886
1065
|
});
|
|
887
|
-
function
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
|
|
1066
|
+
function Card({
|
|
1067
|
+
variant,
|
|
1068
|
+
padding,
|
|
1069
|
+
orientation,
|
|
1070
|
+
interactive,
|
|
1071
|
+
asChild,
|
|
1072
|
+
className,
|
|
1073
|
+
...props
|
|
1074
|
+
}) {
|
|
1075
|
+
const Comp = asChild ? import_radix_ui6.Slot.Slot : "div";
|
|
1076
|
+
return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
1077
|
+
Comp,
|
|
1078
|
+
{
|
|
1079
|
+
"data-slot": "card",
|
|
1080
|
+
"data-orientation": orientation ?? "vertical",
|
|
1081
|
+
className: cn(cardVariants({ variant, padding, orientation, interactive }), className),
|
|
1082
|
+
...props
|
|
1083
|
+
}
|
|
1084
|
+
);
|
|
1085
|
+
}
|
|
1086
|
+
function CardImage({ aspectRatio = "16/9", className, style, ...props }) {
|
|
1087
|
+
return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
1088
|
+
"img",
|
|
1089
|
+
{
|
|
1090
|
+
"data-slot": "card-image",
|
|
1091
|
+
className: cn("ddga-card__image", className),
|
|
1092
|
+
style: {
|
|
1093
|
+
"--ddga-card-image-aspect": aspectRatio,
|
|
1094
|
+
...style
|
|
1095
|
+
},
|
|
1096
|
+
...props
|
|
1097
|
+
}
|
|
1098
|
+
);
|
|
1099
|
+
}
|
|
1100
|
+
function CardHeader({ asChild, className, ...props }) {
|
|
1101
|
+
const Comp = asChild ? import_radix_ui6.Slot.Slot : "div";
|
|
1102
|
+
return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Comp, { "data-slot": "card-header", className: cn("ddga-card__header", className), ...props });
|
|
1103
|
+
}
|
|
1104
|
+
function CardTitle({ asChild, className, ...props }) {
|
|
1105
|
+
const Comp = asChild ? import_radix_ui6.Slot.Slot : "h3";
|
|
1106
|
+
return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Comp, { "data-slot": "card-title", className: cn("ddga-card__title", className), ...props });
|
|
1107
|
+
}
|
|
1108
|
+
function CardDescription({ asChild, className, ...props }) {
|
|
1109
|
+
const Comp = asChild ? import_radix_ui6.Slot.Slot : "p";
|
|
1110
|
+
return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
1111
|
+
Comp,
|
|
1112
|
+
{
|
|
1113
|
+
"data-slot": "card-description",
|
|
1114
|
+
className: cn("ddga-card__description", className),
|
|
1115
|
+
...props
|
|
1116
|
+
}
|
|
1117
|
+
);
|
|
1118
|
+
}
|
|
1119
|
+
function CardContent({ asChild, className, ...props }) {
|
|
1120
|
+
const Comp = asChild ? import_radix_ui6.Slot.Slot : "div";
|
|
1121
|
+
return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Comp, { "data-slot": "card-content", className: cn("ddga-card__content", className), ...props });
|
|
1122
|
+
}
|
|
1123
|
+
function CardFooter({ asChild, className, ...props }) {
|
|
1124
|
+
const Comp = asChild ? import_radix_ui6.Slot.Slot : "div";
|
|
1125
|
+
return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Comp, { "data-slot": "card-footer", className: cn("ddga-card__footer", className), ...props });
|
|
1126
|
+
}
|
|
1127
|
+
|
|
1128
|
+
// src/components/Badge/Badge.tsx
|
|
1129
|
+
var import_react6 = require("react");
|
|
1130
|
+
var import_radix_ui7 = require("radix-ui");
|
|
1131
|
+
var import_class_variance_authority10 = require("class-variance-authority");
|
|
1132
|
+
var import_jsx_runtime12 = require("react/jsx-runtime");
|
|
1133
|
+
var badgeVariants = (0, import_class_variance_authority10.cva)("ddga-badge", {
|
|
1134
|
+
variants: {
|
|
1135
|
+
variant: {
|
|
1136
|
+
// Solid family
|
|
1137
|
+
default: "ddga-badge--default",
|
|
1138
|
+
primary: "ddga-badge--primary",
|
|
1139
|
+
secondary: "ddga-badge--secondary",
|
|
1140
|
+
destructive: "ddga-badge--destructive",
|
|
1141
|
+
success: "ddga-badge--success",
|
|
1142
|
+
warning: "ddga-badge--warning",
|
|
1143
|
+
info: "ddga-badge--info",
|
|
1144
|
+
// Subtle family (tonal)
|
|
1145
|
+
"primary-subtle": "ddga-badge--primary-subtle",
|
|
1146
|
+
"secondary-subtle": "ddga-badge--secondary-subtle",
|
|
1147
|
+
"destructive-subtle": "ddga-badge--destructive-subtle",
|
|
1148
|
+
"success-subtle": "ddga-badge--success-subtle",
|
|
1149
|
+
"warning-subtle": "ddga-badge--warning-subtle",
|
|
1150
|
+
"info-subtle": "ddga-badge--info-subtle",
|
|
1151
|
+
// Outline
|
|
1152
|
+
outline: "ddga-badge--outline"
|
|
1153
|
+
},
|
|
1154
|
+
size: {
|
|
1155
|
+
sm: "ddga-badge--sm",
|
|
1156
|
+
md: "ddga-badge--md"
|
|
1157
|
+
}
|
|
1158
|
+
},
|
|
1159
|
+
defaultVariants: {
|
|
1160
|
+
variant: "default",
|
|
1161
|
+
size: "md"
|
|
1162
|
+
}
|
|
1163
|
+
});
|
|
1164
|
+
function Badge({
|
|
1165
|
+
variant,
|
|
1166
|
+
size,
|
|
1167
|
+
asChild,
|
|
1168
|
+
dot,
|
|
1169
|
+
startIcon,
|
|
1170
|
+
endIcon,
|
|
1171
|
+
dismissible,
|
|
1172
|
+
open,
|
|
1173
|
+
onDismiss,
|
|
1174
|
+
closeLabel = "Dismiss",
|
|
1175
|
+
className,
|
|
1176
|
+
children,
|
|
1177
|
+
...props
|
|
1178
|
+
}) {
|
|
1179
|
+
const isControlled = open !== void 0;
|
|
1180
|
+
const [uncontrolledOpen, setUncontrolledOpen] = (0, import_react6.useState)(true);
|
|
1181
|
+
const isOpen = isControlled ? open : uncontrolledOpen;
|
|
1182
|
+
if (process.env.NODE_ENV !== "production" && asChild && dismissible) {
|
|
1183
|
+
console.warn(
|
|
1184
|
+
"[Badge] `dismissible` is not supported with `asChild` because it would nest an interactive close button inside the consumer's element (invalid HTML). The close button will not render."
|
|
1185
|
+
);
|
|
1186
|
+
}
|
|
1187
|
+
if (!isOpen) return null;
|
|
1188
|
+
const Comp = asChild ? import_radix_ui7.Slot.Slot : "span";
|
|
1189
|
+
const showClose = dismissible && !asChild;
|
|
1190
|
+
const handleDismiss = () => {
|
|
1191
|
+
if (!isControlled) setUncontrolledOpen(false);
|
|
1192
|
+
onDismiss?.();
|
|
1193
|
+
};
|
|
1194
|
+
return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(Comp, { "data-slot": "badge", className: cn(badgeVariants({ variant, size }), className), ...props, children: [
|
|
1195
|
+
dot ? /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("span", { className: "ddga-badge__dot", "aria-hidden": "true" }) : null,
|
|
1196
|
+
startIcon ? /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("span", { className: "ddga-badge__icon", "aria-hidden": "true", children: startIcon }) : null,
|
|
1197
|
+
asChild ? (
|
|
1198
|
+
// children IS the consumer's single element (e.g. <a>). Slottable marks
|
|
1199
|
+
// where THAT element's original children should land — without it the
|
|
1200
|
+
// dot/icons would replace the link text.
|
|
1201
|
+
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_radix_ui7.Slot.Slottable, { children })
|
|
1202
|
+
) : children,
|
|
1203
|
+
endIcon ? /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("span", { className: "ddga-badge__icon", "aria-hidden": "true", children: endIcon }) : null,
|
|
1204
|
+
showClose ? /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
|
|
1205
|
+
"button",
|
|
1206
|
+
{
|
|
1207
|
+
type: "button",
|
|
1208
|
+
className: "ddga-badge__close",
|
|
1209
|
+
"aria-label": closeLabel,
|
|
1210
|
+
onClick: handleDismiss,
|
|
1211
|
+
"data-slot": "badge-close",
|
|
1212
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Close, { "aria-hidden": "true" })
|
|
1213
|
+
}
|
|
1214
|
+
) : null
|
|
1215
|
+
] });
|
|
1216
|
+
}
|
|
1217
|
+
|
|
1218
|
+
// src/components/Divider/Divider.tsx
|
|
1219
|
+
var import_class_variance_authority11 = require("class-variance-authority");
|
|
1220
|
+
var import_jsx_runtime13 = require("react/jsx-runtime");
|
|
1221
|
+
var dividerVariants = (0, import_class_variance_authority11.cva)("ddga-divider", {
|
|
1222
|
+
variants: {
|
|
1223
|
+
orientation: {
|
|
1224
|
+
horizontal: "ddga-divider--horizontal",
|
|
1225
|
+
vertical: "ddga-divider--vertical"
|
|
1226
|
+
},
|
|
1227
|
+
variant: {
|
|
1228
|
+
solid: "ddga-divider--solid",
|
|
1229
|
+
dashed: "ddga-divider--dashed"
|
|
1230
|
+
}
|
|
1231
|
+
},
|
|
1232
|
+
defaultVariants: {
|
|
1233
|
+
orientation: "horizontal",
|
|
1234
|
+
variant: "solid"
|
|
1235
|
+
}
|
|
1236
|
+
});
|
|
1237
|
+
function Divider({
|
|
1238
|
+
orientation = "horizontal",
|
|
1239
|
+
variant = "solid",
|
|
1240
|
+
labelPosition = "center",
|
|
1241
|
+
decorative = false,
|
|
1242
|
+
className,
|
|
1243
|
+
children,
|
|
1244
|
+
...props
|
|
1245
|
+
}) {
|
|
1246
|
+
const isLabeled = orientation === "horizontal" && children !== void 0 && children !== null && children !== "";
|
|
1247
|
+
const a11yProps = decorative ? { role: "none" } : {
|
|
1248
|
+
role: "separator",
|
|
1249
|
+
...orientation === "vertical" ? { "aria-orientation": "vertical" } : {}
|
|
1250
|
+
};
|
|
1251
|
+
return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
1252
|
+
"div",
|
|
1253
|
+
{
|
|
1254
|
+
"data-slot": "divider",
|
|
1255
|
+
"data-orientation": orientation,
|
|
1256
|
+
className: cn(
|
|
1257
|
+
dividerVariants({ orientation, variant }),
|
|
1258
|
+
isLabeled && "ddga-divider--labeled",
|
|
1259
|
+
isLabeled && `ddga-divider--label-${labelPosition}`,
|
|
1260
|
+
className
|
|
1261
|
+
),
|
|
1262
|
+
...a11yProps,
|
|
1263
|
+
...props,
|
|
1264
|
+
children: isLabeled ? /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("span", { className: "ddga-divider__label", children }) : null
|
|
1265
|
+
}
|
|
1266
|
+
);
|
|
1267
|
+
}
|
|
1268
|
+
|
|
1269
|
+
// src/components/Avatar/Avatar.tsx
|
|
1270
|
+
var import_react7 = require("react");
|
|
1271
|
+
var import_radix_ui8 = require("radix-ui");
|
|
1272
|
+
var import_class_variance_authority12 = require("class-variance-authority");
|
|
1273
|
+
var import_jsx_runtime14 = require("react/jsx-runtime");
|
|
1274
|
+
var avatarVariants = (0, import_class_variance_authority12.cva)("ddga-avatar", {
|
|
1275
|
+
variants: {
|
|
1276
|
+
size: {
|
|
1277
|
+
xs: "ddga-avatar--xs",
|
|
1278
|
+
sm: "ddga-avatar--sm",
|
|
1279
|
+
md: "ddga-avatar--md",
|
|
1280
|
+
lg: "ddga-avatar--lg",
|
|
1281
|
+
xl: "ddga-avatar--xl"
|
|
1282
|
+
},
|
|
1283
|
+
shape: {
|
|
1284
|
+
circle: "ddga-avatar--circle",
|
|
1285
|
+
square: "ddga-avatar--square"
|
|
1286
|
+
}
|
|
1287
|
+
},
|
|
1288
|
+
defaultVariants: {
|
|
1289
|
+
size: "md",
|
|
1290
|
+
shape: "circle"
|
|
1291
|
+
}
|
|
1292
|
+
});
|
|
1293
|
+
var fallbackVariants = (0, import_class_variance_authority12.cva)("ddga-avatar__fallback", {
|
|
1294
|
+
variants: {
|
|
1295
|
+
colorScheme: {
|
|
1296
|
+
default: "ddga-avatar__fallback--default",
|
|
1297
|
+
primary: "ddga-avatar__fallback--primary",
|
|
1298
|
+
secondary: "ddga-avatar__fallback--secondary",
|
|
1299
|
+
success: "ddga-avatar__fallback--success",
|
|
1300
|
+
warning: "ddga-avatar__fallback--warning",
|
|
1301
|
+
destructive: "ddga-avatar__fallback--destructive",
|
|
1302
|
+
info: "ddga-avatar__fallback--info"
|
|
1303
|
+
}
|
|
1304
|
+
},
|
|
1305
|
+
defaultVariants: {
|
|
1306
|
+
colorScheme: "default"
|
|
1307
|
+
}
|
|
1308
|
+
});
|
|
1309
|
+
function Avatar({ size, shape, status, statusLabel, className, children, ...props }) {
|
|
1310
|
+
return /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(
|
|
1311
|
+
import_radix_ui8.Avatar.Root,
|
|
1312
|
+
{
|
|
1313
|
+
"data-slot": "avatar",
|
|
1314
|
+
"data-status": status,
|
|
1315
|
+
className: cn(avatarVariants({ size, shape }), className),
|
|
1316
|
+
...props,
|
|
1317
|
+
children: [
|
|
1318
|
+
children,
|
|
1319
|
+
status ? /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
1320
|
+
"span",
|
|
1321
|
+
{
|
|
1322
|
+
className: cn("ddga-avatar__status", `ddga-avatar__status--${status}`),
|
|
1323
|
+
role: "status",
|
|
1324
|
+
"aria-label": statusLabel ?? status
|
|
1325
|
+
}
|
|
1326
|
+
) : null
|
|
1327
|
+
]
|
|
1328
|
+
}
|
|
1329
|
+
);
|
|
1330
|
+
}
|
|
1331
|
+
function AvatarImage({ className, ...props }) {
|
|
1332
|
+
return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
1333
|
+
import_radix_ui8.Avatar.Image,
|
|
1334
|
+
{
|
|
1335
|
+
"data-slot": "avatar-image",
|
|
1336
|
+
className: cn("ddga-avatar__image", className),
|
|
1337
|
+
...props
|
|
1338
|
+
}
|
|
1339
|
+
);
|
|
1340
|
+
}
|
|
1341
|
+
function AvatarFallback({ colorScheme, className, ...props }) {
|
|
1342
|
+
return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
1343
|
+
import_radix_ui8.Avatar.Fallback,
|
|
1344
|
+
{
|
|
1345
|
+
"data-slot": "avatar-fallback",
|
|
1346
|
+
"data-color-scheme": colorScheme ?? "default",
|
|
1347
|
+
className: cn(fallbackVariants({ colorScheme }), className),
|
|
1348
|
+
...props
|
|
1349
|
+
}
|
|
1350
|
+
);
|
|
1351
|
+
}
|
|
1352
|
+
function AvatarGroup({ max, size, shape, className, children, ...props }) {
|
|
1353
|
+
const all = import_react7.Children.toArray(children).filter(import_react7.isValidElement);
|
|
1354
|
+
const visible = max !== void 0 && all.length > max ? all.slice(0, max) : all;
|
|
1355
|
+
const overflow = max !== void 0 ? Math.max(0, all.length - max) : 0;
|
|
1356
|
+
const cascaded = visible.map(
|
|
1357
|
+
(child, i) => (0, import_react7.cloneElement)(child, {
|
|
1358
|
+
key: child.key ?? i,
|
|
1359
|
+
size: child.props.size ?? size,
|
|
1360
|
+
shape: child.props.shape ?? shape
|
|
1361
|
+
})
|
|
1362
|
+
);
|
|
1363
|
+
return /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { "data-slot": "avatar-group", className: cn("ddga-avatar-group", className), ...props, children: [
|
|
1364
|
+
cascaded,
|
|
1365
|
+
overflow > 0 ? /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Avatar, { size, shape, "aria-label": `${overflow} more`, children: /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(AvatarFallback, { children: [
|
|
1366
|
+
"+",
|
|
1367
|
+
overflow
|
|
1368
|
+
] }) }) : null
|
|
1369
|
+
] });
|
|
1370
|
+
}
|
|
1371
|
+
|
|
1372
|
+
// src/components/Tooltip/Tooltip.tsx
|
|
1373
|
+
var import_react8 = require("react");
|
|
1374
|
+
var import_radix_ui9 = require("radix-ui");
|
|
1375
|
+
var import_class_variance_authority13 = require("class-variance-authority");
|
|
1376
|
+
var import_jsx_runtime15 = require("react/jsx-runtime");
|
|
1377
|
+
var tooltipContentVariants = (0, import_class_variance_authority13.cva)("ddga-tooltip", {
|
|
1378
|
+
variants: {
|
|
1379
|
+
size: {
|
|
1380
|
+
sm: "ddga-tooltip--sm",
|
|
1381
|
+
md: "ddga-tooltip--md"
|
|
1382
|
+
}
|
|
1383
|
+
},
|
|
1384
|
+
defaultVariants: {
|
|
1385
|
+
size: "md"
|
|
1386
|
+
}
|
|
1387
|
+
});
|
|
1388
|
+
function Tooltip(props) {
|
|
1389
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_radix_ui9.Tooltip.Root, { ...props });
|
|
1390
|
+
}
|
|
1391
|
+
function TooltipTrigger({ className, ...props }) {
|
|
1392
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_radix_ui9.Tooltip.Trigger, { "data-slot": "tooltip-trigger", className, ...props });
|
|
1393
|
+
}
|
|
1394
|
+
function TooltipContent({
|
|
1395
|
+
size,
|
|
1396
|
+
arrow = true,
|
|
1397
|
+
sideOffset = 6,
|
|
1398
|
+
className,
|
|
898
1399
|
children,
|
|
899
1400
|
...props
|
|
900
1401
|
}) {
|
|
901
|
-
const ctx = (0,
|
|
1402
|
+
const ctx = (0, import_react8.useContext)(DgaContext);
|
|
902
1403
|
const portalContainer = ctx?.rootEl ?? void 0;
|
|
903
|
-
return /* @__PURE__ */ (0,
|
|
904
|
-
|
|
1404
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_radix_ui9.Tooltip.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
|
|
1405
|
+
import_radix_ui9.Tooltip.Content,
|
|
905
1406
|
{
|
|
906
1407
|
"data-slot": "tooltip-content",
|
|
907
1408
|
sideOffset,
|
|
@@ -909,18 +1410,18 @@ function TooltipContent({
|
|
|
909
1410
|
...props,
|
|
910
1411
|
children: [
|
|
911
1412
|
children,
|
|
912
|
-
arrow ? /* @__PURE__ */ (0,
|
|
1413
|
+
arrow ? /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_radix_ui9.Tooltip.Arrow, { className: "ddga-tooltip__arrow" }) : null
|
|
913
1414
|
]
|
|
914
1415
|
}
|
|
915
1416
|
) });
|
|
916
1417
|
}
|
|
917
1418
|
|
|
918
1419
|
// src/components/Alert/Alert.tsx
|
|
919
|
-
var
|
|
920
|
-
var
|
|
921
|
-
var
|
|
922
|
-
var
|
|
923
|
-
var alertVariants = (0,
|
|
1420
|
+
var import_react9 = require("react");
|
|
1421
|
+
var import_radix_ui10 = require("radix-ui");
|
|
1422
|
+
var import_class_variance_authority14 = require("class-variance-authority");
|
|
1423
|
+
var import_jsx_runtime16 = require("react/jsx-runtime");
|
|
1424
|
+
var alertVariants = (0, import_class_variance_authority14.cva)("ddga-alert", {
|
|
924
1425
|
variants: {
|
|
925
1426
|
variant: {
|
|
926
1427
|
info: "ddga-alert--info",
|
|
@@ -934,10 +1435,10 @@ var alertVariants = (0, import_class_variance_authority9.cva)("ddga-alert", {
|
|
|
934
1435
|
}
|
|
935
1436
|
});
|
|
936
1437
|
var DEFAULT_ICONS = {
|
|
937
|
-
info: /* @__PURE__ */ (0,
|
|
938
|
-
success: /* @__PURE__ */ (0,
|
|
939
|
-
warning: /* @__PURE__ */ (0,
|
|
940
|
-
destructive: /* @__PURE__ */ (0,
|
|
1438
|
+
info: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Info, { "aria-hidden": "true" }),
|
|
1439
|
+
success: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Check, { "aria-hidden": "true" }),
|
|
1440
|
+
warning: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(AlertTriangle, { "aria-hidden": "true" }),
|
|
1441
|
+
destructive: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(AlertCircle, { "aria-hidden": "true" })
|
|
941
1442
|
};
|
|
942
1443
|
function Alert({
|
|
943
1444
|
variant,
|
|
@@ -952,18 +1453,18 @@ function Alert({
|
|
|
952
1453
|
children,
|
|
953
1454
|
...props
|
|
954
1455
|
}) {
|
|
955
|
-
const [internalOpen, setInternalOpen] = (0,
|
|
1456
|
+
const [internalOpen, setInternalOpen] = (0, import_react9.useState)(true);
|
|
956
1457
|
const isControlled = controlledOpen !== void 0;
|
|
957
1458
|
const open = isControlled ? controlledOpen : internalOpen;
|
|
958
1459
|
if (!open) return null;
|
|
959
|
-
const Comp = asChild ?
|
|
1460
|
+
const Comp = asChild ? import_radix_ui10.Slot.Slot : "div";
|
|
960
1461
|
const resolvedIcon = icon === false ? null : icon !== void 0 ? icon : DEFAULT_ICONS[variant ?? "info"];
|
|
961
1462
|
const liveProps = live === "assertive" ? { role: "alert", "aria-live": "assertive" } : live === "polite" ? { role: "status", "aria-live": "polite" } : {};
|
|
962
1463
|
function handleDismiss() {
|
|
963
1464
|
if (!isControlled) setInternalOpen(false);
|
|
964
1465
|
onDismiss?.();
|
|
965
1466
|
}
|
|
966
|
-
return /* @__PURE__ */ (0,
|
|
1467
|
+
return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
|
|
967
1468
|
Comp,
|
|
968
1469
|
{
|
|
969
1470
|
"data-slot": "alert",
|
|
@@ -972,20 +1473,20 @@ function Alert({
|
|
|
972
1473
|
...liveProps,
|
|
973
1474
|
...props,
|
|
974
1475
|
children: [
|
|
975
|
-
resolvedIcon ? /* @__PURE__ */ (0,
|
|
1476
|
+
resolvedIcon ? /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { className: "ddga-alert__icon", children: resolvedIcon }) : null,
|
|
976
1477
|
asChild ? (
|
|
977
1478
|
// Slot mode: the consumer's element receives the children body.
|
|
978
1479
|
// Title/description are nested by the consumer.
|
|
979
|
-
/* @__PURE__ */ (0,
|
|
980
|
-
) : /* @__PURE__ */ (0,
|
|
981
|
-
dismissible ? /* @__PURE__ */ (0,
|
|
1480
|
+
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_radix_ui10.Slot.Slottable, { children })
|
|
1481
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "ddga-alert__body", children }),
|
|
1482
|
+
dismissible ? /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
982
1483
|
"button",
|
|
983
1484
|
{
|
|
984
1485
|
type: "button",
|
|
985
1486
|
className: "ddga-alert__close",
|
|
986
1487
|
"aria-label": closeLabel,
|
|
987
1488
|
onClick: handleDismiss,
|
|
988
|
-
children: /* @__PURE__ */ (0,
|
|
1489
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Close, { "aria-hidden": "true" })
|
|
989
1490
|
}
|
|
990
1491
|
) : null
|
|
991
1492
|
]
|
|
@@ -993,12 +1494,12 @@ function Alert({
|
|
|
993
1494
|
);
|
|
994
1495
|
}
|
|
995
1496
|
function AlertTitle({ asChild, className, ...props }) {
|
|
996
|
-
const Comp = asChild ?
|
|
997
|
-
return /* @__PURE__ */ (0,
|
|
1497
|
+
const Comp = asChild ? import_radix_ui10.Slot.Slot : "h5";
|
|
1498
|
+
return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Comp, { "data-slot": "alert-title", className: cn("ddga-alert__title", className), ...props });
|
|
998
1499
|
}
|
|
999
1500
|
function AlertDescription({ asChild, className, ...props }) {
|
|
1000
|
-
const Comp = asChild ?
|
|
1001
|
-
return /* @__PURE__ */ (0,
|
|
1501
|
+
const Comp = asChild ? import_radix_ui10.Slot.Slot : "p";
|
|
1502
|
+
return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
1002
1503
|
Comp,
|
|
1003
1504
|
{
|
|
1004
1505
|
"data-slot": "alert-description",
|
|
@@ -1009,11 +1510,11 @@ function AlertDescription({ asChild, className, ...props }) {
|
|
|
1009
1510
|
}
|
|
1010
1511
|
|
|
1011
1512
|
// src/components/Modal/Modal.tsx
|
|
1012
|
-
var
|
|
1013
|
-
var
|
|
1014
|
-
var
|
|
1015
|
-
var
|
|
1016
|
-
var modalContentVariants = (0,
|
|
1513
|
+
var import_react10 = require("react");
|
|
1514
|
+
var import_radix_ui11 = require("radix-ui");
|
|
1515
|
+
var import_class_variance_authority15 = require("class-variance-authority");
|
|
1516
|
+
var import_jsx_runtime17 = require("react/jsx-runtime");
|
|
1517
|
+
var modalContentVariants = (0, import_class_variance_authority15.cva)("ddga-modal", {
|
|
1017
1518
|
variants: {
|
|
1018
1519
|
size: {
|
|
1019
1520
|
sm: "ddga-modal--sm",
|
|
@@ -1028,10 +1529,10 @@ var modalContentVariants = (0, import_class_variance_authority10.cva)("ddga-moda
|
|
|
1028
1529
|
}
|
|
1029
1530
|
});
|
|
1030
1531
|
function Modal(props) {
|
|
1031
|
-
return /* @__PURE__ */ (0,
|
|
1532
|
+
return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_radix_ui11.Dialog.Root, { ...props });
|
|
1032
1533
|
}
|
|
1033
1534
|
function ModalTrigger({ className, ...props }) {
|
|
1034
|
-
return /* @__PURE__ */ (0,
|
|
1535
|
+
return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_radix_ui11.Dialog.Trigger, { "data-slot": "modal-trigger", className, ...props });
|
|
1035
1536
|
}
|
|
1036
1537
|
function ModalContent({
|
|
1037
1538
|
size,
|
|
@@ -1041,25 +1542,25 @@ function ModalContent({
|
|
|
1041
1542
|
children,
|
|
1042
1543
|
...props
|
|
1043
1544
|
}) {
|
|
1044
|
-
const ctx = (0,
|
|
1545
|
+
const ctx = (0, import_react10.useContext)(DgaContext);
|
|
1045
1546
|
const portalContainer = ctx?.rootEl ?? void 0;
|
|
1046
|
-
return /* @__PURE__ */ (0,
|
|
1047
|
-
/* @__PURE__ */ (0,
|
|
1048
|
-
/* @__PURE__ */ (0,
|
|
1049
|
-
|
|
1547
|
+
return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_radix_ui11.Dialog.Portal, { container: portalContainer, children: [
|
|
1548
|
+
/* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_radix_ui11.Dialog.Overlay, { className: "ddga-modal__overlay", "data-slot": "modal-overlay" }),
|
|
1549
|
+
/* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
|
|
1550
|
+
import_radix_ui11.Dialog.Content,
|
|
1050
1551
|
{
|
|
1051
1552
|
"data-slot": "modal-content",
|
|
1052
1553
|
className: cn(modalContentVariants({ size }), className),
|
|
1053
1554
|
...props,
|
|
1054
1555
|
children: [
|
|
1055
1556
|
children,
|
|
1056
|
-
showCloseButton ? /* @__PURE__ */ (0,
|
|
1057
|
-
|
|
1557
|
+
showCloseButton ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
|
|
1558
|
+
import_radix_ui11.Dialog.Close,
|
|
1058
1559
|
{
|
|
1059
1560
|
className: "ddga-modal__close",
|
|
1060
1561
|
"aria-label": closeLabel,
|
|
1061
1562
|
"data-slot": "modal-close-x",
|
|
1062
|
-
children: /* @__PURE__ */ (0,
|
|
1563
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Close, { "aria-hidden": "true" })
|
|
1063
1564
|
}
|
|
1064
1565
|
) : null
|
|
1065
1566
|
]
|
|
@@ -1068,12 +1569,12 @@ function ModalContent({
|
|
|
1068
1569
|
] });
|
|
1069
1570
|
}
|
|
1070
1571
|
function ModalHeader({ asChild, className, ...props }) {
|
|
1071
|
-
const Comp = asChild ?
|
|
1072
|
-
return /* @__PURE__ */ (0,
|
|
1572
|
+
const Comp = asChild ? import_radix_ui11.Slot.Slot : "div";
|
|
1573
|
+
return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Comp, { "data-slot": "modal-header", className: cn("ddga-modal__header", className), ...props });
|
|
1073
1574
|
}
|
|
1074
1575
|
function ModalTitle({ asChild, className, ...props }) {
|
|
1075
|
-
return /* @__PURE__ */ (0,
|
|
1076
|
-
|
|
1576
|
+
return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
|
|
1577
|
+
import_radix_ui11.Dialog.Title,
|
|
1077
1578
|
{
|
|
1078
1579
|
asChild,
|
|
1079
1580
|
"data-slot": "modal-title",
|
|
@@ -1083,8 +1584,8 @@ function ModalTitle({ asChild, className, ...props }) {
|
|
|
1083
1584
|
);
|
|
1084
1585
|
}
|
|
1085
1586
|
function ModalDescription({ asChild, className, ...props }) {
|
|
1086
|
-
return /* @__PURE__ */ (0,
|
|
1087
|
-
|
|
1587
|
+
return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
|
|
1588
|
+
import_radix_ui11.Dialog.Description,
|
|
1088
1589
|
{
|
|
1089
1590
|
asChild,
|
|
1090
1591
|
"data-slot": "modal-description",
|
|
@@ -1094,20 +1595,20 @@ function ModalDescription({ asChild, className, ...props }) {
|
|
|
1094
1595
|
);
|
|
1095
1596
|
}
|
|
1096
1597
|
function ModalFooter({ asChild, className, ...props }) {
|
|
1097
|
-
const Comp = asChild ?
|
|
1098
|
-
return /* @__PURE__ */ (0,
|
|
1598
|
+
const Comp = asChild ? import_radix_ui11.Slot.Slot : "div";
|
|
1599
|
+
return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Comp, { "data-slot": "modal-footer", className: cn("ddga-modal__footer", className), ...props });
|
|
1099
1600
|
}
|
|
1100
1601
|
function ModalClose({ className, ...props }) {
|
|
1101
|
-
return /* @__PURE__ */ (0,
|
|
1602
|
+
return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_radix_ui11.Dialog.Close, { "data-slot": "modal-close", className, ...props });
|
|
1102
1603
|
}
|
|
1103
1604
|
|
|
1104
1605
|
// src/components/Toast/Toast.tsx
|
|
1105
|
-
var
|
|
1106
|
-
var
|
|
1107
|
-
var
|
|
1606
|
+
var import_react12 = require("react");
|
|
1607
|
+
var import_radix_ui12 = require("radix-ui");
|
|
1608
|
+
var import_class_variance_authority16 = require("class-variance-authority");
|
|
1108
1609
|
|
|
1109
1610
|
// src/components/Toast/toast-store.ts
|
|
1110
|
-
var
|
|
1611
|
+
var import_react11 = require("react");
|
|
1111
1612
|
var EXIT_ANIM_MS = 200;
|
|
1112
1613
|
function createToastStore() {
|
|
1113
1614
|
let toasts = [];
|
|
@@ -1192,8 +1693,8 @@ function createToast(store) {
|
|
|
1192
1693
|
var toast = createToast(toastStore);
|
|
1193
1694
|
|
|
1194
1695
|
// src/components/Toast/Toast.tsx
|
|
1195
|
-
var
|
|
1196
|
-
var toastVariants = (0,
|
|
1696
|
+
var import_jsx_runtime18 = require("react/jsx-runtime");
|
|
1697
|
+
var toastVariants = (0, import_class_variance_authority16.cva)("ddga-toast", {
|
|
1197
1698
|
variants: {
|
|
1198
1699
|
variant: {
|
|
1199
1700
|
default: "ddga-toast--default",
|
|
@@ -1207,7 +1708,7 @@ var toastVariants = (0, import_class_variance_authority11.cva)("ddga-toast", {
|
|
|
1207
1708
|
variant: "default"
|
|
1208
1709
|
}
|
|
1209
1710
|
});
|
|
1210
|
-
var toastViewportVariants = (0,
|
|
1711
|
+
var toastViewportVariants = (0, import_class_variance_authority16.cva)("ddga-toast-viewport", {
|
|
1211
1712
|
variants: {
|
|
1212
1713
|
position: {
|
|
1213
1714
|
"top-start": "ddga-toast-viewport--top-start",
|
|
@@ -1227,10 +1728,10 @@ var toastViewportVariants = (0, import_class_variance_authority11.cva)("ddga-toa
|
|
|
1227
1728
|
});
|
|
1228
1729
|
var DEFAULT_ICONS2 = {
|
|
1229
1730
|
default: null,
|
|
1230
|
-
info: /* @__PURE__ */ (0,
|
|
1231
|
-
success: /* @__PURE__ */ (0,
|
|
1232
|
-
warning: /* @__PURE__ */ (0,
|
|
1233
|
-
destructive: /* @__PURE__ */ (0,
|
|
1731
|
+
info: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Info, { "aria-hidden": "true" }),
|
|
1732
|
+
success: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Check, { "aria-hidden": "true" }),
|
|
1733
|
+
warning: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(AlertTriangle, { "aria-hidden": "true" }),
|
|
1734
|
+
destructive: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(AlertCircle, { "aria-hidden": "true" })
|
|
1234
1735
|
};
|
|
1235
1736
|
function Toaster({
|
|
1236
1737
|
position = "bottom-end",
|
|
@@ -1243,10 +1744,10 @@ function Toaster({
|
|
|
1243
1744
|
swipeDirection,
|
|
1244
1745
|
store = toastStore
|
|
1245
1746
|
}) {
|
|
1246
|
-
const toasts = (0,
|
|
1747
|
+
const toasts = (0, import_react12.useSyncExternalStore)(store.subscribe, store.getSnapshot, store.getSnapshot);
|
|
1247
1748
|
const resolvedSwipe = swipeDirection ?? (position.startsWith("top") ? "up" : "down");
|
|
1248
|
-
return /* @__PURE__ */ (0,
|
|
1249
|
-
toasts.map((t) => /* @__PURE__ */ (0,
|
|
1749
|
+
return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(import_radix_ui12.Toast.Provider, { duration, swipeDirection: resolvedSwipe, children: [
|
|
1750
|
+
toasts.map((t) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
1250
1751
|
ToastItem,
|
|
1251
1752
|
{
|
|
1252
1753
|
toast: t,
|
|
@@ -1257,8 +1758,8 @@ function Toaster({
|
|
|
1257
1758
|
},
|
|
1258
1759
|
t.id
|
|
1259
1760
|
)),
|
|
1260
|
-
/* @__PURE__ */ (0,
|
|
1261
|
-
|
|
1761
|
+
/* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
1762
|
+
import_radix_ui12.Toast.Viewport,
|
|
1262
1763
|
{
|
|
1263
1764
|
"data-slot": "toast-viewport",
|
|
1264
1765
|
"data-position": position,
|
|
@@ -1270,8 +1771,8 @@ function Toaster({
|
|
|
1270
1771
|
function ToastItem({ toast: t, store, closeButton, closeLabel, hideIcon }) {
|
|
1271
1772
|
const radixType = t.variant === "destructive" ? "foreground" : "background";
|
|
1272
1773
|
const icon = hideIcon ? null : DEFAULT_ICONS2[t.variant];
|
|
1273
|
-
return /* @__PURE__ */ (0,
|
|
1274
|
-
|
|
1774
|
+
return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
|
|
1775
|
+
import_radix_ui12.Toast.Root,
|
|
1275
1776
|
{
|
|
1276
1777
|
"data-slot": "toast",
|
|
1277
1778
|
"data-variant": t.variant,
|
|
@@ -1285,12 +1786,12 @@ function ToastItem({ toast: t, store, closeButton, closeLabel, hideIcon }) {
|
|
|
1285
1786
|
}
|
|
1286
1787
|
},
|
|
1287
1788
|
children: [
|
|
1288
|
-
icon ? /* @__PURE__ */ (0,
|
|
1289
|
-
/* @__PURE__ */ (0,
|
|
1290
|
-
t.title ? /* @__PURE__ */ (0,
|
|
1291
|
-
t.description ? /* @__PURE__ */ (0,
|
|
1292
|
-
t.action ? /* @__PURE__ */ (0,
|
|
1293
|
-
|
|
1789
|
+
icon ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "ddga-toast__icon", children: icon }) : null,
|
|
1790
|
+
/* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: "ddga-toast__body", children: [
|
|
1791
|
+
t.title ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_radix_ui12.Toast.Title, { className: "ddga-toast__title", children: t.title }) : null,
|
|
1792
|
+
t.description ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_radix_ui12.Toast.Description, { className: "ddga-toast__description", children: t.description }) : null,
|
|
1793
|
+
t.action ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
1794
|
+
import_radix_ui12.Toast.Action,
|
|
1294
1795
|
{
|
|
1295
1796
|
className: "ddga-toast__action",
|
|
1296
1797
|
altText: t.action.altText ?? (typeof t.action.label === "string" ? t.action.label : "Action"),
|
|
@@ -1302,17 +1803,1122 @@ function ToastItem({ toast: t, store, closeButton, closeLabel, hideIcon }) {
|
|
|
1302
1803
|
}
|
|
1303
1804
|
) : null
|
|
1304
1805
|
] }),
|
|
1305
|
-
closeButton ? /* @__PURE__ */ (0,
|
|
1806
|
+
closeButton ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_radix_ui12.Toast.Close, { className: "ddga-toast__close", "aria-label": closeLabel, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Close, { "aria-hidden": "true" }) }) : null
|
|
1306
1807
|
]
|
|
1307
1808
|
}
|
|
1308
1809
|
);
|
|
1309
1810
|
}
|
|
1310
1811
|
|
|
1311
|
-
// src/
|
|
1312
|
-
var
|
|
1313
|
-
var
|
|
1314
|
-
var
|
|
1315
|
-
var
|
|
1812
|
+
// src/components/Tabs/Tabs.tsx
|
|
1813
|
+
var import_radix_ui13 = require("radix-ui");
|
|
1814
|
+
var import_class_variance_authority17 = require("class-variance-authority");
|
|
1815
|
+
var import_jsx_runtime19 = require("react/jsx-runtime");
|
|
1816
|
+
var tabsVariants = (0, import_class_variance_authority17.cva)("ddga-tabs", {
|
|
1817
|
+
variants: {
|
|
1818
|
+
variant: {
|
|
1819
|
+
line: "ddga-tabs--line",
|
|
1820
|
+
pill: "ddga-tabs--pill"
|
|
1821
|
+
},
|
|
1822
|
+
size: {
|
|
1823
|
+
sm: "ddga-tabs--sm",
|
|
1824
|
+
md: "ddga-tabs--md"
|
|
1825
|
+
}
|
|
1826
|
+
},
|
|
1827
|
+
defaultVariants: {
|
|
1828
|
+
variant: "line",
|
|
1829
|
+
size: "md"
|
|
1830
|
+
}
|
|
1831
|
+
});
|
|
1832
|
+
var tabsListVariants = (0, import_class_variance_authority17.cva)("ddga-tabs__list", {
|
|
1833
|
+
variants: {
|
|
1834
|
+
fullWidth: {
|
|
1835
|
+
true: "ddga-tabs__list--full-width"
|
|
1836
|
+
}
|
|
1837
|
+
}
|
|
1838
|
+
});
|
|
1839
|
+
function Tabs({ variant, size, className, ...props }) {
|
|
1840
|
+
return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
1841
|
+
import_radix_ui13.Tabs.Root,
|
|
1842
|
+
{
|
|
1843
|
+
"data-slot": "tabs",
|
|
1844
|
+
className: cn(tabsVariants({ variant, size }), className),
|
|
1845
|
+
...props
|
|
1846
|
+
}
|
|
1847
|
+
);
|
|
1848
|
+
}
|
|
1849
|
+
function TabsList({ fullWidth, className, ...props }) {
|
|
1850
|
+
return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
1851
|
+
import_radix_ui13.Tabs.List,
|
|
1852
|
+
{
|
|
1853
|
+
"data-slot": "tabs-list",
|
|
1854
|
+
className: cn(tabsListVariants({ fullWidth }), className),
|
|
1855
|
+
...props
|
|
1856
|
+
}
|
|
1857
|
+
);
|
|
1858
|
+
}
|
|
1859
|
+
function TabsTrigger({ className, ...props }) {
|
|
1860
|
+
return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
1861
|
+
import_radix_ui13.Tabs.Trigger,
|
|
1862
|
+
{
|
|
1863
|
+
"data-slot": "tabs-trigger",
|
|
1864
|
+
className: cn("ddga-tabs__trigger", className),
|
|
1865
|
+
...props
|
|
1866
|
+
}
|
|
1867
|
+
);
|
|
1868
|
+
}
|
|
1869
|
+
function TabsContent({ className, ...props }) {
|
|
1870
|
+
return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
1871
|
+
import_radix_ui13.Tabs.Content,
|
|
1872
|
+
{
|
|
1873
|
+
"data-slot": "tabs-content",
|
|
1874
|
+
className: cn("ddga-tabs__content", className),
|
|
1875
|
+
...props
|
|
1876
|
+
}
|
|
1877
|
+
);
|
|
1878
|
+
}
|
|
1879
|
+
|
|
1880
|
+
// src/components/Breadcrumb/Breadcrumb.tsx
|
|
1881
|
+
var import_radix_ui14 = require("radix-ui");
|
|
1882
|
+
var import_class_variance_authority18 = require("class-variance-authority");
|
|
1883
|
+
var import_jsx_runtime20 = require("react/jsx-runtime");
|
|
1884
|
+
var breadcrumbVariants = (0, import_class_variance_authority18.cva)("ddga-breadcrumb", {
|
|
1885
|
+
variants: {
|
|
1886
|
+
size: {
|
|
1887
|
+
sm: "ddga-breadcrumb--sm",
|
|
1888
|
+
md: "ddga-breadcrumb--md"
|
|
1889
|
+
}
|
|
1890
|
+
},
|
|
1891
|
+
defaultVariants: {
|
|
1892
|
+
size: "md"
|
|
1893
|
+
}
|
|
1894
|
+
});
|
|
1895
|
+
function Breadcrumb({ size, className, ...props }) {
|
|
1896
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
1897
|
+
"nav",
|
|
1898
|
+
{
|
|
1899
|
+
"aria-label": "Breadcrumb",
|
|
1900
|
+
"data-slot": "breadcrumb",
|
|
1901
|
+
className: cn(breadcrumbVariants({ size }), className),
|
|
1902
|
+
...props
|
|
1903
|
+
}
|
|
1904
|
+
);
|
|
1905
|
+
}
|
|
1906
|
+
function BreadcrumbList({ className, ...props }) {
|
|
1907
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("ol", { "data-slot": "breadcrumb-list", className: cn("ddga-breadcrumb__list", className), ...props });
|
|
1908
|
+
}
|
|
1909
|
+
function BreadcrumbItem({ className, ...props }) {
|
|
1910
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("li", { "data-slot": "breadcrumb-item", className: cn("ddga-breadcrumb__item", className), ...props });
|
|
1911
|
+
}
|
|
1912
|
+
function BreadcrumbLink({ asChild, className, ...props }) {
|
|
1913
|
+
const Comp = asChild ? import_radix_ui14.Slot.Slot : "a";
|
|
1914
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
1915
|
+
Comp,
|
|
1916
|
+
{
|
|
1917
|
+
"data-slot": "breadcrumb-link",
|
|
1918
|
+
className: cn("ddga-breadcrumb__link", className),
|
|
1919
|
+
...props
|
|
1920
|
+
}
|
|
1921
|
+
);
|
|
1922
|
+
}
|
|
1923
|
+
function BreadcrumbPage({ asChild, className, ...props }) {
|
|
1924
|
+
const Comp = asChild ? import_radix_ui14.Slot.Slot : "span";
|
|
1925
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
1926
|
+
Comp,
|
|
1927
|
+
{
|
|
1928
|
+
"aria-current": "page",
|
|
1929
|
+
"data-slot": "breadcrumb-page",
|
|
1930
|
+
className: cn("ddga-breadcrumb__page", className),
|
|
1931
|
+
...props
|
|
1932
|
+
}
|
|
1933
|
+
);
|
|
1934
|
+
}
|
|
1935
|
+
function BreadcrumbSeparator({ children, className, ...props }) {
|
|
1936
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
1937
|
+
"li",
|
|
1938
|
+
{
|
|
1939
|
+
role: "presentation",
|
|
1940
|
+
"aria-hidden": "true",
|
|
1941
|
+
"data-slot": "breadcrumb-separator",
|
|
1942
|
+
className: cn("ddga-breadcrumb__separator", className),
|
|
1943
|
+
...props,
|
|
1944
|
+
children: children ?? /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(ChevronRight, {})
|
|
1945
|
+
}
|
|
1946
|
+
);
|
|
1947
|
+
}
|
|
1948
|
+
function BreadcrumbEllipsis({ className, ...props }) {
|
|
1949
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
1950
|
+
"span",
|
|
1951
|
+
{
|
|
1952
|
+
role: "presentation",
|
|
1953
|
+
"aria-hidden": "true",
|
|
1954
|
+
"data-slot": "breadcrumb-ellipsis",
|
|
1955
|
+
className: cn("ddga-breadcrumb__ellipsis", className),
|
|
1956
|
+
...props,
|
|
1957
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(MoreHorizontal, {})
|
|
1958
|
+
}
|
|
1959
|
+
);
|
|
1960
|
+
}
|
|
1961
|
+
|
|
1962
|
+
// src/components/Pagination/Pagination.tsx
|
|
1963
|
+
var import_radix_ui15 = require("radix-ui");
|
|
1964
|
+
var import_class_variance_authority19 = require("class-variance-authority");
|
|
1965
|
+
var import_jsx_runtime21 = require("react/jsx-runtime");
|
|
1966
|
+
var paginationVariants = (0, import_class_variance_authority19.cva)("ddga-pagination", {
|
|
1967
|
+
variants: {
|
|
1968
|
+
size: {
|
|
1969
|
+
sm: "ddga-pagination--sm",
|
|
1970
|
+
md: "ddga-pagination--md"
|
|
1971
|
+
}
|
|
1972
|
+
},
|
|
1973
|
+
defaultVariants: {
|
|
1974
|
+
size: "md"
|
|
1975
|
+
}
|
|
1976
|
+
});
|
|
1977
|
+
var paginationLinkVariants = (0, import_class_variance_authority19.cva)("ddga-pagination__link", {
|
|
1978
|
+
variants: {
|
|
1979
|
+
isActive: {
|
|
1980
|
+
true: "ddga-pagination__link--active"
|
|
1981
|
+
}
|
|
1982
|
+
}
|
|
1983
|
+
});
|
|
1984
|
+
function Pagination({ size, className, ...props }) {
|
|
1985
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
1986
|
+
"nav",
|
|
1987
|
+
{
|
|
1988
|
+
"aria-label": "pagination",
|
|
1989
|
+
"data-slot": "pagination",
|
|
1990
|
+
className: cn(paginationVariants({ size }), className),
|
|
1991
|
+
...props
|
|
1992
|
+
}
|
|
1993
|
+
);
|
|
1994
|
+
}
|
|
1995
|
+
function PaginationContent({ className, ...props }) {
|
|
1996
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
1997
|
+
"ul",
|
|
1998
|
+
{
|
|
1999
|
+
"data-slot": "pagination-content",
|
|
2000
|
+
className: cn("ddga-pagination__content", className),
|
|
2001
|
+
...props
|
|
2002
|
+
}
|
|
2003
|
+
);
|
|
2004
|
+
}
|
|
2005
|
+
function PaginationItem({ className, ...props }) {
|
|
2006
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("li", { "data-slot": "pagination-item", className: cn("ddga-pagination__item", className), ...props });
|
|
2007
|
+
}
|
|
2008
|
+
function PaginationLink({ asChild, isActive, className, ...props }) {
|
|
2009
|
+
const Comp = asChild ? import_radix_ui15.Slot.Slot : "a";
|
|
2010
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
2011
|
+
Comp,
|
|
2012
|
+
{
|
|
2013
|
+
"aria-current": isActive ? "page" : void 0,
|
|
2014
|
+
"data-slot": "pagination-link",
|
|
2015
|
+
"data-active": isActive ? "" : void 0,
|
|
2016
|
+
className: cn(paginationLinkVariants({ isActive }), className),
|
|
2017
|
+
...props
|
|
2018
|
+
}
|
|
2019
|
+
);
|
|
2020
|
+
}
|
|
2021
|
+
function PaginationPrevious({
|
|
2022
|
+
label = "Previous",
|
|
2023
|
+
className,
|
|
2024
|
+
children,
|
|
2025
|
+
asChild,
|
|
2026
|
+
...props
|
|
2027
|
+
}) {
|
|
2028
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
2029
|
+
PaginationLink,
|
|
2030
|
+
{
|
|
2031
|
+
asChild,
|
|
2032
|
+
"aria-label": label,
|
|
2033
|
+
"data-slot": "pagination-previous",
|
|
2034
|
+
className: cn("ddga-pagination__nav", "ddga-pagination__nav--previous", className),
|
|
2035
|
+
...props,
|
|
2036
|
+
children: children ?? /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(import_jsx_runtime21.Fragment, { children: [
|
|
2037
|
+
/* @__PURE__ */ (0, import_jsx_runtime21.jsx)(ChevronRight, { className: "ddga-pagination__nav-icon ddga-pagination__nav-icon--previous" }),
|
|
2038
|
+
/* @__PURE__ */ (0, import_jsx_runtime21.jsx)("span", { children: label })
|
|
2039
|
+
] })
|
|
2040
|
+
}
|
|
2041
|
+
);
|
|
2042
|
+
}
|
|
2043
|
+
function PaginationNext({
|
|
2044
|
+
label = "Next",
|
|
2045
|
+
className,
|
|
2046
|
+
children,
|
|
2047
|
+
asChild,
|
|
2048
|
+
...props
|
|
2049
|
+
}) {
|
|
2050
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
2051
|
+
PaginationLink,
|
|
2052
|
+
{
|
|
2053
|
+
asChild,
|
|
2054
|
+
"aria-label": label,
|
|
2055
|
+
"data-slot": "pagination-next",
|
|
2056
|
+
className: cn("ddga-pagination__nav", "ddga-pagination__nav--next", className),
|
|
2057
|
+
...props,
|
|
2058
|
+
children: children ?? /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(import_jsx_runtime21.Fragment, { children: [
|
|
2059
|
+
/* @__PURE__ */ (0, import_jsx_runtime21.jsx)("span", { children: label }),
|
|
2060
|
+
/* @__PURE__ */ (0, import_jsx_runtime21.jsx)(ChevronRight, { className: "ddga-pagination__nav-icon ddga-pagination__nav-icon--next" })
|
|
2061
|
+
] })
|
|
2062
|
+
}
|
|
2063
|
+
);
|
|
2064
|
+
}
|
|
2065
|
+
function PaginationEllipsis({ className, ...props }) {
|
|
2066
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
2067
|
+
"span",
|
|
2068
|
+
{
|
|
2069
|
+
role: "presentation",
|
|
2070
|
+
"aria-hidden": "true",
|
|
2071
|
+
"data-slot": "pagination-ellipsis",
|
|
2072
|
+
className: cn("ddga-pagination__ellipsis", className),
|
|
2073
|
+
...props,
|
|
2074
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(MoreHorizontal, {})
|
|
2075
|
+
}
|
|
2076
|
+
);
|
|
2077
|
+
}
|
|
2078
|
+
|
|
2079
|
+
// src/components/Accordion/Accordion.tsx
|
|
2080
|
+
var import_radix_ui16 = require("radix-ui");
|
|
2081
|
+
var import_class_variance_authority20 = require("class-variance-authority");
|
|
2082
|
+
var import_jsx_runtime22 = require("react/jsx-runtime");
|
|
2083
|
+
var accordionVariants = (0, import_class_variance_authority20.cva)("ddga-accordion", {
|
|
2084
|
+
variants: {
|
|
2085
|
+
size: {
|
|
2086
|
+
sm: "ddga-accordion--sm",
|
|
2087
|
+
md: "ddga-accordion--md"
|
|
2088
|
+
}
|
|
2089
|
+
},
|
|
2090
|
+
defaultVariants: {
|
|
2091
|
+
size: "md"
|
|
2092
|
+
}
|
|
2093
|
+
});
|
|
2094
|
+
function Accordion({ size, className, ...props }) {
|
|
2095
|
+
return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
|
|
2096
|
+
import_radix_ui16.Accordion.Root,
|
|
2097
|
+
{
|
|
2098
|
+
"data-slot": "accordion",
|
|
2099
|
+
className: cn(accordionVariants({ size }), className),
|
|
2100
|
+
...props
|
|
2101
|
+
}
|
|
2102
|
+
);
|
|
2103
|
+
}
|
|
2104
|
+
function AccordionItem({ className, ...props }) {
|
|
2105
|
+
return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
|
|
2106
|
+
import_radix_ui16.Accordion.Item,
|
|
2107
|
+
{
|
|
2108
|
+
"data-slot": "accordion-item",
|
|
2109
|
+
className: cn("ddga-accordion__item", className),
|
|
2110
|
+
...props
|
|
2111
|
+
}
|
|
2112
|
+
);
|
|
2113
|
+
}
|
|
2114
|
+
function AccordionTrigger({ className, children, ...props }) {
|
|
2115
|
+
return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_radix_ui16.Accordion.Header, { className: "ddga-accordion__header", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(
|
|
2116
|
+
import_radix_ui16.Accordion.Trigger,
|
|
2117
|
+
{
|
|
2118
|
+
"data-slot": "accordion-trigger",
|
|
2119
|
+
className: cn("ddga-accordion__trigger", className),
|
|
2120
|
+
...props,
|
|
2121
|
+
children: [
|
|
2122
|
+
children,
|
|
2123
|
+
/* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
|
|
2124
|
+
ChevronDown,
|
|
2125
|
+
{
|
|
2126
|
+
"aria-hidden": "true",
|
|
2127
|
+
className: "ddga-accordion__chevron",
|
|
2128
|
+
"data-slot": "accordion-chevron"
|
|
2129
|
+
}
|
|
2130
|
+
)
|
|
2131
|
+
]
|
|
2132
|
+
}
|
|
2133
|
+
) });
|
|
2134
|
+
}
|
|
2135
|
+
function AccordionContent({ className, children, ...props }) {
|
|
2136
|
+
return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
|
|
2137
|
+
import_radix_ui16.Accordion.Content,
|
|
2138
|
+
{
|
|
2139
|
+
"data-slot": "accordion-content",
|
|
2140
|
+
className: cn("ddga-accordion__content", className),
|
|
2141
|
+
...props,
|
|
2142
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "ddga-accordion__content-inner", children })
|
|
2143
|
+
}
|
|
2144
|
+
);
|
|
2145
|
+
}
|
|
2146
|
+
|
|
2147
|
+
// src/components/Steps/Steps.tsx
|
|
2148
|
+
var import_class_variance_authority21 = require("class-variance-authority");
|
|
2149
|
+
var import_jsx_runtime23 = require("react/jsx-runtime");
|
|
2150
|
+
var stepsVariants = (0, import_class_variance_authority21.cva)("ddga-steps", {
|
|
2151
|
+
variants: {
|
|
2152
|
+
size: {
|
|
2153
|
+
sm: "ddga-steps--sm",
|
|
2154
|
+
md: "ddga-steps--md"
|
|
2155
|
+
},
|
|
2156
|
+
orientation: {
|
|
2157
|
+
horizontal: "ddga-steps--horizontal",
|
|
2158
|
+
vertical: "ddga-steps--vertical"
|
|
2159
|
+
}
|
|
2160
|
+
},
|
|
2161
|
+
defaultVariants: {
|
|
2162
|
+
size: "md",
|
|
2163
|
+
orientation: "horizontal"
|
|
2164
|
+
}
|
|
2165
|
+
});
|
|
2166
|
+
var stepVariants = (0, import_class_variance_authority21.cva)("ddga-steps__step", {
|
|
2167
|
+
variants: {
|
|
2168
|
+
state: {
|
|
2169
|
+
completed: "ddga-steps__step--completed",
|
|
2170
|
+
current: "ddga-steps__step--current",
|
|
2171
|
+
upcoming: "ddga-steps__step--upcoming"
|
|
2172
|
+
}
|
|
2173
|
+
},
|
|
2174
|
+
defaultVariants: {
|
|
2175
|
+
state: "upcoming"
|
|
2176
|
+
}
|
|
2177
|
+
});
|
|
2178
|
+
function Steps({ size, orientation, className, ...props }) {
|
|
2179
|
+
return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
|
|
2180
|
+
"ol",
|
|
2181
|
+
{
|
|
2182
|
+
"data-slot": "steps",
|
|
2183
|
+
"data-orientation": orientation ?? "horizontal",
|
|
2184
|
+
className: cn(stepsVariants({ size, orientation }), className),
|
|
2185
|
+
...props
|
|
2186
|
+
}
|
|
2187
|
+
);
|
|
2188
|
+
}
|
|
2189
|
+
function Step({ state, className, ...props }) {
|
|
2190
|
+
return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
|
|
2191
|
+
"li",
|
|
2192
|
+
{
|
|
2193
|
+
"aria-current": state === "current" ? "step" : void 0,
|
|
2194
|
+
"data-slot": "step",
|
|
2195
|
+
"data-state": state ?? "upcoming",
|
|
2196
|
+
className: cn(stepVariants({ state }), className),
|
|
2197
|
+
...props
|
|
2198
|
+
}
|
|
2199
|
+
);
|
|
2200
|
+
}
|
|
2201
|
+
function StepIndicator({ step, className, ...props }) {
|
|
2202
|
+
return /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(
|
|
2203
|
+
"span",
|
|
2204
|
+
{
|
|
2205
|
+
"aria-hidden": "true",
|
|
2206
|
+
"data-slot": "step-indicator",
|
|
2207
|
+
className: cn("ddga-steps__indicator", className),
|
|
2208
|
+
...props,
|
|
2209
|
+
children: [
|
|
2210
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsx)(Check, { className: "ddga-steps__indicator-check" }),
|
|
2211
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsx)("span", { className: "ddga-steps__indicator-number", children: step })
|
|
2212
|
+
]
|
|
2213
|
+
}
|
|
2214
|
+
);
|
|
2215
|
+
}
|
|
2216
|
+
function StepTitle({ className, ...props }) {
|
|
2217
|
+
return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("span", { "data-slot": "step-title", className: cn("ddga-steps__title", className), ...props });
|
|
2218
|
+
}
|
|
2219
|
+
function StepDescription({ className, ...props }) {
|
|
2220
|
+
return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
|
|
2221
|
+
"span",
|
|
2222
|
+
{
|
|
2223
|
+
"data-slot": "step-description",
|
|
2224
|
+
className: cn("ddga-steps__description", className),
|
|
2225
|
+
...props
|
|
2226
|
+
}
|
|
2227
|
+
);
|
|
2228
|
+
}
|
|
2229
|
+
|
|
2230
|
+
// src/components/Skeleton/Skeleton.tsx
|
|
2231
|
+
var import_class_variance_authority22 = require("class-variance-authority");
|
|
2232
|
+
var import_jsx_runtime24 = require("react/jsx-runtime");
|
|
2233
|
+
var skeletonVariants = (0, import_class_variance_authority22.cva)("ddga-skeleton", {
|
|
2234
|
+
variants: {
|
|
2235
|
+
shape: {
|
|
2236
|
+
text: "ddga-skeleton--text",
|
|
2237
|
+
circle: "ddga-skeleton--circle",
|
|
2238
|
+
rectangle: "ddga-skeleton--rectangle"
|
|
2239
|
+
},
|
|
2240
|
+
animation: {
|
|
2241
|
+
pulse: "ddga-skeleton--pulse",
|
|
2242
|
+
wave: "ddga-skeleton--wave",
|
|
2243
|
+
none: "ddga-skeleton--none"
|
|
2244
|
+
}
|
|
2245
|
+
},
|
|
2246
|
+
defaultVariants: {
|
|
2247
|
+
shape: "text",
|
|
2248
|
+
animation: "pulse"
|
|
2249
|
+
}
|
|
2250
|
+
});
|
|
2251
|
+
function Skeleton({ shape, animation, width, height, className, style, ...props }) {
|
|
2252
|
+
const sizeStyle = {
|
|
2253
|
+
...width !== void 0 ? { width: typeof width === "number" ? `${width}px` : width } : null,
|
|
2254
|
+
...height !== void 0 ? { height: typeof height === "number" ? `${height}px` : height } : null,
|
|
2255
|
+
...style
|
|
2256
|
+
};
|
|
2257
|
+
return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
|
|
2258
|
+
"div",
|
|
2259
|
+
{
|
|
2260
|
+
"data-slot": "skeleton",
|
|
2261
|
+
"aria-hidden": "true",
|
|
2262
|
+
className: cn(skeletonVariants({ shape, animation }), className),
|
|
2263
|
+
style: sizeStyle,
|
|
2264
|
+
...props
|
|
2265
|
+
}
|
|
2266
|
+
);
|
|
2267
|
+
}
|
|
2268
|
+
|
|
2269
|
+
// src/components/Progress/Progress.tsx
|
|
2270
|
+
var import_radix_ui17 = require("radix-ui");
|
|
2271
|
+
var import_class_variance_authority23 = require("class-variance-authority");
|
|
2272
|
+
var import_jsx_runtime25 = require("react/jsx-runtime");
|
|
2273
|
+
var progressVariants = (0, import_class_variance_authority23.cva)("ddga-progress", {
|
|
2274
|
+
variants: {
|
|
2275
|
+
size: {
|
|
2276
|
+
sm: "ddga-progress--sm",
|
|
2277
|
+
md: "ddga-progress--md",
|
|
2278
|
+
lg: "ddga-progress--lg"
|
|
2279
|
+
},
|
|
2280
|
+
color: {
|
|
2281
|
+
primary: "ddga-progress--primary",
|
|
2282
|
+
success: "ddga-progress--success",
|
|
2283
|
+
warning: "ddga-progress--warning",
|
|
2284
|
+
destructive: "ddga-progress--destructive"
|
|
2285
|
+
}
|
|
2286
|
+
},
|
|
2287
|
+
defaultVariants: {
|
|
2288
|
+
size: "md",
|
|
2289
|
+
color: "primary"
|
|
2290
|
+
}
|
|
2291
|
+
});
|
|
2292
|
+
var circularProgressVariants = (0, import_class_variance_authority23.cva)("ddga-circular-progress", {
|
|
2293
|
+
variants: {
|
|
2294
|
+
size: {
|
|
2295
|
+
sm: "ddga-circular-progress--sm",
|
|
2296
|
+
md: "ddga-circular-progress--md",
|
|
2297
|
+
lg: "ddga-circular-progress--lg"
|
|
2298
|
+
},
|
|
2299
|
+
color: {
|
|
2300
|
+
primary: "ddga-circular-progress--primary",
|
|
2301
|
+
success: "ddga-circular-progress--success",
|
|
2302
|
+
warning: "ddga-circular-progress--warning",
|
|
2303
|
+
destructive: "ddga-circular-progress--destructive"
|
|
2304
|
+
}
|
|
2305
|
+
},
|
|
2306
|
+
defaultVariants: {
|
|
2307
|
+
size: "md",
|
|
2308
|
+
color: "primary"
|
|
2309
|
+
}
|
|
2310
|
+
});
|
|
2311
|
+
function Progress({ value = null, max = 100, size, color, className, ...props }) {
|
|
2312
|
+
const isIndeterminate = value === null;
|
|
2313
|
+
const pct = isIndeterminate ? 0 : Math.min(100, Math.max(0, value / max * 100));
|
|
2314
|
+
return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
|
2315
|
+
import_radix_ui17.Progress.Root,
|
|
2316
|
+
{
|
|
2317
|
+
"data-slot": "progress",
|
|
2318
|
+
value,
|
|
2319
|
+
max,
|
|
2320
|
+
className: cn(progressVariants({ size, color }), className),
|
|
2321
|
+
...props,
|
|
2322
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
|
2323
|
+
import_radix_ui17.Progress.Indicator,
|
|
2324
|
+
{
|
|
2325
|
+
"data-slot": "progress-indicator",
|
|
2326
|
+
className: "ddga-progress__indicator",
|
|
2327
|
+
style: isIndeterminate ? void 0 : { transform: `translateX(${pct - 100}%)` }
|
|
2328
|
+
}
|
|
2329
|
+
)
|
|
2330
|
+
}
|
|
2331
|
+
);
|
|
2332
|
+
}
|
|
2333
|
+
var CIRCULAR_SIZES = { sm: 32, md: 48, lg: 72 };
|
|
2334
|
+
var CIRCULAR_DEFAULT_THICKNESS = { sm: 4, md: 5, lg: 6 };
|
|
2335
|
+
function CircularProgress({
|
|
2336
|
+
value = null,
|
|
2337
|
+
max = 100,
|
|
2338
|
+
size,
|
|
2339
|
+
color,
|
|
2340
|
+
thickness,
|
|
2341
|
+
showLabel = false,
|
|
2342
|
+
className,
|
|
2343
|
+
...props
|
|
2344
|
+
}) {
|
|
2345
|
+
const isIndeterminate = value === null;
|
|
2346
|
+
const sizeKey = size ?? "md";
|
|
2347
|
+
const diameter = CIRCULAR_SIZES[sizeKey];
|
|
2348
|
+
const strokeWidth = thickness ?? CIRCULAR_DEFAULT_THICKNESS[sizeKey];
|
|
2349
|
+
const radius = (diameter - strokeWidth) / 2;
|
|
2350
|
+
const circumference = 2 * Math.PI * radius;
|
|
2351
|
+
const pct = isIndeterminate ? 0 : Math.min(100, Math.max(0, value / max * 100));
|
|
2352
|
+
const dashOffset = isIndeterminate ? circumference * 0.75 : circumference * (1 - pct / 100);
|
|
2353
|
+
const state = isIndeterminate ? "indeterminate" : value >= max ? "complete" : "loading";
|
|
2354
|
+
return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(
|
|
2355
|
+
"div",
|
|
2356
|
+
{
|
|
2357
|
+
"data-slot": "circular-progress",
|
|
2358
|
+
"data-state": state,
|
|
2359
|
+
role: "progressbar",
|
|
2360
|
+
"aria-valuemin": 0,
|
|
2361
|
+
"aria-valuemax": max,
|
|
2362
|
+
"aria-valuenow": isIndeterminate ? void 0 : value,
|
|
2363
|
+
className: cn(circularProgressVariants({ size, color }), className),
|
|
2364
|
+
style: { inlineSize: diameter, blockSize: diameter },
|
|
2365
|
+
...props,
|
|
2366
|
+
children: [
|
|
2367
|
+
/* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(
|
|
2368
|
+
"svg",
|
|
2369
|
+
{
|
|
2370
|
+
className: "ddga-circular-progress__svg",
|
|
2371
|
+
viewBox: `0 0 ${diameter} ${diameter}`,
|
|
2372
|
+
width: diameter,
|
|
2373
|
+
height: diameter,
|
|
2374
|
+
"aria-hidden": "true",
|
|
2375
|
+
focusable: "false",
|
|
2376
|
+
children: [
|
|
2377
|
+
/* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
|
2378
|
+
"circle",
|
|
2379
|
+
{
|
|
2380
|
+
className: "ddga-circular-progress__track",
|
|
2381
|
+
cx: diameter / 2,
|
|
2382
|
+
cy: diameter / 2,
|
|
2383
|
+
r: radius,
|
|
2384
|
+
fill: "none",
|
|
2385
|
+
strokeWidth
|
|
2386
|
+
}
|
|
2387
|
+
),
|
|
2388
|
+
/* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
|
2389
|
+
"circle",
|
|
2390
|
+
{
|
|
2391
|
+
className: "ddga-circular-progress__indicator",
|
|
2392
|
+
cx: diameter / 2,
|
|
2393
|
+
cy: diameter / 2,
|
|
2394
|
+
r: radius,
|
|
2395
|
+
fill: "none",
|
|
2396
|
+
strokeWidth,
|
|
2397
|
+
strokeLinecap: "round",
|
|
2398
|
+
strokeDasharray: circumference,
|
|
2399
|
+
strokeDashoffset: dashOffset,
|
|
2400
|
+
transform: `rotate(-90 ${diameter / 2} ${diameter / 2})`
|
|
2401
|
+
}
|
|
2402
|
+
)
|
|
2403
|
+
]
|
|
2404
|
+
}
|
|
2405
|
+
),
|
|
2406
|
+
showLabel && !isIndeterminate ? /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)("span", { className: "ddga-circular-progress__label", "aria-hidden": "true", children: [
|
|
2407
|
+
Math.round(pct),
|
|
2408
|
+
"%"
|
|
2409
|
+
] }) : null
|
|
2410
|
+
]
|
|
2411
|
+
}
|
|
2412
|
+
);
|
|
2413
|
+
}
|
|
2414
|
+
|
|
2415
|
+
// src/components/DropdownMenu/DropdownMenu.tsx
|
|
2416
|
+
var import_react13 = require("react");
|
|
2417
|
+
var import_radix_ui18 = require("radix-ui");
|
|
2418
|
+
var import_class_variance_authority24 = require("class-variance-authority");
|
|
2419
|
+
var import_jsx_runtime26 = require("react/jsx-runtime");
|
|
2420
|
+
var dropdownMenuVariants = (0, import_class_variance_authority24.cva)("ddga-dropdown-menu", {
|
|
2421
|
+
variants: {
|
|
2422
|
+
size: {
|
|
2423
|
+
sm: "ddga-dropdown-menu--sm",
|
|
2424
|
+
md: "ddga-dropdown-menu--md"
|
|
2425
|
+
}
|
|
2426
|
+
},
|
|
2427
|
+
defaultVariants: {
|
|
2428
|
+
size: "md"
|
|
2429
|
+
}
|
|
2430
|
+
});
|
|
2431
|
+
function DropdownMenu(props) {
|
|
2432
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_radix_ui18.DropdownMenu.Root, { ...props });
|
|
2433
|
+
}
|
|
2434
|
+
function DropdownMenuTrigger(props) {
|
|
2435
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_radix_ui18.DropdownMenu.Trigger, { "data-slot": "dropdown-menu-trigger", ...props });
|
|
2436
|
+
}
|
|
2437
|
+
function DropdownMenuContent({
|
|
2438
|
+
size,
|
|
2439
|
+
className,
|
|
2440
|
+
sideOffset = 6,
|
|
2441
|
+
...props
|
|
2442
|
+
}) {
|
|
2443
|
+
const ctx = (0, import_react13.useContext)(DgaContext);
|
|
2444
|
+
const portalContainer = ctx?.rootEl ?? void 0;
|
|
2445
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_radix_ui18.DropdownMenu.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
2446
|
+
import_radix_ui18.DropdownMenu.Content,
|
|
2447
|
+
{
|
|
2448
|
+
"data-slot": "dropdown-menu-content",
|
|
2449
|
+
sideOffset,
|
|
2450
|
+
className: cn(dropdownMenuVariants({ size }), className),
|
|
2451
|
+
...props
|
|
2452
|
+
}
|
|
2453
|
+
) });
|
|
2454
|
+
}
|
|
2455
|
+
function DropdownMenuItem({
|
|
2456
|
+
className,
|
|
2457
|
+
destructive,
|
|
2458
|
+
startIcon,
|
|
2459
|
+
shortcut,
|
|
2460
|
+
children,
|
|
2461
|
+
...props
|
|
2462
|
+
}) {
|
|
2463
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
|
|
2464
|
+
import_radix_ui18.DropdownMenu.Item,
|
|
2465
|
+
{
|
|
2466
|
+
"data-slot": "dropdown-menu-item",
|
|
2467
|
+
"data-destructive": destructive ? "" : void 0,
|
|
2468
|
+
className: cn("ddga-dropdown-menu__item", className),
|
|
2469
|
+
...props,
|
|
2470
|
+
children: [
|
|
2471
|
+
startIcon ? /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("span", { className: "ddga-dropdown-menu__icon", "aria-hidden": "true", children: startIcon }) : null,
|
|
2472
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)("span", { className: "ddga-dropdown-menu__label", children }),
|
|
2473
|
+
shortcut ? /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("span", { className: "ddga-dropdown-menu__shortcut", "aria-hidden": "true", children: shortcut }) : null
|
|
2474
|
+
]
|
|
2475
|
+
}
|
|
2476
|
+
);
|
|
2477
|
+
}
|
|
2478
|
+
function DropdownMenuCheckboxItem({
|
|
2479
|
+
className,
|
|
2480
|
+
children,
|
|
2481
|
+
onSelect,
|
|
2482
|
+
...props
|
|
2483
|
+
}) {
|
|
2484
|
+
const handleSelect = onSelect ?? ((event) => {
|
|
2485
|
+
event.preventDefault();
|
|
2486
|
+
});
|
|
2487
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
|
|
2488
|
+
import_radix_ui18.DropdownMenu.CheckboxItem,
|
|
2489
|
+
{
|
|
2490
|
+
"data-slot": "dropdown-menu-checkbox-item",
|
|
2491
|
+
className: cn("ddga-dropdown-menu__item", "ddga-dropdown-menu__item--checkable", className),
|
|
2492
|
+
onSelect: handleSelect,
|
|
2493
|
+
...props,
|
|
2494
|
+
children: [
|
|
2495
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)("span", { className: "ddga-dropdown-menu__indicator", "aria-hidden": "true", children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_radix_ui18.DropdownMenu.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Check, { className: "ddga-dropdown-menu__indicator-icon" }) }) }),
|
|
2496
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)("span", { className: "ddga-dropdown-menu__label", children })
|
|
2497
|
+
]
|
|
2498
|
+
}
|
|
2499
|
+
);
|
|
2500
|
+
}
|
|
2501
|
+
function DropdownMenuRadioGroup(props) {
|
|
2502
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_radix_ui18.DropdownMenu.RadioGroup, { "data-slot": "dropdown-menu-radio-group", ...props });
|
|
2503
|
+
}
|
|
2504
|
+
function DropdownMenuRadioItem({
|
|
2505
|
+
className,
|
|
2506
|
+
children,
|
|
2507
|
+
onSelect,
|
|
2508
|
+
...props
|
|
2509
|
+
}) {
|
|
2510
|
+
const handleSelect = onSelect ?? ((event) => {
|
|
2511
|
+
event.preventDefault();
|
|
2512
|
+
});
|
|
2513
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
|
|
2514
|
+
import_radix_ui18.DropdownMenu.RadioItem,
|
|
2515
|
+
{
|
|
2516
|
+
"data-slot": "dropdown-menu-radio-item",
|
|
2517
|
+
className: cn("ddga-dropdown-menu__item", "ddga-dropdown-menu__item--checkable", className),
|
|
2518
|
+
onSelect: handleSelect,
|
|
2519
|
+
...props,
|
|
2520
|
+
children: [
|
|
2521
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)("span", { className: "ddga-dropdown-menu__indicator", "aria-hidden": "true", children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_radix_ui18.DropdownMenu.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("span", { className: "ddga-dropdown-menu__radio-dot" }) }) }),
|
|
2522
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)("span", { className: "ddga-dropdown-menu__label", children })
|
|
2523
|
+
]
|
|
2524
|
+
}
|
|
2525
|
+
);
|
|
2526
|
+
}
|
|
2527
|
+
function DropdownMenuLabel({ className, ...props }) {
|
|
2528
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
2529
|
+
import_radix_ui18.DropdownMenu.Label,
|
|
2530
|
+
{
|
|
2531
|
+
"data-slot": "dropdown-menu-label",
|
|
2532
|
+
className: cn("ddga-dropdown-menu__group-label", className),
|
|
2533
|
+
...props
|
|
2534
|
+
}
|
|
2535
|
+
);
|
|
2536
|
+
}
|
|
2537
|
+
function DropdownMenuSeparator({ className, ...props }) {
|
|
2538
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
2539
|
+
import_radix_ui18.DropdownMenu.Separator,
|
|
2540
|
+
{
|
|
2541
|
+
"data-slot": "dropdown-menu-separator",
|
|
2542
|
+
className: cn("ddga-dropdown-menu__separator", className),
|
|
2543
|
+
...props
|
|
2544
|
+
}
|
|
2545
|
+
);
|
|
2546
|
+
}
|
|
2547
|
+
function DropdownMenuGroup(props) {
|
|
2548
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_radix_ui18.DropdownMenu.Group, { "data-slot": "dropdown-menu-group", ...props });
|
|
2549
|
+
}
|
|
2550
|
+
function DropdownMenuSub(props) {
|
|
2551
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_radix_ui18.DropdownMenu.Sub, { ...props });
|
|
2552
|
+
}
|
|
2553
|
+
function DropdownMenuSubTrigger({
|
|
2554
|
+
className,
|
|
2555
|
+
startIcon,
|
|
2556
|
+
children,
|
|
2557
|
+
...props
|
|
2558
|
+
}) {
|
|
2559
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
|
|
2560
|
+
import_radix_ui18.DropdownMenu.SubTrigger,
|
|
2561
|
+
{
|
|
2562
|
+
"data-slot": "dropdown-menu-sub-trigger",
|
|
2563
|
+
className: cn("ddga-dropdown-menu__item", "ddga-dropdown-menu__item--sub", className),
|
|
2564
|
+
...props,
|
|
2565
|
+
children: [
|
|
2566
|
+
startIcon ? /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("span", { className: "ddga-dropdown-menu__icon", "aria-hidden": "true", children: startIcon }) : null,
|
|
2567
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)("span", { className: "ddga-dropdown-menu__label", children }),
|
|
2568
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)(ChevronRight, { className: "ddga-dropdown-menu__sub-chevron", "aria-hidden": "true" })
|
|
2569
|
+
]
|
|
2570
|
+
}
|
|
2571
|
+
);
|
|
2572
|
+
}
|
|
2573
|
+
function DropdownMenuSubContent({ size, className, ...props }) {
|
|
2574
|
+
const ctx = (0, import_react13.useContext)(DgaContext);
|
|
2575
|
+
const portalContainer = ctx?.rootEl ?? void 0;
|
|
2576
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_radix_ui18.DropdownMenu.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
2577
|
+
import_radix_ui18.DropdownMenu.SubContent,
|
|
2578
|
+
{
|
|
2579
|
+
"data-slot": "dropdown-menu-sub-content",
|
|
2580
|
+
className: cn(dropdownMenuVariants({ size }), className),
|
|
2581
|
+
...props
|
|
2582
|
+
}
|
|
2583
|
+
) });
|
|
2584
|
+
}
|
|
2585
|
+
|
|
2586
|
+
// src/components/Drawer/Drawer.tsx
|
|
2587
|
+
var import_react14 = require("react");
|
|
2588
|
+
var import_radix_ui19 = require("radix-ui");
|
|
2589
|
+
var import_class_variance_authority25 = require("class-variance-authority");
|
|
2590
|
+
var import_jsx_runtime27 = require("react/jsx-runtime");
|
|
2591
|
+
var drawerVariants = (0, import_class_variance_authority25.cva)("ddga-drawer", {
|
|
2592
|
+
variants: {
|
|
2593
|
+
side: {
|
|
2594
|
+
start: "ddga-drawer--start",
|
|
2595
|
+
end: "ddga-drawer--end",
|
|
2596
|
+
top: "ddga-drawer--top",
|
|
2597
|
+
bottom: "ddga-drawer--bottom"
|
|
2598
|
+
},
|
|
2599
|
+
size: {
|
|
2600
|
+
sm: "ddga-drawer--sm",
|
|
2601
|
+
md: "ddga-drawer--md",
|
|
2602
|
+
lg: "ddga-drawer--lg",
|
|
2603
|
+
full: "ddga-drawer--full"
|
|
2604
|
+
}
|
|
2605
|
+
},
|
|
2606
|
+
defaultVariants: {
|
|
2607
|
+
side: "end",
|
|
2608
|
+
size: "md"
|
|
2609
|
+
}
|
|
2610
|
+
});
|
|
2611
|
+
function Drawer(props) {
|
|
2612
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_radix_ui19.Dialog.Root, { ...props });
|
|
2613
|
+
}
|
|
2614
|
+
function DrawerTrigger({ className, ...props }) {
|
|
2615
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_radix_ui19.Dialog.Trigger, { "data-slot": "drawer-trigger", className, ...props });
|
|
2616
|
+
}
|
|
2617
|
+
function DrawerContent({
|
|
2618
|
+
side,
|
|
2619
|
+
size,
|
|
2620
|
+
showCloseButton = true,
|
|
2621
|
+
closeLabel = "Close",
|
|
2622
|
+
className,
|
|
2623
|
+
children,
|
|
2624
|
+
...props
|
|
2625
|
+
}) {
|
|
2626
|
+
const ctx = (0, import_react14.useContext)(DgaContext);
|
|
2627
|
+
const portalContainer = ctx?.rootEl ?? void 0;
|
|
2628
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(import_radix_ui19.Dialog.Portal, { container: portalContainer, children: [
|
|
2629
|
+
/* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_radix_ui19.Dialog.Overlay, { className: "ddga-drawer__overlay", "data-slot": "drawer-overlay" }),
|
|
2630
|
+
/* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(
|
|
2631
|
+
import_radix_ui19.Dialog.Content,
|
|
2632
|
+
{
|
|
2633
|
+
"data-slot": "drawer-content",
|
|
2634
|
+
className: cn(drawerVariants({ side, size }), className),
|
|
2635
|
+
...props,
|
|
2636
|
+
children: [
|
|
2637
|
+
children,
|
|
2638
|
+
showCloseButton ? /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
2639
|
+
import_radix_ui19.Dialog.Close,
|
|
2640
|
+
{
|
|
2641
|
+
className: "ddga-drawer__close",
|
|
2642
|
+
"aria-label": closeLabel,
|
|
2643
|
+
"data-slot": "drawer-close-x",
|
|
2644
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Close, { "aria-hidden": "true" })
|
|
2645
|
+
}
|
|
2646
|
+
) : null
|
|
2647
|
+
]
|
|
2648
|
+
}
|
|
2649
|
+
)
|
|
2650
|
+
] });
|
|
2651
|
+
}
|
|
2652
|
+
function DrawerHeader({ asChild, className, ...props }) {
|
|
2653
|
+
const Comp = asChild ? import_radix_ui19.Slot.Slot : "div";
|
|
2654
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Comp, { "data-slot": "drawer-header", className: cn("ddga-drawer__header", className), ...props });
|
|
2655
|
+
}
|
|
2656
|
+
function DrawerTitle({ asChild, className, ...props }) {
|
|
2657
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
2658
|
+
import_radix_ui19.Dialog.Title,
|
|
2659
|
+
{
|
|
2660
|
+
asChild,
|
|
2661
|
+
"data-slot": "drawer-title",
|
|
2662
|
+
className: cn("ddga-drawer__title", className),
|
|
2663
|
+
...props
|
|
2664
|
+
}
|
|
2665
|
+
);
|
|
2666
|
+
}
|
|
2667
|
+
function DrawerDescription({ asChild, className, ...props }) {
|
|
2668
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
2669
|
+
import_radix_ui19.Dialog.Description,
|
|
2670
|
+
{
|
|
2671
|
+
asChild,
|
|
2672
|
+
"data-slot": "drawer-description",
|
|
2673
|
+
className: cn("ddga-drawer__description", className),
|
|
2674
|
+
...props
|
|
2675
|
+
}
|
|
2676
|
+
);
|
|
2677
|
+
}
|
|
2678
|
+
function DrawerBody({ asChild, className, ...props }) {
|
|
2679
|
+
const Comp = asChild ? import_radix_ui19.Slot.Slot : "div";
|
|
2680
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Comp, { "data-slot": "drawer-body", className: cn("ddga-drawer__body", className), ...props });
|
|
2681
|
+
}
|
|
2682
|
+
function DrawerFooter({ asChild, className, ...props }) {
|
|
2683
|
+
const Comp = asChild ? import_radix_ui19.Slot.Slot : "div";
|
|
2684
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Comp, { "data-slot": "drawer-footer", className: cn("ddga-drawer__footer", className), ...props });
|
|
2685
|
+
}
|
|
2686
|
+
function DrawerClose({ className, ...props }) {
|
|
2687
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_radix_ui19.Dialog.Close, { "data-slot": "drawer-close", className, ...props });
|
|
2688
|
+
}
|
|
2689
|
+
|
|
2690
|
+
// src/components/Combobox/Combobox.tsx
|
|
2691
|
+
var import_react15 = require("react");
|
|
2692
|
+
var import_cmdk = require("cmdk");
|
|
2693
|
+
var import_radix_ui20 = require("radix-ui");
|
|
2694
|
+
var import_class_variance_authority26 = require("class-variance-authority");
|
|
2695
|
+
var import_jsx_runtime28 = require("react/jsx-runtime");
|
|
2696
|
+
var comboboxTriggerVariants = (0, import_class_variance_authority26.cva)("ddga-combobox-trigger", {
|
|
2697
|
+
variants: {
|
|
2698
|
+
size: {
|
|
2699
|
+
sm: "ddga-combobox-trigger--sm",
|
|
2700
|
+
md: "ddga-combobox-trigger--md"
|
|
2701
|
+
},
|
|
2702
|
+
error: {
|
|
2703
|
+
true: "ddga-combobox-trigger--error"
|
|
2704
|
+
}
|
|
2705
|
+
},
|
|
2706
|
+
defaultVariants: {
|
|
2707
|
+
size: "md"
|
|
2708
|
+
}
|
|
2709
|
+
});
|
|
2710
|
+
var comboboxVariants = comboboxTriggerVariants;
|
|
2711
|
+
var ComboboxContext = (0, import_react15.createContext)(null);
|
|
2712
|
+
function useComboboxContext(component) {
|
|
2713
|
+
const ctx = (0, import_react15.useContext)(ComboboxContext);
|
|
2714
|
+
if (!ctx) {
|
|
2715
|
+
throw new Error(`<${component}> must be rendered inside <Combobox>.`);
|
|
2716
|
+
}
|
|
2717
|
+
return ctx;
|
|
2718
|
+
}
|
|
2719
|
+
function Combobox({
|
|
2720
|
+
value: controlledValue,
|
|
2721
|
+
defaultValue,
|
|
2722
|
+
onValueChange,
|
|
2723
|
+
open: controlledOpen,
|
|
2724
|
+
defaultOpen,
|
|
2725
|
+
onOpenChange,
|
|
2726
|
+
label,
|
|
2727
|
+
helperText,
|
|
2728
|
+
errorMessage,
|
|
2729
|
+
error,
|
|
2730
|
+
required,
|
|
2731
|
+
disabled,
|
|
2732
|
+
size,
|
|
2733
|
+
placeholder,
|
|
2734
|
+
searchPlaceholder = "Search\u2026",
|
|
2735
|
+
emptyMessage = "No results.",
|
|
2736
|
+
getLabel,
|
|
2737
|
+
id: externalId,
|
|
2738
|
+
className,
|
|
2739
|
+
children,
|
|
2740
|
+
"aria-label": ariaLabel,
|
|
2741
|
+
"aria-labelledby": ariaLabelledBy
|
|
2742
|
+
}) {
|
|
2743
|
+
const [internalValue, setInternalValue] = (0, import_react15.useState)(defaultValue);
|
|
2744
|
+
const isControlled = controlledValue !== void 0;
|
|
2745
|
+
const value = isControlled ? controlledValue : internalValue;
|
|
2746
|
+
const [internalOpen, setInternalOpen] = (0, import_react15.useState)(defaultOpen ?? false);
|
|
2747
|
+
const isOpenControlled = controlledOpen !== void 0;
|
|
2748
|
+
const open = isOpenControlled ? controlledOpen : internalOpen;
|
|
2749
|
+
const setOpen = (0, import_react15.useCallback)(
|
|
2750
|
+
(next) => {
|
|
2751
|
+
if (!isOpenControlled) setInternalOpen(next);
|
|
2752
|
+
onOpenChange?.(next);
|
|
2753
|
+
},
|
|
2754
|
+
[isOpenControlled, onOpenChange]
|
|
2755
|
+
);
|
|
2756
|
+
const select = (0, import_react15.useCallback)(
|
|
2757
|
+
(next) => {
|
|
2758
|
+
if (!isControlled) setInternalValue(next);
|
|
2759
|
+
onValueChange?.(next);
|
|
2760
|
+
setOpen(false);
|
|
2761
|
+
},
|
|
2762
|
+
[isControlled, onValueChange, setOpen]
|
|
2763
|
+
);
|
|
2764
|
+
const ctx = (0, import_react15.useMemo)(() => ({ value, select }), [value, select]);
|
|
2765
|
+
const itemLabels = (0, import_react15.useMemo)(() => {
|
|
2766
|
+
const map = /* @__PURE__ */ new Map();
|
|
2767
|
+
const visit = (nodes) => {
|
|
2768
|
+
import_react15.Children.forEach(nodes, (child) => {
|
|
2769
|
+
if (!(0, import_react15.isValidElement)(child)) return;
|
|
2770
|
+
const childProps = child.props;
|
|
2771
|
+
if (typeof childProps.value === "string") {
|
|
2772
|
+
map.set(childProps.value, childProps.children);
|
|
2773
|
+
} else if (childProps.children) {
|
|
2774
|
+
visit(childProps.children);
|
|
2775
|
+
}
|
|
2776
|
+
});
|
|
2777
|
+
};
|
|
2778
|
+
visit(children);
|
|
2779
|
+
return map;
|
|
2780
|
+
}, [children]);
|
|
2781
|
+
const { fieldId, errorId, helperId, hasError, hasErrorMessage, hasHelper, controlProps } = useFieldA11y({
|
|
2782
|
+
name: "Combobox",
|
|
2783
|
+
id: externalId,
|
|
2784
|
+
label,
|
|
2785
|
+
error,
|
|
2786
|
+
errorMessage,
|
|
2787
|
+
helperText,
|
|
2788
|
+
"aria-label": ariaLabel,
|
|
2789
|
+
"aria-labelledby": ariaLabelledBy
|
|
2790
|
+
});
|
|
2791
|
+
const providerCtx = (0, import_react15.useContext)(DgaContext);
|
|
2792
|
+
const portalContainer = providerCtx?.rootEl ?? void 0;
|
|
2793
|
+
const triggerLabel = (0, import_react15.useMemo)(() => {
|
|
2794
|
+
if (value === void 0) return null;
|
|
2795
|
+
if (getLabel) return getLabel(value);
|
|
2796
|
+
return itemLabels.get(value) ?? null;
|
|
2797
|
+
}, [value, getLabel, itemLabels]);
|
|
2798
|
+
const searchId = (0, import_react15.useId)();
|
|
2799
|
+
return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(ComboboxContext.Provider, { value: ctx, children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { "data-slot": "combobox-field", className: "ddga-field", children: [
|
|
2800
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("label", { htmlFor: fieldId, className: "ddga-combobox__label", children: [
|
|
2801
|
+
label,
|
|
2802
|
+
required && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("span", { "aria-hidden": "true", className: "ddga-combobox__required", children: "*" })
|
|
2803
|
+
] }),
|
|
2804
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(import_radix_ui20.Popover.Root, { open, onOpenChange: setOpen, children: [
|
|
2805
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_radix_ui20.Popover.Trigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
|
|
2806
|
+
"button",
|
|
2807
|
+
{
|
|
2808
|
+
type: "button",
|
|
2809
|
+
...controlProps,
|
|
2810
|
+
"aria-required": required || void 0,
|
|
2811
|
+
disabled,
|
|
2812
|
+
"data-slot": "combobox-trigger",
|
|
2813
|
+
className: cn(comboboxTriggerVariants({ size, error: hasError }), className),
|
|
2814
|
+
children: [
|
|
2815
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)("span", { className: "ddga-combobox__value", children: triggerLabel ?? /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("span", { className: "ddga-combobox__placeholder", children: placeholder }) }),
|
|
2816
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(ChevronDown, { "aria-hidden": "true", className: "ddga-combobox__icon" })
|
|
2817
|
+
]
|
|
2818
|
+
}
|
|
2819
|
+
) }),
|
|
2820
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_radix_ui20.Popover.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
2821
|
+
import_radix_ui20.Popover.Content,
|
|
2822
|
+
{
|
|
2823
|
+
"data-slot": "combobox-content",
|
|
2824
|
+
className: "ddga-combobox-content",
|
|
2825
|
+
sideOffset: 4,
|
|
2826
|
+
align: "start",
|
|
2827
|
+
"aria-label": ariaLabel ?? (typeof label === "string" ? label : "Options"),
|
|
2828
|
+
"aria-labelledby": ariaLabelledBy,
|
|
2829
|
+
style: { inlineSize: "var(--radix-popover-trigger-width)" },
|
|
2830
|
+
onOpenAutoFocus: (event) => {
|
|
2831
|
+
event.preventDefault();
|
|
2832
|
+
},
|
|
2833
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
|
|
2834
|
+
import_cmdk.Command,
|
|
2835
|
+
{
|
|
2836
|
+
id: searchId,
|
|
2837
|
+
"data-slot": "combobox-command",
|
|
2838
|
+
className: "ddga-combobox-command",
|
|
2839
|
+
children: [
|
|
2840
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
2841
|
+
import_cmdk.Command.Input,
|
|
2842
|
+
{
|
|
2843
|
+
autoFocus: true,
|
|
2844
|
+
placeholder: searchPlaceholder,
|
|
2845
|
+
"data-slot": "combobox-input",
|
|
2846
|
+
className: "ddga-combobox-input"
|
|
2847
|
+
}
|
|
2848
|
+
),
|
|
2849
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(import_cmdk.Command.List, { "data-slot": "combobox-list", className: "ddga-combobox-list", children: [
|
|
2850
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_cmdk.Command.Empty, { "data-slot": "combobox-empty", className: "ddga-combobox-empty", children: emptyMessage }),
|
|
2851
|
+
children
|
|
2852
|
+
] })
|
|
2853
|
+
]
|
|
2854
|
+
}
|
|
2855
|
+
)
|
|
2856
|
+
}
|
|
2857
|
+
) })
|
|
2858
|
+
] }),
|
|
2859
|
+
hasErrorMessage && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(FieldMessage, { id: errorId, variant: "error", children: errorMessage }),
|
|
2860
|
+
hasHelper && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(FieldMessage, { id: helperId, variant: "helper", children: helperText })
|
|
2861
|
+
] }) });
|
|
2862
|
+
}
|
|
2863
|
+
function ComboboxItem({
|
|
2864
|
+
value,
|
|
2865
|
+
keywords,
|
|
2866
|
+
disabled,
|
|
2867
|
+
onSelect,
|
|
2868
|
+
className,
|
|
2869
|
+
children,
|
|
2870
|
+
...props
|
|
2871
|
+
}) {
|
|
2872
|
+
const { value: selectedValue, select } = useComboboxContext("ComboboxItem");
|
|
2873
|
+
const isSelected = selectedValue === value;
|
|
2874
|
+
return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
|
|
2875
|
+
import_cmdk.Command.Item,
|
|
2876
|
+
{
|
|
2877
|
+
value,
|
|
2878
|
+
keywords,
|
|
2879
|
+
disabled,
|
|
2880
|
+
onSelect: (v) => {
|
|
2881
|
+
onSelect?.(v);
|
|
2882
|
+
select(v);
|
|
2883
|
+
},
|
|
2884
|
+
"data-slot": "combobox-item",
|
|
2885
|
+
"data-active": isSelected ? "" : void 0,
|
|
2886
|
+
className: cn("ddga-combobox-item", className),
|
|
2887
|
+
...props,
|
|
2888
|
+
children: [
|
|
2889
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)("span", { className: "ddga-combobox-item__check", "aria-hidden": "true", children: isSelected ? /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(Check, {}) : null }),
|
|
2890
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)("span", { className: "ddga-combobox-item__label", children })
|
|
2891
|
+
]
|
|
2892
|
+
}
|
|
2893
|
+
);
|
|
2894
|
+
}
|
|
2895
|
+
function ComboboxGroup({ className, heading, ...props }) {
|
|
2896
|
+
return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
2897
|
+
import_cmdk.Command.Group,
|
|
2898
|
+
{
|
|
2899
|
+
heading,
|
|
2900
|
+
"data-slot": "combobox-group",
|
|
2901
|
+
className: cn("ddga-combobox-group", className),
|
|
2902
|
+
...props
|
|
2903
|
+
}
|
|
2904
|
+
);
|
|
2905
|
+
}
|
|
2906
|
+
function ComboboxSeparator({ className, ...props }) {
|
|
2907
|
+
return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
2908
|
+
import_cmdk.Command.Separator,
|
|
2909
|
+
{
|
|
2910
|
+
"data-slot": "combobox-separator",
|
|
2911
|
+
className: cn("ddga-combobox-separator", className),
|
|
2912
|
+
...props
|
|
2913
|
+
}
|
|
2914
|
+
);
|
|
2915
|
+
}
|
|
2916
|
+
|
|
2917
|
+
// src/providers/DgaProvider.tsx
|
|
2918
|
+
var import_react16 = require("react");
|
|
2919
|
+
var import_radix_ui21 = require("radix-ui");
|
|
2920
|
+
var import_tokens = require("@dev-dga/tokens");
|
|
2921
|
+
var import_jsx_runtime29 = require("react/jsx-runtime");
|
|
1316
2922
|
function DgaProvider({
|
|
1317
2923
|
dir = "ltr",
|
|
1318
2924
|
locale,
|
|
@@ -1323,17 +2929,17 @@ function DgaProvider({
|
|
|
1323
2929
|
style: consumerStyle,
|
|
1324
2930
|
children
|
|
1325
2931
|
}) {
|
|
1326
|
-
const parentCtx = (0,
|
|
2932
|
+
const parentCtx = (0, import_react16.useContext)(DgaContext);
|
|
1327
2933
|
const isNested = parentCtx !== null;
|
|
1328
|
-
const [rootEl, setRootEl] = (0,
|
|
2934
|
+
const [rootEl, setRootEl] = (0, import_react16.useState)(null);
|
|
1329
2935
|
const resolvedLocale = locale ?? (dir === "rtl" ? "ar" : "en");
|
|
1330
|
-
const ctxValue = (0,
|
|
2936
|
+
const ctxValue = (0, import_react16.useMemo)(
|
|
1331
2937
|
() => ({ dir, locale: resolvedLocale, mode, rootEl }),
|
|
1332
2938
|
[dir, resolvedLocale, mode, rootEl]
|
|
1333
2939
|
);
|
|
1334
|
-
const themeVars = (0,
|
|
1335
|
-
const inner = /* @__PURE__ */ (0,
|
|
1336
|
-
return /* @__PURE__ */ (0,
|
|
2940
|
+
const themeVars = (0, import_react16.useMemo)(() => theme ? (0, import_tokens.buildTheme)(theme) : null, [theme]);
|
|
2941
|
+
const inner = /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_radix_ui21.Direction.Provider, { dir, children });
|
|
2942
|
+
return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(DgaContext.Provider, { value: ctxValue, children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
|
|
1337
2943
|
Component,
|
|
1338
2944
|
{
|
|
1339
2945
|
ref: setRootEl,
|
|
@@ -1343,7 +2949,7 @@ function DgaProvider({
|
|
|
1343
2949
|
"data-theme": mode,
|
|
1344
2950
|
className,
|
|
1345
2951
|
style: { colorScheme: mode, ...themeVars ?? {}, ...consumerStyle },
|
|
1346
|
-
children: isNested ? inner : /* @__PURE__ */ (0,
|
|
2952
|
+
children: isNested ? inner : /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_radix_ui21.Tooltip.Provider, { delayDuration: 300, skipDelayDuration: 100, children: inner })
|
|
1347
2953
|
}
|
|
1348
2954
|
) });
|
|
1349
2955
|
}
|
|
@@ -1354,12 +2960,63 @@ function useDir() {
|
|
|
1354
2960
|
}
|
|
1355
2961
|
// Annotate the CommonJS export names for ESM import in node:
|
|
1356
2962
|
0 && (module.exports = {
|
|
2963
|
+
Accordion,
|
|
2964
|
+
AccordionContent,
|
|
2965
|
+
AccordionItem,
|
|
2966
|
+
AccordionTrigger,
|
|
1357
2967
|
Alert,
|
|
1358
2968
|
AlertDescription,
|
|
1359
2969
|
AlertTitle,
|
|
2970
|
+
Avatar,
|
|
2971
|
+
AvatarFallback,
|
|
2972
|
+
AvatarGroup,
|
|
2973
|
+
AvatarImage,
|
|
2974
|
+
Badge,
|
|
2975
|
+
Breadcrumb,
|
|
2976
|
+
BreadcrumbEllipsis,
|
|
2977
|
+
BreadcrumbItem,
|
|
2978
|
+
BreadcrumbLink,
|
|
2979
|
+
BreadcrumbList,
|
|
2980
|
+
BreadcrumbPage,
|
|
2981
|
+
BreadcrumbSeparator,
|
|
1360
2982
|
Button,
|
|
2983
|
+
Card,
|
|
2984
|
+
CardContent,
|
|
2985
|
+
CardDescription,
|
|
2986
|
+
CardFooter,
|
|
2987
|
+
CardHeader,
|
|
2988
|
+
CardImage,
|
|
2989
|
+
CardTitle,
|
|
1361
2990
|
Checkbox,
|
|
2991
|
+
CircularProgress,
|
|
2992
|
+
Combobox,
|
|
2993
|
+
ComboboxGroup,
|
|
2994
|
+
ComboboxItem,
|
|
2995
|
+
ComboboxSeparator,
|
|
1362
2996
|
DgaProvider,
|
|
2997
|
+
Divider,
|
|
2998
|
+
Drawer,
|
|
2999
|
+
DrawerBody,
|
|
3000
|
+
DrawerClose,
|
|
3001
|
+
DrawerContent,
|
|
3002
|
+
DrawerDescription,
|
|
3003
|
+
DrawerFooter,
|
|
3004
|
+
DrawerHeader,
|
|
3005
|
+
DrawerTitle,
|
|
3006
|
+
DrawerTrigger,
|
|
3007
|
+
DropdownMenu,
|
|
3008
|
+
DropdownMenuCheckboxItem,
|
|
3009
|
+
DropdownMenuContent,
|
|
3010
|
+
DropdownMenuGroup,
|
|
3011
|
+
DropdownMenuItem,
|
|
3012
|
+
DropdownMenuLabel,
|
|
3013
|
+
DropdownMenuRadioGroup,
|
|
3014
|
+
DropdownMenuRadioItem,
|
|
3015
|
+
DropdownMenuSeparator,
|
|
3016
|
+
DropdownMenuSub,
|
|
3017
|
+
DropdownMenuSubContent,
|
|
3018
|
+
DropdownMenuSubTrigger,
|
|
3019
|
+
DropdownMenuTrigger,
|
|
1363
3020
|
FieldMessage,
|
|
1364
3021
|
Input,
|
|
1365
3022
|
Modal,
|
|
@@ -1370,28 +3027,67 @@ function useDir() {
|
|
|
1370
3027
|
ModalHeader,
|
|
1371
3028
|
ModalTitle,
|
|
1372
3029
|
ModalTrigger,
|
|
3030
|
+
Pagination,
|
|
3031
|
+
PaginationContent,
|
|
3032
|
+
PaginationEllipsis,
|
|
3033
|
+
PaginationItem,
|
|
3034
|
+
PaginationLink,
|
|
3035
|
+
PaginationNext,
|
|
3036
|
+
PaginationPrevious,
|
|
3037
|
+
Progress,
|
|
1373
3038
|
Radio,
|
|
1374
3039
|
RadioGroup,
|
|
1375
3040
|
Select,
|
|
1376
3041
|
SelectItem,
|
|
3042
|
+
Skeleton,
|
|
3043
|
+
Spinner,
|
|
3044
|
+
Step,
|
|
3045
|
+
StepDescription,
|
|
3046
|
+
StepIndicator,
|
|
3047
|
+
StepTitle,
|
|
3048
|
+
Steps,
|
|
1377
3049
|
Switch,
|
|
3050
|
+
Tabs,
|
|
3051
|
+
TabsContent,
|
|
3052
|
+
TabsList,
|
|
3053
|
+
TabsTrigger,
|
|
1378
3054
|
Textarea,
|
|
1379
3055
|
Toaster,
|
|
1380
3056
|
Tooltip,
|
|
1381
3057
|
TooltipContent,
|
|
1382
3058
|
TooltipTrigger,
|
|
3059
|
+
accordionVariants,
|
|
1383
3060
|
alertVariants,
|
|
3061
|
+
avatarVariants,
|
|
3062
|
+
badgeVariants,
|
|
3063
|
+
breadcrumbVariants,
|
|
1384
3064
|
buttonVariants,
|
|
3065
|
+
cardVariants,
|
|
1385
3066
|
checkboxVariants,
|
|
3067
|
+
circularProgressVariants,
|
|
1386
3068
|
cn,
|
|
3069
|
+
comboboxTriggerVariants,
|
|
3070
|
+
comboboxVariants,
|
|
1387
3071
|
createToast,
|
|
1388
3072
|
createToastStore,
|
|
3073
|
+
dividerVariants,
|
|
3074
|
+
drawerVariants,
|
|
3075
|
+
dropdownMenuVariants,
|
|
1389
3076
|
inputVariants,
|
|
1390
3077
|
modalContentVariants,
|
|
3078
|
+
paginationLinkVariants,
|
|
3079
|
+
paginationVariants,
|
|
3080
|
+
progressVariants,
|
|
1391
3081
|
radioGroupVariants,
|
|
1392
3082
|
radioVariants,
|
|
1393
3083
|
selectTriggerVariants,
|
|
3084
|
+
skeletonVariants,
|
|
3085
|
+
spinnerVariants,
|
|
3086
|
+
stepVariants,
|
|
3087
|
+
stepsVariants,
|
|
1394
3088
|
switchVariants,
|
|
3089
|
+
tabsListVariants,
|
|
3090
|
+
tabsVariants,
|
|
1395
3091
|
textareaVariants,
|
|
1396
3092
|
toast,
|
|
1397
3093
|
toastStore,
|