@nex-ui/react
Version:
🎉 A beautiful, modern, and reliable React component library.
46 lines (42 loc) • 1.14 kB
JavaScript
"use client";
;
var jsxRuntime = require('react/jsx-runtime');
var react = require('react');
var system = require('@nex-ui/system');
var ModalContext = require('./ModalContext.cjs');
var useSlot = require('../utils/useSlot.cjs');
const recipe = system.defineRecipe({
base: {
w: 'full',
boxSizing: 'border-box',
height: '100%',
wordBreak: 'break-word'
}
});
const style = recipe();
const useAriaProps = (props)=>{
const { modalBodyId } = ModalContext.useModal();
const bodyId = props.id ?? modalBodyId;
return react.useMemo(()=>{
return {
id: bodyId
};
}, [
bodyId
]);
};
const ModalBody = (inProps)=>{
const props = inProps;
const ariaProps = useAriaProps(props);
const [ModalBodyRoot, getModalBodyRootProps] = useSlot.useSlot({
style,
elementType: 'div',
a11y: ariaProps,
externalForwardedProps: props
});
return /*#__PURE__*/ jsxRuntime.jsx(ModalBodyRoot, {
...getModalBodyRootProps()
});
};
ModalBody.displayName = 'ModalBody';
exports.ModalBody = ModalBody;