UNPKG

@wordpress/editor

Version:
77 lines (74 loc) 2.52 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _data = require("@wordpress/data"); var _coreData = require("@wordpress/core-data"); var _components = require("@wordpress/components"); var _i18n = require("@wordpress/i18n"); var _constants = require("../../store/constants"); var _editorInterface = _interopRequireDefault(require("../editor-interface")); var _provider = require("../provider"); var _sidebar = _interopRequireDefault(require("../sidebar")); var _jsxRuntime = require("react/jsx-runtime"); /** * WordPress dependencies */ /** * Internal dependencies */ function Editor({ postType, postId, templateId, settings, children, initialEdits, // This could be part of the settings. onActionPerformed, // The following abstractions are not ideal but necessary // to account for site editor and post editor differences for now. extraContent, extraSidebarPanels, ...props }) { const { post, template, hasLoadedPost } = (0, _data.useSelect)(select => { const { getEntityRecord, hasFinishedResolution } = select(_coreData.store); return { post: getEntityRecord('postType', postType, postId), template: templateId ? getEntityRecord('postType', _constants.TEMPLATE_POST_TYPE, templateId) : undefined, hasLoadedPost: hasFinishedResolution('getEntityRecord', ['postType', postType, postId]) }; }, [postType, postId, templateId]); return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, { children: [hasLoadedPost && !post && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Notice, { status: "warning", isDismissible: false, children: (0, _i18n.__)("You attempted to edit an item that doesn't exist. Perhaps it was deleted?") }), !!post && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_provider.ExperimentalEditorProvider, { post: post, __unstableTemplate: template, settings: settings, initialEdits: initialEdits, useSubRegistry: false, children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_editorInterface.default, { ...props, children: extraContent }), children, /*#__PURE__*/(0, _jsxRuntime.jsx)(_sidebar.default, { onActionPerformed: onActionPerformed, extraPanels: extraSidebarPanels })] })] }); } var _default = exports.default = Editor; //# sourceMappingURL=index.js.map