@yahoo/uds 3.115.0-beta.2 → 3.116.0-beta.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 (149) hide show
  1. package/dist/automated-config/dist/generated/autoVariants.cjs +10 -0
  2. package/dist/automated-config/dist/generated/autoVariants.d.cts +10 -0
  3. package/dist/automated-config/dist/generated/autoVariants.d.ts +10 -0
  4. package/dist/automated-config/dist/generated/autoVariants.js +10 -0
  5. package/dist/automated-config/dist/generated/generatedConfigs.cjs +1842 -0
  6. package/dist/automated-config/dist/generated/generatedConfigs.d.cts +194 -1
  7. package/dist/automated-config/dist/generated/generatedConfigs.d.ts +194 -1
  8. package/dist/automated-config/dist/generated/generatedConfigs.js +1842 -1
  9. package/dist/automated-config/dist/generated/universalTokensConfigAuto.cjs +78 -0
  10. package/dist/automated-config/dist/generated/universalTokensConfigAuto.d.cts +2 -1
  11. package/dist/automated-config/dist/generated/universalTokensConfigAuto.d.ts +2 -1
  12. package/dist/automated-config/dist/generated/universalTokensConfigAuto.js +78 -0
  13. package/dist/cli/commands/sync.cjs +6 -0
  14. package/dist/cli/commands/sync.js +6 -0
  15. package/dist/components/SvgFloatingOverlay.cjs +123 -0
  16. package/dist/components/SvgFloatingOverlay.d.cts +42 -0
  17. package/dist/components/SvgFloatingOverlay.d.ts +42 -0
  18. package/dist/components/SvgFloatingOverlay.js +121 -0
  19. package/dist/components/client/Menu/Menu.ItemCheckbox.d.cts +1 -1
  20. package/dist/components/client/Menu/Menu.ItemCheckbox.d.ts +1 -1
  21. package/dist/components/client/Popover/Popover.cjs +96 -0
  22. package/dist/components/client/Popover/Popover.d.cts +55 -0
  23. package/dist/components/client/Popover/Popover.d.ts +55 -0
  24. package/dist/components/client/Popover/Popover.js +94 -0
  25. package/dist/components/client/Popover/PopoverContent.cjs +172 -0
  26. package/dist/components/client/Popover/PopoverContent.d.cts +26 -0
  27. package/dist/components/client/Popover/PopoverContent.d.ts +26 -0
  28. package/dist/components/client/Popover/PopoverContent.js +170 -0
  29. package/dist/components/client/Popover/PopoverContext.cjs +11 -0
  30. package/dist/components/client/Popover/PopoverContext.d.cts +21 -0
  31. package/dist/components/client/Popover/PopoverContext.d.ts +21 -0
  32. package/dist/components/client/Popover/PopoverContext.js +9 -0
  33. package/dist/components/client/Popover/PopoverTrigger.cjs +26 -0
  34. package/dist/components/client/Popover/PopoverTrigger.d.cts +14 -0
  35. package/dist/components/client/Popover/PopoverTrigger.d.ts +14 -0
  36. package/dist/components/client/Popover/PopoverTrigger.js +24 -0
  37. package/dist/components/client/Popover/UDSPopoverConfigProvider.cjs +40 -0
  38. package/dist/components/client/Popover/UDSPopoverConfigProvider.d.cts +28 -0
  39. package/dist/components/client/Popover/UDSPopoverConfigProvider.d.ts +28 -0
  40. package/dist/components/client/Popover/UDSPopoverConfigProvider.js +37 -0
  41. package/dist/components/client/Popover/index.cjs +12 -0
  42. package/dist/components/client/Popover/index.d.cts +7 -0
  43. package/dist/components/client/Popover/index.d.ts +7 -0
  44. package/dist/components/client/Popover/index.js +8 -0
  45. package/dist/components/client/Toast/Toast.cjs +1 -1
  46. package/dist/components/client/Toast/Toast.d.cts +1 -1
  47. package/dist/components/client/Toast/Toast.d.ts +1 -1
  48. package/dist/components/client/Toast/Toast.js +1 -1
  49. package/dist/components/client/Toast/index.d.cts +1 -1
  50. package/dist/components/client/Toast/index.d.ts +1 -1
  51. package/dist/components/client/Tooltip/Tooltip.cjs +6 -6
  52. package/dist/components/client/Tooltip/Tooltip.d.cts +1 -1
  53. package/dist/components/client/Tooltip/Tooltip.d.ts +1 -1
  54. package/dist/components/client/Tooltip/Tooltip.js +6 -6
  55. package/dist/components/client/Tooltip/TooltipContent.cjs +55 -119
  56. package/dist/components/client/Tooltip/TooltipContent.js +56 -120
  57. package/dist/components/client/Tooltip/tooltipContext.cjs +0 -1
  58. package/dist/components/client/Tooltip/tooltipContext.d.cts +1 -2
  59. package/dist/components/client/Tooltip/tooltipContext.d.ts +1 -2
  60. package/dist/components/client/Tooltip/tooltipContext.js +0 -1
  61. package/dist/components/client/index.cjs +8 -0
  62. package/dist/components/client/index.d.cts +10 -5
  63. package/dist/components/client/index.d.ts +10 -5
  64. package/dist/components/client/index.js +5 -1
  65. package/dist/components/client/providers/UDSConfigProvider.cjs +6 -2
  66. package/dist/components/client/providers/UDSConfigProvider.d.cts +2 -1
  67. package/dist/components/client/providers/UDSConfigProvider.d.ts +2 -1
  68. package/dist/components/client/providers/UDSConfigProvider.js +6 -2
  69. package/dist/components/experimental/client/{Popover.cjs → ExperimentalPopover.cjs} +10 -1
  70. package/dist/components/experimental/client/ExperimentalPopover.d.cts +40 -0
  71. package/dist/components/experimental/client/ExperimentalPopover.d.ts +40 -0
  72. package/dist/components/experimental/client/{Popover.js → ExperimentalPopover.js} +10 -1
  73. package/dist/components/experimental/client/index.cjs +10 -10
  74. package/dist/components/experimental/client/index.d.cts +2 -2
  75. package/dist/components/experimental/client/index.d.ts +2 -2
  76. package/dist/components/experimental/client/index.js +1 -1
  77. package/dist/components/experimental/index.cjs +19 -19
  78. package/dist/components/experimental/index.d.cts +2 -2
  79. package/dist/components/experimental/index.d.ts +2 -2
  80. package/dist/components/experimental/index.js +1 -1
  81. package/dist/components/index.cjs +12 -0
  82. package/dist/components/index.d.cts +9 -5
  83. package/dist/components/index.d.ts +9 -5
  84. package/dist/components/index.js +9 -1
  85. package/dist/config/dist/index.cjs +79 -1
  86. package/dist/config/dist/index.js +79 -1
  87. package/dist/{components/client/Tooltip/useTooltipContent.cjs → hooks/useSvgFloatingContent.cjs} +81 -48
  88. package/dist/hooks/useSvgFloatingContent.d.cts +74 -0
  89. package/dist/hooks/useSvgFloatingContent.d.ts +74 -0
  90. package/dist/{components/client/Tooltip/useTooltipContent.js → hooks/useSvgFloatingContent.js} +76 -43
  91. package/dist/index.cjs +21 -10
  92. package/dist/index.d.cts +15 -10
  93. package/dist/index.d.ts +15 -10
  94. package/dist/index.js +16 -11
  95. package/dist/runtime/index.cjs +2 -0
  96. package/dist/runtime/index.d.cts +3 -2
  97. package/dist/runtime/index.d.ts +3 -2
  98. package/dist/runtime/index.js +2 -1
  99. package/dist/runtime/popoverConfig.cjs +41 -0
  100. package/dist/runtime/popoverConfig.d.cts +24 -0
  101. package/dist/runtime/popoverConfig.d.ts +24 -0
  102. package/dist/runtime/popoverConfig.js +40 -0
  103. package/dist/runtime/udsConfig.cjs +3 -1
  104. package/dist/runtime/udsConfig.d.cts +3 -1
  105. package/dist/runtime/udsConfig.d.ts +3 -1
  106. package/dist/runtime/udsConfig.js +3 -1
  107. package/dist/styles/styler.d.cts +11 -1
  108. package/dist/styles/styler.d.ts +11 -1
  109. package/dist/styles/variants.d.cts +30 -0
  110. package/dist/styles/variants.d.ts +30 -0
  111. package/dist/tailwind/dist/tailwind/plugins/components.cjs +1 -0
  112. package/dist/tailwind/dist/tailwind/plugins/components.js +2 -1
  113. package/dist/tokens/automation/configs/index.cjs +1 -0
  114. package/dist/tokens/automation/configs/index.d.cts +2 -2
  115. package/dist/tokens/automation/configs/index.d.ts +2 -2
  116. package/dist/tokens/automation/configs/index.js +2 -2
  117. package/dist/tokens/automation/index.cjs +1 -0
  118. package/dist/tokens/automation/index.d.cts +2 -2
  119. package/dist/tokens/automation/index.d.ts +2 -2
  120. package/dist/tokens/automation/index.js +2 -2
  121. package/dist/tokens/index.cjs +2 -1
  122. package/dist/tokens/index.d.cts +3 -3
  123. package/dist/tokens/index.d.ts +3 -3
  124. package/dist/tokens/index.js +3 -3
  125. package/dist/tokens/types.d.cts +2 -2
  126. package/dist/tokens/types.d.ts +2 -2
  127. package/dist/types/dist/index.d.cts +51 -1
  128. package/dist/types/dist/index.d.ts +51 -1
  129. package/dist/uds/generated/componentData.cjs +939 -791
  130. package/dist/uds/generated/componentData.js +905 -793
  131. package/dist/uds/generated/tailwindPurge.cjs +52 -26
  132. package/dist/uds/generated/tailwindPurge.js +52 -26
  133. package/dist/utils/parseShadow.cjs +120 -0
  134. package/dist/utils/parseShadow.d.cts +33 -0
  135. package/dist/utils/parseShadow.d.ts +33 -0
  136. package/dist/utils/parseShadow.js +118 -0
  137. package/dist/utils/svgFloatingContentUtils.cjs +121 -0
  138. package/dist/{components/client/Tooltip/util.d.cts → utils/svgFloatingContentUtils.d.cts} +25 -62
  139. package/dist/{components/client/Tooltip/util.d.ts → utils/svgFloatingContentUtils.d.ts} +25 -62
  140. package/dist/utils/svgFloatingContentUtils.js +117 -0
  141. package/generated/componentData.json +1230 -1089
  142. package/generated/tailwindPurge.ts +50 -27
  143. package/package.json +1 -1
  144. package/dist/components/client/Tooltip/useTooltipContent.d.cts +0 -66
  145. package/dist/components/client/Tooltip/useTooltipContent.d.ts +0 -66
  146. package/dist/components/client/Tooltip/util.cjs +0 -248
  147. package/dist/components/client/Tooltip/util.js +0 -240
  148. package/dist/components/experimental/client/Popover.d.cts +0 -29
  149. package/dist/components/experimental/client/Popover.d.ts +0 -29
@@ -0,0 +1,170 @@
1
+ "use client";
2
+ /*! © 2026 Yahoo, Inc. UDS v0.0.0-development */
3
+ import { spacingMap } from "../../../fixtures/dist/index.js";
4
+ import { cx, getStyles } from "../../../styles/styler.js";
5
+ import { Box } from "../../Box.js";
6
+ import { IconSlot } from "../../IconSlot.js";
7
+ import { Pressable } from "../Pressable.js";
8
+ import { PopoverInternalContext } from "./PopoverContext.js";
9
+ import { usePopoverConfig } from "./UDSPopoverConfigProvider.js";
10
+ import { useForkRef } from "../../../hooks/useForkRef.js";
11
+ import { useSvgFloatingContent } from "../../../hooks/useSvgFloatingContent.js";
12
+ import { SvgFloatingOverlay } from "../../SvgFloatingOverlay.js";
13
+ import { forwardRef, useContext, useRef } from "react";
14
+ import { jsx, jsxs } from "react/jsx-runtime";
15
+ import { Cross } from "@yahoo/uds-icons";
16
+ import { Popover, PopoverArrow, PopoverDismiss, usePopoverContext, useStoreState } from "@ariakit/react";
17
+
18
+ //#region src/components/client/Popover/PopoverContent.tsx
19
+ const ARROW_HEIGHT = 12;
20
+ const ARROW_WIDTH = 22;
21
+ const ARROW_TIP_RADIUS_FRACTION = .3;
22
+ const PopoverContent = forwardRef(function PopoverContent({ children, className, closeIcon = Cross, slotProps, maxWidth, maxHeight }, ref) {
23
+ const store = usePopoverContext();
24
+ const open = useStoreState(store, "open");
25
+ const internalContext = useContext(PopoverInternalContext);
26
+ const disableVerticalSpacing = internalContext?.disableVerticalSpacing ?? false;
27
+ const disableHorizontalSpacing = internalContext?.disableHorizontalSpacing ?? false;
28
+ const sameWidth = internalContext?.sameWidth ?? false;
29
+ const gutter = internalContext?.gutter ?? 4;
30
+ const currentPlacement = useStoreState(store, "currentPlacement");
31
+ const placement = useStoreState(store, "placement");
32
+ const effectivePlacement = currentPlacement ?? placement ?? "top";
33
+ const { borderRadius, gap, spacingHorizontal, spacingVertical, dismissButtonSize } = usePopoverConfig();
34
+ const defaultBorderRadius = borderRadius["default"];
35
+ const defaultGap = gap["default"];
36
+ const defaultSpacingHorizontal = spacingHorizontal["default"];
37
+ const defaultSpacingVertical = spacingVertical["default"];
38
+ const defaultDismissButtonSize = dismissButtonSize["default"];
39
+ const arrowRef = useRef(null);
40
+ const reducedMotion = internalContext ? internalContext.reducedMotion : false;
41
+ const cssAnimationDuration = reducedMotion ? "duration-0" : "duration-120";
42
+ const animationDuration = reducedMotion || !internalContext ? 0 : internalContext.animationDuration;
43
+ const { internalRef, shift, onPositionUpdate, ...svgFloatingContentProps } = useSvgFloatingContent({
44
+ open: open ?? false,
45
+ effectivePlacement,
46
+ borderRadius: defaultBorderRadius,
47
+ arrowRef,
48
+ animationDuration,
49
+ hideArrow: internalContext?.hideArrow,
50
+ arrowWidth: ARROW_WIDTH,
51
+ arrowHeight: ARROW_HEIGHT,
52
+ arrowTipRadiusFraction: ARROW_TIP_RADIUS_FRACTION
53
+ });
54
+ const mergedRef = useForkRef(ref, internalRef);
55
+ const { className: closeIconClassName, ...closeIconProps } = slotProps?.closeIcon ?? {};
56
+ const { className: closeIconContainerClassName, ...closeIconContainerProps } = slotProps?.closeIconContainer ?? {};
57
+ const classNames = {
58
+ root: getStyles({
59
+ popoverSizeRoot: "default",
60
+ popoverVariantRoot: "default",
61
+ display: "flex",
62
+ position: "relative",
63
+ className: cx("z-[9999]", "outline-none", "focus-visible:outline-none", className)
64
+ }),
65
+ contentWrapper: getStyles({
66
+ display: "block",
67
+ spacingTop: disableVerticalSpacing ? "0" : defaultSpacingVertical,
68
+ spacingStart: disableHorizontalSpacing ? "0" : defaultSpacingHorizontal,
69
+ spacingBottom: disableVerticalSpacing ? "0" : defaultSpacingVertical,
70
+ spacingEnd: internalContext?.hideDismissButton ? disableHorizontalSpacing ? "0" : defaultSpacingHorizontal : void 0
71
+ }),
72
+ svgBase: getStyles({
73
+ popoverSizeSvgBase: "default",
74
+ popoverVariantSvgBase: "default",
75
+ className: cx("uds-bgBlurFillFallback")
76
+ }),
77
+ svgBorder: getStyles({
78
+ popoverSizeSvgBorder: "default",
79
+ popoverVariantSvgBorder: "default"
80
+ }),
81
+ blur: getStyles({
82
+ popoverVariantBlur: "default",
83
+ position: "absolute",
84
+ width: "full",
85
+ height: "full",
86
+ className: cx("uds-bgBlurFallback", "top-0", "left-0", "z-[1]")
87
+ }),
88
+ closeIconContainer: getStyles({
89
+ flexShrink: "0",
90
+ borderRadius: "full",
91
+ alignItems: "center",
92
+ justifyContent: "center",
93
+ display: "flex",
94
+ className: cx(cssAnimationDuration, "transition-[background-color]", "bg-carbon-15/0", "hover:bg-carbon-15/10", "active:bg-carbon-15/15")
95
+ }),
96
+ closeIcon: getStyles({
97
+ popoverVariantCloseIcon: "default",
98
+ popoverSizeCloseIcon: "default"
99
+ })
100
+ };
101
+ return /* @__PURE__ */ jsxs(Popover, {
102
+ hideOnInteractOutside: (event) => {
103
+ if (internalContext && !internalContext.isControlled) return true;
104
+ internalContext?.onClose?.(event);
105
+ return false;
106
+ },
107
+ ref: mergedRef,
108
+ className: classNames.root,
109
+ portal: internalContext ? internalContext.portal : true,
110
+ gutter: internalContext?.hideArrow ? gutter : ARROW_HEIGHT + gutter,
111
+ updatePosition: onPositionUpdate,
112
+ style: {
113
+ ...shift.x !== 0 || shift.y !== 0 ? { transform: `translate(${shift.x}px, ${shift.y}px)` } : {},
114
+ maxWidth,
115
+ maxHeight
116
+ },
117
+ onClose: internalContext?.onClose,
118
+ sameWidth,
119
+ autoFocusOnShow: !internalContext?.disableAutoFocus,
120
+ autoFocusOnHide: !internalContext?.disableAutoFocus,
121
+ children: [
122
+ /* @__PURE__ */ jsx(SvgFloatingOverlay, {
123
+ blurClassName: classNames.blur,
124
+ svgClassNames: {
125
+ base: classNames.svgBase,
126
+ border: classNames.svgBorder
127
+ },
128
+ arrowHeight: ARROW_HEIGHT,
129
+ contentWrapperSlotProps: { alignItems: "flex-start" },
130
+ borderRadius: defaultBorderRadius,
131
+ svgBaseStyle: slotProps?.svgBase?.style,
132
+ svgBorderStyle: slotProps?.svgBorder?.style,
133
+ ...svgFloatingContentProps,
134
+ children: /* @__PURE__ */ jsx(Box, {
135
+ className: cx(classNames.contentWrapper),
136
+ style: { paddingInlineEnd: internalContext?.hideDismissButton || disableHorizontalSpacing ? void 0 : spacingMap[defaultGap] + spacingMap[defaultSpacingHorizontal] + defaultDismissButtonSize },
137
+ children
138
+ })
139
+ }),
140
+ !internalContext?.hideDismissButton && /* @__PURE__ */ jsx(PopoverDismiss, { render: /* @__PURE__ */ jsx(Pressable, {
141
+ className: cx(classNames.closeIconContainer, "absolute", "z-[4]", closeIconContainerClassName),
142
+ ...closeIconContainerProps,
143
+ style: {
144
+ ...closeIconContainerProps?.style,
145
+ top: spacingMap[defaultSpacingVertical],
146
+ insetInlineEnd: spacingMap[defaultSpacingHorizontal],
147
+ width: defaultDismissButtonSize,
148
+ height: defaultDismissButtonSize,
149
+ ...svgFloatingContentProps.childTransitionStyle
150
+ },
151
+ children: /* @__PURE__ */ jsx(IconSlot, {
152
+ icon: closeIcon,
153
+ iconProps: {
154
+ className: cx(classNames.closeIcon, closeIconClassName),
155
+ ...closeIconProps
156
+ }
157
+ })
158
+ }) }),
159
+ !internalContext?.hideArrow && /* @__PURE__ */ jsx(PopoverArrow, {
160
+ size: 1,
161
+ ref: arrowRef,
162
+ style: { opacity: 0 }
163
+ })
164
+ ]
165
+ });
166
+ });
167
+ PopoverContent.displayName = "PopoverContent";
168
+
169
+ //#endregion
170
+ export { PopoverContent };
@@ -0,0 +1,11 @@
1
+ "use client";
2
+ /*! © 2026 Yahoo, Inc. UDS v0.0.0-development */
3
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
+ const require_runtime = require('../../../_virtual/_rolldown/runtime.cjs');
5
+ let react = require("react");
6
+
7
+ //#region src/components/client/Popover/PopoverContext.tsx
8
+ const PopoverInternalContext = (0, react.createContext)(null);
9
+
10
+ //#endregion
11
+ exports.PopoverInternalContext = PopoverInternalContext;
@@ -0,0 +1,21 @@
1
+
2
+ import * as react from "react";
3
+
4
+ //#region src/components/client/Popover/PopoverContext.d.ts
5
+ interface PopoverInternalContextType {
6
+ portal: boolean;
7
+ hideArrow: boolean;
8
+ hideDismissButton: boolean;
9
+ onClose?: (event: Event) => void;
10
+ isControlled: boolean;
11
+ animationDuration: number;
12
+ reducedMotion: boolean;
13
+ disableAutoFocus: boolean;
14
+ disableVerticalSpacing: boolean;
15
+ disableHorizontalSpacing: boolean;
16
+ sameWidth: boolean;
17
+ gutter: number;
18
+ }
19
+ declare const PopoverInternalContext: react.Context<PopoverInternalContextType | null>;
20
+ //#endregion
21
+ export { PopoverInternalContext };
@@ -0,0 +1,21 @@
1
+
2
+ import * as react from "react";
3
+
4
+ //#region src/components/client/Popover/PopoverContext.d.ts
5
+ interface PopoverInternalContextType {
6
+ portal: boolean;
7
+ hideArrow: boolean;
8
+ hideDismissButton: boolean;
9
+ onClose?: (event: Event) => void;
10
+ isControlled: boolean;
11
+ animationDuration: number;
12
+ reducedMotion: boolean;
13
+ disableAutoFocus: boolean;
14
+ disableVerticalSpacing: boolean;
15
+ disableHorizontalSpacing: boolean;
16
+ sameWidth: boolean;
17
+ gutter: number;
18
+ }
19
+ declare const PopoverInternalContext: react.Context<PopoverInternalContextType | null>;
20
+ //#endregion
21
+ export { PopoverInternalContext };
@@ -0,0 +1,9 @@
1
+ "use client";
2
+ /*! © 2026 Yahoo, Inc. UDS v0.0.0-development */
3
+ import { createContext } from "react";
4
+
5
+ //#region src/components/client/Popover/PopoverContext.tsx
6
+ const PopoverInternalContext = createContext(null);
7
+
8
+ //#endregion
9
+ export { PopoverInternalContext };
@@ -0,0 +1,26 @@
1
+ "use client";
2
+ /*! © 2026 Yahoo, Inc. UDS v0.0.0-development */
3
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
+ const require_runtime = require('../../../_virtual/_rolldown/runtime.cjs');
5
+ const require_components_client_Popover_PopoverContext = require('./PopoverContext.cjs');
6
+ let react = require("react");
7
+ let react_jsx_runtime = require("react/jsx-runtime");
8
+ let _ariakit_react = require("@ariakit/react");
9
+
10
+ //#region src/components/client/Popover/PopoverTrigger.tsx
11
+ function PopoverTrigger({ children }) {
12
+ const toggleOnClick = !(0, react.useContext)(require_components_client_Popover_PopoverContext.PopoverInternalContext)?.isControlled;
13
+ if ((0, react.isValidElement)(children) && children.type !== react.Fragment) return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ariakit_react.PopoverDisclosure, {
14
+ render: children,
15
+ toggleOnClick
16
+ });
17
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ariakit_react.PopoverDisclosure, {
18
+ className: "inline",
19
+ toggleOnClick,
20
+ children
21
+ });
22
+ }
23
+ PopoverTrigger.displayName = "PopoverTrigger";
24
+
25
+ //#endregion
26
+ exports.PopoverTrigger = PopoverTrigger;
@@ -0,0 +1,14 @@
1
+
2
+ import { UniversalPopoverTriggerProps } from "../../../types/dist/index.cjs";
3
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
4
+
5
+ //#region src/components/client/Popover/PopoverTrigger.d.ts
6
+ type PopoverTriggerProps = UniversalPopoverTriggerProps;
7
+ declare function PopoverTrigger({
8
+ children
9
+ }: PopoverTriggerProps): react_jsx_runtime0.JSX.Element;
10
+ declare namespace PopoverTrigger {
11
+ var displayName: string;
12
+ }
13
+ //#endregion
14
+ export { PopoverTrigger };
@@ -0,0 +1,14 @@
1
+
2
+ import { UniversalPopoverTriggerProps } from "../../../types/dist/index.js";
3
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
4
+
5
+ //#region src/components/client/Popover/PopoverTrigger.d.ts
6
+ type PopoverTriggerProps = UniversalPopoverTriggerProps;
7
+ declare function PopoverTrigger({
8
+ children
9
+ }: PopoverTriggerProps): react_jsx_runtime0.JSX.Element;
10
+ declare namespace PopoverTrigger {
11
+ var displayName: string;
12
+ }
13
+ //#endregion
14
+ export { PopoverTrigger };
@@ -0,0 +1,24 @@
1
+ "use client";
2
+ /*! © 2026 Yahoo, Inc. UDS v0.0.0-development */
3
+ import { PopoverInternalContext } from "./PopoverContext.js";
4
+ import { Fragment, isValidElement, useContext } from "react";
5
+ import { jsx } from "react/jsx-runtime";
6
+ import { PopoverDisclosure } from "@ariakit/react";
7
+
8
+ //#region src/components/client/Popover/PopoverTrigger.tsx
9
+ function PopoverTrigger({ children }) {
10
+ const toggleOnClick = !useContext(PopoverInternalContext)?.isControlled;
11
+ if (isValidElement(children) && children.type !== Fragment) return /* @__PURE__ */ jsx(PopoverDisclosure, {
12
+ render: children,
13
+ toggleOnClick
14
+ });
15
+ return /* @__PURE__ */ jsx(PopoverDisclosure, {
16
+ className: "inline",
17
+ toggleOnClick,
18
+ children
19
+ });
20
+ }
21
+ PopoverTrigger.displayName = "PopoverTrigger";
22
+
23
+ //#endregion
24
+ export { PopoverTrigger };
@@ -0,0 +1,40 @@
1
+ "use client";
2
+ /*! © 2026 Yahoo, Inc. UDS v0.0.0-development */
3
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
+ const require_runtime = require('../../../_virtual/_rolldown/runtime.cjs');
5
+ let react = require("react");
6
+ let react_jsx_runtime = require("react/jsx-runtime");
7
+
8
+ //#region src/components/client/Popover/UDSPopoverConfigProvider.tsx
9
+ const PopoverContext = (0, react.createContext)(void 0);
10
+ const UDSPopoverConfigProvider = ({ children, value }) => {
11
+ const existingContext = (0, react.useContext)(PopoverContext);
12
+ if ("type" in value) {
13
+ if (!existingContext) throw new Error("Cannot merge context values without an existing PopoverContext");
14
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PopoverContext.Provider, {
15
+ value: {
16
+ ...existingContext,
17
+ ...value.value
18
+ },
19
+ children
20
+ });
21
+ }
22
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PopoverContext.Provider, {
23
+ value,
24
+ children
25
+ });
26
+ };
27
+ UDSPopoverConfigProvider.displayName = "UDSPopoverConfigProvider";
28
+ function usePopoverConfig(options) {
29
+ const context = (0, react.useContext)(PopoverContext);
30
+ if (!context) throw new Error("usePopoverConfig must be used within a UDSConfigProvider or UDSPopoverConfigProvider");
31
+ const { placementMap, placement, ...contextRest } = context;
32
+ return {
33
+ ...contextRest,
34
+ ariaKitPlacement: placementMap[options?.placement ?? placement]
35
+ };
36
+ }
37
+
38
+ //#endregion
39
+ exports.UDSPopoverConfigProvider = UDSPopoverConfigProvider;
40
+ exports.usePopoverConfig = usePopoverConfig;
@@ -0,0 +1,28 @@
1
+
2
+ import { PopoverPlacement } from "../../../types/dist/index.cjs";
3
+ import { UDSPopoverConfigContextType } from "../../../runtime/popoverConfig.cjs";
4
+ import { PropsWithChildren } from "react";
5
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
6
+ import { PopoverProviderProps } from "@ariakit/react";
7
+
8
+ //#region src/components/client/Popover/UDSPopoverConfigProvider.d.ts
9
+ interface UDSPopoverConfigProviderProps extends PropsWithChildren {
10
+ value: UDSPopoverConfigContextType | {
11
+ type: 'merge';
12
+ value: Partial<UDSPopoverConfigContextType>;
13
+ };
14
+ }
15
+ declare const UDSPopoverConfigProvider: {
16
+ ({
17
+ children,
18
+ value
19
+ }: UDSPopoverConfigProviderProps): react_jsx_runtime0.JSX.Element;
20
+ displayName: string;
21
+ };
22
+ declare function usePopoverConfig(options?: {
23
+ placement?: PopoverPlacement;
24
+ }): Omit<UDSPopoverConfigContextType, 'placementMap' | 'placement'> & {
25
+ ariaKitPlacement: PopoverProviderProps['placement'];
26
+ };
27
+ //#endregion
28
+ export { type UDSPopoverConfigContextType, UDSPopoverConfigProvider, type UDSPopoverConfigProviderProps, usePopoverConfig };
@@ -0,0 +1,28 @@
1
+
2
+ import { PopoverPlacement } from "../../../types/dist/index.js";
3
+ import { UDSPopoverConfigContextType } from "../../../runtime/popoverConfig.js";
4
+ import { PropsWithChildren } from "react";
5
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
6
+ import { PopoverProviderProps } from "@ariakit/react";
7
+
8
+ //#region src/components/client/Popover/UDSPopoverConfigProvider.d.ts
9
+ interface UDSPopoverConfigProviderProps extends PropsWithChildren {
10
+ value: UDSPopoverConfigContextType | {
11
+ type: 'merge';
12
+ value: Partial<UDSPopoverConfigContextType>;
13
+ };
14
+ }
15
+ declare const UDSPopoverConfigProvider: {
16
+ ({
17
+ children,
18
+ value
19
+ }: UDSPopoverConfigProviderProps): react_jsx_runtime0.JSX.Element;
20
+ displayName: string;
21
+ };
22
+ declare function usePopoverConfig(options?: {
23
+ placement?: PopoverPlacement;
24
+ }): Omit<UDSPopoverConfigContextType, 'placementMap' | 'placement'> & {
25
+ ariaKitPlacement: PopoverProviderProps['placement'];
26
+ };
27
+ //#endregion
28
+ export { type UDSPopoverConfigContextType, UDSPopoverConfigProvider, type UDSPopoverConfigProviderProps, usePopoverConfig };
@@ -0,0 +1,37 @@
1
+ "use client";
2
+ /*! © 2026 Yahoo, Inc. UDS v0.0.0-development */
3
+ import { createContext, useContext } from "react";
4
+ import { jsx } from "react/jsx-runtime";
5
+
6
+ //#region src/components/client/Popover/UDSPopoverConfigProvider.tsx
7
+ const PopoverContext = createContext(void 0);
8
+ const UDSPopoverConfigProvider = ({ children, value }) => {
9
+ const existingContext = useContext(PopoverContext);
10
+ if ("type" in value) {
11
+ if (!existingContext) throw new Error("Cannot merge context values without an existing PopoverContext");
12
+ return /* @__PURE__ */ jsx(PopoverContext.Provider, {
13
+ value: {
14
+ ...existingContext,
15
+ ...value.value
16
+ },
17
+ children
18
+ });
19
+ }
20
+ return /* @__PURE__ */ jsx(PopoverContext.Provider, {
21
+ value,
22
+ children
23
+ });
24
+ };
25
+ UDSPopoverConfigProvider.displayName = "UDSPopoverConfigProvider";
26
+ function usePopoverConfig(options) {
27
+ const context = useContext(PopoverContext);
28
+ if (!context) throw new Error("usePopoverConfig must be used within a UDSConfigProvider or UDSPopoverConfigProvider");
29
+ const { placementMap, placement, ...contextRest } = context;
30
+ return {
31
+ ...contextRest,
32
+ ariaKitPlacement: placementMap[options?.placement ?? placement]
33
+ };
34
+ }
35
+
36
+ //#endregion
37
+ export { UDSPopoverConfigProvider, usePopoverConfig };
@@ -0,0 +1,12 @@
1
+ "use client";
2
+ /*! © 2026 Yahoo, Inc. UDS v0.0.0-development */
3
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
+ const require_components_client_Popover_UDSPopoverConfigProvider = require('./UDSPopoverConfigProvider.cjs');
5
+ const require_components_client_Popover_Popover = require('./Popover.cjs');
6
+ const require_components_client_Popover_PopoverContent = require('./PopoverContent.cjs');
7
+ const require_components_client_Popover_PopoverTrigger = require('./PopoverTrigger.cjs');
8
+
9
+ exports.Popover = require_components_client_Popover_Popover.Popover;
10
+ exports.PopoverContent = require_components_client_Popover_PopoverContent.PopoverContent;
11
+ exports.PopoverTrigger = require_components_client_Popover_PopoverTrigger.PopoverTrigger;
12
+ exports.UDSPopoverConfigProvider = require_components_client_Popover_UDSPopoverConfigProvider.UDSPopoverConfigProvider;
@@ -0,0 +1,7 @@
1
+
2
+ import { UniversalPopoverContentProps, UniversalPopoverProps, UniversalPopoverTriggerProps } from "../../../types/dist/index.cjs";
3
+ import { Popover } from "./Popover.cjs";
4
+ import { PopoverTrigger } from "./PopoverTrigger.cjs";
5
+ import { UDSPopoverConfigProvider, UDSPopoverConfigProviderProps } from "./UDSPopoverConfigProvider.cjs";
6
+ import { PopoverContent } from "./PopoverContent.cjs";
7
+ export { Popover, PopoverContent, type UniversalPopoverContentProps as PopoverContentProps, type UniversalPopoverProps as PopoverProps, PopoverTrigger, type UniversalPopoverTriggerProps as PopoverTriggerProps, UDSPopoverConfigProvider, type UDSPopoverConfigProviderProps };
@@ -0,0 +1,7 @@
1
+
2
+ import { UniversalPopoverContentProps, UniversalPopoverProps, UniversalPopoverTriggerProps } from "../../../types/dist/index.js";
3
+ import { Popover } from "./Popover.js";
4
+ import { PopoverTrigger } from "./PopoverTrigger.js";
5
+ import { UDSPopoverConfigProvider, UDSPopoverConfigProviderProps } from "./UDSPopoverConfigProvider.js";
6
+ import { PopoverContent } from "./PopoverContent.js";
7
+ export { Popover, PopoverContent, type UniversalPopoverContentProps as PopoverContentProps, type UniversalPopoverProps as PopoverProps, PopoverTrigger, type UniversalPopoverTriggerProps as PopoverTriggerProps, UDSPopoverConfigProvider, type UDSPopoverConfigProviderProps };
@@ -0,0 +1,8 @@
1
+ "use client";
2
+ /*! © 2026 Yahoo, Inc. UDS v0.0.0-development */
3
+ import { UDSPopoverConfigProvider } from "./UDSPopoverConfigProvider.js";
4
+ import { Popover } from "./Popover.js";
5
+ import { PopoverContent } from "./PopoverContent.js";
6
+ import { PopoverTrigger } from "./PopoverTrigger.js";
7
+
8
+ export { Popover, PopoverContent, PopoverTrigger, UDSPopoverConfigProvider };
@@ -42,7 +42,7 @@ const iconMap = {
42
42
  * <Toast variant="info" message="This is a toast" />
43
43
  *```
44
44
  *
45
- * @related [Tooltip](https://uds.build/docs/components/tooltip), Popover (coming soon)
45
+ * @related [Tooltip](https://uds.build/docs/components/tooltip), [Popover](https://uds.build/docs/components/popover)
46
46
  **/
47
47
  const Toast = ({ message, onClickCloseButton, size: sizeProp, variant: variantProp, actionButton, onClickActionButton, startIcon, closeIcon = _yahoo_uds_icons.Cross, closeToast, slotProps, className, id, reduceMotion: forceReduceMotion }) => {
48
48
  const { iconVariant, iconSize, buttonVariant, buttonSize, size, variant, textVariant, textColor } = require_components_client_Toast_UDSToastConfigProvider.useToastConfig(sizeProp, variantProp);
@@ -44,7 +44,7 @@ interface ToastProps extends UniversalToastProps, Partial<ReactToastifyContext>
44
44
  * <Toast variant="info" message="This is a toast" />
45
45
  *```
46
46
  *
47
- * @related [Tooltip](https://uds.build/docs/components/tooltip), Popover (coming soon)
47
+ * @related [Tooltip](https://uds.build/docs/components/tooltip), [Popover](https://uds.build/docs/components/popover)
48
48
  **/
49
49
  declare const Toast: {
50
50
  ({
@@ -44,7 +44,7 @@ interface ToastProps extends UniversalToastProps, Partial<ReactToastifyContext>
44
44
  * <Toast variant="info" message="This is a toast" />
45
45
  *```
46
46
  *
47
- * @related [Tooltip](https://uds.build/docs/components/tooltip), Popover (coming soon)
47
+ * @related [Tooltip](https://uds.build/docs/components/tooltip), [Popover](https://uds.build/docs/components/popover)
48
48
  **/
49
49
  declare const Toast: {
50
50
  ({
@@ -40,7 +40,7 @@ const iconMap = {
40
40
  * <Toast variant="info" message="This is a toast" />
41
41
  *```
42
42
  *
43
- * @related [Tooltip](https://uds.build/docs/components/tooltip), Popover (coming soon)
43
+ * @related [Tooltip](https://uds.build/docs/components/tooltip), [Popover](https://uds.build/docs/components/popover)
44
44
  **/
45
45
  const Toast = ({ message, onClickCloseButton, size: sizeProp, variant: variantProp, actionButton, onClickActionButton, startIcon, closeIcon = Cross, closeToast, slotProps, className, id, reduceMotion: forceReduceMotion }) => {
46
46
  const { iconVariant, iconSize, buttonVariant, buttonSize, size, variant, textVariant, textColor } = useToastConfig(sizeProp, variantProp);
@@ -1,7 +1,7 @@
1
1
 
2
2
  import { Toast, ToastProps } from "./Toast.cjs";
3
+ import { ToastLoadingPromise, createToast } from "./createToast.cjs";
3
4
  import { ToastContainer, ToastContainerProps } from "./ToastContainer.cjs";
4
5
  import { ToastPortal, ToastPortalProps } from "./ToastPortal.cjs";
5
6
  import { UDSToastConfigProvider, UDSToastConfigProviderProps, useToastConfig } from "./UDSToastConfigProvider.cjs";
6
- import { ToastLoadingPromise, createToast } from "./createToast.cjs";
7
7
  export { Toast, ToastContainer, type ToastContainerProps, type ToastLoadingPromise, ToastPortal, type ToastPortalProps, type ToastProps, UDSToastConfigProvider, type UDSToastConfigProviderProps, createToast, useToastConfig };
@@ -1,7 +1,7 @@
1
1
 
2
2
  import { Toast, ToastProps } from "./Toast.js";
3
+ import { ToastLoadingPromise, createToast } from "./createToast.js";
3
4
  import { ToastContainer, ToastContainerProps } from "./ToastContainer.js";
4
5
  import { ToastPortal, ToastPortalProps } from "./ToastPortal.js";
5
6
  import { UDSToastConfigProvider, UDSToastConfigProviderProps, useToastConfig } from "./UDSToastConfigProvider.js";
6
- import { ToastLoadingPromise, createToast } from "./createToast.js";
7
7
  export { Toast, ToastContainer, type ToastContainerProps, type ToastLoadingPromise, ToastPortal, type ToastPortalProps, type ToastProps, UDSToastConfigProvider, type UDSToastConfigProviderProps, createToast, useToastConfig };
@@ -34,21 +34,21 @@ let _ariakit_react = require("@ariakit/react");
34
34
  * </Tooltip>
35
35
  *```
36
36
  *
37
- * @related [Toast](https://uds.build/docs/components/toast), Popover (coming soon).
37
+ * @related [Toast](https://uds.build/docs/components/toast), [Popover](https://uds.build/docs/components/popover)
38
38
  **/
39
39
  function Tooltip({ children, placement, open, portal = true }) {
40
- const hideOnHoverOutside = open === void 0;
41
- const controlledProps = open !== void 0 ? {
40
+ const isControlled = open !== void 0;
41
+ const controlledProps = isControlled ? {
42
42
  showTimeout: 0,
43
43
  hideTimeout: 0,
44
44
  timeout: 0,
45
- mounted: open
45
+ ...open ? { mounted: true } : {}
46
46
  } : void 0;
47
47
  const { animationDuration, ariaKitPlacement } = require_components_client_Tooltip_UDSTooltipConfigProvider.useTooltipConfig({ placement });
48
48
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_components_client_Tooltip_tooltipContext.TooltipInternalContext.Provider, {
49
49
  value: {
50
- hideOnHoverOutside,
51
- portal
50
+ portal,
51
+ isControlled
52
52
  },
53
53
  children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ariakit_react.TooltipProvider, {
54
54
  placement: ariaKitPlacement,
@@ -30,7 +30,7 @@ type TooltipProps = UniversalTooltipProps;
30
30
  * </Tooltip>
31
31
  *```
32
32
  *
33
- * @related [Toast](https://uds.build/docs/components/toast), Popover (coming soon).
33
+ * @related [Toast](https://uds.build/docs/components/toast), [Popover](https://uds.build/docs/components/popover)
34
34
  **/
35
35
  declare function Tooltip({
36
36
  children,
@@ -30,7 +30,7 @@ type TooltipProps = UniversalTooltipProps;
30
30
  * </Tooltip>
31
31
  *```
32
32
  *
33
- * @related [Toast](https://uds.build/docs/components/toast), Popover (coming soon).
33
+ * @related [Toast](https://uds.build/docs/components/toast), [Popover](https://uds.build/docs/components/popover)
34
34
  **/
35
35
  declare function Tooltip({
36
36
  children,
@@ -32,21 +32,21 @@ import { TooltipProvider } from "@ariakit/react";
32
32
  * </Tooltip>
33
33
  *```
34
34
  *
35
- * @related [Toast](https://uds.build/docs/components/toast), Popover (coming soon).
35
+ * @related [Toast](https://uds.build/docs/components/toast), [Popover](https://uds.build/docs/components/popover)
36
36
  **/
37
37
  function Tooltip({ children, placement, open, portal = true }) {
38
- const hideOnHoverOutside = open === void 0;
39
- const controlledProps = open !== void 0 ? {
38
+ const isControlled = open !== void 0;
39
+ const controlledProps = isControlled ? {
40
40
  showTimeout: 0,
41
41
  hideTimeout: 0,
42
42
  timeout: 0,
43
- mounted: open
43
+ ...open ? { mounted: true } : {}
44
44
  } : void 0;
45
45
  const { animationDuration, ariaKitPlacement } = useTooltipConfig({ placement });
46
46
  return /* @__PURE__ */ jsx(TooltipInternalContext.Provider, {
47
47
  value: {
48
- hideOnHoverOutside,
49
- portal
48
+ portal,
49
+ isControlled
50
50
  },
51
51
  children: /* @__PURE__ */ jsx(TooltipProvider, {
52
52
  placement: ariaKitPlacement,