import clsx from 'clsx' import { useState } from 'react' import Textarea from 'react-expanding-textarea' import { Answer } from '../../common/answer' import { Contract } from '../../common/contract' import { AmountInput } from './amount-input' import { Col } from './layout/col' import { createAnswer } from '../lib/firebase/api-call' import { Row } from './layout/row' import { Avatar } from './avatar' import { SiteLink } from './site-link' import { DateTimeTooltip } from './datetime-tooltip' import dayjs from 'dayjs' import { BuyButton } from './yes-no-selector' export function AnswersPanel(props: { contract: Contract<'MULTI'> answers: Answer[] }) { const { contract, answers } = props return ( {answers.map((answer) => ( ))} ) } function AnswerItem(props: { answer: Answer; contract: Contract<'MULTI'> }) { const { answer, contract } = props const { username, avatarUrl, name, createdTime } = answer const createdDate = dayjs(createdTime).format('MMM D') return (
{answer.text}
{name}
{createdDate}
{}} /> ) } function CreateAnswerInput(props: { contract: Contract<'MULTI'> }) { const { contract } = props const [text, setText] = useState('') const [betAmount, setBetAmount] = useState(10) const [amountError, setAmountError] = useState() const [isSubmitting, setIsSubmitting] = useState(false) const canSubmit = text && betAmount && !amountError && !isSubmitting const submitAnswer = async () => { if (canSubmit) { setIsSubmitting(true) console.log('submitting', { text, betAmount }) const result = await createAnswer({ contractId: contract.id, text, amount: betAmount, }).then((r) => r.data) console.log('submit complte', result) setIsSubmitting(false) if (result.status === 'success') { setText('') setBetAmount(10) setAmountError(undefined) } } } return (
Add your answer