4f3202f90b
* rename BetRow -> BetButton * Replace bet modal in embed with inline betting - Also simplifies graph height calculation * Move bet row above graph, in "mini modal" * Show signup button if not signed up * Show probability change * Show error after modal - Show balance if insufficient funds - Clear error from amount input if amount deleted entirely * Fix error state conditions - Reset amount input on success - Reset success state on user input * Make input smaller (80px)
26 lines
641 B
TypeScript
26 lines
641 B
TypeScript
import React from 'react'
|
|
import { useUser } from 'web/hooks/use-user'
|
|
import { firebaseLogin } from 'web/lib/firebase/users'
|
|
import { withTracking } from 'web/lib/service/analytics'
|
|
import { Button, SizeType } from './button'
|
|
|
|
export function SignUpPrompt(props: {
|
|
label?: string
|
|
className?: string
|
|
size?: SizeType
|
|
}) {
|
|
const { label, className, size = 'lg' } = props
|
|
const user = useUser()
|
|
|
|
return user === null ? (
|
|
<Button
|
|
onClick={withTracking(firebaseLogin, 'sign up to bet')}
|
|
className={className}
|
|
size={size}
|
|
color="gradient"
|
|
>
|
|
{label ?? 'Sign up to bet!'}
|
|
</Button>
|
|
) : null
|
|
}
|