@sanity/desk-tool
Version:
Tool for managing all sorts of content in a structured manner
37 lines (36 loc) • 1.36 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.ModalDialog = ModalDialog;
var _autoId = require("@reach/auto-id");
var _components = require("@sanity/base/components");
var _ui = require("@sanity/ui");
var _react = _interopRequireDefault(require("react"));
var _constants = require("./constants");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function ModalDialog(props) {
var dialog = props.dialog;
var dialogId = (0, _autoId.useId)() || '';
var footer = dialog.footer && /*#__PURE__*/_react.default.createElement(_ui.Box, {
paddingX: 4,
paddingY: 3
}, dialog.footer);
return /*#__PURE__*/_react.default.createElement(_components.LegacyLayerProvider, {
zOffset: "fullscreen"
}, /*#__PURE__*/_react.default.createElement(_ui.Dialog, {
__unstable_hideCloseButton: dialog.showCloseButton === false,
footer: footer,
header: dialog.header,
id: dialogId
// eslint-disable-next-line react/jsx-handler-names
,
onClose: dialog.onClose
// eslint-disable-next-line react/jsx-handler-names
,
onClickOutside: dialog.onClose,
width: dialog.width === undefined ? 1 : _constants.DIALOG_WIDTH_TO_UI_WIDTH[dialog.width]
}, /*#__PURE__*/_react.default.createElement(_ui.Box, {
padding: 4
}, dialog.content)));
}