@deque/cauldron-react 6.25.0 → 6.25.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.
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
type ActionMenuTriggerProps = Pick<React.HTMLAttributes<HTMLButtonElement>, 'children' | 'onClick' | 'onKeyDown' | 'aria-expanded' | 'aria-haspopup'> & {
|
|
2
|
+
type ActionMenuTriggerProps = Pick<React.HTMLAttributes<HTMLButtonElement>, 'children' | 'onClick' | 'onKeyDown' | 'aria-expanded' | 'aria-haspopup' | 'aria-controls'> & {
|
|
3
3
|
ref: React.RefObject<HTMLButtonElement>;
|
|
4
4
|
};
|
|
5
5
|
type ActionMenuTriggerFunction = (props: ActionMenuTriggerProps, open: boolean) => React.ReactElement;
|
package/lib/index.js
CHANGED
|
@@ -5317,6 +5317,7 @@ var ActionMenu = React.forwardRef(function (_a, ref) {
|
|
|
5317
5317
|
var actionMenuRef = useSharedRef(ref);
|
|
5318
5318
|
var actionMenuListRef = useSharedRef(actionMenuList.props.ref);
|
|
5319
5319
|
var _f = tslib.__read(nextId.useId(1, 'menu-trigger'), 1), triggerId = _f[0];
|
|
5320
|
+
var _g = tslib.__read(nextId.useId(1, 'menu'), 1), menuId = _g[0];
|
|
5320
5321
|
var handleTriggerClick = React.useCallback(function (event) {
|
|
5321
5322
|
// istanbul ignore else
|
|
5322
5323
|
if (!event.defaultPrevented) {
|
|
@@ -5350,6 +5351,9 @@ var ActionMenu = React.forwardRef(function (_a, ref) {
|
|
|
5350
5351
|
setOpen(false);
|
|
5351
5352
|
}
|
|
5352
5353
|
}, []);
|
|
5354
|
+
var handleOverlayBlur = React.useCallback(function () {
|
|
5355
|
+
setOpen(false);
|
|
5356
|
+
}, []);
|
|
5353
5357
|
var handleAction = React.useCallback(function (key, event) {
|
|
5354
5358
|
// istanbul ignore else
|
|
5355
5359
|
if (!event.defaultPrevented) {
|
|
@@ -5369,13 +5373,16 @@ var ActionMenu = React.forwardRef(function (_a, ref) {
|
|
|
5369
5373
|
(_c = triggerRef.current) === null || _c === void 0 ? void 0 : _c.focus();
|
|
5370
5374
|
}
|
|
5371
5375
|
}, [open]);
|
|
5372
|
-
var
|
|
5376
|
+
var hidden = renderInTrigger && !open;
|
|
5377
|
+
var overlay = (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), "aria-hidden": hidden, onBlur: handleOverlayBlur }, props), React__default["default"].cloneElement(actionMenuList, {
|
|
5373
5378
|
ref: actionMenuListRef,
|
|
5379
|
+
id: menuId,
|
|
5374
5380
|
role: 'menu',
|
|
5375
5381
|
onAction: handleAction,
|
|
5376
5382
|
'aria-labelledby': triggerId,
|
|
5377
5383
|
focusStrategy: focusStrategy,
|
|
5378
|
-
focusDisabledOptions: true
|
|
5384
|
+
focusDisabledOptions: true,
|
|
5385
|
+
hidden: hidden
|
|
5379
5386
|
})));
|
|
5380
5387
|
var triggerProps = React.useMemo(function () {
|
|
5381
5388
|
return {
|
|
@@ -5384,9 +5391,10 @@ var ActionMenu = React.forwardRef(function (_a, ref) {
|
|
|
5384
5391
|
onClick: handleTriggerClick,
|
|
5385
5392
|
onKeyDown: handleTriggerKeyDown,
|
|
5386
5393
|
'aria-expanded': open,
|
|
5387
|
-
'aria-haspopup': 'menu'
|
|
5394
|
+
'aria-haspopup': 'menu',
|
|
5395
|
+
'aria-controls': menuId
|
|
5388
5396
|
};
|
|
5389
|
-
}, [handleTriggerClick, open]);
|
|
5397
|
+
}, [handleTriggerClick, open, menuId]);
|
|
5390
5398
|
if (renderInTrigger) {
|
|
5391
5399
|
// istanbul ignore next
|
|
5392
5400
|
if (portal && process.env.NODE_ENV !== 'production') {
|