@sanity/form-builder
Version:
Sanity form builder
62 lines (60 loc) • 2.19 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.EditPortal = EditPortal;
var _react = _interopRequireDefault(require("react"));
var _ui = require("@sanity/ui");
var _presence = require("@sanity/base/presence");
var _PopoverDialog = require("./transitional/PopoverDialog");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var PRESENCE_MARGINS = [0, 0, 1, 0];
function EditPortal(props) {
var type = props.type,
id = props.id,
onClose = props.onClose,
children = props.children,
referenceElement = props.legacy_referenceElement,
header = props.header;
if (type === 'inline') {
return children;
}
if (type === 'fullscreen') {
return /*#__PURE__*/_react.default.createElement(_ui.Layer, null, /*#__PURE__*/_react.default.createElement(_ui.Dialog, {
width: "auto",
id: id,
onClose: onClose,
header: header,
__unstable_autoFocus: false
}, /*#__PURE__*/_react.default.createElement(_presence.PresenceOverlay, {
margins: PRESENCE_MARGINS
}, /*#__PURE__*/_react.default.createElement(_ui.Box, {
padding: 4
}, children))));
}
// @ts-expect-error fold is deprecated and should not be visible though types
if (type === 'popover' || type === 'fold') {
// @ts-expect-error fold is deprecated and should not be visible though types
if (type === 'fold') {
console.warn("The option named `editItem: \"fold\"` is no longer supported");
}
return /*#__PURE__*/_react.default.createElement(_PopoverDialog.PopoverDialog, {
onClose: onClose,
referenceElement: referenceElement,
title: header
}, /*#__PURE__*/_react.default.createElement(_presence.PresenceOverlay, {
margins: PRESENCE_MARGINS
}, children));
}
return /*#__PURE__*/_react.default.createElement(_ui.Dialog, {
width: 1,
id: id,
onClose: onClose,
header: header,
__unstable_autoFocus: false
}, /*#__PURE__*/_react.default.createElement(_presence.PresenceOverlay, {
margins: PRESENCE_MARGINS
}, /*#__PURE__*/_react.default.createElement(_ui.Box, {
padding: 4
}, children)));
}