import { getUser } from '@/api/user/query'; import initializeApollo from '@/apollo/client'; import * as Calculation from '@/Components/Calculation'; import { CRMError } from '@/Components/Common/Error'; import Output from '@/Components/Output'; import { useDefaultReactions } from '@/config/process'; import * as init from '@/process/init'; import { min } from '@/styles/mq'; import { dehydrate, QueryClient } from '@tanstack/react-query'; import Head from 'next/head'; import styled from 'styled-components'; import { Box } from 'ui/grid'; const Grid = styled(Box)` display: flex; flex-direction: column; gap: 10px; ${min('laptop')} { display: grid; align-items: flex-start; grid-template-columns: 2fr 1fr; } ${min('laptop-hd')} { grid-template-columns: 2fr 1fr 1.5fr; } ${min('desktop')} { margin: 8px 5%; } ${min('desktop-xl')} { margin: 8px 10%; } `; function Home({ error }) { init.useMainData(); init.useInsuranceData(); useDefaultReactions(); if (error) return ; return ( Лизинговый калькулятор - Эволюция ); } /** @type {import('next').GetServerSideProps} */ export const getServerSideProps = async ({ req }) => { const { cookie = '' } = req.headers; const queryGetUser = () => getUser({ headers: { cookie, }, }); const queryClient = new QueryClient(); const user = await queryClient.fetchQuery(['user'], queryGetUser); const apolloClient = initializeApollo(); try { const { values, options } = await init.getInitialData(apolloClient, user); return { props: { calculation: { options, values, }, initialApolloState: apolloClient.cache.extract(), initialQueryState: dehydrate(queryClient), }, }; } catch (error) { return { props: { error: JSON.stringify(error), }, }; } }; export default Home;