UNPKG

@wordpress/block-editor

Version:
48 lines (47 loc) 1.73 kB
// packages/block-editor/src/components/block-visibility/block-visibility-info.js import { Icon, __experimentalText as Text, __experimentalHStack as HStack, privateApis as componentsPrivateApis } from "@wordpress/components"; import { useSelect } from "@wordpress/data"; import { __ } from "@wordpress/i18n"; import { unseen } from "@wordpress/icons"; import { unlock } from "../../lock-unlock.mjs"; import { store as blockEditorStore } from "../../store/index.mjs"; import { jsx, jsxs } from "react/jsx-runtime"; var { Badge } = unlock(componentsPrivateApis); function BlockVisibilityInfo({ clientId }) { const { isBlockHidden, hasHiddenParent } = useSelect( (select) => { if (!clientId) { return { isBlockHidden: false, hasHiddenParent: false }; } const { isBlockHidden: _isBlockHidden, getBlockParents } = unlock( select(blockEditorStore) ); const blockHidden = _isBlockHidden(clientId); const parents = getBlockParents(clientId); const parentHidden = parents.some( (parentId) => _isBlockHidden(parentId) ); return { isBlockHidden: blockHidden, hasHiddenParent: parentHidden }; }, [clientId] ); if (!(isBlockHidden || hasHiddenParent)) { return null; } return /* @__PURE__ */ jsx(Badge, { className: "block-editor-block-visibility-info", children: /* @__PURE__ */ jsxs(HStack, { spacing: 2, justify: "start", children: [ /* @__PURE__ */ jsx(Icon, { icon: unseen }), /* @__PURE__ */ jsx(Text, { children: isBlockHidden ? __("Block is hidden") : __("Parent block is hidden") }) ] }) }); } export { BlockVisibilityInfo as default }; //# sourceMappingURL=block-visibility-info.mjs.map