simple_graphql_query_builder 0.2.2
simple_graphql_query_builder: ^0.2.2 copied to clipboard
A simple GraphQl query builder to generate query as String, used together with the package `graphql`
Example 1: #
final query = QueryBuilder(
name: 'hero',
type: QueryBuilderType.query,
variables: [
QueryVariable(name: 'episode', type: 'Episode!', defaultValue: 'JEDI'),
],
fields: {
'name': null,
'friends': {
'name': null,
}
},
).build();
Result: #
query hero($episode: Episode = JEDI) {
hero(episode: $episode) {
name
friends {
name
}
}
}
Example 2: #
final query = QueryBuilder(
queryName: 'MyHeros',
name: 'hero',
type: QueryBuilderType.query,
variables: [
QueryVariable(name: 'episode', type: 'Episode!'),
],
fields: {
'name': null,
'friends': {
'name': null,
}
},
).build();
Result: #
query MyHeros($episode: Episode) {
hero(episode: $episode) {
name
friends {
name
}
}
}
Example 3: #
final query = QueryBuilder(
queryName: 'MyHeros',
name: 'hero',
type: QueryBuilderType.query,
variables: [
QueryVariable(name: 'episode', type: 'Episode!', schemaName: 'myEpisode'),
],
fields: {
'name': null,
'friends': {
'name': null,
}
},
).build();
Result: #
query MyHeros($episode: Episode) {
hero(myEpisode: $episode) {
name
friends {
name
}
}
}
Example 4: #
final query = QueryBuilder(
queryName: 'MyHeros',
name: 'hero',
type: QueryBuilderType.query,
).build();
Result: #
query MyHeros {
hero
}
Example 5: #
final query = QueryBuilder(
queryName: 'MyHeros',
name: 'hero',
type: QueryBuilderType.mutation,
variables: [
QueryVariable(name: 'episode', type: 'Episode!'),
],
fields: {
'name': null,
'friends': {
'name': null,
}
},
).build();
Result: #
mutation MyHeros($episode: Episode) {
hero(episode: $episode) {
name
friends {
name
}
}
}