UNPKG

@visx/xychart

Version:

Composable cartesian coordinate chart built with visx primitives

31 lines 1.06 kB
import { useMemo, useState } from 'react'; import DataRegistry from '../classes/DataRegistry'; /** Hook that returns an API equivalent to DataRegistry but which updates as needed for use as a hook. */ export default function useDataRegistry() { var _useState = useState(Math.random()), forceUpdate = _useState[1]; var privateRegistry = useMemo(function () { return new DataRegistry(); }, []); return useMemo(function () { return { registerData: function registerData() { privateRegistry.registerData.apply(privateRegistry, arguments); forceUpdate(Math.random()); }, unregisterData: function unregisterData() { privateRegistry.unregisterData.apply(privateRegistry, arguments); forceUpdate(Math.random()); }, entries: function entries() { return privateRegistry.entries(); }, get: function get(key) { return privateRegistry.get(key); }, keys: function keys() { return privateRegistry.keys(); } }; }, [privateRegistry]); }