"use client" import { useState } from "react" import { Button } from "@/components/ui/button" import { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, } from "@/components/ui/dialog" import { Input } from "@/components/ui/input" import { Label } from "@/components/ui/label" import { Textarea } from "@/components/ui/textarea" import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@/components/ui/select" import { Plus, Upload, AlertTriangle, Loader2 } from "lucide-react" import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs" import { Switch } from "@/components/ui/switch" import { cn } from "@/lib/utils" export function AddOutfitDialog() { const [open, setOpen] = useState(false) const [step, setStep] = useState(1) const [isSubmitting, setIsSubmitting] = useState(false) const [outfitType, setOutfitType] = useState("") const [rarity, setRarity] = useState("") const [printQuantity, setPrintQuantity] = useState(1000) const [isLimited, setIsLimited] = useState(false) const [previewId, setPreviewId] = useState( "OFT" + Math.floor(Math.random() * 1000) .toString() .padStart(3, "0"), ) const handleSubmit = async () => { setIsSubmitting(true) // 模拟API请求 await new Promise((resolve) => setTimeout(resolve, 1500)) setIsSubmitting(false) setOpen(false) // 重置表单 setStep(1) setOutfitType("") setRarity("") setPrintQuantity(1000) setIsLimited(false) setPreviewId( "OFT" + Math.floor(Math.random() * 1000) .toString() .padStart(3, "0"), ) } const handleNext = () => { setStep(step + 1) } const handleBack = () => { setStep(step - 1) } const handleClose = () => { setOpen(false) setStep(1) } return ( 添加新服装 填写服装信息以创建新的服装卡牌。创建后将生成唯一的卡牌ID。 = 1 ? "text-pink-600" : "text-gray-500", )} disabled > 基本信息 = 2 ? "text-pink-600" : "text-gray-500", )} disabled > 图片上传 = 3 ? "text-pink-600" : "text-gray-500", )} disabled > 确认创建
setPrintQuantity(Number.parseInt(e.target.value))} placeholder="输入印刷数量" className="border-gray-300 focus-visible:ring-pink-500" required />