import {ExtractProps, createSubcomponent} from '@workday/canvas-kit-react/common'; import {Popper, usePopupPopper} from '@workday/canvas-kit-react/popup'; import {useMenuModel} from './useMenuModel'; export interface MenuPopperProps extends ExtractProps {} export const useMenuPopper = usePopupPopper; /** * The `[skidding, distance]` offset every menu popper sits at relative to its anchor. */ export const menuPopperOffset: [number, number] = [0, 8]; // We moved this out of the component function to prevent rebuilding this object on re-renders. export const defaultMenuPopperOptions = { modifiers: [ { name: 'offset', options: { offset: () => menuPopperOffset, }, }, ], }; export const MenuPopper = createSubcomponent('div')({ modelHook: useMenuModel, elemPropsHook: useMenuPopper, })(({children, ...elemProps}) => { return ( {children} ); });