shadcn-glass-ui 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/CHANGELOG.md +227 -0
  2. package/LICENSE +201 -0
  3. package/README.md +693 -0
  4. package/dist/components.cjs +59 -0
  5. package/dist/components.d.ts +1413 -0
  6. package/dist/components.js +5 -0
  7. package/dist/hooks.cjs +6 -0
  8. package/dist/hooks.d.ts +225 -0
  9. package/dist/hooks.js +3 -0
  10. package/dist/index.cjs +138 -0
  11. package/dist/index.cjs.map +1 -0
  12. package/dist/index.d.ts +1761 -0
  13. package/dist/index.js +56 -0
  14. package/dist/index.js.map +1 -0
  15. package/dist/shadcn-glass-ui.css +3 -0
  16. package/dist/theme-context-BZoCplcU.js +66 -0
  17. package/dist/theme-context-BZoCplcU.js.map +1 -0
  18. package/dist/theme-context-DrLak65e.cjs +102 -0
  19. package/dist/theme-context-DrLak65e.cjs.map +1 -0
  20. package/dist/themes.cjs +7 -0
  21. package/dist/themes.d.ts +36 -0
  22. package/dist/themes.js +2 -0
  23. package/dist/trust-score-card-glass-DqaCKo1w.cjs +8225 -0
  24. package/dist/trust-score-card-glass-DqaCKo1w.cjs.map +1 -0
  25. package/dist/trust-score-card-glass-tJnNNzeS.js +7789 -0
  26. package/dist/trust-score-card-glass-tJnNNzeS.js.map +1 -0
  27. package/dist/use-focus-6xqfE5s6.cjs +130 -0
  28. package/dist/use-focus-6xqfE5s6.cjs.map +1 -0
  29. package/dist/use-focus-CX0TJJIj.js +118 -0
  30. package/dist/use-focus-CX0TJJIj.js.map +1 -0
  31. package/dist/use-wallpaper-tint-D1f3UGGs.cjs +162 -0
  32. package/dist/use-wallpaper-tint-D1f3UGGs.cjs.map +1 -0
  33. package/dist/use-wallpaper-tint-DUgmytlY.js +150 -0
  34. package/dist/use-wallpaper-tint-DUgmytlY.js.map +1 -0
  35. package/dist/utils-BNzkwPwE.cjs +14 -0
  36. package/dist/utils-BNzkwPwE.cjs.map +1 -0
  37. package/dist/utils-CGCOTvxT.js +8 -0
  38. package/dist/utils-CGCOTvxT.js.map +1 -0
  39. package/dist/utils.cjs +2 -0
  40. package/dist/utils.d.ts +10 -0
  41. package/dist/utils.js +2 -0
  42. package/dist/vite.svg +1 -0
  43. package/package.json +196 -0
@@ -0,0 +1,5 @@
1
+ import "./utils-CGCOTvxT.js";
2
+ import { $ as ComboBoxGlass, A as ThemeToggleGlass, B as TabsGlass, C as ProgressGlass, D as FlagAlertGlass, E as LanguageBarGlass, F as ExpandableHeaderGlass, G as NotificationGlass, H as SkeletonGlass, I as TooltipGlass, M as SortDropdownGlass, N as SearchBoxGlass, O as StatusIndicatorGlass, P as IconButtonGlass, Q as DropdownGlass, R as ToggleGlass, S as RainbowProgressGlass, T as ProfileAvatarGlass, V as SliderGlass, W as PopoverGlass, X as GlassCard, Y as InputGlass, _ as ContributionMetricsGlass, a as HeaderBrandingGlass, at as BadgeGlass, b as AICardGlass, c as YearCardGlass, d as TrustScoreDisplayGlass, dt as InteractiveCard, f as RepositoryMetadataGlass, ft as FormFieldWrapper, g as MetricCardGlass, h as MetricsGridGlass, i as HeaderNavGlass, j as StatItemGlass, k as BaseProgressGlass, l as UserStatsLineGlass, m as RepositoryCardGlass, n as ProjectsListGlass, nt as CheckboxGlass, o as FlagsSectionGlass, p as RepositoryHeaderGlass, pt as TouchTarget, q as ModalGlass, r as ProfileHeaderGlass, rt as ButtonGlass, s as CareerStatsGlass, st as AvatarGlass, t as TrustScoreCardGlass, tt as CircularProgressGlass, u as UserInfoGlass, ut as AlertGlass, v as CircularMetricGlass, x as SegmentedControlGlass, y as CareerStatsHeaderGlass } from "./trust-score-card-glass-tJnNNzeS.js";
3
+ import "./use-focus-CX0TJJIj.js";
4
+ import "./theme-context-BZoCplcU.js";
5
+ export { AICardGlass, AlertGlass, AvatarGlass, BadgeGlass, BaseProgressGlass, ButtonGlass, CareerStatsGlass, CareerStatsHeaderGlass, CheckboxGlass, CircularMetricGlass, CircularProgressGlass, ComboBoxGlass, ContributionMetricsGlass, DropdownGlass, ExpandableHeaderGlass, FlagAlertGlass, FlagsSectionGlass, FormFieldWrapper, GlassCard, HeaderBrandingGlass, HeaderNavGlass, IconButtonGlass, InputGlass, InteractiveCard, LanguageBarGlass, MetricCardGlass, MetricsGridGlass, ModalGlass, NotificationGlass, PopoverGlass, ProfileAvatarGlass, ProfileHeaderGlass, ProgressGlass, ProjectsListGlass, RainbowProgressGlass, RepositoryCardGlass, RepositoryHeaderGlass, RepositoryMetadataGlass, SearchBoxGlass, SegmentedControlGlass, SkeletonGlass, SliderGlass, SortDropdownGlass, StatItemGlass, StatusIndicatorGlass, TabsGlass, ThemeToggleGlass, ToggleGlass, TooltipGlass, TouchTarget, TrustScoreCardGlass, TrustScoreDisplayGlass, UserInfoGlass, UserStatsLineGlass, YearCardGlass };
package/dist/hooks.cjs ADDED
@@ -0,0 +1,6 @@
1
+ const require_use_focus = require("./use-focus-6xqfE5s6.cjs");
2
+ const require_use_wallpaper_tint = require("./use-wallpaper-tint-D1f3UGGs.cjs");
3
+ exports.useFocus = require_use_focus.useFocus;
4
+ exports.useHover = require_use_focus.useHover;
5
+ exports.useResponsive = require_use_wallpaper_tint.useResponsive;
6
+ exports.useWallpaperTint = require_use_wallpaper_tint.useWallpaperTint;
@@ -0,0 +1,225 @@
1
+ import { FocusEvent as FocusEvent_2 } from 'react';
2
+ import { KeyboardEvent as KeyboardEvent_2 } from 'react';
3
+ import { MouseEvent as MouseEvent_2 } from 'react';
4
+
5
+ declare type Breakpoint = keyof typeof BREAKPOINTS;
6
+
7
+ /**
8
+ * Tailwind CSS breakpoints
9
+ * @see https://tailwindcss.com/docs/responsive-design
10
+ */
11
+ declare const BREAKPOINTS: {
12
+ readonly xs: 0;
13
+ readonly sm: 640;
14
+ readonly md: 768;
15
+ readonly lg: 1024;
16
+ readonly xl: 1280;
17
+ readonly '2xl': 1536;
18
+ };
19
+
20
+ /**
21
+ * Hook for managing focus state with optional focus-visible support.
22
+ *
23
+ * @example Basic usage
24
+ * ```tsx
25
+ * const { isFocused, focusProps } = useFocus();
26
+ *
27
+ * return (
28
+ * <input
29
+ * {...focusProps}
30
+ * style={{
31
+ * borderColor: isFocused ? 'violet' : 'gray',
32
+ * }}
33
+ * />
34
+ * );
35
+ * ```
36
+ *
37
+ * @example Focus-visible for keyboard navigation
38
+ * ```tsx
39
+ * const { isFocusVisible, focusProps } = useFocus({ focusVisible: true });
40
+ *
41
+ * return (
42
+ * <button
43
+ * {...focusProps}
44
+ * style={{
45
+ * outline: isFocusVisible ? '2px solid violet' : 'none',
46
+ * }}
47
+ * >
48
+ * Click or Tab to me
49
+ * </button>
50
+ * );
51
+ * ```
52
+ */
53
+ export declare function useFocus(options?: UseFocusOptions): UseFocusReturn;
54
+
55
+ declare interface UseFocusOptions {
56
+ /** Callback when focus state changes */
57
+ onFocusChange?: (isFocused: boolean) => void;
58
+ /** Include focus-visible behavior (keyboard focus only) */
59
+ focusVisible?: boolean;
60
+ /** Callback for keyboard events while focused */
61
+ onKeyDown?: (e: KeyboardEvent_2) => void;
62
+ }
63
+
64
+ declare interface UseFocusReturn {
65
+ /** Current focus state */
66
+ isFocused: boolean;
67
+ /** True only when focused via keyboard (if focusVisible enabled) */
68
+ isFocusVisible: boolean;
69
+ /** Props to spread on the target element */
70
+ focusProps: {
71
+ onFocus: (e: FocusEvent_2) => void;
72
+ onBlur: (e: FocusEvent_2) => void;
73
+ onKeyDown?: (e: KeyboardEvent_2) => void;
74
+ };
75
+ /** Manually set focus state */
76
+ setIsFocused: (value: boolean) => void;
77
+ /** Reference to track if last focus was from keyboard */
78
+ focusRef: React.RefObject<boolean>;
79
+ }
80
+
81
+ /**
82
+ * Hook for managing hover state with optional delays and focus support.
83
+ *
84
+ * @example
85
+ * ```tsx
86
+ * const { isHovered, hoverProps } = useHover();
87
+ *
88
+ * return (
89
+ * <div
90
+ * {...hoverProps}
91
+ * style={{ opacity: isHovered ? 1 : 0.8 }}
92
+ * >
93
+ * Hover me
94
+ * </div>
95
+ * );
96
+ * ```
97
+ *
98
+ * @example With options
99
+ * ```tsx
100
+ * const { isHovered, hoverProps } = useHover({
101
+ * enterDelay: 100,
102
+ * leaveDelay: 200,
103
+ * includeFocus: true,
104
+ * onHoverChange: (hover) => console.log('Hovered:', hover),
105
+ * });
106
+ * ```
107
+ */
108
+ export declare function useHover(options?: UseHoverOptions): UseHoverReturn;
109
+
110
+ declare interface UseHoverOptions {
111
+ /** Delay before hover state becomes true (ms) */
112
+ enterDelay?: number;
113
+ /** Delay before hover state becomes false (ms) */
114
+ leaveDelay?: number;
115
+ /** Include focus events for accessibility */
116
+ includeFocus?: boolean;
117
+ /** Callback when hover state changes */
118
+ onHoverChange?: (isHovered: boolean) => void;
119
+ }
120
+
121
+ declare interface UseHoverReturn {
122
+ /** Current hover state */
123
+ isHovered: boolean;
124
+ /** Props to spread on the target element */
125
+ hoverProps: {
126
+ onMouseEnter: (e: MouseEvent_2) => void;
127
+ onMouseLeave: (e: MouseEvent_2) => void;
128
+ onFocus?: (e: FocusEvent_2) => void;
129
+ onBlur?: (e: FocusEvent_2) => void;
130
+ };
131
+ /** Manually set hover state */
132
+ setIsHovered: (value: boolean) => void;
133
+ }
134
+
135
+ /**
136
+ * Hook to detect current responsive breakpoint
137
+ *
138
+ * @returns Responsive state with current breakpoint and device type flags
139
+ *
140
+ * @example
141
+ * ```tsx
142
+ * const { isMobile, isTablet, isDesktop, currentBreakpoint } = useResponsive();
143
+ *
144
+ * return (
145
+ * <div className={isMobile ? 'flex-col' : 'flex-row'}>
146
+ * {currentBreakpoint === 'lg' && <Sidebar />}
147
+ * </div>
148
+ * );
149
+ * ```
150
+ */
151
+ export declare function useResponsive(): UseResponsiveReturn;
152
+
153
+ declare interface UseResponsiveReturn {
154
+ /** Window width is less than 768px (mobile) */
155
+ isMobile: boolean;
156
+ /** Window width is >= 768px and < 1024px (tablet) */
157
+ isTablet: boolean;
158
+ /** Window width is >= 1024px (desktop) */
159
+ isDesktop: boolean;
160
+ /** Current active breakpoint */
161
+ currentBreakpoint: Breakpoint;
162
+ /** Current window width in pixels */
163
+ width: number;
164
+ }
165
+
166
+ /**
167
+ * Hook to extract and use wallpaper tint color
168
+ *
169
+ * @example
170
+ * ```tsx
171
+ * const { tintColor, isLoading } = useWallpaperTint({
172
+ * imageUrl: '/path/to/background.jpg',
173
+ * });
174
+ *
175
+ * // Use tintColor in CSS variables
176
+ * <div style={{ '--wallpaper-tint': tintColor }}>
177
+ * <GlassCard />
178
+ * </div>
179
+ * ```
180
+ */
181
+ export declare const useWallpaperTint: (options?: WallpaperTintOptions) => WallpaperTintResult;
182
+
183
+ declare interface WallpaperTintOptions {
184
+ /**
185
+ * The image URL to sample for tint color
186
+ */
187
+ imageUrl?: string;
188
+ /**
189
+ * Debounce delay in milliseconds
190
+ * @default 300
191
+ */
192
+ debounceMs?: number;
193
+ /**
194
+ * Number of sample points to take from the image
195
+ * @default 10
196
+ */
197
+ sampleSize?: number;
198
+ /**
199
+ * Whether to enable the tint extraction
200
+ * @default true
201
+ */
202
+ enabled?: boolean;
203
+ }
204
+
205
+ declare interface WallpaperTintResult {
206
+ /**
207
+ * The extracted tint color in RGB format
208
+ * Example: "120, 80, 200"
209
+ */
210
+ tintColor: string | null;
211
+ /**
212
+ * Whether the tint extraction is in progress
213
+ */
214
+ isLoading: boolean;
215
+ /**
216
+ * Error message if extraction failed
217
+ */
218
+ error: string | null;
219
+ /**
220
+ * Re-extract the tint color from the current image
221
+ */
222
+ refresh: () => void;
223
+ }
224
+
225
+ export { }
package/dist/hooks.js ADDED
@@ -0,0 +1,3 @@
1
+ import { n as useHover, t as useFocus } from "./use-focus-CX0TJJIj.js";
2
+ import { n as useResponsive, t as useWallpaperTint } from "./use-wallpaper-tint-DUgmytlY.js";
3
+ export { useFocus, useHover, useResponsive, useWallpaperTint };
package/dist/index.cjs ADDED
@@ -0,0 +1,138 @@
1
+ const require_trust_score_card_glass = require("./trust-score-card-glass-DqaCKo1w.cjs");
2
+ const require_utils = require("./utils-BNzkwPwE.cjs");
3
+ const require_use_focus = require("./use-focus-6xqfE5s6.cjs");
4
+ const require_theme_context = require("./theme-context-DrLak65e.cjs");
5
+ const require_use_wallpaper_tint = require("./use-wallpaper-tint-D1f3UGGs.cjs");
6
+ let class_variance_authority = require("class-variance-authority");
7
+ const dropdownAlign = (0, class_variance_authority.cva)("absolute mt-2 min-w-[160px] md:min-w-[200px] rounded-2xl py-1.5 md:py-2", {
8
+ variants: { align: {
9
+ left: "left-0",
10
+ right: "right-0"
11
+ } },
12
+ defaultVariants: { align: "left" }
13
+ });
14
+ const alertVariants$1 = (0, class_variance_authority.cva)("relative w-full rounded-lg border px-4 py-3 text-sm grid has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] grid-cols-[0_1fr] has-[>svg]:gap-x-3 gap-y-0.5 items-start [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current", {
15
+ variants: { variant: {
16
+ default: "bg-card text-card-foreground",
17
+ destructive: "text-destructive bg-card [&>svg]:text-current *:data-[slot=alert-description]:text-destructive/90"
18
+ } },
19
+ defaultVariants: { variant: "default" }
20
+ });
21
+ const badgeVariants$1 = (0, class_variance_authority.cva)("inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden", {
22
+ variants: { variant: {
23
+ default: "border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90",
24
+ secondary: "border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",
25
+ destructive: "border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
26
+ outline: "text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground"
27
+ } },
28
+ defaultVariants: { variant: "default" }
29
+ });
30
+ const buttonVariants = (0, class_variance_authority.cva)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive", {
31
+ variants: {
32
+ variant: {
33
+ default: "bg-primary text-primary-foreground hover:bg-primary/90",
34
+ destructive: "bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
35
+ outline: "border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",
36
+ secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80",
37
+ ghost: "hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",
38
+ link: "text-primary underline-offset-4 hover:underline"
39
+ },
40
+ size: {
41
+ default: "h-9 px-4 py-2 has-[>svg]:px-3",
42
+ sm: "h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",
43
+ lg: "h-10 rounded-md px-6 has-[>svg]:px-4",
44
+ icon: "size-9",
45
+ "icon-sm": "size-8",
46
+ "icon-lg": "size-10"
47
+ }
48
+ },
49
+ defaultVariants: {
50
+ variant: "default",
51
+ size: "default"
52
+ }
53
+ });
54
+ exports.AICardGlass = require_trust_score_card_glass.AICardGlass;
55
+ exports.AlertGlass = require_trust_score_card_glass.AlertGlass;
56
+ exports.AvatarGlass = require_trust_score_card_glass.AvatarGlass;
57
+ exports.BadgeGlass = require_trust_score_card_glass.BadgeGlass;
58
+ exports.BaseProgressGlass = require_trust_score_card_glass.BaseProgressGlass;
59
+ exports.ButtonGlass = require_trust_score_card_glass.ButtonGlass;
60
+ exports.CareerStatsGlass = require_trust_score_card_glass.CareerStatsGlass;
61
+ exports.CareerStatsHeaderGlass = require_trust_score_card_glass.CareerStatsHeaderGlass;
62
+ exports.CheckboxGlass = require_trust_score_card_glass.CheckboxGlass;
63
+ exports.CircularMetricGlass = require_trust_score_card_glass.CircularMetricGlass;
64
+ exports.CircularProgressGlass = require_trust_score_card_glass.CircularProgressGlass;
65
+ exports.ComboBoxGlass = require_trust_score_card_glass.ComboBoxGlass;
66
+ exports.ContributionMetricsGlass = require_trust_score_card_glass.ContributionMetricsGlass;
67
+ exports.DropdownGlass = require_trust_score_card_glass.DropdownGlass;
68
+ exports.ExpandableHeaderGlass = require_trust_score_card_glass.ExpandableHeaderGlass;
69
+ exports.FlagAlertGlass = require_trust_score_card_glass.FlagAlertGlass;
70
+ exports.FlagsSectionGlass = require_trust_score_card_glass.FlagsSectionGlass;
71
+ exports.FormFieldWrapper = require_trust_score_card_glass.FormFieldWrapper;
72
+ exports.GlassCard = require_trust_score_card_glass.GlassCard;
73
+ exports.HeaderBrandingGlass = require_trust_score_card_glass.HeaderBrandingGlass;
74
+ exports.HeaderNavGlass = require_trust_score_card_glass.HeaderNavGlass;
75
+ exports.IconButtonGlass = require_trust_score_card_glass.IconButtonGlass;
76
+ exports.InputGlass = require_trust_score_card_glass.InputGlass;
77
+ exports.InteractiveCard = require_trust_score_card_glass.InteractiveCard;
78
+ exports.LanguageBarGlass = require_trust_score_card_glass.LanguageBarGlass;
79
+ exports.MetricCardGlass = require_trust_score_card_glass.MetricCardGlass;
80
+ exports.MetricsGridGlass = require_trust_score_card_glass.MetricsGridGlass;
81
+ exports.ModalGlass = require_trust_score_card_glass.ModalGlass;
82
+ exports.NotificationGlass = require_trust_score_card_glass.NotificationGlass;
83
+ exports.PopoverGlass = require_trust_score_card_glass.PopoverGlass;
84
+ exports.ProfileAvatarGlass = require_trust_score_card_glass.ProfileAvatarGlass;
85
+ exports.ProfileHeaderGlass = require_trust_score_card_glass.ProfileHeaderGlass;
86
+ exports.ProgressGlass = require_trust_score_card_glass.ProgressGlass;
87
+ exports.ProjectsListGlass = require_trust_score_card_glass.ProjectsListGlass;
88
+ exports.RainbowProgressGlass = require_trust_score_card_glass.RainbowProgressGlass;
89
+ exports.RepositoryCardGlass = require_trust_score_card_glass.RepositoryCardGlass;
90
+ exports.RepositoryHeaderGlass = require_trust_score_card_glass.RepositoryHeaderGlass;
91
+ exports.RepositoryMetadataGlass = require_trust_score_card_glass.RepositoryMetadataGlass;
92
+ exports.SearchBoxGlass = require_trust_score_card_glass.SearchBoxGlass;
93
+ exports.SegmentedControlGlass = require_trust_score_card_glass.SegmentedControlGlass;
94
+ exports.SkeletonGlass = require_trust_score_card_glass.SkeletonGlass;
95
+ exports.SliderGlass = require_trust_score_card_glass.SliderGlass;
96
+ exports.SortDropdownGlass = require_trust_score_card_glass.SortDropdownGlass;
97
+ exports.StatItemGlass = require_trust_score_card_glass.StatItemGlass;
98
+ exports.StatusIndicatorGlass = require_trust_score_card_glass.StatusIndicatorGlass;
99
+ exports.THEMES = require_theme_context.THEMES;
100
+ exports.THEME_CONFIG = require_theme_context.THEME_CONFIG;
101
+ exports.TabsGlass = require_trust_score_card_glass.TabsGlass;
102
+ exports.ThemeProvider = require_theme_context.ThemeProvider;
103
+ exports.ThemeToggleGlass = require_trust_score_card_glass.ThemeToggleGlass;
104
+ exports.ToggleGlass = require_trust_score_card_glass.ToggleGlass;
105
+ exports.TooltipGlass = require_trust_score_card_glass.TooltipGlass;
106
+ exports.TouchTarget = require_trust_score_card_glass.TouchTarget;
107
+ exports.TrustScoreCardGlass = require_trust_score_card_glass.TrustScoreCardGlass;
108
+ exports.TrustScoreDisplayGlass = require_trust_score_card_glass.TrustScoreDisplayGlass;
109
+ exports.UserInfoGlass = require_trust_score_card_glass.UserInfoGlass;
110
+ exports.UserStatsLineGlass = require_trust_score_card_glass.UserStatsLineGlass;
111
+ exports.YearCardGlass = require_trust_score_card_glass.YearCardGlass;
112
+ exports.alertVariants = require_trust_score_card_glass.alertVariants;
113
+ exports.avatarSizes = require_trust_score_card_glass.avatarSizes;
114
+ exports.badgeVariants = require_trust_score_card_glass.badgeVariants;
115
+ exports.buttonGlassVariants = require_trust_score_card_glass.buttonGlassVariants;
116
+ exports.cardIntensity = require_trust_score_card_glass.cardIntensity;
117
+ exports.cn = require_utils.cn;
118
+ exports.dropdownAlign = dropdownAlign;
119
+ exports.getNextTheme = require_theme_context.getNextTheme;
120
+ exports.getThemeConfig = require_theme_context.getThemeConfig;
121
+ exports.inputVariants = require_trust_score_card_glass.inputVariants;
122
+ exports.modalSizes = require_trust_score_card_glass.modalSizes;
123
+ exports.notificationVariants = require_trust_score_card_glass.notificationVariants;
124
+ exports.progressSizes = require_trust_score_card_glass.progressSizes;
125
+ exports.shadcnAlertVariants = alertVariants$1;
126
+ exports.shadcnBadgeVariants = badgeVariants$1;
127
+ exports.shadcnButtonVariants = buttonVariants;
128
+ exports.skeletonVariants = require_trust_score_card_glass.skeletonVariants;
129
+ exports.statusSizes = require_trust_score_card_glass.statusSizes;
130
+ exports.toggleSizes = require_trust_score_card_glass.toggleSizes;
131
+ exports.tooltipPositions = require_trust_score_card_glass.tooltipPositions;
132
+ exports.useFocus = require_use_focus.useFocus;
133
+ exports.useHover = require_use_focus.useHover;
134
+ exports.useResponsive = require_use_wallpaper_tint.useResponsive;
135
+ exports.useTheme = require_theme_context.useTheme;
136
+ exports.useWallpaperTint = require_use_wallpaper_tint.useWallpaperTint;
137
+
138
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","names":[],"sources":["../src/lib/variants/dropdown-glass-variants.ts","../src/lib/variants/alert-variants.ts","../src/lib/variants/badge-variants.ts","../src/lib/variants/button-variants.ts"],"sourcesContent":["/**\n * DropdownGlass CVA Variants\n * Extracted for Fast Refresh compatibility\n */\n\nimport { cva } from 'class-variance-authority';\n\nexport type DropdownAlign = 'left' | 'right';\n\nexport const dropdownAlign = cva('absolute mt-2 min-w-[160px] md:min-w-[200px] rounded-2xl py-1.5 md:py-2', {\n variants: {\n align: {\n left: 'left-0',\n right: 'right-0',\n },\n },\n defaultVariants: {\n align: 'left',\n },\n});\n","/**\n * Alert CVA Variants (shadcn/ui)\n * Extracted for Fast Refresh compatibility\n */\n\nimport { cva } from 'class-variance-authority';\n\nexport const alertVariants = cva(\n \"relative w-full rounded-lg border px-4 py-3 text-sm grid has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] grid-cols-[0_1fr] has-[>svg]:gap-x-3 gap-y-0.5 items-start [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current\",\n {\n variants: {\n variant: {\n default: \"bg-card text-card-foreground\",\n destructive:\n \"text-destructive bg-card [&>svg]:text-current *:data-[slot=alert-description]:text-destructive/90\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n);\n","/**\n * Badge CVA Variants (shadcn/ui)\n * Extracted for Fast Refresh compatibility\n */\n\nimport { cva } from 'class-variance-authority';\n\nexport const badgeVariants = cva(\n \"inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden\",\n {\n variants: {\n variant: {\n default:\n \"border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90\",\n secondary:\n \"border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90\",\n destructive:\n \"border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60\",\n outline:\n \"text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n);\n","/**\n * Button CVA Variants (shadcn/ui)\n * Extracted for Fast Refresh compatibility\n */\n\nimport { cva } from 'class-variance-authority';\n\nexport const buttonVariants = cva(\n \"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive\",\n {\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground hover:bg-primary/90\",\n destructive:\n \"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60\",\n outline:\n \"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50\",\n secondary:\n \"bg-secondary text-secondary-foreground hover:bg-secondary/80\",\n ghost:\n \"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50\",\n link: \"text-primary underline-offset-4 hover:underline\",\n },\n size: {\n default: \"h-9 px-4 py-2 has-[>svg]:px-3\",\n sm: \"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5\",\n lg: \"h-10 rounded-md px-6 has-[>svg]:px-4\",\n icon: \"size-9\",\n \"icon-sm\": \"size-8\",\n \"icon-lg\": \"size-10\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n);\n"],"mappings":";;;;;;AASA,MAAa,iBAAA,GAAA,yBAAA,KAAoB,2EAA2E;CAC1G,UAAU,EACR,OAAO;EACL,MAAM;EACN,OAAO;EACR,EACF;CACD,iBAAiB,EACf,OAAO,QACR;CACF,CAAC;ACZF,MAAa,mBAAA,GAAA,yBAAA,KACX,qOACA;CACE,UAAU,EACR,SAAS;EACP,SAAS;EACT,aACE;EACH,EACF;CACD,iBAAiB,EACf,SAAS,WACV;CACF,CACF;ACdD,MAAa,mBAAA,GAAA,yBAAA,KACX,oZACA;CACE,UAAU,EACR,SAAS;EACP,SACE;EACF,WACE;EACF,aACE;EACF,SACE;EACH,EACF;CACD,iBAAiB,EACf,SAAS,WACV;CACF,CACF;ACnBD,MAAa,kBAAA,GAAA,yBAAA,KACX,+bACA;CACE,UAAU;EACR,SAAS;GACP,SAAS;GACT,aACE;GACF,SACE;GACF,WACE;GACF,OACE;GACF,MAAM;GACP;EACD,MAAM;GACJ,SAAS;GACT,IAAI;GACJ,IAAI;GACJ,MAAM;GACN,WAAW;GACX,WAAW;GACZ;EACF;CACD,iBAAiB;EACf,SAAS;EACT,MAAM;EACP;CACF,CACF"}