'use client'; import { Activity, Bell, Building2, Home, LineChart, Map, User2, } from 'lucide-react'; import { CompactHeader, DashboardLayout, DataTable, MarketIndex, PriceDelta, StatCard, TickerStrip, type DataTableColumn, } from '@/components/design-system'; type DistrictRow = { id: string; code: string; name: string; price: number; // tr/m² changePercent: number; volume: number; area: number; }; const tickerItems = [ { id: 't-q1', label: 'Q1', changePercent: 2.3 }, { id: 't-q2', label: 'Q2', changePercent: 0.5 }, { id: 't-q7', label: 'Q7', changePercent: -1.1 }, { id: 't-bt', label: 'BT', changePercent: 0.0 }, { id: 't-td', label: 'TĐ', changePercent: 1.8 }, { id: 't-gv', label: 'GV', changePercent: -0.4 }, { id: 't-q9', label: 'Q9', changePercent: 3.1 }, { id: 't-tb', label: 'TB', changePercent: 0.2 }, ]; const rows: DistrictRow[] = [ { id: 'q1', code: 'Q1', name: 'Quận 1', price: 152.4, changePercent: 2.3, volume: 42, area: 78 }, { id: 'q2', code: 'Q2', name: 'Quận 2', price: 98.7, changePercent: 0.5, volume: 55, area: 120 }, { id: 'q7', code: 'Q7', name: 'Quận 7', price: 85.2, changePercent: -1.1, volume: 67, area: 95 }, { id: 'bt', code: 'BT', name: 'Bình Thạnh', price: 72.0, changePercent: 0.0, volume: 29, area: 88 }, { id: 'td', code: 'TĐ', name: 'Thủ Đức', price: 58.9, changePercent: 1.8, volume: 91, area: 102 }, { id: 'q9', code: 'Q9', name: 'Quận 9', price: 45.2, changePercent: 3.1, volume: 112, area: 110 }, { id: 'tb', code: 'TB', name: 'Tân Bình', price: 76.5, changePercent: 0.2, volume: 38, area: 82 }, { id: 'gv', code: 'GV', name: 'Gò Vấp', price: 62.3, changePercent: -0.4, volume: 44, area: 76 }, ]; const columns: DataTableColumn[] = [ { id: 'code', header: 'Mã', cell: (r) => {r.code}, width: '64px', sortable: true, sortValue: (r) => r.code, }, { id: 'name', header: 'Khu vực', cell: (r) => {r.name}, sortable: true, sortValue: (r) => r.name, }, { id: 'price', header: 'Giá TB (tr/m²)', cell: (r) => r.price.toFixed(1), align: 'right', numeric: true, sortable: true, sortValue: (r) => r.price, }, { id: 'delta', header: 'Δ 7d', cell: (r) => , align: 'right', sortable: true, sortValue: (r) => r.changePercent, }, { id: 'area', header: 'DT TB (m²)', cell: (r) => r.area, align: 'right', numeric: true, sortable: true, sortValue: (r) => r.area, }, { id: 'volume', header: 'KL', cell: (r) => r.volume, align: 'right', numeric: true, sortable: true, sortValue: (r) => r.volume, }, ]; const sidebarItems = [ { icon: Home, label: 'Trang chủ' }, { icon: Building2, label: 'Listings' }, { icon: Map, label: 'Bản đồ' }, { icon: LineChart, label: 'Thị trường' }, { icon: Activity, label: 'Hoạt động' }, ]; export default function DesignSystemDemoPage() { return ( } sidebar={ } header={ GOODGO } breadcrumb={ / Design System{' '} / Demo } actions={ <> } /> } statusBar={ <> Online Cập nhật: 14:32:07 GGX 1,245.82 +1.3% } >
24h 7d 30d

Bảng giá top khu vực

r.id} defaultSortId="price" defaultSortDir="desc" />

PriceDelta variants

Signal palette

signal-up
signal-down
signal-neutral

Typography

1,245.82 45.2 tr/m² +1.32% Inter body
); }