@mordech/dynamic-grid-react
v0.3.0
Published
The `DynamicGrid` component is a React component that allows for dynamic grid layouts. It uses the [`@mordech/dynamic-grid-core`](https://www.npmjs.com/package/@mordech/dynamic-grid-core) library to calculate the number of columns based on the available s
Downloads
1
Readme
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-react
yarn add @mordech/dynamic-grid-react
Usage
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 inrem
orpx
, such as200px
or10rem
.gridType
(optional): The type of grid to use. This can be eitherauto-fill
orauto-fit
. Defaults toauto-fill
.gap
(optional): The gap between each grid item. This can be any valid CSS length value, such as20px
or2rem
. 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.