{"version":3,"file":"use-dynamic-callback.es.mjs","sources":["../../src/hooks/use-dynamic-callback.ts"],"sourcesContent":["// Dependencies\nimport * as React from 'react';\n\n// Internals\nimport { useIsomorphicLayoutEffect } from './use-isomorphic-layout-effect';\n\nexport function useDynamicCallback<T>(callback: T): T;\nexport function useDynamicCallback(callback: (...args: Record<string, unknown>[]) => void) {\n  const ref = React.useRef(callback);\n\n  useIsomorphicLayoutEffect(() => {\n    ref.current = callback;\n  }, [callback]);\n\n  return React.useCallback((...args: Record<string, unknown>[]) => ref.current(...args), []);\n}\n"],"names":["useDynamicCallback","callback","ref","React","useIsomorphicLayoutEffect","args"],"mappings":";;AAOO,SAASA,EAAmBC,GAAwD;AACnF,QAAAC,IAAMC,EAAM,OAAOF,CAAQ;AAEjC,SAAAG,EAA0B,MAAM;AAC9B,IAAAF,EAAI,UAAUD;AAAA,EAAA,GACb,CAACA,CAAQ,CAAC,GAENE,EAAM,YAAY,IAAIE,MAAoCH,EAAI,QAAQ,GAAGG,CAAI,GAAG,CAAA,CAAE;AAC3F;"}