summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/lib
diff options
context:
space:
mode:
authorKushal Pandya <kushalspandya@gmail.com>2019-01-08 18:37:21 +0530
committerKushal Pandya <kushalspandya@gmail.com>2019-01-08 18:37:21 +0530
commit214d741ba5caf1e533873bba1b8f030e80774d72 (patch)
tree1e56a419805e6cf2f217fdfe1b61f4657ac57d7b /app/assets/javascripts/lib
parente2667b765426e9201dab6a004e1ded3578a70283 (diff)
downloadgitlab-ce-214d741ba5caf1e533873bba1b8f030e80774d72.tar.gz
Add support for `offset` values in `isInViewport`
Diffstat (limited to 'app/assets/javascripts/lib')
-rw-r--r--app/assets/javascripts/lib/utils/common_utils.js7
1 files changed, 4 insertions, 3 deletions
diff --git a/app/assets/javascripts/lib/utils/common_utils.js b/app/assets/javascripts/lib/utils/common_utils.js
index 9e22cdc04e9..fc34d243dd7 100644
--- a/app/assets/javascripts/lib/utils/common_utils.js
+++ b/app/assets/javascripts/lib/utils/common_utils.js
@@ -118,12 +118,13 @@ export const handleLocationHash = () => {
// Check if element scrolled into viewport from above or below
// Courtesy http://stackoverflow.com/a/7557433/414749
-export const isInViewport = el => {
+export const isInViewport = (el, offset = {}) => {
const rect = el.getBoundingClientRect();
+ const { top, left } = offset;
return (
- rect.top >= 0 &&
- rect.left >= 0 &&
+ rect.top >= (top || 0) &&
+ rect.left >= (left || 0) &&
rect.bottom <= window.innerHeight &&
rect.right <= window.innerWidth
);