Docs for generator
This commit is contained in:
parent
75556461d0
commit
7153ee1db2
6 changed files with 223 additions and 3 deletions
3
graphql_generator/CHANGELOG.md
Normal file
3
graphql_generator/CHANGELOG.md
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
# 1.0.0-rc.1
|
||||||
|
* Add `CHANGELOG.md`, `example/main.dart`.
|
||||||
|
* Add documentation to `README.md`.
|
|
@ -1,5 +1,50 @@
|
||||||
# graphql_generator
|
# graphql_generator
|
||||||
|
[![Pub](https://img.shields.io/pub/v/graphql_generator.svg)](https://pub.dartlang.org/packages/graphql_generator)
|
||||||
|
[![build status](https://travis-ci.org/angel-dart/graphql.svg)](https://travis-ci.org/angel-dart/graphql)
|
||||||
|
|
||||||
Generates `package:graphql_schema` schemas for
|
Generates `package:graphql_schema` schemas for
|
||||||
annotated class.
|
annotated class.
|
||||||
|
|
||||||
Documentation is yet to come.
|
Replaces `convertDartType` from `package:graphql_server`.
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
Usage is very simple. You just need a `@graphQLClass` or `@GraphQLClass()` annotation
|
||||||
|
on any class you want to generate an object type for.
|
||||||
|
|
||||||
|
Individual fields can have a `@GraphQLDocumentation()` annotation, to provide information
|
||||||
|
like descriptions, deprecation reasons, etc.
|
||||||
|
|
||||||
|
```dart
|
||||||
|
@graphQLClass
|
||||||
|
class Todo {
|
||||||
|
String text;
|
||||||
|
|
||||||
|
@GraphQLDocumentation(description: 'Whether this item is complete.')
|
||||||
|
bool isComplete;
|
||||||
|
}
|
||||||
|
|
||||||
|
void main() {
|
||||||
|
print(todoGraphQLType.fields.map((f) => f.name));
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
The following is generated (as of April 18th, 2019):
|
||||||
|
|
||||||
|
```dart
|
||||||
|
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||||
|
|
||||||
|
part of 'main.dart';
|
||||||
|
|
||||||
|
// **************************************************************************
|
||||||
|
// _GraphQLGenerator
|
||||||
|
// **************************************************************************
|
||||||
|
|
||||||
|
/// Auto-generated from [Todo].
|
||||||
|
final GraphQLObjectType todoGraphQLType = objectType('Todo',
|
||||||
|
isInterface: false,
|
||||||
|
interfaces: [],
|
||||||
|
fields: [
|
||||||
|
field('text', graphQLString),
|
||||||
|
field('isComplete', graphQLBoolean)
|
||||||
|
]);
|
||||||
|
```
|
14
graphql_generator/example/main.dart
Normal file
14
graphql_generator/example/main.dart
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
import 'package:graphql_schema/graphql_schema.dart';
|
||||||
|
part 'main.g.dart';
|
||||||
|
|
||||||
|
@graphQLClass
|
||||||
|
class Todo {
|
||||||
|
String text;
|
||||||
|
|
||||||
|
@GraphQLDocumentation(description: 'Whether this item is complete.')
|
||||||
|
bool isComplete;
|
||||||
|
}
|
||||||
|
|
||||||
|
void main() {
|
||||||
|
print(todoGraphQLType.fields.map((f) => f.name));
|
||||||
|
}
|
16
graphql_generator/example/main.g.dart
Normal file
16
graphql_generator/example/main.g.dart
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||||
|
|
||||||
|
part of 'main.dart';
|
||||||
|
|
||||||
|
// **************************************************************************
|
||||||
|
// _GraphQLGenerator
|
||||||
|
// **************************************************************************
|
||||||
|
|
||||||
|
/// Auto-generated from [Todo].
|
||||||
|
final GraphQLObjectType todoGraphQLType = objectType('Todo',
|
||||||
|
isInterface: false,
|
||||||
|
interfaces: [],
|
||||||
|
fields: [
|
||||||
|
field('text', graphQLString),
|
||||||
|
field('isComplete', graphQLBoolean)
|
||||||
|
]);
|
|
@ -57,6 +57,34 @@ packages:
|
||||||
url: "https://pub.dartlang.org"
|
url: "https://pub.dartlang.org"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "0.3.1+4"
|
version: "0.3.1+4"
|
||||||
|
build_daemon:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: build_daemon
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "0.5.0"
|
||||||
|
build_resolvers:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: build_resolvers
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "1.0.4"
|
||||||
|
build_runner:
|
||||||
|
dependency: "direct dev"
|
||||||
|
description:
|
||||||
|
name: build_runner
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "1.3.3"
|
||||||
|
build_runner_core:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: build_runner_core
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "3.0.3"
|
||||||
built_collection:
|
built_collection:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
@ -155,6 +183,13 @@ packages:
|
||||||
url: "https://pub.dartlang.org"
|
url: "https://pub.dartlang.org"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.0.2+1"
|
version: "1.0.2+1"
|
||||||
|
graphs:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: graphs
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "0.2.0"
|
||||||
html:
|
html:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
@ -162,6 +197,41 @@ packages:
|
||||||
url: "https://pub.dartlang.org"
|
url: "https://pub.dartlang.org"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "0.13.3+3"
|
version: "0.13.3+3"
|
||||||
|
http:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: http
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "0.12.0+2"
|
||||||
|
http_multi_server:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: http_multi_server
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "2.0.5"
|
||||||
|
http_parser:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: http_parser
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "3.1.3"
|
||||||
|
io:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: io
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "0.3.3"
|
||||||
|
js:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: js
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "0.6.1+1"
|
||||||
json_annotation:
|
json_annotation:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
@ -197,6 +267,13 @@ packages:
|
||||||
url: "https://pub.dartlang.org"
|
url: "https://pub.dartlang.org"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.1.7"
|
version: "1.1.7"
|
||||||
|
mime:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: mime
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "0.9.6+2"
|
||||||
package_config:
|
package_config:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
@ -204,6 +281,13 @@ packages:
|
||||||
url: "https://pub.dartlang.org"
|
url: "https://pub.dartlang.org"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.0.5"
|
version: "1.0.5"
|
||||||
|
package_resolver:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: package_resolver
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "1.0.10"
|
||||||
path:
|
path:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
@ -211,6 +295,13 @@ packages:
|
||||||
url: "https://pub.dartlang.org"
|
url: "https://pub.dartlang.org"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.6.2"
|
version: "1.6.2"
|
||||||
|
pedantic:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: pedantic
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "1.5.0"
|
||||||
plugin:
|
plugin:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
@ -218,6 +309,13 @@ packages:
|
||||||
url: "https://pub.dartlang.org"
|
url: "https://pub.dartlang.org"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "0.2.0+3"
|
version: "0.2.0+3"
|
||||||
|
pool:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: pool
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "1.4.0"
|
||||||
pub_semver:
|
pub_semver:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
@ -253,6 +351,20 @@ packages:
|
||||||
url: "https://pub.dartlang.org"
|
url: "https://pub.dartlang.org"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "2.0.1"
|
version: "2.0.1"
|
||||||
|
shelf:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: shelf
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "0.7.5"
|
||||||
|
shelf_web_socket:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: shelf_web_socket
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "0.2.3"
|
||||||
source_gen:
|
source_gen:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
|
@ -274,6 +386,20 @@ packages:
|
||||||
url: "https://pub.dartlang.org"
|
url: "https://pub.dartlang.org"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.9.3"
|
version: "1.9.3"
|
||||||
|
stream_channel:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: stream_channel
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "2.0.0"
|
||||||
|
stream_transform:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: stream_transform
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "0.0.17"
|
||||||
string_scanner:
|
string_scanner:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
@ -288,6 +414,13 @@ packages:
|
||||||
url: "https://pub.dartlang.org"
|
url: "https://pub.dartlang.org"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.1.0"
|
version: "1.1.0"
|
||||||
|
timing:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: timing
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "0.1.1+1"
|
||||||
typed_data:
|
typed_data:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
@ -309,6 +442,13 @@ packages:
|
||||||
url: "https://pub.dartlang.org"
|
url: "https://pub.dartlang.org"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "0.9.7+10"
|
version: "0.9.7+10"
|
||||||
|
web_socket_channel:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: web_socket_channel
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "1.0.12"
|
||||||
yaml:
|
yaml:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
@ -317,4 +457,4 @@ packages:
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "2.1.15"
|
version: "2.1.15"
|
||||||
sdks:
|
sdks:
|
||||||
dart: ">=2.1.0-dev.5.0 <3.0.0"
|
dart: ">=2.2.0 <3.0.0"
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
name: graphql_generator
|
name: graphql_generator
|
||||||
version: 1.0.0-rc.0
|
version: 1.0.0-rc.1
|
||||||
description: Generates GraphQL schemas from Dart classes, for use with pkg:graphql_server.
|
description: Generates GraphQL schemas from Dart classes, for use with pkg:graphql_server.
|
||||||
author: Tobe O <thosakwe@gmail.com>
|
author: Tobe O <thosakwe@gmail.com>
|
||||||
homepage: https://github.com/angel-dart/graphql
|
homepage: https://github.com/angel-dart/graphql
|
||||||
|
@ -14,3 +14,5 @@ dependencies:
|
||||||
graphql_schema: ^1.0.2
|
graphql_schema: ^1.0.2
|
||||||
recase: ^2.0.0
|
recase: ^2.0.0
|
||||||
source_gen: ^0.9.4
|
source_gen: ^0.9.4
|
||||||
|
dev_dependencies:
|
||||||
|
build_runner: ^1.0.0
|
Loading…
Reference in a new issue