@@ -5,28 +5,36 @@ import RepositoryItem from '../RepositoryItem';
55
66import '../style.css' ;
77
8- const updateQuery = ( previousResult , { fetchMoreResult } ) => {
8+ const getUpdateQuery = entry => (
9+ previousResult ,
10+ { fetchMoreResult } ,
11+ ) => {
912 if ( ! fetchMoreResult ) {
1013 return previousResult ;
1114 }
1215
1316 return {
1417 ...previousResult ,
15- viewer : {
16- ...previousResult . viewer ,
18+ [ entry ] : {
19+ ...previousResult [ entry ] ,
1720 repositories : {
18- ...previousResult . viewer . repositories ,
19- ...fetchMoreResult . viewer . repositories ,
21+ ...previousResult [ entry ] . repositories ,
22+ ...fetchMoreResult [ entry ] . repositories ,
2023 edges : [
21- ...previousResult . viewer . repositories . edges ,
22- ...fetchMoreResult . viewer . repositories . edges ,
24+ ...previousResult [ entry ] . repositories . edges ,
25+ ...fetchMoreResult [ entry ] . repositories . edges ,
2326 ] ,
2427 } ,
2528 } ,
2629 } ;
2730} ;
2831
29- const RepositoryList = ( { repositories, loading, fetchMore } ) => (
32+ const RepositoryList = ( {
33+ repositories,
34+ loading,
35+ fetchMore,
36+ entry,
37+ } ) => (
3038 < Fragment >
3139 { repositories . edges . map ( ( { node } ) => (
3240 < div key = { node . id } className = "RepositoryItem" >
@@ -40,7 +48,7 @@ const RepositoryList = ({ repositories, loading, fetchMore }) => (
4048 variables = { {
4149 cursor : repositories . pageInfo . endCursor ,
4250 } }
43- updateQuery = { updateQuery }
51+ updateQuery = { getUpdateQuery ( entry ) }
4452 fetchMore = { fetchMore }
4553 >
4654 Repositories
0 commit comments