Skip to content

Commit

Permalink
fix(HoverPopover): fix regression
Browse files Browse the repository at this point in the history
fix #134
  • Loading branch information
jedwards1211 committed May 20, 2024
1 parent 33eb128 commit 7643069
Show file tree
Hide file tree
Showing 2 changed files with 40 additions and 34 deletions.
37 changes: 20 additions & 17 deletions src/HoverMenu.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,23 +6,26 @@ const Menu = interopRequireDefault(_Menu)

const HoverMenu: React.ComponentType<MenuProps> = React.forwardRef(
function HoverMenu(props: MenuProps, ref): any {
const paperSlotProps = React.useCallback(
// eslint-disable-next-line @typescript-eslint/ban-types
(ownerProps: {}) => {
const base =
props.slotProps?.paper instanceof Function
? props.slotProps?.paper(ownerProps)
: props.slotProps?.paper
return {
...base,
style: {
pointerEvents: 'auto',
...base?.style,
},
} as const
},
[props.slotProps?.paper]
)
const paperSlotProps = React.useMemo(() => {
const wrapped = props.slotProps?.paper
if (wrapped instanceof Function) {
// eslint-disable-next-line @typescript-eslint/ban-types
return (ownerProps: {}) => {
const base = wrapped(ownerProps)
return {
...base,
style: {
pointerEvents: 'auto',
...base?.style,
},
} as const
}
}
return {
...wrapped,
style: { pointerEvents: 'auto', ...wrapped?.style },
} as const
}, [props.slotProps?.paper])

return (
<Menu
Expand Down
37 changes: 20 additions & 17 deletions src/HoverPopover.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,23 +6,26 @@ const Popover = interopRequireDefault(_Popover)

const HoverPopover: React.ComponentType<PopoverProps> = React.forwardRef(
function HoverPopover(props: PopoverProps, ref): any {
const paperSlotProps = React.useCallback(
// eslint-disable-next-line @typescript-eslint/ban-types
(ownerProps: {}) => {
const base =
props.slotProps?.paper instanceof Function
? props.slotProps?.paper(ownerProps)
: props.slotProps?.paper
return {
...base,
style: {
pointerEvents: 'auto',
...base?.style,
},
} as const
},
[props.slotProps?.paper]
)
const paperSlotProps = React.useMemo(() => {
const wrapped = props.slotProps?.paper
if (wrapped instanceof Function) {
// eslint-disable-next-line @typescript-eslint/ban-types
return (ownerProps: {}) => {
const base = wrapped(ownerProps)
return {
...base,
style: {
pointerEvents: 'auto',
...base?.style,
},
} as const
}
}
return {
...wrapped,
style: { pointerEvents: 'auto', ...wrapped?.style },
} as const
}, [props.slotProps?.paper])

return (
<Popover
Expand Down

0 comments on commit 7643069

Please sign in to comment.