0.3.2 • Published 8 months ago
@mordech/dynamic-grid-react v0.3.2
DynamicGrid Component
The DynamicGrid component is a React component that allows for dynamic grid layouts. It uses the @mordech/dynamic-grid-core library to calculate the number of columns based on the available space and the minimum column width.
Installation
To install the DynamicGrid component, you can use npm or yarn:
npm install @mordech/dynamic-grid-reactyarn add @mordech/dynamic-grid-reactUsage
To use the DynamicGrid component, you can import it and use it like any other React component:
import DynamicGrid from '@mordech/dynamic-grid-react';
function MyComponent() {
return (
<DynamicGrid
minColumnWidth="200px"
gridType="auto-fill"
gap="20px"
maxColumns={4}
dividedBy={2}
scrollOptions={{
hint: 100,
hideScrollbar: true,
rows: 5,
scrollSnapAlign: 'start',
}}
isScroll={true}
>
{/* Your grid items here */}
</DynamicGrid>
);
}Props
The DynamicGrid component accepts the following props:
minColumnWidth(required): The minimum width of each column. This can be any valid CSS length value inremorpx, such as200pxor10rem.gridType(optional): The type of grid to use. This can be eitherauto-fillorauto-fit. Defaults toauto-fill.gap(optional): The gap between each grid item. This can be any valid CSS length value, such as20pxor2rem. Defaults to0.maxColumns(optional): The maximum number of columns to display. If there is not enough space for this many columns, the grid will shrink to fit.dividedBy(optional): The number to divide the available space by to calculate the number of columns. Defaults to1.shrink(optional): Makes the grid shrink to fit below the minimum width. Defaults totrue.isScroll(optional): Whether to enable scrolling. Defaults tofalse.scrollOptions(optional): An object containing options for scrolling. This object can have the following properties:hint: The number of pixels to show before and after the visible area. Defaults to0.hideScrollbar: Whether to hide the scrollbar. Defaults tofalse.rows: The number of rows to display. Defaults to1.scrollSnapAlign: The alignment of the scroll snap points. Can be eitherstart,center,end, ornone. Defaults tostart.
License
This component is licensed under the MIT License. See the LICENSE file for details.