@fea-ui/react 0.1.0-alpha.2 → 0.1.0-alpha.4

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
@@ -90,7 +90,7 @@ const AccordionTrigger = ({ className, ...props }) => {
90
90
  };
91
91
  const AccordionTriggerIcon = ({ className, ...props }) => {
92
92
  const { slots } = useAccordion();
93
- return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.LucidePlus, {
93
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.LucideChevronDown, {
94
94
  className: (0, tailwind_variants.cn)(className, slots.triggerIcon()),
95
95
  ...props
96
96
  });
@@ -118,6 +118,108 @@ Accordion.Trigger = AccordionTrigger;
118
118
  Accordion.TriggerIcon = AccordionTriggerIcon;
119
119
  var accordion_default = Accordion;
120
120
 
121
+ //#endregion
122
+ //#region src/components/alert-dialog/alert-dialog.context.ts
123
+ const AlertDialogContext = (0, react.createContext)(null);
124
+
125
+ //#endregion
126
+ //#region src/components/alert-dialog/alert-dialog.variants.ts
127
+ const alertDialogVariants = (0, tailwind_variants.tv)({ slots: {
128
+ backdrop: "alert-dialog__backdrop",
129
+ close: "alert-dialog__close",
130
+ description: "alert-dialog__description",
131
+ popup: "alert-dialog__popup",
132
+ portal: "alert-dialog__portal",
133
+ root: "alert-dialog",
134
+ title: "alert-dialog__title",
135
+ trigger: "alert-dialog__trigger",
136
+ viewport: "alert-dialog__viewport"
137
+ } });
138
+
139
+ //#endregion
140
+ //#region src/components/alert-dialog/use-alert-dialog.ts
141
+ const useAlertDialog = () => {
142
+ const context = (0, react.useContext)(AlertDialogContext);
143
+ if (!context) throw new Error("useAlertDialog must be used within a AlertDialogProvider");
144
+ return context;
145
+ };
146
+
147
+ //#endregion
148
+ //#region src/components/alert-dialog/alert-dialog.tsx
149
+ const AlertDialog = ({ ...props }) => {
150
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(AlertDialogContext, {
151
+ value: { slots: (0, react.useMemo)(() => alertDialogVariants(), []) },
152
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react.AlertDialog.Root, { ...props })
153
+ });
154
+ };
155
+ const AlertDialogTrigger = ({ className, ...props }) => {
156
+ const { slots } = useAlertDialog();
157
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react.AlertDialog.Trigger, {
158
+ className: (0, tailwind_variants.cn)(slots.trigger(), className),
159
+ ...props
160
+ });
161
+ };
162
+ const AlertDialogPortal = ({ className, ...props }) => {
163
+ const { slots } = useAlertDialog();
164
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react.AlertDialog.Portal, {
165
+ className: (0, tailwind_variants.cn)(slots.portal(), className),
166
+ ...props
167
+ });
168
+ };
169
+ const AlertDialogBackdrop = ({ className, ...props }) => {
170
+ const { slots } = useAlertDialog();
171
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react.AlertDialog.Backdrop, {
172
+ className: (0, tailwind_variants.cn)(slots.backdrop(), className),
173
+ ...props
174
+ });
175
+ };
176
+ const AlertDialogViewport = ({ className, ...props }) => {
177
+ const { slots } = useAlertDialog();
178
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react.AlertDialog.Viewport, {
179
+ className: (0, tailwind_variants.cn)(slots.viewport(), className),
180
+ ...props
181
+ });
182
+ };
183
+ const AlertDialogPopup = ({ className, ...props }) => {
184
+ const { slots } = useAlertDialog();
185
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react.AlertDialog.Popup, {
186
+ className: (0, tailwind_variants.cn)(slots.popup(), className),
187
+ ...props
188
+ });
189
+ };
190
+ const AlertDialogTitle = ({ className, ...props }) => {
191
+ const { slots } = useAlertDialog();
192
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react.AlertDialog.Title, {
193
+ className: (0, tailwind_variants.cn)(slots.title(), className),
194
+ ...props
195
+ });
196
+ };
197
+ const AlertDialogDescription = ({ className, ...props }) => {
198
+ const { slots } = useAlertDialog();
199
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react.AlertDialog.Description, {
200
+ className: (0, tailwind_variants.cn)(slots.description(), className),
201
+ ...props
202
+ });
203
+ };
204
+ const AlertDialogClose = ({ className, children, ...props }) => {
205
+ const { slots } = useAlertDialog();
206
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react.AlertDialog.Close, {
207
+ className: (0, tailwind_variants.cn)(slots.close(), className),
208
+ ...props,
209
+ children: children ?? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.LucideX, {})
210
+ });
211
+ };
212
+ AlertDialog.Root = AlertDialog;
213
+ AlertDialog.Trigger = AlertDialogTrigger;
214
+ AlertDialog.Portal = AlertDialogPortal;
215
+ AlertDialog.Backdrop = AlertDialogBackdrop;
216
+ AlertDialog.Viewport = AlertDialogViewport;
217
+ AlertDialog.Popup = AlertDialogPopup;
218
+ AlertDialog.Title = AlertDialogTitle;
219
+ AlertDialog.Description = AlertDialogDescription;
220
+ AlertDialog.Close = AlertDialogClose;
221
+ var alert_dialog_default = AlertDialog;
222
+
121
223
  //#endregion
122
224
  //#region src/components/avatar/avatar.context.ts
123
225
  const AvatarContext = (0, react.createContext)(null);
@@ -608,6 +710,48 @@ Field.Label = FieldLabel;
608
710
  Field.Root = Field;
609
711
  var field_default = Field;
610
712
 
713
+ //#endregion
714
+ //#region src/components/fieldset/fieldset.context.ts
715
+ const FieldsetContext = (0, react.createContext)(null);
716
+
717
+ //#endregion
718
+ //#region src/components/fieldset/fieldset.variants.ts
719
+ const fieldsetVariants = (0, tailwind_variants.tv)({ slots: {
720
+ legend: "fieldset__legend",
721
+ root: "fieldset"
722
+ } });
723
+
724
+ //#endregion
725
+ //#region src/components/fieldset/use-fieldset.ts
726
+ const useFieldset = () => {
727
+ const context = (0, react.useContext)(FieldsetContext);
728
+ if (!context) throw new Error("useFieldset must be used within a FieldsetProvider");
729
+ return context;
730
+ };
731
+
732
+ //#endregion
733
+ //#region src/components/fieldset/fieldset.tsx
734
+ const Fieldset = ({ className, ...props }) => {
735
+ const slots = (0, react.useMemo)(() => fieldsetVariants(), []);
736
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(FieldsetContext, {
737
+ value: { slots },
738
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react.Fieldset.Root, {
739
+ className: (0, tailwind_variants.cn)(className, slots.root()),
740
+ ...props
741
+ })
742
+ });
743
+ };
744
+ const FieldsetLegend = ({ className, ...props }) => {
745
+ const { slots } = useFieldset();
746
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react.Fieldset.Legend, {
747
+ className: (0, tailwind_variants.cn)(slots.legend(), className),
748
+ ...props
749
+ });
750
+ };
751
+ Fieldset.Root = Fieldset;
752
+ Fieldset.Legend = FieldsetLegend;
753
+ var fieldset_default = Fieldset;
754
+
611
755
  //#endregion
612
756
  //#region src/components/form/form.variants.ts
613
757
  const formVariants = (0, tailwind_variants.tv)({ base: "form" });
@@ -1078,6 +1222,75 @@ Navbar.Menu = NavbarMenu;
1078
1222
  Navbar.MenuItem = NavbarMenuItem;
1079
1223
  var navbar_default = Navbar;
1080
1224
 
1225
+ //#endregion
1226
+ //#region src/components/progress/progress.context.ts
1227
+ const ProgressContext = (0, react.createContext)(null);
1228
+
1229
+ //#endregion
1230
+ //#region src/components/progress/progress.variants.ts
1231
+ const progressVariants = (0, tailwind_variants.tv)({ slots: {
1232
+ indicator: "progress__indicator",
1233
+ label: "progress__label",
1234
+ root: "progress",
1235
+ track: "progress__track",
1236
+ value: "progress__value"
1237
+ } });
1238
+
1239
+ //#endregion
1240
+ //#region src/components/progress/use-progress.ts
1241
+ const useProgress = () => {
1242
+ const context = (0, react.useContext)(ProgressContext);
1243
+ if (!context) throw new Error("useProgress must be used within a ProgressProvider");
1244
+ return context;
1245
+ };
1246
+
1247
+ //#endregion
1248
+ //#region src/components/progress/progress.tsx
1249
+ const Progress = ({ className, ...props }) => {
1250
+ const slots = (0, react.useMemo)(() => progressVariants(), []);
1251
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ProgressContext, {
1252
+ value: { slots },
1253
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react.Progress.Root, {
1254
+ className: (0, tailwind_variants.cn)(className, slots.root()),
1255
+ ...props
1256
+ })
1257
+ });
1258
+ };
1259
+ const ProgressLabel = ({ className, ...props }) => {
1260
+ const { slots } = useProgress();
1261
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react.Progress.Label, {
1262
+ className: (0, tailwind_variants.cn)(className, slots.label()),
1263
+ ...props
1264
+ });
1265
+ };
1266
+ const ProgressValue = ({ className, ...props }) => {
1267
+ const { slots } = useProgress();
1268
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react.Progress.Value, {
1269
+ className: (0, tailwind_variants.cn)(className, slots.value()),
1270
+ ...props
1271
+ });
1272
+ };
1273
+ const ProgressTrack = ({ className, ...props }) => {
1274
+ const { slots } = useProgress();
1275
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react.Progress.Track, {
1276
+ className: (0, tailwind_variants.cn)(className, slots.track()),
1277
+ ...props
1278
+ });
1279
+ };
1280
+ const ProgressIndicator = ({ className, ...props }) => {
1281
+ const { slots } = useProgress();
1282
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react.Progress.Indicator, {
1283
+ className: (0, tailwind_variants.cn)(className, slots.indicator()),
1284
+ ...props
1285
+ });
1286
+ };
1287
+ Progress.Label = ProgressLabel;
1288
+ Progress.Value = ProgressValue;
1289
+ Progress.Track = ProgressTrack;
1290
+ Progress.Indicator = ProgressIndicator;
1291
+ Progress.Root = Progress;
1292
+ var progress_default = Progress;
1293
+
1081
1294
  //#endregion
1082
1295
  //#region src/components/separator/separator.variants.ts
1083
1296
  const separatorVariants = (0, tailwind_variants.tv)({
@@ -1099,6 +1312,84 @@ const Separator = ({ className, orientation, ...props }) => {
1099
1312
  };
1100
1313
  var separator_default = Separator;
1101
1314
 
1315
+ //#endregion
1316
+ //#region src/components/slider/slider.context.ts
1317
+ const SliderContext = (0, react.createContext)(null);
1318
+
1319
+ //#endregion
1320
+ //#region src/components/slider/slider.variants.ts
1321
+ const sliderVariants = (0, tailwind_variants.tv)({ slots: {
1322
+ control: "slider__control",
1323
+ indicator: "slider__indicator",
1324
+ root: "slider",
1325
+ thumb: "slider__thumb",
1326
+ track: "slider__track",
1327
+ value: "slider__value"
1328
+ } });
1329
+
1330
+ //#endregion
1331
+ //#region src/components/slider/use-slider.tsx
1332
+ const useSlider = () => {
1333
+ const context = (0, react.useContext)(SliderContext);
1334
+ if (!context) throw new Error("useSlider must be used within a SliderProvider");
1335
+ return context;
1336
+ };
1337
+
1338
+ //#endregion
1339
+ //#region src/components/slider/slider.tsx
1340
+ const Slider = ({ className, ...props }) => {
1341
+ const slots = (0, react.useMemo)(() => sliderVariants(), []);
1342
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(SliderContext, {
1343
+ value: { slots },
1344
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react.Slider.Root, {
1345
+ className: (0, tailwind_variants.cn)(className, slots.root()),
1346
+ ...props
1347
+ })
1348
+ });
1349
+ };
1350
+ const SliderValue = ({ className, ...props }) => {
1351
+ const { slots } = useSlider();
1352
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react.Slider.Value, {
1353
+ className: (0, tailwind_variants.cn)(className, slots.value()),
1354
+ ...props
1355
+ });
1356
+ };
1357
+ const SliderControl = ({ className, ...props }) => {
1358
+ const { slots } = useSlider();
1359
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react.Slider.Control, {
1360
+ className: (0, tailwind_variants.cn)(className, slots.control()),
1361
+ ...props
1362
+ });
1363
+ };
1364
+ const SliderTrack = ({ className, ...props }) => {
1365
+ const { slots } = useSlider();
1366
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react.Slider.Track, {
1367
+ className: (0, tailwind_variants.cn)(className, slots.track()),
1368
+ ...props
1369
+ });
1370
+ };
1371
+ const SliderIndicator = ({ className, ...props }) => {
1372
+ const { slots } = useSlider();
1373
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react.Slider.Indicator, {
1374
+ className: (0, tailwind_variants.cn)(className, slots.indicator()),
1375
+ ...props
1376
+ });
1377
+ };
1378
+ const SliderThumb = ({ className, ...props }) => {
1379
+ const { slots } = useSlider();
1380
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react.Slider.Thumb, {
1381
+ className: (0, tailwind_variants.cn)(className, slots.thumb()),
1382
+ ...props
1383
+ });
1384
+ };
1385
+ Slider.Value = SliderValue;
1386
+ Slider.Control = SliderControl;
1387
+ Slider.Track = SliderTrack;
1388
+ Slider.Indicator = SliderIndicator;
1389
+ Slider.Thumb = SliderThumb;
1390
+ Slider.Root = Slider;
1391
+ var slider_default = Slider;
1392
+
1102
1393
  //#endregion
1103
1394
  //#region src/components/switch/switch.context.ts
1104
1395
  const SwitchContext = (0, react.createContext)(null);
@@ -1149,6 +1440,93 @@ Switch.Thumb = SwitchThumb;
1149
1440
  Switch.Root = Switch;
1150
1441
  var switch_default = Switch;
1151
1442
 
1443
+ //#endregion
1444
+ //#region src/components/table/table.context.ts
1445
+ const TableContext = (0, react.createContext)(null);
1446
+
1447
+ //#endregion
1448
+ //#region src/components/table/table.variants.ts
1449
+ const tableVariants = (0, tailwind_variants.tv)({ slots: {
1450
+ root: "table",
1451
+ tbody: "table__tbody",
1452
+ td: "table__td",
1453
+ tfoot: "table__tfoot",
1454
+ th: "table__th",
1455
+ thead: "table__thead",
1456
+ tr: "table__tr"
1457
+ } });
1458
+
1459
+ //#endregion
1460
+ //#region src/components/table/use-table.ts
1461
+ const useTable = () => {
1462
+ const context = (0, react.useContext)(TableContext);
1463
+ if (!context) throw new Error("useTable must be used within a TableProvider");
1464
+ return context;
1465
+ };
1466
+
1467
+ //#endregion
1468
+ //#region src/components/table/table.tsx
1469
+ const Table = ({ className, ...props }) => {
1470
+ const slots = (0, react.useMemo)(() => tableVariants(), []);
1471
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TableContext, {
1472
+ value: { slots },
1473
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("table", {
1474
+ className: (0, tailwind_variants.cn)(className, slots.root()),
1475
+ ...props
1476
+ })
1477
+ });
1478
+ };
1479
+ const TableHead = ({ className, ...props }) => {
1480
+ const { slots } = useTable();
1481
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("thead", {
1482
+ className: (0, tailwind_variants.cn)(className, slots.thead()),
1483
+ ...props
1484
+ });
1485
+ };
1486
+ const TableRow = ({ className, ...props }) => {
1487
+ const { slots } = useTable();
1488
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("tr", {
1489
+ className: (0, tailwind_variants.cn)(className, slots.tr()),
1490
+ ...props
1491
+ });
1492
+ };
1493
+ const TableHeaderCell = ({ className, ...props }) => {
1494
+ const { slots } = useTable();
1495
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("th", {
1496
+ className: (0, tailwind_variants.cn)(className, slots.th()),
1497
+ ...props
1498
+ });
1499
+ };
1500
+ const TableBody = ({ className, ...props }) => {
1501
+ const { slots } = useTable();
1502
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("tbody", {
1503
+ className: (0, tailwind_variants.cn)(className, slots.tbody()),
1504
+ ...props
1505
+ });
1506
+ };
1507
+ const TableDataCell = ({ className, ...props }) => {
1508
+ const { slots } = useTable();
1509
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("td", {
1510
+ className: (0, tailwind_variants.cn)(className, slots.td()),
1511
+ ...props
1512
+ });
1513
+ };
1514
+ const TableFooter = ({ className, ...props }) => {
1515
+ const { slots } = useTable();
1516
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("tfoot", {
1517
+ className: (0, tailwind_variants.cn)(className, slots.tfoot()),
1518
+ ...props
1519
+ });
1520
+ };
1521
+ Table.Root = Table;
1522
+ Table.Head = TableHead;
1523
+ Table.Row = TableRow;
1524
+ Table.HeaderCell = TableHeaderCell;
1525
+ Table.Body = TableBody;
1526
+ Table.DataCell = TableDataCell;
1527
+ Table.Footer = TableFooter;
1528
+ var table_default = Table;
1529
+
1152
1530
  //#endregion
1153
1531
  //#region src/components/tabs/tabs.context.ts
1154
1532
  const TabsContext = (0, react.createContext)(null);
@@ -1272,6 +1650,7 @@ var toggle_button_default = ToggleButton;
1272
1650
 
1273
1651
  //#endregion
1274
1652
  exports.Accordion = accordion_default;
1653
+ exports.AlertDialog = alert_dialog_default;
1275
1654
  exports.Avatar = avatar_default;
1276
1655
  exports.Button = button_default;
1277
1656
  exports.ButtonGroup = button_group_default;
@@ -1282,6 +1661,7 @@ exports.Chip = chip_default;
1282
1661
  exports.Container = container_default;
1283
1662
  exports.Dialog = dialog_default;
1284
1663
  exports.Field = field_default;
1664
+ exports.Fieldset = fieldset_default;
1285
1665
  exports.Form = form_default;
1286
1666
  exports.Input = input_default;
1287
1667
  exports.Label = label_default;
@@ -1290,13 +1670,17 @@ exports.List = list_default;
1290
1670
  exports.Menu = menu_default;
1291
1671
  exports.Meter = meter_default;
1292
1672
  exports.Navbar = navbar_default;
1673
+ exports.Progress = progress_default;
1293
1674
  exports.Separator = separator_default;
1675
+ exports.Slider = slider_default;
1294
1676
  exports.Switch = switch_default;
1677
+ exports.Table = table_default;
1295
1678
  exports.Tabs = tabs_default;
1296
1679
  exports.Text = text_default;
1297
1680
  exports.Textarea = textarea_default;
1298
1681
  exports.ToggleButton = toggle_button_default;
1299
1682
  exports.accordionVariants = accordionVariants;
1683
+ exports.alertDialogVariants = alertDialogVariants;
1300
1684
  exports.avatarVariants = avatarVariants;
1301
1685
  exports.buttonGroupVariants = buttonGroupVariants;
1302
1686
  exports.buttonVariants = buttonVariants;
@@ -1313,6 +1697,7 @@ Object.defineProperty(exports, 'cn', {
1313
1697
  exports.containerVariants = containerVariants;
1314
1698
  exports.dialogVariants = dialogVariants;
1315
1699
  exports.fieldVariants = fieldVariants;
1700
+ exports.fieldsetVariants = fieldsetVariants;
1316
1701
  exports.formVariants = formVariants;
1317
1702
  exports.inputVariants = inputVariants;
1318
1703
  exports.labelVariants = labelVariants;
@@ -1321,8 +1706,11 @@ exports.listVariants = listVariants;
1321
1706
  exports.menuVariants = menuVariants;
1322
1707
  exports.meterVariants = meterVariants;
1323
1708
  exports.navbarVariants = navbarVariants;
1709
+ exports.progressVariants = progressVariants;
1324
1710
  exports.separatorVariants = separatorVariants;
1711
+ exports.sliderVariants = sliderVariants;
1325
1712
  exports.switchVariants = switchVariants;
1713
+ exports.tableVariants = tableVariants;
1326
1714
  exports.tabsVariants = tabsVariants;
1327
1715
  exports.textVariants = textVariants;
1328
1716
  exports.textareaVariants = textareaVariants;