UNPKG

@wordpress/edit-post

Version:
77 lines (61 loc) 1.88 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.MetaBoxesSection = MetaBoxesSection; exports.default = void 0; var _element = require("@wordpress/element"); var _lodash = require("lodash"); var _i18n = require("@wordpress/i18n"); var _data = require("@wordpress/data"); var _section = _interopRequireDefault(require("./section")); var _options = require("./options"); var _store = require("../../store"); /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ function MetaBoxesSection({ areCustomFieldsRegistered, metaBoxes, ...sectionProps }) { // The 'Custom Fields' meta box is a special case that we handle separately. const thirdPartyMetaBoxes = (0, _lodash.filter)(metaBoxes, ({ id }) => id !== 'postcustom'); if (!areCustomFieldsRegistered && thirdPartyMetaBoxes.length === 0) { return null; } return (0, _element.createElement)(_section.default, sectionProps, areCustomFieldsRegistered && (0, _element.createElement)(_options.EnableCustomFieldsOption, { label: (0, _i18n.__)('Custom fields') }), (0, _lodash.map)(thirdPartyMetaBoxes, ({ id, title }) => (0, _element.createElement)(_options.EnablePanelOption, { key: id, label: title, panelName: `meta-box-${id}` }))); } var _default = (0, _data.withSelect)(select => { const { getEditorSettings } = select('core/editor'); const { getAllMetaBoxes } = select(_store.store); return { // This setting should not live in the block editor's store. areCustomFieldsRegistered: getEditorSettings().enableCustomFields !== undefined, metaBoxes: getAllMetaBoxes() }; })(MetaBoxesSection); exports.default = _default; //# sourceMappingURL=meta-boxes-section.js.map