Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a resolveNode option to allow input data to be used for the edges in a connection rather than the node #197

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

mzikherman
Copy link

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.

@facebook-github-bot
Copy link

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!

@facebook-github-bot
Copy link

Thank you for signing our Contributor License Agreement. We can now accept your code for this (and any) Facebook open source project. Thanks!

@facebook-github-bot
Copy link

Thank you for signing our Contributor License Agreement. We can now accept your code for this (and any) Facebook open source project. Thanks!

@mzikherman mzikherman force-pushed the resolve_node branch 2 times, most recently from 430a877 to f6e11c7 Compare January 17, 2018 20:43
@@ -28,7 +28,7 @@
},
"scripts": {
"prepublish": "./resources/prepublish.sh",
"test": "npm run lint && npm run check && npm run testonly",
"test": "yarn lint && yarn check && yarn testonly",
Copy link

@jaydenseric jaydenseric May 11, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is bad practice; non yarn users/environments (the majority, and industry standard) will not be able to run the script. Yarn knows to substitute npm run for yarn automatically when running npm scripts.

Base automatically changed from master to main February 10, 2021 15:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants