@gechiui/block-editor
Version:
35 lines (30 loc) • 971 B
JavaScript
import { createElement } from "@gechiui/element";
/**
* GeChiUI dependencies
*/
import { useDispatch } from '@gechiui/data';
import { useEffect } from '@gechiui/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';
/** @typedef {import('@gechiui/data').GCDataRegistry} GCDataRegistry */
function BlockEditorProvider(props) {
const {
children,
settings
} = props;
const {
updateSettings
} = useDispatch(blockEditorStore);
useEffect(() => {
updateSettings(settings);
}, [settings]); // Syncs the entity provider with changes in the block-editor store.
useBlockSync(props);
return createElement(BlockRefsProvider, null, children);
}
export default withRegistryProvider(BlockEditorProvider);
//# sourceMappingURL=index.js.map