{"version":3,"sources":["../../src/use-intersection-observer/index.ts"],"sourcesContent":["import { useWebObserver } from '../use-web-observer'\n\nimport type { ElementTarget } from '../use-target-element'\nimport type { UseWebObserverOptions, UseWebObserverReturns } from '../use-web-observer'\n\nexport interface UseIntersectionObserverOptions extends UseWebObserverOptions, IntersectionObserverInit {}\nexport interface UseIntersectionObserverReturns extends UseWebObserverReturns<IntersectionObserver> {}\n\n/**\n * A React Hook that uses the [Intersection Observer API](https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API) with ease.\n */\nexport function useIntersectionObserver(\n  target: ElementTarget,\n  callback: IntersectionObserverCallback,\n  options: UseIntersectionObserverOptions = {},\n): UseIntersectionObserverReturns {\n  const { immediate = true, ...initOptions } = options\n\n  return useWebObserver('IntersectionObserver', target, callback, { immediate }, initOptions)\n}\n"],"names":["useIntersectionObserver","target","callback","options","immediate","initOptions","useWebObserver"],"mappings":";;;;+BAWgBA;;;eAAAA;;;8BAXe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAWxB,SAASA,wBACdC,MAAqB,EACrBC,QAAsC;QACtCC,UAAAA,iEAA0C,CAAC;IAE3C,yBAA6CA,QAArCC,WAAAA,4CAAY,2BAASC,yCAAgBF;;;IAE7C,OAAOG,IAAAA,8BAAc,EAAC,wBAAwBL,QAAQC,UAAU;QAAEE,WAAAA;IAAU,GAAGC;AACjF"}