@wordpress/components
Version:
UI components for WordPress.
28 lines (23 loc) • 730 B
text/typescript
/**
* WordPress dependencies
*/
import { createContext, useContext } from '@wordpress/element';
/**
* Internal dependencies
*/
import type { ToolsPanelContext as ToolsPanelContextType } from './types';
const noop = () => undefined;
export const ToolsPanelContext = createContext< ToolsPanelContextType >( {
menuItems: { default: {}, optional: {} },
hasMenuItems: false,
isResetting: false,
shouldRenderPlaceholderItems: false,
registerPanelItem: noop,
deregisterPanelItem: noop,
flagItemCustomization: noop,
registerResetAllFilter: noop,
deregisterResetAllFilter: noop,
areAllOptionalControlsHidden: true,
} );
export const useToolsPanelContext = () =>
useContext< ToolsPanelContextType >( ToolsPanelContext );