UNPKG

@itwin/itwinui-react

Version:

A react component library for iTwinUI

29 lines (28 loc) 705 B
import * as React from 'react'; import { useSafeContext } from '../hooks/useSafeContext.js'; let FutureFlagsContext = React.createContext({}); export function useFutureFlag(key) { let context = useSafeContext(FutureFlagsContext); return context[key]; } export const FutureFlagsProvider = ({ children, value }) => { if (true === value) value = { themeBridge: true, }; let context = React.useContext(FutureFlagsContext); let combinedValue = { ...context, ...value, }; return React.createElement( FutureFlagsContext.Provider, { value: React.useMemo( () => combinedValue, [JSON.stringify(combinedValue)], ), }, children, ); };