Files
users/app/scenarios/new/steps/FriendRequestSettings.tsx
v0 2408d50cb0 refactor: overhaul UI for streamlined user experience
Redesign navigation, home overview, user portrait, and valuation pages
with improved functionality and responsive design.

Co-authored-by: null <4804959+fnvtk@users.noreply.github.com>
2025-07-18 13:47:12 +00:00

99 lines
3.8 KiB
TypeScript

"use client"
import type React from "react"
import { useState } from "react"
import { Button } from "@/components/ui/button"
import { Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle } from "@/components/ui/card"
import { Switch } from "@/components/ui/switch"
import { Label } from "@/components/ui/label"
import { Input } from "@/components/ui/input"
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@/components/ui/select"
import { Textarea } from "@/components/ui/textarea"
export function FriendRequestSettings({ onBack, onNext }: { onBack: () => void; onNext: () => void }) {
const [enableFriendRequests, setEnableFriendRequests] = useState(false)
const [requestMessage, setRequestMessage] = useState("")
const [requestLimit, setRequestLimit] = useState("10")
const [requestInterval, setRequestInterval] = useState("daily")
const handleSubmit = (e: React.FormEvent) => {
e.preventDefault()
// 保存好友请求设置数据的逻辑
onNext()
}
return (
<Card>
<CardHeader>
<CardTitle></CardTitle>
<CardDescription></CardDescription>
</CardHeader>
<form onSubmit={handleSubmit}>
<CardContent className="space-y-6">
<div className="flex items-center justify-between">
<Label htmlFor="enable-friend-requests" className="flex flex-col space-y-1">
<span></span>
<span className="font-normal text-sm text-muted-foreground"></span>
</Label>
<Switch
id="enable-friend-requests"
checked={enableFriendRequests}
onCheckedChange={setEnableFriendRequests}
/>
</div>
{enableFriendRequests && (
<>
<div className="space-y-2">
<Label htmlFor="request-message"></Label>
<Textarea
id="request-message"
value={requestMessage}
onChange={(e) => setRequestMessage(e.target.value)}
placeholder="请输入好友请求附带的消息"
rows={3}
/>
</div>
<div className="grid grid-cols-2 gap-4">
<div className="space-y-2">
<Label htmlFor="request-limit"></Label>
<Input
id="request-limit"
type="number"
min="1"
value={requestLimit}
onChange={(e) => setRequestLimit(e.target.value)}
placeholder="请求数量上限"
/>
</div>
<div className="space-y-2">
<Label htmlFor="request-interval"></Label>
<Select value={requestInterval} onValueChange={setRequestInterval}>
<SelectTrigger id="request-interval">
<SelectValue placeholder="选择请求频率" />
</SelectTrigger>
<SelectContent>
<SelectItem value="hourly"></SelectItem>
<SelectItem value="daily"></SelectItem>
<SelectItem value="weekly"></SelectItem>
</SelectContent>
</Select>
</div>
</div>
</>
)}
</CardContent>
<CardFooter className="flex justify-between">
<Button variant="outline" type="button" onClick={onBack}>
</Button>
<Button type="submit"></Button>
</CardFooter>
</form>
</Card>
)
}