Add a resolveNode
option to allow input data to be used for the edges in a connection rather than the node
#197
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I have a use case where I'd like to make a proper connection out of some data, and where the data itself represents edges, rather nodes. Essentially, imagine an API that returns relational join-model data- this would be the edges between the joined models, rather than the nodes/models themselves.
One way to accomplish this is to munge the data and transform it yourself before passing it to
connectionFromArraySlice
, which doesn't support populating edges with any fields besidesnode
andcursor
.So, I was thinking
resolveNode
could be a supported option where: if present, signifies that the data represents edges and nodes (so return those values in the edge), and also defines how to resolve the node from the data. This could make it easier to work with APIs/data that return join information.As a side note- I updated some commands in
package.json
and the instructions in the README to referenceyarn
overnpm
.