@@ -10,12 +10,12 @@ import { calcFlexGrid } from './calc-flex-grid';
1010export const FlexGrid : React . FC < FlexGridProps > = ( {
1111 data = [ ] ,
1212 virtualization = true ,
13- maxWidthRatio = 1 ,
14- tileSize = 50 ,
13+ maxColumnRatioUnits = 1 ,
14+ itemSizeUnit = 50 ,
1515 scrollEventInterval = 200 , // milliseconds
1616 virtualizedBufferFactor = 2 ,
1717 showScrollIndicator = true ,
18- renderItem,
18+ renderItem = ( ) => null ,
1919 style = { } ,
2020} ) => {
2121 const [ visibleItems , setVisibleItems ] = useState < FlexGridTile [ ] > ( [ ] ) ;
@@ -33,8 +33,8 @@ export const FlexGrid: React.FC<FlexGridProps> = ({
3333 ) ;
3434
3535 const { totalHeight, totalWidth, gridItems } = useMemo ( ( ) => {
36- return calcFlexGrid ( data , maxWidthRatio , tileSize ) ;
37- } , [ data , maxWidthRatio , tileSize ] ) ;
36+ return calcFlexGrid ( data , maxColumnRatioUnits , itemSizeUnit ) ;
37+ } , [ data , maxColumnRatioUnits , itemSizeUnit ] ) ;
3838
3939 const renderedList = virtualization ? visibleItems : gridItems ;
4040
@@ -51,8 +51,8 @@ export const FlexGrid: React.FC<FlexGridProps> = ({
5151 const visibleEndY = scrollPosition . current . y + containerHeight + bufferY ;
5252
5353 const vItems = gridItems . filter ( ( item ) => {
54- const itemRight = item . left + ( item . widthRatio || 1 ) * tileSize ;
55- const itemBottom = item . top + ( item . heightRatio || 1 ) * tileSize ;
54+ const itemRight = item . left + ( item . widthRatio || 1 ) * itemSizeUnit ;
55+ const itemBottom = item . top + ( item . heightRatio || 1 ) * itemSizeUnit ;
5656 return (
5757 item . left < visibleEndX &&
5858 itemRight > visibleStartX &&
@@ -109,13 +109,13 @@ export const FlexGrid: React.FC<FlexGridProps> = ({
109109 } ;
110110
111111 useEffect ( ( ) => {
112- //recalculate visible items when tileSize or maxWidthRatio or data changes
112+ //recalculate visible items when itemSizeUnit or maxColumnRatioUnits or data changes
113113 if ( virtualization ) {
114114 updateVisibleItems ( ) ;
115115 }
116116 } , [
117- tileSize ,
118- maxWidthRatio ,
117+ itemSizeUnit ,
118+ maxColumnRatioUnits ,
119119 data ,
120120 virtualization ,
121121 containerHeight ,
@@ -160,8 +160,8 @@ export const FlexGrid: React.FC<FlexGridProps> = ({
160160 position : 'absolute' ,
161161 top : item . top ,
162162 left : item . left ,
163- width : ( item . widthRatio || 1 ) * tileSize ,
164- height : ( item . heightRatio || 1 ) * tileSize ,
163+ width : ( item . widthRatio || 1 ) * itemSizeUnit ,
164+ height : ( item . heightRatio || 1 ) * itemSizeUnit ,
165165 } }
166166 >
167167 { renderItem ( item , index ) }
0 commit comments