You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
63 lines
1.8 KiB
63 lines
1.8 KiB
import { Suspense } from "react" |
|
|
|
import Layout from "app/core/layouts/Layout" |
|
import getActualSitesState from "app/stateSites/queries/getActualSitesState" |
|
import getHistoryOfSitesState from "app/stateSites/queries/getHistoryOfSitesState" |
|
import { BlitzPage } from "@blitzjs/next" |
|
import State from "app/core/pages/State" |
|
import { gSSP } from "app/blitz-server" |
|
import { |
|
serverSideProps, |
|
ServerSidePropsContext, |
|
} from "app/core/contextProviders/serverSidePropsProvider" |
|
|
|
import { ErrorBoundary } from "@blitzjs/next" |
|
|
|
import { StatePageProps } from "app/core/pages/State/State" |
|
import { StaticPageProps } from "app/core/commonTypes" |
|
import ContextProviders from "app/core/components/ContextProviders" |
|
import getLastWeekNewSites from "app/stateSites/queries/getLastWeekNewSites" |
|
|
|
function ErrorFallback({ error, resetErrorBoundary }) { |
|
return ( |
|
<div role="alert"> |
|
<p>Something went wrong:</p> |
|
<pre>{error.message}</pre> |
|
<button onClick={resetErrorBoundary}>Try again</button> |
|
</div> |
|
) |
|
} |
|
|
|
const StatePage: BlitzPage = (props) => { |
|
|
|
return ( |
|
<ErrorBoundary |
|
FallbackComponent={ErrorFallback} |
|
onReset={() => { |
|
// reset the state of your app so the error doesn't happen again |
|
}} |
|
> |
|
<ContextProviders contextParamsServer={props}> |
|
<Layout title="State of TON Sites" withoutPaddings> |
|
<Suspense fallback="Loading...."> |
|
<State {...props} /> |
|
</Suspense> |
|
</Layout> |
|
</ContextProviders> |
|
</ErrorBoundary> |
|
) |
|
} |
|
|
|
export const getServerSideProps = gSSP( |
|
serverSideProps(async (): Promise<StatePageProps> => { |
|
const actualState = await getActualSitesState() |
|
const historyOfState = await getHistoryOfSitesState() |
|
return { |
|
actualState, |
|
historyOfState, |
|
...(await getLastWeekNewSites()), |
|
} |
|
}) |
|
) |
|
|
|
export default StatePage
|
|
|