45 lines
1.4 KiB
TypeScript
45 lines
1.4 KiB
TypeScript
import { Suspense } from "react";
|
||
import type { Metadata } from "next";
|
||
|
||
import { AnalysisPageContent } from "./AnalysisPageContent";
|
||
|
||
// ── Metadata ──────────────────────────────────────────────────────────────────
|
||
|
||
interface PageProps {
|
||
params: Promise<{ cad: string }>;
|
||
}
|
||
|
||
export async function generateMetadata({
|
||
params,
|
||
}: PageProps): Promise<Metadata> {
|
||
const { cad } = await params;
|
||
return {
|
||
title: `Анализ ${cad} — Site Finder`,
|
||
description: `Анализ инвестиционного участка ${cad}`,
|
||
};
|
||
}
|
||
|
||
// ── Page ──────────────────────────────────────────────────────────────────────
|
||
|
||
export default async function AnalysisPage({ params }: PageProps) {
|
||
const { cad } = await params;
|
||
|
||
return (
|
||
<Suspense
|
||
fallback={
|
||
<div
|
||
style={{
|
||
padding: "40px 24px",
|
||
textAlign: "center",
|
||
color: "var(--fg-tertiary, #73767E)",
|
||
fontSize: 14,
|
||
}}
|
||
>
|
||
Загрузка анализа…
|
||
</div>
|
||
}
|
||
>
|
||
<AnalysisPageContent cad={cad} />
|
||
</Suspense>
|
||
);
|
||
}
|