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