UNPKG

@wordpress/block-editor

Version:
61 lines (48 loc) 1.44 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.useBlockMovingModeClassNames = useBlockMovingModeClassNames; var _classnames = _interopRequireDefault(require("classnames")); var _data = require("@wordpress/data"); var _store = require("../../../store"); /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ /** * Returns the class names used for block moving mode. * * @param {string} clientId The block client ID to insert above. * * @return {string} The class names. */ function useBlockMovingModeClassNames(clientId) { return (0, _data.useSelect)(select => { const { hasBlockMovingClientId, canInsertBlockType, getBlockName, getBlockRootClientId, isBlockSelected } = select(_store.store); // The classes are only relevant for the selected block. Avoid // re-rendering all blocks! if (!isBlockSelected(clientId)) { return; } const movingClientId = hasBlockMovingClientId(); if (!movingClientId) { return; } return (0, _classnames.default)('is-block-moving-mode', { 'can-insert-moving-block': canInsertBlockType(getBlockName(movingClientId), getBlockRootClientId(clientId)) }); }, [clientId]); } //# sourceMappingURL=use-block-moving-mode-class-names.js.map