Rev 3623 | AutorÃa | Comparar con el anterior | Ultima modificación | Ver Log |
import React from 'react';import { styled, Typography } from '@mui/material';const StyledList = styled('ul')`display: flex;flex-direction: column;list-style: none;padding: 0;gap: 1rem;`;export function List({items = [],renderItem = () => {},emptyMessage = 'No hay elementos para mostrar',keyExtractor = (item) => item.id,renderHeader,renderFooter,style = {}}) {if (!items || !items.length) {return <Typography>{emptyMessage}</Typography>;}return (<StyledList style={style}>{renderHeader && <li>{renderHeader()}</li>}{items.map((item, index) => {return <li key={keyExtractor(item)}>{renderItem(item, index)}</li>;})}{renderFooter && <li>{renderFooter()}</li>}</StyledList>);}