UNPKG

@wordpress/block-editor

Version:
44 lines (40 loc) 1.44 kB
import _extends from "@babel/runtime/helpers/esm/extends"; import { createElement } from "@wordpress/element"; /** * WordPress dependencies */ import { useDispatch } from '@wordpress/data'; import { useEffect } from '@wordpress/element'; /** * Internal dependencies */ import withRegistryProvider from './with-registry-provider'; import useBlockSync from './use-block-sync'; import { store as blockEditorStore } from '../../store'; import { BlockRefsProvider } from './block-refs-provider'; import { unlock } from '../../lock-unlock'; /** @typedef {import('@wordpress/data').WPDataRegistry} WPDataRegistry */ export const ExperimentalBlockEditorProvider = withRegistryProvider(props => { const { children, settings, stripExperimentalSettings = false } = props; const { __experimentalUpdateSettings } = unlock(useDispatch(blockEditorStore)); useEffect(() => { __experimentalUpdateSettings({ ...settings, __internalIsInitialized: true }, stripExperimentalSettings); }, [settings]); // Syncs the entity provider with changes in the block-editor store. useBlockSync(props); return createElement(BlockRefsProvider, null, children); }); export const BlockEditorProvider = props => { return createElement(ExperimentalBlockEditorProvider, _extends({}, props, { stripExperimentalSettings: true }), props.children); }; export default BlockEditorProvider; //# sourceMappingURL=index.js.map