import { v4 } from 'uuid'; import { CardProps } from '../../util/propTypes'; import { ResourceCost } from '../../util/types'; import { useCurrentPlayer } from '../../util/useCurrentPlayer'; import { buyCardActions } from '../Player/ActionMethods'; import { hasMaxReserved, reserveCard } from '../Player/ActionMethods/reserveCardActions'; const { buyCard, tooExpensive } = buyCardActions; export default function Card({ data, state, setState }: CardProps) { const currentPlayer = useCurrentPlayer(state); return (

Counts as: {data.gemValue}

Point value: {data.points || 0}

Cost:

{ Object.keys(data.resourceCost).map((key: keyof ResourceCost | string) => { // @ts-ignore return (data.resourceCost[key as keyof ResourceCost] > 0) &&

{key}: {data.resourceCost[key as keyof ResourceCost]}

}) } { state.actions.buyCard.active && } { state.actions.reserveCard.active && }
) }