import { Spinner } from '@/internal/components/Spinner'; import { cn, pressable, text, prefixClassName } from '@/styles/theme'; import { TransactionButtonRenderParams } from '@/transaction'; export type RenderDepositButtonProps = TransactionButtonRenderParams & { depositAmountError: string | null; depositedAmount: string; vaultToken?: { symbol: string }; }; export function RenderDepositButton({ context, onSubmit, onSuccess, isDisabled, depositAmountError, depositedAmount, vaultToken, }: RenderDepositButtonProps) { const classNames = prefixClassName( cn( pressable.primary, 'rounded-ock-default', 'w-full rounded-xl', 'px-4 py-3 font-medium leading-6', isDisabled && pressable.disabled, text.headline, 'text-ock-foreground-inverse', ), ); if (context.receipt) { return ( ); } if (context.errorMessage || depositAmountError) { return ( ); } if (context.isLoading) { return ( ); } return ( ); }