2023-12-02 09:35:35 +00:00
|
|
|
import { useState, useCallback } from "react";
|
|
|
|
|
|
|
|
export function useDisclosure(initialState = false) {
|
2023-12-31 02:53:25 +00:00
|
|
|
const [opened, setOpened] = useState(initialState);
|
2023-12-02 09:35:35 +00:00
|
|
|
|
2023-12-31 02:53:25 +00:00
|
|
|
return [
|
|
|
|
opened,
|
|
|
|
useCallback(() => setOpened(true), []),
|
|
|
|
useCallback(() => setOpened(false), []),
|
|
|
|
useCallback(() => setOpened((prev) => !prev), []),
|
|
|
|
] as const;
|
2023-12-02 09:35:35 +00:00
|
|
|
}
|