UNPKG

@frontify/fondue

Version:
22 lines (21 loc) 590 B
import { useState as r, useCallback as u, useEffect as a } from "react"; const l = (e = 2e3) => { const [t, s] = r("idle"), o = u(async (c) => { s("idle"); try { await navigator.clipboard.writeText(c), s("success"); } catch { s("error"); } }, []); return a(() => { let c; return e && (t === "success" || t === "error") && (c = setTimeout(() => s("idle"), e)), () => { e && (t === "success" || t === "error") && clearTimeout(c); }; }, [t, e]), { copy: o, status: t }; }; export { l as useCopy }; //# sourceMappingURL=useCopy.es.js.map