2017-09-17 21:16:19 +00:00
|
|
|
import React from 'react'
|
|
|
|
import { fetchUserRepos } from '../githubApi'
|
|
|
|
import provideStateFactory from '../provideState'
|
|
|
|
|
2018-12-17 16:34:32 +00:00
|
|
|
export default Page => {
|
2017-09-17 21:16:19 +00:00
|
|
|
const App = ({ serverState }) => {
|
|
|
|
const withState = provideStateFactory(serverState)
|
|
|
|
const PageWithState = withState(Page)
|
|
|
|
|
|
|
|
return <PageWithState />
|
|
|
|
}
|
|
|
|
|
|
|
|
App.getInitialProps = async () => {
|
|
|
|
const username = 'arunoda'
|
|
|
|
const page = 1
|
|
|
|
const repos = await fetchUserRepos(username, page)
|
|
|
|
|
|
|
|
return {
|
|
|
|
serverState: {
|
|
|
|
githubReposList: {
|
|
|
|
username,
|
|
|
|
page,
|
|
|
|
repos
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
return App
|
|
|
|
}
|