|
@@ -10,6 +10,7 @@ import type { CrowiRequest } from '~/interfaces/crowi-request';
|
|
|
|
|
|
|
|
import { getServerSideBasicLayoutProps } from '../basic-layout-page';
|
|
import { getServerSideBasicLayoutProps } from '../basic-layout-page';
|
|
|
import {
|
|
import {
|
|
|
|
|
+ getServerSideCommonEachProps,
|
|
|
getServerSideCommonInitialProps,
|
|
getServerSideCommonInitialProps,
|
|
|
getServerSideI18nProps,
|
|
getServerSideI18nProps,
|
|
|
} from '../common-props';
|
|
} from '../common-props';
|
|
@@ -86,6 +87,7 @@ export async function getServerSidePropsForInitial(
|
|
|
context: GetServerSidePropsContext,
|
|
context: GetServerSidePropsContext,
|
|
|
): Promise<GetServerSidePropsResult<Stage2InitialProps>> {
|
|
): Promise<GetServerSidePropsResult<Stage2InitialProps>> {
|
|
|
const [
|
|
const [
|
|
|
|
|
+ commonEachResult,
|
|
|
commonInitialResult,
|
|
commonInitialResult,
|
|
|
basicLayoutResult,
|
|
basicLayoutResult,
|
|
|
generalPageResult,
|
|
generalPageResult,
|
|
@@ -93,6 +95,7 @@ export async function getServerSidePropsForInitial(
|
|
|
i18nPropsResult,
|
|
i18nPropsResult,
|
|
|
pageDataResult,
|
|
pageDataResult,
|
|
|
] = await Promise.all([
|
|
] = await Promise.all([
|
|
|
|
|
+ getServerSideCommonEachProps(context),
|
|
|
getServerSideCommonInitialProps(context),
|
|
getServerSideCommonInitialProps(context),
|
|
|
getServerSideBasicLayoutProps(context),
|
|
getServerSideBasicLayoutProps(context),
|
|
|
getServerSideGeneralPageProps(context),
|
|
getServerSideGeneralPageProps(context),
|
|
@@ -102,22 +105,29 @@ export async function getServerSidePropsForInitial(
|
|
|
]);
|
|
]);
|
|
|
|
|
|
|
|
// Merge all results in a type-safe manner (using sequential merging)
|
|
// Merge all results in a type-safe manner (using sequential merging)
|
|
|
- const mergedResult = mergeGetServerSidePropsResults(
|
|
|
|
|
- commonInitialResult,
|
|
|
|
|
|
|
+ const mergedResult: GetServerSidePropsResult<Stage2InitialProps> =
|
|
|
mergeGetServerSidePropsResults(
|
|
mergeGetServerSidePropsResults(
|
|
|
- basicLayoutResult,
|
|
|
|
|
|
|
+ commonEachResult,
|
|
|
mergeGetServerSidePropsResults(
|
|
mergeGetServerSidePropsResults(
|
|
|
- generalPageResult,
|
|
|
|
|
|
|
+ commonInitialResult,
|
|
|
mergeGetServerSidePropsResults(
|
|
mergeGetServerSidePropsResults(
|
|
|
- rendererConfigResult,
|
|
|
|
|
|
|
+ basicLayoutResult,
|
|
|
mergeGetServerSidePropsResults(
|
|
mergeGetServerSidePropsResults(
|
|
|
- i18nPropsResult,
|
|
|
|
|
- mergeGetServerSidePropsResults(pageDataResult, nextjsRoutingProps),
|
|
|
|
|
|
|
+ generalPageResult,
|
|
|
|
|
+ mergeGetServerSidePropsResults(
|
|
|
|
|
+ rendererConfigResult,
|
|
|
|
|
+ mergeGetServerSidePropsResults(
|
|
|
|
|
+ i18nPropsResult,
|
|
|
|
|
+ mergeGetServerSidePropsResults(
|
|
|
|
|
+ pageDataResult,
|
|
|
|
|
+ nextjsRoutingProps,
|
|
|
|
|
+ ),
|
|
|
|
|
+ ),
|
|
|
|
|
+ ),
|
|
|
),
|
|
),
|
|
|
),
|
|
),
|
|
|
),
|
|
),
|
|
|
- ),
|
|
|
|
|
- );
|
|
|
|
|
|
|
+ );
|
|
|
|
|
|
|
|
// Check for early return (redirect/notFound)
|
|
// Check for early return (redirect/notFound)
|
|
|
if ('redirect' in mergedResult || 'notFound' in mergedResult) {
|
|
if ('redirect' in mergedResult || 'notFound' in mergedResult) {
|
|
@@ -187,10 +197,8 @@ export async function getServerSidePropsForSameRoute(
|
|
|
})();
|
|
})();
|
|
|
addActivity(context, activityAction);
|
|
addActivity(context, activityAction);
|
|
|
|
|
|
|
|
- const mergedResult = mergeGetServerSidePropsResults(
|
|
|
|
|
- { props: pageDataProps },
|
|
|
|
|
- i18nPropsResult,
|
|
|
|
|
- );
|
|
|
|
|
|
|
+ const mergedResult: GetServerSidePropsResult<Stage2EachProps> =
|
|
|
|
|
+ mergeGetServerSidePropsResults({ props: pageDataProps }, i18nPropsResult);
|
|
|
|
|
|
|
|
return mergedResult;
|
|
return mergedResult;
|
|
|
}
|
|
}
|