@@ -2,38 +2,39 @@ import Homepage from '@/components/Homepage';
22
33import { getApiResponse } from '@/utils/shared/get-api-response' ;
44
5- import { PageParams } from '@/types' ;
5+ import { NpmData , PageParams } from '@/types' ;
66
77const loadDataFromApi = async ( slug ?: string ) => {
88 if ( slug === 'testError500' ) {
9- throw new Error ( 'This is a ssr 500 test error' ) ;
9+ throw new Error ( 'This is mock a ssr 500 test error' ) ;
1010 }
1111
1212 // Fetch & cache data from 2 remote APIs test
1313 const [ reactNpmData , nextJsNpmData ] = await Promise . all ( [
14- getApiResponse < { version : string } > ( {
14+ getApiResponse < NpmData > ( {
1515 apiEndpoint : 'https://registry.npmjs.org/react/latest' ,
1616 revalidate : 60 * 60 * 24 , // 24 hours cache
1717 } ) ,
18- getApiResponse < { version : string } > ( {
18+ getApiResponse < NpmData > ( {
1919 apiEndpoint : 'https://registry.npmjs.org/next/latest' ,
2020 revalidate : 0 , // no cache
2121 } ) ,
2222 ] ) ;
2323
2424 return {
25- reactVersion : reactNpmData ?. version ,
26- nextJsVersion : nextJsNpmData ?. version ,
25+ reactNpmData,
26+ nextJsNpmData,
2727 } ;
2828} ;
2929
3030const AppHome = async ( { searchParams } : PageParams ) => {
31- const apiResult = await loadDataFromApi ( searchParams ?. [ 'slug' ] ) ;
31+ const slug = searchParams ?. slug ;
32+ const { reactNpmData, nextJsNpmData } = await loadDataFromApi ( slug ) ;
3233
3334 return (
3435 < Homepage
35- reactVersion = { apiResult ?. reactVersion }
36- nextJsVersion = { apiResult ?. nextJsVersion }
36+ reactVersion = { reactNpmData ?. version }
37+ nextJsVersion = { nextJsNpmData ?. version }
3738 />
3839 ) ;
3940} ;
0 commit comments