@@ -44,6 +44,11 @@ export interface Rect {
4444
4545//
4646
47+ const getRect = ( element : HTMLElement ) : Rect => {
48+ const { offsetWidth, offsetHeight } = element
49+ return { width : offsetWidth , height : offsetHeight }
50+ }
51+
4752export const defaultKeyExtractor = ( index : number ) => index
4853
4954export const defaultRangeExtractor = ( range : Range ) => {
@@ -77,7 +82,7 @@ export const observeElementRect = <T extends Element>(
7782 cb ( { width : Math . round ( width ) , height : Math . round ( height ) } )
7883 }
7984
80- handler ( element . getBoundingClientRect ( ) )
85+ handler ( getRect ( element as unknown as HTMLElement ) )
8186
8287 if ( ! targetWindow . ResizeObserver ) {
8388 return ( ) => { }
@@ -93,7 +98,7 @@ export const observeElementRect = <T extends Element>(
9398 return
9499 }
95100 }
96- handler ( element . getBoundingClientRect ( ) )
101+ handler ( getRect ( element as unknown as HTMLElement ) )
97102 }
98103
99104 instance . options . useAnimationFrameWithResizeObserver
@@ -251,11 +256,10 @@ export const measureElement = <TItemElement extends Element>(
251256 return size
252257 }
253258 }
254- return Math . round (
255- element . getBoundingClientRect ( ) [
256- instance . options . horizontal ? 'width' : 'height'
257- ] ,
258- )
259+
260+ return ( element as unknown as HTMLElement ) [
261+ instance . options . horizontal ? 'offsetWidth' : 'offsetHeight'
262+ ]
259263}
260264
261265export const windowScroll = < T extends Window > (
0 commit comments