Skip to content

Commit 836c459

Browse files
committed
refactor: rename isVisible to isInViewport
1 parent 42bddde commit 836c459

File tree

5 files changed

+21
-21
lines changed

5 files changed

+21
-21
lines changed

packages/coreui-react/src/components/carousel/CCarousel.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import React, {
1111
import PropTypes from 'prop-types'
1212
import classNames from 'classnames'
1313

14-
import { isVisible } from '../../utils'
14+
import { isInViewport } from '../../utils'
1515
import { useForkedRef } from '../../utils/hooks'
1616

1717
export interface CCarouselProps extends HTMLAttributes<HTMLDivElement> {
@@ -157,7 +157,7 @@ export const CCarousel = forwardRef<HTMLDivElement, CCarouselProps>(
157157
const nextItemWhenVisible = () => {
158158
// Don't call next when the page isn't visible
159159
// or the carousel or its parent isn't visible
160-
if (!document.hidden && carouselRef.current && isVisible(carouselRef.current)) {
160+
if (!document.hidden && carouselRef.current && isInViewport(carouselRef.current)) {
161161
if (animating) {
162162
return
163163
}
@@ -195,7 +195,7 @@ export const CCarousel = forwardRef<HTMLDivElement, CCarouselProps>(
195195
}
196196

197197
const handleScroll = () => {
198-
if (!document.hidden && carouselRef.current && isVisible(carouselRef.current)) {
198+
if (!document.hidden && carouselRef.current && isInViewport(carouselRef.current)) {
199199
setVisible(true)
200200
} else {
201201
setVisible(false)

packages/coreui-react/src/components/sidebar/CSidebar.tsx

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { createPortal } from 'react-dom'
33
import PropTypes from 'prop-types'
44
import classNames from 'classnames'
55

6-
import { isVisible } from '../../utils'
6+
import { isInViewport } from '../../utils'
77
import { useForkedRef } from '../../utils/hooks'
88
import { CBackdrop } from '../backdrop/CBackdrop'
99

@@ -95,15 +95,15 @@ export const CSidebar = forwardRef<HTMLDivElement, CSidebarProps>(
9595

9696
useEffect(() => {
9797
sidebarRef.current && setMobile(isOnMobile(sidebarRef.current))
98-
sidebarRef.current && setInViewport(isVisible(sidebarRef.current))
98+
sidebarRef.current && setInViewport(isInViewport(sidebarRef.current))
9999

100100
window.addEventListener('resize', () => handleResize())
101101
window.addEventListener('mouseup', handleClickOutside)
102102
window.addEventListener('keyup', handleKeyup)
103103

104104
sidebarRef.current?.addEventListener('mouseup', handleOnClick)
105105
sidebarRef.current?.addEventListener('transitionend', () => {
106-
sidebarRef.current && setInViewport(isVisible(sidebarRef.current))
106+
sidebarRef.current && setInViewport(isInViewport(sidebarRef.current))
107107
})
108108

109109
return () => {
@@ -113,7 +113,7 @@ export const CSidebar = forwardRef<HTMLDivElement, CSidebarProps>(
113113

114114
sidebarRef.current?.removeEventListener('mouseup', handleOnClick)
115115
sidebarRef.current?.removeEventListener('transitionend', () => {
116-
sidebarRef.current && setInViewport(isVisible(sidebarRef.current))
116+
sidebarRef.current && setInViewport(isInViewport(sidebarRef.current))
117117
})
118118
}
119119
})
@@ -124,7 +124,7 @@ export const CSidebar = forwardRef<HTMLDivElement, CSidebarProps>(
124124

125125
const handleResize = () => {
126126
sidebarRef.current && setMobile(isOnMobile(sidebarRef.current))
127-
sidebarRef.current && setInViewport(isVisible(sidebarRef.current))
127+
sidebarRef.current && setInViewport(isInViewport(sidebarRef.current))
128128
}
129129

130130
const handleKeyup = (event: Event) => {
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
import isVisible from './isVisible'
1+
import isInViewport from './isInViewport'
22

3-
export { isVisible }
3+
export { isInViewport }
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
const isInViewport = (element: HTMLElement) => {
2+
const rect = element.getBoundingClientRect()
3+
return (
4+
Math.floor(rect.top) >= 0 &&
5+
Math.floor(rect.left) >= 0 &&
6+
Math.floor(rect.bottom) <= (window.innerHeight || document.documentElement.clientHeight) &&
7+
Math.floor(rect.right) <= (window.innerWidth || document.documentElement.clientWidth)
8+
)
9+
}
10+
11+
export default isInViewport

packages/coreui-react/src/utils/isVisible.ts

Lines changed: 0 additions & 11 deletions
This file was deleted.

0 commit comments

Comments
 (0)