// GameContextProvider.js const [state, dispatch] = useReducer(reducer, initialState); const onMessage = (ev) => { const data = JSON.parse(ev.data); if (data.context) dispatch({ type: data.context, payload: data }) }