@wordpress/block-editor
Version:
70 lines (56 loc) • 1.81 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _element = require("@wordpress/element");
var _data = require("@wordpress/data");
var _inbetween = _interopRequireDefault(require("../block-popover/inbetween"));
var _store = require("../../store");
var _inserter = _interopRequireDefault(require("../inserter"));
/**
* WordPress dependencies
*/
/**
* Internal dependencies
*/
function ZoomOutModeInserters({
__unstableContentRef
}) {
const [isReady, setIsReady] = (0, _element.useState)(false);
const blockOrder = (0, _data.useSelect)(select => {
return select(_store.store).getBlockOrder();
}, []); // Defer the initial rendering to avoid the jumps due to the animation.
(0, _element.useEffect)(() => {
const timeout = setTimeout(() => {
setIsReady(true);
}, 500);
return () => {
clearTimeout(timeout);
};
}, []);
if (!isReady) {
return null;
}
return blockOrder.map((clientId, index) => {
if (index === blockOrder.length - 1) {
return null;
}
return (0, _element.createElement)(_inbetween.default, {
key: clientId,
previousClientId: clientId,
nextClientId: blockOrder[index + 1],
__unstableContentRef: __unstableContentRef
}, (0, _element.createElement)("div", {
className: "block-editor-block-list__insertion-point-inserter is-with-inserter"
}, (0, _element.createElement)(_inserter.default, {
position: "bottom center",
clientId: blockOrder[index + 1],
__experimentalIsQuick: true
})));
});
}
var _default = ZoomOutModeInserters;
exports.default = _default;
//# sourceMappingURL=zoom-out-mode-inserters.js.map