├── .babelrc ├── .editorconfig ├── .eslintignore ├── .eslintrc.js ├── .github ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── ISSUE_TEMPLATE.md ├── PULL_REQUEST_TEMPLATE.md ├── demo.gif ├── logo.svg └── workflows │ └── build.yml ├── .gitignore ├── .storybook ├── addons.js ├── config.js └── preview-head.html ├── AUTHORS ├── CHANGELOG.md ├── LICENSE ├── README.md ├── docs ├── README.md └── docs │ ├── components │ ├── .eslintrc │ ├── HigherOrderComponent │ │ ├── Component.js │ │ ├── README.md │ │ ├── Target.js │ │ ├── WithIntersectionObserver.js │ │ └── index.js │ ├── Hook │ │ ├── Hook.js │ │ ├── README.md │ │ └── index.js │ ├── HookOnlyOnce │ │ ├── HookOnlyOnce.js │ │ ├── README.md │ │ └── index.js │ ├── ImpressionTracking │ │ ├── AdImpression.js │ │ ├── ImpressionTracking.js │ │ ├── README.md │ │ └── index.js │ ├── NativeObserver │ │ └── README.md │ ├── OnlyOnce │ │ ├── OnlyOnce.js │ │ ├── README.md │ │ └── index.js │ ├── Playground │ │ ├── PlaygroundRootMargin.js │ │ └── index.js │ ├── ViewableMonitor │ │ └── README.md │ ├── WindowFrame │ │ ├── README.md │ │ ├── WindowFrame.js │ │ └── index.js │ ├── WindowRoot │ │ ├── README.md │ │ ├── WindowRoot.js │ │ └── index.js │ ├── WithRootMargin │ │ ├── README.md │ │ ├── WithRootMargin.js │ │ └── index.js │ ├── WithThresholds │ │ ├── README.md │ │ ├── WithThresholds.js │ │ └── index.js │ └── style.css │ └── index.js ├── package.json ├── renovate.json ├── src ├── IntersectionObserver.ts ├── hook.ts ├── index.ts ├── observer.ts ├── types.ts └── utils.ts ├── test ├── .eslintrc.json └── unit │ ├── IntersectionObserver.spec.js │ ├── __mocks__ │ └── mock-target.js │ ├── hook.spec.js │ ├── observer.spec.js │ └── utils.spec.js ├── tsconfig.json └── yarn.lock /.babelrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/.babelrc -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/.editorconfig -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | lib 3 | typings 4 | .docs 5 | .yarn -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/.eslintrc.js -------------------------------------------------------------------------------- /.github/CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/.github/CODE_OF_CONDUCT.md -------------------------------------------------------------------------------- /.github/CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/.github/CONTRIBUTING.md -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/.github/ISSUE_TEMPLATE.md -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/.github/PULL_REQUEST_TEMPLATE.md -------------------------------------------------------------------------------- /.github/demo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/.github/demo.gif -------------------------------------------------------------------------------- /.github/logo.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/.github/logo.svg -------------------------------------------------------------------------------- /.github/workflows/build.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/.github/workflows/build.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/.gitignore -------------------------------------------------------------------------------- /.storybook/addons.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/.storybook/addons.js -------------------------------------------------------------------------------- /.storybook/config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/.storybook/config.js -------------------------------------------------------------------------------- /.storybook/preview-head.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/.storybook/preview-head.html -------------------------------------------------------------------------------- /AUTHORS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/AUTHORS -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/README.md -------------------------------------------------------------------------------- /docs/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/README.md -------------------------------------------------------------------------------- /docs/docs/components/.eslintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/.eslintrc -------------------------------------------------------------------------------- /docs/docs/components/HigherOrderComponent/Component.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/HigherOrderComponent/Component.js -------------------------------------------------------------------------------- /docs/docs/components/HigherOrderComponent/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/HigherOrderComponent/README.md -------------------------------------------------------------------------------- /docs/docs/components/HigherOrderComponent/Target.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/HigherOrderComponent/Target.js -------------------------------------------------------------------------------- /docs/docs/components/HigherOrderComponent/WithIntersectionObserver.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/HigherOrderComponent/WithIntersectionObserver.js -------------------------------------------------------------------------------- /docs/docs/components/HigherOrderComponent/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/HigherOrderComponent/index.js -------------------------------------------------------------------------------- /docs/docs/components/Hook/Hook.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/Hook/Hook.js -------------------------------------------------------------------------------- /docs/docs/components/Hook/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/Hook/README.md -------------------------------------------------------------------------------- /docs/docs/components/Hook/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/Hook/index.js -------------------------------------------------------------------------------- /docs/docs/components/HookOnlyOnce/HookOnlyOnce.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/HookOnlyOnce/HookOnlyOnce.js -------------------------------------------------------------------------------- /docs/docs/components/HookOnlyOnce/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/HookOnlyOnce/README.md -------------------------------------------------------------------------------- /docs/docs/components/HookOnlyOnce/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/HookOnlyOnce/index.js -------------------------------------------------------------------------------- /docs/docs/components/ImpressionTracking/AdImpression.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/ImpressionTracking/AdImpression.js -------------------------------------------------------------------------------- /docs/docs/components/ImpressionTracking/ImpressionTracking.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/ImpressionTracking/ImpressionTracking.js -------------------------------------------------------------------------------- /docs/docs/components/ImpressionTracking/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/ImpressionTracking/README.md -------------------------------------------------------------------------------- /docs/docs/components/ImpressionTracking/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/ImpressionTracking/index.js -------------------------------------------------------------------------------- /docs/docs/components/NativeObserver/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/NativeObserver/README.md -------------------------------------------------------------------------------- /docs/docs/components/OnlyOnce/OnlyOnce.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/OnlyOnce/OnlyOnce.js -------------------------------------------------------------------------------- /docs/docs/components/OnlyOnce/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/OnlyOnce/README.md -------------------------------------------------------------------------------- /docs/docs/components/OnlyOnce/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/OnlyOnce/index.js -------------------------------------------------------------------------------- /docs/docs/components/Playground/PlaygroundRootMargin.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/Playground/PlaygroundRootMargin.js -------------------------------------------------------------------------------- /docs/docs/components/Playground/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './PlaygroundRootMargin'; 2 | -------------------------------------------------------------------------------- /docs/docs/components/ViewableMonitor/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/ViewableMonitor/README.md -------------------------------------------------------------------------------- /docs/docs/components/WindowFrame/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/WindowFrame/README.md -------------------------------------------------------------------------------- /docs/docs/components/WindowFrame/WindowFrame.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/WindowFrame/WindowFrame.js -------------------------------------------------------------------------------- /docs/docs/components/WindowFrame/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/WindowFrame/index.js -------------------------------------------------------------------------------- /docs/docs/components/WindowRoot/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/WindowRoot/README.md -------------------------------------------------------------------------------- /docs/docs/components/WindowRoot/WindowRoot.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/WindowRoot/WindowRoot.js -------------------------------------------------------------------------------- /docs/docs/components/WindowRoot/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/WindowRoot/index.js -------------------------------------------------------------------------------- /docs/docs/components/WithRootMargin/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/WithRootMargin/README.md -------------------------------------------------------------------------------- /docs/docs/components/WithRootMargin/WithRootMargin.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/WithRootMargin/WithRootMargin.js -------------------------------------------------------------------------------- /docs/docs/components/WithRootMargin/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/WithRootMargin/index.js -------------------------------------------------------------------------------- /docs/docs/components/WithThresholds/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/WithThresholds/README.md -------------------------------------------------------------------------------- /docs/docs/components/WithThresholds/WithThresholds.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/WithThresholds/WithThresholds.js -------------------------------------------------------------------------------- /docs/docs/components/WithThresholds/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/WithThresholds/index.js -------------------------------------------------------------------------------- /docs/docs/components/style.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/components/style.css -------------------------------------------------------------------------------- /docs/docs/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/docs/docs/index.js -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/package.json -------------------------------------------------------------------------------- /renovate.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/renovate.json -------------------------------------------------------------------------------- /src/IntersectionObserver.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/src/IntersectionObserver.ts -------------------------------------------------------------------------------- /src/hook.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/src/hook.ts -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/src/index.ts -------------------------------------------------------------------------------- /src/observer.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/src/observer.ts -------------------------------------------------------------------------------- /src/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/src/types.ts -------------------------------------------------------------------------------- /src/utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/src/utils.ts -------------------------------------------------------------------------------- /test/.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/test/.eslintrc.json -------------------------------------------------------------------------------- /test/unit/IntersectionObserver.spec.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/test/unit/IntersectionObserver.spec.js -------------------------------------------------------------------------------- /test/unit/__mocks__/mock-target.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/test/unit/__mocks__/mock-target.js -------------------------------------------------------------------------------- /test/unit/hook.spec.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/test/unit/hook.spec.js -------------------------------------------------------------------------------- /test/unit/observer.spec.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/test/unit/observer.spec.js -------------------------------------------------------------------------------- /test/unit/utils.spec.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/test/unit/utils.spec.js -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/tsconfig.json -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/researchgate/react-intersection-observer/HEAD/yarn.lock --------------------------------------------------------------------------------