shadcn-glass-ui 2.1.5 → 2.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/README.md +5 -6
  2. package/context7.json +2 -2
  3. package/dist/cli/index.cjs +1 -1
  4. package/dist/components.cjs +4 -4
  5. package/dist/components.d.ts +87 -144
  6. package/dist/components.js +1 -1
  7. package/dist/hooks.cjs +2 -2
  8. package/dist/index.cjs +5 -5
  9. package/dist/index.js +1 -1
  10. package/dist/r/alert-glass.json +1 -1
  11. package/dist/r/badge-glass.json +1 -1
  12. package/dist/r/button-glass.json +1 -1
  13. package/dist/r/card-glass.json +40 -0
  14. package/dist/r/input-glass.json +1 -1
  15. package/dist/r/modal-glass.json +5 -5
  16. package/dist/r/registry.json +7 -1
  17. package/dist/r/tooltip-glass.json +1 -1
  18. package/dist/shadcn-glass-ui.css +1 -1
  19. package/dist/{theme-context-Y98bGvcm.cjs → theme-context-BEA8K_rq.cjs} +2 -2
  20. package/dist/{theme-context-Y98bGvcm.cjs.map → theme-context-BEA8K_rq.cjs.map} +1 -1
  21. package/dist/themes.cjs +1 -1
  22. package/dist/{trust-score-card-glass-2rjz00d_.cjs → trust-score-card-glass-DTS1RdIt.cjs} +172 -181
  23. package/dist/trust-score-card-glass-DTS1RdIt.cjs.map +1 -0
  24. package/dist/{trust-score-card-glass-zjkx4OC2.js → trust-score-card-glass-Dg4_b_g_.js} +158 -167
  25. package/dist/trust-score-card-glass-Dg4_b_g_.js.map +1 -0
  26. package/dist/{use-focus-DbpBEuee.cjs → use-focus-CdoUzFQ8.cjs} +2 -2
  27. package/dist/{use-focus-DbpBEuee.cjs.map → use-focus-CdoUzFQ8.cjs.map} +1 -1
  28. package/dist/{use-wallpaper-tint-DbawS9zh.cjs → use-wallpaper-tint-Rq5UgY9L.cjs} +2 -2
  29. package/dist/{use-wallpaper-tint-DbawS9zh.cjs.map → use-wallpaper-tint-Rq5UgY9L.cjs.map} +1 -1
  30. package/dist/{utils-XlyXIhuP.cjs → utils-NLnOCttr.cjs} +2 -2
  31. package/dist/{utils-XlyXIhuP.cjs.map → utils-NLnOCttr.cjs.map} +1 -1
  32. package/dist/utils.cjs +1 -1
  33. package/docs/ADVANCED_PATTERNS.md +7 -5
  34. package/docs/AI_USAGE.md +0 -1
  35. package/docs/BEST_PRACTICES.md +0 -2
  36. package/docs/BREAKING_CHANGES.md +0 -1
  37. package/docs/COMPONENTS_CATALOG.md +1 -4
  38. package/docs/COMPONENT_PATTERNS.md +325 -0
  39. package/docs/GETTING_STARTED.md +52 -28
  40. package/docs/api/README.md +0 -2
  41. package/docs/api/variables/ModalGlass.md +5 -4
  42. package/package.json +1 -1
  43. package/dist/trust-score-card-glass-2rjz00d_.cjs.map +0 -1
  44. package/dist/trust-score-card-glass-zjkx4OC2.js.map +0 -1
@@ -184,6 +184,7 @@ var AlertGlassRoot = forwardRef(({ className, variant = "default", dismissible,
184
184
  const config = variantStyles$2[effectiveVariant];
185
185
  return /* @__PURE__ */ jsxs("div", {
186
186
  ref,
187
+ "data-slot": "alert",
187
188
  className: cn(alertVariants({ variant: effectiveVariant }), className),
188
189
  style: getAlertStyles(effectiveVariant),
189
190
  role: "alert",
@@ -212,8 +213,9 @@ var AlertGlassRoot = forwardRef(({ className, variant = "default", dismissible,
212
213
  });
213
214
  AlertGlassRoot.displayName = "AlertGlass";
214
215
  var AlertGlassTitle = forwardRef(({ className, style, ...props }, ref) => {
215
- return /* @__PURE__ */ jsx("p", {
216
+ return /* @__PURE__ */ jsx("div", {
216
217
  ref,
218
+ "data-slot": "alert-title",
217
219
  className: cn("font-medium text-xs md:text-sm mb-0.5 md:mb-1", className),
218
220
  style: {
219
221
  color: "inherit",
@@ -224,8 +226,9 @@ var AlertGlassTitle = forwardRef(({ className, style, ...props }, ref) => {
224
226
  });
225
227
  AlertGlassTitle.displayName = "AlertGlassTitle";
226
228
  var AlertGlassDescription = forwardRef(({ className, style, ...props }, ref) => {
227
- return /* @__PURE__ */ jsx("p", {
229
+ return /* @__PURE__ */ jsx("div", {
228
230
  ref,
231
+ "data-slot": "alert-description",
229
232
  className: cn("text-xs md:text-sm opacity-80", className),
230
233
  style: {
231
234
  color: "inherit",
@@ -399,6 +402,7 @@ const BadgeGlass = forwardRef(({ children, className, variant = "default", size:
399
402
  const v$1 = variantStyles$1[variant];
400
403
  return /* @__PURE__ */ jsxs("span", {
401
404
  ref,
405
+ "data-slot": "badge",
402
406
  className: cn(badgeVariants({ size: size$3 }), className),
403
407
  style: getBadgeStyles(variant),
404
408
  ...props,
@@ -507,6 +511,7 @@ const ButtonGlass = forwardRef(({ asChild = false, className, variant = "default
507
511
  }, [isDisabled, onClick]);
508
512
  return /* @__PURE__ */ jsx(asChild ? Slot : "button", {
509
513
  ref,
514
+ "data-slot": "button",
510
515
  className: cn(buttonGlassVariants({
511
516
  variant,
512
517
  size: size$3
@@ -5312,6 +5317,7 @@ const InputGlass = forwardRef(({ className, size: size$3, inputSize, label, erro
5312
5317
  }),
5313
5318
  /* @__PURE__ */ jsx("input", {
5314
5319
  ref,
5320
+ "data-slot": "input",
5315
5321
  className: cn(inputVariants({ size: sizeValue }), paddingLeft, paddingRight),
5316
5322
  style: getInputStyles(isFocused, error, success),
5317
5323
  disabled,
@@ -5328,178 +5334,142 @@ const InputGlass = forwardRef(({ className, size: size$3, inputSize, label, erro
5328
5334
  });
5329
5335
  });
5330
5336
  InputGlass.displayName = "InputGlass";
5331
- const modalSizes = cva("relative w-full rounded-2xl p-6 transition-all duration-300", {
5337
+ const modalSizes = cva("relative w-full max-w-[calc(100%-2rem)] rounded-2xl p-6 transition-all duration-300", {
5332
5338
  variants: { size: {
5333
- sm: "max-w-[480px]",
5334
- md: "max-w-[640px]",
5335
- lg: "max-w-[800px]",
5336
- xl: "max-w-xl",
5337
- full: "max-w-4xl"
5339
+ sm: "sm:max-w-[480px]",
5340
+ md: "sm:max-w-[640px]",
5341
+ lg: "sm:max-w-[800px]",
5342
+ xl: "sm:max-w-xl",
5343
+ full: "sm:max-w-4xl"
5338
5344
  } },
5339
- defaultVariants: { size: "md" }
5345
+ defaultVariants: { size: "sm" }
5340
5346
  });
5341
- var MODAL_ANIMATION_DURATION = 200;
5342
- var lockBodyScroll = () => {
5343
- if (typeof document === "undefined") return;
5344
- document.body.style.overflow = "hidden";
5345
- };
5346
- var unlockBodyScroll = () => {
5347
- if (typeof document === "undefined") return;
5348
- document.body.style.overflow = "";
5349
- };
5350
- var delay = (ms) => {
5351
- return new Promise((resolve) => setTimeout(resolve, ms));
5352
- };
5353
- var ModalContext = createContext(null);
5354
- var useModalContext = () => {
5355
- const context = useContext(ModalContext);
5356
- if (!context) throw new Error("Modal compound components must be used within ModalGlass.Root");
5357
- return context;
5358
- };
5359
- var ModalRoot = ({ open, onOpenChange, size: size$3 = "md", children, ...props }) => {
5360
- const [isClosing, setIsClosing] = useState(false);
5361
- const handleClose = useCallback(async () => {
5362
- setIsClosing(true);
5363
- await delay(MODAL_ANIMATION_DURATION);
5364
- setIsClosing(false);
5365
- onOpenChange?.(false);
5366
- }, [onOpenChange]);
5367
- useEffect(() => {
5368
- if (open) lockBodyScroll();
5369
- else unlockBodyScroll();
5370
- return () => {
5371
- unlockBodyScroll();
5372
- };
5373
- }, [open]);
5374
- useEffect(() => {
5375
- if (!open) return;
5376
- const handleEscape = (event) => {
5377
- if (event.key === "Escape") handleClose();
5378
- };
5379
- document.addEventListener("keydown", handleEscape);
5380
- return () => {
5381
- document.removeEventListener("keydown", handleEscape);
5382
- };
5383
- }, [open, handleClose]);
5384
- if (!open) return null;
5347
+ var ModalContext = React$1.createContext({ size: "sm" });
5348
+ var useModalContext = () => React$1.useContext(ModalContext);
5349
+ function ModalRoot({ size: size$3 = "sm", children, ...props }) {
5385
5350
  return /* @__PURE__ */ jsx(ModalContext.Provider, {
5386
- value: {
5387
- isOpen: open,
5388
- onClose: handleClose,
5389
- size: size$3,
5390
- isClosing
5391
- },
5392
- children: /* @__PURE__ */ jsx("div", {
5393
- className: "fixed inset-0 z-50 flex items-center justify-center p-2 sm:p-4",
5394
- role: "dialog",
5395
- "aria-modal": "true",
5396
- "aria-labelledby": "modal-title",
5397
- "aria-describedby": "modal-description",
5351
+ value: { size: size$3 },
5352
+ children: /* @__PURE__ */ jsx(w$1.Root, {
5353
+ "data-slot": "dialog",
5398
5354
  ...props,
5399
5355
  children
5400
5356
  })
5401
5357
  });
5402
- };
5403
- var ModalOverlay = ({ className }) => {
5404
- const { onClose, isClosing } = useModalContext();
5405
- const overlayStyles = useMemo(() => ({
5358
+ }
5359
+ function ModalTrigger({ ...props }) {
5360
+ return /* @__PURE__ */ jsx(w$1.Trigger, {
5361
+ "data-slot": "dialog-trigger",
5362
+ ...props
5363
+ });
5364
+ }
5365
+ function ModalPortal({ ...props }) {
5366
+ return /* @__PURE__ */ jsx(w$1.Portal, {
5367
+ "data-slot": "dialog-portal",
5368
+ ...props
5369
+ });
5370
+ }
5371
+ var ModalOverlay = React$1.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(w$1.Overlay, {
5372
+ ref,
5373
+ "data-slot": "dialog-overlay",
5374
+ className: cn("fixed inset-0 z-50", "data-[state=open]:animate-in data-[state=closed]:animate-out", "data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0", className),
5375
+ style: {
5406
5376
  background: "var(--modal-overlay)",
5407
5377
  backdropFilter: "blur(var(--blur-sm))",
5408
- WebkitBackdropFilter: "blur(var(--blur-sm))",
5409
- opacity: isClosing ? 0 : 1,
5410
- transition: "all 0.3s"
5411
- }), [isClosing]);
5412
- return /* @__PURE__ */ jsx("div", {
5413
- className: cn("absolute inset-0 transition-all duration-300", className),
5414
- style: overlayStyles,
5415
- onClick: onClose,
5416
- "aria-hidden": "true"
5417
- });
5418
- };
5419
- var ModalContent = forwardRef(({ children, className }, ref) => {
5420
- const { size: size$3, isClosing } = useModalContext();
5421
- const modalStyles = useMemo(() => ({
5422
- background: "var(--modal-bg)",
5423
- border: "1px solid var(--modal-border)",
5424
- boxShadow: "var(--modal-glow)",
5425
- backdropFilter: "blur(var(--blur-lg))",
5426
- WebkitBackdropFilter: "blur(var(--blur-lg))",
5427
- transform: isClosing ? "scale(0.95) translateY(10px)" : "scale(1) translateY(0)",
5428
- opacity: isClosing ? 0 : 1,
5429
- animation: !isClosing ? "modalFadeIn 0.3s ease-out" : "none"
5430
- }), [isClosing]);
5431
- return /* @__PURE__ */ jsxs("div", {
5378
+ WebkitBackdropFilter: "blur(var(--blur-sm))"
5379
+ },
5380
+ ...props
5381
+ }));
5382
+ ModalOverlay.displayName = "ModalOverlay";
5383
+ var ModalContent = React$1.forwardRef(({ className, children, showCloseButton = true, size: sizeProp, ...props }, ref) => {
5384
+ const { size: contextSize } = useModalContext();
5385
+ const size$3 = sizeProp ?? contextSize;
5386
+ return /* @__PURE__ */ jsxs(ModalPortal, { children: [/* @__PURE__ */ jsx(ModalOverlay, {}), /* @__PURE__ */ jsxs(w$1.Content, {
5432
5387
  ref,
5433
- className: cn(modalSizes({ size: size$3 }), className),
5434
- style: modalStyles,
5435
- children: [/* @__PURE__ */ jsx("div", {
5436
- className: "absolute inset-0 rounded-3xl pointer-events-none",
5437
- style: { background: "var(--modal-glow-effect)" }
5438
- }), children]
5439
- });
5388
+ "data-slot": "dialog-content",
5389
+ className: cn(modalSizes({ size: size$3 }), "fixed top-[50%] left-[50%] z-50", "translate-x-[-50%] translate-y-[-50%]", "data-[state=open]:animate-in data-[state=closed]:animate-out", "data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0", "data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95", "data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%]", "data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%]", "duration-200", className),
5390
+ style: {
5391
+ background: "var(--modal-bg)",
5392
+ border: "1px solid var(--modal-border)",
5393
+ boxShadow: "var(--modal-glow)",
5394
+ backdropFilter: "blur(var(--blur-lg))",
5395
+ WebkitBackdropFilter: "blur(var(--blur-lg))"
5396
+ },
5397
+ ...props,
5398
+ children: [
5399
+ /* @__PURE__ */ jsx("div", {
5400
+ className: "absolute inset-0 rounded-3xl pointer-events-none",
5401
+ style: { background: "var(--modal-glow-effect)" },
5402
+ "aria-hidden": "true"
5403
+ }),
5404
+ /* @__PURE__ */ jsx("div", {
5405
+ className: "relative",
5406
+ children
5407
+ }),
5408
+ showCloseButton && /* @__PURE__ */ jsxs(w$1.Close, {
5409
+ "data-slot": "dialog-close",
5410
+ className: cn("absolute top-4 right-4", "p-1.5 md:p-2 rounded-xl", "transition-all duration-300", "ring-offset-background", "focus:outline-none focus:ring-2 focus:ring-(--semantic-primary) focus:ring-offset-2", "hover:opacity-100 opacity-70", "disabled:pointer-events-none"),
5411
+ style: {
5412
+ background: "var(--modal-close-btn-bg)",
5413
+ border: "var(--modal-close-btn-border)",
5414
+ color: "var(--text-muted)"
5415
+ },
5416
+ children: [/* @__PURE__ */ jsx(X, { className: ICON_SIZES.md }), /* @__PURE__ */ jsx("span", {
5417
+ className: "sr-only",
5418
+ children: "Close"
5419
+ })]
5420
+ })
5421
+ ]
5422
+ })] });
5440
5423
  });
5441
5424
  ModalContent.displayName = "ModalContent";
5442
- var ModalHeader = ({ children, className }) => {
5425
+ function ModalHeader({ className, ...props }) {
5443
5426
  return /* @__PURE__ */ jsx("div", {
5444
- className: cn("relative flex items-start justify-between mb-4 md:mb-5", className),
5445
- children
5427
+ "data-slot": "dialog-header",
5428
+ className: cn("flex flex-col gap-2 text-center sm:text-left mb-4", className),
5429
+ ...props
5446
5430
  });
5447
- };
5448
- var ModalBody = ({ children, className }) => {
5431
+ }
5432
+ function ModalBody({ className, ...props }) {
5449
5433
  return /* @__PURE__ */ jsx("div", {
5434
+ "data-slot": "dialog-body",
5450
5435
  className: cn("relative", className),
5451
5436
  style: { color: "var(--text-secondary)" },
5452
- children
5437
+ ...props
5453
5438
  });
5454
- };
5455
- var ModalFooter = ({ children, className }) => {
5439
+ }
5440
+ function ModalFooter({ className, ...props }) {
5456
5441
  return /* @__PURE__ */ jsx("div", {
5457
- className: cn("relative flex gap-3 mt-4 md:mt-5 justify-end", className),
5458
- children
5459
- });
5460
- };
5461
- var ModalTitle = ({ children, className }) => {
5462
- return /* @__PURE__ */ jsx("h3", {
5463
- id: "modal-title",
5464
- className: cn("text-lg md:text-xl font-semibold", className),
5465
- style: { color: "var(--text-primary)" },
5466
- children
5467
- });
5468
- };
5469
- var ModalDescription = ({ children, className }) => {
5470
- return /* @__PURE__ */ jsx("p", {
5471
- id: "modal-description",
5472
- className: cn("text-sm md:text-base mt-1", className),
5473
- style: { color: "var(--text-muted)" },
5474
- children
5442
+ "data-slot": "dialog-footer",
5443
+ className: cn("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end mt-4", className),
5444
+ ...props
5475
5445
  });
5476
- };
5477
- var ModalClose = ({ className }) => {
5478
- const { onClose } = useModalContext();
5479
- const { isHovered, hoverProps } = useHover();
5480
- const { isFocusVisible, focusProps } = useFocus({ focusVisible: true });
5481
- const closeButtonStyles = useMemo(() => ({
5482
- background: "var(--modal-close-btn-bg)",
5483
- border: "var(--modal-close-btn-border)",
5484
- color: "var(--text-muted)",
5485
- boxShadow: isFocusVisible ? "var(--focus-glow)" : isHovered ? "var(--modal-close-btn-hover-glow)" : "none",
5486
- outline: "none"
5487
- }), [isHovered, isFocusVisible]);
5488
- return /* @__PURE__ */ jsx("button", {
5489
- onClick: onClose,
5490
- onMouseEnter: hoverProps.onMouseEnter,
5491
- onMouseLeave: hoverProps.onMouseLeave,
5492
- onFocus: focusProps.onFocus,
5493
- onBlur: focusProps.onBlur,
5494
- className: cn("p-1.5 md:p-2 rounded-xl transition-all duration-300", className),
5495
- style: closeButtonStyles,
5496
- type: "button",
5497
- "aria-label": "Close modal",
5498
- children: /* @__PURE__ */ jsx(X, { className: ICON_SIZES.md })
5446
+ }
5447
+ var ModalTitle = React$1.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(w$1.Title, {
5448
+ ref,
5449
+ "data-slot": "dialog-title",
5450
+ className: cn("text-lg md:text-xl font-semibold leading-none tracking-tight", className),
5451
+ style: { color: "var(--text-primary)" },
5452
+ ...props
5453
+ }));
5454
+ ModalTitle.displayName = "ModalTitle";
5455
+ var ModalDescription = React$1.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(w$1.Description, {
5456
+ ref,
5457
+ "data-slot": "dialog-description",
5458
+ className: cn("text-sm", className),
5459
+ style: { color: "var(--text-muted)" },
5460
+ ...props
5461
+ }));
5462
+ ModalDescription.displayName = "ModalDescription";
5463
+ function ModalClose({ ...props }) {
5464
+ return /* @__PURE__ */ jsx(w$1.Close, {
5465
+ "data-slot": "dialog-close",
5466
+ ...props
5499
5467
  });
5500
- };
5468
+ }
5501
5469
  const ModalGlass = {
5502
5470
  Root: ModalRoot,
5471
+ Trigger: ModalTrigger,
5472
+ Portal: ModalPortal,
5503
5473
  Overlay: ModalOverlay,
5504
5474
  Content: ModalContent,
5505
5475
  Header: ModalHeader,
@@ -6641,26 +6611,47 @@ const ToggleGlass = forwardRef(({ className, size: size$3 = "default", variant =
6641
6611
  ToggleGlass.displayName = "ToggleGlass";
6642
6612
  var TooltipGlassProvider = ({ delayDuration = 0, ...props }) => {
6643
6613
  return /* @__PURE__ */ jsx(TooltipPrimitive.Provider, {
6614
+ "data-slot": "tooltip-provider",
6644
6615
  delayDuration,
6645
6616
  ...props
6646
6617
  });
6647
6618
  };
6648
- var TooltipGlassRoot = TooltipPrimitive.Root;
6649
- var TooltipGlassTrigger = TooltipPrimitive.Trigger;
6650
- var TooltipGlassContent = React$1.forwardRef(({ className, sideOffset = 4, ...props }, ref) => {
6651
- return /* @__PURE__ */ jsx(TooltipPrimitive.Portal, { children: /* @__PURE__ */ jsx(TooltipPrimitive.Content, {
6619
+ TooltipGlassProvider.displayName = "TooltipGlassProvider";
6620
+ function TooltipGlassRoot({ ...props }) {
6621
+ return /* @__PURE__ */ jsx(TooltipGlassProvider, { children: /* @__PURE__ */ jsx(TooltipPrimitive.Root, {
6622
+ "data-slot": "tooltip",
6623
+ ...props
6624
+ }) });
6625
+ }
6626
+ var TooltipGlassTrigger = React$1.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx(TooltipPrimitive.Trigger, {
6627
+ ref,
6628
+ "data-slot": "tooltip-trigger",
6629
+ ...props
6630
+ }));
6631
+ TooltipGlassTrigger.displayName = "TooltipGlassTrigger";
6632
+ var TooltipGlassContent = React$1.forwardRef(({ className, sideOffset = 0, children, ...props }, ref) => {
6633
+ const tooltipStyles = {
6634
+ background: "var(--tooltip-bg)",
6635
+ color: "var(--tooltip-text)",
6636
+ border: "1px solid var(--tooltip-border)",
6637
+ boxShadow: "var(--tooltip-shadow)",
6638
+ backdropFilter: "blur(var(--blur-xl))",
6639
+ WebkitBackdropFilter: "blur(var(--blur-xl))"
6640
+ };
6641
+ return /* @__PURE__ */ jsx(TooltipPrimitive.Portal, { children: /* @__PURE__ */ jsxs(TooltipPrimitive.Content, {
6652
6642
  ref,
6653
6643
  sideOffset,
6654
- className: 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),
6655
- style: {
6656
- background: "var(--tooltip-bg)",
6657
- color: "var(--tooltip-text)",
6658
- border: "1px solid var(--tooltip-border)",
6659
- boxShadow: "var(--tooltip-shadow)",
6660
- backdropFilter: "blur(var(--blur-xl))",
6661
- WebkitBackdropFilter: "blur(var(--blur-xl))"
6662
- },
6663
- ...props
6644
+ "data-slot": "tooltip-content",
6645
+ className: cn("z-50 w-fit origin-(--radix-tooltip-content-transform-origin) 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),
6646
+ style: tooltipStyles,
6647
+ ...props,
6648
+ children: [children, /* @__PURE__ */ jsx(TooltipPrimitive.Arrow, {
6649
+ className: "z-50 size-2.5 translate-y-[calc(-50%-2px)] rotate-45 rounded-xs",
6650
+ style: {
6651
+ fill: "var(--tooltip-bg)",
6652
+ background: "var(--tooltip-bg)"
6653
+ }
6654
+ })]
6664
6655
  }) });
6665
6656
  });
6666
6657
  TooltipGlassContent.displayName = "TooltipGlassContent";
@@ -14647,11 +14638,11 @@ function createAnimateManager(timeoutController) {
14647
14638
  }
14648
14639
  var RequestAnimationFrameTimeoutController = class {
14649
14640
  setTimeout(callback) {
14650
- var delay$1 = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 0;
14641
+ var delay = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 0;
14651
14642
  var startTime = performance.now();
14652
14643
  var requestId = null;
14653
14644
  var executeCallback = (now) => {
14654
- if (now - startTime >= delay$1) callback(now);
14645
+ if (now - startTime >= delay) callback(now);
14655
14646
  else if (typeof requestAnimationFrame === "function") requestId = requestAnimationFrame(executeCallback);
14656
14647
  };
14657
14648
  requestId = requestAnimationFrame(executeCallback);
@@ -27666,4 +27657,4 @@ const TrustScoreCardGlass = forwardRef(({ score = 72, metrics = [], className, .
27666
27657
  TrustScoreCardGlass.displayName = "TrustScoreCardGlass";
27667
27658
  export { BaseProgressGlass as $, useLayoutEffect2 as $t, useChartHeight as A, modalSizes as At, adaptEventsOfChild as B, DropdownMenuGlassLabel as Bt, sparklineContainerVariants as C, PopoverGlassAnchor as Ct, Tooltip as D, NotificationGlass as Dt, Cell as E, PopoverGlassTrigger as Et, selectLegendPayload as F, DropdownMenuGlass as Ft, SegmentedControlGlass as G, DropdownMenuGlassShortcut as Gt, isNumber as H, DropdownMenuGlassRadioGroup as Ht, useAppDispatch as I, DropdownMenuGlassCheckboxItem as It, progressSizes as J, DropdownMenuGlassSubTrigger as Jt, RainbowProgressGlass as K, DropdownMenuGlassSub as Kt, useAppSelector as L, DropdownMenuGlassContent as Lt, useMargin as M, GlassCard as Mt, ResponsiveContainer as N, cardIntensity as Nt, setLegendSettings as O, notificationVariants as Ot, useElementOffset as P, DropdownGlass as Pt, StatusIndicatorGlass as Q, Presence as Qt, getUniqPayload as R, DropdownMenuGlassGroup as Rt, sparklineBarVariants as S, PopoverGlass as St, Bar as T, PopoverGlassLegacy as Tt, useLegendPortal as U, DropdownMenuGlassRadioItem as Ut, Symbols as V, DropdownMenuGlassPortal as Vt, Surface as W, DropdownMenuGlassSeparator as Wt, LanguageBarGlass as X, ComboBoxGlass as Xt, ProfileAvatarGlass as Y, DropdownMenuGlassTrigger as Yt, FlagAlertGlass as Z, inputVariants as Zt, ContributionMetricsGlass as _, AlertGlassTitle as _n, SliderGlass as _t, HeaderBrandingGlass as a, ButtonGlass as an, insightCardVariants as at, AICardGlass as b, TouchTarget as bn, SkeletonGlass as bt, YearCardGlass as c, badgeVariants as cn, ExpandableHeaderGlass as ct, TrustScoreDisplayGlass as d, AvatarGlassImage as dn, TooltipGlassProvider as dt, useCallbackRef$1 as en, ThemeToggleGlass as et, RepositoryMetadataGlass as f, AvatarGlassSimple as fn, TooltipGlassSimple as ft, MetricCardGlass as g, AlertGlassDescription as gn, TabsGlass as gt, MetricsGridGlass as h, AlertGlass as hn, toggleSizes as ht, HeaderNavGlass as i, CheckboxGlass as in, InsightCardGlass as it, useChartWidth as j, InputGlass as jt, setLegendSize as k, ModalGlass as kt, UserStatsLineGlass as l, AvatarGlass as ln, TooltipGlass as lt, RepositoryCardGlass as m, statusSizes as mn, ToggleGlass as mt, ProjectsListGlass as n, composeEventHandlers as nn, SortDropdownGlass as nt, FlagsSectionGlass as o, buttonGlassVariants as on, insightVariantConfig as ot, RepositoryHeaderGlass as p, avatarSizes as pn, TooltipGlassTrigger as pt, ProgressGlass as q, DropdownMenuGlassSubContent as qt, ProfileHeaderGlass as r, CircularProgressGlass as rn, SearchBoxGlass as rt, CareerStatsGlass as s, BadgeGlass as sn, IconButtonGlass as st, TrustScoreCardGlass as t, useComposedRefs as tn, StatItemGlass as tt, UserInfoGlass as u, AvatarGlassFallback as un, TooltipGlassContent as ut, CircularMetricGlass as v, InteractiveCard as vn, useDirection as vt, BarChart as w, PopoverGlassContent as wt, SparklineGlass as x, alertVariants as xn, skeletonVariants as xt, CareerStatsHeaderGlass as y, FormFieldWrapper as yn, clamp as yt, resolveDefaultProps as z, DropdownMenuGlassItem as zt };
27668
27659
 
27669
- //# sourceMappingURL=trust-score-card-glass-zjkx4OC2.js.map
27660
+ //# sourceMappingURL=trust-score-card-glass-Dg4_b_g_.js.map