UNPKG

@figliolia/react-hooks

Version:

A small collection of simple React Hooks you're probably rewriting on a regular basis

22 lines (18 loc) 505 B
import { useEffect } from "react"; import type { FloatingTaskManager } from "Generics/FloatingTaskManager"; import { useController } from "./useController"; export const useFloatingTaskManager = < T extends typeof FloatingTaskManager<any>, >( Manager: T, ...rest: ConstructorParameters<T> ) => { // @ts-ignore const manager = useController(new Manager(...rest)); useEffect(() => { return () => { manager.abortAll(); }; }, [manager]); return manager as InstanceType<T>; };