UNPKG

@wordpress/block-editor

Version:
55 lines (51 loc) 1.69 kB
import { createElement } from "@wordpress/element"; /** * WordPress dependencies */ import { TabPanel } from '@wordpress/components'; /** * Internal dependencies */ import { TAB_SETTINGS, TAB_STYLES, TAB_LIST_VIEW } from './utils'; import SettingsTab from './settings-tab'; import StylesTab from './styles-tab'; import InspectorControls from '../inspector-controls'; import useIsListViewTabDisabled from './use-is-list-view-tab-disabled'; export default function InspectorControlsTabs({ blockName, clientId, hasBlockStyles, tabs }) { // The tabs panel will mount before fills are rendered to the list view // slot. This means the list view tab isn't initially included in the // available tabs so the panel defaults selection to the settings tab // which at the time is the first tab. This check allows blocks known to // include the list view tab to set it as the tab selected by default. const initialTabName = !useIsListViewTabDisabled(blockName) ? TAB_LIST_VIEW.name : undefined; return createElement(TabPanel, { className: "block-editor-block-inspector__tabs", tabs: tabs, initialTabName: initialTabName, key: clientId }, tab => { if (tab.name === TAB_SETTINGS.name) { return createElement(SettingsTab, { showAdvancedControls: !!blockName }); } if (tab.name === TAB_STYLES.name) { return createElement(StylesTab, { blockName: blockName, clientId: clientId, hasBlockStyles: hasBlockStyles }); } if (tab.name === TAB_LIST_VIEW.name) { return createElement(InspectorControls.Slot, { group: "list" }); } }); } //# sourceMappingURL=index.js.map