@mantine/core
Version:
React components library focused on usability, accessibility and developer experience
45 lines (44 loc) • 2.12 kB
JavaScript
"use client";
require("../../../_virtual/_rolldown/runtime.cjs");
const require_create_event_handler = require("../../../core/utils/create-event-handler/create-event-handler.cjs");
const require_use_props = require("../../../core/MantineProvider/use-props/use-props.cjs");
const require_factory = require("../../../core/factory/factory.cjs");
const require_Popover = require("../../Popover/Popover.cjs");
const require_Menu_context = require("../Menu.context.cjs");
const require_Menu_module = require("../Menu.module.cjs");
const require_MenuSub_context = require("../MenuSub/MenuSub.context.cjs");
let react = require("react");
let _mantine_hooks = require("@mantine/hooks");
let react_jsx_runtime = require("react/jsx-runtime");
//#region packages/@mantine/core/src/components/Menu/MenuSubDropdown/MenuSubDropdown.tsx
const MenuSubDropdown = require_factory.factory((props) => {
const { classNames, className, style, styles, vars, onMouseEnter, onMouseLeave, onKeyDown, children, ref, ...others } = require_use_props.useProps("MenuSubDropdown", null, props);
const wrapperRef = (0, react.useRef)(null);
const ctx = require_Menu_context.useMenuContext();
const subCtx = (0, react.use)(require_MenuSub_context.SubMenuContext);
const handleMouseEnter = require_create_event_handler.createEventHandler(onMouseEnter, subCtx?.open);
const handleMouseLeave = require_create_event_handler.createEventHandler(onMouseLeave, subCtx?.close);
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Popover.Popover.Dropdown, {
...others,
onMouseEnter: handleMouseEnter,
onMouseLeave: handleMouseLeave,
role: "menu",
"aria-orientation": "vertical",
ref: (0, _mantine_hooks.useMergedRef)(ref, wrapperRef),
...ctx.getStyles("dropdown", {
className,
style,
styles,
classNames,
withStaticClass: false
}),
tabIndex: -1,
"data-menu-dropdown": true,
children
});
});
MenuSubDropdown.classes = require_Menu_module.default;
MenuSubDropdown.displayName = "@mantine/core/MenuSubDropdown";
//#endregion
exports.MenuSubDropdown = MenuSubDropdown;
//# sourceMappingURL=MenuSubDropdown.cjs.map