@kilnonedre/foundation 0.0.19 → 0.0.21
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.js +298 -243
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -836,37 +836,91 @@ var enumVariantOptions = enumToOptions(EnumVariant, EnumVariantLabel);
|
|
|
836
836
|
// src/theme/semantic-color.ts
|
|
837
837
|
var createColor = (color, solidText = "text-white") => ({
|
|
838
838
|
[EnumVariant.SOFT]: {
|
|
839
|
-
bg:
|
|
840
|
-
text:
|
|
841
|
-
border:
|
|
842
|
-
hoverBg:
|
|
839
|
+
bg: color.bg3,
|
|
840
|
+
text: color.text11,
|
|
841
|
+
border: color.border7,
|
|
842
|
+
hoverBg: color.bg4,
|
|
843
843
|
hoverText: "",
|
|
844
|
-
focusRing:
|
|
844
|
+
focusRing: color.ring8
|
|
845
845
|
},
|
|
846
846
|
[EnumVariant.SOLID]: {
|
|
847
|
-
bg:
|
|
847
|
+
bg: color.bg9,
|
|
848
848
|
text: solidText,
|
|
849
|
-
border:
|
|
850
|
-
hoverBg:
|
|
849
|
+
border: color.bg9,
|
|
850
|
+
hoverBg: color.bg10,
|
|
851
851
|
hoverText: "",
|
|
852
|
-
focusRing:
|
|
852
|
+
focusRing: color.ring8
|
|
853
853
|
},
|
|
854
854
|
[EnumVariant.OUTLINE]: {
|
|
855
855
|
bg: "bg-transparent",
|
|
856
|
-
text:
|
|
857
|
-
border:
|
|
858
|
-
hoverBg:
|
|
856
|
+
text: color.text11,
|
|
857
|
+
border: color.border7,
|
|
858
|
+
hoverBg: color.bg3,
|
|
859
859
|
hoverText: "",
|
|
860
|
-
focusRing:
|
|
860
|
+
focusRing: color.ring8
|
|
861
861
|
}
|
|
862
862
|
});
|
|
863
|
+
var blue = {
|
|
864
|
+
bg3: "bg-[var(--blue-3)]",
|
|
865
|
+
bg4: "hover:bg-[var(--blue-4)]",
|
|
866
|
+
bg9: "bg-[var(--blue-9)]",
|
|
867
|
+
bg10: "hover:bg-[var(--blue-10)]",
|
|
868
|
+
text11: "text-[var(--blue-11)]",
|
|
869
|
+
border7: "border-[var(--blue-7)]",
|
|
870
|
+
ring8: "focus-visible:ring-[var(--blue-8)]"
|
|
871
|
+
};
|
|
872
|
+
var green = {
|
|
873
|
+
bg3: "bg-[var(--green-3)]",
|
|
874
|
+
bg4: "hover:bg-[var(--green-4)]",
|
|
875
|
+
bg9: "bg-[var(--green-9)]",
|
|
876
|
+
bg10: "hover:bg-[var(--green-10)]",
|
|
877
|
+
text11: "text-[var(--green-11)]",
|
|
878
|
+
border7: "border-[var(--green-7)]",
|
|
879
|
+
ring8: "focus-visible:ring-[var(--green-8)]"
|
|
880
|
+
};
|
|
881
|
+
var amber = {
|
|
882
|
+
bg3: "bg-[var(--amber-3)]",
|
|
883
|
+
bg4: "hover:bg-[var(--amber-4)]",
|
|
884
|
+
bg9: "bg-[var(--amber-9)]",
|
|
885
|
+
bg10: "hover:bg-[var(--amber-10)]",
|
|
886
|
+
text11: "text-[var(--amber-11)]",
|
|
887
|
+
border7: "border-[var(--amber-7)]",
|
|
888
|
+
ring8: "focus-visible:ring-[var(--amber-8)]"
|
|
889
|
+
};
|
|
890
|
+
var red = {
|
|
891
|
+
bg3: "bg-[var(--red-3)]",
|
|
892
|
+
bg4: "hover:bg-[var(--red-4)]",
|
|
893
|
+
bg9: "bg-[var(--red-9)]",
|
|
894
|
+
bg10: "hover:bg-[var(--red-10)]",
|
|
895
|
+
text11: "text-[var(--red-11)]",
|
|
896
|
+
border7: "border-[var(--red-7)]",
|
|
897
|
+
ring8: "focus-visible:ring-[var(--red-8)]"
|
|
898
|
+
};
|
|
899
|
+
var cyan = {
|
|
900
|
+
bg3: "bg-[var(--cyan-3)]",
|
|
901
|
+
bg4: "hover:bg-[var(--cyan-4)]",
|
|
902
|
+
bg9: "bg-[var(--cyan-9)]",
|
|
903
|
+
bg10: "hover:bg-[var(--cyan-10)]",
|
|
904
|
+
text11: "text-[var(--cyan-11)]",
|
|
905
|
+
border7: "border-[var(--cyan-7)]",
|
|
906
|
+
ring8: "focus-visible:ring-[var(--cyan-8)]"
|
|
907
|
+
};
|
|
908
|
+
var slate = {
|
|
909
|
+
bg3: "bg-[var(--slate-3)]",
|
|
910
|
+
bg4: "hover:bg-[var(--slate-4)]",
|
|
911
|
+
bg9: "bg-[var(--slate-9)]",
|
|
912
|
+
bg10: "hover:bg-[var(--slate-10)]",
|
|
913
|
+
text11: "text-[var(--slate-11)]",
|
|
914
|
+
border7: "border-[var(--slate-7)]",
|
|
915
|
+
ring8: "focus-visible:ring-[var(--slate-8)]"
|
|
916
|
+
};
|
|
863
917
|
var semanticColorMap = {
|
|
864
|
-
[EnumSemanticColor.PRIMARY]: createColor(
|
|
865
|
-
[EnumSemanticColor.SUCCESS]: createColor(
|
|
866
|
-
[EnumSemanticColor.WARNING]: createColor(
|
|
867
|
-
[EnumSemanticColor.DANGER]: createColor(
|
|
868
|
-
[EnumSemanticColor.INFO]: createColor(
|
|
869
|
-
[EnumSemanticColor.NEUTRAL]: createColor(
|
|
918
|
+
[EnumSemanticColor.PRIMARY]: createColor(blue),
|
|
919
|
+
[EnumSemanticColor.SUCCESS]: createColor(green),
|
|
920
|
+
[EnumSemanticColor.WARNING]: createColor(amber, "text-black"),
|
|
921
|
+
[EnumSemanticColor.DANGER]: createColor(red),
|
|
922
|
+
[EnumSemanticColor.INFO]: createColor(cyan, "text-black"),
|
|
923
|
+
[EnumSemanticColor.NEUTRAL]: createColor(slate),
|
|
870
924
|
[EnumSemanticColor.DARK]: {
|
|
871
925
|
[EnumVariant.SOFT]: {
|
|
872
926
|
bg: "bg-[var(--slate-4)]",
|
|
@@ -1292,53 +1346,42 @@ var TableHeaderText = (props) => {
|
|
|
1292
1346
|
// src/components/data-table/component/table-image/index.tsx
|
|
1293
1347
|
import { useState } from "react";
|
|
1294
1348
|
import { Eye } from "lucide-react";
|
|
1295
|
-
|
|
1296
|
-
// src/shadcn/components/card.tsx
|
|
1297
|
-
import { jsx as jsx19 } from "react/jsx-runtime";
|
|
1298
|
-
function Card({ className, ...props }) {
|
|
1299
|
-
return /* @__PURE__ */ jsx19(
|
|
1300
|
-
"div",
|
|
1301
|
-
{
|
|
1302
|
-
"data-slot": "card",
|
|
1303
|
-
className: cn(
|
|
1304
|
-
"flex flex-col gap-6 rounded-xl border bg-card py-6 text-card-foreground shadow-sm",
|
|
1305
|
-
className
|
|
1306
|
-
),
|
|
1307
|
-
...props
|
|
1308
|
-
}
|
|
1309
|
-
);
|
|
1310
|
-
}
|
|
1311
|
-
|
|
1312
|
-
// src/components/data-table/component/table-image/index.tsx
|
|
1313
|
-
import { jsx as jsx20, jsxs as jsxs9 } from "react/jsx-runtime";
|
|
1349
|
+
import { jsx as jsx19, jsxs as jsxs9 } from "react/jsx-runtime";
|
|
1314
1350
|
var TableImage = (props) => {
|
|
1315
1351
|
const [preview, setPreview] = useState(null);
|
|
1316
1352
|
return /* @__PURE__ */ jsxs9("div", { className: "space-y-3", children: [
|
|
1317
|
-
/* @__PURE__ */
|
|
1318
|
-
|
|
1319
|
-
|
|
1320
|
-
|
|
1321
|
-
|
|
1322
|
-
|
|
1323
|
-
|
|
1324
|
-
|
|
1325
|
-
|
|
1326
|
-
|
|
1327
|
-
|
|
1328
|
-
|
|
1329
|
-
|
|
1330
|
-
|
|
1331
|
-
|
|
1332
|
-
|
|
1333
|
-
|
|
1334
|
-
|
|
1335
|
-
|
|
1336
|
-
|
|
1337
|
-
|
|
1338
|
-
|
|
1339
|
-
|
|
1340
|
-
|
|
1341
|
-
|
|
1353
|
+
/* @__PURE__ */ jsx19("div", { className: "flex gap-3 overflow-x-auto", children: props.value.map((img, index) => /* @__PURE__ */ jsx19(
|
|
1354
|
+
"div",
|
|
1355
|
+
{
|
|
1356
|
+
className: "rounded-xl border bg-card text-card-foreground shadow group overflow-hidden w-25 aspect-square",
|
|
1357
|
+
children: /* @__PURE__ */ jsxs9("div", { className: "relative bg-muted", children: [
|
|
1358
|
+
/* @__PURE__ */ jsx19(
|
|
1359
|
+
"img",
|
|
1360
|
+
{
|
|
1361
|
+
src: img.url,
|
|
1362
|
+
alt: "",
|
|
1363
|
+
className: "h-full w-full object-cover",
|
|
1364
|
+
loading: "lazy"
|
|
1365
|
+
}
|
|
1366
|
+
),
|
|
1367
|
+
/* @__PURE__ */ jsx19("div", { className: "absolute inset-0 flex items-start justify-end p-2 opacity-0 transition group-hover:opacity-100", children: /* @__PURE__ */ jsx19(
|
|
1368
|
+
Button,
|
|
1369
|
+
{
|
|
1370
|
+
size: "icon",
|
|
1371
|
+
variant: "secondary",
|
|
1372
|
+
className: "h-8 w-8",
|
|
1373
|
+
type: "button",
|
|
1374
|
+
onClick: () => setPreview(img),
|
|
1375
|
+
children: /* @__PURE__ */ jsx19(Eye, { className: "h-4 w-4" })
|
|
1376
|
+
}
|
|
1377
|
+
) })
|
|
1378
|
+
] })
|
|
1379
|
+
},
|
|
1380
|
+
img.id + index
|
|
1381
|
+
)) }),
|
|
1382
|
+
/* @__PURE__ */ jsx19(Dialog, { open: !!preview, onOpenChange: () => setPreview(null), children: /* @__PURE__ */ jsxs9(DialogContent, { className: "max-w-3xl", children: [
|
|
1383
|
+
/* @__PURE__ */ jsx19(DialogHeader, { children: /* @__PURE__ */ jsx19(DialogTitle, { children: "\u9884\u89C8" }) }),
|
|
1384
|
+
preview && /* @__PURE__ */ jsx19("div", { className: "relative aspect-video w-full overflow-hidden rounded-lg bg-muted", children: /* @__PURE__ */ jsx19(
|
|
1342
1385
|
"img",
|
|
1343
1386
|
{
|
|
1344
1387
|
src: preview.url,
|
|
@@ -1359,9 +1402,9 @@ import {
|
|
|
1359
1402
|
ChevronRightIcon,
|
|
1360
1403
|
MoreHorizontalIcon
|
|
1361
1404
|
} from "lucide-react";
|
|
1362
|
-
import { jsx as
|
|
1405
|
+
import { jsx as jsx20, jsxs as jsxs10 } from "react/jsx-runtime";
|
|
1363
1406
|
function Pagination({ className, ...props }) {
|
|
1364
|
-
return /* @__PURE__ */
|
|
1407
|
+
return /* @__PURE__ */ jsx20(
|
|
1365
1408
|
"nav",
|
|
1366
1409
|
{
|
|
1367
1410
|
role: "navigation",
|
|
@@ -1376,7 +1419,7 @@ function PaginationContent({
|
|
|
1376
1419
|
className,
|
|
1377
1420
|
...props
|
|
1378
1421
|
}) {
|
|
1379
|
-
return /* @__PURE__ */
|
|
1422
|
+
return /* @__PURE__ */ jsx20(
|
|
1380
1423
|
"ul",
|
|
1381
1424
|
{
|
|
1382
1425
|
"data-slot": "pagination-content",
|
|
@@ -1386,7 +1429,7 @@ function PaginationContent({
|
|
|
1386
1429
|
);
|
|
1387
1430
|
}
|
|
1388
1431
|
function PaginationItem({ ...props }) {
|
|
1389
|
-
return /* @__PURE__ */
|
|
1432
|
+
return /* @__PURE__ */ jsx20("li", { "data-slot": "pagination-item", ...props });
|
|
1390
1433
|
}
|
|
1391
1434
|
function PaginationLink({
|
|
1392
1435
|
className,
|
|
@@ -1394,7 +1437,7 @@ function PaginationLink({
|
|
|
1394
1437
|
size = "icon",
|
|
1395
1438
|
...props
|
|
1396
1439
|
}) {
|
|
1397
|
-
return /* @__PURE__ */
|
|
1440
|
+
return /* @__PURE__ */ jsx20(
|
|
1398
1441
|
"a",
|
|
1399
1442
|
{
|
|
1400
1443
|
"aria-current": isActive ? "page" : void 0,
|
|
@@ -1415,17 +1458,14 @@ function PaginationPrevious({
|
|
|
1415
1458
|
className,
|
|
1416
1459
|
...props
|
|
1417
1460
|
}) {
|
|
1418
|
-
return /* @__PURE__ */
|
|
1461
|
+
return /* @__PURE__ */ jsx20(
|
|
1419
1462
|
PaginationLink,
|
|
1420
1463
|
{
|
|
1421
1464
|
"aria-label": "Go to previous page",
|
|
1422
1465
|
size: "default",
|
|
1423
1466
|
className: cn("gap-1 px-2.5 sm:pl-2.5", className),
|
|
1424
1467
|
...props,
|
|
1425
|
-
children:
|
|
1426
|
-
/* @__PURE__ */ jsx21(ChevronLeftIcon, {}),
|
|
1427
|
-
/* @__PURE__ */ jsx21("span", { className: "hidden sm:block", children: "Previous" })
|
|
1428
|
-
]
|
|
1468
|
+
children: /* @__PURE__ */ jsx20(ChevronLeftIcon, {})
|
|
1429
1469
|
}
|
|
1430
1470
|
);
|
|
1431
1471
|
}
|
|
@@ -1433,17 +1473,14 @@ function PaginationNext({
|
|
|
1433
1473
|
className,
|
|
1434
1474
|
...props
|
|
1435
1475
|
}) {
|
|
1436
|
-
return /* @__PURE__ */
|
|
1476
|
+
return /* @__PURE__ */ jsx20(
|
|
1437
1477
|
PaginationLink,
|
|
1438
1478
|
{
|
|
1439
1479
|
"aria-label": "Go to next page",
|
|
1440
1480
|
size: "default",
|
|
1441
1481
|
className: cn("gap-1 px-2.5 sm:pr-2.5", className),
|
|
1442
1482
|
...props,
|
|
1443
|
-
children:
|
|
1444
|
-
/* @__PURE__ */ jsx21("span", { className: "hidden sm:block", children: "Next" }),
|
|
1445
|
-
/* @__PURE__ */ jsx21(ChevronRightIcon, {})
|
|
1446
|
-
]
|
|
1483
|
+
children: /* @__PURE__ */ jsx20(ChevronRightIcon, {})
|
|
1447
1484
|
}
|
|
1448
1485
|
);
|
|
1449
1486
|
}
|
|
@@ -1459,8 +1496,8 @@ function PaginationEllipsis({
|
|
|
1459
1496
|
className: cn("flex size-9 items-center justify-center", className),
|
|
1460
1497
|
...props,
|
|
1461
1498
|
children: [
|
|
1462
|
-
/* @__PURE__ */
|
|
1463
|
-
/* @__PURE__ */
|
|
1499
|
+
/* @__PURE__ */ jsx20(MoreHorizontalIcon, { className: "size-4" }),
|
|
1500
|
+
/* @__PURE__ */ jsx20("span", { className: "sr-only", children: "More pages" })
|
|
1464
1501
|
]
|
|
1465
1502
|
}
|
|
1466
1503
|
);
|
|
@@ -1469,21 +1506,21 @@ function PaginationEllipsis({
|
|
|
1469
1506
|
// src/shadcn/components/select.tsx
|
|
1470
1507
|
import { CheckIcon as CheckIcon2, ChevronDownIcon, ChevronUpIcon } from "lucide-react";
|
|
1471
1508
|
import { Select as SelectPrimitive } from "radix-ui";
|
|
1472
|
-
import { jsx as
|
|
1509
|
+
import { jsx as jsx21, jsxs as jsxs11 } from "react/jsx-runtime";
|
|
1473
1510
|
function Select({
|
|
1474
1511
|
...props
|
|
1475
1512
|
}) {
|
|
1476
|
-
return /* @__PURE__ */
|
|
1513
|
+
return /* @__PURE__ */ jsx21(SelectPrimitive.Root, { "data-slot": "select", ...props });
|
|
1477
1514
|
}
|
|
1478
1515
|
function SelectGroup({
|
|
1479
1516
|
...props
|
|
1480
1517
|
}) {
|
|
1481
|
-
return /* @__PURE__ */
|
|
1518
|
+
return /* @__PURE__ */ jsx21(SelectPrimitive.Group, { "data-slot": "select-group", ...props });
|
|
1482
1519
|
}
|
|
1483
1520
|
function SelectValue({
|
|
1484
1521
|
...props
|
|
1485
1522
|
}) {
|
|
1486
|
-
return /* @__PURE__ */
|
|
1523
|
+
return /* @__PURE__ */ jsx21(SelectPrimitive.Value, { "data-slot": "select-value", ...props });
|
|
1487
1524
|
}
|
|
1488
1525
|
function SelectTrigger({
|
|
1489
1526
|
className,
|
|
@@ -1503,7 +1540,7 @@ function SelectTrigger({
|
|
|
1503
1540
|
...props,
|
|
1504
1541
|
children: [
|
|
1505
1542
|
children,
|
|
1506
|
-
/* @__PURE__ */
|
|
1543
|
+
/* @__PURE__ */ jsx21(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ jsx21(ChevronDownIcon, { className: "size-4 opacity-50" }) })
|
|
1507
1544
|
]
|
|
1508
1545
|
}
|
|
1509
1546
|
);
|
|
@@ -1515,7 +1552,7 @@ function SelectContent({
|
|
|
1515
1552
|
align = "center",
|
|
1516
1553
|
...props
|
|
1517
1554
|
}) {
|
|
1518
|
-
return /* @__PURE__ */
|
|
1555
|
+
return /* @__PURE__ */ jsx21(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsxs11(
|
|
1519
1556
|
SelectPrimitive.Content,
|
|
1520
1557
|
{
|
|
1521
1558
|
"data-slot": "select-content",
|
|
@@ -1528,8 +1565,8 @@ function SelectContent({
|
|
|
1528
1565
|
align,
|
|
1529
1566
|
...props,
|
|
1530
1567
|
children: [
|
|
1531
|
-
/* @__PURE__ */
|
|
1532
|
-
/* @__PURE__ */
|
|
1568
|
+
/* @__PURE__ */ jsx21(SelectScrollUpButton, {}),
|
|
1569
|
+
/* @__PURE__ */ jsx21(
|
|
1533
1570
|
SelectPrimitive.Viewport,
|
|
1534
1571
|
{
|
|
1535
1572
|
className: cn(
|
|
@@ -1539,7 +1576,7 @@ function SelectContent({
|
|
|
1539
1576
|
children
|
|
1540
1577
|
}
|
|
1541
1578
|
),
|
|
1542
|
-
/* @__PURE__ */
|
|
1579
|
+
/* @__PURE__ */ jsx21(SelectScrollDownButton, {})
|
|
1543
1580
|
]
|
|
1544
1581
|
}
|
|
1545
1582
|
) });
|
|
@@ -1559,15 +1596,15 @@ function SelectItem({
|
|
|
1559
1596
|
),
|
|
1560
1597
|
...props,
|
|
1561
1598
|
children: [
|
|
1562
|
-
/* @__PURE__ */
|
|
1599
|
+
/* @__PURE__ */ jsx21(
|
|
1563
1600
|
"span",
|
|
1564
1601
|
{
|
|
1565
1602
|
"data-slot": "select-item-indicator",
|
|
1566
1603
|
className: "absolute right-2 flex size-3.5 items-center justify-center",
|
|
1567
|
-
children: /* @__PURE__ */
|
|
1604
|
+
children: /* @__PURE__ */ jsx21(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx21(CheckIcon2, { className: "size-4" }) })
|
|
1568
1605
|
}
|
|
1569
1606
|
),
|
|
1570
|
-
/* @__PURE__ */
|
|
1607
|
+
/* @__PURE__ */ jsx21(SelectPrimitive.ItemText, { children })
|
|
1571
1608
|
]
|
|
1572
1609
|
}
|
|
1573
1610
|
);
|
|
@@ -1576,7 +1613,7 @@ function SelectScrollUpButton({
|
|
|
1576
1613
|
className,
|
|
1577
1614
|
...props
|
|
1578
1615
|
}) {
|
|
1579
|
-
return /* @__PURE__ */
|
|
1616
|
+
return /* @__PURE__ */ jsx21(
|
|
1580
1617
|
SelectPrimitive.ScrollUpButton,
|
|
1581
1618
|
{
|
|
1582
1619
|
"data-slot": "select-scroll-up-button",
|
|
@@ -1585,7 +1622,7 @@ function SelectScrollUpButton({
|
|
|
1585
1622
|
className
|
|
1586
1623
|
),
|
|
1587
1624
|
...props,
|
|
1588
|
-
children: /* @__PURE__ */
|
|
1625
|
+
children: /* @__PURE__ */ jsx21(ChevronUpIcon, { className: "size-4" })
|
|
1589
1626
|
}
|
|
1590
1627
|
);
|
|
1591
1628
|
}
|
|
@@ -1593,7 +1630,7 @@ function SelectScrollDownButton({
|
|
|
1593
1630
|
className,
|
|
1594
1631
|
...props
|
|
1595
1632
|
}) {
|
|
1596
|
-
return /* @__PURE__ */
|
|
1633
|
+
return /* @__PURE__ */ jsx21(
|
|
1597
1634
|
SelectPrimitive.ScrollDownButton,
|
|
1598
1635
|
{
|
|
1599
1636
|
"data-slot": "select-scroll-down-button",
|
|
@@ -1602,13 +1639,13 @@ function SelectScrollDownButton({
|
|
|
1602
1639
|
className
|
|
1603
1640
|
),
|
|
1604
1641
|
...props,
|
|
1605
|
-
children: /* @__PURE__ */
|
|
1642
|
+
children: /* @__PURE__ */ jsx21(ChevronDownIcon, { className: "size-4" })
|
|
1606
1643
|
}
|
|
1607
1644
|
);
|
|
1608
1645
|
}
|
|
1609
1646
|
|
|
1610
1647
|
// src/components/data-table/component/table-pagination/index.tsx
|
|
1611
|
-
import { jsx as
|
|
1648
|
+
import { jsx as jsx22, jsxs as jsxs12 } from "react/jsx-runtime";
|
|
1612
1649
|
var buildPages = (current, total) => {
|
|
1613
1650
|
if (total <= 0) return [];
|
|
1614
1651
|
if (total <= 7) {
|
|
@@ -1651,8 +1688,8 @@ var TablePagination = (props) => {
|
|
|
1651
1688
|
[props]
|
|
1652
1689
|
);
|
|
1653
1690
|
return /* @__PURE__ */ jsxs12("div", { className: "flex w-full items-center gap-8 lg:w-fit", children: [
|
|
1654
|
-
/* @__PURE__ */
|
|
1655
|
-
/* @__PURE__ */
|
|
1691
|
+
/* @__PURE__ */ jsx22("div", { className: "ml-auto flex items-center gap-2 lg:ml-0", children: /* @__PURE__ */ jsx22(Pagination, { children: /* @__PURE__ */ jsxs12(PaginationContent, { children: [
|
|
1692
|
+
/* @__PURE__ */ jsx22(PaginationItem, { children: /* @__PURE__ */ jsx22(
|
|
1656
1693
|
PaginationPrevious,
|
|
1657
1694
|
{
|
|
1658
1695
|
onClick: () => updateCurrentPage(props.currentPage - 1),
|
|
@@ -1662,9 +1699,9 @@ var TablePagination = (props) => {
|
|
|
1662
1699
|
) }),
|
|
1663
1700
|
pageItems.map((item) => {
|
|
1664
1701
|
if (item.type === "ellipsis") {
|
|
1665
|
-
return /* @__PURE__ */
|
|
1702
|
+
return /* @__PURE__ */ jsx22(PaginationItem, { children: /* @__PURE__ */ jsx22(PaginationEllipsis, {}) }, item.key);
|
|
1666
1703
|
}
|
|
1667
|
-
return /* @__PURE__ */
|
|
1704
|
+
return /* @__PURE__ */ jsx22(PaginationItem, { children: /* @__PURE__ */ jsx22(
|
|
1668
1705
|
PaginationLink,
|
|
1669
1706
|
{
|
|
1670
1707
|
isActive: props.currentPage === item.page,
|
|
@@ -1673,7 +1710,7 @@ var TablePagination = (props) => {
|
|
|
1673
1710
|
}
|
|
1674
1711
|
) }, item.page);
|
|
1675
1712
|
}),
|
|
1676
|
-
/* @__PURE__ */
|
|
1713
|
+
/* @__PURE__ */ jsx22(PaginationItem, { children: /* @__PURE__ */ jsx22(
|
|
1677
1714
|
PaginationNext,
|
|
1678
1715
|
{
|
|
1679
1716
|
onClick: () => updateCurrentPage(props.currentPage + 1),
|
|
@@ -1682,7 +1719,7 @@ var TablePagination = (props) => {
|
|
|
1682
1719
|
}
|
|
1683
1720
|
) })
|
|
1684
1721
|
] }) }) }),
|
|
1685
|
-
/* @__PURE__ */
|
|
1722
|
+
/* @__PURE__ */ jsx22("div", { className: "hidden items-center gap-2 lg:flex", children: /* @__PURE__ */ jsxs12(
|
|
1686
1723
|
Select,
|
|
1687
1724
|
{
|
|
1688
1725
|
value: String(props.size),
|
|
@@ -1690,8 +1727,8 @@ var TablePagination = (props) => {
|
|
|
1690
1727
|
props.onUpdateSize(Number(value));
|
|
1691
1728
|
},
|
|
1692
1729
|
children: [
|
|
1693
|
-
/* @__PURE__ */
|
|
1694
|
-
/* @__PURE__ */
|
|
1730
|
+
/* @__PURE__ */ jsx22(SelectTrigger, { className: "w-20", id: "rows-per-page", children: /* @__PURE__ */ jsx22(SelectValue, {}) }),
|
|
1731
|
+
/* @__PURE__ */ jsx22(SelectContent, { side: "top", children: props.sizeList.map((pageSize) => /* @__PURE__ */ jsxs12(SelectItem, { value: `${pageSize}`, children: [
|
|
1695
1732
|
pageSize,
|
|
1696
1733
|
"/\u9875"
|
|
1697
1734
|
] }, pageSize)) })
|
|
@@ -1702,9 +1739,9 @@ var TablePagination = (props) => {
|
|
|
1702
1739
|
};
|
|
1703
1740
|
|
|
1704
1741
|
// src/components/data-table/component/table-text/index.tsx
|
|
1705
|
-
import { jsx as
|
|
1742
|
+
import { jsx as jsx23 } from "react/jsx-runtime";
|
|
1706
1743
|
var TableText = (props) => {
|
|
1707
|
-
return /* @__PURE__ */
|
|
1744
|
+
return /* @__PURE__ */ jsx23(
|
|
1708
1745
|
"div",
|
|
1709
1746
|
{
|
|
1710
1747
|
className: cn2(
|
|
@@ -1719,21 +1756,21 @@ var TableText = (props) => {
|
|
|
1719
1756
|
// src/shadcn/components/dropdown-menu.tsx
|
|
1720
1757
|
import { CheckIcon as CheckIcon3, ChevronRightIcon as ChevronRightIcon2, CircleIcon } from "lucide-react";
|
|
1721
1758
|
import { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
|
|
1722
|
-
import { jsx as
|
|
1759
|
+
import { jsx as jsx24, jsxs as jsxs13 } from "react/jsx-runtime";
|
|
1723
1760
|
function DropdownMenu({
|
|
1724
1761
|
...props
|
|
1725
1762
|
}) {
|
|
1726
|
-
return /* @__PURE__ */
|
|
1763
|
+
return /* @__PURE__ */ jsx24(DropdownMenuPrimitive.Root, { "data-slot": "dropdown-menu", ...props });
|
|
1727
1764
|
}
|
|
1728
1765
|
function DropdownMenuPortal({
|
|
1729
1766
|
...props
|
|
1730
1767
|
}) {
|
|
1731
|
-
return /* @__PURE__ */
|
|
1768
|
+
return /* @__PURE__ */ jsx24(DropdownMenuPrimitive.Portal, { "data-slot": "dropdown-menu-portal", ...props });
|
|
1732
1769
|
}
|
|
1733
1770
|
function DropdownMenuTrigger({
|
|
1734
1771
|
...props
|
|
1735
1772
|
}) {
|
|
1736
|
-
return /* @__PURE__ */
|
|
1773
|
+
return /* @__PURE__ */ jsx24(
|
|
1737
1774
|
DropdownMenuPrimitive.Trigger,
|
|
1738
1775
|
{
|
|
1739
1776
|
"data-slot": "dropdown-menu-trigger",
|
|
@@ -1746,7 +1783,7 @@ function DropdownMenuContent({
|
|
|
1746
1783
|
sideOffset = 4,
|
|
1747
1784
|
...props
|
|
1748
1785
|
}) {
|
|
1749
|
-
return /* @__PURE__ */
|
|
1786
|
+
return /* @__PURE__ */ jsx24(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx24(
|
|
1750
1787
|
DropdownMenuPrimitive.Content,
|
|
1751
1788
|
{
|
|
1752
1789
|
"data-slot": "dropdown-menu-content",
|
|
@@ -1765,7 +1802,7 @@ function DropdownMenuItem({
|
|
|
1765
1802
|
variant = "default",
|
|
1766
1803
|
...props
|
|
1767
1804
|
}) {
|
|
1768
|
-
return /* @__PURE__ */
|
|
1805
|
+
return /* @__PURE__ */ jsx24(
|
|
1769
1806
|
DropdownMenuPrimitive.Item,
|
|
1770
1807
|
{
|
|
1771
1808
|
"data-slot": "dropdown-menu-item",
|
|
@@ -1796,7 +1833,7 @@ function DropdownMenuCheckboxItem({
|
|
|
1796
1833
|
checked,
|
|
1797
1834
|
...props,
|
|
1798
1835
|
children: [
|
|
1799
|
-
/* @__PURE__ */
|
|
1836
|
+
/* @__PURE__ */ jsx24("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsx24(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx24(CheckIcon3, { className: "size-4" }) }) }),
|
|
1800
1837
|
children
|
|
1801
1838
|
]
|
|
1802
1839
|
}
|
|
@@ -1805,7 +1842,7 @@ function DropdownMenuCheckboxItem({
|
|
|
1805
1842
|
function DropdownMenuSub({
|
|
1806
1843
|
...props
|
|
1807
1844
|
}) {
|
|
1808
|
-
return /* @__PURE__ */
|
|
1845
|
+
return /* @__PURE__ */ jsx24(DropdownMenuPrimitive.Sub, { "data-slot": "dropdown-menu-sub", ...props });
|
|
1809
1846
|
}
|
|
1810
1847
|
function DropdownMenuSubTrigger({
|
|
1811
1848
|
className,
|
|
@@ -1825,7 +1862,7 @@ function DropdownMenuSubTrigger({
|
|
|
1825
1862
|
...props,
|
|
1826
1863
|
children: [
|
|
1827
1864
|
children,
|
|
1828
|
-
/* @__PURE__ */
|
|
1865
|
+
/* @__PURE__ */ jsx24(ChevronRightIcon2, { className: "ml-auto size-4" })
|
|
1829
1866
|
]
|
|
1830
1867
|
}
|
|
1831
1868
|
);
|
|
@@ -1834,7 +1871,7 @@ function DropdownMenuSubContent({
|
|
|
1834
1871
|
className,
|
|
1835
1872
|
...props
|
|
1836
1873
|
}) {
|
|
1837
|
-
return /* @__PURE__ */
|
|
1874
|
+
return /* @__PURE__ */ jsx24(
|
|
1838
1875
|
DropdownMenuPrimitive.SubContent,
|
|
1839
1876
|
{
|
|
1840
1877
|
"data-slot": "dropdown-menu-sub-content",
|
|
@@ -1850,20 +1887,20 @@ function DropdownMenuSubContent({
|
|
|
1850
1887
|
// src/shadcn/components/sheet.tsx
|
|
1851
1888
|
import { XIcon as XIcon2 } from "lucide-react";
|
|
1852
1889
|
import { Dialog as SheetPrimitive } from "radix-ui";
|
|
1853
|
-
import { jsx as
|
|
1890
|
+
import { jsx as jsx25, jsxs as jsxs14 } from "react/jsx-runtime";
|
|
1854
1891
|
function Sheet({ ...props }) {
|
|
1855
|
-
return /* @__PURE__ */
|
|
1892
|
+
return /* @__PURE__ */ jsx25(SheetPrimitive.Root, { "data-slot": "sheet", ...props });
|
|
1856
1893
|
}
|
|
1857
1894
|
function SheetPortal({
|
|
1858
1895
|
...props
|
|
1859
1896
|
}) {
|
|
1860
|
-
return /* @__PURE__ */
|
|
1897
|
+
return /* @__PURE__ */ jsx25(SheetPrimitive.Portal, { "data-slot": "sheet-portal", ...props });
|
|
1861
1898
|
}
|
|
1862
1899
|
function SheetOverlay({
|
|
1863
1900
|
className,
|
|
1864
1901
|
...props
|
|
1865
1902
|
}) {
|
|
1866
|
-
return /* @__PURE__ */
|
|
1903
|
+
return /* @__PURE__ */ jsx25(
|
|
1867
1904
|
SheetPrimitive.Overlay,
|
|
1868
1905
|
{
|
|
1869
1906
|
"data-slot": "sheet-overlay",
|
|
@@ -1883,7 +1920,7 @@ function SheetContent({
|
|
|
1883
1920
|
...props
|
|
1884
1921
|
}) {
|
|
1885
1922
|
return /* @__PURE__ */ jsxs14(SheetPortal, { children: [
|
|
1886
|
-
/* @__PURE__ */
|
|
1923
|
+
/* @__PURE__ */ jsx25(SheetOverlay, {}),
|
|
1887
1924
|
/* @__PURE__ */ jsxs14(
|
|
1888
1925
|
SheetPrimitive.Content,
|
|
1889
1926
|
{
|
|
@@ -1900,8 +1937,8 @@ function SheetContent({
|
|
|
1900
1937
|
children: [
|
|
1901
1938
|
children,
|
|
1902
1939
|
showCloseButton && /* @__PURE__ */ jsxs14(SheetPrimitive.Close, { className: "absolute top-4 right-4 rounded-xs opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none data-[state=open]:bg-secondary", children: [
|
|
1903
|
-
/* @__PURE__ */
|
|
1904
|
-
/* @__PURE__ */
|
|
1940
|
+
/* @__PURE__ */ jsx25(XIcon2, { className: "size-4" }),
|
|
1941
|
+
/* @__PURE__ */ jsx25("span", { className: "sr-only", children: "Close" })
|
|
1905
1942
|
] })
|
|
1906
1943
|
]
|
|
1907
1944
|
}
|
|
@@ -1909,7 +1946,7 @@ function SheetContent({
|
|
|
1909
1946
|
] });
|
|
1910
1947
|
}
|
|
1911
1948
|
function SheetHeader({ className, ...props }) {
|
|
1912
|
-
return /* @__PURE__ */
|
|
1949
|
+
return /* @__PURE__ */ jsx25(
|
|
1913
1950
|
"div",
|
|
1914
1951
|
{
|
|
1915
1952
|
"data-slot": "sheet-header",
|
|
@@ -1919,7 +1956,7 @@ function SheetHeader({ className, ...props }) {
|
|
|
1919
1956
|
);
|
|
1920
1957
|
}
|
|
1921
1958
|
function SheetFooter({ className, ...props }) {
|
|
1922
|
-
return /* @__PURE__ */
|
|
1959
|
+
return /* @__PURE__ */ jsx25(
|
|
1923
1960
|
"div",
|
|
1924
1961
|
{
|
|
1925
1962
|
"data-slot": "sheet-footer",
|
|
@@ -1932,7 +1969,7 @@ function SheetTitle({
|
|
|
1932
1969
|
className,
|
|
1933
1970
|
...props
|
|
1934
1971
|
}) {
|
|
1935
|
-
return /* @__PURE__ */
|
|
1972
|
+
return /* @__PURE__ */ jsx25(
|
|
1936
1973
|
SheetPrimitive.Title,
|
|
1937
1974
|
{
|
|
1938
1975
|
"data-slot": "sheet-title",
|
|
@@ -1943,14 +1980,14 @@ function SheetTitle({
|
|
|
1943
1980
|
}
|
|
1944
1981
|
|
|
1945
1982
|
// src/shadcn/components/table.tsx
|
|
1946
|
-
import { jsx as
|
|
1983
|
+
import { jsx as jsx26 } from "react/jsx-runtime";
|
|
1947
1984
|
function Table({ className, ...props }) {
|
|
1948
|
-
return /* @__PURE__ */
|
|
1985
|
+
return /* @__PURE__ */ jsx26(
|
|
1949
1986
|
"div",
|
|
1950
1987
|
{
|
|
1951
1988
|
"data-slot": "table-container",
|
|
1952
1989
|
className: "relative w-full overflow-x-auto",
|
|
1953
|
-
children: /* @__PURE__ */
|
|
1990
|
+
children: /* @__PURE__ */ jsx26(
|
|
1954
1991
|
"table",
|
|
1955
1992
|
{
|
|
1956
1993
|
"data-slot": "table",
|
|
@@ -1962,7 +1999,7 @@ function Table({ className, ...props }) {
|
|
|
1962
1999
|
);
|
|
1963
2000
|
}
|
|
1964
2001
|
function TableHeader({ className, ...props }) {
|
|
1965
|
-
return /* @__PURE__ */
|
|
2002
|
+
return /* @__PURE__ */ jsx26(
|
|
1966
2003
|
"thead",
|
|
1967
2004
|
{
|
|
1968
2005
|
"data-slot": "table-header",
|
|
@@ -1972,7 +2009,7 @@ function TableHeader({ className, ...props }) {
|
|
|
1972
2009
|
);
|
|
1973
2010
|
}
|
|
1974
2011
|
function TableBody({ className, ...props }) {
|
|
1975
|
-
return /* @__PURE__ */
|
|
2012
|
+
return /* @__PURE__ */ jsx26(
|
|
1976
2013
|
"tbody",
|
|
1977
2014
|
{
|
|
1978
2015
|
"data-slot": "table-body",
|
|
@@ -1982,7 +2019,7 @@ function TableBody({ className, ...props }) {
|
|
|
1982
2019
|
);
|
|
1983
2020
|
}
|
|
1984
2021
|
function TableRow({ className, ...props }) {
|
|
1985
|
-
return /* @__PURE__ */
|
|
2022
|
+
return /* @__PURE__ */ jsx26(
|
|
1986
2023
|
"tr",
|
|
1987
2024
|
{
|
|
1988
2025
|
"data-slot": "table-row",
|
|
@@ -1995,7 +2032,7 @@ function TableRow({ className, ...props }) {
|
|
|
1995
2032
|
);
|
|
1996
2033
|
}
|
|
1997
2034
|
function TableHead({ className, ...props }) {
|
|
1998
|
-
return /* @__PURE__ */
|
|
2035
|
+
return /* @__PURE__ */ jsx26(
|
|
1999
2036
|
"th",
|
|
2000
2037
|
{
|
|
2001
2038
|
"data-slot": "table-head",
|
|
@@ -2008,7 +2045,7 @@ function TableHead({ className, ...props }) {
|
|
|
2008
2045
|
);
|
|
2009
2046
|
}
|
|
2010
2047
|
function TableCell({ className, ...props }) {
|
|
2011
|
-
return /* @__PURE__ */
|
|
2048
|
+
return /* @__PURE__ */ jsx26(
|
|
2012
2049
|
"td",
|
|
2013
2050
|
{
|
|
2014
2051
|
"data-slot": "table-cell",
|
|
@@ -2022,7 +2059,7 @@ function TableCell({ className, ...props }) {
|
|
|
2022
2059
|
}
|
|
2023
2060
|
|
|
2024
2061
|
// src/components/data-table/index.tsx
|
|
2025
|
-
import { jsx as
|
|
2062
|
+
import { jsx as jsx27, jsxs as jsxs15 } from "react/jsx-runtime";
|
|
2026
2063
|
var buildParams = (page, size, keyword, filters, sorting) => {
|
|
2027
2064
|
const result = { page, size };
|
|
2028
2065
|
if (!isEmpty(keyword)) {
|
|
@@ -2179,25 +2216,25 @@ var DataTable = (props) => {
|
|
|
2179
2216
|
setAdvancedOpen(true);
|
|
2180
2217
|
},
|
|
2181
2218
|
children: [
|
|
2182
|
-
/* @__PURE__ */
|
|
2219
|
+
/* @__PURE__ */ jsx27(FilterIcon, {}),
|
|
2183
2220
|
"\u66F4\u591A\u7B5B\u9009"
|
|
2184
2221
|
]
|
|
2185
2222
|
}
|
|
2186
2223
|
),
|
|
2187
2224
|
(props.searchbar || props.advancedFilter) && /* @__PURE__ */ jsxs15(Button, { variant: "ghost", size: "sm", onClick: resetFilters, children: [
|
|
2188
|
-
/* @__PURE__ */
|
|
2225
|
+
/* @__PURE__ */ jsx27(RotateCcwIcon, {}),
|
|
2189
2226
|
"\u91CD\u7F6E"
|
|
2190
2227
|
] })
|
|
2191
2228
|
] }),
|
|
2192
2229
|
/* @__PURE__ */ jsxs15("div", { className: "flex items-center gap-2", children: [
|
|
2193
2230
|
/* @__PURE__ */ jsxs15(DropdownMenu, { children: [
|
|
2194
|
-
/* @__PURE__ */
|
|
2195
|
-
/* @__PURE__ */
|
|
2196
|
-
/* @__PURE__ */
|
|
2231
|
+
/* @__PURE__ */ jsx27(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsxs15(Button, { variant: "outline", size: "sm", children: [
|
|
2232
|
+
/* @__PURE__ */ jsx27(ColumnsIcon, {}),
|
|
2233
|
+
/* @__PURE__ */ jsx27(ChevronDownIcon2, {})
|
|
2197
2234
|
] }) }),
|
|
2198
|
-
/* @__PURE__ */
|
|
2235
|
+
/* @__PURE__ */ jsx27(DropdownMenuContent, { align: "end", className: "w-56", children: table.getAllColumns().filter(
|
|
2199
2236
|
(column) => typeof column.accessorFn !== "undefined" && column.getCanHide()
|
|
2200
|
-
).map((column) => /* @__PURE__ */
|
|
2237
|
+
).map((column) => /* @__PURE__ */ jsx27(
|
|
2201
2238
|
DropdownMenuCheckboxItem,
|
|
2202
2239
|
{
|
|
2203
2240
|
checked: column.getIsVisible(),
|
|
@@ -2211,24 +2248,24 @@ var DataTable = (props) => {
|
|
|
2211
2248
|
] })
|
|
2212
2249
|
] }),
|
|
2213
2250
|
/* @__PURE__ */ jsxs15("div", { className: "flex flex-col gap-4 overflow-auto px-4 pb-0.5 lg:px-6", children: [
|
|
2214
|
-
/* @__PURE__ */
|
|
2215
|
-
/* @__PURE__ */
|
|
2251
|
+
/* @__PURE__ */ jsx27("div", { className: "overflow-hidden rounded-lg border", children: /* @__PURE__ */ jsxs15(Table, { children: [
|
|
2252
|
+
/* @__PURE__ */ jsx27(TableHeader, { className: "sticky top-0 z-10 bg-muted", children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx27(TableRow, { children: headerGroup.headers.map((header) => /* @__PURE__ */ jsx27(TableHead, { colSpan: header.colSpan, children: header.isPlaceholder ? null : flexRender(
|
|
2216
2253
|
header.column.columnDef.header,
|
|
2217
2254
|
header.getContext()
|
|
2218
2255
|
) }, header.id)) }, headerGroup.id)) }),
|
|
2219
|
-
/* @__PURE__ */
|
|
2256
|
+
/* @__PURE__ */ jsx27(TableBody, { children: table.getRowModel().rows.length > 0 ? table.getRowModel().rows.map((row) => /* @__PURE__ */ jsx27(TableRow, { children: row.getVisibleCells().map((cell) => /* @__PURE__ */ jsx27(TableCell, { children: flexRender(
|
|
2220
2257
|
cell.column.columnDef.cell,
|
|
2221
2258
|
cell.getContext()
|
|
2222
|
-
) }, cell.id)) }, row.id)) : /* @__PURE__ */
|
|
2259
|
+
) }, cell.id)) }, row.id)) : /* @__PURE__ */ jsx27(TableRow, { children: /* @__PURE__ */ jsx27(
|
|
2223
2260
|
TableCell,
|
|
2224
2261
|
{
|
|
2225
2262
|
colSpan: props.columns.length,
|
|
2226
2263
|
className: "h-24 text-center",
|
|
2227
|
-
children: /* @__PURE__ */
|
|
2264
|
+
children: /* @__PURE__ */ jsx27(TableEmpty, {})
|
|
2228
2265
|
}
|
|
2229
2266
|
) }) })
|
|
2230
2267
|
] }) }),
|
|
2231
|
-
/* @__PURE__ */
|
|
2268
|
+
/* @__PURE__ */ jsx27("div", { className: "flex items-center justify-end px-4", children: /* @__PURE__ */ jsx27(
|
|
2232
2269
|
TablePagination,
|
|
2233
2270
|
{
|
|
2234
2271
|
currentPage,
|
|
@@ -2243,14 +2280,14 @@ var DataTable = (props) => {
|
|
|
2243
2280
|
}
|
|
2244
2281
|
) })
|
|
2245
2282
|
] }),
|
|
2246
|
-
props.advancedFilter && /* @__PURE__ */
|
|
2247
|
-
/* @__PURE__ */
|
|
2248
|
-
/* @__PURE__ */
|
|
2283
|
+
props.advancedFilter && /* @__PURE__ */ jsx27(Sheet, { open: advancedOpen, onOpenChange: setAdvancedOpen, children: /* @__PURE__ */ jsxs15(SheetContent, { className: "flex w-[420px] flex-col p-0", children: [
|
|
2284
|
+
/* @__PURE__ */ jsx27(SheetHeader, { className: "border-b px-6 py-4", children: /* @__PURE__ */ jsx27(SheetTitle, { children: "\u66F4\u591A\u7B5B\u9009" }) }),
|
|
2285
|
+
/* @__PURE__ */ jsx27("div", { className: "flex-1 overflow-y-auto px-6 py-4", children: props.advancedFilter({
|
|
2249
2286
|
draftFilters,
|
|
2250
2287
|
setDraftFilters: (updater) => setDraftFilters((prev) => updater(prev))
|
|
2251
2288
|
}) }),
|
|
2252
2289
|
/* @__PURE__ */ jsxs15(SheetFooter, { className: "border-t px-6 py-4", children: [
|
|
2253
|
-
/* @__PURE__ */
|
|
2290
|
+
/* @__PURE__ */ jsx27(
|
|
2254
2291
|
Button,
|
|
2255
2292
|
{
|
|
2256
2293
|
className: "flex-1",
|
|
@@ -2259,7 +2296,7 @@ var DataTable = (props) => {
|
|
|
2259
2296
|
children: "\u91CD\u7F6E"
|
|
2260
2297
|
}
|
|
2261
2298
|
),
|
|
2262
|
-
/* @__PURE__ */
|
|
2299
|
+
/* @__PURE__ */ jsx27(Button, { className: "flex-1", onClick: confirmAdvanced, children: "\u786E\u8BA4\u7B5B\u9009" })
|
|
2263
2300
|
] })
|
|
2264
2301
|
] }) })
|
|
2265
2302
|
] });
|
|
@@ -2267,7 +2304,7 @@ var DataTable = (props) => {
|
|
|
2267
2304
|
|
|
2268
2305
|
// src/components/dialog/index.tsx
|
|
2269
2306
|
import { useState as useState3 } from "react";
|
|
2270
|
-
import { jsx as
|
|
2307
|
+
import { jsx as jsx28, jsxs as jsxs16 } from "react/jsx-runtime";
|
|
2271
2308
|
var Dialog2 = (props) => {
|
|
2272
2309
|
const [open, setOpen] = useState3(false);
|
|
2273
2310
|
const [confirmLoading, setConfirmLoading] = useState3(false);
|
|
@@ -2285,13 +2322,13 @@ var Dialog2 = (props) => {
|
|
|
2285
2322
|
}
|
|
2286
2323
|
};
|
|
2287
2324
|
return /* @__PURE__ */ jsxs16(Dialog, { open, onOpenChange: setOpen, children: [
|
|
2288
|
-
/* @__PURE__ */
|
|
2325
|
+
/* @__PURE__ */ jsx28(DialogTrigger, { asChild: true, children: props.children }),
|
|
2289
2326
|
/* @__PURE__ */ jsxs16(DialogContent, { className: "sm:max-w-106.25", children: [
|
|
2290
|
-
/* @__PURE__ */
|
|
2291
|
-
/* @__PURE__ */
|
|
2327
|
+
/* @__PURE__ */ jsx28(DialogHeader, { children: /* @__PURE__ */ jsx28(DialogTitle, { children: props.title ?? "\u63D0\u793A" }) }),
|
|
2328
|
+
/* @__PURE__ */ jsx28("div", { className: "py-4", children: typeof props.content === "string" ? /* @__PURE__ */ jsx28("div", { children: props.content }) : props.content }),
|
|
2292
2329
|
/* @__PURE__ */ jsxs16(DialogFooter, { children: [
|
|
2293
|
-
/* @__PURE__ */
|
|
2294
|
-
/* @__PURE__ */
|
|
2330
|
+
/* @__PURE__ */ jsx28(DialogClose, { asChild: true, children: /* @__PURE__ */ jsx28(Button2, { variant: EnumVariant.OUTLINE, disabled: confirmLoading, children: props.cancelText ?? "\u53D6\u6D88" }) }),
|
|
2331
|
+
/* @__PURE__ */ jsx28(
|
|
2295
2332
|
Button2,
|
|
2296
2333
|
{
|
|
2297
2334
|
type: "button",
|
|
@@ -2317,7 +2354,7 @@ import {
|
|
|
2317
2354
|
getSortedRowModel as getSortedRowModel2,
|
|
2318
2355
|
useReactTable as useReactTable2
|
|
2319
2356
|
} from "@tanstack/react-table";
|
|
2320
|
-
import { jsx as
|
|
2357
|
+
import { jsx as jsx29, jsxs as jsxs17 } from "react/jsx-runtime";
|
|
2321
2358
|
var DisplayTable = (props) => {
|
|
2322
2359
|
const [rowSelection, setRowSelection] = useState4({});
|
|
2323
2360
|
const [columnVisibility, setColumnVisibility] = useState4({});
|
|
@@ -2348,24 +2385,24 @@ var DisplayTable = (props) => {
|
|
|
2348
2385
|
getFacetedRowModel: getFacetedRowModel2(),
|
|
2349
2386
|
getFacetedUniqueValues: getFacetedUniqueValues2()
|
|
2350
2387
|
});
|
|
2351
|
-
return /* @__PURE__ */
|
|
2352
|
-
/* @__PURE__ */
|
|
2388
|
+
return /* @__PURE__ */ jsx29("div", { className: "overflow-hidden rounded-lg border", children: /* @__PURE__ */ jsxs17(Table, { children: [
|
|
2389
|
+
/* @__PURE__ */ jsx29(TableHeader, { className: "sticky top-0 z-10 bg-muted", children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx29(TableRow, { children: headerGroup.headers.map((header) => /* @__PURE__ */ jsx29(TableHead, { colSpan: header.colSpan, children: header.isPlaceholder ? null : flexRender2(
|
|
2353
2390
|
header.column.columnDef.header,
|
|
2354
2391
|
header.getContext()
|
|
2355
2392
|
) }, header.id)) }, headerGroup.id)) }),
|
|
2356
|
-
/* @__PURE__ */
|
|
2393
|
+
/* @__PURE__ */ jsx29(TableBody, { className: "**:data-[slot=table-cell]:first:w-8", children: table.getRowModel().rows.length ? table.getRowModel().rows.map((row) => /* @__PURE__ */ jsx29(
|
|
2357
2394
|
TableRow,
|
|
2358
2395
|
{
|
|
2359
2396
|
"data-state": row.getIsSelected() && "selected",
|
|
2360
|
-
children: row.getVisibleCells().map((cell) => /* @__PURE__ */
|
|
2397
|
+
children: row.getVisibleCells().map((cell) => /* @__PURE__ */ jsx29(TableCell, { children: flexRender2(cell.column.columnDef.cell, cell.getContext()) }, cell.id))
|
|
2361
2398
|
},
|
|
2362
2399
|
row.id
|
|
2363
|
-
)) : /* @__PURE__ */
|
|
2400
|
+
)) : /* @__PURE__ */ jsx29(TableRow, { children: /* @__PURE__ */ jsx29(
|
|
2364
2401
|
TableCell,
|
|
2365
2402
|
{
|
|
2366
2403
|
colSpan: props.columns.length,
|
|
2367
2404
|
className: "h-24 text-center",
|
|
2368
|
-
children: /* @__PURE__ */
|
|
2405
|
+
children: /* @__PURE__ */ jsx29(TableEmpty, {})
|
|
2369
2406
|
}
|
|
2370
2407
|
) }) })
|
|
2371
2408
|
] }) });
|
|
@@ -2373,7 +2410,7 @@ var DisplayTable = (props) => {
|
|
|
2373
2410
|
|
|
2374
2411
|
// src/components/dropdown-cascader/dropdown-cascader-base.tsx
|
|
2375
2412
|
import { Check } from "lucide-react";
|
|
2376
|
-
import { jsx as
|
|
2413
|
+
import { jsx as jsx30, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
2377
2414
|
var getOptionMap = (options) => {
|
|
2378
2415
|
const map = /* @__PURE__ */ new Map();
|
|
2379
2416
|
const walk = (nodes, parent) => {
|
|
@@ -2398,8 +2435,8 @@ var renderCascaderNodes = (nodes, parentPath, selectedValues, onSelect) => {
|
|
|
2398
2435
|
const isSelected = selectedValues.includes(node.value);
|
|
2399
2436
|
if (isBranch) {
|
|
2400
2437
|
return /* @__PURE__ */ jsxs18(DropdownMenuSub, { children: [
|
|
2401
|
-
/* @__PURE__ */
|
|
2402
|
-
/* @__PURE__ */
|
|
2438
|
+
/* @__PURE__ */ jsx30(DropdownMenuSubTrigger, { disabled: node.disabled, children: node.label }),
|
|
2439
|
+
/* @__PURE__ */ jsx30(DropdownMenuPortal, { children: /* @__PURE__ */ jsxs18(DropdownMenuSubContent, { className: "min-w-56", children: [
|
|
2403
2440
|
/* @__PURE__ */ jsxs18(
|
|
2404
2441
|
DropdownMenuItem,
|
|
2405
2442
|
{
|
|
@@ -2410,8 +2447,8 @@ var renderCascaderNodes = (nodes, parentPath, selectedValues, onSelect) => {
|
|
|
2410
2447
|
},
|
|
2411
2448
|
className: "flex items-center justify-between",
|
|
2412
2449
|
children: [
|
|
2413
|
-
/* @__PURE__ */
|
|
2414
|
-
isSelected && /* @__PURE__ */
|
|
2450
|
+
/* @__PURE__ */ jsx30("span", { children: node.label }),
|
|
2451
|
+
isSelected && /* @__PURE__ */ jsx30(Check, { className: "size-4" })
|
|
2415
2452
|
]
|
|
2416
2453
|
}
|
|
2417
2454
|
),
|
|
@@ -2434,8 +2471,8 @@ var renderCascaderNodes = (nodes, parentPath, selectedValues, onSelect) => {
|
|
|
2434
2471
|
},
|
|
2435
2472
|
className: "flex items-center justify-between",
|
|
2436
2473
|
children: [
|
|
2437
|
-
/* @__PURE__ */
|
|
2438
|
-
isSelected && /* @__PURE__ */
|
|
2474
|
+
/* @__PURE__ */ jsx30("span", { children: node.label }),
|
|
2475
|
+
isSelected && /* @__PURE__ */ jsx30(Check, { className: "size-4" })
|
|
2439
2476
|
]
|
|
2440
2477
|
},
|
|
2441
2478
|
node.value
|
|
@@ -2446,7 +2483,7 @@ var renderCascaderNodes = (nodes, parentPath, selectedValues, onSelect) => {
|
|
|
2446
2483
|
// src/components/dropdown-cascader/dropdown-cascader-multi.tsx
|
|
2447
2484
|
import * as React from "react";
|
|
2448
2485
|
import { ChevronDown, X } from "lucide-react";
|
|
2449
|
-
import { jsx as
|
|
2486
|
+
import { jsx as jsx31, jsxs as jsxs19 } from "react/jsx-runtime";
|
|
2450
2487
|
var toggle = (list, value) => {
|
|
2451
2488
|
if (list.includes(value)) {
|
|
2452
2489
|
return list.filter((v) => v !== value);
|
|
@@ -2486,7 +2523,7 @@ var DropdownCascaderMulti = ({
|
|
|
2486
2523
|
label: i.path.map((p) => p.label).join(" / ")
|
|
2487
2524
|
}));
|
|
2488
2525
|
return /* @__PURE__ */ jsxs19(DropdownMenu, { open, onOpenChange: setOpen, children: [
|
|
2489
|
-
/* @__PURE__ */
|
|
2526
|
+
/* @__PURE__ */ jsx31(DropdownMenuTrigger, { asChild: true, className: "self-start", children: /* @__PURE__ */ jsxs19(
|
|
2490
2527
|
Button,
|
|
2491
2528
|
{
|
|
2492
2529
|
variant: "outline",
|
|
@@ -2500,7 +2537,7 @@ var DropdownCascaderMulti = ({
|
|
|
2500
2537
|
className: "inline-flex items-center gap-1 rounded border px-2 py-0.5 text-xs",
|
|
2501
2538
|
children: [
|
|
2502
2539
|
item.label,
|
|
2503
|
-
/* @__PURE__ */
|
|
2540
|
+
/* @__PURE__ */ jsx31(
|
|
2504
2541
|
"span",
|
|
2505
2542
|
{
|
|
2506
2543
|
role: "button",
|
|
@@ -2522,7 +2559,7 @@ var DropdownCascaderMulti = ({
|
|
|
2522
2559
|
remove(item.value);
|
|
2523
2560
|
}
|
|
2524
2561
|
},
|
|
2525
|
-
children: /* @__PURE__ */
|
|
2562
|
+
children: /* @__PURE__ */ jsx31(X, { className: "size-3" })
|
|
2526
2563
|
}
|
|
2527
2564
|
)
|
|
2528
2565
|
]
|
|
@@ -2530,11 +2567,11 @@ var DropdownCascaderMulti = ({
|
|
|
2530
2567
|
item.value
|
|
2531
2568
|
))
|
|
2532
2569
|
] }),
|
|
2533
|
-
/* @__PURE__ */
|
|
2570
|
+
/* @__PURE__ */ jsx31(ChevronDown, { className: "size-4 opacity-50" })
|
|
2534
2571
|
]
|
|
2535
2572
|
}
|
|
2536
2573
|
) }),
|
|
2537
|
-
/* @__PURE__ */
|
|
2574
|
+
/* @__PURE__ */ jsx31(
|
|
2538
2575
|
DropdownMenuContent,
|
|
2539
2576
|
{
|
|
2540
2577
|
align: "start",
|
|
@@ -2548,7 +2585,7 @@ var DropdownCascaderMulti = ({
|
|
|
2548
2585
|
// src/components/dropdown-cascader/dropdown-cascader-single.tsx
|
|
2549
2586
|
import * as React2 from "react";
|
|
2550
2587
|
import { ChevronDown as ChevronDown2 } from "lucide-react";
|
|
2551
|
-
import { jsx as
|
|
2588
|
+
import { jsx as jsx32, jsxs as jsxs20 } from "react/jsx-runtime";
|
|
2552
2589
|
var DropdownCascaderSingle = (props) => {
|
|
2553
2590
|
const optionMap = React2.useMemo(
|
|
2554
2591
|
() => getOptionMap(props.options),
|
|
@@ -2563,18 +2600,18 @@ var DropdownCascaderSingle = (props) => {
|
|
|
2563
2600
|
};
|
|
2564
2601
|
const selectedPath = props.value ? optionMap.get(props.value)?.path.map((i) => i.label).join(" / ") : "";
|
|
2565
2602
|
return /* @__PURE__ */ jsxs20(DropdownMenu, { open, onOpenChange: setOpen, children: [
|
|
2566
|
-
/* @__PURE__ */
|
|
2603
|
+
/* @__PURE__ */ jsx32(DropdownMenuTrigger, { asChild: true, className: "self-start", children: /* @__PURE__ */ jsxs20(
|
|
2567
2604
|
Button,
|
|
2568
2605
|
{
|
|
2569
2606
|
variant: "outline",
|
|
2570
2607
|
className: "h-auto! min-h-9 w-full justify-between px-3 leading-none",
|
|
2571
2608
|
children: [
|
|
2572
2609
|
selectedPath || props.placeholder,
|
|
2573
|
-
/* @__PURE__ */
|
|
2610
|
+
/* @__PURE__ */ jsx32(ChevronDown2, { className: "size-4 ml-auto opacity-50" })
|
|
2574
2611
|
]
|
|
2575
2612
|
}
|
|
2576
2613
|
) }),
|
|
2577
|
-
/* @__PURE__ */
|
|
2614
|
+
/* @__PURE__ */ jsx32(
|
|
2578
2615
|
DropdownMenuContent,
|
|
2579
2616
|
{
|
|
2580
2617
|
align: "start",
|
|
@@ -2600,12 +2637,12 @@ import { cva as cva5 } from "class-variance-authority";
|
|
|
2600
2637
|
|
|
2601
2638
|
// src/shadcn/components/label.tsx
|
|
2602
2639
|
import { Label as LabelPrimitive } from "radix-ui";
|
|
2603
|
-
import { jsx as
|
|
2640
|
+
import { jsx as jsx33 } from "react/jsx-runtime";
|
|
2604
2641
|
function Label({
|
|
2605
2642
|
className,
|
|
2606
2643
|
...props
|
|
2607
2644
|
}) {
|
|
2608
|
-
return /* @__PURE__ */
|
|
2645
|
+
return /* @__PURE__ */ jsx33(
|
|
2609
2646
|
LabelPrimitive.Root,
|
|
2610
2647
|
{
|
|
2611
2648
|
"data-slot": "label",
|
|
@@ -2620,12 +2657,12 @@ function Label({
|
|
|
2620
2657
|
|
|
2621
2658
|
// src/shadcn/components/separator.tsx
|
|
2622
2659
|
import { Separator as SeparatorPrimitive } from "radix-ui";
|
|
2623
|
-
import { jsx as
|
|
2660
|
+
import { jsx as jsx34 } from "react/jsx-runtime";
|
|
2624
2661
|
|
|
2625
2662
|
// src/shadcn/components/field.tsx
|
|
2626
|
-
import { jsx as
|
|
2663
|
+
import { jsx as jsx35, jsxs as jsxs21 } from "react/jsx-runtime";
|
|
2627
2664
|
function FieldGroup2({ className, ...props }) {
|
|
2628
|
-
return /* @__PURE__ */
|
|
2665
|
+
return /* @__PURE__ */ jsx35(
|
|
2629
2666
|
"div",
|
|
2630
2667
|
{
|
|
2631
2668
|
"data-slot": "field-group",
|
|
@@ -2665,7 +2702,7 @@ function Field({
|
|
|
2665
2702
|
orientation = "vertical",
|
|
2666
2703
|
...props
|
|
2667
2704
|
}) {
|
|
2668
|
-
return /* @__PURE__ */
|
|
2705
|
+
return /* @__PURE__ */ jsx35(
|
|
2669
2706
|
"div",
|
|
2670
2707
|
{
|
|
2671
2708
|
role: "group",
|
|
@@ -2682,7 +2719,7 @@ function FieldLabel({
|
|
|
2682
2719
|
children,
|
|
2683
2720
|
...props
|
|
2684
2721
|
}) {
|
|
2685
|
-
return /* @__PURE__ */
|
|
2722
|
+
return /* @__PURE__ */ jsx35(
|
|
2686
2723
|
Label,
|
|
2687
2724
|
{
|
|
2688
2725
|
"data-slot": "field-label",
|
|
@@ -2695,7 +2732,7 @@ function FieldLabel({
|
|
|
2695
2732
|
...props,
|
|
2696
2733
|
children: /* @__PURE__ */ jsxs21("span", { className: "flex items-center gap-1", children: [
|
|
2697
2734
|
children,
|
|
2698
|
-
required && /* @__PURE__ */
|
|
2735
|
+
required && /* @__PURE__ */ jsx35("span", { className: "text-destructive", children: "*" })
|
|
2699
2736
|
] })
|
|
2700
2737
|
}
|
|
2701
2738
|
);
|
|
@@ -2719,14 +2756,14 @@ function FieldError({
|
|
|
2719
2756
|
if (uniqueErrors?.length == 1) {
|
|
2720
2757
|
return uniqueErrors[0]?.message;
|
|
2721
2758
|
}
|
|
2722
|
-
return /* @__PURE__ */
|
|
2723
|
-
(error, index) => error?.message && /* @__PURE__ */
|
|
2759
|
+
return /* @__PURE__ */ jsx35("ul", { className: "ml-4 flex list-disc flex-col gap-1", children: uniqueErrors.map(
|
|
2760
|
+
(error, index) => error?.message && /* @__PURE__ */ jsx35("li", { children: error.message }, index)
|
|
2724
2761
|
) });
|
|
2725
2762
|
}, [children, errors]);
|
|
2726
2763
|
if (!content) {
|
|
2727
2764
|
return null;
|
|
2728
2765
|
}
|
|
2729
|
-
return /* @__PURE__ */
|
|
2766
|
+
return /* @__PURE__ */ jsx35(
|
|
2730
2767
|
"div",
|
|
2731
2768
|
{
|
|
2732
2769
|
role: "alert",
|
|
@@ -2740,12 +2777,12 @@ function FieldError({
|
|
|
2740
2777
|
|
|
2741
2778
|
// src/shadcn/components/tooltip.tsx
|
|
2742
2779
|
import { Tooltip as TooltipPrimitive } from "radix-ui";
|
|
2743
|
-
import { jsx as
|
|
2780
|
+
import { jsx as jsx36, jsxs as jsxs22 } from "react/jsx-runtime";
|
|
2744
2781
|
function TooltipProvider({
|
|
2745
2782
|
delayDuration = 0,
|
|
2746
2783
|
...props
|
|
2747
2784
|
}) {
|
|
2748
|
-
return /* @__PURE__ */
|
|
2785
|
+
return /* @__PURE__ */ jsx36(
|
|
2749
2786
|
TooltipPrimitive.Provider,
|
|
2750
2787
|
{
|
|
2751
2788
|
"data-slot": "tooltip-provider",
|
|
@@ -2757,12 +2794,12 @@ function TooltipProvider({
|
|
|
2757
2794
|
function Tooltip({
|
|
2758
2795
|
...props
|
|
2759
2796
|
}) {
|
|
2760
|
-
return /* @__PURE__ */
|
|
2797
|
+
return /* @__PURE__ */ jsx36(TooltipPrimitive.Root, { "data-slot": "tooltip", ...props });
|
|
2761
2798
|
}
|
|
2762
2799
|
function TooltipTrigger({
|
|
2763
2800
|
...props
|
|
2764
2801
|
}) {
|
|
2765
|
-
return /* @__PURE__ */
|
|
2802
|
+
return /* @__PURE__ */ jsx36(TooltipPrimitive.Trigger, { "data-slot": "tooltip-trigger", ...props });
|
|
2766
2803
|
}
|
|
2767
2804
|
function TooltipContent({
|
|
2768
2805
|
className,
|
|
@@ -2770,7 +2807,7 @@ function TooltipContent({
|
|
|
2770
2807
|
children,
|
|
2771
2808
|
...props
|
|
2772
2809
|
}) {
|
|
2773
|
-
return /* @__PURE__ */
|
|
2810
|
+
return /* @__PURE__ */ jsx36(TooltipPrimitive.Portal, { children: /* @__PURE__ */ jsxs22(
|
|
2774
2811
|
TooltipPrimitive.Content,
|
|
2775
2812
|
{
|
|
2776
2813
|
"data-slot": "tooltip-content",
|
|
@@ -2782,35 +2819,35 @@ function TooltipContent({
|
|
|
2782
2819
|
...props,
|
|
2783
2820
|
children: [
|
|
2784
2821
|
children,
|
|
2785
|
-
/* @__PURE__ */
|
|
2822
|
+
/* @__PURE__ */ jsx36(TooltipPrimitive.Arrow, { className: "z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px] bg-foreground fill-foreground" })
|
|
2786
2823
|
]
|
|
2787
2824
|
}
|
|
2788
2825
|
) });
|
|
2789
2826
|
}
|
|
2790
2827
|
|
|
2791
2828
|
// src/components/field-controller/index.tsx
|
|
2792
|
-
import { jsx as
|
|
2829
|
+
import { jsx as jsx37, jsxs as jsxs23 } from "react/jsx-runtime";
|
|
2793
2830
|
var FieldController = ({
|
|
2794
2831
|
required = false,
|
|
2795
2832
|
...props
|
|
2796
2833
|
}) => {
|
|
2797
|
-
return /* @__PURE__ */
|
|
2834
|
+
return /* @__PURE__ */ jsx37(
|
|
2798
2835
|
Controller,
|
|
2799
2836
|
{
|
|
2800
2837
|
name: props.name,
|
|
2801
2838
|
control: props.control,
|
|
2802
2839
|
render: ({ field, fieldState }) => /* @__PURE__ */ jsxs23(Field, { "data-invalid": fieldState.invalid, children: [
|
|
2803
2840
|
/* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-spacing-xs", children: [
|
|
2804
|
-
/* @__PURE__ */
|
|
2841
|
+
/* @__PURE__ */ jsx37(FieldLabel, { htmlFor: props.id, required, children: props.label }),
|
|
2805
2842
|
props.tip && /* @__PURE__ */ jsxs23(Tooltip, { children: [
|
|
2806
|
-
/* @__PURE__ */
|
|
2843
|
+
/* @__PURE__ */ jsx37(TooltipTrigger, { asChild: true, children: /* @__PURE__ */ jsx37(
|
|
2807
2844
|
CircleQuestionMark,
|
|
2808
2845
|
{
|
|
2809
2846
|
size: "1rem",
|
|
2810
2847
|
className: "text-muted-foreground"
|
|
2811
2848
|
}
|
|
2812
2849
|
) }),
|
|
2813
|
-
/* @__PURE__ */
|
|
2850
|
+
/* @__PURE__ */ jsx37(
|
|
2814
2851
|
TooltipContent,
|
|
2815
2852
|
{
|
|
2816
2853
|
side: "right",
|
|
@@ -2825,16 +2862,16 @@ var FieldController = ({
|
|
|
2825
2862
|
fieldState,
|
|
2826
2863
|
id: props.id
|
|
2827
2864
|
}),
|
|
2828
|
-
fieldState.error && /* @__PURE__ */
|
|
2865
|
+
fieldState.error && /* @__PURE__ */ jsx37(FieldError, { errors: [fieldState.error] })
|
|
2829
2866
|
] })
|
|
2830
2867
|
}
|
|
2831
2868
|
);
|
|
2832
2869
|
};
|
|
2833
2870
|
|
|
2834
2871
|
// src/components/field-group/index.tsx
|
|
2835
|
-
import { jsx as
|
|
2872
|
+
import { jsx as jsx38 } from "react/jsx-runtime";
|
|
2836
2873
|
var FieldGroup = (props) => {
|
|
2837
|
-
return /* @__PURE__ */
|
|
2874
|
+
return /* @__PURE__ */ jsx38(
|
|
2838
2875
|
"div",
|
|
2839
2876
|
{
|
|
2840
2877
|
className: cn2(
|
|
@@ -2847,28 +2884,28 @@ var FieldGroup = (props) => {
|
|
|
2847
2884
|
};
|
|
2848
2885
|
|
|
2849
2886
|
// src/components/text/index.tsx
|
|
2850
|
-
import { jsx as
|
|
2887
|
+
import { jsx as jsx39 } from "react/jsx-runtime";
|
|
2851
2888
|
var Text = (props) => {
|
|
2852
|
-
return /* @__PURE__ */
|
|
2889
|
+
return /* @__PURE__ */ jsx39("div", { className: cn2("", props.className), children: props.children });
|
|
2853
2890
|
};
|
|
2854
2891
|
|
|
2855
2892
|
// src/components/field-plain/index.tsx
|
|
2856
|
-
import { Fragment as Fragment2, jsx as
|
|
2893
|
+
import { Fragment as Fragment2, jsx as jsx40, jsxs as jsxs24 } from "react/jsx-runtime";
|
|
2857
2894
|
var FieldPlain = ({
|
|
2858
2895
|
required = false,
|
|
2859
2896
|
mode = EnumFormMode.VIEW,
|
|
2860
2897
|
...props
|
|
2861
2898
|
}) => {
|
|
2862
2899
|
const label = props.label ?? "-";
|
|
2863
|
-
return /* @__PURE__ */
|
|
2864
|
-
/* @__PURE__ */
|
|
2865
|
-
mode === EnumFormMode.VIEW ? /* @__PURE__ */
|
|
2866
|
-
props.error && /* @__PURE__ */
|
|
2900
|
+
return /* @__PURE__ */ jsx40(Fragment2, { children: /* @__PURE__ */ jsxs24(Field, { "data-invalid": props.invalid, children: [
|
|
2901
|
+
/* @__PURE__ */ jsx40(FieldLabel, { htmlFor: props.id, required, children: props.name }),
|
|
2902
|
+
mode === EnumFormMode.VIEW ? /* @__PURE__ */ jsx40(Text, { children: label }) : props.children,
|
|
2903
|
+
props.error && /* @__PURE__ */ jsx40(FieldError, { errors: [{ message: props.error }] })
|
|
2867
2904
|
] }) });
|
|
2868
2905
|
};
|
|
2869
2906
|
|
|
2870
2907
|
// src/components/field-text/index.tsx
|
|
2871
|
-
import { jsx as
|
|
2908
|
+
import { jsx as jsx41, jsxs as jsxs25 } from "react/jsx-runtime";
|
|
2872
2909
|
var FieldText = ({
|
|
2873
2910
|
id,
|
|
2874
2911
|
name,
|
|
@@ -2879,13 +2916,13 @@ var FieldText = ({
|
|
|
2879
2916
|
}) => {
|
|
2880
2917
|
const isEmpty2 = value === "" || value == null;
|
|
2881
2918
|
return /* @__PURE__ */ jsxs25(Field, { children: [
|
|
2882
|
-
/* @__PURE__ */
|
|
2883
|
-
/* @__PURE__ */
|
|
2919
|
+
/* @__PURE__ */ jsx41(FieldLabel, { htmlFor: id, required, children: name }),
|
|
2920
|
+
/* @__PURE__ */ jsx41("div", { id, className: "text-sm leading-6", children: render ?? (isEmpty2 ? placeholder : value) })
|
|
2884
2921
|
] });
|
|
2885
2922
|
};
|
|
2886
2923
|
|
|
2887
2924
|
// src/components/form-select/index.tsx
|
|
2888
|
-
import { jsx as
|
|
2925
|
+
import { jsx as jsx42, jsxs as jsxs26 } from "react/jsx-runtime";
|
|
2889
2926
|
var FormSelect = (props) => {
|
|
2890
2927
|
return /* @__PURE__ */ jsxs26(
|
|
2891
2928
|
Select,
|
|
@@ -2900,9 +2937,9 @@ var FormSelect = (props) => {
|
|
|
2900
2937
|
},
|
|
2901
2938
|
"aria-invalid": props.invalid,
|
|
2902
2939
|
children: [
|
|
2903
|
-
/* @__PURE__ */
|
|
2904
|
-
/* @__PURE__ */
|
|
2905
|
-
return /* @__PURE__ */
|
|
2940
|
+
/* @__PURE__ */ jsx42(SelectTrigger, { className: "w-full", children: /* @__PURE__ */ jsx42(SelectValue, {}) }),
|
|
2941
|
+
/* @__PURE__ */ jsx42(SelectContent, { children: /* @__PURE__ */ jsx42(SelectGroup, { children: props.optionList.map((option) => {
|
|
2942
|
+
return /* @__PURE__ */ jsx42(SelectItem, { value: option.value, children: option.label }, option.value);
|
|
2906
2943
|
}) }) })
|
|
2907
2944
|
]
|
|
2908
2945
|
}
|
|
@@ -2925,7 +2962,7 @@ import {
|
|
|
2925
2962
|
ChevronLeftIcon as ChevronLeftIcon2,
|
|
2926
2963
|
ChevronRightIcon as ChevronRightIcon3
|
|
2927
2964
|
} from "lucide-react";
|
|
2928
|
-
import { jsx as
|
|
2965
|
+
import { jsx as jsx43 } from "react/jsx-runtime";
|
|
2929
2966
|
function Calendar({
|
|
2930
2967
|
className,
|
|
2931
2968
|
classNames,
|
|
@@ -2937,7 +2974,7 @@ function Calendar({
|
|
|
2937
2974
|
...props
|
|
2938
2975
|
}) {
|
|
2939
2976
|
const defaultClassNames = getDefaultClassNames();
|
|
2940
|
-
return /* @__PURE__ */
|
|
2977
|
+
return /* @__PURE__ */ jsx43(
|
|
2941
2978
|
DayPicker,
|
|
2942
2979
|
{
|
|
2943
2980
|
showOutsideDays,
|
|
@@ -3037,7 +3074,7 @@ function Calendar({
|
|
|
3037
3074
|
},
|
|
3038
3075
|
components: {
|
|
3039
3076
|
Root: ({ className: className2, rootRef, ...props2 }) => {
|
|
3040
|
-
return /* @__PURE__ */
|
|
3077
|
+
return /* @__PURE__ */ jsx43(
|
|
3041
3078
|
"div",
|
|
3042
3079
|
{
|
|
3043
3080
|
"data-slot": "calendar",
|
|
@@ -3049,10 +3086,10 @@ function Calendar({
|
|
|
3049
3086
|
},
|
|
3050
3087
|
Chevron: ({ className: className2, orientation, ...props2 }) => {
|
|
3051
3088
|
if (orientation === "left") {
|
|
3052
|
-
return /* @__PURE__ */
|
|
3089
|
+
return /* @__PURE__ */ jsx43(ChevronLeftIcon2, { className: cn("size-4", className2), ...props2 });
|
|
3053
3090
|
}
|
|
3054
3091
|
if (orientation === "right") {
|
|
3055
|
-
return /* @__PURE__ */
|
|
3092
|
+
return /* @__PURE__ */ jsx43(
|
|
3056
3093
|
ChevronRightIcon3,
|
|
3057
3094
|
{
|
|
3058
3095
|
className: cn("size-4", className2),
|
|
@@ -3060,11 +3097,11 @@ function Calendar({
|
|
|
3060
3097
|
}
|
|
3061
3098
|
);
|
|
3062
3099
|
}
|
|
3063
|
-
return /* @__PURE__ */
|
|
3100
|
+
return /* @__PURE__ */ jsx43(ChevronDownIcon3, { className: cn("size-4", className2), ...props2 });
|
|
3064
3101
|
},
|
|
3065
3102
|
DayButton: CalendarDayButton,
|
|
3066
3103
|
WeekNumber: ({ children, ...props2 }) => {
|
|
3067
|
-
return /* @__PURE__ */
|
|
3104
|
+
return /* @__PURE__ */ jsx43("td", { ...props2, children: /* @__PURE__ */ jsx43("div", { className: "flex size-(--cell-size) items-center justify-center text-center", children }) });
|
|
3068
3105
|
},
|
|
3069
3106
|
...components
|
|
3070
3107
|
},
|
|
@@ -3083,7 +3120,7 @@ function CalendarDayButton({
|
|
|
3083
3120
|
React3.useEffect(() => {
|
|
3084
3121
|
if (modifiers.focused) ref.current?.focus();
|
|
3085
3122
|
}, [modifiers.focused]);
|
|
3086
|
-
return /* @__PURE__ */
|
|
3123
|
+
return /* @__PURE__ */ jsx43(
|
|
3087
3124
|
Button,
|
|
3088
3125
|
{
|
|
3089
3126
|
ref,
|
|
@@ -3106,16 +3143,16 @@ function CalendarDayButton({
|
|
|
3106
3143
|
|
|
3107
3144
|
// src/shadcn/components/popover.tsx
|
|
3108
3145
|
import { Popover as PopoverPrimitive } from "radix-ui";
|
|
3109
|
-
import { jsx as
|
|
3146
|
+
import { jsx as jsx44 } from "react/jsx-runtime";
|
|
3110
3147
|
function Popover({
|
|
3111
3148
|
...props
|
|
3112
3149
|
}) {
|
|
3113
|
-
return /* @__PURE__ */
|
|
3150
|
+
return /* @__PURE__ */ jsx44(PopoverPrimitive.Root, { "data-slot": "popover", ...props });
|
|
3114
3151
|
}
|
|
3115
3152
|
function PopoverTrigger({
|
|
3116
3153
|
...props
|
|
3117
3154
|
}) {
|
|
3118
|
-
return /* @__PURE__ */
|
|
3155
|
+
return /* @__PURE__ */ jsx44(PopoverPrimitive.Trigger, { "data-slot": "popover-trigger", ...props });
|
|
3119
3156
|
}
|
|
3120
3157
|
function PopoverContent({
|
|
3121
3158
|
className,
|
|
@@ -3123,7 +3160,7 @@ function PopoverContent({
|
|
|
3123
3160
|
sideOffset = 4,
|
|
3124
3161
|
...props
|
|
3125
3162
|
}) {
|
|
3126
|
-
return /* @__PURE__ */
|
|
3163
|
+
return /* @__PURE__ */ jsx44(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx44(
|
|
3127
3164
|
PopoverPrimitive.Content,
|
|
3128
3165
|
{
|
|
3129
3166
|
"data-slot": "popover-content",
|
|
@@ -3139,7 +3176,7 @@ function PopoverContent({
|
|
|
3139
3176
|
}
|
|
3140
3177
|
|
|
3141
3178
|
// src/components/form-time-picker/index.tsx
|
|
3142
|
-
import { jsx as
|
|
3179
|
+
import { jsx as jsx45, jsxs as jsxs27 } from "react/jsx-runtime";
|
|
3143
3180
|
function pad2(n) {
|
|
3144
3181
|
return String(n).padStart(2, "0");
|
|
3145
3182
|
}
|
|
@@ -3160,8 +3197,8 @@ var FormTimePicker = (props) => {
|
|
|
3160
3197
|
const dateBtnText = props.value ? formatDateTime(props.value, "YYYY-MM-DD") : props.datePlaceholder;
|
|
3161
3198
|
const timeValue = formatTimeHHmmss(props.value);
|
|
3162
3199
|
return /* @__PURE__ */ jsxs27(FieldGroup2, { className: "flex-row gap-2.5", children: [
|
|
3163
|
-
/* @__PURE__ */
|
|
3164
|
-
/* @__PURE__ */
|
|
3200
|
+
/* @__PURE__ */ jsx45(Field, { children: /* @__PURE__ */ jsxs27(Popover, { open, onOpenChange: setOpen, children: [
|
|
3201
|
+
/* @__PURE__ */ jsx45(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxs27(
|
|
3165
3202
|
Button,
|
|
3166
3203
|
{
|
|
3167
3204
|
variant: "outline",
|
|
@@ -3170,17 +3207,17 @@ var FormTimePicker = (props) => {
|
|
|
3170
3207
|
disabled: props.disabled,
|
|
3171
3208
|
className: "w-32 justify-between font-normal",
|
|
3172
3209
|
children: [
|
|
3173
|
-
/* @__PURE__ */
|
|
3174
|
-
/* @__PURE__ */
|
|
3210
|
+
/* @__PURE__ */ jsx45("div", { className: "w-full text-left", children: dateBtnText }),
|
|
3211
|
+
/* @__PURE__ */ jsx45(ChevronDownIcon4, {})
|
|
3175
3212
|
]
|
|
3176
3213
|
}
|
|
3177
3214
|
) }),
|
|
3178
|
-
/* @__PURE__ */
|
|
3215
|
+
/* @__PURE__ */ jsx45(
|
|
3179
3216
|
PopoverContent,
|
|
3180
3217
|
{
|
|
3181
3218
|
className: "w-(--radix-popover-trigger-width) p-0",
|
|
3182
3219
|
align: "start",
|
|
3183
|
-
children: /* @__PURE__ */
|
|
3220
|
+
children: /* @__PURE__ */ jsx45(
|
|
3184
3221
|
Calendar,
|
|
3185
3222
|
{
|
|
3186
3223
|
mode: "single",
|
|
@@ -3204,7 +3241,7 @@ var FormTimePicker = (props) => {
|
|
|
3204
3241
|
}
|
|
3205
3242
|
)
|
|
3206
3243
|
] }) }),
|
|
3207
|
-
/* @__PURE__ */
|
|
3244
|
+
/* @__PURE__ */ jsx45(Field, { className: "w-32", children: /* @__PURE__ */ jsx45(
|
|
3208
3245
|
Input,
|
|
3209
3246
|
{
|
|
3210
3247
|
type: "time",
|
|
@@ -3228,6 +3265,24 @@ var FormTimePicker = (props) => {
|
|
|
3228
3265
|
// src/components/media-uploader/index.tsx
|
|
3229
3266
|
import { useCallback as useCallback2, useEffect as useEffect3, useRef as useRef2, useState as useState8 } from "react";
|
|
3230
3267
|
import { Eye as Eye2, Loader2, Plus, Trash2 } from "lucide-react";
|
|
3268
|
+
|
|
3269
|
+
// src/shadcn/components/card.tsx
|
|
3270
|
+
import { jsx as jsx46 } from "react/jsx-runtime";
|
|
3271
|
+
function Card({ className, ...props }) {
|
|
3272
|
+
return /* @__PURE__ */ jsx46(
|
|
3273
|
+
"div",
|
|
3274
|
+
{
|
|
3275
|
+
"data-slot": "card",
|
|
3276
|
+
className: cn(
|
|
3277
|
+
"flex flex-col gap-6 rounded-xl border bg-card py-6 text-card-foreground shadow-sm",
|
|
3278
|
+
className
|
|
3279
|
+
),
|
|
3280
|
+
...props
|
|
3281
|
+
}
|
|
3282
|
+
);
|
|
3283
|
+
}
|
|
3284
|
+
|
|
3285
|
+
// src/components/media-uploader/index.tsx
|
|
3231
3286
|
import { jsx as jsx47, jsxs as jsxs28 } from "react/jsx-runtime";
|
|
3232
3287
|
var MediaUploader = ({ value = [], ...props }) => {
|
|
3233
3288
|
const inputRef = useRef2(null);
|