import { Button } from "@/components/ui/button"
import { Card, CardContent } from "@/components/ui/card"
import { Badge } from "@/components/ui/badge"
import { Input } from "@/components/ui/input"
import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs"
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@/components/ui/select"
import { Slider } from "@/components/ui/slider"
import { MapPin, Home, Bath, BedDouble, ArrowRight, Search, Star } from "lucide-react"
import Link from "next/link"
import PageHeader from "@/components/page-header"
export default function PropertiesPage() {
return (
{/* Filters Sidebar */}
Filters
฿5,000,000
฿20,000,000
{["Any", "1", "2", "3", "4+"].map((num) => (
))}
{["Any", "1", "2", "3", "4+"].map((num) => (
))}
{/* Main Content */}
{/* Search and Sort Bar */}
{/* View Tabs */}
Showing 156 properties
Grid
List
{/* List View Property Cards */}
)
}
interface PropertyCardProps {
id: string
title: string
price: number
location: string
bedrooms: number
bathrooms: number
area: number
type: string
image: string
premium?: boolean
}
function PropertyCard({
id,
title,
price,
location,
bedrooms,
bathrooms,
area,
type,
image,
premium,
}: PropertyCardProps) {
return (
{type}
{premium && (
Premium
)}
{title}
{location}
{bedrooms}
{bathrooms}
{area} m²
฿{price.toLocaleString()}
)
}
function PropertyCardList({
id,
title,
price,
location,
bedrooms,
bathrooms,
area,
type,
image,
premium,
}: PropertyCardProps) {
return (
{type}
{premium && (
Premium
)}
{title}
฿{price.toLocaleString()}
{location}
{bedrooms} Beds
{bathrooms} Baths
{area} m²
)
}