The main server, and probably only repository in this org.
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
import {setGlobal, useGlobal} from "reactn"; import {fetchGet} from "../Helpers/fetcher"; import {useEffect} from "react";
setGlobal({ lights: null, });
function useLights() { const [lights, setLights] = useGlobal("lights");
function reloadLights() { setLights(null);
fetchGet("/light/").then(({error, data}) => { if (error !== null) { console.error(error); return; }
setLights(data); }); }
useEffect(() => { if (lights === null) { reloadLights(); } }, []);
function lightsByBridge(bridgeId) { if (lights === null) { return null; }
return lights.filter(light => light.bridgeId === bridgeId); }
return {lights, lightsByBridge, reloadLights}; }
export default useLights;
|