Skip to content

Instantly share code, notes, and snippets.

View vasilich6107's full-sized avatar

Vasiliy Ditsyak vasilich6107

View GitHub Profile
@vasilich6107
vasilich6107 / .graphqlconfig
Created January 13, 2020 13:31
JSGraphQL plugin config
{
"name": "Schema",
"schemaPath": "my.schema.json",
"extensions": {
"endpoints": {
"Default": {
"url": "http://localhost:9002/graphql",
"introspect": true
}
}
query EmployeeData($id: ID!) {
employee(id: $id) {
firstName
id
}
}
# ……………………………
dependencies:
# ……………………………
graphql_flutter: ^3.0.0-beta.3
path_provider: ^1.5.1
equatable: ^1.0.2
json_serializable: ^3.2.3
gql: 0.12.0
dev_dependencies:
targets:
$default:
sources:
- lib/**
- graphql/**
- my.schema.json
builders:
artemis:
options:
schema_mapping:
query CompaniesData {
allCompanies {
id
name
industry
__typename
}
}
import 'package:graphql_flutter/graphql_flutter.dart';
import 'package:flutter/material.dart';
String uuidFromObject(Object object) {
if (object is Map<String, Object>) {
final String typeName = object['__typename'] as String;
final String id = object['id'].toString();
if (typeName != null && id != null) {
return <String>[typeName, id].join('/');
}
String get host {
if (Platform.isAndroid) {
return '10.0.2.2';
} else {
return 'localhost';
}
}
GraphqlProvider(
uri: 'http://$host:9002/graphql',
child: MaterialApp(…),
)
Query(
options: QueryOptions(
documentNode: CompaniesDataQuery().document,
),
builder: (
QueryResult result, {
Future<QueryResult> Function() refetch,
FetchMore fetchMore,
}) {
if (result.hasException) {
options: QueryOptions(
documentNode: CompaniesDataQuery().document,
),