import { HasChildren } from "@granity/helpers"; import { createContext, Dispatch, FC, SetStateAction, useState } from "react"; import { WidgetModule } from "../../widgetsTypes"; export interface WidgetModuleContextModel { widgetsModules: WidgetModule[] | []; setWidgetsModules: (() => void) | Dispatch>; } export const defaultContext: WidgetModuleContextModel = { widgetsModules: [], setWidgetsModules: () => {}, }; export const WidgetsModulesContext = createContext(defaultContext); type Props = HasChildren; const WidgetsModulesContextProvider: FC = ({ children }) => { const [widgetsModules, setWidgetsModules] = useState([]); const providerValue: WidgetModuleContextModel = { widgetsModules, setWidgetsModules, }; return ( {children} ); }; export default WidgetsModulesContextProvider;