auritylab / graphql-kotlin-toolkit Goto Github PK
View Code? Open in Web Editor NEWGraphQL toolkit for Kotlin.
Home Page: https://auritylab.github.io/graphql-kotlin-toolkit/#/
License: Apache License 2.0
GraphQL toolkit for Kotlin.
Home Page: https://auritylab.github.io/graphql-kotlin-toolkit/#/
License: Apache License 2.0
Sometimes there are already existing enums for the ones used in the GraphQL schema.
The code generator will currently always generate a new enum, which matches the one defined in the schema.
This behavior sometimes results in unnecessarily ugly code, therefore there should be an easier way to do that.
Possible fixes:
kRepresentation
on Enums to directly use the existing enum.
There should be the possibility to set an explicit type for the "ID" scalar. This functionality should also come with a convert, as the ID is typically given as a String.
This may be implemented like this:
CodegenOptions
. (Reference to the ID type and the converter implementation)If there are two resolvers, say "User.emailAddress" and "UserEmail.address", there would be a clash, because the code generator would output "UserEmailAddress" for "User.emailAddress" and "UserEmailAddress" for "UserEmail.address".
There should be the functionality to (optionally) clear the output directly before generating new files.
The buildscript (gradle) of the whole project shall be refactored and simplified.
The current implementation of the pagination field resolvers requires the return type of a field to be a list (e.g. [User]
). But the generator should also support own *Connection
and *Edge
types.
When bringing in their own types, the generator should validate them against the GraphQL Cursor Connections Specification.
The user should also be able to define additional fields on the *Connection
and *Edge
types. When additional fields are given the generator has to generate specific Kotlin classes to support those. (Currently, global Kotlin classes are being used (PaginationConnectionGenerator
, PaginationEdgeGenerator
))
The pagination field resolvers should also properly handle the nullability of the types.
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.