5180 fichiers 38.5 Mo 0 téléchargements 154 vues mis à jour il y a 4 heures ui
AutoGrid.tsx 1 Ko Télécharger le fichier
import { CSSProperties, FC, useMemo } from 'react';
import { Grid, GridProps } from './Grid';

export interface AutoGridProps extends GridProps {
    columnMinWidth?: number;
    columnMinHeight?: number;
}

export const AutoGrid: FC<AutoGridProps> = (props) => {
    const { columnMinWidth = 40, columnMinHeight = 40, columnCount = 0, fullHeight = false, maxContent = true, overflow = 'auto', style = {}, ...rest } = props;

    const getStyle = useMemo(() => {
        let newStyle: CSSProperties = {};

        newStyle['--octane-grid-column-min-height'] = columnMinHeight + 'px';
        newStyle['--octane-grid-column-min-width'] = columnMinWidth + 'px';

        if (columnCount > 1) newStyle.gridTemplateColumns = `repeat(auto-fill, minmax(${columnMinWidth}px, 1fr))`;

        if (Object.keys(style).length) newStyle = { ...newStyle, ...style };

        return newStyle;
    }, [columnMinWidth, columnMinHeight, columnCount, style]);

    return <Grid columnCount={columnCount} fullHeight={fullHeight} overflow={overflow} style={getStyle} {...rest} />;
};
15Sujets
1Dépôts
20Membres
7En ligne
Profile
Inscrit
Dernière visite
Messages
0
Votes positifs
0
Votes négatifs
0

Nous utilisons des cookies pour assurer le bon fonctionnement du site et améliorer votre expérience. en savoir plus

Autoriser