feat: add property detail page with comprehensive property information and analytics

- Implemented PropertyDetailPage component to display detailed information about a selected property, including images, features, amenities, and market trends.
- Added SimilarPropertyCard component for showcasing similar properties.
- Created loading state for property detail page.
- Developed PropertiesPage component with filtering options and property listings in grid and list views.
- Introduced PropertyCard and PropertyCardList components for displaying property information in different layouts.
- Integrated UI components such as buttons, cards, badges, and tabs for enhanced user experience.
This commit is contained in:
Pattadon 2025-04-08 14:14:36 +07:00
parent 8882cb6d76
commit 90a3b67cc4
14 changed files with 16 additions and 2 deletions

View File

@ -0,0 +1,16 @@
"use client";
import Sidebar from "@/components/sidebar";
export default function AppLayout({
children,
}: Readonly<{
children: React.ReactNode;
}>) {
return (
<div className="flex h-screen">
<Sidebar />
<div className="flex-1 overflow-auto">{children}</div>
</div>
);
}

View File

@ -3,7 +3,6 @@ import type { Metadata } from "next";
import { Poppins } from "next/font/google"; import { Poppins } from "next/font/google";
import "./globals.css"; import "./globals.css";
import { ThemeProvider } from "@/components/theme-provider"; import { ThemeProvider } from "@/components/theme-provider";
import Sidebar from "@/components/sidebar";
const poppins = Poppins({ const poppins = Poppins({
subsets: ["latin"], subsets: ["latin"],
@ -26,7 +25,6 @@ export default function RootLayout({
<body className={poppins.className}> <body className={poppins.className}>
<ThemeProvider attribute="class" defaultTheme="system" enableSystem disableTransitionOnChange> <ThemeProvider attribute="class" defaultTheme="system" enableSystem disableTransitionOnChange>
<div className="flex h-screen"> <div className="flex h-screen">
<Sidebar />
<div className="flex-1 overflow-auto">{children}</div> <div className="flex-1 overflow-auto">{children}</div>
</div> </div>
</ThemeProvider> </ThemeProvider>