UNPKG

@wordpress/edit-post

Version:
103 lines (81 loc) 2.14 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _element = require("@wordpress/element"); var _classnames = _interopRequireDefault(require("classnames")); var _components = require("@wordpress/components"); var _data = require("@wordpress/data"); var _store = require("../../../store"); /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ class MetaBoxesArea extends _element.Component { /** * @inheritdoc */ constructor() { super(...arguments); this.bindContainerNode = this.bindContainerNode.bind(this); } /** * @inheritdoc */ componentDidMount() { this.form = document.querySelector('.metabox-location-' + this.props.location); if (this.form) { this.container.appendChild(this.form); } } /** * Get the meta box location form from the original location. */ componentWillUnmount() { if (this.form) { document.querySelector('#metaboxes').appendChild(this.form); } } /** * Binds the metabox area container node. * * @param {Element} node DOM Node. */ bindContainerNode(node) { this.container = node; } /** * @inheritdoc */ render() { const { location, isSaving } = this.props; const classes = (0, _classnames.default)('edit-post-meta-boxes-area', `is-${location}`, { 'is-loading': isSaving }); return (0, _element.createElement)("div", { className: classes }, isSaving && (0, _element.createElement)(_components.Spinner, null), (0, _element.createElement)("div", { className: "edit-post-meta-boxes-area__container", ref: this.bindContainerNode }), (0, _element.createElement)("div", { className: "edit-post-meta-boxes-area__clear" })); } } var _default = (0, _data.withSelect)(select => { return { isSaving: select(_store.store).isSavingMetaBoxes() }; })(MetaBoxesArea); exports.default = _default; //# sourceMappingURL=index.js.map