UNPKG

@wordpress/block-editor

Version:
48 lines (42 loc) 1.5 kB
import { createElement } from "@wordpress/element"; /** * WordPress dependencies */ import { Disabled } from '@wordpress/components'; import { useResizeObserver, pure } from '@wordpress/compose'; /** * Internal dependencies */ import BlockList from '../block-list'; // This is used to avoid rendering the block list if the sizes change. let MemoizedBlockList; function AutoBlockPreview({ viewportWidth, __experimentalPadding }) { const [containerResizeListener, { width: containerWidth }] = useResizeObserver(); const [containtResizeListener, { height: contentHeight }] = useResizeObserver(); // Initialize on render instead of module top level, to avoid circular dependency issues. MemoizedBlockList = MemoizedBlockList || pure(BlockList); const scale = (containerWidth - 2 * __experimentalPadding) / viewportWidth; return createElement("div", { className: "block-editor-block-preview__container editor-styles-wrapper", "aria-hidden": true, style: { height: contentHeight * scale + 2 * __experimentalPadding } }, containerResizeListener, createElement(Disabled, { style: { transform: `scale(${scale})`, width: viewportWidth, left: __experimentalPadding, right: __experimentalPadding, top: __experimentalPadding }, className: "block-editor-block-preview__content" }, containtResizeListener, createElement(MemoizedBlockList, null))); } export default AutoBlockPreview; //# sourceMappingURL=auto.js.map