{"version":3,"file":"index.cjs","names":[],"sources":["../../../src/hooks/useAsyncEffect/index.ts"],"sourcesContent":["import { DependencyList, useEffect } from 'react';\n\n/**\n * @description 비동기 함수를 `useEffect`와 함께 사용하기 위한 커스텀 훅입니다.\n *\n * @param {() => Promise<void>} effectCallback - 실행할 비동기 함수입니다.\n * @param {DependencyList} deps - effect를 다시 실행 할 의존성 배열입니다.\n *\n * @returns {void}\n *\n * @example\n * useAsyncEffect(async () => {\n *   const data = await fetchData();\n *   setData(data);\n * }, deps);\n */\nexport function useAsyncEffect(\n  effectCallback: () => Promise<void>,\n  deps: DependencyList = []\n): void {\n  useEffect(() => {\n    const execute = async () => {\n      await effectCallback();\n    };\n\n    execute();\n    // eslint-disable-next-line react-hooks/exhaustive-deps\n  }, deps);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAgBA,SAAgB,eACd,gBACA,OAAuB,EAAE,EACnB;CACN,CAAA,GAAA,MAAA,iBAAgB;EACd,MAAM,UAAU,YAAY;GAC1B,MAAM,gBAAgB;;EAGxB,SAAS;IAER,KAAK"}