@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/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 import_class_variance_authority = require("class-variance-authority");
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/internal/icons/index.tsx
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
- function Spinner(props) {
87
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
88
- "svg",
89
- {
90
- xmlns: "http://www.w3.org/2000/svg",
91
- width: "1em",
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 ChevronDown(props) {
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: "m6 9 6 6 6-6" })
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, import_class_variance_authority.cva)("ddga-button", {
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 import_class_variance_authority2 = require("class-variance-authority");
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, import_class_variance_authority2.cva)("ddga-input", {
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 import_class_variance_authority3 = require("class-variance-authority");
446
+ var import_class_variance_authority4 = require("class-variance-authority");
468
447
  var import_jsx_runtime5 = require("react/jsx-runtime");
469
- var textareaVariants = (0, import_class_variance_authority3.cva)("ddga-textarea", {
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 import_class_variance_authority4 = require("class-variance-authority");
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
- var checkboxVariants = (0, import_class_variance_authority4.cva)("ddga-checkbox", {
540
- variants: {
541
- size: {
542
- sm: "ddga-checkbox--sm",
543
- md: "ddga-checkbox--md"
544
- },
545
- error: {
546
- true: "ddga-checkbox--error"
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
- // src/components/Radio/Radio.tsx
608
- var import_react3 = require("react");
609
- var import_radix_ui3 = require("radix-ui");
610
- var import_class_variance_authority5 = require("class-variance-authority");
611
- var import_jsx_runtime7 = require("react/jsx-runtime");
612
- var radioGroupVariants = (0, import_class_variance_authority5.cva)("ddga-radio-group", {
613
- variants: {
614
- size: {
615
- sm: "ddga-radio-group--sm",
616
- md: "ddga-radio-group--md"
617
- },
618
- orientation: {
619
- vertical: "ddga-radio-group--vertical",
620
- horizontal: "ddga-radio-group--horizontal"
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
- defaultVariants: {
627
- size: "md",
628
- orientation: "vertical"
629
- }
630
- });
631
- var radioVariants = (0, import_class_variance_authority5.cva)("ddga-radio");
632
- function RadioGroup({
633
- id: externalId,
634
- label,
635
- helperText,
636
- errorMessage,
637
- error,
638
- size,
639
- orientation,
640
- required,
641
- className,
642
- children,
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, import_jsx_runtime7.jsxs)("div", { "data-slot": "radio-group-field", className: "ddga-field", children: [
657
- label && /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("span", { id: labelId, className: "ddga-radio-group__label", children: [
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, import_jsx_runtime7.jsx)("span", { "aria-hidden": "true", className: "ddga-radio-group__required", children: "*" })
821
+ required && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { "aria-hidden": "true", className: "ddga-radio-group__required", children: "*" })
660
822
  ] }),
661
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
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, import_jsx_runtime7.jsx)(FieldMessage, { id: errorId, variant: "error", children: errorMessage }),
676
- hasHelper && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(FieldMessage, { id: helperId, variant: "helper", children: helperText })
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, import_jsx_runtime7.jsxs)("div", { className: "ddga-radio-row", children: [
683
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
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, import_jsx_runtime7.jsx)(
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, import_jsx_runtime7.jsx)("span", { className: "ddga-radio__dot", "aria-hidden": "true" })
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, import_jsx_runtime7.jsx)("label", { htmlFor: itemId, className: "ddga-radio__label", children: label })
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 import_class_variance_authority6 = require("class-variance-authority");
707
- var import_jsx_runtime8 = require("react/jsx-runtime");
708
- var switchVariants = (0, import_class_variance_authority6.cva)("ddga-switch", {
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, import_jsx_runtime8.jsxs)("div", { "data-slot": "switch-field", className: "ddga-field", children: [
744
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "ddga-switch-row", children: [
745
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
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, import_jsx_runtime8.jsx)(import_radix_ui4.Switch.Thumb, { "data-slot": "switch-thumb", className: "ddga-switch__thumb" })
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, import_jsx_runtime8.jsxs)("label", { htmlFor: fieldId, className: "ddga-switch__label", children: [
918
+ label && /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("label", { htmlFor: fieldId, className: "ddga-switch__label", children: [
757
919
  label,
758
- required && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { "aria-hidden": "true", className: "ddga-switch__required", children: "*" })
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, import_jsx_runtime8.jsx)(FieldMessage, { id: errorId, variant: "error", children: errorMessage }),
762
- hasHelper && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(FieldMessage, { id: helperId, variant: "helper", children: helperText })
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 import_class_variance_authority7 = require("class-variance-authority");
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 import_jsx_runtime9 = require("react/jsx-runtime");
784
- var selectTriggerVariants = (0, import_class_variance_authority7.cva)("ddga-select-trigger", {
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, import_jsx_runtime9.jsxs)("div", { "data-slot": "select-field", className: "ddga-field", children: [
824
- label && /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("label", { htmlFor: fieldId, className: "ddga-select__label", children: [
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, import_jsx_runtime9.jsx)("span", { "aria-hidden": "true", className: "ddga-select__required", children: "*" })
988
+ required && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("span", { "aria-hidden": "true", className: "ddga-select__required", children: "*" })
827
989
  ] }),
828
- /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(import_radix_ui5.Select.Root, { required, ...rootProps, children: [
829
- /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
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, import_jsx_runtime9.jsx)(import_radix_ui5.Select.Value, { placeholder }),
837
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_radix_ui5.Select.Icon, { asChild: true, className: "ddga-select__icon", children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(ChevronDown, { "aria-hidden": "true" }) })
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, import_jsx_runtime9.jsx)(import_radix_ui5.Select.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
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, import_jsx_runtime9.jsx)(import_radix_ui5.Select.Viewport, { className: "ddga-select-viewport", children })
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, import_jsx_runtime9.jsx)(FieldMessage, { id: errorId, variant: "error", children: errorMessage }),
853
- hasHelper && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(FieldMessage, { id: helperId, variant: "helper", children: helperText })
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, import_jsx_runtime9.jsxs)(
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, import_jsx_runtime9.jsx)(import_radix_ui5.Select.ItemText, { children }),
865
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_radix_ui5.Select.ItemIndicator, { className: "ddga-select-item__indicator", children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Check, { className: "ddga-select-item__check", "aria-hidden": "true" }) })
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/Tooltip/Tooltip.tsx
872
- var import_react6 = require("react");
1033
+ // src/components/Card/Card.tsx
873
1034
  var import_radix_ui6 = require("radix-ui");
874
- var import_class_variance_authority8 = require("class-variance-authority");
875
- var import_jsx_runtime10 = require("react/jsx-runtime");
876
- var tooltipContentVariants = (0, import_class_variance_authority8.cva)("ddga-tooltip", {
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
- size: {
879
- sm: "ddga-tooltip--sm",
880
- md: "ddga-tooltip--md"
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
- size: "md"
1061
+ variant: "default",
1062
+ padding: "md",
1063
+ orientation: "vertical"
885
1064
  }
886
1065
  });
887
- function Tooltip(props) {
888
- return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_radix_ui6.Tooltip.Root, { ...props });
889
- }
890
- function TooltipTrigger({ className, ...props }) {
891
- return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_radix_ui6.Tooltip.Trigger, { "data-slot": "tooltip-trigger", className, ...props });
892
- }
893
- function TooltipContent({
894
- size,
895
- arrow = true,
896
- sideOffset = 6,
897
- className,
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, import_react6.useContext)(DgaContext);
1402
+ const ctx = (0, import_react8.useContext)(DgaContext);
902
1403
  const portalContainer = ctx?.rootEl ?? void 0;
903
- return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_radix_ui6.Tooltip.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(
904
- import_radix_ui6.Tooltip.Content,
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, import_jsx_runtime10.jsx)(import_radix_ui6.Tooltip.Arrow, { className: "ddga-tooltip__arrow" }) : null
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 import_react7 = require("react");
920
- var import_radix_ui7 = require("radix-ui");
921
- var import_class_variance_authority9 = require("class-variance-authority");
922
- var import_jsx_runtime11 = require("react/jsx-runtime");
923
- var alertVariants = (0, import_class_variance_authority9.cva)("ddga-alert", {
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, import_jsx_runtime11.jsx)(Info, { "aria-hidden": "true" }),
938
- success: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Check, { "aria-hidden": "true" }),
939
- warning: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(AlertTriangle, { "aria-hidden": "true" }),
940
- destructive: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(AlertCircle, { "aria-hidden": "true" })
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, import_react7.useState)(true);
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 ? import_radix_ui7.Slot.Slot : "div";
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, import_jsx_runtime11.jsxs)(
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, import_jsx_runtime11.jsx)("span", { className: "ddga-alert__icon", children: resolvedIcon }) : null,
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, import_jsx_runtime11.jsx)(import_radix_ui7.Slot.Slottable, { children })
980
- ) : /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: "ddga-alert__body", children }),
981
- dismissible ? /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
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, import_jsx_runtime11.jsx)(Close, { "aria-hidden": "true" })
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 ? import_radix_ui7.Slot.Slot : "h5";
997
- return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Comp, { "data-slot": "alert-title", className: cn("ddga-alert__title", className), ...props });
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 ? import_radix_ui7.Slot.Slot : "p";
1001
- return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
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 import_react8 = require("react");
1013
- var import_radix_ui8 = require("radix-ui");
1014
- var import_class_variance_authority10 = require("class-variance-authority");
1015
- var import_jsx_runtime12 = require("react/jsx-runtime");
1016
- var modalContentVariants = (0, import_class_variance_authority10.cva)("ddga-modal", {
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, import_jsx_runtime12.jsx)(import_radix_ui8.Dialog.Root, { ...props });
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, import_jsx_runtime12.jsx)(import_radix_ui8.Dialog.Trigger, { "data-slot": "modal-trigger", className, ...props });
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, import_react8.useContext)(DgaContext);
1545
+ const ctx = (0, import_react10.useContext)(DgaContext);
1045
1546
  const portalContainer = ctx?.rootEl ?? void 0;
1046
- return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(import_radix_ui8.Dialog.Portal, { container: portalContainer, children: [
1047
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_radix_ui8.Dialog.Overlay, { className: "ddga-modal__overlay", "data-slot": "modal-overlay" }),
1048
- /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
1049
- import_radix_ui8.Dialog.Content,
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, import_jsx_runtime12.jsx)(
1057
- import_radix_ui8.Dialog.Close,
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, import_jsx_runtime12.jsx)(Close, { "aria-hidden": "true" })
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 ? import_radix_ui8.Slot.Slot : "div";
1072
- return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Comp, { "data-slot": "modal-header", className: cn("ddga-modal__header", className), ...props });
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, import_jsx_runtime12.jsx)(
1076
- import_radix_ui8.Dialog.Title,
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, import_jsx_runtime12.jsx)(
1087
- import_radix_ui8.Dialog.Description,
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 ? import_radix_ui8.Slot.Slot : "div";
1098
- return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Comp, { "data-slot": "modal-footer", className: cn("ddga-modal__footer", className), ...props });
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, import_jsx_runtime12.jsx)(import_radix_ui8.Dialog.Close, { "data-slot": "modal-close", className, ...props });
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 import_react10 = require("react");
1106
- var import_radix_ui9 = require("radix-ui");
1107
- var import_class_variance_authority11 = require("class-variance-authority");
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 import_react9 = require("react");
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 import_jsx_runtime13 = require("react/jsx-runtime");
1196
- var toastVariants = (0, import_class_variance_authority11.cva)("ddga-toast", {
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, import_class_variance_authority11.cva)("ddga-toast-viewport", {
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, import_jsx_runtime13.jsx)(Info, { "aria-hidden": "true" }),
1231
- success: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Check, { "aria-hidden": "true" }),
1232
- warning: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(AlertTriangle, { "aria-hidden": "true" }),
1233
- destructive: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(AlertCircle, { "aria-hidden": "true" })
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, import_react10.useSyncExternalStore)(store.subscribe, store.getSnapshot, store.getSnapshot);
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, import_jsx_runtime13.jsxs)(import_radix_ui9.Toast.Provider, { duration, swipeDirection: resolvedSwipe, children: [
1249
- toasts.map((t) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
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, import_jsx_runtime13.jsx)(
1261
- import_radix_ui9.Toast.Viewport,
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, import_jsx_runtime13.jsxs)(
1274
- import_radix_ui9.Toast.Root,
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, import_jsx_runtime13.jsx)("span", { className: "ddga-toast__icon", children: icon }) : null,
1289
- /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("div", { className: "ddga-toast__body", children: [
1290
- t.title ? /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_radix_ui9.Toast.Title, { className: "ddga-toast__title", children: t.title }) : null,
1291
- t.description ? /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_radix_ui9.Toast.Description, { className: "ddga-toast__description", children: t.description }) : null,
1292
- t.action ? /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
1293
- import_radix_ui9.Toast.Action,
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, import_jsx_runtime13.jsx)(import_radix_ui9.Toast.Close, { className: "ddga-toast__close", "aria-label": closeLabel, children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Close, { "aria-hidden": "true" }) }) : null
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/providers/DgaProvider.tsx
1312
- var import_react11 = require("react");
1313
- var import_radix_ui10 = require("radix-ui");
1314
- var import_tokens = require("@dev-dga/tokens");
1315
- var import_jsx_runtime14 = require("react/jsx-runtime");
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, import_react11.useContext)(DgaContext);
2932
+ const parentCtx = (0, import_react16.useContext)(DgaContext);
1327
2933
  const isNested = parentCtx !== null;
1328
- const [rootEl, setRootEl] = (0, import_react11.useState)(null);
2934
+ const [rootEl, setRootEl] = (0, import_react16.useState)(null);
1329
2935
  const resolvedLocale = locale ?? (dir === "rtl" ? "ar" : "en");
1330
- const ctxValue = (0, import_react11.useMemo)(
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, import_react11.useMemo)(() => theme ? (0, import_tokens.buildTheme)(theme) : null, [theme]);
1335
- const inner = /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(import_radix_ui10.Direction.Provider, { dir, children });
1336
- return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(DgaContext.Provider, { value: ctxValue, children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
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, import_jsx_runtime14.jsx)(import_radix_ui10.Tooltip.Provider, { delayDuration: 300, skipDelayDuration: 100, children: inner })
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,