32 lines
1.0 KiB
TypeScript
32 lines
1.0 KiB
TypeScript
import { getOrder } from '@/actions/api/orders';
|
|
import { Container } from '@/components/layout';
|
|
import { PageHeader } from '@/components/navigation';
|
|
import { OrderContacts, OrderDateTime, OrderServices } from '@/components/orders';
|
|
import { type OrderPageParameters } from '@/components/orders/types';
|
|
import { dehydrate, HydrationBoundary, QueryClient } from '@tanstack/react-query';
|
|
|
|
type Props = { params: Promise<OrderPageParameters> };
|
|
|
|
export default async function ProfilePage(props: Readonly<Props>) {
|
|
const parameters = await props.params;
|
|
const documentId = parameters.documentId;
|
|
|
|
const queryClient = new QueryClient();
|
|
|
|
await queryClient.prefetchQuery({
|
|
queryFn: () => getOrder({ documentId }),
|
|
queryKey: ['order', documentId],
|
|
});
|
|
|
|
return (
|
|
<HydrationBoundary state={dehydrate(queryClient)}>
|
|
<PageHeader title="Запись" />
|
|
<Container>
|
|
<OrderDateTime {...parameters} />
|
|
<OrderContacts {...parameters} />
|
|
<OrderServices {...parameters} />
|
|
</Container>
|
|
</HydrationBoundary>
|
|
);
|
|
}
|