File "import-context-provider.js"

Full Path: /home/warrior1/public_html/wp-content/plugins/elementor/app/modules/import-export/assets/js/context/import-context/import-context-provider.js
File size: 738 bytes
MIME-type: text/x-java
Charset: utf-8

import { useReducer } from 'react';

import { reducer } from './import-context-reducer';

export const ImportContext = React.createContext();

export default function ImportContextProvider( props ) {
	const initialState = {
		file: null,
		uploadedData: null,
		importedData: null,
		plugins: [],
		requiredPlugins: [],
		importedPlugins: [],
		overrideConditions: [],
		isProInstalledDuringProcess: false,
		actionType: null,
		isResolvedData: false,
		pluginsState: '',
	},
	[ data, dispatch ] = useReducer( reducer, initialState );

	return (
		<ImportContext.Provider value={ { data, dispatch } }>
			{ props.children }
		</ImportContext.Provider>
	);
}

ImportContextProvider.propTypes = {
	children: PropTypes.object.isRequired,
};