mars-v2-frontend/src/hooks/useToggle.tsx
Bob van der Helm 39e745b210
Mp 2713 asset selector (#275)
* added dumb asset selector

* fix table layouts borrow and farm

* 🍱 added basic overlay, esc btn

* finish asset selector

* Update tailwind configf to include button styles
2023-07-03 09:39:34 +02:00

15 lines
441 B
TypeScript

import { useCallback, useState } from 'react'
export default function useToggle(
defaultValue?: boolean,
): [boolean, (isToggled?: boolean) => void] {
const [toggle, setToggle] = useState<boolean>(defaultValue ?? false)
const handleToggle = useCallback((isToggled?: boolean) => {
if (isToggled !== undefined) return setToggle(isToggled)
return setToggle((isToggled) => !isToggled)
}, [])
return [toggle, handleToggle]
}