speed-flowchart-web/src/utils/ContextWrapper.tsx

28 lines
762 B
TypeScript
Raw Permalink Normal View History

2022-07-29 00:36:15 +02:00
import { Breakpoint } from '@mui/material/styles';
2022-07-28 19:39:06 +02:00
import React from 'react';
2022-07-27 02:55:05 +02:00
import { Context } from '../data/Context';
import { DigitalrockAPi } from '../data/DigitalrockApi';
/**
* Sets Context for its children
* @param {{ children: JSX.Element }} props
* @return {JSX.Element}
*/
export default function ContextWrapper(props: { children: JSX.Element }) {
const { children } = props;
const api = new DigitalrockAPi();
2022-07-28 19:39:06 +02:00
const [title, setTitle] = React.useState('');
2022-07-29 00:36:15 +02:00
const [containerMaxWidth, setContainerMaxWidth] = React.useState<
false | Breakpoint | undefined
>('lg');
2022-07-27 02:55:05 +02:00
2022-07-28 19:39:06 +02:00
return (
2022-07-29 00:36:15 +02:00
<Context.Provider
value={{ api, title, setTitle, containerMaxWidth, setContainerMaxWidth }}
>
2022-07-28 19:39:06 +02:00
{children}
</Context.Provider>
);
2022-07-27 02:55:05 +02:00
}