1
0
mirror of https://github.com/checktheroads/hyperglass synced 2024-05-11 05:55:08 +00:00
Files
checktheroads-hyperglass/hyperglass/ui/hooks/useBooleanValue.ts
2021-09-08 01:02:25 -07:00

19 lines
380 B
TypeScript

import { useMemo } from 'react';
/**
* Track the state of a boolean and return values based on its state.
*/
export function useBooleanValue<T extends unknown, F extends unknown>(
status: boolean,
ifTrue: T,
ifFalse: F,
): T | F {
return useMemo(() => {
if (status) {
return ifTrue;
} else {
return ifFalse;
}
}, [status, ifTrue, ifFalse]);
}