graphql-mocks
Version:
Tools for setting up graphql test resolvers
34 lines (27 loc) • 993 B
JavaScript
function applyCursorsToEdges(edges, cursorForNode, before, after) {
var frontCut = false;
var backCut = false;
if (after) {
var afterEdge = edges.find(edge => cursorForNode(edge.node) === after);
if (!afterEdge) throw new Error("".concat(after, " doesn't appear to be a valid edge"));
var afterEdgeIndex = edges.indexOf(afterEdge);
var sliced = edges.slice(afterEdgeIndex + 1, edges.length);
frontCut = sliced.length !== edges.length;
edges = sliced;
}
if (before) {
var beforeEdge = edges.find(edge => cursorForNode(edge.node) === before);
if (!beforeEdge) throw new Error("".concat(before, " doesn't appear to be a valid edge"));
var beforeEdgeIndex = edges.indexOf(beforeEdge);
var _sliced = edges.slice(0, beforeEdgeIndex);
backCut = _sliced.length !== edges.length;
edges = _sliced;
}
return {
edges,
frontCut,
backCut
};
}
export { applyCursorsToEdges };
//# sourceMappingURL=apply-cursor-to-edges.js.map