# elementor/3.8.0-beta1/app/assets/js/app-context.js

Elementor Website Builder – more than just a page builder, version 3.8.0-beta1. 21 lines.

- Page: https://pluginprobe.com/plugins/elementor/3.8.0-beta1/code/app/assets/js/app-context.js
- Raw: https://pluginprobe.com/plugins/elementor/3.8.0-beta1/raw/app/assets/js/app-context.js
- Modified: 2022-09-19T16:26:20+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/elementor/3.8.0-beta1/code/app/assets/js/app-context.js#L10-L20`.

```javascript
import { useState } from 'react';

export const AppContext = React.createContext();

export default function AppProvider( props ) {
	const initialState = {
			isDarkMode: document.body.classList.contains( `eps-theme-dark` ),
		},
		[ state, setState ] = useState( initialState );

	return (
		<AppContext.Provider value={ { state, setState } }>
			{ props.children }
		</AppContext.Provider>
	);
}

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

```
