{"version":3,"sources":["../src/index.ts"],"sourcesContent":["import { useEffect, useRef } from \"react\"\n\nexport function useUpdateEffect(\n  callback: React.EffectCallback,\n  deps: React.DependencyList,\n) {\n  const renderCycleRef = useRef(false)\n  const effectCycleRef = useRef(false)\n\n  useEffect(() => {\n    const mounted = renderCycleRef.current\n    const run = mounted && effectCycleRef.current\n    if (run) {\n      return callback()\n    }\n    effectCycleRef.current = true\n    // eslint-disable-next-line react-hooks/exhaustive-deps\n  }, deps)\n\n  useEffect(() => {\n    renderCycleRef.current = true\n    return () => {\n      renderCycleRef.current = false\n    }\n  }, [])\n}\n"],"mappings":";;;AAAA,SAAS,WAAW,cAAc;AAE3B,SAAS,gBACd,UACA,MACA;AACA,QAAM,iBAAiB,OAAO,KAAK;AACnC,QAAM,iBAAiB,OAAO,KAAK;AAEnC,YAAU,MAAM;AACd,UAAM,UAAU,eAAe;AAC/B,UAAM,MAAM,WAAW,eAAe;AACtC,QAAI,KAAK;AACP,aAAO,SAAS;AAAA,IAClB;AACA,mBAAe,UAAU;AAAA,EAE3B,GAAG,IAAI;AAEP,YAAU,MAAM;AACd,mBAAe,UAAU;AACzB,WAAO,MAAM;AACX,qBAAe,UAAU;AAAA,IAC3B;AAAA,EACF,GAAG,CAAC,CAAC;AACP;","names":[]}