2020-02-14 17:44:54 +01:00
|
|
|
import React from 'react';
|
|
|
|
import PropTypes from 'prop-types';
|
2020-03-02 00:21:43 +01:00
|
|
|
import { Checkbox } from '@buffetjs/core';
|
2020-02-14 17:44:54 +01:00
|
|
|
|
2020-03-05 14:38:51 +01:00
|
|
|
import Text from '../Text';
|
2020-02-14 17:44:54 +01:00
|
|
|
import CardImgWrapper from '../CardImgWrapper';
|
2020-03-02 00:21:43 +01:00
|
|
|
import CardPreview from '../CardPreview';
|
2020-02-14 17:44:54 +01:00
|
|
|
import Wrapper from './Wrapper';
|
|
|
|
import Title from './Title';
|
|
|
|
|
2020-03-05 16:13:44 +01:00
|
|
|
// TODO - adapt with the real data
|
|
|
|
const Card = ({ checked, id, name, size, small, type, onChange, url }) => {
|
2020-02-14 17:44:54 +01:00
|
|
|
return (
|
|
|
|
<Wrapper>
|
|
|
|
<div>
|
2020-03-05 16:13:44 +01:00
|
|
|
<CardImgWrapper small={small} checked={checked}>
|
|
|
|
<CardPreview type={type} url={url} />
|
2020-03-02 00:21:43 +01:00
|
|
|
<div className="card-control-wrapper">
|
2020-03-05 16:13:44 +01:00
|
|
|
<Checkbox name={id} onChange={onChange} value={checked} />
|
2020-03-02 00:21:43 +01:00
|
|
|
</div>
|
2020-02-14 17:44:54 +01:00
|
|
|
</CardImgWrapper>
|
2020-03-05 14:38:51 +01:00
|
|
|
<Title fontSize="md" fontWeight="bold" ellipsis>
|
2020-03-05 11:21:23 +01:00
|
|
|
{name}
|
|
|
|
</Title>
|
2020-03-05 14:38:51 +01:00
|
|
|
<Text color="grey" fontSize="xs" ellipsis>{`${type} - ${size}`}</Text>
|
2020-02-14 17:44:54 +01:00
|
|
|
</div>
|
|
|
|
</Wrapper>
|
|
|
|
);
|
|
|
|
};
|
|
|
|
|
|
|
|
Card.defaultProps = {
|
2020-03-05 16:13:44 +01:00
|
|
|
checked: false,
|
|
|
|
name: null,
|
2020-03-02 14:33:16 +01:00
|
|
|
onChange: () => {},
|
2020-03-05 16:13:44 +01:00
|
|
|
size: 0,
|
2020-03-05 14:34:05 +01:00
|
|
|
small: false,
|
2020-03-05 16:13:44 +01:00
|
|
|
type: null,
|
|
|
|
url: null,
|
2020-02-14 17:44:54 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
Card.propTypes = {
|
2020-03-05 16:13:44 +01:00
|
|
|
checked: PropTypes.bool,
|
|
|
|
name: PropTypes.string,
|
2020-03-02 14:33:16 +01:00
|
|
|
id: PropTypes.string.isRequired,
|
|
|
|
onChange: PropTypes.func,
|
2020-03-05 16:13:44 +01:00
|
|
|
size: PropTypes.number,
|
2020-03-05 14:34:05 +01:00
|
|
|
small: PropTypes.bool,
|
2020-03-05 16:13:44 +01:00
|
|
|
type: PropTypes.string,
|
|
|
|
url: PropTypes.string,
|
2020-02-14 17:44:54 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
export default Card;
|