UNPKG

@wordpress/block-editor

Version:
85 lines (67 loc) 1.83 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _element = require("@wordpress/element"); var _icons = require("@wordpress/icons"); var _components = require("@wordpress/components"); var _i18n = require("@wordpress/i18n"); /** * WordPress dependencies */ const blocksTab = { name: 'blocks', /* translators: Blocks tab title in the block inserter. */ title: (0, _i18n.__)('Blocks') }; const patternsTab = { name: 'patterns', /* translators: Patterns tab title in the block inserter. */ title: (0, _i18n.__)('Patterns') }; const reusableBlocksTab = { name: 'reusable', /* translators: Reusable blocks tab title in the block inserter. */ title: (0, _i18n.__)('Reusable'), icon: _icons.symbol }; const mediaTab = { name: 'media', /* translators: Media tab title in the block inserter. */ title: (0, _i18n.__)('Media') }; function InserterTabs({ children, showPatterns = false, showReusableBlocks = false, showMedia = false, onSelect, prioritizePatterns }) { const tabs = (0, _element.useMemo)(() => { const tempTabs = []; if (prioritizePatterns && showPatterns) { tempTabs.push(patternsTab); } tempTabs.push(blocksTab); if (!prioritizePatterns && showPatterns) { tempTabs.push(patternsTab); } if (showMedia) { tempTabs.push(mediaTab); } if (showReusableBlocks) { tempTabs.push(reusableBlocksTab); } return tempTabs; }, [prioritizePatterns, showPatterns, showReusableBlocks, showMedia]); return (0, _element.createElement)(_components.TabPanel, { className: "block-editor-inserter__tabs", tabs: tabs, onSelect: onSelect }, children); } var _default = InserterTabs; exports.default = _default; //# sourceMappingURL=tabs.js.map