mirror of
https://github.com/invoke-ai/InvokeAI.git
synced 2026-02-08 12:35:03 -05:00
22 lines
505 B
TypeScript
22 lines
505 B
TypeScript
import { useCallback, useMemo, useState } from 'react';
|
|
|
|
export const useBoolean = (initialValue: boolean) => {
|
|
const [isTrue, set] = useState(initialValue);
|
|
const setTrue = useCallback(() => set(true), []);
|
|
const setFalse = useCallback(() => set(false), []);
|
|
const toggle = useCallback(() => set((v) => !v), []);
|
|
|
|
const api = useMemo(
|
|
() => ({
|
|
isTrue,
|
|
set,
|
|
setTrue,
|
|
setFalse,
|
|
toggle,
|
|
}),
|
|
[isTrue, set, setTrue, setFalse, toggle]
|
|
);
|
|
|
|
return api;
|
|
};
|