timhaley94/holdem

View on GitHub
client/src/components/Opponent/index.js

Summary

Maintainability
A
0 mins
Test Coverage
F
0%
import React from 'react';
import PropTypes from 'prop-types';
import Avatar from '../Avatar';
import Purse from '../Purse';
import styles from './index.module.css';

function Opponent({
  name,
  userId,
  purse: { wagered, bankroll },
}) {
  return (
    <div className={styles.container}>
      <Avatar userId={userId} className={styles.avatar} />
      <h6 className={styles.name}>{ name }</h6>
      <Purse amount={parseInt(bankroll, 10) - parseInt(wagered, 10)} />
    </div>
  );
}

const numberOrString = PropTypes.oneOfType([
  PropTypes.number,
  PropTypes.string,
]);

Opponent.propTypes = {
  name: PropTypes.string.isRequired,
  userId: PropTypes.string.isRequired,
  purse: PropTypes.shape({
    wagered: numberOrString.isRequired,
    bankroll: numberOrString.isRequired,
  }).isRequired,
};

export default Opponent;