@engie-group/fluid-design-system-react
Version:
Fluid Design System React
20 lines (17 loc) • 1.31 kB
JavaScript
import { jsx } from 'react/jsx-runtime';
import { FloatingList } from '../../../node_modules/.pnpm/@floating-ui_react@0.27.3_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/@floating-ui/react/dist/floating-ui.react.js';
import React__default from 'react';
import { Utils } from '../../../utils/util.js';
import '../../popover/anchor/NJPopoverAnchor.js';
import { NJPopoverContent } from '../../popover/content/NJPopoverContent.js';
import '../../popover/NJPopoverContext.js';
import '../../popover/NJPopoverInteractionContext.js';
import { useMenuContext } from '../NJMenuContext.js';
const NJMenuDropdown = React__default.forwardRef((props, forwardedRef) => {
const { children, className, scrollable, inline, ...htmlProps } = props;
const classes = Utils.classNames(className, 'nj-menu', { ['nj-menu--scrollable']: scrollable });
const menuContext = useMenuContext();
return (jsx(FloatingList, { elementsRef: menuContext.listElementsRef, labelsRef: menuContext.listLabelsRef, children: jsx(NJPopoverContent, { inline: inline, focusManagerProps: { modal: false, initialFocus: 0 }, children: jsx("div", { tabIndex: -1, ...htmlProps, ref: forwardedRef, className: classes, children: children }) }) }));
});
NJMenuDropdown.displayName = 'NJMenuDropdown';
export { NJMenuDropdown };