39 lines
1.3 KiB
JavaScript
39 lines
1.3 KiB
JavaScript
import { jsx as _jsx, jsxs as _jsxs } from "@fluentui/react-jsx-runtime/jsx-runtime";
|
|
import * as React from 'react';
|
|
import { assertSlots } from '@fluentui/react-utilities';
|
|
import { MotionRefForwarder } from '@fluentui/react-motion';
|
|
import { PopoverContext } from '../../popoverContext';
|
|
/**
|
|
* Render the final JSX of Popover
|
|
*/ export const renderPopover_unstable = (state)=>{
|
|
assertSlots(state);
|
|
const { appearance, arrowRef, contentRef, inline, mountNode, open, openOnContext, openOnHover, setOpen, size, toggleOpen, trapFocus, triggerRef, withArrow, inertTrapFocus } = state;
|
|
return /*#__PURE__*/ _jsxs(PopoverContext.Provider, {
|
|
value: {
|
|
appearance,
|
|
arrowRef,
|
|
contentRef,
|
|
inline,
|
|
mountNode,
|
|
open,
|
|
openOnContext,
|
|
openOnHover,
|
|
setOpen,
|
|
toggleOpen,
|
|
triggerRef,
|
|
size,
|
|
trapFocus,
|
|
inertTrapFocus,
|
|
withArrow
|
|
},
|
|
children: [
|
|
state.popoverTrigger,
|
|
state.popoverSurface && /*#__PURE__*/ _jsx(state.surfaceMotion, {
|
|
children: /*#__PURE__*/ _jsx(MotionRefForwarder, {
|
|
children: state.popoverSurface
|
|
})
|
|
})
|
|
]
|
|
});
|
|
};
|