github.com/tilt-dev/tilt@v0.33.15-0.20240515162809-0a22ed45d8a0/web/src/HudErrorContext.tsx (about) 1 import React, { useContext, useMemo } from "react" 2 3 // allows consumers to set an error message to show up in the HUD 4 type HudErrorContext = { 5 setError: (error: string) => void 6 } 7 8 const hudErrorContext = React.createContext<HudErrorContext>({ 9 setError: () => {}, 10 }) 11 12 export function useHudErrorContext() { 13 return useContext(hudErrorContext) 14 } 15 16 export function HudErrorContextProvider( 17 props: React.PropsWithChildren<HudErrorContext> 18 ) { 19 let value = useMemo(() => { 20 return { setError: props.setError } 21 }, [props.setError]) 22 return ( 23 <hudErrorContext.Provider value={value}> 24 {props.children} 25 </hudErrorContext.Provider> 26 ) 27 }