49 lines
1.0 KiB
JavaScript
Raw Normal View History

2018-02-16 16:53:01 +01:00
/**
*
* List
*
*/
import React from 'react';
import PropTypes from 'prop-types';
import { FormattedMessage } from 'react-intl';
2018-02-16 16:53:01 +01:00
2019-02-22 11:11:25 +01:00
import Li from '../Li';
import ListHeader from '../ListHeader';
import EmptyLi from './EmptyLi';
import Wrapper from './Wrapper';
2018-02-16 16:53:01 +01:00
function List(props) {
return (
<Wrapper className="container-fluid">
2018-02-16 16:53:01 +01:00
<div className="row">
<ul className="list">
<ListHeader changeSort={props.changeSort} sort={props.sort} />
2018-02-19 13:10:35 +01:00
{props.data.map((item, key) => (
<Li key={item.hash || key} item={item} />
2018-02-19 13:10:35 +01:00
))}
{props.data.length === 0 && (
<EmptyLi>
<div>
<FormattedMessage id="upload.EmptyLi.message" />
</div>
</EmptyLi>
)}
2018-02-16 16:53:01 +01:00
</ul>
</div>
</Wrapper>
2018-02-16 16:53:01 +01:00
);
}
List.defaultProps = {
sort: 'id',
};
2018-02-16 16:53:01 +01:00
2018-02-19 13:10:35 +01:00
List.propTypes = {
changeSort: PropTypes.func.isRequired,
2018-02-19 13:10:35 +01:00
data: PropTypes.arrayOf(PropTypes.object).isRequired,
sort: PropTypes.string,
2018-02-19 13:10:35 +01:00
};
2018-02-16 16:53:01 +01:00
export default List;