import { PropsWithChildren, createContext, useContext, useMemo } from 'react' import { DiffStrategy } from '../core/diff/DiffStrategy' const DiffStrategyContext = createContext(null) export function DiffStrategyProvider({ diffStrategy, children, }: PropsWithChildren<{ diffStrategy: DiffStrategy }>) { const value = useMemo(() => { return diffStrategy }, [diffStrategy]) return {children} } export function useDiffStrategy() { const context = useContext(DiffStrategyContext) if (!context) { throw new Error('DiffStrategyContext is not initialized') } return context }