| import React from 'react' | |
| import { Link } from 'react-router-dom' | |
| import PropTypes from 'prop-types'; | |
| import { Card, Flex, Image, NavLink, Title } from '@mantine/core' | |
| const Play = () => { | |
| return ( | |
| <Card sx={{ | |
| width: '540px', | |
| height: '75%', | |
| textAlign: 'center', | |
| backgroundColor: '#262523' | |
| }}> | |
| <Flex gap="15px" px="20px" justify='center' align='center' wrap='nowrap' direction='column'> | |
| <Title order={2} >Play Chess</Title> | |
| <Image my="md" withPlaceholder width={200} height={120} src={null} /> | |
| { | |
| dataList.map((item, index) => <CardItem key={index} label={item.label} description={item.description} src={item.src} to={item.to} />) | |
| } | |
| </Flex> | |
| </Card> | |
| ) | |
| } | |
| const CardItem = ({ label, description, src, to }) => { | |
| return ( | |
| <NavLink | |
| component={Link} | |
| to={to} | |
| label={label} | |
| icon={<Image src={src} width={50} />} | |
| description={description} | |
| sx={{ backgroundColor: '#1f1f1a', borderRadius: '5px' }} | |
| p='20px' | |
| /> | |
| ) | |
| } | |
| CardItem.propTypes = { | |
| label: PropTypes.string, | |
| description: PropTypes.string, | |
| src: PropTypes.string, | |
| to: PropTypes.string | |
| } | |
| const dataList = [ | |
| { label: 'Play Online', description: 'Play vs a person of similar skill', src: 'https://www.chess.com/bundles/web/images/color-icons/blitz.a0e36339.svg', to: "/play/online" }, | |
| { label: 'Computer', description: 'Challenge a bot from easy to master', src: 'https://www.chess.com/bundles/web/images/color-icons/computer.2318c3b4.svg', to: "/play/computer" }, | |
| { label: 'Play Friend', description: 'Invite a friend to a game of chess', src: 'https://www.chess.com/bundles/web/images/color-icons/handshake.fb30f50b.svg', to: "/play/friend" }, | |
| { label: 'Tournaments', description: 'Join an arena where anyone can win', src: 'https://www.chess.com/bundles/web/images/color-icons/tournaments.6de54f69.svg', to: "/play/tournament" }, | |
| ] | |
| export default Play |