123456789101112131415161718192021222324252627 |
- import {
- createContext,
- useRef,
- } from 'react'
- import type {
- FeaturesState,
- FeaturesStore,
- } from './store'
- import { createFeaturesStore } from './store'
- export const FeaturesContext = createContext<FeaturesStore | null>(null)
- type FeaturesProviderProps = {
- children: React.ReactNode
- } & Partial<FeaturesState>
- export const FeaturesProvider = ({ children, ...props }: FeaturesProviderProps) => {
- const storeRef = useRef<FeaturesStore>()
- if (!storeRef.current)
- storeRef.current = createFeaturesStore(props)
- return (
- <FeaturesContext.Provider value={storeRef.current}>
- {children}
- </FeaturesContext.Provider>
- )
- }
|