/// import React from 'react'; import ReactDOM from 'react-dom'; import { SlotFillProvider } from '@wordpress/components'; import { register, select } from '@wordpress/data'; import { store } from '../data'; import AppComponent from './containers/App'; import './index.scss'; // Register core blocks for BlockPreview parsing in admin context. // Uses WordPress global since @wordpress/block-library isn't bundled. if ( window.wp?.blockLibrary?.registerCoreBlocks ) { window.wp.blockLibrary.registerCoreBlocks(); } // Set up redux store (only if not already registered). if ( ! select( 'accelerate' ) ) { register( store ); } const root = document.getElementById( 'altis-analytics-root' ); // eslint-disable-next-line react/no-render-return-value const render = ( App: typeof AppComponent ) => { if ( ! root ) { return; } ReactDOM.render( , root ); }; render( AppComponent ); // @ts-ignore if ( module.hot ) { // @ts-ignore module.hot.accept( './containers/App', async () => { const App = await import( './containers/App' ); render( App.default ); } ); }