"use client"; import { useState } from "react"; import Image from "next/image"; import { useApp } from "@/contexts/AppContext"; import { Tabs, Tab, Button } from "@heroui/react"; import ReviewModal from "@/components/common/ReviewModal"; import WithdrawModal from "@/components/common/WithdrawModal"; import { buttonStyles } from "@/lib/buttonStyles"; export default function MintSwapPanel() { const { t } = useApp(); const [activeAction, setActiveAction] = useState<"deposit" | "withdraw">("deposit"); const [amount, setAmount] = useState(""); const [isReviewModalOpen, setIsReviewModalOpen] = useState(false); const [isWithdrawModalOpen, setIsWithdrawModalOpen] = useState(false); return (
{/* Content */}
{/* Deposit/Withdraw Toggle */} setActiveAction(key as "deposit" | "withdraw")} variant="solid" classNames={{ base: "w-full", tabList: "bg-[#f9fafb] dark:bg-gray-700 rounded-xl p-1 gap-0 w-full", cursor: "bg-bg-surface dark:bg-gray-600 shadow-sm", tab: "h-8 px-4", tabContent: "text-body-small font-medium text-text-tertiary dark:text-gray-400 group-data-[selected=true]:font-bold group-data-[selected=true]:text-text-primary dark:group-data-[selected=true]:text-white", }} > {/* Input Area */}
{/* Label and Balance */}
{t("mintSwap.deposit")}
{t("mintSwap.balance")}: $12,500.00
{/* Input Row */}
setAmount(e.target.value)} className="w-full text-left text-heading-h3 font-bold text-text-primary dark:text-white placeholder:text-[#d1d5db] dark:placeholder:text-gray-500 bg-transparent border-none outline-none [appearance:textfield] [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none" /> {amount ? `≈ $${amount}` : "--"}
{/* Estimated Returns */}
{t("mintSwap.estimatedReturns")}
{t("mintSwap.estAPY")} 22%
{t("mintSwap.estReturns")} ~ $0.50
{/* Transaction Summary */}
{t("mintSwap.transactionSummary")}
{t("mintSwap.youGet")} 9852.21 GYUS
{t("mintSwap.salesPrice")} $1.04 USDC
{t("mintSwap.fee")} -$50 (0.5%)
{t("mintSwap.gas")} -$0.09
{/* Submit Button */} {/* Review Modal for Deposit */} setIsReviewModalOpen(false)} amount={amount} /> {/* Withdraw Modal */} setIsWithdrawModalOpen(false)} amount={amount} /> {/* Terms */}
{t("mintSwap.termsText")}{" "} {t("mintSwap.termsOfService")} {" "}{t("mintSwap.and")}
{t("mintSwap.privacyPolicy")}
); }