@pantheon-systems/design-toolkit-react
Version:
Pantheon's React Design Toolkit
41 lines (38 loc) • 1.25 kB
JavaScript
import PropTypes from 'prop-types';
import { useContext, useRef, useEffect } from 'react';
import ModalContext from './ModalContext.js';
import { jsx } from 'react/jsx-runtime';
var ModalContent = function ModalContent(_ref) {
var children = _ref.children,
className = _ref.className;
var _useContext = useContext(ModalContext),
setIsScrollableHeight = _useContext.setIsScrollableHeight;
var modalContentRef = useRef();
useEffect(function () {
var modalContentElement = modalContentRef.current;
if (modalContentElement && modalContentElement.offsetHeight < modalContentElement.scrollHeight) {
setIsScrollableHeight(true);
}
return function () {
setIsScrollableHeight(false);
};
}, [setIsScrollableHeight]);
return /*#__PURE__*/jsx("div", {
className: "h-full py-4 px-6 ".concat(className || ''),
ref: modalContentRef,
children: children
});
};
ModalContent.defaultProps = {
className: ''
};
ModalContent.propTypes = {
children: PropTypes.node.isRequired,
/**
* Additional CSS classes to add to the content container
*/
className: PropTypes.string
};
var ModalContent$1 = ModalContent;
export { ModalContent$1 as default };
//# sourceMappingURL=ModalContent.js.map