mosaicmap/app/page.tsx
2025-07-30 21:33:40 +08:00

66 lines
2.0 KiB
TypeScript

'use client'
import { AppSidebar } from '@/app/app-sidebar'
import {
Breadcrumb,
BreadcrumbItem,
BreadcrumbList,
BreadcrumbPage,
} from '@/components/ui/breadcrumb'
import { Separator } from '@/components/ui/separator'
import {
SidebarInset,
SidebarProvider,
SidebarTrigger,
} from '@/components/ui/sidebar'
import { MapComponent } from '@/components/map-component';
import { ThemeToggle } from '@/components/theme-toggle';
import { Timeline } from '@/app/timeline';
import { cn } from '@/lib/utils';
import { useTimeline } from '@/hooks/use-timeline';
import { useEffect } from 'react'
import { useRadarTile } from '@/hooks/use-radartile'
export default function Page() {
const now = new Date();
const startDate = new Date(now.getTime() - 7 * 24 * 60 * 60 * 1000); // 7天前
const endDate = new Date(now.getTime() + 3 * 24 * 60 * 60 * 1000); // 3天后
const { setTime } = useTimeline()
const { imgBitmap, fetchRadarTile } = useRadarTile({})
return (
<SidebarProvider>
<AppSidebar />
<SidebarInset>
<header className="sticky top-0 flex h-16 shrink-0 items-center gap-2 border-b bg-background px-4">
{/* <SidebarTrigger className="-ml-1" /> */}
{/* <Separator orientation="vertical" className="mr-2 h-4" /> */}
<div className="flex items-center gap-2 justify-between w-full">
{/* <ThemeToggle /> */}
</div>
</header>
<div className="relative h-full w-full flex flex-col">
<MapComponent imgBitmap={imgBitmap} />
<Timeline
className={
cn(
"backdrop-blur-lg border shadow-lg",
"bg-background/90 border-border",
"z-10"
)
}
startDate={startDate}
endDate={endDate}
onDateChange={(date) => {
console.log('Selected date:', date);
setTime(date)
}}
/>
</div>
</SidebarInset>
</SidebarProvider>
)
}