Skip to content

Commit c2ee041

Browse files
committed
fix: hasPreviousPage should return true if after is present
1 parent 461a33f commit c2ee041

File tree

2 files changed

+5
-1
lines changed

2 files changed

+5
-1
lines changed

src/__tests__/connectionResolver-test.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -363,6 +363,9 @@ describe('connectionResolver', () => {
363363
it('If last was not set (and first is empty), return true.', () => {
364364
expect(preparePageInfo(fiveEdges, {}, 5, 2).hasPreviousPage).toBe(true);
365365
});
366+
it('If last was not set (but after is present), return true.', () => {
367+
expect(preparePageInfo(fiveEdges, { after: 'abc' }, 5, 0).hasPreviousPage).toBe(true);
368+
});
366369
it('If edges contains more than last elements, return true.', () => {
367370
expect(preparePageInfo(fiveEdges, { last: 3 }, 3, 2).hasPreviousPage).toBe(true);
368371
});

src/connectionResolver.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -281,6 +281,7 @@ export function preparePageInfo(
281281
args: {
282282
last?: ?number,
283283
first?: ?number,
284+
after?: string,
284285
},
285286
limit: number,
286287
skip: number
@@ -302,7 +303,7 @@ export function preparePageInfo(
302303
} else {
303304
pageInfo.endCursor = edges[edges.length - 1].cursor;
304305
}
305-
pageInfo.hasPreviousPage = (!!args.last || !args.first) && skip > 0;
306+
pageInfo.hasPreviousPage = (!!args.last || !args.first) && (skip > 0 || !!args.after);
306307
pageInfo.hasNextPage = (!!args.first || !args.last) && hasExtraRecords;
307308
}
308309

0 commit comments

Comments
 (0)