@deque/cauldron-react 6.17.0 → 6.17.1-canary.82f455cd
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.
- package/lib/components/ActionMenu/ActionMenu.d.ts +3 -0
- package/lib/components/AnchoredOverlay/index.d.ts +2 -0
- package/lib/components/Popover/index.d.ts +1 -0
- package/lib/components/Stepper/index.d.ts +1 -1
- package/lib/components/Tooltip/index.d.ts +1 -0
- package/lib/index.js +35 -23
- package/package.json +1 -1
|
@@ -4,6 +4,8 @@ type ActionMenuTriggerFunction = (props: ActionMenuTriggerProps, open: boolean)
|
|
|
4
4
|
declare const ActionMenu: React.ForwardRefExoticComponent<{
|
|
5
5
|
children: React.ReactElement;
|
|
6
6
|
trigger: React.ReactElement | ActionMenuTriggerFunction;
|
|
7
|
+
/** Render the action menu in a different location in the dom. */
|
|
8
|
+
portal?: HTMLElement | React.RefObject<HTMLElement> | undefined;
|
|
7
9
|
} & Pick<{
|
|
8
10
|
target: HTMLElement | React.RefObject<HTMLElement> | React.MutableRefObject<HTMLElement>;
|
|
9
11
|
placement?: "auto" | import("@floating-ui/utils").Placement | "auto-start" | "auto-end" | undefined;
|
|
@@ -19,6 +21,7 @@ declare const ActionMenu: React.ForwardRefExoticComponent<{
|
|
|
19
21
|
returnFocus?: boolean | undefined;
|
|
20
22
|
returnFocusElement?: import("../../types").ElementOrRef<HTMLElement> | undefined;
|
|
21
23
|
} | undefined;
|
|
24
|
+
portal?: HTMLElement | React.RefObject<HTMLElement> | undefined;
|
|
22
25
|
children?: React.ReactNode;
|
|
23
26
|
} & React.HTMLAttributes<HTMLElement> & {
|
|
24
27
|
as?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
|
|
@@ -20,6 +20,8 @@ declare const AnchoredOverlay: React.ForwardRefExoticComponent<{
|
|
|
20
20
|
focusTrap?: boolean | undefined;
|
|
21
21
|
/** When `focusTrap` is true, optional arguments to configure the focus trap. */
|
|
22
22
|
focusTrapOptions?: Parameters<typeof useFocusTrap>[1];
|
|
23
|
+
/** Render the anchored overlay in a different location in the dom. */
|
|
24
|
+
portal?: HTMLElement | React.RefObject<HTMLElement> | undefined;
|
|
23
25
|
children?: React.ReactNode;
|
|
24
26
|
} & React.HTMLAttributes<HTMLElement> & {
|
|
25
27
|
as?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
|
|
@@ -8,6 +8,7 @@ type BaseProps = React.HTMLAttributes<HTMLDivElement> & {
|
|
|
8
8
|
show: boolean;
|
|
9
9
|
onClose: () => void;
|
|
10
10
|
placement?: React.ComponentProps<typeof AnchoredOverlay>['placement'];
|
|
11
|
+
/** Render the popover in a different location in the dom. */
|
|
11
12
|
portal?: React.RefObject<HTMLElement> | HTMLElement;
|
|
12
13
|
};
|
|
13
14
|
type CustomProps = BaseProps & {
|
|
@@ -14,7 +14,7 @@ export declare const Step: {
|
|
|
14
14
|
(props: StepProps): React.JSX.Element;
|
|
15
15
|
displayName: string;
|
|
16
16
|
};
|
|
17
|
-
interface StepperProps extends React.
|
|
17
|
+
interface StepperProps extends React.OlHTMLAttributes<HTMLOListElement> {
|
|
18
18
|
children: React.ReactNode;
|
|
19
19
|
className?: string;
|
|
20
20
|
}
|
|
@@ -9,6 +9,7 @@ export interface TooltipProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
|
9
9
|
show?: boolean | undefined;
|
|
10
10
|
defaultShow?: boolean;
|
|
11
11
|
placement?: React.ComponentProps<typeof AnchoredOverlay>['placement'];
|
|
12
|
+
/** Render the tooltip in a different location in the dom. */
|
|
12
13
|
portal?: React.RefObject<HTMLElement> | HTMLElement;
|
|
13
14
|
hideElementOnHidden?: boolean;
|
|
14
15
|
}
|
package/lib/index.js
CHANGED
|
@@ -1783,7 +1783,7 @@ function getAutoAlignment(placement) {
|
|
|
1783
1783
|
}
|
|
1784
1784
|
var AnchoredOverlay = React.forwardRef(function (_a, refProp) {
|
|
1785
1785
|
var _b, _c;
|
|
1786
|
-
var as = _a.as, _d = _a.placement, initialPlacement = _d === void 0 ? 'auto' : _d, target = _a.target, children = _a.children, style = _a.style, _e = _a.open, open = _e === void 0 ? false : _e, offset = _a.offset, focusTrap = _a.focusTrap, focusTrapOptions = _a.focusTrapOptions, onOpenChange = _a.onOpenChange, onPlacementChange = _a.onPlacementChange, onShiftChange = _a.onShiftChange, props = tslib.__rest(_a, ["as", "placement", "target", "children", "style", "open", "offset", "focusTrap", "focusTrapOptions", "onOpenChange", "onPlacementChange", "onShiftChange"]);
|
|
1786
|
+
var as = _a.as, _d = _a.placement, initialPlacement = _d === void 0 ? 'auto' : _d, target = _a.target, children = _a.children, style = _a.style, _e = _a.open, open = _e === void 0 ? false : _e, offset = _a.offset, focusTrap = _a.focusTrap, focusTrapOptions = _a.focusTrapOptions, onOpenChange = _a.onOpenChange, onPlacementChange = _a.onPlacementChange, onShiftChange = _a.onShiftChange, portal = _a.portal, props = tslib.__rest(_a, ["as", "placement", "target", "children", "style", "open", "offset", "focusTrap", "focusTrapOptions", "onOpenChange", "onPlacementChange", "onShiftChange", "portal"]);
|
|
1787
1787
|
var ref = useSharedRef(refProp);
|
|
1788
1788
|
var Component = as || 'div';
|
|
1789
1789
|
var _f = reactDom$1.useFloating({
|
|
@@ -1835,7 +1835,18 @@ var AnchoredOverlay = React.forwardRef(function (_a, refProp) {
|
|
|
1835
1835
|
});
|
|
1836
1836
|
}
|
|
1837
1837
|
}, [onShiftChange, (_b = middlewareData.shift) === null || _b === void 0 ? void 0 : _b.x, (_c = middlewareData.shift) === null || _c === void 0 ? void 0 : _c.y]);
|
|
1838
|
-
|
|
1838
|
+
var AnchoredOverlayComponent = (React__default["default"].createElement(Component, tslib.__assign({ ref: ref }, props, { style: tslib.__assign(tslib.__assign({}, floatingStyles), style) }), children));
|
|
1839
|
+
if (portal && !isBrowser()) {
|
|
1840
|
+
return null;
|
|
1841
|
+
}
|
|
1842
|
+
if (portal && typeof portal !== 'undefined') {
|
|
1843
|
+
var portalElement = (portal && 'current' in portal ? portal.current : portal) ||
|
|
1844
|
+
(
|
|
1845
|
+
// eslint-disable-next-line ssr-friendly/no-dom-globals-in-react-fc
|
|
1846
|
+
document === null || document === void 0 ? void 0 : document.body);
|
|
1847
|
+
return reactDom.createPortal(AnchoredOverlayComponent, portalElement);
|
|
1848
|
+
}
|
|
1849
|
+
return AnchoredOverlayComponent;
|
|
1839
1850
|
});
|
|
1840
1851
|
AnchoredOverlay.displayName = 'AnchoredOverlay';
|
|
1841
1852
|
|
|
@@ -1985,18 +1996,18 @@ function Tooltip(_a) {
|
|
|
1985
1996
|
// that the arrow needs to shift
|
|
1986
1997
|
setArrowShift(x * -1);
|
|
1987
1998
|
}, [variant]);
|
|
1988
|
-
return (React__default["default"].createElement(React__default["default"].Fragment, null, (showTooltip || hideElementOnHidden) && isBrowser()
|
|
1989
|
-
|
|
1990
|
-
|
|
1991
|
-
|
|
1992
|
-
|
|
1993
|
-
|
|
1994
|
-
|
|
1995
|
-
|
|
1996
|
-
|
|
1997
|
-
|
|
1998
|
-
|
|
1999
|
-
: null));
|
|
1999
|
+
return (React__default["default"].createElement(React__default["default"].Fragment, null, (showTooltip || hideElementOnHidden) && isBrowser() ? (React__default["default"].createElement(AnchoredOverlay, tslib.__assign({ id: id, target: target, placement: initialPlacement, onPlacementChange: setPlacement, open: showTooltip && typeof showProp !== 'boolean', onOpenChange: setShowTooltip, onShiftChange: updateArrowShiftPosition, className: classNames__default["default"]('Tooltip', "Tooltip--".concat(placement), className, {
|
|
2000
|
+
TooltipInfo: variant === 'info',
|
|
2001
|
+
'Tooltip--hidden': !showTooltip && hideElementOnHidden,
|
|
2002
|
+
'Tooltip--big': variant === 'big'
|
|
2003
|
+
}), ref: setTooltipElement, role: "tooltip", offset: 8,
|
|
2004
|
+
// guarded by isBrowser() check
|
|
2005
|
+
// eslint-disable-next-line ssr-friendly/no-dom-globals-in-react-fc
|
|
2006
|
+
portal: portal || (document === null || document === void 0 ? void 0 : document.body) }, props),
|
|
2007
|
+
variant !== 'big' && (React__default["default"].createElement("div", { className: "TooltipArrow", style: arrowShift
|
|
2008
|
+
? { transform: "translateX(".concat(arrowShift, "px)") }
|
|
2009
|
+
: undefined })),
|
|
2010
|
+
children)) : null));
|
|
2000
2011
|
}
|
|
2001
2012
|
Tooltip.displayName = 'Tooltip';
|
|
2002
2013
|
var TooltipHead = function (_a) {
|
|
@@ -4643,19 +4654,20 @@ var Popover = React.forwardRef(function (_a, ref) {
|
|
|
4643
4654
|
active: show
|
|
4644
4655
|
}, [show]);
|
|
4645
4656
|
useFocusTrap(popoverRef, { disabled: !show, returnFocus: true });
|
|
4646
|
-
if (!show || !isBrowser())
|
|
4657
|
+
if (!show || !isBrowser()) {
|
|
4647
4658
|
return null;
|
|
4648
|
-
|
|
4659
|
+
}
|
|
4660
|
+
return (React__default["default"].createElement(ClickOutsideListener$1, { onClickOutside: handleClickOutside },
|
|
4649
4661
|
React__default["default"].createElement(AnchoredOverlay, tslib.__assign({ id: id, className: classNames__default["default"]('Popover', "Popover--".concat(placement), className, {
|
|
4650
4662
|
'Popover--hidden': !show,
|
|
4651
4663
|
'Popover--prompt': variant === 'prompt'
|
|
4652
|
-
}), ref: popoverRef, role: "dialog", target: target, open: show, placement: initialPlacement, onPlacementChange: setPlacement, offset: 8
|
|
4664
|
+
}), ref: popoverRef, role: "dialog", target: target, open: show, placement: initialPlacement, onPlacementChange: setPlacement, offset: 8,
|
|
4665
|
+
// guarded by isBrowser() check
|
|
4666
|
+
// eslint-disable-next-line ssr-friendly/no-dom-globals-in-react-fc
|
|
4667
|
+
portal: portal || (document === null || document === void 0 ? void 0 : document.body) }, additionalProps, props),
|
|
4653
4668
|
React__default["default"].createElement("div", { className: "Popover__popoverArrow" }),
|
|
4654
4669
|
React__default["default"].createElement("div", { className: "Popover__borderLeft" }),
|
|
4655
|
-
variant === 'prompt' ? (React__default["default"].createElement(PromptPopoverContent, { applyButtonText: applyButtonText, onApply: onApply, closeButtonText: closeButtonText, infoText: infoText || '', onClose: handleClosePopover, infoTextId: "".concat(id, "-label") })) : (children)))
|
|
4656
|
-
// Dependent on "isBrowser" check above:
|
|
4657
|
-
// eslint-disable-next-line ssr-friendly/no-dom-globals-in-react-fc
|
|
4658
|
-
document.body);
|
|
4670
|
+
variant === 'prompt' ? (React__default["default"].createElement(PromptPopoverContent, { applyButtonText: applyButtonText, onApply: onApply, closeButtonText: closeButtonText, infoText: infoText || '', onClose: handleClosePopover, infoTextId: "".concat(id, "-label") })) : (children))));
|
|
4659
4671
|
});
|
|
4660
4672
|
Popover.displayName = 'Popover';
|
|
4661
4673
|
|
|
@@ -5070,7 +5082,7 @@ ActionListLinkItem.displayName = 'ActionListLinkItem';
|
|
|
5070
5082
|
|
|
5071
5083
|
var _a = tslib.__read(['ArrowDown', 'ArrowUp'], 2), ArrowDown = _a[0], ArrowUp = _a[1];
|
|
5072
5084
|
var ActionMenu = React.forwardRef(function (_a, ref) {
|
|
5073
|
-
var className = _a.className, style = _a.style, trigger = _a.trigger, _b = _a.placement, placement = _b === void 0 ? 'bottom-start' : _b, actionMenuList = _a.children, props = tslib.__rest(_a, ["className", "style", "trigger", "placement", "children"]);
|
|
5085
|
+
var className = _a.className, style = _a.style, trigger = _a.trigger, _b = _a.placement, placement = _b === void 0 ? 'bottom-start' : _b, actionMenuList = _a.children, portal = _a.portal, props = tslib.__rest(_a, ["className", "style", "trigger", "placement", "children", "portal"]);
|
|
5074
5086
|
var _c = tslib.__read(React.useState(false), 2), open = _c[0], setOpen = _c[1];
|
|
5075
5087
|
var _d = tslib.__read(React.useState('first'), 2), focusStrategy = _d[0], setFocusStrategy = _d[1];
|
|
5076
5088
|
var triggerRef = React.useRef(null);
|
|
@@ -5138,7 +5150,7 @@ var ActionMenu = React.forwardRef(function (_a, ref) {
|
|
|
5138
5150
|
}, [open]);
|
|
5139
5151
|
return (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
5140
5152
|
React__default["default"].createElement(ClickOutsideListener$1, { onClickOutside: handleClickOutside, mouseEvent: open ? undefined : false, touchEvent: open ? undefined : false }, actionMenuTrigger),
|
|
5141
|
-
React__default["default"].createElement(AnchoredOverlay, tslib.__assign({ ref: actionMenuRef, role: "presentation", className: classNames__default["default"]('ActionMenu', className), open: open, onOpenChange: setOpen, target: triggerRef, placement: placement, offset: 4, style: tslib.__assign({ display: !open ? 'none' : undefined }, style) }, props), React__default["default"].cloneElement(actionMenuList, {
|
|
5153
|
+
React__default["default"].createElement(AnchoredOverlay, tslib.__assign({ ref: actionMenuRef, role: "presentation", className: classNames__default["default"]('ActionMenu', className), open: open, onOpenChange: setOpen, target: triggerRef, placement: placement, offset: 4, portal: portal, style: tslib.__assign({ display: !open ? 'none' : undefined }, style) }, props), React__default["default"].cloneElement(actionMenuList, {
|
|
5142
5154
|
ref: actionMenuListRef,
|
|
5143
5155
|
role: 'menu',
|
|
5144
5156
|
onAction: handleAction,
|
package/package.json
CHANGED