@tenerife.music/ui 2.0.0 → 2.0.3

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.
@@ -306,6 +306,20 @@ var semanticColors = {
306
306
  // Light foreground for dark theme readability
307
307
  }
308
308
  };
309
+ var disabledColors = {
310
+ day: {
311
+ disabled: "0 0% 96%",
312
+ // Light gray background for disabled elements
313
+ disabledForeground: "0 0% 60%"
314
+ // Medium gray text/icon color (meets WCAG AA contrast 4.5:1 against disabled background)
315
+ },
316
+ night: {
317
+ disabled: "240 5% 12%",
318
+ // Dark gray background for disabled elements
319
+ disabledForeground: "240 5% 50%"
320
+ // Medium gray text/icon color (meets WCAG AA contrast 4.5:1 against disabled background)
321
+ }
322
+ };
309
323
  var chartColors = {
310
324
  day: {
311
325
  chart1: "12 76% 61%",
@@ -536,6 +550,11 @@ var tailwindThemeColors = {
536
550
  DEFAULT: "hsl(var(--muted))",
537
551
  foreground: "hsl(var(--muted-foreground))"
538
552
  },
553
+ // Disabled colors
554
+ disabled: {
555
+ DEFAULT: "hsl(var(--tm-disabled))",
556
+ foreground: "hsl(var(--tm-disabled-foreground))"
557
+ },
539
558
  // Destructive colors (semantic error)
540
559
  destructive: {
541
560
  DEFAULT: "hsl(var(--destructive))",
@@ -2715,6 +2734,10 @@ function getMergedTokens(_mode) {
2715
2734
  day: chartColors.day,
2716
2735
  night: chartColors.night
2717
2736
  };
2737
+ const disabledColors2 = {
2738
+ day: disabledColors.day,
2739
+ night: disabledColors.night
2740
+ };
2718
2741
  return {
2719
2742
  primaryColors: primaryColors2,
2720
2743
  accentColors: accentColors2,
@@ -2723,7 +2746,8 @@ function getMergedTokens(_mode) {
2723
2746
  surfaceColors: surfaceColors2,
2724
2747
  semanticColors: semanticColors2,
2725
2748
  textColors: textColors2,
2726
- chartColors: chartColors2
2749
+ chartColors: chartColors2,
2750
+ disabledColors: disabledColors2
2727
2751
  };
2728
2752
  }
2729
2753
  function updateCSSVariablesFromTokens(mode) {
@@ -2744,7 +2768,8 @@ function updateCSSVariablesFromTokens(mode) {
2744
2768
  surfaceColors: surfaceColors2,
2745
2769
  semanticColors: semanticColors2,
2746
2770
  textColors: textColors2,
2747
- chartColors: chartColors2
2771
+ chartColors: chartColors2,
2772
+ disabledColors: disabledColors2
2748
2773
  } = tokens;
2749
2774
  try {
2750
2775
  const base = baseColors2[mode];
@@ -2890,6 +2915,13 @@ function updateCSSVariablesFromTokens(mode) {
2890
2915
  } catch (error) {
2891
2916
  console.error("[Theme] Failed to set destructive colors:", error);
2892
2917
  }
2918
+ try {
2919
+ const disabled = disabledColors2[mode];
2920
+ root.style.setProperty("--tm-disabled", disabled.disabled);
2921
+ root.style.setProperty("--tm-disabled-foreground", disabled.disabledForeground);
2922
+ } catch (error) {
2923
+ console.error("[Theme] Failed to set disabled colors:", error);
2924
+ }
2893
2925
  try {
2894
2926
  Object.entries(motionCSSVariables).forEach(([key, value]) => {
2895
2927
  root.style.setProperty(key, value);
@@ -1,5 +1,5 @@
1
- import { M as Mode, a as ColorScale, B as BaseColorTokens, c as SurfaceColors, S as SemanticColors, T as TextColors } from '../colors-BrFmCQv-.cjs';
2
- export { C as ChartColors, b as ColorTokens, h as cssVariableColorTokens, t as tailwindThemeColors } from '../colors-BrFmCQv-.cjs';
1
+ import { M as Mode, a as ColorScale, B as BaseColorTokens, c as SurfaceColors, S as SemanticColors, T as TextColors } from '../colors-DTYb0mPM.cjs';
2
+ export { C as ChartColors, b as ColorTokens, h as cssVariableColorTokens, t as tailwindThemeColors } from '../colors-DTYb0mPM.cjs';
3
3
  import * as react_jsx_runtime from 'react/jsx-runtime';
4
4
  import React__default from 'react';
5
5
 
@@ -1,5 +1,5 @@
1
- import { M as Mode, a as ColorScale, B as BaseColorTokens, c as SurfaceColors, S as SemanticColors, T as TextColors } from '../colors-BrFmCQv-.js';
2
- export { C as ChartColors, b as ColorTokens, h as cssVariableColorTokens, t as tailwindThemeColors } from '../colors-BrFmCQv-.js';
1
+ import { M as Mode, a as ColorScale, B as BaseColorTokens, c as SurfaceColors, S as SemanticColors, T as TextColors } from '../colors-DTYb0mPM.js';
2
+ export { C as ChartColors, b as ColorTokens, h as cssVariableColorTokens, t as tailwindThemeColors } from '../colors-DTYb0mPM.js';
3
3
  import * as react_jsx_runtime from 'react/jsx-runtime';
4
4
  import React__default from 'react';
5
5
 
@@ -300,6 +300,20 @@ var semanticColors = {
300
300
  // Light foreground for dark theme readability
301
301
  }
302
302
  };
303
+ var disabledColors = {
304
+ day: {
305
+ disabled: "0 0% 96%",
306
+ // Light gray background for disabled elements
307
+ disabledForeground: "0 0% 60%"
308
+ // Medium gray text/icon color (meets WCAG AA contrast 4.5:1 against disabled background)
309
+ },
310
+ night: {
311
+ disabled: "240 5% 12%",
312
+ // Dark gray background for disabled elements
313
+ disabledForeground: "240 5% 50%"
314
+ // Medium gray text/icon color (meets WCAG AA contrast 4.5:1 against disabled background)
315
+ }
316
+ };
303
317
  var chartColors = {
304
318
  day: {
305
319
  chart1: "12 76% 61%",
@@ -530,6 +544,11 @@ var tailwindThemeColors = {
530
544
  DEFAULT: "hsl(var(--muted))",
531
545
  foreground: "hsl(var(--muted-foreground))"
532
546
  },
547
+ // Disabled colors
548
+ disabled: {
549
+ DEFAULT: "hsl(var(--tm-disabled))",
550
+ foreground: "hsl(var(--tm-disabled-foreground))"
551
+ },
533
552
  // Destructive colors (semantic error)
534
553
  destructive: {
535
554
  DEFAULT: "hsl(var(--destructive))",
@@ -2709,6 +2728,10 @@ function getMergedTokens(_mode) {
2709
2728
  day: chartColors.day,
2710
2729
  night: chartColors.night
2711
2730
  };
2731
+ const disabledColors2 = {
2732
+ day: disabledColors.day,
2733
+ night: disabledColors.night
2734
+ };
2712
2735
  return {
2713
2736
  primaryColors: primaryColors2,
2714
2737
  accentColors: accentColors2,
@@ -2717,7 +2740,8 @@ function getMergedTokens(_mode) {
2717
2740
  surfaceColors: surfaceColors2,
2718
2741
  semanticColors: semanticColors2,
2719
2742
  textColors: textColors2,
2720
- chartColors: chartColors2
2743
+ chartColors: chartColors2,
2744
+ disabledColors: disabledColors2
2721
2745
  };
2722
2746
  }
2723
2747
  function updateCSSVariablesFromTokens(mode) {
@@ -2738,7 +2762,8 @@ function updateCSSVariablesFromTokens(mode) {
2738
2762
  surfaceColors: surfaceColors2,
2739
2763
  semanticColors: semanticColors2,
2740
2764
  textColors: textColors2,
2741
- chartColors: chartColors2
2765
+ chartColors: chartColors2,
2766
+ disabledColors: disabledColors2
2742
2767
  } = tokens;
2743
2768
  try {
2744
2769
  const base = baseColors2[mode];
@@ -2884,6 +2909,13 @@ function updateCSSVariablesFromTokens(mode) {
2884
2909
  } catch (error) {
2885
2910
  console.error("[Theme] Failed to set destructive colors:", error);
2886
2911
  }
2912
+ try {
2913
+ const disabled = disabledColors2[mode];
2914
+ root.style.setProperty("--tm-disabled", disabled.disabled);
2915
+ root.style.setProperty("--tm-disabled-foreground", disabled.disabledForeground);
2916
+ } catch (error) {
2917
+ console.error("[Theme] Failed to set disabled colors:", error);
2918
+ }
2887
2919
  try {
2888
2920
  Object.entries(motionCSSVariables).forEach(([key, value]) => {
2889
2921
  root.style.setProperty(key, value);
@@ -347,6 +347,11 @@ var tailwindThemeColors = {
347
347
  DEFAULT: "hsl(var(--muted))",
348
348
  foreground: "hsl(var(--muted-foreground))"
349
349
  },
350
+ // Disabled colors
351
+ disabled: {
352
+ DEFAULT: "hsl(var(--tm-disabled))",
353
+ foreground: "hsl(var(--tm-disabled-foreground))"
354
+ },
350
355
  // Destructive colors (semantic error)
351
356
  destructive: {
352
357
  DEFAULT: "hsl(var(--destructive))",
@@ -1130,11 +1135,10 @@ var GRADIENT_TOKENS = {
1130
1135
  */
1131
1136
  overlay: {
1132
1137
  /**
1133
- * Dark overlay gradient: black/60 → transparent
1138
+ * Dark overlay gradient: black/60 → transparent (top)
1134
1139
  * Used for image hover states and text readability overlays
1135
1140
  */
1136
- dark: "bg-gradient-to-t from-black/60 via-transparent to-transparent"
1137
- }};
1141
+ dark: "bg-gradient-to-t from-black/60 via-transparent to-transparent"}};
1138
1142
 
1139
1143
  // src/FOUNDATION/tokens/spacing.ts
1140
1144
  var spacing = {
@@ -2728,10 +2732,10 @@ var SWITCH_TOKENS = {
2728
2732
  // Default track color using CSS var
2729
2733
  checked: "bg-[hsl(var(--tm-primary))]",
2730
2734
  // Checked state track
2731
- disabled: "bg-[hsl(var(--muted))]",
2732
- // Disabled state track
2733
- disabledChecked: "bg-[hsl(var(--muted))]",
2734
- // Disabled checked track
2735
+ disabled: "bg-[hsl(var(--tm-disabled))]",
2736
+ // Disabled state track - uses explicit disabled semantic token
2737
+ disabledChecked: "bg-[hsl(var(--tm-disabled))]",
2738
+ // Disabled checked track - uses explicit disabled semantic token
2735
2739
  error: "bg-[hsl(var(--destructive))]"
2736
2740
  // Error state track using CSS var
2737
2741
  },
@@ -2740,16 +2744,16 @@ var SWITCH_TOKENS = {
2740
2744
  // Default handle color using CSS var
2741
2745
  checked: "bg-[hsl(var(--tm-primary-foreground))]",
2742
2746
  // Checked state handle
2743
- disabled: "bg-[hsl(var(--muted-foreground))]",
2744
- // Disabled state handle
2745
- disabledChecked: "bg-[hsl(var(--muted-foreground))]",
2746
- // Disabled checked handle
2747
+ disabled: "bg-[hsl(var(--tm-disabled-foreground))]",
2748
+ // Disabled state handle - uses explicit disabled semantic token
2749
+ disabledChecked: "bg-[hsl(var(--tm-disabled-foreground))]",
2750
+ // Disabled checked handle - uses explicit disabled semantic token
2747
2751
  error: "bg-[hsl(var(--destructive-foreground))]"
2748
2752
  // Error state handle
2749
2753
  },
2750
2754
  opacity: {
2751
2755
  disabled: "opacity-50"
2752
- // Disabled opacity
2756
+ // Disabled opacity (may be used in addition to disabled tokens, not as replacement)
2753
2757
  }
2754
2758
  },
2755
2759
  /**
@@ -1,5 +1,5 @@
1
- export { B as BaseColorTokens, C as ChartColors, a as ColorScale, b as ColorTokens, M as Mode, S as SemanticColors, c as SurfaceColors, T as TextColors, d as accentColors, e as baseColors, f as chartColors, g as colorCSSVariables, h as cssVariableColorTokens, p as primaryColors, s as secondaryColors, i as semanticColors, j as surfaceColors, t as tailwindThemeColors, k as textColors } from '../colors-BrFmCQv-.cjs';
2
- export { A as ALERT_TOKENS, ce as AlignOffsetToken, cf as AnimationPresetToken, cg as AspectRatioToken, B as BUTTON_TOKENS, bp as BorderRadius, k as ButtonFontSize, l as ButtonHeight, m as ButtonPaddingHorizontal, n as ButtonPaddingVertical, o as ButtonShadow, C as CARD_TOKENS, a as CHECKBOX_TOKENS, bW as CanonicalFontSize, bX as CanonicalFontWeight, bY as CanonicalLetterSpacing, bZ as CanonicalLineHeight, b_ as CanonicalTextColor, p as CardPadding, q as CardRadius, r as CardShadow, s as CardSize, t as CardSpacingVertical, u as CheckboxSize, v as CheckboxState, w as CheckboxVariant, ch as ColorToken, bv as ColoredShadow, a6 as ComponentMotionDuration, a7 as ComponentMotionEasing, a8 as ComponentMotionTransition, bq as ComponentRadius, bJ as ComponentSpacing, ci as ContainerMaxWidthToken, cj as ContainerPaddingToken, bK as ContainerSpacing, b as DATA_LIST_TOKENS, D as DATA_TOKENS, x as DataListLabelWidth, y as DataListRowPadding, ck as DelayToken, bw as ElevationShadow, E as EmptyStateIconSize, cl as FlexBasisToken, bx as FocusRing, b$ as FontFamily, c0 as FontSize, c1 as FontWeight, by as GlowEffect, bL as GridSpacing, I as ICON_TOKENS, c as INPUT_TOKENS, z as IconColor, F as IconSize, G as IconStroke, H as InputFontSize, J as InputHeight, K as InputPaddingHorizontal, L as InputPaddingVertical, Q as InputRadius, U as InputSize, cm as LayoutSpaceToken, c2 as LetterSpacing, c3 as LineHeight, M as MENU_TOKENS, d as MOTION_TOKENS, V as MenuContentMinWidth, W as MenuContentPadding, X as MenuContentRadius, Y as MenuContentShadow, Z as MenuIndicatorOffset, _ as MenuIndicatorSize, $ as MenuItemGap, a0 as MenuItemHeight, a1 as MenuItemPadding, a2 as MenuItemRadius, a3 as MenuLabelPadding, a4 as MenuSeparatorMargin, cn as ModalFooterAlignToken, co as ModalHeightToken, cp as ModalSizeToken, cq as ModalWidthToken, a5 as MotionAnimation, b9 as MotionCombinedType, ba as MotionDuration, cr as MotionDurationToken, bb as MotionEasing, cs as MotionEasingToken, bc as MotionSlideDirection, ct as MotionToken, bd as MotionTransition, a9 as MotionTransitionPreset, cu as MotionTransitionToken, N as NAVIGATION_TOKENS, e as NOTIFICATION_TOKENS, aa as NavigationItemPadding, ab as NavigationListGap, ac as NavigationRadius, ad as NavigationShadow, ae as NavigationSize, af as NavigationState, ag as NotificationPanelWidth, ah as NotificationVariant, O as OVERLAY_TOKENS, ai as OverlayBackdropVariant, aj as OverlayModalSize, P as POPOVER_TOKENS, ak as PopoverArrowOffset, al as PopoverArrowSize, am as PopoverContentPadding, an as PopoverContentRadius, ao as PopoverContentShadow, ap as PopoverContentWidth, R as RADIO_TOKENS, aq as RadioSize, ar as RadioState, as as RadioVariant, cv as RadiusToken, cw as ResponsiveAlignOffset, cx as ResponsiveAnimationPreset, cy as ResponsiveAspectRatio, cz as ResponsiveColor, cA as ResponsiveContainerMaxWidth, cB as ResponsiveContainerPadding, cC as ResponsiveDelay, cD as ResponsiveFlexBasis, cE as ResponsiveModalHeight, cF as ResponsiveModalSize, cG as ResponsiveModalWidth, cH as ResponsiveMotion, cI as ResponsiveRadius, cJ as ResponsiveSelectSize, cK as ResponsiveSelectWidth, cL as ResponsiveShadow, cM as ResponsiveSideOffset, cN as ResponsiveSpace, cO as ResponsiveSurface, cP as ResponsiveTextLineHeight, cQ as ResponsiveTextSize, cR as ResponsiveTextWeight, S as SECTION_TOKENS, f as SELECT_TOKENS, g as SURFACE_TOKENS, h as SWITCH_TOKENS, at as SectionGap, au as SectionPadding, bM as SectionSpacing, av as SelectContentPadding, aw as SelectContentRadius, ax as SelectItemFontSize, ay as SelectItemPaddingHorizontal, az as SelectItemPaddingVertical, aA as SelectItemRadius, aB as SelectLabelFontSize, aC as SelectLabelPaddingHorizontal, aD as SelectLabelPaddingVertical, aE as SelectSeparatorMarginHorizontal, aF as SelectSeparatorMarginVertical, cS as SelectSizeToken, cT as SelectStateToken, aG as SelectTriggerFontSize, aH as SelectTriggerHeight, aI as SelectTriggerPaddingHorizontal, aJ as SelectTriggerPaddingVertical, aK as SelectTriggerRadius, cU as SelectVariantToken, cV as SelectWidthToken, bN as SemanticSpacing, cW as ShadowToken, cX as SideOffsetToken, aL as SkeletonAnimation, aM as SkeletonBackground, aN as SkeletonVariant, cY as SpaceToken, bO as Spacing, cZ as SpacingToken, bP as StackSpacing, aO as SurfacePadding, aP as SurfaceRadius, aQ as SurfaceShadow, c_ as SurfaceToken, aR as SurfaceVariant, aS as SwitchSize, aT as SwitchState, aU as SwitchVariant, T as TEXT_TOKENS, i as TOAST_TOKENS, j as TOOLTIP_TOKENS, aV as TableCellPadding, aW as TableGap, aX as TableHeaderPadding, aY as TableRowHeight, aZ as TableShadow, a_ as TextFontSize, a$ as TextFontWeight, b0 as TextLetterSpacing, c$ as TextLetterSpacingToken, b1 as TextLineHeight, d0 as TextLineHeightToken, d1 as TextSizeToken, c4 as TextStyle, d2 as TextWeightToken, b2 as ToastVariant, b3 as TooltipContentRadius, b4 as TooltipContentShadow, bV as UI_COLORS, bz as accentColoredShadows, b5 as allCSSVariables, b6 as allCSSVariablesCSS, br as borderRadius, bs as componentRadius, bA as componentShadowMapping, bB as elevationShadows, bC as focusRings, c5 as fontFamily, c6 as fontSize, c7 as fontSizeWithMd, c8 as fontWeight, b7 as generateCSSVariablesCSS, bD as glowEffects, bQ as layoutSpacing, c9 as letterSpacing, ca as lineHeight, be as motionCSSVariables, bf as motionCombined, bg as motionDurations, bh as motionEasings, bi as motionFade, bj as motionReducedMotion, bk as motionScale, bl as motionSlide, bm as motionTailwindConfig, bn as motionTransitionProperty, bo as motionTransitions, bE as primaryColoredShadows, bt as radiusCSSVariables, bR as semanticSpacing, bF as shadowBase, bG as shadowCSSVariables, bH as shadowOpacity, bS as spacing, bT as spacingCSSVariables, bu as tailwindRadiusConfig, bI as tailwindShadowConfig, bU as tailwindSpacingConfig, cb as tailwindTypographyConfig, cc as textStyles, b8 as tokenSystemSummary, cd as typographyCSSVariables } from '../index-DGtRM9Db.cjs';
1
+ export { B as BaseColorTokens, C as ChartColors, a as ColorScale, b as ColorTokens, M as Mode, S as SemanticColors, c as SurfaceColors, T as TextColors, d as accentColors, e as baseColors, f as chartColors, g as colorCSSVariables, h as cssVariableColorTokens, p as primaryColors, s as secondaryColors, i as semanticColors, j as surfaceColors, t as tailwindThemeColors, k as textColors } from '../colors-DTYb0mPM.cjs';
2
+ export { A as ALERT_TOKENS, ce as AlignOffsetToken, cf as AnimationPresetToken, cg as AspectRatioToken, B as BUTTON_TOKENS, bp as BorderRadius, k as ButtonFontSize, l as ButtonHeight, m as ButtonPaddingHorizontal, n as ButtonPaddingVertical, o as ButtonShadow, C as CARD_TOKENS, a as CHECKBOX_TOKENS, bW as CanonicalFontSize, bX as CanonicalFontWeight, bY as CanonicalLetterSpacing, bZ as CanonicalLineHeight, b_ as CanonicalTextColor, p as CardPadding, q as CardRadius, r as CardShadow, s as CardSize, t as CardSpacingVertical, u as CheckboxSize, v as CheckboxState, w as CheckboxVariant, ch as ColorToken, bv as ColoredShadow, a6 as ComponentMotionDuration, a7 as ComponentMotionEasing, a8 as ComponentMotionTransition, bq as ComponentRadius, bJ as ComponentSpacing, ci as ContainerMaxWidthToken, cj as ContainerPaddingToken, bK as ContainerSpacing, b as DATA_LIST_TOKENS, D as DATA_TOKENS, x as DataListLabelWidth, y as DataListRowPadding, ck as DelayToken, bw as ElevationShadow, E as EmptyStateIconSize, cl as FlexBasisToken, bx as FocusRing, b$ as FontFamily, c0 as FontSize, c1 as FontWeight, by as GlowEffect, bL as GridSpacing, I as ICON_TOKENS, c as INPUT_TOKENS, z as IconColor, F as IconSize, G as IconStroke, H as InputFontSize, J as InputHeight, K as InputPaddingHorizontal, L as InputPaddingVertical, Q as InputRadius, U as InputSize, cm as LayoutSpaceToken, c2 as LetterSpacing, c3 as LineHeight, M as MENU_TOKENS, d as MOTION_TOKENS, V as MenuContentMinWidth, W as MenuContentPadding, X as MenuContentRadius, Y as MenuContentShadow, Z as MenuIndicatorOffset, _ as MenuIndicatorSize, $ as MenuItemGap, a0 as MenuItemHeight, a1 as MenuItemPadding, a2 as MenuItemRadius, a3 as MenuLabelPadding, a4 as MenuSeparatorMargin, cn as ModalFooterAlignToken, co as ModalHeightToken, cp as ModalSizeToken, cq as ModalWidthToken, a5 as MotionAnimation, b9 as MotionCombinedType, ba as MotionDuration, cr as MotionDurationToken, bb as MotionEasing, cs as MotionEasingToken, bc as MotionSlideDirection, ct as MotionToken, bd as MotionTransition, a9 as MotionTransitionPreset, cu as MotionTransitionToken, N as NAVIGATION_TOKENS, e as NOTIFICATION_TOKENS, aa as NavigationItemPadding, ab as NavigationListGap, ac as NavigationRadius, ad as NavigationShadow, ae as NavigationSize, af as NavigationState, ag as NotificationPanelWidth, ah as NotificationVariant, O as OVERLAY_TOKENS, ai as OverlayBackdropVariant, aj as OverlayModalSize, P as POPOVER_TOKENS, ak as PopoverArrowOffset, al as PopoverArrowSize, am as PopoverContentPadding, an as PopoverContentRadius, ao as PopoverContentShadow, ap as PopoverContentWidth, R as RADIO_TOKENS, aq as RadioSize, ar as RadioState, as as RadioVariant, cv as RadiusToken, cw as ResponsiveAlignOffset, cx as ResponsiveAnimationPreset, cy as ResponsiveAspectRatio, cz as ResponsiveColor, cA as ResponsiveContainerMaxWidth, cB as ResponsiveContainerPadding, cC as ResponsiveDelay, cD as ResponsiveFlexBasis, cE as ResponsiveModalHeight, cF as ResponsiveModalSize, cG as ResponsiveModalWidth, cH as ResponsiveMotion, cI as ResponsiveRadius, cJ as ResponsiveSelectSize, cK as ResponsiveSelectWidth, cL as ResponsiveShadow, cM as ResponsiveSideOffset, cN as ResponsiveSpace, cO as ResponsiveSurface, cP as ResponsiveTextLineHeight, cQ as ResponsiveTextSize, cR as ResponsiveTextWeight, S as SECTION_TOKENS, f as SELECT_TOKENS, g as SURFACE_TOKENS, h as SWITCH_TOKENS, at as SectionGap, au as SectionPadding, bM as SectionSpacing, av as SelectContentPadding, aw as SelectContentRadius, ax as SelectItemFontSize, ay as SelectItemPaddingHorizontal, az as SelectItemPaddingVertical, aA as SelectItemRadius, aB as SelectLabelFontSize, aC as SelectLabelPaddingHorizontal, aD as SelectLabelPaddingVertical, aE as SelectSeparatorMarginHorizontal, aF as SelectSeparatorMarginVertical, cS as SelectSizeToken, cT as SelectStateToken, aG as SelectTriggerFontSize, aH as SelectTriggerHeight, aI as SelectTriggerPaddingHorizontal, aJ as SelectTriggerPaddingVertical, aK as SelectTriggerRadius, cU as SelectVariantToken, cV as SelectWidthToken, bN as SemanticSpacing, cW as ShadowToken, cX as SideOffsetToken, aL as SkeletonAnimation, aM as SkeletonBackground, aN as SkeletonVariant, cY as SpaceToken, bO as Spacing, cZ as SpacingToken, bP as StackSpacing, aO as SurfacePadding, aP as SurfaceRadius, aQ as SurfaceShadow, c_ as SurfaceToken, aR as SurfaceVariant, aS as SwitchSize, aT as SwitchState, aU as SwitchVariant, T as TEXT_TOKENS, i as TOAST_TOKENS, j as TOOLTIP_TOKENS, aV as TableCellPadding, aW as TableGap, aX as TableHeaderPadding, aY as TableRowHeight, aZ as TableShadow, a_ as TextFontSize, a$ as TextFontWeight, b0 as TextLetterSpacing, c$ as TextLetterSpacingToken, b1 as TextLineHeight, d0 as TextLineHeightToken, d1 as TextSizeToken, c4 as TextStyle, d2 as TextWeightToken, b2 as ToastVariant, b3 as TooltipContentRadius, b4 as TooltipContentShadow, bV as UI_COLORS, bz as accentColoredShadows, b5 as allCSSVariables, b6 as allCSSVariablesCSS, br as borderRadius, bs as componentRadius, bA as componentShadowMapping, bB as elevationShadows, bC as focusRings, c5 as fontFamily, c6 as fontSize, c7 as fontSizeWithMd, c8 as fontWeight, b7 as generateCSSVariablesCSS, bD as glowEffects, bQ as layoutSpacing, c9 as letterSpacing, ca as lineHeight, be as motionCSSVariables, bf as motionCombined, bg as motionDurations, bh as motionEasings, bi as motionFade, bj as motionReducedMotion, bk as motionScale, bl as motionSlide, bm as motionTailwindConfig, bn as motionTransitionProperty, bo as motionTransitions, bE as primaryColoredShadows, bt as radiusCSSVariables, bR as semanticSpacing, bF as shadowBase, bG as shadowCSSVariables, bH as shadowOpacity, bS as spacing, bT as spacingCSSVariables, bu as tailwindRadiusConfig, bI as tailwindShadowConfig, bU as tailwindSpacingConfig, cb as tailwindTypographyConfig, cc as textStyles, b8 as tokenSystemSummary, cd as typographyCSSVariables } from '../index-CfbBwBhc.cjs';
3
3
 
4
4
  /**
5
5
  * Artist Card Component Tokens
@@ -1,5 +1,5 @@
1
- export { B as BaseColorTokens, C as ChartColors, a as ColorScale, b as ColorTokens, M as Mode, S as SemanticColors, c as SurfaceColors, T as TextColors, d as accentColors, e as baseColors, f as chartColors, g as colorCSSVariables, h as cssVariableColorTokens, p as primaryColors, s as secondaryColors, i as semanticColors, j as surfaceColors, t as tailwindThemeColors, k as textColors } from '../colors-BrFmCQv-.js';
2
- export { A as ALERT_TOKENS, ce as AlignOffsetToken, cf as AnimationPresetToken, cg as AspectRatioToken, B as BUTTON_TOKENS, bp as BorderRadius, k as ButtonFontSize, l as ButtonHeight, m as ButtonPaddingHorizontal, n as ButtonPaddingVertical, o as ButtonShadow, C as CARD_TOKENS, a as CHECKBOX_TOKENS, bW as CanonicalFontSize, bX as CanonicalFontWeight, bY as CanonicalLetterSpacing, bZ as CanonicalLineHeight, b_ as CanonicalTextColor, p as CardPadding, q as CardRadius, r as CardShadow, s as CardSize, t as CardSpacingVertical, u as CheckboxSize, v as CheckboxState, w as CheckboxVariant, ch as ColorToken, bv as ColoredShadow, a6 as ComponentMotionDuration, a7 as ComponentMotionEasing, a8 as ComponentMotionTransition, bq as ComponentRadius, bJ as ComponentSpacing, ci as ContainerMaxWidthToken, cj as ContainerPaddingToken, bK as ContainerSpacing, b as DATA_LIST_TOKENS, D as DATA_TOKENS, x as DataListLabelWidth, y as DataListRowPadding, ck as DelayToken, bw as ElevationShadow, E as EmptyStateIconSize, cl as FlexBasisToken, bx as FocusRing, b$ as FontFamily, c0 as FontSize, c1 as FontWeight, by as GlowEffect, bL as GridSpacing, I as ICON_TOKENS, c as INPUT_TOKENS, z as IconColor, F as IconSize, G as IconStroke, H as InputFontSize, J as InputHeight, K as InputPaddingHorizontal, L as InputPaddingVertical, Q as InputRadius, U as InputSize, cm as LayoutSpaceToken, c2 as LetterSpacing, c3 as LineHeight, M as MENU_TOKENS, d as MOTION_TOKENS, V as MenuContentMinWidth, W as MenuContentPadding, X as MenuContentRadius, Y as MenuContentShadow, Z as MenuIndicatorOffset, _ as MenuIndicatorSize, $ as MenuItemGap, a0 as MenuItemHeight, a1 as MenuItemPadding, a2 as MenuItemRadius, a3 as MenuLabelPadding, a4 as MenuSeparatorMargin, cn as ModalFooterAlignToken, co as ModalHeightToken, cp as ModalSizeToken, cq as ModalWidthToken, a5 as MotionAnimation, b9 as MotionCombinedType, ba as MotionDuration, cr as MotionDurationToken, bb as MotionEasing, cs as MotionEasingToken, bc as MotionSlideDirection, ct as MotionToken, bd as MotionTransition, a9 as MotionTransitionPreset, cu as MotionTransitionToken, N as NAVIGATION_TOKENS, e as NOTIFICATION_TOKENS, aa as NavigationItemPadding, ab as NavigationListGap, ac as NavigationRadius, ad as NavigationShadow, ae as NavigationSize, af as NavigationState, ag as NotificationPanelWidth, ah as NotificationVariant, O as OVERLAY_TOKENS, ai as OverlayBackdropVariant, aj as OverlayModalSize, P as POPOVER_TOKENS, ak as PopoverArrowOffset, al as PopoverArrowSize, am as PopoverContentPadding, an as PopoverContentRadius, ao as PopoverContentShadow, ap as PopoverContentWidth, R as RADIO_TOKENS, aq as RadioSize, ar as RadioState, as as RadioVariant, cv as RadiusToken, cw as ResponsiveAlignOffset, cx as ResponsiveAnimationPreset, cy as ResponsiveAspectRatio, cz as ResponsiveColor, cA as ResponsiveContainerMaxWidth, cB as ResponsiveContainerPadding, cC as ResponsiveDelay, cD as ResponsiveFlexBasis, cE as ResponsiveModalHeight, cF as ResponsiveModalSize, cG as ResponsiveModalWidth, cH as ResponsiveMotion, cI as ResponsiveRadius, cJ as ResponsiveSelectSize, cK as ResponsiveSelectWidth, cL as ResponsiveShadow, cM as ResponsiveSideOffset, cN as ResponsiveSpace, cO as ResponsiveSurface, cP as ResponsiveTextLineHeight, cQ as ResponsiveTextSize, cR as ResponsiveTextWeight, S as SECTION_TOKENS, f as SELECT_TOKENS, g as SURFACE_TOKENS, h as SWITCH_TOKENS, at as SectionGap, au as SectionPadding, bM as SectionSpacing, av as SelectContentPadding, aw as SelectContentRadius, ax as SelectItemFontSize, ay as SelectItemPaddingHorizontal, az as SelectItemPaddingVertical, aA as SelectItemRadius, aB as SelectLabelFontSize, aC as SelectLabelPaddingHorizontal, aD as SelectLabelPaddingVertical, aE as SelectSeparatorMarginHorizontal, aF as SelectSeparatorMarginVertical, cS as SelectSizeToken, cT as SelectStateToken, aG as SelectTriggerFontSize, aH as SelectTriggerHeight, aI as SelectTriggerPaddingHorizontal, aJ as SelectTriggerPaddingVertical, aK as SelectTriggerRadius, cU as SelectVariantToken, cV as SelectWidthToken, bN as SemanticSpacing, cW as ShadowToken, cX as SideOffsetToken, aL as SkeletonAnimation, aM as SkeletonBackground, aN as SkeletonVariant, cY as SpaceToken, bO as Spacing, cZ as SpacingToken, bP as StackSpacing, aO as SurfacePadding, aP as SurfaceRadius, aQ as SurfaceShadow, c_ as SurfaceToken, aR as SurfaceVariant, aS as SwitchSize, aT as SwitchState, aU as SwitchVariant, T as TEXT_TOKENS, i as TOAST_TOKENS, j as TOOLTIP_TOKENS, aV as TableCellPadding, aW as TableGap, aX as TableHeaderPadding, aY as TableRowHeight, aZ as TableShadow, a_ as TextFontSize, a$ as TextFontWeight, b0 as TextLetterSpacing, c$ as TextLetterSpacingToken, b1 as TextLineHeight, d0 as TextLineHeightToken, d1 as TextSizeToken, c4 as TextStyle, d2 as TextWeightToken, b2 as ToastVariant, b3 as TooltipContentRadius, b4 as TooltipContentShadow, bV as UI_COLORS, bz as accentColoredShadows, b5 as allCSSVariables, b6 as allCSSVariablesCSS, br as borderRadius, bs as componentRadius, bA as componentShadowMapping, bB as elevationShadows, bC as focusRings, c5 as fontFamily, c6 as fontSize, c7 as fontSizeWithMd, c8 as fontWeight, b7 as generateCSSVariablesCSS, bD as glowEffects, bQ as layoutSpacing, c9 as letterSpacing, ca as lineHeight, be as motionCSSVariables, bf as motionCombined, bg as motionDurations, bh as motionEasings, bi as motionFade, bj as motionReducedMotion, bk as motionScale, bl as motionSlide, bm as motionTailwindConfig, bn as motionTransitionProperty, bo as motionTransitions, bE as primaryColoredShadows, bt as radiusCSSVariables, bR as semanticSpacing, bF as shadowBase, bG as shadowCSSVariables, bH as shadowOpacity, bS as spacing, bT as spacingCSSVariables, bu as tailwindRadiusConfig, bI as tailwindShadowConfig, bU as tailwindSpacingConfig, cb as tailwindTypographyConfig, cc as textStyles, b8 as tokenSystemSummary, cd as typographyCSSVariables } from '../index-DGtRM9Db.js';
1
+ export { B as BaseColorTokens, C as ChartColors, a as ColorScale, b as ColorTokens, M as Mode, S as SemanticColors, c as SurfaceColors, T as TextColors, d as accentColors, e as baseColors, f as chartColors, g as colorCSSVariables, h as cssVariableColorTokens, p as primaryColors, s as secondaryColors, i as semanticColors, j as surfaceColors, t as tailwindThemeColors, k as textColors } from '../colors-DTYb0mPM.js';
2
+ export { A as ALERT_TOKENS, ce as AlignOffsetToken, cf as AnimationPresetToken, cg as AspectRatioToken, B as BUTTON_TOKENS, bp as BorderRadius, k as ButtonFontSize, l as ButtonHeight, m as ButtonPaddingHorizontal, n as ButtonPaddingVertical, o as ButtonShadow, C as CARD_TOKENS, a as CHECKBOX_TOKENS, bW as CanonicalFontSize, bX as CanonicalFontWeight, bY as CanonicalLetterSpacing, bZ as CanonicalLineHeight, b_ as CanonicalTextColor, p as CardPadding, q as CardRadius, r as CardShadow, s as CardSize, t as CardSpacingVertical, u as CheckboxSize, v as CheckboxState, w as CheckboxVariant, ch as ColorToken, bv as ColoredShadow, a6 as ComponentMotionDuration, a7 as ComponentMotionEasing, a8 as ComponentMotionTransition, bq as ComponentRadius, bJ as ComponentSpacing, ci as ContainerMaxWidthToken, cj as ContainerPaddingToken, bK as ContainerSpacing, b as DATA_LIST_TOKENS, D as DATA_TOKENS, x as DataListLabelWidth, y as DataListRowPadding, ck as DelayToken, bw as ElevationShadow, E as EmptyStateIconSize, cl as FlexBasisToken, bx as FocusRing, b$ as FontFamily, c0 as FontSize, c1 as FontWeight, by as GlowEffect, bL as GridSpacing, I as ICON_TOKENS, c as INPUT_TOKENS, z as IconColor, F as IconSize, G as IconStroke, H as InputFontSize, J as InputHeight, K as InputPaddingHorizontal, L as InputPaddingVertical, Q as InputRadius, U as InputSize, cm as LayoutSpaceToken, c2 as LetterSpacing, c3 as LineHeight, M as MENU_TOKENS, d as MOTION_TOKENS, V as MenuContentMinWidth, W as MenuContentPadding, X as MenuContentRadius, Y as MenuContentShadow, Z as MenuIndicatorOffset, _ as MenuIndicatorSize, $ as MenuItemGap, a0 as MenuItemHeight, a1 as MenuItemPadding, a2 as MenuItemRadius, a3 as MenuLabelPadding, a4 as MenuSeparatorMargin, cn as ModalFooterAlignToken, co as ModalHeightToken, cp as ModalSizeToken, cq as ModalWidthToken, a5 as MotionAnimation, b9 as MotionCombinedType, ba as MotionDuration, cr as MotionDurationToken, bb as MotionEasing, cs as MotionEasingToken, bc as MotionSlideDirection, ct as MotionToken, bd as MotionTransition, a9 as MotionTransitionPreset, cu as MotionTransitionToken, N as NAVIGATION_TOKENS, e as NOTIFICATION_TOKENS, aa as NavigationItemPadding, ab as NavigationListGap, ac as NavigationRadius, ad as NavigationShadow, ae as NavigationSize, af as NavigationState, ag as NotificationPanelWidth, ah as NotificationVariant, O as OVERLAY_TOKENS, ai as OverlayBackdropVariant, aj as OverlayModalSize, P as POPOVER_TOKENS, ak as PopoverArrowOffset, al as PopoverArrowSize, am as PopoverContentPadding, an as PopoverContentRadius, ao as PopoverContentShadow, ap as PopoverContentWidth, R as RADIO_TOKENS, aq as RadioSize, ar as RadioState, as as RadioVariant, cv as RadiusToken, cw as ResponsiveAlignOffset, cx as ResponsiveAnimationPreset, cy as ResponsiveAspectRatio, cz as ResponsiveColor, cA as ResponsiveContainerMaxWidth, cB as ResponsiveContainerPadding, cC as ResponsiveDelay, cD as ResponsiveFlexBasis, cE as ResponsiveModalHeight, cF as ResponsiveModalSize, cG as ResponsiveModalWidth, cH as ResponsiveMotion, cI as ResponsiveRadius, cJ as ResponsiveSelectSize, cK as ResponsiveSelectWidth, cL as ResponsiveShadow, cM as ResponsiveSideOffset, cN as ResponsiveSpace, cO as ResponsiveSurface, cP as ResponsiveTextLineHeight, cQ as ResponsiveTextSize, cR as ResponsiveTextWeight, S as SECTION_TOKENS, f as SELECT_TOKENS, g as SURFACE_TOKENS, h as SWITCH_TOKENS, at as SectionGap, au as SectionPadding, bM as SectionSpacing, av as SelectContentPadding, aw as SelectContentRadius, ax as SelectItemFontSize, ay as SelectItemPaddingHorizontal, az as SelectItemPaddingVertical, aA as SelectItemRadius, aB as SelectLabelFontSize, aC as SelectLabelPaddingHorizontal, aD as SelectLabelPaddingVertical, aE as SelectSeparatorMarginHorizontal, aF as SelectSeparatorMarginVertical, cS as SelectSizeToken, cT as SelectStateToken, aG as SelectTriggerFontSize, aH as SelectTriggerHeight, aI as SelectTriggerPaddingHorizontal, aJ as SelectTriggerPaddingVertical, aK as SelectTriggerRadius, cU as SelectVariantToken, cV as SelectWidthToken, bN as SemanticSpacing, cW as ShadowToken, cX as SideOffsetToken, aL as SkeletonAnimation, aM as SkeletonBackground, aN as SkeletonVariant, cY as SpaceToken, bO as Spacing, cZ as SpacingToken, bP as StackSpacing, aO as SurfacePadding, aP as SurfaceRadius, aQ as SurfaceShadow, c_ as SurfaceToken, aR as SurfaceVariant, aS as SwitchSize, aT as SwitchState, aU as SwitchVariant, T as TEXT_TOKENS, i as TOAST_TOKENS, j as TOOLTIP_TOKENS, aV as TableCellPadding, aW as TableGap, aX as TableHeaderPadding, aY as TableRowHeight, aZ as TableShadow, a_ as TextFontSize, a$ as TextFontWeight, b0 as TextLetterSpacing, c$ as TextLetterSpacingToken, b1 as TextLineHeight, d0 as TextLineHeightToken, d1 as TextSizeToken, c4 as TextStyle, d2 as TextWeightToken, b2 as ToastVariant, b3 as TooltipContentRadius, b4 as TooltipContentShadow, bV as UI_COLORS, bz as accentColoredShadows, b5 as allCSSVariables, b6 as allCSSVariablesCSS, br as borderRadius, bs as componentRadius, bA as componentShadowMapping, bB as elevationShadows, bC as focusRings, c5 as fontFamily, c6 as fontSize, c7 as fontSizeWithMd, c8 as fontWeight, b7 as generateCSSVariablesCSS, bD as glowEffects, bQ as layoutSpacing, c9 as letterSpacing, ca as lineHeight, be as motionCSSVariables, bf as motionCombined, bg as motionDurations, bh as motionEasings, bi as motionFade, bj as motionReducedMotion, bk as motionScale, bl as motionSlide, bm as motionTailwindConfig, bn as motionTransitionProperty, bo as motionTransitions, bE as primaryColoredShadows, bt as radiusCSSVariables, bR as semanticSpacing, bF as shadowBase, bG as shadowCSSVariables, bH as shadowOpacity, bS as spacing, bT as spacingCSSVariables, bu as tailwindRadiusConfig, bI as tailwindShadowConfig, bU as tailwindSpacingConfig, cb as tailwindTypographyConfig, cc as textStyles, b8 as tokenSystemSummary, cd as typographyCSSVariables } from '../index-CfbBwBhc.js';
3
3
 
4
4
  /**
5
5
  * Artist Card Component Tokens
@@ -345,6 +345,11 @@ var tailwindThemeColors = {
345
345
  DEFAULT: "hsl(var(--muted))",
346
346
  foreground: "hsl(var(--muted-foreground))"
347
347
  },
348
+ // Disabled colors
349
+ disabled: {
350
+ DEFAULT: "hsl(var(--tm-disabled))",
351
+ foreground: "hsl(var(--tm-disabled-foreground))"
352
+ },
348
353
  // Destructive colors (semantic error)
349
354
  destructive: {
350
355
  DEFAULT: "hsl(var(--destructive))",
@@ -1128,11 +1133,10 @@ var GRADIENT_TOKENS = {
1128
1133
  */
1129
1134
  overlay: {
1130
1135
  /**
1131
- * Dark overlay gradient: black/60 → transparent
1136
+ * Dark overlay gradient: black/60 → transparent (top)
1132
1137
  * Used for image hover states and text readability overlays
1133
1138
  */
1134
- dark: "bg-gradient-to-t from-black/60 via-transparent to-transparent"
1135
- }};
1139
+ dark: "bg-gradient-to-t from-black/60 via-transparent to-transparent"}};
1136
1140
 
1137
1141
  // src/FOUNDATION/tokens/spacing.ts
1138
1142
  var spacing = {
@@ -2726,10 +2730,10 @@ var SWITCH_TOKENS = {
2726
2730
  // Default track color using CSS var
2727
2731
  checked: "bg-[hsl(var(--tm-primary))]",
2728
2732
  // Checked state track
2729
- disabled: "bg-[hsl(var(--muted))]",
2730
- // Disabled state track
2731
- disabledChecked: "bg-[hsl(var(--muted))]",
2732
- // Disabled checked track
2733
+ disabled: "bg-[hsl(var(--tm-disabled))]",
2734
+ // Disabled state track - uses explicit disabled semantic token
2735
+ disabledChecked: "bg-[hsl(var(--tm-disabled))]",
2736
+ // Disabled checked track - uses explicit disabled semantic token
2733
2737
  error: "bg-[hsl(var(--destructive))]"
2734
2738
  // Error state track using CSS var
2735
2739
  },
@@ -2738,16 +2742,16 @@ var SWITCH_TOKENS = {
2738
2742
  // Default handle color using CSS var
2739
2743
  checked: "bg-[hsl(var(--tm-primary-foreground))]",
2740
2744
  // Checked state handle
2741
- disabled: "bg-[hsl(var(--muted-foreground))]",
2742
- // Disabled state handle
2743
- disabledChecked: "bg-[hsl(var(--muted-foreground))]",
2744
- // Disabled checked handle
2745
+ disabled: "bg-[hsl(var(--tm-disabled-foreground))]",
2746
+ // Disabled state handle - uses explicit disabled semantic token
2747
+ disabledChecked: "bg-[hsl(var(--tm-disabled-foreground))]",
2748
+ // Disabled checked handle - uses explicit disabled semantic token
2745
2749
  error: "bg-[hsl(var(--destructive-foreground))]"
2746
2750
  // Error state handle
2747
2751
  },
2748
2752
  opacity: {
2749
2753
  disabled: "opacity-50"
2750
- // Disabled opacity
2754
+ // Disabled opacity (may be used in addition to disabled tokens, not as replacement)
2751
2755
  }
2752
2756
  },
2753
2757
  /**
package/package.json CHANGED
@@ -1,8 +1,7 @@
1
1
  {
2
2
  "name": "@tenerife.music/ui",
3
- "version": "2.0.0",
3
+ "version": "2.0.3",
4
4
  "private": false,
5
- "packageManager": "pnpm@10.26.0",
6
5
  "type": "module",
7
6
  "sideEffects": [
8
7
  "**/*.css",
@@ -40,60 +39,6 @@
40
39
  "publishConfig": {
41
40
  "access": "public"
42
41
  },
43
- "scripts": {
44
- "dev": "tsup --watch",
45
- "build": "tsup",
46
- "clean": "rimraf dist",
47
- "preview": "vite preview",
48
- "storybook": "storybook dev -p 6006",
49
- "build-storybook": "storybook build",
50
- "chromatic": "./scripts/chromatic.sh",
51
- "chromatic:ci": "CHROMATIC_CI_MODE=true ./scripts/chromatic.sh",
52
- "test": "vitest run",
53
- "test:watch": "vitest",
54
- "test:ui": "vitest --ui",
55
- "test:coverage": "vitest run --coverage",
56
- "test:a11y": "vitest run a11y.test",
57
- "test:focus": "playwright test --config=playwright/playwright.config.ts",
58
- "a11y:contrast": "tsx scripts/a11y-contrast-check.js",
59
- "typecheck": "tsc --noEmit && tsc --noEmit --project tsconfig.vite.json",
60
- "lint": "eslint . --ext .ts,.tsx --fix --ignore-pattern '**/*.stories.*' --ignore-pattern '.storybook/**' --ignore-pattern 'storybook-static/**' --ignore-pattern 'docs/**' --ignore-pattern '.cursor/**' --ignore-pattern 'docs_archive/**'",
61
- "lint:fix": "./scripts/lint-local.sh",
62
- "lint:check": "eslint . --ext .ts,.tsx --ignore-pattern '**/*.stories.*' --ignore-pattern '.storybook/**' --ignore-pattern 'storybook-static/**' --ignore-pattern 'docs/**' --ignore-pattern '.cursor/**' --ignore-pattern 'docs_archive/**'",
63
- "lint:strict": "eslint . --ext .ts,.tsx --max-warnings=0 --ignore-pattern '**/*.stories.*' --ignore-pattern '.storybook/**' --ignore-pattern 'storybook-static/**' --ignore-pattern 'docs/**' --ignore-pattern '.cursor/**' --ignore-pattern 'docs_archive/**'",
64
- "lint:ci": "./scripts/lint-ci.sh",
65
- "lint:rules": "eslint --config eslint-rules/eslint.config.mjs eslint-rules",
66
- "format": "prettier . --write",
67
- "format:check": "prettier . --check",
68
- "validate": "pnpm typecheck && pnpm lint:check && pnpm format:check && pnpm check:motion-v1",
69
- "ci": "pnpm typecheck && pnpm lint:strict && pnpm format:check && pnpm check:motion-v1 && pnpm build && pnpm test",
70
- "ci:full": "pnpm run ci && pnpm test:coverage && pnpm ci:a11y",
71
- "ci:a11y": "pnpm test:a11y && pnpm a11y:contrast",
72
- "ci:local": "./scripts/ci-local.sh",
73
- "publish:patch": "./scripts/publish.sh patch",
74
- "publish:minor": "./scripts/publish.sh minor",
75
- "publish:major": "./scripts/publish.sh major",
76
- "prepublishOnly": "pnpm clean && pnpm build && pnpm typecheck",
77
- "theme:create": "tsx scripts/theme-cli.ts create",
78
- "theme:validate": "tsx scripts/theme-validate.ts",
79
- "tokens:export": "tsx scripts/export-tokens.ts",
80
- "ui:check": "tsx scripts/check-ui-consistency.ts",
81
- "safelist:generate": "tsx scripts/generateTailwindSafelist.ts",
82
- "verify:interaction-authority": "node scripts/verify-interaction-authority.mjs",
83
- "governance:review": "node scripts/governance-review.mjs",
84
- "check:motion-v1": "node scripts/check-motion-v1.mjs",
85
- "component:generate": "tsx scripts/generate-extension-component.ts",
86
- "component:analyze": "tsx scripts/analyze-component-needs.ts",
87
- "feedback:collect": "tsx scripts/collect-usage-feedback.ts",
88
- "docs:dev": "cd docs-app && npm run docs:dev",
89
- "docs:build": "cd docs-app && npm run docs:build",
90
- "docs:start": "cd docs-app && npm run docs:start",
91
- "docs:generate-api": "cd docs-app && npm run docs:generate-api",
92
- "docs:validate": "cd docs-app && npm run docs:validate",
93
- "docs:analyze": "cd docs-app && npm run docs:analyze",
94
- "commitlint": "commitlint",
95
- "prepare": "husky"
96
- },
97
42
  "peerDependencies": {
98
43
  "next": "^13.0.0 || ^14.0.0 || ^15.0.0",
99
44
  "react": "^18 || ^19",
@@ -158,8 +103,9 @@
158
103
  "@types/node": "^20.19.25",
159
104
  "@types/react": "^19",
160
105
  "@types/react-dom": "^19",
106
+ "@typescript-eslint/rule-tester": "^8.51.0",
161
107
  "@typescript-eslint/types": "^8.47.0",
162
- "@typescript-eslint/utils": "^8.47.0",
108
+ "@typescript-eslint/utils": "^8.51.0",
163
109
  "@vitejs/plugin-react": "^4.0.0",
164
110
  "@vitest/coverage-v8": "^4.0.15",
165
111
  "@vitest/ui": "^4.0.15",
@@ -220,5 +166,63 @@
220
166
  "import": "./dist/extensions/next/index.mjs",
221
167
  "require": "./dist/extensions/next/index.cjs"
222
168
  }
169
+ },
170
+ "scripts": {
171
+ "dev": "tsup --watch",
172
+ "build": "tsup",
173
+ "clean": "rimraf dist",
174
+ "preview": "vite preview",
175
+ "storybook": "storybook dev -p 6006",
176
+ "build-storybook": "storybook build",
177
+ "chromatic": "./scripts/chromatic.sh",
178
+ "chromatic:ci": "CHROMATIC_CI_MODE=true ./scripts/chromatic.sh",
179
+ "test": "vitest run",
180
+ "test:watch": "vitest",
181
+ "test:ui": "vitest --ui",
182
+ "test:coverage": "vitest run --coverage",
183
+ "test:a11y": "vitest run a11y.test",
184
+ "test:focus": "playwright test --config=playwright/playwright.config.ts",
185
+ "a11y:contrast": "tsx scripts/a11y-contrast-check.js",
186
+ "typecheck": "tsc --noEmit && tsc --noEmit --project tsconfig.vite.json",
187
+ "lint": "eslint . --ext .ts,.tsx --fix --ignore-pattern '**/*.stories.*' --ignore-pattern '.storybook/**' --ignore-pattern 'storybook-static/**' --ignore-pattern 'docs/**' --ignore-pattern '.cursor/**' --ignore-pattern 'docs_archive/**'",
188
+ "lint:fix": "./scripts/lint-local.sh",
189
+ "lint:check": "eslint . --ext .ts,.tsx --ignore-pattern '**/*.stories.*' --ignore-pattern '.storybook/**' --ignore-pattern 'storybook-static/**' --ignore-pattern 'docs/**' --ignore-pattern '.cursor/**' --ignore-pattern 'docs_archive/**'",
190
+ "lint:strict": "eslint . --ext .ts,.tsx --max-warnings=0 --ignore-pattern '**/*.stories.*' --ignore-pattern '.storybook/**' --ignore-pattern 'storybook-static/**' --ignore-pattern 'docs/**' --ignore-pattern '.cursor/**' --ignore-pattern 'docs_archive/**'",
191
+ "lint:ci": "./scripts/lint-ci.sh",
192
+ "lint:rules": "eslint --config eslint-rules/eslint.config.mjs eslint-rules",
193
+ "format": "prettier . --write",
194
+ "format:check": "prettier . --check",
195
+ "check:theme-tokens": "node scripts/check-theme-token-parity.mjs",
196
+ "validate": "pnpm typecheck && pnpm lint:check && pnpm format:check && pnpm check:motion-v1 && pnpm check:next-document && pnpm check:theme-tokens",
197
+ "ci": "pnpm typecheck && pnpm lint:strict && pnpm format:check && pnpm check:motion-v1 && pnpm check:next-document && pnpm check:theme-tokens && pnpm build && pnpm test",
198
+ "ci:full": "pnpm run ci && pnpm test:coverage && pnpm ci:a11y",
199
+ "ci:a11y": "pnpm test:a11y && pnpm a11y:contrast",
200
+ "ci:local": "./scripts/ci-local.sh",
201
+ "publish:patch": "./scripts/publish.sh patch",
202
+ "publish:minor": "./scripts/publish.sh minor",
203
+ "publish:major": "./scripts/publish.sh major",
204
+ "theme:create": "tsx scripts/theme-cli.ts create",
205
+ "theme:generate": "tsx tools/theme-generator/bin/theme-generate.ts",
206
+ "theme:validate": "tsx tools/theme-validator/bin/theme-validate.ts",
207
+ "theme:validate:all": "node scripts/theme-validate-all.mjs",
208
+ "theme:validate:extension": "node scripts/theme-validate-extension.mjs",
209
+ "theme:parity-check": "node scripts/check-theme-token-parity.mjs",
210
+ "tokens:export": "tsx scripts/export-tokens.ts",
211
+ "ui:check": "tsx scripts/check-ui-consistency.ts",
212
+ "safelist:generate": "tsx scripts/generateTailwindSafelist.ts",
213
+ "verify:interaction-authority": "node scripts/verify-interaction-authority.mjs",
214
+ "governance:review": "node scripts/governance-review.mjs",
215
+ "check:motion-v1": "node scripts/check-motion-v1.mjs",
216
+ "check:next-document": "node scripts/check-next-document-imports.mjs",
217
+ "component:generate": "tsx scripts/generate-extension-component.ts",
218
+ "component:analyze": "tsx scripts/analyze-component-needs.ts",
219
+ "feedback:collect": "tsx scripts/collect-usage-feedback.ts",
220
+ "docs:dev": "cd docs-app && npm run docs:dev",
221
+ "docs:build": "cd docs-app && npm run docs:build",
222
+ "docs:start": "cd docs-app && npm run docs:start",
223
+ "docs:generate-api": "cd docs-app && npm run docs:generate-api",
224
+ "docs:validate": "cd docs-app && npm run docs:validate",
225
+ "docs:analyze": "cd docs-app && npm run docs:analyze",
226
+ "commitlint": "commitlint"
223
227
  }
224
- }
228
+ }