@sendbird/uikit-react
Version:
Sendbird UIKit for React: A feature-rich and customizable chat UI kit with messaging, channel management, and user authentication.
53 lines (47 loc) • 2.66 kB
JavaScript
;
var React = require('react');
var reactDom = require('react-dom');
require('../hooks/useModal.js');
var useSendbird = require('../chunks/bundle-Bq15P9qk.js');
var ui_Modal = require('../chunks/bundle-DZlJeh0V.js');
require('../chunks/bundle-Conb-pOy.js');
require('../chunks/bundle-Dobj18FB.js');
require('../chunks/bundle-CkQrhwR6.js');
require('../chunks/bundle-DPDyqKIJ.js');
require('../chunks/bundle-BbrBawlX.js');
require('../chunks/bundle-Cyl6_qLo.js');
require('../chunks/bundle-Fv6PNPGZ.js');
require('./IconButton.js');
require('./Button.js');
require('../chunks/bundle-zgmRG2KL.js');
require('./Icon.js');
require('../chunks/bundle-t8BQsgL5.js');
require('../chunks/bundle-B19RHFpR.js');
require('../chunks/bundle-Cfh78Xnm.js');
require('@sendbird/chat');
require('@sendbird/chat/groupChannel');
require('@sendbird/chat/openChannel');
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
var React__default = /*#__PURE__*/_interopDefaultCompat(React);
var BottomSheet = function (props) {
var _a;
var _b = props.className, className = _b === void 0 ? '' : _b, children = props.children, onBackdropClick = props.onBackdropClick;
var logger = useSendbird.useSendbird().state.config.logger;
// https://github.com/testing-library/react-testing-library/issues/62#issuecomment-438653348
var portalRoot = React.useRef();
portalRoot.current = document.getElementById(ui_Modal.MODAL_ROOT);
if (!portalRoot.current) {
portalRoot.current = document.createElement('div');
portalRoot.current.setAttribute('id', ui_Modal.MODAL_ROOT);
document.body.appendChild(portalRoot.current);
(_a = logger === null || logger === void 0 ? void 0 : logger.warning) === null || _a === void 0 ? void 0 : _a.call(logger, '@sendbird/uikit-react/ui/BottomSheet | Should put a ModalRoot to use the BottomSheet.');
}
return reactDom.createPortal(React__default.default.createElement("div", { className: "".concat(className, " sendbird-bottomsheet") },
React__default.default.createElement("div", { className: "sendbird-bottomsheet__content", role: 'dialog', "aria-modal": 'true', "aria-expanded": 'true' }, children),
React__default.default.createElement("div", { className: "sendbird-bottomsheet__backdrop", onClick: function (e) {
e === null || e === void 0 ? void 0 : e.stopPropagation();
onBackdropClick === null || onBackdropClick === void 0 ? void 0 : onBackdropClick();
} })), portalRoot.current);
};
module.exports = BottomSheet;
//# sourceMappingURL=BottomSheet.js.map