@tenerife.music/ui 1.1.1 → 1.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{index-DInIMlaR.d.cts → index-DXmHg8ji.d.cts} +5 -4
- package/dist/{index-DInIMlaR.d.ts → index-DXmHg8ji.d.ts} +5 -4
- package/dist/index.cjs +109 -171
- package/dist/index.d.cts +57 -152
- package/dist/index.d.ts +57 -152
- package/dist/index.mjs +110 -169
- package/dist/styles.css +22 -67
- package/dist/theme/index.cjs +87 -16
- package/dist/theme/index.mjs +87 -16
- package/dist/tokens/index.cjs +5 -4
- package/dist/tokens/index.d.cts +1 -1
- package/dist/tokens/index.d.ts +1 -1
- package/dist/tokens/index.mjs +5 -4
- package/package.json +41 -39
package/dist/index.mjs
CHANGED
|
@@ -831,15 +831,16 @@ var BUTTON_TOKENS = {
|
|
|
831
831
|
/**
|
|
832
832
|
* Icon size within buttons by button size
|
|
833
833
|
* Scales proportionally with button size for visual balance
|
|
834
|
+
* Contains full SVG selector classes for direct use in CVA
|
|
834
835
|
*/
|
|
835
836
|
iconSize: {
|
|
836
|
-
sm: "
|
|
837
|
+
sm: "[&_svg]:w-3.5 [&_svg]:h-3.5",
|
|
837
838
|
// 14px (0.875rem) - smaller icon for small buttons
|
|
838
|
-
md: "
|
|
839
|
+
md: "[&_svg]:w-4 [&_svg]:h-4",
|
|
839
840
|
// 16px (1rem) - medium icon for medium buttons
|
|
840
|
-
lg: "
|
|
841
|
+
lg: "[&_svg]:w-5 [&_svg]:h-5",
|
|
841
842
|
// 20px (1.25rem) - larger icon for large buttons
|
|
842
|
-
icon: "
|
|
843
|
+
icon: "[&_svg]:w-4 [&_svg]:h-4"
|
|
843
844
|
// 16px (1rem) - medium icon for icon-only buttons
|
|
844
845
|
},
|
|
845
846
|
/**
|
|
@@ -5081,42 +5082,28 @@ var LINK_TOKENS = {
|
|
|
5081
5082
|
* Maps to Tailwind height utilities
|
|
5082
5083
|
*/
|
|
5083
5084
|
height: {
|
|
5084
|
-
xs: "h-7",
|
|
5085
5085
|
// 28px (1.75rem)
|
|
5086
5086
|
sm: "h-8",
|
|
5087
5087
|
// 32px (2rem)
|
|
5088
5088
|
md: "h-9",
|
|
5089
5089
|
// 36px (2.25rem)
|
|
5090
|
-
lg: "h-10",
|
|
5091
|
-
// 40px (2.5rem)
|
|
5092
|
-
xl: "h-11"
|
|
5093
|
-
// 44px (2.75rem)
|
|
5094
|
-
},
|
|
5090
|
+
lg: "h-10"},
|
|
5095
5091
|
/**
|
|
5096
5092
|
* Link padding by size
|
|
5097
5093
|
* Horizontal and vertical padding values
|
|
5098
5094
|
*/
|
|
5099
5095
|
padding: {
|
|
5100
5096
|
horizontal: {
|
|
5101
|
-
xs: "px-xs",
|
|
5102
5097
|
// 4px (0.25rem) - maps to semanticSpacing.xs
|
|
5103
5098
|
sm: "px-sm",
|
|
5104
5099
|
// 8px (0.5rem) - maps to semanticSpacing.sm
|
|
5105
5100
|
md: "px-md",
|
|
5106
5101
|
// 16px (1rem) - maps to semanticSpacing.md
|
|
5107
|
-
lg: "px-lg",
|
|
5108
|
-
// 24px (1.5rem) - maps to semanticSpacing.lg
|
|
5109
|
-
xl: "px-xl"
|
|
5110
|
-
// 32px (2rem) - maps to semanticSpacing.xl
|
|
5111
|
-
},
|
|
5102
|
+
lg: "px-lg"},
|
|
5112
5103
|
vertical: {
|
|
5113
5104
|
xs: "py-xs",
|
|
5114
5105
|
// 4px (0.25rem) - maps to semanticSpacing.xs
|
|
5115
|
-
sm: "py-sm"
|
|
5116
|
-
// 8px (0.5rem) - maps to semanticSpacing.sm
|
|
5117
|
-
md: "py-md"
|
|
5118
|
-
// 16px (1rem) - maps to semanticSpacing.md
|
|
5119
|
-
}
|
|
5106
|
+
sm: "py-sm"}
|
|
5120
5107
|
},
|
|
5121
5108
|
/**
|
|
5122
5109
|
* Layout tokens
|
|
@@ -5147,17 +5134,12 @@ var LINK_TOKENS = {
|
|
|
5147
5134
|
* @see docs/architecture/TYPOGRAPHY_AUTHORITY_CONTRACT.md
|
|
5148
5135
|
*/
|
|
5149
5136
|
fontSize: {
|
|
5150
|
-
xs: "text-xs",
|
|
5151
5137
|
// References fontSize.xs[0] from Typography Authority (~12px)
|
|
5152
5138
|
sm: "text-xs",
|
|
5153
5139
|
// References fontSize.xs[0] from Typography Authority (~12px)
|
|
5154
5140
|
md: "text-sm",
|
|
5155
5141
|
// References fontSize.sm[0] from Typography Authority (~14px)
|
|
5156
|
-
lg: "text-sm",
|
|
5157
|
-
// References fontSize.sm[0] from Typography Authority (~14px)
|
|
5158
|
-
xl: "text-base"
|
|
5159
|
-
// References fontSize.base[0] from Typography Authority (~16px)
|
|
5160
|
-
},
|
|
5142
|
+
lg: "text-sm"},
|
|
5161
5143
|
/**
|
|
5162
5144
|
* Border radius for outline and ghost variants
|
|
5163
5145
|
* References componentRadius from Radius Authority
|
|
@@ -5225,15 +5207,15 @@ var LINK_TOKENS = {
|
|
|
5225
5207
|
// Underline on hover
|
|
5226
5208
|
},
|
|
5227
5209
|
secondary: {
|
|
5228
|
-
text: "text-secondary
|
|
5210
|
+
text: "text-secondary",
|
|
5229
5211
|
// Secondary text using CSS var
|
|
5230
5212
|
hover: "hover:underline"
|
|
5231
5213
|
// Underline on hover
|
|
5232
5214
|
},
|
|
5233
5215
|
accent: {
|
|
5234
|
-
text: "text-accent
|
|
5235
|
-
// Accent text using CSS var
|
|
5236
|
-
hover: "hover:text-accent
|
|
5216
|
+
text: "text-accent",
|
|
5217
|
+
// Accent text using CSS var (accent color, not accent-foreground)
|
|
5218
|
+
hover: "hover:text-accent/80",
|
|
5237
5219
|
// Accent hover text
|
|
5238
5220
|
underline: "hover:underline"
|
|
5239
5221
|
// Underline on hover
|
|
@@ -6688,10 +6670,10 @@ var buttonVariants = tokenCVA({
|
|
|
6688
6670
|
destructive: `${BUTTON_TOKENS.variant.destructive.background} ${BUTTON_TOKENS.variant.destructive.text} ${BUTTON_TOKENS.shadow.default} ${BUTTON_TOKENS.variant.destructive.hover} ${BUTTON_TOKENS.variant.destructive.active} ${BUTTON_TOKENS.variant.destructive.disabled.background} ${BUTTON_TOKENS.variant.destructive.disabled.text}`
|
|
6689
6671
|
},
|
|
6690
6672
|
size: {
|
|
6691
|
-
sm: `${BUTTON_TOKENS.height.sm} ${BUTTON_TOKENS.radius} ${BUTTON_TOKENS.padding.horizontal.sm} ${BUTTON_TOKENS.padding.vertical.sm} ${BUTTON_TOKENS.fontSize.sm} ${BUTTON_TOKENS.gap.sm}
|
|
6692
|
-
md: `${BUTTON_TOKENS.height.md} ${BUTTON_TOKENS.radius} ${BUTTON_TOKENS.padding.horizontal.md} ${BUTTON_TOKENS.padding.vertical.md} ${BUTTON_TOKENS.fontSize.md} ${BUTTON_TOKENS.gap.md}
|
|
6693
|
-
lg: `${BUTTON_TOKENS.height.lg} ${BUTTON_TOKENS.radius} ${BUTTON_TOKENS.padding.horizontal.lg} ${BUTTON_TOKENS.padding.vertical.md} ${BUTTON_TOKENS.fontSize.lg} ${BUTTON_TOKENS.gap.lg}
|
|
6694
|
-
icon: `${BUTTON_TOKENS.height.icon} ${BUTTON_TOKENS.width.icon}
|
|
6673
|
+
sm: `${BUTTON_TOKENS.height.sm} ${BUTTON_TOKENS.radius} ${BUTTON_TOKENS.padding.horizontal.sm} ${BUTTON_TOKENS.padding.vertical.sm} ${BUTTON_TOKENS.fontSize.sm} ${BUTTON_TOKENS.gap.sm} ${BUTTON_TOKENS.iconSize.sm}`,
|
|
6674
|
+
md: `${BUTTON_TOKENS.height.md} ${BUTTON_TOKENS.radius} ${BUTTON_TOKENS.padding.horizontal.md} ${BUTTON_TOKENS.padding.vertical.md} ${BUTTON_TOKENS.fontSize.md} ${BUTTON_TOKENS.gap.md} ${BUTTON_TOKENS.iconSize.md}`,
|
|
6675
|
+
lg: `${BUTTON_TOKENS.height.lg} ${BUTTON_TOKENS.radius} ${BUTTON_TOKENS.padding.horizontal.lg} ${BUTTON_TOKENS.padding.vertical.md} ${BUTTON_TOKENS.fontSize.lg} ${BUTTON_TOKENS.gap.lg} ${BUTTON_TOKENS.iconSize.lg}`,
|
|
6676
|
+
icon: `${BUTTON_TOKENS.height.icon} ${BUTTON_TOKENS.width.icon} ${BUTTON_TOKENS.iconSize.icon}`
|
|
6695
6677
|
}
|
|
6696
6678
|
},
|
|
6697
6679
|
defaultVariants: {
|
|
@@ -6700,16 +6682,8 @@ var buttonVariants = tokenCVA({
|
|
|
6700
6682
|
}
|
|
6701
6683
|
});
|
|
6702
6684
|
var Button = React49.forwardRef(
|
|
6703
|
-
({
|
|
6704
|
-
const
|
|
6705
|
-
const finalClassName = cn(buttonVariants({ variant, size, className }));
|
|
6706
|
-
const iconSizeMap = {
|
|
6707
|
-
"size-3.5": "[&_svg]:w-3.5 [&_svg]:h-3.5",
|
|
6708
|
-
"size-4": "[&_svg]:w-4 [&_svg]:h-4",
|
|
6709
|
-
"size-5": "[&_svg]:w-5 [&_svg]:h-5"
|
|
6710
|
-
};
|
|
6711
|
-
const iconSizeToken = size ? BUTTON_TOKENS.iconSize[size] : BUTTON_TOKENS.iconSize.md;
|
|
6712
|
-
const iconSizeClass = iconSizeMap[iconSizeToken] || "[&_svg]:w-4 [&_svg]:h-4";
|
|
6685
|
+
({ variant, size, asChild = false, leftIcon, rightIcon, children, ...props }, ref) => {
|
|
6686
|
+
const finalClassName = buttonVariants({ variant, size });
|
|
6713
6687
|
if (typeof window !== "undefined" && variant === "primary") {
|
|
6714
6688
|
const hasHoverClass = finalClassName.includes(
|
|
6715
6689
|
"hover:bg-[hsl(var(--button-primary-hover-bg))]"
|
|
@@ -6740,28 +6714,33 @@ var Button = React49.forwardRef(
|
|
|
6740
6714
|
}).catch(() => {
|
|
6741
6715
|
});
|
|
6742
6716
|
}
|
|
6717
|
+
if (asChild && (leftIcon || rightIcon)) {
|
|
6718
|
+
if (!React49.isValidElement(children)) {
|
|
6719
|
+
const Comp2 = "button";
|
|
6720
|
+
return /* @__PURE__ */ jsxs(Comp2, { className: finalClassName, ref, ...props, children: [
|
|
6721
|
+
leftIcon && /* @__PURE__ */ jsx("span", { className: "pointer-events-none relative z-10 inline-flex items-center [&_svg]:text-current", children: leftIcon }),
|
|
6722
|
+
children,
|
|
6723
|
+
rightIcon && /* @__PURE__ */ jsx("span", { className: "pointer-events-none relative z-10 inline-flex items-center [&_svg]:text-current", children: rightIcon })
|
|
6724
|
+
] });
|
|
6725
|
+
}
|
|
6726
|
+
const iconWrapperClass = "pointer-events-none relative z-10 inline-flex items-center [&_svg]:text-current";
|
|
6727
|
+
const childProps = children.props;
|
|
6728
|
+
const clonedChild = React49.cloneElement(children, {
|
|
6729
|
+
className: cn(finalClassName, childProps.className),
|
|
6730
|
+
...props,
|
|
6731
|
+
children: /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
6732
|
+
leftIcon && /* @__PURE__ */ jsx("span", { className: iconWrapperClass, children: leftIcon }),
|
|
6733
|
+
childProps.children,
|
|
6734
|
+
rightIcon && /* @__PURE__ */ jsx("span", { className: iconWrapperClass, children: rightIcon })
|
|
6735
|
+
] })
|
|
6736
|
+
});
|
|
6737
|
+
return /* @__PURE__ */ jsx(Slot, { ref, children: clonedChild });
|
|
6738
|
+
}
|
|
6739
|
+
const Comp = asChild ? Slot : "button";
|
|
6743
6740
|
return /* @__PURE__ */ jsxs(Comp, { className: finalClassName, ref, ...props, children: [
|
|
6744
|
-
leftIcon && /* @__PURE__ */ jsx(
|
|
6745
|
-
"span",
|
|
6746
|
-
{
|
|
6747
|
-
className: cn(
|
|
6748
|
-
"pointer-events-none relative z-10 inline-flex items-center [&_svg]:text-current",
|
|
6749
|
-
iconSizeClass
|
|
6750
|
-
),
|
|
6751
|
-
children: leftIcon
|
|
6752
|
-
}
|
|
6753
|
-
),
|
|
6741
|
+
leftIcon && /* @__PURE__ */ jsx("span", { className: "pointer-events-none relative z-10 inline-flex items-center [&_svg]:text-current", children: leftIcon }),
|
|
6754
6742
|
children,
|
|
6755
|
-
rightIcon && /* @__PURE__ */ jsx(
|
|
6756
|
-
"span",
|
|
6757
|
-
{
|
|
6758
|
-
className: cn(
|
|
6759
|
-
"pointer-events-none relative z-10 inline-flex items-center [&_svg]:text-current",
|
|
6760
|
-
iconSizeClass
|
|
6761
|
-
),
|
|
6762
|
-
children: rightIcon
|
|
6763
|
-
}
|
|
6764
|
-
)
|
|
6743
|
+
rightIcon && /* @__PURE__ */ jsx("span", { className: "pointer-events-none relative z-10 inline-flex items-center [&_svg]:text-current", children: rightIcon })
|
|
6765
6744
|
] });
|
|
6766
6745
|
}
|
|
6767
6746
|
);
|
|
@@ -6806,13 +6785,13 @@ var textVariants = cva("text-foreground", {
|
|
|
6806
6785
|
}
|
|
6807
6786
|
});
|
|
6808
6787
|
var Text = React49.forwardRef(
|
|
6809
|
-
({
|
|
6788
|
+
({ size, weight, muted, variant, ...props }, ref) => {
|
|
6810
6789
|
const isMuted = muted !== void 0 ? muted : variant === "muted";
|
|
6811
6790
|
return /* @__PURE__ */ jsx(
|
|
6812
6791
|
"span",
|
|
6813
6792
|
{
|
|
6814
6793
|
ref,
|
|
6815
|
-
className:
|
|
6794
|
+
className: textVariants({ size, weight, muted: isMuted, variant }),
|
|
6816
6795
|
...props
|
|
6817
6796
|
}
|
|
6818
6797
|
);
|
|
@@ -6853,16 +6832,6 @@ var Alert = React49.forwardRef(
|
|
|
6853
6832
|
}
|
|
6854
6833
|
);
|
|
6855
6834
|
Alert.displayName = "Alert";
|
|
6856
|
-
var LINK_VARIANTS = [
|
|
6857
|
-
"primary",
|
|
6858
|
-
"secondary",
|
|
6859
|
-
"accent",
|
|
6860
|
-
"outline",
|
|
6861
|
-
"ghost",
|
|
6862
|
-
"link",
|
|
6863
|
-
"destructive"
|
|
6864
|
-
];
|
|
6865
|
-
var LINK_SIZES = ["xs", "sm", "md", "lg", "xl"];
|
|
6866
6835
|
var linkVariants = tokenCVA({
|
|
6867
6836
|
base: `${LINK_TOKENS.layout} ${LINK_TOKENS.fontWeight} ${LINK_TOKENS.transition.colors} ${LINK_TOKENS.focus.outline} ${LINK_TOKENS.focus.ring} ${LINK_TOKENS.focus.offset} ${LINK_TOKENS.state.disabled.pointerEvents} ${LINK_TOKENS.state.disabled.opacity}`,
|
|
6868
6837
|
variants: {
|
|
@@ -6876,11 +6845,9 @@ var linkVariants = tokenCVA({
|
|
|
6876
6845
|
destructive: `${LINK_TOKENS.variant.destructive.text} ${LINK_TOKENS.variant.destructive.hover} ${LINK_TOKENS.underlineOffset} ${LINK_TOKENS.variant.destructive.underline}`
|
|
6877
6846
|
},
|
|
6878
6847
|
size: {
|
|
6879
|
-
xs: `${LINK_TOKENS.height.xs} ${LINK_TOKENS.fontSize.xs} ${LINK_TOKENS.padding.horizontal.xs} ${LINK_TOKENS.padding.vertical.xs}`,
|
|
6880
6848
|
sm: `${LINK_TOKENS.height.sm} ${LINK_TOKENS.fontSize.sm} ${LINK_TOKENS.padding.horizontal.sm} ${LINK_TOKENS.padding.vertical.xs}`,
|
|
6881
6849
|
md: `${LINK_TOKENS.height.md} ${LINK_TOKENS.fontSize.md} ${LINK_TOKENS.padding.horizontal.md} ${LINK_TOKENS.padding.vertical.sm}`,
|
|
6882
|
-
lg: `${LINK_TOKENS.height.lg} ${LINK_TOKENS.fontSize.lg} ${LINK_TOKENS.padding.horizontal.lg} ${LINK_TOKENS.padding.vertical.sm}
|
|
6883
|
-
xl: `${LINK_TOKENS.height.xl} ${LINK_TOKENS.fontSize.xl} ${LINK_TOKENS.padding.horizontal.xl} ${LINK_TOKENS.padding.vertical.md}`
|
|
6850
|
+
lg: `${LINK_TOKENS.height.lg} ${LINK_TOKENS.fontSize.lg} ${LINK_TOKENS.padding.horizontal.lg} ${LINK_TOKENS.padding.vertical.sm}`
|
|
6884
6851
|
}
|
|
6885
6852
|
},
|
|
6886
6853
|
defaultVariants: {
|
|
@@ -6889,13 +6856,38 @@ var linkVariants = tokenCVA({
|
|
|
6889
6856
|
}
|
|
6890
6857
|
});
|
|
6891
6858
|
var Link = React49.forwardRef(
|
|
6892
|
-
({
|
|
6893
|
-
const
|
|
6894
|
-
|
|
6895
|
-
|
|
6896
|
-
|
|
6897
|
-
|
|
6898
|
-
|
|
6859
|
+
({ variant, size, leftIcon, rightIcon, children, disabled, onClick, href, tabIndex, ...props }, ref) => {
|
|
6860
|
+
const handleClick = React49.useCallback(
|
|
6861
|
+
(e) => {
|
|
6862
|
+
if (disabled) {
|
|
6863
|
+
e.preventDefault();
|
|
6864
|
+
e.stopPropagation();
|
|
6865
|
+
return;
|
|
6866
|
+
}
|
|
6867
|
+
onClick?.(e);
|
|
6868
|
+
},
|
|
6869
|
+
[disabled, onClick]
|
|
6870
|
+
);
|
|
6871
|
+
const finalClassName = linkVariants({ variant, size });
|
|
6872
|
+
const finalTabIndex = disabled ? tabIndex ?? -1 : tabIndex;
|
|
6873
|
+
const finalAriaDisabled = disabled ? true : void 0;
|
|
6874
|
+
return /* @__PURE__ */ jsxs(
|
|
6875
|
+
"a",
|
|
6876
|
+
{
|
|
6877
|
+
className: finalClassName,
|
|
6878
|
+
ref,
|
|
6879
|
+
href,
|
|
6880
|
+
tabIndex: finalTabIndex,
|
|
6881
|
+
"aria-disabled": finalAriaDisabled,
|
|
6882
|
+
onClick: handleClick,
|
|
6883
|
+
...props,
|
|
6884
|
+
children: [
|
|
6885
|
+
leftIcon && /* @__PURE__ */ jsx("span", { className: LINK_TOKENS.iconWrapper, children: leftIcon }),
|
|
6886
|
+
children,
|
|
6887
|
+
rightIcon && /* @__PURE__ */ jsx("span", { className: LINK_TOKENS.iconWrapper, children: rightIcon })
|
|
6888
|
+
]
|
|
6889
|
+
}
|
|
6890
|
+
);
|
|
6899
6891
|
}
|
|
6900
6892
|
);
|
|
6901
6893
|
Link.displayName = "Link";
|
|
@@ -7015,17 +7007,9 @@ var headingVariants = cva("font-display text-foreground", {
|
|
|
7015
7007
|
}
|
|
7016
7008
|
});
|
|
7017
7009
|
var Heading = React49.forwardRef(
|
|
7018
|
-
({
|
|
7010
|
+
({ level = 1, weight, muted, as, children, ...props }, ref) => {
|
|
7019
7011
|
const Component = as || `h${level}`;
|
|
7020
|
-
return /* @__PURE__ */ jsx(
|
|
7021
|
-
Component,
|
|
7022
|
-
{
|
|
7023
|
-
ref,
|
|
7024
|
-
className: cn(headingVariants({ level, weight, muted }), className),
|
|
7025
|
-
...props,
|
|
7026
|
-
children
|
|
7027
|
-
}
|
|
7028
|
-
);
|
|
7012
|
+
return /* @__PURE__ */ jsx(Component, { ref, className: headingVariants({ level, weight, muted }), ...props, children });
|
|
7029
7013
|
}
|
|
7030
7014
|
);
|
|
7031
7015
|
Heading.displayName = "Heading";
|
|
@@ -8005,7 +7989,6 @@ var checkboxVariants = cva(
|
|
|
8005
7989
|
);
|
|
8006
7990
|
var Checkbox = React49.forwardRef(
|
|
8007
7991
|
({
|
|
8008
|
-
className,
|
|
8009
7992
|
variant,
|
|
8010
7993
|
size,
|
|
8011
7994
|
state,
|
|
@@ -8067,10 +8050,7 @@ var Checkbox = React49.forwardRef(
|
|
|
8067
8050
|
},
|
|
8068
8051
|
[isDisabled, isControlled, checked, onCheckedChange, onKeyDown]
|
|
8069
8052
|
);
|
|
8070
|
-
const checkboxClasses =
|
|
8071
|
-
checkboxVariants({ variant, size, state: effectiveState }),
|
|
8072
|
-
className
|
|
8073
|
-
);
|
|
8053
|
+
const checkboxClasses = checkboxVariants({ variant, size, state: effectiveState });
|
|
8074
8054
|
const iconSize = size ? CHECKBOX_TOKENS.icon.size[size] : CHECKBOX_TOKENS.icon.size.md;
|
|
8075
8055
|
const renderIcon = () => {
|
|
8076
8056
|
if (indeterminate) {
|
|
@@ -8728,10 +8708,13 @@ var labelVariants = cva(
|
|
|
8728
8708
|
`${TEXT_TOKENS.fontSize.sm} ${TEXT_TOKENS.fontWeight.medium} ${TEXT_TOKENS.lineHeight.none} peer-disabled:cursor-not-allowed peer-disabled:opacity-70`
|
|
8729
8709
|
);
|
|
8730
8710
|
var Label2 = React49.forwardRef(
|
|
8731
|
-
({
|
|
8732
|
-
|
|
8733
|
-
|
|
8734
|
-
|
|
8711
|
+
({ required, children, ...props }, ref) => (
|
|
8712
|
+
// className and style are forbidden from public API - only CVA output is used
|
|
8713
|
+
/* @__PURE__ */ jsxs(LabelPrimitive.Root, { ref, className: labelVariants(), ...props, children: [
|
|
8714
|
+
children,
|
|
8715
|
+
required && /* @__PURE__ */ jsx("span", { className: cn(FORM_TOKENS.label.requiredMark, "ml-xs"), children: "*" })
|
|
8716
|
+
] })
|
|
8717
|
+
)
|
|
8735
8718
|
);
|
|
8736
8719
|
Label2.displayName = LabelPrimitive.Root.displayName;
|
|
8737
8720
|
var Field = React49.forwardRef(
|
|
@@ -8740,11 +8723,9 @@ var Field = React49.forwardRef(
|
|
|
8740
8723
|
}
|
|
8741
8724
|
);
|
|
8742
8725
|
Field.displayName = "Field";
|
|
8743
|
-
var FieldLabel = React49.forwardRef(
|
|
8744
|
-
({
|
|
8745
|
-
|
|
8746
|
-
}
|
|
8747
|
-
);
|
|
8726
|
+
var FieldLabel = React49.forwardRef((props, ref) => {
|
|
8727
|
+
return /* @__PURE__ */ jsx(Label2, { ref, ...props });
|
|
8728
|
+
});
|
|
8748
8729
|
FieldLabel.displayName = "FieldLabel";
|
|
8749
8730
|
var FieldControl = React49.forwardRef(
|
|
8750
8731
|
({ className, children, ...props }, ref) => {
|
|
@@ -8752,17 +8733,13 @@ var FieldControl = React49.forwardRef(
|
|
|
8752
8733
|
}
|
|
8753
8734
|
);
|
|
8754
8735
|
FieldControl.displayName = "FieldControl";
|
|
8755
|
-
var FieldDescription = React49.forwardRef(
|
|
8756
|
-
({
|
|
8757
|
-
|
|
8758
|
-
}
|
|
8759
|
-
);
|
|
8736
|
+
var FieldDescription = React49.forwardRef((props, ref) => {
|
|
8737
|
+
return /* @__PURE__ */ jsx(Text, { ref, size: "sm", muted: true, ...props });
|
|
8738
|
+
});
|
|
8760
8739
|
FieldDescription.displayName = "FieldDescription";
|
|
8761
|
-
var FieldError = React49.forwardRef(
|
|
8762
|
-
({
|
|
8763
|
-
|
|
8764
|
-
}
|
|
8765
|
-
);
|
|
8740
|
+
var FieldError = React49.forwardRef((props, ref) => {
|
|
8741
|
+
return /* @__PURE__ */ jsx(Text, { ref, size: "sm", variant: "destructive", ...props });
|
|
8742
|
+
});
|
|
8766
8743
|
FieldError.displayName = "FieldError";
|
|
8767
8744
|
var FieldRoot = Field;
|
|
8768
8745
|
FieldRoot.Label = FieldLabel;
|
|
@@ -8808,7 +8785,6 @@ var inputVariants = cva(
|
|
|
8808
8785
|
);
|
|
8809
8786
|
var Input = React49.forwardRef(
|
|
8810
8787
|
({
|
|
8811
|
-
className,
|
|
8812
8788
|
type = "text",
|
|
8813
8789
|
variant,
|
|
8814
8790
|
size,
|
|
@@ -8838,8 +8814,7 @@ var Input = React49.forwardRef(
|
|
|
8838
8814
|
inputVariants({ variant: baseVariant, size: baseSize, state, fullWidth }),
|
|
8839
8815
|
// Add padding for icons if present
|
|
8840
8816
|
iconLeft && INPUT_TOKENS.icon.paddingLeft,
|
|
8841
|
-
iconRight && INPUT_TOKENS.icon.paddingRight
|
|
8842
|
-
className
|
|
8817
|
+
iconRight && INPUT_TOKENS.icon.paddingRight
|
|
8843
8818
|
);
|
|
8844
8819
|
if (iconLeft || iconRight) {
|
|
8845
8820
|
return /* @__PURE__ */ jsxs("div", { className: cn("relative", fullWidth !== false && INPUT_TOKENS.width.full), children: [
|
|
@@ -8989,7 +8964,6 @@ var RadioGroup = React49.forwardRef(
|
|
|
8989
8964
|
RadioGroup.displayName = "RadioGroup";
|
|
8990
8965
|
var Radio = React49.forwardRef(
|
|
8991
8966
|
({
|
|
8992
|
-
className,
|
|
8993
8967
|
variant,
|
|
8994
8968
|
size,
|
|
8995
8969
|
state,
|
|
@@ -9123,10 +9097,7 @@ var Radio = React49.forwardRef(
|
|
|
9123
9097
|
onKeyDown
|
|
9124
9098
|
]
|
|
9125
9099
|
);
|
|
9126
|
-
const radioClasses =
|
|
9127
|
-
radioVariants({ variant, size: effectiveSize, state: effectiveState }),
|
|
9128
|
-
className
|
|
9129
|
-
);
|
|
9100
|
+
const radioClasses = radioVariants({ variant, size: effectiveSize, state: effectiveState });
|
|
9130
9101
|
const dotSize = RADIO_TOKENS.dot.size[effectiveSize];
|
|
9131
9102
|
const renderDot = () => {
|
|
9132
9103
|
if (!finalChecked) return null;
|
|
@@ -9211,7 +9182,6 @@ var textareaVariants = cva(
|
|
|
9211
9182
|
);
|
|
9212
9183
|
var Textarea = React49.forwardRef(
|
|
9213
9184
|
({
|
|
9214
|
-
className,
|
|
9215
9185
|
variant,
|
|
9216
9186
|
size,
|
|
9217
9187
|
state,
|
|
@@ -9236,7 +9206,7 @@ var Textarea = React49.forwardRef(
|
|
|
9236
9206
|
}
|
|
9237
9207
|
return void 0;
|
|
9238
9208
|
});
|
|
9239
|
-
const textareaClasses =
|
|
9209
|
+
const textareaClasses = textareaVariants({ variant, size, state, fullWidth });
|
|
9240
9210
|
const currentValue = value ?? defaultValue ?? "";
|
|
9241
9211
|
const currentLength = typeof currentValue === "string" ? currentValue.length : 0;
|
|
9242
9212
|
const shouldShowCounter = showCharacterCount && maxLength !== void 0;
|
|
@@ -9413,20 +9383,8 @@ var DialogHeader = React49.forwardRef(
|
|
|
9413
9383
|
);
|
|
9414
9384
|
DialogHeader.displayName = "DialogHeader";
|
|
9415
9385
|
var DialogTitle = React49.forwardRef(
|
|
9416
|
-
({ titleId,
|
|
9417
|
-
return /* @__PURE__ */ jsx(
|
|
9418
|
-
Heading,
|
|
9419
|
-
{
|
|
9420
|
-
ref,
|
|
9421
|
-
as: "h2",
|
|
9422
|
-
level: 4,
|
|
9423
|
-
weight: "semibold",
|
|
9424
|
-
id: titleId,
|
|
9425
|
-
className: cn(className),
|
|
9426
|
-
...props,
|
|
9427
|
-
children
|
|
9428
|
-
}
|
|
9429
|
-
);
|
|
9386
|
+
({ titleId, children, ...props }, ref) => {
|
|
9387
|
+
return /* @__PURE__ */ jsx(Heading, { ref, as: "h2", level: 4, weight: "semibold", id: titleId, ...props, children });
|
|
9430
9388
|
}
|
|
9431
9389
|
);
|
|
9432
9390
|
DialogTitle.displayName = "DialogTitle";
|
|
@@ -10491,7 +10449,7 @@ function useNotificationCenterContext() {
|
|
|
10491
10449
|
}
|
|
10492
10450
|
return context;
|
|
10493
10451
|
}
|
|
10494
|
-
var NotificationCenterDismissAll = React49.forwardRef(({ confirm = false, confirmMessage = "Clear all notifications?",
|
|
10452
|
+
var NotificationCenterDismissAll = React49.forwardRef(({ confirm = false, confirmMessage = "Clear all notifications?", ...props }, ref) => {
|
|
10495
10453
|
const { clearAll, getAll } = useNotificationCenterContext();
|
|
10496
10454
|
const notifications = getAll();
|
|
10497
10455
|
const handleClick = () => {
|
|
@@ -10515,7 +10473,6 @@ var NotificationCenterDismissAll = React49.forwardRef(({ confirm = false, confir
|
|
|
10515
10473
|
size: "sm",
|
|
10516
10474
|
onClick: handleClick,
|
|
10517
10475
|
"aria-label": "Clear all notifications",
|
|
10518
|
-
className,
|
|
10519
10476
|
...props,
|
|
10520
10477
|
children: "Clear all"
|
|
10521
10478
|
}
|
|
@@ -10544,7 +10501,6 @@ var NotificationCenterGroupHeader = React49.forwardRef(
|
|
|
10544
10501
|
onClick: onToggleCollapse,
|
|
10545
10502
|
"aria-label": collapsed ? "Expand group" : "Collapse group",
|
|
10546
10503
|
"aria-expanded": !collapsed,
|
|
10547
|
-
className: "h-6 w-6",
|
|
10548
10504
|
children: collapsed ? /* @__PURE__ */ jsx(ChevronDown, { className: "h-4 w-4" }) : /* @__PURE__ */ jsx(ChevronUp, { className: "h-4 w-4" })
|
|
10549
10505
|
}
|
|
10550
10506
|
)
|
|
@@ -10638,7 +10594,6 @@ var NotificationCenterItem = React49.forwardRef(
|
|
|
10638
10594
|
e.stopPropagation();
|
|
10639
10595
|
notification.action?.onClick();
|
|
10640
10596
|
},
|
|
10641
|
-
className: "h-7 px-xs text-xs",
|
|
10642
10597
|
children: notification.action.label
|
|
10643
10598
|
}
|
|
10644
10599
|
) })
|
|
@@ -10650,7 +10605,6 @@ var NotificationCenterItem = React49.forwardRef(
|
|
|
10650
10605
|
size: "icon",
|
|
10651
10606
|
onClick: handleDismiss,
|
|
10652
10607
|
"aria-label": "Dismiss notification",
|
|
10653
|
-
className: "absolute right-xs top-xs h-6 w-6 opacity-0 transition-opacity hover:text-foreground focus-visible:opacity-100 focus-visible:outline-none focus-visible:ring-1 group-hover:opacity-100",
|
|
10654
10608
|
children: /* @__PURE__ */ jsx(X, { className: "h-4 w-4" })
|
|
10655
10609
|
}
|
|
10656
10610
|
)
|
|
@@ -10948,7 +10902,6 @@ var NotificationCenterPanel = React49.forwardRef(
|
|
|
10948
10902
|
size: "icon",
|
|
10949
10903
|
onClick: onClose,
|
|
10950
10904
|
"aria-label": "Close notifications",
|
|
10951
|
-
className: "h-8 w-8",
|
|
10952
10905
|
children: /* @__PURE__ */ jsx(X, { className: "h-4 w-4" })
|
|
10953
10906
|
}
|
|
10954
10907
|
)
|
|
@@ -10992,10 +10945,10 @@ var NotificationCenterPanel = React49.forwardRef(
|
|
|
10992
10945
|
}
|
|
10993
10946
|
);
|
|
10994
10947
|
NotificationCenterPanel.displayName = "NotificationCenter.Panel";
|
|
10995
|
-
var NotificationCenterTrigger = React49.forwardRef(({ onClick, showBadge = true,
|
|
10948
|
+
var NotificationCenterTrigger = React49.forwardRef(({ onClick, showBadge = true, ...props }, ref) => {
|
|
10996
10949
|
const { getUnreadCount } = useNotificationCenterContext();
|
|
10997
10950
|
const unreadCount = getUnreadCount();
|
|
10998
|
-
return /* @__PURE__ */
|
|
10951
|
+
return /* @__PURE__ */ jsx(
|
|
10999
10952
|
Button,
|
|
11000
10953
|
{
|
|
11001
10954
|
ref,
|
|
@@ -11003,9 +10956,8 @@ var NotificationCenterTrigger = React49.forwardRef(({ onClick, showBadge = true,
|
|
|
11003
10956
|
size: "icon",
|
|
11004
10957
|
onClick,
|
|
11005
10958
|
"aria-label": `Open notifications${unreadCount > 0 ? ` (${unreadCount} unread)` : ""}`,
|
|
11006
|
-
className: cn("relative", className),
|
|
11007
10959
|
...props,
|
|
11008
|
-
children: [
|
|
10960
|
+
children: /* @__PURE__ */ jsxs("span", { className: "relative", children: [
|
|
11009
10961
|
/* @__PURE__ */ jsx(Bell, { className: "h-5 w-5" }),
|
|
11010
10962
|
showBadge && unreadCount > 0 && /* @__PURE__ */ jsx(
|
|
11011
10963
|
"span",
|
|
@@ -11017,7 +10969,7 @@ var NotificationCenterTrigger = React49.forwardRef(({ onClick, showBadge = true,
|
|
|
11017
10969
|
children: unreadCount > 99 ? "99+" : unreadCount
|
|
11018
10970
|
}
|
|
11019
10971
|
)
|
|
11020
|
-
]
|
|
10972
|
+
] })
|
|
11021
10973
|
}
|
|
11022
10974
|
);
|
|
11023
10975
|
});
|
|
@@ -11845,18 +11797,7 @@ var BreadcrumbsRoot = React49.forwardRef(
|
|
|
11845
11797
|
disabled: item.disabled,
|
|
11846
11798
|
children: [
|
|
11847
11799
|
index > 0 && /* @__PURE__ */ jsx(BreadcrumbsSeparator, { children: separator || defaultSeparator }),
|
|
11848
|
-
item.href && !isLast && !item.disabled ? /* @__PURE__ */ jsx(
|
|
11849
|
-
"a",
|
|
11850
|
-
{
|
|
11851
|
-
href: item.href,
|
|
11852
|
-
className: cn(
|
|
11853
|
-
NAVIGATION_TOKENS.states.default.text,
|
|
11854
|
-
NAVIGATION_TOKENS.states.hover.text,
|
|
11855
|
-
MOTION_TOKENS.transition.colors
|
|
11856
|
-
),
|
|
11857
|
-
children: item.label
|
|
11858
|
-
}
|
|
11859
|
-
) : /* @__PURE__ */ jsx(
|
|
11800
|
+
item.href && !isLast && !item.disabled ? /* @__PURE__ */ jsx(Link, { href: item.href, variant: "link", children: item.label }) : /* @__PURE__ */ jsx(
|
|
11860
11801
|
"span",
|
|
11861
11802
|
{
|
|
11862
11803
|
className: cn(
|
|
@@ -12775,4 +12716,4 @@ var Icon2 = React49.forwardRef(
|
|
|
12775
12716
|
);
|
|
12776
12717
|
Icon2.displayName = "Icon";
|
|
12777
12718
|
|
|
12778
|
-
export { ALERT_TOKENS, Alert, BADGE_VARIANTS, BUTTON_TOKENS, Backdrop, Badge, Box, Breadcrumbs, Button, CARD_TOKENS, CHECKBOX_TOKENS, Card, CardBody, CardFooter, CardHeader, Checkbox, Column, Container, Surface as ContainerSurface, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuItem, ContextMenuLabel, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuRoot, ContextMenuSeparator, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, DATA_TOKENS, DataListRoot as DataList, DataListItem, DataListLabel, DataListRoot, DataListValue, Dialog, DialogBody, DialogDescription, DialogFooter, DialogHeader, DialogRoot, DialogTitle, EmptyState, EmptyStateAction, EmptyStateDescription, EmptyStateIcon, EmptyStateTitle, 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,
|
|
12719
|
+
export { ALERT_TOKENS, Alert, BADGE_VARIANTS, BUTTON_TOKENS, Backdrop, Badge, Box, Breadcrumbs, Button, CARD_TOKENS, CHECKBOX_TOKENS, Card, CardBody, CardFooter, CardHeader, Checkbox, Column, Container, Surface as ContainerSurface, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuItem, ContextMenuLabel, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuRoot, ContextMenuSeparator, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, DATA_TOKENS, DataListRoot as DataList, DataListItem, DataListLabel, DataListRoot, DataListValue, Dialog, DialogBody, DialogDescription, DialogFooter, DialogHeader, DialogRoot, DialogTitle, EmptyState, EmptyStateAction, EmptyStateDescription, EmptyStateIcon, EmptyStateTitle, 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, Link, 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, Portal3 as Portal, 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, Toast, ToastProvider, ToastViewport, Toaster, UI_COLORS, accentColoredShadows, accentColors, alertVariants, allCSSVariables, allCSSVariablesCSS, animations, badgeVariants, baseColors, borderRadius, chartColors, checkboxVariants, colorCSSVariables, componentRadius, componentShadowMapping, surfaceVariants as containerSurfaceVariants, cssVariableColorTokens, durations, easings, elevationShadows, focusRings, fontFamily, fontSize, fontSizeWithMd, fontWeight, generateCSSVariablesCSS, glowEffects, headingVariants, iconVariants, inputVariants, keyframes, labelVariants, layoutSpacing, letterSpacing, lineHeight, linkVariants, motionCSSVariables, motionV2CSSVariables, motionV2Combined, motionV2Durations, motionV2Easings, motionV2Fade, motionV2Scale, motionV2Slide, motionV2TailwindConfig, motionV2Transitions, 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 };
|