import {createContext, useCallback, useContext} from 'react'; import {usePacket} from './client.js'; const context = createContext(); export default context; export function useEcs() { return useContext(context); } export function useEcsTick(fn) { const [ecs] = useEcs(); const memo = useCallback((payload) => { if (!ecs) { return; } fn(payload, ecs); }, [ecs, fn]); usePacket(':Ecs', memo); }