UNPKG

@wordpress/editor

Version:
78 lines (74 loc) 2.38 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = PostFeaturedImagePanel; var _i18n = require("@wordpress/i18n"); var _components = require("@wordpress/components"); var _data = require("@wordpress/data"); var _coreData = require("@wordpress/core-data"); var _store = require("../../store"); var _index = _interopRequireDefault(require("./index")); var _check = _interopRequireDefault(require("./check")); var _jsxRuntime = require("react/jsx-runtime"); /** * WordPress dependencies */ /** * Internal dependencies */ const PANEL_NAME = 'featured-image'; /** * Renders the panel for the post featured image. * * @param {Object} props Props. * @param {boolean} props.withPanelBody Whether to include the panel body. Default true. * * @return {Component|null} The component to be rendered. * Return Null if the editor panel is disabled for featured image. */ function PostFeaturedImagePanel({ withPanelBody = true }) { var _postType$labels$feat; const { postType, isEnabled, isOpened } = (0, _data.useSelect)(select => { const { getEditedPostAttribute, isEditorPanelEnabled, isEditorPanelOpened } = select(_store.store); const { getPostType } = select(_coreData.store); return { postType: getPostType(getEditedPostAttribute('type')), isEnabled: isEditorPanelEnabled(PANEL_NAME), isOpened: isEditorPanelOpened(PANEL_NAME) }; }, []); const { toggleEditorPanelOpened } = (0, _data.useDispatch)(_store.store); if (!isEnabled) { return null; } if (!withPanelBody) { return /*#__PURE__*/(0, _jsxRuntime.jsx)(_check.default, { children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.default, {}) }); } return /*#__PURE__*/(0, _jsxRuntime.jsx)(_check.default, { children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.PanelBody, { title: (_postType$labels$feat = postType?.labels?.featured_image) !== null && _postType$labels$feat !== void 0 ? _postType$labels$feat : (0, _i18n.__)('Featured image'), opened: isOpened, onToggle: () => toggleEditorPanelOpened(PANEL_NAME), children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.default, {}) }) }); } //# sourceMappingURL=panel.js.map