shadcn-glass-ui 2.0.6 → 2.0.9

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 (64) hide show
  1. package/README.md +159 -105
  2. package/dist/cli/index.cjs +1 -1
  3. package/dist/components.cjs +4 -4
  4. package/dist/components.d.ts +63 -322
  5. package/dist/components.js +2 -2
  6. package/dist/hooks.cjs +2 -2
  7. package/dist/index.cjs +43 -6
  8. package/dist/index.cjs.map +1 -1
  9. package/dist/index.js +12 -3
  10. package/dist/index.js.map +1 -1
  11. package/dist/r/alert-glass.json +2 -1
  12. package/dist/r/avatar-glass.json +2 -3
  13. package/dist/r/button-glass.json +1 -1
  14. package/dist/r/circular-progress-glass.json +1 -1
  15. package/dist/r/combobox-glass.json +1 -1
  16. package/dist/r/dropdown-glass.json +3 -5
  17. package/dist/r/dropdown-menu-glass.json +42 -0
  18. package/dist/r/language-bar-glass.json +2 -2
  19. package/dist/r/popover-glass.json +1 -1
  20. package/dist/r/profile-avatar-glass.json +5 -3
  21. package/dist/r/rainbow-progress-glass.json +1 -1
  22. package/dist/r/registry.json +10 -4
  23. package/dist/r/sort-dropdown-glass.json +3 -4
  24. package/dist/r/tooltip-glass.json +3 -5
  25. package/dist/r/trust-score-card-glass.json +1 -1
  26. package/dist/r/trust-score-display-glass.json +1 -1
  27. package/dist/shadcn-glass-ui.css +1 -1
  28. package/dist/{theme-context-CVW50BKW.cjs → theme-context-DNe_2vWJ.cjs} +2 -2
  29. package/dist/theme-context-DNe_2vWJ.cjs.map +1 -0
  30. package/dist/{theme-context-BZoCplcU.js → theme-context-_T5r1KG4.js} +1 -1
  31. package/dist/theme-context-_T5r1KG4.js.map +1 -0
  32. package/dist/themes.cjs +1 -1
  33. package/dist/themes.d.ts +89 -1
  34. package/dist/themes.js +1 -1
  35. package/dist/{trust-score-card-glass-BcZbul0P.js → trust-score-card-glass-A7kas5OS.js} +353 -279
  36. package/dist/trust-score-card-glass-A7kas5OS.js.map +1 -0
  37. package/dist/{trust-score-card-glass-r3qM09Jp.cjs → trust-score-card-glass-Dgu46oWI.cjs} +551 -313
  38. package/dist/trust-score-card-glass-Dgu46oWI.cjs.map +1 -0
  39. package/dist/{use-focus-ZE8ozmZE.cjs → use-focus-BRkQtQCj.cjs} +2 -2
  40. package/dist/{use-focus-ZE8ozmZE.cjs.map → use-focus-BRkQtQCj.cjs.map} +1 -1
  41. package/dist/{use-wallpaper-tint-BuS80tbN.cjs → use-wallpaper-tint-CfShPBo2.cjs} +2 -2
  42. package/dist/{use-wallpaper-tint-BuS80tbN.cjs.map → use-wallpaper-tint-CfShPBo2.cjs.map} +1 -1
  43. package/dist/{utils-DLXayspX.cjs → utils-BXN7AcRu.cjs} +2 -2
  44. package/dist/{utils-DLXayspX.cjs.map → utils-BXN7AcRu.cjs.map} +1 -1
  45. package/dist/utils.cjs +1 -1
  46. package/docs/AI_USAGE.md +1 -32
  47. package/docs/API_PATTERNS_COMPARISON.md +10 -9
  48. package/docs/COMPONENTS_CATALOG.md +140 -45
  49. package/docs/DROPDOWN_ARCHITECTURE.md +290 -0
  50. package/docs/GETTING_STARTED.md +6 -5
  51. package/docs/TOKEN_ARCHITECTURE.md +100 -0
  52. package/docs/api/README.md +3 -3
  53. package/docs/migration/compound-components-v2.md +384 -0
  54. package/docs/visual-testing-guide.md +50 -12
  55. package/package.json +2 -2
  56. package/dist/theme-context-BZoCplcU.js.map +0 -1
  57. package/dist/theme-context-CVW50BKW.cjs.map +0 -1
  58. package/dist/trust-score-card-glass-BcZbul0P.js.map +0 -1
  59. package/dist/trust-score-card-glass-r3qM09Jp.cjs.map +0 -1
  60. package/docs/ADVANCED_PATTERNS.md +0 -408
  61. package/docs/BREAKING_CHANGES.md +0 -213
  62. package/docs/announcements/v1.0.5-devto.md +0 -363
  63. package/docs/announcements/v1.0.5-reddit.md +0 -115
  64. package/docs/announcements/v1.0.5-twitter.md +0 -70
@@ -27,15 +27,17 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
27
27
  value: mod,
28
28
  enumerable: true
29
29
  }) : target, mod));
30
- const require_utils = require("./utils-DLXayspX.cjs");
31
- const require_use_focus = require("./use-focus-ZE8ozmZE.cjs");
32
- const require_theme_context = require("./theme-context-CVW50BKW.cjs");
30
+ const require_utils = require("./utils-BXN7AcRu.cjs");
31
+ const require_use_focus = require("./use-focus-BRkQtQCj.cjs");
32
+ const require_theme_context = require("./theme-context-DNe_2vWJ.cjs");
33
33
  let react = require("react");
34
34
  react = __toESM(react);
35
35
  let lucide_react = require("lucide-react");
36
36
  let clsx = require("clsx");
37
37
  let class_variance_authority = require("class-variance-authority");
38
38
  let react_jsx_runtime = require("react/jsx-runtime");
39
+ let __radix_ui_react_avatar = require("@radix-ui/react-avatar");
40
+ __radix_ui_react_avatar = __toESM(__radix_ui_react_avatar);
39
41
  let __radix_ui_react_slot = require("@radix-ui/react-slot");
40
42
  let react_dom = require("react-dom");
41
43
  react_dom = __toESM(react_dom);
@@ -43,6 +45,8 @@ let __radix_ui_react_dialog = require("@radix-ui/react-dialog");
43
45
  __radix_ui_react_dialog = __toESM(__radix_ui_react_dialog);
44
46
  let __radix_ui_react_dropdown_menu = require("@radix-ui/react-dropdown-menu");
45
47
  __radix_ui_react_dropdown_menu = __toESM(__radix_ui_react_dropdown_menu);
48
+ let __radix_ui_react_tooltip = require("@radix-ui/react-tooltip");
49
+ __radix_ui_react_tooltip = __toESM(__radix_ui_react_tooltip);
46
50
  const alertVariants = (0, class_variance_authority.cva)("flex items-start gap-2 md:gap-3 p-3 md:p-4 rounded-xl transition-all duration-300 backdrop-blur-sm min-w-96 max-w-2xl", {
47
51
  variants: { variant: {
48
52
  default: "",
@@ -170,13 +174,14 @@ var getAlertStyles = (variant) => {
170
174
  const config = variantStyles$2[variant];
171
175
  return {
172
176
  background: config.bg,
173
- border: `1px solid ${config.border}`
177
+ border: `1px solid ${config.border}`,
178
+ color: config.text
174
179
  };
175
180
  };
176
- const AlertGlass = (0, react.forwardRef)(({ className, variant = "default", title, children, dismissible, onDismiss, ...props }, ref) => {
181
+ var AlertGlassRoot = (0, react.forwardRef)(({ className, variant = "default", dismissible, onDismiss, children, ...props }, ref) => {
177
182
  const effectiveVariant = variant ?? "default";
178
- const config = variantStyles$2[effectiveVariant];
179
183
  const Icon = iconMap[effectiveVariant];
184
+ const config = variantStyles$2[effectiveVariant];
180
185
  return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
181
186
  ref,
182
187
  className: require_utils.cn(alertVariants({ variant: effectiveVariant }), className),
@@ -185,24 +190,17 @@ const AlertGlass = (0, react.forwardRef)(({ className, variant = "default", titl
185
190
  ...props,
186
191
  children: [
187
192
  /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Icon, {
188
- className: "w-4 h-4 md:w-5 md:h-5 flex-shrink-0 mt-0.5",
189
- style: { color: config.text }
193
+ className: "w-4 h-4 md:w-5 md:h-5 shrink-0 mt-0.5",
194
+ style: { color: config.text },
195
+ "aria-hidden": "true"
190
196
  }),
191
- /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
197
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
192
198
  className: "flex-1",
193
- children: [title && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
194
- className: "font-medium text-xs md:text-sm mb-0.5 md:mb-1",
195
- style: { color: config.text },
196
- children: title
197
- }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
198
- className: "text-xs md:text-sm opacity-80",
199
- style: { color: config.text },
200
- children
201
- })]
199
+ children
202
200
  }),
203
201
  dismissible && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
204
202
  onClick: onDismiss,
205
- className: "p-0.5 md:p-1 rounded transition-colors duration-200 hover:bg-black/5 flex-shrink-0",
203
+ className: "p-0.5 md:p-1 rounded transition-colors duration-200 hover:bg-black/5 shrink-0",
206
204
  "aria-label": "Dismiss alert",
207
205
  children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.X, {
208
206
  className: ICON_SIZES.md,
@@ -212,7 +210,32 @@ const AlertGlass = (0, react.forwardRef)(({ className, variant = "default", titl
212
210
  ]
213
211
  });
214
212
  });
215
- AlertGlass.displayName = "AlertGlass";
213
+ AlertGlassRoot.displayName = "AlertGlass";
214
+ var AlertGlassTitle = (0, react.forwardRef)(({ className, style, ...props }, ref) => {
215
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
216
+ ref,
217
+ className: require_utils.cn("font-medium text-xs md:text-sm mb-0.5 md:mb-1", className),
218
+ style: {
219
+ color: "inherit",
220
+ ...style
221
+ },
222
+ ...props
223
+ });
224
+ });
225
+ AlertGlassTitle.displayName = "AlertGlassTitle";
226
+ var AlertGlassDescription = (0, react.forwardRef)(({ className, style, ...props }, ref) => {
227
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
228
+ ref,
229
+ className: require_utils.cn("text-xs md:text-sm opacity-80", className),
230
+ style: {
231
+ color: "inherit",
232
+ ...style
233
+ },
234
+ ...props
235
+ });
236
+ });
237
+ AlertGlassDescription.displayName = "AlertGlassDescription";
238
+ const AlertGlass = AlertGlassRoot;
216
239
  const avatarSizes = (0, class_variance_authority.cva)("rounded-full flex items-center justify-center font-semibold transition-all duration-300", {
217
240
  variants: { size: {
218
241
  sm: "w-7 h-7 md:w-8 md:h-8 text-[10px] md:text-xs",
@@ -231,11 +254,7 @@ const statusSizes = (0, class_variance_authority.cva)("absolute -bottom-0.5 -rig
231
254
  } },
232
255
  defaultVariants: { size: "md" }
233
256
  });
234
- var getInitials = (name) => {
235
- if (!name || name.trim().length === 0) return "?";
236
- return name.split(" ").map((part) => part[0]).join("").toUpperCase().slice(0, 2);
237
- };
238
- var getStatusVars = (statusType) => {
257
+ var getStatusVars$1 = (statusType) => {
239
258
  return {
240
259
  online: {
241
260
  bg: "var(--status-online)",
@@ -255,39 +274,74 @@ var getStatusVars = (statusType) => {
255
274
  }
256
275
  }[statusType];
257
276
  };
258
- const AvatarGlass = (0, react.forwardRef)(({ asChild = false, name, size: size$3 = "md", status, className, ...props }, ref) => {
277
+ var AvatarGlassContext = react.createContext({ size: "md" });
278
+ var AvatarGlassRoot = react.forwardRef(({ className, size: size$3 = "md", status, glowing = false, children, ...props }, ref) => {
259
279
  const { isHovered, hoverProps } = require_use_focus.useHover();
260
280
  const avatarStyles = {
261
281
  background: "var(--avatar-bg)",
262
- border: "2px solid var(--avatar-border)",
282
+ border: "3px solid var(--avatar-border)",
263
283
  boxShadow: isHovered ? "var(--avatar-hover-glow)" : "var(--avatar-shadow)",
264
284
  color: "var(--text-inverse)"
265
285
  };
266
- const initials = getInitials(name);
267
- return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(asChild ? __radix_ui_react_slot.Slot : "div", {
286
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(AvatarGlassContext.Provider, {
287
+ value: {
288
+ size: size$3,
289
+ status,
290
+ glowing
291
+ },
292
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
293
+ className: require_utils.cn("relative inline-flex", className),
294
+ onMouseEnter: hoverProps.onMouseEnter,
295
+ onMouseLeave: hoverProps.onMouseLeave,
296
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(__radix_ui_react_avatar.Root, {
297
+ ref,
298
+ className: require_utils.cn(avatarSizes({ size: size$3 }), glowing && "animate-[glow-pulse_2s_ease-in-out_infinite]"),
299
+ style: avatarStyles,
300
+ ...props,
301
+ children
302
+ }), status && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
303
+ className: require_utils.cn(statusSizes({ size: size$3 })),
304
+ style: {
305
+ background: getStatusVars$1(status).bg,
306
+ boxShadow: getStatusVars$1(status).glow
307
+ },
308
+ role: "status",
309
+ "aria-label": `Status: ${status}`
310
+ })]
311
+ })
312
+ });
313
+ });
314
+ AvatarGlassRoot.displayName = "AvatarGlass";
315
+ var AvatarGlassImage = react.forwardRef(({ className, ...props }, ref) => {
316
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__radix_ui_react_avatar.Image, {
268
317
  ref,
269
- className: require_utils.cn("relative inline-flex", className),
270
- onMouseEnter: hoverProps.onMouseEnter,
271
- onMouseLeave: hoverProps.onMouseLeave,
272
- ...props,
273
- children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
274
- className: require_utils.cn(avatarSizes({ size: size$3 })),
275
- style: avatarStyles,
276
- role: "img",
277
- "aria-label": `Avatar for ${name}`,
278
- children: initials
279
- }), status && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
280
- className: require_utils.cn(statusSizes({ size: size$3 })),
281
- style: {
282
- background: getStatusVars(status).bg,
283
- boxShadow: getStatusVars(status).glow
284
- },
285
- role: "status",
286
- "aria-label": `Status: ${status}`
287
- })]
318
+ className: require_utils.cn("aspect-square h-full w-full object-cover", className),
319
+ ...props
288
320
  });
289
321
  });
290
- AvatarGlass.displayName = "AvatarGlass";
322
+ AvatarGlassImage.displayName = "AvatarGlassImage";
323
+ var AvatarGlassFallback = react.forwardRef(({ className, ...props }, ref) => {
324
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__radix_ui_react_avatar.Fallback, {
325
+ ref,
326
+ className: require_utils.cn("flex h-full w-full items-center justify-center font-semibold uppercase", className),
327
+ ...props
328
+ });
329
+ });
330
+ AvatarGlassFallback.displayName = "AvatarGlassFallback";
331
+ var getInitials = (name) => {
332
+ if (!name || name.trim().length === 0) return "?";
333
+ return name.split(" ").map((part) => part[0]).join("").toUpperCase().slice(0, 2);
334
+ };
335
+ var AvatarGlassSimple = ({ name, size: size$3 = "md", status, glowing, className }) => {
336
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(AvatarGlassRoot, {
337
+ size: size$3,
338
+ status,
339
+ glowing,
340
+ className,
341
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(AvatarGlassFallback, { children: getInitials(name) })
342
+ });
343
+ };
344
+ const AvatarGlass = AvatarGlassRoot;
291
345
  const badgeVariants = (0, class_variance_authority.cva)("inline-flex items-center gap-1 md:gap-1.5 rounded-full font-medium", {
292
346
  variants: { size: {
293
347
  sm: "px-1 py-0.5 md:px-1.5 text-[9px] md:text-[10px]",
@@ -384,7 +438,7 @@ var getVariantStyles = (variant, isHovered, isFocusVisible) => {
384
438
  background: isHovered ? "var(--btn-primary-hover-bg)" : "var(--btn-primary-bg)",
385
439
  color: "var(--btn-primary-text)",
386
440
  border: "none",
387
- boxShadow: isFocusVisible ? "var(--focus-glow)" : isHovered ? "var(--btn-primary-glow)" : "0 4px 15px oklch(48.5% 0.26 283 / 0.25)"
441
+ boxShadow: isFocusVisible ? "var(--focus-glow)" : isHovered ? "var(--btn-primary-glow)" : "var(--btn-primary-shadow)"
388
442
  },
389
443
  secondary: {
390
444
  background: isHovered ? "var(--btn-secondary-hover-bg)" : "var(--btn-secondary-bg)",
@@ -402,13 +456,13 @@ var getVariantStyles = (variant, isHovered, isFocusVisible) => {
402
456
  background: "var(--btn-destructive-bg)",
403
457
  color: "var(--btn-destructive-text)",
404
458
  border: "none",
405
- boxShadow: isFocusVisible ? "var(--focus-glow)" : isHovered ? "var(--btn-destructive-glow)" : "0 4px 15px oklch(62.8% 0.225 29 / 0.25)"
459
+ boxShadow: isFocusVisible ? "var(--focus-glow)" : isHovered ? "var(--btn-destructive-glow)" : "var(--btn-destructive-shadow)"
406
460
  },
407
461
  success: {
408
462
  background: "var(--btn-success-bg)",
409
463
  color: "var(--btn-success-text)",
410
464
  border: "none",
411
- boxShadow: isFocusVisible ? "var(--focus-glow)" : isHovered ? "var(--btn-success-glow)" : "0 4px 15px oklch(70.7% 0.143 167 / 0.25)"
465
+ boxShadow: isFocusVisible ? "var(--focus-glow)" : isHovered ? "var(--btn-success-glow)" : "var(--btn-success-shadow)"
412
466
  },
413
467
  text: {
414
468
  background: "transparent",
@@ -483,7 +537,7 @@ const ButtonGlass = (0, react.forwardRef)(({ asChild = false, className, variant
483
537
  }),
484
538
  isHovered && variant === "primary" && !isDisabled && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
485
539
  className: "absolute inset-0 rounded-xl animate-glow-pulse pointer-events-none",
486
- style: { background: "radial-gradient(circle, oklch(100% 0 0 / 0.1) 0%, transparent 70%)" }
540
+ style: { background: "var(--btn-glow-radial)" }
487
541
  }),
488
542
  loading && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.RefreshCw, { className: require_utils.cn(ICON_SIZES.md, "animate-spin") }),
489
543
  !loading && Icon && iconPosition === "left" && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Icon, { className: ICON_SIZES.md }),
@@ -548,12 +602,12 @@ const CheckboxGlass = (0, react.forwardRef)(({ className, checked, onChange, lab
548
602
  });
549
603
  });
550
604
  CheckboxGlass.displayName = "CheckboxGlass";
551
- var circularProgressVariants = (0, class_variance_authority.cva)("relative inline-flex items-center justify-center p-2", {
605
+ var circularProgressVariants = (0, class_variance_authority.cva)("relative inline-flex items-center justify-center p-4", {
552
606
  variants: { size: {
553
- sm: "w-16 h-16",
554
- md: "w-24 h-24",
555
- lg: "w-32 h-32",
556
- xl: "w-40 h-40"
607
+ sm: "w-20 h-20",
608
+ md: "w-28 h-28",
609
+ lg: "w-36 h-36",
610
+ xl: "w-44 h-44"
557
611
  } },
558
612
  defaultVariants: { size: "md" }
559
613
  });
@@ -814,10 +868,10 @@ var Primitive$6 = [
814
868
  "svg",
815
869
  "ul"
816
870
  ].reduce((primitive, node) => {
817
- const Slot$4 = (0, __radix_ui_react_slot.createSlot)(`Primitive.${node}`);
871
+ const Slot$3 = (0, __radix_ui_react_slot.createSlot)(`Primitive.${node}`);
818
872
  const Node$1 = react.forwardRef((props, forwardedRef) => {
819
873
  const { asChild, ...primitiveProps } = props;
820
- const Comp = asChild ? Slot$4 : node;
874
+ const Comp = asChild ? Slot$3 : node;
821
875
  if (typeof window !== "undefined") window[Symbol.for("radix-ui")] = true;
822
876
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Comp, {
823
877
  ...primitiveProps,
@@ -1064,10 +1118,10 @@ var Primitive$5 = [
1064
1118
  "svg",
1065
1119
  "ul"
1066
1120
  ].reduce((primitive, node) => {
1067
- const Slot$4 = (0, __radix_ui_react_slot.createSlot)(`Primitive.${node}`);
1121
+ const Slot$3 = (0, __radix_ui_react_slot.createSlot)(`Primitive.${node}`);
1068
1122
  const Node$1 = react.forwardRef((props, forwardedRef) => {
1069
1123
  const { asChild, ...primitiveProps } = props;
1070
- const Comp = asChild ? Slot$4 : node;
1124
+ const Comp = asChild ? Slot$3 : node;
1071
1125
  if (typeof window !== "undefined") window[Symbol.for("radix-ui")] = true;
1072
1126
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Comp, {
1073
1127
  ...primitiveProps,
@@ -1270,7 +1324,7 @@ function removeLinks(items) {
1270
1324
  var useLayoutEffect2 = globalThis?.document ? react.useLayoutEffect : () => {};
1271
1325
  var useReactId = react[" useId ".trim().toString()] || (() => void 0);
1272
1326
  var count = 0;
1273
- function useId$3(deterministicId) {
1327
+ function useId$2(deterministicId) {
1274
1328
  const [id, setId] = react.useState(useReactId());
1275
1329
  useLayoutEffect2(() => {
1276
1330
  if (!deterministicId) setId((reactId) => reactId ?? String(count++));
@@ -2788,10 +2842,10 @@ var Primitive$4 = [
2788
2842
  "svg",
2789
2843
  "ul"
2790
2844
  ].reduce((primitive, node) => {
2791
- const Slot$4 = (0, __radix_ui_react_slot.createSlot)(`Primitive.${node}`);
2845
+ const Slot$3 = (0, __radix_ui_react_slot.createSlot)(`Primitive.${node}`);
2792
2846
  const Node$1 = react.forwardRef((props, forwardedRef) => {
2793
2847
  const { asChild, ...primitiveProps } = props;
2794
- const Comp = asChild ? Slot$4 : node;
2848
+ const Comp = asChild ? Slot$3 : node;
2795
2849
  if (typeof window !== "undefined") window[Symbol.for("radix-ui")] = true;
2796
2850
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Comp, {
2797
2851
  ...primitiveProps,
@@ -2900,10 +2954,10 @@ var Primitive$3 = [
2900
2954
  "svg",
2901
2955
  "ul"
2902
2956
  ].reduce((primitive, node) => {
2903
- const Slot$4 = (0, __radix_ui_react_slot.createSlot)(`Primitive.${node}`);
2957
+ const Slot$3 = (0, __radix_ui_react_slot.createSlot)(`Primitive.${node}`);
2904
2958
  const Node$1 = react.forwardRef((props, forwardedRef) => {
2905
2959
  const { asChild, ...primitiveProps } = props;
2906
- const Comp = asChild ? Slot$4 : node;
2960
+ const Comp = asChild ? Slot$3 : node;
2907
2961
  if (typeof window !== "undefined") window[Symbol.for("radix-ui")] = true;
2908
2962
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Comp, {
2909
2963
  ...primitiveProps,
@@ -3210,10 +3264,10 @@ var Primitive$2 = [
3210
3264
  "svg",
3211
3265
  "ul"
3212
3266
  ].reduce((primitive, node) => {
3213
- const Slot$4 = (0, __radix_ui_react_slot.createSlot)(`Primitive.${node}`);
3267
+ const Slot$3 = (0, __radix_ui_react_slot.createSlot)(`Primitive.${node}`);
3214
3268
  const Node$1 = react.forwardRef((props, forwardedRef) => {
3215
3269
  const { asChild, ...primitiveProps } = props;
3216
- const Comp = asChild ? Slot$4 : node;
3270
+ const Comp = asChild ? Slot$3 : node;
3217
3271
  if (typeof window !== "undefined") window[Symbol.for("radix-ui")] = true;
3218
3272
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Comp, {
3219
3273
  ...primitiveProps,
@@ -3354,10 +3408,10 @@ var Primitive$1 = [
3354
3408
  "svg",
3355
3409
  "ul"
3356
3410
  ].reduce((primitive, node) => {
3357
- const Slot$4 = (0, __radix_ui_react_slot.createSlot)(`Primitive.${node}`);
3411
+ const Slot$3 = (0, __radix_ui_react_slot.createSlot)(`Primitive.${node}`);
3358
3412
  const Node$1 = react.forwardRef((props, forwardedRef) => {
3359
3413
  const { asChild, ...primitiveProps } = props;
3360
- const Comp = asChild ? Slot$4 : node;
3414
+ const Comp = asChild ? Slot$3 : node;
3361
3415
  if (typeof window !== "undefined") window[Symbol.for("radix-ui")] = true;
3362
3416
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Comp, {
3363
3417
  ...primitiveProps,
@@ -4132,7 +4186,7 @@ var Popover$1 = (props) => {
4132
4186
  ...popperScope,
4133
4187
  children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PopoverProvider, {
4134
4188
  scope: __scopePopover,
4135
- contentId: useId$3(),
4189
+ contentId: useId$2(),
4136
4190
  triggerRef,
4137
4191
  open,
4138
4192
  onOpenChange: setOpen,
@@ -4348,6 +4402,7 @@ function getState(open) {
4348
4402
  return open ? "open" : "closed";
4349
4403
  }
4350
4404
  var Root2 = Popover$1;
4405
+ var Anchor2 = PopoverAnchor;
4351
4406
  var Trigger = PopoverTrigger$1;
4352
4407
  var Portal$1 = PopoverPortal;
4353
4408
  var Content2 = PopoverContent$1;
@@ -4407,10 +4462,10 @@ var Primitive = [
4407
4462
  "svg",
4408
4463
  "ul"
4409
4464
  ].reduce((primitive, node) => {
4410
- const Slot$4 = (0, __radix_ui_react_slot.createSlot)(`Primitive.${node}`);
4465
+ const Slot$3 = (0, __radix_ui_react_slot.createSlot)(`Primitive.${node}`);
4411
4466
  const Node$1 = react.forwardRef((props, forwardedRef) => {
4412
4467
  const { asChild, ...primitiveProps } = props;
4413
- const Comp = asChild ? Slot$4 : node;
4468
+ const Comp = asChild ? Slot$3 : node;
4414
4469
  if (typeof window !== "undefined") window[Symbol.for("radix-ui")] = true;
4415
4470
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Comp, {
4416
4471
  ...primitiveProps,
@@ -4436,7 +4491,7 @@ var N = "[cmdk-group=\"\"]", Y = "[cmdk-group-items=\"\"]", be = "[cmdk-group-he
4436
4491
  groups: /* @__PURE__ */ new Set()
4437
4492
  }
4438
4493
  };
4439
- }), u$2 = L(() => /* @__PURE__ */ new Set()), c$2 = L(() => /* @__PURE__ */ new Map()), d$1 = L(() => /* @__PURE__ */ new Map()), f$1 = L(() => /* @__PURE__ */ new Set()), p$2 = pe(r$1), { label: b$1, children: m$2, value: R, onValueChange: x$2, filter: C, shouldFilter: S, loop: A, disablePointerSelection: ge = !1, vimBindings: j = !0, ...O$1 } = r$1, $$1 = useId$3(), q$1 = useId$3(), _ = useId$3(), I = react.useRef(null), v$1 = ke();
4494
+ }), u$2 = L(() => /* @__PURE__ */ new Set()), c$2 = L(() => /* @__PURE__ */ new Map()), d$1 = L(() => /* @__PURE__ */ new Map()), f$1 = L(() => /* @__PURE__ */ new Set()), p$2 = pe(r$1), { label: b$1, children: m$2, value: R, onValueChange: x$2, filter: C, shouldFilter: S, loop: A, disablePointerSelection: ge = !1, vimBindings: j = !0, ...O$1 } = r$1, $$1 = useId$2(), q$1 = useId$2(), _ = useId$2(), I = react.useRef(null), v$1 = ke();
4440
4495
  k$2(() => {
4441
4496
  if (R !== void 0) {
4442
4497
  let e$1 = R.trim();
@@ -4633,7 +4688,7 @@ var N = "[cmdk-group=\"\"]", Y = "[cmdk-group-items=\"\"]", be = "[cmdk-group-he
4633
4688
  }, b$1), B(r$1, (e$1) => react.createElement(de.Provider, { value: E }, react.createElement(ue.Provider, { value: U$1 }, e$1))));
4634
4689
  }), he = react.forwardRef((r$1, o) => {
4635
4690
  var _, I;
4636
- let n$1 = useId$3(), u$2 = react.useRef(null), c$2 = react.useContext(fe), d$1 = K(), f$1 = pe(r$1), p$2 = (I = (_ = f$1.current) == null ? void 0 : _.forceMount) != null ? I : c$2 == null ? void 0 : c$2.forceMount;
4691
+ let n$1 = useId$2(), u$2 = react.useRef(null), c$2 = react.useContext(fe), d$1 = K(), f$1 = pe(r$1), p$2 = (I = (_ = f$1.current) == null ? void 0 : _.forceMount) != null ? I : c$2 == null ? void 0 : c$2.forceMount;
4637
4692
  k$2(() => {
4638
4693
  if (!p$2) return d$1.item(n$1, c$2 == null ? void 0 : c$2.id);
4639
4694
  }, [p$2]);
@@ -4673,7 +4728,7 @@ var N = "[cmdk-group=\"\"]", Y = "[cmdk-group-items=\"\"]", be = "[cmdk-group-he
4673
4728
  onClick: A ? void 0 : C
4674
4729
  }, r$1.children);
4675
4730
  }), Ee = react.forwardRef((r$1, o) => {
4676
- let { heading: n$1, children: u$2, forceMount: c$2, ...d$1 } = r$1, f$1 = useId$3(), p$2 = react.useRef(null), b$1 = react.useRef(null), m$2 = useId$3(), R = K(), x$2 = P((S) => c$2 || R.filter() === !1 ? !0 : S.search ? S.filtered.groups.has(f$1) : !0);
4731
+ let { heading: n$1, children: u$2, forceMount: c$2, ...d$1 } = r$1, f$1 = useId$2(), p$2 = react.useRef(null), b$1 = react.useRef(null), m$2 = useId$2(), R = K(), x$2 = P((S) => c$2 || R.filter() === !1 ? !0 : S.search ? S.filtered.groups.has(f$1) : !0);
4677
4732
  k$2(() => R.group(f$1), []), ve(f$1, p$2, [
4678
4733
  r$1.value,
4679
4734
  r$1.heading,
@@ -4934,6 +4989,10 @@ function getDropdownContentStyles() {
4934
4989
  };
4935
4990
  }
4936
4991
  const dropdownContentClasses = require_utils.cn("min-w-40 md:min-w-[200px]", "rounded-2xl overflow-hidden", "z-[50002]", "animate-in fade-in-0 zoom-in-95", "data-[side=bottom]:slide-in-from-top-2", "data-[side=top]:slide-in-from-bottom-2");
4992
+ function getDropdownItemClasses(options$1) {
4993
+ const { danger, selected, highlighted } = options$1 ?? {};
4994
+ return require_utils.cn("w-full px-3 py-2.5", "text-sm text-left", "flex items-center gap-2", "rounded-lg", "outline-none cursor-pointer select-none", "transition-colors duration-150", highlighted && "bg-(--dropdown-item-hover)", "data-[highlighted]:bg-(--dropdown-item-hover)", "data-[selected=true]:bg-(--dropdown-item-hover)", selected && "bg-(--select-item-selected-bg) text-(--select-item-selected-text)", danger ? "text-(--alert-danger-text) data-[highlighted]:text-(--alert-danger-text)" : "text-(--dropdown-item-text)");
4995
+ }
4937
4996
  const dropdownSeparatorClasses = require_utils.cn("h-px my-1", "bg-[var(--dropdown-border)]");
4938
4997
  const dropdownLabelClasses = require_utils.cn("px-3 py-1.5 md:px-4 md:py-2", "text-xs font-medium", "text-[var(--text-muted)]");
4939
4998
  function ComboBoxGlassInner({ options: options$1, value, onChange, placeholder = "Select option...", emptyText = "No results found.", searchPlaceholder = "Search...", glassVariant = "glass", disabled = false, className, popoverClassName, clearable = false, side = "bottom", align = "start", label, error, success, required = false, size: size$3 = "md", searchable = true, icon: TriggerIcon }, ref) {
@@ -4987,7 +5046,7 @@ function ComboBoxGlassInner({ options: options$1, value, onChange, placeholder =
4987
5046
  }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PopoverContent, {
4988
5047
  side,
4989
5048
  align,
4990
- className: require_utils.cn("w-[--radix-popover-trigger-width] p-0 rounded-2xl overflow-hidden border-0", getGlassClass(), popoverClassName),
5049
+ className: require_utils.cn(dropdownContentClasses, "w-[--radix-popover-trigger-width] p-0 border-0", getGlassClass(), popoverClassName),
4991
5050
  style: getDropdownContentStyles(),
4992
5051
  children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(Command, {
4993
5052
  shouldFilter: false,
@@ -5011,7 +5070,7 @@ function ComboBoxGlassInner({ options: options$1, value, onChange, placeholder =
5011
5070
  value: String(option.value),
5012
5071
  disabled: option.disabled,
5013
5072
  onSelect: () => handleSelect(option.value),
5014
- className: require_utils.cn("w-full px-3 py-2.5 text-sm flex items-center gap-2 rounded-lg", "cursor-pointer transition-colors duration-150", "text-[var(--dropdown-item-text)]", "data-[selected=true]:bg-[var(--dropdown-item-hover)]", isSelected && "bg-[var(--select-item-selected-bg)] text-[var(--select-item-selected-text)]", option.disabled && "cursor-not-allowed opacity-50"),
5073
+ className: require_utils.cn(getDropdownItemClasses({ selected: isSelected }), option.disabled && "cursor-not-allowed opacity-50"),
5015
5074
  children: [
5016
5075
  /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.CheckIcon, { className: require_utils.cn(ICON_SIZES.md, "shrink-0", isSelected ? "opacity-100 text-[var(--text-accent)]" : "opacity-0") }),
5017
5076
  OptionIcon && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(OptionIcon, { className: require_utils.cn(ICON_SIZES.md, "shrink-0 text-[var(--dropdown-icon)]") }),
@@ -5039,34 +5098,98 @@ function ComboBoxGlassInner({ options: options$1, value, onChange, placeholder =
5039
5098
  }
5040
5099
  const ComboBoxGlass = (0, react.forwardRef)(ComboBoxGlassInner);
5041
5100
  ComboBoxGlassInner.displayName = "ComboBoxGlass";
5101
+ var DropdownMenuGlass = __radix_ui_react_dropdown_menu.Root;
5102
+ var DropdownMenuGlassTrigger = __radix_ui_react_dropdown_menu.Trigger;
5103
+ var DropdownMenuGlassGroup = __radix_ui_react_dropdown_menu.Group;
5104
+ var DropdownMenuGlassPortal = __radix_ui_react_dropdown_menu.Portal;
5105
+ var DropdownMenuGlassSub = __radix_ui_react_dropdown_menu.Sub;
5106
+ var DropdownMenuGlassRadioGroup = __radix_ui_react_dropdown_menu.RadioGroup;
5107
+ var DropdownMenuGlassSubTrigger = react.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(__radix_ui_react_dropdown_menu.SubTrigger, {
5108
+ ref,
5109
+ className: require_utils.cn(getDropdownItemClasses(), "data-[state=open]:bg-[var(--dropdown-item-hover)]", inset && "pl-8", className),
5110
+ ...props,
5111
+ children: [children, /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.ChevronRightIcon, { className: "ml-auto h-4 w-4" })]
5112
+ }));
5113
+ DropdownMenuGlassSubTrigger.displayName = "DropdownMenuGlassSubTrigger";
5114
+ var DropdownMenuGlassSubContent = react.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__radix_ui_react_dropdown_menu.SubContent, {
5115
+ ref,
5116
+ className: require_utils.cn(dropdownContentClasses, "p-1.5", className),
5117
+ style: getDropdownContentStyles(),
5118
+ ...props
5119
+ }));
5120
+ DropdownMenuGlassSubContent.displayName = "DropdownMenuGlassSubContent";
5121
+ var DropdownMenuGlassContent = react.forwardRef(({ className, sideOffset = 8, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__radix_ui_react_dropdown_menu.Portal, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__radix_ui_react_dropdown_menu.Content, {
5122
+ ref,
5123
+ sideOffset,
5124
+ className: require_utils.cn(dropdownContentClasses, "p-1.5", className),
5125
+ style: getDropdownContentStyles(),
5126
+ ...props
5127
+ }) }));
5128
+ DropdownMenuGlassContent.displayName = "DropdownMenuGlassContent";
5129
+ var DropdownMenuGlassItem = react.forwardRef(({ className, inset, variant = "default", ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__radix_ui_react_dropdown_menu.Item, {
5130
+ ref,
5131
+ className: require_utils.cn(getDropdownItemClasses({ danger: variant === "destructive" }), inset && "pl-8", className),
5132
+ ...props
5133
+ }));
5134
+ DropdownMenuGlassItem.displayName = "DropdownMenuGlassItem";
5135
+ var DropdownMenuGlassCheckboxItem = react.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(__radix_ui_react_dropdown_menu.CheckboxItem, {
5136
+ ref,
5137
+ className: require_utils.cn(getDropdownItemClasses(), "pl-8 pr-2", className),
5138
+ checked,
5139
+ ...props,
5140
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
5141
+ className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center",
5142
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__radix_ui_react_dropdown_menu.ItemIndicator, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.CheckIcon, { className: "h-4 w-4" }) })
5143
+ }), children]
5144
+ }));
5145
+ DropdownMenuGlassCheckboxItem.displayName = "DropdownMenuGlassCheckboxItem";
5146
+ var DropdownMenuGlassRadioItem = react.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(__radix_ui_react_dropdown_menu.RadioItem, {
5147
+ ref,
5148
+ className: require_utils.cn(getDropdownItemClasses(), "pl-8 pr-2", className),
5149
+ ...props,
5150
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
5151
+ className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center",
5152
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__radix_ui_react_dropdown_menu.ItemIndicator, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.CircleIcon, { className: "h-2 w-2 fill-current" }) })
5153
+ }), children]
5154
+ }));
5155
+ DropdownMenuGlassRadioItem.displayName = "DropdownMenuGlassRadioItem";
5156
+ var DropdownMenuGlassLabel = react.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__radix_ui_react_dropdown_menu.Label, {
5157
+ ref,
5158
+ className: require_utils.cn(dropdownLabelClasses, inset && "pl-8", className),
5159
+ ...props
5160
+ }));
5161
+ DropdownMenuGlassLabel.displayName = "DropdownMenuGlassLabel";
5162
+ var DropdownMenuGlassSeparator = react.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__radix_ui_react_dropdown_menu.Separator, {
5163
+ ref,
5164
+ className: require_utils.cn(dropdownSeparatorClasses, "-mx-1 my-1", className),
5165
+ ...props
5166
+ }));
5167
+ DropdownMenuGlassSeparator.displayName = "DropdownMenuGlassSeparator";
5168
+ var DropdownMenuGlassShortcut = ({ className, ...props }) => {
5169
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
5170
+ className: require_utils.cn("ml-auto text-xs tracking-widest text-(--text-muted)", className),
5171
+ ...props
5172
+ });
5173
+ };
5174
+ DropdownMenuGlassShortcut.displayName = "DropdownMenuGlassShortcut";
5042
5175
  const DropdownGlass = react.forwardRef(({ trigger, items, align = "left", className }, ref) => {
5043
5176
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
5044
5177
  ref,
5045
5178
  className: require_utils.cn("relative inline-block", className),
5046
- children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(__radix_ui_react_dropdown_menu.Root, { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(__radix_ui_react_dropdown_menu.Trigger, {
5179
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(DropdownMenuGlass, { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(DropdownMenuGlassTrigger, {
5047
5180
  asChild: true,
5048
5181
  children: trigger
5049
- }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__radix_ui_react_dropdown_menu.Portal, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__radix_ui_react_dropdown_menu.Content, {
5182
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DropdownMenuGlassContent, {
5050
5183
  align: align === "left" ? "start" : "end",
5051
- sideOffset: 8,
5052
- className: dropdownContentClasses,
5053
- style: getDropdownContentStyles(),
5054
- role: "menu",
5055
- "aria-orientation": "vertical",
5056
- children: items.map((item, idx) => item.divider ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__radix_ui_react_dropdown_menu.Separator, {
5057
- className: "my-2 mx-3 h-px",
5058
- style: { borderTop: "1px solid var(--dropdown-divider)" },
5059
- role: "separator"
5060
- }, `divider-${idx}`) : /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(__radix_ui_react_dropdown_menu.Item, {
5061
- onClick: item.onClick,
5062
- className: require_utils.cn("group w-full px-3 py-2 md:px-4 md:py-2.5 text-xs md:text-sm text-left flex items-center gap-2 md:gap-3", "cursor-default select-none", "transition-colors duration-200 ease-out", "focus-visible:outline-none focus-visible:shadow-(--focus-glow)", "data-[highlighted]:bg-[var(--dropdown-item-hover)]", item.danger ? "text-[var(--alert-danger-text)] data-[highlighted]:text-[var(--alert-danger-text)]" : "text-[var(--dropdown-item-text)]"),
5063
- role: "menuitem",
5064
- children: [item.icon && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(item.icon, { className: require_utils.cn(ICON_SIZES.md, "transition-colors duration-200 ease-out shrink-0", item.danger ? "text-[var(--alert-danger-text)]" : "text-[var(--dropdown-icon)] group-data-[highlighted]:text-[var(--dropdown-icon-hover)]") }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
5184
+ children: items.map((item, idx) => item.divider ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DropdownMenuGlassSeparator, {}, `divider-${idx}`) : /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(DropdownMenuGlassItem, {
5185
+ variant: item.danger ? "destructive" : "default",
5186
+ onSelect: item.onClick,
5187
+ children: [item.icon && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(item.icon, { className: require_utils.cn(ICON_SIZES.md, "shrink-0", item.danger ? "text-(--alert-danger-text)" : "text-(--dropdown-icon) group-data-highlighted:text-(--dropdown-icon-hover)") }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
5065
5188
  className: "font-medium",
5066
5189
  children: item.label
5067
5190
  })]
5068
5191
  }, `item-${idx}`))
5069
- }) })] })
5192
+ })] })
5070
5193
  });
5071
5194
  });
5072
5195
  DropdownGlass.displayName = "DropdownGlass";
@@ -5484,7 +5607,10 @@ const NotificationGlass = (0, react.forwardRef)(({ variant: variantProp, type: t
5484
5607
  });
5485
5608
  });
5486
5609
  NotificationGlass.displayName = "NotificationGlass";
5487
- const PopoverGlass = react.forwardRef(({ trigger, children, side = "bottom", align = "center", sideOffset = 8, open, onOpenChange, showArrow = true, className }, ref) => {
5610
+ var PopoverGlassRoot = Root2;
5611
+ var PopoverGlassTrigger = Trigger;
5612
+ var PopoverGlassAnchor = Anchor2;
5613
+ var PopoverGlassContent = react.forwardRef(({ className, align = "center", sideOffset = 8, showArrow = true, children, ...props }, ref) => {
5488
5614
  const popoverStyles = {
5489
5615
  background: "var(--popover-bg)",
5490
5616
  border: "1px solid var(--popover-border)",
@@ -5493,31 +5619,42 @@ const PopoverGlass = react.forwardRef(({ trigger, children, side = "bottom", ali
5493
5619
  WebkitBackdropFilter: "blur(var(--blur-md))"
5494
5620
  };
5495
5621
  const arrowStyles = { fill: "var(--popover-arrow-bg)" };
5496
- return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(Root2, {
5622
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Portal$1, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(Content2, {
5623
+ ref,
5624
+ align,
5625
+ sideOffset,
5626
+ className: require_utils.cn("z-50003 rounded-2xl", "animate-in fade-in-0 zoom-in-95 duration-200", "data-[side=bottom]:slide-in-from-top-2", "data-[side=top]:slide-in-from-bottom-2", "data-[side=right]:slide-in-from-left-2", "data-[side=left]:slide-in-from-right-2", "outline-none", className),
5627
+ style: popoverStyles,
5628
+ ...props,
5629
+ children: [children, showArrow && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Arrow2, {
5630
+ className: "fill-current",
5631
+ style: arrowStyles,
5632
+ width: 16,
5633
+ height: 8
5634
+ })]
5635
+ }) });
5636
+ });
5637
+ PopoverGlassContent.displayName = "PopoverGlassContent";
5638
+ var PopoverGlassLegacy = react.forwardRef(({ trigger, children, side = "bottom", align = "center", sideOffset = 8, open, onOpenChange, showArrow = true, className }, ref) => {
5639
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(PopoverGlassRoot, {
5497
5640
  open,
5498
5641
  onOpenChange,
5499
- children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(Trigger, {
5642
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(PopoverGlassTrigger, {
5500
5643
  asChild: true,
5501
5644
  children: trigger
5502
- }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Portal$1, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(Content2, {
5645
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PopoverGlassContent, {
5503
5646
  ref,
5504
5647
  side,
5505
5648
  align,
5506
5649
  sideOffset,
5507
- className: require_utils.cn("z-[50003] rounded-2xl", "animate-in fade-in-0 zoom-in-95 duration-200", "data-[side=bottom]:slide-in-from-top-2", "data-[side=top]:slide-in-from-bottom-2", "data-[side=right]:slide-in-from-left-2", "data-[side=left]:slide-in-from-right-2", "outline-none", className),
5508
- style: popoverStyles,
5509
- role: "dialog",
5510
- "aria-modal": "false",
5511
- children: [children, showArrow && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Arrow2, {
5512
- className: "fill-current",
5513
- style: arrowStyles,
5514
- width: 16,
5515
- height: 8
5516
- })]
5517
- }) })]
5650
+ showArrow,
5651
+ className,
5652
+ children
5653
+ })]
5518
5654
  });
5519
5655
  });
5520
- PopoverGlass.displayName = "PopoverGlass";
5656
+ PopoverGlassLegacy.displayName = "PopoverGlassLegacy";
5657
+ const PopoverGlass = PopoverGlassRoot;
5521
5658
  const skeletonVariants = (0, class_variance_authority.cva)("overflow-hidden", {
5522
5659
  variants: { variant: {
5523
5660
  text: "h-3 md:h-4 rounded",
@@ -5803,42 +5940,42 @@ const ToggleGlass = (0, react.forwardRef)(({ className, size: size$3 = "md", che
5803
5940
  return toggle;
5804
5941
  });
5805
5942
  ToggleGlass.displayName = "ToggleGlass";
5806
- const tooltipPositions = (0, class_variance_authority.cva)("absolute z-50 px-2 py-1 md:px-3 md:py-1.5 rounded-lg text-[10px] md:text-xs font-medium whitespace-nowrap transition-opacity duration-200", {
5807
- variants: { position: {
5808
- top: "bottom-full left-1/2 -translate-x-1/2 mb-2",
5809
- bottom: "top-full left-1/2 -translate-x-1/2 mt-2",
5810
- left: "right-full top-1/2 -translate-y-1/2 mr-2",
5811
- right: "left-full top-1/2 -translate-y-1/2 ml-2"
5812
- } },
5813
- defaultVariants: { position: "top" }
5814
- });
5815
- const TooltipGlass = (0, react.forwardRef)(({ children, content, position = "top", className }, ref) => {
5816
- const { isHovered, hoverProps } = require_use_focus.useHover();
5817
- const tooltipId = (0, react.useId)();
5818
- const tooltipStyles = {
5819
- background: "var(--tooltip-bg)",
5820
- color: "var(--tooltip-text)",
5821
- border: "1px solid var(--tooltip-border)",
5822
- boxShadow: "var(--tooltip-shadow)",
5823
- backdropFilter: "blur(var(--blur-xl))",
5824
- WebkitBackdropFilter: "blur(var(--blur-xl))"
5825
- };
5826
- return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
5827
- ref,
5828
- className: require_utils.cn("relative inline-flex", className),
5829
- onMouseEnter: hoverProps.onMouseEnter,
5830
- onMouseLeave: hoverProps.onMouseLeave,
5831
- "aria-describedby": isHovered ? tooltipId : void 0,
5832
- children: [children, isHovered && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
5833
- id: tooltipId,
5834
- className: require_utils.cn(tooltipPositions({ position })),
5835
- style: tooltipStyles,
5836
- role: "tooltip",
5837
- children: content
5838
- })]
5943
+ var TooltipGlassProvider = ({ delayDuration = 0, ...props }) => {
5944
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__radix_ui_react_tooltip.Provider, {
5945
+ delayDuration,
5946
+ ...props
5839
5947
  });
5948
+ };
5949
+ var TooltipGlassRoot = __radix_ui_react_tooltip.Root;
5950
+ var TooltipGlassTrigger = __radix_ui_react_tooltip.Trigger;
5951
+ var TooltipGlassContent = react.forwardRef(({ className, sideOffset = 4, ...props }, ref) => {
5952
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__radix_ui_react_tooltip.Portal, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__radix_ui_react_tooltip.Content, {
5953
+ ref,
5954
+ sideOffset,
5955
+ className: require_utils.cn("z-50 overflow-hidden rounded-md px-3 py-1.5 text-xs text-balance", "animate-in fade-in-0 zoom-in-95", "data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95", "data-[side=bottom]:slide-in-from-top-2", "data-[side=left]:slide-in-from-right-2", "data-[side=right]:slide-in-from-left-2", "data-[side=top]:slide-in-from-bottom-2", className),
5956
+ style: {
5957
+ background: "var(--tooltip-bg)",
5958
+ color: "var(--tooltip-text)",
5959
+ border: "1px solid var(--tooltip-border)",
5960
+ boxShadow: "var(--tooltip-shadow)",
5961
+ backdropFilter: "blur(var(--blur-xl))",
5962
+ WebkitBackdropFilter: "blur(var(--blur-xl))"
5963
+ },
5964
+ ...props
5965
+ }) });
5840
5966
  });
5841
- TooltipGlass.displayName = "TooltipGlass";
5967
+ TooltipGlassContent.displayName = "TooltipGlassContent";
5968
+ var TooltipGlassSimple = ({ content, children, side = "top", className }) => {
5969
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(TooltipGlassRoot, { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(TooltipGlassTrigger, {
5970
+ asChild: true,
5971
+ children
5972
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TooltipGlassContent, {
5973
+ side,
5974
+ className,
5975
+ children: content
5976
+ })] });
5977
+ };
5978
+ const TooltipGlass = TooltipGlassRoot;
5842
5979
  const ExpandableHeaderGlass = (0, react.forwardRef)(({ title, icon: Icon, iconColor = "var(--text-accent)", expanded, onToggle, className, ...props }, ref) => {
5843
5980
  const textStyles = { color: "var(--text-primary)" };
5844
5981
  const chevronStyles = { color: "var(--text-muted)" };
@@ -6111,127 +6248,59 @@ var fieldLabels = {
6111
6248
  name: "Name",
6112
6249
  contribution: "Contribution"
6113
6250
  };
6114
- const SortDropdownGlass = (0, react.forwardRef)(({ sortBy: sortBy$5, sortOrder, onSortChange, options: options$1 = [
6251
+ const SortDropdownGlass = react.forwardRef(({ sortBy: sortBy$5, sortOrder, onSortChange, options: options$1 = [
6115
6252
  "commits",
6116
6253
  "stars",
6117
6254
  "name",
6118
6255
  "contribution"
6119
6256
  ], compact = false, className, ...props }, ref) => {
6120
- const [isOpen, setIsOpen] = (0, react.useState)(false);
6121
- const internalRef = (0, react.useRef)(null);
6122
- (0, react.useEffect)(() => {
6123
- if (!isOpen) return;
6124
- const handleClickOutside = (event) => {
6125
- if (internalRef.current && !internalRef.current.contains(event.target)) setIsOpen(false);
6126
- };
6127
- const handleEscape = (event) => {
6128
- if (event.key === "Escape") setIsOpen(false);
6129
- };
6130
- document.addEventListener("mousedown", handleClickOutside);
6131
- document.addEventListener("keydown", handleEscape);
6132
- return () => {
6133
- document.removeEventListener("mousedown", handleClickOutside);
6134
- document.removeEventListener("keydown", handleEscape);
6135
- };
6136
- }, [isOpen]);
6137
- const handleToggle = (0, react.useCallback)(() => {
6138
- setIsOpen((prev) => !prev);
6139
- }, []);
6140
- const handleFieldSelect = (0, react.useCallback)((field) => {
6257
+ const handleFieldSelect = react.useCallback((field) => {
6141
6258
  if (field === sortBy$5) onSortChange(field, sortOrder === "asc" ? "desc" : "asc");
6142
6259
  else onSortChange(field, "desc");
6143
- setIsOpen(false);
6144
6260
  }, [
6145
6261
  sortBy$5,
6146
6262
  sortOrder,
6147
6263
  onSortChange
6148
6264
  ]);
6149
- const handleKeyDown = (e$1) => {
6150
- if (e$1.key === "Enter" || e$1.key === " ") {
6151
- e$1.preventDefault();
6152
- handleToggle();
6153
- }
6154
- };
6155
- const buttonStyles = (0, react.useMemo)(() => ({
6156
- background: "var(--segmented-container-bg)",
6157
- border: "1px solid var(--segmented-container-border)",
6158
- color: "var(--text-primary)"
6159
- }), []);
6160
- const dropdownStyles = (0, react.useMemo)(() => ({
6161
- ...getDropdownContentStyles(),
6162
- animation: "dropdownFadeIn 0.2s ease-out"
6163
- }), []);
6164
6265
  const SortIcon = sortOrder === "asc" ? lucide_react.ArrowUp : lucide_react.ArrowDown;
6165
- return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
6166
- ref: (node) => {
6167
- internalRef.current = node;
6168
- if (typeof ref === "function") ref(node);
6169
- else if (ref) ref.current = node;
6170
- },
6266
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
6267
+ ref,
6171
6268
  className: require_utils.cn("relative inline-block", className),
6172
- style: { zIndex: isOpen ? 5e4 : "auto" },
6173
6269
  ...props,
6174
- children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
6175
- type: "button",
6176
- onClick: handleToggle,
6177
- onKeyDown: handleKeyDown,
6178
- className: require_utils.cn("flex items-center gap-1.5 px-3 py-1.5 rounded-xl text-xs font-medium transition-all duration-200", "hover:opacity-80 focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-2", "sm:gap-2 sm:px-4 sm:py-2 sm:text-sm"),
6179
- style: buttonStyles,
6180
- "aria-expanded": isOpen,
6181
- "aria-haspopup": "listbox",
6182
- children: compact ? /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", { children: "Sort" }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(SortIcon, {
6183
- className: ICON_SIZES.sm,
6184
- style: { color: "var(--text-accent)" }
6185
- })] }) : /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [
6186
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
6187
- className: "hidden sm:inline",
6188
- style: { color: "var(--text-muted)" },
6189
- children: "Sort:"
6190
- }),
6191
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", { children: fieldLabels[sortBy$5] }),
6192
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)(SortIcon, {
6193
- className: ICON_SIZES.sm,
6194
- style: { color: "var(--text-accent)" }
6195
- }),
6196
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.ChevronDown, {
6197
- className: require_utils.cn(ICON_SIZES.sm, "transition-transform duration-200", isOpen && "rotate-180"),
6198
- style: { color: "var(--text-muted)" }
6199
- })
6200
- ] })
6201
- }), isOpen && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
6202
- className: "fixed inset-0",
6203
- style: { zIndex: 50001 },
6204
- onClick: () => setIsOpen(false)
6205
- }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
6206
- className: "absolute left-0 mt-2 min-w-[140px] py-1.5 rounded-xl overflow-hidden",
6207
- style: {
6208
- ...dropdownStyles,
6209
- zIndex: 50002
6210
- },
6211
- role: "listbox",
6270
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(DropdownMenuGlass, { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(DropdownMenuGlassTrigger, {
6271
+ asChild: true,
6272
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
6273
+ type: "button",
6274
+ className: require_utils.cn("flex items-center gap-1.5 px-3 py-1.5 rounded-xl text-xs font-medium", "sm:gap-2 sm:px-4 sm:py-2 sm:text-sm", "bg-(--dropdown-bg) border border-(--dropdown-border)", "backdrop-blur-md", "transition-all duration-200", "hover:opacity-90 hover:shadow-(--dropdown-glow)", "focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-2", "focus-visible:ring-(--text-accent)", "text-(--dropdown-item-text)"),
6275
+ "aria-haspopup": "menu",
6276
+ children: compact ? /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", { children: "Sort" }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(SortIcon, { className: require_utils.cn(ICON_SIZES.sm, "text-(--text-accent)") })] }) : /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [
6277
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
6278
+ className: "hidden sm:inline text-(--text-muted)",
6279
+ children: "Sort:"
6280
+ }),
6281
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", { children: fieldLabels[sortBy$5] }),
6282
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(SortIcon, { className: require_utils.cn(ICON_SIZES.sm, "text-(--text-accent)") }),
6283
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.ChevronDown, { className: require_utils.cn(ICON_SIZES.sm, "text-(--text-muted)", "transition-transform duration-200", "group-data-[state=open]:rotate-180") })
6284
+ ] })
6285
+ })
6286
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DropdownMenuGlassContent, {
6287
+ align: "start",
6212
6288
  "aria-label": "Sort options",
6213
6289
  children: options$1.map((field) => {
6214
6290
  const isSelected = field === sortBy$5;
6215
- return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("button", {
6216
- type: "button",
6217
- onClick: () => handleFieldSelect(field),
6218
- className: require_utils.cn("w-full px-3 py-2 text-xs sm:text-sm text-left flex items-center justify-between gap-2", "transition-colors duration-150 hover:bg-white/5"),
6219
- style: {
6220
- color: isSelected ? "var(--text-accent)" : "var(--text-primary)",
6221
- background: isSelected ? "var(--dropdown-item-hover)" : "transparent"
6222
- },
6223
- role: "option",
6224
- "aria-selected": isSelected,
6291
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(DropdownMenuGlassItem, {
6292
+ onSelect: () => handleFieldSelect(field),
6293
+ className: require_utils.cn("justify-between", isSelected && "bg-(--select-item-selected-bg)"),
6225
6294
  children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
6226
6295
  className: "font-medium",
6227
6296
  children: fieldLabels[field]
6228
6297
  }), isSelected && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
6229
- className: "flex items-center gap-1",
6298
+ className: "flex items-center gap-1 text-(--text-accent)",
6230
6299
  children: [sortOrder === "asc" ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.ArrowUp, { className: ICON_SIZES.sm }) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.ArrowDown, { className: ICON_SIZES.sm }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.Check, { className: ICON_SIZES.sm })]
6231
6300
  })]
6232
6301
  }, field);
6233
6302
  })
6234
- })] })]
6303
+ })] })
6235
6304
  });
6236
6305
  });
6237
6306
  SortDropdownGlass.displayName = "SortDropdownGlass";
@@ -6355,7 +6424,7 @@ const BaseProgressGlass = (0, react.forwardRef)(({ value = 0, max: max$2 = 100,
6355
6424
  });
6356
6425
  });
6357
6426
  BaseProgressGlass.displayName = "BaseProgressGlass";
6358
- var sizeClasses$2 = {
6427
+ var sizeClasses$1 = {
6359
6428
  normal: "w-2 h-2 md:w-2.5 md:h-2.5",
6360
6429
  large: "w-3.5 h-3.5 md:w-4 md:h-4"
6361
6430
  };
@@ -6364,7 +6433,7 @@ var statusSymbols = {
6364
6433
  yellow: "!",
6365
6434
  red: "✕"
6366
6435
  };
6367
- var statusVarMap$1 = {
6436
+ var statusVarMap = {
6368
6437
  green: {
6369
6438
  bg: "var(--status-online)",
6370
6439
  glow: "var(--status-online-glow)"
@@ -6379,14 +6448,14 @@ var statusVarMap$1 = {
6379
6448
  }
6380
6449
  };
6381
6450
  const StatusIndicatorGlass = (0, react.forwardRef)(({ type = "green", size: size$3 = "normal", className, ...props }, ref) => {
6382
- const colors = statusVarMap$1[type];
6451
+ const colors = statusVarMap[type];
6383
6452
  const indicatorStyles = {
6384
6453
  backgroundColor: colors.bg,
6385
6454
  boxShadow: colors.glow
6386
6455
  };
6387
6456
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
6388
6457
  ref,
6389
- className: require_utils.cn("rounded-full flex items-center justify-center", sizeClasses$2[size$3], className),
6458
+ className: require_utils.cn("rounded-full flex items-center justify-center", sizeClasses$1[size$3], className),
6390
6459
  style: indicatorStyles,
6391
6460
  role: "status",
6392
6461
  "aria-label": `Status: ${type}`,
@@ -6440,16 +6509,16 @@ const FlagAlertGlass = (0, react.forwardRef)(({ type = "warning", title, descrip
6440
6509
  });
6441
6510
  FlagAlertGlass.displayName = "FlagAlertGlass";
6442
6511
  var defaultLangColors = {
6443
- TypeScript: "bg-blue-500",
6444
- JavaScript: "bg-yellow-400",
6445
- Python: "bg-emerald-500",
6446
- HTML: "bg-orange-500",
6447
- CSS: "bg-purple-500",
6448
- Java: "bg-red-500",
6449
- Go: "bg-cyan-500",
6450
- Rust: "bg-orange-600",
6451
- Ruby: "bg-red-600",
6452
- PHP: "bg-indigo-500"
6512
+ TypeScript: "var(--language-typescript)",
6513
+ JavaScript: "var(--language-javascript)",
6514
+ Python: "var(--language-python)",
6515
+ HTML: "var(--language-html)",
6516
+ CSS: "var(--language-css)",
6517
+ Java: "var(--language-java)",
6518
+ Go: "var(--language-go)",
6519
+ Rust: "var(--language-rust)",
6520
+ Ruby: "var(--language-ruby)",
6521
+ PHP: "var(--language-php)"
6453
6522
  };
6454
6523
  const LanguageBarGlass = (0, react.forwardRef)(({ languages = [], showLegend = true, className, ...props }, ref) => {
6455
6524
  const [hoveredLang, setHoveredLang] = (0, react.useState)(null);
@@ -6465,15 +6534,14 @@ const LanguageBarGlass = (0, react.forwardRef)(({ languages = [], showLegend = t
6465
6534
  role: "group",
6466
6535
  "aria-label": "Language distribution",
6467
6536
  children: languages.map((lang, i) => {
6468
- const colorClass = lang.color ?? defaultLangColors[lang.name] ?? "bg-slate-400";
6469
- const segmentStyles = {
6470
- width: `${lang.percent}%`,
6471
- opacity: hoveredLang !== null && hoveredLang !== i ? .5 : 1,
6472
- transition: "all 0.3s"
6473
- };
6537
+ const bgColor = lang.color ?? defaultLangColors[lang.name] ?? "var(--oklch-slate-400)";
6474
6538
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
6475
- className: require_utils.cn(colorClass),
6476
- style: segmentStyles,
6539
+ style: {
6540
+ width: `${lang.percent}%`,
6541
+ backgroundColor: bgColor,
6542
+ opacity: hoveredLang !== null && hoveredLang !== i ? .5 : 1,
6543
+ transition: "all 0.3s"
6544
+ },
6477
6545
  role: "progressbar",
6478
6546
  "aria-label": `${lang.name}: ${lang.percent}%`,
6479
6547
  "aria-valuenow": lang.percent,
@@ -6491,7 +6559,10 @@ const LanguageBarGlass = (0, react.forwardRef)(({ languages = [], showLegend = t
6491
6559
  onMouseEnter: () => setHoveredLang(i),
6492
6560
  onMouseLeave: () => setHoveredLang(null),
6493
6561
  children: [
6494
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", { className: require_utils.cn("w-2 h-2 md:w-2.5 md:h-2.5 rounded-full", lang.color ?? defaultLangColors[lang.name] ?? "bg-slate-400") }),
6562
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
6563
+ className: "w-2 h-2 md:w-2.5 md:h-2.5 rounded-full",
6564
+ style: { backgroundColor: lang.color ?? defaultLangColors[lang.name] ?? "var(--oklch-slate-400)" }
6565
+ }),
6495
6566
  lang.name,
6496
6567
  " ",
6497
6568
  lang.percent,
@@ -6503,54 +6574,57 @@ const LanguageBarGlass = (0, react.forwardRef)(({ languages = [], showLegend = t
6503
6574
  });
6504
6575
  });
6505
6576
  LanguageBarGlass.displayName = "LanguageBarGlass";
6506
- var sizeClasses$1 = {
6577
+ var profileSizeClasses = {
6507
6578
  sm: "w-9 h-9 md:w-10 md:h-10 text-xs md:text-sm",
6508
6579
  md: "w-12 h-12 md:w-14 md:h-14 text-base md:text-lg",
6509
6580
  lg: "w-14 h-14 md:w-16 md:h-16 text-lg md:text-xl",
6510
6581
  xl: "w-18 h-18 md:w-20 md:h-20 text-xl md:text-2xl"
6511
6582
  };
6512
- var statusSizeClasses = {
6513
- sm: "w-2.5 h-2.5 md:w-3 md:h-3",
6514
- md: "w-3 h-3 md:w-3.5 md:h-3.5",
6515
- lg: "w-3.5 h-3.5 md:w-4 md:h-4",
6516
- xl: "w-4 h-4 md:w-5 md:h-5"
6517
- };
6518
- var statusPositionClasses = {
6519
- sm: "bottom-0 right-0",
6520
- md: "bottom-0 right-0",
6521
- lg: "-bottom-0.5 -right-0.5",
6522
- xl: "-bottom-1 -right-1"
6523
- };
6524
- var statusVarMap = {
6525
- online: "var(--status-online)",
6526
- offline: "var(--text-muted)",
6527
- busy: "var(--status-busy)",
6528
- away: "var(--status-away)"
6583
+ var getStatusVars = (statusType) => {
6584
+ return {
6585
+ online: {
6586
+ bg: "var(--status-online)",
6587
+ glow: "var(--status-online-glow)"
6588
+ },
6589
+ offline: {
6590
+ bg: "var(--status-offline)",
6591
+ glow: "none"
6592
+ },
6593
+ busy: {
6594
+ bg: "var(--status-busy)",
6595
+ glow: "var(--status-busy-glow)"
6596
+ },
6597
+ away: {
6598
+ bg: "var(--status-away)",
6599
+ glow: "var(--status-away-glow)"
6600
+ }
6601
+ }[statusType];
6529
6602
  };
6530
6603
  const ProfileAvatarGlass = (0, react.forwardRef)(({ initials, size: size$3 = "lg", status, glowing = true, className, ...props }, ref) => {
6531
- const [isHovered, setIsHovered] = (0, react.useState)(false);
6604
+ const { isHovered, hoverProps } = require_use_focus.useHover();
6532
6605
  const avatarStyles = {
6533
- boxShadow: isHovered ? "var(--profile-avatar-glow)" : "none",
6534
- border: "3px solid var(--profile-avatar-border)"
6606
+ background: "var(--avatar-bg)",
6607
+ border: "3px solid var(--avatar-border)",
6608
+ boxShadow: isHovered ? "var(--avatar-hover-glow)" : "var(--avatar-shadow)",
6609
+ color: "var(--text-inverse)"
6535
6610
  };
6536
6611
  return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
6537
6612
  ref,
6538
6613
  className: require_utils.cn("relative inline-flex", className),
6539
- onMouseEnter: () => setIsHovered(true),
6540
- onMouseLeave: () => setIsHovered(false),
6614
+ onMouseEnter: hoverProps.onMouseEnter,
6615
+ onMouseLeave: hoverProps.onMouseLeave,
6541
6616
  ...props,
6542
6617
  children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
6543
- className: require_utils.cn("rounded-full bg-gradient-to-br from-blue-400 via-violet-500 to-indigo-500", "flex items-center justify-center text-white font-bold transition-all duration-300", sizeClasses$1[size$3], glowing && "animate-[glow-pulse_2s_ease-in-out_infinite]"),
6618
+ className: require_utils.cn("rounded-full flex items-center justify-center font-bold transition-all duration-300", profileSizeClasses[size$3], glowing && "animate-[glow-pulse_2s_ease-in-out_infinite]"),
6544
6619
  style: avatarStyles,
6545
6620
  role: "img",
6546
6621
  "aria-label": `Profile avatar with initials ${initials}`,
6547
6622
  children: initials
6548
6623
  }), status && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
6549
- className: require_utils.cn("absolute rounded-full", statusPositionClasses[size$3], statusSizeClasses[size$3]),
6624
+ className: require_utils.cn(statusSizes({ size: size$3 }), "absolute -bottom-0.5 -right-0.5"),
6550
6625
  style: {
6551
- background: statusVarMap[status],
6552
- border: "none",
6553
- boxShadow: "none"
6626
+ background: getStatusVars(status).bg,
6627
+ boxShadow: getStatusVars(status).glow
6554
6628
  },
6555
6629
  role: "status",
6556
6630
  "aria-label": `Status: ${status}`
@@ -6645,7 +6719,7 @@ const RainbowProgressGlass = (0, react.forwardRef)(({ value, size: size$3 = "lg"
6645
6719
  const trackStyles = { background: "var(--progress-bg)" };
6646
6720
  const fillStyles = {
6647
6721
  width: `${clampedValue}%`,
6648
- background: "linear-gradient(90deg, #f59e0b, #fbbf24, #84cc16, #22c55e, #14b8a6, #06b6d4, #3b82f6)",
6722
+ background: "var(--rainbow-gradient)",
6649
6723
  boxShadow: showGlow ? "var(--rainbow-glow)" : "none",
6650
6724
  animation: showGlow ? "var(--rainbow-animation)" : "none"
6651
6725
  };
@@ -9164,7 +9238,7 @@ var require_use_sync_external_store_shim_development = /* @__PURE__ */ __commonJ
9164
9238
  var cachedValue = getSnapshot();
9165
9239
  objectIs$3(value, cachedValue) || (console.error("The result of getSnapshot should be cached to avoid an infinite loop"), didWarnUncachedGetSnapshot = !0);
9166
9240
  }
9167
- cachedValue = useState$22({ inst: {
9241
+ cachedValue = useState$20({ inst: {
9168
9242
  value,
9169
9243
  getSnapshot
9170
9244
  } });
@@ -9178,7 +9252,7 @@ var require_use_sync_external_store_shim_development = /* @__PURE__ */ __commonJ
9178
9252
  value,
9179
9253
  getSnapshot
9180
9254
  ]);
9181
- useEffect$19(function() {
9255
+ useEffect$18(function() {
9182
9256
  checkIfSnapshotChanged$1(inst) && forceUpdate({ inst });
9183
9257
  return subscribe(function() {
9184
9258
  checkIfSnapshotChanged$1(inst) && forceUpdate({ inst });
@@ -9201,7 +9275,7 @@ var require_use_sync_external_store_shim_development = /* @__PURE__ */ __commonJ
9201
9275
  return getSnapshot();
9202
9276
  }
9203
9277
  "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());
9204
- var React$4 = require("react"), objectIs$3 = "function" === typeof Object.is ? Object.is : is$6, useState$22 = React$4.useState, useEffect$19 = React$4.useEffect, useLayoutEffect$7 = React$4.useLayoutEffect, useDebugValue$3 = React$4.useDebugValue, didWarnOld18Alpha = !1, didWarnUncachedGetSnapshot = !1, shim$2 = "undefined" === typeof window || "undefined" === typeof window.document || "undefined" === typeof window.document.createElement ? useSyncExternalStore$1$2 : useSyncExternalStore$2$1;
9278
+ var React$4 = require("react"), objectIs$3 = "function" === typeof Object.is ? Object.is : is$6, useState$20 = React$4.useState, useEffect$18 = React$4.useEffect, useLayoutEffect$7 = React$4.useLayoutEffect, useDebugValue$3 = React$4.useDebugValue, didWarnOld18Alpha = !1, didWarnUncachedGetSnapshot = !1, shim$2 = "undefined" === typeof window || "undefined" === typeof window.document || "undefined" === typeof window.document.createElement ? useSyncExternalStore$1$2 : useSyncExternalStore$2$1;
9205
9279
  exports.useSyncExternalStore = void 0 !== React$4.useSyncExternalStore ? React$4.useSyncExternalStore : shim$2;
9206
9280
  "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());
9207
9281
  })();
@@ -9289,9 +9363,9 @@ var require_with_selector_development = /* @__PURE__ */ __commonJSMin(((exports)
9289
9363
  return x$2 === y$2 && (0 !== x$2 || 1 / x$2 === 1 / y$2) || x$2 !== x$2 && y$2 !== y$2;
9290
9364
  }
9291
9365
  "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());
9292
- var React$4 = require("react"), shim$2 = require_shim(), objectIs$3 = "function" === typeof Object.is ? Object.is : is$6, useSyncExternalStore$3 = shim$2.useSyncExternalStore, useRef$16 = React$4.useRef, useEffect$19 = React$4.useEffect, useMemo$13 = React$4.useMemo, useDebugValue$3 = React$4.useDebugValue;
9366
+ var React$4 = require("react"), shim$2 = require_shim(), objectIs$3 = "function" === typeof Object.is ? Object.is : is$6, useSyncExternalStore$3 = shim$2.useSyncExternalStore, useRef$15 = React$4.useRef, useEffect$18 = React$4.useEffect, useMemo$12 = React$4.useMemo, useDebugValue$3 = React$4.useDebugValue;
9293
9367
  exports.useSyncExternalStoreWithSelector = function(subscribe, getSnapshot, getServerSnapshot, selector, isEqual) {
9294
- var instRef = useRef$16(null);
9368
+ var instRef = useRef$15(null);
9295
9369
  if (null === instRef.current) {
9296
9370
  var inst = {
9297
9371
  hasValue: !1,
@@ -9299,7 +9373,7 @@ var require_with_selector_development = /* @__PURE__ */ __commonJSMin(((exports)
9299
9373
  };
9300
9374
  instRef.current = inst;
9301
9375
  } else inst = instRef.current;
9302
- instRef = useMemo$13(function() {
9376
+ instRef = useMemo$12(function() {
9303
9377
  function memoizedSelector(nextSnapshot) {
9304
9378
  if (!hasMemo) {
9305
9379
  hasMemo = !0;
@@ -9331,7 +9405,7 @@ var require_with_selector_development = /* @__PURE__ */ __commonJSMin(((exports)
9331
9405
  isEqual
9332
9406
  ]);
9333
9407
  var value = useSyncExternalStore$3(subscribe, instRef[0], instRef[1]);
9334
- useEffect$19(function() {
9408
+ useEffect$18(function() {
9335
9409
  inst.hasValue = !0;
9336
9410
  inst.value = value;
9337
9411
  }, [value]);
@@ -23498,9 +23572,9 @@ var require_use_sync_external_store_with_selector_development = /* @__PURE__ */
23498
23572
  return x$2 === y$2 && (0 !== x$2 || 1 / x$2 === 1 / y$2) || x$2 !== x$2 && y$2 !== y$2;
23499
23573
  }
23500
23574
  "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());
23501
- var React$4 = require("react"), objectIs$3 = "function" === typeof Object.is ? Object.is : is$6, useSyncExternalStore$3 = React$4.useSyncExternalStore, useRef$16 = React$4.useRef, useEffect$19 = React$4.useEffect, useMemo$13 = React$4.useMemo, useDebugValue$3 = React$4.useDebugValue;
23575
+ var React$4 = require("react"), objectIs$3 = "function" === typeof Object.is ? Object.is : is$6, useSyncExternalStore$3 = React$4.useSyncExternalStore, useRef$15 = React$4.useRef, useEffect$18 = React$4.useEffect, useMemo$12 = React$4.useMemo, useDebugValue$3 = React$4.useDebugValue;
23502
23576
  exports.useSyncExternalStoreWithSelector = function(subscribe, getSnapshot, getServerSnapshot, selector, isEqual) {
23503
- var instRef = useRef$16(null);
23577
+ var instRef = useRef$15(null);
23504
23578
  if (null === instRef.current) {
23505
23579
  var inst = {
23506
23580
  hasValue: !1,
@@ -23508,7 +23582,7 @@ var require_use_sync_external_store_with_selector_development = /* @__PURE__ */
23508
23582
  };
23509
23583
  instRef.current = inst;
23510
23584
  } else inst = instRef.current;
23511
- instRef = useMemo$13(function() {
23585
+ instRef = useMemo$12(function() {
23512
23586
  function memoizedSelector(nextSnapshot) {
23513
23587
  if (!hasMemo) {
23514
23588
  hasMemo = !0;
@@ -23540,7 +23614,7 @@ var require_use_sync_external_store_with_selector_development = /* @__PURE__ */
23540
23614
  isEqual
23541
23615
  ]);
23542
23616
  var value = useSyncExternalStore$3(subscribe, instRef[0], instRef[1]);
23543
- useEffect$19(function() {
23617
+ useEffect$18(function() {
23544
23618
  inst.hasValue = !0;
23545
23619
  inst.value = value;
23546
23620
  }, [value]);
@@ -26363,7 +26437,8 @@ const TrustScoreDisplayGlass = (0, react.forwardRef)(({ score, maxScore = 100, t
26363
26437
  }), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
26364
26438
  className: "flex items-center gap-2 animate-[score-pulse_2s_ease-in-out_infinite]",
26365
26439
  children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
26366
- className: require_utils.cn(sizes.score, "font-bold bg-linear-to-r from-amber-400 via-emerald-400 to-cyan-400 bg-clip-text text-transparent"),
26440
+ className: require_utils.cn(sizes.score, "font-bold bg-clip-text text-transparent"),
26441
+ style: { backgroundImage: "var(--score-gradient)" },
26367
26442
  children: score
26368
26443
  }), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("span", {
26369
26444
  className: sizes.max,
@@ -27083,7 +27158,8 @@ const TrustScoreCardGlass = (0, react.forwardRef)(({ score = 72, metrics = [], c
27083
27158
  }), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
27084
27159
  className: "flex items-center gap-1.5 md:gap-2 animate-[score-pulse_2s_ease-in-out_infinite]",
27085
27160
  children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
27086
- className: "text-3xl md:text-4xl font-bold bg-linear-to-r from-amber-400 via-emerald-400 to-cyan-400 bg-clip-text text-transparent",
27161
+ className: "text-3xl md:text-4xl font-bold bg-clip-text text-transparent",
27162
+ style: { backgroundImage: "var(--score-gradient)" },
27087
27163
  children: score
27088
27164
  }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
27089
27165
  className: "text-lg md:text-xl",
@@ -27121,12 +27197,42 @@ Object.defineProperty(exports, "AlertGlass", {
27121
27197
  return AlertGlass;
27122
27198
  }
27123
27199
  });
27200
+ Object.defineProperty(exports, "AlertGlassDescription", {
27201
+ enumerable: true,
27202
+ get: function() {
27203
+ return AlertGlassDescription;
27204
+ }
27205
+ });
27206
+ Object.defineProperty(exports, "AlertGlassTitle", {
27207
+ enumerable: true,
27208
+ get: function() {
27209
+ return AlertGlassTitle;
27210
+ }
27211
+ });
27124
27212
  Object.defineProperty(exports, "AvatarGlass", {
27125
27213
  enumerable: true,
27126
27214
  get: function() {
27127
27215
  return AvatarGlass;
27128
27216
  }
27129
27217
  });
27218
+ Object.defineProperty(exports, "AvatarGlassFallback", {
27219
+ enumerable: true,
27220
+ get: function() {
27221
+ return AvatarGlassFallback;
27222
+ }
27223
+ });
27224
+ Object.defineProperty(exports, "AvatarGlassImage", {
27225
+ enumerable: true,
27226
+ get: function() {
27227
+ return AvatarGlassImage;
27228
+ }
27229
+ });
27230
+ Object.defineProperty(exports, "AvatarGlassSimple", {
27231
+ enumerable: true,
27232
+ get: function() {
27233
+ return AvatarGlassSimple;
27234
+ }
27235
+ });
27130
27236
  Object.defineProperty(exports, "BadgeGlass", {
27131
27237
  enumerable: true,
27132
27238
  get: function() {
@@ -27211,6 +27317,96 @@ Object.defineProperty(exports, "DropdownGlass", {
27211
27317
  return DropdownGlass;
27212
27318
  }
27213
27319
  });
27320
+ Object.defineProperty(exports, "DropdownMenuGlass", {
27321
+ enumerable: true,
27322
+ get: function() {
27323
+ return DropdownMenuGlass;
27324
+ }
27325
+ });
27326
+ Object.defineProperty(exports, "DropdownMenuGlassCheckboxItem", {
27327
+ enumerable: true,
27328
+ get: function() {
27329
+ return DropdownMenuGlassCheckboxItem;
27330
+ }
27331
+ });
27332
+ Object.defineProperty(exports, "DropdownMenuGlassContent", {
27333
+ enumerable: true,
27334
+ get: function() {
27335
+ return DropdownMenuGlassContent;
27336
+ }
27337
+ });
27338
+ Object.defineProperty(exports, "DropdownMenuGlassGroup", {
27339
+ enumerable: true,
27340
+ get: function() {
27341
+ return DropdownMenuGlassGroup;
27342
+ }
27343
+ });
27344
+ Object.defineProperty(exports, "DropdownMenuGlassItem", {
27345
+ enumerable: true,
27346
+ get: function() {
27347
+ return DropdownMenuGlassItem;
27348
+ }
27349
+ });
27350
+ Object.defineProperty(exports, "DropdownMenuGlassLabel", {
27351
+ enumerable: true,
27352
+ get: function() {
27353
+ return DropdownMenuGlassLabel;
27354
+ }
27355
+ });
27356
+ Object.defineProperty(exports, "DropdownMenuGlassPortal", {
27357
+ enumerable: true,
27358
+ get: function() {
27359
+ return DropdownMenuGlassPortal;
27360
+ }
27361
+ });
27362
+ Object.defineProperty(exports, "DropdownMenuGlassRadioGroup", {
27363
+ enumerable: true,
27364
+ get: function() {
27365
+ return DropdownMenuGlassRadioGroup;
27366
+ }
27367
+ });
27368
+ Object.defineProperty(exports, "DropdownMenuGlassRadioItem", {
27369
+ enumerable: true,
27370
+ get: function() {
27371
+ return DropdownMenuGlassRadioItem;
27372
+ }
27373
+ });
27374
+ Object.defineProperty(exports, "DropdownMenuGlassSeparator", {
27375
+ enumerable: true,
27376
+ get: function() {
27377
+ return DropdownMenuGlassSeparator;
27378
+ }
27379
+ });
27380
+ Object.defineProperty(exports, "DropdownMenuGlassShortcut", {
27381
+ enumerable: true,
27382
+ get: function() {
27383
+ return DropdownMenuGlassShortcut;
27384
+ }
27385
+ });
27386
+ Object.defineProperty(exports, "DropdownMenuGlassSub", {
27387
+ enumerable: true,
27388
+ get: function() {
27389
+ return DropdownMenuGlassSub;
27390
+ }
27391
+ });
27392
+ Object.defineProperty(exports, "DropdownMenuGlassSubContent", {
27393
+ enumerable: true,
27394
+ get: function() {
27395
+ return DropdownMenuGlassSubContent;
27396
+ }
27397
+ });
27398
+ Object.defineProperty(exports, "DropdownMenuGlassSubTrigger", {
27399
+ enumerable: true,
27400
+ get: function() {
27401
+ return DropdownMenuGlassSubTrigger;
27402
+ }
27403
+ });
27404
+ Object.defineProperty(exports, "DropdownMenuGlassTrigger", {
27405
+ enumerable: true,
27406
+ get: function() {
27407
+ return DropdownMenuGlassTrigger;
27408
+ }
27409
+ });
27214
27410
  Object.defineProperty(exports, "ExpandableHeaderGlass", {
27215
27411
  enumerable: true,
27216
27412
  get: function() {
@@ -27313,6 +27509,30 @@ Object.defineProperty(exports, "PopoverGlass", {
27313
27509
  return PopoverGlass;
27314
27510
  }
27315
27511
  });
27512
+ Object.defineProperty(exports, "PopoverGlassAnchor", {
27513
+ enumerable: true,
27514
+ get: function() {
27515
+ return PopoverGlassAnchor;
27516
+ }
27517
+ });
27518
+ Object.defineProperty(exports, "PopoverGlassContent", {
27519
+ enumerable: true,
27520
+ get: function() {
27521
+ return PopoverGlassContent;
27522
+ }
27523
+ });
27524
+ Object.defineProperty(exports, "PopoverGlassLegacy", {
27525
+ enumerable: true,
27526
+ get: function() {
27527
+ return PopoverGlassLegacy;
27528
+ }
27529
+ });
27530
+ Object.defineProperty(exports, "PopoverGlassTrigger", {
27531
+ enumerable: true,
27532
+ get: function() {
27533
+ return PopoverGlassTrigger;
27534
+ }
27535
+ });
27316
27536
  Object.defineProperty(exports, "ProfileAvatarGlass", {
27317
27537
  enumerable: true,
27318
27538
  get: function() {
@@ -27457,6 +27677,30 @@ Object.defineProperty(exports, "TooltipGlass", {
27457
27677
  return TooltipGlass;
27458
27678
  }
27459
27679
  });
27680
+ Object.defineProperty(exports, "TooltipGlassContent", {
27681
+ enumerable: true,
27682
+ get: function() {
27683
+ return TooltipGlassContent;
27684
+ }
27685
+ });
27686
+ Object.defineProperty(exports, "TooltipGlassProvider", {
27687
+ enumerable: true,
27688
+ get: function() {
27689
+ return TooltipGlassProvider;
27690
+ }
27691
+ });
27692
+ Object.defineProperty(exports, "TooltipGlassSimple", {
27693
+ enumerable: true,
27694
+ get: function() {
27695
+ return TooltipGlassSimple;
27696
+ }
27697
+ });
27698
+ Object.defineProperty(exports, "TooltipGlassTrigger", {
27699
+ enumerable: true,
27700
+ get: function() {
27701
+ return TooltipGlassTrigger;
27702
+ }
27703
+ });
27460
27704
  Object.defineProperty(exports, "TouchTarget", {
27461
27705
  enumerable: true,
27462
27706
  get: function() {
@@ -27637,12 +27881,6 @@ Object.defineProperty(exports, "toggleSizes", {
27637
27881
  return toggleSizes;
27638
27882
  }
27639
27883
  });
27640
- Object.defineProperty(exports, "tooltipPositions", {
27641
- enumerable: true,
27642
- get: function() {
27643
- return tooltipPositions;
27644
- }
27645
- });
27646
27884
  Object.defineProperty(exports, "useAppDispatch", {
27647
27885
  enumerable: true,
27648
27886
  get: function() {
@@ -27686,4 +27924,4 @@ Object.defineProperty(exports, "useMargin", {
27686
27924
  }
27687
27925
  });
27688
27926
 
27689
- //# sourceMappingURL=trust-score-card-glass-r3qM09Jp.cjs.map
27927
+ //# sourceMappingURL=trust-score-card-glass-Dgu46oWI.cjs.map