@tenerife.music/ui 1.0.13 → 1.0.15
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/README.md +112 -418
- package/dist/{colors-CVA7_16U.d.cts → colors-BZtZJBBm.d.cts} +1 -1
- package/dist/{colors-CVA7_16U.d.ts → colors-BZtZJBBm.d.ts} +1 -1
- package/dist/{index-BgXvioll.d.cts → index-CP_dmFn4.d.cts} +435 -175
- package/dist/{index-Bv4wWj9I.d.ts → index-CP_dmFn4.d.ts} +435 -175
- package/dist/index.cjs +1406 -654
- package/dist/index.d.cts +119 -45
- package/dist/index.d.ts +119 -45
- package/dist/index.mjs +1406 -655
- package/dist/preset.cjs +1 -0
- package/dist/preset.mjs +1 -0
- package/dist/theme/index.d.cts +2 -2
- package/dist/theme/index.d.ts +2 -2
- package/dist/tokens/index.cjs +194 -221
- package/dist/tokens/index.d.cts +89 -2
- package/dist/tokens/index.d.ts +89 -2
- package/dist/tokens/index.mjs +194 -222
- package/package.json +6 -1
package/dist/index.mjs
CHANGED
|
@@ -699,6 +699,68 @@ var CARD_TOKENS = {
|
|
|
699
699
|
}
|
|
700
700
|
};
|
|
701
701
|
|
|
702
|
+
// src/tokens/components/artist.ts
|
|
703
|
+
var ARTIST_TOKENS = {
|
|
704
|
+
/**
|
|
705
|
+
* Image container tokens
|
|
706
|
+
* Layout classes for image container wrapper
|
|
707
|
+
*/
|
|
708
|
+
image: {
|
|
709
|
+
/**
|
|
710
|
+
* Container layout tokens
|
|
711
|
+
* Positioning and sizing for image container
|
|
712
|
+
*/
|
|
713
|
+
container: {
|
|
714
|
+
/**
|
|
715
|
+
* Base container layout
|
|
716
|
+
* Relative positioning, full width, overflow hidden
|
|
717
|
+
* Uses Tailwind layout utilities (allowed per architecture)
|
|
718
|
+
*/
|
|
719
|
+
layout: "relative w-full overflow-hidden"
|
|
720
|
+
},
|
|
721
|
+
/**
|
|
722
|
+
* Image sizing tokens
|
|
723
|
+
* Full width and height for images
|
|
724
|
+
*/
|
|
725
|
+
sizing: {
|
|
726
|
+
/**
|
|
727
|
+
* Full size image
|
|
728
|
+
* Uses Tailwind sizing utilities (allowed per architecture)
|
|
729
|
+
*/
|
|
730
|
+
full: "h-full w-full"
|
|
731
|
+
},
|
|
732
|
+
/**
|
|
733
|
+
* Placeholder container tokens
|
|
734
|
+
* Layout for placeholder icon container when no image is provided
|
|
735
|
+
*/
|
|
736
|
+
placeholder: {
|
|
737
|
+
/**
|
|
738
|
+
* Placeholder container layout
|
|
739
|
+
* Flex centering for placeholder icon
|
|
740
|
+
* Uses Tailwind layout utilities (allowed per architecture)
|
|
741
|
+
*/
|
|
742
|
+
container: "flex h-full w-full items-center justify-center"
|
|
743
|
+
}
|
|
744
|
+
},
|
|
745
|
+
/**
|
|
746
|
+
* Footer border tokens
|
|
747
|
+
* Border styling for card footer separator
|
|
748
|
+
*/
|
|
749
|
+
footer: {
|
|
750
|
+
/**
|
|
751
|
+
* Footer border tokens
|
|
752
|
+
* Top border separator for footer section
|
|
753
|
+
*/
|
|
754
|
+
border: {
|
|
755
|
+
/**
|
|
756
|
+
* Footer border top
|
|
757
|
+
* Uses semantic border color token
|
|
758
|
+
*/
|
|
759
|
+
top: "border-t border-border"
|
|
760
|
+
}
|
|
761
|
+
}
|
|
762
|
+
};
|
|
763
|
+
|
|
702
764
|
// src/tokens/spacing.ts
|
|
703
765
|
var spacing = {
|
|
704
766
|
// Zero spacing
|
|
@@ -961,101 +1023,6 @@ var tailwindSpacingConfig = {
|
|
|
961
1023
|
|
|
962
1024
|
// src/tokens/components/data.ts
|
|
963
1025
|
var DATA_TOKENS = {
|
|
964
|
-
/**
|
|
965
|
-
* Table Component Tokens
|
|
966
|
-
*/
|
|
967
|
-
table: {
|
|
968
|
-
/**
|
|
969
|
-
* Table row heights by size
|
|
970
|
-
* Maps to Tailwind height utilities
|
|
971
|
-
*/
|
|
972
|
-
rowHeight: {
|
|
973
|
-
sm: "h-8",
|
|
974
|
-
// 32px (2rem) - compact rows
|
|
975
|
-
md: "h-10",
|
|
976
|
-
// 40px (2.5rem) - default rows
|
|
977
|
-
lg: "h-12"
|
|
978
|
-
// 48px (3rem) - spacious rows
|
|
979
|
-
},
|
|
980
|
-
/**
|
|
981
|
-
* Table cell and header padding by size
|
|
982
|
-
* Maps to semantic spacing tokens
|
|
983
|
-
*/
|
|
984
|
-
padding: {
|
|
985
|
-
cell: {
|
|
986
|
-
sm: "p-xs",
|
|
987
|
-
// 4px (0.25rem) - maps to semanticSpacing.xs
|
|
988
|
-
md: "p-sm",
|
|
989
|
-
// 8px (0.5rem) - maps to semanticSpacing.sm
|
|
990
|
-
lg: "p-md"
|
|
991
|
-
// 16px (1rem) - maps to semanticSpacing.md
|
|
992
|
-
},
|
|
993
|
-
header: {
|
|
994
|
-
sm: "px-xs py-sm",
|
|
995
|
-
// 4px horizontal, 8px vertical
|
|
996
|
-
md: "px-sm py-md",
|
|
997
|
-
// 8px horizontal, 16px vertical
|
|
998
|
-
lg: "px-md py-lg"
|
|
999
|
-
// 16px horizontal, 24px vertical
|
|
1000
|
-
}
|
|
1001
|
-
},
|
|
1002
|
-
/**
|
|
1003
|
-
* Gap between table cells (horizontal spacing)
|
|
1004
|
-
*/
|
|
1005
|
-
gap: {
|
|
1006
|
-
sm: "gap-xs",
|
|
1007
|
-
// 4px (0.25rem) - maps to semanticSpacing.xs
|
|
1008
|
-
md: "gap-sm"
|
|
1009
|
-
// 8px (0.5rem) - maps to semanticSpacing.sm
|
|
1010
|
-
},
|
|
1011
|
-
/**
|
|
1012
|
-
* Border radius for table
|
|
1013
|
-
*/
|
|
1014
|
-
radius: {
|
|
1015
|
-
default: "rounded-md"
|
|
1016
|
-
// 6px (0.375rem) - maps to borderRadius.md
|
|
1017
|
-
},
|
|
1018
|
-
/**
|
|
1019
|
-
* Shadow tokens for table
|
|
1020
|
-
* Maps to foundation elevation shadow tokens
|
|
1021
|
-
*/
|
|
1022
|
-
shadow: {
|
|
1023
|
-
none: "shadow-none",
|
|
1024
|
-
// No shadow
|
|
1025
|
-
subtle: "shadow-sm"
|
|
1026
|
-
// Maps to elevationShadows.sm
|
|
1027
|
-
},
|
|
1028
|
-
/**
|
|
1029
|
-
* Typography tokens for table headers and cells
|
|
1030
|
-
* Maps to foundation typography fontSize tokens
|
|
1031
|
-
*/
|
|
1032
|
-
typography: {
|
|
1033
|
-
header: {
|
|
1034
|
-
fontSize: "text-sm",
|
|
1035
|
-
// Maps to fontSize.sm[0]
|
|
1036
|
-
fontWeight: "font-semibold"
|
|
1037
|
-
// Maps to fontWeight.semibold
|
|
1038
|
-
},
|
|
1039
|
-
cell: {
|
|
1040
|
-
fontSize: "text-sm",
|
|
1041
|
-
// Maps to fontSize.sm[0]
|
|
1042
|
-
fontWeight: "font-normal"
|
|
1043
|
-
// Maps to fontWeight.normal
|
|
1044
|
-
}
|
|
1045
|
-
},
|
|
1046
|
-
/**
|
|
1047
|
-
* Color tokens for table states
|
|
1048
|
-
* Uses semantic color tokens
|
|
1049
|
-
*/
|
|
1050
|
-
colors: {
|
|
1051
|
-
border: "border-border",
|
|
1052
|
-
// Border color
|
|
1053
|
-
rowHover: "hover:bg-muted/50",
|
|
1054
|
-
// Row hover background
|
|
1055
|
-
rowSelected: "bg-muted"
|
|
1056
|
-
// Selected row background
|
|
1057
|
-
}
|
|
1058
|
-
},
|
|
1059
1026
|
/**
|
|
1060
1027
|
* Skeleton Component Tokens
|
|
1061
1028
|
*/
|
|
@@ -1121,97 +1088,6 @@ var DATA_TOKENS = {
|
|
|
1121
1088
|
inline: "inline-block"
|
|
1122
1089
|
// Inline block display
|
|
1123
1090
|
}
|
|
1124
|
-
},
|
|
1125
|
-
/**
|
|
1126
|
-
* EmptyState Component Tokens
|
|
1127
|
-
*/
|
|
1128
|
-
emptyState: {
|
|
1129
|
-
/**
|
|
1130
|
-
* Spacing tokens for EmptyState
|
|
1131
|
-
* Maps to semantic spacing tokens
|
|
1132
|
-
*/
|
|
1133
|
-
spacing: {
|
|
1134
|
-
gap: "gap-md",
|
|
1135
|
-
// 16px (1rem) - gap between elements - maps to semanticSpacing.md
|
|
1136
|
-
padding: "p-lg"
|
|
1137
|
-
// 24px (1.5rem) - container padding - maps to semanticSpacing.lg
|
|
1138
|
-
},
|
|
1139
|
-
/**
|
|
1140
|
-
* Border radius for EmptyState container
|
|
1141
|
-
*/
|
|
1142
|
-
radius: {
|
|
1143
|
-
default: "rounded-xl"
|
|
1144
|
-
// 12px (0.75rem) - maps to borderRadius.xl
|
|
1145
|
-
},
|
|
1146
|
-
/**
|
|
1147
|
-
* Icon sizes by variant
|
|
1148
|
-
* Maps to Tailwind size utilities
|
|
1149
|
-
*/
|
|
1150
|
-
iconSize: {
|
|
1151
|
-
sm: "size-8",
|
|
1152
|
-
// 32px (2rem)
|
|
1153
|
-
md: "size-12",
|
|
1154
|
-
// 48px (3rem)
|
|
1155
|
-
lg: "size-16"
|
|
1156
|
-
// 64px (4rem)
|
|
1157
|
-
},
|
|
1158
|
-
/**
|
|
1159
|
-
* Typography tokens for EmptyState
|
|
1160
|
-
* Maps to foundation typography tokens
|
|
1161
|
-
*/
|
|
1162
|
-
typography: {
|
|
1163
|
-
title: {
|
|
1164
|
-
fontSize: "text-lg",
|
|
1165
|
-
// Maps to fontSize.lg[0]
|
|
1166
|
-
fontWeight: "font-semibold"
|
|
1167
|
-
// Maps to fontWeight.semibold
|
|
1168
|
-
},
|
|
1169
|
-
description: {
|
|
1170
|
-
fontSize: "text-sm",
|
|
1171
|
-
// Maps to fontSize.sm[0]
|
|
1172
|
-
fontWeight: "font-normal"
|
|
1173
|
-
// Maps to fontWeight.normal
|
|
1174
|
-
}
|
|
1175
|
-
}
|
|
1176
|
-
},
|
|
1177
|
-
/**
|
|
1178
|
-
* DataList Component Tokens
|
|
1179
|
-
*/
|
|
1180
|
-
dataList: {
|
|
1181
|
-
/**
|
|
1182
|
-
* Spacing tokens for DataList
|
|
1183
|
-
* Maps to semantic spacing tokens
|
|
1184
|
-
*/
|
|
1185
|
-
spacing: {
|
|
1186
|
-
gap: "gap-md",
|
|
1187
|
-
// 16px (1rem) - gap between items - maps to semanticSpacing.md
|
|
1188
|
-
padding: "p-md"
|
|
1189
|
-
// 16px (1rem) - container padding - maps to semanticSpacing.md
|
|
1190
|
-
},
|
|
1191
|
-
/**
|
|
1192
|
-
* Label width tokens (for desktop horizontal layout)
|
|
1193
|
-
* Maps to Tailwind width utilities
|
|
1194
|
-
*/
|
|
1195
|
-
labelWidth: {
|
|
1196
|
-
sm: "w-24",
|
|
1197
|
-
// 96px (6rem) - small label width
|
|
1198
|
-
md: "w-32",
|
|
1199
|
-
// 128px (8rem) - default label width
|
|
1200
|
-
lg: "w-40"
|
|
1201
|
-
// 160px (10rem) - large label width
|
|
1202
|
-
},
|
|
1203
|
-
/**
|
|
1204
|
-
* Row padding tokens
|
|
1205
|
-
* Maps to semantic spacing tokens
|
|
1206
|
-
*/
|
|
1207
|
-
rowPadding: {
|
|
1208
|
-
sm: "py-xs",
|
|
1209
|
-
// 4px (0.25rem) - maps to semanticSpacing.xs
|
|
1210
|
-
md: "py-sm",
|
|
1211
|
-
// 8px (0.5rem) - maps to semanticSpacing.sm
|
|
1212
|
-
lg: "py-md"
|
|
1213
|
-
// 16px (1rem) - maps to semanticSpacing.md
|
|
1214
|
-
}
|
|
1215
1091
|
}
|
|
1216
1092
|
};
|
|
1217
1093
|
|
|
@@ -1556,7 +1432,7 @@ var DOMAIN_TOKENS = {
|
|
|
1556
1432
|
},
|
|
1557
1433
|
/**
|
|
1558
1434
|
* Image tokens for card media
|
|
1559
|
-
* Defines aspect ratio, radius, and
|
|
1435
|
+
* Defines aspect ratio, radius, overlay styles, and placeholder gradients
|
|
1560
1436
|
*/
|
|
1561
1437
|
image: {
|
|
1562
1438
|
/**
|
|
@@ -1579,6 +1455,40 @@ var DOMAIN_TOKENS = {
|
|
|
1579
1455
|
overlay: {
|
|
1580
1456
|
gradient: "bg-gradient-to-t from-black/60 via-transparent to-transparent"
|
|
1581
1457
|
// Gradient overlay for image hover states
|
|
1458
|
+
},
|
|
1459
|
+
/**
|
|
1460
|
+
* Placeholder gradient tokens for image placeholders
|
|
1461
|
+
* Used when no image URL is provided
|
|
1462
|
+
*/
|
|
1463
|
+
placeholder: {
|
|
1464
|
+
gradient: "bg-gradient-to-br from-muted to-muted/50"
|
|
1465
|
+
// Placeholder gradient background
|
|
1466
|
+
}
|
|
1467
|
+
},
|
|
1468
|
+
/**
|
|
1469
|
+
* Text tokens for card text elements
|
|
1470
|
+
* Defines hover states and line clamping for titles and descriptions
|
|
1471
|
+
*/
|
|
1472
|
+
text: {
|
|
1473
|
+
/**
|
|
1474
|
+
* Hover state tokens for text elements
|
|
1475
|
+
* Used for interactive text elements like titles
|
|
1476
|
+
*/
|
|
1477
|
+
hover: {
|
|
1478
|
+
primary: "group-hover:text-primary"
|
|
1479
|
+
// Hover state for primary text color
|
|
1480
|
+
},
|
|
1481
|
+
/**
|
|
1482
|
+
* Line clamp tokens for text truncation
|
|
1483
|
+
* Used for limiting text to specific number of lines
|
|
1484
|
+
*/
|
|
1485
|
+
lineClamp: {
|
|
1486
|
+
one: "line-clamp-1",
|
|
1487
|
+
// Single line clamp
|
|
1488
|
+
two: "line-clamp-2",
|
|
1489
|
+
// Two line clamp
|
|
1490
|
+
three: "line-clamp-3"
|
|
1491
|
+
// Three line clamp
|
|
1582
1492
|
}
|
|
1583
1493
|
},
|
|
1584
1494
|
/**
|
|
@@ -1801,6 +1711,94 @@ var DOMAIN_TOKENS = {
|
|
|
1801
1711
|
height: "h-6"
|
|
1802
1712
|
// References spacing[6] (1.5rem / 24px) via Tailwind
|
|
1803
1713
|
}
|
|
1714
|
+
},
|
|
1715
|
+
/**
|
|
1716
|
+
* CTA (Call-to-Action) button tokens for domain card components
|
|
1717
|
+
* Provides PromoCard-specific CTA button styling tokens
|
|
1718
|
+
* These tokens are semantically owned by domain card components, not by the Button component
|
|
1719
|
+
* References foundation tokens (spacing, typography, radius, shadows, motion) for consistency
|
|
1720
|
+
*/
|
|
1721
|
+
cta: {
|
|
1722
|
+
/**
|
|
1723
|
+
* CTA button styling tokens
|
|
1724
|
+
* Used by PromoCard and other domain card components for CTA button elements
|
|
1725
|
+
*/
|
|
1726
|
+
button: {
|
|
1727
|
+
/**
|
|
1728
|
+
* Button heights by size
|
|
1729
|
+
* Maps to Tailwind height utilities: h-8, h-9
|
|
1730
|
+
*/
|
|
1731
|
+
height: {
|
|
1732
|
+
sm: "h-8",
|
|
1733
|
+
// 32px (2rem) - compact size
|
|
1734
|
+
md: "h-9"
|
|
1735
|
+
// 36px (2.25rem) - default size
|
|
1736
|
+
},
|
|
1737
|
+
/**
|
|
1738
|
+
* Button padding by size
|
|
1739
|
+
* Horizontal and vertical padding values
|
|
1740
|
+
* References semanticSpacing tokens
|
|
1741
|
+
*/
|
|
1742
|
+
padding: {
|
|
1743
|
+
horizontal: {
|
|
1744
|
+
sm: "px-sm",
|
|
1745
|
+
// 8px (0.5rem) - maps to semanticSpacing.sm
|
|
1746
|
+
md: "px-md"
|
|
1747
|
+
// 16px (1rem) - maps to semanticSpacing.md
|
|
1748
|
+
},
|
|
1749
|
+
vertical: {
|
|
1750
|
+
sm: "py-xs"
|
|
1751
|
+
// 4px (0.25rem) - maps to semanticSpacing.xs
|
|
1752
|
+
}
|
|
1753
|
+
},
|
|
1754
|
+
/**
|
|
1755
|
+
* Border radius for CTA buttons
|
|
1756
|
+
* References borderRadius.md (6px / 0.375rem)
|
|
1757
|
+
* Using Tailwind class "rounded-md" which maps to borderRadius.md
|
|
1758
|
+
*/
|
|
1759
|
+
radius: "rounded-md",
|
|
1760
|
+
// References borderRadius.md via Tailwind
|
|
1761
|
+
/**
|
|
1762
|
+
* Font sizes by button size
|
|
1763
|
+
* Maps to foundation typography fontSize tokens
|
|
1764
|
+
*/
|
|
1765
|
+
fontSize: {
|
|
1766
|
+
sm: "text-xs",
|
|
1767
|
+
// Maps to fontSize.xs[0]
|
|
1768
|
+
md: "text-sm"
|
|
1769
|
+
// Maps to fontSize.sm[0]
|
|
1770
|
+
},
|
|
1771
|
+
/**
|
|
1772
|
+
* Shadow tokens for CTA buttons
|
|
1773
|
+
* Maps to foundation elevation shadow tokens
|
|
1774
|
+
*/
|
|
1775
|
+
shadow: {
|
|
1776
|
+
primary: "shadow"
|
|
1777
|
+
// Maps to elevationShadows.xs (primary variant uses shadow)
|
|
1778
|
+
},
|
|
1779
|
+
/**
|
|
1780
|
+
* Color tokens for CTA button variants
|
|
1781
|
+
* Uses semantic color tokens that map to CSS variables
|
|
1782
|
+
*/
|
|
1783
|
+
variant: {
|
|
1784
|
+
primary: {
|
|
1785
|
+
background: "bg-primary",
|
|
1786
|
+
// Primary background using CSS var
|
|
1787
|
+
text: "text-primary-foreground",
|
|
1788
|
+
// Primary text using CSS var
|
|
1789
|
+
hover: "hover:bg-primary/90"
|
|
1790
|
+
// Primary hover using CSS var
|
|
1791
|
+
}
|
|
1792
|
+
},
|
|
1793
|
+
/**
|
|
1794
|
+
* Transition tokens for CTA buttons
|
|
1795
|
+
* References MOTION_TOKENS for transitions
|
|
1796
|
+
*/
|
|
1797
|
+
transition: {
|
|
1798
|
+
colors: "transition-colors"
|
|
1799
|
+
// Color transition using motion tokens
|
|
1800
|
+
}
|
|
1801
|
+
}
|
|
1804
1802
|
}
|
|
1805
1803
|
};
|
|
1806
1804
|
|
|
@@ -1904,40 +1902,6 @@ var INPUT_TOKENS = {
|
|
|
1904
1902
|
text: "text-[hsl(var(--foreground))]"
|
|
1905
1903
|
// File input text color using CSS var
|
|
1906
1904
|
},
|
|
1907
|
-
/**
|
|
1908
|
-
* Select listbox tokens
|
|
1909
|
-
* Styling for select dropdown container
|
|
1910
|
-
*/
|
|
1911
|
-
selectListbox: {
|
|
1912
|
-
border: "border border-[hsl(var(--border))]",
|
|
1913
|
-
// Border color using CSS var
|
|
1914
|
-
background: "bg-[hsl(var(--popover))]",
|
|
1915
|
-
// Background using CSS var
|
|
1916
|
-
text: "text-[hsl(var(--popover-foreground))]",
|
|
1917
|
-
// Text color using CSS var
|
|
1918
|
-
radius: "rounded-md",
|
|
1919
|
-
// Radius token (6px)
|
|
1920
|
-
shadow: "shadow-md"
|
|
1921
|
-
// Shadow token
|
|
1922
|
-
},
|
|
1923
|
-
/**
|
|
1924
|
-
* Select option tokens
|
|
1925
|
-
* Styling for select option items
|
|
1926
|
-
*/
|
|
1927
|
-
selectOption: {
|
|
1928
|
-
focus: {
|
|
1929
|
-
background: "focus:bg-[hsl(var(--accent))]",
|
|
1930
|
-
// Focus background using CSS var
|
|
1931
|
-
text: "focus:text-[hsl(var(--accent-foreground))]"
|
|
1932
|
-
// Focus text using CSS var
|
|
1933
|
-
},
|
|
1934
|
-
selected: {
|
|
1935
|
-
background: "bg-[hsl(var(--accent))]",
|
|
1936
|
-
// Selected background using CSS var
|
|
1937
|
-
text: "text-[hsl(var(--accent-foreground))]"
|
|
1938
|
-
// Selected text using CSS var
|
|
1939
|
-
}
|
|
1940
|
-
},
|
|
1941
1905
|
/**
|
|
1942
1906
|
* Variant-based tokens
|
|
1943
1907
|
* Border, background, and text colors for different variants
|
|
@@ -2151,35 +2115,217 @@ var INPUT_TOKENS = {
|
|
|
2151
2115
|
}
|
|
2152
2116
|
};
|
|
2153
2117
|
|
|
2154
|
-
// src/tokens/components/
|
|
2155
|
-
var
|
|
2118
|
+
// src/tokens/components/textarea.ts
|
|
2119
|
+
var TEXTAREA_TOKENS = {
|
|
2156
2120
|
/**
|
|
2157
|
-
*
|
|
2158
|
-
*
|
|
2159
|
-
* Checkboxes are typically square and smaller than input fields
|
|
2121
|
+
* Shadow token
|
|
2122
|
+
* Maps to foundation elevation shadow tokens
|
|
2160
2123
|
*/
|
|
2161
|
-
|
|
2162
|
-
|
|
2163
|
-
|
|
2164
|
-
|
|
2165
|
-
|
|
2166
|
-
|
|
2167
|
-
|
|
2168
|
-
|
|
2169
|
-
|
|
2170
|
-
|
|
2124
|
+
shadow: "shadow-sm",
|
|
2125
|
+
// Maps to elevationShadows.sm
|
|
2126
|
+
/**
|
|
2127
|
+
* Variant-based tokens
|
|
2128
|
+
* Border, background, and text colors for different variants
|
|
2129
|
+
* All use CSS variable references for theme support
|
|
2130
|
+
*/
|
|
2131
|
+
variant: {
|
|
2132
|
+
primary: {
|
|
2133
|
+
border: "border-[hsl(var(--tm-primary))]",
|
|
2134
|
+
// Primary border color
|
|
2135
|
+
background: "bg-[hsl(var(--tm-primary))]",
|
|
2136
|
+
// Primary background
|
|
2137
|
+
text: "text-[hsl(var(--tm-primary-foreground))]",
|
|
2138
|
+
// Primary text color
|
|
2139
|
+
focus: "focus-visible:shadow-[var(--focus-ring-primary)]"
|
|
2140
|
+
// Primary focus ring
|
|
2171
2141
|
},
|
|
2172
|
-
|
|
2173
|
-
|
|
2174
|
-
//
|
|
2175
|
-
|
|
2176
|
-
//
|
|
2177
|
-
|
|
2178
|
-
//
|
|
2179
|
-
|
|
2180
|
-
//
|
|
2142
|
+
secondary: {
|
|
2143
|
+
border: "border-[hsl(var(--tm-secondary))]",
|
|
2144
|
+
// Secondary border color
|
|
2145
|
+
background: "bg-[hsl(var(--tm-secondary))]",
|
|
2146
|
+
// Secondary background
|
|
2147
|
+
text: "text-[hsl(var(--tm-secondary-foreground))]",
|
|
2148
|
+
// Secondary text color
|
|
2149
|
+
focus: "focus-visible:shadow-[var(--focus-ring-default)]"
|
|
2150
|
+
// Default focus ring
|
|
2181
2151
|
},
|
|
2182
|
-
|
|
2152
|
+
outline: {
|
|
2153
|
+
border: "border-[hsl(var(--input))]",
|
|
2154
|
+
// Input border color
|
|
2155
|
+
background: "bg-transparent",
|
|
2156
|
+
// Transparent background
|
|
2157
|
+
text: "text-[hsl(var(--foreground))]",
|
|
2158
|
+
// Foreground text color
|
|
2159
|
+
focus: "focus-visible:shadow-[var(--focus-ring-default)]"
|
|
2160
|
+
// Default focus ring
|
|
2161
|
+
},
|
|
2162
|
+
ghost: {
|
|
2163
|
+
border: "border-transparent",
|
|
2164
|
+
// Transparent border
|
|
2165
|
+
background: "bg-transparent",
|
|
2166
|
+
// Transparent background
|
|
2167
|
+
text: "text-[hsl(var(--foreground))]",
|
|
2168
|
+
// Foreground text color
|
|
2169
|
+
focus: "focus-visible:shadow-[var(--focus-ring-default)]"
|
|
2170
|
+
// Default focus ring
|
|
2171
|
+
},
|
|
2172
|
+
destructive: {
|
|
2173
|
+
border: "border-[hsl(var(--destructive))]",
|
|
2174
|
+
// Destructive border color
|
|
2175
|
+
background: "bg-[hsl(var(--destructive))]",
|
|
2176
|
+
// Destructive background
|
|
2177
|
+
text: "text-[hsl(var(--destructive-foreground))]",
|
|
2178
|
+
// Destructive text color
|
|
2179
|
+
focus: "focus-visible:shadow-[var(--focus-ring-default)]"
|
|
2180
|
+
// Default focus ring
|
|
2181
|
+
}
|
|
2182
|
+
},
|
|
2183
|
+
/**
|
|
2184
|
+
* State-based tokens
|
|
2185
|
+
* Border, background, and text colors for different states
|
|
2186
|
+
* All use CSS variable references for theme support
|
|
2187
|
+
*/
|
|
2188
|
+
state: {
|
|
2189
|
+
border: {
|
|
2190
|
+
default: "border-[hsl(var(--input))]",
|
|
2191
|
+
// Default border color using CSS var
|
|
2192
|
+
focus: "focus-visible:shadow-[var(--focus-ring-default)]",
|
|
2193
|
+
// Focus ring using CSS var
|
|
2194
|
+
error: "border-[hsl(var(--destructive))]",
|
|
2195
|
+
// Error state border using CSS var
|
|
2196
|
+
success: "border-[hsl(var(--semantic-success))]",
|
|
2197
|
+
// Success state border using CSS var
|
|
2198
|
+
disabled: "border-[hsl(var(--input))]"
|
|
2199
|
+
// Disabled state border (same as default)
|
|
2200
|
+
},
|
|
2201
|
+
background: {
|
|
2202
|
+
default: "bg-transparent",
|
|
2203
|
+
// Default background
|
|
2204
|
+
disabled: "bg-transparent"
|
|
2205
|
+
// Disabled background (same as default)
|
|
2206
|
+
},
|
|
2207
|
+
text: {
|
|
2208
|
+
default: "text-[hsl(var(--foreground))]",
|
|
2209
|
+
// Default text color using CSS var
|
|
2210
|
+
placeholder: "placeholder:text-[hsl(var(--muted-foreground))]",
|
|
2211
|
+
// Placeholder text color using CSS var
|
|
2212
|
+
disabled: "disabled:opacity-50"
|
|
2213
|
+
// Disabled text opacity
|
|
2214
|
+
}
|
|
2215
|
+
},
|
|
2216
|
+
/**
|
|
2217
|
+
* Width tokens
|
|
2218
|
+
* Common width utilities
|
|
2219
|
+
*/
|
|
2220
|
+
width: {
|
|
2221
|
+
full: "w-full"
|
|
2222
|
+
// Full width (100%)
|
|
2223
|
+
},
|
|
2224
|
+
/**
|
|
2225
|
+
* Message tokens
|
|
2226
|
+
* Spacing, positioning, and styling for helper text and error messages
|
|
2227
|
+
*/
|
|
2228
|
+
message: {
|
|
2229
|
+
// 8px (0.5rem) - spacing between control and message
|
|
2230
|
+
position: {
|
|
2231
|
+
bottom: "bottom-sm",
|
|
2232
|
+
// 8px (0.5rem) - bottom position for character counter
|
|
2233
|
+
right: "right-sm"
|
|
2234
|
+
// 8px (0.5rem) - right position for character counter
|
|
2235
|
+
},
|
|
2236
|
+
color: {
|
|
2237
|
+
default: "text-[hsl(var(--muted-foreground))]",
|
|
2238
|
+
// Default message color
|
|
2239
|
+
error: "text-[hsl(var(--destructive))]"}
|
|
2240
|
+
},
|
|
2241
|
+
/**
|
|
2242
|
+
* Size-based token structure
|
|
2243
|
+
* Organized by size for easy access
|
|
2244
|
+
*/
|
|
2245
|
+
size: {
|
|
2246
|
+
xs: {
|
|
2247
|
+
padding: {
|
|
2248
|
+
horizontal: "px-xs",
|
|
2249
|
+
vertical: "py-xs"
|
|
2250
|
+
},
|
|
2251
|
+
radius: "rounded-sm",
|
|
2252
|
+
fontSize: "text-xs"},
|
|
2253
|
+
sm: {
|
|
2254
|
+
padding: {
|
|
2255
|
+
horizontal: "px-sm",
|
|
2256
|
+
vertical: "py-xs"
|
|
2257
|
+
},
|
|
2258
|
+
radius: "rounded-md",
|
|
2259
|
+
fontSize: "text-sm"},
|
|
2260
|
+
md: {
|
|
2261
|
+
padding: {
|
|
2262
|
+
horizontal: "px-sm",
|
|
2263
|
+
vertical: "py-xs"
|
|
2264
|
+
},
|
|
2265
|
+
radius: "rounded-md",
|
|
2266
|
+
fontSize: "text-base",
|
|
2267
|
+
fontSizeResponsive: "md:text-sm"},
|
|
2268
|
+
lg: {
|
|
2269
|
+
padding: {
|
|
2270
|
+
horizontal: "px-md",
|
|
2271
|
+
vertical: "py-sm"
|
|
2272
|
+
},
|
|
2273
|
+
radius: "rounded-md",
|
|
2274
|
+
fontSize: "text-base"},
|
|
2275
|
+
xl: {
|
|
2276
|
+
padding: {
|
|
2277
|
+
horizontal: "px-lg",
|
|
2278
|
+
vertical: "py-md"
|
|
2279
|
+
},
|
|
2280
|
+
radius: "rounded-lg",
|
|
2281
|
+
fontSize: "text-lg"}
|
|
2282
|
+
}
|
|
2283
|
+
};
|
|
2284
|
+
|
|
2285
|
+
// src/tokens/components/form.ts
|
|
2286
|
+
var FORM_TOKENS = {
|
|
2287
|
+
/**
|
|
2288
|
+
* Label tokens
|
|
2289
|
+
* Spacing and styling for labels
|
|
2290
|
+
*/
|
|
2291
|
+
label: {
|
|
2292
|
+
// 8px (0.5rem) - spacing between label and control
|
|
2293
|
+
/**
|
|
2294
|
+
* Color for required asterisk mark
|
|
2295
|
+
*/
|
|
2296
|
+
requiredMark: "text-destructive"
|
|
2297
|
+
// Color for required asterisk
|
|
2298
|
+
}};
|
|
2299
|
+
|
|
2300
|
+
// src/tokens/components/checkbox.ts
|
|
2301
|
+
var CHECKBOX_TOKENS = {
|
|
2302
|
+
/**
|
|
2303
|
+
* Checkbox sizes by size variant
|
|
2304
|
+
* Supports xs, sm, md, lg, xl sizes
|
|
2305
|
+
* Checkboxes are typically square and smaller than input fields
|
|
2306
|
+
*/
|
|
2307
|
+
size: {
|
|
2308
|
+
xs: {
|
|
2309
|
+
width: "w-3.5",
|
|
2310
|
+
// 14px (0.875rem)
|
|
2311
|
+
height: "h-3.5",
|
|
2312
|
+
// 14px (0.875rem)
|
|
2313
|
+
radius: "rounded-sm",
|
|
2314
|
+
// 4px (0.25rem)
|
|
2315
|
+
iconSize: "size-2.5"
|
|
2316
|
+
// 10px (0.625rem)
|
|
2317
|
+
},
|
|
2318
|
+
sm: {
|
|
2319
|
+
width: "w-4",
|
|
2320
|
+
// 16px (1rem)
|
|
2321
|
+
height: "h-4",
|
|
2322
|
+
// 16px (1rem)
|
|
2323
|
+
radius: "rounded-sm",
|
|
2324
|
+
// 4px (0.25rem)
|
|
2325
|
+
iconSize: "size-3"
|
|
2326
|
+
// 12px (0.75rem)
|
|
2327
|
+
},
|
|
2328
|
+
md: {
|
|
2183
2329
|
width: "w-4.5",
|
|
2184
2330
|
// 18px (1.125rem) - default
|
|
2185
2331
|
height: "h-4.5",
|
|
@@ -4218,6 +4364,14 @@ var DROPDOWN_TOKENS = {
|
|
|
4218
4364
|
// 256px
|
|
4219
4365
|
}
|
|
4220
4366
|
},
|
|
4367
|
+
/**
|
|
4368
|
+
* Width tokens
|
|
4369
|
+
* Common width utilities
|
|
4370
|
+
*/
|
|
4371
|
+
width: {
|
|
4372
|
+
full: "w-full"
|
|
4373
|
+
// Full width (100%)
|
|
4374
|
+
},
|
|
4221
4375
|
/**
|
|
4222
4376
|
* Item tokens by size
|
|
4223
4377
|
* Individual menu item
|
|
@@ -5027,64 +5181,352 @@ var MODAL_TOKENS = {
|
|
|
5027
5181
|
}
|
|
5028
5182
|
};
|
|
5029
5183
|
|
|
5030
|
-
// src/tokens/
|
|
5031
|
-
var
|
|
5032
|
-
|
|
5033
|
-
|
|
5034
|
-
|
|
5035
|
-
|
|
5036
|
-
|
|
5037
|
-
|
|
5038
|
-
|
|
5039
|
-
|
|
5040
|
-
|
|
5041
|
-
|
|
5042
|
-
|
|
5043
|
-
|
|
5044
|
-
|
|
5045
|
-
|
|
5046
|
-
|
|
5047
|
-
|
|
5048
|
-
|
|
5049
|
-
|
|
5050
|
-
|
|
5051
|
-
|
|
5052
|
-
|
|
5053
|
-
soft: `${motionV2Durations.normal} ${motionV2Easings.soft}`,
|
|
5054
|
-
reduced: `${motionV2Durations.reduced} linear`
|
|
5055
|
-
};
|
|
5056
|
-
var motionV2Fade = {
|
|
5057
|
-
in: {
|
|
5058
|
-
from: { opacity: 0 },
|
|
5059
|
-
to: { opacity: 1 }
|
|
5184
|
+
// src/tokens/components/table.ts
|
|
5185
|
+
var TABLE_TOKENS = {
|
|
5186
|
+
/**
|
|
5187
|
+
* Table cell and header padding by size
|
|
5188
|
+
* Maps to semantic spacing tokens
|
|
5189
|
+
*/
|
|
5190
|
+
padding: {
|
|
5191
|
+
cell: {
|
|
5192
|
+
sm: "p-xs",
|
|
5193
|
+
// 4px (0.25rem) - maps to semanticSpacing.xs
|
|
5194
|
+
md: "p-sm",
|
|
5195
|
+
// 8px (0.5rem) - maps to semanticSpacing.sm
|
|
5196
|
+
lg: "p-md"
|
|
5197
|
+
// 16px (1rem) - maps to semanticSpacing.md
|
|
5198
|
+
},
|
|
5199
|
+
header: {
|
|
5200
|
+
sm: "px-xs py-sm",
|
|
5201
|
+
// 4px horizontal, 8px vertical
|
|
5202
|
+
md: "px-sm py-md",
|
|
5203
|
+
// 8px horizontal, 16px vertical
|
|
5204
|
+
lg: "px-md py-lg"
|
|
5205
|
+
// 16px horizontal, 24px vertical
|
|
5206
|
+
}
|
|
5060
5207
|
},
|
|
5061
|
-
|
|
5062
|
-
|
|
5063
|
-
|
|
5064
|
-
|
|
5065
|
-
|
|
5066
|
-
|
|
5067
|
-
in: {
|
|
5068
|
-
from: { transform: "scale(0.95)", opacity: 0 },
|
|
5069
|
-
to: { transform: "scale(1)", opacity: 1 }
|
|
5208
|
+
/**
|
|
5209
|
+
* Border radius for table
|
|
5210
|
+
*/
|
|
5211
|
+
radius: {
|
|
5212
|
+
default: "rounded-md"
|
|
5213
|
+
// 6px (0.375rem) - maps to borderRadius.md
|
|
5070
5214
|
},
|
|
5071
|
-
|
|
5072
|
-
|
|
5073
|
-
|
|
5074
|
-
|
|
5075
|
-
|
|
5076
|
-
|
|
5077
|
-
|
|
5078
|
-
|
|
5079
|
-
|
|
5080
|
-
|
|
5215
|
+
/**
|
|
5216
|
+
* Shadow tokens for table
|
|
5217
|
+
* Maps to foundation elevation shadow tokens
|
|
5218
|
+
*/
|
|
5219
|
+
shadow: {
|
|
5220
|
+
// No shadow
|
|
5221
|
+
subtle: "shadow-sm"
|
|
5222
|
+
// Maps to elevationShadows.sm
|
|
5223
|
+
},
|
|
5224
|
+
/**
|
|
5225
|
+
* Typography tokens for table headers and cells
|
|
5226
|
+
* Maps to foundation typography fontSize tokens
|
|
5227
|
+
*/
|
|
5228
|
+
typography: {
|
|
5229
|
+
header: {
|
|
5230
|
+
fontSize: "text-sm",
|
|
5231
|
+
// Maps to fontSize.sm[0]
|
|
5232
|
+
fontWeight: "font-semibold"
|
|
5233
|
+
// Maps to fontWeight.semibold
|
|
5081
5234
|
},
|
|
5082
|
-
|
|
5083
|
-
|
|
5084
|
-
|
|
5235
|
+
cell: {
|
|
5236
|
+
fontSize: "text-sm",
|
|
5237
|
+
// Maps to fontSize.sm[0]
|
|
5238
|
+
fontWeight: "font-normal"
|
|
5239
|
+
// Maps to fontWeight.normal
|
|
5085
5240
|
}
|
|
5086
5241
|
},
|
|
5087
|
-
|
|
5242
|
+
/**
|
|
5243
|
+
* Color tokens for table states
|
|
5244
|
+
* Uses semantic color tokens
|
|
5245
|
+
*/
|
|
5246
|
+
colors: {
|
|
5247
|
+
border: "border-border",
|
|
5248
|
+
// Border color
|
|
5249
|
+
rowHover: "hover:bg-muted/50",
|
|
5250
|
+
// Row hover background
|
|
5251
|
+
rowSelected: "bg-muted"
|
|
5252
|
+
// Selected row background
|
|
5253
|
+
},
|
|
5254
|
+
/**
|
|
5255
|
+
* Border tokens for table
|
|
5256
|
+
*/
|
|
5257
|
+
border: {
|
|
5258
|
+
bottom: "border-b"
|
|
5259
|
+
// Border bottom for rows and headers
|
|
5260
|
+
},
|
|
5261
|
+
/**
|
|
5262
|
+
* Layout tokens for table container and base styles
|
|
5263
|
+
*/
|
|
5264
|
+
layout: {
|
|
5265
|
+
overflow: "overflow-x-auto",
|
|
5266
|
+
// Table container overflow
|
|
5267
|
+
table: "w-full border-collapse"
|
|
5268
|
+
// Table base styles
|
|
5269
|
+
},
|
|
5270
|
+
/**
|
|
5271
|
+
* Sticky header tokens
|
|
5272
|
+
* For sticky header positioning and styling
|
|
5273
|
+
*/
|
|
5274
|
+
sticky: {
|
|
5275
|
+
header: "sticky top-0 z-10 bg-background"
|
|
5276
|
+
// Sticky header styles
|
|
5277
|
+
},
|
|
5278
|
+
/**
|
|
5279
|
+
* Expandable row tokens
|
|
5280
|
+
* For expandable content styling
|
|
5281
|
+
*/
|
|
5282
|
+
expandable: {
|
|
5283
|
+
padding: "p-md",
|
|
5284
|
+
// Expandable content padding - maps to semanticSpacing.md
|
|
5285
|
+
container: "p-0",
|
|
5286
|
+
// Expandable container padding
|
|
5287
|
+
transition: "overflow-hidden transition-all duration-normal ease-in-out",
|
|
5288
|
+
// Transition styles
|
|
5289
|
+
expanded: "max-h-[100vh] opacity-100",
|
|
5290
|
+
// Expanded state
|
|
5291
|
+
collapsed: "max-h-0 opacity-0",
|
|
5292
|
+
// Collapsed state
|
|
5293
|
+
cursor: "cursor-pointer",
|
|
5294
|
+
// Cursor for expandable rows
|
|
5295
|
+
content: {
|
|
5296
|
+
expanded: "block",
|
|
5297
|
+
// Expanded content display
|
|
5298
|
+
collapsed: "hidden"
|
|
5299
|
+
// Collapsed content display
|
|
5300
|
+
}
|
|
5301
|
+
},
|
|
5302
|
+
/**
|
|
5303
|
+
* Loading state tokens
|
|
5304
|
+
* For loading state cell styling
|
|
5305
|
+
*/
|
|
5306
|
+
loading: {
|
|
5307
|
+
cellPadding: "p-sm",
|
|
5308
|
+
// Loading state cell padding - maps to semanticSpacing.sm
|
|
5309
|
+
skeletonWidth: "w-full"
|
|
5310
|
+
// Skeleton width
|
|
5311
|
+
},
|
|
5312
|
+
/**
|
|
5313
|
+
* Empty state tokens
|
|
5314
|
+
* For empty state cell styling
|
|
5315
|
+
*/
|
|
5316
|
+
empty: {
|
|
5317
|
+
padding: "p-8"
|
|
5318
|
+
// Empty state padding - maps to semanticSpacing.2xl
|
|
5319
|
+
},
|
|
5320
|
+
/**
|
|
5321
|
+
* Sortable header tokens
|
|
5322
|
+
* For sortable header styling and interactions
|
|
5323
|
+
*/
|
|
5324
|
+
sortable: {
|
|
5325
|
+
hover: "hover:bg-muted/50",
|
|
5326
|
+
// Sortable header hover
|
|
5327
|
+
gap: "gap-2",
|
|
5328
|
+
// Sort icon gap - maps to semanticSpacing.sm
|
|
5329
|
+
cursor: "cursor-pointer select-none",
|
|
5330
|
+
// Sortable cursor
|
|
5331
|
+
container: "flex items-center",
|
|
5332
|
+
// Sortable header container
|
|
5333
|
+
icon: {
|
|
5334
|
+
base: "inline-flex size-4 items-center text-muted-foreground transition-transform",
|
|
5335
|
+
// Sort icon base styles
|
|
5336
|
+
rotated: "rotate-180",
|
|
5337
|
+
// Rotated state (descending)
|
|
5338
|
+
inactive: "opacity-30"
|
|
5339
|
+
// Inactive state (no sort)
|
|
5340
|
+
}
|
|
5341
|
+
}
|
|
5342
|
+
};
|
|
5343
|
+
|
|
5344
|
+
// src/tokens/components/data-list.ts
|
|
5345
|
+
var DATA_LIST_TOKENS = {
|
|
5346
|
+
/**
|
|
5347
|
+
* Spacing tokens for DataList
|
|
5348
|
+
* Maps to semantic spacing tokens
|
|
5349
|
+
*/
|
|
5350
|
+
spacing: {
|
|
5351
|
+
gap: "gap-md"},
|
|
5352
|
+
/**
|
|
5353
|
+
* Label width tokens (for desktop horizontal layout)
|
|
5354
|
+
* Maps to Tailwind width utilities
|
|
5355
|
+
*/
|
|
5356
|
+
labelWidth: {
|
|
5357
|
+
// 96px (6rem) - small label width
|
|
5358
|
+
md: "w-32"},
|
|
5359
|
+
/**
|
|
5360
|
+
* Row padding tokens
|
|
5361
|
+
* Maps to semantic spacing tokens
|
|
5362
|
+
*/
|
|
5363
|
+
rowPadding: {
|
|
5364
|
+
sm: "py-xs",
|
|
5365
|
+
// 4px (0.25rem) - maps to semanticSpacing.xs
|
|
5366
|
+
md: "py-sm",
|
|
5367
|
+
// 8px (0.5rem) - maps to semanticSpacing.sm
|
|
5368
|
+
lg: "py-md"
|
|
5369
|
+
// 16px (1rem) - maps to semanticSpacing.md
|
|
5370
|
+
},
|
|
5371
|
+
/**
|
|
5372
|
+
* Item tokens
|
|
5373
|
+
* For individual DataList item styling
|
|
5374
|
+
*/
|
|
5375
|
+
item: {
|
|
5376
|
+
/**
|
|
5377
|
+
* Border tokens for items
|
|
5378
|
+
*/
|
|
5379
|
+
border: "border-b border-border last:border-0",
|
|
5380
|
+
// Item borders
|
|
5381
|
+
/**
|
|
5382
|
+
* Responsive layout tokens
|
|
5383
|
+
*/
|
|
5384
|
+
layout: {
|
|
5385
|
+
mobile: "flex flex-col",
|
|
5386
|
+
// Mobile layout - vertical
|
|
5387
|
+
desktop: "md:flex-row md:items-center"
|
|
5388
|
+
// Desktop layout - horizontal
|
|
5389
|
+
}
|
|
5390
|
+
},
|
|
5391
|
+
/**
|
|
5392
|
+
* Label tokens
|
|
5393
|
+
* For DataList label styling
|
|
5394
|
+
*/
|
|
5395
|
+
label: {
|
|
5396
|
+
mobile: "mb-1 font-semibold text-foreground",
|
|
5397
|
+
// Mobile label styles
|
|
5398
|
+
desktop: "md:mb-0"
|
|
5399
|
+
// Desktop label margin override
|
|
5400
|
+
},
|
|
5401
|
+
/**
|
|
5402
|
+
* Value tokens
|
|
5403
|
+
* For DataList value styling
|
|
5404
|
+
*/
|
|
5405
|
+
value: {
|
|
5406
|
+
color: "text-muted-foreground",
|
|
5407
|
+
// Value text color
|
|
5408
|
+
flex: "flex-1"
|
|
5409
|
+
// Value flex grow
|
|
5410
|
+
}
|
|
5411
|
+
};
|
|
5412
|
+
|
|
5413
|
+
// src/tokens/components/empty-state.ts
|
|
5414
|
+
var EMPTY_STATE_TOKENS = {
|
|
5415
|
+
/**
|
|
5416
|
+
* Spacing tokens for EmptyState
|
|
5417
|
+
* Maps to semantic spacing tokens
|
|
5418
|
+
*/
|
|
5419
|
+
spacing: {
|
|
5420
|
+
// 24px (1.5rem) - container padding - maps to semanticSpacing.lg
|
|
5421
|
+
action: "mt-2"
|
|
5422
|
+
// Action button margin top - maps to semanticSpacing.xs
|
|
5423
|
+
},
|
|
5424
|
+
/**
|
|
5425
|
+
* Icon sizes by variant
|
|
5426
|
+
* Maps to Tailwind size utilities
|
|
5427
|
+
*/
|
|
5428
|
+
icon: {
|
|
5429
|
+
size: {
|
|
5430
|
+
sm: "size-8",
|
|
5431
|
+
// 32px (2rem)
|
|
5432
|
+
md: "size-12",
|
|
5433
|
+
// 48px (3rem)
|
|
5434
|
+
lg: "size-16"
|
|
5435
|
+
// 64px (4rem)
|
|
5436
|
+
},
|
|
5437
|
+
container: "flex items-center justify-center text-muted-foreground"
|
|
5438
|
+
// Icon container styles
|
|
5439
|
+
},
|
|
5440
|
+
/**
|
|
5441
|
+
* Typography tokens for EmptyState
|
|
5442
|
+
* Maps to foundation typography tokens
|
|
5443
|
+
*/
|
|
5444
|
+
typography: {
|
|
5445
|
+
title: {
|
|
5446
|
+
fontSize: "text-lg",
|
|
5447
|
+
// Maps to fontSize.lg[0]
|
|
5448
|
+
fontWeight: "font-semibold",
|
|
5449
|
+
// Maps to fontWeight.semibold
|
|
5450
|
+
color: "text-foreground"
|
|
5451
|
+
// Title text color
|
|
5452
|
+
},
|
|
5453
|
+
description: {
|
|
5454
|
+
fontSize: "text-sm",
|
|
5455
|
+
// Maps to fontSize.sm[0]
|
|
5456
|
+
fontWeight: "font-normal",
|
|
5457
|
+
// Maps to fontWeight.normal
|
|
5458
|
+
color: "text-muted-foreground",
|
|
5459
|
+
// Description text color
|
|
5460
|
+
maxWidth: "max-w-md"
|
|
5461
|
+
// Maximum width for description
|
|
5462
|
+
}
|
|
5463
|
+
},
|
|
5464
|
+
/**
|
|
5465
|
+
* Alignment tokens
|
|
5466
|
+
* For text alignment in EmptyState
|
|
5467
|
+
*/
|
|
5468
|
+
alignment: {
|
|
5469
|
+
center: "text-center"}
|
|
5470
|
+
};
|
|
5471
|
+
|
|
5472
|
+
// src/tokens/motion/v2.ts
|
|
5473
|
+
var motionV2Durations = {
|
|
5474
|
+
fast: "150ms",
|
|
5475
|
+
// Quick interactions
|
|
5476
|
+
normal: "250ms",
|
|
5477
|
+
// Default transitions
|
|
5478
|
+
slow: "350ms",
|
|
5479
|
+
// Emphasized animations
|
|
5480
|
+
reduced: "0ms"
|
|
5481
|
+
// For prefers-reduced-motion
|
|
5482
|
+
};
|
|
5483
|
+
var motionV2Easings = {
|
|
5484
|
+
soft: "cubic-bezier(0.22, 1, 0.36, 1)",
|
|
5485
|
+
// Gentle, smooth
|
|
5486
|
+
standard: "cubic-bezier(0.4, 0, 0.2, 1)",
|
|
5487
|
+
// Material Design standard
|
|
5488
|
+
emphasized: "cubic-bezier(0.2, 0, 0, 1)"
|
|
5489
|
+
// Strong, decisive
|
|
5490
|
+
};
|
|
5491
|
+
var motionV2Transitions = {
|
|
5492
|
+
fast: `${motionV2Durations.fast} ${motionV2Easings.standard}`,
|
|
5493
|
+
normal: `${motionV2Durations.normal} ${motionV2Easings.standard}`,
|
|
5494
|
+
slow: `${motionV2Durations.slow} ${motionV2Easings.emphasized}`,
|
|
5495
|
+
soft: `${motionV2Durations.normal} ${motionV2Easings.soft}`,
|
|
5496
|
+
reduced: `${motionV2Durations.reduced} linear`
|
|
5497
|
+
};
|
|
5498
|
+
var motionV2Fade = {
|
|
5499
|
+
in: {
|
|
5500
|
+
from: { opacity: 0 },
|
|
5501
|
+
to: { opacity: 1 }
|
|
5502
|
+
},
|
|
5503
|
+
out: {
|
|
5504
|
+
from: { opacity: 1 },
|
|
5505
|
+
to: { opacity: 0 }
|
|
5506
|
+
}
|
|
5507
|
+
};
|
|
5508
|
+
var motionV2Scale = {
|
|
5509
|
+
in: {
|
|
5510
|
+
from: { transform: "scale(0.95)", opacity: 0 },
|
|
5511
|
+
to: { transform: "scale(1)", opacity: 1 }
|
|
5512
|
+
},
|
|
5513
|
+
out: {
|
|
5514
|
+
from: { transform: "scale(1)", opacity: 1 },
|
|
5515
|
+
to: { transform: "scale(0.95)", opacity: 0 }
|
|
5516
|
+
}
|
|
5517
|
+
};
|
|
5518
|
+
var motionV2Slide = {
|
|
5519
|
+
up: {
|
|
5520
|
+
in: {
|
|
5521
|
+
from: { transform: "translateY(100%)", opacity: 0 },
|
|
5522
|
+
to: { transform: "translateY(0)", opacity: 1 }
|
|
5523
|
+
},
|
|
5524
|
+
out: {
|
|
5525
|
+
from: { transform: "translateY(0)", opacity: 1 },
|
|
5526
|
+
to: { transform: "translateY(100%)", opacity: 0 }
|
|
5527
|
+
}
|
|
5528
|
+
},
|
|
5529
|
+
down: {
|
|
5088
5530
|
in: {
|
|
5089
5531
|
from: { transform: "translateY(-100%)", opacity: 0 },
|
|
5090
5532
|
to: { transform: "translateY(0)", opacity: 1 }
|
|
@@ -6347,6 +6789,13 @@ var UI_COLORS = tailwindThemeColors;
|
|
|
6347
6789
|
function cn(...inputs) {
|
|
6348
6790
|
return twMerge(clsx(inputs));
|
|
6349
6791
|
}
|
|
6792
|
+
function formatDate(date) {
|
|
6793
|
+
return new Intl.DateTimeFormat("en-US", {
|
|
6794
|
+
month: "long",
|
|
6795
|
+
day: "numeric",
|
|
6796
|
+
year: "numeric"
|
|
6797
|
+
}).format(new Date(date));
|
|
6798
|
+
}
|
|
6350
6799
|
var buttonVariants = cva(
|
|
6351
6800
|
`inline-flex items-center justify-center ${BUTTON_TOKENS.gap} whitespace-nowrap ${BUTTON_TOKENS.radius} ${BUTTON_TOKENS.fontSize.md} font-medium ${BUTTON_TOKENS.transition.colors} focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:${BUTTON_TOKENS.iconSize} [&_svg]:shrink-0`,
|
|
6352
6801
|
{
|
|
@@ -8312,31 +8761,31 @@ var Radio = React49.forwardRef(
|
|
|
8312
8761
|
);
|
|
8313
8762
|
Radio.displayName = "Radio";
|
|
8314
8763
|
var textareaVariants = cva(
|
|
8315
|
-
`flex min-h-[80px] ${
|
|
8764
|
+
`flex min-h-[80px] ${TEXTAREA_TOKENS.shadow} ${MOTION_TOKENS.transition.colors} disabled:cursor-not-allowed focus-visible:outline-none resize-y`,
|
|
8316
8765
|
{
|
|
8317
8766
|
variants: {
|
|
8318
8767
|
variant: {
|
|
8319
|
-
primary: `${
|
|
8320
|
-
secondary: `${
|
|
8321
|
-
outline: `${
|
|
8322
|
-
ghost: `${
|
|
8323
|
-
destructive: `${
|
|
8768
|
+
primary: `${TEXTAREA_TOKENS.variant.primary.border} ${TEXTAREA_TOKENS.variant.primary.background} ${TEXTAREA_TOKENS.variant.primary.text} ${TEXTAREA_TOKENS.state.text.placeholder} ${TEXTAREA_TOKENS.variant.primary.focus}`,
|
|
8769
|
+
secondary: `${TEXTAREA_TOKENS.variant.secondary.border} ${TEXTAREA_TOKENS.variant.secondary.background} ${TEXTAREA_TOKENS.variant.secondary.text} ${TEXTAREA_TOKENS.state.text.placeholder} ${TEXTAREA_TOKENS.variant.secondary.focus}`,
|
|
8770
|
+
outline: `${TEXTAREA_TOKENS.variant.outline.border} ${TEXTAREA_TOKENS.variant.outline.background} ${TEXTAREA_TOKENS.variant.outline.text} ${TEXTAREA_TOKENS.state.text.placeholder} ${TEXTAREA_TOKENS.variant.outline.focus}`,
|
|
8771
|
+
ghost: `${TEXTAREA_TOKENS.variant.ghost.border} ${TEXTAREA_TOKENS.variant.ghost.background} ${TEXTAREA_TOKENS.variant.ghost.text} ${TEXTAREA_TOKENS.state.text.placeholder} ${TEXTAREA_TOKENS.variant.ghost.focus}`,
|
|
8772
|
+
destructive: `${TEXTAREA_TOKENS.variant.destructive.border} ${TEXTAREA_TOKENS.variant.destructive.background} ${TEXTAREA_TOKENS.variant.destructive.text} ${TEXTAREA_TOKENS.state.text.placeholder} ${TEXTAREA_TOKENS.variant.destructive.focus}`
|
|
8324
8773
|
},
|
|
8325
8774
|
size: {
|
|
8326
|
-
xs: `${
|
|
8327
|
-
sm: `${
|
|
8328
|
-
md: `${
|
|
8329
|
-
lg: `${
|
|
8330
|
-
xl: `${
|
|
8775
|
+
xs: `${TEXTAREA_TOKENS.size.xs.padding.horizontal} ${TEXTAREA_TOKENS.size.xs.padding.vertical} ${TEXTAREA_TOKENS.size.xs.radius} ${TEXTAREA_TOKENS.size.xs.fontSize}`,
|
|
8776
|
+
sm: `${TEXTAREA_TOKENS.size.sm.padding.horizontal} ${TEXTAREA_TOKENS.size.sm.padding.vertical} ${TEXTAREA_TOKENS.size.sm.radius} ${TEXTAREA_TOKENS.size.sm.fontSize}`,
|
|
8777
|
+
md: `${TEXTAREA_TOKENS.size.md.padding.horizontal} ${TEXTAREA_TOKENS.size.md.padding.vertical} ${TEXTAREA_TOKENS.size.md.radius} ${TEXTAREA_TOKENS.size.md.fontSize} ${TEXTAREA_TOKENS.size.md.fontSizeResponsive}`,
|
|
8778
|
+
lg: `${TEXTAREA_TOKENS.size.lg.padding.horizontal} ${TEXTAREA_TOKENS.size.lg.padding.vertical} ${TEXTAREA_TOKENS.size.lg.radius} ${TEXTAREA_TOKENS.size.lg.fontSize}`,
|
|
8779
|
+
xl: `${TEXTAREA_TOKENS.size.xl.padding.horizontal} ${TEXTAREA_TOKENS.size.xl.padding.vertical} ${TEXTAREA_TOKENS.size.xl.radius} ${TEXTAREA_TOKENS.size.xl.fontSize}`
|
|
8331
8780
|
},
|
|
8332
8781
|
state: {
|
|
8333
|
-
default: `${
|
|
8334
|
-
error: `${
|
|
8335
|
-
success: `${
|
|
8336
|
-
disabled: `${
|
|
8782
|
+
default: `${TEXTAREA_TOKENS.state.border.default} ${TEXTAREA_TOKENS.state.background.default} ${TEXTAREA_TOKENS.state.text.default} ${TEXTAREA_TOKENS.state.text.placeholder} ${TEXTAREA_TOKENS.state.border.focus}`,
|
|
8783
|
+
error: `${TEXTAREA_TOKENS.state.border.error} ${TEXTAREA_TOKENS.state.background.default} ${TEXTAREA_TOKENS.state.text.default} ${TEXTAREA_TOKENS.state.text.placeholder} ${TEXTAREA_TOKENS.state.border.focus}`,
|
|
8784
|
+
success: `${TEXTAREA_TOKENS.state.border.success} ${TEXTAREA_TOKENS.state.background.default} ${TEXTAREA_TOKENS.state.text.default} ${TEXTAREA_TOKENS.state.text.placeholder} ${TEXTAREA_TOKENS.state.border.focus}`,
|
|
8785
|
+
disabled: `${TEXTAREA_TOKENS.state.border.disabled} ${TEXTAREA_TOKENS.state.background.disabled} ${TEXTAREA_TOKENS.state.text.default} ${TEXTAREA_TOKENS.state.text.placeholder} ${TEXTAREA_TOKENS.state.text.disabled}`
|
|
8337
8786
|
},
|
|
8338
8787
|
fullWidth: {
|
|
8339
|
-
true:
|
|
8788
|
+
true: TEXTAREA_TOKENS.width.full,
|
|
8340
8789
|
false: ""
|
|
8341
8790
|
}
|
|
8342
8791
|
},
|
|
@@ -8380,7 +8829,7 @@ var Textarea = React49.forwardRef(
|
|
|
8380
8829
|
const currentLength = typeof currentValue === "string" ? currentValue.length : 0;
|
|
8381
8830
|
const shouldShowCounter = showCharacterCount && maxLength !== void 0;
|
|
8382
8831
|
if (shouldShowCounter) {
|
|
8383
|
-
return /* @__PURE__ */ jsxs("div", { className: cn("relative", fullWidth !== false &&
|
|
8832
|
+
return /* @__PURE__ */ jsxs("div", { className: cn("relative", fullWidth !== false && TEXTAREA_TOKENS.width.full), children: [
|
|
8384
8833
|
/* @__PURE__ */ jsx(
|
|
8385
8834
|
"textarea",
|
|
8386
8835
|
{
|
|
@@ -8400,11 +8849,11 @@ var Textarea = React49.forwardRef(
|
|
|
8400
8849
|
{
|
|
8401
8850
|
className: cn(
|
|
8402
8851
|
"absolute",
|
|
8403
|
-
|
|
8404
|
-
|
|
8852
|
+
TEXTAREA_TOKENS.message.position.bottom,
|
|
8853
|
+
TEXTAREA_TOKENS.message.position.right,
|
|
8405
8854
|
TEXT_TOKENS.fontSize.xs,
|
|
8406
|
-
|
|
8407
|
-
currentLength > maxLength &&
|
|
8855
|
+
TEXTAREA_TOKENS.message.color.default,
|
|
8856
|
+
currentLength > maxLength && TEXTAREA_TOKENS.message.color.error
|
|
8408
8857
|
),
|
|
8409
8858
|
children: [
|
|
8410
8859
|
currentLength,
|
|
@@ -8965,7 +9414,7 @@ var labelVariants = cva(
|
|
|
8965
9414
|
var Label2 = React49.forwardRef(
|
|
8966
9415
|
({ className, required, children, ...props }, ref) => /* @__PURE__ */ jsxs(LabelPrimitive.Root, { ref, className: cn(labelVariants(), className), ...props, children: [
|
|
8967
9416
|
children,
|
|
8968
|
-
required && /* @__PURE__ */ jsx("span", { className: cn(
|
|
9417
|
+
required && /* @__PURE__ */ jsx("span", { className: cn(FORM_TOKENS.label.requiredMark, "ml-xs"), children: "*" })
|
|
8969
9418
|
] })
|
|
8970
9419
|
);
|
|
8971
9420
|
Label2.displayName = LabelPrimitive.Root.displayName;
|
|
@@ -10371,7 +10820,7 @@ var PopoverArrow = React49.forwardRef(
|
|
|
10371
10820
|
);
|
|
10372
10821
|
PopoverArrow.displayName = "PopoverArrow";
|
|
10373
10822
|
|
|
10374
|
-
// node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs
|
|
10823
|
+
// node_modules/.pnpm/@floating-ui+utils@0.2.10/node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs
|
|
10375
10824
|
var min = Math.min;
|
|
10376
10825
|
var max = Math.max;
|
|
10377
10826
|
var round = Math.round;
|
|
@@ -10502,7 +10951,7 @@ function rectToClientRect(rect) {
|
|
|
10502
10951
|
};
|
|
10503
10952
|
}
|
|
10504
10953
|
|
|
10505
|
-
// node_modules/@floating-ui/core/dist/floating-ui.core.mjs
|
|
10954
|
+
// node_modules/.pnpm/@floating-ui+core@1.7.3/node_modules/@floating-ui/core/dist/floating-ui.core.mjs
|
|
10506
10955
|
function computeCoordsFromPlacement(_ref, placement, rtl) {
|
|
10507
10956
|
let {
|
|
10508
10957
|
reference,
|
|
@@ -10947,7 +11396,7 @@ var shift = function(options) {
|
|
|
10947
11396
|
};
|
|
10948
11397
|
};
|
|
10949
11398
|
|
|
10950
|
-
// node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs
|
|
11399
|
+
// node_modules/.pnpm/@floating-ui+utils@0.2.10/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs
|
|
10951
11400
|
function hasWindow() {
|
|
10952
11401
|
return typeof window !== "undefined";
|
|
10953
11402
|
}
|
|
@@ -11100,7 +11549,7 @@ function getFrameElement(win) {
|
|
|
11100
11549
|
return win.parent && Object.getPrototypeOf(win.parent) ? win.frameElement : null;
|
|
11101
11550
|
}
|
|
11102
11551
|
|
|
11103
|
-
// node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs
|
|
11552
|
+
// node_modules/.pnpm/@floating-ui+dom@1.7.4/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs
|
|
11104
11553
|
function getCssDimensions(element) {
|
|
11105
11554
|
const css = getComputedStyle2(element);
|
|
11106
11555
|
let width = parseFloat(css.width) || 0;
|
|
@@ -13197,7 +13646,7 @@ var Skeleton = React49.forwardRef(
|
|
|
13197
13646
|
Skeleton.displayName = "Skeleton";
|
|
13198
13647
|
var EmptyStateAction = React49.forwardRef(
|
|
13199
13648
|
({ className, children, ...props }, ref) => {
|
|
13200
|
-
return /* @__PURE__ */ jsx("div", { ref, className: cn(
|
|
13649
|
+
return /* @__PURE__ */ jsx("div", { ref, className: cn(EMPTY_STATE_TOKENS.spacing.action, className), ...props, children });
|
|
13201
13650
|
}
|
|
13202
13651
|
);
|
|
13203
13652
|
EmptyStateAction.displayName = "EmptyStateAction";
|
|
@@ -13208,9 +13657,10 @@ var EmptyStateDescription = React49.forwardRef(
|
|
|
13208
13657
|
{
|
|
13209
13658
|
ref,
|
|
13210
13659
|
className: cn(
|
|
13211
|
-
|
|
13212
|
-
|
|
13213
|
-
|
|
13660
|
+
EMPTY_STATE_TOKENS.typography.description.fontSize,
|
|
13661
|
+
EMPTY_STATE_TOKENS.typography.description.fontWeight,
|
|
13662
|
+
EMPTY_STATE_TOKENS.typography.description.color,
|
|
13663
|
+
EMPTY_STATE_TOKENS.typography.description.maxWidth,
|
|
13214
13664
|
className
|
|
13215
13665
|
),
|
|
13216
13666
|
...props,
|
|
@@ -13222,16 +13672,12 @@ var EmptyStateDescription = React49.forwardRef(
|
|
|
13222
13672
|
EmptyStateDescription.displayName = "EmptyStateDescription";
|
|
13223
13673
|
var EmptyStateIcon = React49.forwardRef(
|
|
13224
13674
|
({ children, size: size3 = "md", className, ...props }, ref) => {
|
|
13225
|
-
const iconSizeClass =
|
|
13675
|
+
const iconSizeClass = EMPTY_STATE_TOKENS.icon.size[size3];
|
|
13226
13676
|
return /* @__PURE__ */ jsx(
|
|
13227
13677
|
"div",
|
|
13228
13678
|
{
|
|
13229
13679
|
ref,
|
|
13230
|
-
className: cn(
|
|
13231
|
-
"flex items-center justify-center text-muted-foreground",
|
|
13232
|
-
iconSizeClass,
|
|
13233
|
-
className
|
|
13234
|
-
),
|
|
13680
|
+
className: cn(EMPTY_STATE_TOKENS.icon.container, iconSizeClass, className),
|
|
13235
13681
|
...props,
|
|
13236
13682
|
children
|
|
13237
13683
|
}
|
|
@@ -13246,9 +13692,9 @@ var EmptyStateTitle = React49.forwardRef(
|
|
|
13246
13692
|
{
|
|
13247
13693
|
ref,
|
|
13248
13694
|
className: cn(
|
|
13249
|
-
|
|
13250
|
-
|
|
13251
|
-
|
|
13695
|
+
EMPTY_STATE_TOKENS.typography.title.fontSize,
|
|
13696
|
+
EMPTY_STATE_TOKENS.typography.title.fontWeight,
|
|
13697
|
+
EMPTY_STATE_TOKENS.typography.title.color,
|
|
13252
13698
|
className
|
|
13253
13699
|
),
|
|
13254
13700
|
...props,
|
|
@@ -13269,7 +13715,7 @@ var EmptyState = React49.forwardRef(
|
|
|
13269
13715
|
variant: "flat",
|
|
13270
13716
|
radius: "xl",
|
|
13271
13717
|
p: "lg",
|
|
13272
|
-
className: cn(
|
|
13718
|
+
className: cn(EMPTY_STATE_TOKENS.alignment.center, className),
|
|
13273
13719
|
id: emptyStateId,
|
|
13274
13720
|
...props,
|
|
13275
13721
|
children: /* @__PURE__ */ jsx(Stack, { gap: "md", align: "center", justify: "center", children })
|
|
@@ -13286,14 +13732,16 @@ var DataListItem = React49.forwardRef(
|
|
|
13286
13732
|
({ padding = "md", className, children, ...props }, ref) => {
|
|
13287
13733
|
const paddingValue = getBaseValue(padding);
|
|
13288
13734
|
const paddingKey = paddingValue && ["sm", "md", "lg"].includes(String(paddingValue)) ? String(paddingValue) : "md";
|
|
13289
|
-
const paddingClass =
|
|
13735
|
+
const paddingClass = DATA_LIST_TOKENS.rowPadding[paddingKey];
|
|
13290
13736
|
return /* @__PURE__ */ jsx(
|
|
13291
13737
|
"div",
|
|
13292
13738
|
{
|
|
13293
13739
|
ref,
|
|
13294
13740
|
className: cn(
|
|
13295
13741
|
paddingClass,
|
|
13296
|
-
|
|
13742
|
+
DATA_LIST_TOKENS.item.layout.mobile,
|
|
13743
|
+
DATA_LIST_TOKENS.item.layout.desktop,
|
|
13744
|
+
DATA_LIST_TOKENS.item.border,
|
|
13297
13745
|
className
|
|
13298
13746
|
),
|
|
13299
13747
|
...props,
|
|
@@ -13310,9 +13758,9 @@ var DataListLabel = React49.forwardRef(
|
|
|
13310
13758
|
{
|
|
13311
13759
|
ref,
|
|
13312
13760
|
className: cn(
|
|
13313
|
-
|
|
13314
|
-
|
|
13315
|
-
|
|
13761
|
+
DATA_LIST_TOKENS.label.mobile,
|
|
13762
|
+
DATA_LIST_TOKENS.label.desktop,
|
|
13763
|
+
DATA_LIST_TOKENS.labelWidth.md,
|
|
13316
13764
|
className
|
|
13317
13765
|
),
|
|
13318
13766
|
...props,
|
|
@@ -13324,13 +13772,21 @@ var DataListLabel = React49.forwardRef(
|
|
|
13324
13772
|
DataListLabel.displayName = "DataListLabel";
|
|
13325
13773
|
var DataListValue = React49.forwardRef(
|
|
13326
13774
|
({ className, children, ...props }, ref) => {
|
|
13327
|
-
return /* @__PURE__ */ jsx(
|
|
13775
|
+
return /* @__PURE__ */ jsx(
|
|
13776
|
+
"dd",
|
|
13777
|
+
{
|
|
13778
|
+
ref,
|
|
13779
|
+
className: cn(DATA_LIST_TOKENS.value.flex, DATA_LIST_TOKENS.value.color, className),
|
|
13780
|
+
...props,
|
|
13781
|
+
children
|
|
13782
|
+
}
|
|
13783
|
+
);
|
|
13328
13784
|
}
|
|
13329
13785
|
);
|
|
13330
13786
|
DataListValue.displayName = "DataListValue";
|
|
13331
13787
|
var DataListRoot = React49.forwardRef(
|
|
13332
13788
|
({ labelWidth: _labelWidth = "md", className, children, ...props }, ref) => {
|
|
13333
|
-
return /* @__PURE__ */ jsx("dl", { ref, className: cn(
|
|
13789
|
+
return /* @__PURE__ */ jsx("dl", { ref, className: cn(DATA_LIST_TOKENS.spacing.gap, className), ...props, children });
|
|
13334
13790
|
}
|
|
13335
13791
|
);
|
|
13336
13792
|
DataListRoot.displayName = "DataListRoot";
|
|
@@ -13345,9 +13801,9 @@ var TableBody = React49.forwardRef(
|
|
|
13345
13801
|
TableBody.displayName = "TableBody";
|
|
13346
13802
|
var TableCell = React49.forwardRef(
|
|
13347
13803
|
({ align = "left", size: size3 = "md", className, ...props }, ref) => {
|
|
13348
|
-
const paddingClass =
|
|
13349
|
-
const typographyClass =
|
|
13350
|
-
const fontWeightClass =
|
|
13804
|
+
const paddingClass = TABLE_TOKENS.padding.cell[size3];
|
|
13805
|
+
const typographyClass = TABLE_TOKENS.typography.cell.fontSize;
|
|
13806
|
+
const fontWeightClass = TABLE_TOKENS.typography.cell.fontWeight;
|
|
13351
13807
|
const alignmentClasses = {
|
|
13352
13808
|
left: "text-left",
|
|
13353
13809
|
center: "text-center",
|
|
@@ -13373,7 +13829,7 @@ var TableCell = React49.forwardRef(
|
|
|
13373
13829
|
TableCell.displayName = "TableCell";
|
|
13374
13830
|
var TableEmpty = React49.forwardRef(
|
|
13375
13831
|
({ colSpan, message = "No data available", className, ...props }, ref) => {
|
|
13376
|
-
return /* @__PURE__ */ jsx("tr", { ref, className: cn(className), ...props, children: /* @__PURE__ */ jsx("td", { colSpan, className:
|
|
13832
|
+
return /* @__PURE__ */ jsx("tr", { ref, className: cn(className), ...props, children: /* @__PURE__ */ jsx("td", { colSpan, className: TABLE_TOKENS.empty.padding, children: /* @__PURE__ */ jsxs(EmptyState, { children: [
|
|
13377
13833
|
/* @__PURE__ */ jsx(EmptyStateIcon, { children: "\u{1F4ED}" }),
|
|
13378
13834
|
/* @__PURE__ */ jsx(EmptyStateTitle, { children: message })
|
|
13379
13835
|
] }) }) });
|
|
@@ -13388,13 +13844,22 @@ var TableExpandableContent = React49.forwardRef(
|
|
|
13388
13844
|
ref,
|
|
13389
13845
|
colSpan,
|
|
13390
13846
|
className: cn(
|
|
13391
|
-
|
|
13392
|
-
|
|
13393
|
-
expanded ?
|
|
13847
|
+
TABLE_TOKENS.expandable.container,
|
|
13848
|
+
TABLE_TOKENS.expandable.transition,
|
|
13849
|
+
expanded ? TABLE_TOKENS.expandable.expanded : TABLE_TOKENS.expandable.collapsed,
|
|
13394
13850
|
className
|
|
13395
13851
|
),
|
|
13396
13852
|
...props,
|
|
13397
|
-
children: /* @__PURE__ */ jsx(
|
|
13853
|
+
children: /* @__PURE__ */ jsx(
|
|
13854
|
+
"div",
|
|
13855
|
+
{
|
|
13856
|
+
className: cn(
|
|
13857
|
+
TABLE_TOKENS.expandable.padding,
|
|
13858
|
+
expanded ? TABLE_TOKENS.expandable.content.expanded : TABLE_TOKENS.expandable.content.collapsed
|
|
13859
|
+
),
|
|
13860
|
+
children
|
|
13861
|
+
}
|
|
13862
|
+
)
|
|
13398
13863
|
}
|
|
13399
13864
|
);
|
|
13400
13865
|
}
|
|
@@ -13407,9 +13872,9 @@ var TableSortIcon = React49.forwardRef(
|
|
|
13407
13872
|
{
|
|
13408
13873
|
ref,
|
|
13409
13874
|
className: cn(
|
|
13410
|
-
|
|
13411
|
-
direction === "desc" &&
|
|
13412
|
-
!direction &&
|
|
13875
|
+
TABLE_TOKENS.sortable.icon.base,
|
|
13876
|
+
direction === "desc" && TABLE_TOKENS.sortable.icon.rotated,
|
|
13877
|
+
!direction && TABLE_TOKENS.sortable.icon.inactive,
|
|
13413
13878
|
className
|
|
13414
13879
|
),
|
|
13415
13880
|
"aria-hidden": "true",
|
|
@@ -13456,9 +13921,9 @@ var TableHead = React49.forwardRef(
|
|
|
13456
13921
|
direction: nextDirection
|
|
13457
13922
|
});
|
|
13458
13923
|
}, [sortable, columnKey, sortState, setSortState]);
|
|
13459
|
-
const paddingClass =
|
|
13460
|
-
const typographyClass =
|
|
13461
|
-
const fontWeightClass =
|
|
13924
|
+
const paddingClass = TABLE_TOKENS.padding.header[size3];
|
|
13925
|
+
const typographyClass = TABLE_TOKENS.typography.header.fontSize;
|
|
13926
|
+
const fontWeightClass = TABLE_TOKENS.typography.header.fontWeight;
|
|
13462
13927
|
const alignmentClasses = {
|
|
13463
13928
|
left: "text-left",
|
|
13464
13929
|
center: "text-center",
|
|
@@ -13475,9 +13940,10 @@ var TableHead = React49.forwardRef(
|
|
|
13475
13940
|
typographyClass,
|
|
13476
13941
|
fontWeightClass,
|
|
13477
13942
|
alignmentClasses[align],
|
|
13478
|
-
|
|
13479
|
-
|
|
13480
|
-
sortable &&
|
|
13943
|
+
TABLE_TOKENS.colors.border,
|
|
13944
|
+
TABLE_TOKENS.border.bottom,
|
|
13945
|
+
sortable && TABLE_TOKENS.sortable.cursor,
|
|
13946
|
+
sortable && TABLE_TOKENS.sortable.hover,
|
|
13481
13947
|
className
|
|
13482
13948
|
),
|
|
13483
13949
|
onClick: handleSort,
|
|
@@ -13489,7 +13955,7 @@ var TableHead = React49.forwardRef(
|
|
|
13489
13955
|
})(),
|
|
13490
13956
|
role: "columnheader",
|
|
13491
13957
|
...props,
|
|
13492
|
-
children: /* @__PURE__ */ jsxs("div", { className:
|
|
13958
|
+
children: /* @__PURE__ */ jsxs("div", { className: cn(TABLE_TOKENS.sortable.container, TABLE_TOKENS.sortable.gap), children: [
|
|
13493
13959
|
children,
|
|
13494
13960
|
sortable && /* @__PURE__ */ jsx(TableSortIcon, { direction: sortDirection })
|
|
13495
13961
|
] })
|
|
@@ -13504,7 +13970,7 @@ var TableHeader = React49.forwardRef(
|
|
|
13504
13970
|
"thead",
|
|
13505
13971
|
{
|
|
13506
13972
|
ref,
|
|
13507
|
-
className: cn(sticky &&
|
|
13973
|
+
className: cn(sticky && TABLE_TOKENS.sticky.header, className),
|
|
13508
13974
|
role: "rowgroup",
|
|
13509
13975
|
...props
|
|
13510
13976
|
}
|
|
@@ -13514,7 +13980,7 @@ var TableHeader = React49.forwardRef(
|
|
|
13514
13980
|
TableHeader.displayName = "TableHeader";
|
|
13515
13981
|
var TableLoadingState = React49.forwardRef(
|
|
13516
13982
|
({ colSpan, rows = 5, className, ...props }, ref) => {
|
|
13517
|
-
return /* @__PURE__ */ jsx(Fragment, { children: Array.from({ length: rows }).map((_, index2) => /* @__PURE__ */ jsx("tr", { ref: index2 === 0 ? ref : void 0, className: cn(className), ...props, children: Array.from({ length: colSpan }).map((_2, cellIndex) => /* @__PURE__ */ jsx("td", { className:
|
|
13983
|
+
return /* @__PURE__ */ jsx(Fragment, { children: Array.from({ length: rows }).map((_, index2) => /* @__PURE__ */ jsx("tr", { ref: index2 === 0 ? ref : void 0, className: cn(className), ...props, children: Array.from({ length: colSpan }).map((_2, cellIndex) => /* @__PURE__ */ jsx("td", { className: TABLE_TOKENS.loading.cellPadding, children: /* @__PURE__ */ jsx(Skeleton, { variant: "text", className: TABLE_TOKENS.loading.skeletonWidth }) }, cellIndex)) }, index2)) });
|
|
13518
13984
|
}
|
|
13519
13985
|
);
|
|
13520
13986
|
TableLoadingState.displayName = "TableLoadingState";
|
|
@@ -13532,11 +13998,11 @@ var TableRow = React49.forwardRef(
|
|
|
13532
13998
|
{
|
|
13533
13999
|
ref,
|
|
13534
14000
|
className: cn(
|
|
13535
|
-
|
|
13536
|
-
|
|
13537
|
-
|
|
13538
|
-
selected &&
|
|
13539
|
-
expandable &&
|
|
14001
|
+
TABLE_TOKENS.colors.border,
|
|
14002
|
+
TABLE_TOKENS.border.bottom,
|
|
14003
|
+
TABLE_TOKENS.colors.rowHover,
|
|
14004
|
+
selected && TABLE_TOKENS.colors.rowSelected,
|
|
14005
|
+
expandable && TABLE_TOKENS.expandable.cursor,
|
|
13540
14006
|
className
|
|
13541
14007
|
),
|
|
13542
14008
|
"aria-expanded": expandable ? expanded : void 0,
|
|
@@ -13597,13 +14063,13 @@ function TableRoot({
|
|
|
13597
14063
|
}),
|
|
13598
14064
|
[sortState, expandedRows, toggleRow, expandable, renderExpandableContent]
|
|
13599
14065
|
);
|
|
13600
|
-
return /* @__PURE__ */ jsx(TableContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsx("div", { className:
|
|
14066
|
+
return /* @__PURE__ */ jsx(TableContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsx("div", { className: TABLE_TOKENS.layout.overflow, children: /* @__PURE__ */ jsx(
|
|
13601
14067
|
"table",
|
|
13602
14068
|
{
|
|
13603
14069
|
className: cn(
|
|
13604
|
-
|
|
13605
|
-
|
|
13606
|
-
|
|
14070
|
+
TABLE_TOKENS.layout.table,
|
|
14071
|
+
TABLE_TOKENS.radius.default,
|
|
14072
|
+
TABLE_TOKENS.shadow.subtle,
|
|
13607
14073
|
className
|
|
13608
14074
|
),
|
|
13609
14075
|
role: "table",
|
|
@@ -15170,8 +15636,8 @@ var artistCardGenresVariants = cva(
|
|
|
15170
15636
|
}
|
|
15171
15637
|
);
|
|
15172
15638
|
var artistCardFooterBorderVariants = cva(
|
|
15173
|
-
// Base classes - border top, spacing
|
|
15174
|
-
|
|
15639
|
+
// Base classes - border top from ARTIST_TOKENS, spacing from DOMAIN_TOKENS
|
|
15640
|
+
ARTIST_TOKENS.footer.border.top,
|
|
15175
15641
|
{
|
|
15176
15642
|
variants: {
|
|
15177
15643
|
size: {
|
|
@@ -15231,37 +15697,49 @@ var ArtistCard = React49.forwardRef(
|
|
|
15231
15697
|
...props,
|
|
15232
15698
|
children: [
|
|
15233
15699
|
featured && popularBadgeText && /* @__PURE__ */ jsx("div", { className: artistCardBadgeVariants({ size: size3 }), children: /* @__PURE__ */ jsx("span", { className: artistCardBadgeSurfaceVariants({ size: size3, variant: "featured" }), children: popularBadgeText }) }),
|
|
15234
|
-
showImage && /* @__PURE__ */ jsx(CardBaseImageWrapper, { size: size3, children: /* @__PURE__ */ jsxs(
|
|
15235
|
-
|
|
15236
|
-
|
|
15237
|
-
|
|
15238
|
-
|
|
15239
|
-
|
|
15240
|
-
|
|
15241
|
-
|
|
15242
|
-
|
|
15243
|
-
|
|
15244
|
-
|
|
15245
|
-
|
|
15246
|
-
|
|
15247
|
-
|
|
15248
|
-
|
|
15249
|
-
|
|
15250
|
-
|
|
15251
|
-
|
|
15252
|
-
|
|
15253
|
-
|
|
15700
|
+
showImage && /* @__PURE__ */ jsx(CardBaseImageWrapper, { size: size3, children: /* @__PURE__ */ jsxs(
|
|
15701
|
+
"div",
|
|
15702
|
+
{
|
|
15703
|
+
className: cn(
|
|
15704
|
+
ARTIST_TOKENS.image.container.layout,
|
|
15705
|
+
DOMAIN_TOKENS.image.placeholder.gradient
|
|
15706
|
+
),
|
|
15707
|
+
children: [
|
|
15708
|
+
imageUrl ? /* @__PURE__ */ jsx(
|
|
15709
|
+
"img",
|
|
15710
|
+
{
|
|
15711
|
+
src: imageUrl,
|
|
15712
|
+
alt: name,
|
|
15713
|
+
className: cn(
|
|
15714
|
+
ARTIST_TOKENS.image.sizing.full,
|
|
15715
|
+
artistCardImageTransformVariants({ size: size3 })
|
|
15716
|
+
)
|
|
15717
|
+
}
|
|
15718
|
+
) : /* @__PURE__ */ jsx("div", { className: ARTIST_TOKENS.image.placeholder.container, children: /* @__PURE__ */ jsx(
|
|
15719
|
+
Icon2,
|
|
15720
|
+
{
|
|
15721
|
+
name: "info",
|
|
15722
|
+
size: "xl",
|
|
15723
|
+
color: "muted",
|
|
15724
|
+
className: ICON_TOKENS.sizes["4xl"],
|
|
15725
|
+
"aria-hidden": "true"
|
|
15726
|
+
}
|
|
15727
|
+
) }),
|
|
15728
|
+
/* @__PURE__ */ jsx("div", { className: artistCardImageOverlayVariants({ size: size3 }) })
|
|
15729
|
+
]
|
|
15730
|
+
}
|
|
15731
|
+
) }),
|
|
15254
15732
|
/* @__PURE__ */ jsxs(CardBaseContentWrapper, { size: size3, children: [
|
|
15255
15733
|
/* @__PURE__ */ jsx(
|
|
15256
15734
|
Heading,
|
|
15257
15735
|
{
|
|
15258
15736
|
level: 3,
|
|
15259
15737
|
className: cn(
|
|
15260
|
-
|
|
15738
|
+
DOMAIN_TOKENS.text.lineClamp.two,
|
|
15261
15739
|
TEXT_TOKENS.fontSize.lg,
|
|
15262
15740
|
TEXT_TOKENS.fontWeight.bold,
|
|
15263
15741
|
MOTION_TOKENS.transition.colors,
|
|
15264
|
-
|
|
15742
|
+
DOMAIN_TOKENS.text.hover.primary,
|
|
15265
15743
|
size3 === "compact" ? DOMAIN_TOKENS.spacing.section.titleToSubtitle : DOMAIN_TOKENS.spacing.section.subtitleToMetadata
|
|
15266
15744
|
),
|
|
15267
15745
|
children: href ? /* @__PURE__ */ jsx(Link, { href, variant: "ghost", children: name }) : name
|
|
@@ -15273,7 +15751,7 @@ var ArtistCard = React49.forwardRef(
|
|
|
15273
15751
|
size: "sm",
|
|
15274
15752
|
variant: "muted",
|
|
15275
15753
|
className: cn(
|
|
15276
|
-
|
|
15754
|
+
DOMAIN_TOKENS.text.lineClamp.two,
|
|
15277
15755
|
size3 === "compact" ? DOMAIN_TOKENS.spacing.section.titleToSubtitle : DOMAIN_TOKENS.spacing.section.subtitleToMetadata
|
|
15278
15756
|
),
|
|
15279
15757
|
children: description
|
|
@@ -15335,16 +15813,16 @@ var ArtistCard = React49.forwardRef(
|
|
|
15335
15813
|
}
|
|
15336
15814
|
);
|
|
15337
15815
|
ArtistCard.displayName = "ArtistCard";
|
|
15338
|
-
var
|
|
15816
|
+
var categoryCardBadgeVariants = cva(
|
|
15339
15817
|
// Base classes - absolute positioning, z-index
|
|
15340
15818
|
"absolute z-10",
|
|
15341
15819
|
{
|
|
15342
15820
|
variants: {
|
|
15343
15821
|
size: {
|
|
15344
15822
|
default: DOMAIN_TOKENS.badges.position.default,
|
|
15345
|
-
// Default positioning -
|
|
15823
|
+
// Default positioning - references semanticSpacing.md (16px)
|
|
15346
15824
|
compact: DOMAIN_TOKENS.badges.position.compact
|
|
15347
|
-
// Compact positioning -
|
|
15825
|
+
// Compact positioning - references semanticSpacing.sm (8px)
|
|
15348
15826
|
}
|
|
15349
15827
|
},
|
|
15350
15828
|
defaultVariants: {
|
|
@@ -15352,9 +15830,10 @@ var eventCardBadgeVariants = cva(
|
|
|
15352
15830
|
}
|
|
15353
15831
|
}
|
|
15354
15832
|
);
|
|
15355
|
-
var
|
|
15833
|
+
var categoryCardBadgeSurfaceVariants = cva(
|
|
15356
15834
|
// Base classes - flex layout, items center, badge styling
|
|
15357
|
-
|
|
15835
|
+
// Uses DOMAIN_TOKENS for badge-specific styles, TEXT_TOKENS for typography
|
|
15836
|
+
`inline-flex items-center ${DOMAIN_TOKENS.badges.radius} ${DOMAIN_TOKENS.badges.shadow} ${DOMAIN_TOKENS.badges.size.sm} ${DOMAIN_TOKENS.badges.text.color} ${TEXT_TOKENS.fontSize.xs} ${TEXT_TOKENS.fontWeight.semibold}`,
|
|
15358
15837
|
{
|
|
15359
15838
|
variants: {
|
|
15360
15839
|
variant: {
|
|
@@ -15367,130 +15846,14 @@ var eventCardBadgeSurfaceVariants = cva(
|
|
|
15367
15846
|
}
|
|
15368
15847
|
}
|
|
15369
15848
|
);
|
|
15370
|
-
var
|
|
15371
|
-
// Base classes - flex column, metadata spacing
|
|
15372
|
-
`flex flex-col ${DOMAIN_TOKENS.metadata.spacing.vertical}`,
|
|
15373
|
-
{
|
|
15374
|
-
variants: {
|
|
15375
|
-
size: {
|
|
15376
|
-
default: "",
|
|
15377
|
-
compact: ""
|
|
15378
|
-
}
|
|
15379
|
-
},
|
|
15380
|
-
defaultVariants: {
|
|
15381
|
-
size: "default"
|
|
15382
|
-
}
|
|
15383
|
-
}
|
|
15384
|
-
);
|
|
15385
|
-
var eventCardMetadataItemVariants = cva(
|
|
15386
|
-
// Base classes - flex items center, metadata spacing and text
|
|
15387
|
-
`flex items-center ${DOMAIN_TOKENS.metadata.spacing.horizontal} ${DOMAIN_TOKENS.metadata.text.secondary} ${TEXT_TOKENS.fontSize.xs}`,
|
|
15388
|
-
{
|
|
15389
|
-
variants: {
|
|
15390
|
-
size: {
|
|
15391
|
-
default: "",
|
|
15392
|
-
compact: ""
|
|
15393
|
-
}
|
|
15394
|
-
},
|
|
15395
|
-
defaultVariants: {
|
|
15396
|
-
size: "default"
|
|
15397
|
-
}
|
|
15398
|
-
}
|
|
15399
|
-
);
|
|
15400
|
-
var eventCardMetadataIconVariants = cva(
|
|
15401
|
-
// Base classes - icon size and color
|
|
15402
|
-
`${ICON_TOKENS.sizes.md} ${ICON_TOKENS.colors.muted}`,
|
|
15403
|
-
{
|
|
15404
|
-
variants: {
|
|
15405
|
-
size: {
|
|
15406
|
-
default: "",
|
|
15407
|
-
compact: ""
|
|
15408
|
-
}
|
|
15409
|
-
},
|
|
15410
|
-
defaultVariants: {
|
|
15411
|
-
size: "default"
|
|
15412
|
-
}
|
|
15413
|
-
}
|
|
15414
|
-
);
|
|
15415
|
-
var eventCardFooterVariants = cva(
|
|
15416
|
-
// Base classes - border top, spacing
|
|
15417
|
-
"border-t border-border",
|
|
15418
|
-
{
|
|
15419
|
-
variants: {
|
|
15420
|
-
size: {
|
|
15421
|
-
default: DOMAIN_TOKENS.spacing.footer.paddingTopDefault,
|
|
15422
|
-
// Default padding top - references semanticSpacing.sm (8px) via Tailwind
|
|
15423
|
-
compact: DOMAIN_TOKENS.spacing.footer.paddingTopCompact
|
|
15424
|
-
// Compact padding top - references semanticSpacing.xs (4px) via Tailwind
|
|
15425
|
-
}
|
|
15426
|
-
},
|
|
15427
|
-
defaultVariants: {
|
|
15428
|
-
size: "default"
|
|
15429
|
-
}
|
|
15430
|
-
}
|
|
15431
|
-
);
|
|
15432
|
-
var eventCardTicketButtonVariants = cva(
|
|
15433
|
-
// Base classes - flex layout, badge gradient, motion
|
|
15434
|
-
`inline-flex items-center justify-center ${DOMAIN_TOKENS.badges.surface.featured} ${DOMAIN_TOKENS.badges.text.color} ${DOMAIN_TOKENS.badges.shadow} ${DOMAIN_TOKENS.motion.hover.transition} font-semibold transform`,
|
|
15435
|
-
{
|
|
15436
|
-
variants: {
|
|
15437
|
-
size: {
|
|
15438
|
-
default: DOMAIN_TOKENS.spacing.button.paddingDefault,
|
|
15439
|
-
// Default padding - references semanticSpacing.md (16px) horizontal, xs (4px) vertical via Tailwind
|
|
15440
|
-
compact: DOMAIN_TOKENS.spacing.button.paddingCompact
|
|
15441
|
-
// Compact padding - references semanticSpacing.sm (8px) horizontal, xs (4px) vertical via Tailwind
|
|
15442
|
-
}
|
|
15443
|
-
},
|
|
15444
|
-
defaultVariants: {
|
|
15445
|
-
size: "default"
|
|
15446
|
-
}
|
|
15447
|
-
}
|
|
15448
|
-
);
|
|
15449
|
-
var eventCardTicketButtonIconVariants = cva(
|
|
15450
|
-
// Base classes - icon size and spacing
|
|
15451
|
-
`${ICON_TOKENS.sizes.md} ${DOMAIN_TOKENS.spacing.button.iconMarginLeft}`,
|
|
15452
|
-
{
|
|
15453
|
-
variants: {
|
|
15454
|
-
size: {
|
|
15455
|
-
default: "",
|
|
15456
|
-
compact: ""
|
|
15457
|
-
}
|
|
15458
|
-
},
|
|
15459
|
-
defaultVariants: {
|
|
15460
|
-
size: "default"
|
|
15461
|
-
}
|
|
15462
|
-
}
|
|
15463
|
-
);
|
|
15464
|
-
var eventCardPriceVariants = cva(
|
|
15465
|
-
// Base classes - price gradient text
|
|
15466
|
-
`bg-gradient-to-r from-accent-500 to-primary-600 bg-clip-text text-transparent`,
|
|
15467
|
-
{
|
|
15468
|
-
variants: {
|
|
15469
|
-
size: {
|
|
15470
|
-
default: TEXT_TOKENS.fontSize.lg,
|
|
15471
|
-
// Default size
|
|
15472
|
-
compact: TEXT_TOKENS.fontSize.md
|
|
15473
|
-
// Compact size
|
|
15474
|
-
}
|
|
15475
|
-
},
|
|
15476
|
-
defaultVariants: {
|
|
15477
|
-
size: "default"
|
|
15478
|
-
}
|
|
15479
|
-
}
|
|
15480
|
-
);
|
|
15481
|
-
var EventCard = React49.forwardRef(
|
|
15849
|
+
var CategoryCard = React49.forwardRef(
|
|
15482
15850
|
({
|
|
15483
15851
|
title,
|
|
15484
15852
|
description,
|
|
15485
|
-
date,
|
|
15486
|
-
venueName,
|
|
15487
|
-
price,
|
|
15488
15853
|
imageUrl,
|
|
15489
15854
|
href,
|
|
15490
|
-
ticketUrl,
|
|
15491
15855
|
featured = false,
|
|
15492
15856
|
showImage = true,
|
|
15493
|
-
getTicketsLabel,
|
|
15494
15857
|
featuredBadgeText,
|
|
15495
15858
|
size: size3 = "default",
|
|
15496
15859
|
variant,
|
|
@@ -15513,46 +15876,57 @@ var EventCard = React49.forwardRef(
|
|
|
15513
15876
|
className: cn("group relative", className),
|
|
15514
15877
|
...props,
|
|
15515
15878
|
children: [
|
|
15516
|
-
featured && featuredBadgeText && /* @__PURE__ */ jsx("div", { className:
|
|
15517
|
-
showImage && /* @__PURE__ */ jsx(CardBaseImageWrapper, { size: size3, children: /* @__PURE__ */ jsxs(
|
|
15518
|
-
|
|
15519
|
-
|
|
15520
|
-
|
|
15521
|
-
|
|
15522
|
-
|
|
15523
|
-
|
|
15524
|
-
|
|
15525
|
-
|
|
15526
|
-
|
|
15527
|
-
|
|
15528
|
-
|
|
15529
|
-
|
|
15530
|
-
|
|
15531
|
-
|
|
15532
|
-
|
|
15533
|
-
|
|
15534
|
-
|
|
15535
|
-
|
|
15536
|
-
"
|
|
15537
|
-
|
|
15538
|
-
|
|
15539
|
-
|
|
15540
|
-
|
|
15541
|
-
|
|
15542
|
-
|
|
15543
|
-
|
|
15544
|
-
|
|
15879
|
+
featured && featuredBadgeText && /* @__PURE__ */ jsx("div", { className: categoryCardBadgeVariants({ size: size3 }), children: /* @__PURE__ */ jsx("span", { className: categoryCardBadgeSurfaceVariants({ variant: "featured" }), children: featuredBadgeText }) }),
|
|
15880
|
+
showImage && /* @__PURE__ */ jsx(CardBaseImageWrapper, { size: size3, children: /* @__PURE__ */ jsxs(
|
|
15881
|
+
"div",
|
|
15882
|
+
{
|
|
15883
|
+
className: cn(
|
|
15884
|
+
"relative w-full overflow-hidden",
|
|
15885
|
+
DOMAIN_TOKENS.image.placeholder.gradient
|
|
15886
|
+
),
|
|
15887
|
+
children: [
|
|
15888
|
+
imageUrl ? /* @__PURE__ */ jsx(
|
|
15889
|
+
"img",
|
|
15890
|
+
{
|
|
15891
|
+
src: imageUrl,
|
|
15892
|
+
alt: title,
|
|
15893
|
+
className: cn(
|
|
15894
|
+
"h-full w-full object-cover",
|
|
15895
|
+
DOMAIN_TOKENS.motion.hover.transition,
|
|
15896
|
+
DOMAIN_TOKENS.motion.hover.scale
|
|
15897
|
+
)
|
|
15898
|
+
}
|
|
15899
|
+
) : /* @__PURE__ */ jsx("div", { className: "flex h-full w-full items-center justify-center", children: /* @__PURE__ */ jsx(
|
|
15900
|
+
Icon2,
|
|
15901
|
+
{
|
|
15902
|
+
name: "info",
|
|
15903
|
+
className: cn(ICON_TOKENS.sizes["4xl"], ICON_TOKENS.colors.muted),
|
|
15904
|
+
"aria-hidden": "true"
|
|
15905
|
+
}
|
|
15906
|
+
) }),
|
|
15907
|
+
/* @__PURE__ */ jsx(
|
|
15908
|
+
"div",
|
|
15909
|
+
{
|
|
15910
|
+
className: cn(
|
|
15911
|
+
"absolute inset-0 opacity-0 group-hover:opacity-100",
|
|
15912
|
+
MOTION_TOKENS.transition.opacity,
|
|
15913
|
+
MOTION_TOKENS.duration.normal,
|
|
15914
|
+
DOMAIN_TOKENS.image.overlay.gradient
|
|
15915
|
+
)
|
|
15916
|
+
}
|
|
15545
15917
|
)
|
|
15546
|
-
|
|
15547
|
-
|
|
15548
|
-
|
|
15918
|
+
]
|
|
15919
|
+
}
|
|
15920
|
+
) }),
|
|
15549
15921
|
/* @__PURE__ */ jsxs(CardBaseContentWrapper, { size: size3, children: [
|
|
15550
15922
|
/* @__PURE__ */ jsx(
|
|
15551
15923
|
Heading,
|
|
15552
15924
|
{
|
|
15553
15925
|
level: 3,
|
|
15554
15926
|
className: cn(
|
|
15555
|
-
|
|
15927
|
+
DOMAIN_TOKENS.text.lineClamp.two,
|
|
15928
|
+
MOTION_TOKENS.transition.colors,
|
|
15929
|
+
DOMAIN_TOKENS.text.hover.primary,
|
|
15556
15930
|
TEXT_TOKENS.fontSize.lg,
|
|
15557
15931
|
TEXT_TOKENS.fontWeight.bold,
|
|
15558
15932
|
DOMAIN_TOKENS.spacing.section.titleToSubtitle
|
|
@@ -15564,47 +15938,21 @@ var EventCard = React49.forwardRef(
|
|
|
15564
15938
|
Text,
|
|
15565
15939
|
{
|
|
15566
15940
|
size: "sm",
|
|
15567
|
-
|
|
15941
|
+
variant: "muted",
|
|
15568
15942
|
className: cn(
|
|
15569
|
-
|
|
15943
|
+
DOMAIN_TOKENS.text.lineClamp.two,
|
|
15570
15944
|
size3 === "compact" ? DOMAIN_TOKENS.spacing.section.titleToSubtitle : DOMAIN_TOKENS.spacing.section.subtitleToMetadata
|
|
15571
15945
|
),
|
|
15572
15946
|
children: description
|
|
15573
15947
|
}
|
|
15574
|
-
)
|
|
15575
|
-
|
|
15576
|
-
date && /* @__PURE__ */ jsxs("div", { className: eventCardMetadataItemVariants({ size: size3 }), children: [
|
|
15577
|
-
/* @__PURE__ */ jsx(IconCalendar, { className: eventCardMetadataIconVariants({ size: size3 }) }),
|
|
15578
|
-
/* @__PURE__ */ jsx(Text, { size: "xs", muted: true, children: date })
|
|
15579
|
-
] }),
|
|
15580
|
-
venueName && /* @__PURE__ */ jsxs("div", { className: eventCardMetadataItemVariants({ size: size3 }), children: [
|
|
15581
|
-
/* @__PURE__ */ jsx(IconLocation, { className: eventCardMetadataIconVariants({ size: size3 }) }),
|
|
15582
|
-
/* @__PURE__ */ jsx(Text, { size: "xs", muted: true, className: "line-clamp-1", children: venueName })
|
|
15583
|
-
] })
|
|
15584
|
-
] })
|
|
15585
|
-
] }),
|
|
15586
|
-
/* @__PURE__ */ jsx(CardBaseFooterWrapper, { size: size3, children: /* @__PURE__ */ jsxs("div", { className: cn("w-full", eventCardFooterVariants({ size: size3 })), children: [
|
|
15587
|
-
ticketUrl && /* @__PURE__ */ jsxs(
|
|
15588
|
-
Link,
|
|
15589
|
-
{
|
|
15590
|
-
href: ticketUrl,
|
|
15591
|
-
className: cn("w-full", eventCardTicketButtonVariants({ size: size3 })),
|
|
15592
|
-
target: "_blank",
|
|
15593
|
-
rel: "noopener noreferrer",
|
|
15594
|
-
children: [
|
|
15595
|
-
getTicketsLabel,
|
|
15596
|
-
/* @__PURE__ */ jsx(IconArrowRight, { className: eventCardTicketButtonIconVariants({ size: size3 }) })
|
|
15597
|
-
]
|
|
15598
|
-
}
|
|
15599
|
-
),
|
|
15600
|
-
!ticketUrl && price && /* @__PURE__ */ jsx("div", { className: "text-right", children: /* @__PURE__ */ jsx(Text, { size: size3 === "compact" ? "md" : "lg", weight: "bold", children: /* @__PURE__ */ jsx("span", { className: eventCardPriceVariants({ size: size3 }), children: price }) }) })
|
|
15601
|
-
] }) })
|
|
15948
|
+
)
|
|
15949
|
+
] })
|
|
15602
15950
|
]
|
|
15603
15951
|
}
|
|
15604
15952
|
) });
|
|
15605
15953
|
}
|
|
15606
15954
|
);
|
|
15607
|
-
|
|
15955
|
+
CategoryCard.displayName = "CategoryCard";
|
|
15608
15956
|
var promoCardBadgeVariants = cva(
|
|
15609
15957
|
// Base classes - absolute positioning, z-index
|
|
15610
15958
|
"absolute z-10",
|
|
@@ -15638,14 +15986,14 @@ var promoCardBadgeSurfaceVariants = cva(
|
|
|
15638
15986
|
}
|
|
15639
15987
|
);
|
|
15640
15988
|
var promoCardCtaButtonVariants = cva(
|
|
15641
|
-
// Base classes - flex layout, button tokens, motion
|
|
15642
|
-
`inline-flex items-center justify-center ${
|
|
15989
|
+
// Base classes - flex layout, CTA button tokens, motion
|
|
15990
|
+
`inline-flex items-center justify-center ${DOMAIN_TOKENS.cta.button.radius} ${DOMAIN_TOKENS.cta.button.variant.primary.background} ${DOMAIN_TOKENS.cta.button.variant.primary.text} ${DOMAIN_TOKENS.cta.button.shadow.primary} ${DOMAIN_TOKENS.cta.button.variant.primary.hover} ${DOMAIN_TOKENS.cta.button.transition.colors} font-semibold`,
|
|
15643
15991
|
{
|
|
15644
15992
|
variants: {
|
|
15645
15993
|
size: {
|
|
15646
|
-
default: `${
|
|
15994
|
+
default: `${DOMAIN_TOKENS.cta.button.height.md} ${DOMAIN_TOKENS.cta.button.padding.horizontal.md} ${DOMAIN_TOKENS.cta.button.padding.vertical.sm} ${DOMAIN_TOKENS.cta.button.fontSize.md}`,
|
|
15647
15995
|
// Default size - uses md height and padding
|
|
15648
|
-
compact: `${
|
|
15996
|
+
compact: `${DOMAIN_TOKENS.cta.button.height.sm} ${DOMAIN_TOKENS.cta.button.padding.horizontal.sm} ${DOMAIN_TOKENS.cta.button.padding.vertical.sm} ${DOMAIN_TOKENS.cta.button.fontSize.sm}`
|
|
15649
15997
|
// Compact size - uses sm height and padding
|
|
15650
15998
|
}
|
|
15651
15999
|
},
|
|
@@ -15777,6 +16125,22 @@ var PromoCard = React49.forwardRef(
|
|
|
15777
16125
|
}
|
|
15778
16126
|
);
|
|
15779
16127
|
PromoCard.displayName = "PromoCard";
|
|
16128
|
+
var ticketCardVariants = cva("group relative", {
|
|
16129
|
+
variants: {
|
|
16130
|
+
size: {
|
|
16131
|
+
default: "",
|
|
16132
|
+
compact: ""
|
|
16133
|
+
},
|
|
16134
|
+
variant: {
|
|
16135
|
+
default: "",
|
|
16136
|
+
featured: ""
|
|
16137
|
+
}
|
|
16138
|
+
},
|
|
16139
|
+
defaultVariants: {
|
|
16140
|
+
size: "default",
|
|
16141
|
+
variant: "default"
|
|
16142
|
+
}
|
|
16143
|
+
});
|
|
15780
16144
|
var ticketCardBadgeVariants = cva(
|
|
15781
16145
|
// Base classes - absolute positioning, z-index
|
|
15782
16146
|
"absolute z-10",
|
|
@@ -15784,7 +16148,7 @@ var ticketCardBadgeVariants = cva(
|
|
|
15784
16148
|
variants: {
|
|
15785
16149
|
size: {
|
|
15786
16150
|
default: DOMAIN_TOKENS.badges.position.default,
|
|
15787
|
-
// Default positioning - maps to semanticSpacing.md (
|
|
16151
|
+
// Default positioning - maps to semanticSpacing.md (16px)
|
|
15788
16152
|
compact: DOMAIN_TOKENS.badges.position.compact
|
|
15789
16153
|
// Compact positioning - maps to semanticSpacing.sm (8px)
|
|
15790
16154
|
}
|
|
@@ -15796,7 +16160,7 @@ var ticketCardBadgeVariants = cva(
|
|
|
15796
16160
|
);
|
|
15797
16161
|
var ticketCardBadgeSurfaceVariants = cva(
|
|
15798
16162
|
// Base classes - flex layout, items center, badge styling
|
|
15799
|
-
`inline-flex items-center ${DOMAIN_TOKENS.badges.radius} ${DOMAIN_TOKENS.badges.shadow} ${DOMAIN_TOKENS.badges.size.sm} ${DOMAIN_TOKENS.badges.text.color} ${TEXT_TOKENS.fontSize.xs}
|
|
16163
|
+
`inline-flex items-center ${DOMAIN_TOKENS.badges.radius} ${DOMAIN_TOKENS.badges.shadow} ${DOMAIN_TOKENS.badges.size.sm} ${DOMAIN_TOKENS.badges.text.color} ${TEXT_TOKENS.fontSize.xs} ${TEXT_TOKENS.fontWeight.semibold}`,
|
|
15800
16164
|
{
|
|
15801
16165
|
variants: {
|
|
15802
16166
|
variant: {
|
|
@@ -15813,6 +16177,45 @@ var ticketCardBadgeSurfaceVariants = cva(
|
|
|
15813
16177
|
}
|
|
15814
16178
|
}
|
|
15815
16179
|
);
|
|
16180
|
+
var ticketCardTitleVariants = cva(
|
|
16181
|
+
`${TEXT_TOKENS.fontSize.lg} ${TEXT_TOKENS.fontWeight.bold} ${MOTION_TOKENS.transition.colors} ${DOMAIN_TOKENS.text.hover.primary} ${DOMAIN_TOKENS.text.lineClamp.two}`,
|
|
16182
|
+
{
|
|
16183
|
+
variants: {
|
|
16184
|
+
size: {
|
|
16185
|
+
default: DOMAIN_TOKENS.spacing.section.subtitleToMetadata,
|
|
16186
|
+
compact: DOMAIN_TOKENS.spacing.section.titleToSubtitle
|
|
16187
|
+
}
|
|
16188
|
+
},
|
|
16189
|
+
defaultVariants: {
|
|
16190
|
+
size: "default"
|
|
16191
|
+
}
|
|
16192
|
+
}
|
|
16193
|
+
);
|
|
16194
|
+
var ticketCardDateVariants = cva(
|
|
16195
|
+
`${DOMAIN_TOKENS.metadata.text.secondary} ${TEXT_TOKENS.fontSize.sm} ${MOTION_TOKENS.transition.colors}`,
|
|
16196
|
+
{
|
|
16197
|
+
variants: {
|
|
16198
|
+
size: {
|
|
16199
|
+
default: DOMAIN_TOKENS.spacing.section.titleToSubtitle,
|
|
16200
|
+
compact: `${DOMAIN_TOKENS.spacing.section.titleToSubtitle} ${TEXT_TOKENS.fontSize.xs}`
|
|
16201
|
+
}
|
|
16202
|
+
},
|
|
16203
|
+
defaultVariants: {
|
|
16204
|
+
size: "default"
|
|
16205
|
+
}
|
|
16206
|
+
}
|
|
16207
|
+
);
|
|
16208
|
+
var ticketCardDescriptionVariants = cva(`${DOMAIN_TOKENS.text.lineClamp.two}`, {
|
|
16209
|
+
variants: {
|
|
16210
|
+
size: {
|
|
16211
|
+
default: DOMAIN_TOKENS.spacing.section.subtitleToMetadata,
|
|
16212
|
+
compact: DOMAIN_TOKENS.spacing.section.titleToSubtitle
|
|
16213
|
+
}
|
|
16214
|
+
},
|
|
16215
|
+
defaultVariants: {
|
|
16216
|
+
size: "default"
|
|
16217
|
+
}
|
|
16218
|
+
});
|
|
15816
16219
|
var ticketCardPriceCapacityContainerVariants = cva(
|
|
15817
16220
|
// Base classes - flex layout, price/capacity spacing
|
|
15818
16221
|
`flex items-center ${DOMAIN_TOKENS.priceCapacity.spacing}`,
|
|
@@ -15830,7 +16233,7 @@ var ticketCardPriceCapacityContainerVariants = cva(
|
|
|
15830
16233
|
);
|
|
15831
16234
|
var ticketCardPriceVariants = cva(
|
|
15832
16235
|
// Base classes - price text color
|
|
15833
|
-
`${DOMAIN_TOKENS.priceCapacity.text.primary}
|
|
16236
|
+
`${DOMAIN_TOKENS.priceCapacity.text.primary} ${TEXT_TOKENS.fontWeight.bold}`,
|
|
15834
16237
|
{
|
|
15835
16238
|
variants: {
|
|
15836
16239
|
size: {
|
|
@@ -15864,7 +16267,7 @@ var ticketCardCapacityVariants = cva(
|
|
|
15864
16267
|
);
|
|
15865
16268
|
var ticketCardAvailabilityVariants = cva(
|
|
15866
16269
|
// Base classes - availability indicator styling
|
|
15867
|
-
`inline-flex items-center ${DOMAIN_TOKENS.metadata.spacing.horizontal} ${TEXT_TOKENS.fontSize.xs}
|
|
16270
|
+
`inline-flex items-center ${DOMAIN_TOKENS.metadata.spacing.horizontal} ${TEXT_TOKENS.fontSize.xs} ${TEXT_TOKENS.fontWeight.medium}`,
|
|
15868
16271
|
{
|
|
15869
16272
|
variants: {
|
|
15870
16273
|
availability: {
|
|
@@ -15897,7 +16300,7 @@ var ticketCardFooterVariants = cva(
|
|
|
15897
16300
|
);
|
|
15898
16301
|
var ticketCardPurchaseButtonVariants = cva(
|
|
15899
16302
|
// Base classes - flex layout, badge gradient, motion
|
|
15900
|
-
`inline-flex items-center justify-center ${DOMAIN_TOKENS.badges.surface.featured} ${DOMAIN_TOKENS.badges.text.color} ${DOMAIN_TOKENS.badges.shadow} ${DOMAIN_TOKENS.motion.hover.transition}
|
|
16303
|
+
`inline-flex items-center justify-center ${DOMAIN_TOKENS.badges.surface.featured} ${DOMAIN_TOKENS.badges.text.color} ${DOMAIN_TOKENS.badges.shadow} ${DOMAIN_TOKENS.motion.hover.transition} ${TEXT_TOKENS.fontWeight.semibold} transform`,
|
|
15901
16304
|
{
|
|
15902
16305
|
variants: {
|
|
15903
16306
|
size: {
|
|
@@ -15932,9 +16335,38 @@ var ticketCardPurchaseButtonIconVariants = cva(
|
|
|
15932
16335
|
}
|
|
15933
16336
|
}
|
|
15934
16337
|
);
|
|
16338
|
+
var ticketCardImageOverlayVariants = cva(
|
|
16339
|
+
`absolute inset-0 ${DOMAIN_TOKENS.image.overlay.gradient} opacity-0 ${MOTION_TOKENS.transition.opacity} ${MOTION_TOKENS.duration.normal} group-hover:opacity-100`,
|
|
16340
|
+
{
|
|
16341
|
+
variants: {
|
|
16342
|
+
size: {
|
|
16343
|
+
default: "",
|
|
16344
|
+
compact: ""
|
|
16345
|
+
}
|
|
16346
|
+
},
|
|
16347
|
+
defaultVariants: {
|
|
16348
|
+
size: "default"
|
|
16349
|
+
}
|
|
16350
|
+
}
|
|
16351
|
+
);
|
|
16352
|
+
var ticketCardImageTransformVariants = cva(
|
|
16353
|
+
`object-cover ${MOTION_TOKENS.transition.transform} ${MOTION_TOKENS.duration.slow} ${DOMAIN_TOKENS.motion.hover.scale}`,
|
|
16354
|
+
{
|
|
16355
|
+
variants: {
|
|
16356
|
+
size: {
|
|
16357
|
+
default: "",
|
|
16358
|
+
compact: ""
|
|
16359
|
+
}
|
|
16360
|
+
},
|
|
16361
|
+
defaultVariants: {
|
|
16362
|
+
size: "default"
|
|
16363
|
+
}
|
|
16364
|
+
}
|
|
16365
|
+
);
|
|
15935
16366
|
var TicketCard = React49.forwardRef(
|
|
15936
16367
|
({
|
|
15937
16368
|
title,
|
|
16369
|
+
date,
|
|
15938
16370
|
description,
|
|
15939
16371
|
price,
|
|
15940
16372
|
capacity,
|
|
@@ -15981,57 +16413,368 @@ var TicketCard = React49.forwardRef(
|
|
|
15981
16413
|
}
|
|
15982
16414
|
};
|
|
15983
16415
|
const availabilityLabel = getAvailabilityLabel();
|
|
16416
|
+
const formattedDate = date ? formatDate(date) : null;
|
|
16417
|
+
const dateTimeValue = (() => {
|
|
16418
|
+
if (!date) return null;
|
|
16419
|
+
if (typeof date === "string") {
|
|
16420
|
+
return new Date(date).toISOString();
|
|
16421
|
+
}
|
|
16422
|
+
if (date instanceof Date) {
|
|
16423
|
+
return date.toISOString();
|
|
16424
|
+
}
|
|
16425
|
+
return new Date(date).toISOString();
|
|
16426
|
+
})();
|
|
15984
16427
|
return /* @__PURE__ */ jsx(Box, { ...animationProps, children: /* @__PURE__ */ jsxs(
|
|
15985
16428
|
CardBase,
|
|
15986
16429
|
{
|
|
15987
16430
|
ref,
|
|
15988
16431
|
size: size3,
|
|
15989
16432
|
variant: cardVariant,
|
|
15990
|
-
className: cn(
|
|
16433
|
+
className: cn(ticketCardVariants({ size: size3, variant: cardVariant }), className),
|
|
15991
16434
|
...props,
|
|
15992
16435
|
children: [
|
|
15993
16436
|
featured && featuredBadgeText && /* @__PURE__ */ jsx("div", { className: ticketCardBadgeVariants({ size: size3 }), children: /* @__PURE__ */ jsx("span", { className: ticketCardBadgeSurfaceVariants({ variant: "featured" }), children: featuredBadgeText }) }),
|
|
15994
16437
|
vipBadgeText && /* @__PURE__ */ jsx("div", { className: cn(ticketCardBadgeVariants({ size: size3 }), getVipBadgePosition()), children: /* @__PURE__ */ jsx("span", { className: ticketCardBadgeSurfaceVariants({ variant: "vip" }), children: vipBadgeText }) }),
|
|
15995
16438
|
discountBadgeText && /* @__PURE__ */ jsx("div", { className: cn(ticketCardBadgeVariants({ size: size3 }), getDiscountBadgePosition()), children: /* @__PURE__ */ jsx("span", { className: ticketCardBadgeSurfaceVariants({ variant: "discount" }), children: discountBadgeText }) }),
|
|
15996
|
-
showImage && /* @__PURE__ */ jsx(CardBaseImageWrapper, { size: size3, children: /* @__PURE__ */ jsxs(
|
|
15997
|
-
|
|
15998
|
-
|
|
15999
|
-
|
|
16000
|
-
|
|
16001
|
-
|
|
16002
|
-
|
|
16003
|
-
|
|
16004
|
-
|
|
16005
|
-
|
|
16006
|
-
|
|
16007
|
-
|
|
16008
|
-
|
|
16009
|
-
|
|
16010
|
-
|
|
16011
|
-
|
|
16012
|
-
|
|
16013
|
-
|
|
16014
|
-
|
|
16015
|
-
|
|
16016
|
-
|
|
16017
|
-
|
|
16018
|
-
|
|
16019
|
-
|
|
16439
|
+
showImage && /* @__PURE__ */ jsx(CardBaseImageWrapper, { size: size3, children: /* @__PURE__ */ jsxs(
|
|
16440
|
+
"div",
|
|
16441
|
+
{
|
|
16442
|
+
className: cn(
|
|
16443
|
+
"relative w-full overflow-hidden",
|
|
16444
|
+
DOMAIN_TOKENS.image.placeholder.gradient
|
|
16445
|
+
),
|
|
16446
|
+
children: [
|
|
16447
|
+
imageUrl ? /* @__PURE__ */ jsx(
|
|
16448
|
+
"img",
|
|
16449
|
+
{
|
|
16450
|
+
src: imageUrl,
|
|
16451
|
+
alt: title,
|
|
16452
|
+
className: cn("h-full w-full", ticketCardImageTransformVariants({ size: size3 }))
|
|
16453
|
+
}
|
|
16454
|
+
) : /* @__PURE__ */ jsx("div", { className: "flex h-full w-full items-center justify-center", children: /* @__PURE__ */ jsx(
|
|
16455
|
+
Icon2,
|
|
16456
|
+
{
|
|
16457
|
+
name: "info",
|
|
16458
|
+
size: "xl",
|
|
16459
|
+
color: "muted",
|
|
16460
|
+
className: ICON_TOKENS.sizes["4xl"],
|
|
16461
|
+
"aria-hidden": "true"
|
|
16462
|
+
}
|
|
16463
|
+
) }),
|
|
16464
|
+
/* @__PURE__ */ jsx("div", { className: ticketCardImageOverlayVariants({ size: size3 }) })
|
|
16465
|
+
]
|
|
16466
|
+
}
|
|
16467
|
+
) }),
|
|
16468
|
+
/* @__PURE__ */ jsxs(CardBaseContentWrapper, { size: size3, children: [
|
|
16469
|
+
/* @__PURE__ */ jsx(Heading, { level: 3, className: ticketCardTitleVariants({ size: size3 }), children: href ? /* @__PURE__ */ jsx(Link, { href, variant: "ghost", children: title }) : title }),
|
|
16470
|
+
formattedDate && dateTimeValue && /* @__PURE__ */ jsx("time", { dateTime: dateTimeValue, className: ticketCardDateVariants({ size: size3 }), children: formattedDate }),
|
|
16471
|
+
description && /* @__PURE__ */ jsx(Text, { size: "sm", variant: "muted", className: ticketCardDescriptionVariants({ size: size3 }), children: description }),
|
|
16472
|
+
(price || capacity) && /* @__PURE__ */ jsxs("div", { className: ticketCardPriceCapacityContainerVariants({ size: size3 }), children: [
|
|
16473
|
+
price && /* @__PURE__ */ jsx(
|
|
16474
|
+
Text,
|
|
16475
|
+
{
|
|
16476
|
+
size: size3 === "compact" ? "md" : "lg",
|
|
16477
|
+
weight: "bold",
|
|
16478
|
+
className: ticketCardPriceVariants({ size: size3 }),
|
|
16479
|
+
children: price
|
|
16480
|
+
}
|
|
16481
|
+
),
|
|
16482
|
+
capacity && /* @__PURE__ */ jsx(
|
|
16483
|
+
Text,
|
|
16484
|
+
{
|
|
16485
|
+
size: size3 === "compact" ? "xs" : "sm",
|
|
16486
|
+
variant: "muted",
|
|
16487
|
+
className: ticketCardCapacityVariants({ size: size3 }),
|
|
16488
|
+
children: capacity
|
|
16489
|
+
}
|
|
16490
|
+
)
|
|
16491
|
+
] }),
|
|
16492
|
+
availabilityLabel && /* @__PURE__ */ jsx("div", { className: ticketCardAvailabilityVariants({ availability }), children: /* @__PURE__ */ jsx(Text, { size: "xs", variant: availability === "sold_out" ? "muted" : "primary", children: availabilityLabel }) })
|
|
16493
|
+
] }),
|
|
16494
|
+
/* @__PURE__ */ jsx(CardBaseFooterWrapper, { size: size3, children: /* @__PURE__ */ jsxs("div", { className: cn("w-full", ticketCardFooterVariants({ size: size3 })), children: [
|
|
16495
|
+
purchaseUrl && !isPurchaseDisabled && /* @__PURE__ */ jsxs(
|
|
16496
|
+
Link,
|
|
16020
16497
|
{
|
|
16498
|
+
href: purchaseUrl,
|
|
16021
16499
|
className: cn(
|
|
16022
|
-
"
|
|
16023
|
-
|
|
16024
|
-
)
|
|
16500
|
+
"w-full",
|
|
16501
|
+
ticketCardPurchaseButtonVariants({ size: size3, disabled: false })
|
|
16502
|
+
),
|
|
16503
|
+
target: "_blank",
|
|
16504
|
+
rel: "noopener noreferrer",
|
|
16505
|
+
children: [
|
|
16506
|
+
purchaseLabel,
|
|
16507
|
+
/* @__PURE__ */ jsx(IconArrowRight, { className: ticketCardPurchaseButtonIconVariants({ size: size3 }) })
|
|
16508
|
+
]
|
|
16509
|
+
}
|
|
16510
|
+
),
|
|
16511
|
+
(!purchaseUrl || isPurchaseDisabled) && /* @__PURE__ */ jsxs(
|
|
16512
|
+
"div",
|
|
16513
|
+
{
|
|
16514
|
+
className: cn(
|
|
16515
|
+
"w-full",
|
|
16516
|
+
ticketCardPurchaseButtonVariants({ size: size3, disabled: isPurchaseDisabled })
|
|
16517
|
+
),
|
|
16518
|
+
children: [
|
|
16519
|
+
purchaseLabel,
|
|
16520
|
+
/* @__PURE__ */ jsx(IconArrowRight, { className: ticketCardPurchaseButtonIconVariants({ size: size3 }) })
|
|
16521
|
+
]
|
|
16025
16522
|
}
|
|
16026
16523
|
)
|
|
16027
|
-
] }) })
|
|
16524
|
+
] }) })
|
|
16525
|
+
]
|
|
16526
|
+
}
|
|
16527
|
+
) });
|
|
16528
|
+
}
|
|
16529
|
+
);
|
|
16530
|
+
TicketCard.displayName = "TicketCard";
|
|
16531
|
+
var eventCardVariants = cva(
|
|
16532
|
+
// Base classes - surface, border, radius, shadow, motion from tokens
|
|
16533
|
+
`${DOMAIN_TOKENS.surface.bg.default} ${DOMAIN_TOKENS.surface.border.default} ${DOMAIN_TOKENS.surface.radius.default} ${DOMAIN_TOKENS.surface.shadow.default} ${DOMAIN_TOKENS.surface.bg.hover} ${DOMAIN_TOKENS.surface.border.hover} ${DOMAIN_TOKENS.surface.elevation.hover} ${DOMAIN_TOKENS.motion.hover.transition} overflow-hidden`,
|
|
16534
|
+
{
|
|
16535
|
+
variants: {
|
|
16536
|
+
size: {
|
|
16537
|
+
default: `${CARD_TOKENS.size.md.padding} ${DOMAIN_TOKENS.layout.gap.default}`,
|
|
16538
|
+
compact: `${CARD_TOKENS.size.sm.padding} ${DOMAIN_TOKENS.layout.gap.compact}`
|
|
16539
|
+
},
|
|
16540
|
+
layout: {
|
|
16541
|
+
vertical: "flex flex-col"
|
|
16542
|
+
},
|
|
16543
|
+
variant: {
|
|
16544
|
+
default: "",
|
|
16545
|
+
featured: `${DOMAIN_TOKENS.badges.surface.featured}`
|
|
16546
|
+
}
|
|
16547
|
+
},
|
|
16548
|
+
defaultVariants: {
|
|
16549
|
+
size: "default",
|
|
16550
|
+
layout: "vertical",
|
|
16551
|
+
variant: "default"
|
|
16552
|
+
}
|
|
16553
|
+
}
|
|
16554
|
+
);
|
|
16555
|
+
var eventCardBadgeVariants = cva(
|
|
16556
|
+
// Base classes - absolute positioning, z-index
|
|
16557
|
+
"absolute z-10",
|
|
16558
|
+
{
|
|
16559
|
+
variants: {
|
|
16560
|
+
size: {
|
|
16561
|
+
default: DOMAIN_TOKENS.badges.position.default,
|
|
16562
|
+
compact: DOMAIN_TOKENS.badges.position.compact
|
|
16563
|
+
}
|
|
16564
|
+
},
|
|
16565
|
+
defaultVariants: {
|
|
16566
|
+
size: "default"
|
|
16567
|
+
}
|
|
16568
|
+
}
|
|
16569
|
+
);
|
|
16570
|
+
var eventCardBadgeSurfaceVariants = cva(
|
|
16571
|
+
// Base classes - flex layout, items center, badge styling from tokens
|
|
16572
|
+
`inline-flex items-center ${DOMAIN_TOKENS.badges.radius} ${DOMAIN_TOKENS.badges.shadow} ${DOMAIN_TOKENS.badges.size.sm} ${DOMAIN_TOKENS.badges.text.color} ${TEXT_TOKENS.fontSize.xs} ${TEXT_TOKENS.fontWeight.semibold}`,
|
|
16573
|
+
{
|
|
16574
|
+
variants: {
|
|
16575
|
+
variant: {
|
|
16576
|
+
default: DOMAIN_TOKENS.badges.surface.default,
|
|
16577
|
+
featured: DOMAIN_TOKENS.badges.surface.featured
|
|
16578
|
+
}
|
|
16579
|
+
},
|
|
16580
|
+
defaultVariants: {
|
|
16581
|
+
variant: "featured"
|
|
16582
|
+
}
|
|
16583
|
+
}
|
|
16584
|
+
);
|
|
16585
|
+
var eventCardMetadataVariants = cva(
|
|
16586
|
+
// Base classes - flex column, metadata spacing from tokens
|
|
16587
|
+
`flex flex-col ${DOMAIN_TOKENS.metadata.spacing.vertical}`,
|
|
16588
|
+
{
|
|
16589
|
+
variants: {
|
|
16590
|
+
size: {
|
|
16591
|
+
default: "",
|
|
16592
|
+
compact: ""
|
|
16593
|
+
}
|
|
16594
|
+
},
|
|
16595
|
+
defaultVariants: {
|
|
16596
|
+
size: "default"
|
|
16597
|
+
}
|
|
16598
|
+
}
|
|
16599
|
+
);
|
|
16600
|
+
var eventCardMetadataItemVariants = cva(
|
|
16601
|
+
// Base classes - flex items center, metadata spacing and text from tokens
|
|
16602
|
+
`flex items-center ${DOMAIN_TOKENS.metadata.spacing.horizontal} ${DOMAIN_TOKENS.metadata.text.secondary} ${TEXT_TOKENS.fontSize.xs}`,
|
|
16603
|
+
{
|
|
16604
|
+
variants: {
|
|
16605
|
+
size: {
|
|
16606
|
+
default: "",
|
|
16607
|
+
compact: ""
|
|
16608
|
+
}
|
|
16609
|
+
},
|
|
16610
|
+
defaultVariants: {
|
|
16611
|
+
size: "default"
|
|
16612
|
+
}
|
|
16613
|
+
}
|
|
16614
|
+
);
|
|
16615
|
+
var eventCardMetadataIconVariants = cva(
|
|
16616
|
+
// Base classes - icon size and color from tokens
|
|
16617
|
+
`${DOMAIN_TOKENS.metadata.icon.sizeSm} ${DOMAIN_TOKENS.metadata.icon.default}`,
|
|
16618
|
+
{
|
|
16619
|
+
variants: {
|
|
16620
|
+
size: {
|
|
16621
|
+
default: "",
|
|
16622
|
+
compact: ""
|
|
16623
|
+
}
|
|
16624
|
+
},
|
|
16625
|
+
defaultVariants: {
|
|
16626
|
+
size: "default"
|
|
16627
|
+
}
|
|
16628
|
+
}
|
|
16629
|
+
);
|
|
16630
|
+
var eventCardFooterVariants = cva(
|
|
16631
|
+
// Base classes - border top, spacing from tokens
|
|
16632
|
+
"border-t border-border",
|
|
16633
|
+
{
|
|
16634
|
+
variants: {
|
|
16635
|
+
size: {
|
|
16636
|
+
default: DOMAIN_TOKENS.spacing.footer.paddingTopDefault,
|
|
16637
|
+
compact: DOMAIN_TOKENS.spacing.footer.paddingTopCompact
|
|
16638
|
+
}
|
|
16639
|
+
},
|
|
16640
|
+
defaultVariants: {
|
|
16641
|
+
size: "default"
|
|
16642
|
+
}
|
|
16643
|
+
}
|
|
16644
|
+
);
|
|
16645
|
+
var eventCardTicketButtonVariants = cva(
|
|
16646
|
+
// Base classes - flex layout, badge gradient, motion from tokens
|
|
16647
|
+
`inline-flex items-center justify-center ${DOMAIN_TOKENS.badges.surface.featured} ${DOMAIN_TOKENS.badges.text.color} ${DOMAIN_TOKENS.badges.shadow} ${DOMAIN_TOKENS.motion.hover.transition} ${TEXT_TOKENS.fontWeight.semibold} transform`,
|
|
16648
|
+
{
|
|
16649
|
+
variants: {
|
|
16650
|
+
size: {
|
|
16651
|
+
default: DOMAIN_TOKENS.spacing.button.paddingDefault,
|
|
16652
|
+
compact: DOMAIN_TOKENS.spacing.button.paddingCompact
|
|
16653
|
+
}
|
|
16654
|
+
},
|
|
16655
|
+
defaultVariants: {
|
|
16656
|
+
size: "default"
|
|
16657
|
+
}
|
|
16658
|
+
}
|
|
16659
|
+
);
|
|
16660
|
+
var eventCardTicketButtonIconVariants = cva(
|
|
16661
|
+
// Base classes - icon size and spacing from tokens
|
|
16662
|
+
`${DOMAIN_TOKENS.metadata.icon.sizeSm} ${DOMAIN_TOKENS.spacing.button.iconMarginLeft}`,
|
|
16663
|
+
{
|
|
16664
|
+
variants: {
|
|
16665
|
+
size: {
|
|
16666
|
+
default: "",
|
|
16667
|
+
compact: ""
|
|
16668
|
+
}
|
|
16669
|
+
},
|
|
16670
|
+
defaultVariants: {
|
|
16671
|
+
size: "default"
|
|
16672
|
+
}
|
|
16673
|
+
}
|
|
16674
|
+
);
|
|
16675
|
+
var eventCardPriceVariants = cva(
|
|
16676
|
+
// Base classes - price gradient text from tokens
|
|
16677
|
+
`bg-gradient-to-r from-accent-500 to-primary-600 bg-clip-text text-transparent`,
|
|
16678
|
+
{
|
|
16679
|
+
variants: {
|
|
16680
|
+
size: {
|
|
16681
|
+
default: TEXT_TOKENS.fontSize.lg,
|
|
16682
|
+
compact: TEXT_TOKENS.fontSize.md
|
|
16683
|
+
}
|
|
16684
|
+
},
|
|
16685
|
+
defaultVariants: {
|
|
16686
|
+
size: "default"
|
|
16687
|
+
}
|
|
16688
|
+
}
|
|
16689
|
+
);
|
|
16690
|
+
var EventCard = React49.forwardRef(
|
|
16691
|
+
({
|
|
16692
|
+
title,
|
|
16693
|
+
description,
|
|
16694
|
+
date,
|
|
16695
|
+
venueName,
|
|
16696
|
+
price,
|
|
16697
|
+
imageUrl,
|
|
16698
|
+
href,
|
|
16699
|
+
ticketUrl,
|
|
16700
|
+
featured = false,
|
|
16701
|
+
showImage = true,
|
|
16702
|
+
getTicketsLabel,
|
|
16703
|
+
featuredBadgeText,
|
|
16704
|
+
size: size3 = "default",
|
|
16705
|
+
layout = "vertical",
|
|
16706
|
+
variant,
|
|
16707
|
+
className,
|
|
16708
|
+
animation,
|
|
16709
|
+
...props
|
|
16710
|
+
}, ref) => {
|
|
16711
|
+
const animationProps = resolveComponentAnimations({
|
|
16712
|
+
animation: animation?.animation || "fadeInUp",
|
|
16713
|
+
hoverAnimation: animation?.hoverAnimation || "hoverLift",
|
|
16714
|
+
animationProps: animation?.animationProps
|
|
16715
|
+
});
|
|
16716
|
+
const cardVariant = variant || (featured ? "featured" : "default");
|
|
16717
|
+
return /* @__PURE__ */ jsx(Box, { ...animationProps, children: /* @__PURE__ */ jsxs(
|
|
16718
|
+
CardBase,
|
|
16719
|
+
{
|
|
16720
|
+
ref,
|
|
16721
|
+
size: size3,
|
|
16722
|
+
variant: cardVariant,
|
|
16723
|
+
className: cn(
|
|
16724
|
+
eventCardVariants({ size: size3, layout, variant: cardVariant }),
|
|
16725
|
+
"group relative",
|
|
16726
|
+
className
|
|
16727
|
+
),
|
|
16728
|
+
...props,
|
|
16729
|
+
children: [
|
|
16730
|
+
featured && featuredBadgeText && /* @__PURE__ */ jsx("div", { className: eventCardBadgeVariants({ size: size3 }), children: /* @__PURE__ */ jsx("span", { className: eventCardBadgeSurfaceVariants({ variant: "featured" }), children: featuredBadgeText }) }),
|
|
16731
|
+
showImage && /* @__PURE__ */ jsx(CardBaseImageWrapper, { size: size3, children: /* @__PURE__ */ jsxs(
|
|
16732
|
+
"div",
|
|
16733
|
+
{
|
|
16734
|
+
className: cn("relative w-full overflow-hidden", DOMAIN_TOKENS.surface.bg.default),
|
|
16735
|
+
children: [
|
|
16736
|
+
imageUrl ? /* @__PURE__ */ jsx(
|
|
16737
|
+
"img",
|
|
16738
|
+
{
|
|
16739
|
+
src: imageUrl,
|
|
16740
|
+
alt: title,
|
|
16741
|
+
className: cn(
|
|
16742
|
+
"h-full w-full object-cover",
|
|
16743
|
+
DOMAIN_TOKENS.motion.hover.transition,
|
|
16744
|
+
DOMAIN_TOKENS.motion.hover.scale
|
|
16745
|
+
)
|
|
16746
|
+
}
|
|
16747
|
+
) : /* @__PURE__ */ jsx("div", { className: "flex h-full w-full items-center justify-center", children: /* @__PURE__ */ jsx(
|
|
16748
|
+
Icon2,
|
|
16749
|
+
{
|
|
16750
|
+
name: "info",
|
|
16751
|
+
size: "xl",
|
|
16752
|
+
color: "muted",
|
|
16753
|
+
className: ICON_TOKENS.sizes["4xl"],
|
|
16754
|
+
"aria-hidden": "true"
|
|
16755
|
+
}
|
|
16756
|
+
) }),
|
|
16757
|
+
/* @__PURE__ */ jsx(
|
|
16758
|
+
"div",
|
|
16759
|
+
{
|
|
16760
|
+
className: cn(
|
|
16761
|
+
"absolute inset-0 opacity-0 group-hover:opacity-100",
|
|
16762
|
+
DOMAIN_TOKENS.motion.hover.transition,
|
|
16763
|
+
DOMAIN_TOKENS.image.overlay.gradient
|
|
16764
|
+
)
|
|
16765
|
+
}
|
|
16766
|
+
)
|
|
16767
|
+
]
|
|
16768
|
+
}
|
|
16769
|
+
) }),
|
|
16028
16770
|
/* @__PURE__ */ jsxs(CardBaseContentWrapper, { size: size3, children: [
|
|
16029
16771
|
/* @__PURE__ */ jsx(
|
|
16030
16772
|
Heading,
|
|
16031
16773
|
{
|
|
16032
16774
|
level: 3,
|
|
16033
16775
|
className: cn(
|
|
16034
|
-
"line-clamp-2
|
|
16776
|
+
"line-clamp-2 group-hover:text-primary",
|
|
16777
|
+
DOMAIN_TOKENS.motion.hover.transition,
|
|
16035
16778
|
TEXT_TOKENS.fontSize.lg,
|
|
16036
16779
|
TEXT_TOKENS.fontWeight.bold,
|
|
16037
16780
|
DOMAIN_TOKENS.spacing.section.titleToSubtitle
|
|
@@ -16043,7 +16786,7 @@ var TicketCard = React49.forwardRef(
|
|
|
16043
16786
|
Text,
|
|
16044
16787
|
{
|
|
16045
16788
|
size: "sm",
|
|
16046
|
-
|
|
16789
|
+
muted: true,
|
|
16047
16790
|
className: cn(
|
|
16048
16791
|
"line-clamp-2",
|
|
16049
16792
|
size3 === "compact" ? DOMAIN_TOKENS.spacing.section.titleToSubtitle : DOMAIN_TOKENS.spacing.section.subtitleToMetadata
|
|
@@ -16051,48 +16794,56 @@ var TicketCard = React49.forwardRef(
|
|
|
16051
16794
|
children: description
|
|
16052
16795
|
}
|
|
16053
16796
|
),
|
|
16054
|
-
|
|
16055
|
-
|
|
16056
|
-
|
|
16057
|
-
|
|
16058
|
-
|
|
16797
|
+
/* @__PURE__ */ jsxs("div", { className: eventCardMetadataVariants({ size: size3 }), children: [
|
|
16798
|
+
date && /* @__PURE__ */ jsxs("div", { className: eventCardMetadataItemVariants({ size: size3 }), role: "text", children: [
|
|
16799
|
+
/* @__PURE__ */ jsx(
|
|
16800
|
+
IconCalendar,
|
|
16801
|
+
{
|
|
16802
|
+
className: eventCardMetadataIconVariants({ size: size3 }),
|
|
16803
|
+
"aria-hidden": true
|
|
16804
|
+
}
|
|
16805
|
+
),
|
|
16806
|
+
/* @__PURE__ */ jsx(Text, { size: "xs", muted: true, children: /* @__PURE__ */ jsx("time", { dateTime: date, children: date }) })
|
|
16807
|
+
] }),
|
|
16808
|
+
venueName && /* @__PURE__ */ jsxs("div", { className: eventCardMetadataItemVariants({ size: size3 }), role: "text", children: [
|
|
16809
|
+
/* @__PURE__ */ jsx(
|
|
16810
|
+
IconLocation,
|
|
16811
|
+
{
|
|
16812
|
+
className: eventCardMetadataIconVariants({ size: size3 }),
|
|
16813
|
+
"aria-hidden": true
|
|
16814
|
+
}
|
|
16815
|
+
),
|
|
16816
|
+
/* @__PURE__ */ jsx(Text, { size: "xs", muted: true, className: "line-clamp-1", children: /* @__PURE__ */ jsx("address", { children: venueName }) })
|
|
16817
|
+
] })
|
|
16818
|
+
] })
|
|
16059
16819
|
] }),
|
|
16060
|
-
/* @__PURE__ */ jsx(CardBaseFooterWrapper, { size: size3, children: /* @__PURE__ */ jsxs("div", { className: cn("w-full",
|
|
16061
|
-
|
|
16820
|
+
/* @__PURE__ */ jsx(CardBaseFooterWrapper, { size: size3, children: /* @__PURE__ */ jsxs("div", { className: cn("w-full", eventCardFooterVariants({ size: size3 })), children: [
|
|
16821
|
+
ticketUrl && /* @__PURE__ */ jsxs(
|
|
16062
16822
|
Link,
|
|
16063
16823
|
{
|
|
16064
|
-
href:
|
|
16065
|
-
className: cn(
|
|
16066
|
-
"w-full",
|
|
16067
|
-
ticketCardPurchaseButtonVariants({ size: size3, disabled: false })
|
|
16068
|
-
),
|
|
16824
|
+
href: ticketUrl,
|
|
16825
|
+
className: cn("w-full", eventCardTicketButtonVariants({ size: size3 })),
|
|
16069
16826
|
target: "_blank",
|
|
16070
16827
|
rel: "noopener noreferrer",
|
|
16071
16828
|
children: [
|
|
16072
|
-
|
|
16073
|
-
/* @__PURE__ */ jsx(
|
|
16829
|
+
getTicketsLabel,
|
|
16830
|
+
/* @__PURE__ */ jsx(
|
|
16831
|
+
IconArrowRight,
|
|
16832
|
+
{
|
|
16833
|
+
className: eventCardTicketButtonIconVariants({ size: size3 }),
|
|
16834
|
+
"aria-hidden": true
|
|
16835
|
+
}
|
|
16836
|
+
)
|
|
16074
16837
|
]
|
|
16075
16838
|
}
|
|
16076
16839
|
),
|
|
16077
|
-
|
|
16078
|
-
"div",
|
|
16079
|
-
{
|
|
16080
|
-
className: cn(
|
|
16081
|
-
"w-full",
|
|
16082
|
-
ticketCardPurchaseButtonVariants({ size: size3, disabled: isPurchaseDisabled })
|
|
16083
|
-
),
|
|
16084
|
-
children: [
|
|
16085
|
-
purchaseLabel,
|
|
16086
|
-
/* @__PURE__ */ jsx(IconArrowRight, { className: ticketCardPurchaseButtonIconVariants({ size: size3 }) })
|
|
16087
|
-
]
|
|
16088
|
-
}
|
|
16089
|
-
)
|
|
16840
|
+
!ticketUrl && price && /* @__PURE__ */ jsx("div", { className: "text-right", children: /* @__PURE__ */ jsx(Text, { size: size3 === "compact" ? "md" : "lg", weight: "bold", children: /* @__PURE__ */ jsx("span", { className: eventCardPriceVariants({ size: size3 }), children: price }) }) })
|
|
16090
16841
|
] }) })
|
|
16091
16842
|
]
|
|
16092
16843
|
}
|
|
16093
16844
|
) });
|
|
16094
16845
|
}
|
|
16095
16846
|
);
|
|
16096
|
-
|
|
16847
|
+
EventCard.displayName = "EventCard";
|
|
16097
16848
|
|
|
16098
|
-
export { ALERT_TOKENS, Alert, ArtistCard, BUTTON_TOKENS, Backdrop, Body, Box, Breadcrumbs, Button, CARD_TOKENS, CHECKBOX_TOKENS, Caption, Card, CardBody, CardFooter, CardHeader, Checkbox, Code, Column, Container, Surface2 as ContainerSurface, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuItem, ContextMenuLabel, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuRoot, ContextMenuSeparator, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, DATA_TOKENS, DOMAIN_TOKENS, DROPDOWN_TOKENS, DataListRoot as DataList, DataListItem, DataListLabel, DataListRoot, DataListValue, Dialog, DialogBody, DialogDescription, DialogFooter, DialogHeader, DialogRoot, DialogTitle, Display, DropdownMenuCheckItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuRoot, DropdownMenuSeparator, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, EmptyStateAction, EmptyStateDescription, EmptyStateIcon, EmptyStateTitle, EventCard, FieldRoot as Field, Flex, Grid, Heading, HoverCardContent, HoverCardRoot, HoverCardTrigger, ICONS_MAP, ICON_TOKENS, INPUT_TOKENS, Icon2 as Icon, IconArrowRight, IconCalendar, IconCheck, IconChevronDown, IconChevronRight, IconClose, IconError, IconInfo, IconLocation, IconMenu, IconSearch, IconSuccess, IconWarning, Input, Label2 as Label, Lead, MENU_TOKENS, MOTION_TOKENS, Modal, ModalClose, ModalContent, ModalDescription, ModalFooter, ModalHeader, ModalOverlay, ModalRoot, ModalTitle, ModalTrigger, NAVIGATION_TOKENS, NOTIFICATION_TOKENS, NotificationCenter, NotificationCenterDismissAll, NotificationCenterGroupHeader, NotificationCenterItem, NotificationCenterList, NotificationCenterPanel, NotificationCenterProvider, NotificationCenterTrigger, OVERLAY_TOKENS, POPOVER_TOKENS, Pagination, PopoverArrow, PopoverContent, PopoverRoot, PopoverTrigger, Portal3 as Portal, PromoCard, RADIO_TOKENS, Radio, RadioGroup, Row, SECTION_TOKENS, SURFACE_TOKENS, SWITCH_TOKENS, Section, SegmentedControl, Select, SelectContent, SelectGroup, SelectIcon, SelectItem, SelectItemIndicator, SelectItemText, SelectLabel, SelectRoot, SelectSeparator, SelectTrigger, SelectValue, SelectViewport, Skeleton, Stack, Stepper, Surface, TEXT_TOKENS, TOAST_TOKENS, TOOLTIP_TOKENS, TableRoot as Table, TableBody, TableCell, TableEmpty, TableExpandableContent, TableHead, TableHeader, TableLoadingState, TableRoot, TableRow, TableSortIcon, Tabs, Text, Textarea, TicketCard, Toast, ToastProvider, ToastViewport, UI_COLORS, accentColoredShadows, accentColors, alertVariants, allCSSVariables, allCSSVariablesCSS, animations, baseColors, bodyVariants, borderRadius, buttonVariants, captionVariants, chartColors, checkboxVariants, codeVariants, colorCSSVariables, componentRadius, componentShadowMapping, surfaceVariants2 as containerSurfaceVariants, cssVariableColorTokens, displayVariants, durations, easings, elevationShadows, focusRings, fontFamily, fontSize, fontSizeWithMd, fontWeight, generateCSSVariablesCSS, glowEffects, headingVariants, iconVariants, inputVariants, keyframes, labelVariants, layoutSpacing, leadVariants, letterSpacing, lineHeight, motionCSSVariables, motionV2CSSVariables, motionV2Combined, motionV2Durations, motionV2Easings, motionV2Fade, motionV2Scale, motionV2Slide, motionV2TailwindConfig, motionV2Transitions, popoverContentVariants, primaryColoredShadows, primaryColors, radioVariants, radiusCSSVariables, reducedMotion, secondaryColors, segmentedControlItemVariants, segmentedControlRootVariants, semanticColors, semanticSpacing, shadowBase, shadowCSSVariables, shadowOpacity, skeletonVariants, spacing, spacingCSSVariables, springs, surfaceColors, surfaceVariants, tailwindMotionConfig, tailwindRadiusConfig, tailwindShadowConfig, tailwindSpacingConfig, tailwindThemeColors, tailwindTypographyConfig, textColors, textStyles, textVariants, textareaVariants, tokenSystemSummary, transitions, typographyCSSVariables, useNotificationCenter, useNotificationCenterContext, useTableContext, useToast };
|
|
16849
|
+
export { ALERT_TOKENS, Alert, ArtistCard, BUTTON_TOKENS, Backdrop, Body, Box, Breadcrumbs, Button, CARD_TOKENS, CHECKBOX_TOKENS, Caption, Card, CardBody, CardFooter, CardHeader, CategoryCard, Checkbox, Code, Column, Container, Surface2 as ContainerSurface, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuItem, ContextMenuLabel, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuRoot, ContextMenuSeparator, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, DATA_TOKENS, DOMAIN_TOKENS, DROPDOWN_TOKENS, DataListRoot as DataList, DataListItem, DataListLabel, DataListRoot, DataListValue, Dialog, DialogBody, DialogDescription, DialogFooter, DialogHeader, DialogRoot, DialogTitle, Display, DropdownMenuCheckItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuRoot, DropdownMenuSeparator, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, EmptyStateAction, EmptyStateDescription, EmptyStateIcon, EmptyStateTitle, EventCard, FieldRoot as Field, Flex, Grid, Heading, HoverCardContent, HoverCardRoot, HoverCardTrigger, ICONS_MAP, ICON_TOKENS, INPUT_TOKENS, Icon2 as Icon, IconArrowRight, IconCalendar, IconCheck, IconChevronDown, IconChevronRight, IconClose, IconError, IconInfo, IconLocation, IconMenu, IconSearch, IconSuccess, IconWarning, Input, Label2 as Label, Lead, MENU_TOKENS, MOTION_TOKENS, Modal, ModalClose, ModalContent, ModalDescription, ModalFooter, ModalHeader, ModalOverlay, ModalRoot, ModalTitle, ModalTrigger, NAVIGATION_TOKENS, NOTIFICATION_TOKENS, NotificationCenter, NotificationCenterDismissAll, NotificationCenterGroupHeader, NotificationCenterItem, NotificationCenterList, NotificationCenterPanel, NotificationCenterProvider, NotificationCenterTrigger, OVERLAY_TOKENS, POPOVER_TOKENS, Pagination, PopoverArrow, PopoverContent, PopoverRoot, PopoverTrigger, Portal3 as Portal, PromoCard, RADIO_TOKENS, Radio, RadioGroup, Row, SECTION_TOKENS, SURFACE_TOKENS, SWITCH_TOKENS, Section, SegmentedControl, Select, SelectContent, SelectGroup, SelectIcon, SelectItem, SelectItemIndicator, SelectItemText, SelectLabel, SelectRoot, SelectSeparator, SelectTrigger, SelectValue, SelectViewport, Skeleton, Stack, Stepper, Surface, TEXT_TOKENS, TOAST_TOKENS, TOOLTIP_TOKENS, TableRoot as Table, TableBody, TableCell, TableEmpty, TableExpandableContent, TableHead, TableHeader, TableLoadingState, TableRoot, TableRow, TableSortIcon, Tabs, Text, Textarea, TicketCard, Toast, ToastProvider, ToastViewport, UI_COLORS, accentColoredShadows, accentColors, alertVariants, allCSSVariables, allCSSVariablesCSS, animations, baseColors, bodyVariants, borderRadius, buttonVariants, captionVariants, chartColors, checkboxVariants, codeVariants, colorCSSVariables, componentRadius, componentShadowMapping, surfaceVariants2 as containerSurfaceVariants, cssVariableColorTokens, displayVariants, durations, easings, elevationShadows, focusRings, fontFamily, fontSize, fontSizeWithMd, fontWeight, generateCSSVariablesCSS, glowEffects, headingVariants, iconVariants, inputVariants, keyframes, labelVariants, layoutSpacing, leadVariants, letterSpacing, lineHeight, motionCSSVariables, motionV2CSSVariables, motionV2Combined, motionV2Durations, motionV2Easings, motionV2Fade, motionV2Scale, motionV2Slide, motionV2TailwindConfig, motionV2Transitions, popoverContentVariants, primaryColoredShadows, primaryColors, radioVariants, radiusCSSVariables, reducedMotion, secondaryColors, segmentedControlItemVariants, segmentedControlRootVariants, semanticColors, semanticSpacing, shadowBase, shadowCSSVariables, shadowOpacity, skeletonVariants, spacing, spacingCSSVariables, springs, surfaceColors, surfaceVariants, tailwindMotionConfig, tailwindRadiusConfig, tailwindShadowConfig, tailwindSpacingConfig, tailwindThemeColors, tailwindTypographyConfig, textColors, textStyles, textVariants, textareaVariants, tokenSystemSummary, transitions, typographyCSSVariables, useNotificationCenter, useNotificationCenterContext, useTableContext, useToast };
|