@fea-ui/react 0.1.0-alpha.1 → 0.1.0-alpha.10

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.mjs CHANGED
@@ -1,8 +1,9 @@
1
1
  import { cn, cn as cn$1, tv } from "tailwind-variants";
2
- import { Accordion, Avatar, Button, Checkbox, CheckboxGroup, Dialog, Field, Input, Menu, Meter, Separator, Switch, Tabs, Toggle } from "@base-ui/react";
3
- import { LucideCheck, LucideMenu, LucidePlus, LucideX } from "lucide-react";
4
- import React, { createContext, useCallback, useContext, useMemo, useState } from "react";
5
- import { jsx } from "react/jsx-runtime";
2
+ import { Accordion, AlertDialog, Avatar, Dialog, Fieldset, Menu, Meter, Progress, Radio, RadioGroup, Separator, Slider, Switch, Tabs, Toggle } from "@base-ui/react";
3
+ import { LucideAlertTriangle, LucideCheckCircle, LucideChevronDown, LucideChevronUp, LucideInfo, LucideMenu, LucidePanelLeftClose, LucidePanelLeftOpen, LucideX, LucideXCircle } from "lucide-react";
4
+ import React, { createContext, useCallback, useContext, useId, useMemo, useState } from "react";
5
+ import { jsx, jsxs } from "react/jsx-runtime";
6
+ import { Button, CheckboxGroup, DialogTrigger, FieldError, Form, Input, Label, Popover, Text, TextArea, TextField } from "react-aria-components";
6
7
 
7
8
  //#region src/components/accordion/accordion.context.ts
8
9
  const AccordionContext = createContext(null);
@@ -62,7 +63,7 @@ const AccordionTrigger = ({ className, ...props }) => {
62
63
  };
63
64
  const AccordionTriggerIcon = ({ className, ...props }) => {
64
65
  const { slots } = useAccordion();
65
- return /* @__PURE__ */ jsx(LucidePlus, {
66
+ return /* @__PURE__ */ jsx(LucideChevronDown, {
66
67
  className: cn$1(className, slots.triggerIcon()),
67
68
  ...props
68
69
  });
@@ -81,14 +82,214 @@ const AccordionContent = ({ className, ...props }) => {
81
82
  ...props
82
83
  });
83
84
  };
84
- Accordion$1.Content = AccordionContent;
85
- Accordion$1.Header = AccordionHeader;
86
- Accordion$1.Item = AccordionItem;
87
- Accordion$1.Panel = AccordionPanel;
88
- Accordion$1.Root = Accordion$1;
89
- Accordion$1.Trigger = AccordionTrigger;
90
- Accordion$1.TriggerIcon = AccordionTriggerIcon;
91
- var accordion_default = Accordion$1;
85
+ var accordion_default = Object.assign(Accordion$1, {
86
+ Content: AccordionContent,
87
+ Header: AccordionHeader,
88
+ Item: AccordionItem,
89
+ Panel: AccordionPanel,
90
+ Root: Accordion$1,
91
+ Trigger: AccordionTrigger,
92
+ TriggerIcon: AccordionTriggerIcon
93
+ });
94
+
95
+ //#endregion
96
+ //#region src/components/alert/alert.context.ts
97
+ const AlertContext = createContext(null);
98
+
99
+ //#endregion
100
+ //#region src/components/alert/alert.variants.ts
101
+ const alertVariants = tv({
102
+ defaultVariants: { variant: "info" },
103
+ slots: {
104
+ content: "alert__content",
105
+ description: "alert__description",
106
+ indicator: "alert__indicator",
107
+ root: "alert",
108
+ title: "alert__title"
109
+ },
110
+ variants: { variant: {
111
+ danger: { root: "alert--danger" },
112
+ info: { root: "alert--info" },
113
+ primary: { root: "alert--primary" },
114
+ success: { root: "alert--success" },
115
+ warning: { root: "alert--warning" }
116
+ } }
117
+ });
118
+
119
+ //#endregion
120
+ //#region src/components/alert/use-alert.ts
121
+ const useAlert = () => {
122
+ const context = useContext(AlertContext);
123
+ if (!context) throw new Error("useAlert must be used within a AlertProvider");
124
+ return context;
125
+ };
126
+
127
+ //#endregion
128
+ //#region src/components/alert/alert.tsx
129
+ const Alert = ({ className, variant, ...props }) => {
130
+ const slots = useMemo(() => alertVariants({
131
+ className,
132
+ variant
133
+ }), [className, variant]);
134
+ return /* @__PURE__ */ jsx(AlertContext, {
135
+ value: {
136
+ slots,
137
+ variant
138
+ },
139
+ children: /* @__PURE__ */ jsx("div", {
140
+ className: cn$1(className, slots.root()),
141
+ ...props
142
+ })
143
+ });
144
+ };
145
+ const AlertIndicator = ({ className, children, ...props }) => {
146
+ const { slots, variant } = useAlert();
147
+ const IndicatorIcon = ({ children: children$1 }) => {
148
+ if (children$1) return children$1;
149
+ switch (variant) {
150
+ case "danger": return /* @__PURE__ */ jsx(LucideXCircle, {});
151
+ case "success": return /* @__PURE__ */ jsx(LucideCheckCircle, {});
152
+ case "warning": return /* @__PURE__ */ jsx(LucideAlertTriangle, {});
153
+ default: return /* @__PURE__ */ jsx(LucideInfo, {});
154
+ }
155
+ };
156
+ return /* @__PURE__ */ jsx("div", {
157
+ className: cn$1(className, slots.indicator()),
158
+ ...props,
159
+ children: /* @__PURE__ */ jsx(IndicatorIcon, { children })
160
+ });
161
+ };
162
+ const AlertContent = ({ className, ...props }) => {
163
+ const { slots } = useAlert();
164
+ return /* @__PURE__ */ jsx("div", {
165
+ className: cn$1(className, slots.content()),
166
+ ...props
167
+ });
168
+ };
169
+ const AlertTitle = ({ className, ...props }) => {
170
+ const { slots } = useAlert();
171
+ return /* @__PURE__ */ jsx("div", {
172
+ className: cn$1(className, slots.title()),
173
+ ...props
174
+ });
175
+ };
176
+ const AlertDescription = ({ className, ...props }) => {
177
+ const { slots } = useAlert();
178
+ return /* @__PURE__ */ jsx("div", {
179
+ className: cn$1(className, slots.description()),
180
+ ...props
181
+ });
182
+ };
183
+ var alert_default = Object.assign(Alert, {
184
+ Content: AlertContent,
185
+ Description: AlertDescription,
186
+ Indicator: AlertIndicator,
187
+ Root: Alert,
188
+ Title: AlertTitle
189
+ });
190
+
191
+ //#endregion
192
+ //#region src/components/alert-dialog/alert-dialog.context.ts
193
+ const AlertDialogContext = createContext(null);
194
+
195
+ //#endregion
196
+ //#region src/components/alert-dialog/alert-dialog.variants.ts
197
+ const alertDialogVariants = tv({ slots: {
198
+ backdrop: "alert-dialog__backdrop",
199
+ close: "alert-dialog__close",
200
+ description: "alert-dialog__description",
201
+ popup: "alert-dialog__popup",
202
+ portal: "alert-dialog__portal",
203
+ root: "alert-dialog",
204
+ title: "alert-dialog__title",
205
+ trigger: "alert-dialog__trigger",
206
+ viewport: "alert-dialog__viewport"
207
+ } });
208
+
209
+ //#endregion
210
+ //#region src/components/alert-dialog/use-alert-dialog.ts
211
+ const useAlertDialog = () => {
212
+ const context = useContext(AlertDialogContext);
213
+ if (!context) throw new Error("useAlertDialog must be used within a AlertDialogProvider");
214
+ return context;
215
+ };
216
+
217
+ //#endregion
218
+ //#region src/components/alert-dialog/alert-dialog.tsx
219
+ const AlertDialog$1 = ({ ...props }) => {
220
+ return /* @__PURE__ */ jsx(AlertDialogContext, {
221
+ value: { slots: useMemo(() => alertDialogVariants(), []) },
222
+ children: /* @__PURE__ */ jsx(AlertDialog.Root, { ...props })
223
+ });
224
+ };
225
+ const AlertDialogTrigger = ({ className, ...props }) => {
226
+ const { slots } = useAlertDialog();
227
+ return /* @__PURE__ */ jsx(AlertDialog.Trigger, {
228
+ className: cn$1(slots.trigger(), className),
229
+ ...props
230
+ });
231
+ };
232
+ const AlertDialogPortal = ({ className, ...props }) => {
233
+ const { slots } = useAlertDialog();
234
+ return /* @__PURE__ */ jsx(AlertDialog.Portal, {
235
+ className: cn$1(slots.portal(), className),
236
+ ...props
237
+ });
238
+ };
239
+ const AlertDialogBackdrop = ({ className, ...props }) => {
240
+ const { slots } = useAlertDialog();
241
+ return /* @__PURE__ */ jsx(AlertDialog.Backdrop, {
242
+ className: cn$1(slots.backdrop(), className),
243
+ ...props
244
+ });
245
+ };
246
+ const AlertDialogViewport = ({ className, ...props }) => {
247
+ const { slots } = useAlertDialog();
248
+ return /* @__PURE__ */ jsx(AlertDialog.Viewport, {
249
+ className: cn$1(slots.viewport(), className),
250
+ ...props
251
+ });
252
+ };
253
+ const AlertDialogPopup = ({ className, ...props }) => {
254
+ const { slots } = useAlertDialog();
255
+ return /* @__PURE__ */ jsx(AlertDialog.Popup, {
256
+ className: cn$1(slots.popup(), className),
257
+ ...props
258
+ });
259
+ };
260
+ const AlertDialogTitle = ({ className, ...props }) => {
261
+ const { slots } = useAlertDialog();
262
+ return /* @__PURE__ */ jsx(AlertDialog.Title, {
263
+ className: cn$1(slots.title(), className),
264
+ ...props
265
+ });
266
+ };
267
+ const AlertDialogDescription = ({ className, ...props }) => {
268
+ const { slots } = useAlertDialog();
269
+ return /* @__PURE__ */ jsx(AlertDialog.Description, {
270
+ className: cn$1(slots.description(), className),
271
+ ...props
272
+ });
273
+ };
274
+ const AlertDialogClose = ({ className, children, ...props }) => {
275
+ const { slots } = useAlertDialog();
276
+ return /* @__PURE__ */ jsx(AlertDialog.Close, {
277
+ className: cn$1(slots.close(), className),
278
+ ...props,
279
+ children: children ?? /* @__PURE__ */ jsx(LucideX, {})
280
+ });
281
+ };
282
+ var alert_dialog_default = Object.assign(AlertDialog$1, {
283
+ Backdrop: AlertDialogBackdrop,
284
+ Close: AlertDialogClose,
285
+ Description: AlertDialogDescription,
286
+ Popup: AlertDialogPopup,
287
+ Portal: AlertDialogPortal,
288
+ Root: AlertDialog$1,
289
+ Title: AlertDialogTitle,
290
+ Trigger: AlertDialogTrigger,
291
+ Viewport: AlertDialogViewport
292
+ });
92
293
 
93
294
  //#endregion
94
295
  //#region src/components/avatar/avatar.context.ts
@@ -144,10 +345,11 @@ const AvatarFallback = ({ className, ...props }) => {
144
345
  ...props
145
346
  });
146
347
  };
147
- Avatar$1.Fallback = AvatarFallback;
148
- Avatar$1.Image = AvatarImage;
149
- Avatar$1.Root = Avatar$1;
150
- var avatar_default = Avatar$1;
348
+ var avatar_default = Object.assign(Avatar$1, {
349
+ Fallback: AvatarFallback,
350
+ Image: AvatarImage,
351
+ Root: Avatar$1
352
+ });
151
353
 
152
354
  //#endregion
153
355
  //#region src/components/button/button.variants.ts
@@ -282,58 +484,14 @@ const CardDescription = ({ className, ...props }) => {
282
484
  });
283
485
  };
284
486
  /** Exports */
285
- Card.Body = CardBody;
286
- Card.Description = CardDescription;
287
- Card.Footer = CardFooter;
288
- Card.Header = CardHeader;
289
- Card.Root = Card;
290
- Card.Title = CardTitle;
291
- var card_default = Card;
292
-
293
- //#endregion
294
- //#region src/components/checkbox/checkbox.context.ts
295
- const CheckboxContext = createContext(null);
296
-
297
- //#endregion
298
- //#region src/components/checkbox/checkbox.variants.ts
299
- const checkboxVariants = tv({ slots: {
300
- checkboxIcon: "checkbox__icon",
301
- indicator: "checkbox__indicator",
302
- label: "checkbox__label",
303
- root: "checkbox"
304
- } });
305
-
306
- //#endregion
307
- //#region src/components/checkbox/use-checkbox.ts
308
- const useCheckbox = () => {
309
- const ctx = useContext(CheckboxContext);
310
- if (!ctx) throw new Error("CheckboxContext must be used with in the Checkbox component.");
311
- return ctx;
312
- };
313
-
314
- //#endregion
315
- //#region src/components/checkbox/checkbox.tsx
316
- const Checkbox$1 = ({ className, ...props }) => {
317
- const slots = useMemo(() => checkboxVariants(), []);
318
- return /* @__PURE__ */ jsx(CheckboxContext.Provider, {
319
- value: { slots },
320
- children: /* @__PURE__ */ jsx(Checkbox.Root, {
321
- className: cn$1(className, slots.root()),
322
- ...props
323
- })
324
- });
325
- };
326
- const CheckboxIndicator = ({ className, ...props }) => {
327
- const { slots } = useCheckbox();
328
- return /* @__PURE__ */ jsx(Checkbox.Indicator, {
329
- className: cn$1(className, slots.indicator()),
330
- ...props,
331
- children: /* @__PURE__ */ jsx(LucideCheck, { className: slots.checkboxIcon() })
332
- });
333
- };
334
- Checkbox$1.Indicator = CheckboxIndicator;
335
- Checkbox$1.Root = Checkbox$1;
336
- var checkbox_default = Checkbox$1;
487
+ var card_default = Object.assign(Card, {
488
+ Body: CardBody,
489
+ Description: CardDescription,
490
+ Footer: CardFooter,
491
+ Header: CardHeader,
492
+ Root: Card,
493
+ Title: CardTitle
494
+ });
337
495
 
338
496
  //#endregion
339
497
  //#region src/components/checkbox-group/checkbox-group.variants.ts
@@ -400,6 +558,22 @@ const Container = ({ className, ...props }) => {
400
558
  };
401
559
  var container_default = Container;
402
560
 
561
+ //#endregion
562
+ //#region src/components/description/description.variants.ts
563
+ const descriptionVariants = tv({ base: "description" });
564
+
565
+ //#endregion
566
+ //#region src/components/description/description.tsx
567
+ const Description = ({ className, ...props }) => {
568
+ return /* @__PURE__ */ jsx(Text, {
569
+ className: cn$1(className, descriptionVariants()),
570
+ "data-slot": "description",
571
+ slot: "description",
572
+ ...props
573
+ });
574
+ };
575
+ var description_default = Description;
576
+
403
577
  //#endregion
404
578
  //#region src/components/dialog/dialog.context.ts
405
579
  const DialogContext = createContext(null);
@@ -435,7 +609,7 @@ const Dialog$1 = ({ ...props }) => {
435
609
  children: /* @__PURE__ */ jsx(Dialog.Root, { ...props })
436
610
  });
437
611
  };
438
- const DialogTrigger = ({ className, ...props }) => {
612
+ const DialogTrigger$1 = ({ className, ...props }) => {
439
613
  const { slots } = useDialog();
440
614
  return /* @__PURE__ */ jsx(Dialog.Trigger, {
441
615
  className: cn$1(slots.trigger(), className),
@@ -492,93 +666,188 @@ const DialogClose = ({ className, ...props }) => {
492
666
  children: /* @__PURE__ */ jsx(LucideX, {})
493
667
  });
494
668
  };
495
- Dialog$1.Backdrop = DialogBackdrop;
496
- Dialog$1.Close = DialogClose;
497
- Dialog$1.Description = DialogDescription;
498
- Dialog$1.Popup = DialogPopup;
499
- Dialog$1.Portal = DialogPortal;
500
- Dialog$1.Root = Dialog$1;
501
- Dialog$1.Title = DialogTitle;
502
- Dialog$1.Trigger = DialogTrigger;
503
- Dialog$1.Viewport = DialogViewport;
504
- var dialog_default = Dialog$1;
669
+ var dialog_default = Object.assign(Dialog$1, {
670
+ Backdrop: DialogBackdrop,
671
+ Close: DialogClose,
672
+ Description: DialogDescription,
673
+ Popup: DialogPopup,
674
+ Portal: DialogPortal,
675
+ Root: Dialog$1,
676
+ Title: DialogTitle,
677
+ Trigger: DialogTrigger$1,
678
+ Viewport: DialogViewport
679
+ });
505
680
 
506
681
  //#endregion
507
- //#region src/components/field/field.context.ts
508
- const FieldContext = createContext(null);
682
+ //#region src/components/drawer/drawer.context.ts
683
+ const DrawerContext = createContext(null);
509
684
 
510
685
  //#endregion
511
- //#region src/components/field/field.variants.ts
512
- const fieldVariants = tv({
686
+ //#region src/components/drawer/drawer.variants.ts
687
+ const drawerVariants = tv({
688
+ defaultVariants: { position: "left" },
513
689
  slots: {
514
- control: "input",
515
- description: "field__description",
516
- error: "field__error",
517
- label: "label",
518
- root: "field"
690
+ backdrop: "drawer__backdrop",
691
+ close: "drawer__close",
692
+ description: "drawer__description",
693
+ popup: "drawer__popup",
694
+ portal: "drawer__portal",
695
+ root: "drawer",
696
+ title: "drawer__title",
697
+ trigger: "drawer__trigger",
698
+ viewport: "drawer__viewport"
519
699
  },
520
- variants: { size: {
521
- lg: { control: "input--lg" },
522
- md: { control: "input--md" },
523
- sm: { control: "input--sm" }
700
+ variants: { position: {
701
+ bottom: { popup: "drawer--bottom" },
702
+ left: { popup: "drawer--left" },
703
+ right: { popup: "drawer--right" },
704
+ top: { popup: "drawer--top" }
524
705
  } }
525
706
  });
526
707
 
527
708
  //#endregion
528
- //#region src/components/field/use-field.ts
529
- const useField = () => {
530
- const ctx = useContext(FieldContext);
531
- if (!ctx) throw new Error("FieldContext must be used with in the Field component.");
532
- return ctx;
709
+ //#region src/components/drawer/use-drawer.ts
710
+ const useDrawer = () => {
711
+ const context = useContext(DrawerContext);
712
+ if (!context) throw new Error("useDrawer must be used within a DrawerProvider");
713
+ return context;
533
714
  };
534
715
 
535
716
  //#endregion
536
- //#region src/components/field/field.tsx
537
- const Field$1 = ({ className, size, ...props }) => {
538
- const slots = useMemo(() => fieldVariants({ size }), [size]);
539
- console.log(slots.root());
540
- return /* @__PURE__ */ jsx(FieldContext, {
541
- value: { slots },
542
- children: /* @__PURE__ */ jsx(Field.Root, {
543
- className: cn$1(className, slots.root()),
544
- ...props
545
- })
717
+ //#region src/components/drawer/drawer.tsx
718
+ const Drawer = ({ position, ...props }) => {
719
+ return /* @__PURE__ */ jsx(DrawerContext, {
720
+ value: { slots: useMemo(() => drawerVariants({ position }), [position]) },
721
+ children: /* @__PURE__ */ jsx(Dialog.Root, { ...props })
546
722
  });
547
723
  };
548
- const FieldLabel = ({ className, ...props }) => {
549
- const { slots } = useField();
550
- return /* @__PURE__ */ jsx(Field.Label, {
551
- className: cn$1(className, slots.label()),
724
+ const DrawerTrigger = ({ className, ...props }) => {
725
+ const { slots } = useDrawer();
726
+ return /* @__PURE__ */ jsx(Dialog.Trigger, {
727
+ className: cn$1(slots.trigger(), className),
552
728
  ...props
553
729
  });
554
730
  };
555
- const FieldDescription = ({ className, ...props }) => {
556
- const { slots } = useField();
557
- return /* @__PURE__ */ jsx(Field.Description, {
558
- className: cn$1(className, slots.description()),
731
+ const DrawerPortal = ({ className, ...props }) => {
732
+ const { slots } = useDrawer();
733
+ return /* @__PURE__ */ jsx(Dialog.Portal, {
734
+ className: cn$1(slots.portal(), className),
559
735
  ...props
560
736
  });
561
737
  };
562
- const FieldControl = ({ className, ...props }) => {
563
- const { slots } = useField();
564
- return /* @__PURE__ */ jsx(Field.Control, {
565
- className: cn$1(className, slots.control()),
738
+ const DrawerBackdrop = ({ className, ...props }) => {
739
+ const { slots } = useDrawer();
740
+ return /* @__PURE__ */ jsx(Dialog.Backdrop, {
741
+ className: cn$1(slots.backdrop(), className),
742
+ ...props
743
+ });
744
+ };
745
+ const DrawerViewport = ({ className, ...props }) => {
746
+ const { slots } = useDrawer();
747
+ return /* @__PURE__ */ jsx(Dialog.Viewport, {
748
+ className: cn$1(slots.viewport(), className),
749
+ ...props
750
+ });
751
+ };
752
+ const DrawerPopup = ({ className, ...props }) => {
753
+ const { slots } = useDrawer();
754
+ return /* @__PURE__ */ jsx(Dialog.Popup, {
755
+ className: cn$1(slots.popup(), className),
756
+ ...props
757
+ });
758
+ };
759
+ const DrawerTitle = ({ className, ...props }) => {
760
+ const { slots } = useDrawer();
761
+ return /* @__PURE__ */ jsx(Dialog.Title, {
762
+ className: cn$1(slots.title(), className),
566
763
  ...props
567
764
  });
568
765
  };
569
- const FieldError = ({ className, ...props }) => {
570
- const { slots } = useField();
571
- return /* @__PURE__ */ jsx(Field.Error, {
572
- className: cn$1(slots.error(), className),
766
+ const DrawerDescription = ({ className, ...props }) => {
767
+ const { slots } = useDrawer();
768
+ return /* @__PURE__ */ jsx(Dialog.Description, {
769
+ className: cn$1(slots.description(), className),
573
770
  ...props
574
771
  });
575
772
  };
576
- Field$1.Control = FieldControl;
577
- Field$1.Description = FieldDescription;
578
- Field$1.Error = FieldError;
579
- Field$1.Label = FieldLabel;
580
- Field$1.Root = Field$1;
581
- var field_default = Field$1;
773
+ const DrawerClose = ({ className, children, ...props }) => {
774
+ const { slots } = useDrawer();
775
+ return /* @__PURE__ */ jsx(Dialog.Close, {
776
+ className: cn$1(slots.close(), className),
777
+ ...props,
778
+ children: children ?? /* @__PURE__ */ jsx(LucideX, {})
779
+ });
780
+ };
781
+ var drawer_default = Object.assign(Drawer, {
782
+ Backdrop: DrawerBackdrop,
783
+ Close: DrawerClose,
784
+ Description: DrawerDescription,
785
+ Popup: DrawerPopup,
786
+ Portal: DrawerPortal,
787
+ Root: Drawer,
788
+ Title: DrawerTitle,
789
+ Trigger: DrawerTrigger,
790
+ Viewport: DrawerViewport
791
+ });
792
+
793
+ //#endregion
794
+ //#region src/components/field-error/field-error.variants.ts
795
+ const fieldErrorVariants = tv({ base: "field-error" });
796
+
797
+ //#endregion
798
+ //#region src/components/field-error/field-error.tsx
799
+ const FieldError$1 = ({ className, ...props }) => {
800
+ return /* @__PURE__ */ jsx(FieldError, {
801
+ className: cn$1(className, fieldErrorVariants()),
802
+ "data-slot": "field-error",
803
+ "data-visible": true,
804
+ ...props
805
+ });
806
+ };
807
+ var field_error_default = FieldError$1;
808
+
809
+ //#endregion
810
+ //#region src/components/fieldset/fieldset.context.ts
811
+ const FieldsetContext = createContext(null);
812
+
813
+ //#endregion
814
+ //#region src/components/fieldset/fieldset.variants.ts
815
+ const fieldsetVariants = tv({ slots: {
816
+ legend: "fieldset__legend",
817
+ root: "fieldset"
818
+ } });
819
+
820
+ //#endregion
821
+ //#region src/components/fieldset/use-fieldset.ts
822
+ const useFieldset = () => {
823
+ const context = useContext(FieldsetContext);
824
+ if (!context) throw new Error("useFieldset must be used within a FieldsetProvider");
825
+ return context;
826
+ };
827
+
828
+ //#endregion
829
+ //#region src/components/fieldset/fieldset.tsx
830
+ const Fieldset$1 = ({ className, ...props }) => {
831
+ const slots = useMemo(() => fieldsetVariants(), []);
832
+ return /* @__PURE__ */ jsx(FieldsetContext, {
833
+ value: { slots },
834
+ children: /* @__PURE__ */ jsx(Fieldset.Root, {
835
+ className: cn$1(className, slots.root()),
836
+ ...props
837
+ })
838
+ });
839
+ };
840
+ const FieldsetLegend = ({ className, ...props }) => {
841
+ const { slots } = useFieldset();
842
+ return /* @__PURE__ */ jsx(Fieldset.Legend, {
843
+ className: cn$1(slots.legend(), className),
844
+ ...props
845
+ });
846
+ };
847
+ var fieldset_default = Object.assign(Fieldset$1, {
848
+ Legend: FieldsetLegend,
849
+ Root: Fieldset$1
850
+ });
582
851
 
583
852
  //#endregion
584
853
  //#region src/components/form/form.variants.ts
@@ -586,30 +855,45 @@ const formVariants = tv({ base: "form" });
586
855
 
587
856
  //#endregion
588
857
  //#region src/components/form/form.tsx
589
- const Form = ({ className, ...props }) => {
590
- return /* @__PURE__ */ jsx("form", {
858
+ const Form$1 = ({ className, ...props }) => {
859
+ return /* @__PURE__ */ jsx(Form, {
591
860
  className: cn$1(className, formVariants()),
592
861
  ...props
593
862
  });
594
863
  };
595
- var form_default = Form;
864
+ var form_default = Form$1;
596
865
 
597
866
  //#endregion
598
- //#region src/components/input/input.variants.ts
599
- const inputVariants = tv({
600
- base: "input",
601
- variants: { inputSize: {
602
- lg: "input--lg",
603
- md: "input--md",
604
- sm: "input--sm"
605
- } }
867
+ //#region src/components/icon-button/icon-button.variants.ts
868
+ const iconButtonVariants = tv({
869
+ base: "icon-button",
870
+ defaultVariants: { isIconOnly: true },
871
+ extend: buttonVariants
606
872
  });
607
873
 
874
+ //#endregion
875
+ //#region src/components/icon-button/icon-button.tsx
876
+ const IconButton = ({ className, variant, size, isIconOnly, ...props }) => {
877
+ return /* @__PURE__ */ jsx(button_default, {
878
+ className: cn$1(className, iconButtonVariants({
879
+ isIconOnly,
880
+ size,
881
+ variant
882
+ })),
883
+ ...props
884
+ });
885
+ };
886
+ var icon_button_default = IconButton;
887
+
888
+ //#endregion
889
+ //#region src/components/input/input.variants.ts
890
+ const inputVariants = tv({ base: "input" });
891
+
608
892
  //#endregion
609
893
  //#region src/components/input/input.tsx
610
- const Input$1 = ({ className, inputSize, ...props }) => {
894
+ const Input$1 = ({ className, ...props }) => {
611
895
  return /* @__PURE__ */ jsx(Input, {
612
- className: cn$1(className, inputVariants({ inputSize })),
896
+ className: cn$1(className, inputVariants()),
613
897
  ...props
614
898
  });
615
899
  };
@@ -621,13 +905,13 @@ const labelVariants = tv({ base: "label" });
621
905
 
622
906
  //#endregion
623
907
  //#region src/components/label/label.tsx
624
- const Label = ({ className, ...props }) => {
625
- return /* @__PURE__ */ jsx("label", {
908
+ const Label$1 = ({ className, ...props }) => {
909
+ return /* @__PURE__ */ jsx(Label, {
626
910
  className: cn$1(className, labelVariants()),
627
911
  ...props
628
912
  });
629
913
  };
630
- var label_default = Label;
914
+ var label_default = Label$1;
631
915
 
632
916
  //#endregion
633
917
  //#region src/components/link/link.variants.ts
@@ -688,9 +972,10 @@ const ListItem = ({ className, ...props }) => {
688
972
  ...props
689
973
  });
690
974
  };
691
- List.Root = List;
692
- List.Item = ListItem;
693
- var list_default = List;
975
+ var list_default = Object.assign(List, {
976
+ Item: ListItem,
977
+ Root: List
978
+ });
694
979
 
695
980
  //#endregion
696
981
  //#region src/components/menu/menu.context.ts
@@ -769,11 +1054,12 @@ const MenuPopup = ({ className, ...props }) => {
769
1054
  ...props
770
1055
  });
771
1056
  };
772
- const MenuArrow = ({ className, ...props }) => {
1057
+ const MenuArrow = ({ className, children, ...props }) => {
773
1058
  const { slots } = useMenu();
774
1059
  return /* @__PURE__ */ jsx(Menu.Arrow, {
775
1060
  className: cn$1(slots.arrow(), className),
776
- ...props
1061
+ ...props,
1062
+ children: children ?? /* @__PURE__ */ jsx(LucideChevronUp, {})
777
1063
  });
778
1064
  };
779
1065
  const MenuItem = ({ className, ...props }) => {
@@ -835,23 +1121,24 @@ const MenuSubmenuTrigger = ({ className, ...props }) => {
835
1121
  ...props
836
1122
  });
837
1123
  };
838
- Menu$1.Arrow = MenuArrow;
839
- Menu$1.Backdrop = MenuBackdrop;
840
- Menu$1.CheckboxItem = MenuCheckboxItem;
841
- Menu$1.Group = MenuGroup;
842
- Menu$1.GroupLabel = MenuGroupLabel;
843
- Menu$1.Item = MenuItem;
844
- Menu$1.Popup = MenuPopup;
845
- Menu$1.Portal = MenuPortal;
846
- Menu$1.Positioner = MenuPositioner;
847
- Menu$1.RadioGroup = MenuRadioGroup;
848
- Menu$1.RadioItem = MenuRadioItem;
849
- Menu$1.Root = Menu$1;
850
- Menu$1.Separator = MenuSeparator;
851
- Menu$1.Submenu = MenuSubmenu;
852
- Menu$1.SubmenuTrigger = MenuSubmenuTrigger;
853
- Menu$1.Trigger = MenuTrigger;
854
- var menu_default = Menu$1;
1124
+ var menu_default = Object.assign(Menu$1, {
1125
+ Arrow: MenuArrow,
1126
+ Backdrop: MenuBackdrop,
1127
+ CheckboxItem: MenuCheckboxItem,
1128
+ Group: MenuGroup,
1129
+ GroupLabel: MenuGroupLabel,
1130
+ Item: MenuItem,
1131
+ Popup: MenuPopup,
1132
+ Portal: MenuPortal,
1133
+ Positioner: MenuPositioner,
1134
+ RadioGroup: MenuRadioGroup,
1135
+ RadioItem: MenuRadioItem,
1136
+ Root: Menu$1,
1137
+ Separator: MenuSeparator,
1138
+ Submenu: MenuSubmenu,
1139
+ SubmenuTrigger: MenuSubmenuTrigger,
1140
+ Trigger: MenuTrigger
1141
+ });
855
1142
 
856
1143
  //#endregion
857
1144
  //#region src/components/meter/meter.context.ts
@@ -933,12 +1220,34 @@ const MeterIndicator = ({ className, ...props }) => {
933
1220
  ...props
934
1221
  });
935
1222
  };
936
- Meter$1.Indicator = MeterIndicator;
937
- Meter$1.Label = MeterLabel;
938
- Meter$1.Root = Meter$1;
939
- Meter$1.Track = MeterTrack;
940
- Meter$1.Value = MeterValue;
941
- var meter_default = Meter$1;
1223
+ var meter_default = Object.assign(Meter$1, {
1224
+ Indicator: MeterIndicator,
1225
+ Label: MeterLabel,
1226
+ Root: Meter$1,
1227
+ Track: MeterTrack,
1228
+ Value: MeterValue
1229
+ });
1230
+
1231
+ //#endregion
1232
+ //#region src/components/separator/separator.variants.ts
1233
+ const separatorVariants = tv({
1234
+ base: "separator",
1235
+ defaultVariants: { orientation: "horizontal" },
1236
+ variants: { orientation: {
1237
+ horizontal: "separator--horizontal",
1238
+ vertical: "separator--vertical"
1239
+ } }
1240
+ });
1241
+
1242
+ //#endregion
1243
+ //#region src/components/separator/separator.tsx
1244
+ const Separator$1 = ({ className, orientation, ...props }) => {
1245
+ return /* @__PURE__ */ jsx(Separator, {
1246
+ className: cn$1(className, separatorVariants({ orientation })),
1247
+ ...props
1248
+ });
1249
+ };
1250
+ var separator_default = Separator$1;
942
1251
 
943
1252
  //#endregion
944
1253
  //#region src/components/navbar/navbar.context.ts
@@ -1025,12 +1334,20 @@ const NavbarToggle = ({ className, ...props }) => {
1025
1334
  children: /* @__PURE__ */ jsx(Icon, { className: "size-5" })
1026
1335
  });
1027
1336
  };
1028
- const NavbarMenu = ({ className, ...props }) => {
1029
- const { slots, isOpen } = useNavbar();
1030
- return /* @__PURE__ */ jsx("ul", {
1031
- className: cn$1(slots.menu(), className),
1032
- "data-expanded": isOpen ? "true" : "false",
1033
- ...props
1337
+ const NavbarMenu = ({ className, header, ...props }) => {
1338
+ const { slots, isOpen, onOpenChange } = useNavbar();
1339
+ return /* @__PURE__ */ jsx(drawer_default, {
1340
+ onOpenChange,
1341
+ open: isOpen,
1342
+ children: /* @__PURE__ */ jsxs(drawer_default.Portal, { children: [/* @__PURE__ */ jsx(drawer_default.Backdrop, {}), /* @__PURE__ */ jsx(drawer_default.Viewport, { children: /* @__PURE__ */ jsxs(drawer_default.Popup, { children: [
1343
+ header,
1344
+ /* @__PURE__ */ jsx(drawer_default.Close, {}),
1345
+ /* @__PURE__ */ jsx(separator_default, {}),
1346
+ /* @__PURE__ */ jsx("ul", {
1347
+ className: cn$1(slots.menu(), className),
1348
+ ...props
1349
+ })
1350
+ ] }) })] })
1034
1351
  });
1035
1352
  };
1036
1353
  const NavbarMenuItem = ({ className, ...props }) => {
@@ -1040,36 +1357,450 @@ const NavbarMenuItem = ({ className, ...props }) => {
1040
1357
  ...props
1041
1358
  });
1042
1359
  };
1043
- Navbar.Root = Navbar;
1044
- Navbar.Container = NavbarContainer;
1045
- Navbar.Content = NavbarContent;
1046
- Navbar.List = NavbarList;
1047
- Navbar.ListItem = NavbarListItem;
1048
- Navbar.Toggle = NavbarToggle;
1049
- Navbar.Menu = NavbarMenu;
1050
- Navbar.MenuItem = NavbarMenuItem;
1051
- var navbar_default = Navbar;
1360
+ var navbar_default = Object.assign(Navbar, {
1361
+ Container: NavbarContainer,
1362
+ Content: NavbarContent,
1363
+ List: NavbarList,
1364
+ ListItem: NavbarListItem,
1365
+ Menu: NavbarMenu,
1366
+ MenuItem: NavbarMenuItem,
1367
+ Root: Navbar,
1368
+ Toggle: NavbarToggle
1369
+ });
1052
1370
 
1053
1371
  //#endregion
1054
- //#region src/components/separator/separator.variants.ts
1055
- const separatorVariants = tv({
1056
- base: "separator",
1057
- defaultVariants: { orientation: "horizontal" },
1058
- variants: { orientation: {
1059
- horizontal: "separator--horizontal",
1060
- vertical: "separator--vertical"
1061
- } }
1372
+ //#region src/components/overlay-trigger/overlay-trigger.tsx
1373
+ const OverlayTrigger = ({ ...props }) => {
1374
+ return /* @__PURE__ */ jsx(DialogTrigger, { ...props });
1375
+ };
1376
+ var overlay_trigger_default = OverlayTrigger;
1377
+
1378
+ //#endregion
1379
+ //#region src/components/popover/popover.variants.ts
1380
+ const popoverVariants = tv({ base: "popover" });
1381
+
1382
+ //#endregion
1383
+ //#region src/components/popover/popover.tsx
1384
+ const Popover$1 = ({ ...props }) => {
1385
+ return /* @__PURE__ */ jsx(Popover, {
1386
+ className: cn$1(popoverVariants()),
1387
+ ...props
1388
+ });
1389
+ };
1390
+ var popover_default = Popover$1;
1391
+
1392
+ //#endregion
1393
+ //#region src/components/progress/progress.context.ts
1394
+ const ProgressContext = createContext(null);
1395
+
1396
+ //#endregion
1397
+ //#region src/components/progress/progress.variants.ts
1398
+ const progressVariants = tv({
1399
+ defaultVariants: {
1400
+ size: "md",
1401
+ variant: "primary"
1402
+ },
1403
+ slots: {
1404
+ indicator: "progress__indicator",
1405
+ label: "progress__label",
1406
+ root: "progress",
1407
+ track: "progress__track",
1408
+ value: "progress__value"
1409
+ },
1410
+ variants: {
1411
+ size: {
1412
+ lg: { root: "progress--lg" },
1413
+ md: { root: "progress--md" },
1414
+ sm: { root: "progress--sm" }
1415
+ },
1416
+ variant: {
1417
+ danger: { root: "progress--danger" },
1418
+ primary: { root: "progress--primary" },
1419
+ secondary: { root: "progress--secondary" },
1420
+ success: { root: "progress--success" }
1421
+ }
1422
+ }
1062
1423
  });
1063
1424
 
1064
1425
  //#endregion
1065
- //#region src/components/separator/separator.tsx
1066
- const Separator$1 = ({ className, orientation, ...props }) => {
1067
- return /* @__PURE__ */ jsx(Separator, {
1068
- className: cn$1(className, separatorVariants({ orientation })),
1426
+ //#region src/components/progress/use-progress.ts
1427
+ const useProgress = () => {
1428
+ const context = useContext(ProgressContext);
1429
+ if (!context) throw new Error("useProgress must be used within a ProgressProvider");
1430
+ return context;
1431
+ };
1432
+
1433
+ //#endregion
1434
+ //#region src/components/progress/progress.tsx
1435
+ const Progress$1 = ({ className, variant, size, ...props }) => {
1436
+ const slots = useMemo(() => progressVariants({
1437
+ size,
1438
+ variant
1439
+ }), [variant, size]);
1440
+ return /* @__PURE__ */ jsx(ProgressContext, {
1441
+ value: { slots },
1442
+ children: /* @__PURE__ */ jsx(Progress.Root, {
1443
+ className: cn$1(className, slots.root()),
1444
+ ...props
1445
+ })
1446
+ });
1447
+ };
1448
+ const ProgressLabel = ({ className, ...props }) => {
1449
+ const { slots } = useProgress();
1450
+ return /* @__PURE__ */ jsx(Progress.Label, {
1451
+ className: cn$1(className, slots.label()),
1069
1452
  ...props
1070
1453
  });
1071
1454
  };
1072
- var separator_default = Separator$1;
1455
+ const ProgressValue = ({ className, ...props }) => {
1456
+ const { slots } = useProgress();
1457
+ return /* @__PURE__ */ jsx(Progress.Value, {
1458
+ className: cn$1(className, slots.value()),
1459
+ ...props
1460
+ });
1461
+ };
1462
+ const ProgressTrack = ({ className, ...props }) => {
1463
+ const { slots } = useProgress();
1464
+ return /* @__PURE__ */ jsx(Progress.Track, {
1465
+ className: cn$1(className, slots.track()),
1466
+ ...props
1467
+ });
1468
+ };
1469
+ const ProgressIndicator = ({ className, ...props }) => {
1470
+ const { slots } = useProgress();
1471
+ return /* @__PURE__ */ jsx(Progress.Indicator, {
1472
+ className: cn$1(className, slots.indicator()),
1473
+ ...props
1474
+ });
1475
+ };
1476
+ var progress_default = Object.assign(Progress$1, {
1477
+ Indicator: ProgressIndicator,
1478
+ Label: ProgressLabel,
1479
+ Root: Progress$1,
1480
+ Track: ProgressTrack,
1481
+ Value: ProgressValue
1482
+ });
1483
+
1484
+ //#endregion
1485
+ //#region src/components/radio/radio.context.ts
1486
+ const RadioContext = createContext(null);
1487
+
1488
+ //#endregion
1489
+ //#region src/components/radio/radio.variants.ts
1490
+ const radioVariants = tv({ slots: {
1491
+ indicator: "radio__indicator",
1492
+ root: "radio"
1493
+ } });
1494
+
1495
+ //#endregion
1496
+ //#region src/components/radio/use-radio.ts
1497
+ const useRadio = () => {
1498
+ const context = useContext(RadioContext);
1499
+ if (!context) throw new Error("useRadio must be used within a RadioProvider");
1500
+ return context;
1501
+ };
1502
+
1503
+ //#endregion
1504
+ //#region src/components/radio/radio.tsx
1505
+ const Radio$1 = ({ className, ...props }) => {
1506
+ const slots = useMemo(() => radioVariants({}), []);
1507
+ return /* @__PURE__ */ jsx(RadioContext, {
1508
+ value: { slots },
1509
+ children: /* @__PURE__ */ jsx(Radio.Root, {
1510
+ className: cn$1(slots.root(), className),
1511
+ ...props
1512
+ })
1513
+ });
1514
+ };
1515
+ const RadioIndicator = ({ className, ...props }) => {
1516
+ const { slots } = useRadio();
1517
+ return /* @__PURE__ */ jsx(Radio.Indicator, {
1518
+ className: cn$1(slots.indicator(), className),
1519
+ ...props
1520
+ });
1521
+ };
1522
+ var radio_default = Object.assign(Radio$1, {
1523
+ Indicator: RadioIndicator,
1524
+ Root: Radio$1
1525
+ });
1526
+
1527
+ //#endregion
1528
+ //#region src/components/radio-group/radio-group.variants.ts
1529
+ const radioGroupVariants = tv({ base: "radio-group" });
1530
+
1531
+ //#endregion
1532
+ //#region src/components/radio-group/radio-group.tsx
1533
+ const RadioGroup$1 = ({ className, ...props }) => {
1534
+ return /* @__PURE__ */ jsx(RadioGroup, {
1535
+ className: cn$1(className, useMemo(() => radioGroupVariants(), [])),
1536
+ ...props
1537
+ });
1538
+ };
1539
+ var radio_group_default = RadioGroup$1;
1540
+
1541
+ //#endregion
1542
+ //#region src/components/select/select.context.ts
1543
+ const SelectContext = createContext(null);
1544
+
1545
+ //#endregion
1546
+ //#region src/components/select/select.variants.ts
1547
+ const selectVariants = tv({ slots: {
1548
+ control: "select__control",
1549
+ description: "select__description",
1550
+ error: "select__error",
1551
+ label: "select__label",
1552
+ option: "select__option",
1553
+ root: "select"
1554
+ } });
1555
+
1556
+ //#endregion
1557
+ //#region src/components/select/use-select.ts
1558
+ const useSelect = () => {
1559
+ const context = useContext(SelectContext);
1560
+ if (!context) throw new Error("useSelect must be used within a SelectProvider");
1561
+ return context;
1562
+ };
1563
+
1564
+ //#endregion
1565
+ //#region src/components/select/select.tsx
1566
+ const Select = ({ className, ...props }) => {
1567
+ const slots = useMemo(() => selectVariants(), []);
1568
+ const generatedId = useId();
1569
+ const inputId = props.id || generatedId;
1570
+ return /* @__PURE__ */ jsx(SelectContext.Provider, {
1571
+ value: {
1572
+ id: inputId,
1573
+ slots
1574
+ },
1575
+ children: /* @__PURE__ */ jsx("div", {
1576
+ className: cn$1(className, slots.root()),
1577
+ ...props
1578
+ })
1579
+ });
1580
+ };
1581
+ const SelectLabel = ({ className, ...props }) => {
1582
+ const { slots, id } = useSelect();
1583
+ return /* @__PURE__ */ jsx("label", {
1584
+ className: cn$1(className, slots.label()),
1585
+ htmlFor: id,
1586
+ ...props
1587
+ });
1588
+ };
1589
+ const SelectControl = ({ className, ...props }) => {
1590
+ const { slots, id } = useSelect();
1591
+ return /* @__PURE__ */ jsx("select", {
1592
+ className: cn$1(className, slots.control()),
1593
+ id,
1594
+ ...props
1595
+ });
1596
+ };
1597
+ const SelectOption = ({ className, ...props }) => {
1598
+ const { slots } = useSelect();
1599
+ return /* @__PURE__ */ jsx("option", {
1600
+ className: cn$1(className, slots.option()),
1601
+ ...props
1602
+ });
1603
+ };
1604
+ const SelectDescription = ({ className, ...props }) => {
1605
+ const { slots } = useSelect();
1606
+ return /* @__PURE__ */ jsx("p", {
1607
+ className: cn$1(className, slots.description()),
1608
+ ...props
1609
+ });
1610
+ };
1611
+ const SelectError = ({ className, ...props }) => {
1612
+ const { slots } = useSelect();
1613
+ return /* @__PURE__ */ jsx("p", {
1614
+ className: cn$1(className, slots.error()),
1615
+ ...props
1616
+ });
1617
+ };
1618
+ var select_default = Object.assign(Select, {
1619
+ Control: SelectControl,
1620
+ Description: SelectDescription,
1621
+ Error: SelectError,
1622
+ Label: SelectLabel,
1623
+ Option: SelectOption,
1624
+ Root: Select
1625
+ });
1626
+
1627
+ //#endregion
1628
+ //#region src/components/sidebar/sidebar.context.ts
1629
+ const SidebarContext = createContext(null);
1630
+
1631
+ //#endregion
1632
+ //#region src/components/sidebar/sidebar.variants.ts
1633
+ const sidebarVariants = tv({ slots: {
1634
+ content: "sidebar__content",
1635
+ footer: "sidebar__footer",
1636
+ header: "sidebar__header",
1637
+ outlet: "sidebar__outlet",
1638
+ panel: "sidebar__panel",
1639
+ root: "sidebar",
1640
+ trigger: "sidebar__trigger"
1641
+ } });
1642
+
1643
+ //#endregion
1644
+ //#region src/components/sidebar/use-sidebar.ts
1645
+ const useSidebar = () => {
1646
+ const context = useContext(SidebarContext);
1647
+ if (!context) throw new Error("useSidebar must be used within a SidebarProvider");
1648
+ return context;
1649
+ };
1650
+
1651
+ //#endregion
1652
+ //#region src/components/sidebar/sidebar.tsx
1653
+ const Sidebar = ({ className, isOpen, onOpenChange, ...props }) => {
1654
+ const [internalIsOpen, setInternalIsOpen] = React.useState(false);
1655
+ const isOpenState = isOpen !== void 0 ? isOpen : internalIsOpen;
1656
+ const handleOpenChange = onOpenChange || setInternalIsOpen;
1657
+ const slots = useMemo(() => sidebarVariants({ className }), [className]);
1658
+ return /* @__PURE__ */ jsx(SidebarContext, {
1659
+ value: {
1660
+ isOpen: isOpenState,
1661
+ onOpenChange: handleOpenChange,
1662
+ slots
1663
+ },
1664
+ children: /* @__PURE__ */ jsx("div", {
1665
+ className: slots.root(),
1666
+ "data-open": isOpenState,
1667
+ ...props
1668
+ })
1669
+ });
1670
+ };
1671
+ const SidebarPanel = ({ className, ...props }) => {
1672
+ const { slots } = useSidebar();
1673
+ return /* @__PURE__ */ jsx("aside", {
1674
+ className: cn$1(slots.panel(), className),
1675
+ ...props
1676
+ });
1677
+ };
1678
+ const SidebarHeader = ({ className, ...props }) => {
1679
+ const { slots } = useSidebar();
1680
+ return /* @__PURE__ */ jsx("header", {
1681
+ className: cn$1(slots.header(), className),
1682
+ ...props
1683
+ });
1684
+ };
1685
+ const SidebarContent = ({ className, ...props }) => {
1686
+ const { slots } = useSidebar();
1687
+ return /* @__PURE__ */ jsx("div", {
1688
+ className: cn$1(slots.content(), className),
1689
+ ...props
1690
+ });
1691
+ };
1692
+ const SidebarFooter = ({ className, ...props }) => {
1693
+ const { slots } = useSidebar();
1694
+ return /* @__PURE__ */ jsx("footer", {
1695
+ className: cn$1(slots.footer(), className),
1696
+ ...props
1697
+ });
1698
+ };
1699
+ const SidebarTrigger = ({ className, children, ...props }) => {
1700
+ const { slots, isOpen, onOpenChange } = useSidebar();
1701
+ return /* @__PURE__ */ jsx("button", {
1702
+ "aria-expanded": isOpen,
1703
+ className: cn$1(slots.trigger(), className),
1704
+ onClick: () => onOpenChange(!isOpen),
1705
+ ...props,
1706
+ children: children ?? (isOpen ? /* @__PURE__ */ jsx(LucidePanelLeftClose, {}) : /* @__PURE__ */ jsx(LucidePanelLeftOpen, {}))
1707
+ });
1708
+ };
1709
+ const SidebarOutlet = ({ className, ...props }) => {
1710
+ const { slots } = useSidebar();
1711
+ return /* @__PURE__ */ jsx("div", {
1712
+ className: cn$1(slots.outlet(), className),
1713
+ ...props
1714
+ });
1715
+ };
1716
+ var sidebar_default = Object.assign(Sidebar, {
1717
+ Content: SidebarContent,
1718
+ Footer: SidebarFooter,
1719
+ Header: SidebarHeader,
1720
+ Outlet: SidebarOutlet,
1721
+ Panel: SidebarPanel,
1722
+ Root: Sidebar,
1723
+ Trigger: SidebarTrigger
1724
+ });
1725
+
1726
+ //#endregion
1727
+ //#region src/components/slider/slider.context.ts
1728
+ const SliderContext = createContext(null);
1729
+
1730
+ //#endregion
1731
+ //#region src/components/slider/slider.variants.ts
1732
+ const sliderVariants = tv({ slots: {
1733
+ control: "slider__control",
1734
+ indicator: "slider__indicator",
1735
+ root: "slider",
1736
+ thumb: "slider__thumb",
1737
+ track: "slider__track",
1738
+ value: "slider__value"
1739
+ } });
1740
+
1741
+ //#endregion
1742
+ //#region src/components/slider/use-slider.tsx
1743
+ const useSlider = () => {
1744
+ const context = useContext(SliderContext);
1745
+ if (!context) throw new Error("useSlider must be used within a SliderProvider");
1746
+ return context;
1747
+ };
1748
+
1749
+ //#endregion
1750
+ //#region src/components/slider/slider.tsx
1751
+ const Slider$1 = ({ className, ...props }) => {
1752
+ const slots = useMemo(() => sliderVariants(), []);
1753
+ return /* @__PURE__ */ jsx(SliderContext, {
1754
+ value: { slots },
1755
+ children: /* @__PURE__ */ jsx(Slider.Root, {
1756
+ className: cn$1(className, slots.root()),
1757
+ ...props
1758
+ })
1759
+ });
1760
+ };
1761
+ const SliderValue = ({ className, ...props }) => {
1762
+ const { slots } = useSlider();
1763
+ return /* @__PURE__ */ jsx(Slider.Value, {
1764
+ className: cn$1(className, slots.value()),
1765
+ ...props
1766
+ });
1767
+ };
1768
+ const SliderControl = ({ className, ...props }) => {
1769
+ const { slots } = useSlider();
1770
+ return /* @__PURE__ */ jsx(Slider.Control, {
1771
+ className: cn$1(className, slots.control()),
1772
+ ...props
1773
+ });
1774
+ };
1775
+ const SliderTrack = ({ className, ...props }) => {
1776
+ const { slots } = useSlider();
1777
+ return /* @__PURE__ */ jsx(Slider.Track, {
1778
+ className: cn$1(className, slots.track()),
1779
+ ...props
1780
+ });
1781
+ };
1782
+ const SliderIndicator = ({ className, ...props }) => {
1783
+ const { slots } = useSlider();
1784
+ return /* @__PURE__ */ jsx(Slider.Indicator, {
1785
+ className: cn$1(className, slots.indicator()),
1786
+ ...props
1787
+ });
1788
+ };
1789
+ const SliderThumb = ({ className, ...props }) => {
1790
+ const { slots } = useSlider();
1791
+ return /* @__PURE__ */ jsx(Slider.Thumb, {
1792
+ className: cn$1(className, slots.thumb()),
1793
+ ...props
1794
+ });
1795
+ };
1796
+ var slider_default = Object.assign(Slider$1, {
1797
+ Control: SliderControl,
1798
+ Indicator: SliderIndicator,
1799
+ Root: Slider$1,
1800
+ Thumb: SliderThumb,
1801
+ Track: SliderTrack,
1802
+ Value: SliderValue
1803
+ });
1073
1804
 
1074
1805
  //#endregion
1075
1806
  //#region src/components/switch/switch.context.ts
@@ -1117,9 +1848,98 @@ const SwitchThumb = ({ className, ...props }) => {
1117
1848
  ...props
1118
1849
  });
1119
1850
  };
1120
- Switch$1.Thumb = SwitchThumb;
1121
- Switch$1.Root = Switch$1;
1122
- var switch_default = Switch$1;
1851
+ var switch_default = Object.assign(Switch$1, {
1852
+ Root: Switch$1,
1853
+ Thumb: SwitchThumb
1854
+ });
1855
+
1856
+ //#endregion
1857
+ //#region src/components/table/table.context.ts
1858
+ const TableContext = createContext(null);
1859
+
1860
+ //#endregion
1861
+ //#region src/components/table/table.variants.ts
1862
+ const tableVariants = tv({ slots: {
1863
+ root: "table",
1864
+ tbody: "table__tbody",
1865
+ td: "table__td",
1866
+ tfoot: "table__tfoot",
1867
+ th: "table__th",
1868
+ thead: "table__thead",
1869
+ tr: "table__tr"
1870
+ } });
1871
+
1872
+ //#endregion
1873
+ //#region src/components/table/use-table.ts
1874
+ const useTable = () => {
1875
+ const context = useContext(TableContext);
1876
+ if (!context) throw new Error("useTable must be used within a TableProvider");
1877
+ return context;
1878
+ };
1879
+
1880
+ //#endregion
1881
+ //#region src/components/table/table.tsx
1882
+ const Table = ({ className, ...props }) => {
1883
+ const slots = useMemo(() => tableVariants(), []);
1884
+ return /* @__PURE__ */ jsx(TableContext, {
1885
+ value: { slots },
1886
+ children: /* @__PURE__ */ jsx("table", {
1887
+ className: cn$1(className, slots.root()),
1888
+ ...props
1889
+ })
1890
+ });
1891
+ };
1892
+ const TableHead = ({ className, ...props }) => {
1893
+ const { slots } = useTable();
1894
+ return /* @__PURE__ */ jsx("thead", {
1895
+ className: cn$1(className, slots.thead()),
1896
+ ...props
1897
+ });
1898
+ };
1899
+ const TableRow = ({ className, ...props }) => {
1900
+ const { slots } = useTable();
1901
+ return /* @__PURE__ */ jsx("tr", {
1902
+ className: cn$1(className, slots.tr()),
1903
+ ...props
1904
+ });
1905
+ };
1906
+ const TableHeaderCell = ({ className, ...props }) => {
1907
+ const { slots } = useTable();
1908
+ return /* @__PURE__ */ jsx("th", {
1909
+ className: cn$1(className, slots.th()),
1910
+ ...props
1911
+ });
1912
+ };
1913
+ const TableBody = ({ className, ...props }) => {
1914
+ const { slots } = useTable();
1915
+ return /* @__PURE__ */ jsx("tbody", {
1916
+ className: cn$1(className, slots.tbody()),
1917
+ ...props
1918
+ });
1919
+ };
1920
+ const TableDataCell = ({ className, ...props }) => {
1921
+ const { slots } = useTable();
1922
+ return /* @__PURE__ */ jsx("td", {
1923
+ className: cn$1(className, slots.td()),
1924
+ ...props
1925
+ });
1926
+ };
1927
+ const TableFooter = ({ className, ...props }) => {
1928
+ const { slots } = useTable();
1929
+ return /* @__PURE__ */ jsx("tfoot", {
1930
+ className: cn$1(className, slots.tfoot()),
1931
+ ...props
1932
+ });
1933
+ };
1934
+ var table_default = Object.assign(Table, {
1935
+ Body: TableBody,
1936
+ DataCell: TableDataCell,
1937
+ Footer: TableFooter,
1938
+ Head: TableHead,
1939
+ HeaderCell: TableHeaderCell,
1940
+ Root: Table,
1941
+ Row: TableRow
1942
+ });
1123
1943
 
1124
1944
  //#endregion
1125
1945
  //#region src/components/tabs/tabs.context.ts
@@ -1183,12 +2003,13 @@ const TabsPanel = ({ className, ...props }) => {
1183
2003
  ...props
1184
2004
  });
1185
2005
  };
1186
- Tabs$1.List = TabsList;
1187
- Tabs$1.Tab = TabsTab;
1188
- Tabs$1.Indicator = TabsIndicator;
1189
- Tabs$1.Panel = TabsPanel;
1190
- Tabs$1.Root = Tabs$1;
1191
- var tabs_default = Tabs$1;
2006
+ var tabs_default = Object.assign(Tabs$1, {
2007
+ Indicator: TabsIndicator,
2008
+ List: TabsList,
2009
+ Panel: TabsPanel,
2010
+ Root: Tabs$1,
2011
+ Tab: TabsTab
2012
+ });
1192
2013
 
1193
2014
  //#endregion
1194
2015
  //#region src/components/text/text.variants.ts
@@ -1196,26 +2017,37 @@ const textVariants = tv({ base: "text" });
1196
2017
 
1197
2018
  //#endregion
1198
2019
  //#region src/components/text/text.tsx
1199
- const Text = ({ className, ...props }) => {
1200
- return /* @__PURE__ */ jsx("div", {
2020
+ const Text$1 = ({ className, ...props }) => {
2021
+ return /* @__PURE__ */ jsx(Text, {
1201
2022
  className: cn$1(textVariants(), className),
1202
2023
  "data-slot": "text",
1203
2024
  ...props
1204
2025
  });
1205
2026
  };
1206
- var text_default = Text;
2027
+ var text_default = Text$1;
2028
+
2029
+ //#endregion
2030
+ //#region src/components/text-field/text-field.variants.ts
2031
+ const textFieldVariants = tv({ base: "text-field" });
2032
+
2033
+ //#endregion
2034
+ //#region src/components/text-field/text-field.tsx
2035
+ const TextField$1 = ({ className, ...props }) => {
2036
+ return /* @__PURE__ */ jsx(TextField, {
2037
+ className: cn$1(className, textFieldVariants()),
2038
+ ...props
2039
+ });
2040
+ };
2041
+ var text_field_default = TextField$1;
1207
2042
 
1208
2043
  //#endregion
1209
2044
  //#region src/components/textarea/textarea.variants.ts
1210
- const textareaVariants = tv({
1211
- base: "textarea",
1212
- extend: inputVariants
1213
- });
2045
+ const textareaVariants = tv({ base: "textarea" });
1214
2046
 
1215
2047
  //#endregion
1216
2048
  //#region src/components/textarea/textarea.tsx
1217
2049
  const Textarea = ({ className, ...props }) => {
1218
- return /* @__PURE__ */ jsx("textarea", {
2050
+ return /* @__PURE__ */ jsx(TextArea, {
1219
2051
  className: cn$1(className, textareaVariants()),
1220
2052
  ...props
1221
2053
  });
@@ -1243,5 +2075,5 @@ const ToggleButton = ({ className, variant, size, ...props }) => {
1243
2075
  var toggle_button_default = ToggleButton;
1244
2076
 
1245
2077
  //#endregion
1246
- export { accordion_default as Accordion, avatar_default as Avatar, button_default as Button, button_group_default as ButtonGroup, card_default as Card, checkbox_default as Checkbox, checkbox_group_default as CheckboxGroup, chip_default as Chip, container_default as Container, dialog_default as Dialog, field_default as Field, form_default as Form, input_default as Input, label_default as Label, link_default as Link, list_default as List, menu_default as Menu, meter_default as Meter, navbar_default as Navbar, separator_default as Separator, switch_default as Switch, tabs_default as Tabs, text_default as Text, textarea_default as Textarea, toggle_button_default as ToggleButton, accordionVariants, avatarVariants, buttonGroupVariants, buttonVariants, cardVariants, checkboxGroupVariants, checkboxVariants, chipVariants, cn, containerVariants, dialogVariants, fieldVariants, formVariants, inputVariants, labelVariants, linkVariants, listVariants, menuVariants, meterVariants, navbarVariants, separatorVariants, switchVariants, tabsVariants, textVariants, textareaVariants, toggleButtonVariants };
2078
+ export { accordion_default as Accordion, alert_default as Alert, alert_dialog_default as AlertDialog, avatar_default as Avatar, button_default as Button, button_group_default as ButtonGroup, card_default as Card, checkbox_group_default as CheckboxGroup, chip_default as Chip, container_default as Container, description_default as Description, dialog_default as Dialog, drawer_default as Drawer, field_error_default as FieldError, fieldset_default as Fieldset, form_default as Form, icon_button_default as IconButton, input_default as Input, label_default as Label, link_default as Link, list_default as List, menu_default as Menu, meter_default as Meter, navbar_default as Navbar, overlay_trigger_default as OverlayTrigger, popover_default as Popover, progress_default as Progress, radio_default as Radio, radio_group_default as RadioGroup, select_default as Select, separator_default as Separator, sidebar_default as Sidebar, slider_default as Slider, switch_default as Switch, table_default as Table, tabs_default as Tabs, text_default as Text, text_field_default as TextField, textarea_default as Textarea, toggle_button_default as ToggleButton, accordionVariants, alertDialogVariants, alertVariants, avatarVariants, buttonGroupVariants, buttonVariants, cardVariants, checkboxGroupVariants, chipVariants, cn, containerVariants, descriptionVariants, dialogVariants, drawerVariants, fieldErrorVariants, fieldsetVariants, formVariants, iconButtonVariants, inputVariants, labelVariants, linkVariants, listVariants, menuVariants, meterVariants, navbarVariants, popoverVariants, progressVariants, radioGroupVariants, radioVariants, selectVariants, separatorVariants, sidebarVariants, sliderVariants, switchVariants, tableVariants, tabsVariants, textFieldVariants, textVariants, textareaVariants, toggleButtonVariants };
1247
2079
  //# sourceMappingURL=index.mjs.map