@kopexa/theme 1.5.8 → 1.6.1

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.
Files changed (91) hide show
  1. package/dist/{chunk-FLD2CUFZ.mjs → chunk-3IIJVON7.mjs} +11 -8
  2. package/dist/{chunk-I2NMD23O.mjs → chunk-5QIMO5EG.mjs} +1 -1
  3. package/dist/chunk-CZMZHA7U.mjs +37 -0
  4. package/dist/{chunk-3M5JSM7Y.mjs → chunk-DQEPGWAN.mjs} +1 -1
  5. package/dist/{chunk-4VKJFW6Y.mjs → chunk-EACX3NZF.mjs} +11 -2
  6. package/dist/chunk-FWRXPYLB.mjs +41 -0
  7. package/dist/chunk-GA6UOB2D.mjs +166 -0
  8. package/dist/chunk-I6M4S2KZ.mjs +41 -0
  9. package/dist/{chunk-UI2M2MFB.mjs → chunk-J4JIYTOU.mjs} +4 -2
  10. package/dist/{chunk-67PPUTSS.mjs → chunk-LG2J56LI.mjs} +2 -2
  11. package/dist/{chunk-CDTKWCOH.mjs → chunk-MKBU6G6Q.mjs} +44 -3
  12. package/dist/{chunk-32L6KXLV.mjs → chunk-T5PESSOS.mjs} +1 -1
  13. package/dist/chunk-TT5V2MUL.mjs +29 -0
  14. package/dist/chunk-V2J5XG34.mjs +43 -0
  15. package/dist/chunk-VCLXE57S.mjs +16 -0
  16. package/dist/chunk-WPOYEHD2.mjs +45 -0
  17. package/dist/{chunk-5BIGFSZK.mjs → chunk-XJ7XBZNF.mjs} +1 -1
  18. package/dist/chunk-ZLM6Z3W2.mjs +94 -0
  19. package/dist/components/avatar.js +2 -2
  20. package/dist/components/avatar.mjs +2 -2
  21. package/dist/components/button.js +2 -2
  22. package/dist/components/button.mjs +2 -2
  23. package/dist/components/card.d.mts +24 -0
  24. package/dist/components/card.d.ts +24 -0
  25. package/dist/components/card.js +11 -2
  26. package/dist/components/card.mjs +1 -1
  27. package/dist/components/chip.js +2 -2
  28. package/dist/components/chip.mjs +2 -2
  29. package/dist/components/code.js +2 -2
  30. package/dist/components/code.mjs +2 -2
  31. package/dist/components/drawer.d.mts +9 -3
  32. package/dist/components/drawer.d.ts +9 -3
  33. package/dist/components/drawer.js +4 -2
  34. package/dist/components/drawer.mjs +1 -1
  35. package/dist/components/index.d.mts +9 -0
  36. package/dist/components/index.d.ts +9 -0
  37. package/dist/components/index.js +585 -25
  38. package/dist/components/index.mjs +55 -15
  39. package/dist/components/page-layout.d.mts +9 -0
  40. package/dist/components/page-layout.d.ts +9 -0
  41. package/dist/components/page-layout.js +11 -8
  42. package/dist/components/page-layout.mjs +1 -1
  43. package/dist/components/preview-card.d.mts +89 -0
  44. package/dist/components/preview-card.d.ts +89 -0
  45. package/dist/components/preview-card.js +69 -0
  46. package/dist/components/preview-card.mjs +6 -0
  47. package/dist/components/risk-badge.d.mts +97 -0
  48. package/dist/components/risk-badge.d.ts +97 -0
  49. package/dist/components/risk-badge.js +67 -0
  50. package/dist/components/risk-badge.mjs +6 -0
  51. package/dist/components/risk-indicator.d.mts +76 -0
  52. package/dist/components/risk-indicator.d.ts +76 -0
  53. package/dist/components/risk-indicator.js +61 -0
  54. package/dist/components/risk-indicator.mjs +6 -0
  55. package/dist/components/section-row.d.mts +47 -0
  56. package/dist/components/section-row.d.ts +47 -0
  57. package/dist/components/section-row.js +53 -0
  58. package/dist/components/section-row.mjs +6 -0
  59. package/dist/components/separator.d.mts +22 -0
  60. package/dist/components/separator.d.ts +22 -0
  61. package/dist/components/separator.js +40 -0
  62. package/dist/components/separator.mjs +6 -0
  63. package/dist/components/sidebar.d.mts +206 -0
  64. package/dist/components/sidebar.d.ts +206 -0
  65. package/dist/components/sidebar.js +192 -0
  66. package/dist/components/sidebar.mjs +10 -0
  67. package/dist/components/split-page-layout.d.mts +49 -0
  68. package/dist/components/split-page-layout.d.ts +49 -0
  69. package/dist/components/split-page-layout.js +65 -0
  70. package/dist/components/split-page-layout.mjs +6 -0
  71. package/dist/components/tab-nav.d.mts +119 -0
  72. package/dist/components/tab-nav.d.ts +119 -0
  73. package/dist/components/tab-nav.js +118 -0
  74. package/dist/components/tab-nav.mjs +6 -0
  75. package/dist/components/table.d.mts +72 -0
  76. package/dist/components/table.d.ts +72 -0
  77. package/dist/components/table.js +44 -3
  78. package/dist/components/table.mjs +1 -1
  79. package/dist/components/tabs.d.mts +43 -0
  80. package/dist/components/tabs.d.ts +43 -0
  81. package/dist/components/tabs.js +65 -0
  82. package/dist/components/tabs.mjs +6 -0
  83. package/dist/index.css +93 -23
  84. package/dist/index.d.mts +9 -0
  85. package/dist/index.d.ts +9 -0
  86. package/dist/index.js +585 -25
  87. package/dist/index.mjs +55 -15
  88. package/dist/utils/variants.js +2 -2
  89. package/dist/utils/variants.mjs +1 -1
  90. package/package.json +1 -1
  91. /package/dist/{chunk-FWB233VZ.mjs → chunk-NP4SOC4S.mjs} +0 -0
@@ -40,9 +40,20 @@ __export(components_exports, {
40
40
  pageLayout: () => pageLayout,
41
41
  passwordInput: () => passwordInput,
42
42
  popover: () => popover,
43
+ previewCard: () => previewCard,
44
+ riskBadge: () => riskBadge,
45
+ riskIndicator: () => riskIndicator,
46
+ sectionRow: () => sectionRow,
47
+ separator: () => separator,
48
+ sidebar: () => sidebar,
49
+ sidebarMenuAction: () => sidebarMenuAction,
50
+ sidebarMenuButton: () => sidebarMenuButton,
43
51
  skeleton: () => skeleton,
44
52
  spinner: () => spinner,
53
+ splitPageLayout: () => splitPageLayout,
54
+ tabNav: () => tabNav,
45
55
  table: () => table,
56
+ tabs: () => tabs,
46
57
  tooltip: () => tooltip
47
58
  });
48
59
  module.exports = __toCommonJS(components_exports);
@@ -82,7 +93,7 @@ var translateCenterClasses = [
82
93
 
83
94
  // src/utils/variants.ts
84
95
  var solid = {
85
- default: "bg-accent text-accent-foreground",
96
+ default: "bg-accent/70 text-accent-foreground",
86
97
  primary: "bg-primary text-primary-foreground",
87
98
  secondary: "bg-secondary text-secondary-foreground",
88
99
  destructive: "bg-destructive text-destructive-foreground",
@@ -116,7 +127,7 @@ var faded = {
116
127
  foreground: "border-default bg-accent/30 text-foreground"
117
128
  };
118
129
  var ghost = {
119
- primary: "bg-transparent text-primary",
130
+ primary: "bg-transparent text-primary dark:text-primary-foreground",
120
131
  secondary: "bg-transparent text-secondary",
121
132
  destructive: "bg-transparent text-destructive",
122
133
  warning: "bg-transparent text-warning",
@@ -570,6 +581,9 @@ var card = (0, import_tailwind_variants6.tv)({
570
581
  none: {
571
582
  root: "shadow-none"
572
583
  },
584
+ "2xs": {
585
+ root: "shadow-2xs"
586
+ },
573
587
  sm: {
574
588
  root: "shadow-sm"
575
589
  },
@@ -580,6 +594,11 @@ var card = (0, import_tailwind_variants6.tv)({
580
594
  root: "shadow-lg"
581
595
  }
582
596
  },
597
+ border: {
598
+ true: {
599
+ root: "border"
600
+ }
601
+ },
583
602
  radius: {
584
603
  none: {
585
604
  root: "rounded-none",
@@ -628,12 +647,13 @@ var card = (0, import_tailwind_variants6.tv)({
628
647
  },
629
648
  defaultVariants: {
630
649
  radius: "lg",
631
- shadow: "md",
650
+ shadow: "sm",
632
651
  fullWidth: false,
633
652
  isHoverable: false,
634
653
  isPressable: false,
635
654
  isBlurred: false,
636
- isDisabled: false
655
+ isDisabled: false,
656
+ border: true
637
657
  }
638
658
  });
639
659
 
@@ -1212,13 +1232,15 @@ var drawer = (0, import_tailwind_variants13.tv)({
1212
1232
  content: "max-w-6xl"
1213
1233
  },
1214
1234
  full: {
1215
- content: "max-w-full max-h-full h-[calc(100dvh_-_1rem)] inset-2"
1235
+ content: "max-w-full max-h-full h-[calc(100dvh_-_1rem)] !inset-2"
1216
1236
  }
1217
1237
  },
1218
1238
  placement: {
1219
1239
  top: {},
1220
1240
  bottom: {},
1221
- left: {},
1241
+ left: {
1242
+ content: "inset-y-2 ms-2 left-0 border-r h-[calc(100dvh_-_1rem)]"
1243
+ },
1222
1244
  right: {
1223
1245
  content: "inset-y-2 me-2 right-0 h-[calc(100%-1rem)] border-l"
1224
1246
  }
@@ -1411,7 +1433,7 @@ var import_tailwind_variants18 = require("tailwind-variants");
1411
1433
  var pageLayout = (0, import_tailwind_variants18.tv)({
1412
1434
  slots: {
1413
1435
  root: "",
1414
- wrapper: "flex mx-auto flex-wrap w-full",
1436
+ wrapper: "flex flex-wrap w-full",
1415
1437
  baseContent: "flex flex-1 flex-wrap max-w-full",
1416
1438
  header: "w-full grow-0 shrink-0",
1417
1439
  footerWrapper: "w-full",
@@ -1430,7 +1452,8 @@ var pageLayout = (0, import_tailwind_variants18.tv)({
1430
1452
  ],
1431
1453
  pane: "w-[var(--pane-width-size)] md:overflow-auto",
1432
1454
  contentWrapper: "flex min-w-px flex-col basis-0 grow shrink",
1433
- content: "w-full mx-auto grow h-full"
1455
+ content: "w-full mx-auto grow h-full",
1456
+ bleed: []
1434
1457
  },
1435
1458
  variants: {
1436
1459
  gap: {
@@ -1458,14 +1481,14 @@ var pageLayout = (0, import_tailwind_variants18.tv)({
1458
1481
  content: "max-w-full"
1459
1482
  },
1460
1483
  md: {
1461
- wrapper: "max-w-3xl",
1484
+ wrapper: "max-w-3xl mx-auto",
1462
1485
  content: "max-w-3xl"
1463
1486
  },
1464
1487
  lg: {
1465
- wrapper: "max-w-5xl"
1488
+ wrapper: "max-w-5xl mx-auto"
1466
1489
  },
1467
1490
  xl: {
1468
- wrapper: "max-w-8xl",
1491
+ wrapper: "max-w-8xl mx-auto",
1469
1492
  content: "max-w-8xl"
1470
1493
  }
1471
1494
  },
@@ -1487,7 +1510,8 @@ var pageLayout = (0, import_tailwind_variants18.tv)({
1487
1510
  header: "p-4",
1488
1511
  content: "p-4",
1489
1512
  pane: "p-4",
1490
- footerContent: "p-4"
1513
+ footerContent: "p-4",
1514
+ bleed: ["-mx-4 p-4"]
1491
1515
  },
1492
1516
  // 1.5rem
1493
1517
  normal: {
@@ -1495,7 +1519,8 @@ var pageLayout = (0, import_tailwind_variants18.tv)({
1495
1519
  header: "p-2 md:p-3",
1496
1520
  content: "p-2 md:p-3",
1497
1521
  pane: "p-2 md:p-3",
1498
- footerContent: "p-2 md:p-3"
1522
+ footerContent: "p-2 md:p-3",
1523
+ bleed: ["-mx-2 md:-mx-3 p-2 md:p-3"]
1499
1524
  }
1500
1525
  },
1501
1526
  inModal: {
@@ -1510,7 +1535,7 @@ var pageLayout = (0, import_tailwind_variants18.tv)({
1510
1535
  defaultVariants: {
1511
1536
  width: "xl",
1512
1537
  spacing: "normal",
1513
- paneWidth: "md",
1538
+ paneWidth: "lg",
1514
1539
  gap: "normal"
1515
1540
  }
1516
1541
  });
@@ -1527,15 +1552,331 @@ var popover = (0, import_tailwind_variants19.tv)({
1527
1552
  }
1528
1553
  });
1529
1554
 
1530
- // src/components/skeleton.ts
1555
+ // src/components/preview-card.ts
1531
1556
  var import_tailwind_variants20 = require("tailwind-variants");
1532
- var skeleton = (0, import_tailwind_variants20.tv)({
1557
+ var previewCard = (0, import_tailwind_variants20.tv)({
1558
+ slots: {
1559
+ root: [
1560
+ "flex w-full items-start gap-3 rounded-md bg-background p-2 transition-colors",
1561
+ "transition-all group min-h-10",
1562
+ "focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1"
1563
+ ],
1564
+ icon: ["flex-shrink-0 text-muted-foreground"],
1565
+ content: ["flex min-w-0 flex-1 flex-col justify-center"],
1566
+ title: ["truncate text-xs font-medium text-foreground"],
1567
+ description: ["truncate text-[10px] text-muted-foreground line-clamp-1"],
1568
+ action: ["shrink-0 rounded-full [&_svg]:size-4"],
1569
+ tags: ["mt-1.5 flex items-center gap-2"]
1570
+ },
1571
+ variants: {
1572
+ size: {
1573
+ md: {
1574
+ icon: "[&__svg]:size-5"
1575
+ }
1576
+ },
1577
+ isBordered: {
1578
+ true: {
1579
+ root: ["border"]
1580
+ },
1581
+ false: {}
1582
+ },
1583
+ isHoverable: {
1584
+ true: {
1585
+ root: "hover:bg-muted/50 hover:border-primary",
1586
+ title: "group-hover:text-primary"
1587
+ },
1588
+ false: {}
1589
+ }
1590
+ },
1591
+ defaultVariants: {
1592
+ size: "md",
1593
+ isBordered: true
1594
+ }
1595
+ });
1596
+
1597
+ // src/components/risk-badge.ts
1598
+ var import_tailwind_variants21 = require("tailwind-variants");
1599
+ var riskBadge = (0, import_tailwind_variants21.tv)({
1600
+ slots: {
1601
+ root: ["inline-flex flex-col items-start gap-0.5"],
1602
+ label: ["inline-flex items-center gap-0.5 text-xs"],
1603
+ grade: ["font-semibold"],
1604
+ level: ["font-medium"],
1605
+ dots: ["inline-flex items-center gap-0.5"],
1606
+ dot: [
1607
+ "inline-block w-1.5 h-1.5 rounded-full",
1608
+ "transition-all duration-150 ease-in-out"
1609
+ ]
1610
+ },
1611
+ variants: {
1612
+ color: {
1613
+ default: {
1614
+ dot: "bg-gray-200 dark:bg-gray-700"
1615
+ },
1616
+ success: {
1617
+ dot: "bg-success"
1618
+ },
1619
+ destructive: {
1620
+ dot: "bg-destructive"
1621
+ },
1622
+ warning: {
1623
+ dot: "bg-warning"
1624
+ }
1625
+ },
1626
+ dotFilled: {
1627
+ true: {
1628
+ dot: "opacity-100 scale-110"
1629
+ },
1630
+ false: {
1631
+ dot: "opacity-40 scale-100"
1632
+ }
1633
+ }
1634
+ }
1635
+ });
1636
+
1637
+ // src/components/risk-indicator.ts
1638
+ var import_tailwind_variants22 = require("tailwind-variants");
1639
+ var riskIndicator = (0, import_tailwind_variants22.tv)({
1640
+ slots: {
1641
+ base: "flex items-end gap-0.5",
1642
+ bar: "rounded-sm",
1643
+ barLow: "bg-green-500",
1644
+ barMedium: "bg-yellow-500",
1645
+ barHigh: "bg-red-500",
1646
+ barInactive: "bg-gray-200",
1647
+ barHeight1: "h-1/3",
1648
+ barHeight2: "h-2/3",
1649
+ barHeight3: "h-full",
1650
+ barWidth: "w-1"
1651
+ },
1652
+ variants: {
1653
+ level: {
1654
+ none: "",
1655
+ low: "",
1656
+ medium: "",
1657
+ high: ""
1658
+ },
1659
+ size: {
1660
+ sm: "h-3",
1661
+ md: "h-4",
1662
+ lg: "h-5"
1663
+ }
1664
+ },
1665
+ defaultVariants: {
1666
+ level: "none",
1667
+ size: "md"
1668
+ }
1669
+ });
1670
+
1671
+ // src/components/section-row.ts
1672
+ var import_tailwind_variants23 = require("tailwind-variants");
1673
+ var sectionRow = (0, import_tailwind_variants23.tv)({
1674
+ slots: {
1675
+ root: ["section-row items-start"],
1676
+ title: "section-row__title text-muted-foreground text-sm font-semibold",
1677
+ valueText: "whitespace-pre-line text-pretty text-sm",
1678
+ valueContainer: "section-row__value-container flex flex-wrap gap-1",
1679
+ action: "section-row__action"
1680
+ },
1681
+ variants: {
1682
+ hasActions: {
1683
+ true: {
1684
+ root: [
1685
+ "has-actions"
1686
+ //"md:grid-cols-[min(40%,--spacing(80))_auto_28px]",
1687
+ ]
1688
+ },
1689
+ false: {}
1690
+ }
1691
+ },
1692
+ defaultVariants: {
1693
+ hasActions: false
1694
+ }
1695
+ });
1696
+
1697
+ // src/components/separator.ts
1698
+ var import_tailwind_variants24 = require("tailwind-variants");
1699
+ var separator = (0, import_tailwind_variants24.tv)({
1700
+ base: "bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px",
1701
+ variants: {
1702
+ orientation: {
1703
+ vertical: "",
1704
+ horizontal: ""
1705
+ }
1706
+ },
1707
+ compoundVariants: []
1708
+ });
1709
+
1710
+ // src/components/sidebar.ts
1711
+ var import_tailwind_variants25 = require("tailwind-variants");
1712
+ var sidebar = (0, import_tailwind_variants25.tv)({
1713
+ slots: {
1714
+ provider: [
1715
+ "group/sidebar-wrapper has-data-[variant=inset]:bg-sidebar flex min-h-svh w-full"
1716
+ ],
1717
+ sidebarWrapper: ["group peer text-sidebar-foreground hidden md:block"],
1718
+ sidebar: [
1719
+ "bg-sidebar text-sidebar-foreground flex h-full w-(--sidebar-width) flex-col"
1720
+ ],
1721
+ gap: [
1722
+ "relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear",
1723
+ "group-data-[collapsible=offcanvas]:w-0",
1724
+ "group-data-[side=right]:rotate-180"
1725
+ ],
1726
+ container: [
1727
+ "fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex"
1728
+ ],
1729
+ inner: [
1730
+ "bg-sidebar group-data-[variant=floating]:border-sidebar-border flex h-full w-full flex-col group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:shadow-sm"
1731
+ ],
1732
+ trigger: [],
1733
+ rail: [
1734
+ "hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] sm:flex",
1735
+ "in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize",
1736
+ "[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize",
1737
+ "hover:group-data-[collapsible=offcanvas]:bg-sidebar group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full",
1738
+ "[[data-side=left][data-collapsible=offcanvas]_&]:-right-2",
1739
+ "[[data-side=right][data-collapsible=offcanvas]_&]:-left-2"
1740
+ ],
1741
+ inset: [
1742
+ "bg-background relative flex w-full flex-1 flex-col",
1743
+ "md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2"
1744
+ ],
1745
+ input: ["bg-background h-8 w-full shadow-none"],
1746
+ header: ["flex flex-col gap-2 p-2"],
1747
+ footer: ["flex flex-col gap-2 p-2"],
1748
+ separator: ["bg-sidebar-border mx-2 w-auto"],
1749
+ content: [
1750
+ "flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden"
1751
+ ],
1752
+ group: ["relative flex w-full min-w-0 flex-col p-2"],
1753
+ groupLabel: [
1754
+ "text-sidebar-foreground/70 ring-sidebar-ring flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium outline-hidden transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0",
1755
+ "group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0"
1756
+ ],
1757
+ groupAction: [
1758
+ "text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground absolute top-3.5 right-3 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-hidden transition-transform focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0",
1759
+ // Increases the hit area of the button on mobile.
1760
+ "after:absolute after:-inset-2 md:after:hidden",
1761
+ "group-data-[collapsible=icon]:hidden"
1762
+ ],
1763
+ groupContent: ["w-full text-sm"],
1764
+ menu: ["flex w-full min-w-0 flex-col gap-1"],
1765
+ menuItem: ["group/menu-item relative"]
1766
+ },
1767
+ variants: {
1768
+ variant: {
1769
+ sidebar: {
1770
+ gap: "group-data-[collapsible=icon]:w-(--sidebar-width-icon)",
1771
+ container: "group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l"
1772
+ },
1773
+ floating: {
1774
+ gap: "group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]",
1775
+ container: "p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]"
1776
+ },
1777
+ inset: {
1778
+ gap: "group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]",
1779
+ container: "p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]"
1780
+ }
1781
+ },
1782
+ side: {
1783
+ left: {
1784
+ container: "left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]"
1785
+ },
1786
+ right: {
1787
+ container: "right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]"
1788
+ }
1789
+ },
1790
+ isMobile: {
1791
+ true: {},
1792
+ false: {}
1793
+ }
1794
+ },
1795
+ defaultVariants: {
1796
+ variant: "sidebar",
1797
+ isMobile: false
1798
+ }
1799
+ });
1800
+ var sidebarMenuButton = (0, import_tailwind_variants25.tv)({
1801
+ base: [
1802
+ "peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md",
1803
+ "p-2 text-left text-sm outline-hidden ring-sidebar-ring transition-[width,height,padding]",
1804
+ "disabled:pointer-events-none disabled:opacity-50 group-has-data-[sidebar=menu-action]/menu-item:pr-8",
1805
+ "aria-disabled:pointer-events-none aria-disabled:opacity-50",
1806
+ "data-[active=true]:font-medium",
1807
+ "group-data-[collapsible=icon]:size-8!",
1808
+ "group-data-[collapsible=icon]:p-2! [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0"
1809
+ ],
1810
+ variants: {
1811
+ variant: {
1812
+ default: "",
1813
+ outline: ""
1814
+ },
1815
+ color: {
1816
+ default: [
1817
+ "hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",
1818
+ "focus-visible:ring-2",
1819
+ "active:bg-sidebar-accent active:text-sidebar-accent-foreground",
1820
+ "data-[active=true]:bg-sidebar-accent",
1821
+ "data-[active=true]:text-sidebar-accent-foreground",
1822
+ "data-[state=open]:hover:bg-sidebar-accent",
1823
+ "data-[state=open]:hover:text-sidebar-accent-foreground "
1824
+ ]
1825
+ },
1826
+ size: {
1827
+ sm: "h-7 text-xs",
1828
+ md: "h-8 text-sm",
1829
+ lg: "h-12 text-sm group-data-[collapsible=icon]:p-0!"
1830
+ }
1831
+ },
1832
+ defaultVariants: {
1833
+ color: "default",
1834
+ variant: "default",
1835
+ size: "md"
1836
+ },
1837
+ compoundVariants: [
1838
+ {
1839
+ variant: "default",
1840
+ color: "default",
1841
+ class: ["hover:bg-sidebar-accent hover:text-sidebar-accent-foreground"]
1842
+ },
1843
+ {
1844
+ variant: "outline",
1845
+ color: "default",
1846
+ class: [
1847
+ "bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]"
1848
+ ]
1849
+ }
1850
+ ]
1851
+ });
1852
+ var sidebarMenuAction = (0, import_tailwind_variants25.tv)({
1853
+ base: [
1854
+ "text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground peer-hover/menu-button:text-sidebar-accent-foreground absolute top-1.5 right-1 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-hidden transition-transform focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0",
1855
+ // Increases the hit area of the button on mobile.
1856
+ "after:absolute after:-inset-2 md:after:hidden",
1857
+ "peer-data-[size=sm]/menu-button:top-1",
1858
+ "peer-data-[size=default]/menu-button:top-1.5",
1859
+ "peer-data-[size=lg]/menu-button:top-2.5",
1860
+ "group-data-[collapsible=icon]:hidden"
1861
+ ],
1862
+ variants: {
1863
+ showOnHover: {
1864
+ true: [
1865
+ "peer-data-[active=true]/menu-button:text-sidebar-accent-foreground group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 md:opacity-0"
1866
+ ]
1867
+ }
1868
+ }
1869
+ });
1870
+
1871
+ // src/components/skeleton.ts
1872
+ var import_tailwind_variants26 = require("tailwind-variants");
1873
+ var skeleton = (0, import_tailwind_variants26.tv)({
1533
1874
  base: "bg-accent animate-pulse rounded-md"
1534
1875
  });
1535
1876
 
1536
1877
  // src/components/spinner.ts
1537
- var import_tailwind_variants21 = require("tailwind-variants");
1538
- var spinner = (0, import_tailwind_variants21.tv)({
1878
+ var import_tailwind_variants27 = require("tailwind-variants");
1879
+ var spinner = (0, import_tailwind_variants27.tv)({
1539
1880
  slots: {
1540
1881
  base: "relative inline-flex flex-col gap-2 items-center justify-center",
1541
1882
  wrapper: "relative flex",
@@ -1651,23 +1992,156 @@ var spinner = (0, import_tailwind_variants21.tv)({
1651
1992
  }
1652
1993
  });
1653
1994
 
1995
+ // src/components/split-page-layout.ts
1996
+ var import_tailwind_variants28 = require("tailwind-variants");
1997
+ var splitPageLayout = (0, import_tailwind_variants28.tv)({
1998
+ slots: {
1999
+ root: [
2000
+ "size-full min-h-0 grid grid-cols-[1fr_10px] md:grid-cols-3 relative"
2001
+ ],
2002
+ content: ["p-4 md:p-6 col-span-1 md:col-span-2"],
2003
+ panelContainer: [
2004
+ "flex flex-col",
2005
+ "md:border-s",
2006
+ //"size-full",
2007
+ "bg-muted dark:bg-primary-900"
2008
+ ],
2009
+ panel: [
2010
+ "md:border-s",
2011
+ "p-4 md:p-6",
2012
+ "overflow-y-auto overflow-x-hidden",
2013
+ "flex-1",
2014
+ "min-h-0",
2015
+ "h-full"
2016
+ ],
2017
+ bleed: "-mx-4 md:-mx-6",
2018
+ mobileWrapper: "relative",
2019
+ mobileContainer: ["absolute top-2 right-2 z-10"]
2020
+ },
2021
+ variants: {
2022
+ inset: {
2023
+ true: {
2024
+ panelContainer: "rounded-e-md max-md:rounded-md"
2025
+ }
2026
+ }
2027
+ },
2028
+ defaultVariants: {
2029
+ inset: true
2030
+ }
2031
+ });
2032
+
2033
+ // src/components/tab-nav.ts
2034
+ var import_tailwind_variants29 = require("tailwind-variants");
2035
+ var tabNav = (0, import_tailwind_variants29.tv)({
2036
+ slots: {
2037
+ base: "",
2038
+ list: [
2039
+ "flex",
2040
+ "items-center",
2041
+ "justify-start",
2042
+ "overflow-x-auto",
2043
+ "whitespace-nowrap",
2044
+ "font-sans"
2045
+ ],
2046
+ item: "flex",
2047
+ link: [
2048
+ "relative",
2049
+ "flex",
2050
+ "items-center",
2051
+ "justify-center",
2052
+ "shrink-0",
2053
+ "select-none",
2054
+ "px-2",
2055
+ "[&_svg]:shrink-0",
2056
+ "transition-colors",
2057
+ "font-normal",
2058
+ "data-active:[&>_span]:font-medium",
2059
+ "hover:[&>_span]:bg-accent hover:[&>_span]:text-accent-foreground"
2060
+ ],
2061
+ linkInner: [
2062
+ "flex",
2063
+ "items-center",
2064
+ "justify-center",
2065
+ "absolute",
2066
+ "overflow-hidden",
2067
+ "transition-all"
2068
+ ],
2069
+ linkInnerHidden: [
2070
+ "flex",
2071
+ "items-center",
2072
+ "justify-center",
2073
+ "invisible",
2074
+ "transition-all"
2075
+ ]
2076
+ },
2077
+ variants: {
2078
+ bleed: {
2079
+ true: {
2080
+ list: "-mx-4 md:-mx-6 px-4 md:px-6"
2081
+ },
2082
+ false: {}
2083
+ },
2084
+ color: {
2085
+ primary: {
2086
+ link: ["before:bg-primary"]
2087
+ }
2088
+ },
2089
+ size: {
2090
+ sm: {
2091
+ link: ["h-10", "text-xs [&_svg]:size-3.5"],
2092
+ linkInner: "px-3 h-8 gap-2 rounded-sm min-w-16",
2093
+ linkInnerHidden: "px-3 h-8 gap-2 rounded-sm min-w-16"
2094
+ },
2095
+ md: {
2096
+ link: ["h-12", "text-sm", "rounded-md [&_svg]:size-4"],
2097
+ linkInner: "px-4 h-10 gap-2 rounded-md min-w-20",
2098
+ linkInnerHidden: "px-4 h-10 gap-2 rounded-md min-w-20"
2099
+ }
2100
+ },
2101
+ border: {
2102
+ true: {
2103
+ list: "border-b -mb-px",
2104
+ link: [
2105
+ "before:h-[2px]",
2106
+ "before:absolute",
2107
+ "before:bottom-0",
2108
+ "before:left-0",
2109
+ "before:right-0",
2110
+ "before:opacity-0",
2111
+ "before:transition-opacity",
2112
+ "data-active:before:opacity-100"
2113
+ ]
2114
+ }
2115
+ }
2116
+ },
2117
+ defaultVariants: {
2118
+ color: "primary",
2119
+ border: true,
2120
+ size: "sm"
2121
+ }
2122
+ });
2123
+
1654
2124
  // src/components/table.ts
1655
- var import_tailwind_variants22 = require("tailwind-variants");
1656
- var table = (0, import_tailwind_variants22.tv)({
2125
+ var import_tailwind_variants30 = require("tailwind-variants");
2126
+ var table = (0, import_tailwind_variants30.tv)({
1657
2127
  slots: {
2128
+ container: ["overflow-x-auto whitespace-nowrap", "-mx-3 md:-mx-6"],
2129
+ wrapper: ["inline-block min-w-full align-middle"],
1658
2130
  table: "min-w-full h-auto",
1659
2131
  thead: "",
1660
2132
  tbody: "after:block divide-y",
1661
2133
  tr: [
1662
2134
  "group/tr outline-hidden",
1663
- "[&_td:last-child]:pr-4 [&_th:last-child]:pr-4",
1664
- "[&_td:first-child]:pl-4 [&_th:first-child]:pl-4"
2135
+ "[&_th:last-child]:pr-4",
2136
+ "[&_th:first-child]:pl-4"
1665
2137
  ],
1666
2138
  th: [
1667
2139
  "group/th px-3 py-3.5 text-start text-xs font-semibold whitespace-normal",
1668
2140
  "text-foreground border-b"
1669
2141
  ],
1670
2142
  td: [
2143
+ "first:pl-3 last:pr-3",
2144
+ "md:first:pl-6 md:last:pr-6",
1671
2145
  "py-2 px-3 text-xs font-normal whitespace-normal relative",
1672
2146
  "[&>*]:z-[1]",
1673
2147
  "[&>*]:relative",
@@ -1689,15 +2163,50 @@ var table = (0, import_tailwind_variants22.tv)({
1689
2163
  "before:w-0.5",
1690
2164
  "before:opacity-0",
1691
2165
  "group-aria-[selected=true]/tr:first:before:opacity-100"
1692
- ]
2166
+ ],
2167
+ ownerCell: [
2168
+ "min-h-[50px]",
2169
+ "inline-flex items-center justify-center gap-2"
2170
+ ],
2171
+ ownerCellAvatar: [],
2172
+ ownerCelltextWrapper: "inline-flex flex-col items-start",
2173
+ ownerCellName: "text-xs font-medium",
2174
+ ownerCellDescription: "text-[11px] text-muted-foreground truncate",
2175
+ ownerCellUnassigned: "text-xs italic text-muted-foreground"
1693
2176
  },
1694
2177
  variants: {
2178
+ bleed: {
2179
+ true: {},
2180
+ false: {
2181
+ container: ["px-3 md:px-6"],
2182
+ th: ["first:pl-1 last:pr-1"],
2183
+ td: ["first:pl-1 last:pr-1"]
2184
+ }
2185
+ },
1695
2186
  overscroll: {
1696
2187
  horizontal: {
1697
2188
  th: "whitespace-nowrap",
1698
2189
  td: "whitespace-nowrap"
1699
2190
  }
1700
2191
  },
2192
+ variant: {
2193
+ default: {},
2194
+ // a border between cells and above the table
2195
+ // this is used for the grid variant
2196
+ grid: {
2197
+ table: "border-separate border-spacing-0",
2198
+ th: [
2199
+ "border-l first:border-l-0 border-b",
2200
+ "first:pl-3 md:first:pl-6 last:pr-3 md:last:pr-6"
2201
+ ],
2202
+ td: [
2203
+ "border-l first:border-l-0",
2204
+ "border-b",
2205
+ // first cell has no border
2206
+ "[&_td:first-child]:border-l-0 [&_th:first-child]:border-l-0"
2207
+ ]
2208
+ }
2209
+ },
1701
2210
  color: {
1702
2211
  default: {
1703
2212
  td: [
@@ -1762,15 +2271,55 @@ var table = (0, import_tailwind_variants22.tv)({
1762
2271
  }
1763
2272
  },
1764
2273
  defaultVariants: {
2274
+ variant: "default",
1765
2275
  layout: "auto",
1766
2276
  color: "default",
2277
+ bleed: false,
1767
2278
  fullWidth: true
1768
2279
  }
1769
2280
  });
1770
2281
 
2282
+ // src/components/tabs.ts
2283
+ var import_tailwind_variants31 = require("tailwind-variants");
2284
+ var tabs = (0, import_tailwind_variants31.tv)({
2285
+ slots: {
2286
+ root: "flex flex-col gap-2",
2287
+ list: [
2288
+ "bg-muted text-muted-foreground",
2289
+ "inline-flex flex-col md:flex-row",
2290
+ "w-full md:w-fit items-center justify-center rounded-lg p-[3px]"
2291
+ ],
2292
+ trigger: [
2293
+ "inline-flex flex-1 items-center justify-center gap-1.5 rounded-md",
2294
+ " border border-transparent",
2295
+ "data-[state=active]:bg-background",
2296
+ "dark:data-[state=active]:text-foreground",
2297
+ "focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring",
2298
+ "dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30",
2299
+ "text-foreground dark:text-muted-foreground",
2300
+ "h-[calc(100%-1px)] whitespace-nowrap transition-[color,box-shadow]",
2301
+ "focus-visible:ring-[3px] focus-visible:outline-1",
2302
+ "disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm",
2303
+ "[&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4"
2304
+ ],
2305
+ content: ["flex-1 outline-none"]
2306
+ },
2307
+ variants: {
2308
+ size: {
2309
+ md: {
2310
+ list: "md:h-9",
2311
+ trigger: "px-2 py-1 text-sm font-medium max-md:w-full"
2312
+ }
2313
+ }
2314
+ },
2315
+ defaultVariants: {
2316
+ size: "md"
2317
+ }
2318
+ });
2319
+
1771
2320
  // src/components/tooltip.ts
1772
- var import_tailwind_variants23 = require("tailwind-variants");
1773
- var tooltip = (0, import_tailwind_variants23.tv)({
2321
+ var import_tailwind_variants32 = require("tailwind-variants");
2322
+ var tooltip = (0, import_tailwind_variants32.tv)({
1774
2323
  slots: {
1775
2324
  content: [
1776
2325
  "bg-primary text-primary-foreground",
@@ -1802,8 +2351,19 @@ var tooltip = (0, import_tailwind_variants23.tv)({
1802
2351
  pageLayout,
1803
2352
  passwordInput,
1804
2353
  popover,
2354
+ previewCard,
2355
+ riskBadge,
2356
+ riskIndicator,
2357
+ sectionRow,
2358
+ separator,
2359
+ sidebar,
2360
+ sidebarMenuAction,
2361
+ sidebarMenuButton,
1805
2362
  skeleton,
1806
2363
  spinner,
2364
+ splitPageLayout,
2365
+ tabNav,
1807
2366
  table,
2367
+ tabs,
1808
2368
  tooltip
1809
2369
  });