graphql-community / graphql-directive-uid Goto Github PK
View Code? Open in Web Editor NEWGenerate uid for GraphQL schema
License: MIT License
Generate uid for GraphQL schema
License: MIT License
I'm trying to use the uid as a key to mutate data in my resolver, since the uid only lives in the directive and is output via a graphql query i'm having a hard time designing the best way to link the uid back to the data outside of the graph. ie.
const schema = gql`
directive @uid(from: [String]) on OBJECT
type Element @uid(from: ["email", "name"]) {
name: String!
email: String!
}
type Query {
elements: [Element]
}
mutation DeleteElement($uid:String) {
deleteElement(uid:$uid) : Boolean
}`;
const elements = [{name:"bill", email: "[email protected]"}]
const resolvers = {
Query: {
elements: () => elements
},
Mutations: {
deleteElement: (parent, {uid}) => {
// how am I supposed to find the index in elements without redoing the hash work you do in the resolve function of UniqueIdDirective
}
}
}
I understand I could redo the work that is done here UniqueId.visitObject()fields[].resolve
but this seems like a hack.
Should this uid be used for anything but caching? Is there another way to resolve the uid outside of the graph? Has anyone done something else to resolve this problem?
Basically, runeslint
and test
.
What with auto release from master
branch?
We need to figure out (or find, haven't looked yet!) some nice abstractions on top of which we can write tests for other directives too.
@czystyl can you take care of that? ๐
TOC links point to wrong or missing section headers
"main" should point to index and node.js engines should be set in package.json to avoid babel requirement.
Error: Cannot return null for non-nullable field __Field.isDeprecated.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.