import {
useCallbackState,
useEvents,
useObjectCallback,
useObjectEffect,
useObjectMemo,
useOutside,
useParams,
usePromiseState,
useTrustedPromise,
useTrustedState,
} from "@fipnooone/hooks";
const [state, setState, isTrusted] = useTrustedState("defaultValue", true);
const [state, setState, isTrusted] = useTrustedState();
const [state, setState] = useCallbackState("defaultValue");
const changeCallback = (value: string) => console.log(value);
const changeState = () => setState("newValue", changeCallback);
const [state, setState] = usePromiseState<User>();
const changeState = () =>
setState({ username: "fipnooone", website: "https://fipnoo.one" }).then((value) => {
console.log(value);
});
const [state, setState] = useTrustedPromise<number>();
const changeState = () => setState(undefined).then();
const { id, station_slug } = useParams({ id: 'int', station_slug: 'string' });
// id: number
// station_slug: string
// redirect is true by refault
useParams({ }, redirect: boolean | '/url/to/a-page');
const { id, station_slug } = useParams({ id: 'int', station_slug: 'string' }, false);
// id: number | undefined
// station_slug: string | undefined
const [users, setUsers] = useState<User[]>([]);
useObjectEffect(() => {
// ...
}, [users]);
useOutside(myRef, () => close(), [dep]);
useEvents(
"click",
(event) => {
while (true) {
console.log("clicked");
}
},
[dep0, dep1],
document
);
useRefEffect((T) => {}, ref<T>, [dep]);
useRefReady((T) => {}, ref<T>);