|
1 | 1 | /* |
2 | 2 | this page is for /works |
3 | 3 | */ |
| 4 | + |
4 | 5 | import { Provider } from 'mobx-react' |
| 6 | +import { GetStaticProps } from 'next' |
5 | 7 |
|
6 | 8 | import { METRIC, THREAD } from '@/constant' |
7 | 9 | import { |
8 | | - ssrFetchPrepare, |
9 | | - ssrHomePagedArticlesFilter, |
| 10 | + isrPagedArticlesFilter, |
10 | 11 | ssrPagedArticleSchema, |
11 | | - ssrBaseStates, |
12 | 12 | ssrParseArticleThread, |
13 | | - ssrRescue, |
14 | 13 | worksSEO, |
15 | | - ssrError, |
| 14 | + makeGQClient, |
16 | 15 | } from '@/utils' |
17 | | -import { P } from '@/schemas' |
| 16 | +// import { P } from '@/schemas' |
18 | 17 |
|
19 | 18 | import GlobalLayout from '@/containers/layout/GlobalLayout' |
20 | 19 | import WorksContent from '@/containers/content/WorksContent' |
21 | 20 |
|
22 | 21 | import { useStore } from '@/stores/init' |
23 | 22 |
|
24 | | -const loader = async (context, opt = {}) => { |
25 | | - const { gqClient, userHasLogin } = ssrFetchPrepare(context, opt) |
26 | | - const filter = ssrHomePagedArticlesFilter(context, userHasLogin) |
| 23 | +const loader = async () => { |
| 24 | + const gqClient = makeGQClient('') |
| 25 | + const filter = isrPagedArticlesFilter({}) |
27 | 26 |
|
28 | 27 | const pagedArticles = gqClient.request( |
29 | 28 | ssrPagedArticleSchema(THREAD.WORKS), |
30 | 29 | filter, |
31 | 30 | ) |
32 | | - const sessionState = gqClient.request(P.sessionState) |
33 | 31 |
|
34 | 32 | return { |
35 | 33 | filter, |
36 | | - ...(await sessionState), |
37 | 34 | ...(await pagedArticles), |
38 | 35 | } |
39 | 36 | } |
40 | 37 |
|
41 | | -export const getServerSideProps = async (context) => { |
42 | | - let resp |
43 | | - try { |
44 | | - resp = await loader(context) |
45 | | - } catch (e) { |
46 | | - console.log('#### error from server: ', e) |
47 | | - if (ssrRescue.hasLoginError(e.response?.errors)) { |
48 | | - resp = await loader(context, { tokenExpired: true }) |
49 | | - } else { |
50 | | - return ssrError(context, 'fetch', 500) |
51 | | - } |
52 | | - } |
| 38 | +export const getStaticProps: GetStaticProps = async () => { |
| 39 | + const thread = THREAD.WORKS |
| 40 | + const resp = await loader() |
53 | 41 |
|
54 | 42 | const { filter } = resp |
55 | | - |
56 | | - const { articlesThread } = ssrParseArticleThread(resp, THREAD.WORKS, filter) |
57 | | - const { pagedWorks } = articlesThread |
| 43 | + // console.log('iii got resp: ', resp) |
| 44 | + const { |
| 45 | + articlesThread: { pagedWorks }, |
| 46 | + } = ssrParseArticleThread(resp, thread, filter) |
58 | 47 |
|
59 | 48 | const initProps = { |
60 | | - ...ssrBaseStates(resp), |
61 | 49 | viewing: { |
62 | | - activeThread: THREAD.WORKS, |
| 50 | + activeThread: thread, |
63 | 51 | }, |
64 | 52 | worksContent: { |
65 | 53 | pagedWorks, |
|
0 commit comments