graphql-relay-js
graphql-relay-js copied to clipboard
Add a `resolveNode` option to allow input data to be used for the edges in a connection rather than the node
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 besides node and cursor.
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 reference yarn over npm.
Thank you for your pull request and welcome to our community. We require contributors to sign our Contributor License Agreement, and we don't seem to have you on file. In order for us to review and merge your code, please sign up at https://code.facebook.com/cla. If you are contributing on behalf of someone else (eg your employer), the individual CLA may not be sufficient and your employer may need the corporate CLA signed.
If you have received this in error or have any questions, please contact us at [email protected]. Thanks!
Thank you for signing our Contributor License Agreement. We can now accept your code for this (and any) Facebook open source project. Thanks!
Thank you for signing our Contributor License Agreement. We can now accept your code for this (and any) Facebook open source project. Thanks!