"use client"; import { useState } from "react"; import { Dialog, DialogContent, DialogHeader, DialogTitle, DialogDescription } from "@/components/ui/dialog"; import { Separator } from "@/components/ui/separator"; import { Input } from "@/components/ui/input"; import { Link, Search } from "lucide-react"; import { FarmCard } from "./farm-card"; import { AddFarmForm } from "./add-farm-form"; import { useRouter } from "next/navigation"; import type { Farm } from "@/types"; export default function FarmSetupPage() { const router = useRouter(); const [isDialogOpen, setIsDialogOpen] = useState(false); const [searchQuery, setSearchQuery] = useState(""); const [farms, setFarms] = useState([ { id: "1", name: "Green Valley Farm", location: "Bangkok", type: "Durian", createdAt: new Date(), }, ]); const handleAddFarm = async (data: Partial) => { const newFarm: Farm = { id: Math.random().toString(36).substr(2, 9), name: data.name!, location: data.location!, type: data.type!, createdAt: new Date(), }; setFarms([...farms, newFarm]); setIsDialogOpen(false); }; const filteredFarms = farms.filter( (farm) => farm.name.toLowerCase().includes(searchQuery.toLowerCase()) || farm.location.toLowerCase().includes(searchQuery.toLowerCase()) || farm.type.toLowerCase().includes(searchQuery.toLowerCase()) ); return (

Farms

setSearchQuery(e.target.value)} />
setIsDialogOpen(true)} /> Setup New Farm Fill out the form to configure your new farm. setIsDialogOpen(false)} /> {filteredFarms.map((farm) => ( { router.push(`/farms/${farm.id}`); }} /> ))}
); }