From 2b5a2617e011f45e7655a65f142395b36b2ccedd Mon Sep 17 00:00:00 2001 From: Martin Kamleithner Date: Mon, 10 Oct 2022 00:25:54 +0200 Subject: [PATCH 01/20] feat(gql_code_builder)!: force type of fields to be nullable when they contain a skip or include directive fix(gql_code_builder)!: allow lists to be nullable --- .github/workflows/dart.yml | 2 +- .../__generated__/aliased_hero.data.gql.dart | 4 +- .../aliased_hero.data.gql.g.dart | 40 +- .../__generated__/hero_include.ast.gql.dart | 49 ++ .../__generated__/hero_include.data.gql.dart | 54 +++ .../hero_include.data.gql.g.dart | 354 ++++++++++++++ .../__generated__/hero_include.req.gql.dart | 35 ++ .../__generated__/hero_include.req.gql.g.dart | 170 +++++++ .../__generated__/hero_include.var.gql.dart | 27 ++ .../__generated__/hero_include.var.gql.g.dart | 137 ++++++ .../__generated__/hero_skip.ast.gql.dart | 49 ++ .../__generated__/hero_skip.data.gql.dart | 52 ++ .../__generated__/hero_skip.data.gql.g.dart | 347 ++++++++++++++ .../__generated__/hero_skip.req.gql.dart | 33 ++ .../__generated__/hero_skip.req.gql.g.dart | 166 +++++++ .../__generated__/hero_skip.var.gql.dart | 26 + .../__generated__/hero_skip.var.gql.g.dart | 134 ++++++ .../lib/directives/hero_include.graphql | 6 + .../lib/directives/hero_skip.graphql | 6 + .../hero_with_fragments.data.gql.dart | 6 +- .../hero_with_fragments.data.gql.g.dart | 30 +- .../__generated__/schema.schema.gql.dart | 2 +- .../__generated__/schema.schema.gql.g.dart | 16 +- .../__generated__/serializers.gql.dart | 20 + .../__generated__/serializers.gql.g.dart | 52 +- .../hero_for_episode.data.gql.dart | 6 +- .../hero_for_episode.data.gql.g.dart | 29 +- .../review_with_date.data.gql.dart | 4 +- .../review_with_date.data.gql.g.dart | 34 +- codegen/gql_code_builder/lib/src/common.dart | 22 +- .../lib/src/operation/data.dart | 5 + .../__generated__/list_pokemon.data.gql.dart | 2 +- .../list_pokemon.data.gql.g.dart | 16 +- .../lib/__generated__/serializers.gql.g.dart | 6 +- .../__generated__/read_repos.data.gql.dart | 2 +- .../__generated__/read_repos.data.gql.g.dart | 16 +- .../lib/__generated__/schema.schema.gql.dart | 56 +-- .../__generated__/schema.schema.gql.g.dart | 447 +++++++++--------- .../lib/__generated__/serializers.gql.g.dart | 118 ++--- .../__generated__/serializers.gql.g.dart | 6 +- .../__generated__/all_pokemon.data.gql.dart | 2 +- .../__generated__/all_pokemon.data.gql.g.dart | 16 +- 42 files changed, 2143 insertions(+), 461 deletions(-) create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_include.ast.gql.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_include.data.gql.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_include.data.gql.g.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_include.req.gql.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_include.req.gql.g.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_include.var.gql.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_include.var.gql.g.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip.ast.gql.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip.data.gql.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip.data.gql.g.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip.req.gql.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip.req.gql.g.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip.var.gql.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip.var.gql.g.dart create mode 100644 codegen/end_to_end_test/lib/directives/hero_include.graphql create mode 100644 codegen/end_to_end_test/lib/directives/hero_skip.graphql diff --git a/.github/workflows/dart.yml b/.github/workflows/dart.yml index 894497dd..0e22f3e1 100644 --- a/.github/workflows/dart.yml +++ b/.github/workflows/dart.yml @@ -20,7 +20,7 @@ jobs: - gql_transform_link runs-on: ubuntu-latest container: - image: dart + image: dart:stable name: Check ${{ matrix.package }} env: PACKAGE: ${{ matrix.package }} diff --git a/codegen/end_to_end_test/lib/aliases/__generated__/aliased_hero.data.gql.dart b/codegen/end_to_end_test/lib/aliases/__generated__/aliased_hero.data.gql.dart index c7b4f12c..e258e0e8 100644 --- a/codegen/end_to_end_test/lib/aliases/__generated__/aliased_hero.data.gql.dart +++ b/codegen/end_to_end_test/lib/aliases/__generated__/aliased_hero.data.gql.dart @@ -49,7 +49,7 @@ abstract class GAliasedHeroData_empireHero String get G__typename; String get id; String get name; - BuiltList<_i2.GEpisode> get from; + BuiltList<_i2.GEpisode?> get from; static Serializer get serializer => _$gAliasedHeroDataEmpireHeroSerializer; Map toJson() => (_i1.serializers.serializeWith( @@ -74,7 +74,7 @@ abstract class GAliasedHeroData_jediHero String get G__typename; String get id; String get name; - BuiltList<_i2.GEpisode> get from; + BuiltList<_i2.GEpisode?> get from; static Serializer get serializer => _$gAliasedHeroDataJediHeroSerializer; Map toJson() => diff --git a/codegen/end_to_end_test/lib/aliases/__generated__/aliased_hero.data.gql.g.dart b/codegen/end_to_end_test/lib/aliases/__generated__/aliased_hero.data.gql.g.dart index de68289d..ed85bfb5 100644 --- a/codegen/end_to_end_test/lib/aliases/__generated__/aliased_hero.data.gql.g.dart +++ b/codegen/end_to_end_test/lib/aliases/__generated__/aliased_hero.data.gql.g.dart @@ -103,8 +103,8 @@ class _$GAliasedHeroData_empireHeroSerializer serializers.serialize(object.name, specifiedType: const FullType(String)), 'from', serializers.serialize(object.from, - specifiedType: - const FullType(BuiltList, const [const FullType(_i2.GEpisode)])), + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(_i2.GEpisode)])), ]; return result; @@ -136,9 +136,9 @@ class _$GAliasedHeroData_empireHeroSerializer break; case 'from': result.from.replace(serializers.deserialize(value, - specifiedType: const FullType( - BuiltList, const [const FullType(_i2.GEpisode)]))! - as BuiltList); + specifiedType: const FullType(BuiltList, const [ + const FullType.nullable(_i2.GEpisode) + ]))! as BuiltList); break; } } @@ -171,8 +171,8 @@ class _$GAliasedHeroData_jediHeroSerializer serializers.serialize(object.name, specifiedType: const FullType(String)), 'from', serializers.serialize(object.from, - specifiedType: - const FullType(BuiltList, const [const FullType(_i2.GEpisode)])), + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(_i2.GEpisode)])), ]; return result; @@ -204,9 +204,9 @@ class _$GAliasedHeroData_jediHeroSerializer break; case 'from': result.from.replace(serializers.deserialize(value, - specifiedType: const FullType( - BuiltList, const [const FullType(_i2.GEpisode)]))! - as BuiltList); + specifiedType: const FullType(BuiltList, const [ + const FullType.nullable(_i2.GEpisode) + ]))! as BuiltList); break; } } @@ -351,7 +351,7 @@ class _$GAliasedHeroData_empireHero extends GAliasedHeroData_empireHero { @override final String name; @override - final BuiltList<_i2.GEpisode> from; + final BuiltList<_i2.GEpisode?> from; factory _$GAliasedHeroData_empireHero( [void Function(GAliasedHeroData_empireHeroBuilder)? updates]) => @@ -428,10 +428,10 @@ class GAliasedHeroData_empireHeroBuilder String? get name => _$this._name; set name(String? name) => _$this._name = name; - ListBuilder<_i2.GEpisode>? _from; - ListBuilder<_i2.GEpisode> get from => - _$this._from ??= new ListBuilder<_i2.GEpisode>(); - set from(ListBuilder<_i2.GEpisode>? from) => _$this._from = from; + ListBuilder<_i2.GEpisode?>? _from; + ListBuilder<_i2.GEpisode?> get from => + _$this._from ??= new ListBuilder<_i2.GEpisode?>(); + set from(ListBuilder<_i2.GEpisode?>? from) => _$this._from = from; GAliasedHeroData_empireHeroBuilder() { GAliasedHeroData_empireHero._initializeBuilder(this); @@ -499,7 +499,7 @@ class _$GAliasedHeroData_jediHero extends GAliasedHeroData_jediHero { @override final String name; @override - final BuiltList<_i2.GEpisode> from; + final BuiltList<_i2.GEpisode?> from; factory _$GAliasedHeroData_jediHero( [void Function(GAliasedHeroData_jediHeroBuilder)? updates]) => @@ -575,10 +575,10 @@ class GAliasedHeroData_jediHeroBuilder String? get name => _$this._name; set name(String? name) => _$this._name = name; - ListBuilder<_i2.GEpisode>? _from; - ListBuilder<_i2.GEpisode> get from => - _$this._from ??= new ListBuilder<_i2.GEpisode>(); - set from(ListBuilder<_i2.GEpisode>? from) => _$this._from = from; + ListBuilder<_i2.GEpisode?>? _from; + ListBuilder<_i2.GEpisode?> get from => + _$this._from ??= new ListBuilder<_i2.GEpisode?>(); + set from(ListBuilder<_i2.GEpisode?>? from) => _$this._from = from; GAliasedHeroData_jediHeroBuilder() { GAliasedHeroData_jediHero._initializeBuilder(this); diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_include.ast.gql.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_include.ast.gql.dart new file mode 100644 index 00000000..f5305d28 --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_include.ast.gql.dart @@ -0,0 +1,49 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:gql/ast.dart' as _i1; + +const HeroInclude = _i1.OperationDefinitionNode( + type: _i1.OperationType.query, + name: _i1.NameNode(value: 'HeroInclude'), + variableDefinitions: [ + _i1.VariableDefinitionNode( + variable: _i1.VariableNode(name: _i1.NameNode(value: 'includeId')), + type: _i1.NamedTypeNode( + name: _i1.NameNode(value: 'Boolean'), isNonNull: true), + defaultValue: _i1.DefaultValueNode(value: null), + directives: []) + ], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'hero'), + alias: null, + arguments: [], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'id'), + alias: null, + arguments: [], + directives: [ + _i1.DirectiveNode( + name: _i1.NameNode(value: 'include'), + arguments: [ + _i1.ArgumentNode( + name: _i1.NameNode(value: 'if'), + value: _i1.VariableNode( + name: _i1.NameNode(value: 'includeId'))) + ]) + ], + selectionSet: null), + _i1.FieldNode( + name: _i1.NameNode(value: 'name'), + alias: null, + arguments: [], + directives: [], + selectionSet: null) + ])) + ])); +const document = _i1.DocumentNode(definitions: [HeroInclude]); diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_include.data.gql.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_include.data.gql.dart new file mode 100644 index 00000000..dcfffbc9 --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_include.data.gql.dart @@ -0,0 +1,54 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' + as _i1; + +part 'hero_include.data.gql.g.dart'; + +abstract class GHeroIncludeData + implements Built { + GHeroIncludeData._(); + + factory GHeroIncludeData([Function(GHeroIncludeDataBuilder b) updates]) = + _$GHeroIncludeData; + + static void _initializeBuilder(GHeroIncludeDataBuilder b) => + b..G__typename = 'Query'; + @BuiltValueField(wireName: '__typename') + String get G__typename; + GHeroIncludeData_hero? get hero; + static Serializer get serializer => + _$gHeroIncludeDataSerializer; + Map toJson() => + (_i1.serializers.serializeWith(GHeroIncludeData.serializer, this) + as Map); + static GHeroIncludeData? fromJson(Map json) => + _i1.serializers.deserializeWith(GHeroIncludeData.serializer, json); +} + +abstract class GHeroIncludeData_hero + implements Built { + GHeroIncludeData_hero._(); + + factory GHeroIncludeData_hero( + [Function(GHeroIncludeData_heroBuilder b) updates]) = + _$GHeroIncludeData_hero; + + static void _initializeBuilder(GHeroIncludeData_heroBuilder b) => + b..G__typename = 'Character'; + @BuiltValueField(wireName: '__typename') + String get G__typename; + String? get id; + String get name; + static Serializer get serializer => + _$gHeroIncludeDataHeroSerializer; + Map toJson() => + (_i1.serializers.serializeWith(GHeroIncludeData_hero.serializer, this) + as Map); + static GHeroIncludeData_hero? fromJson(Map json) => + _i1.serializers.deserializeWith(GHeroIncludeData_hero.serializer, json); +} diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_include.data.gql.g.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_include.data.gql.g.dart new file mode 100644 index 00000000..f0d7b1b4 --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_include.data.gql.g.dart @@ -0,0 +1,354 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_include.data.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroIncludeDataSerializer = + new _$GHeroIncludeDataSerializer(); +Serializer _$gHeroIncludeDataHeroSerializer = + new _$GHeroIncludeData_heroSerializer(); + +class _$GHeroIncludeDataSerializer + implements StructuredSerializer { + @override + final Iterable types = const [GHeroIncludeData, _$GHeroIncludeData]; + @override + final String wireName = 'GHeroIncludeData'; + + @override + Iterable serialize(Serializers serializers, GHeroIncludeData object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + ]; + Object? value; + value = object.hero; + if (value != null) { + result + ..add('hero') + ..add(serializers.serialize(value, + specifiedType: const FullType(GHeroIncludeData_hero))); + } + return result; + } + + @override + GHeroIncludeData deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroIncludeDataBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'hero': + result.hero.replace(serializers.deserialize(value, + specifiedType: const FullType(GHeroIncludeData_hero))! + as GHeroIncludeData_hero); + break; + } + } + + return result.build(); + } +} + +class _$GHeroIncludeData_heroSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroIncludeData_hero, + _$GHeroIncludeData_hero + ]; + @override + final String wireName = 'GHeroIncludeData_hero'; + + @override + Iterable serialize( + Serializers serializers, GHeroIncludeData_hero object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + 'name', + serializers.serialize(object.name, specifiedType: const FullType(String)), + ]; + Object? value; + value = object.id; + if (value != null) { + result + ..add('id') + ..add(serializers.serialize(value, + specifiedType: const FullType(String))); + } + return result; + } + + @override + GHeroIncludeData_hero deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroIncludeData_heroBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'id': + result.id = serializers.deserialize(value, + specifiedType: const FullType(String)) as String?; + break; + case 'name': + result.name = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + } + } + + return result.build(); + } +} + +class _$GHeroIncludeData extends GHeroIncludeData { + @override + final String G__typename; + @override + final GHeroIncludeData_hero? hero; + + factory _$GHeroIncludeData( + [void Function(GHeroIncludeDataBuilder)? updates]) => + (new GHeroIncludeDataBuilder()..update(updates))._build(); + + _$GHeroIncludeData._({required this.G__typename, this.hero}) : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroIncludeData', 'G__typename'); + } + + @override + GHeroIncludeData rebuild(void Function(GHeroIncludeDataBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroIncludeDataBuilder toBuilder() => + new GHeroIncludeDataBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroIncludeData && + G__typename == other.G__typename && + hero == other.hero; + } + + @override + int get hashCode { + return $jf($jc($jc(0, G__typename.hashCode), hero.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroIncludeData') + ..add('G__typename', G__typename) + ..add('hero', hero)) + .toString(); + } +} + +class GHeroIncludeDataBuilder + implements Builder { + _$GHeroIncludeData? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + GHeroIncludeData_heroBuilder? _hero; + GHeroIncludeData_heroBuilder get hero => + _$this._hero ??= new GHeroIncludeData_heroBuilder(); + set hero(GHeroIncludeData_heroBuilder? hero) => _$this._hero = hero; + + GHeroIncludeDataBuilder() { + GHeroIncludeData._initializeBuilder(this); + } + + GHeroIncludeDataBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _hero = $v.hero?.toBuilder(); + _$v = null; + } + return this; + } + + @override + void replace(GHeroIncludeData other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroIncludeData; + } + + @override + void update(void Function(GHeroIncludeDataBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroIncludeData build() => _build(); + + _$GHeroIncludeData _build() { + _$GHeroIncludeData _$result; + try { + _$result = _$v ?? + new _$GHeroIncludeData._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroIncludeData', 'G__typename'), + hero: _hero?.build()); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'hero'; + _hero?.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroIncludeData', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +class _$GHeroIncludeData_hero extends GHeroIncludeData_hero { + @override + final String G__typename; + @override + final String? id; + @override + final String name; + + factory _$GHeroIncludeData_hero( + [void Function(GHeroIncludeData_heroBuilder)? updates]) => + (new GHeroIncludeData_heroBuilder()..update(updates))._build(); + + _$GHeroIncludeData_hero._( + {required this.G__typename, this.id, required this.name}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroIncludeData_hero', 'G__typename'); + BuiltValueNullFieldError.checkNotNull( + name, r'GHeroIncludeData_hero', 'name'); + } + + @override + GHeroIncludeData_hero rebuild( + void Function(GHeroIncludeData_heroBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroIncludeData_heroBuilder toBuilder() => + new GHeroIncludeData_heroBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroIncludeData_hero && + G__typename == other.G__typename && + id == other.id && + name == other.name; + } + + @override + int get hashCode { + return $jf( + $jc($jc($jc(0, G__typename.hashCode), id.hashCode), name.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroIncludeData_hero') + ..add('G__typename', G__typename) + ..add('id', id) + ..add('name', name)) + .toString(); + } +} + +class GHeroIncludeData_heroBuilder + implements Builder { + _$GHeroIncludeData_hero? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + String? _id; + String? get id => _$this._id; + set id(String? id) => _$this._id = id; + + String? _name; + String? get name => _$this._name; + set name(String? name) => _$this._name = name; + + GHeroIncludeData_heroBuilder() { + GHeroIncludeData_hero._initializeBuilder(this); + } + + GHeroIncludeData_heroBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _id = $v.id; + _name = $v.name; + _$v = null; + } + return this; + } + + @override + void replace(GHeroIncludeData_hero other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroIncludeData_hero; + } + + @override + void update(void Function(GHeroIncludeData_heroBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroIncludeData_hero build() => _build(); + + _$GHeroIncludeData_hero _build() { + final _$result = _$v ?? + new _$GHeroIncludeData_hero._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroIncludeData_hero', 'G__typename'), + id: id, + name: BuiltValueNullFieldError.checkNotNull( + name, r'GHeroIncludeData_hero', 'name')); + replace(_$result); + return _$result; + } +} + +// ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_include.req.gql.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_include.req.gql.dart new file mode 100644 index 00000000..0e48e13a --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_include.req.gql.dart @@ -0,0 +1,35 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test/directives/__generated__/hero_include.ast.gql.dart' + as _i2; +import 'package:end_to_end_test/directives/__generated__/hero_include.var.gql.dart' + as _i3; +import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' + as _i4; +import 'package:gql_exec/gql_exec.dart' as _i1; + +part 'hero_include.req.gql.g.dart'; + +abstract class GHeroInclude + implements Built { + GHeroInclude._(); + + factory GHeroInclude([Function(GHeroIncludeBuilder b) updates]) = + _$GHeroInclude; + + static void _initializeBuilder(GHeroIncludeBuilder b) => b + ..operation = + _i1.Operation(document: _i2.document, operationName: 'HeroInclude'); + _i3.GHeroIncludeVars get vars; + _i1.Operation get operation; + static Serializer get serializer => _$gHeroIncludeSerializer; + Map toJson() => + (_i4.serializers.serializeWith(GHeroInclude.serializer, this) + as Map); + static GHeroInclude? fromJson(Map json) => + _i4.serializers.deserializeWith(GHeroInclude.serializer, json); +} diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_include.req.gql.g.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_include.req.gql.g.dart new file mode 100644 index 00000000..181123bc --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_include.req.gql.g.dart @@ -0,0 +1,170 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_include.req.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroIncludeSerializer = + new _$GHeroIncludeSerializer(); + +class _$GHeroIncludeSerializer implements StructuredSerializer { + @override + final Iterable types = const [GHeroInclude, _$GHeroInclude]; + @override + final String wireName = 'GHeroInclude'; + + @override + Iterable serialize(Serializers serializers, GHeroInclude object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + 'vars', + serializers.serialize(object.vars, + specifiedType: const FullType(_i3.GHeroIncludeVars)), + 'operation', + serializers.serialize(object.operation, + specifiedType: const FullType(_i1.Operation)), + ]; + + return result; + } + + @override + GHeroInclude deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroIncludeBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case 'vars': + result.vars.replace(serializers.deserialize(value, + specifiedType: const FullType(_i3.GHeroIncludeVars))! + as _i3.GHeroIncludeVars); + break; + case 'operation': + result.operation = serializers.deserialize(value, + specifiedType: const FullType(_i1.Operation))! as _i1.Operation; + break; + } + } + + return result.build(); + } +} + +class _$GHeroInclude extends GHeroInclude { + @override + final _i3.GHeroIncludeVars vars; + @override + final _i1.Operation operation; + + factory _$GHeroInclude([void Function(GHeroIncludeBuilder)? updates]) => + (new GHeroIncludeBuilder()..update(updates))._build(); + + _$GHeroInclude._({required this.vars, required this.operation}) : super._() { + BuiltValueNullFieldError.checkNotNull(vars, r'GHeroInclude', 'vars'); + BuiltValueNullFieldError.checkNotNull( + operation, r'GHeroInclude', 'operation'); + } + + @override + GHeroInclude rebuild(void Function(GHeroIncludeBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroIncludeBuilder toBuilder() => new GHeroIncludeBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroInclude && + vars == other.vars && + operation == other.operation; + } + + @override + int get hashCode { + return $jf($jc($jc(0, vars.hashCode), operation.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroInclude') + ..add('vars', vars) + ..add('operation', operation)) + .toString(); + } +} + +class GHeroIncludeBuilder + implements Builder { + _$GHeroInclude? _$v; + + _i3.GHeroIncludeVarsBuilder? _vars; + _i3.GHeroIncludeVarsBuilder get vars => + _$this._vars ??= new _i3.GHeroIncludeVarsBuilder(); + set vars(_i3.GHeroIncludeVarsBuilder? vars) => _$this._vars = vars; + + _i1.Operation? _operation; + _i1.Operation? get operation => _$this._operation; + set operation(_i1.Operation? operation) => _$this._operation = operation; + + GHeroIncludeBuilder() { + GHeroInclude._initializeBuilder(this); + } + + GHeroIncludeBuilder get _$this { + final $v = _$v; + if ($v != null) { + _vars = $v.vars.toBuilder(); + _operation = $v.operation; + _$v = null; + } + return this; + } + + @override + void replace(GHeroInclude other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroInclude; + } + + @override + void update(void Function(GHeroIncludeBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroInclude build() => _build(); + + _$GHeroInclude _build() { + _$GHeroInclude _$result; + try { + _$result = _$v ?? + new _$GHeroInclude._( + vars: vars.build(), + operation: BuiltValueNullFieldError.checkNotNull( + operation, r'GHeroInclude', 'operation')); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'vars'; + vars.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroInclude', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +// ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_include.var.gql.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_include.var.gql.dart new file mode 100644 index 00000000..81efe47a --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_include.var.gql.dart @@ -0,0 +1,27 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' + as _i1; + +part 'hero_include.var.gql.g.dart'; + +abstract class GHeroIncludeVars + implements Built { + GHeroIncludeVars._(); + + factory GHeroIncludeVars([Function(GHeroIncludeVarsBuilder b) updates]) = + _$GHeroIncludeVars; + + bool get includeId; + static Serializer get serializer => + _$gHeroIncludeVarsSerializer; + Map toJson() => + (_i1.serializers.serializeWith(GHeroIncludeVars.serializer, this) + as Map); + static GHeroIncludeVars? fromJson(Map json) => + _i1.serializers.deserializeWith(GHeroIncludeVars.serializer, json); +} diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_include.var.gql.g.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_include.var.gql.g.dart new file mode 100644 index 00000000..b81e33c7 --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_include.var.gql.g.dart @@ -0,0 +1,137 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_include.var.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroIncludeVarsSerializer = + new _$GHeroIncludeVarsSerializer(); + +class _$GHeroIncludeVarsSerializer + implements StructuredSerializer { + @override + final Iterable types = const [GHeroIncludeVars, _$GHeroIncludeVars]; + @override + final String wireName = 'GHeroIncludeVars'; + + @override + Iterable serialize(Serializers serializers, GHeroIncludeVars object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + 'includeId', + serializers.serialize(object.includeId, + specifiedType: const FullType(bool)), + ]; + + return result; + } + + @override + GHeroIncludeVars deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroIncludeVarsBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case 'includeId': + result.includeId = serializers.deserialize(value, + specifiedType: const FullType(bool))! as bool; + break; + } + } + + return result.build(); + } +} + +class _$GHeroIncludeVars extends GHeroIncludeVars { + @override + final bool includeId; + + factory _$GHeroIncludeVars( + [void Function(GHeroIncludeVarsBuilder)? updates]) => + (new GHeroIncludeVarsBuilder()..update(updates))._build(); + + _$GHeroIncludeVars._({required this.includeId}) : super._() { + BuiltValueNullFieldError.checkNotNull( + includeId, r'GHeroIncludeVars', 'includeId'); + } + + @override + GHeroIncludeVars rebuild(void Function(GHeroIncludeVarsBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroIncludeVarsBuilder toBuilder() => + new GHeroIncludeVarsBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroIncludeVars && includeId == other.includeId; + } + + @override + int get hashCode { + return $jf($jc(0, includeId.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroIncludeVars') + ..add('includeId', includeId)) + .toString(); + } +} + +class GHeroIncludeVarsBuilder + implements Builder { + _$GHeroIncludeVars? _$v; + + bool? _includeId; + bool? get includeId => _$this._includeId; + set includeId(bool? includeId) => _$this._includeId = includeId; + + GHeroIncludeVarsBuilder(); + + GHeroIncludeVarsBuilder get _$this { + final $v = _$v; + if ($v != null) { + _includeId = $v.includeId; + _$v = null; + } + return this; + } + + @override + void replace(GHeroIncludeVars other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroIncludeVars; + } + + @override + void update(void Function(GHeroIncludeVarsBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroIncludeVars build() => _build(); + + _$GHeroIncludeVars _build() { + final _$result = _$v ?? + new _$GHeroIncludeVars._( + includeId: BuiltValueNullFieldError.checkNotNull( + includeId, r'GHeroIncludeVars', 'includeId')); + replace(_$result); + return _$result; + } +} + +// ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip.ast.gql.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip.ast.gql.dart new file mode 100644 index 00000000..20c04d1e --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip.ast.gql.dart @@ -0,0 +1,49 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:gql/ast.dart' as _i1; + +const HeroSkip = _i1.OperationDefinitionNode( + type: _i1.OperationType.query, + name: _i1.NameNode(value: 'HeroSkip'), + variableDefinitions: [ + _i1.VariableDefinitionNode( + variable: _i1.VariableNode(name: _i1.NameNode(value: 'skipName')), + type: _i1.NamedTypeNode( + name: _i1.NameNode(value: 'Boolean'), isNonNull: true), + defaultValue: _i1.DefaultValueNode(value: null), + directives: []) + ], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'hero'), + alias: null, + arguments: [], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'id'), + alias: null, + arguments: [], + directives: [], + selectionSet: null), + _i1.FieldNode( + name: _i1.NameNode(value: 'name'), + alias: null, + arguments: [], + directives: [ + _i1.DirectiveNode( + name: _i1.NameNode(value: 'skip'), + arguments: [ + _i1.ArgumentNode( + name: _i1.NameNode(value: 'if'), + value: _i1.VariableNode( + name: _i1.NameNode(value: 'skipName'))) + ]) + ], + selectionSet: null) + ])) + ])); +const document = _i1.DocumentNode(definitions: [HeroSkip]); diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip.data.gql.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip.data.gql.dart new file mode 100644 index 00000000..f3f5bb49 --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip.data.gql.dart @@ -0,0 +1,52 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' + as _i1; + +part 'hero_skip.data.gql.g.dart'; + +abstract class GHeroSkipData + implements Built { + GHeroSkipData._(); + + factory GHeroSkipData([Function(GHeroSkipDataBuilder b) updates]) = + _$GHeroSkipData; + + static void _initializeBuilder(GHeroSkipDataBuilder b) => + b..G__typename = 'Query'; + @BuiltValueField(wireName: '__typename') + String get G__typename; + GHeroSkipData_hero? get hero; + static Serializer get serializer => _$gHeroSkipDataSerializer; + Map toJson() => + (_i1.serializers.serializeWith(GHeroSkipData.serializer, this) + as Map); + static GHeroSkipData? fromJson(Map json) => + _i1.serializers.deserializeWith(GHeroSkipData.serializer, json); +} + +abstract class GHeroSkipData_hero + implements Built { + GHeroSkipData_hero._(); + + factory GHeroSkipData_hero([Function(GHeroSkipData_heroBuilder b) updates]) = + _$GHeroSkipData_hero; + + static void _initializeBuilder(GHeroSkipData_heroBuilder b) => + b..G__typename = 'Character'; + @BuiltValueField(wireName: '__typename') + String get G__typename; + String get id; + String? get name; + static Serializer get serializer => + _$gHeroSkipDataHeroSerializer; + Map toJson() => + (_i1.serializers.serializeWith(GHeroSkipData_hero.serializer, this) + as Map); + static GHeroSkipData_hero? fromJson(Map json) => + _i1.serializers.deserializeWith(GHeroSkipData_hero.serializer, json); +} diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip.data.gql.g.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip.data.gql.g.dart new file mode 100644 index 00000000..513ca23f --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip.data.gql.g.dart @@ -0,0 +1,347 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_skip.data.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroSkipDataSerializer = + new _$GHeroSkipDataSerializer(); +Serializer _$gHeroSkipDataHeroSerializer = + new _$GHeroSkipData_heroSerializer(); + +class _$GHeroSkipDataSerializer implements StructuredSerializer { + @override + final Iterable types = const [GHeroSkipData, _$GHeroSkipData]; + @override + final String wireName = 'GHeroSkipData'; + + @override + Iterable serialize(Serializers serializers, GHeroSkipData object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + ]; + Object? value; + value = object.hero; + if (value != null) { + result + ..add('hero') + ..add(serializers.serialize(value, + specifiedType: const FullType(GHeroSkipData_hero))); + } + return result; + } + + @override + GHeroSkipData deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroSkipDataBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'hero': + result.hero.replace(serializers.deserialize(value, + specifiedType: const FullType(GHeroSkipData_hero))! + as GHeroSkipData_hero); + break; + } + } + + return result.build(); + } +} + +class _$GHeroSkipData_heroSerializer + implements StructuredSerializer { + @override + final Iterable types = const [GHeroSkipData_hero, _$GHeroSkipData_hero]; + @override + final String wireName = 'GHeroSkipData_hero'; + + @override + Iterable serialize( + Serializers serializers, GHeroSkipData_hero object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + 'id', + serializers.serialize(object.id, specifiedType: const FullType(String)), + ]; + Object? value; + value = object.name; + if (value != null) { + result + ..add('name') + ..add(serializers.serialize(value, + specifiedType: const FullType(String))); + } + return result; + } + + @override + GHeroSkipData_hero deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroSkipData_heroBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'id': + result.id = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'name': + result.name = serializers.deserialize(value, + specifiedType: const FullType(String)) as String?; + break; + } + } + + return result.build(); + } +} + +class _$GHeroSkipData extends GHeroSkipData { + @override + final String G__typename; + @override + final GHeroSkipData_hero? hero; + + factory _$GHeroSkipData([void Function(GHeroSkipDataBuilder)? updates]) => + (new GHeroSkipDataBuilder()..update(updates))._build(); + + _$GHeroSkipData._({required this.G__typename, this.hero}) : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipData', 'G__typename'); + } + + @override + GHeroSkipData rebuild(void Function(GHeroSkipDataBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipDataBuilder toBuilder() => new GHeroSkipDataBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkipData && + G__typename == other.G__typename && + hero == other.hero; + } + + @override + int get hashCode { + return $jf($jc($jc(0, G__typename.hashCode), hero.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkipData') + ..add('G__typename', G__typename) + ..add('hero', hero)) + .toString(); + } +} + +class GHeroSkipDataBuilder + implements Builder { + _$GHeroSkipData? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + GHeroSkipData_heroBuilder? _hero; + GHeroSkipData_heroBuilder get hero => + _$this._hero ??= new GHeroSkipData_heroBuilder(); + set hero(GHeroSkipData_heroBuilder? hero) => _$this._hero = hero; + + GHeroSkipDataBuilder() { + GHeroSkipData._initializeBuilder(this); + } + + GHeroSkipDataBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _hero = $v.hero?.toBuilder(); + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkipData other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkipData; + } + + @override + void update(void Function(GHeroSkipDataBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkipData build() => _build(); + + _$GHeroSkipData _build() { + _$GHeroSkipData _$result; + try { + _$result = _$v ?? + new _$GHeroSkipData._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipData', 'G__typename'), + hero: _hero?.build()); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'hero'; + _hero?.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroSkipData', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +class _$GHeroSkipData_hero extends GHeroSkipData_hero { + @override + final String G__typename; + @override + final String id; + @override + final String? name; + + factory _$GHeroSkipData_hero( + [void Function(GHeroSkipData_heroBuilder)? updates]) => + (new GHeroSkipData_heroBuilder()..update(updates))._build(); + + _$GHeroSkipData_hero._( + {required this.G__typename, required this.id, this.name}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipData_hero', 'G__typename'); + BuiltValueNullFieldError.checkNotNull(id, r'GHeroSkipData_hero', 'id'); + } + + @override + GHeroSkipData_hero rebuild( + void Function(GHeroSkipData_heroBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipData_heroBuilder toBuilder() => + new GHeroSkipData_heroBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkipData_hero && + G__typename == other.G__typename && + id == other.id && + name == other.name; + } + + @override + int get hashCode { + return $jf( + $jc($jc($jc(0, G__typename.hashCode), id.hashCode), name.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkipData_hero') + ..add('G__typename', G__typename) + ..add('id', id) + ..add('name', name)) + .toString(); + } +} + +class GHeroSkipData_heroBuilder + implements Builder { + _$GHeroSkipData_hero? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + String? _id; + String? get id => _$this._id; + set id(String? id) => _$this._id = id; + + String? _name; + String? get name => _$this._name; + set name(String? name) => _$this._name = name; + + GHeroSkipData_heroBuilder() { + GHeroSkipData_hero._initializeBuilder(this); + } + + GHeroSkipData_heroBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _id = $v.id; + _name = $v.name; + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkipData_hero other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkipData_hero; + } + + @override + void update(void Function(GHeroSkipData_heroBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkipData_hero build() => _build(); + + _$GHeroSkipData_hero _build() { + final _$result = _$v ?? + new _$GHeroSkipData_hero._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipData_hero', 'G__typename'), + id: BuiltValueNullFieldError.checkNotNull( + id, r'GHeroSkipData_hero', 'id'), + name: name); + replace(_$result); + return _$result; + } +} + +// ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip.req.gql.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip.req.gql.dart new file mode 100644 index 00000000..6f9d4a4d --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip.req.gql.dart @@ -0,0 +1,33 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test/directives/__generated__/hero_skip.ast.gql.dart' + as _i2; +import 'package:end_to_end_test/directives/__generated__/hero_skip.var.gql.dart' + as _i3; +import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' + as _i4; +import 'package:gql_exec/gql_exec.dart' as _i1; + +part 'hero_skip.req.gql.g.dart'; + +abstract class GHeroSkip implements Built { + GHeroSkip._(); + + factory GHeroSkip([Function(GHeroSkipBuilder b) updates]) = _$GHeroSkip; + + static void _initializeBuilder(GHeroSkipBuilder b) => b + ..operation = + _i1.Operation(document: _i2.document, operationName: 'HeroSkip'); + _i3.GHeroSkipVars get vars; + _i1.Operation get operation; + static Serializer get serializer => _$gHeroSkipSerializer; + Map toJson() => + (_i4.serializers.serializeWith(GHeroSkip.serializer, this) + as Map); + static GHeroSkip? fromJson(Map json) => + _i4.serializers.deserializeWith(GHeroSkip.serializer, json); +} diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip.req.gql.g.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip.req.gql.g.dart new file mode 100644 index 00000000..d819e2b8 --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip.req.gql.g.dart @@ -0,0 +1,166 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_skip.req.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroSkipSerializer = new _$GHeroSkipSerializer(); + +class _$GHeroSkipSerializer implements StructuredSerializer { + @override + final Iterable types = const [GHeroSkip, _$GHeroSkip]; + @override + final String wireName = 'GHeroSkip'; + + @override + Iterable serialize(Serializers serializers, GHeroSkip object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + 'vars', + serializers.serialize(object.vars, + specifiedType: const FullType(_i3.GHeroSkipVars)), + 'operation', + serializers.serialize(object.operation, + specifiedType: const FullType(_i1.Operation)), + ]; + + return result; + } + + @override + GHeroSkip deserialize(Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroSkipBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case 'vars': + result.vars.replace(serializers.deserialize(value, + specifiedType: const FullType(_i3.GHeroSkipVars))! + as _i3.GHeroSkipVars); + break; + case 'operation': + result.operation = serializers.deserialize(value, + specifiedType: const FullType(_i1.Operation))! as _i1.Operation; + break; + } + } + + return result.build(); + } +} + +class _$GHeroSkip extends GHeroSkip { + @override + final _i3.GHeroSkipVars vars; + @override + final _i1.Operation operation; + + factory _$GHeroSkip([void Function(GHeroSkipBuilder)? updates]) => + (new GHeroSkipBuilder()..update(updates))._build(); + + _$GHeroSkip._({required this.vars, required this.operation}) : super._() { + BuiltValueNullFieldError.checkNotNull(vars, r'GHeroSkip', 'vars'); + BuiltValueNullFieldError.checkNotNull(operation, r'GHeroSkip', 'operation'); + } + + @override + GHeroSkip rebuild(void Function(GHeroSkipBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipBuilder toBuilder() => new GHeroSkipBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkip && + vars == other.vars && + operation == other.operation; + } + + @override + int get hashCode { + return $jf($jc($jc(0, vars.hashCode), operation.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkip') + ..add('vars', vars) + ..add('operation', operation)) + .toString(); + } +} + +class GHeroSkipBuilder implements Builder { + _$GHeroSkip? _$v; + + _i3.GHeroSkipVarsBuilder? _vars; + _i3.GHeroSkipVarsBuilder get vars => + _$this._vars ??= new _i3.GHeroSkipVarsBuilder(); + set vars(_i3.GHeroSkipVarsBuilder? vars) => _$this._vars = vars; + + _i1.Operation? _operation; + _i1.Operation? get operation => _$this._operation; + set operation(_i1.Operation? operation) => _$this._operation = operation; + + GHeroSkipBuilder() { + GHeroSkip._initializeBuilder(this); + } + + GHeroSkipBuilder get _$this { + final $v = _$v; + if ($v != null) { + _vars = $v.vars.toBuilder(); + _operation = $v.operation; + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkip other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkip; + } + + @override + void update(void Function(GHeroSkipBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkip build() => _build(); + + _$GHeroSkip _build() { + _$GHeroSkip _$result; + try { + _$result = _$v ?? + new _$GHeroSkip._( + vars: vars.build(), + operation: BuiltValueNullFieldError.checkNotNull( + operation, r'GHeroSkip', 'operation')); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'vars'; + vars.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroSkip', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +// ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip.var.gql.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip.var.gql.dart new file mode 100644 index 00000000..76105431 --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip.var.gql.dart @@ -0,0 +1,26 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' + as _i1; + +part 'hero_skip.var.gql.g.dart'; + +abstract class GHeroSkipVars + implements Built { + GHeroSkipVars._(); + + factory GHeroSkipVars([Function(GHeroSkipVarsBuilder b) updates]) = + _$GHeroSkipVars; + + bool get skipName; + static Serializer get serializer => _$gHeroSkipVarsSerializer; + Map toJson() => + (_i1.serializers.serializeWith(GHeroSkipVars.serializer, this) + as Map); + static GHeroSkipVars? fromJson(Map json) => + _i1.serializers.deserializeWith(GHeroSkipVars.serializer, json); +} diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip.var.gql.g.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip.var.gql.g.dart new file mode 100644 index 00000000..f5501242 --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip.var.gql.g.dart @@ -0,0 +1,134 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_skip.var.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroSkipVarsSerializer = + new _$GHeroSkipVarsSerializer(); + +class _$GHeroSkipVarsSerializer implements StructuredSerializer { + @override + final Iterable types = const [GHeroSkipVars, _$GHeroSkipVars]; + @override + final String wireName = 'GHeroSkipVars'; + + @override + Iterable serialize(Serializers serializers, GHeroSkipVars object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + 'skipName', + serializers.serialize(object.skipName, + specifiedType: const FullType(bool)), + ]; + + return result; + } + + @override + GHeroSkipVars deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroSkipVarsBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case 'skipName': + result.skipName = serializers.deserialize(value, + specifiedType: const FullType(bool))! as bool; + break; + } + } + + return result.build(); + } +} + +class _$GHeroSkipVars extends GHeroSkipVars { + @override + final bool skipName; + + factory _$GHeroSkipVars([void Function(GHeroSkipVarsBuilder)? updates]) => + (new GHeroSkipVarsBuilder()..update(updates))._build(); + + _$GHeroSkipVars._({required this.skipName}) : super._() { + BuiltValueNullFieldError.checkNotNull( + skipName, r'GHeroSkipVars', 'skipName'); + } + + @override + GHeroSkipVars rebuild(void Function(GHeroSkipVarsBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipVarsBuilder toBuilder() => new GHeroSkipVarsBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkipVars && skipName == other.skipName; + } + + @override + int get hashCode { + return $jf($jc(0, skipName.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkipVars') + ..add('skipName', skipName)) + .toString(); + } +} + +class GHeroSkipVarsBuilder + implements Builder { + _$GHeroSkipVars? _$v; + + bool? _skipName; + bool? get skipName => _$this._skipName; + set skipName(bool? skipName) => _$this._skipName = skipName; + + GHeroSkipVarsBuilder(); + + GHeroSkipVarsBuilder get _$this { + final $v = _$v; + if ($v != null) { + _skipName = $v.skipName; + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkipVars other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkipVars; + } + + @override + void update(void Function(GHeroSkipVarsBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkipVars build() => _build(); + + _$GHeroSkipVars _build() { + final _$result = _$v ?? + new _$GHeroSkipVars._( + skipName: BuiltValueNullFieldError.checkNotNull( + skipName, r'GHeroSkipVars', 'skipName')); + replace(_$result); + return _$result; + } +} + +// ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/directives/hero_include.graphql b/codegen/end_to_end_test/lib/directives/hero_include.graphql new file mode 100644 index 00000000..b0ed5d08 --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/hero_include.graphql @@ -0,0 +1,6 @@ +query HeroInclude($includeId: Boolean!) { + hero { + id @include(if: $includeId) + name + } +} diff --git a/codegen/end_to_end_test/lib/directives/hero_skip.graphql b/codegen/end_to_end_test/lib/directives/hero_skip.graphql new file mode 100644 index 00000000..9135240c --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/hero_skip.graphql @@ -0,0 +1,6 @@ +query HeroSkip($skipName: Boolean!) { + hero { + id + name @skip(if: $skipName) + } +} diff --git a/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_fragments.data.gql.dart b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_fragments.data.gql.dart index d5ed8b78..c6351583 100644 --- a/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_fragments.data.gql.dart +++ b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_fragments.data.gql.dart @@ -83,7 +83,7 @@ abstract class GHeroWithFragmentsData_hero_friendsConnection @override int? get totalCount; @override - BuiltList? get edges; + BuiltList? get edges; static Serializer get serializer => _$gHeroWithFragmentsDataHeroFriendsConnectionSerializer; @override @@ -206,7 +206,7 @@ abstract class GcomparisonFields implements GheroData { abstract class GcomparisonFields_friendsConnection { String get G__typename; int? get totalCount; - BuiltList? get edges; + BuiltList? get edges; Map toJson(); } @@ -278,7 +278,7 @@ abstract class GcomparisonFieldsData_friendsConnection @override int? get totalCount; @override - BuiltList? get edges; + BuiltList? get edges; static Serializer get serializer => _$gcomparisonFieldsDataFriendsConnectionSerializer; @override diff --git a/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_fragments.data.gql.g.dart b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_fragments.data.gql.g.dart index 19a22301..096836ab 100644 --- a/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_fragments.data.gql.g.dart +++ b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_fragments.data.gql.g.dart @@ -192,7 +192,7 @@ class _$GHeroWithFragmentsData_hero_friendsConnectionSerializer ..add('edges') ..add(serializers.serialize(value, specifiedType: const FullType(BuiltList, const [ - const FullType( + const FullType.nullable( GHeroWithFragmentsData_hero_friendsConnection_edges) ]))); } @@ -222,7 +222,7 @@ class _$GHeroWithFragmentsData_hero_friendsConnectionSerializer case 'edges': result.edges.replace(serializers.deserialize(value, specifiedType: const FullType(BuiltList, const [ - const FullType( + const FullType.nullable( GHeroWithFragmentsData_hero_friendsConnection_edges) ]))! as BuiltList); break; @@ -499,7 +499,8 @@ class _$GcomparisonFieldsData_friendsConnectionSerializer ..add('edges') ..add(serializers.serialize(value, specifiedType: const FullType(BuiltList, const [ - const FullType(GcomparisonFieldsData_friendsConnection_edges) + const FullType.nullable( + GcomparisonFieldsData_friendsConnection_edges) ]))); } return result; @@ -528,7 +529,8 @@ class _$GcomparisonFieldsData_friendsConnectionSerializer case 'edges': result.edges.replace(serializers.deserialize(value, specifiedType: const FullType(BuiltList, const [ - const FullType(GcomparisonFieldsData_friendsConnection_edges) + const FullType.nullable( + GcomparisonFieldsData_friendsConnection_edges) ]))! as BuiltList); break; } @@ -925,7 +927,7 @@ class _$GHeroWithFragmentsData_hero_friendsConnection @override final int? totalCount; @override - final BuiltList? edges; + final BuiltList? edges; factory _$GHeroWithFragmentsData_hero_friendsConnection( [void Function(GHeroWithFragmentsData_hero_friendsConnectionBuilder)? @@ -991,13 +993,13 @@ class GHeroWithFragmentsData_hero_friendsConnectionBuilder int? get totalCount => _$this._totalCount; set totalCount(int? totalCount) => _$this._totalCount = totalCount; - ListBuilder? _edges; + ListBuilder? _edges; ListBuilder< - GHeroWithFragmentsData_hero_friendsConnection_edges> get edges => _$this + GHeroWithFragmentsData_hero_friendsConnection_edges?> get edges => _$this ._edges ??= - new ListBuilder(); + new ListBuilder(); set edges( - ListBuilder? + ListBuilder? edges) => _$this._edges = edges; @@ -1571,7 +1573,7 @@ class _$GcomparisonFieldsData_friendsConnection @override final int? totalCount; @override - final BuiltList? edges; + final BuiltList? edges; factory _$GcomparisonFieldsData_friendsConnection( [void Function(GcomparisonFieldsData_friendsConnectionBuilder)? @@ -1636,12 +1638,12 @@ class GcomparisonFieldsData_friendsConnectionBuilder int? get totalCount => _$this._totalCount; set totalCount(int? totalCount) => _$this._totalCount = totalCount; - ListBuilder? _edges; - ListBuilder get edges => + ListBuilder? _edges; + ListBuilder get edges => _$this._edges ??= - new ListBuilder(); + new ListBuilder(); set edges( - ListBuilder? edges) => + ListBuilder? edges) => _$this._edges = edges; GcomparisonFieldsData_friendsConnectionBuilder() { diff --git a/codegen/end_to_end_test/lib/graphql/__generated__/schema.schema.gql.dart b/codegen/end_to_end_test/lib/graphql/__generated__/schema.schema.gql.dart index d1b1cc93..a6e51b7a 100644 --- a/codegen/end_to_end_test/lib/graphql/__generated__/schema.schema.gql.dart +++ b/codegen/end_to_end_test/lib/graphql/__generated__/schema.schema.gql.dart @@ -49,7 +49,7 @@ abstract class GReviewInput int get stars; String? get commentary; GColorInput? get favorite_color; - BuiltList? get seenOn; + BuiltList? get seenOn; static Serializer get serializer => _$gReviewInputSerializer; Map toJson() => (_i1.serializers.serializeWith(GReviewInput.serializer, this) diff --git a/codegen/end_to_end_test/lib/graphql/__generated__/schema.schema.gql.g.dart b/codegen/end_to_end_test/lib/graphql/__generated__/schema.schema.gql.g.dart index 8e99d086..9a393483 100644 --- a/codegen/end_to_end_test/lib/graphql/__generated__/schema.schema.gql.g.dart +++ b/codegen/end_to_end_test/lib/graphql/__generated__/schema.schema.gql.g.dart @@ -131,8 +131,8 @@ class _$GReviewInputSerializer implements StructuredSerializer { result ..add('seenOn') ..add(serializers.serialize(value, - specifiedType: - const FullType(BuiltList, const [const FullType(DateTime)]))); + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(DateTime)]))); } return result; } @@ -164,7 +164,7 @@ class _$GReviewInputSerializer implements StructuredSerializer { case 'seenOn': result.seenOn.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(DateTime)]))! + BuiltList, const [const FullType.nullable(DateTime)]))! as BuiltList); break; } @@ -233,7 +233,7 @@ class _$GReviewInput extends GReviewInput { @override final GColorInput? favorite_color; @override - final BuiltList? seenOn; + final BuiltList? seenOn; factory _$GReviewInput([void Function(GReviewInputBuilder)? updates]) => (new GReviewInputBuilder()..update(updates))._build(); @@ -298,10 +298,10 @@ class GReviewInputBuilder set favorite_color(GColorInputBuilder? favorite_color) => _$this._favorite_color = favorite_color; - ListBuilder? _seenOn; - ListBuilder get seenOn => - _$this._seenOn ??= new ListBuilder(); - set seenOn(ListBuilder? seenOn) => _$this._seenOn = seenOn; + ListBuilder? _seenOn; + ListBuilder get seenOn => + _$this._seenOn ??= new ListBuilder(); + set seenOn(ListBuilder? seenOn) => _$this._seenOn = seenOn; GReviewInputBuilder(); diff --git a/codegen/end_to_end_test/lib/graphql/__generated__/serializers.gql.dart b/codegen/end_to_end_test/lib/graphql/__generated__/serializers.gql.dart index 3ba62bc4..53e34bfa 100644 --- a/codegen/end_to_end_test/lib/graphql/__generated__/serializers.gql.dart +++ b/codegen/end_to_end_test/lib/graphql/__generated__/serializers.gql.dart @@ -14,6 +14,18 @@ import 'package:end_to_end_test/custom_field.dart'; import 'package:end_to_end_test/custom_field_serializer.dart' show CustomFieldSerializer; import 'package:end_to_end_test/date_serializer.dart' show DateSerializer; +import 'package:end_to_end_test/directives/__generated__/hero_include.data.gql.dart' + show GHeroIncludeData, GHeroIncludeData_hero; +import 'package:end_to_end_test/directives/__generated__/hero_include.req.gql.dart' + show GHeroInclude; +import 'package:end_to_end_test/directives/__generated__/hero_include.var.gql.dart' + show GHeroIncludeVars; +import 'package:end_to_end_test/directives/__generated__/hero_skip.data.gql.dart' + show GHeroSkipData, GHeroSkipData_hero; +import 'package:end_to_end_test/directives/__generated__/hero_skip.req.gql.dart' + show GHeroSkip; +import 'package:end_to_end_test/directives/__generated__/hero_skip.var.gql.dart' + show GHeroSkipVars; import 'package:end_to_end_test/fragments/__generated__/hero_with_fragments.data.gql.dart' show GHeroWithFragmentsData, @@ -101,10 +113,18 @@ final SerializersBuilder _serializersBuilder = _$serializers.toBuilder() GHeroForEpisodeData_hero__base, GHeroForEpisodeData_hero__base_friends, GHeroForEpisodeVars, + GHeroInclude, + GHeroIncludeData, + GHeroIncludeData_hero, + GHeroIncludeVars, GHeroNoVars, GHeroNoVarsData, GHeroNoVarsData_hero, GHeroNoVarsVars, + GHeroSkip, + GHeroSkipData, + GHeroSkipData_hero, + GHeroSkipVars, GHeroWithFragments, GHeroWithFragmentsData, GHeroWithFragmentsData_hero, diff --git a/codegen/end_to_end_test/lib/graphql/__generated__/serializers.gql.g.dart b/codegen/end_to_end_test/lib/graphql/__generated__/serializers.gql.g.dart index 04794e2b..4ef5cb1c 100644 --- a/codegen/end_to_end_test/lib/graphql/__generated__/serializers.gql.g.dart +++ b/codegen/end_to_end_test/lib/graphql/__generated__/serializers.gql.g.dart @@ -27,10 +27,18 @@ Serializers _$serializers = (new Serializers().toBuilder() ..add(GHeroForEpisodeData_hero__base.serializer) ..add(GHeroForEpisodeData_hero__base_friends.serializer) ..add(GHeroForEpisodeVars.serializer) + ..add(GHeroInclude.serializer) + ..add(GHeroIncludeData.serializer) + ..add(GHeroIncludeData_hero.serializer) + ..add(GHeroIncludeVars.serializer) ..add(GHeroNoVars.serializer) ..add(GHeroNoVarsData.serializer) ..add(GHeroNoVarsData_hero.serializer) ..add(GHeroNoVarsVars.serializer) + ..add(GHeroSkip.serializer) + ..add(GHeroSkipData.serializer) + ..add(GHeroSkipData_hero.serializer) + ..add(GHeroSkipVars.serializer) ..add(GHeroWithFragments.serializer) ..add(GHeroWithFragmentsData.serializer) ..add(GHeroWithFragmentsData_hero.serializer) @@ -57,41 +65,45 @@ Serializers _$serializers = (new Serializers().toBuilder() ..add(GheroDataData.serializer) ..add(GheroDataVars.serializer) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(DateTime)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(DateTime)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(DateTime)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(DateTime)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(CustomField)]), - () => new ListBuilder()) + const FullType( + BuiltList, const [const FullType.nullable(CustomField)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(GEpisode)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(GEpisode)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(GEpisode)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(GEpisode)]), + () => new ListBuilder()) ..addBuilderFactory( const FullType(BuiltList, const [ - const FullType(GHeroForEpisodeData_hero__asDroid_friends) + const FullType.nullable(GHeroForEpisodeData_hero__asDroid_friends) ]), - () => new ListBuilder()) + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, - const [const FullType(GHeroForEpisodeData_hero__base_friends)]), - () => new ListBuilder()) + const FullType(BuiltList, const [ + const FullType.nullable(GHeroForEpisodeData_hero__base_friends) + ]), + () => new ListBuilder()) ..addBuilderFactory( const FullType(BuiltList, const [ - const FullType(GHeroWithFragmentsData_hero_friendsConnection_edges) + const FullType.nullable( + GHeroWithFragmentsData_hero_friendsConnection_edges) ]), () => new ListBuilder< - GHeroWithFragmentsData_hero_friendsConnection_edges>()) + GHeroWithFragmentsData_hero_friendsConnection_edges?>()) ..addBuilderFactory( const FullType(BuiltList, const [ - const FullType(GcomparisonFieldsData_friendsConnection_edges) + const FullType.nullable( + GcomparisonFieldsData_friendsConnection_edges) ]), - () => - new ListBuilder())) + () => new ListBuilder< + GcomparisonFieldsData_friendsConnection_edges?>())) .build(); // ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/interfaces/__generated__/hero_for_episode.data.gql.dart b/codegen/end_to_end_test/lib/interfaces/__generated__/hero_for_episode.data.gql.dart index 18291f58..9ca19dc0 100644 --- a/codegen/end_to_end_test/lib/interfaces/__generated__/hero_for_episode.data.gql.dart +++ b/codegen/end_to_end_test/lib/interfaces/__generated__/hero_for_episode.data.gql.dart @@ -37,7 +37,7 @@ abstract class GHeroForEpisodeData_hero { @BuiltValueField(wireName: '__typename') String get G__typename; String get name; - BuiltList? get friends; + BuiltList? get friends; static Serializer get serializer => _i2.InlineFragmentSerializer( 'GHeroForEpisodeData_hero', @@ -70,7 +70,7 @@ abstract class GHeroForEpisodeData_hero__base @override String get name; @override - BuiltList? get friends; + BuiltList? get friends; static Serializer get serializer => _$gHeroForEpisodeDataHeroBaseSerializer; @override @@ -132,7 +132,7 @@ abstract class GHeroForEpisodeData_hero__asDroid @override String get name; @override - BuiltList? get friends; + BuiltList? get friends; @override String? get primaryFunction; static Serializer get serializer => diff --git a/codegen/end_to_end_test/lib/interfaces/__generated__/hero_for_episode.data.gql.g.dart b/codegen/end_to_end_test/lib/interfaces/__generated__/hero_for_episode.data.gql.g.dart index 72e59241..3fa28c16 100644 --- a/codegen/end_to_end_test/lib/interfaces/__generated__/hero_for_episode.data.gql.g.dart +++ b/codegen/end_to_end_test/lib/interfaces/__generated__/hero_for_episode.data.gql.g.dart @@ -109,7 +109,7 @@ class _$GHeroForEpisodeData_hero__baseSerializer ..add('friends') ..add(serializers.serialize(value, specifiedType: const FullType(BuiltList, const [ - const FullType(GHeroForEpisodeData_hero__base_friends) + const FullType.nullable(GHeroForEpisodeData_hero__base_friends) ]))); } return result; @@ -138,7 +138,7 @@ class _$GHeroForEpisodeData_hero__baseSerializer case 'friends': result.friends.replace(serializers.deserialize(value, specifiedType: const FullType(BuiltList, const [ - const FullType(GHeroForEpisodeData_hero__base_friends) + const FullType.nullable(GHeroForEpisodeData_hero__base_friends) ]))! as BuiltList); break; } @@ -228,7 +228,7 @@ class _$GHeroForEpisodeData_hero__asDroidSerializer ..add('friends') ..add(serializers.serialize(value, specifiedType: const FullType(BuiltList, const [ - const FullType(GHeroForEpisodeData_hero__asDroid_friends) + const FullType.nullable(GHeroForEpisodeData_hero__asDroid_friends) ]))); } value = object.primaryFunction; @@ -264,7 +264,8 @@ class _$GHeroForEpisodeData_hero__asDroidSerializer case 'friends': result.friends.replace(serializers.deserialize(value, specifiedType: const FullType(BuiltList, const [ - const FullType(GHeroForEpisodeData_hero__asDroid_friends) + const FullType.nullable( + GHeroForEpisodeData_hero__asDroid_friends) ]))! as BuiltList); break; case 'primaryFunction': @@ -487,7 +488,7 @@ class _$GHeroForEpisodeData_hero__base extends GHeroForEpisodeData_hero__base { @override final String name; @override - final BuiltList? friends; + final BuiltList? friends; factory _$GHeroForEpisodeData_hero__base( [void Function(GHeroForEpisodeData_hero__baseBuilder)? updates]) => @@ -550,11 +551,11 @@ class GHeroForEpisodeData_hero__baseBuilder String? get name => _$this._name; set name(String? name) => _$this._name = name; - ListBuilder? _friends; - ListBuilder get friends => + ListBuilder? _friends; + ListBuilder get friends => _$this._friends ??= - new ListBuilder(); - set friends(ListBuilder? friends) => + new ListBuilder(); + set friends(ListBuilder? friends) => _$this._friends = friends; GHeroForEpisodeData_hero__baseBuilder() { @@ -729,7 +730,7 @@ class _$GHeroForEpisodeData_hero__asDroid @override final String name; @override - final BuiltList? friends; + final BuiltList? friends; @override final String? primaryFunction; @@ -801,12 +802,12 @@ class GHeroForEpisodeData_hero__asDroidBuilder String? get name => _$this._name; set name(String? name) => _$this._name = name; - ListBuilder? _friends; - ListBuilder get friends => + ListBuilder? _friends; + ListBuilder get friends => _$this._friends ??= - new ListBuilder(); + new ListBuilder(); set friends( - ListBuilder? friends) => + ListBuilder? friends) => _$this._friends = friends; String? _primaryFunction; diff --git a/codegen/end_to_end_test/lib/scalars/__generated__/review_with_date.data.gql.dart b/codegen/end_to_end_test/lib/scalars/__generated__/review_with_date.data.gql.dart index b9dcefa9..3a6a02d9 100644 --- a/codegen/end_to_end_test/lib/scalars/__generated__/review_with_date.data.gql.dart +++ b/codegen/end_to_end_test/lib/scalars/__generated__/review_with_date.data.gql.dart @@ -52,8 +52,8 @@ abstract class GReviewWithDateData_createReview int get stars; String? get commentary; DateTime? get createdAt; - BuiltList get seenOn; - BuiltList<_i3.CustomField> get custom; + BuiltList get seenOn; + BuiltList<_i3.CustomField?> get custom; static Serializer get serializer => _$gReviewWithDateDataCreateReviewSerializer; Map toJson() => (_i1.serializers diff --git a/codegen/end_to_end_test/lib/scalars/__generated__/review_with_date.data.gql.g.dart b/codegen/end_to_end_test/lib/scalars/__generated__/review_with_date.data.gql.g.dart index 1d688b3b..54332154 100644 --- a/codegen/end_to_end_test/lib/scalars/__generated__/review_with_date.data.gql.g.dart +++ b/codegen/end_to_end_test/lib/scalars/__generated__/review_with_date.data.gql.g.dart @@ -93,12 +93,12 @@ class _$GReviewWithDateData_createReviewSerializer serializers.serialize(object.stars, specifiedType: const FullType(int)), 'seenOn', serializers.serialize(object.seenOn, - specifiedType: - const FullType(BuiltList, const [const FullType(DateTime)])), + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(DateTime)])), 'custom', serializers.serialize(object.custom, specifiedType: const FullType( - BuiltList, const [const FullType(_i3.CustomField)])), + BuiltList, const [const FullType.nullable(_i3.CustomField)])), ]; Object? value; value = object.episode; @@ -160,14 +160,14 @@ class _$GReviewWithDateData_createReviewSerializer case 'seenOn': result.seenOn.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(DateTime)]))! + BuiltList, const [const FullType.nullable(DateTime)]))! as BuiltList); break; case 'custom': result.custom.replace(serializers.deserialize(value, - specifiedType: const FullType( - BuiltList, const [const FullType(_i3.CustomField)]))! - as BuiltList); + specifiedType: const FullType(BuiltList, const [ + const FullType.nullable(_i3.CustomField) + ]))! as BuiltList); break; } } @@ -302,9 +302,9 @@ class _$GReviewWithDateData_createReview @override final DateTime? createdAt; @override - final BuiltList seenOn; + final BuiltList seenOn; @override - final BuiltList<_i3.CustomField> custom; + final BuiltList<_i3.CustomField?> custom; factory _$GReviewWithDateData_createReview( [void Function(GReviewWithDateData_createReviewBuilder)? updates]) => @@ -405,15 +405,15 @@ class GReviewWithDateData_createReviewBuilder DateTime? get createdAt => _$this._createdAt; set createdAt(DateTime? createdAt) => _$this._createdAt = createdAt; - ListBuilder? _seenOn; - ListBuilder get seenOn => - _$this._seenOn ??= new ListBuilder(); - set seenOn(ListBuilder? seenOn) => _$this._seenOn = seenOn; + ListBuilder? _seenOn; + ListBuilder get seenOn => + _$this._seenOn ??= new ListBuilder(); + set seenOn(ListBuilder? seenOn) => _$this._seenOn = seenOn; - ListBuilder<_i3.CustomField>? _custom; - ListBuilder<_i3.CustomField> get custom => - _$this._custom ??= new ListBuilder<_i3.CustomField>(); - set custom(ListBuilder<_i3.CustomField>? custom) => _$this._custom = custom; + ListBuilder<_i3.CustomField?>? _custom; + ListBuilder<_i3.CustomField?> get custom => + _$this._custom ??= new ListBuilder<_i3.CustomField?>(); + set custom(ListBuilder<_i3.CustomField?>? custom) => _$this._custom = custom; GReviewWithDateData_createReviewBuilder() { GReviewWithDateData_createReview._initializeBuilder(this); diff --git a/codegen/gql_code_builder/lib/src/common.dart b/codegen/gql_code_builder/lib/src/common.dart index f7eddb1d..a3980970 100644 --- a/codegen/gql_code_builder/lib/src/common.dart +++ b/codegen/gql_code_builder/lib/src/common.dart @@ -88,29 +88,23 @@ const defaultTypeMap = { Reference _typeRef( TypeNode type, - Map typeMap, [ - - /// TODO: remove - /// https://github.com/google/built_value.dart/issues/1011#issuecomment-804843573 - bool inList = false, -]) { + Map typeMap, + bool forceNullable, +) { if (type is NamedTypeNode) { final ref = typeMap[type.name.value] ?? Reference(type.name.value); return TypeReference( (b) => b ..url = ref.url ..symbol = ref.symbol - - /// TODO: remove `inList` check - /// https://github.com/google/built_value.dart/issues/1011#issuecomment-804843573 - ..isNullable = !inList && !type.isNonNull, + ..isNullable = forceNullable || !type.isNonNull, ); } else if (type is ListTypeNode) { return TypeReference( (b) => b ..url = "package:built_collection/built_collection.dart" ..symbol = "BuiltList" - ..isNullable = !type.isNonNull + ..isNullable = forceNullable || !type.isNonNull ..types.add(_typeRef(type.type, typeMap, true)), ); } @@ -148,6 +142,7 @@ Method buildGetter({ String? typeRefPrefix, bool built = true, bool isOverride = false, + bool forceNullable = false, }) { final unwrappedTypeNode = unwrapTypeNode(typeNode); final typeName = unwrappedTypeNode.name.value; @@ -168,10 +163,7 @@ Method buildGetter({ ...typeOverrides, }; - final returnType = _typeRef( - typeNode, - typeMap, - ); + final returnType = _typeRef(typeNode, typeMap, forceNullable); return Method( (b) => b diff --git a/codegen/gql_code_builder/lib/src/operation/data.dart b/codegen/gql_code_builder/lib/src/operation/data.dart index 6a00eb60..e9391b8a 100644 --- a/codegen/gql_code_builder/lib/src/operation/data.dart +++ b/codegen/gql_code_builder/lib/src/operation/data.dart @@ -150,6 +150,10 @@ List buildSelectionSetDataClasses({ typeDef, node.name.value, ); + final hasSkipOrInclude = node.directives.any( + (directive) => + directive.name.value == "skip" || directive.name.value == "include", + ); return buildGetter( nameNode: nameNode, typeNode: typeNode, @@ -158,6 +162,7 @@ List buildSelectionSetDataClasses({ typeRefPrefix: node.selectionSet != null ? builtClassName(name) : null, built: built, isOverride: superclassSelectionNodes.contains(node), + forceNullable: hasSkipOrInclude, ); }, ).toList(); diff --git a/examples/gql_example_cli/lib/__generated__/list_pokemon.data.gql.dart b/examples/gql_example_cli/lib/__generated__/list_pokemon.data.gql.dart index 22e800f4..d51a6d92 100644 --- a/examples/gql_example_cli/lib/__generated__/list_pokemon.data.gql.dart +++ b/examples/gql_example_cli/lib/__generated__/list_pokemon.data.gql.dart @@ -20,7 +20,7 @@ abstract class GListPokemonData b..G__typename = 'Query'; @BuiltValueField(wireName: '__typename') String get G__typename; - BuiltList? get pokemons; + BuiltList? get pokemons; static Serializer get serializer => _$gListPokemonDataSerializer; Map toJson() => diff --git a/examples/gql_example_cli/lib/__generated__/list_pokemon.data.gql.g.dart b/examples/gql_example_cli/lib/__generated__/list_pokemon.data.gql.g.dart index 7e807b40..ae4e4992 100644 --- a/examples/gql_example_cli/lib/__generated__/list_pokemon.data.gql.g.dart +++ b/examples/gql_example_cli/lib/__generated__/list_pokemon.data.gql.g.dart @@ -32,8 +32,8 @@ class _$GListPokemonDataSerializer result ..add('pokemons') ..add(serializers.serialize(value, - specifiedType: const FullType( - BuiltList, const [const FullType(GListPokemonData_pokemons)]))); + specifiedType: const FullType(BuiltList, + const [const FullType.nullable(GListPokemonData_pokemons)]))); } return result; } @@ -57,7 +57,7 @@ class _$GListPokemonDataSerializer case 'pokemons': result.pokemons.replace(serializers.deserialize(value, specifiedType: const FullType(BuiltList, const [ - const FullType(GListPokemonData_pokemons) + const FullType.nullable(GListPokemonData_pokemons) ]))! as BuiltList); break; } @@ -134,7 +134,7 @@ class _$GListPokemonData extends GListPokemonData { @override final String G__typename; @override - final BuiltList? pokemons; + final BuiltList? pokemons; factory _$GListPokemonData( [void Function(GListPokemonDataBuilder)? updates]) => @@ -183,10 +183,10 @@ class GListPokemonDataBuilder String? get G__typename => _$this._G__typename; set G__typename(String? G__typename) => _$this._G__typename = G__typename; - ListBuilder? _pokemons; - ListBuilder get pokemons => - _$this._pokemons ??= new ListBuilder(); - set pokemons(ListBuilder? pokemons) => + ListBuilder? _pokemons; + ListBuilder get pokemons => + _$this._pokemons ??= new ListBuilder(); + set pokemons(ListBuilder? pokemons) => _$this._pokemons = pokemons; GListPokemonDataBuilder() { diff --git a/examples/gql_example_cli/lib/__generated__/serializers.gql.g.dart b/examples/gql_example_cli/lib/__generated__/serializers.gql.g.dart index 1edd6e9e..43ffeb76 100644 --- a/examples/gql_example_cli/lib/__generated__/serializers.gql.g.dart +++ b/examples/gql_example_cli/lib/__generated__/serializers.gql.g.dart @@ -20,9 +20,9 @@ Serializers _$serializers = (new Serializers().toBuilder() ..add(GListPokemonData_pokemons.serializer) ..add(GListPokemonVars.serializer) ..addBuilderFactory( - const FullType( - BuiltList, const [const FullType(GListPokemonData_pokemons)]), - () => new ListBuilder())) + const FullType(BuiltList, + const [const FullType.nullable(GListPokemonData_pokemons)]), + () => new ListBuilder())) .build(); // ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/examples/gql_example_cli_github/lib/__generated__/read_repos.data.gql.dart b/examples/gql_example_cli_github/lib/__generated__/read_repos.data.gql.dart index c4ed2dde..a0bbfcdb 100644 --- a/examples/gql_example_cli_github/lib/__generated__/read_repos.data.gql.dart +++ b/examples/gql_example_cli_github/lib/__generated__/read_repos.data.gql.dart @@ -73,7 +73,7 @@ abstract class GReadRepositoriesData_viewer_repositories b..G__typename = 'RepositoryConnection'; @BuiltValueField(wireName: '__typename') String get G__typename; - BuiltList? get nodes; + BuiltList? get nodes; static Serializer get serializer => _$gReadRepositoriesDataViewerRepositoriesSerializer; Map toJson() => (_i1.serializers.serializeWith( diff --git a/examples/gql_example_cli_github/lib/__generated__/read_repos.data.gql.g.dart b/examples/gql_example_cli_github/lib/__generated__/read_repos.data.gql.g.dart index 861a531a..081258d4 100644 --- a/examples/gql_example_cli_github/lib/__generated__/read_repos.data.gql.g.dart +++ b/examples/gql_example_cli_github/lib/__generated__/read_repos.data.gql.g.dart @@ -154,7 +154,8 @@ class _$GReadRepositoriesData_viewer_repositoriesSerializer ..add('nodes') ..add(serializers.serialize(value, specifiedType: const FullType(BuiltList, const [ - const FullType(GReadRepositoriesData_viewer_repositories_nodes) + const FullType.nullable( + GReadRepositoriesData_viewer_repositories_nodes) ]))); } return result; @@ -179,7 +180,8 @@ class _$GReadRepositoriesData_viewer_repositoriesSerializer case 'nodes': result.nodes.replace(serializers.deserialize(value, specifiedType: const FullType(BuiltList, const [ - const FullType(GReadRepositoriesData_viewer_repositories_nodes) + const FullType.nullable( + GReadRepositoriesData_viewer_repositories_nodes) ]))! as BuiltList); break; } @@ -502,7 +504,7 @@ class _$GReadRepositoriesData_viewer_repositories @override final String G__typename; @override - final BuiltList? nodes; + final BuiltList? nodes; factory _$GReadRepositoriesData_viewer_repositories( [void Function(GReadRepositoriesData_viewer_repositoriesBuilder)? @@ -560,12 +562,12 @@ class GReadRepositoriesData_viewer_repositoriesBuilder String? get G__typename => _$this._G__typename; set G__typename(String? G__typename) => _$this._G__typename = G__typename; - ListBuilder? _nodes; - ListBuilder get nodes => + ListBuilder? _nodes; + ListBuilder get nodes => _$this._nodes ??= - new ListBuilder(); + new ListBuilder(); set nodes( - ListBuilder? + ListBuilder? nodes) => _$this._nodes = nodes; diff --git a/examples/gql_example_cli_github/lib/__generated__/schema.schema.gql.dart b/examples/gql_example_cli_github/lib/__generated__/schema.schema.gql.dart index 6676cd7b..61e06f99 100644 --- a/examples/gql_example_cli_github/lib/__generated__/schema.schema.gql.dart +++ b/examples/gql_example_cli_github/lib/__generated__/schema.schema.gql.dart @@ -91,7 +91,7 @@ abstract class GAddAssigneesToAssignableInput _$GAddAssigneesToAssignableInput; String get assignableId; - BuiltList get assigneeIds; + BuiltList get assigneeIds; String? get clientMutationId; static Serializer get serializer => _$gAddAssigneesToAssignableInputSerializer; @@ -131,7 +131,7 @@ abstract class GAddLabelsToLabelableInput _$GAddLabelsToLabelableInput; String? get clientMutationId; - BuiltList get labelIds; + BuiltList get labelIds; String get labelableId; static Serializer get serializer => _$gAddLabelsToLabelableInputSerializer; @@ -223,7 +223,7 @@ abstract class GAddPullRequestReviewInput String? get body; String? get clientMutationId; - BuiltList? get comments; + BuiltList? get comments; GGitObjectID? get commitOID; GPullRequestReviewEvent? get event; String get pullRequestId; @@ -563,7 +563,7 @@ abstract class GCommitAuthor factory GCommitAuthor([Function(GCommitAuthorBuilder b) updates]) = _$GCommitAuthor; - BuiltList? get emails; + BuiltList? get emails; String? get id; static Serializer get serializer => _$gCommitAuthorSerializer; Map toJson() => @@ -683,10 +683,10 @@ abstract class GCreateBranchProtectionRuleInput bool? get dismissesStaleReviews; bool? get isAdminEnforced; String get pattern; - BuiltList? get pushActorIds; + BuiltList? get pushActorIds; String get repositoryId; int? get requiredApprovingReviewCount; - BuiltList? get requiredStatusCheckContexts; + BuiltList? get requiredStatusCheckContexts; bool? get requiresApprovingReviews; bool? get requiresCodeOwnerReviews; bool? get requiresCommitSignatures; @@ -694,7 +694,7 @@ abstract class GCreateBranchProtectionRuleInput bool? get requiresStrictStatusChecks; bool? get restrictsPushes; bool? get restrictsReviewDismissals; - BuiltList? get reviewDismissalActorIds; + BuiltList? get reviewDismissalActorIds; static Serializer get serializer => _$gCreateBranchProtectionRuleInputSerializer; Map toJson() => (_i1.serializers @@ -716,7 +716,7 @@ abstract class GCreateEnterpriseOrganizationInput [Function(GCreateEnterpriseOrganizationInputBuilder b) updates]) = _$GCreateEnterpriseOrganizationInput; - BuiltList get adminLogins; + BuiltList get adminLogins; String get billingEmail; String? get clientMutationId; String get enterpriseId; @@ -740,12 +740,12 @@ abstract class GCreateIssueInput factory GCreateIssueInput([Function(GCreateIssueInputBuilder b) updates]) = _$GCreateIssueInput; - BuiltList? get assigneeIds; + BuiltList? get assigneeIds; String? get body; String? get clientMutationId; - BuiltList? get labelIds; + BuiltList? get labelIds; String? get milestoneId; - BuiltList? get projectIds; + BuiltList? get projectIds; String get repositoryId; String get title; static Serializer get serializer => @@ -768,7 +768,7 @@ abstract class GCreateProjectInput String? get clientMutationId; String get name; String get ownerId; - BuiltList? get repositoryIds; + BuiltList? get repositoryIds; GProjectTemplate? get template; static Serializer get serializer => _$gCreateProjectInputSerializer; @@ -2017,11 +2017,11 @@ abstract class GIssueFilters String? get assignee; String? get createdBy; - BuiltList? get labels; + BuiltList? get labels; String? get mentioned; String? get milestone; GDateTime? get since; - BuiltList? get states; + BuiltList? get states; bool? get viewerSubscribed; static Serializer get serializer => _$gIssueFiltersSerializer; Map toJson() => @@ -3538,7 +3538,7 @@ abstract class GRemoveAssigneesFromAssignableInput _$GRemoveAssigneesFromAssignableInput; String get assignableId; - BuiltList get assigneeIds; + BuiltList get assigneeIds; String? get clientMutationId; static Serializer get serializer => _$gRemoveAssigneesFromAssignableInputSerializer; @@ -3607,7 +3607,7 @@ abstract class GRemoveLabelsFromLabelableInput _$GRemoveLabelsFromLabelableInput; String? get clientMutationId; - BuiltList get labelIds; + BuiltList get labelIds; String get labelableId; static Serializer get serializer => _$gRemoveLabelsFromLabelableInputSerializer; @@ -4064,9 +4064,9 @@ abstract class GRequestReviewsInput String? get clientMutationId; String get pullRequestId; - BuiltList? get teamIds; + BuiltList? get teamIds; bool? get union; - BuiltList? get userIds; + BuiltList? get userIds; static Serializer get serializer => _$gRequestReviewsInputSerializer; Map toJson() => @@ -4931,9 +4931,9 @@ abstract class GUpdateBranchProtectionRuleInput bool? get dismissesStaleReviews; bool? get isAdminEnforced; String? get pattern; - BuiltList? get pushActorIds; + BuiltList? get pushActorIds; int? get requiredApprovingReviewCount; - BuiltList? get requiredStatusCheckContexts; + BuiltList? get requiredStatusCheckContexts; bool? get requiresApprovingReviews; bool? get requiresCodeOwnerReviews; bool? get requiresCommitSignatures; @@ -4941,7 +4941,7 @@ abstract class GUpdateBranchProtectionRuleInput bool? get requiresStrictStatusChecks; bool? get restrictsPushes; bool? get restrictsReviewDismissals; - BuiltList? get reviewDismissalActorIds; + BuiltList? get reviewDismissalActorIds; static Serializer get serializer => _$gUpdateBranchProtectionRuleInputSerializer; Map toJson() => (_i1.serializers @@ -5449,13 +5449,13 @@ abstract class GUpdateIssueInput factory GUpdateIssueInput([Function(GUpdateIssueInputBuilder b) updates]) = _$GUpdateIssueInput; - BuiltList? get assigneeIds; + BuiltList? get assigneeIds; String? get body; String? get clientMutationId; String get id; - BuiltList? get labelIds; + BuiltList? get labelIds; String? get milestoneId; - BuiltList? get projectIds; + BuiltList? get projectIds; GIssueState? get state; String? get title; static Serializer get serializer => @@ -5540,14 +5540,14 @@ abstract class GUpdatePullRequestInput [Function(GUpdatePullRequestInputBuilder b) updates]) = _$GUpdatePullRequestInput; - BuiltList? get assigneeIds; + BuiltList? get assigneeIds; String? get baseRefName; String? get body; String? get clientMutationId; - BuiltList? get labelIds; + BuiltList? get labelIds; bool? get maintainerCanModify; String? get milestoneId; - BuiltList? get projectIds; + BuiltList? get projectIds; String get pullRequestId; GPullRequestUpdateState? get state; String? get title; @@ -5732,7 +5732,7 @@ abstract class GUpdateTopicsInput String? get clientMutationId; String get repositoryId; - BuiltList get topicNames; + BuiltList get topicNames; static Serializer get serializer => _$gUpdateTopicsInputSerializer; Map toJson() => diff --git a/examples/gql_example_cli_github/lib/__generated__/schema.schema.gql.g.dart b/examples/gql_example_cli_github/lib/__generated__/schema.schema.gql.g.dart index 6e13f9b3..27ec4698 100644 --- a/examples/gql_example_cli_github/lib/__generated__/schema.schema.gql.g.dart +++ b/examples/gql_example_cli_github/lib/__generated__/schema.schema.gql.g.dart @@ -4861,8 +4861,8 @@ class _$GAddAssigneesToAssignableInputSerializer specifiedType: const FullType(String)), 'assigneeIds', serializers.serialize(object.assigneeIds, - specifiedType: - const FullType(BuiltList, const [const FullType(String)])), + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)])), ]; Object? value; value = object.clientMutationId; @@ -4894,7 +4894,7 @@ class _$GAddAssigneesToAssignableInputSerializer case 'assigneeIds': result.assigneeIds.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; case 'clientMutationId': @@ -4984,8 +4984,8 @@ class _$GAddLabelsToLabelableInputSerializer final result = [ 'labelIds', serializers.serialize(object.labelIds, - specifiedType: - const FullType(BuiltList, const [const FullType(String)])), + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)])), 'labelableId', serializers.serialize(object.labelableId, specifiedType: const FullType(String)), @@ -5020,7 +5020,7 @@ class _$GAddLabelsToLabelableInputSerializer case 'labelIds': result.labelIds.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; case 'labelableId': @@ -5336,8 +5336,9 @@ class _$GAddPullRequestReviewInputSerializer result ..add('comments') ..add(serializers.serialize(value, - specifiedType: const FullType(BuiltList, - const [const FullType(GDraftPullRequestReviewComment)]))); + specifiedType: const FullType(BuiltList, const [ + const FullType.nullable(GDraftPullRequestReviewComment) + ]))); } value = object.commitOID; if (value != null) { @@ -5379,7 +5380,7 @@ class _$GAddPullRequestReviewInputSerializer case 'comments': result.comments.replace(serializers.deserialize(value, specifiedType: const FullType(BuiltList, const [ - const FullType(GDraftPullRequestReviewComment) + const FullType.nullable(GDraftPullRequestReviewComment) ]))! as BuiltList); break; case 'commitOID': @@ -6234,8 +6235,8 @@ class _$GCommitAuthorSerializer implements StructuredSerializer { result ..add('emails') ..add(serializers.serialize(value, - specifiedType: - const FullType(BuiltList, const [const FullType(String)]))); + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)]))); } value = object.id; if (value != null) { @@ -6262,7 +6263,7 @@ class _$GCommitAuthorSerializer implements StructuredSerializer { case 'emails': result.emails.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; case 'id': @@ -6561,8 +6562,8 @@ class _$GCreateBranchProtectionRuleInputSerializer result ..add('pushActorIds') ..add(serializers.serialize(value, - specifiedType: - const FullType(BuiltList, const [const FullType(String)]))); + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)]))); } value = object.requiredApprovingReviewCount; if (value != null) { @@ -6575,8 +6576,8 @@ class _$GCreateBranchProtectionRuleInputSerializer result ..add('requiredStatusCheckContexts') ..add(serializers.serialize(value, - specifiedType: - const FullType(BuiltList, const [const FullType(String)]))); + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)]))); } value = object.requiresApprovingReviews; if (value != null) { @@ -6632,8 +6633,8 @@ class _$GCreateBranchProtectionRuleInputSerializer result ..add('reviewDismissalActorIds') ..add(serializers.serialize(value, - specifiedType: - const FullType(BuiltList, const [const FullType(String)]))); + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)]))); } return result; } @@ -6669,7 +6670,7 @@ class _$GCreateBranchProtectionRuleInputSerializer case 'pushActorIds': result.pushActorIds.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; case 'repositoryId': @@ -6684,7 +6685,7 @@ class _$GCreateBranchProtectionRuleInputSerializer result.requiredStatusCheckContexts.replace(serializers.deserialize( value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; case 'requiresApprovingReviews': @@ -6718,7 +6719,7 @@ class _$GCreateBranchProtectionRuleInputSerializer case 'reviewDismissalActorIds': result.reviewDismissalActorIds.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; } @@ -6745,8 +6746,8 @@ class _$GCreateEnterpriseOrganizationInputSerializer final result = [ 'adminLogins', serializers.serialize(object.adminLogins, - specifiedType: - const FullType(BuiltList, const [const FullType(String)])), + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)])), 'billingEmail', serializers.serialize(object.billingEmail, specifiedType: const FullType(String)), @@ -6786,7 +6787,7 @@ class _$GCreateEnterpriseOrganizationInputSerializer case 'adminLogins': result.adminLogins.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; case 'billingEmail': @@ -6840,8 +6841,8 @@ class _$GCreateIssueInputSerializer result ..add('assigneeIds') ..add(serializers.serialize(value, - specifiedType: - const FullType(BuiltList, const [const FullType(String)]))); + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)]))); } value = object.body; if (value != null) { @@ -6862,8 +6863,8 @@ class _$GCreateIssueInputSerializer result ..add('labelIds') ..add(serializers.serialize(value, - specifiedType: - const FullType(BuiltList, const [const FullType(String)]))); + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)]))); } value = object.milestoneId; if (value != null) { @@ -6877,8 +6878,8 @@ class _$GCreateIssueInputSerializer result ..add('projectIds') ..add(serializers.serialize(value, - specifiedType: - const FullType(BuiltList, const [const FullType(String)]))); + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)]))); } return result; } @@ -6898,7 +6899,7 @@ class _$GCreateIssueInputSerializer case 'assigneeIds': result.assigneeIds.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; case 'body': @@ -6912,7 +6913,7 @@ class _$GCreateIssueInputSerializer case 'labelIds': result.labelIds.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; case 'milestoneId': @@ -6922,7 +6923,7 @@ class _$GCreateIssueInputSerializer case 'projectIds': result.projectIds.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; case 'repositoryId': @@ -6981,8 +6982,8 @@ class _$GCreateProjectInputSerializer result ..add('repositoryIds') ..add(serializers.serialize(value, - specifiedType: - const FullType(BuiltList, const [const FullType(String)]))); + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)]))); } value = object.template; if (value != null) { @@ -7025,7 +7026,7 @@ class _$GCreateProjectInputSerializer case 'repositoryIds': result.repositoryIds.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; case 'template': @@ -9470,8 +9471,8 @@ class _$GIssueFiltersSerializer implements StructuredSerializer { result ..add('labels') ..add(serializers.serialize(value, - specifiedType: - const FullType(BuiltList, const [const FullType(String)]))); + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)]))); } value = object.mentioned; if (value != null) { @@ -9500,7 +9501,7 @@ class _$GIssueFiltersSerializer implements StructuredSerializer { ..add('states') ..add(serializers.serialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(GIssueState)]))); + BuiltList, const [const FullType.nullable(GIssueState)]))); } value = object.viewerSubscribed; if (value != null) { @@ -9535,7 +9536,7 @@ class _$GIssueFiltersSerializer implements StructuredSerializer { case 'labels': result.labels.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; case 'mentioned': @@ -9553,7 +9554,7 @@ class _$GIssueFiltersSerializer implements StructuredSerializer { case 'states': result.states.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(GIssueState)]))! + BuiltList, const [const FullType.nullable(GIssueState)]))! as BuiltList); break; case 'viewerSubscribed': @@ -11602,8 +11603,8 @@ class _$GRemoveAssigneesFromAssignableInputSerializer specifiedType: const FullType(String)), 'assigneeIds', serializers.serialize(object.assigneeIds, - specifiedType: - const FullType(BuiltList, const [const FullType(String)])), + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)])), ]; Object? value; value = object.clientMutationId; @@ -11635,7 +11636,7 @@ class _$GRemoveAssigneesFromAssignableInputSerializer case 'assigneeIds': result.assigneeIds.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; case 'clientMutationId': @@ -11794,8 +11795,8 @@ class _$GRemoveLabelsFromLabelableInputSerializer final result = [ 'labelIds', serializers.serialize(object.labelIds, - specifiedType: - const FullType(BuiltList, const [const FullType(String)])), + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)])), 'labelableId', serializers.serialize(object.labelableId, specifiedType: const FullType(String)), @@ -11830,7 +11831,7 @@ class _$GRemoveLabelsFromLabelableInputSerializer case 'labelIds': result.labelIds.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; case 'labelableId': @@ -12566,8 +12567,8 @@ class _$GRequestReviewsInputSerializer result ..add('teamIds') ..add(serializers.serialize(value, - specifiedType: - const FullType(BuiltList, const [const FullType(String)]))); + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)]))); } value = object.union; if (value != null) { @@ -12581,8 +12582,8 @@ class _$GRequestReviewsInputSerializer result ..add('userIds') ..add(serializers.serialize(value, - specifiedType: - const FullType(BuiltList, const [const FullType(String)]))); + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)]))); } return result; } @@ -12610,7 +12611,7 @@ class _$GRequestReviewsInputSerializer case 'teamIds': result.teamIds.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; case 'union': @@ -12620,7 +12621,7 @@ class _$GRequestReviewsInputSerializer case 'userIds': result.userIds.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; } @@ -14344,8 +14345,8 @@ class _$GUpdateBranchProtectionRuleInputSerializer result ..add('pushActorIds') ..add(serializers.serialize(value, - specifiedType: - const FullType(BuiltList, const [const FullType(String)]))); + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)]))); } value = object.requiredApprovingReviewCount; if (value != null) { @@ -14358,8 +14359,8 @@ class _$GUpdateBranchProtectionRuleInputSerializer result ..add('requiredStatusCheckContexts') ..add(serializers.serialize(value, - specifiedType: - const FullType(BuiltList, const [const FullType(String)]))); + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)]))); } value = object.requiresApprovingReviews; if (value != null) { @@ -14415,8 +14416,8 @@ class _$GUpdateBranchProtectionRuleInputSerializer result ..add('reviewDismissalActorIds') ..add(serializers.serialize(value, - specifiedType: - const FullType(BuiltList, const [const FullType(String)]))); + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)]))); } return result; } @@ -14456,7 +14457,7 @@ class _$GUpdateBranchProtectionRuleInputSerializer case 'pushActorIds': result.pushActorIds.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; case 'requiredApprovingReviewCount': @@ -14467,7 +14468,7 @@ class _$GUpdateBranchProtectionRuleInputSerializer result.requiredStatusCheckContexts.replace(serializers.deserialize( value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; case 'requiresApprovingReviews': @@ -14501,7 +14502,7 @@ class _$GUpdateBranchProtectionRuleInputSerializer case 'reviewDismissalActorIds': result.reviewDismissalActorIds.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; } @@ -15869,8 +15870,8 @@ class _$GUpdateIssueInputSerializer result ..add('assigneeIds') ..add(serializers.serialize(value, - specifiedType: - const FullType(BuiltList, const [const FullType(String)]))); + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)]))); } value = object.body; if (value != null) { @@ -15891,8 +15892,8 @@ class _$GUpdateIssueInputSerializer result ..add('labelIds') ..add(serializers.serialize(value, - specifiedType: - const FullType(BuiltList, const [const FullType(String)]))); + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)]))); } value = object.milestoneId; if (value != null) { @@ -15906,8 +15907,8 @@ class _$GUpdateIssueInputSerializer result ..add('projectIds') ..add(serializers.serialize(value, - specifiedType: - const FullType(BuiltList, const [const FullType(String)]))); + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)]))); } value = object.state; if (value != null) { @@ -15941,7 +15942,7 @@ class _$GUpdateIssueInputSerializer case 'assigneeIds': result.assigneeIds.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; case 'body': @@ -15959,7 +15960,7 @@ class _$GUpdateIssueInputSerializer case 'labelIds': result.labelIds.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; case 'milestoneId': @@ -15969,7 +15970,7 @@ class _$GUpdateIssueInputSerializer case 'projectIds': result.projectIds.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; case 'state': @@ -16255,8 +16256,8 @@ class _$GUpdatePullRequestInputSerializer result ..add('assigneeIds') ..add(serializers.serialize(value, - specifiedType: - const FullType(BuiltList, const [const FullType(String)]))); + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)]))); } value = object.baseRefName; if (value != null) { @@ -16284,8 +16285,8 @@ class _$GUpdatePullRequestInputSerializer result ..add('labelIds') ..add(serializers.serialize(value, - specifiedType: - const FullType(BuiltList, const [const FullType(String)]))); + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)]))); } value = object.maintainerCanModify; if (value != null) { @@ -16306,8 +16307,8 @@ class _$GUpdatePullRequestInputSerializer result ..add('projectIds') ..add(serializers.serialize(value, - specifiedType: - const FullType(BuiltList, const [const FullType(String)]))); + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)]))); } value = object.state; if (value != null) { @@ -16341,7 +16342,7 @@ class _$GUpdatePullRequestInputSerializer case 'assigneeIds': result.assigneeIds.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; case 'baseRefName': @@ -16359,7 +16360,7 @@ class _$GUpdatePullRequestInputSerializer case 'labelIds': result.labelIds.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; case 'maintainerCanModify': @@ -16373,7 +16374,7 @@ class _$GUpdatePullRequestInputSerializer case 'projectIds': result.projectIds.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; case 'pullRequestId': @@ -16982,8 +16983,8 @@ class _$GUpdateTopicsInputSerializer specifiedType: const FullType(String)), 'topicNames', serializers.serialize(object.topicNames, - specifiedType: - const FullType(BuiltList, const [const FullType(String)])), + specifiedType: const FullType( + BuiltList, const [const FullType.nullable(String)])), ]; Object? value; value = object.clientMutationId; @@ -17019,7 +17020,7 @@ class _$GUpdateTopicsInputSerializer case 'topicNames': result.topicNames.replace(serializers.deserialize(value, specifiedType: const FullType( - BuiltList, const [const FullType(String)]))! + BuiltList, const [const FullType.nullable(String)]))! as BuiltList); break; } @@ -17344,7 +17345,7 @@ class _$GAddAssigneesToAssignableInput extends GAddAssigneesToAssignableInput { @override final String assignableId; @override - final BuiltList assigneeIds; + final BuiltList assigneeIds; @override final String? clientMutationId; @@ -17407,10 +17408,10 @@ class GAddAssigneesToAssignableInputBuilder String? get assignableId => _$this._assignableId; set assignableId(String? assignableId) => _$this._assignableId = assignableId; - ListBuilder? _assigneeIds; - ListBuilder get assigneeIds => - _$this._assigneeIds ??= new ListBuilder(); - set assigneeIds(ListBuilder? assigneeIds) => + ListBuilder? _assigneeIds; + ListBuilder get assigneeIds => + _$this._assigneeIds ??= new ListBuilder(); + set assigneeIds(ListBuilder? assigneeIds) => _$this._assigneeIds = assigneeIds; String? _clientMutationId; @@ -17584,7 +17585,7 @@ class _$GAddLabelsToLabelableInput extends GAddLabelsToLabelableInput { @override final String? clientMutationId; @override - final BuiltList labelIds; + final BuiltList labelIds; @override final String labelableId; @@ -17647,10 +17648,10 @@ class GAddLabelsToLabelableInputBuilder set clientMutationId(String? clientMutationId) => _$this._clientMutationId = clientMutationId; - ListBuilder? _labelIds; - ListBuilder get labelIds => - _$this._labelIds ??= new ListBuilder(); - set labelIds(ListBuilder? labelIds) => _$this._labelIds = labelIds; + ListBuilder? _labelIds; + ListBuilder get labelIds => + _$this._labelIds ??= new ListBuilder(); + set labelIds(ListBuilder? labelIds) => _$this._labelIds = labelIds; String? _labelableId; String? get labelableId => _$this._labelableId; @@ -18151,7 +18152,7 @@ class _$GAddPullRequestReviewInput extends GAddPullRequestReviewInput { @override final String? clientMutationId; @override - final BuiltList? comments; + final BuiltList? comments; @override final GGitObjectID? commitOID; @override @@ -18235,10 +18236,10 @@ class GAddPullRequestReviewInputBuilder set clientMutationId(String? clientMutationId) => _$this._clientMutationId = clientMutationId; - ListBuilder? _comments; - ListBuilder get comments => - _$this._comments ??= new ListBuilder(); - set comments(ListBuilder? comments) => + ListBuilder? _comments; + ListBuilder get comments => + _$this._comments ??= new ListBuilder(); + set comments(ListBuilder? comments) => _$this._comments = comments; GGitObjectIDBuilder? _commitOID; @@ -19611,7 +19612,7 @@ class GClosePullRequestInputBuilder class _$GCommitAuthor extends GCommitAuthor { @override - final BuiltList? emails; + final BuiltList? emails; @override final String? id; @@ -19651,10 +19652,10 @@ class GCommitAuthorBuilder implements Builder { _$GCommitAuthor? _$v; - ListBuilder? _emails; - ListBuilder get emails => - _$this._emails ??= new ListBuilder(); - set emails(ListBuilder? emails) => _$this._emails = emails; + ListBuilder? _emails; + ListBuilder get emails => + _$this._emails ??= new ListBuilder(); + set emails(ListBuilder? emails) => _$this._emails = emails; String? _id; String? get id => _$this._id; @@ -20059,13 +20060,13 @@ class _$GCreateBranchProtectionRuleInput @override final String pattern; @override - final BuiltList? pushActorIds; + final BuiltList? pushActorIds; @override final String repositoryId; @override final int? requiredApprovingReviewCount; @override - final BuiltList? requiredStatusCheckContexts; + final BuiltList? requiredStatusCheckContexts; @override final bool? requiresApprovingReviews; @override @@ -20081,7 +20082,7 @@ class _$GCreateBranchProtectionRuleInput @override final bool? restrictsReviewDismissals; @override - final BuiltList? reviewDismissalActorIds; + final BuiltList? reviewDismissalActorIds; factory _$GCreateBranchProtectionRuleInput( [void Function(GCreateBranchProtectionRuleInputBuilder)? updates]) => @@ -20231,10 +20232,10 @@ class GCreateBranchProtectionRuleInputBuilder String? get pattern => _$this._pattern; set pattern(String? pattern) => _$this._pattern = pattern; - ListBuilder? _pushActorIds; - ListBuilder get pushActorIds => - _$this._pushActorIds ??= new ListBuilder(); - set pushActorIds(ListBuilder? pushActorIds) => + ListBuilder? _pushActorIds; + ListBuilder get pushActorIds => + _$this._pushActorIds ??= new ListBuilder(); + set pushActorIds(ListBuilder? pushActorIds) => _$this._pushActorIds = pushActorIds; String? _repositoryId; @@ -20246,11 +20247,11 @@ class GCreateBranchProtectionRuleInputBuilder set requiredApprovingReviewCount(int? requiredApprovingReviewCount) => _$this._requiredApprovingReviewCount = requiredApprovingReviewCount; - ListBuilder? _requiredStatusCheckContexts; - ListBuilder get requiredStatusCheckContexts => - _$this._requiredStatusCheckContexts ??= new ListBuilder(); + ListBuilder? _requiredStatusCheckContexts; + ListBuilder get requiredStatusCheckContexts => + _$this._requiredStatusCheckContexts ??= new ListBuilder(); set requiredStatusCheckContexts( - ListBuilder? requiredStatusCheckContexts) => + ListBuilder? requiredStatusCheckContexts) => _$this._requiredStatusCheckContexts = requiredStatusCheckContexts; bool? _requiresApprovingReviews; @@ -20288,10 +20289,10 @@ class GCreateBranchProtectionRuleInputBuilder set restrictsReviewDismissals(bool? restrictsReviewDismissals) => _$this._restrictsReviewDismissals = restrictsReviewDismissals; - ListBuilder? _reviewDismissalActorIds; - ListBuilder get reviewDismissalActorIds => - _$this._reviewDismissalActorIds ??= new ListBuilder(); - set reviewDismissalActorIds(ListBuilder? reviewDismissalActorIds) => + ListBuilder? _reviewDismissalActorIds; + ListBuilder get reviewDismissalActorIds => + _$this._reviewDismissalActorIds ??= new ListBuilder(); + set reviewDismissalActorIds(ListBuilder? reviewDismissalActorIds) => _$this._reviewDismissalActorIds = reviewDismissalActorIds; GCreateBranchProtectionRuleInputBuilder(); @@ -20384,7 +20385,7 @@ class GCreateBranchProtectionRuleInputBuilder class _$GCreateEnterpriseOrganizationInput extends GCreateEnterpriseOrganizationInput { @override - final BuiltList adminLogins; + final BuiltList adminLogins; @override final String billingEmail; @override @@ -20474,10 +20475,10 @@ class GCreateEnterpriseOrganizationInputBuilder GCreateEnterpriseOrganizationInputBuilder> { _$GCreateEnterpriseOrganizationInput? _$v; - ListBuilder? _adminLogins; - ListBuilder get adminLogins => - _$this._adminLogins ??= new ListBuilder(); - set adminLogins(ListBuilder? adminLogins) => + ListBuilder? _adminLogins; + ListBuilder get adminLogins => + _$this._adminLogins ??= new ListBuilder(); + set adminLogins(ListBuilder? adminLogins) => _$this._adminLogins = adminLogins; String? _billingEmail; @@ -20565,17 +20566,17 @@ class GCreateEnterpriseOrganizationInputBuilder class _$GCreateIssueInput extends GCreateIssueInput { @override - final BuiltList? assigneeIds; + final BuiltList? assigneeIds; @override final String? body; @override final String? clientMutationId; @override - final BuiltList? labelIds; + final BuiltList? labelIds; @override final String? milestoneId; @override - final BuiltList? projectIds; + final BuiltList? projectIds; @override final String repositoryId; @override @@ -20657,10 +20658,10 @@ class GCreateIssueInputBuilder implements Builder { _$GCreateIssueInput? _$v; - ListBuilder? _assigneeIds; - ListBuilder get assigneeIds => - _$this._assigneeIds ??= new ListBuilder(); - set assigneeIds(ListBuilder? assigneeIds) => + ListBuilder? _assigneeIds; + ListBuilder get assigneeIds => + _$this._assigneeIds ??= new ListBuilder(); + set assigneeIds(ListBuilder? assigneeIds) => _$this._assigneeIds = assigneeIds; String? _body; @@ -20672,19 +20673,19 @@ class GCreateIssueInputBuilder set clientMutationId(String? clientMutationId) => _$this._clientMutationId = clientMutationId; - ListBuilder? _labelIds; - ListBuilder get labelIds => - _$this._labelIds ??= new ListBuilder(); - set labelIds(ListBuilder? labelIds) => _$this._labelIds = labelIds; + ListBuilder? _labelIds; + ListBuilder get labelIds => + _$this._labelIds ??= new ListBuilder(); + set labelIds(ListBuilder? labelIds) => _$this._labelIds = labelIds; String? _milestoneId; String? get milestoneId => _$this._milestoneId; set milestoneId(String? milestoneId) => _$this._milestoneId = milestoneId; - ListBuilder? _projectIds; - ListBuilder get projectIds => - _$this._projectIds ??= new ListBuilder(); - set projectIds(ListBuilder? projectIds) => + ListBuilder? _projectIds; + ListBuilder get projectIds => + _$this._projectIds ??= new ListBuilder(); + set projectIds(ListBuilder? projectIds) => _$this._projectIds = projectIds; String? _repositoryId; @@ -20774,7 +20775,7 @@ class _$GCreateProjectInput extends GCreateProjectInput { @override final String ownerId; @override - final BuiltList? repositoryIds; + final BuiltList? repositoryIds; @override final GProjectTemplate? template; @@ -20862,10 +20863,10 @@ class GCreateProjectInputBuilder String? get ownerId => _$this._ownerId; set ownerId(String? ownerId) => _$this._ownerId = ownerId; - ListBuilder? _repositoryIds; - ListBuilder get repositoryIds => - _$this._repositoryIds ??= new ListBuilder(); - set repositoryIds(ListBuilder? repositoryIds) => + ListBuilder? _repositoryIds; + ListBuilder get repositoryIds => + _$this._repositoryIds ??= new ListBuilder(); + set repositoryIds(ListBuilder? repositoryIds) => _$this._repositoryIds = repositoryIds; GProjectTemplate? _template; @@ -24827,7 +24828,7 @@ class _$GIssueFilters extends GIssueFilters { @override final String? createdBy; @override - final BuiltList? labels; + final BuiltList? labels; @override final String? mentioned; @override @@ -24835,7 +24836,7 @@ class _$GIssueFilters extends GIssueFilters { @override final GDateTime? since; @override - final BuiltList? states; + final BuiltList? states; @override final bool? viewerSubscribed; @@ -24917,10 +24918,10 @@ class GIssueFiltersBuilder String? get createdBy => _$this._createdBy; set createdBy(String? createdBy) => _$this._createdBy = createdBy; - ListBuilder? _labels; - ListBuilder get labels => - _$this._labels ??= new ListBuilder(); - set labels(ListBuilder? labels) => _$this._labels = labels; + ListBuilder? _labels; + ListBuilder get labels => + _$this._labels ??= new ListBuilder(); + set labels(ListBuilder? labels) => _$this._labels = labels; String? _mentioned; String? get mentioned => _$this._mentioned; @@ -24934,10 +24935,10 @@ class GIssueFiltersBuilder GDateTimeBuilder get since => _$this._since ??= new GDateTimeBuilder(); set since(GDateTimeBuilder? since) => _$this._since = since; - ListBuilder? _states; - ListBuilder get states => - _$this._states ??= new ListBuilder(); - set states(ListBuilder? states) => _$this._states = states; + ListBuilder? _states; + ListBuilder get states => + _$this._states ??= new ListBuilder(); + set states(ListBuilder? states) => _$this._states = states; bool? _viewerSubscribed; bool? get viewerSubscribed => _$this._viewerSubscribed; @@ -27050,7 +27051,7 @@ class _$GRemoveAssigneesFromAssignableInput @override final String assignableId; @override - final BuiltList assigneeIds; + final BuiltList assigneeIds; @override final String? clientMutationId; @@ -27115,10 +27116,10 @@ class GRemoveAssigneesFromAssignableInputBuilder String? get assignableId => _$this._assignableId; set assignableId(String? assignableId) => _$this._assignableId = assignableId; - ListBuilder? _assigneeIds; - ListBuilder get assigneeIds => - _$this._assigneeIds ??= new ListBuilder(); - set assigneeIds(ListBuilder? assigneeIds) => + ListBuilder? _assigneeIds; + ListBuilder get assigneeIds => + _$this._assigneeIds ??= new ListBuilder(); + set assigneeIds(ListBuilder? assigneeIds) => _$this._assigneeIds = assigneeIds; String? _clientMutationId; @@ -27425,7 +27426,7 @@ class _$GRemoveLabelsFromLabelableInput @override final String? clientMutationId; @override - final BuiltList labelIds; + final BuiltList labelIds; @override final String labelableId; @@ -27489,10 +27490,10 @@ class GRemoveLabelsFromLabelableInputBuilder set clientMutationId(String? clientMutationId) => _$this._clientMutationId = clientMutationId; - ListBuilder? _labelIds; - ListBuilder get labelIds => - _$this._labelIds ??= new ListBuilder(); - set labelIds(ListBuilder? labelIds) => _$this._labelIds = labelIds; + ListBuilder? _labelIds; + ListBuilder get labelIds => + _$this._labelIds ??= new ListBuilder(); + set labelIds(ListBuilder? labelIds) => _$this._labelIds = labelIds; String? _labelableId; String? get labelableId => _$this._labelableId; @@ -28278,11 +28279,11 @@ class _$GRequestReviewsInput extends GRequestReviewsInput { @override final String pullRequestId; @override - final BuiltList? teamIds; + final BuiltList? teamIds; @override final bool? union; @override - final BuiltList? userIds; + final BuiltList? userIds; factory _$GRequestReviewsInput( [void Function(GRequestReviewsInputBuilder)? updates]) => @@ -28355,19 +28356,19 @@ class GRequestReviewsInputBuilder set pullRequestId(String? pullRequestId) => _$this._pullRequestId = pullRequestId; - ListBuilder? _teamIds; - ListBuilder get teamIds => - _$this._teamIds ??= new ListBuilder(); - set teamIds(ListBuilder? teamIds) => _$this._teamIds = teamIds; + ListBuilder? _teamIds; + ListBuilder get teamIds => + _$this._teamIds ??= new ListBuilder(); + set teamIds(ListBuilder? teamIds) => _$this._teamIds = teamIds; bool? _union; bool? get union => _$this._union; set union(bool? union) => _$this._union = union; - ListBuilder? _userIds; - ListBuilder get userIds => - _$this._userIds ??= new ListBuilder(); - set userIds(ListBuilder? userIds) => _$this._userIds = userIds; + ListBuilder? _userIds; + ListBuilder get userIds => + _$this._userIds ??= new ListBuilder(); + set userIds(ListBuilder? userIds) => _$this._userIds = userIds; GRequestReviewsInputBuilder(); @@ -30682,11 +30683,11 @@ class _$GUpdateBranchProtectionRuleInput @override final String? pattern; @override - final BuiltList? pushActorIds; + final BuiltList? pushActorIds; @override final int? requiredApprovingReviewCount; @override - final BuiltList? requiredStatusCheckContexts; + final BuiltList? requiredStatusCheckContexts; @override final bool? requiresApprovingReviews; @override @@ -30702,7 +30703,7 @@ class _$GUpdateBranchProtectionRuleInput @override final bool? restrictsReviewDismissals; @override - final BuiltList? reviewDismissalActorIds; + final BuiltList? reviewDismissalActorIds; factory _$GUpdateBranchProtectionRuleInput( [void Function(GUpdateBranchProtectionRuleInputBuilder)? updates]) => @@ -30856,10 +30857,10 @@ class GUpdateBranchProtectionRuleInputBuilder String? get pattern => _$this._pattern; set pattern(String? pattern) => _$this._pattern = pattern; - ListBuilder? _pushActorIds; - ListBuilder get pushActorIds => - _$this._pushActorIds ??= new ListBuilder(); - set pushActorIds(ListBuilder? pushActorIds) => + ListBuilder? _pushActorIds; + ListBuilder get pushActorIds => + _$this._pushActorIds ??= new ListBuilder(); + set pushActorIds(ListBuilder? pushActorIds) => _$this._pushActorIds = pushActorIds; int? _requiredApprovingReviewCount; @@ -30867,11 +30868,11 @@ class GUpdateBranchProtectionRuleInputBuilder set requiredApprovingReviewCount(int? requiredApprovingReviewCount) => _$this._requiredApprovingReviewCount = requiredApprovingReviewCount; - ListBuilder? _requiredStatusCheckContexts; - ListBuilder get requiredStatusCheckContexts => - _$this._requiredStatusCheckContexts ??= new ListBuilder(); + ListBuilder? _requiredStatusCheckContexts; + ListBuilder get requiredStatusCheckContexts => + _$this._requiredStatusCheckContexts ??= new ListBuilder(); set requiredStatusCheckContexts( - ListBuilder? requiredStatusCheckContexts) => + ListBuilder? requiredStatusCheckContexts) => _$this._requiredStatusCheckContexts = requiredStatusCheckContexts; bool? _requiresApprovingReviews; @@ -30909,10 +30910,10 @@ class GUpdateBranchProtectionRuleInputBuilder set restrictsReviewDismissals(bool? restrictsReviewDismissals) => _$this._restrictsReviewDismissals = restrictsReviewDismissals; - ListBuilder? _reviewDismissalActorIds; - ListBuilder get reviewDismissalActorIds => - _$this._reviewDismissalActorIds ??= new ListBuilder(); - set reviewDismissalActorIds(ListBuilder? reviewDismissalActorIds) => + ListBuilder? _reviewDismissalActorIds; + ListBuilder get reviewDismissalActorIds => + _$this._reviewDismissalActorIds ??= new ListBuilder(); + set reviewDismissalActorIds(ListBuilder? reviewDismissalActorIds) => _$this._reviewDismissalActorIds = reviewDismissalActorIds; GUpdateBranchProtectionRuleInputBuilder(); @@ -33587,7 +33588,7 @@ class GUpdateIssueCommentInputBuilder class _$GUpdateIssueInput extends GUpdateIssueInput { @override - final BuiltList? assigneeIds; + final BuiltList? assigneeIds; @override final String? body; @override @@ -33595,11 +33596,11 @@ class _$GUpdateIssueInput extends GUpdateIssueInput { @override final String id; @override - final BuiltList? labelIds; + final BuiltList? labelIds; @override final String? milestoneId; @override - final BuiltList? projectIds; + final BuiltList? projectIds; @override final GIssueState? state; @override @@ -33686,10 +33687,10 @@ class GUpdateIssueInputBuilder implements Builder { _$GUpdateIssueInput? _$v; - ListBuilder? _assigneeIds; - ListBuilder get assigneeIds => - _$this._assigneeIds ??= new ListBuilder(); - set assigneeIds(ListBuilder? assigneeIds) => + ListBuilder? _assigneeIds; + ListBuilder get assigneeIds => + _$this._assigneeIds ??= new ListBuilder(); + set assigneeIds(ListBuilder? assigneeIds) => _$this._assigneeIds = assigneeIds; String? _body; @@ -33705,19 +33706,19 @@ class GUpdateIssueInputBuilder String? get id => _$this._id; set id(String? id) => _$this._id = id; - ListBuilder? _labelIds; - ListBuilder get labelIds => - _$this._labelIds ??= new ListBuilder(); - set labelIds(ListBuilder? labelIds) => _$this._labelIds = labelIds; + ListBuilder? _labelIds; + ListBuilder get labelIds => + _$this._labelIds ??= new ListBuilder(); + set labelIds(ListBuilder? labelIds) => _$this._labelIds = labelIds; String? _milestoneId; String? get milestoneId => _$this._milestoneId; set milestoneId(String? milestoneId) => _$this._milestoneId = milestoneId; - ListBuilder? _projectIds; - ListBuilder get projectIds => - _$this._projectIds ??= new ListBuilder(); - set projectIds(ListBuilder? projectIds) => + ListBuilder? _projectIds; + ListBuilder get projectIds => + _$this._projectIds ??= new ListBuilder(); + set projectIds(ListBuilder? projectIds) => _$this._projectIds = projectIds; GIssueState? _state; @@ -34194,7 +34195,7 @@ class GUpdateProjectInputBuilder class _$GUpdatePullRequestInput extends GUpdatePullRequestInput { @override - final BuiltList? assigneeIds; + final BuiltList? assigneeIds; @override final String? baseRefName; @override @@ -34202,13 +34203,13 @@ class _$GUpdatePullRequestInput extends GUpdatePullRequestInput { @override final String? clientMutationId; @override - final BuiltList? labelIds; + final BuiltList? labelIds; @override final bool? maintainerCanModify; @override final String? milestoneId; @override - final BuiltList? projectIds; + final BuiltList? projectIds; @override final String pullRequestId; @override @@ -34310,10 +34311,10 @@ class GUpdatePullRequestInputBuilder Builder { _$GUpdatePullRequestInput? _$v; - ListBuilder? _assigneeIds; - ListBuilder get assigneeIds => - _$this._assigneeIds ??= new ListBuilder(); - set assigneeIds(ListBuilder? assigneeIds) => + ListBuilder? _assigneeIds; + ListBuilder get assigneeIds => + _$this._assigneeIds ??= new ListBuilder(); + set assigneeIds(ListBuilder? assigneeIds) => _$this._assigneeIds = assigneeIds; String? _baseRefName; @@ -34329,10 +34330,10 @@ class GUpdatePullRequestInputBuilder set clientMutationId(String? clientMutationId) => _$this._clientMutationId = clientMutationId; - ListBuilder? _labelIds; - ListBuilder get labelIds => - _$this._labelIds ??= new ListBuilder(); - set labelIds(ListBuilder? labelIds) => _$this._labelIds = labelIds; + ListBuilder? _labelIds; + ListBuilder get labelIds => + _$this._labelIds ??= new ListBuilder(); + set labelIds(ListBuilder? labelIds) => _$this._labelIds = labelIds; bool? _maintainerCanModify; bool? get maintainerCanModify => _$this._maintainerCanModify; @@ -34343,10 +34344,10 @@ class GUpdatePullRequestInputBuilder String? get milestoneId => _$this._milestoneId; set milestoneId(String? milestoneId) => _$this._milestoneId = milestoneId; - ListBuilder? _projectIds; - ListBuilder get projectIds => - _$this._projectIds ??= new ListBuilder(); - set projectIds(ListBuilder? projectIds) => + ListBuilder? _projectIds; + ListBuilder get projectIds => + _$this._projectIds ??= new ListBuilder(); + set projectIds(ListBuilder? projectIds) => _$this._projectIds = projectIds; String? _pullRequestId; @@ -35426,7 +35427,7 @@ class _$GUpdateTopicsInput extends GUpdateTopicsInput { @override final String repositoryId; @override - final BuiltList topicNames; + final BuiltList topicNames; factory _$GUpdateTopicsInput( [void Function(GUpdateTopicsInputBuilder)? updates]) => @@ -35491,10 +35492,10 @@ class GUpdateTopicsInputBuilder String? get repositoryId => _$this._repositoryId; set repositoryId(String? repositoryId) => _$this._repositoryId = repositoryId; - ListBuilder? _topicNames; - ListBuilder get topicNames => - _$this._topicNames ??= new ListBuilder(); - set topicNames(ListBuilder? topicNames) => + ListBuilder? _topicNames; + ListBuilder get topicNames => + _$this._topicNames ??= new ListBuilder(); + set topicNames(ListBuilder? topicNames) => _$this._topicNames = topicNames; GUpdateTopicsInputBuilder(); diff --git a/examples/gql_example_cli_github/lib/__generated__/serializers.gql.g.dart b/examples/gql_example_cli_github/lib/__generated__/serializers.gql.g.dart index 124f74fd..3ea2c293 100644 --- a/examples/gql_example_cli_github/lib/__generated__/serializers.gql.g.dart +++ b/examples/gql_example_cli_github/lib/__generated__/serializers.gql.g.dart @@ -308,95 +308,97 @@ Serializers _$serializers = (new Serializers().toBuilder() ..add(GX509Certificate.serializer) ..addBuilderFactory( const FullType(BuiltList, - const [const FullType(GDraftPullRequestReviewComment)]), - () => new ListBuilder()) + const [const FullType.nullable(GDraftPullRequestReviewComment)]), + () => new ListBuilder()) ..addBuilderFactory( const FullType(BuiltList, const [ - const FullType(GReadRepositoriesData_viewer_repositories_nodes) + const FullType.nullable( + GReadRepositoriesData_viewer_repositories_nodes) ]), () => new ListBuilder< - GReadRepositoriesData_viewer_repositories_nodes>()) + GReadRepositoriesData_viewer_repositories_nodes?>()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(GIssueState)]), - () => new ListBuilder()) + const FullType( + BuiltList, const [const FullType.nullable(GIssueState)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder()) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder()) ..addBuilderFactory( - const FullType(BuiltList, const [const FullType(String)]), - () => new ListBuilder())) + const FullType(BuiltList, const [const FullType.nullable(String)]), + () => new ListBuilder())) .build(); // ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/examples/gql_example_flutter/lib/graphql/__generated__/serializers.gql.g.dart b/examples/gql_example_flutter/lib/graphql/__generated__/serializers.gql.g.dart index 23526f02..e9dcb996 100644 --- a/examples/gql_example_flutter/lib/graphql/__generated__/serializers.gql.g.dart +++ b/examples/gql_example_flutter/lib/graphql/__generated__/serializers.gql.g.dart @@ -22,9 +22,9 @@ Serializers _$serializers = (new Serializers().toBuilder() ..add(GPokemonDetailData_pokemon_weight.serializer) ..add(GPokemonDetailVars.serializer) ..addBuilderFactory( - const FullType( - BuiltList, const [const FullType(GAllPokemonData_pokemons)]), - () => new ListBuilder())) + const FullType(BuiltList, + const [const FullType.nullable(GAllPokemonData_pokemons)]), + () => new ListBuilder())) .build(); // ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/examples/gql_example_flutter/lib/src/all_pokemon/graphql/__generated__/all_pokemon.data.gql.dart b/examples/gql_example_flutter/lib/src/all_pokemon/graphql/__generated__/all_pokemon.data.gql.dart index 7da161b8..23b7c55c 100644 --- a/examples/gql_example_flutter/lib/src/all_pokemon/graphql/__generated__/all_pokemon.data.gql.dart +++ b/examples/gql_example_flutter/lib/src/all_pokemon/graphql/__generated__/all_pokemon.data.gql.dart @@ -23,7 +23,7 @@ abstract class GAllPokemonData b..G__typename = 'Query'; @BuiltValueField(wireName: '__typename') String get G__typename; - BuiltList? get pokemons; + BuiltList? get pokemons; static Serializer get serializer => _$gAllPokemonDataSerializer; Map toJson() => diff --git a/examples/gql_example_flutter/lib/src/all_pokemon/graphql/__generated__/all_pokemon.data.gql.g.dart b/examples/gql_example_flutter/lib/src/all_pokemon/graphql/__generated__/all_pokemon.data.gql.g.dart index e2b372e5..929a6ab3 100644 --- a/examples/gql_example_flutter/lib/src/all_pokemon/graphql/__generated__/all_pokemon.data.gql.g.dart +++ b/examples/gql_example_flutter/lib/src/all_pokemon/graphql/__generated__/all_pokemon.data.gql.g.dart @@ -32,8 +32,8 @@ class _$GAllPokemonDataSerializer result ..add('pokemons') ..add(serializers.serialize(value, - specifiedType: const FullType( - BuiltList, const [const FullType(GAllPokemonData_pokemons)]))); + specifiedType: const FullType(BuiltList, + const [const FullType.nullable(GAllPokemonData_pokemons)]))); } return result; } @@ -57,7 +57,7 @@ class _$GAllPokemonDataSerializer case 'pokemons': result.pokemons.replace(serializers.deserialize(value, specifiedType: const FullType(BuiltList, const [ - const FullType(GAllPokemonData_pokemons) + const FullType.nullable(GAllPokemonData_pokemons) ]))! as BuiltList); break; } @@ -155,7 +155,7 @@ class _$GAllPokemonData extends GAllPokemonData { @override final String G__typename; @override - final BuiltList? pokemons; + final BuiltList? pokemons; factory _$GAllPokemonData([void Function(GAllPokemonDataBuilder)? updates]) => (new GAllPokemonDataBuilder()..update(updates))._build(); @@ -203,10 +203,10 @@ class GAllPokemonDataBuilder String? get G__typename => _$this._G__typename; set G__typename(String? G__typename) => _$this._G__typename = G__typename; - ListBuilder? _pokemons; - ListBuilder get pokemons => - _$this._pokemons ??= new ListBuilder(); - set pokemons(ListBuilder? pokemons) => + ListBuilder? _pokemons; + ListBuilder get pokemons => + _$this._pokemons ??= new ListBuilder(); + set pokemons(ListBuilder? pokemons) => _$this._pokemons = pokemons; GAllPokemonDataBuilder() { From 1cfc1615eac9d29ab5c5d450a43f34980c3ea525 Mon Sep 17 00:00:00 2001 From: Martin Kamleithner Date: Wed, 26 Oct 2022 15:48:50 +0200 Subject: [PATCH 02/20] state --- .../hero_skip_fragment.ast.gql.dart | 85 ++ .../hero_skip_fragment.data.gql.dart | 168 +++ .../hero_skip_fragment.data.gql.g.dart | 974 ++++++++++++++++++ .../hero_skip_fragment.req.gql.dart | 36 + .../hero_skip_fragment.req.gql.g.dart | 174 ++++ .../hero_skip_fragment.var.gql.dart | 44 + .../hero_skip_fragment.var.gql.g.dart | 223 ++++ .../hero_skip_fragment_and_field.ast.gql.dart | 66 ++ ...hero_skip_fragment_and_field.data.gql.dart | 94 ++ ...ro_skip_fragment_and_field.data.gql.g.dart | 527 ++++++++++ .../hero_skip_fragment_and_field.req.gql.dart | 36 + ...ero_skip_fragment_and_field.req.gql.g.dart | 174 ++++ .../hero_skip_fragment_and_field.var.gql.dart | 44 + ...ero_skip_fragment_and_field.var.gql.g.dart | 223 ++++ .../lib/directives/hero_skip_fragment.graphql | 15 + .../hero_skip_fragment_and_field.graphql | 11 + .../hero_inline_fragment.ast.gql.dart | 63 ++ .../hero_inline_fragment.data.gql.dart | 81 ++ .../hero_inline_fragment.data.gql.g.dart | 317 ++++++ .../hero_inline_fragment.req.gql.dart | 39 + .../hero_inline_fragment.req.gql.g.dart | 183 ++++ .../hero_inline_fragment.var.gql.dart | 30 + .../hero_inline_fragment.var.gql.g.dart | 145 +++ ...cated_fields_due_to_fragments.ast.gql.dart | 54 + ...ated_fields_due_to_fragments.data.gql.dart | 101 ++ ...ed_fields_due_to_fragments.data.gql.g.dart | 542 ++++++++++ ...cated_fields_due_to_fragments.req.gql.dart | 39 + ...ted_fields_due_to_fragments.req.gql.g.dart | 186 ++++ ...cated_fields_due_to_fragments.var.gql.dart | 46 + ...ted_fields_due_to_fragments.var.gql.g.dart | 183 ++++ .../fragments/hero_inline_fragment.graphql | 10 + ...duplicated_fields_due_to_fragments.graphql | 12 + .../__generated__/serializers.gql.dart | 65 ++ .../__generated__/serializers.gql.g.dart | 33 + .../merge_selection_sets.graphql.ast.gql.dart | 40 + ...merge_selection_sets.graphql.data.gql.dart | 53 + ...rge_selection_sets.graphql.data.gql.g.dart | 349 +++++++ .../merge_selection_sets.graphql.req.gql.dart | 33 + ...erge_selection_sets.graphql.req.gql.g.dart | 167 +++ .../merge_selection_sets.graphql.var.gql.dart | 26 + ...erge_selection_sets.graphql.var.gql.g.dart | 91 ++ ...e_selection_sets.graphql_skip.ast.gql.dart | 54 + ..._selection_sets.graphql_skip.data.gql.dart | 54 + ...election_sets.graphql_skip.data.gql.g.dart | 354 +++++++ ...e_selection_sets.graphql_skip.req.gql.dart | 36 + ...selection_sets.graphql_skip.req.gql.g.dart | 173 ++++ ...e_selection_sets.graphql_skip.var.gql.dart | 27 + ...selection_sets.graphql_skip.var.gql.g.dart | 139 +++ .../merge_selection_sets.graphql.graphql | 9 + .../merge_selection_sets.graphql_skip.graphql | 8 + codegen/end_to_end_test/pubspec.yaml | 35 + codegen/gql_build/pubspec.yaml | 35 + .../lib/src/inline_fragment_classes.dart | 3 + .../lib/src/operation/data.dart | 198 +++- codegen/gql_code_builder/pubspec.yaml | 35 + examples/gql_example_build/pubspec.yaml | 35 + examples/gql_example_cli/pubspec.yaml | 35 + examples/gql_example_cli_github/pubspec.yaml | 35 + examples/gql_example_dio_link/pubspec.yaml | 35 + examples/gql_example_flutter/pubspec.yaml | 37 + .../gql_example_http_auth_link/pubspec.yaml | 35 + gql/lib/src/ast/ast.dart | 5 + gql/pubspec.yaml | 35 + gql_pedantic/pubspec.yaml | 35 + links/gql_dedupe_link/pubspec.yaml | 35 + links/gql_dio_link/pubspec.yaml | 35 + links/gql_error_link/pubspec.yaml | 35 + links/gql_exec/pubspec.yaml | 35 + links/gql_http_link/pubspec.yaml | 35 + links/gql_link/pubspec.yaml | 35 + links/gql_transform_link/pubspec.yaml | 35 + links/gql_websocket_link/pubspec.yaml | 35 + 72 files changed, 7499 insertions(+), 10 deletions(-) create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.ast.gql.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.data.gql.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.data.gql.g.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.req.gql.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.req.gql.g.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.var.gql.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.var.gql.g.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.ast.gql.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.g.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.g.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.dart create mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.g.dart create mode 100644 codegen/end_to_end_test/lib/directives/hero_skip_fragment.graphql create mode 100644 codegen/end_to_end_test/lib/directives/hero_skip_fragment_and_field.graphql create mode 100644 codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.ast.gql.dart create mode 100644 codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.data.gql.dart create mode 100644 codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.data.gql.g.dart create mode 100644 codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.req.gql.dart create mode 100644 codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.req.gql.g.dart create mode 100644 codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.var.gql.dart create mode 100644 codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.var.gql.g.dart create mode 100644 codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.ast.gql.dart create mode 100644 codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.data.gql.dart create mode 100644 codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.data.gql.g.dart create mode 100644 codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.req.gql.dart create mode 100644 codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.req.gql.g.dart create mode 100644 codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.var.gql.dart create mode 100644 codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.var.gql.g.dart create mode 100644 codegen/end_to_end_test/lib/fragments/hero_inline_fragment.graphql create mode 100644 codegen/end_to_end_test/lib/fragments/hero_with_duplicated_fields_due_to_fragments.graphql create mode 100644 codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.ast.gql.dart create mode 100644 codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.data.gql.dart create mode 100644 codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.data.gql.g.dart create mode 100644 codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.req.gql.dart create mode 100644 codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.req.gql.g.dart create mode 100644 codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.var.gql.dart create mode 100644 codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.var.gql.g.dart create mode 100644 codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.ast.gql.dart create mode 100644 codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.data.gql.dart create mode 100644 codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.data.gql.g.dart create mode 100644 codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.req.gql.dart create mode 100644 codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.req.gql.g.dart create mode 100644 codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.var.gql.dart create mode 100644 codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.var.gql.g.dart create mode 100644 codegen/end_to_end_test/lib/merge/merge_selection_sets.graphql.graphql create mode 100644 codegen/end_to_end_test/lib/merge/merge_selection_sets.graphql_skip.graphql diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.ast.gql.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.ast.gql.dart new file mode 100644 index 00000000..ee21f982 --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.ast.gql.dart @@ -0,0 +1,85 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:gql/ast.dart' as _i1; + +const HeroSkipFragment = _i1.OperationDefinitionNode( + type: _i1.OperationType.query, + name: _i1.NameNode(value: 'HeroSkipFragment'), + variableDefinitions: [ + _i1.VariableDefinitionNode( + variable: _i1.VariableNode(name: _i1.NameNode(value: 'skipDetails')), + type: _i1.NamedTypeNode( + name: _i1.NameNode(value: 'Boolean'), isNonNull: true), + defaultValue: _i1.DefaultValueNode(value: null), + directives: []) + ], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'hero'), + alias: null, + arguments: [], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'id'), + alias: null, + arguments: [], + directives: [], + selectionSet: null), + _i1.FragmentSpreadNode( + name: _i1.NameNode(value: 'HeroDetail'), + directives: [ + _i1.DirectiveNode( + name: _i1.NameNode(value: 'skip'), + arguments: [ + _i1.ArgumentNode( + name: _i1.NameNode(value: 'if'), + value: _i1.VariableNode( + name: _i1.NameNode(value: 'skipDetails'))) + ]) + ]) + ])) + ])); +const HeroDetail = _i1.FragmentDefinitionNode( + name: _i1.NameNode(value: 'HeroDetail'), + typeCondition: _i1.TypeConditionNode( + on: _i1.NamedTypeNode( + name: _i1.NameNode(value: 'Character'), isNonNull: false)), + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'id'), + alias: null, + arguments: [], + directives: [], + selectionSet: null), + _i1.FieldNode( + name: _i1.NameNode(value: 'name'), + alias: null, + arguments: [], + directives: [], + selectionSet: null), + _i1.FieldNode( + name: _i1.NameNode(value: 'friends'), + alias: null, + arguments: [], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'id'), + alias: null, + arguments: [], + directives: [], + selectionSet: null), + _i1.FieldNode( + name: _i1.NameNode(value: 'name'), + alias: null, + arguments: [], + directives: [], + selectionSet: null) + ])) + ])); +const document = _i1.DocumentNode(definitions: [HeroSkipFragment, HeroDetail]); diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.data.gql.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.data.gql.dart new file mode 100644 index 00000000..de3c315d --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.data.gql.dart @@ -0,0 +1,168 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_collection/built_collection.dart'; +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' + as _i1; + +part 'hero_skip_fragment.data.gql.g.dart'; + +abstract class GHeroSkipFragmentData + implements Built { + GHeroSkipFragmentData._(); + + factory GHeroSkipFragmentData( + [Function(GHeroSkipFragmentDataBuilder b) updates]) = + _$GHeroSkipFragmentData; + + static void _initializeBuilder(GHeroSkipFragmentDataBuilder b) => + b..G__typename = 'Query'; + @BuiltValueField(wireName: '__typename') + String get G__typename; + GHeroSkipFragmentData_hero? get hero; + static Serializer get serializer => + _$gHeroSkipFragmentDataSerializer; + Map toJson() => + (_i1.serializers.serializeWith(GHeroSkipFragmentData.serializer, this) + as Map); + static GHeroSkipFragmentData? fromJson(Map json) => + _i1.serializers.deserializeWith(GHeroSkipFragmentData.serializer, json); +} + +abstract class GHeroSkipFragmentData_hero + implements + Built, + GHeroDetail { + GHeroSkipFragmentData_hero._(); + + factory GHeroSkipFragmentData_hero( + [Function(GHeroSkipFragmentData_heroBuilder b) updates]) = + _$GHeroSkipFragmentData_hero; + + static void _initializeBuilder(GHeroSkipFragmentData_heroBuilder b) => + b..G__typename = 'Character'; + @override + @BuiltValueField(wireName: '__typename') + String get G__typename; + @override + String get id; + @override + String get name; + @override + BuiltList? get friends; + static Serializer get serializer => + _$gHeroSkipFragmentDataHeroSerializer; + @override + Map toJson() => (_i1.serializers.serializeWith( + GHeroSkipFragmentData_hero.serializer, this) as Map); + static GHeroSkipFragmentData_hero? fromJson(Map json) => + _i1.serializers + .deserializeWith(GHeroSkipFragmentData_hero.serializer, json); +} + +abstract class GHeroSkipFragmentData_hero_friends + implements + Built, + GHeroDetail_friends { + GHeroSkipFragmentData_hero_friends._(); + + factory GHeroSkipFragmentData_hero_friends( + [Function(GHeroSkipFragmentData_hero_friendsBuilder b) updates]) = + _$GHeroSkipFragmentData_hero_friends; + + static void _initializeBuilder(GHeroSkipFragmentData_hero_friendsBuilder b) => + b..G__typename = 'Character'; + @override + @BuiltValueField(wireName: '__typename') + String get G__typename; + @override + String get id; + @override + String get name; + static Serializer get serializer => + _$gHeroSkipFragmentDataHeroFriendsSerializer; + @override + Map toJson() => (_i1.serializers + .serializeWith(GHeroSkipFragmentData_hero_friends.serializer, this) + as Map); + static GHeroSkipFragmentData_hero_friends? fromJson( + Map json) => + _i1.serializers + .deserializeWith(GHeroSkipFragmentData_hero_friends.serializer, json); +} + +abstract class GHeroDetail { + String get G__typename; + String get id; + String get name; + BuiltList? get friends; + Map toJson(); +} + +abstract class GHeroDetail_friends { + String get G__typename; + String get id; + String get name; + Map toJson(); +} + +abstract class GHeroDetailData + implements Built, GHeroDetail { + GHeroDetailData._(); + + factory GHeroDetailData([Function(GHeroDetailDataBuilder b) updates]) = + _$GHeroDetailData; + + static void _initializeBuilder(GHeroDetailDataBuilder b) => + b..G__typename = 'Character'; + @override + @BuiltValueField(wireName: '__typename') + String get G__typename; + @override + String get id; + @override + String get name; + @override + BuiltList? get friends; + static Serializer get serializer => + _$gHeroDetailDataSerializer; + @override + Map toJson() => + (_i1.serializers.serializeWith(GHeroDetailData.serializer, this) + as Map); + static GHeroDetailData? fromJson(Map json) => + _i1.serializers.deserializeWith(GHeroDetailData.serializer, json); +} + +abstract class GHeroDetailData_friends + implements + Built, + GHeroDetail_friends { + GHeroDetailData_friends._(); + + factory GHeroDetailData_friends( + [Function(GHeroDetailData_friendsBuilder b) updates]) = + _$GHeroDetailData_friends; + + static void _initializeBuilder(GHeroDetailData_friendsBuilder b) => + b..G__typename = 'Character'; + @override + @BuiltValueField(wireName: '__typename') + String get G__typename; + @override + String get id; + @override + String get name; + static Serializer get serializer => + _$gHeroDetailDataFriendsSerializer; + @override + Map toJson() => + (_i1.serializers.serializeWith(GHeroDetailData_friends.serializer, this) + as Map); + static GHeroDetailData_friends? fromJson(Map json) => + _i1.serializers.deserializeWith(GHeroDetailData_friends.serializer, json); +} diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.data.gql.g.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.data.gql.g.dart new file mode 100644 index 00000000..9b5f3aba --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.data.gql.g.dart @@ -0,0 +1,974 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_skip_fragment.data.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroSkipFragmentDataSerializer = + new _$GHeroSkipFragmentDataSerializer(); +Serializer _$gHeroSkipFragmentDataHeroSerializer = + new _$GHeroSkipFragmentData_heroSerializer(); +Serializer + _$gHeroSkipFragmentDataHeroFriendsSerializer = + new _$GHeroSkipFragmentData_hero_friendsSerializer(); +Serializer _$gHeroDetailDataSerializer = + new _$GHeroDetailDataSerializer(); +Serializer _$gHeroDetailDataFriendsSerializer = + new _$GHeroDetailData_friendsSerializer(); + +class _$GHeroSkipFragmentDataSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroSkipFragmentData, + _$GHeroSkipFragmentData + ]; + @override + final String wireName = 'GHeroSkipFragmentData'; + + @override + Iterable serialize( + Serializers serializers, GHeroSkipFragmentData object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + ]; + Object? value; + value = object.hero; + if (value != null) { + result + ..add('hero') + ..add(serializers.serialize(value, + specifiedType: const FullType(GHeroSkipFragmentData_hero))); + } + return result; + } + + @override + GHeroSkipFragmentData deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroSkipFragmentDataBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'hero': + result.hero.replace(serializers.deserialize(value, + specifiedType: const FullType(GHeroSkipFragmentData_hero))! + as GHeroSkipFragmentData_hero); + break; + } + } + + return result.build(); + } +} + +class _$GHeroSkipFragmentData_heroSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroSkipFragmentData_hero, + _$GHeroSkipFragmentData_hero + ]; + @override + final String wireName = 'GHeroSkipFragmentData_hero'; + + @override + Iterable serialize( + Serializers serializers, GHeroSkipFragmentData_hero object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + 'id', + serializers.serialize(object.id, specifiedType: const FullType(String)), + 'name', + serializers.serialize(object.name, specifiedType: const FullType(String)), + ]; + Object? value; + value = object.friends; + if (value != null) { + result + ..add('friends') + ..add(serializers.serialize(value, + specifiedType: const FullType(BuiltList, const [ + const FullType.nullable(GHeroSkipFragmentData_hero_friends) + ]))); + } + return result; + } + + @override + GHeroSkipFragmentData_hero deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroSkipFragmentData_heroBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'id': + result.id = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'name': + result.name = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'friends': + result.friends.replace(serializers.deserialize(value, + specifiedType: const FullType(BuiltList, const [ + const FullType.nullable(GHeroSkipFragmentData_hero_friends) + ]))! as BuiltList); + break; + } + } + + return result.build(); + } +} + +class _$GHeroSkipFragmentData_hero_friendsSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroSkipFragmentData_hero_friends, + _$GHeroSkipFragmentData_hero_friends + ]; + @override + final String wireName = 'GHeroSkipFragmentData_hero_friends'; + + @override + Iterable serialize( + Serializers serializers, GHeroSkipFragmentData_hero_friends object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + 'id', + serializers.serialize(object.id, specifiedType: const FullType(String)), + 'name', + serializers.serialize(object.name, specifiedType: const FullType(String)), + ]; + + return result; + } + + @override + GHeroSkipFragmentData_hero_friends deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroSkipFragmentData_hero_friendsBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'id': + result.id = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'name': + result.name = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + } + } + + return result.build(); + } +} + +class _$GHeroDetailDataSerializer + implements StructuredSerializer { + @override + final Iterable types = const [GHeroDetailData, _$GHeroDetailData]; + @override + final String wireName = 'GHeroDetailData'; + + @override + Iterable serialize(Serializers serializers, GHeroDetailData object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + 'id', + serializers.serialize(object.id, specifiedType: const FullType(String)), + 'name', + serializers.serialize(object.name, specifiedType: const FullType(String)), + ]; + Object? value; + value = object.friends; + if (value != null) { + result + ..add('friends') + ..add(serializers.serialize(value, + specifiedType: const FullType(BuiltList, + const [const FullType.nullable(GHeroDetailData_friends)]))); + } + return result; + } + + @override + GHeroDetailData deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroDetailDataBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'id': + result.id = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'name': + result.name = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'friends': + result.friends.replace(serializers.deserialize(value, + specifiedType: const FullType(BuiltList, const [ + const FullType.nullable(GHeroDetailData_friends) + ]))! as BuiltList); + break; + } + } + + return result.build(); + } +} + +class _$GHeroDetailData_friendsSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroDetailData_friends, + _$GHeroDetailData_friends + ]; + @override + final String wireName = 'GHeroDetailData_friends'; + + @override + Iterable serialize( + Serializers serializers, GHeroDetailData_friends object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + 'id', + serializers.serialize(object.id, specifiedType: const FullType(String)), + 'name', + serializers.serialize(object.name, specifiedType: const FullType(String)), + ]; + + return result; + } + + @override + GHeroDetailData_friends deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroDetailData_friendsBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'id': + result.id = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'name': + result.name = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + } + } + + return result.build(); + } +} + +class _$GHeroSkipFragmentData extends GHeroSkipFragmentData { + @override + final String G__typename; + @override + final GHeroSkipFragmentData_hero? hero; + + factory _$GHeroSkipFragmentData( + [void Function(GHeroSkipFragmentDataBuilder)? updates]) => + (new GHeroSkipFragmentDataBuilder()..update(updates))._build(); + + _$GHeroSkipFragmentData._({required this.G__typename, this.hero}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipFragmentData', 'G__typename'); + } + + @override + GHeroSkipFragmentData rebuild( + void Function(GHeroSkipFragmentDataBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipFragmentDataBuilder toBuilder() => + new GHeroSkipFragmentDataBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkipFragmentData && + G__typename == other.G__typename && + hero == other.hero; + } + + @override + int get hashCode { + return $jf($jc($jc(0, G__typename.hashCode), hero.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkipFragmentData') + ..add('G__typename', G__typename) + ..add('hero', hero)) + .toString(); + } +} + +class GHeroSkipFragmentDataBuilder + implements Builder { + _$GHeroSkipFragmentData? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + GHeroSkipFragmentData_heroBuilder? _hero; + GHeroSkipFragmentData_heroBuilder get hero => + _$this._hero ??= new GHeroSkipFragmentData_heroBuilder(); + set hero(GHeroSkipFragmentData_heroBuilder? hero) => _$this._hero = hero; + + GHeroSkipFragmentDataBuilder() { + GHeroSkipFragmentData._initializeBuilder(this); + } + + GHeroSkipFragmentDataBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _hero = $v.hero?.toBuilder(); + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkipFragmentData other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkipFragmentData; + } + + @override + void update(void Function(GHeroSkipFragmentDataBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkipFragmentData build() => _build(); + + _$GHeroSkipFragmentData _build() { + _$GHeroSkipFragmentData _$result; + try { + _$result = _$v ?? + new _$GHeroSkipFragmentData._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipFragmentData', 'G__typename'), + hero: _hero?.build()); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'hero'; + _hero?.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroSkipFragmentData', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +class _$GHeroSkipFragmentData_hero extends GHeroSkipFragmentData_hero { + @override + final String G__typename; + @override + final String id; + @override + final String name; + @override + final BuiltList? friends; + + factory _$GHeroSkipFragmentData_hero( + [void Function(GHeroSkipFragmentData_heroBuilder)? updates]) => + (new GHeroSkipFragmentData_heroBuilder()..update(updates))._build(); + + _$GHeroSkipFragmentData_hero._( + {required this.G__typename, + required this.id, + required this.name, + this.friends}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipFragmentData_hero', 'G__typename'); + BuiltValueNullFieldError.checkNotNull( + id, r'GHeroSkipFragmentData_hero', 'id'); + BuiltValueNullFieldError.checkNotNull( + name, r'GHeroSkipFragmentData_hero', 'name'); + } + + @override + GHeroSkipFragmentData_hero rebuild( + void Function(GHeroSkipFragmentData_heroBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipFragmentData_heroBuilder toBuilder() => + new GHeroSkipFragmentData_heroBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkipFragmentData_hero && + G__typename == other.G__typename && + id == other.id && + name == other.name && + friends == other.friends; + } + + @override + int get hashCode { + return $jf($jc( + $jc($jc($jc(0, G__typename.hashCode), id.hashCode), name.hashCode), + friends.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkipFragmentData_hero') + ..add('G__typename', G__typename) + ..add('id', id) + ..add('name', name) + ..add('friends', friends)) + .toString(); + } +} + +class GHeroSkipFragmentData_heroBuilder + implements + Builder { + _$GHeroSkipFragmentData_hero? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + String? _id; + String? get id => _$this._id; + set id(String? id) => _$this._id = id; + + String? _name; + String? get name => _$this._name; + set name(String? name) => _$this._name = name; + + ListBuilder? _friends; + ListBuilder get friends => + _$this._friends ??= + new ListBuilder(); + set friends(ListBuilder? friends) => + _$this._friends = friends; + + GHeroSkipFragmentData_heroBuilder() { + GHeroSkipFragmentData_hero._initializeBuilder(this); + } + + GHeroSkipFragmentData_heroBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _id = $v.id; + _name = $v.name; + _friends = $v.friends?.toBuilder(); + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkipFragmentData_hero other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkipFragmentData_hero; + } + + @override + void update(void Function(GHeroSkipFragmentData_heroBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkipFragmentData_hero build() => _build(); + + _$GHeroSkipFragmentData_hero _build() { + _$GHeroSkipFragmentData_hero _$result; + try { + _$result = _$v ?? + new _$GHeroSkipFragmentData_hero._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipFragmentData_hero', 'G__typename'), + id: BuiltValueNullFieldError.checkNotNull( + id, r'GHeroSkipFragmentData_hero', 'id'), + name: BuiltValueNullFieldError.checkNotNull( + name, r'GHeroSkipFragmentData_hero', 'name'), + friends: _friends?.build()); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'friends'; + _friends?.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroSkipFragmentData_hero', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +class _$GHeroSkipFragmentData_hero_friends + extends GHeroSkipFragmentData_hero_friends { + @override + final String G__typename; + @override + final String id; + @override + final String name; + + factory _$GHeroSkipFragmentData_hero_friends( + [void Function(GHeroSkipFragmentData_hero_friendsBuilder)? + updates]) => + (new GHeroSkipFragmentData_hero_friendsBuilder()..update(updates)) + ._build(); + + _$GHeroSkipFragmentData_hero_friends._( + {required this.G__typename, required this.id, required this.name}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipFragmentData_hero_friends', 'G__typename'); + BuiltValueNullFieldError.checkNotNull( + id, r'GHeroSkipFragmentData_hero_friends', 'id'); + BuiltValueNullFieldError.checkNotNull( + name, r'GHeroSkipFragmentData_hero_friends', 'name'); + } + + @override + GHeroSkipFragmentData_hero_friends rebuild( + void Function(GHeroSkipFragmentData_hero_friendsBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipFragmentData_hero_friendsBuilder toBuilder() => + new GHeroSkipFragmentData_hero_friendsBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkipFragmentData_hero_friends && + G__typename == other.G__typename && + id == other.id && + name == other.name; + } + + @override + int get hashCode { + return $jf( + $jc($jc($jc(0, G__typename.hashCode), id.hashCode), name.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkipFragmentData_hero_friends') + ..add('G__typename', G__typename) + ..add('id', id) + ..add('name', name)) + .toString(); + } +} + +class GHeroSkipFragmentData_hero_friendsBuilder + implements + Builder { + _$GHeroSkipFragmentData_hero_friends? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + String? _id; + String? get id => _$this._id; + set id(String? id) => _$this._id = id; + + String? _name; + String? get name => _$this._name; + set name(String? name) => _$this._name = name; + + GHeroSkipFragmentData_hero_friendsBuilder() { + GHeroSkipFragmentData_hero_friends._initializeBuilder(this); + } + + GHeroSkipFragmentData_hero_friendsBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _id = $v.id; + _name = $v.name; + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkipFragmentData_hero_friends other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkipFragmentData_hero_friends; + } + + @override + void update( + void Function(GHeroSkipFragmentData_hero_friendsBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkipFragmentData_hero_friends build() => _build(); + + _$GHeroSkipFragmentData_hero_friends _build() { + final _$result = _$v ?? + new _$GHeroSkipFragmentData_hero_friends._( + G__typename: BuiltValueNullFieldError.checkNotNull(G__typename, + r'GHeroSkipFragmentData_hero_friends', 'G__typename'), + id: BuiltValueNullFieldError.checkNotNull( + id, r'GHeroSkipFragmentData_hero_friends', 'id'), + name: BuiltValueNullFieldError.checkNotNull( + name, r'GHeroSkipFragmentData_hero_friends', 'name')); + replace(_$result); + return _$result; + } +} + +class _$GHeroDetailData extends GHeroDetailData { + @override + final String G__typename; + @override + final String id; + @override + final String name; + @override + final BuiltList? friends; + + factory _$GHeroDetailData([void Function(GHeroDetailDataBuilder)? updates]) => + (new GHeroDetailDataBuilder()..update(updates))._build(); + + _$GHeroDetailData._( + {required this.G__typename, + required this.id, + required this.name, + this.friends}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroDetailData', 'G__typename'); + BuiltValueNullFieldError.checkNotNull(id, r'GHeroDetailData', 'id'); + BuiltValueNullFieldError.checkNotNull(name, r'GHeroDetailData', 'name'); + } + + @override + GHeroDetailData rebuild(void Function(GHeroDetailDataBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroDetailDataBuilder toBuilder() => + new GHeroDetailDataBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroDetailData && + G__typename == other.G__typename && + id == other.id && + name == other.name && + friends == other.friends; + } + + @override + int get hashCode { + return $jf($jc( + $jc($jc($jc(0, G__typename.hashCode), id.hashCode), name.hashCode), + friends.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroDetailData') + ..add('G__typename', G__typename) + ..add('id', id) + ..add('name', name) + ..add('friends', friends)) + .toString(); + } +} + +class GHeroDetailDataBuilder + implements Builder { + _$GHeroDetailData? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + String? _id; + String? get id => _$this._id; + set id(String? id) => _$this._id = id; + + String? _name; + String? get name => _$this._name; + set name(String? name) => _$this._name = name; + + ListBuilder? _friends; + ListBuilder get friends => + _$this._friends ??= new ListBuilder(); + set friends(ListBuilder? friends) => + _$this._friends = friends; + + GHeroDetailDataBuilder() { + GHeroDetailData._initializeBuilder(this); + } + + GHeroDetailDataBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _id = $v.id; + _name = $v.name; + _friends = $v.friends?.toBuilder(); + _$v = null; + } + return this; + } + + @override + void replace(GHeroDetailData other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroDetailData; + } + + @override + void update(void Function(GHeroDetailDataBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroDetailData build() => _build(); + + _$GHeroDetailData _build() { + _$GHeroDetailData _$result; + try { + _$result = _$v ?? + new _$GHeroDetailData._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroDetailData', 'G__typename'), + id: BuiltValueNullFieldError.checkNotNull( + id, r'GHeroDetailData', 'id'), + name: BuiltValueNullFieldError.checkNotNull( + name, r'GHeroDetailData', 'name'), + friends: _friends?.build()); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'friends'; + _friends?.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroDetailData', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +class _$GHeroDetailData_friends extends GHeroDetailData_friends { + @override + final String G__typename; + @override + final String id; + @override + final String name; + + factory _$GHeroDetailData_friends( + [void Function(GHeroDetailData_friendsBuilder)? updates]) => + (new GHeroDetailData_friendsBuilder()..update(updates))._build(); + + _$GHeroDetailData_friends._( + {required this.G__typename, required this.id, required this.name}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroDetailData_friends', 'G__typename'); + BuiltValueNullFieldError.checkNotNull(id, r'GHeroDetailData_friends', 'id'); + BuiltValueNullFieldError.checkNotNull( + name, r'GHeroDetailData_friends', 'name'); + } + + @override + GHeroDetailData_friends rebuild( + void Function(GHeroDetailData_friendsBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroDetailData_friendsBuilder toBuilder() => + new GHeroDetailData_friendsBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroDetailData_friends && + G__typename == other.G__typename && + id == other.id && + name == other.name; + } + + @override + int get hashCode { + return $jf( + $jc($jc($jc(0, G__typename.hashCode), id.hashCode), name.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroDetailData_friends') + ..add('G__typename', G__typename) + ..add('id', id) + ..add('name', name)) + .toString(); + } +} + +class GHeroDetailData_friendsBuilder + implements + Builder { + _$GHeroDetailData_friends? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + String? _id; + String? get id => _$this._id; + set id(String? id) => _$this._id = id; + + String? _name; + String? get name => _$this._name; + set name(String? name) => _$this._name = name; + + GHeroDetailData_friendsBuilder() { + GHeroDetailData_friends._initializeBuilder(this); + } + + GHeroDetailData_friendsBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _id = $v.id; + _name = $v.name; + _$v = null; + } + return this; + } + + @override + void replace(GHeroDetailData_friends other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroDetailData_friends; + } + + @override + void update(void Function(GHeroDetailData_friendsBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroDetailData_friends build() => _build(); + + _$GHeroDetailData_friends _build() { + final _$result = _$v ?? + new _$GHeroDetailData_friends._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroDetailData_friends', 'G__typename'), + id: BuiltValueNullFieldError.checkNotNull( + id, r'GHeroDetailData_friends', 'id'), + name: BuiltValueNullFieldError.checkNotNull( + name, r'GHeroDetailData_friends', 'name')); + replace(_$result); + return _$result; + } +} + +// ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.req.gql.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.req.gql.dart new file mode 100644 index 00000000..c711b6b4 --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.req.gql.dart @@ -0,0 +1,36 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test/directives/__generated__/hero_skip_fragment.ast.gql.dart' + as _i2; +import 'package:end_to_end_test/directives/__generated__/hero_skip_fragment.var.gql.dart' + as _i3; +import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' + as _i4; +import 'package:gql_exec/gql_exec.dart' as _i1; + +part 'hero_skip_fragment.req.gql.g.dart'; + +abstract class GHeroSkipFragment + implements Built { + GHeroSkipFragment._(); + + factory GHeroSkipFragment([Function(GHeroSkipFragmentBuilder b) updates]) = + _$GHeroSkipFragment; + + static void _initializeBuilder(GHeroSkipFragmentBuilder b) => b + ..operation = _i1.Operation( + document: _i2.document, operationName: 'HeroSkipFragment'); + _i3.GHeroSkipFragmentVars get vars; + _i1.Operation get operation; + static Serializer get serializer => + _$gHeroSkipFragmentSerializer; + Map toJson() => + (_i4.serializers.serializeWith(GHeroSkipFragment.serializer, this) + as Map); + static GHeroSkipFragment? fromJson(Map json) => + _i4.serializers.deserializeWith(GHeroSkipFragment.serializer, json); +} diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.req.gql.g.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.req.gql.g.dart new file mode 100644 index 00000000..24b7b5e3 --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.req.gql.g.dart @@ -0,0 +1,174 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_skip_fragment.req.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroSkipFragmentSerializer = + new _$GHeroSkipFragmentSerializer(); + +class _$GHeroSkipFragmentSerializer + implements StructuredSerializer { + @override + final Iterable types = const [GHeroSkipFragment, _$GHeroSkipFragment]; + @override + final String wireName = 'GHeroSkipFragment'; + + @override + Iterable serialize(Serializers serializers, GHeroSkipFragment object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + 'vars', + serializers.serialize(object.vars, + specifiedType: const FullType(_i3.GHeroSkipFragmentVars)), + 'operation', + serializers.serialize(object.operation, + specifiedType: const FullType(_i1.Operation)), + ]; + + return result; + } + + @override + GHeroSkipFragment deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroSkipFragmentBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case 'vars': + result.vars.replace(serializers.deserialize(value, + specifiedType: const FullType(_i3.GHeroSkipFragmentVars))! + as _i3.GHeroSkipFragmentVars); + break; + case 'operation': + result.operation = serializers.deserialize(value, + specifiedType: const FullType(_i1.Operation))! as _i1.Operation; + break; + } + } + + return result.build(); + } +} + +class _$GHeroSkipFragment extends GHeroSkipFragment { + @override + final _i3.GHeroSkipFragmentVars vars; + @override + final _i1.Operation operation; + + factory _$GHeroSkipFragment( + [void Function(GHeroSkipFragmentBuilder)? updates]) => + (new GHeroSkipFragmentBuilder()..update(updates))._build(); + + _$GHeroSkipFragment._({required this.vars, required this.operation}) + : super._() { + BuiltValueNullFieldError.checkNotNull(vars, r'GHeroSkipFragment', 'vars'); + BuiltValueNullFieldError.checkNotNull( + operation, r'GHeroSkipFragment', 'operation'); + } + + @override + GHeroSkipFragment rebuild(void Function(GHeroSkipFragmentBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipFragmentBuilder toBuilder() => + new GHeroSkipFragmentBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkipFragment && + vars == other.vars && + operation == other.operation; + } + + @override + int get hashCode { + return $jf($jc($jc(0, vars.hashCode), operation.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkipFragment') + ..add('vars', vars) + ..add('operation', operation)) + .toString(); + } +} + +class GHeroSkipFragmentBuilder + implements Builder { + _$GHeroSkipFragment? _$v; + + _i3.GHeroSkipFragmentVarsBuilder? _vars; + _i3.GHeroSkipFragmentVarsBuilder get vars => + _$this._vars ??= new _i3.GHeroSkipFragmentVarsBuilder(); + set vars(_i3.GHeroSkipFragmentVarsBuilder? vars) => _$this._vars = vars; + + _i1.Operation? _operation; + _i1.Operation? get operation => _$this._operation; + set operation(_i1.Operation? operation) => _$this._operation = operation; + + GHeroSkipFragmentBuilder() { + GHeroSkipFragment._initializeBuilder(this); + } + + GHeroSkipFragmentBuilder get _$this { + final $v = _$v; + if ($v != null) { + _vars = $v.vars.toBuilder(); + _operation = $v.operation; + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkipFragment other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkipFragment; + } + + @override + void update(void Function(GHeroSkipFragmentBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkipFragment build() => _build(); + + _$GHeroSkipFragment _build() { + _$GHeroSkipFragment _$result; + try { + _$result = _$v ?? + new _$GHeroSkipFragment._( + vars: vars.build(), + operation: BuiltValueNullFieldError.checkNotNull( + operation, r'GHeroSkipFragment', 'operation')); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'vars'; + vars.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroSkipFragment', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +// ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.var.gql.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.var.gql.dart new file mode 100644 index 00000000..b7ca5bad --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.var.gql.dart @@ -0,0 +1,44 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' + as _i1; + +part 'hero_skip_fragment.var.gql.g.dart'; + +abstract class GHeroSkipFragmentVars + implements Built { + GHeroSkipFragmentVars._(); + + factory GHeroSkipFragmentVars( + [Function(GHeroSkipFragmentVarsBuilder b) updates]) = + _$GHeroSkipFragmentVars; + + bool get skipDetails; + static Serializer get serializer => + _$gHeroSkipFragmentVarsSerializer; + Map toJson() => + (_i1.serializers.serializeWith(GHeroSkipFragmentVars.serializer, this) + as Map); + static GHeroSkipFragmentVars? fromJson(Map json) => + _i1.serializers.deserializeWith(GHeroSkipFragmentVars.serializer, json); +} + +abstract class GHeroDetailVars + implements Built { + GHeroDetailVars._(); + + factory GHeroDetailVars([Function(GHeroDetailVarsBuilder b) updates]) = + _$GHeroDetailVars; + + static Serializer get serializer => + _$gHeroDetailVarsSerializer; + Map toJson() => + (_i1.serializers.serializeWith(GHeroDetailVars.serializer, this) + as Map); + static GHeroDetailVars? fromJson(Map json) => + _i1.serializers.deserializeWith(GHeroDetailVars.serializer, json); +} diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.var.gql.g.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.var.gql.g.dart new file mode 100644 index 00000000..c284a74a --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment.var.gql.g.dart @@ -0,0 +1,223 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_skip_fragment.var.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroSkipFragmentVarsSerializer = + new _$GHeroSkipFragmentVarsSerializer(); +Serializer _$gHeroDetailVarsSerializer = + new _$GHeroDetailVarsSerializer(); + +class _$GHeroSkipFragmentVarsSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroSkipFragmentVars, + _$GHeroSkipFragmentVars + ]; + @override + final String wireName = 'GHeroSkipFragmentVars'; + + @override + Iterable serialize( + Serializers serializers, GHeroSkipFragmentVars object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + 'skipDetails', + serializers.serialize(object.skipDetails, + specifiedType: const FullType(bool)), + ]; + + return result; + } + + @override + GHeroSkipFragmentVars deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroSkipFragmentVarsBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case 'skipDetails': + result.skipDetails = serializers.deserialize(value, + specifiedType: const FullType(bool))! as bool; + break; + } + } + + return result.build(); + } +} + +class _$GHeroDetailVarsSerializer + implements StructuredSerializer { + @override + final Iterable types = const [GHeroDetailVars, _$GHeroDetailVars]; + @override + final String wireName = 'GHeroDetailVars'; + + @override + Iterable serialize(Serializers serializers, GHeroDetailVars object, + {FullType specifiedType = FullType.unspecified}) { + return []; + } + + @override + GHeroDetailVars deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + return new GHeroDetailVarsBuilder().build(); + } +} + +class _$GHeroSkipFragmentVars extends GHeroSkipFragmentVars { + @override + final bool skipDetails; + + factory _$GHeroSkipFragmentVars( + [void Function(GHeroSkipFragmentVarsBuilder)? updates]) => + (new GHeroSkipFragmentVarsBuilder()..update(updates))._build(); + + _$GHeroSkipFragmentVars._({required this.skipDetails}) : super._() { + BuiltValueNullFieldError.checkNotNull( + skipDetails, r'GHeroSkipFragmentVars', 'skipDetails'); + } + + @override + GHeroSkipFragmentVars rebuild( + void Function(GHeroSkipFragmentVarsBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipFragmentVarsBuilder toBuilder() => + new GHeroSkipFragmentVarsBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkipFragmentVars && skipDetails == other.skipDetails; + } + + @override + int get hashCode { + return $jf($jc(0, skipDetails.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkipFragmentVars') + ..add('skipDetails', skipDetails)) + .toString(); + } +} + +class GHeroSkipFragmentVarsBuilder + implements Builder { + _$GHeroSkipFragmentVars? _$v; + + bool? _skipDetails; + bool? get skipDetails => _$this._skipDetails; + set skipDetails(bool? skipDetails) => _$this._skipDetails = skipDetails; + + GHeroSkipFragmentVarsBuilder(); + + GHeroSkipFragmentVarsBuilder get _$this { + final $v = _$v; + if ($v != null) { + _skipDetails = $v.skipDetails; + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkipFragmentVars other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkipFragmentVars; + } + + @override + void update(void Function(GHeroSkipFragmentVarsBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkipFragmentVars build() => _build(); + + _$GHeroSkipFragmentVars _build() { + final _$result = _$v ?? + new _$GHeroSkipFragmentVars._( + skipDetails: BuiltValueNullFieldError.checkNotNull( + skipDetails, r'GHeroSkipFragmentVars', 'skipDetails')); + replace(_$result); + return _$result; + } +} + +class _$GHeroDetailVars extends GHeroDetailVars { + factory _$GHeroDetailVars([void Function(GHeroDetailVarsBuilder)? updates]) => + (new GHeroDetailVarsBuilder()..update(updates))._build(); + + _$GHeroDetailVars._() : super._(); + + @override + GHeroDetailVars rebuild(void Function(GHeroDetailVarsBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroDetailVarsBuilder toBuilder() => + new GHeroDetailVarsBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroDetailVars; + } + + @override + int get hashCode { + return 140740630; + } + + @override + String toString() { + return newBuiltValueToStringHelper(r'GHeroDetailVars').toString(); + } +} + +class GHeroDetailVarsBuilder + implements Builder { + _$GHeroDetailVars? _$v; + + GHeroDetailVarsBuilder(); + + @override + void replace(GHeroDetailVars other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroDetailVars; + } + + @override + void update(void Function(GHeroDetailVarsBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroDetailVars build() => _build(); + + _$GHeroDetailVars _build() { + final _$result = _$v ?? new _$GHeroDetailVars._(); + replace(_$result); + return _$result; + } +} + +// ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.ast.gql.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.ast.gql.dart new file mode 100644 index 00000000..2f02eee7 --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.ast.gql.dart @@ -0,0 +1,66 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:gql/ast.dart' as _i1; + +const HeroSkipFragment = _i1.OperationDefinitionNode( + type: _i1.OperationType.query, + name: _i1.NameNode(value: 'HeroSkipFragment'), + variableDefinitions: [ + _i1.VariableDefinitionNode( + variable: _i1.VariableNode(name: _i1.NameNode(value: 'skipDetails')), + type: _i1.NamedTypeNode( + name: _i1.NameNode(value: 'Boolean'), isNonNull: true), + defaultValue: _i1.DefaultValueNode(value: null), + directives: []) + ], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'hero'), + alias: null, + arguments: [], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'id'), + alias: null, + arguments: [], + directives: [], + selectionSet: null), + _i1.FragmentSpreadNode( + name: _i1.NameNode(value: 'HeroDetail'), + directives: [ + _i1.DirectiveNode( + name: _i1.NameNode(value: 'skip'), + arguments: [ + _i1.ArgumentNode( + name: _i1.NameNode(value: 'if'), + value: _i1.VariableNode( + name: _i1.NameNode(value: 'skipDetails'))) + ]) + ]) + ])) + ])); +const HeroDetail = _i1.FragmentDefinitionNode( + name: _i1.NameNode(value: 'HeroDetail'), + typeCondition: _i1.TypeConditionNode( + on: _i1.NamedTypeNode( + name: _i1.NameNode(value: 'Character'), isNonNull: false)), + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'id'), + alias: null, + arguments: [], + directives: [], + selectionSet: null), + _i1.FieldNode( + name: _i1.NameNode(value: 'name'), + alias: null, + arguments: [], + directives: [], + selectionSet: null) + ])); +const document = _i1.DocumentNode(definitions: [HeroSkipFragment, HeroDetail]); diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.dart new file mode 100644 index 00000000..d4f936ac --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.dart @@ -0,0 +1,94 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' + as _i1; + +part 'hero_skip_fragment_and_field.data.gql.g.dart'; + +abstract class GHeroSkipFragmentData + implements Built { + GHeroSkipFragmentData._(); + + factory GHeroSkipFragmentData( + [Function(GHeroSkipFragmentDataBuilder b) updates]) = + _$GHeroSkipFragmentData; + + static void _initializeBuilder(GHeroSkipFragmentDataBuilder b) => + b..G__typename = 'Query'; + @BuiltValueField(wireName: '__typename') + String get G__typename; + GHeroSkipFragmentData_hero? get hero; + static Serializer get serializer => + _$gHeroSkipFragmentDataSerializer; + Map toJson() => + (_i1.serializers.serializeWith(GHeroSkipFragmentData.serializer, this) + as Map); + static GHeroSkipFragmentData? fromJson(Map json) => + _i1.serializers.deserializeWith(GHeroSkipFragmentData.serializer, json); +} + +abstract class GHeroSkipFragmentData_hero + implements + Built, + GHeroDetail { + GHeroSkipFragmentData_hero._(); + + factory GHeroSkipFragmentData_hero( + [Function(GHeroSkipFragmentData_heroBuilder b) updates]) = + _$GHeroSkipFragmentData_hero; + + static void _initializeBuilder(GHeroSkipFragmentData_heroBuilder b) => + b..G__typename = 'Character'; + @override + @BuiltValueField(wireName: '__typename') + String get G__typename; + @override + String get id; + @override + String get name; + static Serializer get serializer => + _$gHeroSkipFragmentDataHeroSerializer; + @override + Map toJson() => (_i1.serializers.serializeWith( + GHeroSkipFragmentData_hero.serializer, this) as Map); + static GHeroSkipFragmentData_hero? fromJson(Map json) => + _i1.serializers + .deserializeWith(GHeroSkipFragmentData_hero.serializer, json); +} + +abstract class GHeroDetail { + String get G__typename; + String get id; + String get name; + Map toJson(); +} + +abstract class GHeroDetailData + implements Built, GHeroDetail { + GHeroDetailData._(); + + factory GHeroDetailData([Function(GHeroDetailDataBuilder b) updates]) = + _$GHeroDetailData; + + static void _initializeBuilder(GHeroDetailDataBuilder b) => + b..G__typename = 'Character'; + @override + @BuiltValueField(wireName: '__typename') + String get G__typename; + @override + String get id; + @override + String get name; + static Serializer get serializer => + _$gHeroDetailDataSerializer; + @override + Map toJson() => + (_i1.serializers.serializeWith(GHeroDetailData.serializer, this) + as Map); + static GHeroDetailData? fromJson(Map json) => + _i1.serializers.deserializeWith(GHeroDetailData.serializer, json); +} diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.g.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.g.dart new file mode 100644 index 00000000..60292f2f --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.g.dart @@ -0,0 +1,527 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_skip_fragment_and_field.data.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroSkipFragmentDataSerializer = + new _$GHeroSkipFragmentDataSerializer(); +Serializer _$gHeroSkipFragmentDataHeroSerializer = + new _$GHeroSkipFragmentData_heroSerializer(); +Serializer _$gHeroDetailDataSerializer = + new _$GHeroDetailDataSerializer(); + +class _$GHeroSkipFragmentDataSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroSkipFragmentData, + _$GHeroSkipFragmentData + ]; + @override + final String wireName = 'GHeroSkipFragmentData'; + + @override + Iterable serialize( + Serializers serializers, GHeroSkipFragmentData object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + ]; + Object? value; + value = object.hero; + if (value != null) { + result + ..add('hero') + ..add(serializers.serialize(value, + specifiedType: const FullType(GHeroSkipFragmentData_hero))); + } + return result; + } + + @override + GHeroSkipFragmentData deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroSkipFragmentDataBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'hero': + result.hero.replace(serializers.deserialize(value, + specifiedType: const FullType(GHeroSkipFragmentData_hero))! + as GHeroSkipFragmentData_hero); + break; + } + } + + return result.build(); + } +} + +class _$GHeroSkipFragmentData_heroSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroSkipFragmentData_hero, + _$GHeroSkipFragmentData_hero + ]; + @override + final String wireName = 'GHeroSkipFragmentData_hero'; + + @override + Iterable serialize( + Serializers serializers, GHeroSkipFragmentData_hero object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + 'id', + serializers.serialize(object.id, specifiedType: const FullType(String)), + 'name', + serializers.serialize(object.name, specifiedType: const FullType(String)), + ]; + + return result; + } + + @override + GHeroSkipFragmentData_hero deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroSkipFragmentData_heroBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'id': + result.id = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'name': + result.name = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + } + } + + return result.build(); + } +} + +class _$GHeroDetailDataSerializer + implements StructuredSerializer { + @override + final Iterable types = const [GHeroDetailData, _$GHeroDetailData]; + @override + final String wireName = 'GHeroDetailData'; + + @override + Iterable serialize(Serializers serializers, GHeroDetailData object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + 'id', + serializers.serialize(object.id, specifiedType: const FullType(String)), + 'name', + serializers.serialize(object.name, specifiedType: const FullType(String)), + ]; + + return result; + } + + @override + GHeroDetailData deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroDetailDataBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'id': + result.id = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'name': + result.name = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + } + } + + return result.build(); + } +} + +class _$GHeroSkipFragmentData extends GHeroSkipFragmentData { + @override + final String G__typename; + @override + final GHeroSkipFragmentData_hero? hero; + + factory _$GHeroSkipFragmentData( + [void Function(GHeroSkipFragmentDataBuilder)? updates]) => + (new GHeroSkipFragmentDataBuilder()..update(updates))._build(); + + _$GHeroSkipFragmentData._({required this.G__typename, this.hero}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipFragmentData', 'G__typename'); + } + + @override + GHeroSkipFragmentData rebuild( + void Function(GHeroSkipFragmentDataBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipFragmentDataBuilder toBuilder() => + new GHeroSkipFragmentDataBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkipFragmentData && + G__typename == other.G__typename && + hero == other.hero; + } + + @override + int get hashCode { + return $jf($jc($jc(0, G__typename.hashCode), hero.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkipFragmentData') + ..add('G__typename', G__typename) + ..add('hero', hero)) + .toString(); + } +} + +class GHeroSkipFragmentDataBuilder + implements Builder { + _$GHeroSkipFragmentData? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + GHeroSkipFragmentData_heroBuilder? _hero; + GHeroSkipFragmentData_heroBuilder get hero => + _$this._hero ??= new GHeroSkipFragmentData_heroBuilder(); + set hero(GHeroSkipFragmentData_heroBuilder? hero) => _$this._hero = hero; + + GHeroSkipFragmentDataBuilder() { + GHeroSkipFragmentData._initializeBuilder(this); + } + + GHeroSkipFragmentDataBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _hero = $v.hero?.toBuilder(); + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkipFragmentData other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkipFragmentData; + } + + @override + void update(void Function(GHeroSkipFragmentDataBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkipFragmentData build() => _build(); + + _$GHeroSkipFragmentData _build() { + _$GHeroSkipFragmentData _$result; + try { + _$result = _$v ?? + new _$GHeroSkipFragmentData._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipFragmentData', 'G__typename'), + hero: _hero?.build()); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'hero'; + _hero?.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroSkipFragmentData', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +class _$GHeroSkipFragmentData_hero extends GHeroSkipFragmentData_hero { + @override + final String G__typename; + @override + final String id; + @override + final String name; + + factory _$GHeroSkipFragmentData_hero( + [void Function(GHeroSkipFragmentData_heroBuilder)? updates]) => + (new GHeroSkipFragmentData_heroBuilder()..update(updates))._build(); + + _$GHeroSkipFragmentData_hero._( + {required this.G__typename, required this.id, required this.name}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipFragmentData_hero', 'G__typename'); + BuiltValueNullFieldError.checkNotNull( + id, r'GHeroSkipFragmentData_hero', 'id'); + BuiltValueNullFieldError.checkNotNull( + name, r'GHeroSkipFragmentData_hero', 'name'); + } + + @override + GHeroSkipFragmentData_hero rebuild( + void Function(GHeroSkipFragmentData_heroBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipFragmentData_heroBuilder toBuilder() => + new GHeroSkipFragmentData_heroBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkipFragmentData_hero && + G__typename == other.G__typename && + id == other.id && + name == other.name; + } + + @override + int get hashCode { + return $jf( + $jc($jc($jc(0, G__typename.hashCode), id.hashCode), name.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkipFragmentData_hero') + ..add('G__typename', G__typename) + ..add('id', id) + ..add('name', name)) + .toString(); + } +} + +class GHeroSkipFragmentData_heroBuilder + implements + Builder { + _$GHeroSkipFragmentData_hero? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + String? _id; + String? get id => _$this._id; + set id(String? id) => _$this._id = id; + + String? _name; + String? get name => _$this._name; + set name(String? name) => _$this._name = name; + + GHeroSkipFragmentData_heroBuilder() { + GHeroSkipFragmentData_hero._initializeBuilder(this); + } + + GHeroSkipFragmentData_heroBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _id = $v.id; + _name = $v.name; + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkipFragmentData_hero other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkipFragmentData_hero; + } + + @override + void update(void Function(GHeroSkipFragmentData_heroBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkipFragmentData_hero build() => _build(); + + _$GHeroSkipFragmentData_hero _build() { + final _$result = _$v ?? + new _$GHeroSkipFragmentData_hero._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipFragmentData_hero', 'G__typename'), + id: BuiltValueNullFieldError.checkNotNull( + id, r'GHeroSkipFragmentData_hero', 'id'), + name: BuiltValueNullFieldError.checkNotNull( + name, r'GHeroSkipFragmentData_hero', 'name')); + replace(_$result); + return _$result; + } +} + +class _$GHeroDetailData extends GHeroDetailData { + @override + final String G__typename; + @override + final String id; + @override + final String name; + + factory _$GHeroDetailData([void Function(GHeroDetailDataBuilder)? updates]) => + (new GHeroDetailDataBuilder()..update(updates))._build(); + + _$GHeroDetailData._( + {required this.G__typename, required this.id, required this.name}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroDetailData', 'G__typename'); + BuiltValueNullFieldError.checkNotNull(id, r'GHeroDetailData', 'id'); + BuiltValueNullFieldError.checkNotNull(name, r'GHeroDetailData', 'name'); + } + + @override + GHeroDetailData rebuild(void Function(GHeroDetailDataBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroDetailDataBuilder toBuilder() => + new GHeroDetailDataBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroDetailData && + G__typename == other.G__typename && + id == other.id && + name == other.name; + } + + @override + int get hashCode { + return $jf( + $jc($jc($jc(0, G__typename.hashCode), id.hashCode), name.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroDetailData') + ..add('G__typename', G__typename) + ..add('id', id) + ..add('name', name)) + .toString(); + } +} + +class GHeroDetailDataBuilder + implements Builder { + _$GHeroDetailData? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + String? _id; + String? get id => _$this._id; + set id(String? id) => _$this._id = id; + + String? _name; + String? get name => _$this._name; + set name(String? name) => _$this._name = name; + + GHeroDetailDataBuilder() { + GHeroDetailData._initializeBuilder(this); + } + + GHeroDetailDataBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _id = $v.id; + _name = $v.name; + _$v = null; + } + return this; + } + + @override + void replace(GHeroDetailData other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroDetailData; + } + + @override + void update(void Function(GHeroDetailDataBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroDetailData build() => _build(); + + _$GHeroDetailData _build() { + final _$result = _$v ?? + new _$GHeroDetailData._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroDetailData', 'G__typename'), + id: BuiltValueNullFieldError.checkNotNull( + id, r'GHeroDetailData', 'id'), + name: BuiltValueNullFieldError.checkNotNull( + name, r'GHeroDetailData', 'name')); + replace(_$result); + return _$result; + } +} + +// ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.dart new file mode 100644 index 00000000..4afb625a --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.dart @@ -0,0 +1,36 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test/directives/__generated__/hero_skip_fragment_and_field.ast.gql.dart' + as _i2; +import 'package:end_to_end_test/directives/__generated__/hero_skip_fragment_and_field.var.gql.dart' + as _i3; +import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' + as _i4; +import 'package:gql_exec/gql_exec.dart' as _i1; + +part 'hero_skip_fragment_and_field.req.gql.g.dart'; + +abstract class GHeroSkipFragment + implements Built { + GHeroSkipFragment._(); + + factory GHeroSkipFragment([Function(GHeroSkipFragmentBuilder b) updates]) = + _$GHeroSkipFragment; + + static void _initializeBuilder(GHeroSkipFragmentBuilder b) => b + ..operation = _i1.Operation( + document: _i2.document, operationName: 'HeroSkipFragment'); + _i3.GHeroSkipFragmentVars get vars; + _i1.Operation get operation; + static Serializer get serializer => + _$gHeroSkipFragmentSerializer; + Map toJson() => + (_i4.serializers.serializeWith(GHeroSkipFragment.serializer, this) + as Map); + static GHeroSkipFragment? fromJson(Map json) => + _i4.serializers.deserializeWith(GHeroSkipFragment.serializer, json); +} diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.g.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.g.dart new file mode 100644 index 00000000..66a149c9 --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.g.dart @@ -0,0 +1,174 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_skip_fragment_and_field.req.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroSkipFragmentSerializer = + new _$GHeroSkipFragmentSerializer(); + +class _$GHeroSkipFragmentSerializer + implements StructuredSerializer { + @override + final Iterable types = const [GHeroSkipFragment, _$GHeroSkipFragment]; + @override + final String wireName = 'GHeroSkipFragment'; + + @override + Iterable serialize(Serializers serializers, GHeroSkipFragment object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + 'vars', + serializers.serialize(object.vars, + specifiedType: const FullType(_i3.GHeroSkipFragmentVars)), + 'operation', + serializers.serialize(object.operation, + specifiedType: const FullType(_i1.Operation)), + ]; + + return result; + } + + @override + GHeroSkipFragment deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroSkipFragmentBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case 'vars': + result.vars.replace(serializers.deserialize(value, + specifiedType: const FullType(_i3.GHeroSkipFragmentVars))! + as _i3.GHeroSkipFragmentVars); + break; + case 'operation': + result.operation = serializers.deserialize(value, + specifiedType: const FullType(_i1.Operation))! as _i1.Operation; + break; + } + } + + return result.build(); + } +} + +class _$GHeroSkipFragment extends GHeroSkipFragment { + @override + final _i3.GHeroSkipFragmentVars vars; + @override + final _i1.Operation operation; + + factory _$GHeroSkipFragment( + [void Function(GHeroSkipFragmentBuilder)? updates]) => + (new GHeroSkipFragmentBuilder()..update(updates))._build(); + + _$GHeroSkipFragment._({required this.vars, required this.operation}) + : super._() { + BuiltValueNullFieldError.checkNotNull(vars, r'GHeroSkipFragment', 'vars'); + BuiltValueNullFieldError.checkNotNull( + operation, r'GHeroSkipFragment', 'operation'); + } + + @override + GHeroSkipFragment rebuild(void Function(GHeroSkipFragmentBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipFragmentBuilder toBuilder() => + new GHeroSkipFragmentBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkipFragment && + vars == other.vars && + operation == other.operation; + } + + @override + int get hashCode { + return $jf($jc($jc(0, vars.hashCode), operation.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkipFragment') + ..add('vars', vars) + ..add('operation', operation)) + .toString(); + } +} + +class GHeroSkipFragmentBuilder + implements Builder { + _$GHeroSkipFragment? _$v; + + _i3.GHeroSkipFragmentVarsBuilder? _vars; + _i3.GHeroSkipFragmentVarsBuilder get vars => + _$this._vars ??= new _i3.GHeroSkipFragmentVarsBuilder(); + set vars(_i3.GHeroSkipFragmentVarsBuilder? vars) => _$this._vars = vars; + + _i1.Operation? _operation; + _i1.Operation? get operation => _$this._operation; + set operation(_i1.Operation? operation) => _$this._operation = operation; + + GHeroSkipFragmentBuilder() { + GHeroSkipFragment._initializeBuilder(this); + } + + GHeroSkipFragmentBuilder get _$this { + final $v = _$v; + if ($v != null) { + _vars = $v.vars.toBuilder(); + _operation = $v.operation; + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkipFragment other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkipFragment; + } + + @override + void update(void Function(GHeroSkipFragmentBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkipFragment build() => _build(); + + _$GHeroSkipFragment _build() { + _$GHeroSkipFragment _$result; + try { + _$result = _$v ?? + new _$GHeroSkipFragment._( + vars: vars.build(), + operation: BuiltValueNullFieldError.checkNotNull( + operation, r'GHeroSkipFragment', 'operation')); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'vars'; + vars.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroSkipFragment', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +// ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.dart new file mode 100644 index 00000000..81a9b25e --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.dart @@ -0,0 +1,44 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' + as _i1; + +part 'hero_skip_fragment_and_field.var.gql.g.dart'; + +abstract class GHeroSkipFragmentVars + implements Built { + GHeroSkipFragmentVars._(); + + factory GHeroSkipFragmentVars( + [Function(GHeroSkipFragmentVarsBuilder b) updates]) = + _$GHeroSkipFragmentVars; + + bool get skipDetails; + static Serializer get serializer => + _$gHeroSkipFragmentVarsSerializer; + Map toJson() => + (_i1.serializers.serializeWith(GHeroSkipFragmentVars.serializer, this) + as Map); + static GHeroSkipFragmentVars? fromJson(Map json) => + _i1.serializers.deserializeWith(GHeroSkipFragmentVars.serializer, json); +} + +abstract class GHeroDetailVars + implements Built { + GHeroDetailVars._(); + + factory GHeroDetailVars([Function(GHeroDetailVarsBuilder b) updates]) = + _$GHeroDetailVars; + + static Serializer get serializer => + _$gHeroDetailVarsSerializer; + Map toJson() => + (_i1.serializers.serializeWith(GHeroDetailVars.serializer, this) + as Map); + static GHeroDetailVars? fromJson(Map json) => + _i1.serializers.deserializeWith(GHeroDetailVars.serializer, json); +} diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.g.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.g.dart new file mode 100644 index 00000000..f4a95545 --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.g.dart @@ -0,0 +1,223 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_skip_fragment_and_field.var.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroSkipFragmentVarsSerializer = + new _$GHeroSkipFragmentVarsSerializer(); +Serializer _$gHeroDetailVarsSerializer = + new _$GHeroDetailVarsSerializer(); + +class _$GHeroSkipFragmentVarsSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroSkipFragmentVars, + _$GHeroSkipFragmentVars + ]; + @override + final String wireName = 'GHeroSkipFragmentVars'; + + @override + Iterable serialize( + Serializers serializers, GHeroSkipFragmentVars object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + 'skipDetails', + serializers.serialize(object.skipDetails, + specifiedType: const FullType(bool)), + ]; + + return result; + } + + @override + GHeroSkipFragmentVars deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroSkipFragmentVarsBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case 'skipDetails': + result.skipDetails = serializers.deserialize(value, + specifiedType: const FullType(bool))! as bool; + break; + } + } + + return result.build(); + } +} + +class _$GHeroDetailVarsSerializer + implements StructuredSerializer { + @override + final Iterable types = const [GHeroDetailVars, _$GHeroDetailVars]; + @override + final String wireName = 'GHeroDetailVars'; + + @override + Iterable serialize(Serializers serializers, GHeroDetailVars object, + {FullType specifiedType = FullType.unspecified}) { + return []; + } + + @override + GHeroDetailVars deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + return new GHeroDetailVarsBuilder().build(); + } +} + +class _$GHeroSkipFragmentVars extends GHeroSkipFragmentVars { + @override + final bool skipDetails; + + factory _$GHeroSkipFragmentVars( + [void Function(GHeroSkipFragmentVarsBuilder)? updates]) => + (new GHeroSkipFragmentVarsBuilder()..update(updates))._build(); + + _$GHeroSkipFragmentVars._({required this.skipDetails}) : super._() { + BuiltValueNullFieldError.checkNotNull( + skipDetails, r'GHeroSkipFragmentVars', 'skipDetails'); + } + + @override + GHeroSkipFragmentVars rebuild( + void Function(GHeroSkipFragmentVarsBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipFragmentVarsBuilder toBuilder() => + new GHeroSkipFragmentVarsBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkipFragmentVars && skipDetails == other.skipDetails; + } + + @override + int get hashCode { + return $jf($jc(0, skipDetails.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkipFragmentVars') + ..add('skipDetails', skipDetails)) + .toString(); + } +} + +class GHeroSkipFragmentVarsBuilder + implements Builder { + _$GHeroSkipFragmentVars? _$v; + + bool? _skipDetails; + bool? get skipDetails => _$this._skipDetails; + set skipDetails(bool? skipDetails) => _$this._skipDetails = skipDetails; + + GHeroSkipFragmentVarsBuilder(); + + GHeroSkipFragmentVarsBuilder get _$this { + final $v = _$v; + if ($v != null) { + _skipDetails = $v.skipDetails; + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkipFragmentVars other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkipFragmentVars; + } + + @override + void update(void Function(GHeroSkipFragmentVarsBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkipFragmentVars build() => _build(); + + _$GHeroSkipFragmentVars _build() { + final _$result = _$v ?? + new _$GHeroSkipFragmentVars._( + skipDetails: BuiltValueNullFieldError.checkNotNull( + skipDetails, r'GHeroSkipFragmentVars', 'skipDetails')); + replace(_$result); + return _$result; + } +} + +class _$GHeroDetailVars extends GHeroDetailVars { + factory _$GHeroDetailVars([void Function(GHeroDetailVarsBuilder)? updates]) => + (new GHeroDetailVarsBuilder()..update(updates))._build(); + + _$GHeroDetailVars._() : super._(); + + @override + GHeroDetailVars rebuild(void Function(GHeroDetailVarsBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroDetailVarsBuilder toBuilder() => + new GHeroDetailVarsBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroDetailVars; + } + + @override + int get hashCode { + return 140740630; + } + + @override + String toString() { + return newBuiltValueToStringHelper(r'GHeroDetailVars').toString(); + } +} + +class GHeroDetailVarsBuilder + implements Builder { + _$GHeroDetailVars? _$v; + + GHeroDetailVarsBuilder(); + + @override + void replace(GHeroDetailVars other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroDetailVars; + } + + @override + void update(void Function(GHeroDetailVarsBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroDetailVars build() => _build(); + + _$GHeroDetailVars _build() { + final _$result = _$v ?? new _$GHeroDetailVars._(); + replace(_$result); + return _$result; + } +} + +// ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/directives/hero_skip_fragment.graphql b/codegen/end_to_end_test/lib/directives/hero_skip_fragment.graphql new file mode 100644 index 00000000..c1257d3a --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/hero_skip_fragment.graphql @@ -0,0 +1,15 @@ +query HeroSkipFragment($skipDetails: Boolean!) { + hero { + id + ...HeroDetail @skip(if: $skipDetails) + } +} + +fragment HeroDetail on Character { + id + name + friends { + id + name + } +} diff --git a/codegen/end_to_end_test/lib/directives/hero_skip_fragment_and_field.graphql b/codegen/end_to_end_test/lib/directives/hero_skip_fragment_and_field.graphql new file mode 100644 index 00000000..428afc90 --- /dev/null +++ b/codegen/end_to_end_test/lib/directives/hero_skip_fragment_and_field.graphql @@ -0,0 +1,11 @@ +query HeroSkipFragment($skipDetails: Boolean!) { + hero { + id + ...HeroDetail @skip(if: $skipDetails) + } +} + +fragment HeroDetail on Character { + id + name +} diff --git a/codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.ast.gql.dart b/codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.ast.gql.dart new file mode 100644 index 00000000..b1b6b26e --- /dev/null +++ b/codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.ast.gql.dart @@ -0,0 +1,63 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:gql/ast.dart' as _i1; + +const HeroWithInlineFragments = _i1.OperationDefinitionNode( + type: _i1.OperationType.query, + name: _i1.NameNode(value: 'HeroWithInlineFragments'), + variableDefinitions: [ + _i1.VariableDefinitionNode( + variable: _i1.VariableNode(name: _i1.NameNode(value: 'skipName')), + type: _i1.NamedTypeNode( + name: _i1.NameNode(value: 'Boolean'), isNonNull: true), + defaultValue: _i1.DefaultValueNode(value: null), + directives: []) + ], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'hero'), + alias: null, + arguments: [ + _i1.ArgumentNode( + name: _i1.NameNode(value: 'episode'), + value: _i1.EnumValueNode(name: _i1.NameNode(value: 'JEDI'))) + ], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.InlineFragmentNode( + typeCondition: null, + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'id'), + alias: null, + arguments: [], + directives: [], + selectionSet: null) + ])), + _i1.InlineFragmentNode( + typeCondition: null, + directives: [ + _i1.DirectiveNode( + name: _i1.NameNode(value: 'skip'), + arguments: [ + _i1.ArgumentNode( + name: _i1.NameNode(value: 'if'), + value: _i1.VariableNode( + name: _i1.NameNode(value: 'skipName'))) + ]) + ], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'name'), + alias: null, + arguments: [], + directives: [], + selectionSet: null) + ])) + ])) + ])); +const document = _i1.DocumentNode(definitions: [HeroWithInlineFragments]); diff --git a/codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.data.gql.dart b/codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.data.gql.dart new file mode 100644 index 00000000..6b6b937b --- /dev/null +++ b/codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.data.gql.dart @@ -0,0 +1,81 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' + as _i1; +import 'package:gql_code_builder/src/serializers/inline_fragment_serializer.dart' + as _i2; + +part 'hero_inline_fragment.data.gql.g.dart'; + +abstract class GHeroWithInlineFragmentsData + implements + Built { + GHeroWithInlineFragmentsData._(); + + factory GHeroWithInlineFragmentsData( + [Function(GHeroWithInlineFragmentsDataBuilder b) updates]) = + _$GHeroWithInlineFragmentsData; + + static void _initializeBuilder(GHeroWithInlineFragmentsDataBuilder b) => + b..G__typename = 'Query'; + @BuiltValueField(wireName: '__typename') + String get G__typename; + GHeroWithInlineFragmentsData_hero? get hero; + static Serializer get serializer => + _$gHeroWithInlineFragmentsDataSerializer; + Map toJson() => (_i1.serializers.serializeWith( + GHeroWithInlineFragmentsData.serializer, this) as Map); + static GHeroWithInlineFragmentsData? fromJson(Map json) => + _i1.serializers + .deserializeWith(GHeroWithInlineFragmentsData.serializer, json); +} + +abstract class GHeroWithInlineFragmentsData_hero { + @BuiltValueField(wireName: '__typename') + String get G__typename; + static Serializer get serializer => + _i2.InlineFragmentSerializer( + 'GHeroWithInlineFragmentsData_hero', + GHeroWithInlineFragmentsData_hero__base, {}); + Map toJson() => (_i1.serializers + .serializeWith(GHeroWithInlineFragmentsData_hero.serializer, this) + as Map); + static GHeroWithInlineFragmentsData_hero? fromJson( + Map json) => + _i1.serializers + .deserializeWith(GHeroWithInlineFragmentsData_hero.serializer, json); +} + +abstract class GHeroWithInlineFragmentsData_hero__base + implements + Built, + GHeroWithInlineFragmentsData_hero { + GHeroWithInlineFragmentsData_hero__base._(); + + factory GHeroWithInlineFragmentsData_hero__base( + [Function(GHeroWithInlineFragmentsData_hero__baseBuilder b) + updates]) = _$GHeroWithInlineFragmentsData_hero__base; + + static void _initializeBuilder( + GHeroWithInlineFragmentsData_hero__baseBuilder b) => + b..G__typename = 'Character'; + @override + @BuiltValueField(wireName: '__typename') + String get G__typename; + static Serializer get serializer => + _$gHeroWithInlineFragmentsDataHeroBaseSerializer; + @override + Map toJson() => (_i1.serializers.serializeWith( + GHeroWithInlineFragmentsData_hero__base.serializer, this) + as Map); + static GHeroWithInlineFragmentsData_hero__base? fromJson( + Map json) => + _i1.serializers.deserializeWith( + GHeroWithInlineFragmentsData_hero__base.serializer, json); +} diff --git a/codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.data.gql.g.dart b/codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.data.gql.g.dart new file mode 100644 index 00000000..7591a37e --- /dev/null +++ b/codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.data.gql.g.dart @@ -0,0 +1,317 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_inline_fragment.data.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer + _$gHeroWithInlineFragmentsDataSerializer = + new _$GHeroWithInlineFragmentsDataSerializer(); +Serializer + _$gHeroWithInlineFragmentsDataHeroBaseSerializer = + new _$GHeroWithInlineFragmentsData_hero__baseSerializer(); + +class _$GHeroWithInlineFragmentsDataSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroWithInlineFragmentsData, + _$GHeroWithInlineFragmentsData + ]; + @override + final String wireName = 'GHeroWithInlineFragmentsData'; + + @override + Iterable serialize( + Serializers serializers, GHeroWithInlineFragmentsData object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + ]; + Object? value; + value = object.hero; + if (value != null) { + result + ..add('hero') + ..add(serializers.serialize(value, + specifiedType: const FullType(GHeroWithInlineFragmentsData_hero))); + } + return result; + } + + @override + GHeroWithInlineFragmentsData deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroWithInlineFragmentsDataBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'hero': + result.hero = serializers.deserialize(value, + specifiedType: + const FullType(GHeroWithInlineFragmentsData_hero)) + as GHeroWithInlineFragmentsData_hero?; + break; + } + } + + return result.build(); + } +} + +class _$GHeroWithInlineFragmentsData_hero__baseSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroWithInlineFragmentsData_hero__base, + _$GHeroWithInlineFragmentsData_hero__base + ]; + @override + final String wireName = 'GHeroWithInlineFragmentsData_hero__base'; + + @override + Iterable serialize( + Serializers serializers, GHeroWithInlineFragmentsData_hero__base object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + ]; + + return result; + } + + @override + GHeroWithInlineFragmentsData_hero__base deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroWithInlineFragmentsData_hero__baseBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + } + } + + return result.build(); + } +} + +class _$GHeroWithInlineFragmentsData extends GHeroWithInlineFragmentsData { + @override + final String G__typename; + @override + final GHeroWithInlineFragmentsData_hero? hero; + + factory _$GHeroWithInlineFragmentsData( + [void Function(GHeroWithInlineFragmentsDataBuilder)? updates]) => + (new GHeroWithInlineFragmentsDataBuilder()..update(updates))._build(); + + _$GHeroWithInlineFragmentsData._({required this.G__typename, this.hero}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroWithInlineFragmentsData', 'G__typename'); + } + + @override + GHeroWithInlineFragmentsData rebuild( + void Function(GHeroWithInlineFragmentsDataBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroWithInlineFragmentsDataBuilder toBuilder() => + new GHeroWithInlineFragmentsDataBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroWithInlineFragmentsData && + G__typename == other.G__typename && + hero == other.hero; + } + + @override + int get hashCode { + return $jf($jc($jc(0, G__typename.hashCode), hero.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroWithInlineFragmentsData') + ..add('G__typename', G__typename) + ..add('hero', hero)) + .toString(); + } +} + +class GHeroWithInlineFragmentsDataBuilder + implements + Builder { + _$GHeroWithInlineFragmentsData? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + GHeroWithInlineFragmentsData_hero? _hero; + GHeroWithInlineFragmentsData_hero? get hero => _$this._hero; + set hero(GHeroWithInlineFragmentsData_hero? hero) => _$this._hero = hero; + + GHeroWithInlineFragmentsDataBuilder() { + GHeroWithInlineFragmentsData._initializeBuilder(this); + } + + GHeroWithInlineFragmentsDataBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _hero = $v.hero; + _$v = null; + } + return this; + } + + @override + void replace(GHeroWithInlineFragmentsData other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroWithInlineFragmentsData; + } + + @override + void update(void Function(GHeroWithInlineFragmentsDataBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroWithInlineFragmentsData build() => _build(); + + _$GHeroWithInlineFragmentsData _build() { + final _$result = _$v ?? + new _$GHeroWithInlineFragmentsData._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroWithInlineFragmentsData', 'G__typename'), + hero: hero); + replace(_$result); + return _$result; + } +} + +class _$GHeroWithInlineFragmentsData_hero__base + extends GHeroWithInlineFragmentsData_hero__base { + @override + final String G__typename; + + factory _$GHeroWithInlineFragmentsData_hero__base( + [void Function(GHeroWithInlineFragmentsData_hero__baseBuilder)? + updates]) => + (new GHeroWithInlineFragmentsData_hero__baseBuilder()..update(updates)) + ._build(); + + _$GHeroWithInlineFragmentsData_hero__base._({required this.G__typename}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroWithInlineFragmentsData_hero__base', 'G__typename'); + } + + @override + GHeroWithInlineFragmentsData_hero__base rebuild( + void Function(GHeroWithInlineFragmentsData_hero__baseBuilder) + updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroWithInlineFragmentsData_hero__baseBuilder toBuilder() => + new GHeroWithInlineFragmentsData_hero__baseBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroWithInlineFragmentsData_hero__base && + G__typename == other.G__typename; + } + + @override + int get hashCode { + return $jf($jc(0, G__typename.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper( + r'GHeroWithInlineFragmentsData_hero__base') + ..add('G__typename', G__typename)) + .toString(); + } +} + +class GHeroWithInlineFragmentsData_hero__baseBuilder + implements + Builder { + _$GHeroWithInlineFragmentsData_hero__base? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + GHeroWithInlineFragmentsData_hero__baseBuilder() { + GHeroWithInlineFragmentsData_hero__base._initializeBuilder(this); + } + + GHeroWithInlineFragmentsData_hero__baseBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _$v = null; + } + return this; + } + + @override + void replace(GHeroWithInlineFragmentsData_hero__base other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroWithInlineFragmentsData_hero__base; + } + + @override + void update( + void Function(GHeroWithInlineFragmentsData_hero__baseBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroWithInlineFragmentsData_hero__base build() => _build(); + + _$GHeroWithInlineFragmentsData_hero__base _build() { + final _$result = _$v ?? + new _$GHeroWithInlineFragmentsData_hero__base._( + G__typename: BuiltValueNullFieldError.checkNotNull(G__typename, + r'GHeroWithInlineFragmentsData_hero__base', 'G__typename')); + replace(_$result); + return _$result; + } +} + +// ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.req.gql.dart b/codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.req.gql.dart new file mode 100644 index 00000000..cd61a8f4 --- /dev/null +++ b/codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.req.gql.dart @@ -0,0 +1,39 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test/fragments/__generated__/hero_inline_fragment.ast.gql.dart' + as _i2; +import 'package:end_to_end_test/fragments/__generated__/hero_inline_fragment.var.gql.dart' + as _i3; +import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' + as _i4; +import 'package:gql_exec/gql_exec.dart' as _i1; + +part 'hero_inline_fragment.req.gql.g.dart'; + +abstract class GHeroWithInlineFragments + implements + Built { + GHeroWithInlineFragments._(); + + factory GHeroWithInlineFragments( + [Function(GHeroWithInlineFragmentsBuilder b) updates]) = + _$GHeroWithInlineFragments; + + static void _initializeBuilder(GHeroWithInlineFragmentsBuilder b) => b + ..operation = _i1.Operation( + document: _i2.document, operationName: 'HeroWithInlineFragments'); + _i3.GHeroWithInlineFragmentsVars get vars; + _i1.Operation get operation; + static Serializer get serializer => + _$gHeroWithInlineFragmentsSerializer; + Map toJson() => + (_i4.serializers.serializeWith(GHeroWithInlineFragments.serializer, this) + as Map); + static GHeroWithInlineFragments? fromJson(Map json) => + _i4.serializers + .deserializeWith(GHeroWithInlineFragments.serializer, json); +} diff --git a/codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.req.gql.g.dart b/codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.req.gql.g.dart new file mode 100644 index 00000000..cece31f2 --- /dev/null +++ b/codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.req.gql.g.dart @@ -0,0 +1,183 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_inline_fragment.req.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroWithInlineFragmentsSerializer = + new _$GHeroWithInlineFragmentsSerializer(); + +class _$GHeroWithInlineFragmentsSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroWithInlineFragments, + _$GHeroWithInlineFragments + ]; + @override + final String wireName = 'GHeroWithInlineFragments'; + + @override + Iterable serialize( + Serializers serializers, GHeroWithInlineFragments object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + 'vars', + serializers.serialize(object.vars, + specifiedType: const FullType(_i3.GHeroWithInlineFragmentsVars)), + 'operation', + serializers.serialize(object.operation, + specifiedType: const FullType(_i1.Operation)), + ]; + + return result; + } + + @override + GHeroWithInlineFragments deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroWithInlineFragmentsBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case 'vars': + result.vars.replace(serializers.deserialize(value, + specifiedType: + const FullType(_i3.GHeroWithInlineFragmentsVars))! + as _i3.GHeroWithInlineFragmentsVars); + break; + case 'operation': + result.operation = serializers.deserialize(value, + specifiedType: const FullType(_i1.Operation))! as _i1.Operation; + break; + } + } + + return result.build(); + } +} + +class _$GHeroWithInlineFragments extends GHeroWithInlineFragments { + @override + final _i3.GHeroWithInlineFragmentsVars vars; + @override + final _i1.Operation operation; + + factory _$GHeroWithInlineFragments( + [void Function(GHeroWithInlineFragmentsBuilder)? updates]) => + (new GHeroWithInlineFragmentsBuilder()..update(updates))._build(); + + _$GHeroWithInlineFragments._({required this.vars, required this.operation}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + vars, r'GHeroWithInlineFragments', 'vars'); + BuiltValueNullFieldError.checkNotNull( + operation, r'GHeroWithInlineFragments', 'operation'); + } + + @override + GHeroWithInlineFragments rebuild( + void Function(GHeroWithInlineFragmentsBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroWithInlineFragmentsBuilder toBuilder() => + new GHeroWithInlineFragmentsBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroWithInlineFragments && + vars == other.vars && + operation == other.operation; + } + + @override + int get hashCode { + return $jf($jc($jc(0, vars.hashCode), operation.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroWithInlineFragments') + ..add('vars', vars) + ..add('operation', operation)) + .toString(); + } +} + +class GHeroWithInlineFragmentsBuilder + implements + Builder { + _$GHeroWithInlineFragments? _$v; + + _i3.GHeroWithInlineFragmentsVarsBuilder? _vars; + _i3.GHeroWithInlineFragmentsVarsBuilder get vars => + _$this._vars ??= new _i3.GHeroWithInlineFragmentsVarsBuilder(); + set vars(_i3.GHeroWithInlineFragmentsVarsBuilder? vars) => + _$this._vars = vars; + + _i1.Operation? _operation; + _i1.Operation? get operation => _$this._operation; + set operation(_i1.Operation? operation) => _$this._operation = operation; + + GHeroWithInlineFragmentsBuilder() { + GHeroWithInlineFragments._initializeBuilder(this); + } + + GHeroWithInlineFragmentsBuilder get _$this { + final $v = _$v; + if ($v != null) { + _vars = $v.vars.toBuilder(); + _operation = $v.operation; + _$v = null; + } + return this; + } + + @override + void replace(GHeroWithInlineFragments other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroWithInlineFragments; + } + + @override + void update(void Function(GHeroWithInlineFragmentsBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroWithInlineFragments build() => _build(); + + _$GHeroWithInlineFragments _build() { + _$GHeroWithInlineFragments _$result; + try { + _$result = _$v ?? + new _$GHeroWithInlineFragments._( + vars: vars.build(), + operation: BuiltValueNullFieldError.checkNotNull( + operation, r'GHeroWithInlineFragments', 'operation')); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'vars'; + vars.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroWithInlineFragments', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +// ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.var.gql.dart b/codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.var.gql.dart new file mode 100644 index 00000000..e025a454 --- /dev/null +++ b/codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.var.gql.dart @@ -0,0 +1,30 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' + as _i1; + +part 'hero_inline_fragment.var.gql.g.dart'; + +abstract class GHeroWithInlineFragmentsVars + implements + Built { + GHeroWithInlineFragmentsVars._(); + + factory GHeroWithInlineFragmentsVars( + [Function(GHeroWithInlineFragmentsVarsBuilder b) updates]) = + _$GHeroWithInlineFragmentsVars; + + bool get skipName; + static Serializer get serializer => + _$gHeroWithInlineFragmentsVarsSerializer; + Map toJson() => (_i1.serializers.serializeWith( + GHeroWithInlineFragmentsVars.serializer, this) as Map); + static GHeroWithInlineFragmentsVars? fromJson(Map json) => + _i1.serializers + .deserializeWith(GHeroWithInlineFragmentsVars.serializer, json); +} diff --git a/codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.var.gql.g.dart b/codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.var.gql.g.dart new file mode 100644 index 00000000..681be97e --- /dev/null +++ b/codegen/end_to_end_test/lib/fragments/__generated__/hero_inline_fragment.var.gql.g.dart @@ -0,0 +1,145 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_inline_fragment.var.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer + _$gHeroWithInlineFragmentsVarsSerializer = + new _$GHeroWithInlineFragmentsVarsSerializer(); + +class _$GHeroWithInlineFragmentsVarsSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroWithInlineFragmentsVars, + _$GHeroWithInlineFragmentsVars + ]; + @override + final String wireName = 'GHeroWithInlineFragmentsVars'; + + @override + Iterable serialize( + Serializers serializers, GHeroWithInlineFragmentsVars object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + 'skipName', + serializers.serialize(object.skipName, + specifiedType: const FullType(bool)), + ]; + + return result; + } + + @override + GHeroWithInlineFragmentsVars deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroWithInlineFragmentsVarsBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case 'skipName': + result.skipName = serializers.deserialize(value, + specifiedType: const FullType(bool))! as bool; + break; + } + } + + return result.build(); + } +} + +class _$GHeroWithInlineFragmentsVars extends GHeroWithInlineFragmentsVars { + @override + final bool skipName; + + factory _$GHeroWithInlineFragmentsVars( + [void Function(GHeroWithInlineFragmentsVarsBuilder)? updates]) => + (new GHeroWithInlineFragmentsVarsBuilder()..update(updates))._build(); + + _$GHeroWithInlineFragmentsVars._({required this.skipName}) : super._() { + BuiltValueNullFieldError.checkNotNull( + skipName, r'GHeroWithInlineFragmentsVars', 'skipName'); + } + + @override + GHeroWithInlineFragmentsVars rebuild( + void Function(GHeroWithInlineFragmentsVarsBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroWithInlineFragmentsVarsBuilder toBuilder() => + new GHeroWithInlineFragmentsVarsBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroWithInlineFragmentsVars && skipName == other.skipName; + } + + @override + int get hashCode { + return $jf($jc(0, skipName.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroWithInlineFragmentsVars') + ..add('skipName', skipName)) + .toString(); + } +} + +class GHeroWithInlineFragmentsVarsBuilder + implements + Builder { + _$GHeroWithInlineFragmentsVars? _$v; + + bool? _skipName; + bool? get skipName => _$this._skipName; + set skipName(bool? skipName) => _$this._skipName = skipName; + + GHeroWithInlineFragmentsVarsBuilder(); + + GHeroWithInlineFragmentsVarsBuilder get _$this { + final $v = _$v; + if ($v != null) { + _skipName = $v.skipName; + _$v = null; + } + return this; + } + + @override + void replace(GHeroWithInlineFragmentsVars other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroWithInlineFragmentsVars; + } + + @override + void update(void Function(GHeroWithInlineFragmentsVarsBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroWithInlineFragmentsVars build() => _build(); + + _$GHeroWithInlineFragmentsVars _build() { + final _$result = _$v ?? + new _$GHeroWithInlineFragmentsVars._( + skipName: BuiltValueNullFieldError.checkNotNull( + skipName, r'GHeroWithInlineFragmentsVars', 'skipName')); + replace(_$result); + return _$result; + } +} + +// ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.ast.gql.dart b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.ast.gql.dart new file mode 100644 index 00000000..d60fb752 --- /dev/null +++ b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.ast.gql.dart @@ -0,0 +1,54 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:gql/ast.dart' as _i1; + +const HeroWithFragmentsDuplication = _i1.OperationDefinitionNode( + type: _i1.OperationType.query, + name: _i1.NameNode(value: 'HeroWithFragmentsDuplication'), + variableDefinitions: [], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'hero'), + alias: null, + arguments: [ + _i1.ArgumentNode( + name: _i1.NameNode(value: 'episode'), + value: _i1.EnumValueNode(name: _i1.NameNode(value: 'JEDI'))) + ], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'id'), + alias: null, + arguments: [], + directives: [], + selectionSet: null), + _i1.FragmentSpreadNode( + name: _i1.NameNode(value: 'heroData'), directives: []) + ])) + ])); +const heroData = _i1.FragmentDefinitionNode( + name: _i1.NameNode(value: 'heroData'), + typeCondition: _i1.TypeConditionNode( + on: _i1.NamedTypeNode( + name: _i1.NameNode(value: 'Character'), isNonNull: false)), + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'id'), + alias: null, + arguments: [], + directives: [], + selectionSet: null), + _i1.FieldNode( + name: _i1.NameNode(value: 'name'), + alias: null, + arguments: [], + directives: [], + selectionSet: null) + ])); +const document = + _i1.DocumentNode(definitions: [HeroWithFragmentsDuplication, heroData]); diff --git a/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.data.gql.dart b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.data.gql.dart new file mode 100644 index 00000000..f71d4803 --- /dev/null +++ b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.data.gql.dart @@ -0,0 +1,101 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' + as _i1; + +part 'hero_with_duplicated_fields_due_to_fragments.data.gql.g.dart'; + +abstract class GHeroWithFragmentsDuplicationData + implements + Built { + GHeroWithFragmentsDuplicationData._(); + + factory GHeroWithFragmentsDuplicationData( + [Function(GHeroWithFragmentsDuplicationDataBuilder b) updates]) = + _$GHeroWithFragmentsDuplicationData; + + static void _initializeBuilder(GHeroWithFragmentsDuplicationDataBuilder b) => + b..G__typename = 'Query'; + @BuiltValueField(wireName: '__typename') + String get G__typename; + GHeroWithFragmentsDuplicationData_hero? get hero; + static Serializer get serializer => + _$gHeroWithFragmentsDuplicationDataSerializer; + Map toJson() => (_i1.serializers + .serializeWith(GHeroWithFragmentsDuplicationData.serializer, this) + as Map); + static GHeroWithFragmentsDuplicationData? fromJson( + Map json) => + _i1.serializers + .deserializeWith(GHeroWithFragmentsDuplicationData.serializer, json); +} + +abstract class GHeroWithFragmentsDuplicationData_hero + implements + Built, + GheroData { + GHeroWithFragmentsDuplicationData_hero._(); + + factory GHeroWithFragmentsDuplicationData_hero( + [Function(GHeroWithFragmentsDuplicationData_heroBuilder b) updates]) = + _$GHeroWithFragmentsDuplicationData_hero; + + static void _initializeBuilder( + GHeroWithFragmentsDuplicationData_heroBuilder b) => + b..G__typename = 'Character'; + @override + @BuiltValueField(wireName: '__typename') + String get G__typename; + @override + String get id; + @override + String get name; + static Serializer get serializer => + _$gHeroWithFragmentsDuplicationDataHeroSerializer; + @override + Map toJson() => (_i1.serializers.serializeWith( + GHeroWithFragmentsDuplicationData_hero.serializer, this) + as Map); + static GHeroWithFragmentsDuplicationData_hero? fromJson( + Map json) => + _i1.serializers.deserializeWith( + GHeroWithFragmentsDuplicationData_hero.serializer, json); +} + +abstract class GheroData { + String get G__typename; + String get id; + String get name; + Map toJson(); +} + +abstract class GheroDataData + implements Built, GheroData { + GheroDataData._(); + + factory GheroDataData([Function(GheroDataDataBuilder b) updates]) = + _$GheroDataData; + + static void _initializeBuilder(GheroDataDataBuilder b) => + b..G__typename = 'Character'; + @override + @BuiltValueField(wireName: '__typename') + String get G__typename; + @override + String get id; + @override + String get name; + static Serializer get serializer => _$gheroDataDataSerializer; + @override + Map toJson() => + (_i1.serializers.serializeWith(GheroDataData.serializer, this) + as Map); + static GheroDataData? fromJson(Map json) => + _i1.serializers.deserializeWith(GheroDataData.serializer, json); +} diff --git a/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.data.gql.g.dart b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.data.gql.g.dart new file mode 100644 index 00000000..e932a563 --- /dev/null +++ b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.data.gql.g.dart @@ -0,0 +1,542 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_with_duplicated_fields_due_to_fragments.data.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer + _$gHeroWithFragmentsDuplicationDataSerializer = + new _$GHeroWithFragmentsDuplicationDataSerializer(); +Serializer + _$gHeroWithFragmentsDuplicationDataHeroSerializer = + new _$GHeroWithFragmentsDuplicationData_heroSerializer(); +Serializer _$gheroDataDataSerializer = + new _$GheroDataDataSerializer(); + +class _$GHeroWithFragmentsDuplicationDataSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroWithFragmentsDuplicationData, + _$GHeroWithFragmentsDuplicationData + ]; + @override + final String wireName = 'GHeroWithFragmentsDuplicationData'; + + @override + Iterable serialize( + Serializers serializers, GHeroWithFragmentsDuplicationData object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + ]; + Object? value; + value = object.hero; + if (value != null) { + result + ..add('hero') + ..add(serializers.serialize(value, + specifiedType: + const FullType(GHeroWithFragmentsDuplicationData_hero))); + } + return result; + } + + @override + GHeroWithFragmentsDuplicationData deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroWithFragmentsDuplicationDataBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'hero': + result.hero.replace(serializers.deserialize(value, + specifiedType: + const FullType(GHeroWithFragmentsDuplicationData_hero))! + as GHeroWithFragmentsDuplicationData_hero); + break; + } + } + + return result.build(); + } +} + +class _$GHeroWithFragmentsDuplicationData_heroSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroWithFragmentsDuplicationData_hero, + _$GHeroWithFragmentsDuplicationData_hero + ]; + @override + final String wireName = 'GHeroWithFragmentsDuplicationData_hero'; + + @override + Iterable serialize( + Serializers serializers, GHeroWithFragmentsDuplicationData_hero object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + 'id', + serializers.serialize(object.id, specifiedType: const FullType(String)), + 'name', + serializers.serialize(object.name, specifiedType: const FullType(String)), + ]; + + return result; + } + + @override + GHeroWithFragmentsDuplicationData_hero deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroWithFragmentsDuplicationData_heroBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'id': + result.id = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'name': + result.name = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + } + } + + return result.build(); + } +} + +class _$GheroDataDataSerializer implements StructuredSerializer { + @override + final Iterable types = const [GheroDataData, _$GheroDataData]; + @override + final String wireName = 'GheroDataData'; + + @override + Iterable serialize(Serializers serializers, GheroDataData object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + 'id', + serializers.serialize(object.id, specifiedType: const FullType(String)), + 'name', + serializers.serialize(object.name, specifiedType: const FullType(String)), + ]; + + return result; + } + + @override + GheroDataData deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GheroDataDataBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'id': + result.id = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'name': + result.name = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + } + } + + return result.build(); + } +} + +class _$GHeroWithFragmentsDuplicationData + extends GHeroWithFragmentsDuplicationData { + @override + final String G__typename; + @override + final GHeroWithFragmentsDuplicationData_hero? hero; + + factory _$GHeroWithFragmentsDuplicationData( + [void Function(GHeroWithFragmentsDuplicationDataBuilder)? updates]) => + (new GHeroWithFragmentsDuplicationDataBuilder()..update(updates)) + ._build(); + + _$GHeroWithFragmentsDuplicationData._({required this.G__typename, this.hero}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroWithFragmentsDuplicationData', 'G__typename'); + } + + @override + GHeroWithFragmentsDuplicationData rebuild( + void Function(GHeroWithFragmentsDuplicationDataBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroWithFragmentsDuplicationDataBuilder toBuilder() => + new GHeroWithFragmentsDuplicationDataBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroWithFragmentsDuplicationData && + G__typename == other.G__typename && + hero == other.hero; + } + + @override + int get hashCode { + return $jf($jc($jc(0, G__typename.hashCode), hero.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroWithFragmentsDuplicationData') + ..add('G__typename', G__typename) + ..add('hero', hero)) + .toString(); + } +} + +class GHeroWithFragmentsDuplicationDataBuilder + implements + Builder { + _$GHeroWithFragmentsDuplicationData? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + GHeroWithFragmentsDuplicationData_heroBuilder? _hero; + GHeroWithFragmentsDuplicationData_heroBuilder get hero => + _$this._hero ??= new GHeroWithFragmentsDuplicationData_heroBuilder(); + set hero(GHeroWithFragmentsDuplicationData_heroBuilder? hero) => + _$this._hero = hero; + + GHeroWithFragmentsDuplicationDataBuilder() { + GHeroWithFragmentsDuplicationData._initializeBuilder(this); + } + + GHeroWithFragmentsDuplicationDataBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _hero = $v.hero?.toBuilder(); + _$v = null; + } + return this; + } + + @override + void replace(GHeroWithFragmentsDuplicationData other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroWithFragmentsDuplicationData; + } + + @override + void update( + void Function(GHeroWithFragmentsDuplicationDataBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroWithFragmentsDuplicationData build() => _build(); + + _$GHeroWithFragmentsDuplicationData _build() { + _$GHeroWithFragmentsDuplicationData _$result; + try { + _$result = _$v ?? + new _$GHeroWithFragmentsDuplicationData._( + G__typename: BuiltValueNullFieldError.checkNotNull(G__typename, + r'GHeroWithFragmentsDuplicationData', 'G__typename'), + hero: _hero?.build()); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'hero'; + _hero?.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroWithFragmentsDuplicationData', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +class _$GHeroWithFragmentsDuplicationData_hero + extends GHeroWithFragmentsDuplicationData_hero { + @override + final String G__typename; + @override + final String id; + @override + final String name; + + factory _$GHeroWithFragmentsDuplicationData_hero( + [void Function(GHeroWithFragmentsDuplicationData_heroBuilder)? + updates]) => + (new GHeroWithFragmentsDuplicationData_heroBuilder()..update(updates)) + ._build(); + + _$GHeroWithFragmentsDuplicationData_hero._( + {required this.G__typename, required this.id, required this.name}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroWithFragmentsDuplicationData_hero', 'G__typename'); + BuiltValueNullFieldError.checkNotNull( + id, r'GHeroWithFragmentsDuplicationData_hero', 'id'); + BuiltValueNullFieldError.checkNotNull( + name, r'GHeroWithFragmentsDuplicationData_hero', 'name'); + } + + @override + GHeroWithFragmentsDuplicationData_hero rebuild( + void Function(GHeroWithFragmentsDuplicationData_heroBuilder) + updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroWithFragmentsDuplicationData_heroBuilder toBuilder() => + new GHeroWithFragmentsDuplicationData_heroBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroWithFragmentsDuplicationData_hero && + G__typename == other.G__typename && + id == other.id && + name == other.name; + } + + @override + int get hashCode { + return $jf( + $jc($jc($jc(0, G__typename.hashCode), id.hashCode), name.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper( + r'GHeroWithFragmentsDuplicationData_hero') + ..add('G__typename', G__typename) + ..add('id', id) + ..add('name', name)) + .toString(); + } +} + +class GHeroWithFragmentsDuplicationData_heroBuilder + implements + Builder { + _$GHeroWithFragmentsDuplicationData_hero? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + String? _id; + String? get id => _$this._id; + set id(String? id) => _$this._id = id; + + String? _name; + String? get name => _$this._name; + set name(String? name) => _$this._name = name; + + GHeroWithFragmentsDuplicationData_heroBuilder() { + GHeroWithFragmentsDuplicationData_hero._initializeBuilder(this); + } + + GHeroWithFragmentsDuplicationData_heroBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _id = $v.id; + _name = $v.name; + _$v = null; + } + return this; + } + + @override + void replace(GHeroWithFragmentsDuplicationData_hero other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroWithFragmentsDuplicationData_hero; + } + + @override + void update( + void Function(GHeroWithFragmentsDuplicationData_heroBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroWithFragmentsDuplicationData_hero build() => _build(); + + _$GHeroWithFragmentsDuplicationData_hero _build() { + final _$result = _$v ?? + new _$GHeroWithFragmentsDuplicationData_hero._( + G__typename: BuiltValueNullFieldError.checkNotNull(G__typename, + r'GHeroWithFragmentsDuplicationData_hero', 'G__typename'), + id: BuiltValueNullFieldError.checkNotNull( + id, r'GHeroWithFragmentsDuplicationData_hero', 'id'), + name: BuiltValueNullFieldError.checkNotNull( + name, r'GHeroWithFragmentsDuplicationData_hero', 'name')); + replace(_$result); + return _$result; + } +} + +class _$GheroDataData extends GheroDataData { + @override + final String G__typename; + @override + final String id; + @override + final String name; + + factory _$GheroDataData([void Function(GheroDataDataBuilder)? updates]) => + (new GheroDataDataBuilder()..update(updates))._build(); + + _$GheroDataData._( + {required this.G__typename, required this.id, required this.name}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GheroDataData', 'G__typename'); + BuiltValueNullFieldError.checkNotNull(id, r'GheroDataData', 'id'); + BuiltValueNullFieldError.checkNotNull(name, r'GheroDataData', 'name'); + } + + @override + GheroDataData rebuild(void Function(GheroDataDataBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GheroDataDataBuilder toBuilder() => new GheroDataDataBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GheroDataData && + G__typename == other.G__typename && + id == other.id && + name == other.name; + } + + @override + int get hashCode { + return $jf( + $jc($jc($jc(0, G__typename.hashCode), id.hashCode), name.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GheroDataData') + ..add('G__typename', G__typename) + ..add('id', id) + ..add('name', name)) + .toString(); + } +} + +class GheroDataDataBuilder + implements Builder { + _$GheroDataData? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + String? _id; + String? get id => _$this._id; + set id(String? id) => _$this._id = id; + + String? _name; + String? get name => _$this._name; + set name(String? name) => _$this._name = name; + + GheroDataDataBuilder() { + GheroDataData._initializeBuilder(this); + } + + GheroDataDataBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _id = $v.id; + _name = $v.name; + _$v = null; + } + return this; + } + + @override + void replace(GheroDataData other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GheroDataData; + } + + @override + void update(void Function(GheroDataDataBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GheroDataData build() => _build(); + + _$GheroDataData _build() { + final _$result = _$v ?? + new _$GheroDataData._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GheroDataData', 'G__typename'), + id: BuiltValueNullFieldError.checkNotNull( + id, r'GheroDataData', 'id'), + name: BuiltValueNullFieldError.checkNotNull( + name, r'GheroDataData', 'name')); + replace(_$result); + return _$result; + } +} + +// ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.req.gql.dart b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.req.gql.dart new file mode 100644 index 00000000..48fcabfd --- /dev/null +++ b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.req.gql.dart @@ -0,0 +1,39 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.ast.gql.dart' + as _i2; +import 'package:end_to_end_test/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.var.gql.dart' + as _i3; +import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' + as _i4; +import 'package:gql_exec/gql_exec.dart' as _i1; + +part 'hero_with_duplicated_fields_due_to_fragments.req.gql.g.dart'; + +abstract class GHeroWithFragmentsDuplication + implements + Built { + GHeroWithFragmentsDuplication._(); + + factory GHeroWithFragmentsDuplication( + [Function(GHeroWithFragmentsDuplicationBuilder b) updates]) = + _$GHeroWithFragmentsDuplication; + + static void _initializeBuilder(GHeroWithFragmentsDuplicationBuilder b) => b + ..operation = _i1.Operation( + document: _i2.document, operationName: 'HeroWithFragmentsDuplication'); + _i3.GHeroWithFragmentsDuplicationVars get vars; + _i1.Operation get operation; + static Serializer get serializer => + _$gHeroWithFragmentsDuplicationSerializer; + Map toJson() => (_i4.serializers.serializeWith( + GHeroWithFragmentsDuplication.serializer, this) as Map); + static GHeroWithFragmentsDuplication? fromJson(Map json) => + _i4.serializers + .deserializeWith(GHeroWithFragmentsDuplication.serializer, json); +} diff --git a/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.req.gql.g.dart b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.req.gql.g.dart new file mode 100644 index 00000000..9cc053ce --- /dev/null +++ b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.req.gql.g.dart @@ -0,0 +1,186 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_with_duplicated_fields_due_to_fragments.req.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer + _$gHeroWithFragmentsDuplicationSerializer = + new _$GHeroWithFragmentsDuplicationSerializer(); + +class _$GHeroWithFragmentsDuplicationSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroWithFragmentsDuplication, + _$GHeroWithFragmentsDuplication + ]; + @override + final String wireName = 'GHeroWithFragmentsDuplication'; + + @override + Iterable serialize( + Serializers serializers, GHeroWithFragmentsDuplication object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + 'vars', + serializers.serialize(object.vars, + specifiedType: const FullType(_i3.GHeroWithFragmentsDuplicationVars)), + 'operation', + serializers.serialize(object.operation, + specifiedType: const FullType(_i1.Operation)), + ]; + + return result; + } + + @override + GHeroWithFragmentsDuplication deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroWithFragmentsDuplicationBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case 'vars': + result.vars.replace(serializers.deserialize(value, + specifiedType: + const FullType(_i3.GHeroWithFragmentsDuplicationVars))! + as _i3.GHeroWithFragmentsDuplicationVars); + break; + case 'operation': + result.operation = serializers.deserialize(value, + specifiedType: const FullType(_i1.Operation))! as _i1.Operation; + break; + } + } + + return result.build(); + } +} + +class _$GHeroWithFragmentsDuplication extends GHeroWithFragmentsDuplication { + @override + final _i3.GHeroWithFragmentsDuplicationVars vars; + @override + final _i1.Operation operation; + + factory _$GHeroWithFragmentsDuplication( + [void Function(GHeroWithFragmentsDuplicationBuilder)? updates]) => + (new GHeroWithFragmentsDuplicationBuilder()..update(updates))._build(); + + _$GHeroWithFragmentsDuplication._( + {required this.vars, required this.operation}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + vars, r'GHeroWithFragmentsDuplication', 'vars'); + BuiltValueNullFieldError.checkNotNull( + operation, r'GHeroWithFragmentsDuplication', 'operation'); + } + + @override + GHeroWithFragmentsDuplication rebuild( + void Function(GHeroWithFragmentsDuplicationBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroWithFragmentsDuplicationBuilder toBuilder() => + new GHeroWithFragmentsDuplicationBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroWithFragmentsDuplication && + vars == other.vars && + operation == other.operation; + } + + @override + int get hashCode { + return $jf($jc($jc(0, vars.hashCode), operation.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroWithFragmentsDuplication') + ..add('vars', vars) + ..add('operation', operation)) + .toString(); + } +} + +class GHeroWithFragmentsDuplicationBuilder + implements + Builder { + _$GHeroWithFragmentsDuplication? _$v; + + _i3.GHeroWithFragmentsDuplicationVarsBuilder? _vars; + _i3.GHeroWithFragmentsDuplicationVarsBuilder get vars => + _$this._vars ??= new _i3.GHeroWithFragmentsDuplicationVarsBuilder(); + set vars(_i3.GHeroWithFragmentsDuplicationVarsBuilder? vars) => + _$this._vars = vars; + + _i1.Operation? _operation; + _i1.Operation? get operation => _$this._operation; + set operation(_i1.Operation? operation) => _$this._operation = operation; + + GHeroWithFragmentsDuplicationBuilder() { + GHeroWithFragmentsDuplication._initializeBuilder(this); + } + + GHeroWithFragmentsDuplicationBuilder get _$this { + final $v = _$v; + if ($v != null) { + _vars = $v.vars.toBuilder(); + _operation = $v.operation; + _$v = null; + } + return this; + } + + @override + void replace(GHeroWithFragmentsDuplication other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroWithFragmentsDuplication; + } + + @override + void update(void Function(GHeroWithFragmentsDuplicationBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroWithFragmentsDuplication build() => _build(); + + _$GHeroWithFragmentsDuplication _build() { + _$GHeroWithFragmentsDuplication _$result; + try { + _$result = _$v ?? + new _$GHeroWithFragmentsDuplication._( + vars: vars.build(), + operation: BuiltValueNullFieldError.checkNotNull( + operation, r'GHeroWithFragmentsDuplication', 'operation')); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'vars'; + vars.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroWithFragmentsDuplication', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +// ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.var.gql.dart b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.var.gql.dart new file mode 100644 index 00000000..6363177b --- /dev/null +++ b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.var.gql.dart @@ -0,0 +1,46 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' + as _i1; + +part 'hero_with_duplicated_fields_due_to_fragments.var.gql.g.dart'; + +abstract class GHeroWithFragmentsDuplicationVars + implements + Built { + GHeroWithFragmentsDuplicationVars._(); + + factory GHeroWithFragmentsDuplicationVars( + [Function(GHeroWithFragmentsDuplicationVarsBuilder b) updates]) = + _$GHeroWithFragmentsDuplicationVars; + + static Serializer get serializer => + _$gHeroWithFragmentsDuplicationVarsSerializer; + Map toJson() => (_i1.serializers + .serializeWith(GHeroWithFragmentsDuplicationVars.serializer, this) + as Map); + static GHeroWithFragmentsDuplicationVars? fromJson( + Map json) => + _i1.serializers + .deserializeWith(GHeroWithFragmentsDuplicationVars.serializer, json); +} + +abstract class GheroDataVars + implements Built { + GheroDataVars._(); + + factory GheroDataVars([Function(GheroDataVarsBuilder b) updates]) = + _$GheroDataVars; + + static Serializer get serializer => _$gheroDataVarsSerializer; + Map toJson() => + (_i1.serializers.serializeWith(GheroDataVars.serializer, this) + as Map); + static GheroDataVars? fromJson(Map json) => + _i1.serializers.deserializeWith(GheroDataVars.serializer, json); +} diff --git a/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.var.gql.g.dart b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.var.gql.g.dart new file mode 100644 index 00000000..17dd77d2 --- /dev/null +++ b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.var.gql.g.dart @@ -0,0 +1,183 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_with_duplicated_fields_due_to_fragments.var.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer + _$gHeroWithFragmentsDuplicationVarsSerializer = + new _$GHeroWithFragmentsDuplicationVarsSerializer(); +Serializer _$gheroDataVarsSerializer = + new _$GheroDataVarsSerializer(); + +class _$GHeroWithFragmentsDuplicationVarsSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroWithFragmentsDuplicationVars, + _$GHeroWithFragmentsDuplicationVars + ]; + @override + final String wireName = 'GHeroWithFragmentsDuplicationVars'; + + @override + Iterable serialize( + Serializers serializers, GHeroWithFragmentsDuplicationVars object, + {FullType specifiedType = FullType.unspecified}) { + return []; + } + + @override + GHeroWithFragmentsDuplicationVars deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + return new GHeroWithFragmentsDuplicationVarsBuilder().build(); + } +} + +class _$GheroDataVarsSerializer implements StructuredSerializer { + @override + final Iterable types = const [GheroDataVars, _$GheroDataVars]; + @override + final String wireName = 'GheroDataVars'; + + @override + Iterable serialize(Serializers serializers, GheroDataVars object, + {FullType specifiedType = FullType.unspecified}) { + return []; + } + + @override + GheroDataVars deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + return new GheroDataVarsBuilder().build(); + } +} + +class _$GHeroWithFragmentsDuplicationVars + extends GHeroWithFragmentsDuplicationVars { + factory _$GHeroWithFragmentsDuplicationVars( + [void Function(GHeroWithFragmentsDuplicationVarsBuilder)? updates]) => + (new GHeroWithFragmentsDuplicationVarsBuilder()..update(updates)) + ._build(); + + _$GHeroWithFragmentsDuplicationVars._() : super._(); + + @override + GHeroWithFragmentsDuplicationVars rebuild( + void Function(GHeroWithFragmentsDuplicationVarsBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroWithFragmentsDuplicationVarsBuilder toBuilder() => + new GHeroWithFragmentsDuplicationVarsBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroWithFragmentsDuplicationVars; + } + + @override + int get hashCode { + return 296781944; + } + + @override + String toString() { + return newBuiltValueToStringHelper(r'GHeroWithFragmentsDuplicationVars') + .toString(); + } +} + +class GHeroWithFragmentsDuplicationVarsBuilder + implements + Builder { + _$GHeroWithFragmentsDuplicationVars? _$v; + + GHeroWithFragmentsDuplicationVarsBuilder(); + + @override + void replace(GHeroWithFragmentsDuplicationVars other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroWithFragmentsDuplicationVars; + } + + @override + void update( + void Function(GHeroWithFragmentsDuplicationVarsBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroWithFragmentsDuplicationVars build() => _build(); + + _$GHeroWithFragmentsDuplicationVars _build() { + final _$result = _$v ?? new _$GHeroWithFragmentsDuplicationVars._(); + replace(_$result); + return _$result; + } +} + +class _$GheroDataVars extends GheroDataVars { + factory _$GheroDataVars([void Function(GheroDataVarsBuilder)? updates]) => + (new GheroDataVarsBuilder()..update(updates))._build(); + + _$GheroDataVars._() : super._(); + + @override + GheroDataVars rebuild(void Function(GheroDataVarsBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GheroDataVarsBuilder toBuilder() => new GheroDataVarsBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GheroDataVars; + } + + @override + int get hashCode { + return 172200517; + } + + @override + String toString() { + return newBuiltValueToStringHelper(r'GheroDataVars').toString(); + } +} + +class GheroDataVarsBuilder + implements Builder { + _$GheroDataVars? _$v; + + GheroDataVarsBuilder(); + + @override + void replace(GheroDataVars other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GheroDataVars; + } + + @override + void update(void Function(GheroDataVarsBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GheroDataVars build() => _build(); + + _$GheroDataVars _build() { + final _$result = _$v ?? new _$GheroDataVars._(); + replace(_$result); + return _$result; + } +} + +// ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/fragments/hero_inline_fragment.graphql b/codegen/end_to_end_test/lib/fragments/hero_inline_fragment.graphql new file mode 100644 index 00000000..baf248c9 --- /dev/null +++ b/codegen/end_to_end_test/lib/fragments/hero_inline_fragment.graphql @@ -0,0 +1,10 @@ +query HeroWithInlineFragments($skipName: Boolean!) { + hero(episode: JEDI) { + ... { + id + } + ... @skip(if: $skipName) { + name + } + } +} diff --git a/codegen/end_to_end_test/lib/fragments/hero_with_duplicated_fields_due_to_fragments.graphql b/codegen/end_to_end_test/lib/fragments/hero_with_duplicated_fields_due_to_fragments.graphql new file mode 100644 index 00000000..016a1b6d --- /dev/null +++ b/codegen/end_to_end_test/lib/fragments/hero_with_duplicated_fields_due_to_fragments.graphql @@ -0,0 +1,12 @@ +query HeroWithFragmentsDuplication { + hero(episode: JEDI) { + id + ...heroData + } +} + +fragment heroData on Character { + id + name +} + diff --git a/codegen/end_to_end_test/lib/graphql/__generated__/serializers.gql.dart b/codegen/end_to_end_test/lib/graphql/__generated__/serializers.gql.dart index 53e34bfa..414e20aa 100644 --- a/codegen/end_to_end_test/lib/graphql/__generated__/serializers.gql.dart +++ b/codegen/end_to_end_test/lib/graphql/__generated__/serializers.gql.dart @@ -26,6 +26,34 @@ import 'package:end_to_end_test/directives/__generated__/hero_skip.req.gql.dart' show GHeroSkip; import 'package:end_to_end_test/directives/__generated__/hero_skip.var.gql.dart' show GHeroSkipVars; +import 'package:end_to_end_test/directives/__generated__/hero_skip_fragment.data.gql.dart' + show + GHeroDetailData, + GHeroDetailData_friends, + GHeroSkipFragmentData, + GHeroSkipFragmentData_hero, + GHeroSkipFragmentData_hero_friends; +import 'package:end_to_end_test/directives/__generated__/hero_skip_fragment.req.gql.dart' + show GHeroSkipFragment; +import 'package:end_to_end_test/directives/__generated__/hero_skip_fragment.var.gql.dart' + show GHeroDetailVars, GHeroSkipFragmentVars; +import 'package:end_to_end_test/fragments/__generated__/hero_inline_fragment.data.gql.dart' + show + GHeroWithInlineFragmentsData_hero, + GHeroWithInlineFragmentsData, + GHeroWithInlineFragmentsData_hero__base; +import 'package:end_to_end_test/fragments/__generated__/hero_inline_fragment.req.gql.dart' + show GHeroWithInlineFragments; +import 'package:end_to_end_test/fragments/__generated__/hero_inline_fragment.var.gql.dart' + show GHeroWithInlineFragmentsVars; +import 'package:end_to_end_test/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.data.gql.dart' + show + GHeroWithFragmentsDuplicationData, + GHeroWithFragmentsDuplicationData_hero; +import 'package:end_to_end_test/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.req.gql.dart' + show GHeroWithFragmentsDuplication; +import 'package:end_to_end_test/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.var.gql.dart' + show GHeroWithFragmentsDuplicationVars; import 'package:end_to_end_test/fragments/__generated__/hero_with_fragments.data.gql.dart' show GHeroWithFragmentsData, @@ -57,6 +85,18 @@ import 'package:end_to_end_test/interfaces/__generated__/hero_for_episode.req.gq show GHeroForEpisode; import 'package:end_to_end_test/interfaces/__generated__/hero_for_episode.var.gql.dart' show GDroidFragmentVars, GHeroForEpisodeVars; +import 'package:end_to_end_test/merge/__generated__/merge_selection_sets.graphql.data.gql.dart' + show GHeroMergeData, GHeroMergeData_hero; +import 'package:end_to_end_test/merge/__generated__/merge_selection_sets.graphql.req.gql.dart' + show GHeroMerge; +import 'package:end_to_end_test/merge/__generated__/merge_selection_sets.graphql.var.gql.dart' + show GHeroMergeVars; +import 'package:end_to_end_test/merge/__generated__/merge_selection_sets.graphql_skip.data.gql.dart' + show GHeroMergeSkipData, GHeroMergeSkipData_hero; +import 'package:end_to_end_test/merge/__generated__/merge_selection_sets.graphql_skip.req.gql.dart' + show GHeroMergeSkip; +import 'package:end_to_end_test/merge/__generated__/merge_selection_sets.graphql_skip.var.gql.dart' + show GHeroMergeSkipVars; import 'package:end_to_end_test/no_vars/__generated__/hero_no_vars.data.gql.dart' show GHeroNoVarsData, GHeroNoVarsData_hero; import 'package:end_to_end_test/no_vars/__generated__/hero_no_vars.req.gql.dart' @@ -91,6 +131,7 @@ final SerializersBuilder _serializersBuilder = _$serializers.toBuilder() ..add(DateSerializer()) ..add(CustomFieldSerializer()) ..add(GHeroForEpisodeData_hero.serializer) + ..add(GHeroWithInlineFragmentsData_hero.serializer) ..addPlugin(StandardJsonPlugin()); @SerializersFor([ GAliasedHero, @@ -106,6 +147,9 @@ final SerializersBuilder _serializersBuilder = _$serializers.toBuilder() GDroidFragmentData, GDroidFragmentVars, GEpisode, + GHeroDetailData, + GHeroDetailData_friends, + GHeroDetailVars, GHeroForEpisode, GHeroForEpisodeData, GHeroForEpisodeData_hero__asDroid, @@ -117,6 +161,14 @@ final SerializersBuilder _serializersBuilder = _$serializers.toBuilder() GHeroIncludeData, GHeroIncludeData_hero, GHeroIncludeVars, + GHeroMerge, + GHeroMergeData, + GHeroMergeData_hero, + GHeroMergeSkip, + GHeroMergeSkipData, + GHeroMergeSkipData_hero, + GHeroMergeSkipVars, + GHeroMergeVars, GHeroNoVars, GHeroNoVarsData, GHeroNoVarsData_hero, @@ -124,6 +176,11 @@ final SerializersBuilder _serializersBuilder = _$serializers.toBuilder() GHeroSkip, GHeroSkipData, GHeroSkipData_hero, + GHeroSkipFragment, + GHeroSkipFragmentData, + GHeroSkipFragmentData_hero, + GHeroSkipFragmentData_hero_friends, + GHeroSkipFragmentVars, GHeroSkipVars, GHeroWithFragments, GHeroWithFragmentsData, @@ -131,7 +188,15 @@ final SerializersBuilder _serializersBuilder = _$serializers.toBuilder() GHeroWithFragmentsData_hero_friendsConnection, GHeroWithFragmentsData_hero_friendsConnection_edges, GHeroWithFragmentsData_hero_friendsConnection_edges_node, + GHeroWithFragmentsDuplication, + GHeroWithFragmentsDuplicationData, + GHeroWithFragmentsDuplicationData_hero, + GHeroWithFragmentsDuplicationVars, GHeroWithFragmentsVars, + GHeroWithInlineFragments, + GHeroWithInlineFragmentsData, + GHeroWithInlineFragmentsData_hero__base, + GHeroWithInlineFragmentsVars, GHumanWithArgs, GHumanWithArgsData, GHumanWithArgsData_human, diff --git a/codegen/end_to_end_test/lib/graphql/__generated__/serializers.gql.g.dart b/codegen/end_to_end_test/lib/graphql/__generated__/serializers.gql.g.dart index 4ef5cb1c..4abd33af 100644 --- a/codegen/end_to_end_test/lib/graphql/__generated__/serializers.gql.g.dart +++ b/codegen/end_to_end_test/lib/graphql/__generated__/serializers.gql.g.dart @@ -20,6 +20,9 @@ Serializers _$serializers = (new Serializers().toBuilder() ..add(GDroidFragmentData.serializer) ..add(GDroidFragmentVars.serializer) ..add(GEpisode.serializer) + ..add(GHeroDetailData.serializer) + ..add(GHeroDetailData_friends.serializer) + ..add(GHeroDetailVars.serializer) ..add(GHeroForEpisode.serializer) ..add(GHeroForEpisodeData.serializer) ..add(GHeroForEpisodeData_hero__asDroid.serializer) @@ -31,6 +34,14 @@ Serializers _$serializers = (new Serializers().toBuilder() ..add(GHeroIncludeData.serializer) ..add(GHeroIncludeData_hero.serializer) ..add(GHeroIncludeVars.serializer) + ..add(GHeroMerge.serializer) + ..add(GHeroMergeData.serializer) + ..add(GHeroMergeData_hero.serializer) + ..add(GHeroMergeSkip.serializer) + ..add(GHeroMergeSkipData.serializer) + ..add(GHeroMergeSkipData_hero.serializer) + ..add(GHeroMergeSkipVars.serializer) + ..add(GHeroMergeVars.serializer) ..add(GHeroNoVars.serializer) ..add(GHeroNoVarsData.serializer) ..add(GHeroNoVarsData_hero.serializer) @@ -38,6 +49,11 @@ Serializers _$serializers = (new Serializers().toBuilder() ..add(GHeroSkip.serializer) ..add(GHeroSkipData.serializer) ..add(GHeroSkipData_hero.serializer) + ..add(GHeroSkipFragment.serializer) + ..add(GHeroSkipFragmentData.serializer) + ..add(GHeroSkipFragmentData_hero.serializer) + ..add(GHeroSkipFragmentData_hero_friends.serializer) + ..add(GHeroSkipFragmentVars.serializer) ..add(GHeroSkipVars.serializer) ..add(GHeroWithFragments.serializer) ..add(GHeroWithFragmentsData.serializer) @@ -45,7 +61,15 @@ Serializers _$serializers = (new Serializers().toBuilder() ..add(GHeroWithFragmentsData_hero_friendsConnection.serializer) ..add(GHeroWithFragmentsData_hero_friendsConnection_edges.serializer) ..add(GHeroWithFragmentsData_hero_friendsConnection_edges_node.serializer) + ..add(GHeroWithFragmentsDuplication.serializer) + ..add(GHeroWithFragmentsDuplicationData.serializer) + ..add(GHeroWithFragmentsDuplicationData_hero.serializer) + ..add(GHeroWithFragmentsDuplicationVars.serializer) ..add(GHeroWithFragmentsVars.serializer) + ..add(GHeroWithInlineFragments.serializer) + ..add(GHeroWithInlineFragmentsData.serializer) + ..add(GHeroWithInlineFragmentsData_hero__base.serializer) + ..add(GHeroWithInlineFragmentsVars.serializer) ..add(GHumanWithArgs.serializer) ..add(GHumanWithArgsData.serializer) ..add(GHumanWithArgsData_human.serializer) @@ -80,6 +104,10 @@ Serializers _$serializers = (new Serializers().toBuilder() ..addBuilderFactory( const FullType(BuiltList, const [const FullType.nullable(GEpisode)]), () => new ListBuilder()) + ..addBuilderFactory( + const FullType(BuiltList, + const [const FullType.nullable(GHeroDetailData_friends)]), + () => new ListBuilder()) ..addBuilderFactory( const FullType(BuiltList, const [ const FullType.nullable(GHeroForEpisodeData_hero__asDroid_friends) @@ -90,6 +118,11 @@ Serializers _$serializers = (new Serializers().toBuilder() const FullType.nullable(GHeroForEpisodeData_hero__base_friends) ]), () => new ListBuilder()) + ..addBuilderFactory( + const FullType(BuiltList, const [ + const FullType.nullable(GHeroSkipFragmentData_hero_friends) + ]), + () => new ListBuilder()) ..addBuilderFactory( const FullType(BuiltList, const [ const FullType.nullable( diff --git a/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.ast.gql.dart b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.ast.gql.dart new file mode 100644 index 00000000..4b63b608 --- /dev/null +++ b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.ast.gql.dart @@ -0,0 +1,40 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:gql/ast.dart' as _i1; + +const HeroMerge = _i1.OperationDefinitionNode( + type: _i1.OperationType.query, + name: _i1.NameNode(value: 'HeroMerge'), + variableDefinitions: [], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'hero'), + alias: null, + arguments: [], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'id'), + alias: null, + arguments: [], + directives: [], + selectionSet: null) + ])), + _i1.FieldNode( + name: _i1.NameNode(value: 'hero'), + alias: null, + arguments: [], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'name'), + alias: null, + arguments: [], + directives: [], + selectionSet: null) + ])) + ])); +const document = _i1.DocumentNode(definitions: [HeroMerge]); diff --git a/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.data.gql.dart b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.data.gql.dart new file mode 100644 index 00000000..c56c7d06 --- /dev/null +++ b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.data.gql.dart @@ -0,0 +1,53 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' + as _i1; + +part 'merge_selection_sets.graphql.data.gql.g.dart'; + +abstract class GHeroMergeData + implements Built { + GHeroMergeData._(); + + factory GHeroMergeData([Function(GHeroMergeDataBuilder b) updates]) = + _$GHeroMergeData; + + static void _initializeBuilder(GHeroMergeDataBuilder b) => + b..G__typename = 'Query'; + @BuiltValueField(wireName: '__typename') + String get G__typename; + GHeroMergeData_hero? get hero; + static Serializer get serializer => + _$gHeroMergeDataSerializer; + Map toJson() => + (_i1.serializers.serializeWith(GHeroMergeData.serializer, this) + as Map); + static GHeroMergeData? fromJson(Map json) => + _i1.serializers.deserializeWith(GHeroMergeData.serializer, json); +} + +abstract class GHeroMergeData_hero + implements Built { + GHeroMergeData_hero._(); + + factory GHeroMergeData_hero( + [Function(GHeroMergeData_heroBuilder b) updates]) = _$GHeroMergeData_hero; + + static void _initializeBuilder(GHeroMergeData_heroBuilder b) => + b..G__typename = 'Character'; + @BuiltValueField(wireName: '__typename') + String get G__typename; + String get id; + String get name; + static Serializer get serializer => + _$gHeroMergeDataHeroSerializer; + Map toJson() => + (_i1.serializers.serializeWith(GHeroMergeData_hero.serializer, this) + as Map); + static GHeroMergeData_hero? fromJson(Map json) => + _i1.serializers.deserializeWith(GHeroMergeData_hero.serializer, json); +} diff --git a/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.data.gql.g.dart b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.data.gql.g.dart new file mode 100644 index 00000000..8e7223b4 --- /dev/null +++ b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.data.gql.g.dart @@ -0,0 +1,349 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'merge_selection_sets.graphql.data.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroMergeDataSerializer = + new _$GHeroMergeDataSerializer(); +Serializer _$gHeroMergeDataHeroSerializer = + new _$GHeroMergeData_heroSerializer(); + +class _$GHeroMergeDataSerializer + implements StructuredSerializer { + @override + final Iterable types = const [GHeroMergeData, _$GHeroMergeData]; + @override + final String wireName = 'GHeroMergeData'; + + @override + Iterable serialize(Serializers serializers, GHeroMergeData object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + ]; + Object? value; + value = object.hero; + if (value != null) { + result + ..add('hero') + ..add(serializers.serialize(value, + specifiedType: const FullType(GHeroMergeData_hero))); + } + return result; + } + + @override + GHeroMergeData deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroMergeDataBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'hero': + result.hero.replace(serializers.deserialize(value, + specifiedType: const FullType(GHeroMergeData_hero))! + as GHeroMergeData_hero); + break; + } + } + + return result.build(); + } +} + +class _$GHeroMergeData_heroSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroMergeData_hero, + _$GHeroMergeData_hero + ]; + @override + final String wireName = 'GHeroMergeData_hero'; + + @override + Iterable serialize( + Serializers serializers, GHeroMergeData_hero object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + 'id', + serializers.serialize(object.id, specifiedType: const FullType(String)), + 'name', + serializers.serialize(object.name, specifiedType: const FullType(String)), + ]; + + return result; + } + + @override + GHeroMergeData_hero deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroMergeData_heroBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'id': + result.id = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'name': + result.name = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + } + } + + return result.build(); + } +} + +class _$GHeroMergeData extends GHeroMergeData { + @override + final String G__typename; + @override + final GHeroMergeData_hero? hero; + + factory _$GHeroMergeData([void Function(GHeroMergeDataBuilder)? updates]) => + (new GHeroMergeDataBuilder()..update(updates))._build(); + + _$GHeroMergeData._({required this.G__typename, this.hero}) : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroMergeData', 'G__typename'); + } + + @override + GHeroMergeData rebuild(void Function(GHeroMergeDataBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroMergeDataBuilder toBuilder() => + new GHeroMergeDataBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroMergeData && + G__typename == other.G__typename && + hero == other.hero; + } + + @override + int get hashCode { + return $jf($jc($jc(0, G__typename.hashCode), hero.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroMergeData') + ..add('G__typename', G__typename) + ..add('hero', hero)) + .toString(); + } +} + +class GHeroMergeDataBuilder + implements Builder { + _$GHeroMergeData? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + GHeroMergeData_heroBuilder? _hero; + GHeroMergeData_heroBuilder get hero => + _$this._hero ??= new GHeroMergeData_heroBuilder(); + set hero(GHeroMergeData_heroBuilder? hero) => _$this._hero = hero; + + GHeroMergeDataBuilder() { + GHeroMergeData._initializeBuilder(this); + } + + GHeroMergeDataBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _hero = $v.hero?.toBuilder(); + _$v = null; + } + return this; + } + + @override + void replace(GHeroMergeData other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroMergeData; + } + + @override + void update(void Function(GHeroMergeDataBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroMergeData build() => _build(); + + _$GHeroMergeData _build() { + _$GHeroMergeData _$result; + try { + _$result = _$v ?? + new _$GHeroMergeData._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroMergeData', 'G__typename'), + hero: _hero?.build()); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'hero'; + _hero?.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroMergeData', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +class _$GHeroMergeData_hero extends GHeroMergeData_hero { + @override + final String G__typename; + @override + final String id; + @override + final String name; + + factory _$GHeroMergeData_hero( + [void Function(GHeroMergeData_heroBuilder)? updates]) => + (new GHeroMergeData_heroBuilder()..update(updates))._build(); + + _$GHeroMergeData_hero._( + {required this.G__typename, required this.id, required this.name}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroMergeData_hero', 'G__typename'); + BuiltValueNullFieldError.checkNotNull(id, r'GHeroMergeData_hero', 'id'); + BuiltValueNullFieldError.checkNotNull(name, r'GHeroMergeData_hero', 'name'); + } + + @override + GHeroMergeData_hero rebuild( + void Function(GHeroMergeData_heroBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroMergeData_heroBuilder toBuilder() => + new GHeroMergeData_heroBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroMergeData_hero && + G__typename == other.G__typename && + id == other.id && + name == other.name; + } + + @override + int get hashCode { + return $jf( + $jc($jc($jc(0, G__typename.hashCode), id.hashCode), name.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroMergeData_hero') + ..add('G__typename', G__typename) + ..add('id', id) + ..add('name', name)) + .toString(); + } +} + +class GHeroMergeData_heroBuilder + implements Builder { + _$GHeroMergeData_hero? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + String? _id; + String? get id => _$this._id; + set id(String? id) => _$this._id = id; + + String? _name; + String? get name => _$this._name; + set name(String? name) => _$this._name = name; + + GHeroMergeData_heroBuilder() { + GHeroMergeData_hero._initializeBuilder(this); + } + + GHeroMergeData_heroBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _id = $v.id; + _name = $v.name; + _$v = null; + } + return this; + } + + @override + void replace(GHeroMergeData_hero other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroMergeData_hero; + } + + @override + void update(void Function(GHeroMergeData_heroBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroMergeData_hero build() => _build(); + + _$GHeroMergeData_hero _build() { + final _$result = _$v ?? + new _$GHeroMergeData_hero._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroMergeData_hero', 'G__typename'), + id: BuiltValueNullFieldError.checkNotNull( + id, r'GHeroMergeData_hero', 'id'), + name: BuiltValueNullFieldError.checkNotNull( + name, r'GHeroMergeData_hero', 'name')); + replace(_$result); + return _$result; + } +} + +// ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.req.gql.dart b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.req.gql.dart new file mode 100644 index 00000000..b9e85a8d --- /dev/null +++ b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.req.gql.dart @@ -0,0 +1,33 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' + as _i4; +import 'package:end_to_end_test/merge/__generated__/merge_selection_sets.graphql.ast.gql.dart' + as _i2; +import 'package:end_to_end_test/merge/__generated__/merge_selection_sets.graphql.var.gql.dart' + as _i3; +import 'package:gql_exec/gql_exec.dart' as _i1; + +part 'merge_selection_sets.graphql.req.gql.g.dart'; + +abstract class GHeroMerge implements Built { + GHeroMerge._(); + + factory GHeroMerge([Function(GHeroMergeBuilder b) updates]) = _$GHeroMerge; + + static void _initializeBuilder(GHeroMergeBuilder b) => b + ..operation = + _i1.Operation(document: _i2.document, operationName: 'HeroMerge'); + _i3.GHeroMergeVars get vars; + _i1.Operation get operation; + static Serializer get serializer => _$gHeroMergeSerializer; + Map toJson() => + (_i4.serializers.serializeWith(GHeroMerge.serializer, this) + as Map); + static GHeroMerge? fromJson(Map json) => + _i4.serializers.deserializeWith(GHeroMerge.serializer, json); +} diff --git a/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.req.gql.g.dart b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.req.gql.g.dart new file mode 100644 index 00000000..b169f835 --- /dev/null +++ b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.req.gql.g.dart @@ -0,0 +1,167 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'merge_selection_sets.graphql.req.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroMergeSerializer = new _$GHeroMergeSerializer(); + +class _$GHeroMergeSerializer implements StructuredSerializer { + @override + final Iterable types = const [GHeroMerge, _$GHeroMerge]; + @override + final String wireName = 'GHeroMerge'; + + @override + Iterable serialize(Serializers serializers, GHeroMerge object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + 'vars', + serializers.serialize(object.vars, + specifiedType: const FullType(_i3.GHeroMergeVars)), + 'operation', + serializers.serialize(object.operation, + specifiedType: const FullType(_i1.Operation)), + ]; + + return result; + } + + @override + GHeroMerge deserialize(Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroMergeBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case 'vars': + result.vars.replace(serializers.deserialize(value, + specifiedType: const FullType(_i3.GHeroMergeVars))! + as _i3.GHeroMergeVars); + break; + case 'operation': + result.operation = serializers.deserialize(value, + specifiedType: const FullType(_i1.Operation))! as _i1.Operation; + break; + } + } + + return result.build(); + } +} + +class _$GHeroMerge extends GHeroMerge { + @override + final _i3.GHeroMergeVars vars; + @override + final _i1.Operation operation; + + factory _$GHeroMerge([void Function(GHeroMergeBuilder)? updates]) => + (new GHeroMergeBuilder()..update(updates))._build(); + + _$GHeroMerge._({required this.vars, required this.operation}) : super._() { + BuiltValueNullFieldError.checkNotNull(vars, r'GHeroMerge', 'vars'); + BuiltValueNullFieldError.checkNotNull( + operation, r'GHeroMerge', 'operation'); + } + + @override + GHeroMerge rebuild(void Function(GHeroMergeBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroMergeBuilder toBuilder() => new GHeroMergeBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroMerge && + vars == other.vars && + operation == other.operation; + } + + @override + int get hashCode { + return $jf($jc($jc(0, vars.hashCode), operation.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroMerge') + ..add('vars', vars) + ..add('operation', operation)) + .toString(); + } +} + +class GHeroMergeBuilder implements Builder { + _$GHeroMerge? _$v; + + _i3.GHeroMergeVarsBuilder? _vars; + _i3.GHeroMergeVarsBuilder get vars => + _$this._vars ??= new _i3.GHeroMergeVarsBuilder(); + set vars(_i3.GHeroMergeVarsBuilder? vars) => _$this._vars = vars; + + _i1.Operation? _operation; + _i1.Operation? get operation => _$this._operation; + set operation(_i1.Operation? operation) => _$this._operation = operation; + + GHeroMergeBuilder() { + GHeroMerge._initializeBuilder(this); + } + + GHeroMergeBuilder get _$this { + final $v = _$v; + if ($v != null) { + _vars = $v.vars.toBuilder(); + _operation = $v.operation; + _$v = null; + } + return this; + } + + @override + void replace(GHeroMerge other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroMerge; + } + + @override + void update(void Function(GHeroMergeBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroMerge build() => _build(); + + _$GHeroMerge _build() { + _$GHeroMerge _$result; + try { + _$result = _$v ?? + new _$GHeroMerge._( + vars: vars.build(), + operation: BuiltValueNullFieldError.checkNotNull( + operation, r'GHeroMerge', 'operation')); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'vars'; + vars.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroMerge', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +// ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.var.gql.dart b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.var.gql.dart new file mode 100644 index 00000000..92473b61 --- /dev/null +++ b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.var.gql.dart @@ -0,0 +1,26 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' + as _i1; + +part 'merge_selection_sets.graphql.var.gql.g.dart'; + +abstract class GHeroMergeVars + implements Built { + GHeroMergeVars._(); + + factory GHeroMergeVars([Function(GHeroMergeVarsBuilder b) updates]) = + _$GHeroMergeVars; + + static Serializer get serializer => + _$gHeroMergeVarsSerializer; + Map toJson() => + (_i1.serializers.serializeWith(GHeroMergeVars.serializer, this) + as Map); + static GHeroMergeVars? fromJson(Map json) => + _i1.serializers.deserializeWith(GHeroMergeVars.serializer, json); +} diff --git a/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.var.gql.g.dart b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.var.gql.g.dart new file mode 100644 index 00000000..ed6f9fd8 --- /dev/null +++ b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql.var.gql.g.dart @@ -0,0 +1,91 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'merge_selection_sets.graphql.var.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroMergeVarsSerializer = + new _$GHeroMergeVarsSerializer(); + +class _$GHeroMergeVarsSerializer + implements StructuredSerializer { + @override + final Iterable types = const [GHeroMergeVars, _$GHeroMergeVars]; + @override + final String wireName = 'GHeroMergeVars'; + + @override + Iterable serialize(Serializers serializers, GHeroMergeVars object, + {FullType specifiedType = FullType.unspecified}) { + return []; + } + + @override + GHeroMergeVars deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + return new GHeroMergeVarsBuilder().build(); + } +} + +class _$GHeroMergeVars extends GHeroMergeVars { + factory _$GHeroMergeVars([void Function(GHeroMergeVarsBuilder)? updates]) => + (new GHeroMergeVarsBuilder()..update(updates))._build(); + + _$GHeroMergeVars._() : super._(); + + @override + GHeroMergeVars rebuild(void Function(GHeroMergeVarsBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroMergeVarsBuilder toBuilder() => + new GHeroMergeVarsBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroMergeVars; + } + + @override + int get hashCode { + return 224841185; + } + + @override + String toString() { + return newBuiltValueToStringHelper(r'GHeroMergeVars').toString(); + } +} + +class GHeroMergeVarsBuilder + implements Builder { + _$GHeroMergeVars? _$v; + + GHeroMergeVarsBuilder(); + + @override + void replace(GHeroMergeVars other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroMergeVars; + } + + @override + void update(void Function(GHeroMergeVarsBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroMergeVars build() => _build(); + + _$GHeroMergeVars _build() { + final _$result = _$v ?? new _$GHeroMergeVars._(); + replace(_$result); + return _$result; + } +} + +// ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.ast.gql.dart b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.ast.gql.dart new file mode 100644 index 00000000..839fa3ca --- /dev/null +++ b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.ast.gql.dart @@ -0,0 +1,54 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:gql/ast.dart' as _i1; + +const HeroMergeSkip = _i1.OperationDefinitionNode( + type: _i1.OperationType.query, + name: _i1.NameNode(value: 'HeroMergeSkip'), + variableDefinitions: [ + _i1.VariableDefinitionNode( + variable: _i1.VariableNode(name: _i1.NameNode(value: 'withName')), + type: _i1.NamedTypeNode( + name: _i1.NameNode(value: 'Boolean'), isNonNull: true), + defaultValue: _i1.DefaultValueNode(value: null), + directives: []) + ], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'hero'), + alias: null, + arguments: [], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'id'), + alias: null, + arguments: [], + directives: [], + selectionSet: null) + ])), + _i1.FieldNode( + name: _i1.NameNode(value: 'hero'), + alias: null, + arguments: [], + directives: [ + _i1.DirectiveNode(name: _i1.NameNode(value: 'include'), arguments: [ + _i1.ArgumentNode( + name: _i1.NameNode(value: 'if'), + value: + _i1.VariableNode(name: _i1.NameNode(value: 'withName'))) + ]) + ], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'name'), + alias: null, + arguments: [], + directives: [], + selectionSet: null) + ])) + ])); +const document = _i1.DocumentNode(definitions: [HeroMergeSkip]); diff --git a/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.data.gql.dart b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.data.gql.dart new file mode 100644 index 00000000..42635fcb --- /dev/null +++ b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.data.gql.dart @@ -0,0 +1,54 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' + as _i1; + +part 'merge_selection_sets.graphql_skip.data.gql.g.dart'; + +abstract class GHeroMergeSkipData + implements Built { + GHeroMergeSkipData._(); + + factory GHeroMergeSkipData([Function(GHeroMergeSkipDataBuilder b) updates]) = + _$GHeroMergeSkipData; + + static void _initializeBuilder(GHeroMergeSkipDataBuilder b) => + b..G__typename = 'Query'; + @BuiltValueField(wireName: '__typename') + String get G__typename; + GHeroMergeSkipData_hero? get hero; + static Serializer get serializer => + _$gHeroMergeSkipDataSerializer; + Map toJson() => + (_i1.serializers.serializeWith(GHeroMergeSkipData.serializer, this) + as Map); + static GHeroMergeSkipData? fromJson(Map json) => + _i1.serializers.deserializeWith(GHeroMergeSkipData.serializer, json); +} + +abstract class GHeroMergeSkipData_hero + implements Built { + GHeroMergeSkipData_hero._(); + + factory GHeroMergeSkipData_hero( + [Function(GHeroMergeSkipData_heroBuilder b) updates]) = + _$GHeroMergeSkipData_hero; + + static void _initializeBuilder(GHeroMergeSkipData_heroBuilder b) => + b..G__typename = 'Character'; + @BuiltValueField(wireName: '__typename') + String get G__typename; + String get id; + String get name; + static Serializer get serializer => + _$gHeroMergeSkipDataHeroSerializer; + Map toJson() => + (_i1.serializers.serializeWith(GHeroMergeSkipData_hero.serializer, this) + as Map); + static GHeroMergeSkipData_hero? fromJson(Map json) => + _i1.serializers.deserializeWith(GHeroMergeSkipData_hero.serializer, json); +} diff --git a/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.data.gql.g.dart b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.data.gql.g.dart new file mode 100644 index 00000000..ed46615f --- /dev/null +++ b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.data.gql.g.dart @@ -0,0 +1,354 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'merge_selection_sets.graphql_skip.data.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroMergeSkipDataSerializer = + new _$GHeroMergeSkipDataSerializer(); +Serializer _$gHeroMergeSkipDataHeroSerializer = + new _$GHeroMergeSkipData_heroSerializer(); + +class _$GHeroMergeSkipDataSerializer + implements StructuredSerializer { + @override + final Iterable types = const [GHeroMergeSkipData, _$GHeroMergeSkipData]; + @override + final String wireName = 'GHeroMergeSkipData'; + + @override + Iterable serialize( + Serializers serializers, GHeroMergeSkipData object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + ]; + Object? value; + value = object.hero; + if (value != null) { + result + ..add('hero') + ..add(serializers.serialize(value, + specifiedType: const FullType(GHeroMergeSkipData_hero))); + } + return result; + } + + @override + GHeroMergeSkipData deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroMergeSkipDataBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'hero': + result.hero.replace(serializers.deserialize(value, + specifiedType: const FullType(GHeroMergeSkipData_hero))! + as GHeroMergeSkipData_hero); + break; + } + } + + return result.build(); + } +} + +class _$GHeroMergeSkipData_heroSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroMergeSkipData_hero, + _$GHeroMergeSkipData_hero + ]; + @override + final String wireName = 'GHeroMergeSkipData_hero'; + + @override + Iterable serialize( + Serializers serializers, GHeroMergeSkipData_hero object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + 'id', + serializers.serialize(object.id, specifiedType: const FullType(String)), + 'name', + serializers.serialize(object.name, specifiedType: const FullType(String)), + ]; + + return result; + } + + @override + GHeroMergeSkipData_hero deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroMergeSkipData_heroBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'id': + result.id = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'name': + result.name = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + } + } + + return result.build(); + } +} + +class _$GHeroMergeSkipData extends GHeroMergeSkipData { + @override + final String G__typename; + @override + final GHeroMergeSkipData_hero? hero; + + factory _$GHeroMergeSkipData( + [void Function(GHeroMergeSkipDataBuilder)? updates]) => + (new GHeroMergeSkipDataBuilder()..update(updates))._build(); + + _$GHeroMergeSkipData._({required this.G__typename, this.hero}) : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroMergeSkipData', 'G__typename'); + } + + @override + GHeroMergeSkipData rebuild( + void Function(GHeroMergeSkipDataBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroMergeSkipDataBuilder toBuilder() => + new GHeroMergeSkipDataBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroMergeSkipData && + G__typename == other.G__typename && + hero == other.hero; + } + + @override + int get hashCode { + return $jf($jc($jc(0, G__typename.hashCode), hero.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroMergeSkipData') + ..add('G__typename', G__typename) + ..add('hero', hero)) + .toString(); + } +} + +class GHeroMergeSkipDataBuilder + implements Builder { + _$GHeroMergeSkipData? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + GHeroMergeSkipData_heroBuilder? _hero; + GHeroMergeSkipData_heroBuilder get hero => + _$this._hero ??= new GHeroMergeSkipData_heroBuilder(); + set hero(GHeroMergeSkipData_heroBuilder? hero) => _$this._hero = hero; + + GHeroMergeSkipDataBuilder() { + GHeroMergeSkipData._initializeBuilder(this); + } + + GHeroMergeSkipDataBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _hero = $v.hero?.toBuilder(); + _$v = null; + } + return this; + } + + @override + void replace(GHeroMergeSkipData other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroMergeSkipData; + } + + @override + void update(void Function(GHeroMergeSkipDataBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroMergeSkipData build() => _build(); + + _$GHeroMergeSkipData _build() { + _$GHeroMergeSkipData _$result; + try { + _$result = _$v ?? + new _$GHeroMergeSkipData._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroMergeSkipData', 'G__typename'), + hero: _hero?.build()); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'hero'; + _hero?.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroMergeSkipData', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +class _$GHeroMergeSkipData_hero extends GHeroMergeSkipData_hero { + @override + final String G__typename; + @override + final String id; + @override + final String name; + + factory _$GHeroMergeSkipData_hero( + [void Function(GHeroMergeSkipData_heroBuilder)? updates]) => + (new GHeroMergeSkipData_heroBuilder()..update(updates))._build(); + + _$GHeroMergeSkipData_hero._( + {required this.G__typename, required this.id, required this.name}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroMergeSkipData_hero', 'G__typename'); + BuiltValueNullFieldError.checkNotNull(id, r'GHeroMergeSkipData_hero', 'id'); + BuiltValueNullFieldError.checkNotNull( + name, r'GHeroMergeSkipData_hero', 'name'); + } + + @override + GHeroMergeSkipData_hero rebuild( + void Function(GHeroMergeSkipData_heroBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroMergeSkipData_heroBuilder toBuilder() => + new GHeroMergeSkipData_heroBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroMergeSkipData_hero && + G__typename == other.G__typename && + id == other.id && + name == other.name; + } + + @override + int get hashCode { + return $jf( + $jc($jc($jc(0, G__typename.hashCode), id.hashCode), name.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroMergeSkipData_hero') + ..add('G__typename', G__typename) + ..add('id', id) + ..add('name', name)) + .toString(); + } +} + +class GHeroMergeSkipData_heroBuilder + implements + Builder { + _$GHeroMergeSkipData_hero? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + String? _id; + String? get id => _$this._id; + set id(String? id) => _$this._id = id; + + String? _name; + String? get name => _$this._name; + set name(String? name) => _$this._name = name; + + GHeroMergeSkipData_heroBuilder() { + GHeroMergeSkipData_hero._initializeBuilder(this); + } + + GHeroMergeSkipData_heroBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _id = $v.id; + _name = $v.name; + _$v = null; + } + return this; + } + + @override + void replace(GHeroMergeSkipData_hero other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroMergeSkipData_hero; + } + + @override + void update(void Function(GHeroMergeSkipData_heroBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroMergeSkipData_hero build() => _build(); + + _$GHeroMergeSkipData_hero _build() { + final _$result = _$v ?? + new _$GHeroMergeSkipData_hero._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroMergeSkipData_hero', 'G__typename'), + id: BuiltValueNullFieldError.checkNotNull( + id, r'GHeroMergeSkipData_hero', 'id'), + name: BuiltValueNullFieldError.checkNotNull( + name, r'GHeroMergeSkipData_hero', 'name')); + replace(_$result); + return _$result; + } +} + +// ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.req.gql.dart b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.req.gql.dart new file mode 100644 index 00000000..d4b63542 --- /dev/null +++ b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.req.gql.dart @@ -0,0 +1,36 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' + as _i4; +import 'package:end_to_end_test/merge/__generated__/merge_selection_sets.graphql_skip.ast.gql.dart' + as _i2; +import 'package:end_to_end_test/merge/__generated__/merge_selection_sets.graphql_skip.var.gql.dart' + as _i3; +import 'package:gql_exec/gql_exec.dart' as _i1; + +part 'merge_selection_sets.graphql_skip.req.gql.g.dart'; + +abstract class GHeroMergeSkip + implements Built { + GHeroMergeSkip._(); + + factory GHeroMergeSkip([Function(GHeroMergeSkipBuilder b) updates]) = + _$GHeroMergeSkip; + + static void _initializeBuilder(GHeroMergeSkipBuilder b) => b + ..operation = + _i1.Operation(document: _i2.document, operationName: 'HeroMergeSkip'); + _i3.GHeroMergeSkipVars get vars; + _i1.Operation get operation; + static Serializer get serializer => + _$gHeroMergeSkipSerializer; + Map toJson() => + (_i4.serializers.serializeWith(GHeroMergeSkip.serializer, this) + as Map); + static GHeroMergeSkip? fromJson(Map json) => + _i4.serializers.deserializeWith(GHeroMergeSkip.serializer, json); +} diff --git a/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.req.gql.g.dart b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.req.gql.g.dart new file mode 100644 index 00000000..66374050 --- /dev/null +++ b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.req.gql.g.dart @@ -0,0 +1,173 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'merge_selection_sets.graphql_skip.req.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroMergeSkipSerializer = + new _$GHeroMergeSkipSerializer(); + +class _$GHeroMergeSkipSerializer + implements StructuredSerializer { + @override + final Iterable types = const [GHeroMergeSkip, _$GHeroMergeSkip]; + @override + final String wireName = 'GHeroMergeSkip'; + + @override + Iterable serialize(Serializers serializers, GHeroMergeSkip object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + 'vars', + serializers.serialize(object.vars, + specifiedType: const FullType(_i3.GHeroMergeSkipVars)), + 'operation', + serializers.serialize(object.operation, + specifiedType: const FullType(_i1.Operation)), + ]; + + return result; + } + + @override + GHeroMergeSkip deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroMergeSkipBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case 'vars': + result.vars.replace(serializers.deserialize(value, + specifiedType: const FullType(_i3.GHeroMergeSkipVars))! + as _i3.GHeroMergeSkipVars); + break; + case 'operation': + result.operation = serializers.deserialize(value, + specifiedType: const FullType(_i1.Operation))! as _i1.Operation; + break; + } + } + + return result.build(); + } +} + +class _$GHeroMergeSkip extends GHeroMergeSkip { + @override + final _i3.GHeroMergeSkipVars vars; + @override + final _i1.Operation operation; + + factory _$GHeroMergeSkip([void Function(GHeroMergeSkipBuilder)? updates]) => + (new GHeroMergeSkipBuilder()..update(updates))._build(); + + _$GHeroMergeSkip._({required this.vars, required this.operation}) + : super._() { + BuiltValueNullFieldError.checkNotNull(vars, r'GHeroMergeSkip', 'vars'); + BuiltValueNullFieldError.checkNotNull( + operation, r'GHeroMergeSkip', 'operation'); + } + + @override + GHeroMergeSkip rebuild(void Function(GHeroMergeSkipBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroMergeSkipBuilder toBuilder() => + new GHeroMergeSkipBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroMergeSkip && + vars == other.vars && + operation == other.operation; + } + + @override + int get hashCode { + return $jf($jc($jc(0, vars.hashCode), operation.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroMergeSkip') + ..add('vars', vars) + ..add('operation', operation)) + .toString(); + } +} + +class GHeroMergeSkipBuilder + implements Builder { + _$GHeroMergeSkip? _$v; + + _i3.GHeroMergeSkipVarsBuilder? _vars; + _i3.GHeroMergeSkipVarsBuilder get vars => + _$this._vars ??= new _i3.GHeroMergeSkipVarsBuilder(); + set vars(_i3.GHeroMergeSkipVarsBuilder? vars) => _$this._vars = vars; + + _i1.Operation? _operation; + _i1.Operation? get operation => _$this._operation; + set operation(_i1.Operation? operation) => _$this._operation = operation; + + GHeroMergeSkipBuilder() { + GHeroMergeSkip._initializeBuilder(this); + } + + GHeroMergeSkipBuilder get _$this { + final $v = _$v; + if ($v != null) { + _vars = $v.vars.toBuilder(); + _operation = $v.operation; + _$v = null; + } + return this; + } + + @override + void replace(GHeroMergeSkip other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroMergeSkip; + } + + @override + void update(void Function(GHeroMergeSkipBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroMergeSkip build() => _build(); + + _$GHeroMergeSkip _build() { + _$GHeroMergeSkip _$result; + try { + _$result = _$v ?? + new _$GHeroMergeSkip._( + vars: vars.build(), + operation: BuiltValueNullFieldError.checkNotNull( + operation, r'GHeroMergeSkip', 'operation')); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'vars'; + vars.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroMergeSkip', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +// ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.var.gql.dart b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.var.gql.dart new file mode 100644 index 00000000..cb8bb3b2 --- /dev/null +++ b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.var.gql.dart @@ -0,0 +1,27 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' + as _i1; + +part 'merge_selection_sets.graphql_skip.var.gql.g.dart'; + +abstract class GHeroMergeSkipVars + implements Built { + GHeroMergeSkipVars._(); + + factory GHeroMergeSkipVars([Function(GHeroMergeSkipVarsBuilder b) updates]) = + _$GHeroMergeSkipVars; + + bool get withName; + static Serializer get serializer => + _$gHeroMergeSkipVarsSerializer; + Map toJson() => + (_i1.serializers.serializeWith(GHeroMergeSkipVars.serializer, this) + as Map); + static GHeroMergeSkipVars? fromJson(Map json) => + _i1.serializers.deserializeWith(GHeroMergeSkipVars.serializer, json); +} diff --git a/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.var.gql.g.dart b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.var.gql.g.dart new file mode 100644 index 00000000..8a18d974 --- /dev/null +++ b/codegen/end_to_end_test/lib/merge/__generated__/merge_selection_sets.graphql_skip.var.gql.g.dart @@ -0,0 +1,139 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'merge_selection_sets.graphql_skip.var.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroMergeSkipVarsSerializer = + new _$GHeroMergeSkipVarsSerializer(); + +class _$GHeroMergeSkipVarsSerializer + implements StructuredSerializer { + @override + final Iterable types = const [GHeroMergeSkipVars, _$GHeroMergeSkipVars]; + @override + final String wireName = 'GHeroMergeSkipVars'; + + @override + Iterable serialize( + Serializers serializers, GHeroMergeSkipVars object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + 'withName', + serializers.serialize(object.withName, + specifiedType: const FullType(bool)), + ]; + + return result; + } + + @override + GHeroMergeSkipVars deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroMergeSkipVarsBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case 'withName': + result.withName = serializers.deserialize(value, + specifiedType: const FullType(bool))! as bool; + break; + } + } + + return result.build(); + } +} + +class _$GHeroMergeSkipVars extends GHeroMergeSkipVars { + @override + final bool withName; + + factory _$GHeroMergeSkipVars( + [void Function(GHeroMergeSkipVarsBuilder)? updates]) => + (new GHeroMergeSkipVarsBuilder()..update(updates))._build(); + + _$GHeroMergeSkipVars._({required this.withName}) : super._() { + BuiltValueNullFieldError.checkNotNull( + withName, r'GHeroMergeSkipVars', 'withName'); + } + + @override + GHeroMergeSkipVars rebuild( + void Function(GHeroMergeSkipVarsBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroMergeSkipVarsBuilder toBuilder() => + new GHeroMergeSkipVarsBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroMergeSkipVars && withName == other.withName; + } + + @override + int get hashCode { + return $jf($jc(0, withName.hashCode)); + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroMergeSkipVars') + ..add('withName', withName)) + .toString(); + } +} + +class GHeroMergeSkipVarsBuilder + implements Builder { + _$GHeroMergeSkipVars? _$v; + + bool? _withName; + bool? get withName => _$this._withName; + set withName(bool? withName) => _$this._withName = withName; + + GHeroMergeSkipVarsBuilder(); + + GHeroMergeSkipVarsBuilder get _$this { + final $v = _$v; + if ($v != null) { + _withName = $v.withName; + _$v = null; + } + return this; + } + + @override + void replace(GHeroMergeSkipVars other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroMergeSkipVars; + } + + @override + void update(void Function(GHeroMergeSkipVarsBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroMergeSkipVars build() => _build(); + + _$GHeroMergeSkipVars _build() { + final _$result = _$v ?? + new _$GHeroMergeSkipVars._( + withName: BuiltValueNullFieldError.checkNotNull( + withName, r'GHeroMergeSkipVars', 'withName')); + replace(_$result); + return _$result; + } +} + +// ignore_for_file: always_put_control_body_on_new_line,always_specify_types,annotate_overrides,avoid_annotating_with_dynamic,avoid_as,avoid_catches_without_on_clauses,avoid_returning_this,deprecated_member_use_from_same_package,lines_longer_than_80_chars,no_leading_underscores_for_local_identifiers,omit_local_variable_types,prefer_expression_function_bodies,sort_constructors_first,test_types_in_equals,unnecessary_const,unnecessary_new,unnecessary_lambdas diff --git a/codegen/end_to_end_test/lib/merge/merge_selection_sets.graphql.graphql b/codegen/end_to_end_test/lib/merge/merge_selection_sets.graphql.graphql new file mode 100644 index 00000000..16f4de03 --- /dev/null +++ b/codegen/end_to_end_test/lib/merge/merge_selection_sets.graphql.graphql @@ -0,0 +1,9 @@ +query HeroMerge { + hero { + id + } + hero { + name + } + +} \ No newline at end of file diff --git a/codegen/end_to_end_test/lib/merge/merge_selection_sets.graphql_skip.graphql b/codegen/end_to_end_test/lib/merge/merge_selection_sets.graphql_skip.graphql new file mode 100644 index 00000000..3a92b913 --- /dev/null +++ b/codegen/end_to_end_test/lib/merge/merge_selection_sets.graphql_skip.graphql @@ -0,0 +1,8 @@ +query HeroMergeSkip($withName: Boolean!) { + hero { + id + } + hero @include(if: $withName) { + name + } +} \ No newline at end of file diff --git a/codegen/end_to_end_test/pubspec.yaml b/codegen/end_to_end_test/pubspec.yaml index 51141539..a28cf882 100644 --- a/codegen/end_to_end_test/pubspec.yaml +++ b/codegen/end_to_end_test/pubspec.yaml @@ -15,3 +15,38 @@ dev_dependencies: build: ^2.0.0 build_runner: ^2.0.0 test: ^1.16.8 +dependency_overrides: + gql_pedantic: + path: ../../gql_pedantic + gql: + path: ../../gql + gql_exec: + path: ../../links/gql_exec + gql_link: + path: ../../links/gql_link + gql_websocket_link: + path: ../../links/gql_websocket_link + gql_transform_link: + path: ../../links/gql_transform_link + gql_http_link: + path: ../../links/gql_http_link + gql_error_link: + path: ../../links/gql_error_link + gql_code_builder: + path: ../gql_code_builder + gql_build: + path: ../gql_build + gql_example_http_auth_link: + path: ../../examples/gql_example_http_auth_link + gql_dio_link: + path: ../../links/gql_dio_link + gql_example_dio_link: + path: ../../examples/gql_example_dio_link + gql_example_cli_github: + path: ../../examples/gql_example_cli_github + gql_example_cli: + path: ../../examples/gql_example_cli + gql_example_build: + path: ../../examples/gql_example_build + gql_dedupe_link: + path: ../../links/gql_dedupe_link diff --git a/codegen/gql_build/pubspec.yaml b/codegen/gql_build/pubspec.yaml index d2f15e42..d1ae5381 100644 --- a/codegen/gql_build/pubspec.yaml +++ b/codegen/gql_build/pubspec.yaml @@ -20,3 +20,38 @@ dependencies: dev_dependencies: build_test: ^2.0.0 gql_pedantic: ^1.0.2 +dependency_overrides: + gql_pedantic: + path: ../../gql_pedantic + gql: + path: ../../gql + gql_exec: + path: ../../links/gql_exec + gql_link: + path: ../../links/gql_link + gql_websocket_link: + path: ../../links/gql_websocket_link + gql_transform_link: + path: ../../links/gql_transform_link + gql_http_link: + path: ../../links/gql_http_link + gql_error_link: + path: ../../links/gql_error_link + gql_code_builder: + path: ../gql_code_builder + gql_example_http_auth_link: + path: ../../examples/gql_example_http_auth_link + gql_dio_link: + path: ../../links/gql_dio_link + gql_example_dio_link: + path: ../../examples/gql_example_dio_link + gql_example_cli_github: + path: ../../examples/gql_example_cli_github + gql_example_cli: + path: ../../examples/gql_example_cli + gql_example_build: + path: ../../examples/gql_example_build + gql_dedupe_link: + path: ../../links/gql_dedupe_link + end_to_end_test: + path: ../end_to_end_test diff --git a/codegen/gql_code_builder/lib/src/inline_fragment_classes.dart b/codegen/gql_code_builder/lib/src/inline_fragment_classes.dart index 754cefa6..3fa2ff8f 100644 --- a/codegen/gql_code_builder/lib/src/inline_fragment_classes.dart +++ b/codegen/gql_code_builder/lib/src/inline_fragment_classes.dart @@ -17,6 +17,7 @@ List buildInlineFragmentClasses({ required List fieldGetters, required List selections, required SourceNode schemaSource, + required SourceNode documentSource, required String type, required Map typeOverrides, required Map fragmentMap, @@ -57,6 +58,7 @@ List buildInlineFragmentClasses({ ), fragmentMap: fragmentMap, schemaSource: schemaSource, + docSource: documentSource, type: type, typeOverrides: typeOverrides, superclassSelections: { @@ -80,6 +82,7 @@ List buildInlineFragmentClasses({ ), fragmentMap: fragmentMap, schemaSource: schemaSource, + docSource: documentSource, type: inlineFragment.typeCondition!.on.name.value, typeOverrides: typeOverrides, superclassSelections: { diff --git a/codegen/gql_code_builder/lib/src/operation/data.dart b/codegen/gql_code_builder/lib/src/operation/data.dart index e9391b8a..1ec8e605 100644 --- a/codegen/gql_code_builder/lib/src/operation/data.dart +++ b/codegen/gql_code_builder/lib/src/operation/data.dart @@ -1,5 +1,7 @@ import "package:code_builder/code_builder.dart"; +import "package:collection/collection.dart"; import "package:gql/ast.dart"; +import "package:gql/language.dart"; import "../../source.dart"; import "../built_class.dart"; @@ -17,6 +19,18 @@ List buildOperationDataClasses( } final fragmentMap = _fragmentMap(docSource); + + final fields = collectFields( + docSource, + schemaSource, + getTypeDefinitionNode( + schemaSource.flatDocument, _operationType(schemaSource.flatDocument, op))!, + op.selectionSet.selections, + {}); + + print( + "${op.name?.value} ${fields}"); + return buildSelectionSetDataClasses( name: "${op.name!.value}Data", selections: mergeSelections( @@ -24,6 +38,7 @@ List buildOperationDataClasses( fragmentMap, ), schemaSource: schemaSource, + docSource: docSource, type: _operationType( schemaSource.document, op, @@ -51,6 +66,7 @@ List buildFragmentDataClasses( name: frag.name.value, selections: selections, schemaSource: schemaSource, + docSource: docSource, type: frag.typeCondition.on.name.value, typeOverrides: typeOverrides, fragmentMap: fragmentMap, @@ -62,6 +78,7 @@ List buildFragmentDataClasses( name: "${frag.name.value}Data", selections: selections, schemaSource: schemaSource, + docSource: docSource, type: frag.typeCondition.on.name.value, typeOverrides: typeOverrides, fragmentMap: fragmentMap, @@ -93,8 +110,7 @@ String _operationType( } Map _fragmentMap(SourceNode source) => { - for (var def - in source.document.definitions.whereType()) + for (var def in source.document.definitions.whereType()) def.name.value: SourceSelections( url: source.url, selections: def.selectionSet.selections, @@ -115,12 +131,18 @@ List buildSelectionSetDataClasses({ required String name, required List selections, required SourceNode schemaSource, + required SourceNode docSource, required String type, required Map typeOverrides, required Map fragmentMap, required Map superclassSelections, bool built = true, }) { + final fields = collectFields(docSource, schemaSource, + getTypeDefinitionNode(schemaSource.flatDocument, type)!, selections, {}); + + print( + "${name} ${fields}"); for (final selection in selections.whereType()) { if (!fragmentMap.containsKey(selection.name.value)) { throw Exception( @@ -135,9 +157,8 @@ List buildSelectionSetDataClasses({ ); } - final superclassSelectionNodes = superclassSelections.values - .expand((selections) => selections.selections) - .toSet(); + final superclassSelectionNodes = + superclassSelections.values.expand((selections) => selections.selections).toSet(); final fieldGetters = selections.whereType().map( (node) { @@ -151,8 +172,7 @@ List buildSelectionSetDataClasses({ node.name.value, ); final hasSkipOrInclude = node.directives.any( - (directive) => - directive.name.value == "skip" || directive.name.value == "include", + (directive) => directive.name.value == "skip" || directive.name.value == "include", ); return buildGetter( nameNode: nameNode, @@ -176,6 +196,7 @@ List buildSelectionSetDataClasses({ fieldGetters: fieldGetters, selections: selections, schemaSource: schemaSource, + documentSource: docSource, type: type, typeOverrides: typeOverrides, fragmentMap: fragmentMap, @@ -227,6 +248,7 @@ List buildSelectionSetDataClasses({ selections: field.selectionSet!.selections, fragmentMap: fragmentMap, schemaSource: schemaSource, + docSource: docSource, type: unwrapTypeNode( _getFieldTypeNode( getTypeDefinitionNode( @@ -333,9 +355,7 @@ Map _fragmentSelectionsForField( "${entry.key}_${field.alias?.value ?? field.name.value}", SourceSelections( url: entry.value.url, - selections: selection.selectionSet!.selections - .whereType() - .toList(), + selections: selection.selectionSet!.selections.whereType().toList(), ), ), ), @@ -368,3 +388,161 @@ TypeNode _getFieldTypeNode( ) .type; } + +class FieldNoteWithNullability { + final FieldNode field; + final bool isMaybeSkipped; + + FieldNoteWithNullability(this.field, this.isMaybeSkipped); + + @override + bool operator ==(Object other) => + identical(this, other) || + other is FieldNoteWithNullability && + runtimeType == other.runtimeType && + field == other.field && + isMaybeSkipped == other.isMaybeSkipped; + + @override + int get hashCode => field.hashCode ^ isMaybeSkipped.hashCode; + + @override + String toString() => + "FieldNoteWithNullability{field: ${field.name.value}, forceNullable: $isMaybeSkipped}"; + + FieldNoteWithNullability merge(bool isMaybeSkipped) => + FieldNoteWithNullability(field, this.isMaybeSkipped && isMaybeSkipped); +} + + + + +//https://spec.graphql.org/draft/#CollectFields() +Map> collectFields( + SourceNode document, + SourceNode schema, + TypeDefinitionNode objectType, + List selectionSet, + Set visitedFragments, +) { + //Initialize groupedFields to an empty ordered map of lists. + final groupedFields = >{}; + //For each selection in selectionSet: + for (final selection in selectionSet) { + + final isMaybeSkipped = selection.directives.any( + (directive) => const {"skip", "include"}.contains(directive.name.value), + ); + + //If the selection is a field: + if (selection is FieldNode) { + //If the selection is not skipped or already present in groupedFields: + if (!groupedFields.containsKey(selection.name.value)) { + //Append the field to groupedFields under the response name of the aliased field or the field name. + groupedFields + .putIfAbsent(selection.alias?.value ?? selection.name.value, () => []) + .add(FieldNoteWithNullability(selection, isMaybeSkipped)); + } else { + print("Skipping field ${selection.name.value} because it's already present"); + } + } + //If the selection is an inline fragment: + else if (selection is InlineFragmentNode) { + //Let fragmentType be the type condition on selection. + final fragmentType = selection.typeCondition; + //If fragmentType is not null and DoesFragmentTypeApply(objectType, fragmentType) is false, continue with the next selection in selectionSet. + if (fragmentType != null && + !doesFragmentTypeApply(objectType, fragmentType, schema.flatDocument)) { + continue; + } + //Let fragmentSelectionSet be the top-level selection set of selection. + final fragmentSelectionSet = selection.selectionSet; + //Let fragmentGroupedFieldSet be the result of calling CollectFields(objectType, fragmentSelectionSet, variableValues, visitedFragments). + final fragmentGroupedFieldSet = collectFields( + document, schema, objectType, fragmentSelectionSet.selections, visitedFragments); + //For each fragmentGroup in fragmentGroupedFieldSet: + for (final fragmentGroup in fragmentGroupedFieldSet.entries) { + //If fragmentGroup is not already present in groupedFields: + if (!groupedFields.containsKey(fragmentGroup.key)) { + //Let responseKey be the response key shared by all fields in fragmentGroup. + final responseKey = fragmentGroup.key; + //Let groupForResponseKey be the list in groupedFields for responseKey; if no such list exists, create it as an empty list. + final groupForResponseKey = groupedFields.putIfAbsent(responseKey, () => []); + final values = fragmentGroup.value.map((e) => FieldNoteWithNullability(e.field, isMaybeSkipped || e.isMaybeSkipped)).toList(); + //Append all items in fragmentGroup to groupForResponseKey. + groupForResponseKey.addAll(values); + }else { + print("Skipping field ${fragmentGroup.key} because it's already present 2"); + } + } + } + + + //If the selection is a fragment spread: + else if (selection is FragmentSpreadNode) { + print("${selection.name.value} forceNullable: $isMaybeSkipped"); + //Let fragmentSpreadName be the name of selection. + final fragmentSpreadName = selection.name.value; + //If fragmentSpreadName is in visitedFragments, continue with the next selection in selectionSet. + if (visitedFragments.contains(fragmentSpreadName)) { + print("Skipping fragment $fragmentSpreadName because it's already visited"); + continue; + } + //Add fragmentSpreadName to visitedFragments. + visitedFragments.add(fragmentSpreadName); + //Let fragment be the Fragment in the current Document whose name is fragmentSpreadName. + final fragment = document.flatDocument.definitions.firstWhereOrNull((definition) => + definition is FragmentDefinitionNode && definition.name.value == fragmentSpreadName) + as FragmentDefinitionNode?; + //If no such fragment exists, continue with the next selection in selectionSet. + if (fragment == null) { + continue; + } + //Let fragmentType be the type condition on fragment. + final fragmentType = fragment.typeCondition; + //If DoesFragmentTypeApply(objectType, fragmentType) is false, continue with the next selection in selectionSet. + if (!doesFragmentTypeApply(objectType, fragmentType, schema.flatDocument)) { + continue; + } + //Let fragmentSelectionSet be the top-level selection set of fragment. + final fragmentSelectionSet = fragment.selectionSet; + //Let fragmentGroupedFieldSet be the result of calling CollectFields(objectType, fragmentSelectionSet, variableValues, visitedFragments). + final fragmentGroupedFieldSet = collectFields( + document, schema, objectType, fragmentSelectionSet.selections, visitedFragments); + //For each fragmentGroup in fragmentGroupedFieldSet: + for (final fragmentGroup in fragmentGroupedFieldSet.entries) { + //Let responseKey be the response key shared by all fields in fragmentGroup. + final responseKey = fragmentGroup.key; + //Let groupForResponseKey be the list in groupedFields for responseKey; if no such list exists, create it as an empty list. + final groupForResponseKey = groupedFields.putIfAbsent(responseKey, () => []); + //Append all items in fragmentGroup to groupForResponseKey. + + final values = fragmentGroup.value.map((e) => FieldNoteWithNullability(e.field, isMaybeSkipped || e.isMaybeSkipped)).toList(); + + groupForResponseKey.addAll(values); + } + } + } + //Return groupedFields. + return groupedFields; +} + + +//https://spec.graphql.org/draft/#DoesFragmentTypeApply() +bool doesFragmentTypeApply( + TypeDefinitionNode objectType, TypeConditionNode fragmentConditionType, DocumentNode schema) { + final fragmentType = schema.definitions.firstWhereOrNull((definition) => + definition is TypeDefinitionNode && + definition.name.value == fragmentConditionType.on.name.value) as TypeDefinitionNode?; + + if (fragmentType is UnionTypeDefinitionNode) { + return fragmentType.types.any((type) => type.name.value == objectType.name.value); + } else if (fragmentType is InterfaceTypeDefinitionNode) { + return objectType is ObjectTypeDefinitionNode && + objectType.interfaces.any((type) => type.name.value == fragmentType.name.value); + } else if (fragmentType is ObjectTypeDefinitionNode) { + return objectType.name.value == fragmentType.name.value; + } else { + throw Exception("Unknown fragment type ${fragmentType.runtimeType}"); + } +} diff --git a/codegen/gql_code_builder/pubspec.yaml b/codegen/gql_code_builder/pubspec.yaml index 22ee4ebb..bf830821 100644 --- a/codegen/gql_code_builder/pubspec.yaml +++ b/codegen/gql_code_builder/pubspec.yaml @@ -17,3 +17,38 @@ dev_dependencies: build_runner: ^2.1.0 gql_pedantic: ^1.0.2 test: ^1.16.8 +dependency_overrides: + gql_pedantic: + path: ../../gql_pedantic + gql: + path: ../../gql + gql_exec: + path: ../../links/gql_exec + gql_link: + path: ../../links/gql_link + gql_websocket_link: + path: ../../links/gql_websocket_link + gql_transform_link: + path: ../../links/gql_transform_link + gql_http_link: + path: ../../links/gql_http_link + gql_error_link: + path: ../../links/gql_error_link + gql_build: + path: ../gql_build + gql_example_http_auth_link: + path: ../../examples/gql_example_http_auth_link + gql_dio_link: + path: ../../links/gql_dio_link + gql_example_dio_link: + path: ../../examples/gql_example_dio_link + gql_example_cli_github: + path: ../../examples/gql_example_cli_github + gql_example_cli: + path: ../../examples/gql_example_cli + gql_example_build: + path: ../../examples/gql_example_build + gql_dedupe_link: + path: ../../links/gql_dedupe_link + end_to_end_test: + path: ../end_to_end_test diff --git a/examples/gql_example_build/pubspec.yaml b/examples/gql_example_build/pubspec.yaml index 091f1009..89ecefaf 100644 --- a/examples/gql_example_build/pubspec.yaml +++ b/examples/gql_example_build/pubspec.yaml @@ -6,3 +6,38 @@ dev_dependencies: gql_build: ^0.6.0 gql_pedantic: ^1.0.2 test: ^1.0.0 +dependency_overrides: + gql_pedantic: + path: ../../gql_pedantic + gql: + path: ../../gql + gql_exec: + path: ../../links/gql_exec + gql_link: + path: ../../links/gql_link + gql_websocket_link: + path: ../../links/gql_websocket_link + gql_transform_link: + path: ../../links/gql_transform_link + gql_http_link: + path: ../../links/gql_http_link + gql_error_link: + path: ../../links/gql_error_link + gql_code_builder: + path: ../../codegen/gql_code_builder + gql_build: + path: ../../codegen/gql_build + gql_example_http_auth_link: + path: ../gql_example_http_auth_link + gql_dio_link: + path: ../../links/gql_dio_link + gql_example_dio_link: + path: ../gql_example_dio_link + gql_example_cli_github: + path: ../gql_example_cli_github + gql_example_cli: + path: ../gql_example_cli + gql_dedupe_link: + path: ../../links/gql_dedupe_link + end_to_end_test: + path: ../../codegen/end_to_end_test diff --git a/examples/gql_example_cli/pubspec.yaml b/examples/gql_example_cli/pubspec.yaml index f8dbc8db..a0a92629 100644 --- a/examples/gql_example_cli/pubspec.yaml +++ b/examples/gql_example_cli/pubspec.yaml @@ -11,3 +11,38 @@ dev_dependencies: build_runner: ^2.0.0 gql_build: ^0.6.0 gql_pedantic: ^1.0.2 +dependency_overrides: + gql_pedantic: + path: ../../gql_pedantic + gql: + path: ../../gql + gql_exec: + path: ../../links/gql_exec + gql_link: + path: ../../links/gql_link + gql_websocket_link: + path: ../../links/gql_websocket_link + gql_transform_link: + path: ../../links/gql_transform_link + gql_http_link: + path: ../../links/gql_http_link + gql_error_link: + path: ../../links/gql_error_link + gql_code_builder: + path: ../../codegen/gql_code_builder + gql_build: + path: ../../codegen/gql_build + gql_example_http_auth_link: + path: ../gql_example_http_auth_link + gql_dio_link: + path: ../../links/gql_dio_link + gql_example_dio_link: + path: ../gql_example_dio_link + gql_example_cli_github: + path: ../gql_example_cli_github + gql_example_build: + path: ../gql_example_build + gql_dedupe_link: + path: ../../links/gql_dedupe_link + end_to_end_test: + path: ../../codegen/end_to_end_test diff --git a/examples/gql_example_cli_github/pubspec.yaml b/examples/gql_example_cli_github/pubspec.yaml index 2309b863..7e28ce96 100644 --- a/examples/gql_example_cli_github/pubspec.yaml +++ b/examples/gql_example_cli_github/pubspec.yaml @@ -12,3 +12,38 @@ dev_dependencies: build_runner: ^2.0.0 gql_build: ^0.6.0 gql_pedantic: ^1.0.2 +dependency_overrides: + gql_pedantic: + path: ../../gql_pedantic + gql: + path: ../../gql + gql_exec: + path: ../../links/gql_exec + gql_link: + path: ../../links/gql_link + gql_websocket_link: + path: ../../links/gql_websocket_link + gql_transform_link: + path: ../../links/gql_transform_link + gql_http_link: + path: ../../links/gql_http_link + gql_error_link: + path: ../../links/gql_error_link + gql_code_builder: + path: ../../codegen/gql_code_builder + gql_build: + path: ../../codegen/gql_build + gql_example_http_auth_link: + path: ../gql_example_http_auth_link + gql_dio_link: + path: ../../links/gql_dio_link + gql_example_dio_link: + path: ../gql_example_dio_link + gql_example_cli: + path: ../gql_example_cli + gql_example_build: + path: ../gql_example_build + gql_dedupe_link: + path: ../../links/gql_dedupe_link + end_to_end_test: + path: ../../codegen/end_to_end_test diff --git a/examples/gql_example_dio_link/pubspec.yaml b/examples/gql_example_dio_link/pubspec.yaml index 87ba0790..c6a10d3a 100644 --- a/examples/gql_example_dio_link/pubspec.yaml +++ b/examples/gql_example_dio_link/pubspec.yaml @@ -8,3 +8,38 @@ dependencies: gql_link: ^0.5.0 gql_exec: ^0.4.0 gql_dio_link: ^0.2.3 +dependency_overrides: + gql_pedantic: + path: ../../gql_pedantic + gql: + path: ../../gql + gql_exec: + path: ../../links/gql_exec + gql_link: + path: ../../links/gql_link + gql_websocket_link: + path: ../../links/gql_websocket_link + gql_transform_link: + path: ../../links/gql_transform_link + gql_http_link: + path: ../../links/gql_http_link + gql_error_link: + path: ../../links/gql_error_link + gql_code_builder: + path: ../../codegen/gql_code_builder + gql_build: + path: ../../codegen/gql_build + gql_example_http_auth_link: + path: ../gql_example_http_auth_link + gql_dio_link: + path: ../../links/gql_dio_link + gql_example_cli_github: + path: ../gql_example_cli_github + gql_example_cli: + path: ../gql_example_cli + gql_example_build: + path: ../gql_example_build + gql_dedupe_link: + path: ../../links/gql_dedupe_link + end_to_end_test: + path: ../../codegen/end_to_end_test diff --git a/examples/gql_example_flutter/pubspec.yaml b/examples/gql_example_flutter/pubspec.yaml index 8c3bff69..f994c148 100644 --- a/examples/gql_example_flutter/pubspec.yaml +++ b/examples/gql_example_flutter/pubspec.yaml @@ -16,5 +16,42 @@ dev_dependencies: gql_build: ^0.6.0 flutter_test: sdk: flutter +dependency_overrides: + gql_pedantic: + path: ../../gql_pedantic + gql: + path: ../../gql + gql_exec: + path: ../../links/gql_exec + gql_link: + path: ../../links/gql_link + gql_websocket_link: + path: ../../links/gql_websocket_link + gql_transform_link: + path: ../../links/gql_transform_link + gql_http_link: + path: ../../links/gql_http_link + gql_error_link: + path: ../../links/gql_error_link + gql_code_builder: + path: ../../codegen/gql_code_builder + gql_build: + path: ../../codegen/gql_build + gql_example_http_auth_link: + path: ../gql_example_http_auth_link + gql_dio_link: + path: ../../links/gql_dio_link + gql_example_dio_link: + path: ../gql_example_dio_link + gql_example_cli_github: + path: ../gql_example_cli_github + gql_example_cli: + path: ../gql_example_cli + gql_example_build: + path: ../gql_example_build + gql_dedupe_link: + path: ../../links/gql_dedupe_link + end_to_end_test: + path: ../../codegen/end_to_end_test flutter: uses-material-design: true diff --git a/examples/gql_example_http_auth_link/pubspec.yaml b/examples/gql_example_http_auth_link/pubspec.yaml index b44b566e..fb7f7989 100644 --- a/examples/gql_example_http_auth_link/pubspec.yaml +++ b/examples/gql_example_http_auth_link/pubspec.yaml @@ -12,3 +12,38 @@ dependencies: dev_dependencies: gql_build: ^0.6.0 gql_pedantic: ^1.0.2 +dependency_overrides: + gql_pedantic: + path: ../../gql_pedantic + gql: + path: ../../gql + gql_exec: + path: ../../links/gql_exec + gql_link: + path: ../../links/gql_link + gql_websocket_link: + path: ../../links/gql_websocket_link + gql_transform_link: + path: ../../links/gql_transform_link + gql_http_link: + path: ../../links/gql_http_link + gql_error_link: + path: ../../links/gql_error_link + gql_code_builder: + path: ../../codegen/gql_code_builder + gql_build: + path: ../../codegen/gql_build + gql_dio_link: + path: ../../links/gql_dio_link + gql_example_dio_link: + path: ../gql_example_dio_link + gql_example_cli_github: + path: ../gql_example_cli_github + gql_example_cli: + path: ../gql_example_cli + gql_example_build: + path: ../gql_example_build + gql_dedupe_link: + path: ../../links/gql_dedupe_link + end_to_end_test: + path: ../../codegen/end_to_end_test diff --git a/gql/lib/src/ast/ast.dart b/gql/lib/src/ast/ast.dart index 1662fae0..6875ae6c 100644 --- a/gql/lib/src/ast/ast.dart +++ b/gql/lib/src/ast/ast.dart @@ -169,6 +169,8 @@ class SelectionSetNode extends Node { abstract class SelectionNode extends Node { const SelectionNode(FileSpan? span) : super(span); + + List get directives; } class FieldNode extends SelectionNode { @@ -178,6 +180,7 @@ class FieldNode extends SelectionNode { final List arguments; + @override final List directives; final SelectionSetNode? selectionSet; @@ -228,6 +231,7 @@ class ArgumentNode extends Node { class FragmentSpreadNode extends SelectionNode { final NameNode name; + @override final List directives; const FragmentSpreadNode({ @@ -249,6 +253,7 @@ class FragmentSpreadNode extends SelectionNode { class InlineFragmentNode extends SelectionNode { final TypeConditionNode? typeCondition; + @override final List directives; final SelectionSetNode selectionSet; diff --git a/gql/pubspec.yaml b/gql/pubspec.yaml index 0ba09aab..25e465f5 100644 --- a/gql/pubspec.yaml +++ b/gql/pubspec.yaml @@ -12,3 +12,38 @@ dependencies: dev_dependencies: gql_pedantic: ^1.0.2 test: ^1.16.2 +dependency_overrides: + gql_pedantic: + path: ../gql_pedantic + gql_exec: + path: ../links/gql_exec + gql_link: + path: ../links/gql_link + gql_websocket_link: + path: ../links/gql_websocket_link + gql_transform_link: + path: ../links/gql_transform_link + gql_http_link: + path: ../links/gql_http_link + gql_error_link: + path: ../links/gql_error_link + gql_code_builder: + path: ../codegen/gql_code_builder + gql_build: + path: ../codegen/gql_build + gql_example_http_auth_link: + path: ../examples/gql_example_http_auth_link + gql_dio_link: + path: ../links/gql_dio_link + gql_example_dio_link: + path: ../examples/gql_example_dio_link + gql_example_cli_github: + path: ../examples/gql_example_cli_github + gql_example_cli: + path: ../examples/gql_example_cli + gql_example_build: + path: ../examples/gql_example_build + gql_dedupe_link: + path: ../links/gql_dedupe_link + end_to_end_test: + path: ../codegen/end_to_end_test diff --git a/gql_pedantic/pubspec.yaml b/gql_pedantic/pubspec.yaml index 273b3751..46329e7b 100644 --- a/gql_pedantic/pubspec.yaml +++ b/gql_pedantic/pubspec.yaml @@ -4,3 +4,38 @@ description: Even more opinionated lint rules. repository: https://github.com/gql-dart/gql environment: sdk: '>=2.7.2 <3.0.0' +dependency_overrides: + gql: + path: ../gql + gql_exec: + path: ../links/gql_exec + gql_link: + path: ../links/gql_link + gql_websocket_link: + path: ../links/gql_websocket_link + gql_transform_link: + path: ../links/gql_transform_link + gql_http_link: + path: ../links/gql_http_link + gql_error_link: + path: ../links/gql_error_link + gql_code_builder: + path: ../codegen/gql_code_builder + gql_build: + path: ../codegen/gql_build + gql_example_http_auth_link: + path: ../examples/gql_example_http_auth_link + gql_dio_link: + path: ../links/gql_dio_link + gql_example_dio_link: + path: ../examples/gql_example_dio_link + gql_example_cli_github: + path: ../examples/gql_example_cli_github + gql_example_cli: + path: ../examples/gql_example_cli + gql_example_build: + path: ../examples/gql_example_build + gql_dedupe_link: + path: ../links/gql_dedupe_link + end_to_end_test: + path: ../codegen/end_to_end_test diff --git a/links/gql_dedupe_link/pubspec.yaml b/links/gql_dedupe_link/pubspec.yaml index 6a39f391..7e24ad87 100644 --- a/links/gql_dedupe_link/pubspec.yaml +++ b/links/gql_dedupe_link/pubspec.yaml @@ -14,3 +14,38 @@ dev_dependencies: gql_pedantic: ^1.0.2 mockito: ^5.0.0-nullsafety.7 test: ^1.16.2 +dependency_overrides: + gql_pedantic: + path: ../../gql_pedantic + gql: + path: ../../gql + gql_exec: + path: ../gql_exec + gql_link: + path: ../gql_link + gql_websocket_link: + path: ../gql_websocket_link + gql_transform_link: + path: ../gql_transform_link + gql_http_link: + path: ../gql_http_link + gql_error_link: + path: ../gql_error_link + gql_code_builder: + path: ../../codegen/gql_code_builder + gql_build: + path: ../../codegen/gql_build + gql_example_http_auth_link: + path: ../../examples/gql_example_http_auth_link + gql_dio_link: + path: ../gql_dio_link + gql_example_dio_link: + path: ../../examples/gql_example_dio_link + gql_example_cli_github: + path: ../../examples/gql_example_cli_github + gql_example_cli: + path: ../../examples/gql_example_cli + gql_example_build: + path: ../../examples/gql_example_build + end_to_end_test: + path: ../../codegen/end_to_end_test diff --git a/links/gql_dio_link/pubspec.yaml b/links/gql_dio_link/pubspec.yaml index 97708fe9..d234a306 100644 --- a/links/gql_dio_link/pubspec.yaml +++ b/links/gql_dio_link/pubspec.yaml @@ -18,3 +18,38 @@ dev_dependencies: http_parser: ^4.0.0 mockito: ^5.3.0 test: ^1.14.3 +dependency_overrides: + gql_pedantic: + path: ../../gql_pedantic + gql: + path: ../../gql + gql_exec: + path: ../gql_exec + gql_link: + path: ../gql_link + gql_websocket_link: + path: ../gql_websocket_link + gql_transform_link: + path: ../gql_transform_link + gql_http_link: + path: ../gql_http_link + gql_error_link: + path: ../gql_error_link + gql_code_builder: + path: ../../codegen/gql_code_builder + gql_build: + path: ../../codegen/gql_build + gql_example_http_auth_link: + path: ../../examples/gql_example_http_auth_link + gql_example_dio_link: + path: ../../examples/gql_example_dio_link + gql_example_cli_github: + path: ../../examples/gql_example_cli_github + gql_example_cli: + path: ../../examples/gql_example_cli + gql_example_build: + path: ../../examples/gql_example_build + gql_dedupe_link: + path: ../gql_dedupe_link + end_to_end_test: + path: ../../codegen/end_to_end_test diff --git a/links/gql_error_link/pubspec.yaml b/links/gql_error_link/pubspec.yaml index 5dff3920..b1154d40 100644 --- a/links/gql_error_link/pubspec.yaml +++ b/links/gql_error_link/pubspec.yaml @@ -14,3 +14,38 @@ dev_dependencies: gql_pedantic: ^1.0.2 mockito: ^5.0.0-nullsafety.7 test: ^1.16.2 +dependency_overrides: + gql_pedantic: + path: ../../gql_pedantic + gql: + path: ../../gql + gql_exec: + path: ../gql_exec + gql_link: + path: ../gql_link + gql_websocket_link: + path: ../gql_websocket_link + gql_transform_link: + path: ../gql_transform_link + gql_http_link: + path: ../gql_http_link + gql_code_builder: + path: ../../codegen/gql_code_builder + gql_build: + path: ../../codegen/gql_build + gql_example_http_auth_link: + path: ../../examples/gql_example_http_auth_link + gql_dio_link: + path: ../gql_dio_link + gql_example_dio_link: + path: ../../examples/gql_example_dio_link + gql_example_cli_github: + path: ../../examples/gql_example_cli_github + gql_example_cli: + path: ../../examples/gql_example_cli + gql_example_build: + path: ../../examples/gql_example_build + gql_dedupe_link: + path: ../gql_dedupe_link + end_to_end_test: + path: ../../codegen/end_to_end_test diff --git a/links/gql_exec/pubspec.yaml b/links/gql_exec/pubspec.yaml index 3ef807b3..8d3de4a0 100644 --- a/links/gql_exec/pubspec.yaml +++ b/links/gql_exec/pubspec.yaml @@ -11,3 +11,38 @@ dependencies: dev_dependencies: gql_pedantic: ^1.0.2 test: ^1.16.2 +dependency_overrides: + gql_pedantic: + path: ../../gql_pedantic + gql: + path: ../../gql + gql_link: + path: ../gql_link + gql_websocket_link: + path: ../gql_websocket_link + gql_transform_link: + path: ../gql_transform_link + gql_http_link: + path: ../gql_http_link + gql_error_link: + path: ../gql_error_link + gql_code_builder: + path: ../../codegen/gql_code_builder + gql_build: + path: ../../codegen/gql_build + gql_example_http_auth_link: + path: ../../examples/gql_example_http_auth_link + gql_dio_link: + path: ../gql_dio_link + gql_example_dio_link: + path: ../../examples/gql_example_dio_link + gql_example_cli_github: + path: ../../examples/gql_example_cli_github + gql_example_cli: + path: ../../examples/gql_example_cli + gql_example_build: + path: ../../examples/gql_example_build + gql_dedupe_link: + path: ../gql_dedupe_link + end_to_end_test: + path: ../../codegen/end_to_end_test diff --git a/links/gql_http_link/pubspec.yaml b/links/gql_http_link/pubspec.yaml index ab97bf7c..8a3539f3 100644 --- a/links/gql_http_link/pubspec.yaml +++ b/links/gql_http_link/pubspec.yaml @@ -17,3 +17,38 @@ dev_dependencies: gql_pedantic: ^1.0.2 mockito: ^5.3.0 test: ^1.16.2 +dependency_overrides: + gql_pedantic: + path: ../../gql_pedantic + gql: + path: ../../gql + gql_exec: + path: ../gql_exec + gql_link: + path: ../gql_link + gql_websocket_link: + path: ../gql_websocket_link + gql_transform_link: + path: ../gql_transform_link + gql_error_link: + path: ../gql_error_link + gql_code_builder: + path: ../../codegen/gql_code_builder + gql_build: + path: ../../codegen/gql_build + gql_example_http_auth_link: + path: ../../examples/gql_example_http_auth_link + gql_dio_link: + path: ../gql_dio_link + gql_example_dio_link: + path: ../../examples/gql_example_dio_link + gql_example_cli_github: + path: ../../examples/gql_example_cli_github + gql_example_cli: + path: ../../examples/gql_example_cli + gql_example_build: + path: ../../examples/gql_example_build + gql_dedupe_link: + path: ../gql_dedupe_link + end_to_end_test: + path: ../../codegen/end_to_end_test diff --git a/links/gql_link/pubspec.yaml b/links/gql_link/pubspec.yaml index 5fe94d9e..061159ce 100644 --- a/links/gql_link/pubspec.yaml +++ b/links/gql_link/pubspec.yaml @@ -12,3 +12,38 @@ dev_dependencies: gql_pedantic: ^1.0.2 mockito: ^5.0.16 test: ^1.16.2 +dependency_overrides: + gql_pedantic: + path: ../../gql_pedantic + gql: + path: ../../gql + gql_exec: + path: ../gql_exec + gql_websocket_link: + path: ../gql_websocket_link + gql_transform_link: + path: ../gql_transform_link + gql_http_link: + path: ../gql_http_link + gql_error_link: + path: ../gql_error_link + gql_code_builder: + path: ../../codegen/gql_code_builder + gql_build: + path: ../../codegen/gql_build + gql_example_http_auth_link: + path: ../../examples/gql_example_http_auth_link + gql_dio_link: + path: ../gql_dio_link + gql_example_dio_link: + path: ../../examples/gql_example_dio_link + gql_example_cli_github: + path: ../../examples/gql_example_cli_github + gql_example_cli: + path: ../../examples/gql_example_cli + gql_example_build: + path: ../../examples/gql_example_build + gql_dedupe_link: + path: ../gql_dedupe_link + end_to_end_test: + path: ../../codegen/end_to_end_test diff --git a/links/gql_transform_link/pubspec.yaml b/links/gql_transform_link/pubspec.yaml index 1d74775d..38ef4312 100644 --- a/links/gql_transform_link/pubspec.yaml +++ b/links/gql_transform_link/pubspec.yaml @@ -12,3 +12,38 @@ dev_dependencies: gql_pedantic: ^1.0.2 mockito: ^5.0.0-nullsafety.7 test: ^1.16.2 +dependency_overrides: + gql_pedantic: + path: ../../gql_pedantic + gql: + path: ../../gql + gql_exec: + path: ../gql_exec + gql_link: + path: ../gql_link + gql_websocket_link: + path: ../gql_websocket_link + gql_http_link: + path: ../gql_http_link + gql_error_link: + path: ../gql_error_link + gql_code_builder: + path: ../../codegen/gql_code_builder + gql_build: + path: ../../codegen/gql_build + gql_example_http_auth_link: + path: ../../examples/gql_example_http_auth_link + gql_dio_link: + path: ../gql_dio_link + gql_example_dio_link: + path: ../../examples/gql_example_dio_link + gql_example_cli_github: + path: ../../examples/gql_example_cli_github + gql_example_cli: + path: ../../examples/gql_example_cli + gql_example_build: + path: ../../examples/gql_example_build + gql_dedupe_link: + path: ../gql_dedupe_link + end_to_end_test: + path: ../../codegen/end_to_end_test diff --git a/links/gql_websocket_link/pubspec.yaml b/links/gql_websocket_link/pubspec.yaml index 7004ab9d..866649d0 100644 --- a/links/gql_websocket_link/pubspec.yaml +++ b/links/gql_websocket_link/pubspec.yaml @@ -16,3 +16,38 @@ dev_dependencies: gql_pedantic: ^1.0.2 mockito: ^5.0.0 test: ^1.16.6 +dependency_overrides: + gql_pedantic: + path: ../../gql_pedantic + gql: + path: ../../gql + gql_exec: + path: ../gql_exec + gql_link: + path: ../gql_link + gql_transform_link: + path: ../gql_transform_link + gql_http_link: + path: ../gql_http_link + gql_error_link: + path: ../gql_error_link + gql_code_builder: + path: ../../codegen/gql_code_builder + gql_build: + path: ../../codegen/gql_build + gql_example_http_auth_link: + path: ../../examples/gql_example_http_auth_link + gql_dio_link: + path: ../gql_dio_link + gql_example_dio_link: + path: ../../examples/gql_example_dio_link + gql_example_cli_github: + path: ../../examples/gql_example_cli_github + gql_example_cli: + path: ../../examples/gql_example_cli + gql_example_build: + path: ../../examples/gql_example_build + gql_dedupe_link: + path: ../gql_dedupe_link + end_to_end_test: + path: ../../codegen/end_to_end_test From 3401ddf7c55abe96889f83810b2cf9e7a70c2f98 Mon Sep 17 00:00:00 2001 From: Martin Kamleithner Date: Fri, 15 Dec 2023 17:19:08 +0100 Subject: [PATCH 03/20] multipack clean --- codegen/end_to_end_test/pubspec.yaml | 35 ------------------ codegen/gql_build/pubspec.yaml | 35 ------------------ codegen/gql_code_builder/pubspec.yaml | 35 ------------------ examples/gql_example_build/pubspec.yaml | 35 ------------------ examples/gql_example_cli/pubspec.yaml | 35 ------------------ examples/gql_example_cli_github/pubspec.yaml | 35 ------------------ examples/gql_example_dio_link/pubspec.yaml | 35 ------------------ examples/gql_example_flutter/pubspec.yaml | 37 ------------------- .../gql_example_http_auth_link/pubspec.yaml | 35 ------------------ gql/pubspec.yaml | 35 ------------------ gql_pedantic/pubspec.yaml | 35 ------------------ links/gql_dedupe_link/pubspec.yaml | 35 ------------------ links/gql_dio_link/pubspec.yaml | 35 ------------------ links/gql_error_link/pubspec.yaml | 35 ------------------ links/gql_exec/pubspec.yaml | 35 ------------------ links/gql_http_link/pubspec.yaml | 35 ------------------ links/gql_link/pubspec.yaml | 35 ------------------ links/gql_transform_link/pubspec.yaml | 35 ------------------ links/gql_websocket_link/pubspec.yaml | 35 ------------------ 19 files changed, 667 deletions(-) diff --git a/codegen/end_to_end_test/pubspec.yaml b/codegen/end_to_end_test/pubspec.yaml index a28cf882..51141539 100644 --- a/codegen/end_to_end_test/pubspec.yaml +++ b/codegen/end_to_end_test/pubspec.yaml @@ -15,38 +15,3 @@ dev_dependencies: build: ^2.0.0 build_runner: ^2.0.0 test: ^1.16.8 -dependency_overrides: - gql_pedantic: - path: ../../gql_pedantic - gql: - path: ../../gql - gql_exec: - path: ../../links/gql_exec - gql_link: - path: ../../links/gql_link - gql_websocket_link: - path: ../../links/gql_websocket_link - gql_transform_link: - path: ../../links/gql_transform_link - gql_http_link: - path: ../../links/gql_http_link - gql_error_link: - path: ../../links/gql_error_link - gql_code_builder: - path: ../gql_code_builder - gql_build: - path: ../gql_build - gql_example_http_auth_link: - path: ../../examples/gql_example_http_auth_link - gql_dio_link: - path: ../../links/gql_dio_link - gql_example_dio_link: - path: ../../examples/gql_example_dio_link - gql_example_cli_github: - path: ../../examples/gql_example_cli_github - gql_example_cli: - path: ../../examples/gql_example_cli - gql_example_build: - path: ../../examples/gql_example_build - gql_dedupe_link: - path: ../../links/gql_dedupe_link diff --git a/codegen/gql_build/pubspec.yaml b/codegen/gql_build/pubspec.yaml index d1ae5381..d2f15e42 100644 --- a/codegen/gql_build/pubspec.yaml +++ b/codegen/gql_build/pubspec.yaml @@ -20,38 +20,3 @@ dependencies: dev_dependencies: build_test: ^2.0.0 gql_pedantic: ^1.0.2 -dependency_overrides: - gql_pedantic: - path: ../../gql_pedantic - gql: - path: ../../gql - gql_exec: - path: ../../links/gql_exec - gql_link: - path: ../../links/gql_link - gql_websocket_link: - path: ../../links/gql_websocket_link - gql_transform_link: - path: ../../links/gql_transform_link - gql_http_link: - path: ../../links/gql_http_link - gql_error_link: - path: ../../links/gql_error_link - gql_code_builder: - path: ../gql_code_builder - gql_example_http_auth_link: - path: ../../examples/gql_example_http_auth_link - gql_dio_link: - path: ../../links/gql_dio_link - gql_example_dio_link: - path: ../../examples/gql_example_dio_link - gql_example_cli_github: - path: ../../examples/gql_example_cli_github - gql_example_cli: - path: ../../examples/gql_example_cli - gql_example_build: - path: ../../examples/gql_example_build - gql_dedupe_link: - path: ../../links/gql_dedupe_link - end_to_end_test: - path: ../end_to_end_test diff --git a/codegen/gql_code_builder/pubspec.yaml b/codegen/gql_code_builder/pubspec.yaml index bf830821..22ee4ebb 100644 --- a/codegen/gql_code_builder/pubspec.yaml +++ b/codegen/gql_code_builder/pubspec.yaml @@ -17,38 +17,3 @@ dev_dependencies: build_runner: ^2.1.0 gql_pedantic: ^1.0.2 test: ^1.16.8 -dependency_overrides: - gql_pedantic: - path: ../../gql_pedantic - gql: - path: ../../gql - gql_exec: - path: ../../links/gql_exec - gql_link: - path: ../../links/gql_link - gql_websocket_link: - path: ../../links/gql_websocket_link - gql_transform_link: - path: ../../links/gql_transform_link - gql_http_link: - path: ../../links/gql_http_link - gql_error_link: - path: ../../links/gql_error_link - gql_build: - path: ../gql_build - gql_example_http_auth_link: - path: ../../examples/gql_example_http_auth_link - gql_dio_link: - path: ../../links/gql_dio_link - gql_example_dio_link: - path: ../../examples/gql_example_dio_link - gql_example_cli_github: - path: ../../examples/gql_example_cli_github - gql_example_cli: - path: ../../examples/gql_example_cli - gql_example_build: - path: ../../examples/gql_example_build - gql_dedupe_link: - path: ../../links/gql_dedupe_link - end_to_end_test: - path: ../end_to_end_test diff --git a/examples/gql_example_build/pubspec.yaml b/examples/gql_example_build/pubspec.yaml index 89ecefaf..091f1009 100644 --- a/examples/gql_example_build/pubspec.yaml +++ b/examples/gql_example_build/pubspec.yaml @@ -6,38 +6,3 @@ dev_dependencies: gql_build: ^0.6.0 gql_pedantic: ^1.0.2 test: ^1.0.0 -dependency_overrides: - gql_pedantic: - path: ../../gql_pedantic - gql: - path: ../../gql - gql_exec: - path: ../../links/gql_exec - gql_link: - path: ../../links/gql_link - gql_websocket_link: - path: ../../links/gql_websocket_link - gql_transform_link: - path: ../../links/gql_transform_link - gql_http_link: - path: ../../links/gql_http_link - gql_error_link: - path: ../../links/gql_error_link - gql_code_builder: - path: ../../codegen/gql_code_builder - gql_build: - path: ../../codegen/gql_build - gql_example_http_auth_link: - path: ../gql_example_http_auth_link - gql_dio_link: - path: ../../links/gql_dio_link - gql_example_dio_link: - path: ../gql_example_dio_link - gql_example_cli_github: - path: ../gql_example_cli_github - gql_example_cli: - path: ../gql_example_cli - gql_dedupe_link: - path: ../../links/gql_dedupe_link - end_to_end_test: - path: ../../codegen/end_to_end_test diff --git a/examples/gql_example_cli/pubspec.yaml b/examples/gql_example_cli/pubspec.yaml index a0a92629..f8dbc8db 100644 --- a/examples/gql_example_cli/pubspec.yaml +++ b/examples/gql_example_cli/pubspec.yaml @@ -11,38 +11,3 @@ dev_dependencies: build_runner: ^2.0.0 gql_build: ^0.6.0 gql_pedantic: ^1.0.2 -dependency_overrides: - gql_pedantic: - path: ../../gql_pedantic - gql: - path: ../../gql - gql_exec: - path: ../../links/gql_exec - gql_link: - path: ../../links/gql_link - gql_websocket_link: - path: ../../links/gql_websocket_link - gql_transform_link: - path: ../../links/gql_transform_link - gql_http_link: - path: ../../links/gql_http_link - gql_error_link: - path: ../../links/gql_error_link - gql_code_builder: - path: ../../codegen/gql_code_builder - gql_build: - path: ../../codegen/gql_build - gql_example_http_auth_link: - path: ../gql_example_http_auth_link - gql_dio_link: - path: ../../links/gql_dio_link - gql_example_dio_link: - path: ../gql_example_dio_link - gql_example_cli_github: - path: ../gql_example_cli_github - gql_example_build: - path: ../gql_example_build - gql_dedupe_link: - path: ../../links/gql_dedupe_link - end_to_end_test: - path: ../../codegen/end_to_end_test diff --git a/examples/gql_example_cli_github/pubspec.yaml b/examples/gql_example_cli_github/pubspec.yaml index 7e28ce96..2309b863 100644 --- a/examples/gql_example_cli_github/pubspec.yaml +++ b/examples/gql_example_cli_github/pubspec.yaml @@ -12,38 +12,3 @@ dev_dependencies: build_runner: ^2.0.0 gql_build: ^0.6.0 gql_pedantic: ^1.0.2 -dependency_overrides: - gql_pedantic: - path: ../../gql_pedantic - gql: - path: ../../gql - gql_exec: - path: ../../links/gql_exec - gql_link: - path: ../../links/gql_link - gql_websocket_link: - path: ../../links/gql_websocket_link - gql_transform_link: - path: ../../links/gql_transform_link - gql_http_link: - path: ../../links/gql_http_link - gql_error_link: - path: ../../links/gql_error_link - gql_code_builder: - path: ../../codegen/gql_code_builder - gql_build: - path: ../../codegen/gql_build - gql_example_http_auth_link: - path: ../gql_example_http_auth_link - gql_dio_link: - path: ../../links/gql_dio_link - gql_example_dio_link: - path: ../gql_example_dio_link - gql_example_cli: - path: ../gql_example_cli - gql_example_build: - path: ../gql_example_build - gql_dedupe_link: - path: ../../links/gql_dedupe_link - end_to_end_test: - path: ../../codegen/end_to_end_test diff --git a/examples/gql_example_dio_link/pubspec.yaml b/examples/gql_example_dio_link/pubspec.yaml index c6a10d3a..87ba0790 100644 --- a/examples/gql_example_dio_link/pubspec.yaml +++ b/examples/gql_example_dio_link/pubspec.yaml @@ -8,38 +8,3 @@ dependencies: gql_link: ^0.5.0 gql_exec: ^0.4.0 gql_dio_link: ^0.2.3 -dependency_overrides: - gql_pedantic: - path: ../../gql_pedantic - gql: - path: ../../gql - gql_exec: - path: ../../links/gql_exec - gql_link: - path: ../../links/gql_link - gql_websocket_link: - path: ../../links/gql_websocket_link - gql_transform_link: - path: ../../links/gql_transform_link - gql_http_link: - path: ../../links/gql_http_link - gql_error_link: - path: ../../links/gql_error_link - gql_code_builder: - path: ../../codegen/gql_code_builder - gql_build: - path: ../../codegen/gql_build - gql_example_http_auth_link: - path: ../gql_example_http_auth_link - gql_dio_link: - path: ../../links/gql_dio_link - gql_example_cli_github: - path: ../gql_example_cli_github - gql_example_cli: - path: ../gql_example_cli - gql_example_build: - path: ../gql_example_build - gql_dedupe_link: - path: ../../links/gql_dedupe_link - end_to_end_test: - path: ../../codegen/end_to_end_test diff --git a/examples/gql_example_flutter/pubspec.yaml b/examples/gql_example_flutter/pubspec.yaml index f994c148..8c3bff69 100644 --- a/examples/gql_example_flutter/pubspec.yaml +++ b/examples/gql_example_flutter/pubspec.yaml @@ -16,42 +16,5 @@ dev_dependencies: gql_build: ^0.6.0 flutter_test: sdk: flutter -dependency_overrides: - gql_pedantic: - path: ../../gql_pedantic - gql: - path: ../../gql - gql_exec: - path: ../../links/gql_exec - gql_link: - path: ../../links/gql_link - gql_websocket_link: - path: ../../links/gql_websocket_link - gql_transform_link: - path: ../../links/gql_transform_link - gql_http_link: - path: ../../links/gql_http_link - gql_error_link: - path: ../../links/gql_error_link - gql_code_builder: - path: ../../codegen/gql_code_builder - gql_build: - path: ../../codegen/gql_build - gql_example_http_auth_link: - path: ../gql_example_http_auth_link - gql_dio_link: - path: ../../links/gql_dio_link - gql_example_dio_link: - path: ../gql_example_dio_link - gql_example_cli_github: - path: ../gql_example_cli_github - gql_example_cli: - path: ../gql_example_cli - gql_example_build: - path: ../gql_example_build - gql_dedupe_link: - path: ../../links/gql_dedupe_link - end_to_end_test: - path: ../../codegen/end_to_end_test flutter: uses-material-design: true diff --git a/examples/gql_example_http_auth_link/pubspec.yaml b/examples/gql_example_http_auth_link/pubspec.yaml index fb7f7989..b44b566e 100644 --- a/examples/gql_example_http_auth_link/pubspec.yaml +++ b/examples/gql_example_http_auth_link/pubspec.yaml @@ -12,38 +12,3 @@ dependencies: dev_dependencies: gql_build: ^0.6.0 gql_pedantic: ^1.0.2 -dependency_overrides: - gql_pedantic: - path: ../../gql_pedantic - gql: - path: ../../gql - gql_exec: - path: ../../links/gql_exec - gql_link: - path: ../../links/gql_link - gql_websocket_link: - path: ../../links/gql_websocket_link - gql_transform_link: - path: ../../links/gql_transform_link - gql_http_link: - path: ../../links/gql_http_link - gql_error_link: - path: ../../links/gql_error_link - gql_code_builder: - path: ../../codegen/gql_code_builder - gql_build: - path: ../../codegen/gql_build - gql_dio_link: - path: ../../links/gql_dio_link - gql_example_dio_link: - path: ../gql_example_dio_link - gql_example_cli_github: - path: ../gql_example_cli_github - gql_example_cli: - path: ../gql_example_cli - gql_example_build: - path: ../gql_example_build - gql_dedupe_link: - path: ../../links/gql_dedupe_link - end_to_end_test: - path: ../../codegen/end_to_end_test diff --git a/gql/pubspec.yaml b/gql/pubspec.yaml index 25e465f5..0ba09aab 100644 --- a/gql/pubspec.yaml +++ b/gql/pubspec.yaml @@ -12,38 +12,3 @@ dependencies: dev_dependencies: gql_pedantic: ^1.0.2 test: ^1.16.2 -dependency_overrides: - gql_pedantic: - path: ../gql_pedantic - gql_exec: - path: ../links/gql_exec - gql_link: - path: ../links/gql_link - gql_websocket_link: - path: ../links/gql_websocket_link - gql_transform_link: - path: ../links/gql_transform_link - gql_http_link: - path: ../links/gql_http_link - gql_error_link: - path: ../links/gql_error_link - gql_code_builder: - path: ../codegen/gql_code_builder - gql_build: - path: ../codegen/gql_build - gql_example_http_auth_link: - path: ../examples/gql_example_http_auth_link - gql_dio_link: - path: ../links/gql_dio_link - gql_example_dio_link: - path: ../examples/gql_example_dio_link - gql_example_cli_github: - path: ../examples/gql_example_cli_github - gql_example_cli: - path: ../examples/gql_example_cli - gql_example_build: - path: ../examples/gql_example_build - gql_dedupe_link: - path: ../links/gql_dedupe_link - end_to_end_test: - path: ../codegen/end_to_end_test diff --git a/gql_pedantic/pubspec.yaml b/gql_pedantic/pubspec.yaml index 46329e7b..273b3751 100644 --- a/gql_pedantic/pubspec.yaml +++ b/gql_pedantic/pubspec.yaml @@ -4,38 +4,3 @@ description: Even more opinionated lint rules. repository: https://github.com/gql-dart/gql environment: sdk: '>=2.7.2 <3.0.0' -dependency_overrides: - gql: - path: ../gql - gql_exec: - path: ../links/gql_exec - gql_link: - path: ../links/gql_link - gql_websocket_link: - path: ../links/gql_websocket_link - gql_transform_link: - path: ../links/gql_transform_link - gql_http_link: - path: ../links/gql_http_link - gql_error_link: - path: ../links/gql_error_link - gql_code_builder: - path: ../codegen/gql_code_builder - gql_build: - path: ../codegen/gql_build - gql_example_http_auth_link: - path: ../examples/gql_example_http_auth_link - gql_dio_link: - path: ../links/gql_dio_link - gql_example_dio_link: - path: ../examples/gql_example_dio_link - gql_example_cli_github: - path: ../examples/gql_example_cli_github - gql_example_cli: - path: ../examples/gql_example_cli - gql_example_build: - path: ../examples/gql_example_build - gql_dedupe_link: - path: ../links/gql_dedupe_link - end_to_end_test: - path: ../codegen/end_to_end_test diff --git a/links/gql_dedupe_link/pubspec.yaml b/links/gql_dedupe_link/pubspec.yaml index 7e24ad87..6a39f391 100644 --- a/links/gql_dedupe_link/pubspec.yaml +++ b/links/gql_dedupe_link/pubspec.yaml @@ -14,38 +14,3 @@ dev_dependencies: gql_pedantic: ^1.0.2 mockito: ^5.0.0-nullsafety.7 test: ^1.16.2 -dependency_overrides: - gql_pedantic: - path: ../../gql_pedantic - gql: - path: ../../gql - gql_exec: - path: ../gql_exec - gql_link: - path: ../gql_link - gql_websocket_link: - path: ../gql_websocket_link - gql_transform_link: - path: ../gql_transform_link - gql_http_link: - path: ../gql_http_link - gql_error_link: - path: ../gql_error_link - gql_code_builder: - path: ../../codegen/gql_code_builder - gql_build: - path: ../../codegen/gql_build - gql_example_http_auth_link: - path: ../../examples/gql_example_http_auth_link - gql_dio_link: - path: ../gql_dio_link - gql_example_dio_link: - path: ../../examples/gql_example_dio_link - gql_example_cli_github: - path: ../../examples/gql_example_cli_github - gql_example_cli: - path: ../../examples/gql_example_cli - gql_example_build: - path: ../../examples/gql_example_build - end_to_end_test: - path: ../../codegen/end_to_end_test diff --git a/links/gql_dio_link/pubspec.yaml b/links/gql_dio_link/pubspec.yaml index d234a306..97708fe9 100644 --- a/links/gql_dio_link/pubspec.yaml +++ b/links/gql_dio_link/pubspec.yaml @@ -18,38 +18,3 @@ dev_dependencies: http_parser: ^4.0.0 mockito: ^5.3.0 test: ^1.14.3 -dependency_overrides: - gql_pedantic: - path: ../../gql_pedantic - gql: - path: ../../gql - gql_exec: - path: ../gql_exec - gql_link: - path: ../gql_link - gql_websocket_link: - path: ../gql_websocket_link - gql_transform_link: - path: ../gql_transform_link - gql_http_link: - path: ../gql_http_link - gql_error_link: - path: ../gql_error_link - gql_code_builder: - path: ../../codegen/gql_code_builder - gql_build: - path: ../../codegen/gql_build - gql_example_http_auth_link: - path: ../../examples/gql_example_http_auth_link - gql_example_dio_link: - path: ../../examples/gql_example_dio_link - gql_example_cli_github: - path: ../../examples/gql_example_cli_github - gql_example_cli: - path: ../../examples/gql_example_cli - gql_example_build: - path: ../../examples/gql_example_build - gql_dedupe_link: - path: ../gql_dedupe_link - end_to_end_test: - path: ../../codegen/end_to_end_test diff --git a/links/gql_error_link/pubspec.yaml b/links/gql_error_link/pubspec.yaml index b1154d40..5dff3920 100644 --- a/links/gql_error_link/pubspec.yaml +++ b/links/gql_error_link/pubspec.yaml @@ -14,38 +14,3 @@ dev_dependencies: gql_pedantic: ^1.0.2 mockito: ^5.0.0-nullsafety.7 test: ^1.16.2 -dependency_overrides: - gql_pedantic: - path: ../../gql_pedantic - gql: - path: ../../gql - gql_exec: - path: ../gql_exec - gql_link: - path: ../gql_link - gql_websocket_link: - path: ../gql_websocket_link - gql_transform_link: - path: ../gql_transform_link - gql_http_link: - path: ../gql_http_link - gql_code_builder: - path: ../../codegen/gql_code_builder - gql_build: - path: ../../codegen/gql_build - gql_example_http_auth_link: - path: ../../examples/gql_example_http_auth_link - gql_dio_link: - path: ../gql_dio_link - gql_example_dio_link: - path: ../../examples/gql_example_dio_link - gql_example_cli_github: - path: ../../examples/gql_example_cli_github - gql_example_cli: - path: ../../examples/gql_example_cli - gql_example_build: - path: ../../examples/gql_example_build - gql_dedupe_link: - path: ../gql_dedupe_link - end_to_end_test: - path: ../../codegen/end_to_end_test diff --git a/links/gql_exec/pubspec.yaml b/links/gql_exec/pubspec.yaml index 8d3de4a0..3ef807b3 100644 --- a/links/gql_exec/pubspec.yaml +++ b/links/gql_exec/pubspec.yaml @@ -11,38 +11,3 @@ dependencies: dev_dependencies: gql_pedantic: ^1.0.2 test: ^1.16.2 -dependency_overrides: - gql_pedantic: - path: ../../gql_pedantic - gql: - path: ../../gql - gql_link: - path: ../gql_link - gql_websocket_link: - path: ../gql_websocket_link - gql_transform_link: - path: ../gql_transform_link - gql_http_link: - path: ../gql_http_link - gql_error_link: - path: ../gql_error_link - gql_code_builder: - path: ../../codegen/gql_code_builder - gql_build: - path: ../../codegen/gql_build - gql_example_http_auth_link: - path: ../../examples/gql_example_http_auth_link - gql_dio_link: - path: ../gql_dio_link - gql_example_dio_link: - path: ../../examples/gql_example_dio_link - gql_example_cli_github: - path: ../../examples/gql_example_cli_github - gql_example_cli: - path: ../../examples/gql_example_cli - gql_example_build: - path: ../../examples/gql_example_build - gql_dedupe_link: - path: ../gql_dedupe_link - end_to_end_test: - path: ../../codegen/end_to_end_test diff --git a/links/gql_http_link/pubspec.yaml b/links/gql_http_link/pubspec.yaml index 8a3539f3..ab97bf7c 100644 --- a/links/gql_http_link/pubspec.yaml +++ b/links/gql_http_link/pubspec.yaml @@ -17,38 +17,3 @@ dev_dependencies: gql_pedantic: ^1.0.2 mockito: ^5.3.0 test: ^1.16.2 -dependency_overrides: - gql_pedantic: - path: ../../gql_pedantic - gql: - path: ../../gql - gql_exec: - path: ../gql_exec - gql_link: - path: ../gql_link - gql_websocket_link: - path: ../gql_websocket_link - gql_transform_link: - path: ../gql_transform_link - gql_error_link: - path: ../gql_error_link - gql_code_builder: - path: ../../codegen/gql_code_builder - gql_build: - path: ../../codegen/gql_build - gql_example_http_auth_link: - path: ../../examples/gql_example_http_auth_link - gql_dio_link: - path: ../gql_dio_link - gql_example_dio_link: - path: ../../examples/gql_example_dio_link - gql_example_cli_github: - path: ../../examples/gql_example_cli_github - gql_example_cli: - path: ../../examples/gql_example_cli - gql_example_build: - path: ../../examples/gql_example_build - gql_dedupe_link: - path: ../gql_dedupe_link - end_to_end_test: - path: ../../codegen/end_to_end_test diff --git a/links/gql_link/pubspec.yaml b/links/gql_link/pubspec.yaml index 061159ce..5fe94d9e 100644 --- a/links/gql_link/pubspec.yaml +++ b/links/gql_link/pubspec.yaml @@ -12,38 +12,3 @@ dev_dependencies: gql_pedantic: ^1.0.2 mockito: ^5.0.16 test: ^1.16.2 -dependency_overrides: - gql_pedantic: - path: ../../gql_pedantic - gql: - path: ../../gql - gql_exec: - path: ../gql_exec - gql_websocket_link: - path: ../gql_websocket_link - gql_transform_link: - path: ../gql_transform_link - gql_http_link: - path: ../gql_http_link - gql_error_link: - path: ../gql_error_link - gql_code_builder: - path: ../../codegen/gql_code_builder - gql_build: - path: ../../codegen/gql_build - gql_example_http_auth_link: - path: ../../examples/gql_example_http_auth_link - gql_dio_link: - path: ../gql_dio_link - gql_example_dio_link: - path: ../../examples/gql_example_dio_link - gql_example_cli_github: - path: ../../examples/gql_example_cli_github - gql_example_cli: - path: ../../examples/gql_example_cli - gql_example_build: - path: ../../examples/gql_example_build - gql_dedupe_link: - path: ../gql_dedupe_link - end_to_end_test: - path: ../../codegen/end_to_end_test diff --git a/links/gql_transform_link/pubspec.yaml b/links/gql_transform_link/pubspec.yaml index 38ef4312..1d74775d 100644 --- a/links/gql_transform_link/pubspec.yaml +++ b/links/gql_transform_link/pubspec.yaml @@ -12,38 +12,3 @@ dev_dependencies: gql_pedantic: ^1.0.2 mockito: ^5.0.0-nullsafety.7 test: ^1.16.2 -dependency_overrides: - gql_pedantic: - path: ../../gql_pedantic - gql: - path: ../../gql - gql_exec: - path: ../gql_exec - gql_link: - path: ../gql_link - gql_websocket_link: - path: ../gql_websocket_link - gql_http_link: - path: ../gql_http_link - gql_error_link: - path: ../gql_error_link - gql_code_builder: - path: ../../codegen/gql_code_builder - gql_build: - path: ../../codegen/gql_build - gql_example_http_auth_link: - path: ../../examples/gql_example_http_auth_link - gql_dio_link: - path: ../gql_dio_link - gql_example_dio_link: - path: ../../examples/gql_example_dio_link - gql_example_cli_github: - path: ../../examples/gql_example_cli_github - gql_example_cli: - path: ../../examples/gql_example_cli - gql_example_build: - path: ../../examples/gql_example_build - gql_dedupe_link: - path: ../gql_dedupe_link - end_to_end_test: - path: ../../codegen/end_to_end_test diff --git a/links/gql_websocket_link/pubspec.yaml b/links/gql_websocket_link/pubspec.yaml index 866649d0..7004ab9d 100644 --- a/links/gql_websocket_link/pubspec.yaml +++ b/links/gql_websocket_link/pubspec.yaml @@ -16,38 +16,3 @@ dev_dependencies: gql_pedantic: ^1.0.2 mockito: ^5.0.0 test: ^1.16.6 -dependency_overrides: - gql_pedantic: - path: ../../gql_pedantic - gql: - path: ../../gql - gql_exec: - path: ../gql_exec - gql_link: - path: ../gql_link - gql_transform_link: - path: ../gql_transform_link - gql_http_link: - path: ../gql_http_link - gql_error_link: - path: ../gql_error_link - gql_code_builder: - path: ../../codegen/gql_code_builder - gql_build: - path: ../../codegen/gql_build - gql_example_http_auth_link: - path: ../../examples/gql_example_http_auth_link - gql_dio_link: - path: ../gql_dio_link - gql_example_dio_link: - path: ../../examples/gql_example_dio_link - gql_example_cli_github: - path: ../../examples/gql_example_cli_github - gql_example_cli: - path: ../../examples/gql_example_cli - gql_example_build: - path: ../../examples/gql_example_build - gql_dedupe_link: - path: ../gql_dedupe_link - end_to_end_test: - path: ../../codegen/end_to_end_test From d211aab1ed233dee83a9693e5b3cce9f14524307 Mon Sep 17 00:00:00 2001 From: Martin Kamleithner Date: Fri, 15 Dec 2023 17:22:34 +0100 Subject: [PATCH 04/20] workflow update --- .github/workflows/dart.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/dart.yml b/.github/workflows/dart.yml index 0e22f3e1..3c7eae12 100644 --- a/.github/workflows/dart.yml +++ b/.github/workflows/dart.yml @@ -20,7 +20,7 @@ jobs: - gql_transform_link runs-on: ubuntu-latest container: - image: dart:stable + image: dart:latest name: Check ${{ matrix.package }} env: PACKAGE: ${{ matrix.package }} From 7dba122d85c1f4f8d5b921871c06ceb6e0b850fb Mon Sep 17 00:00:00 2001 From: Martin Kamleithner Date: Sat, 16 Dec 2023 22:01:53 +0100 Subject: [PATCH 05/20] fix dependabot --- .github/dependabot.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/dependabot.yaml b/.github/dependabot.yaml index ac6621f1..fbe1ab13 100644 --- a/.github/dependabot.yaml +++ b/.github/dependabot.yaml @@ -5,7 +5,7 @@ version: 2 updates: - - package-ecosystem: "" # See documentation for possible values + - package-ecosystem: "pub" # See documentation for possible values directory: "/" # Location of package manifests schedule: interval: "weekly" From abeb09469da0afe908f92dd37ff33a6c80403bf0 Mon Sep 17 00:00:00 2001 From: Martin Kamleithner Date: Sat, 16 Dec 2023 22:22:23 +0100 Subject: [PATCH 06/20] remove FieldNodeWithNullablity, refactor to record --- .../lib/src/operation/data.dart | 48 ++++--------------- 1 file changed, 8 insertions(+), 40 deletions(-) diff --git a/codegen/gql_code_builder/lib/src/operation/data.dart b/codegen/gql_code_builder/lib/src/operation/data.dart index 50ae3435..ba1f1af9 100644 --- a/codegen/gql_code_builder/lib/src/operation/data.dart +++ b/codegen/gql_code_builder/lib/src/operation/data.dart @@ -499,33 +499,10 @@ TypeNode _getFieldTypeNode( .type; } -class FieldNoteWithNullability { - final FieldNode field; - final bool isMaybeSkipped; - - FieldNoteWithNullability(this.field, this.isMaybeSkipped); - - @override - bool operator ==(Object other) => - identical(this, other) || - other is FieldNoteWithNullability && - runtimeType == other.runtimeType && - field == other.field && - isMaybeSkipped == other.isMaybeSkipped; - - @override - int get hashCode => field.hashCode ^ isMaybeSkipped.hashCode; - - @override - String toString() => - "FieldNoteWithNullability{field: ${field.name.value}, forceNullable: $isMaybeSkipped}"; - - FieldNoteWithNullability merge(bool isMaybeSkipped) => - FieldNoteWithNullability(field, this.isMaybeSkipped && isMaybeSkipped); -} +typedef FieldNodeWithNullability = ({FieldNode fieldNode, bool isMaybeSkipped}); //https://spec.graphql.org/draft/#CollectFields() -Map> collectFields( +Map> collectFields( SourceNode document, SourceNode schema, TypeDefinitionNode objectType, @@ -533,7 +510,7 @@ Map> collectFields( Set visitedFragments, ) { //Initialize groupedFields to an empty ordered map of lists. - final groupedFields = >{}; + final groupedFields = >{}; //For each selection in selectionSet: for (final selection in selectionSet) { final isMaybeSkipped = selection.directives.any( @@ -548,10 +525,7 @@ Map> collectFields( groupedFields .putIfAbsent( selection.alias?.value ?? selection.name.value, () => []) - .add(FieldNoteWithNullability(selection, isMaybeSkipped)); - } else { - print( - "Skipping field ${selection.name.value} because it's already present"); + .add((fieldNode: selection, isMaybeSkipped: isMaybeSkipped)); } } //If the selection is an inline fragment: @@ -579,27 +553,21 @@ Map> collectFields( final groupForResponseKey = groupedFields.putIfAbsent(responseKey, () => []); final values = fragmentGroup.value - .map((e) => FieldNoteWithNullability( - e.field, isMaybeSkipped || e.isMaybeSkipped)) + .map((e) => (fieldNode: + e.fieldNode, isMaybeSkipped: isMaybeSkipped || e.isMaybeSkipped)) .toList(); //Append all items in fragmentGroup to groupForResponseKey. groupForResponseKey.addAll(values); - } else { - print( - "Skipping field ${fragmentGroup.key} because it's already present 2"); } } } //If the selection is a fragment spread: else if (selection is FragmentSpreadNode) { - print("${selection.name.value} forceNullable: $isMaybeSkipped"); //Let fragmentSpreadName be the name of selection. final fragmentSpreadName = selection.name.value; //If fragmentSpreadName is in visitedFragments, continue with the next selection in selectionSet. if (visitedFragments.contains(fragmentSpreadName)) { - print( - "Skipping fragment $fragmentSpreadName because it's already visited"); continue; } //Add fragmentSpreadName to visitedFragments. @@ -636,8 +604,8 @@ Map> collectFields( //Append all items in fragmentGroup to groupForResponseKey. final values = fragmentGroup.value - .map((e) => FieldNoteWithNullability( - e.field, isMaybeSkipped || e.isMaybeSkipped)) + .map((e) => (fieldNode: + e.fieldNode, isMaybeSkipped: isMaybeSkipped || e.isMaybeSkipped)) .toList(); groupForResponseKey.addAll(values); From b87548ee673416a3d2a9501a9a6ba4f04107b08b Mon Sep 17 00:00:00 2001 From: Martin Kamleithner Date: Sat, 16 Dec 2023 22:23:52 +0100 Subject: [PATCH 07/20] fmt --- codegen/gql_code_builder/lib/src/operation/data.dart | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/codegen/gql_code_builder/lib/src/operation/data.dart b/codegen/gql_code_builder/lib/src/operation/data.dart index ba1f1af9..4608f9bf 100644 --- a/codegen/gql_code_builder/lib/src/operation/data.dart +++ b/codegen/gql_code_builder/lib/src/operation/data.dart @@ -553,8 +553,10 @@ Map> collectFields( final groupForResponseKey = groupedFields.putIfAbsent(responseKey, () => []); final values = fragmentGroup.value - .map((e) => (fieldNode: - e.fieldNode, isMaybeSkipped: isMaybeSkipped || e.isMaybeSkipped)) + .map((e) => ( + fieldNode: e.fieldNode, + isMaybeSkipped: isMaybeSkipped || e.isMaybeSkipped + )) .toList(); //Append all items in fragmentGroup to groupForResponseKey. groupForResponseKey.addAll(values); @@ -604,8 +606,10 @@ Map> collectFields( //Append all items in fragmentGroup to groupForResponseKey. final values = fragmentGroup.value - .map((e) => (fieldNode: - e.fieldNode, isMaybeSkipped: isMaybeSkipped || e.isMaybeSkipped)) + .map((e) => ( + fieldNode: e.fieldNode, + isMaybeSkipped: isMaybeSkipped || e.isMaybeSkipped + )) .toList(); groupForResponseKey.addAll(values); From 6cf40c30e725822d10798c63483ce645a9684d46 Mon Sep 17 00:00:00 2001 From: Martin Kamleithner Date: Sat, 16 Dec 2023 23:02:34 +0100 Subject: [PATCH 08/20] use stable dart? --- .github/workflows/dart.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/dart.yml b/.github/workflows/dart.yml index e311bd4f..9f8fa3b8 100644 --- a/.github/workflows/dart.yml +++ b/.github/workflows/dart.yml @@ -21,7 +21,7 @@ jobs: - gql_tristate_value runs-on: ubuntu-latest container: - image: dart:latest + image: dart name: Check ${{ matrix.package }} env: PACKAGE: ${{ matrix.package }} From ab65a2fc34998c0eaed001e55eb9eb00626b27f9 Mon Sep 17 00:00:00 2001 From: Martin Kamleithner Date: Sat, 16 Dec 2023 23:30:11 +0100 Subject: [PATCH 09/20] disable reuse_fragmetns in end to end test --- codegen/end_to_end_test/build.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/codegen/end_to_end_test/build.yaml b/codegen/end_to_end_test/build.yaml index 845da27f..febda283 100644 --- a/codegen/end_to_end_test/build.yaml +++ b/codegen/end_to_end_test/build.yaml @@ -37,6 +37,7 @@ targets: enabled: true options: schema: end_to_end_test|lib/graphql/schema.graphql + reuse_fragments: false when_extensions: when: true maybeWhen: true From 06edac70c95f967c17d4b4c6b7e97bed194199a0 Mon Sep 17 00:00:00 2001 From: Martin Kamleithner Date: Sat, 16 Dec 2023 23:43:36 +0100 Subject: [PATCH 10/20] remove debug prints --- codegen/gql_code_builder/lib/src/operation/data.dart | 5 ----- 1 file changed, 5 deletions(-) diff --git a/codegen/gql_code_builder/lib/src/operation/data.dart b/codegen/gql_code_builder/lib/src/operation/data.dart index 4608f9bf..41d91236 100644 --- a/codegen/gql_code_builder/lib/src/operation/data.dart +++ b/codegen/gql_code_builder/lib/src/operation/data.dart @@ -33,8 +33,6 @@ List buildOperationDataClasses( op.selectionSet.selections, {}); - print("${op.name?.value} ${fields}"); - return buildSelectionSetDataClasses( name: "${op.name!.value}Data", selections: mergeSelections( @@ -153,10 +151,7 @@ List buildSelectionSetDataClasses({ bool built = true, required InlineFragmentSpreadWhenExtensionConfig whenExtensionConfig, }) { - final fields = collectFields(docSource, schemaSource, - getTypeDefinitionNode(schemaSource.flatDocument, type)!, selections, {}); - print("${name} ${fields}"); for (final selection in selections.whereType()) { if (!fragmentMap.containsKey(selection.name.value)) { throw Exception( From 42eacb9dbd96c5c34ba53b4307e8802dde343b18 Mon Sep 17 00:00:00 2001 From: Martin Kamleithner Date: Sat, 16 Dec 2023 23:45:03 +0100 Subject: [PATCH 11/20] fmt --- codegen/gql_code_builder/lib/src/operation/data.dart | 1 - 1 file changed, 1 deletion(-) diff --git a/codegen/gql_code_builder/lib/src/operation/data.dart b/codegen/gql_code_builder/lib/src/operation/data.dart index 41d91236..c4763e31 100644 --- a/codegen/gql_code_builder/lib/src/operation/data.dart +++ b/codegen/gql_code_builder/lib/src/operation/data.dart @@ -151,7 +151,6 @@ List buildSelectionSetDataClasses({ bool built = true, required InlineFragmentSpreadWhenExtensionConfig whenExtensionConfig, }) { - for (final selection in selections.whereType()) { if (!fragmentMap.containsKey(selection.name.value)) { throw Exception( From 86a97109314cf4a80c0b94385bcd146c7747ce1d Mon Sep 17 00:00:00 2001 From: Martin Kamleithner Date: Sat, 16 Dec 2023 23:49:23 +0100 Subject: [PATCH 12/20] fmt --- .github/workflows/dart.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/dart.yml b/.github/workflows/dart.yml index 9f8fa3b8..da9f1c60 100644 --- a/.github/workflows/dart.yml +++ b/.github/workflows/dart.yml @@ -21,7 +21,7 @@ jobs: - gql_tristate_value runs-on: ubuntu-latest container: - image: dart + image: dart:latest name: Check ${{ matrix.package }} env: PACKAGE: ${{ matrix.package }} @@ -129,7 +129,7 @@ jobs: - end_to_end_test_tristate runs-on: ubuntu-latest container: - image: dart + image: dart:latest name: Check ${{ matrix.package }} env: PACKAGE: ${{ matrix.package }} From 93f73492235c9a23ad81dcbfa734ee2e1c7c76dc Mon Sep 17 00:00:00 2001 From: Martin Kamleithner Date: Sat, 16 Dec 2023 23:53:29 +0100 Subject: [PATCH 13/20] fmt --- codegen/gql_code_builder/lib/src/operation/data.dart | 8 -------- 1 file changed, 8 deletions(-) diff --git a/codegen/gql_code_builder/lib/src/operation/data.dart b/codegen/gql_code_builder/lib/src/operation/data.dart index c4763e31..28c0313b 100644 --- a/codegen/gql_code_builder/lib/src/operation/data.dart +++ b/codegen/gql_code_builder/lib/src/operation/data.dart @@ -25,14 +25,6 @@ List buildOperationDataClasses( final fragmentMap = _fragmentMap(docSource); - final fields = collectFields( - docSource, - schemaSource, - getTypeDefinitionNode(schemaSource.flatDocument, - _operationType(schemaSource.flatDocument, op))!, - op.selectionSet.selections, - {}); - return buildSelectionSetDataClasses( name: "${op.name!.value}Data", selections: mergeSelections( From b2078bfeee43fddc49f14736c1018497de562330 Mon Sep 17 00:00:00 2001 From: Martin Kamleithner Date: Sun, 17 Dec 2023 00:12:04 +0100 Subject: [PATCH 14/20] fail-fast: false --- .github/workflows/dart.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/dart.yml b/.github/workflows/dart.yml index da9f1c60..d7adcb8a 100644 --- a/.github/workflows/dart.yml +++ b/.github/workflows/dart.yml @@ -123,6 +123,7 @@ jobs: multipack --only $PACKAGE exec dart analyze --fatal-warnings . builder_tests: strategy: + fail-fast: false matrix: package: - end_to_end_test From 848f05ddfd4eaf75310df238fd157c8e134f652d Mon Sep 17 00:00:00 2001 From: Martin Kamleithner Date: Sun, 17 Dec 2023 00:16:40 +0100 Subject: [PATCH 15/20] add skip/include queries to tristate --- .../__generated__/hero_include.ast.gql.dart | 58 + .../__generated__/hero_include.data.gql.dart | 68 ++ .../hero_include.data.gql.g.dart | 362 +++++++ .../__generated__/hero_include.req.gql.dart | 44 + .../__generated__/hero_include.req.gql.g.dart | 174 +++ .../__generated__/hero_include.var.gql.dart | 75 ++ .../__generated__/hero_include.var.gql.g.dart | 95 ++ .../__generated__/hero_skip.ast.gql.dart | 58 + .../__generated__/hero_skip.data.gql.dart | 67 ++ .../__generated__/hero_skip.data.gql.g.dart | 355 +++++++ .../__generated__/hero_skip.req.gql.dart | 42 + .../__generated__/hero_skip.req.gql.g.dart | 170 +++ .../__generated__/hero_skip.var.gql.dart | 74 ++ .../__generated__/hero_skip.var.gql.g.dart | 93 ++ .../hero_skip_fragment.ast.gql.dart | 105 ++ .../hero_skip_fragment.data.gql.dart | 202 ++++ .../hero_skip_fragment.data.gql.g.dart | 994 ++++++++++++++++++ .../hero_skip_fragment.req.gql.dart | 46 + .../hero_skip_fragment.req.gql.g.dart | 178 ++++ .../hero_skip_fragment.var.gql.dart | 125 +++ .../hero_skip_fragment.var.gql.g.dart | 154 +++ .../hero_skip_fragment_and_field.ast.gql.dart | 83 ++ ...hero_skip_fragment_and_field.data.gql.dart | 115 ++ ...ro_skip_fragment_and_field.data.gql.g.dart | 539 ++++++++++ .../hero_skip_fragment_and_field.req.gql.dart | 46 + ...ero_skip_fragment_and_field.req.gql.g.dart | 178 ++++ .../hero_skip_fragment_and_field.var.gql.dart | 125 +++ ...ero_skip_fragment_and_field.var.gql.g.dart | 154 +++ .../lib/directives/hero_include.graphql | 6 + .../lib/directives/hero_skip.graphql | 6 + .../lib/directives/hero_skip_fragment.graphql | 15 + .../hero_skip_fragment_and_field.graphql | 11 + .../__generated__/serializers.gql.dart | 39 + .../__generated__/serializers.gql.g.dart | 25 + codegen/end_to_end_test_tristate/pubspec.yaml | 39 + 35 files changed, 4920 insertions(+) create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.ast.gql.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.data.gql.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.data.gql.g.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.req.gql.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.req.gql.g.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.var.gql.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.var.gql.g.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.ast.gql.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.data.gql.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.data.gql.g.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.req.gql.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.req.gql.g.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.var.gql.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.var.gql.g.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.ast.gql.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.data.gql.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.data.gql.g.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.req.gql.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.req.gql.g.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.var.gql.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.var.gql.g.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.ast.gql.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.g.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.g.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.g.dart create mode 100644 codegen/end_to_end_test_tristate/lib/directives/hero_include.graphql create mode 100644 codegen/end_to_end_test_tristate/lib/directives/hero_skip.graphql create mode 100644 codegen/end_to_end_test_tristate/lib/directives/hero_skip_fragment.graphql create mode 100644 codegen/end_to_end_test_tristate/lib/directives/hero_skip_fragment_and_field.graphql diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.ast.gql.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.ast.gql.dart new file mode 100644 index 00000000..e46ca976 --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.ast.gql.dart @@ -0,0 +1,58 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:gql/ast.dart' as _i1; + +const HeroInclude = _i1.OperationDefinitionNode( + type: _i1.OperationType.query, + name: _i1.NameNode(value: 'HeroInclude'), + variableDefinitions: [ + _i1.VariableDefinitionNode( + variable: _i1.VariableNode(name: _i1.NameNode(value: 'includeId')), + type: _i1.NamedTypeNode( + name: _i1.NameNode(value: 'Boolean'), + isNonNull: true, + ), + defaultValue: _i1.DefaultValueNode(value: null), + directives: [], + ) + ], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'hero'), + alias: null, + arguments: [], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'id'), + alias: null, + arguments: [], + directives: [ + _i1.DirectiveNode( + name: _i1.NameNode(value: 'include'), + arguments: [ + _i1.ArgumentNode( + name: _i1.NameNode(value: 'if'), + value: + _i1.VariableNode(name: _i1.NameNode(value: 'includeId')), + ) + ], + ) + ], + selectionSet: null, + ), + _i1.FieldNode( + name: _i1.NameNode(value: 'name'), + alias: null, + arguments: [], + directives: [], + selectionSet: null, + ), + ]), + ) + ]), +); +const document = _i1.DocumentNode(definitions: [HeroInclude]); diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.data.gql.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.data.gql.dart new file mode 100644 index 00000000..6c392e34 --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.data.gql.dart @@ -0,0 +1,68 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test_tristate/graphql/__generated__/serializers.gql.dart' + as _i1; + +part 'hero_include.data.gql.g.dart'; + +abstract class GHeroIncludeData + implements Built { + GHeroIncludeData._(); + + factory GHeroIncludeData([void Function(GHeroIncludeDataBuilder b) updates]) = + _$GHeroIncludeData; + + static void _initializeBuilder(GHeroIncludeDataBuilder b) => + b..G__typename = 'Query'; + + @BuiltValueField(wireName: '__typename') + String get G__typename; + GHeroIncludeData_hero? get hero; + static Serializer get serializer => + _$gHeroIncludeDataSerializer; + + Map toJson() => (_i1.serializers.serializeWith( + GHeroIncludeData.serializer, + this, + ) as Map); + + static GHeroIncludeData? fromJson(Map json) => + _i1.serializers.deserializeWith( + GHeroIncludeData.serializer, + json, + ); +} + +abstract class GHeroIncludeData_hero + implements Built { + GHeroIncludeData_hero._(); + + factory GHeroIncludeData_hero( + [void Function(GHeroIncludeData_heroBuilder b) updates]) = + _$GHeroIncludeData_hero; + + static void _initializeBuilder(GHeroIncludeData_heroBuilder b) => + b..G__typename = 'Character'; + + @BuiltValueField(wireName: '__typename') + String get G__typename; + String? get id; + String get name; + static Serializer get serializer => + _$gHeroIncludeDataHeroSerializer; + + Map toJson() => (_i1.serializers.serializeWith( + GHeroIncludeData_hero.serializer, + this, + ) as Map); + + static GHeroIncludeData_hero? fromJson(Map json) => + _i1.serializers.deserializeWith( + GHeroIncludeData_hero.serializer, + json, + ); +} diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.data.gql.g.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.data.gql.g.dart new file mode 100644 index 00000000..55b6cdd1 --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.data.gql.g.dart @@ -0,0 +1,362 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_include.data.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroIncludeDataSerializer = + new _$GHeroIncludeDataSerializer(); +Serializer _$gHeroIncludeDataHeroSerializer = + new _$GHeroIncludeData_heroSerializer(); + +class _$GHeroIncludeDataSerializer + implements StructuredSerializer { + @override + final Iterable types = const [GHeroIncludeData, _$GHeroIncludeData]; + @override + final String wireName = 'GHeroIncludeData'; + + @override + Iterable serialize(Serializers serializers, GHeroIncludeData object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + ]; + Object? value; + value = object.hero; + if (value != null) { + result + ..add('hero') + ..add(serializers.serialize(value, + specifiedType: const FullType(GHeroIncludeData_hero))); + } + return result; + } + + @override + GHeroIncludeData deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroIncludeDataBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'hero': + result.hero.replace(serializers.deserialize(value, + specifiedType: const FullType(GHeroIncludeData_hero))! + as GHeroIncludeData_hero); + break; + } + } + + return result.build(); + } +} + +class _$GHeroIncludeData_heroSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroIncludeData_hero, + _$GHeroIncludeData_hero + ]; + @override + final String wireName = 'GHeroIncludeData_hero'; + + @override + Iterable serialize( + Serializers serializers, GHeroIncludeData_hero object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + 'name', + serializers.serialize(object.name, specifiedType: const FullType(String)), + ]; + Object? value; + value = object.id; + if (value != null) { + result + ..add('id') + ..add(serializers.serialize(value, + specifiedType: const FullType(String))); + } + return result; + } + + @override + GHeroIncludeData_hero deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroIncludeData_heroBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'id': + result.id = serializers.deserialize(value, + specifiedType: const FullType(String)) as String?; + break; + case 'name': + result.name = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + } + } + + return result.build(); + } +} + +class _$GHeroIncludeData extends GHeroIncludeData { + @override + final String G__typename; + @override + final GHeroIncludeData_hero? hero; + + factory _$GHeroIncludeData( + [void Function(GHeroIncludeDataBuilder)? updates]) => + (new GHeroIncludeDataBuilder()..update(updates))._build(); + + _$GHeroIncludeData._({required this.G__typename, this.hero}) : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroIncludeData', 'G__typename'); + } + + @override + GHeroIncludeData rebuild(void Function(GHeroIncludeDataBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroIncludeDataBuilder toBuilder() => + new GHeroIncludeDataBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroIncludeData && + G__typename == other.G__typename && + hero == other.hero; + } + + @override + int get hashCode { + var _$hash = 0; + _$hash = $jc(_$hash, G__typename.hashCode); + _$hash = $jc(_$hash, hero.hashCode); + _$hash = $jf(_$hash); + return _$hash; + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroIncludeData') + ..add('G__typename', G__typename) + ..add('hero', hero)) + .toString(); + } +} + +class GHeroIncludeDataBuilder + implements Builder { + _$GHeroIncludeData? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + GHeroIncludeData_heroBuilder? _hero; + GHeroIncludeData_heroBuilder get hero => + _$this._hero ??= new GHeroIncludeData_heroBuilder(); + set hero(GHeroIncludeData_heroBuilder? hero) => _$this._hero = hero; + + GHeroIncludeDataBuilder() { + GHeroIncludeData._initializeBuilder(this); + } + + GHeroIncludeDataBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _hero = $v.hero?.toBuilder(); + _$v = null; + } + return this; + } + + @override + void replace(GHeroIncludeData other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroIncludeData; + } + + @override + void update(void Function(GHeroIncludeDataBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroIncludeData build() => _build(); + + _$GHeroIncludeData _build() { + _$GHeroIncludeData _$result; + try { + _$result = _$v ?? + new _$GHeroIncludeData._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroIncludeData', 'G__typename'), + hero: _hero?.build()); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'hero'; + _hero?.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroIncludeData', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +class _$GHeroIncludeData_hero extends GHeroIncludeData_hero { + @override + final String G__typename; + @override + final String? id; + @override + final String name; + + factory _$GHeroIncludeData_hero( + [void Function(GHeroIncludeData_heroBuilder)? updates]) => + (new GHeroIncludeData_heroBuilder()..update(updates))._build(); + + _$GHeroIncludeData_hero._( + {required this.G__typename, this.id, required this.name}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroIncludeData_hero', 'G__typename'); + BuiltValueNullFieldError.checkNotNull( + name, r'GHeroIncludeData_hero', 'name'); + } + + @override + GHeroIncludeData_hero rebuild( + void Function(GHeroIncludeData_heroBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroIncludeData_heroBuilder toBuilder() => + new GHeroIncludeData_heroBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroIncludeData_hero && + G__typename == other.G__typename && + id == other.id && + name == other.name; + } + + @override + int get hashCode { + var _$hash = 0; + _$hash = $jc(_$hash, G__typename.hashCode); + _$hash = $jc(_$hash, id.hashCode); + _$hash = $jc(_$hash, name.hashCode); + _$hash = $jf(_$hash); + return _$hash; + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroIncludeData_hero') + ..add('G__typename', G__typename) + ..add('id', id) + ..add('name', name)) + .toString(); + } +} + +class GHeroIncludeData_heroBuilder + implements Builder { + _$GHeroIncludeData_hero? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + String? _id; + String? get id => _$this._id; + set id(String? id) => _$this._id = id; + + String? _name; + String? get name => _$this._name; + set name(String? name) => _$this._name = name; + + GHeroIncludeData_heroBuilder() { + GHeroIncludeData_hero._initializeBuilder(this); + } + + GHeroIncludeData_heroBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _id = $v.id; + _name = $v.name; + _$v = null; + } + return this; + } + + @override + void replace(GHeroIncludeData_hero other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroIncludeData_hero; + } + + @override + void update(void Function(GHeroIncludeData_heroBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroIncludeData_hero build() => _build(); + + _$GHeroIncludeData_hero _build() { + final _$result = _$v ?? + new _$GHeroIncludeData_hero._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroIncludeData_hero', 'G__typename'), + id: id, + name: BuiltValueNullFieldError.checkNotNull( + name, r'GHeroIncludeData_hero', 'name')); + replace(_$result); + return _$result; + } +} + +// ignore_for_file: deprecated_member_use_from_same_package,type=lint diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.req.gql.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.req.gql.dart new file mode 100644 index 00000000..dbef02af --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.req.gql.dart @@ -0,0 +1,44 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test_tristate/directives/__generated__/hero_include.ast.gql.dart' + as _i2; +import 'package:end_to_end_test_tristate/directives/__generated__/hero_include.var.gql.dart' + as _i3; +import 'package:end_to_end_test_tristate/graphql/__generated__/serializers.gql.dart' + as _i4; +import 'package:gql_exec/gql_exec.dart' as _i1; + +part 'hero_include.req.gql.g.dart'; + +abstract class GHeroInclude + implements Built { + GHeroInclude._(); + + factory GHeroInclude([void Function(GHeroIncludeBuilder b) updates]) = + _$GHeroInclude; + + static void _initializeBuilder(GHeroIncludeBuilder b) => b + ..operation = _i1.Operation( + document: _i2.document, + operationName: 'HeroInclude', + ); + + _i3.GHeroIncludeVars get vars; + _i1.Operation get operation; + static Serializer get serializer => _$gHeroIncludeSerializer; + + Map toJson() => (_i4.serializers.serializeWith( + GHeroInclude.serializer, + this, + ) as Map); + + static GHeroInclude? fromJson(Map json) => + _i4.serializers.deserializeWith( + GHeroInclude.serializer, + json, + ); +} diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.req.gql.g.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.req.gql.g.dart new file mode 100644 index 00000000..a1c62846 --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.req.gql.g.dart @@ -0,0 +1,174 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_include.req.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroIncludeSerializer = + new _$GHeroIncludeSerializer(); + +class _$GHeroIncludeSerializer implements StructuredSerializer { + @override + final Iterable types = const [GHeroInclude, _$GHeroInclude]; + @override + final String wireName = 'GHeroInclude'; + + @override + Iterable serialize(Serializers serializers, GHeroInclude object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + 'vars', + serializers.serialize(object.vars, + specifiedType: const FullType(_i3.GHeroIncludeVars)), + 'operation', + serializers.serialize(object.operation, + specifiedType: const FullType(_i1.Operation)), + ]; + + return result; + } + + @override + GHeroInclude deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroIncludeBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case 'vars': + result.vars.replace(serializers.deserialize(value, + specifiedType: const FullType(_i3.GHeroIncludeVars))! + as _i3.GHeroIncludeVars); + break; + case 'operation': + result.operation = serializers.deserialize(value, + specifiedType: const FullType(_i1.Operation))! as _i1.Operation; + break; + } + } + + return result.build(); + } +} + +class _$GHeroInclude extends GHeroInclude { + @override + final _i3.GHeroIncludeVars vars; + @override + final _i1.Operation operation; + + factory _$GHeroInclude([void Function(GHeroIncludeBuilder)? updates]) => + (new GHeroIncludeBuilder()..update(updates))._build(); + + _$GHeroInclude._({required this.vars, required this.operation}) : super._() { + BuiltValueNullFieldError.checkNotNull(vars, r'GHeroInclude', 'vars'); + BuiltValueNullFieldError.checkNotNull( + operation, r'GHeroInclude', 'operation'); + } + + @override + GHeroInclude rebuild(void Function(GHeroIncludeBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroIncludeBuilder toBuilder() => new GHeroIncludeBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroInclude && + vars == other.vars && + operation == other.operation; + } + + @override + int get hashCode { + var _$hash = 0; + _$hash = $jc(_$hash, vars.hashCode); + _$hash = $jc(_$hash, operation.hashCode); + _$hash = $jf(_$hash); + return _$hash; + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroInclude') + ..add('vars', vars) + ..add('operation', operation)) + .toString(); + } +} + +class GHeroIncludeBuilder + implements Builder { + _$GHeroInclude? _$v; + + _i3.GHeroIncludeVarsBuilder? _vars; + _i3.GHeroIncludeVarsBuilder get vars => + _$this._vars ??= new _i3.GHeroIncludeVarsBuilder(); + set vars(_i3.GHeroIncludeVarsBuilder? vars) => _$this._vars = vars; + + _i1.Operation? _operation; + _i1.Operation? get operation => _$this._operation; + set operation(_i1.Operation? operation) => _$this._operation = operation; + + GHeroIncludeBuilder() { + GHeroInclude._initializeBuilder(this); + } + + GHeroIncludeBuilder get _$this { + final $v = _$v; + if ($v != null) { + _vars = $v.vars.toBuilder(); + _operation = $v.operation; + _$v = null; + } + return this; + } + + @override + void replace(GHeroInclude other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroInclude; + } + + @override + void update(void Function(GHeroIncludeBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroInclude build() => _build(); + + _$GHeroInclude _build() { + _$GHeroInclude _$result; + try { + _$result = _$v ?? + new _$GHeroInclude._( + vars: vars.build(), + operation: BuiltValueNullFieldError.checkNotNull( + operation, r'GHeroInclude', 'operation')); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'vars'; + vars.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroInclude', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +// ignore_for_file: deprecated_member_use_from_same_package,type=lint diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.var.gql.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.var.gql.dart new file mode 100644 index 00000000..faabccb7 --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.var.gql.dart @@ -0,0 +1,75 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test_tristate/graphql/__generated__/serializers.gql.dart' + as _i1; + +part 'hero_include.var.gql.g.dart'; + +abstract class GHeroIncludeVars + implements Built { + GHeroIncludeVars._(); + + factory GHeroIncludeVars([void Function(GHeroIncludeVarsBuilder b) updates]) = + _$GHeroIncludeVars; + + bool get includeId; + Map toJson() => (_i1.serializers.serializeWith( + GHeroIncludeVars.serializer, + this, + ) as Map); + + static GHeroIncludeVars? fromJson(Map json) => + _i1.serializers.deserializeWith( + GHeroIncludeVars.serializer, + json, + ); + + @BuiltValueSerializer(custom: true, serializeNulls: true) + static Serializer get serializer => + GHeroIncludeVarsSerializer(); +} + +final class GHeroIncludeVarsSerializer + extends StructuredSerializer { + final String wireName = 'GHeroIncludeVars'; + + final Iterable types = const [GHeroIncludeVars, _$GHeroIncludeVars]; + + Iterable serialize( + Serializers serializers, + GHeroIncludeVars object, { + FullType specifiedType = FullType.unspecified, + }) { + final result = []; + result.add('includeId'); + result.add(serializers.serialize(object.includeId, + specifiedType: const FullType(bool))); + return result; + } + + GHeroIncludeVars deserialize( + Serializers serializers, + Iterable serialized, { + FullType specifiedType = FullType.unspecified, + }) { + final builder = GHeroIncludeVarsBuilder(); + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case 'includeId': + var _$fieldValue = serializers.deserialize(value, + specifiedType: const FullType(bool)) as bool; + builder.includeId = _$fieldValue; + break; + } + } + return builder.build(); + } +} diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.var.gql.g.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.var.gql.g.dart new file mode 100644 index 00000000..8ce6c7da --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_include.var.gql.g.dart @@ -0,0 +1,95 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_include.var.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +class _$GHeroIncludeVars extends GHeroIncludeVars { + @override + final bool includeId; + + factory _$GHeroIncludeVars( + [void Function(GHeroIncludeVarsBuilder)? updates]) => + (new GHeroIncludeVarsBuilder()..update(updates))._build(); + + _$GHeroIncludeVars._({required this.includeId}) : super._() { + BuiltValueNullFieldError.checkNotNull( + includeId, r'GHeroIncludeVars', 'includeId'); + } + + @override + GHeroIncludeVars rebuild(void Function(GHeroIncludeVarsBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroIncludeVarsBuilder toBuilder() => + new GHeroIncludeVarsBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroIncludeVars && includeId == other.includeId; + } + + @override + int get hashCode { + var _$hash = 0; + _$hash = $jc(_$hash, includeId.hashCode); + _$hash = $jf(_$hash); + return _$hash; + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroIncludeVars') + ..add('includeId', includeId)) + .toString(); + } +} + +class GHeroIncludeVarsBuilder + implements Builder { + _$GHeroIncludeVars? _$v; + + bool? _includeId; + bool? get includeId => _$this._includeId; + set includeId(bool? includeId) => _$this._includeId = includeId; + + GHeroIncludeVarsBuilder(); + + GHeroIncludeVarsBuilder get _$this { + final $v = _$v; + if ($v != null) { + _includeId = $v.includeId; + _$v = null; + } + return this; + } + + @override + void replace(GHeroIncludeVars other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroIncludeVars; + } + + @override + void update(void Function(GHeroIncludeVarsBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroIncludeVars build() => _build(); + + _$GHeroIncludeVars _build() { + final _$result = _$v ?? + new _$GHeroIncludeVars._( + includeId: BuiltValueNullFieldError.checkNotNull( + includeId, r'GHeroIncludeVars', 'includeId')); + replace(_$result); + return _$result; + } +} + +// ignore_for_file: deprecated_member_use_from_same_package,type=lint diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.ast.gql.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.ast.gql.dart new file mode 100644 index 00000000..dca33e70 --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.ast.gql.dart @@ -0,0 +1,58 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:gql/ast.dart' as _i1; + +const HeroSkip = _i1.OperationDefinitionNode( + type: _i1.OperationType.query, + name: _i1.NameNode(value: 'HeroSkip'), + variableDefinitions: [ + _i1.VariableDefinitionNode( + variable: _i1.VariableNode(name: _i1.NameNode(value: 'skipName')), + type: _i1.NamedTypeNode( + name: _i1.NameNode(value: 'Boolean'), + isNonNull: true, + ), + defaultValue: _i1.DefaultValueNode(value: null), + directives: [], + ) + ], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'hero'), + alias: null, + arguments: [], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'id'), + alias: null, + arguments: [], + directives: [], + selectionSet: null, + ), + _i1.FieldNode( + name: _i1.NameNode(value: 'name'), + alias: null, + arguments: [], + directives: [ + _i1.DirectiveNode( + name: _i1.NameNode(value: 'skip'), + arguments: [ + _i1.ArgumentNode( + name: _i1.NameNode(value: 'if'), + value: + _i1.VariableNode(name: _i1.NameNode(value: 'skipName')), + ) + ], + ) + ], + selectionSet: null, + ), + ]), + ) + ]), +); +const document = _i1.DocumentNode(definitions: [HeroSkip]); diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.data.gql.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.data.gql.dart new file mode 100644 index 00000000..dfe68bf6 --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.data.gql.dart @@ -0,0 +1,67 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test_tristate/graphql/__generated__/serializers.gql.dart' + as _i1; + +part 'hero_skip.data.gql.g.dart'; + +abstract class GHeroSkipData + implements Built { + GHeroSkipData._(); + + factory GHeroSkipData([void Function(GHeroSkipDataBuilder b) updates]) = + _$GHeroSkipData; + + static void _initializeBuilder(GHeroSkipDataBuilder b) => + b..G__typename = 'Query'; + + @BuiltValueField(wireName: '__typename') + String get G__typename; + GHeroSkipData_hero? get hero; + static Serializer get serializer => _$gHeroSkipDataSerializer; + + Map toJson() => (_i1.serializers.serializeWith( + GHeroSkipData.serializer, + this, + ) as Map); + + static GHeroSkipData? fromJson(Map json) => + _i1.serializers.deserializeWith( + GHeroSkipData.serializer, + json, + ); +} + +abstract class GHeroSkipData_hero + implements Built { + GHeroSkipData_hero._(); + + factory GHeroSkipData_hero( + [void Function(GHeroSkipData_heroBuilder b) updates]) = + _$GHeroSkipData_hero; + + static void _initializeBuilder(GHeroSkipData_heroBuilder b) => + b..G__typename = 'Character'; + + @BuiltValueField(wireName: '__typename') + String get G__typename; + String get id; + String? get name; + static Serializer get serializer => + _$gHeroSkipDataHeroSerializer; + + Map toJson() => (_i1.serializers.serializeWith( + GHeroSkipData_hero.serializer, + this, + ) as Map); + + static GHeroSkipData_hero? fromJson(Map json) => + _i1.serializers.deserializeWith( + GHeroSkipData_hero.serializer, + json, + ); +} diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.data.gql.g.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.data.gql.g.dart new file mode 100644 index 00000000..51056c34 --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.data.gql.g.dart @@ -0,0 +1,355 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_skip.data.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroSkipDataSerializer = + new _$GHeroSkipDataSerializer(); +Serializer _$gHeroSkipDataHeroSerializer = + new _$GHeroSkipData_heroSerializer(); + +class _$GHeroSkipDataSerializer implements StructuredSerializer { + @override + final Iterable types = const [GHeroSkipData, _$GHeroSkipData]; + @override + final String wireName = 'GHeroSkipData'; + + @override + Iterable serialize(Serializers serializers, GHeroSkipData object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + ]; + Object? value; + value = object.hero; + if (value != null) { + result + ..add('hero') + ..add(serializers.serialize(value, + specifiedType: const FullType(GHeroSkipData_hero))); + } + return result; + } + + @override + GHeroSkipData deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroSkipDataBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'hero': + result.hero.replace(serializers.deserialize(value, + specifiedType: const FullType(GHeroSkipData_hero))! + as GHeroSkipData_hero); + break; + } + } + + return result.build(); + } +} + +class _$GHeroSkipData_heroSerializer + implements StructuredSerializer { + @override + final Iterable types = const [GHeroSkipData_hero, _$GHeroSkipData_hero]; + @override + final String wireName = 'GHeroSkipData_hero'; + + @override + Iterable serialize( + Serializers serializers, GHeroSkipData_hero object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + 'id', + serializers.serialize(object.id, specifiedType: const FullType(String)), + ]; + Object? value; + value = object.name; + if (value != null) { + result + ..add('name') + ..add(serializers.serialize(value, + specifiedType: const FullType(String))); + } + return result; + } + + @override + GHeroSkipData_hero deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroSkipData_heroBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'id': + result.id = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'name': + result.name = serializers.deserialize(value, + specifiedType: const FullType(String)) as String?; + break; + } + } + + return result.build(); + } +} + +class _$GHeroSkipData extends GHeroSkipData { + @override + final String G__typename; + @override + final GHeroSkipData_hero? hero; + + factory _$GHeroSkipData([void Function(GHeroSkipDataBuilder)? updates]) => + (new GHeroSkipDataBuilder()..update(updates))._build(); + + _$GHeroSkipData._({required this.G__typename, this.hero}) : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipData', 'G__typename'); + } + + @override + GHeroSkipData rebuild(void Function(GHeroSkipDataBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipDataBuilder toBuilder() => new GHeroSkipDataBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkipData && + G__typename == other.G__typename && + hero == other.hero; + } + + @override + int get hashCode { + var _$hash = 0; + _$hash = $jc(_$hash, G__typename.hashCode); + _$hash = $jc(_$hash, hero.hashCode); + _$hash = $jf(_$hash); + return _$hash; + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkipData') + ..add('G__typename', G__typename) + ..add('hero', hero)) + .toString(); + } +} + +class GHeroSkipDataBuilder + implements Builder { + _$GHeroSkipData? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + GHeroSkipData_heroBuilder? _hero; + GHeroSkipData_heroBuilder get hero => + _$this._hero ??= new GHeroSkipData_heroBuilder(); + set hero(GHeroSkipData_heroBuilder? hero) => _$this._hero = hero; + + GHeroSkipDataBuilder() { + GHeroSkipData._initializeBuilder(this); + } + + GHeroSkipDataBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _hero = $v.hero?.toBuilder(); + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkipData other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkipData; + } + + @override + void update(void Function(GHeroSkipDataBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkipData build() => _build(); + + _$GHeroSkipData _build() { + _$GHeroSkipData _$result; + try { + _$result = _$v ?? + new _$GHeroSkipData._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipData', 'G__typename'), + hero: _hero?.build()); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'hero'; + _hero?.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroSkipData', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +class _$GHeroSkipData_hero extends GHeroSkipData_hero { + @override + final String G__typename; + @override + final String id; + @override + final String? name; + + factory _$GHeroSkipData_hero( + [void Function(GHeroSkipData_heroBuilder)? updates]) => + (new GHeroSkipData_heroBuilder()..update(updates))._build(); + + _$GHeroSkipData_hero._( + {required this.G__typename, required this.id, this.name}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipData_hero', 'G__typename'); + BuiltValueNullFieldError.checkNotNull(id, r'GHeroSkipData_hero', 'id'); + } + + @override + GHeroSkipData_hero rebuild( + void Function(GHeroSkipData_heroBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipData_heroBuilder toBuilder() => + new GHeroSkipData_heroBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkipData_hero && + G__typename == other.G__typename && + id == other.id && + name == other.name; + } + + @override + int get hashCode { + var _$hash = 0; + _$hash = $jc(_$hash, G__typename.hashCode); + _$hash = $jc(_$hash, id.hashCode); + _$hash = $jc(_$hash, name.hashCode); + _$hash = $jf(_$hash); + return _$hash; + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkipData_hero') + ..add('G__typename', G__typename) + ..add('id', id) + ..add('name', name)) + .toString(); + } +} + +class GHeroSkipData_heroBuilder + implements Builder { + _$GHeroSkipData_hero? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + String? _id; + String? get id => _$this._id; + set id(String? id) => _$this._id = id; + + String? _name; + String? get name => _$this._name; + set name(String? name) => _$this._name = name; + + GHeroSkipData_heroBuilder() { + GHeroSkipData_hero._initializeBuilder(this); + } + + GHeroSkipData_heroBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _id = $v.id; + _name = $v.name; + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkipData_hero other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkipData_hero; + } + + @override + void update(void Function(GHeroSkipData_heroBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkipData_hero build() => _build(); + + _$GHeroSkipData_hero _build() { + final _$result = _$v ?? + new _$GHeroSkipData_hero._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipData_hero', 'G__typename'), + id: BuiltValueNullFieldError.checkNotNull( + id, r'GHeroSkipData_hero', 'id'), + name: name); + replace(_$result); + return _$result; + } +} + +// ignore_for_file: deprecated_member_use_from_same_package,type=lint diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.req.gql.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.req.gql.dart new file mode 100644 index 00000000..92496f93 --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.req.gql.dart @@ -0,0 +1,42 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test_tristate/directives/__generated__/hero_skip.ast.gql.dart' + as _i2; +import 'package:end_to_end_test_tristate/directives/__generated__/hero_skip.var.gql.dart' + as _i3; +import 'package:end_to_end_test_tristate/graphql/__generated__/serializers.gql.dart' + as _i4; +import 'package:gql_exec/gql_exec.dart' as _i1; + +part 'hero_skip.req.gql.g.dart'; + +abstract class GHeroSkip implements Built { + GHeroSkip._(); + + factory GHeroSkip([void Function(GHeroSkipBuilder b) updates]) = _$GHeroSkip; + + static void _initializeBuilder(GHeroSkipBuilder b) => b + ..operation = _i1.Operation( + document: _i2.document, + operationName: 'HeroSkip', + ); + + _i3.GHeroSkipVars get vars; + _i1.Operation get operation; + static Serializer get serializer => _$gHeroSkipSerializer; + + Map toJson() => (_i4.serializers.serializeWith( + GHeroSkip.serializer, + this, + ) as Map); + + static GHeroSkip? fromJson(Map json) => + _i4.serializers.deserializeWith( + GHeroSkip.serializer, + json, + ); +} diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.req.gql.g.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.req.gql.g.dart new file mode 100644 index 00000000..a6995177 --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.req.gql.g.dart @@ -0,0 +1,170 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_skip.req.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroSkipSerializer = new _$GHeroSkipSerializer(); + +class _$GHeroSkipSerializer implements StructuredSerializer { + @override + final Iterable types = const [GHeroSkip, _$GHeroSkip]; + @override + final String wireName = 'GHeroSkip'; + + @override + Iterable serialize(Serializers serializers, GHeroSkip object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + 'vars', + serializers.serialize(object.vars, + specifiedType: const FullType(_i3.GHeroSkipVars)), + 'operation', + serializers.serialize(object.operation, + specifiedType: const FullType(_i1.Operation)), + ]; + + return result; + } + + @override + GHeroSkip deserialize(Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroSkipBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case 'vars': + result.vars.replace(serializers.deserialize(value, + specifiedType: const FullType(_i3.GHeroSkipVars))! + as _i3.GHeroSkipVars); + break; + case 'operation': + result.operation = serializers.deserialize(value, + specifiedType: const FullType(_i1.Operation))! as _i1.Operation; + break; + } + } + + return result.build(); + } +} + +class _$GHeroSkip extends GHeroSkip { + @override + final _i3.GHeroSkipVars vars; + @override + final _i1.Operation operation; + + factory _$GHeroSkip([void Function(GHeroSkipBuilder)? updates]) => + (new GHeroSkipBuilder()..update(updates))._build(); + + _$GHeroSkip._({required this.vars, required this.operation}) : super._() { + BuiltValueNullFieldError.checkNotNull(vars, r'GHeroSkip', 'vars'); + BuiltValueNullFieldError.checkNotNull(operation, r'GHeroSkip', 'operation'); + } + + @override + GHeroSkip rebuild(void Function(GHeroSkipBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipBuilder toBuilder() => new GHeroSkipBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkip && + vars == other.vars && + operation == other.operation; + } + + @override + int get hashCode { + var _$hash = 0; + _$hash = $jc(_$hash, vars.hashCode); + _$hash = $jc(_$hash, operation.hashCode); + _$hash = $jf(_$hash); + return _$hash; + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkip') + ..add('vars', vars) + ..add('operation', operation)) + .toString(); + } +} + +class GHeroSkipBuilder implements Builder { + _$GHeroSkip? _$v; + + _i3.GHeroSkipVarsBuilder? _vars; + _i3.GHeroSkipVarsBuilder get vars => + _$this._vars ??= new _i3.GHeroSkipVarsBuilder(); + set vars(_i3.GHeroSkipVarsBuilder? vars) => _$this._vars = vars; + + _i1.Operation? _operation; + _i1.Operation? get operation => _$this._operation; + set operation(_i1.Operation? operation) => _$this._operation = operation; + + GHeroSkipBuilder() { + GHeroSkip._initializeBuilder(this); + } + + GHeroSkipBuilder get _$this { + final $v = _$v; + if ($v != null) { + _vars = $v.vars.toBuilder(); + _operation = $v.operation; + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkip other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkip; + } + + @override + void update(void Function(GHeroSkipBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkip build() => _build(); + + _$GHeroSkip _build() { + _$GHeroSkip _$result; + try { + _$result = _$v ?? + new _$GHeroSkip._( + vars: vars.build(), + operation: BuiltValueNullFieldError.checkNotNull( + operation, r'GHeroSkip', 'operation')); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'vars'; + vars.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroSkip', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +// ignore_for_file: deprecated_member_use_from_same_package,type=lint diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.var.gql.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.var.gql.dart new file mode 100644 index 00000000..ddd00b33 --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.var.gql.dart @@ -0,0 +1,74 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test_tristate/graphql/__generated__/serializers.gql.dart' + as _i1; + +part 'hero_skip.var.gql.g.dart'; + +abstract class GHeroSkipVars + implements Built { + GHeroSkipVars._(); + + factory GHeroSkipVars([void Function(GHeroSkipVarsBuilder b) updates]) = + _$GHeroSkipVars; + + bool get skipName; + Map toJson() => (_i1.serializers.serializeWith( + GHeroSkipVars.serializer, + this, + ) as Map); + + static GHeroSkipVars? fromJson(Map json) => + _i1.serializers.deserializeWith( + GHeroSkipVars.serializer, + json, + ); + + @BuiltValueSerializer(custom: true, serializeNulls: true) + static Serializer get serializer => GHeroSkipVarsSerializer(); +} + +final class GHeroSkipVarsSerializer + extends StructuredSerializer { + final String wireName = 'GHeroSkipVars'; + + final Iterable types = const [GHeroSkipVars, _$GHeroSkipVars]; + + Iterable serialize( + Serializers serializers, + GHeroSkipVars object, { + FullType specifiedType = FullType.unspecified, + }) { + final result = []; + result.add('skipName'); + result.add(serializers.serialize(object.skipName, + specifiedType: const FullType(bool))); + return result; + } + + GHeroSkipVars deserialize( + Serializers serializers, + Iterable serialized, { + FullType specifiedType = FullType.unspecified, + }) { + final builder = GHeroSkipVarsBuilder(); + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case 'skipName': + var _$fieldValue = serializers.deserialize(value, + specifiedType: const FullType(bool)) as bool; + builder.skipName = _$fieldValue; + break; + } + } + return builder.build(); + } +} diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.var.gql.g.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.var.gql.g.dart new file mode 100644 index 00000000..85375464 --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip.var.gql.g.dart @@ -0,0 +1,93 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_skip.var.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +class _$GHeroSkipVars extends GHeroSkipVars { + @override + final bool skipName; + + factory _$GHeroSkipVars([void Function(GHeroSkipVarsBuilder)? updates]) => + (new GHeroSkipVarsBuilder()..update(updates))._build(); + + _$GHeroSkipVars._({required this.skipName}) : super._() { + BuiltValueNullFieldError.checkNotNull( + skipName, r'GHeroSkipVars', 'skipName'); + } + + @override + GHeroSkipVars rebuild(void Function(GHeroSkipVarsBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipVarsBuilder toBuilder() => new GHeroSkipVarsBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkipVars && skipName == other.skipName; + } + + @override + int get hashCode { + var _$hash = 0; + _$hash = $jc(_$hash, skipName.hashCode); + _$hash = $jf(_$hash); + return _$hash; + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkipVars') + ..add('skipName', skipName)) + .toString(); + } +} + +class GHeroSkipVarsBuilder + implements Builder { + _$GHeroSkipVars? _$v; + + bool? _skipName; + bool? get skipName => _$this._skipName; + set skipName(bool? skipName) => _$this._skipName = skipName; + + GHeroSkipVarsBuilder(); + + GHeroSkipVarsBuilder get _$this { + final $v = _$v; + if ($v != null) { + _skipName = $v.skipName; + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkipVars other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkipVars; + } + + @override + void update(void Function(GHeroSkipVarsBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkipVars build() => _build(); + + _$GHeroSkipVars _build() { + final _$result = _$v ?? + new _$GHeroSkipVars._( + skipName: BuiltValueNullFieldError.checkNotNull( + skipName, r'GHeroSkipVars', 'skipName')); + replace(_$result); + return _$result; + } +} + +// ignore_for_file: deprecated_member_use_from_same_package,type=lint diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.ast.gql.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.ast.gql.dart new file mode 100644 index 00000000..1cbd4aaa --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.ast.gql.dart @@ -0,0 +1,105 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:gql/ast.dart' as _i1; + +const HeroSkipFragment = _i1.OperationDefinitionNode( + type: _i1.OperationType.query, + name: _i1.NameNode(value: 'HeroSkipFragment'), + variableDefinitions: [ + _i1.VariableDefinitionNode( + variable: _i1.VariableNode(name: _i1.NameNode(value: 'skipDetails')), + type: _i1.NamedTypeNode( + name: _i1.NameNode(value: 'Boolean'), + isNonNull: true, + ), + defaultValue: _i1.DefaultValueNode(value: null), + directives: [], + ) + ], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'hero'), + alias: null, + arguments: [], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'id'), + alias: null, + arguments: [], + directives: [], + selectionSet: null, + ), + _i1.FragmentSpreadNode( + name: _i1.NameNode(value: 'HeroDetail'), + directives: [ + _i1.DirectiveNode( + name: _i1.NameNode(value: 'skip'), + arguments: [ + _i1.ArgumentNode( + name: _i1.NameNode(value: 'if'), + value: _i1.VariableNode( + name: _i1.NameNode(value: 'skipDetails')), + ) + ], + ) + ], + ), + ]), + ) + ]), +); +const HeroDetail = _i1.FragmentDefinitionNode( + name: _i1.NameNode(value: 'HeroDetail'), + typeCondition: _i1.TypeConditionNode( + on: _i1.NamedTypeNode( + name: _i1.NameNode(value: 'Character'), + isNonNull: false, + )), + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'id'), + alias: null, + arguments: [], + directives: [], + selectionSet: null, + ), + _i1.FieldNode( + name: _i1.NameNode(value: 'name'), + alias: null, + arguments: [], + directives: [], + selectionSet: null, + ), + _i1.FieldNode( + name: _i1.NameNode(value: 'friends'), + alias: null, + arguments: [], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'id'), + alias: null, + arguments: [], + directives: [], + selectionSet: null, + ), + _i1.FieldNode( + name: _i1.NameNode(value: 'name'), + alias: null, + arguments: [], + directives: [], + selectionSet: null, + ), + ]), + ), + ]), +); +const document = _i1.DocumentNode(definitions: [ + HeroSkipFragment, + HeroDetail, +]); diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.data.gql.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.data.gql.dart new file mode 100644 index 00000000..b390c734 --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.data.gql.dart @@ -0,0 +1,202 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_collection/built_collection.dart'; +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test_tristate/graphql/__generated__/serializers.gql.dart' + as _i1; + +part 'hero_skip_fragment.data.gql.g.dart'; + +abstract class GHeroSkipFragmentData + implements Built { + GHeroSkipFragmentData._(); + + factory GHeroSkipFragmentData( + [void Function(GHeroSkipFragmentDataBuilder b) updates]) = + _$GHeroSkipFragmentData; + + static void _initializeBuilder(GHeroSkipFragmentDataBuilder b) => + b..G__typename = 'Query'; + + @BuiltValueField(wireName: '__typename') + String get G__typename; + GHeroSkipFragmentData_hero? get hero; + static Serializer get serializer => + _$gHeroSkipFragmentDataSerializer; + + Map toJson() => (_i1.serializers.serializeWith( + GHeroSkipFragmentData.serializer, + this, + ) as Map); + + static GHeroSkipFragmentData? fromJson(Map json) => + _i1.serializers.deserializeWith( + GHeroSkipFragmentData.serializer, + json, + ); +} + +abstract class GHeroSkipFragmentData_hero + implements + Built, + GHeroDetail { + GHeroSkipFragmentData_hero._(); + + factory GHeroSkipFragmentData_hero( + [void Function(GHeroSkipFragmentData_heroBuilder b) updates]) = + _$GHeroSkipFragmentData_hero; + + static void _initializeBuilder(GHeroSkipFragmentData_heroBuilder b) => + b..G__typename = 'Character'; + + @override + @BuiltValueField(wireName: '__typename') + String get G__typename; + @override + String get id; + @override + String get name; + @override + BuiltList? get friends; + static Serializer get serializer => + _$gHeroSkipFragmentDataHeroSerializer; + + @override + Map toJson() => (_i1.serializers.serializeWith( + GHeroSkipFragmentData_hero.serializer, + this, + ) as Map); + + static GHeroSkipFragmentData_hero? fromJson(Map json) => + _i1.serializers.deserializeWith( + GHeroSkipFragmentData_hero.serializer, + json, + ); +} + +abstract class GHeroSkipFragmentData_hero_friends + implements + Built, + GHeroDetail_friends { + GHeroSkipFragmentData_hero_friends._(); + + factory GHeroSkipFragmentData_hero_friends( + [void Function(GHeroSkipFragmentData_hero_friendsBuilder b) + updates]) = _$GHeroSkipFragmentData_hero_friends; + + static void _initializeBuilder(GHeroSkipFragmentData_hero_friendsBuilder b) => + b..G__typename = 'Character'; + + @override + @BuiltValueField(wireName: '__typename') + String get G__typename; + @override + String get id; + @override + String get name; + static Serializer get serializer => + _$gHeroSkipFragmentDataHeroFriendsSerializer; + + @override + Map toJson() => (_i1.serializers.serializeWith( + GHeroSkipFragmentData_hero_friends.serializer, + this, + ) as Map); + + static GHeroSkipFragmentData_hero_friends? fromJson( + Map json) => + _i1.serializers.deserializeWith( + GHeroSkipFragmentData_hero_friends.serializer, + json, + ); +} + +abstract class GHeroDetail { + String get G__typename; + String get id; + String get name; + BuiltList? get friends; + Map toJson(); +} + +abstract class GHeroDetail_friends { + String get G__typename; + String get id; + String get name; + Map toJson(); +} + +abstract class GHeroDetailData + implements Built, GHeroDetail { + GHeroDetailData._(); + + factory GHeroDetailData([void Function(GHeroDetailDataBuilder b) updates]) = + _$GHeroDetailData; + + static void _initializeBuilder(GHeroDetailDataBuilder b) => + b..G__typename = 'Character'; + + @override + @BuiltValueField(wireName: '__typename') + String get G__typename; + @override + String get id; + @override + String get name; + @override + BuiltList? get friends; + static Serializer get serializer => + _$gHeroDetailDataSerializer; + + @override + Map toJson() => (_i1.serializers.serializeWith( + GHeroDetailData.serializer, + this, + ) as Map); + + static GHeroDetailData? fromJson(Map json) => + _i1.serializers.deserializeWith( + GHeroDetailData.serializer, + json, + ); +} + +abstract class GHeroDetailData_friends + implements + Built, + GHeroDetail_friends { + GHeroDetailData_friends._(); + + factory GHeroDetailData_friends( + [void Function(GHeroDetailData_friendsBuilder b) updates]) = + _$GHeroDetailData_friends; + + static void _initializeBuilder(GHeroDetailData_friendsBuilder b) => + b..G__typename = 'Character'; + + @override + @BuiltValueField(wireName: '__typename') + String get G__typename; + @override + String get id; + @override + String get name; + static Serializer get serializer => + _$gHeroDetailDataFriendsSerializer; + + @override + Map toJson() => (_i1.serializers.serializeWith( + GHeroDetailData_friends.serializer, + this, + ) as Map); + + static GHeroDetailData_friends? fromJson(Map json) => + _i1.serializers.deserializeWith( + GHeroDetailData_friends.serializer, + json, + ); +} diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.data.gql.g.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.data.gql.g.dart new file mode 100644 index 00000000..4d7c0936 --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.data.gql.g.dart @@ -0,0 +1,994 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_skip_fragment.data.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroSkipFragmentDataSerializer = + new _$GHeroSkipFragmentDataSerializer(); +Serializer _$gHeroSkipFragmentDataHeroSerializer = + new _$GHeroSkipFragmentData_heroSerializer(); +Serializer + _$gHeroSkipFragmentDataHeroFriendsSerializer = + new _$GHeroSkipFragmentData_hero_friendsSerializer(); +Serializer _$gHeroDetailDataSerializer = + new _$GHeroDetailDataSerializer(); +Serializer _$gHeroDetailDataFriendsSerializer = + new _$GHeroDetailData_friendsSerializer(); + +class _$GHeroSkipFragmentDataSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroSkipFragmentData, + _$GHeroSkipFragmentData + ]; + @override + final String wireName = 'GHeroSkipFragmentData'; + + @override + Iterable serialize( + Serializers serializers, GHeroSkipFragmentData object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + ]; + Object? value; + value = object.hero; + if (value != null) { + result + ..add('hero') + ..add(serializers.serialize(value, + specifiedType: const FullType(GHeroSkipFragmentData_hero))); + } + return result; + } + + @override + GHeroSkipFragmentData deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroSkipFragmentDataBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'hero': + result.hero.replace(serializers.deserialize(value, + specifiedType: const FullType(GHeroSkipFragmentData_hero))! + as GHeroSkipFragmentData_hero); + break; + } + } + + return result.build(); + } +} + +class _$GHeroSkipFragmentData_heroSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroSkipFragmentData_hero, + _$GHeroSkipFragmentData_hero + ]; + @override + final String wireName = 'GHeroSkipFragmentData_hero'; + + @override + Iterable serialize( + Serializers serializers, GHeroSkipFragmentData_hero object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + 'id', + serializers.serialize(object.id, specifiedType: const FullType(String)), + 'name', + serializers.serialize(object.name, specifiedType: const FullType(String)), + ]; + Object? value; + value = object.friends; + if (value != null) { + result + ..add('friends') + ..add(serializers.serialize(value, + specifiedType: const FullType(BuiltList, const [ + const FullType.nullable(GHeroSkipFragmentData_hero_friends) + ]))); + } + return result; + } + + @override + GHeroSkipFragmentData_hero deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroSkipFragmentData_heroBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'id': + result.id = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'name': + result.name = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'friends': + result.friends.replace(serializers.deserialize(value, + specifiedType: const FullType(BuiltList, const [ + const FullType.nullable(GHeroSkipFragmentData_hero_friends) + ]))! as BuiltList); + break; + } + } + + return result.build(); + } +} + +class _$GHeroSkipFragmentData_hero_friendsSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroSkipFragmentData_hero_friends, + _$GHeroSkipFragmentData_hero_friends + ]; + @override + final String wireName = 'GHeroSkipFragmentData_hero_friends'; + + @override + Iterable serialize( + Serializers serializers, GHeroSkipFragmentData_hero_friends object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + 'id', + serializers.serialize(object.id, specifiedType: const FullType(String)), + 'name', + serializers.serialize(object.name, specifiedType: const FullType(String)), + ]; + + return result; + } + + @override + GHeroSkipFragmentData_hero_friends deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroSkipFragmentData_hero_friendsBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'id': + result.id = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'name': + result.name = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + } + } + + return result.build(); + } +} + +class _$GHeroDetailDataSerializer + implements StructuredSerializer { + @override + final Iterable types = const [GHeroDetailData, _$GHeroDetailData]; + @override + final String wireName = 'GHeroDetailData'; + + @override + Iterable serialize(Serializers serializers, GHeroDetailData object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + 'id', + serializers.serialize(object.id, specifiedType: const FullType(String)), + 'name', + serializers.serialize(object.name, specifiedType: const FullType(String)), + ]; + Object? value; + value = object.friends; + if (value != null) { + result + ..add('friends') + ..add(serializers.serialize(value, + specifiedType: const FullType(BuiltList, + const [const FullType.nullable(GHeroDetailData_friends)]))); + } + return result; + } + + @override + GHeroDetailData deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroDetailDataBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'id': + result.id = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'name': + result.name = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'friends': + result.friends.replace(serializers.deserialize(value, + specifiedType: const FullType(BuiltList, const [ + const FullType.nullable(GHeroDetailData_friends) + ]))! as BuiltList); + break; + } + } + + return result.build(); + } +} + +class _$GHeroDetailData_friendsSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroDetailData_friends, + _$GHeroDetailData_friends + ]; + @override + final String wireName = 'GHeroDetailData_friends'; + + @override + Iterable serialize( + Serializers serializers, GHeroDetailData_friends object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + 'id', + serializers.serialize(object.id, specifiedType: const FullType(String)), + 'name', + serializers.serialize(object.name, specifiedType: const FullType(String)), + ]; + + return result; + } + + @override + GHeroDetailData_friends deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroDetailData_friendsBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'id': + result.id = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'name': + result.name = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + } + } + + return result.build(); + } +} + +class _$GHeroSkipFragmentData extends GHeroSkipFragmentData { + @override + final String G__typename; + @override + final GHeroSkipFragmentData_hero? hero; + + factory _$GHeroSkipFragmentData( + [void Function(GHeroSkipFragmentDataBuilder)? updates]) => + (new GHeroSkipFragmentDataBuilder()..update(updates))._build(); + + _$GHeroSkipFragmentData._({required this.G__typename, this.hero}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipFragmentData', 'G__typename'); + } + + @override + GHeroSkipFragmentData rebuild( + void Function(GHeroSkipFragmentDataBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipFragmentDataBuilder toBuilder() => + new GHeroSkipFragmentDataBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkipFragmentData && + G__typename == other.G__typename && + hero == other.hero; + } + + @override + int get hashCode { + var _$hash = 0; + _$hash = $jc(_$hash, G__typename.hashCode); + _$hash = $jc(_$hash, hero.hashCode); + _$hash = $jf(_$hash); + return _$hash; + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkipFragmentData') + ..add('G__typename', G__typename) + ..add('hero', hero)) + .toString(); + } +} + +class GHeroSkipFragmentDataBuilder + implements Builder { + _$GHeroSkipFragmentData? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + GHeroSkipFragmentData_heroBuilder? _hero; + GHeroSkipFragmentData_heroBuilder get hero => + _$this._hero ??= new GHeroSkipFragmentData_heroBuilder(); + set hero(GHeroSkipFragmentData_heroBuilder? hero) => _$this._hero = hero; + + GHeroSkipFragmentDataBuilder() { + GHeroSkipFragmentData._initializeBuilder(this); + } + + GHeroSkipFragmentDataBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _hero = $v.hero?.toBuilder(); + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkipFragmentData other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkipFragmentData; + } + + @override + void update(void Function(GHeroSkipFragmentDataBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkipFragmentData build() => _build(); + + _$GHeroSkipFragmentData _build() { + _$GHeroSkipFragmentData _$result; + try { + _$result = _$v ?? + new _$GHeroSkipFragmentData._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipFragmentData', 'G__typename'), + hero: _hero?.build()); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'hero'; + _hero?.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroSkipFragmentData', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +class _$GHeroSkipFragmentData_hero extends GHeroSkipFragmentData_hero { + @override + final String G__typename; + @override + final String id; + @override + final String name; + @override + final BuiltList? friends; + + factory _$GHeroSkipFragmentData_hero( + [void Function(GHeroSkipFragmentData_heroBuilder)? updates]) => + (new GHeroSkipFragmentData_heroBuilder()..update(updates))._build(); + + _$GHeroSkipFragmentData_hero._( + {required this.G__typename, + required this.id, + required this.name, + this.friends}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipFragmentData_hero', 'G__typename'); + BuiltValueNullFieldError.checkNotNull( + id, r'GHeroSkipFragmentData_hero', 'id'); + BuiltValueNullFieldError.checkNotNull( + name, r'GHeroSkipFragmentData_hero', 'name'); + } + + @override + GHeroSkipFragmentData_hero rebuild( + void Function(GHeroSkipFragmentData_heroBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipFragmentData_heroBuilder toBuilder() => + new GHeroSkipFragmentData_heroBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkipFragmentData_hero && + G__typename == other.G__typename && + id == other.id && + name == other.name && + friends == other.friends; + } + + @override + int get hashCode { + var _$hash = 0; + _$hash = $jc(_$hash, G__typename.hashCode); + _$hash = $jc(_$hash, id.hashCode); + _$hash = $jc(_$hash, name.hashCode); + _$hash = $jc(_$hash, friends.hashCode); + _$hash = $jf(_$hash); + return _$hash; + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkipFragmentData_hero') + ..add('G__typename', G__typename) + ..add('id', id) + ..add('name', name) + ..add('friends', friends)) + .toString(); + } +} + +class GHeroSkipFragmentData_heroBuilder + implements + Builder { + _$GHeroSkipFragmentData_hero? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + String? _id; + String? get id => _$this._id; + set id(String? id) => _$this._id = id; + + String? _name; + String? get name => _$this._name; + set name(String? name) => _$this._name = name; + + ListBuilder? _friends; + ListBuilder get friends => + _$this._friends ??= + new ListBuilder(); + set friends(ListBuilder? friends) => + _$this._friends = friends; + + GHeroSkipFragmentData_heroBuilder() { + GHeroSkipFragmentData_hero._initializeBuilder(this); + } + + GHeroSkipFragmentData_heroBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _id = $v.id; + _name = $v.name; + _friends = $v.friends?.toBuilder(); + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkipFragmentData_hero other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkipFragmentData_hero; + } + + @override + void update(void Function(GHeroSkipFragmentData_heroBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkipFragmentData_hero build() => _build(); + + _$GHeroSkipFragmentData_hero _build() { + _$GHeroSkipFragmentData_hero _$result; + try { + _$result = _$v ?? + new _$GHeroSkipFragmentData_hero._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipFragmentData_hero', 'G__typename'), + id: BuiltValueNullFieldError.checkNotNull( + id, r'GHeroSkipFragmentData_hero', 'id'), + name: BuiltValueNullFieldError.checkNotNull( + name, r'GHeroSkipFragmentData_hero', 'name'), + friends: _friends?.build()); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'friends'; + _friends?.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroSkipFragmentData_hero', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +class _$GHeroSkipFragmentData_hero_friends + extends GHeroSkipFragmentData_hero_friends { + @override + final String G__typename; + @override + final String id; + @override + final String name; + + factory _$GHeroSkipFragmentData_hero_friends( + [void Function(GHeroSkipFragmentData_hero_friendsBuilder)? + updates]) => + (new GHeroSkipFragmentData_hero_friendsBuilder()..update(updates)) + ._build(); + + _$GHeroSkipFragmentData_hero_friends._( + {required this.G__typename, required this.id, required this.name}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipFragmentData_hero_friends', 'G__typename'); + BuiltValueNullFieldError.checkNotNull( + id, r'GHeroSkipFragmentData_hero_friends', 'id'); + BuiltValueNullFieldError.checkNotNull( + name, r'GHeroSkipFragmentData_hero_friends', 'name'); + } + + @override + GHeroSkipFragmentData_hero_friends rebuild( + void Function(GHeroSkipFragmentData_hero_friendsBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipFragmentData_hero_friendsBuilder toBuilder() => + new GHeroSkipFragmentData_hero_friendsBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkipFragmentData_hero_friends && + G__typename == other.G__typename && + id == other.id && + name == other.name; + } + + @override + int get hashCode { + var _$hash = 0; + _$hash = $jc(_$hash, G__typename.hashCode); + _$hash = $jc(_$hash, id.hashCode); + _$hash = $jc(_$hash, name.hashCode); + _$hash = $jf(_$hash); + return _$hash; + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkipFragmentData_hero_friends') + ..add('G__typename', G__typename) + ..add('id', id) + ..add('name', name)) + .toString(); + } +} + +class GHeroSkipFragmentData_hero_friendsBuilder + implements + Builder { + _$GHeroSkipFragmentData_hero_friends? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + String? _id; + String? get id => _$this._id; + set id(String? id) => _$this._id = id; + + String? _name; + String? get name => _$this._name; + set name(String? name) => _$this._name = name; + + GHeroSkipFragmentData_hero_friendsBuilder() { + GHeroSkipFragmentData_hero_friends._initializeBuilder(this); + } + + GHeroSkipFragmentData_hero_friendsBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _id = $v.id; + _name = $v.name; + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkipFragmentData_hero_friends other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkipFragmentData_hero_friends; + } + + @override + void update( + void Function(GHeroSkipFragmentData_hero_friendsBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkipFragmentData_hero_friends build() => _build(); + + _$GHeroSkipFragmentData_hero_friends _build() { + final _$result = _$v ?? + new _$GHeroSkipFragmentData_hero_friends._( + G__typename: BuiltValueNullFieldError.checkNotNull(G__typename, + r'GHeroSkipFragmentData_hero_friends', 'G__typename'), + id: BuiltValueNullFieldError.checkNotNull( + id, r'GHeroSkipFragmentData_hero_friends', 'id'), + name: BuiltValueNullFieldError.checkNotNull( + name, r'GHeroSkipFragmentData_hero_friends', 'name')); + replace(_$result); + return _$result; + } +} + +class _$GHeroDetailData extends GHeroDetailData { + @override + final String G__typename; + @override + final String id; + @override + final String name; + @override + final BuiltList? friends; + + factory _$GHeroDetailData([void Function(GHeroDetailDataBuilder)? updates]) => + (new GHeroDetailDataBuilder()..update(updates))._build(); + + _$GHeroDetailData._( + {required this.G__typename, + required this.id, + required this.name, + this.friends}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroDetailData', 'G__typename'); + BuiltValueNullFieldError.checkNotNull(id, r'GHeroDetailData', 'id'); + BuiltValueNullFieldError.checkNotNull(name, r'GHeroDetailData', 'name'); + } + + @override + GHeroDetailData rebuild(void Function(GHeroDetailDataBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroDetailDataBuilder toBuilder() => + new GHeroDetailDataBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroDetailData && + G__typename == other.G__typename && + id == other.id && + name == other.name && + friends == other.friends; + } + + @override + int get hashCode { + var _$hash = 0; + _$hash = $jc(_$hash, G__typename.hashCode); + _$hash = $jc(_$hash, id.hashCode); + _$hash = $jc(_$hash, name.hashCode); + _$hash = $jc(_$hash, friends.hashCode); + _$hash = $jf(_$hash); + return _$hash; + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroDetailData') + ..add('G__typename', G__typename) + ..add('id', id) + ..add('name', name) + ..add('friends', friends)) + .toString(); + } +} + +class GHeroDetailDataBuilder + implements Builder { + _$GHeroDetailData? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + String? _id; + String? get id => _$this._id; + set id(String? id) => _$this._id = id; + + String? _name; + String? get name => _$this._name; + set name(String? name) => _$this._name = name; + + ListBuilder? _friends; + ListBuilder get friends => + _$this._friends ??= new ListBuilder(); + set friends(ListBuilder? friends) => + _$this._friends = friends; + + GHeroDetailDataBuilder() { + GHeroDetailData._initializeBuilder(this); + } + + GHeroDetailDataBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _id = $v.id; + _name = $v.name; + _friends = $v.friends?.toBuilder(); + _$v = null; + } + return this; + } + + @override + void replace(GHeroDetailData other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroDetailData; + } + + @override + void update(void Function(GHeroDetailDataBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroDetailData build() => _build(); + + _$GHeroDetailData _build() { + _$GHeroDetailData _$result; + try { + _$result = _$v ?? + new _$GHeroDetailData._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroDetailData', 'G__typename'), + id: BuiltValueNullFieldError.checkNotNull( + id, r'GHeroDetailData', 'id'), + name: BuiltValueNullFieldError.checkNotNull( + name, r'GHeroDetailData', 'name'), + friends: _friends?.build()); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'friends'; + _friends?.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroDetailData', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +class _$GHeroDetailData_friends extends GHeroDetailData_friends { + @override + final String G__typename; + @override + final String id; + @override + final String name; + + factory _$GHeroDetailData_friends( + [void Function(GHeroDetailData_friendsBuilder)? updates]) => + (new GHeroDetailData_friendsBuilder()..update(updates))._build(); + + _$GHeroDetailData_friends._( + {required this.G__typename, required this.id, required this.name}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroDetailData_friends', 'G__typename'); + BuiltValueNullFieldError.checkNotNull(id, r'GHeroDetailData_friends', 'id'); + BuiltValueNullFieldError.checkNotNull( + name, r'GHeroDetailData_friends', 'name'); + } + + @override + GHeroDetailData_friends rebuild( + void Function(GHeroDetailData_friendsBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroDetailData_friendsBuilder toBuilder() => + new GHeroDetailData_friendsBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroDetailData_friends && + G__typename == other.G__typename && + id == other.id && + name == other.name; + } + + @override + int get hashCode { + var _$hash = 0; + _$hash = $jc(_$hash, G__typename.hashCode); + _$hash = $jc(_$hash, id.hashCode); + _$hash = $jc(_$hash, name.hashCode); + _$hash = $jf(_$hash); + return _$hash; + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroDetailData_friends') + ..add('G__typename', G__typename) + ..add('id', id) + ..add('name', name)) + .toString(); + } +} + +class GHeroDetailData_friendsBuilder + implements + Builder { + _$GHeroDetailData_friends? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + String? _id; + String? get id => _$this._id; + set id(String? id) => _$this._id = id; + + String? _name; + String? get name => _$this._name; + set name(String? name) => _$this._name = name; + + GHeroDetailData_friendsBuilder() { + GHeroDetailData_friends._initializeBuilder(this); + } + + GHeroDetailData_friendsBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _id = $v.id; + _name = $v.name; + _$v = null; + } + return this; + } + + @override + void replace(GHeroDetailData_friends other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroDetailData_friends; + } + + @override + void update(void Function(GHeroDetailData_friendsBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroDetailData_friends build() => _build(); + + _$GHeroDetailData_friends _build() { + final _$result = _$v ?? + new _$GHeroDetailData_friends._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroDetailData_friends', 'G__typename'), + id: BuiltValueNullFieldError.checkNotNull( + id, r'GHeroDetailData_friends', 'id'), + name: BuiltValueNullFieldError.checkNotNull( + name, r'GHeroDetailData_friends', 'name')); + replace(_$result); + return _$result; + } +} + +// ignore_for_file: deprecated_member_use_from_same_package,type=lint diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.req.gql.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.req.gql.dart new file mode 100644 index 00000000..f05c2794 --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.req.gql.dart @@ -0,0 +1,46 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test_tristate/directives/__generated__/hero_skip_fragment.ast.gql.dart' + as _i2; +import 'package:end_to_end_test_tristate/directives/__generated__/hero_skip_fragment.var.gql.dart' + as _i3; +import 'package:end_to_end_test_tristate/graphql/__generated__/serializers.gql.dart' + as _i4; +import 'package:gql_exec/gql_exec.dart' as _i1; + +part 'hero_skip_fragment.req.gql.g.dart'; + +abstract class GHeroSkipFragment + implements Built { + GHeroSkipFragment._(); + + factory GHeroSkipFragment( + [void Function(GHeroSkipFragmentBuilder b) updates]) = + _$GHeroSkipFragment; + + static void _initializeBuilder(GHeroSkipFragmentBuilder b) => b + ..operation = _i1.Operation( + document: _i2.document, + operationName: 'HeroSkipFragment', + ); + + _i3.GHeroSkipFragmentVars get vars; + _i1.Operation get operation; + static Serializer get serializer => + _$gHeroSkipFragmentSerializer; + + Map toJson() => (_i4.serializers.serializeWith( + GHeroSkipFragment.serializer, + this, + ) as Map); + + static GHeroSkipFragment? fromJson(Map json) => + _i4.serializers.deserializeWith( + GHeroSkipFragment.serializer, + json, + ); +} diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.req.gql.g.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.req.gql.g.dart new file mode 100644 index 00000000..a72b4fca --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.req.gql.g.dart @@ -0,0 +1,178 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_skip_fragment.req.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroSkipFragmentSerializer = + new _$GHeroSkipFragmentSerializer(); + +class _$GHeroSkipFragmentSerializer + implements StructuredSerializer { + @override + final Iterable types = const [GHeroSkipFragment, _$GHeroSkipFragment]; + @override + final String wireName = 'GHeroSkipFragment'; + + @override + Iterable serialize(Serializers serializers, GHeroSkipFragment object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + 'vars', + serializers.serialize(object.vars, + specifiedType: const FullType(_i3.GHeroSkipFragmentVars)), + 'operation', + serializers.serialize(object.operation, + specifiedType: const FullType(_i1.Operation)), + ]; + + return result; + } + + @override + GHeroSkipFragment deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroSkipFragmentBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case 'vars': + result.vars.replace(serializers.deserialize(value, + specifiedType: const FullType(_i3.GHeroSkipFragmentVars))! + as _i3.GHeroSkipFragmentVars); + break; + case 'operation': + result.operation = serializers.deserialize(value, + specifiedType: const FullType(_i1.Operation))! as _i1.Operation; + break; + } + } + + return result.build(); + } +} + +class _$GHeroSkipFragment extends GHeroSkipFragment { + @override + final _i3.GHeroSkipFragmentVars vars; + @override + final _i1.Operation operation; + + factory _$GHeroSkipFragment( + [void Function(GHeroSkipFragmentBuilder)? updates]) => + (new GHeroSkipFragmentBuilder()..update(updates))._build(); + + _$GHeroSkipFragment._({required this.vars, required this.operation}) + : super._() { + BuiltValueNullFieldError.checkNotNull(vars, r'GHeroSkipFragment', 'vars'); + BuiltValueNullFieldError.checkNotNull( + operation, r'GHeroSkipFragment', 'operation'); + } + + @override + GHeroSkipFragment rebuild(void Function(GHeroSkipFragmentBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipFragmentBuilder toBuilder() => + new GHeroSkipFragmentBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkipFragment && + vars == other.vars && + operation == other.operation; + } + + @override + int get hashCode { + var _$hash = 0; + _$hash = $jc(_$hash, vars.hashCode); + _$hash = $jc(_$hash, operation.hashCode); + _$hash = $jf(_$hash); + return _$hash; + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkipFragment') + ..add('vars', vars) + ..add('operation', operation)) + .toString(); + } +} + +class GHeroSkipFragmentBuilder + implements Builder { + _$GHeroSkipFragment? _$v; + + _i3.GHeroSkipFragmentVarsBuilder? _vars; + _i3.GHeroSkipFragmentVarsBuilder get vars => + _$this._vars ??= new _i3.GHeroSkipFragmentVarsBuilder(); + set vars(_i3.GHeroSkipFragmentVarsBuilder? vars) => _$this._vars = vars; + + _i1.Operation? _operation; + _i1.Operation? get operation => _$this._operation; + set operation(_i1.Operation? operation) => _$this._operation = operation; + + GHeroSkipFragmentBuilder() { + GHeroSkipFragment._initializeBuilder(this); + } + + GHeroSkipFragmentBuilder get _$this { + final $v = _$v; + if ($v != null) { + _vars = $v.vars.toBuilder(); + _operation = $v.operation; + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkipFragment other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkipFragment; + } + + @override + void update(void Function(GHeroSkipFragmentBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkipFragment build() => _build(); + + _$GHeroSkipFragment _build() { + _$GHeroSkipFragment _$result; + try { + _$result = _$v ?? + new _$GHeroSkipFragment._( + vars: vars.build(), + operation: BuiltValueNullFieldError.checkNotNull( + operation, r'GHeroSkipFragment', 'operation')); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'vars'; + vars.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroSkipFragment', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +// ignore_for_file: deprecated_member_use_from_same_package,type=lint diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.var.gql.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.var.gql.dart new file mode 100644 index 00000000..a7e7e7b1 --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.var.gql.dart @@ -0,0 +1,125 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test_tristate/graphql/__generated__/serializers.gql.dart' + as _i1; + +part 'hero_skip_fragment.var.gql.g.dart'; + +abstract class GHeroSkipFragmentVars + implements Built { + GHeroSkipFragmentVars._(); + + factory GHeroSkipFragmentVars( + [void Function(GHeroSkipFragmentVarsBuilder b) updates]) = + _$GHeroSkipFragmentVars; + + bool get skipDetails; + Map toJson() => (_i1.serializers.serializeWith( + GHeroSkipFragmentVars.serializer, + this, + ) as Map); + + static GHeroSkipFragmentVars? fromJson(Map json) => + _i1.serializers.deserializeWith( + GHeroSkipFragmentVars.serializer, + json, + ); + + @BuiltValueSerializer(custom: true, serializeNulls: true) + static Serializer get serializer => + GHeroSkipFragmentVarsSerializer(); +} + +abstract class GHeroDetailVars + implements Built { + GHeroDetailVars._(); + + factory GHeroDetailVars([void Function(GHeroDetailVarsBuilder b) updates]) = + _$GHeroDetailVars; + + Map toJson() => (_i1.serializers.serializeWith( + GHeroDetailVars.serializer, + this, + ) as Map); + + static GHeroDetailVars? fromJson(Map json) => + _i1.serializers.deserializeWith( + GHeroDetailVars.serializer, + json, + ); + + @BuiltValueSerializer(custom: true, serializeNulls: true) + static Serializer get serializer => + GHeroDetailVarsSerializer(); +} + +final class GHeroSkipFragmentVarsSerializer + extends StructuredSerializer { + final String wireName = 'GHeroSkipFragmentVars'; + + final Iterable types = const [ + GHeroSkipFragmentVars, + _$GHeroSkipFragmentVars + ]; + + Iterable serialize( + Serializers serializers, + GHeroSkipFragmentVars object, { + FullType specifiedType = FullType.unspecified, + }) { + final result = []; + result.add('skipDetails'); + result.add(serializers.serialize(object.skipDetails, + specifiedType: const FullType(bool))); + return result; + } + + GHeroSkipFragmentVars deserialize( + Serializers serializers, + Iterable serialized, { + FullType specifiedType = FullType.unspecified, + }) { + final builder = GHeroSkipFragmentVarsBuilder(); + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case 'skipDetails': + var _$fieldValue = serializers.deserialize(value, + specifiedType: const FullType(bool)) as bool; + builder.skipDetails = _$fieldValue; + break; + } + } + return builder.build(); + } +} + +final class GHeroDetailVarsSerializer + extends StructuredSerializer { + final String wireName = 'GHeroDetailVars'; + + final Iterable types = const [GHeroDetailVars, _$GHeroDetailVars]; + + Iterable serialize( + Serializers serializers, + GHeroDetailVars object, { + FullType specifiedType = FullType.unspecified, + }) { + return const []; + } + + GHeroDetailVars deserialize( + Serializers serializers, + Iterable serialized, { + FullType specifiedType = FullType.unspecified, + }) { + return GHeroDetailVars(); + } +} diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.var.gql.g.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.var.gql.g.dart new file mode 100644 index 00000000..269083c0 --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment.var.gql.g.dart @@ -0,0 +1,154 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_skip_fragment.var.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +class _$GHeroSkipFragmentVars extends GHeroSkipFragmentVars { + @override + final bool skipDetails; + + factory _$GHeroSkipFragmentVars( + [void Function(GHeroSkipFragmentVarsBuilder)? updates]) => + (new GHeroSkipFragmentVarsBuilder()..update(updates))._build(); + + _$GHeroSkipFragmentVars._({required this.skipDetails}) : super._() { + BuiltValueNullFieldError.checkNotNull( + skipDetails, r'GHeroSkipFragmentVars', 'skipDetails'); + } + + @override + GHeroSkipFragmentVars rebuild( + void Function(GHeroSkipFragmentVarsBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipFragmentVarsBuilder toBuilder() => + new GHeroSkipFragmentVarsBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkipFragmentVars && skipDetails == other.skipDetails; + } + + @override + int get hashCode { + var _$hash = 0; + _$hash = $jc(_$hash, skipDetails.hashCode); + _$hash = $jf(_$hash); + return _$hash; + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkipFragmentVars') + ..add('skipDetails', skipDetails)) + .toString(); + } +} + +class GHeroSkipFragmentVarsBuilder + implements Builder { + _$GHeroSkipFragmentVars? _$v; + + bool? _skipDetails; + bool? get skipDetails => _$this._skipDetails; + set skipDetails(bool? skipDetails) => _$this._skipDetails = skipDetails; + + GHeroSkipFragmentVarsBuilder(); + + GHeroSkipFragmentVarsBuilder get _$this { + final $v = _$v; + if ($v != null) { + _skipDetails = $v.skipDetails; + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkipFragmentVars other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkipFragmentVars; + } + + @override + void update(void Function(GHeroSkipFragmentVarsBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkipFragmentVars build() => _build(); + + _$GHeroSkipFragmentVars _build() { + final _$result = _$v ?? + new _$GHeroSkipFragmentVars._( + skipDetails: BuiltValueNullFieldError.checkNotNull( + skipDetails, r'GHeroSkipFragmentVars', 'skipDetails')); + replace(_$result); + return _$result; + } +} + +class _$GHeroDetailVars extends GHeroDetailVars { + factory _$GHeroDetailVars([void Function(GHeroDetailVarsBuilder)? updates]) => + (new GHeroDetailVarsBuilder()..update(updates))._build(); + + _$GHeroDetailVars._() : super._(); + + @override + GHeroDetailVars rebuild(void Function(GHeroDetailVarsBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroDetailVarsBuilder toBuilder() => + new GHeroDetailVarsBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroDetailVars; + } + + @override + int get hashCode { + return 140740630; + } + + @override + String toString() { + return newBuiltValueToStringHelper(r'GHeroDetailVars').toString(); + } +} + +class GHeroDetailVarsBuilder + implements Builder { + _$GHeroDetailVars? _$v; + + GHeroDetailVarsBuilder(); + + @override + void replace(GHeroDetailVars other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroDetailVars; + } + + @override + void update(void Function(GHeroDetailVarsBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroDetailVars build() => _build(); + + _$GHeroDetailVars _build() { + final _$result = _$v ?? new _$GHeroDetailVars._(); + replace(_$result); + return _$result; + } +} + +// ignore_for_file: deprecated_member_use_from_same_package,type=lint diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.ast.gql.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.ast.gql.dart new file mode 100644 index 00000000..d6c423cf --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.ast.gql.dart @@ -0,0 +1,83 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:gql/ast.dart' as _i1; + +const HeroSkipFragment = _i1.OperationDefinitionNode( + type: _i1.OperationType.query, + name: _i1.NameNode(value: 'HeroSkipFragment'), + variableDefinitions: [ + _i1.VariableDefinitionNode( + variable: _i1.VariableNode(name: _i1.NameNode(value: 'skipDetails')), + type: _i1.NamedTypeNode( + name: _i1.NameNode(value: 'Boolean'), + isNonNull: true, + ), + defaultValue: _i1.DefaultValueNode(value: null), + directives: [], + ) + ], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'hero'), + alias: null, + arguments: [], + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'id'), + alias: null, + arguments: [], + directives: [], + selectionSet: null, + ), + _i1.FragmentSpreadNode( + name: _i1.NameNode(value: 'HeroDetail'), + directives: [ + _i1.DirectiveNode( + name: _i1.NameNode(value: 'skip'), + arguments: [ + _i1.ArgumentNode( + name: _i1.NameNode(value: 'if'), + value: _i1.VariableNode( + name: _i1.NameNode(value: 'skipDetails')), + ) + ], + ) + ], + ), + ]), + ) + ]), +); +const HeroDetail = _i1.FragmentDefinitionNode( + name: _i1.NameNode(value: 'HeroDetail'), + typeCondition: _i1.TypeConditionNode( + on: _i1.NamedTypeNode( + name: _i1.NameNode(value: 'Character'), + isNonNull: false, + )), + directives: [], + selectionSet: _i1.SelectionSetNode(selections: [ + _i1.FieldNode( + name: _i1.NameNode(value: 'id'), + alias: null, + arguments: [], + directives: [], + selectionSet: null, + ), + _i1.FieldNode( + name: _i1.NameNode(value: 'name'), + alias: null, + arguments: [], + directives: [], + selectionSet: null, + ), + ]), +); +const document = _i1.DocumentNode(definitions: [ + HeroSkipFragment, + HeroDetail, +]); diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.dart new file mode 100644 index 00000000..67493c46 --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.dart @@ -0,0 +1,115 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test_tristate/graphql/__generated__/serializers.gql.dart' + as _i1; + +part 'hero_skip_fragment_and_field.data.gql.g.dart'; + +abstract class GHeroSkipFragmentData + implements Built { + GHeroSkipFragmentData._(); + + factory GHeroSkipFragmentData( + [void Function(GHeroSkipFragmentDataBuilder b) updates]) = + _$GHeroSkipFragmentData; + + static void _initializeBuilder(GHeroSkipFragmentDataBuilder b) => + b..G__typename = 'Query'; + + @BuiltValueField(wireName: '__typename') + String get G__typename; + GHeroSkipFragmentData_hero? get hero; + static Serializer get serializer => + _$gHeroSkipFragmentDataSerializer; + + Map toJson() => (_i1.serializers.serializeWith( + GHeroSkipFragmentData.serializer, + this, + ) as Map); + + static GHeroSkipFragmentData? fromJson(Map json) => + _i1.serializers.deserializeWith( + GHeroSkipFragmentData.serializer, + json, + ); +} + +abstract class GHeroSkipFragmentData_hero + implements + Built, + GHeroDetail { + GHeroSkipFragmentData_hero._(); + + factory GHeroSkipFragmentData_hero( + [void Function(GHeroSkipFragmentData_heroBuilder b) updates]) = + _$GHeroSkipFragmentData_hero; + + static void _initializeBuilder(GHeroSkipFragmentData_heroBuilder b) => + b..G__typename = 'Character'; + + @override + @BuiltValueField(wireName: '__typename') + String get G__typename; + @override + String get id; + @override + String get name; + static Serializer get serializer => + _$gHeroSkipFragmentDataHeroSerializer; + + @override + Map toJson() => (_i1.serializers.serializeWith( + GHeroSkipFragmentData_hero.serializer, + this, + ) as Map); + + static GHeroSkipFragmentData_hero? fromJson(Map json) => + _i1.serializers.deserializeWith( + GHeroSkipFragmentData_hero.serializer, + json, + ); +} + +abstract class GHeroDetail { + String get G__typename; + String get id; + String get name; + Map toJson(); +} + +abstract class GHeroDetailData + implements Built, GHeroDetail { + GHeroDetailData._(); + + factory GHeroDetailData([void Function(GHeroDetailDataBuilder b) updates]) = + _$GHeroDetailData; + + static void _initializeBuilder(GHeroDetailDataBuilder b) => + b..G__typename = 'Character'; + + @override + @BuiltValueField(wireName: '__typename') + String get G__typename; + @override + String get id; + @override + String get name; + static Serializer get serializer => + _$gHeroDetailDataSerializer; + + @override + Map toJson() => (_i1.serializers.serializeWith( + GHeroDetailData.serializer, + this, + ) as Map); + + static GHeroDetailData? fromJson(Map json) => + _i1.serializers.deserializeWith( + GHeroDetailData.serializer, + json, + ); +} diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.g.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.g.dart new file mode 100644 index 00000000..bcd64c10 --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.g.dart @@ -0,0 +1,539 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_skip_fragment_and_field.data.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroSkipFragmentDataSerializer = + new _$GHeroSkipFragmentDataSerializer(); +Serializer _$gHeroSkipFragmentDataHeroSerializer = + new _$GHeroSkipFragmentData_heroSerializer(); +Serializer _$gHeroDetailDataSerializer = + new _$GHeroDetailDataSerializer(); + +class _$GHeroSkipFragmentDataSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroSkipFragmentData, + _$GHeroSkipFragmentData + ]; + @override + final String wireName = 'GHeroSkipFragmentData'; + + @override + Iterable serialize( + Serializers serializers, GHeroSkipFragmentData object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + ]; + Object? value; + value = object.hero; + if (value != null) { + result + ..add('hero') + ..add(serializers.serialize(value, + specifiedType: const FullType(GHeroSkipFragmentData_hero))); + } + return result; + } + + @override + GHeroSkipFragmentData deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroSkipFragmentDataBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'hero': + result.hero.replace(serializers.deserialize(value, + specifiedType: const FullType(GHeroSkipFragmentData_hero))! + as GHeroSkipFragmentData_hero); + break; + } + } + + return result.build(); + } +} + +class _$GHeroSkipFragmentData_heroSerializer + implements StructuredSerializer { + @override + final Iterable types = const [ + GHeroSkipFragmentData_hero, + _$GHeroSkipFragmentData_hero + ]; + @override + final String wireName = 'GHeroSkipFragmentData_hero'; + + @override + Iterable serialize( + Serializers serializers, GHeroSkipFragmentData_hero object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + 'id', + serializers.serialize(object.id, specifiedType: const FullType(String)), + 'name', + serializers.serialize(object.name, specifiedType: const FullType(String)), + ]; + + return result; + } + + @override + GHeroSkipFragmentData_hero deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroSkipFragmentData_heroBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'id': + result.id = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'name': + result.name = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + } + } + + return result.build(); + } +} + +class _$GHeroDetailDataSerializer + implements StructuredSerializer { + @override + final Iterable types = const [GHeroDetailData, _$GHeroDetailData]; + @override + final String wireName = 'GHeroDetailData'; + + @override + Iterable serialize(Serializers serializers, GHeroDetailData object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + '__typename', + serializers.serialize(object.G__typename, + specifiedType: const FullType(String)), + 'id', + serializers.serialize(object.id, specifiedType: const FullType(String)), + 'name', + serializers.serialize(object.name, specifiedType: const FullType(String)), + ]; + + return result; + } + + @override + GHeroDetailData deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroDetailDataBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case '__typename': + result.G__typename = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'id': + result.id = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + case 'name': + result.name = serializers.deserialize(value, + specifiedType: const FullType(String))! as String; + break; + } + } + + return result.build(); + } +} + +class _$GHeroSkipFragmentData extends GHeroSkipFragmentData { + @override + final String G__typename; + @override + final GHeroSkipFragmentData_hero? hero; + + factory _$GHeroSkipFragmentData( + [void Function(GHeroSkipFragmentDataBuilder)? updates]) => + (new GHeroSkipFragmentDataBuilder()..update(updates))._build(); + + _$GHeroSkipFragmentData._({required this.G__typename, this.hero}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipFragmentData', 'G__typename'); + } + + @override + GHeroSkipFragmentData rebuild( + void Function(GHeroSkipFragmentDataBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipFragmentDataBuilder toBuilder() => + new GHeroSkipFragmentDataBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkipFragmentData && + G__typename == other.G__typename && + hero == other.hero; + } + + @override + int get hashCode { + var _$hash = 0; + _$hash = $jc(_$hash, G__typename.hashCode); + _$hash = $jc(_$hash, hero.hashCode); + _$hash = $jf(_$hash); + return _$hash; + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkipFragmentData') + ..add('G__typename', G__typename) + ..add('hero', hero)) + .toString(); + } +} + +class GHeroSkipFragmentDataBuilder + implements Builder { + _$GHeroSkipFragmentData? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + GHeroSkipFragmentData_heroBuilder? _hero; + GHeroSkipFragmentData_heroBuilder get hero => + _$this._hero ??= new GHeroSkipFragmentData_heroBuilder(); + set hero(GHeroSkipFragmentData_heroBuilder? hero) => _$this._hero = hero; + + GHeroSkipFragmentDataBuilder() { + GHeroSkipFragmentData._initializeBuilder(this); + } + + GHeroSkipFragmentDataBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _hero = $v.hero?.toBuilder(); + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkipFragmentData other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkipFragmentData; + } + + @override + void update(void Function(GHeroSkipFragmentDataBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkipFragmentData build() => _build(); + + _$GHeroSkipFragmentData _build() { + _$GHeroSkipFragmentData _$result; + try { + _$result = _$v ?? + new _$GHeroSkipFragmentData._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipFragmentData', 'G__typename'), + hero: _hero?.build()); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'hero'; + _hero?.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroSkipFragmentData', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +class _$GHeroSkipFragmentData_hero extends GHeroSkipFragmentData_hero { + @override + final String G__typename; + @override + final String id; + @override + final String name; + + factory _$GHeroSkipFragmentData_hero( + [void Function(GHeroSkipFragmentData_heroBuilder)? updates]) => + (new GHeroSkipFragmentData_heroBuilder()..update(updates))._build(); + + _$GHeroSkipFragmentData_hero._( + {required this.G__typename, required this.id, required this.name}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipFragmentData_hero', 'G__typename'); + BuiltValueNullFieldError.checkNotNull( + id, r'GHeroSkipFragmentData_hero', 'id'); + BuiltValueNullFieldError.checkNotNull( + name, r'GHeroSkipFragmentData_hero', 'name'); + } + + @override + GHeroSkipFragmentData_hero rebuild( + void Function(GHeroSkipFragmentData_heroBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipFragmentData_heroBuilder toBuilder() => + new GHeroSkipFragmentData_heroBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkipFragmentData_hero && + G__typename == other.G__typename && + id == other.id && + name == other.name; + } + + @override + int get hashCode { + var _$hash = 0; + _$hash = $jc(_$hash, G__typename.hashCode); + _$hash = $jc(_$hash, id.hashCode); + _$hash = $jc(_$hash, name.hashCode); + _$hash = $jf(_$hash); + return _$hash; + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkipFragmentData_hero') + ..add('G__typename', G__typename) + ..add('id', id) + ..add('name', name)) + .toString(); + } +} + +class GHeroSkipFragmentData_heroBuilder + implements + Builder { + _$GHeroSkipFragmentData_hero? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + String? _id; + String? get id => _$this._id; + set id(String? id) => _$this._id = id; + + String? _name; + String? get name => _$this._name; + set name(String? name) => _$this._name = name; + + GHeroSkipFragmentData_heroBuilder() { + GHeroSkipFragmentData_hero._initializeBuilder(this); + } + + GHeroSkipFragmentData_heroBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _id = $v.id; + _name = $v.name; + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkipFragmentData_hero other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkipFragmentData_hero; + } + + @override + void update(void Function(GHeroSkipFragmentData_heroBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkipFragmentData_hero build() => _build(); + + _$GHeroSkipFragmentData_hero _build() { + final _$result = _$v ?? + new _$GHeroSkipFragmentData_hero._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroSkipFragmentData_hero', 'G__typename'), + id: BuiltValueNullFieldError.checkNotNull( + id, r'GHeroSkipFragmentData_hero', 'id'), + name: BuiltValueNullFieldError.checkNotNull( + name, r'GHeroSkipFragmentData_hero', 'name')); + replace(_$result); + return _$result; + } +} + +class _$GHeroDetailData extends GHeroDetailData { + @override + final String G__typename; + @override + final String id; + @override + final String name; + + factory _$GHeroDetailData([void Function(GHeroDetailDataBuilder)? updates]) => + (new GHeroDetailDataBuilder()..update(updates))._build(); + + _$GHeroDetailData._( + {required this.G__typename, required this.id, required this.name}) + : super._() { + BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroDetailData', 'G__typename'); + BuiltValueNullFieldError.checkNotNull(id, r'GHeroDetailData', 'id'); + BuiltValueNullFieldError.checkNotNull(name, r'GHeroDetailData', 'name'); + } + + @override + GHeroDetailData rebuild(void Function(GHeroDetailDataBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroDetailDataBuilder toBuilder() => + new GHeroDetailDataBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroDetailData && + G__typename == other.G__typename && + id == other.id && + name == other.name; + } + + @override + int get hashCode { + var _$hash = 0; + _$hash = $jc(_$hash, G__typename.hashCode); + _$hash = $jc(_$hash, id.hashCode); + _$hash = $jc(_$hash, name.hashCode); + _$hash = $jf(_$hash); + return _$hash; + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroDetailData') + ..add('G__typename', G__typename) + ..add('id', id) + ..add('name', name)) + .toString(); + } +} + +class GHeroDetailDataBuilder + implements Builder { + _$GHeroDetailData? _$v; + + String? _G__typename; + String? get G__typename => _$this._G__typename; + set G__typename(String? G__typename) => _$this._G__typename = G__typename; + + String? _id; + String? get id => _$this._id; + set id(String? id) => _$this._id = id; + + String? _name; + String? get name => _$this._name; + set name(String? name) => _$this._name = name; + + GHeroDetailDataBuilder() { + GHeroDetailData._initializeBuilder(this); + } + + GHeroDetailDataBuilder get _$this { + final $v = _$v; + if ($v != null) { + _G__typename = $v.G__typename; + _id = $v.id; + _name = $v.name; + _$v = null; + } + return this; + } + + @override + void replace(GHeroDetailData other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroDetailData; + } + + @override + void update(void Function(GHeroDetailDataBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroDetailData build() => _build(); + + _$GHeroDetailData _build() { + final _$result = _$v ?? + new _$GHeroDetailData._( + G__typename: BuiltValueNullFieldError.checkNotNull( + G__typename, r'GHeroDetailData', 'G__typename'), + id: BuiltValueNullFieldError.checkNotNull( + id, r'GHeroDetailData', 'id'), + name: BuiltValueNullFieldError.checkNotNull( + name, r'GHeroDetailData', 'name')); + replace(_$result); + return _$result; + } +} + +// ignore_for_file: deprecated_member_use_from_same_package,type=lint diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.dart new file mode 100644 index 00000000..1e15dd0a --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.dart @@ -0,0 +1,46 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test_tristate/directives/__generated__/hero_skip_fragment_and_field.ast.gql.dart' + as _i2; +import 'package:end_to_end_test_tristate/directives/__generated__/hero_skip_fragment_and_field.var.gql.dart' + as _i3; +import 'package:end_to_end_test_tristate/graphql/__generated__/serializers.gql.dart' + as _i4; +import 'package:gql_exec/gql_exec.dart' as _i1; + +part 'hero_skip_fragment_and_field.req.gql.g.dart'; + +abstract class GHeroSkipFragment + implements Built { + GHeroSkipFragment._(); + + factory GHeroSkipFragment( + [void Function(GHeroSkipFragmentBuilder b) updates]) = + _$GHeroSkipFragment; + + static void _initializeBuilder(GHeroSkipFragmentBuilder b) => b + ..operation = _i1.Operation( + document: _i2.document, + operationName: 'HeroSkipFragment', + ); + + _i3.GHeroSkipFragmentVars get vars; + _i1.Operation get operation; + static Serializer get serializer => + _$gHeroSkipFragmentSerializer; + + Map toJson() => (_i4.serializers.serializeWith( + GHeroSkipFragment.serializer, + this, + ) as Map); + + static GHeroSkipFragment? fromJson(Map json) => + _i4.serializers.deserializeWith( + GHeroSkipFragment.serializer, + json, + ); +} diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.g.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.g.dart new file mode 100644 index 00000000..564ee9a3 --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.g.dart @@ -0,0 +1,178 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_skip_fragment_and_field.req.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +Serializer _$gHeroSkipFragmentSerializer = + new _$GHeroSkipFragmentSerializer(); + +class _$GHeroSkipFragmentSerializer + implements StructuredSerializer { + @override + final Iterable types = const [GHeroSkipFragment, _$GHeroSkipFragment]; + @override + final String wireName = 'GHeroSkipFragment'; + + @override + Iterable serialize(Serializers serializers, GHeroSkipFragment object, + {FullType specifiedType = FullType.unspecified}) { + final result = [ + 'vars', + serializers.serialize(object.vars, + specifiedType: const FullType(_i3.GHeroSkipFragmentVars)), + 'operation', + serializers.serialize(object.operation, + specifiedType: const FullType(_i1.Operation)), + ]; + + return result; + } + + @override + GHeroSkipFragment deserialize( + Serializers serializers, Iterable serialized, + {FullType specifiedType = FullType.unspecified}) { + final result = new GHeroSkipFragmentBuilder(); + + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current! as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case 'vars': + result.vars.replace(serializers.deserialize(value, + specifiedType: const FullType(_i3.GHeroSkipFragmentVars))! + as _i3.GHeroSkipFragmentVars); + break; + case 'operation': + result.operation = serializers.deserialize(value, + specifiedType: const FullType(_i1.Operation))! as _i1.Operation; + break; + } + } + + return result.build(); + } +} + +class _$GHeroSkipFragment extends GHeroSkipFragment { + @override + final _i3.GHeroSkipFragmentVars vars; + @override + final _i1.Operation operation; + + factory _$GHeroSkipFragment( + [void Function(GHeroSkipFragmentBuilder)? updates]) => + (new GHeroSkipFragmentBuilder()..update(updates))._build(); + + _$GHeroSkipFragment._({required this.vars, required this.operation}) + : super._() { + BuiltValueNullFieldError.checkNotNull(vars, r'GHeroSkipFragment', 'vars'); + BuiltValueNullFieldError.checkNotNull( + operation, r'GHeroSkipFragment', 'operation'); + } + + @override + GHeroSkipFragment rebuild(void Function(GHeroSkipFragmentBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipFragmentBuilder toBuilder() => + new GHeroSkipFragmentBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkipFragment && + vars == other.vars && + operation == other.operation; + } + + @override + int get hashCode { + var _$hash = 0; + _$hash = $jc(_$hash, vars.hashCode); + _$hash = $jc(_$hash, operation.hashCode); + _$hash = $jf(_$hash); + return _$hash; + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkipFragment') + ..add('vars', vars) + ..add('operation', operation)) + .toString(); + } +} + +class GHeroSkipFragmentBuilder + implements Builder { + _$GHeroSkipFragment? _$v; + + _i3.GHeroSkipFragmentVarsBuilder? _vars; + _i3.GHeroSkipFragmentVarsBuilder get vars => + _$this._vars ??= new _i3.GHeroSkipFragmentVarsBuilder(); + set vars(_i3.GHeroSkipFragmentVarsBuilder? vars) => _$this._vars = vars; + + _i1.Operation? _operation; + _i1.Operation? get operation => _$this._operation; + set operation(_i1.Operation? operation) => _$this._operation = operation; + + GHeroSkipFragmentBuilder() { + GHeroSkipFragment._initializeBuilder(this); + } + + GHeroSkipFragmentBuilder get _$this { + final $v = _$v; + if ($v != null) { + _vars = $v.vars.toBuilder(); + _operation = $v.operation; + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkipFragment other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkipFragment; + } + + @override + void update(void Function(GHeroSkipFragmentBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkipFragment build() => _build(); + + _$GHeroSkipFragment _build() { + _$GHeroSkipFragment _$result; + try { + _$result = _$v ?? + new _$GHeroSkipFragment._( + vars: vars.build(), + operation: BuiltValueNullFieldError.checkNotNull( + operation, r'GHeroSkipFragment', 'operation')); + } catch (_) { + late String _$failedField; + try { + _$failedField = 'vars'; + vars.build(); + } catch (e) { + throw new BuiltValueNestedFieldError( + r'GHeroSkipFragment', _$failedField, e.toString()); + } + rethrow; + } + replace(_$result); + return _$result; + } +} + +// ignore_for_file: deprecated_member_use_from_same_package,type=lint diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.dart new file mode 100644 index 00000000..b6a38afb --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.dart @@ -0,0 +1,125 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'package:built_value/built_value.dart'; +import 'package:built_value/serializer.dart'; +import 'package:end_to_end_test_tristate/graphql/__generated__/serializers.gql.dart' + as _i1; + +part 'hero_skip_fragment_and_field.var.gql.g.dart'; + +abstract class GHeroSkipFragmentVars + implements Built { + GHeroSkipFragmentVars._(); + + factory GHeroSkipFragmentVars( + [void Function(GHeroSkipFragmentVarsBuilder b) updates]) = + _$GHeroSkipFragmentVars; + + bool get skipDetails; + Map toJson() => (_i1.serializers.serializeWith( + GHeroSkipFragmentVars.serializer, + this, + ) as Map); + + static GHeroSkipFragmentVars? fromJson(Map json) => + _i1.serializers.deserializeWith( + GHeroSkipFragmentVars.serializer, + json, + ); + + @BuiltValueSerializer(custom: true, serializeNulls: true) + static Serializer get serializer => + GHeroSkipFragmentVarsSerializer(); +} + +abstract class GHeroDetailVars + implements Built { + GHeroDetailVars._(); + + factory GHeroDetailVars([void Function(GHeroDetailVarsBuilder b) updates]) = + _$GHeroDetailVars; + + Map toJson() => (_i1.serializers.serializeWith( + GHeroDetailVars.serializer, + this, + ) as Map); + + static GHeroDetailVars? fromJson(Map json) => + _i1.serializers.deserializeWith( + GHeroDetailVars.serializer, + json, + ); + + @BuiltValueSerializer(custom: true, serializeNulls: true) + static Serializer get serializer => + GHeroDetailVarsSerializer(); +} + +final class GHeroSkipFragmentVarsSerializer + extends StructuredSerializer { + final String wireName = 'GHeroSkipFragmentVars'; + + final Iterable types = const [ + GHeroSkipFragmentVars, + _$GHeroSkipFragmentVars + ]; + + Iterable serialize( + Serializers serializers, + GHeroSkipFragmentVars object, { + FullType specifiedType = FullType.unspecified, + }) { + final result = []; + result.add('skipDetails'); + result.add(serializers.serialize(object.skipDetails, + specifiedType: const FullType(bool))); + return result; + } + + GHeroSkipFragmentVars deserialize( + Serializers serializers, + Iterable serialized, { + FullType specifiedType = FullType.unspecified, + }) { + final builder = GHeroSkipFragmentVarsBuilder(); + final iterator = serialized.iterator; + while (iterator.moveNext()) { + final key = iterator.current as String; + iterator.moveNext(); + final Object? value = iterator.current; + switch (key) { + case 'skipDetails': + var _$fieldValue = serializers.deserialize(value, + specifiedType: const FullType(bool)) as bool; + builder.skipDetails = _$fieldValue; + break; + } + } + return builder.build(); + } +} + +final class GHeroDetailVarsSerializer + extends StructuredSerializer { + final String wireName = 'GHeroDetailVars'; + + final Iterable types = const [GHeroDetailVars, _$GHeroDetailVars]; + + Iterable serialize( + Serializers serializers, + GHeroDetailVars object, { + FullType specifiedType = FullType.unspecified, + }) { + return const []; + } + + GHeroDetailVars deserialize( + Serializers serializers, + Iterable serialized, { + FullType specifiedType = FullType.unspecified, + }) { + return GHeroDetailVars(); + } +} diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.g.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.g.dart new file mode 100644 index 00000000..158ede43 --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.g.dart @@ -0,0 +1,154 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'hero_skip_fragment_and_field.var.gql.dart'; + +// ************************************************************************** +// BuiltValueGenerator +// ************************************************************************** + +class _$GHeroSkipFragmentVars extends GHeroSkipFragmentVars { + @override + final bool skipDetails; + + factory _$GHeroSkipFragmentVars( + [void Function(GHeroSkipFragmentVarsBuilder)? updates]) => + (new GHeroSkipFragmentVarsBuilder()..update(updates))._build(); + + _$GHeroSkipFragmentVars._({required this.skipDetails}) : super._() { + BuiltValueNullFieldError.checkNotNull( + skipDetails, r'GHeroSkipFragmentVars', 'skipDetails'); + } + + @override + GHeroSkipFragmentVars rebuild( + void Function(GHeroSkipFragmentVarsBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroSkipFragmentVarsBuilder toBuilder() => + new GHeroSkipFragmentVarsBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroSkipFragmentVars && skipDetails == other.skipDetails; + } + + @override + int get hashCode { + var _$hash = 0; + _$hash = $jc(_$hash, skipDetails.hashCode); + _$hash = $jf(_$hash); + return _$hash; + } + + @override + String toString() { + return (newBuiltValueToStringHelper(r'GHeroSkipFragmentVars') + ..add('skipDetails', skipDetails)) + .toString(); + } +} + +class GHeroSkipFragmentVarsBuilder + implements Builder { + _$GHeroSkipFragmentVars? _$v; + + bool? _skipDetails; + bool? get skipDetails => _$this._skipDetails; + set skipDetails(bool? skipDetails) => _$this._skipDetails = skipDetails; + + GHeroSkipFragmentVarsBuilder(); + + GHeroSkipFragmentVarsBuilder get _$this { + final $v = _$v; + if ($v != null) { + _skipDetails = $v.skipDetails; + _$v = null; + } + return this; + } + + @override + void replace(GHeroSkipFragmentVars other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroSkipFragmentVars; + } + + @override + void update(void Function(GHeroSkipFragmentVarsBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroSkipFragmentVars build() => _build(); + + _$GHeroSkipFragmentVars _build() { + final _$result = _$v ?? + new _$GHeroSkipFragmentVars._( + skipDetails: BuiltValueNullFieldError.checkNotNull( + skipDetails, r'GHeroSkipFragmentVars', 'skipDetails')); + replace(_$result); + return _$result; + } +} + +class _$GHeroDetailVars extends GHeroDetailVars { + factory _$GHeroDetailVars([void Function(GHeroDetailVarsBuilder)? updates]) => + (new GHeroDetailVarsBuilder()..update(updates))._build(); + + _$GHeroDetailVars._() : super._(); + + @override + GHeroDetailVars rebuild(void Function(GHeroDetailVarsBuilder) updates) => + (toBuilder()..update(updates)).build(); + + @override + GHeroDetailVarsBuilder toBuilder() => + new GHeroDetailVarsBuilder()..replace(this); + + @override + bool operator ==(Object other) { + if (identical(other, this)) return true; + return other is GHeroDetailVars; + } + + @override + int get hashCode { + return 140740630; + } + + @override + String toString() { + return newBuiltValueToStringHelper(r'GHeroDetailVars').toString(); + } +} + +class GHeroDetailVarsBuilder + implements Builder { + _$GHeroDetailVars? _$v; + + GHeroDetailVarsBuilder(); + + @override + void replace(GHeroDetailVars other) { + ArgumentError.checkNotNull(other, 'other'); + _$v = other as _$GHeroDetailVars; + } + + @override + void update(void Function(GHeroDetailVarsBuilder)? updates) { + if (updates != null) updates(this); + } + + @override + GHeroDetailVars build() => _build(); + + _$GHeroDetailVars _build() { + final _$result = _$v ?? new _$GHeroDetailVars._(); + replace(_$result); + return _$result; + } +} + +// ignore_for_file: deprecated_member_use_from_same_package,type=lint diff --git a/codegen/end_to_end_test_tristate/lib/directives/hero_include.graphql b/codegen/end_to_end_test_tristate/lib/directives/hero_include.graphql new file mode 100644 index 00000000..b0ed5d08 --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/hero_include.graphql @@ -0,0 +1,6 @@ +query HeroInclude($includeId: Boolean!) { + hero { + id @include(if: $includeId) + name + } +} diff --git a/codegen/end_to_end_test_tristate/lib/directives/hero_skip.graphql b/codegen/end_to_end_test_tristate/lib/directives/hero_skip.graphql new file mode 100644 index 00000000..9135240c --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/hero_skip.graphql @@ -0,0 +1,6 @@ +query HeroSkip($skipName: Boolean!) { + hero { + id + name @skip(if: $skipName) + } +} diff --git a/codegen/end_to_end_test_tristate/lib/directives/hero_skip_fragment.graphql b/codegen/end_to_end_test_tristate/lib/directives/hero_skip_fragment.graphql new file mode 100644 index 00000000..c1257d3a --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/hero_skip_fragment.graphql @@ -0,0 +1,15 @@ +query HeroSkipFragment($skipDetails: Boolean!) { + hero { + id + ...HeroDetail @skip(if: $skipDetails) + } +} + +fragment HeroDetail on Character { + id + name + friends { + id + name + } +} diff --git a/codegen/end_to_end_test_tristate/lib/directives/hero_skip_fragment_and_field.graphql b/codegen/end_to_end_test_tristate/lib/directives/hero_skip_fragment_and_field.graphql new file mode 100644 index 00000000..428afc90 --- /dev/null +++ b/codegen/end_to_end_test_tristate/lib/directives/hero_skip_fragment_and_field.graphql @@ -0,0 +1,11 @@ +query HeroSkipFragment($skipDetails: Boolean!) { + hero { + id + ...HeroDetail @skip(if: $skipDetails) + } +} + +fragment HeroDetail on Character { + id + name +} diff --git a/codegen/end_to_end_test_tristate/lib/graphql/__generated__/serializers.gql.dart b/codegen/end_to_end_test_tristate/lib/graphql/__generated__/serializers.gql.dart index 15090df8..e4f282bc 100644 --- a/codegen/end_to_end_test_tristate/lib/graphql/__generated__/serializers.gql.dart +++ b/codegen/end_to_end_test_tristate/lib/graphql/__generated__/serializers.gql.dart @@ -28,6 +28,29 @@ import 'package:end_to_end_test_tristate/custom_field_serializer.dart' show CustomFieldSerializer; import 'package:end_to_end_test_tristate/date_serializer.dart' show DateSerializer; +import 'package:end_to_end_test_tristate/directives/__generated__/hero_include.data.gql.dart' + show GHeroIncludeData, GHeroIncludeData_hero; +import 'package:end_to_end_test_tristate/directives/__generated__/hero_include.req.gql.dart' + show GHeroInclude; +import 'package:end_to_end_test_tristate/directives/__generated__/hero_include.var.gql.dart' + show GHeroIncludeVars; +import 'package:end_to_end_test_tristate/directives/__generated__/hero_skip.data.gql.dart' + show GHeroSkipData, GHeroSkipData_hero; +import 'package:end_to_end_test_tristate/directives/__generated__/hero_skip.req.gql.dart' + show GHeroSkip; +import 'package:end_to_end_test_tristate/directives/__generated__/hero_skip.var.gql.dart' + show GHeroSkipVars; +import 'package:end_to_end_test_tristate/directives/__generated__/hero_skip_fragment.data.gql.dart' + show + GHeroDetailData, + GHeroDetailData_friends, + GHeroSkipFragmentData, + GHeroSkipFragmentData_hero, + GHeroSkipFragmentData_hero_friends; +import 'package:end_to_end_test_tristate/directives/__generated__/hero_skip_fragment.req.gql.dart' + show GHeroSkipFragment; +import 'package:end_to_end_test_tristate/directives/__generated__/hero_skip_fragment.var.gql.dart' + show GHeroDetailVars, GHeroSkipFragmentVars; import 'package:end_to_end_test_tristate/fragments/__generated__/fragment_with_scalar_var.data.gql.dart' show GPostFragmentForUser1Data, @@ -177,6 +200,9 @@ final SerializersBuilder _serializersBuilder = _$serializers.toBuilder() GDroidFragmentData, GDroidFragmentVars, GEpisode, + GHeroDetailData, + GHeroDetailData_friends, + GHeroDetailVars, GHeroForEpisode, GHeroForEpisodeData, GHeroForEpisodeData_hero__asDroid, @@ -184,10 +210,23 @@ final SerializersBuilder _serializersBuilder = _$serializers.toBuilder() GHeroForEpisodeData_hero__base, GHeroForEpisodeData_hero__base_friends, GHeroForEpisodeVars, + GHeroInclude, + GHeroIncludeData, + GHeroIncludeData_hero, + GHeroIncludeVars, GHeroNoVars, GHeroNoVarsData, GHeroNoVarsData_hero, GHeroNoVarsVars, + GHeroSkip, + GHeroSkipData, + GHeroSkipData_hero, + GHeroSkipFragment, + GHeroSkipFragmentData, + GHeroSkipFragmentData_hero, + GHeroSkipFragmentData_hero_friends, + GHeroSkipFragmentVars, + GHeroSkipVars, GHeroWith2Fragments, GHeroWith2FragmentsData, GHeroWith2FragmentsData_hero, diff --git a/codegen/end_to_end_test_tristate/lib/graphql/__generated__/serializers.gql.g.dart b/codegen/end_to_end_test_tristate/lib/graphql/__generated__/serializers.gql.g.dart index 86cbb01f..a17f20a3 100644 --- a/codegen/end_to_end_test_tristate/lib/graphql/__generated__/serializers.gql.g.dart +++ b/codegen/end_to_end_test_tristate/lib/graphql/__generated__/serializers.gql.g.dart @@ -24,6 +24,9 @@ Serializers _$serializers = (new Serializers().toBuilder() ..add(GDroidFragmentData.serializer) ..add(GDroidFragmentVars.serializer) ..add(GEpisode.serializer) + ..add(GHeroDetailData.serializer) + ..add(GHeroDetailData_friends.serializer) + ..add(GHeroDetailVars.serializer) ..add(GHeroForEpisode.serializer) ..add(GHeroForEpisodeData.serializer) ..add(GHeroForEpisodeData_hero__asDroid.serializer) @@ -31,10 +34,23 @@ Serializers _$serializers = (new Serializers().toBuilder() ..add(GHeroForEpisodeData_hero__base.serializer) ..add(GHeroForEpisodeData_hero__base_friends.serializer) ..add(GHeroForEpisodeVars.serializer) + ..add(GHeroInclude.serializer) + ..add(GHeroIncludeData.serializer) + ..add(GHeroIncludeData_hero.serializer) + ..add(GHeroIncludeVars.serializer) ..add(GHeroNoVars.serializer) ..add(GHeroNoVarsData.serializer) ..add(GHeroNoVarsData_hero.serializer) ..add(GHeroNoVarsVars.serializer) + ..add(GHeroSkip.serializer) + ..add(GHeroSkipData.serializer) + ..add(GHeroSkipData_hero.serializer) + ..add(GHeroSkipFragment.serializer) + ..add(GHeroSkipFragmentData.serializer) + ..add(GHeroSkipFragmentData_hero.serializer) + ..add(GHeroSkipFragmentData_hero_friends.serializer) + ..add(GHeroSkipFragmentVars.serializer) + ..add(GHeroSkipVars.serializer) ..add(GHeroWith2Fragments.serializer) ..add(GHeroWith2FragmentsData.serializer) ..add(GHeroWith2FragmentsData_hero.serializer) @@ -119,6 +135,10 @@ Serializers _$serializers = (new Serializers().toBuilder() ..addBuilderFactory( const FullType(BuiltList, const [const FullType.nullable(GEpisode)]), () => new ListBuilder()) + ..addBuilderFactory( + const FullType(BuiltList, + const [const FullType.nullable(GHeroDetailData_friends)]), + () => new ListBuilder()) ..addBuilderFactory( const FullType(BuiltList, const [ const FullType.nullable(GHeroForEpisodeData_hero__asDroid_friends) @@ -129,6 +149,11 @@ Serializers _$serializers = (new Serializers().toBuilder() const FullType.nullable(GHeroForEpisodeData_hero__base_friends) ]), () => new ListBuilder()) + ..addBuilderFactory( + const FullType(BuiltList, const [ + const FullType.nullable(GHeroSkipFragmentData_hero_friends) + ]), + () => new ListBuilder()) ..addBuilderFactory( const FullType(BuiltList, const [ const FullType.nullable( diff --git a/codegen/end_to_end_test_tristate/pubspec.yaml b/codegen/end_to_end_test_tristate/pubspec.yaml index 9da7f779..fb70ee02 100644 --- a/codegen/end_to_end_test_tristate/pubspec.yaml +++ b/codegen/end_to_end_test_tristate/pubspec.yaml @@ -16,3 +16,42 @@ dev_dependencies: build_runner: ^2.0.0 test: ^1.16.8 gql_tristate_value: ^1.0.0 +dependency_overrides: + gql_pedantic: + path: ../../gql_pedantic + gql: + path: ../../gql + gql_exec: + path: ../../links/gql_exec + gql_link: + path: ../../links/gql_link + gql_websocket_link: + path: ../../links/gql_websocket_link + gql_tristate_value: + path: ../gql_tristate_value + gql_transform_link: + path: ../../links/gql_transform_link + gql_http_link: + path: ../../links/gql_http_link + gql_error_link: + path: ../../links/gql_error_link + gql_code_builder: + path: ../gql_code_builder + gql_build: + path: ../gql_build + gql_example_http_auth_link: + path: ../../examples/gql_example_http_auth_link + gql_dio_link: + path: ../../links/gql_dio_link + gql_example_dio_link: + path: ../../examples/gql_example_dio_link + gql_example_cli_github: + path: ../../examples/gql_example_cli_github + gql_example_cli: + path: ../../examples/gql_example_cli + gql_example_build: + path: ../../examples/gql_example_build + gql_dedupe_link: + path: ../../links/gql_dedupe_link + end_to_end_test: + path: ../end_to_end_test From de2a8079eaba1790dfbe61ccd4682d58e37d85c8 Mon Sep 17 00:00:00 2001 From: Martin Kamleithner Date: Sun, 17 Dec 2023 00:19:09 +0100 Subject: [PATCH 16/20] add skip/include queries to tristate --- codegen/end_to_end_test_tristate/pubspec.yaml | 39 ------------------- 1 file changed, 39 deletions(-) diff --git a/codegen/end_to_end_test_tristate/pubspec.yaml b/codegen/end_to_end_test_tristate/pubspec.yaml index fb70ee02..9da7f779 100644 --- a/codegen/end_to_end_test_tristate/pubspec.yaml +++ b/codegen/end_to_end_test_tristate/pubspec.yaml @@ -16,42 +16,3 @@ dev_dependencies: build_runner: ^2.0.0 test: ^1.16.8 gql_tristate_value: ^1.0.0 -dependency_overrides: - gql_pedantic: - path: ../../gql_pedantic - gql: - path: ../../gql - gql_exec: - path: ../../links/gql_exec - gql_link: - path: ../../links/gql_link - gql_websocket_link: - path: ../../links/gql_websocket_link - gql_tristate_value: - path: ../gql_tristate_value - gql_transform_link: - path: ../../links/gql_transform_link - gql_http_link: - path: ../../links/gql_http_link - gql_error_link: - path: ../../links/gql_error_link - gql_code_builder: - path: ../gql_code_builder - gql_build: - path: ../gql_build - gql_example_http_auth_link: - path: ../../examples/gql_example_http_auth_link - gql_dio_link: - path: ../../links/gql_dio_link - gql_example_dio_link: - path: ../../examples/gql_example_dio_link - gql_example_cli_github: - path: ../../examples/gql_example_cli_github - gql_example_cli: - path: ../../examples/gql_example_cli - gql_example_build: - path: ../../examples/gql_example_build - gql_dedupe_link: - path: ../../links/gql_dedupe_link - end_to_end_test: - path: ../end_to_end_test From f3d924f56e239b0980c2edb1d043529a53e7a329 Mon Sep 17 00:00:00 2001 From: Martin Kamleithner Date: Sun, 17 Dec 2023 00:28:19 +0100 Subject: [PATCH 17/20] remove unnecessary example query --- .../hero_skip_fragment_and_field.ast.gql.dart | 83 --- ...hero_skip_fragment_and_field.data.gql.dart | 115 ---- ...ro_skip_fragment_and_field.data.gql.g.dart | 539 ------------------ .../hero_skip_fragment_and_field.req.gql.dart | 46 -- ...ero_skip_fragment_and_field.req.gql.g.dart | 178 ------ .../hero_skip_fragment_and_field.var.gql.dart | 56 -- ...ero_skip_fragment_and_field.var.gql.g.dart | 226 -------- .../hero_skip_fragment_and_field.graphql | 11 - .../hero_skip_fragment_and_field.ast.gql.dart | 83 --- ...hero_skip_fragment_and_field.data.gql.dart | 115 ---- ...ro_skip_fragment_and_field.data.gql.g.dart | 539 ------------------ .../hero_skip_fragment_and_field.req.gql.dart | 46 -- ...ero_skip_fragment_and_field.req.gql.g.dart | 178 ------ .../hero_skip_fragment_and_field.var.gql.dart | 125 ---- ...ero_skip_fragment_and_field.var.gql.g.dart | 154 ----- .../hero_skip_fragment_and_field.graphql | 11 - 16 files changed, 2505 deletions(-) delete mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.ast.gql.dart delete mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.dart delete mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.g.dart delete mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.dart delete mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.g.dart delete mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.dart delete mode 100644 codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.g.dart delete mode 100644 codegen/end_to_end_test/lib/directives/hero_skip_fragment_and_field.graphql delete mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.ast.gql.dart delete mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.dart delete mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.g.dart delete mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.dart delete mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.g.dart delete mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.dart delete mode 100644 codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.g.dart delete mode 100644 codegen/end_to_end_test_tristate/lib/directives/hero_skip_fragment_and_field.graphql diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.ast.gql.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.ast.gql.dart deleted file mode 100644 index d6c423cf..00000000 --- a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.ast.gql.dart +++ /dev/null @@ -1,83 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint - -// ignore_for_file: no_leading_underscores_for_library_prefixes -import 'package:gql/ast.dart' as _i1; - -const HeroSkipFragment = _i1.OperationDefinitionNode( - type: _i1.OperationType.query, - name: _i1.NameNode(value: 'HeroSkipFragment'), - variableDefinitions: [ - _i1.VariableDefinitionNode( - variable: _i1.VariableNode(name: _i1.NameNode(value: 'skipDetails')), - type: _i1.NamedTypeNode( - name: _i1.NameNode(value: 'Boolean'), - isNonNull: true, - ), - defaultValue: _i1.DefaultValueNode(value: null), - directives: [], - ) - ], - directives: [], - selectionSet: _i1.SelectionSetNode(selections: [ - _i1.FieldNode( - name: _i1.NameNode(value: 'hero'), - alias: null, - arguments: [], - directives: [], - selectionSet: _i1.SelectionSetNode(selections: [ - _i1.FieldNode( - name: _i1.NameNode(value: 'id'), - alias: null, - arguments: [], - directives: [], - selectionSet: null, - ), - _i1.FragmentSpreadNode( - name: _i1.NameNode(value: 'HeroDetail'), - directives: [ - _i1.DirectiveNode( - name: _i1.NameNode(value: 'skip'), - arguments: [ - _i1.ArgumentNode( - name: _i1.NameNode(value: 'if'), - value: _i1.VariableNode( - name: _i1.NameNode(value: 'skipDetails')), - ) - ], - ) - ], - ), - ]), - ) - ]), -); -const HeroDetail = _i1.FragmentDefinitionNode( - name: _i1.NameNode(value: 'HeroDetail'), - typeCondition: _i1.TypeConditionNode( - on: _i1.NamedTypeNode( - name: _i1.NameNode(value: 'Character'), - isNonNull: false, - )), - directives: [], - selectionSet: _i1.SelectionSetNode(selections: [ - _i1.FieldNode( - name: _i1.NameNode(value: 'id'), - alias: null, - arguments: [], - directives: [], - selectionSet: null, - ), - _i1.FieldNode( - name: _i1.NameNode(value: 'name'), - alias: null, - arguments: [], - directives: [], - selectionSet: null, - ), - ]), -); -const document = _i1.DocumentNode(definitions: [ - HeroSkipFragment, - HeroDetail, -]); diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.dart deleted file mode 100644 index 62a2c434..00000000 --- a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.dart +++ /dev/null @@ -1,115 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint - -// ignore_for_file: no_leading_underscores_for_library_prefixes -import 'package:built_value/built_value.dart'; -import 'package:built_value/serializer.dart'; -import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' - as _i1; - -part 'hero_skip_fragment_and_field.data.gql.g.dart'; - -abstract class GHeroSkipFragmentData - implements Built { - GHeroSkipFragmentData._(); - - factory GHeroSkipFragmentData( - [void Function(GHeroSkipFragmentDataBuilder b) updates]) = - _$GHeroSkipFragmentData; - - static void _initializeBuilder(GHeroSkipFragmentDataBuilder b) => - b..G__typename = 'Query'; - - @BuiltValueField(wireName: '__typename') - String get G__typename; - GHeroSkipFragmentData_hero? get hero; - static Serializer get serializer => - _$gHeroSkipFragmentDataSerializer; - - Map toJson() => (_i1.serializers.serializeWith( - GHeroSkipFragmentData.serializer, - this, - ) as Map); - - static GHeroSkipFragmentData? fromJson(Map json) => - _i1.serializers.deserializeWith( - GHeroSkipFragmentData.serializer, - json, - ); -} - -abstract class GHeroSkipFragmentData_hero - implements - Built, - GHeroDetail { - GHeroSkipFragmentData_hero._(); - - factory GHeroSkipFragmentData_hero( - [void Function(GHeroSkipFragmentData_heroBuilder b) updates]) = - _$GHeroSkipFragmentData_hero; - - static void _initializeBuilder(GHeroSkipFragmentData_heroBuilder b) => - b..G__typename = 'Character'; - - @override - @BuiltValueField(wireName: '__typename') - String get G__typename; - @override - String get id; - @override - String get name; - static Serializer get serializer => - _$gHeroSkipFragmentDataHeroSerializer; - - @override - Map toJson() => (_i1.serializers.serializeWith( - GHeroSkipFragmentData_hero.serializer, - this, - ) as Map); - - static GHeroSkipFragmentData_hero? fromJson(Map json) => - _i1.serializers.deserializeWith( - GHeroSkipFragmentData_hero.serializer, - json, - ); -} - -abstract class GHeroDetail { - String get G__typename; - String get id; - String get name; - Map toJson(); -} - -abstract class GHeroDetailData - implements Built, GHeroDetail { - GHeroDetailData._(); - - factory GHeroDetailData([void Function(GHeroDetailDataBuilder b) updates]) = - _$GHeroDetailData; - - static void _initializeBuilder(GHeroDetailDataBuilder b) => - b..G__typename = 'Character'; - - @override - @BuiltValueField(wireName: '__typename') - String get G__typename; - @override - String get id; - @override - String get name; - static Serializer get serializer => - _$gHeroDetailDataSerializer; - - @override - Map toJson() => (_i1.serializers.serializeWith( - GHeroDetailData.serializer, - this, - ) as Map); - - static GHeroDetailData? fromJson(Map json) => - _i1.serializers.deserializeWith( - GHeroDetailData.serializer, - json, - ); -} diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.g.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.g.dart deleted file mode 100644 index bcd64c10..00000000 --- a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.g.dart +++ /dev/null @@ -1,539 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'hero_skip_fragment_and_field.data.gql.dart'; - -// ************************************************************************** -// BuiltValueGenerator -// ************************************************************************** - -Serializer _$gHeroSkipFragmentDataSerializer = - new _$GHeroSkipFragmentDataSerializer(); -Serializer _$gHeroSkipFragmentDataHeroSerializer = - new _$GHeroSkipFragmentData_heroSerializer(); -Serializer _$gHeroDetailDataSerializer = - new _$GHeroDetailDataSerializer(); - -class _$GHeroSkipFragmentDataSerializer - implements StructuredSerializer { - @override - final Iterable types = const [ - GHeroSkipFragmentData, - _$GHeroSkipFragmentData - ]; - @override - final String wireName = 'GHeroSkipFragmentData'; - - @override - Iterable serialize( - Serializers serializers, GHeroSkipFragmentData object, - {FullType specifiedType = FullType.unspecified}) { - final result = [ - '__typename', - serializers.serialize(object.G__typename, - specifiedType: const FullType(String)), - ]; - Object? value; - value = object.hero; - if (value != null) { - result - ..add('hero') - ..add(serializers.serialize(value, - specifiedType: const FullType(GHeroSkipFragmentData_hero))); - } - return result; - } - - @override - GHeroSkipFragmentData deserialize( - Serializers serializers, Iterable serialized, - {FullType specifiedType = FullType.unspecified}) { - final result = new GHeroSkipFragmentDataBuilder(); - - final iterator = serialized.iterator; - while (iterator.moveNext()) { - final key = iterator.current! as String; - iterator.moveNext(); - final Object? value = iterator.current; - switch (key) { - case '__typename': - result.G__typename = serializers.deserialize(value, - specifiedType: const FullType(String))! as String; - break; - case 'hero': - result.hero.replace(serializers.deserialize(value, - specifiedType: const FullType(GHeroSkipFragmentData_hero))! - as GHeroSkipFragmentData_hero); - break; - } - } - - return result.build(); - } -} - -class _$GHeroSkipFragmentData_heroSerializer - implements StructuredSerializer { - @override - final Iterable types = const [ - GHeroSkipFragmentData_hero, - _$GHeroSkipFragmentData_hero - ]; - @override - final String wireName = 'GHeroSkipFragmentData_hero'; - - @override - Iterable serialize( - Serializers serializers, GHeroSkipFragmentData_hero object, - {FullType specifiedType = FullType.unspecified}) { - final result = [ - '__typename', - serializers.serialize(object.G__typename, - specifiedType: const FullType(String)), - 'id', - serializers.serialize(object.id, specifiedType: const FullType(String)), - 'name', - serializers.serialize(object.name, specifiedType: const FullType(String)), - ]; - - return result; - } - - @override - GHeroSkipFragmentData_hero deserialize( - Serializers serializers, Iterable serialized, - {FullType specifiedType = FullType.unspecified}) { - final result = new GHeroSkipFragmentData_heroBuilder(); - - final iterator = serialized.iterator; - while (iterator.moveNext()) { - final key = iterator.current! as String; - iterator.moveNext(); - final Object? value = iterator.current; - switch (key) { - case '__typename': - result.G__typename = serializers.deserialize(value, - specifiedType: const FullType(String))! as String; - break; - case 'id': - result.id = serializers.deserialize(value, - specifiedType: const FullType(String))! as String; - break; - case 'name': - result.name = serializers.deserialize(value, - specifiedType: const FullType(String))! as String; - break; - } - } - - return result.build(); - } -} - -class _$GHeroDetailDataSerializer - implements StructuredSerializer { - @override - final Iterable types = const [GHeroDetailData, _$GHeroDetailData]; - @override - final String wireName = 'GHeroDetailData'; - - @override - Iterable serialize(Serializers serializers, GHeroDetailData object, - {FullType specifiedType = FullType.unspecified}) { - final result = [ - '__typename', - serializers.serialize(object.G__typename, - specifiedType: const FullType(String)), - 'id', - serializers.serialize(object.id, specifiedType: const FullType(String)), - 'name', - serializers.serialize(object.name, specifiedType: const FullType(String)), - ]; - - return result; - } - - @override - GHeroDetailData deserialize( - Serializers serializers, Iterable serialized, - {FullType specifiedType = FullType.unspecified}) { - final result = new GHeroDetailDataBuilder(); - - final iterator = serialized.iterator; - while (iterator.moveNext()) { - final key = iterator.current! as String; - iterator.moveNext(); - final Object? value = iterator.current; - switch (key) { - case '__typename': - result.G__typename = serializers.deserialize(value, - specifiedType: const FullType(String))! as String; - break; - case 'id': - result.id = serializers.deserialize(value, - specifiedType: const FullType(String))! as String; - break; - case 'name': - result.name = serializers.deserialize(value, - specifiedType: const FullType(String))! as String; - break; - } - } - - return result.build(); - } -} - -class _$GHeroSkipFragmentData extends GHeroSkipFragmentData { - @override - final String G__typename; - @override - final GHeroSkipFragmentData_hero? hero; - - factory _$GHeroSkipFragmentData( - [void Function(GHeroSkipFragmentDataBuilder)? updates]) => - (new GHeroSkipFragmentDataBuilder()..update(updates))._build(); - - _$GHeroSkipFragmentData._({required this.G__typename, this.hero}) - : super._() { - BuiltValueNullFieldError.checkNotNull( - G__typename, r'GHeroSkipFragmentData', 'G__typename'); - } - - @override - GHeroSkipFragmentData rebuild( - void Function(GHeroSkipFragmentDataBuilder) updates) => - (toBuilder()..update(updates)).build(); - - @override - GHeroSkipFragmentDataBuilder toBuilder() => - new GHeroSkipFragmentDataBuilder()..replace(this); - - @override - bool operator ==(Object other) { - if (identical(other, this)) return true; - return other is GHeroSkipFragmentData && - G__typename == other.G__typename && - hero == other.hero; - } - - @override - int get hashCode { - var _$hash = 0; - _$hash = $jc(_$hash, G__typename.hashCode); - _$hash = $jc(_$hash, hero.hashCode); - _$hash = $jf(_$hash); - return _$hash; - } - - @override - String toString() { - return (newBuiltValueToStringHelper(r'GHeroSkipFragmentData') - ..add('G__typename', G__typename) - ..add('hero', hero)) - .toString(); - } -} - -class GHeroSkipFragmentDataBuilder - implements Builder { - _$GHeroSkipFragmentData? _$v; - - String? _G__typename; - String? get G__typename => _$this._G__typename; - set G__typename(String? G__typename) => _$this._G__typename = G__typename; - - GHeroSkipFragmentData_heroBuilder? _hero; - GHeroSkipFragmentData_heroBuilder get hero => - _$this._hero ??= new GHeroSkipFragmentData_heroBuilder(); - set hero(GHeroSkipFragmentData_heroBuilder? hero) => _$this._hero = hero; - - GHeroSkipFragmentDataBuilder() { - GHeroSkipFragmentData._initializeBuilder(this); - } - - GHeroSkipFragmentDataBuilder get _$this { - final $v = _$v; - if ($v != null) { - _G__typename = $v.G__typename; - _hero = $v.hero?.toBuilder(); - _$v = null; - } - return this; - } - - @override - void replace(GHeroSkipFragmentData other) { - ArgumentError.checkNotNull(other, 'other'); - _$v = other as _$GHeroSkipFragmentData; - } - - @override - void update(void Function(GHeroSkipFragmentDataBuilder)? updates) { - if (updates != null) updates(this); - } - - @override - GHeroSkipFragmentData build() => _build(); - - _$GHeroSkipFragmentData _build() { - _$GHeroSkipFragmentData _$result; - try { - _$result = _$v ?? - new _$GHeroSkipFragmentData._( - G__typename: BuiltValueNullFieldError.checkNotNull( - G__typename, r'GHeroSkipFragmentData', 'G__typename'), - hero: _hero?.build()); - } catch (_) { - late String _$failedField; - try { - _$failedField = 'hero'; - _hero?.build(); - } catch (e) { - throw new BuiltValueNestedFieldError( - r'GHeroSkipFragmentData', _$failedField, e.toString()); - } - rethrow; - } - replace(_$result); - return _$result; - } -} - -class _$GHeroSkipFragmentData_hero extends GHeroSkipFragmentData_hero { - @override - final String G__typename; - @override - final String id; - @override - final String name; - - factory _$GHeroSkipFragmentData_hero( - [void Function(GHeroSkipFragmentData_heroBuilder)? updates]) => - (new GHeroSkipFragmentData_heroBuilder()..update(updates))._build(); - - _$GHeroSkipFragmentData_hero._( - {required this.G__typename, required this.id, required this.name}) - : super._() { - BuiltValueNullFieldError.checkNotNull( - G__typename, r'GHeroSkipFragmentData_hero', 'G__typename'); - BuiltValueNullFieldError.checkNotNull( - id, r'GHeroSkipFragmentData_hero', 'id'); - BuiltValueNullFieldError.checkNotNull( - name, r'GHeroSkipFragmentData_hero', 'name'); - } - - @override - GHeroSkipFragmentData_hero rebuild( - void Function(GHeroSkipFragmentData_heroBuilder) updates) => - (toBuilder()..update(updates)).build(); - - @override - GHeroSkipFragmentData_heroBuilder toBuilder() => - new GHeroSkipFragmentData_heroBuilder()..replace(this); - - @override - bool operator ==(Object other) { - if (identical(other, this)) return true; - return other is GHeroSkipFragmentData_hero && - G__typename == other.G__typename && - id == other.id && - name == other.name; - } - - @override - int get hashCode { - var _$hash = 0; - _$hash = $jc(_$hash, G__typename.hashCode); - _$hash = $jc(_$hash, id.hashCode); - _$hash = $jc(_$hash, name.hashCode); - _$hash = $jf(_$hash); - return _$hash; - } - - @override - String toString() { - return (newBuiltValueToStringHelper(r'GHeroSkipFragmentData_hero') - ..add('G__typename', G__typename) - ..add('id', id) - ..add('name', name)) - .toString(); - } -} - -class GHeroSkipFragmentData_heroBuilder - implements - Builder { - _$GHeroSkipFragmentData_hero? _$v; - - String? _G__typename; - String? get G__typename => _$this._G__typename; - set G__typename(String? G__typename) => _$this._G__typename = G__typename; - - String? _id; - String? get id => _$this._id; - set id(String? id) => _$this._id = id; - - String? _name; - String? get name => _$this._name; - set name(String? name) => _$this._name = name; - - GHeroSkipFragmentData_heroBuilder() { - GHeroSkipFragmentData_hero._initializeBuilder(this); - } - - GHeroSkipFragmentData_heroBuilder get _$this { - final $v = _$v; - if ($v != null) { - _G__typename = $v.G__typename; - _id = $v.id; - _name = $v.name; - _$v = null; - } - return this; - } - - @override - void replace(GHeroSkipFragmentData_hero other) { - ArgumentError.checkNotNull(other, 'other'); - _$v = other as _$GHeroSkipFragmentData_hero; - } - - @override - void update(void Function(GHeroSkipFragmentData_heroBuilder)? updates) { - if (updates != null) updates(this); - } - - @override - GHeroSkipFragmentData_hero build() => _build(); - - _$GHeroSkipFragmentData_hero _build() { - final _$result = _$v ?? - new _$GHeroSkipFragmentData_hero._( - G__typename: BuiltValueNullFieldError.checkNotNull( - G__typename, r'GHeroSkipFragmentData_hero', 'G__typename'), - id: BuiltValueNullFieldError.checkNotNull( - id, r'GHeroSkipFragmentData_hero', 'id'), - name: BuiltValueNullFieldError.checkNotNull( - name, r'GHeroSkipFragmentData_hero', 'name')); - replace(_$result); - return _$result; - } -} - -class _$GHeroDetailData extends GHeroDetailData { - @override - final String G__typename; - @override - final String id; - @override - final String name; - - factory _$GHeroDetailData([void Function(GHeroDetailDataBuilder)? updates]) => - (new GHeroDetailDataBuilder()..update(updates))._build(); - - _$GHeroDetailData._( - {required this.G__typename, required this.id, required this.name}) - : super._() { - BuiltValueNullFieldError.checkNotNull( - G__typename, r'GHeroDetailData', 'G__typename'); - BuiltValueNullFieldError.checkNotNull(id, r'GHeroDetailData', 'id'); - BuiltValueNullFieldError.checkNotNull(name, r'GHeroDetailData', 'name'); - } - - @override - GHeroDetailData rebuild(void Function(GHeroDetailDataBuilder) updates) => - (toBuilder()..update(updates)).build(); - - @override - GHeroDetailDataBuilder toBuilder() => - new GHeroDetailDataBuilder()..replace(this); - - @override - bool operator ==(Object other) { - if (identical(other, this)) return true; - return other is GHeroDetailData && - G__typename == other.G__typename && - id == other.id && - name == other.name; - } - - @override - int get hashCode { - var _$hash = 0; - _$hash = $jc(_$hash, G__typename.hashCode); - _$hash = $jc(_$hash, id.hashCode); - _$hash = $jc(_$hash, name.hashCode); - _$hash = $jf(_$hash); - return _$hash; - } - - @override - String toString() { - return (newBuiltValueToStringHelper(r'GHeroDetailData') - ..add('G__typename', G__typename) - ..add('id', id) - ..add('name', name)) - .toString(); - } -} - -class GHeroDetailDataBuilder - implements Builder { - _$GHeroDetailData? _$v; - - String? _G__typename; - String? get G__typename => _$this._G__typename; - set G__typename(String? G__typename) => _$this._G__typename = G__typename; - - String? _id; - String? get id => _$this._id; - set id(String? id) => _$this._id = id; - - String? _name; - String? get name => _$this._name; - set name(String? name) => _$this._name = name; - - GHeroDetailDataBuilder() { - GHeroDetailData._initializeBuilder(this); - } - - GHeroDetailDataBuilder get _$this { - final $v = _$v; - if ($v != null) { - _G__typename = $v.G__typename; - _id = $v.id; - _name = $v.name; - _$v = null; - } - return this; - } - - @override - void replace(GHeroDetailData other) { - ArgumentError.checkNotNull(other, 'other'); - _$v = other as _$GHeroDetailData; - } - - @override - void update(void Function(GHeroDetailDataBuilder)? updates) { - if (updates != null) updates(this); - } - - @override - GHeroDetailData build() => _build(); - - _$GHeroDetailData _build() { - final _$result = _$v ?? - new _$GHeroDetailData._( - G__typename: BuiltValueNullFieldError.checkNotNull( - G__typename, r'GHeroDetailData', 'G__typename'), - id: BuiltValueNullFieldError.checkNotNull( - id, r'GHeroDetailData', 'id'), - name: BuiltValueNullFieldError.checkNotNull( - name, r'GHeroDetailData', 'name')); - replace(_$result); - return _$result; - } -} - -// ignore_for_file: deprecated_member_use_from_same_package,type=lint diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.dart deleted file mode 100644 index ec887471..00000000 --- a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.dart +++ /dev/null @@ -1,46 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint - -// ignore_for_file: no_leading_underscores_for_library_prefixes -import 'package:built_value/built_value.dart'; -import 'package:built_value/serializer.dart'; -import 'package:end_to_end_test/directives/__generated__/hero_skip_fragment_and_field.ast.gql.dart' - as _i2; -import 'package:end_to_end_test/directives/__generated__/hero_skip_fragment_and_field.var.gql.dart' - as _i3; -import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' - as _i4; -import 'package:gql_exec/gql_exec.dart' as _i1; - -part 'hero_skip_fragment_and_field.req.gql.g.dart'; - -abstract class GHeroSkipFragment - implements Built { - GHeroSkipFragment._(); - - factory GHeroSkipFragment( - [void Function(GHeroSkipFragmentBuilder b) updates]) = - _$GHeroSkipFragment; - - static void _initializeBuilder(GHeroSkipFragmentBuilder b) => b - ..operation = _i1.Operation( - document: _i2.document, - operationName: 'HeroSkipFragment', - ); - - _i3.GHeroSkipFragmentVars get vars; - _i1.Operation get operation; - static Serializer get serializer => - _$gHeroSkipFragmentSerializer; - - Map toJson() => (_i4.serializers.serializeWith( - GHeroSkipFragment.serializer, - this, - ) as Map); - - static GHeroSkipFragment? fromJson(Map json) => - _i4.serializers.deserializeWith( - GHeroSkipFragment.serializer, - json, - ); -} diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.g.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.g.dart deleted file mode 100644 index 564ee9a3..00000000 --- a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.g.dart +++ /dev/null @@ -1,178 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'hero_skip_fragment_and_field.req.gql.dart'; - -// ************************************************************************** -// BuiltValueGenerator -// ************************************************************************** - -Serializer _$gHeroSkipFragmentSerializer = - new _$GHeroSkipFragmentSerializer(); - -class _$GHeroSkipFragmentSerializer - implements StructuredSerializer { - @override - final Iterable types = const [GHeroSkipFragment, _$GHeroSkipFragment]; - @override - final String wireName = 'GHeroSkipFragment'; - - @override - Iterable serialize(Serializers serializers, GHeroSkipFragment object, - {FullType specifiedType = FullType.unspecified}) { - final result = [ - 'vars', - serializers.serialize(object.vars, - specifiedType: const FullType(_i3.GHeroSkipFragmentVars)), - 'operation', - serializers.serialize(object.operation, - specifiedType: const FullType(_i1.Operation)), - ]; - - return result; - } - - @override - GHeroSkipFragment deserialize( - Serializers serializers, Iterable serialized, - {FullType specifiedType = FullType.unspecified}) { - final result = new GHeroSkipFragmentBuilder(); - - final iterator = serialized.iterator; - while (iterator.moveNext()) { - final key = iterator.current! as String; - iterator.moveNext(); - final Object? value = iterator.current; - switch (key) { - case 'vars': - result.vars.replace(serializers.deserialize(value, - specifiedType: const FullType(_i3.GHeroSkipFragmentVars))! - as _i3.GHeroSkipFragmentVars); - break; - case 'operation': - result.operation = serializers.deserialize(value, - specifiedType: const FullType(_i1.Operation))! as _i1.Operation; - break; - } - } - - return result.build(); - } -} - -class _$GHeroSkipFragment extends GHeroSkipFragment { - @override - final _i3.GHeroSkipFragmentVars vars; - @override - final _i1.Operation operation; - - factory _$GHeroSkipFragment( - [void Function(GHeroSkipFragmentBuilder)? updates]) => - (new GHeroSkipFragmentBuilder()..update(updates))._build(); - - _$GHeroSkipFragment._({required this.vars, required this.operation}) - : super._() { - BuiltValueNullFieldError.checkNotNull(vars, r'GHeroSkipFragment', 'vars'); - BuiltValueNullFieldError.checkNotNull( - operation, r'GHeroSkipFragment', 'operation'); - } - - @override - GHeroSkipFragment rebuild(void Function(GHeroSkipFragmentBuilder) updates) => - (toBuilder()..update(updates)).build(); - - @override - GHeroSkipFragmentBuilder toBuilder() => - new GHeroSkipFragmentBuilder()..replace(this); - - @override - bool operator ==(Object other) { - if (identical(other, this)) return true; - return other is GHeroSkipFragment && - vars == other.vars && - operation == other.operation; - } - - @override - int get hashCode { - var _$hash = 0; - _$hash = $jc(_$hash, vars.hashCode); - _$hash = $jc(_$hash, operation.hashCode); - _$hash = $jf(_$hash); - return _$hash; - } - - @override - String toString() { - return (newBuiltValueToStringHelper(r'GHeroSkipFragment') - ..add('vars', vars) - ..add('operation', operation)) - .toString(); - } -} - -class GHeroSkipFragmentBuilder - implements Builder { - _$GHeroSkipFragment? _$v; - - _i3.GHeroSkipFragmentVarsBuilder? _vars; - _i3.GHeroSkipFragmentVarsBuilder get vars => - _$this._vars ??= new _i3.GHeroSkipFragmentVarsBuilder(); - set vars(_i3.GHeroSkipFragmentVarsBuilder? vars) => _$this._vars = vars; - - _i1.Operation? _operation; - _i1.Operation? get operation => _$this._operation; - set operation(_i1.Operation? operation) => _$this._operation = operation; - - GHeroSkipFragmentBuilder() { - GHeroSkipFragment._initializeBuilder(this); - } - - GHeroSkipFragmentBuilder get _$this { - final $v = _$v; - if ($v != null) { - _vars = $v.vars.toBuilder(); - _operation = $v.operation; - _$v = null; - } - return this; - } - - @override - void replace(GHeroSkipFragment other) { - ArgumentError.checkNotNull(other, 'other'); - _$v = other as _$GHeroSkipFragment; - } - - @override - void update(void Function(GHeroSkipFragmentBuilder)? updates) { - if (updates != null) updates(this); - } - - @override - GHeroSkipFragment build() => _build(); - - _$GHeroSkipFragment _build() { - _$GHeroSkipFragment _$result; - try { - _$result = _$v ?? - new _$GHeroSkipFragment._( - vars: vars.build(), - operation: BuiltValueNullFieldError.checkNotNull( - operation, r'GHeroSkipFragment', 'operation')); - } catch (_) { - late String _$failedField; - try { - _$failedField = 'vars'; - vars.build(); - } catch (e) { - throw new BuiltValueNestedFieldError( - r'GHeroSkipFragment', _$failedField, e.toString()); - } - rethrow; - } - replace(_$result); - return _$result; - } -} - -// ignore_for_file: deprecated_member_use_from_same_package,type=lint diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.dart deleted file mode 100644 index 4bc8a196..00000000 --- a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.dart +++ /dev/null @@ -1,56 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint - -// ignore_for_file: no_leading_underscores_for_library_prefixes -import 'package:built_value/built_value.dart'; -import 'package:built_value/serializer.dart'; -import 'package:end_to_end_test/graphql/__generated__/serializers.gql.dart' - as _i1; - -part 'hero_skip_fragment_and_field.var.gql.g.dart'; - -abstract class GHeroSkipFragmentVars - implements Built { - GHeroSkipFragmentVars._(); - - factory GHeroSkipFragmentVars( - [void Function(GHeroSkipFragmentVarsBuilder b) updates]) = - _$GHeroSkipFragmentVars; - - bool get skipDetails; - static Serializer get serializer => - _$gHeroSkipFragmentVarsSerializer; - - Map toJson() => (_i1.serializers.serializeWith( - GHeroSkipFragmentVars.serializer, - this, - ) as Map); - - static GHeroSkipFragmentVars? fromJson(Map json) => - _i1.serializers.deserializeWith( - GHeroSkipFragmentVars.serializer, - json, - ); -} - -abstract class GHeroDetailVars - implements Built { - GHeroDetailVars._(); - - factory GHeroDetailVars([void Function(GHeroDetailVarsBuilder b) updates]) = - _$GHeroDetailVars; - - static Serializer get serializer => - _$gHeroDetailVarsSerializer; - - Map toJson() => (_i1.serializers.serializeWith( - GHeroDetailVars.serializer, - this, - ) as Map); - - static GHeroDetailVars? fromJson(Map json) => - _i1.serializers.deserializeWith( - GHeroDetailVars.serializer, - json, - ); -} diff --git a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.g.dart b/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.g.dart deleted file mode 100644 index 7e6bf794..00000000 --- a/codegen/end_to_end_test/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.g.dart +++ /dev/null @@ -1,226 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'hero_skip_fragment_and_field.var.gql.dart'; - -// ************************************************************************** -// BuiltValueGenerator -// ************************************************************************** - -Serializer _$gHeroSkipFragmentVarsSerializer = - new _$GHeroSkipFragmentVarsSerializer(); -Serializer _$gHeroDetailVarsSerializer = - new _$GHeroDetailVarsSerializer(); - -class _$GHeroSkipFragmentVarsSerializer - implements StructuredSerializer { - @override - final Iterable types = const [ - GHeroSkipFragmentVars, - _$GHeroSkipFragmentVars - ]; - @override - final String wireName = 'GHeroSkipFragmentVars'; - - @override - Iterable serialize( - Serializers serializers, GHeroSkipFragmentVars object, - {FullType specifiedType = FullType.unspecified}) { - final result = [ - 'skipDetails', - serializers.serialize(object.skipDetails, - specifiedType: const FullType(bool)), - ]; - - return result; - } - - @override - GHeroSkipFragmentVars deserialize( - Serializers serializers, Iterable serialized, - {FullType specifiedType = FullType.unspecified}) { - final result = new GHeroSkipFragmentVarsBuilder(); - - final iterator = serialized.iterator; - while (iterator.moveNext()) { - final key = iterator.current! as String; - iterator.moveNext(); - final Object? value = iterator.current; - switch (key) { - case 'skipDetails': - result.skipDetails = serializers.deserialize(value, - specifiedType: const FullType(bool))! as bool; - break; - } - } - - return result.build(); - } -} - -class _$GHeroDetailVarsSerializer - implements StructuredSerializer { - @override - final Iterable types = const [GHeroDetailVars, _$GHeroDetailVars]; - @override - final String wireName = 'GHeroDetailVars'; - - @override - Iterable serialize(Serializers serializers, GHeroDetailVars object, - {FullType specifiedType = FullType.unspecified}) { - return []; - } - - @override - GHeroDetailVars deserialize( - Serializers serializers, Iterable serialized, - {FullType specifiedType = FullType.unspecified}) { - return new GHeroDetailVarsBuilder().build(); - } -} - -class _$GHeroSkipFragmentVars extends GHeroSkipFragmentVars { - @override - final bool skipDetails; - - factory _$GHeroSkipFragmentVars( - [void Function(GHeroSkipFragmentVarsBuilder)? updates]) => - (new GHeroSkipFragmentVarsBuilder()..update(updates))._build(); - - _$GHeroSkipFragmentVars._({required this.skipDetails}) : super._() { - BuiltValueNullFieldError.checkNotNull( - skipDetails, r'GHeroSkipFragmentVars', 'skipDetails'); - } - - @override - GHeroSkipFragmentVars rebuild( - void Function(GHeroSkipFragmentVarsBuilder) updates) => - (toBuilder()..update(updates)).build(); - - @override - GHeroSkipFragmentVarsBuilder toBuilder() => - new GHeroSkipFragmentVarsBuilder()..replace(this); - - @override - bool operator ==(Object other) { - if (identical(other, this)) return true; - return other is GHeroSkipFragmentVars && skipDetails == other.skipDetails; - } - - @override - int get hashCode { - var _$hash = 0; - _$hash = $jc(_$hash, skipDetails.hashCode); - _$hash = $jf(_$hash); - return _$hash; - } - - @override - String toString() { - return (newBuiltValueToStringHelper(r'GHeroSkipFragmentVars') - ..add('skipDetails', skipDetails)) - .toString(); - } -} - -class GHeroSkipFragmentVarsBuilder - implements Builder { - _$GHeroSkipFragmentVars? _$v; - - bool? _skipDetails; - bool? get skipDetails => _$this._skipDetails; - set skipDetails(bool? skipDetails) => _$this._skipDetails = skipDetails; - - GHeroSkipFragmentVarsBuilder(); - - GHeroSkipFragmentVarsBuilder get _$this { - final $v = _$v; - if ($v != null) { - _skipDetails = $v.skipDetails; - _$v = null; - } - return this; - } - - @override - void replace(GHeroSkipFragmentVars other) { - ArgumentError.checkNotNull(other, 'other'); - _$v = other as _$GHeroSkipFragmentVars; - } - - @override - void update(void Function(GHeroSkipFragmentVarsBuilder)? updates) { - if (updates != null) updates(this); - } - - @override - GHeroSkipFragmentVars build() => _build(); - - _$GHeroSkipFragmentVars _build() { - final _$result = _$v ?? - new _$GHeroSkipFragmentVars._( - skipDetails: BuiltValueNullFieldError.checkNotNull( - skipDetails, r'GHeroSkipFragmentVars', 'skipDetails')); - replace(_$result); - return _$result; - } -} - -class _$GHeroDetailVars extends GHeroDetailVars { - factory _$GHeroDetailVars([void Function(GHeroDetailVarsBuilder)? updates]) => - (new GHeroDetailVarsBuilder()..update(updates))._build(); - - _$GHeroDetailVars._() : super._(); - - @override - GHeroDetailVars rebuild(void Function(GHeroDetailVarsBuilder) updates) => - (toBuilder()..update(updates)).build(); - - @override - GHeroDetailVarsBuilder toBuilder() => - new GHeroDetailVarsBuilder()..replace(this); - - @override - bool operator ==(Object other) { - if (identical(other, this)) return true; - return other is GHeroDetailVars; - } - - @override - int get hashCode { - return 140740630; - } - - @override - String toString() { - return newBuiltValueToStringHelper(r'GHeroDetailVars').toString(); - } -} - -class GHeroDetailVarsBuilder - implements Builder { - _$GHeroDetailVars? _$v; - - GHeroDetailVarsBuilder(); - - @override - void replace(GHeroDetailVars other) { - ArgumentError.checkNotNull(other, 'other'); - _$v = other as _$GHeroDetailVars; - } - - @override - void update(void Function(GHeroDetailVarsBuilder)? updates) { - if (updates != null) updates(this); - } - - @override - GHeroDetailVars build() => _build(); - - _$GHeroDetailVars _build() { - final _$result = _$v ?? new _$GHeroDetailVars._(); - replace(_$result); - return _$result; - } -} - -// ignore_for_file: deprecated_member_use_from_same_package,type=lint diff --git a/codegen/end_to_end_test/lib/directives/hero_skip_fragment_and_field.graphql b/codegen/end_to_end_test/lib/directives/hero_skip_fragment_and_field.graphql deleted file mode 100644 index 428afc90..00000000 --- a/codegen/end_to_end_test/lib/directives/hero_skip_fragment_and_field.graphql +++ /dev/null @@ -1,11 +0,0 @@ -query HeroSkipFragment($skipDetails: Boolean!) { - hero { - id - ...HeroDetail @skip(if: $skipDetails) - } -} - -fragment HeroDetail on Character { - id - name -} diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.ast.gql.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.ast.gql.dart deleted file mode 100644 index d6c423cf..00000000 --- a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.ast.gql.dart +++ /dev/null @@ -1,83 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint - -// ignore_for_file: no_leading_underscores_for_library_prefixes -import 'package:gql/ast.dart' as _i1; - -const HeroSkipFragment = _i1.OperationDefinitionNode( - type: _i1.OperationType.query, - name: _i1.NameNode(value: 'HeroSkipFragment'), - variableDefinitions: [ - _i1.VariableDefinitionNode( - variable: _i1.VariableNode(name: _i1.NameNode(value: 'skipDetails')), - type: _i1.NamedTypeNode( - name: _i1.NameNode(value: 'Boolean'), - isNonNull: true, - ), - defaultValue: _i1.DefaultValueNode(value: null), - directives: [], - ) - ], - directives: [], - selectionSet: _i1.SelectionSetNode(selections: [ - _i1.FieldNode( - name: _i1.NameNode(value: 'hero'), - alias: null, - arguments: [], - directives: [], - selectionSet: _i1.SelectionSetNode(selections: [ - _i1.FieldNode( - name: _i1.NameNode(value: 'id'), - alias: null, - arguments: [], - directives: [], - selectionSet: null, - ), - _i1.FragmentSpreadNode( - name: _i1.NameNode(value: 'HeroDetail'), - directives: [ - _i1.DirectiveNode( - name: _i1.NameNode(value: 'skip'), - arguments: [ - _i1.ArgumentNode( - name: _i1.NameNode(value: 'if'), - value: _i1.VariableNode( - name: _i1.NameNode(value: 'skipDetails')), - ) - ], - ) - ], - ), - ]), - ) - ]), -); -const HeroDetail = _i1.FragmentDefinitionNode( - name: _i1.NameNode(value: 'HeroDetail'), - typeCondition: _i1.TypeConditionNode( - on: _i1.NamedTypeNode( - name: _i1.NameNode(value: 'Character'), - isNonNull: false, - )), - directives: [], - selectionSet: _i1.SelectionSetNode(selections: [ - _i1.FieldNode( - name: _i1.NameNode(value: 'id'), - alias: null, - arguments: [], - directives: [], - selectionSet: null, - ), - _i1.FieldNode( - name: _i1.NameNode(value: 'name'), - alias: null, - arguments: [], - directives: [], - selectionSet: null, - ), - ]), -); -const document = _i1.DocumentNode(definitions: [ - HeroSkipFragment, - HeroDetail, -]); diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.dart deleted file mode 100644 index 67493c46..00000000 --- a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.dart +++ /dev/null @@ -1,115 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint - -// ignore_for_file: no_leading_underscores_for_library_prefixes -import 'package:built_value/built_value.dart'; -import 'package:built_value/serializer.dart'; -import 'package:end_to_end_test_tristate/graphql/__generated__/serializers.gql.dart' - as _i1; - -part 'hero_skip_fragment_and_field.data.gql.g.dart'; - -abstract class GHeroSkipFragmentData - implements Built { - GHeroSkipFragmentData._(); - - factory GHeroSkipFragmentData( - [void Function(GHeroSkipFragmentDataBuilder b) updates]) = - _$GHeroSkipFragmentData; - - static void _initializeBuilder(GHeroSkipFragmentDataBuilder b) => - b..G__typename = 'Query'; - - @BuiltValueField(wireName: '__typename') - String get G__typename; - GHeroSkipFragmentData_hero? get hero; - static Serializer get serializer => - _$gHeroSkipFragmentDataSerializer; - - Map toJson() => (_i1.serializers.serializeWith( - GHeroSkipFragmentData.serializer, - this, - ) as Map); - - static GHeroSkipFragmentData? fromJson(Map json) => - _i1.serializers.deserializeWith( - GHeroSkipFragmentData.serializer, - json, - ); -} - -abstract class GHeroSkipFragmentData_hero - implements - Built, - GHeroDetail { - GHeroSkipFragmentData_hero._(); - - factory GHeroSkipFragmentData_hero( - [void Function(GHeroSkipFragmentData_heroBuilder b) updates]) = - _$GHeroSkipFragmentData_hero; - - static void _initializeBuilder(GHeroSkipFragmentData_heroBuilder b) => - b..G__typename = 'Character'; - - @override - @BuiltValueField(wireName: '__typename') - String get G__typename; - @override - String get id; - @override - String get name; - static Serializer get serializer => - _$gHeroSkipFragmentDataHeroSerializer; - - @override - Map toJson() => (_i1.serializers.serializeWith( - GHeroSkipFragmentData_hero.serializer, - this, - ) as Map); - - static GHeroSkipFragmentData_hero? fromJson(Map json) => - _i1.serializers.deserializeWith( - GHeroSkipFragmentData_hero.serializer, - json, - ); -} - -abstract class GHeroDetail { - String get G__typename; - String get id; - String get name; - Map toJson(); -} - -abstract class GHeroDetailData - implements Built, GHeroDetail { - GHeroDetailData._(); - - factory GHeroDetailData([void Function(GHeroDetailDataBuilder b) updates]) = - _$GHeroDetailData; - - static void _initializeBuilder(GHeroDetailDataBuilder b) => - b..G__typename = 'Character'; - - @override - @BuiltValueField(wireName: '__typename') - String get G__typename; - @override - String get id; - @override - String get name; - static Serializer get serializer => - _$gHeroDetailDataSerializer; - - @override - Map toJson() => (_i1.serializers.serializeWith( - GHeroDetailData.serializer, - this, - ) as Map); - - static GHeroDetailData? fromJson(Map json) => - _i1.serializers.deserializeWith( - GHeroDetailData.serializer, - json, - ); -} diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.g.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.g.dart deleted file mode 100644 index bcd64c10..00000000 --- a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.data.gql.g.dart +++ /dev/null @@ -1,539 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'hero_skip_fragment_and_field.data.gql.dart'; - -// ************************************************************************** -// BuiltValueGenerator -// ************************************************************************** - -Serializer _$gHeroSkipFragmentDataSerializer = - new _$GHeroSkipFragmentDataSerializer(); -Serializer _$gHeroSkipFragmentDataHeroSerializer = - new _$GHeroSkipFragmentData_heroSerializer(); -Serializer _$gHeroDetailDataSerializer = - new _$GHeroDetailDataSerializer(); - -class _$GHeroSkipFragmentDataSerializer - implements StructuredSerializer { - @override - final Iterable types = const [ - GHeroSkipFragmentData, - _$GHeroSkipFragmentData - ]; - @override - final String wireName = 'GHeroSkipFragmentData'; - - @override - Iterable serialize( - Serializers serializers, GHeroSkipFragmentData object, - {FullType specifiedType = FullType.unspecified}) { - final result = [ - '__typename', - serializers.serialize(object.G__typename, - specifiedType: const FullType(String)), - ]; - Object? value; - value = object.hero; - if (value != null) { - result - ..add('hero') - ..add(serializers.serialize(value, - specifiedType: const FullType(GHeroSkipFragmentData_hero))); - } - return result; - } - - @override - GHeroSkipFragmentData deserialize( - Serializers serializers, Iterable serialized, - {FullType specifiedType = FullType.unspecified}) { - final result = new GHeroSkipFragmentDataBuilder(); - - final iterator = serialized.iterator; - while (iterator.moveNext()) { - final key = iterator.current! as String; - iterator.moveNext(); - final Object? value = iterator.current; - switch (key) { - case '__typename': - result.G__typename = serializers.deserialize(value, - specifiedType: const FullType(String))! as String; - break; - case 'hero': - result.hero.replace(serializers.deserialize(value, - specifiedType: const FullType(GHeroSkipFragmentData_hero))! - as GHeroSkipFragmentData_hero); - break; - } - } - - return result.build(); - } -} - -class _$GHeroSkipFragmentData_heroSerializer - implements StructuredSerializer { - @override - final Iterable types = const [ - GHeroSkipFragmentData_hero, - _$GHeroSkipFragmentData_hero - ]; - @override - final String wireName = 'GHeroSkipFragmentData_hero'; - - @override - Iterable serialize( - Serializers serializers, GHeroSkipFragmentData_hero object, - {FullType specifiedType = FullType.unspecified}) { - final result = [ - '__typename', - serializers.serialize(object.G__typename, - specifiedType: const FullType(String)), - 'id', - serializers.serialize(object.id, specifiedType: const FullType(String)), - 'name', - serializers.serialize(object.name, specifiedType: const FullType(String)), - ]; - - return result; - } - - @override - GHeroSkipFragmentData_hero deserialize( - Serializers serializers, Iterable serialized, - {FullType specifiedType = FullType.unspecified}) { - final result = new GHeroSkipFragmentData_heroBuilder(); - - final iterator = serialized.iterator; - while (iterator.moveNext()) { - final key = iterator.current! as String; - iterator.moveNext(); - final Object? value = iterator.current; - switch (key) { - case '__typename': - result.G__typename = serializers.deserialize(value, - specifiedType: const FullType(String))! as String; - break; - case 'id': - result.id = serializers.deserialize(value, - specifiedType: const FullType(String))! as String; - break; - case 'name': - result.name = serializers.deserialize(value, - specifiedType: const FullType(String))! as String; - break; - } - } - - return result.build(); - } -} - -class _$GHeroDetailDataSerializer - implements StructuredSerializer { - @override - final Iterable types = const [GHeroDetailData, _$GHeroDetailData]; - @override - final String wireName = 'GHeroDetailData'; - - @override - Iterable serialize(Serializers serializers, GHeroDetailData object, - {FullType specifiedType = FullType.unspecified}) { - final result = [ - '__typename', - serializers.serialize(object.G__typename, - specifiedType: const FullType(String)), - 'id', - serializers.serialize(object.id, specifiedType: const FullType(String)), - 'name', - serializers.serialize(object.name, specifiedType: const FullType(String)), - ]; - - return result; - } - - @override - GHeroDetailData deserialize( - Serializers serializers, Iterable serialized, - {FullType specifiedType = FullType.unspecified}) { - final result = new GHeroDetailDataBuilder(); - - final iterator = serialized.iterator; - while (iterator.moveNext()) { - final key = iterator.current! as String; - iterator.moveNext(); - final Object? value = iterator.current; - switch (key) { - case '__typename': - result.G__typename = serializers.deserialize(value, - specifiedType: const FullType(String))! as String; - break; - case 'id': - result.id = serializers.deserialize(value, - specifiedType: const FullType(String))! as String; - break; - case 'name': - result.name = serializers.deserialize(value, - specifiedType: const FullType(String))! as String; - break; - } - } - - return result.build(); - } -} - -class _$GHeroSkipFragmentData extends GHeroSkipFragmentData { - @override - final String G__typename; - @override - final GHeroSkipFragmentData_hero? hero; - - factory _$GHeroSkipFragmentData( - [void Function(GHeroSkipFragmentDataBuilder)? updates]) => - (new GHeroSkipFragmentDataBuilder()..update(updates))._build(); - - _$GHeroSkipFragmentData._({required this.G__typename, this.hero}) - : super._() { - BuiltValueNullFieldError.checkNotNull( - G__typename, r'GHeroSkipFragmentData', 'G__typename'); - } - - @override - GHeroSkipFragmentData rebuild( - void Function(GHeroSkipFragmentDataBuilder) updates) => - (toBuilder()..update(updates)).build(); - - @override - GHeroSkipFragmentDataBuilder toBuilder() => - new GHeroSkipFragmentDataBuilder()..replace(this); - - @override - bool operator ==(Object other) { - if (identical(other, this)) return true; - return other is GHeroSkipFragmentData && - G__typename == other.G__typename && - hero == other.hero; - } - - @override - int get hashCode { - var _$hash = 0; - _$hash = $jc(_$hash, G__typename.hashCode); - _$hash = $jc(_$hash, hero.hashCode); - _$hash = $jf(_$hash); - return _$hash; - } - - @override - String toString() { - return (newBuiltValueToStringHelper(r'GHeroSkipFragmentData') - ..add('G__typename', G__typename) - ..add('hero', hero)) - .toString(); - } -} - -class GHeroSkipFragmentDataBuilder - implements Builder { - _$GHeroSkipFragmentData? _$v; - - String? _G__typename; - String? get G__typename => _$this._G__typename; - set G__typename(String? G__typename) => _$this._G__typename = G__typename; - - GHeroSkipFragmentData_heroBuilder? _hero; - GHeroSkipFragmentData_heroBuilder get hero => - _$this._hero ??= new GHeroSkipFragmentData_heroBuilder(); - set hero(GHeroSkipFragmentData_heroBuilder? hero) => _$this._hero = hero; - - GHeroSkipFragmentDataBuilder() { - GHeroSkipFragmentData._initializeBuilder(this); - } - - GHeroSkipFragmentDataBuilder get _$this { - final $v = _$v; - if ($v != null) { - _G__typename = $v.G__typename; - _hero = $v.hero?.toBuilder(); - _$v = null; - } - return this; - } - - @override - void replace(GHeroSkipFragmentData other) { - ArgumentError.checkNotNull(other, 'other'); - _$v = other as _$GHeroSkipFragmentData; - } - - @override - void update(void Function(GHeroSkipFragmentDataBuilder)? updates) { - if (updates != null) updates(this); - } - - @override - GHeroSkipFragmentData build() => _build(); - - _$GHeroSkipFragmentData _build() { - _$GHeroSkipFragmentData _$result; - try { - _$result = _$v ?? - new _$GHeroSkipFragmentData._( - G__typename: BuiltValueNullFieldError.checkNotNull( - G__typename, r'GHeroSkipFragmentData', 'G__typename'), - hero: _hero?.build()); - } catch (_) { - late String _$failedField; - try { - _$failedField = 'hero'; - _hero?.build(); - } catch (e) { - throw new BuiltValueNestedFieldError( - r'GHeroSkipFragmentData', _$failedField, e.toString()); - } - rethrow; - } - replace(_$result); - return _$result; - } -} - -class _$GHeroSkipFragmentData_hero extends GHeroSkipFragmentData_hero { - @override - final String G__typename; - @override - final String id; - @override - final String name; - - factory _$GHeroSkipFragmentData_hero( - [void Function(GHeroSkipFragmentData_heroBuilder)? updates]) => - (new GHeroSkipFragmentData_heroBuilder()..update(updates))._build(); - - _$GHeroSkipFragmentData_hero._( - {required this.G__typename, required this.id, required this.name}) - : super._() { - BuiltValueNullFieldError.checkNotNull( - G__typename, r'GHeroSkipFragmentData_hero', 'G__typename'); - BuiltValueNullFieldError.checkNotNull( - id, r'GHeroSkipFragmentData_hero', 'id'); - BuiltValueNullFieldError.checkNotNull( - name, r'GHeroSkipFragmentData_hero', 'name'); - } - - @override - GHeroSkipFragmentData_hero rebuild( - void Function(GHeroSkipFragmentData_heroBuilder) updates) => - (toBuilder()..update(updates)).build(); - - @override - GHeroSkipFragmentData_heroBuilder toBuilder() => - new GHeroSkipFragmentData_heroBuilder()..replace(this); - - @override - bool operator ==(Object other) { - if (identical(other, this)) return true; - return other is GHeroSkipFragmentData_hero && - G__typename == other.G__typename && - id == other.id && - name == other.name; - } - - @override - int get hashCode { - var _$hash = 0; - _$hash = $jc(_$hash, G__typename.hashCode); - _$hash = $jc(_$hash, id.hashCode); - _$hash = $jc(_$hash, name.hashCode); - _$hash = $jf(_$hash); - return _$hash; - } - - @override - String toString() { - return (newBuiltValueToStringHelper(r'GHeroSkipFragmentData_hero') - ..add('G__typename', G__typename) - ..add('id', id) - ..add('name', name)) - .toString(); - } -} - -class GHeroSkipFragmentData_heroBuilder - implements - Builder { - _$GHeroSkipFragmentData_hero? _$v; - - String? _G__typename; - String? get G__typename => _$this._G__typename; - set G__typename(String? G__typename) => _$this._G__typename = G__typename; - - String? _id; - String? get id => _$this._id; - set id(String? id) => _$this._id = id; - - String? _name; - String? get name => _$this._name; - set name(String? name) => _$this._name = name; - - GHeroSkipFragmentData_heroBuilder() { - GHeroSkipFragmentData_hero._initializeBuilder(this); - } - - GHeroSkipFragmentData_heroBuilder get _$this { - final $v = _$v; - if ($v != null) { - _G__typename = $v.G__typename; - _id = $v.id; - _name = $v.name; - _$v = null; - } - return this; - } - - @override - void replace(GHeroSkipFragmentData_hero other) { - ArgumentError.checkNotNull(other, 'other'); - _$v = other as _$GHeroSkipFragmentData_hero; - } - - @override - void update(void Function(GHeroSkipFragmentData_heroBuilder)? updates) { - if (updates != null) updates(this); - } - - @override - GHeroSkipFragmentData_hero build() => _build(); - - _$GHeroSkipFragmentData_hero _build() { - final _$result = _$v ?? - new _$GHeroSkipFragmentData_hero._( - G__typename: BuiltValueNullFieldError.checkNotNull( - G__typename, r'GHeroSkipFragmentData_hero', 'G__typename'), - id: BuiltValueNullFieldError.checkNotNull( - id, r'GHeroSkipFragmentData_hero', 'id'), - name: BuiltValueNullFieldError.checkNotNull( - name, r'GHeroSkipFragmentData_hero', 'name')); - replace(_$result); - return _$result; - } -} - -class _$GHeroDetailData extends GHeroDetailData { - @override - final String G__typename; - @override - final String id; - @override - final String name; - - factory _$GHeroDetailData([void Function(GHeroDetailDataBuilder)? updates]) => - (new GHeroDetailDataBuilder()..update(updates))._build(); - - _$GHeroDetailData._( - {required this.G__typename, required this.id, required this.name}) - : super._() { - BuiltValueNullFieldError.checkNotNull( - G__typename, r'GHeroDetailData', 'G__typename'); - BuiltValueNullFieldError.checkNotNull(id, r'GHeroDetailData', 'id'); - BuiltValueNullFieldError.checkNotNull(name, r'GHeroDetailData', 'name'); - } - - @override - GHeroDetailData rebuild(void Function(GHeroDetailDataBuilder) updates) => - (toBuilder()..update(updates)).build(); - - @override - GHeroDetailDataBuilder toBuilder() => - new GHeroDetailDataBuilder()..replace(this); - - @override - bool operator ==(Object other) { - if (identical(other, this)) return true; - return other is GHeroDetailData && - G__typename == other.G__typename && - id == other.id && - name == other.name; - } - - @override - int get hashCode { - var _$hash = 0; - _$hash = $jc(_$hash, G__typename.hashCode); - _$hash = $jc(_$hash, id.hashCode); - _$hash = $jc(_$hash, name.hashCode); - _$hash = $jf(_$hash); - return _$hash; - } - - @override - String toString() { - return (newBuiltValueToStringHelper(r'GHeroDetailData') - ..add('G__typename', G__typename) - ..add('id', id) - ..add('name', name)) - .toString(); - } -} - -class GHeroDetailDataBuilder - implements Builder { - _$GHeroDetailData? _$v; - - String? _G__typename; - String? get G__typename => _$this._G__typename; - set G__typename(String? G__typename) => _$this._G__typename = G__typename; - - String? _id; - String? get id => _$this._id; - set id(String? id) => _$this._id = id; - - String? _name; - String? get name => _$this._name; - set name(String? name) => _$this._name = name; - - GHeroDetailDataBuilder() { - GHeroDetailData._initializeBuilder(this); - } - - GHeroDetailDataBuilder get _$this { - final $v = _$v; - if ($v != null) { - _G__typename = $v.G__typename; - _id = $v.id; - _name = $v.name; - _$v = null; - } - return this; - } - - @override - void replace(GHeroDetailData other) { - ArgumentError.checkNotNull(other, 'other'); - _$v = other as _$GHeroDetailData; - } - - @override - void update(void Function(GHeroDetailDataBuilder)? updates) { - if (updates != null) updates(this); - } - - @override - GHeroDetailData build() => _build(); - - _$GHeroDetailData _build() { - final _$result = _$v ?? - new _$GHeroDetailData._( - G__typename: BuiltValueNullFieldError.checkNotNull( - G__typename, r'GHeroDetailData', 'G__typename'), - id: BuiltValueNullFieldError.checkNotNull( - id, r'GHeroDetailData', 'id'), - name: BuiltValueNullFieldError.checkNotNull( - name, r'GHeroDetailData', 'name')); - replace(_$result); - return _$result; - } -} - -// ignore_for_file: deprecated_member_use_from_same_package,type=lint diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.dart deleted file mode 100644 index 1e15dd0a..00000000 --- a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.dart +++ /dev/null @@ -1,46 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint - -// ignore_for_file: no_leading_underscores_for_library_prefixes -import 'package:built_value/built_value.dart'; -import 'package:built_value/serializer.dart'; -import 'package:end_to_end_test_tristate/directives/__generated__/hero_skip_fragment_and_field.ast.gql.dart' - as _i2; -import 'package:end_to_end_test_tristate/directives/__generated__/hero_skip_fragment_and_field.var.gql.dart' - as _i3; -import 'package:end_to_end_test_tristate/graphql/__generated__/serializers.gql.dart' - as _i4; -import 'package:gql_exec/gql_exec.dart' as _i1; - -part 'hero_skip_fragment_and_field.req.gql.g.dart'; - -abstract class GHeroSkipFragment - implements Built { - GHeroSkipFragment._(); - - factory GHeroSkipFragment( - [void Function(GHeroSkipFragmentBuilder b) updates]) = - _$GHeroSkipFragment; - - static void _initializeBuilder(GHeroSkipFragmentBuilder b) => b - ..operation = _i1.Operation( - document: _i2.document, - operationName: 'HeroSkipFragment', - ); - - _i3.GHeroSkipFragmentVars get vars; - _i1.Operation get operation; - static Serializer get serializer => - _$gHeroSkipFragmentSerializer; - - Map toJson() => (_i4.serializers.serializeWith( - GHeroSkipFragment.serializer, - this, - ) as Map); - - static GHeroSkipFragment? fromJson(Map json) => - _i4.serializers.deserializeWith( - GHeroSkipFragment.serializer, - json, - ); -} diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.g.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.g.dart deleted file mode 100644 index 564ee9a3..00000000 --- a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.req.gql.g.dart +++ /dev/null @@ -1,178 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'hero_skip_fragment_and_field.req.gql.dart'; - -// ************************************************************************** -// BuiltValueGenerator -// ************************************************************************** - -Serializer _$gHeroSkipFragmentSerializer = - new _$GHeroSkipFragmentSerializer(); - -class _$GHeroSkipFragmentSerializer - implements StructuredSerializer { - @override - final Iterable types = const [GHeroSkipFragment, _$GHeroSkipFragment]; - @override - final String wireName = 'GHeroSkipFragment'; - - @override - Iterable serialize(Serializers serializers, GHeroSkipFragment object, - {FullType specifiedType = FullType.unspecified}) { - final result = [ - 'vars', - serializers.serialize(object.vars, - specifiedType: const FullType(_i3.GHeroSkipFragmentVars)), - 'operation', - serializers.serialize(object.operation, - specifiedType: const FullType(_i1.Operation)), - ]; - - return result; - } - - @override - GHeroSkipFragment deserialize( - Serializers serializers, Iterable serialized, - {FullType specifiedType = FullType.unspecified}) { - final result = new GHeroSkipFragmentBuilder(); - - final iterator = serialized.iterator; - while (iterator.moveNext()) { - final key = iterator.current! as String; - iterator.moveNext(); - final Object? value = iterator.current; - switch (key) { - case 'vars': - result.vars.replace(serializers.deserialize(value, - specifiedType: const FullType(_i3.GHeroSkipFragmentVars))! - as _i3.GHeroSkipFragmentVars); - break; - case 'operation': - result.operation = serializers.deserialize(value, - specifiedType: const FullType(_i1.Operation))! as _i1.Operation; - break; - } - } - - return result.build(); - } -} - -class _$GHeroSkipFragment extends GHeroSkipFragment { - @override - final _i3.GHeroSkipFragmentVars vars; - @override - final _i1.Operation operation; - - factory _$GHeroSkipFragment( - [void Function(GHeroSkipFragmentBuilder)? updates]) => - (new GHeroSkipFragmentBuilder()..update(updates))._build(); - - _$GHeroSkipFragment._({required this.vars, required this.operation}) - : super._() { - BuiltValueNullFieldError.checkNotNull(vars, r'GHeroSkipFragment', 'vars'); - BuiltValueNullFieldError.checkNotNull( - operation, r'GHeroSkipFragment', 'operation'); - } - - @override - GHeroSkipFragment rebuild(void Function(GHeroSkipFragmentBuilder) updates) => - (toBuilder()..update(updates)).build(); - - @override - GHeroSkipFragmentBuilder toBuilder() => - new GHeroSkipFragmentBuilder()..replace(this); - - @override - bool operator ==(Object other) { - if (identical(other, this)) return true; - return other is GHeroSkipFragment && - vars == other.vars && - operation == other.operation; - } - - @override - int get hashCode { - var _$hash = 0; - _$hash = $jc(_$hash, vars.hashCode); - _$hash = $jc(_$hash, operation.hashCode); - _$hash = $jf(_$hash); - return _$hash; - } - - @override - String toString() { - return (newBuiltValueToStringHelper(r'GHeroSkipFragment') - ..add('vars', vars) - ..add('operation', operation)) - .toString(); - } -} - -class GHeroSkipFragmentBuilder - implements Builder { - _$GHeroSkipFragment? _$v; - - _i3.GHeroSkipFragmentVarsBuilder? _vars; - _i3.GHeroSkipFragmentVarsBuilder get vars => - _$this._vars ??= new _i3.GHeroSkipFragmentVarsBuilder(); - set vars(_i3.GHeroSkipFragmentVarsBuilder? vars) => _$this._vars = vars; - - _i1.Operation? _operation; - _i1.Operation? get operation => _$this._operation; - set operation(_i1.Operation? operation) => _$this._operation = operation; - - GHeroSkipFragmentBuilder() { - GHeroSkipFragment._initializeBuilder(this); - } - - GHeroSkipFragmentBuilder get _$this { - final $v = _$v; - if ($v != null) { - _vars = $v.vars.toBuilder(); - _operation = $v.operation; - _$v = null; - } - return this; - } - - @override - void replace(GHeroSkipFragment other) { - ArgumentError.checkNotNull(other, 'other'); - _$v = other as _$GHeroSkipFragment; - } - - @override - void update(void Function(GHeroSkipFragmentBuilder)? updates) { - if (updates != null) updates(this); - } - - @override - GHeroSkipFragment build() => _build(); - - _$GHeroSkipFragment _build() { - _$GHeroSkipFragment _$result; - try { - _$result = _$v ?? - new _$GHeroSkipFragment._( - vars: vars.build(), - operation: BuiltValueNullFieldError.checkNotNull( - operation, r'GHeroSkipFragment', 'operation')); - } catch (_) { - late String _$failedField; - try { - _$failedField = 'vars'; - vars.build(); - } catch (e) { - throw new BuiltValueNestedFieldError( - r'GHeroSkipFragment', _$failedField, e.toString()); - } - rethrow; - } - replace(_$result); - return _$result; - } -} - -// ignore_for_file: deprecated_member_use_from_same_package,type=lint diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.dart deleted file mode 100644 index b6a38afb..00000000 --- a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.dart +++ /dev/null @@ -1,125 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint - -// ignore_for_file: no_leading_underscores_for_library_prefixes -import 'package:built_value/built_value.dart'; -import 'package:built_value/serializer.dart'; -import 'package:end_to_end_test_tristate/graphql/__generated__/serializers.gql.dart' - as _i1; - -part 'hero_skip_fragment_and_field.var.gql.g.dart'; - -abstract class GHeroSkipFragmentVars - implements Built { - GHeroSkipFragmentVars._(); - - factory GHeroSkipFragmentVars( - [void Function(GHeroSkipFragmentVarsBuilder b) updates]) = - _$GHeroSkipFragmentVars; - - bool get skipDetails; - Map toJson() => (_i1.serializers.serializeWith( - GHeroSkipFragmentVars.serializer, - this, - ) as Map); - - static GHeroSkipFragmentVars? fromJson(Map json) => - _i1.serializers.deserializeWith( - GHeroSkipFragmentVars.serializer, - json, - ); - - @BuiltValueSerializer(custom: true, serializeNulls: true) - static Serializer get serializer => - GHeroSkipFragmentVarsSerializer(); -} - -abstract class GHeroDetailVars - implements Built { - GHeroDetailVars._(); - - factory GHeroDetailVars([void Function(GHeroDetailVarsBuilder b) updates]) = - _$GHeroDetailVars; - - Map toJson() => (_i1.serializers.serializeWith( - GHeroDetailVars.serializer, - this, - ) as Map); - - static GHeroDetailVars? fromJson(Map json) => - _i1.serializers.deserializeWith( - GHeroDetailVars.serializer, - json, - ); - - @BuiltValueSerializer(custom: true, serializeNulls: true) - static Serializer get serializer => - GHeroDetailVarsSerializer(); -} - -final class GHeroSkipFragmentVarsSerializer - extends StructuredSerializer { - final String wireName = 'GHeroSkipFragmentVars'; - - final Iterable types = const [ - GHeroSkipFragmentVars, - _$GHeroSkipFragmentVars - ]; - - Iterable serialize( - Serializers serializers, - GHeroSkipFragmentVars object, { - FullType specifiedType = FullType.unspecified, - }) { - final result = []; - result.add('skipDetails'); - result.add(serializers.serialize(object.skipDetails, - specifiedType: const FullType(bool))); - return result; - } - - GHeroSkipFragmentVars deserialize( - Serializers serializers, - Iterable serialized, { - FullType specifiedType = FullType.unspecified, - }) { - final builder = GHeroSkipFragmentVarsBuilder(); - final iterator = serialized.iterator; - while (iterator.moveNext()) { - final key = iterator.current as String; - iterator.moveNext(); - final Object? value = iterator.current; - switch (key) { - case 'skipDetails': - var _$fieldValue = serializers.deserialize(value, - specifiedType: const FullType(bool)) as bool; - builder.skipDetails = _$fieldValue; - break; - } - } - return builder.build(); - } -} - -final class GHeroDetailVarsSerializer - extends StructuredSerializer { - final String wireName = 'GHeroDetailVars'; - - final Iterable types = const [GHeroDetailVars, _$GHeroDetailVars]; - - Iterable serialize( - Serializers serializers, - GHeroDetailVars object, { - FullType specifiedType = FullType.unspecified, - }) { - return const []; - } - - GHeroDetailVars deserialize( - Serializers serializers, - Iterable serialized, { - FullType specifiedType = FullType.unspecified, - }) { - return GHeroDetailVars(); - } -} diff --git a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.g.dart b/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.g.dart deleted file mode 100644 index 158ede43..00000000 --- a/codegen/end_to_end_test_tristate/lib/directives/__generated__/hero_skip_fragment_and_field.var.gql.g.dart +++ /dev/null @@ -1,154 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'hero_skip_fragment_and_field.var.gql.dart'; - -// ************************************************************************** -// BuiltValueGenerator -// ************************************************************************** - -class _$GHeroSkipFragmentVars extends GHeroSkipFragmentVars { - @override - final bool skipDetails; - - factory _$GHeroSkipFragmentVars( - [void Function(GHeroSkipFragmentVarsBuilder)? updates]) => - (new GHeroSkipFragmentVarsBuilder()..update(updates))._build(); - - _$GHeroSkipFragmentVars._({required this.skipDetails}) : super._() { - BuiltValueNullFieldError.checkNotNull( - skipDetails, r'GHeroSkipFragmentVars', 'skipDetails'); - } - - @override - GHeroSkipFragmentVars rebuild( - void Function(GHeroSkipFragmentVarsBuilder) updates) => - (toBuilder()..update(updates)).build(); - - @override - GHeroSkipFragmentVarsBuilder toBuilder() => - new GHeroSkipFragmentVarsBuilder()..replace(this); - - @override - bool operator ==(Object other) { - if (identical(other, this)) return true; - return other is GHeroSkipFragmentVars && skipDetails == other.skipDetails; - } - - @override - int get hashCode { - var _$hash = 0; - _$hash = $jc(_$hash, skipDetails.hashCode); - _$hash = $jf(_$hash); - return _$hash; - } - - @override - String toString() { - return (newBuiltValueToStringHelper(r'GHeroSkipFragmentVars') - ..add('skipDetails', skipDetails)) - .toString(); - } -} - -class GHeroSkipFragmentVarsBuilder - implements Builder { - _$GHeroSkipFragmentVars? _$v; - - bool? _skipDetails; - bool? get skipDetails => _$this._skipDetails; - set skipDetails(bool? skipDetails) => _$this._skipDetails = skipDetails; - - GHeroSkipFragmentVarsBuilder(); - - GHeroSkipFragmentVarsBuilder get _$this { - final $v = _$v; - if ($v != null) { - _skipDetails = $v.skipDetails; - _$v = null; - } - return this; - } - - @override - void replace(GHeroSkipFragmentVars other) { - ArgumentError.checkNotNull(other, 'other'); - _$v = other as _$GHeroSkipFragmentVars; - } - - @override - void update(void Function(GHeroSkipFragmentVarsBuilder)? updates) { - if (updates != null) updates(this); - } - - @override - GHeroSkipFragmentVars build() => _build(); - - _$GHeroSkipFragmentVars _build() { - final _$result = _$v ?? - new _$GHeroSkipFragmentVars._( - skipDetails: BuiltValueNullFieldError.checkNotNull( - skipDetails, r'GHeroSkipFragmentVars', 'skipDetails')); - replace(_$result); - return _$result; - } -} - -class _$GHeroDetailVars extends GHeroDetailVars { - factory _$GHeroDetailVars([void Function(GHeroDetailVarsBuilder)? updates]) => - (new GHeroDetailVarsBuilder()..update(updates))._build(); - - _$GHeroDetailVars._() : super._(); - - @override - GHeroDetailVars rebuild(void Function(GHeroDetailVarsBuilder) updates) => - (toBuilder()..update(updates)).build(); - - @override - GHeroDetailVarsBuilder toBuilder() => - new GHeroDetailVarsBuilder()..replace(this); - - @override - bool operator ==(Object other) { - if (identical(other, this)) return true; - return other is GHeroDetailVars; - } - - @override - int get hashCode { - return 140740630; - } - - @override - String toString() { - return newBuiltValueToStringHelper(r'GHeroDetailVars').toString(); - } -} - -class GHeroDetailVarsBuilder - implements Builder { - _$GHeroDetailVars? _$v; - - GHeroDetailVarsBuilder(); - - @override - void replace(GHeroDetailVars other) { - ArgumentError.checkNotNull(other, 'other'); - _$v = other as _$GHeroDetailVars; - } - - @override - void update(void Function(GHeroDetailVarsBuilder)? updates) { - if (updates != null) updates(this); - } - - @override - GHeroDetailVars build() => _build(); - - _$GHeroDetailVars _build() { - final _$result = _$v ?? new _$GHeroDetailVars._(); - replace(_$result); - return _$result; - } -} - -// ignore_for_file: deprecated_member_use_from_same_package,type=lint diff --git a/codegen/end_to_end_test_tristate/lib/directives/hero_skip_fragment_and_field.graphql b/codegen/end_to_end_test_tristate/lib/directives/hero_skip_fragment_and_field.graphql deleted file mode 100644 index 428afc90..00000000 --- a/codegen/end_to_end_test_tristate/lib/directives/hero_skip_fragment_and_field.graphql +++ /dev/null @@ -1,11 +0,0 @@ -query HeroSkipFragment($skipDetails: Boolean!) { - hero { - id - ...HeroDetail @skip(if: $skipDetails) - } -} - -fragment HeroDetail on Character { - id - name -} From c3d81d354b259952325e4c77014d72e19ef5657e Mon Sep 17 00:00:00 2001 From: Martin Kamleithner Date: Sun, 17 Dec 2023 20:01:02 +0100 Subject: [PATCH 18/20] rename fragment --- .../hero_with_duplicated_fields_due_to_fragments.graphql | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/codegen/end_to_end_test/lib/fragments/hero_with_duplicated_fields_due_to_fragments.graphql b/codegen/end_to_end_test/lib/fragments/hero_with_duplicated_fields_due_to_fragments.graphql index 016a1b6d..df8a9a76 100644 --- a/codegen/end_to_end_test/lib/fragments/hero_with_duplicated_fields_due_to_fragments.graphql +++ b/codegen/end_to_end_test/lib/fragments/hero_with_duplicated_fields_due_to_fragments.graphql @@ -1,11 +1,11 @@ query HeroWithFragmentsDuplication { hero(episode: JEDI) { id - ...heroData + ...HeroWithFragmentsDuplicationFragment } } -fragment heroData on Character { +fragment HeroWithFragmentsDuplicationFragment on Character { id name } From 90044e60dde1befd922234665aae1d929726bcd9 Mon Sep 17 00:00:00 2001 From: Martin Kamleithner Date: Sun, 17 Dec 2023 20:27:27 +0100 Subject: [PATCH 19/20] rename fragment --- ...cated_fields_due_to_fragments.ast.gql.dart | 8 +- ...ated_fields_due_to_fragments.data.gql.dart | 31 ++++--- ...ed_fields_due_to_fragments.data.gql.g.dart | 90 +++++++++++-------- ...cated_fields_due_to_fragments.var.gql.dart | 23 +++-- ...ted_fields_due_to_fragments.var.gql.g.dart | 73 +++++++++------ .../__generated__/serializers.gql.dart | 9 +- .../__generated__/serializers.gql.g.dart | 2 + 7 files changed, 147 insertions(+), 89 deletions(-) diff --git a/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.ast.gql.dart b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.ast.gql.dart index 36dd560e..2be0f527 100644 --- a/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.ast.gql.dart +++ b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.ast.gql.dart @@ -29,15 +29,15 @@ const HeroWithFragmentsDuplication = _i1.OperationDefinitionNode( selectionSet: null, ), _i1.FragmentSpreadNode( - name: _i1.NameNode(value: 'heroData'), + name: _i1.NameNode(value: 'HeroWithFragmentsDuplicationFragment'), directives: [], ), ]), ) ]), ); -const heroData = _i1.FragmentDefinitionNode( - name: _i1.NameNode(value: 'heroData'), +const HeroWithFragmentsDuplicationFragment = _i1.FragmentDefinitionNode( + name: _i1.NameNode(value: 'HeroWithFragmentsDuplicationFragment'), typeCondition: _i1.TypeConditionNode( on: _i1.NamedTypeNode( name: _i1.NameNode(value: 'Character'), @@ -63,5 +63,5 @@ const heroData = _i1.FragmentDefinitionNode( ); const document = _i1.DocumentNode(definitions: [ HeroWithFragmentsDuplication, - heroData, + HeroWithFragmentsDuplicationFragment, ]); diff --git a/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.data.gql.dart b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.data.gql.dart index 8fb7f859..cf364ba4 100644 --- a/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.data.gql.dart +++ b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.data.gql.dart @@ -45,7 +45,7 @@ abstract class GHeroWithFragmentsDuplicationData_hero implements Built, - GheroData { + GHeroWithFragmentsDuplicationFragment { GHeroWithFragmentsDuplicationData_hero._(); factory GHeroWithFragmentsDuplicationData_hero( @@ -80,21 +80,26 @@ abstract class GHeroWithFragmentsDuplicationData_hero ); } -abstract class GheroData { +abstract class GHeroWithFragmentsDuplicationFragment { String get G__typename; String get id; String get name; Map toJson(); } -abstract class GheroDataData - implements Built, GheroData { - GheroDataData._(); +abstract class GHeroWithFragmentsDuplicationFragmentData + implements + Built, + GHeroWithFragmentsDuplicationFragment { + GHeroWithFragmentsDuplicationFragmentData._(); - factory GheroDataData([void Function(GheroDataDataBuilder b) updates]) = - _$GheroDataData; + factory GHeroWithFragmentsDuplicationFragmentData( + [void Function(GHeroWithFragmentsDuplicationFragmentDataBuilder b) + updates]) = _$GHeroWithFragmentsDuplicationFragmentData; - static void _initializeBuilder(GheroDataDataBuilder b) => + static void _initializeBuilder( + GHeroWithFragmentsDuplicationFragmentDataBuilder b) => b..G__typename = 'Character'; @override @@ -104,17 +109,19 @@ abstract class GheroDataData String get id; @override String get name; - static Serializer get serializer => _$gheroDataDataSerializer; + static Serializer get serializer => + _$gHeroWithFragmentsDuplicationFragmentDataSerializer; @override Map toJson() => (_i1.serializers.serializeWith( - GheroDataData.serializer, + GHeroWithFragmentsDuplicationFragmentData.serializer, this, ) as Map); - static GheroDataData? fromJson(Map json) => + static GHeroWithFragmentsDuplicationFragmentData? fromJson( + Map json) => _i1.serializers.deserializeWith( - GheroDataData.serializer, + GHeroWithFragmentsDuplicationFragmentData.serializer, json, ); } diff --git a/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.data.gql.g.dart b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.data.gql.g.dart index 35681f61..a10e95e8 100644 --- a/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.data.gql.g.dart +++ b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.data.gql.g.dart @@ -12,8 +12,9 @@ Serializer Serializer _$gHeroWithFragmentsDuplicationDataHeroSerializer = new _$GHeroWithFragmentsDuplicationData_heroSerializer(); -Serializer _$gheroDataDataSerializer = - new _$GheroDataDataSerializer(); +Serializer + _$gHeroWithFragmentsDuplicationFragmentDataSerializer = + new _$GHeroWithFragmentsDuplicationFragmentDataSerializer(); class _$GHeroWithFragmentsDuplicationDataSerializer implements StructuredSerializer { @@ -133,14 +134,19 @@ class _$GHeroWithFragmentsDuplicationData_heroSerializer } } -class _$GheroDataDataSerializer implements StructuredSerializer { +class _$GHeroWithFragmentsDuplicationFragmentDataSerializer + implements StructuredSerializer { @override - final Iterable types = const [GheroDataData, _$GheroDataData]; + final Iterable types = const [ + GHeroWithFragmentsDuplicationFragmentData, + _$GHeroWithFragmentsDuplicationFragmentData + ]; @override - final String wireName = 'GheroDataData'; + final String wireName = 'GHeroWithFragmentsDuplicationFragmentData'; @override - Iterable serialize(Serializers serializers, GheroDataData object, + Iterable serialize( + Serializers serializers, GHeroWithFragmentsDuplicationFragmentData object, {FullType specifiedType = FullType.unspecified}) { final result = [ '__typename', @@ -156,10 +162,10 @@ class _$GheroDataDataSerializer implements StructuredSerializer { } @override - GheroDataData deserialize( + GHeroWithFragmentsDuplicationFragmentData deserialize( Serializers serializers, Iterable serialized, {FullType specifiedType = FullType.unspecified}) { - final result = new GheroDataDataBuilder(); + final result = new GHeroWithFragmentsDuplicationFragmentDataBuilder(); final iterator = serialized.iterator; while (iterator.moveNext()) { @@ -436,7 +442,8 @@ class GHeroWithFragmentsDuplicationData_heroBuilder } } -class _$GheroDataData extends GheroDataData { +class _$GHeroWithFragmentsDuplicationFragmentData + extends GHeroWithFragmentsDuplicationFragmentData { @override final String G__typename; @override @@ -444,29 +451,37 @@ class _$GheroDataData extends GheroDataData { @override final String name; - factory _$GheroDataData([void Function(GheroDataDataBuilder)? updates]) => - (new GheroDataDataBuilder()..update(updates))._build(); + factory _$GHeroWithFragmentsDuplicationFragmentData( + [void Function(GHeroWithFragmentsDuplicationFragmentDataBuilder)? + updates]) => + (new GHeroWithFragmentsDuplicationFragmentDataBuilder()..update(updates)) + ._build(); - _$GheroDataData._( + _$GHeroWithFragmentsDuplicationFragmentData._( {required this.G__typename, required this.id, required this.name}) : super._() { + BuiltValueNullFieldError.checkNotNull(G__typename, + r'GHeroWithFragmentsDuplicationFragmentData', 'G__typename'); + BuiltValueNullFieldError.checkNotNull( + id, r'GHeroWithFragmentsDuplicationFragmentData', 'id'); BuiltValueNullFieldError.checkNotNull( - G__typename, r'GheroDataData', 'G__typename'); - BuiltValueNullFieldError.checkNotNull(id, r'GheroDataData', 'id'); - BuiltValueNullFieldError.checkNotNull(name, r'GheroDataData', 'name'); + name, r'GHeroWithFragmentsDuplicationFragmentData', 'name'); } @override - GheroDataData rebuild(void Function(GheroDataDataBuilder) updates) => + GHeroWithFragmentsDuplicationFragmentData rebuild( + void Function(GHeroWithFragmentsDuplicationFragmentDataBuilder) + updates) => (toBuilder()..update(updates)).build(); @override - GheroDataDataBuilder toBuilder() => new GheroDataDataBuilder()..replace(this); + GHeroWithFragmentsDuplicationFragmentDataBuilder toBuilder() => + new GHeroWithFragmentsDuplicationFragmentDataBuilder()..replace(this); @override bool operator ==(Object other) { if (identical(other, this)) return true; - return other is GheroDataData && + return other is GHeroWithFragmentsDuplicationFragmentData && G__typename == other.G__typename && id == other.id && name == other.name; @@ -484,7 +499,8 @@ class _$GheroDataData extends GheroDataData { @override String toString() { - return (newBuiltValueToStringHelper(r'GheroDataData') + return (newBuiltValueToStringHelper( + r'GHeroWithFragmentsDuplicationFragmentData') ..add('G__typename', G__typename) ..add('id', id) ..add('name', name)) @@ -492,9 +508,11 @@ class _$GheroDataData extends GheroDataData { } } -class GheroDataDataBuilder - implements Builder { - _$GheroDataData? _$v; +class GHeroWithFragmentsDuplicationFragmentDataBuilder + implements + Builder { + _$GHeroWithFragmentsDuplicationFragmentData? _$v; String? _G__typename; String? get G__typename => _$this._G__typename; @@ -508,11 +526,11 @@ class GheroDataDataBuilder String? get name => _$this._name; set name(String? name) => _$this._name = name; - GheroDataDataBuilder() { - GheroDataData._initializeBuilder(this); + GHeroWithFragmentsDuplicationFragmentDataBuilder() { + GHeroWithFragmentsDuplicationFragmentData._initializeBuilder(this); } - GheroDataDataBuilder get _$this { + GHeroWithFragmentsDuplicationFragmentDataBuilder get _$this { final $v = _$v; if ($v != null) { _G__typename = $v.G__typename; @@ -524,28 +542,30 @@ class GheroDataDataBuilder } @override - void replace(GheroDataData other) { + void replace(GHeroWithFragmentsDuplicationFragmentData other) { ArgumentError.checkNotNull(other, 'other'); - _$v = other as _$GheroDataData; + _$v = other as _$GHeroWithFragmentsDuplicationFragmentData; } @override - void update(void Function(GheroDataDataBuilder)? updates) { + void update( + void Function(GHeroWithFragmentsDuplicationFragmentDataBuilder)? + updates) { if (updates != null) updates(this); } @override - GheroDataData build() => _build(); + GHeroWithFragmentsDuplicationFragmentData build() => _build(); - _$GheroDataData _build() { + _$GHeroWithFragmentsDuplicationFragmentData _build() { final _$result = _$v ?? - new _$GheroDataData._( - G__typename: BuiltValueNullFieldError.checkNotNull( - G__typename, r'GheroDataData', 'G__typename'), + new _$GHeroWithFragmentsDuplicationFragmentData._( + G__typename: BuiltValueNullFieldError.checkNotNull(G__typename, + r'GHeroWithFragmentsDuplicationFragmentData', 'G__typename'), id: BuiltValueNullFieldError.checkNotNull( - id, r'GheroDataData', 'id'), + id, r'GHeroWithFragmentsDuplicationFragmentData', 'id'), name: BuiltValueNullFieldError.checkNotNull( - name, r'GheroDataData', 'name')); + name, r'GHeroWithFragmentsDuplicationFragmentData', 'name')); replace(_$result); return _$result; } diff --git a/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.var.gql.dart b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.var.gql.dart index afdcf9cf..3b1d547e 100644 --- a/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.var.gql.dart +++ b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.var.gql.dart @@ -35,23 +35,28 @@ abstract class GHeroWithFragmentsDuplicationVars ); } -abstract class GheroDataVars - implements Built { - GheroDataVars._(); +abstract class GHeroWithFragmentsDuplicationFragmentVars + implements + Built { + GHeroWithFragmentsDuplicationFragmentVars._(); - factory GheroDataVars([void Function(GheroDataVarsBuilder b) updates]) = - _$GheroDataVars; + factory GHeroWithFragmentsDuplicationFragmentVars( + [void Function(GHeroWithFragmentsDuplicationFragmentVarsBuilder b) + updates]) = _$GHeroWithFragmentsDuplicationFragmentVars; - static Serializer get serializer => _$gheroDataVarsSerializer; + static Serializer get serializer => + _$gHeroWithFragmentsDuplicationFragmentVarsSerializer; Map toJson() => (_i1.serializers.serializeWith( - GheroDataVars.serializer, + GHeroWithFragmentsDuplicationFragmentVars.serializer, this, ) as Map); - static GheroDataVars? fromJson(Map json) => + static GHeroWithFragmentsDuplicationFragmentVars? fromJson( + Map json) => _i1.serializers.deserializeWith( - GheroDataVars.serializer, + GHeroWithFragmentsDuplicationFragmentVars.serializer, json, ); } diff --git a/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.var.gql.g.dart b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.var.gql.g.dart index d4eeae00..42f12c75 100644 --- a/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.var.gql.g.dart +++ b/codegen/end_to_end_test/lib/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.var.gql.g.dart @@ -9,8 +9,9 @@ part of 'hero_with_duplicated_fields_due_to_fragments.var.gql.dart'; Serializer _$gHeroWithFragmentsDuplicationVarsSerializer = new _$GHeroWithFragmentsDuplicationVarsSerializer(); -Serializer _$gheroDataVarsSerializer = - new _$GheroDataVarsSerializer(); +Serializer + _$gHeroWithFragmentsDuplicationFragmentVarsSerializer = + new _$GHeroWithFragmentsDuplicationFragmentVarsSerializer(); class _$GHeroWithFragmentsDuplicationVarsSerializer implements StructuredSerializer { @@ -37,23 +38,28 @@ class _$GHeroWithFragmentsDuplicationVarsSerializer } } -class _$GheroDataVarsSerializer implements StructuredSerializer { +class _$GHeroWithFragmentsDuplicationFragmentVarsSerializer + implements StructuredSerializer { @override - final Iterable types = const [GheroDataVars, _$GheroDataVars]; + final Iterable types = const [ + GHeroWithFragmentsDuplicationFragmentVars, + _$GHeroWithFragmentsDuplicationFragmentVars + ]; @override - final String wireName = 'GheroDataVars'; + final String wireName = 'GHeroWithFragmentsDuplicationFragmentVars'; @override - Iterable serialize(Serializers serializers, GheroDataVars object, + Iterable serialize( + Serializers serializers, GHeroWithFragmentsDuplicationFragmentVars object, {FullType specifiedType = FullType.unspecified}) { return []; } @override - GheroDataVars deserialize( + GHeroWithFragmentsDuplicationFragmentVars deserialize( Serializers serializers, Iterable serialized, {FullType specifiedType = FullType.unspecified}) { - return new GheroDataVarsBuilder().build(); + return new GHeroWithFragmentsDuplicationFragmentVarsBuilder().build(); } } @@ -123,58 +129,71 @@ class GHeroWithFragmentsDuplicationVarsBuilder } } -class _$GheroDataVars extends GheroDataVars { - factory _$GheroDataVars([void Function(GheroDataVarsBuilder)? updates]) => - (new GheroDataVarsBuilder()..update(updates))._build(); +class _$GHeroWithFragmentsDuplicationFragmentVars + extends GHeroWithFragmentsDuplicationFragmentVars { + factory _$GHeroWithFragmentsDuplicationFragmentVars( + [void Function(GHeroWithFragmentsDuplicationFragmentVarsBuilder)? + updates]) => + (new GHeroWithFragmentsDuplicationFragmentVarsBuilder()..update(updates)) + ._build(); - _$GheroDataVars._() : super._(); + _$GHeroWithFragmentsDuplicationFragmentVars._() : super._(); @override - GheroDataVars rebuild(void Function(GheroDataVarsBuilder) updates) => + GHeroWithFragmentsDuplicationFragmentVars rebuild( + void Function(GHeroWithFragmentsDuplicationFragmentVarsBuilder) + updates) => (toBuilder()..update(updates)).build(); @override - GheroDataVarsBuilder toBuilder() => new GheroDataVarsBuilder()..replace(this); + GHeroWithFragmentsDuplicationFragmentVarsBuilder toBuilder() => + new GHeroWithFragmentsDuplicationFragmentVarsBuilder()..replace(this); @override bool operator ==(Object other) { if (identical(other, this)) return true; - return other is GheroDataVars; + return other is GHeroWithFragmentsDuplicationFragmentVars; } @override int get hashCode { - return 172200517; + return 40544497; } @override String toString() { - return newBuiltValueToStringHelper(r'GheroDataVars').toString(); + return newBuiltValueToStringHelper( + r'GHeroWithFragmentsDuplicationFragmentVars') + .toString(); } } -class GheroDataVarsBuilder - implements Builder { - _$GheroDataVars? _$v; +class GHeroWithFragmentsDuplicationFragmentVarsBuilder + implements + Builder { + _$GHeroWithFragmentsDuplicationFragmentVars? _$v; - GheroDataVarsBuilder(); + GHeroWithFragmentsDuplicationFragmentVarsBuilder(); @override - void replace(GheroDataVars other) { + void replace(GHeroWithFragmentsDuplicationFragmentVars other) { ArgumentError.checkNotNull(other, 'other'); - _$v = other as _$GheroDataVars; + _$v = other as _$GHeroWithFragmentsDuplicationFragmentVars; } @override - void update(void Function(GheroDataVarsBuilder)? updates) { + void update( + void Function(GHeroWithFragmentsDuplicationFragmentVarsBuilder)? + updates) { if (updates != null) updates(this); } @override - GheroDataVars build() => _build(); + GHeroWithFragmentsDuplicationFragmentVars build() => _build(); - _$GheroDataVars _build() { - final _$result = _$v ?? new _$GheroDataVars._(); + _$GHeroWithFragmentsDuplicationFragmentVars _build() { + final _$result = _$v ?? new _$GHeroWithFragmentsDuplicationFragmentVars._(); replace(_$result); return _$result; } diff --git a/codegen/end_to_end_test/lib/graphql/__generated__/serializers.gql.dart b/codegen/end_to_end_test/lib/graphql/__generated__/serializers.gql.dart index d80e99a5..a591b6f6 100644 --- a/codegen/end_to_end_test/lib/graphql/__generated__/serializers.gql.dart +++ b/codegen/end_to_end_test/lib/graphql/__generated__/serializers.gql.dart @@ -73,11 +73,14 @@ import 'package:end_to_end_test/fragments/__generated__/hero_inline_fragment.var import 'package:end_to_end_test/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.data.gql.dart' show GHeroWithFragmentsDuplicationData, - GHeroWithFragmentsDuplicationData_hero; + GHeroWithFragmentsDuplicationData_hero, + GHeroWithFragmentsDuplicationFragmentData; import 'package:end_to_end_test/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.req.gql.dart' show GHeroWithFragmentsDuplication; import 'package:end_to_end_test/fragments/__generated__/hero_with_duplicated_fields_due_to_fragments.var.gql.dart' - show GHeroWithFragmentsDuplicationVars; + show + GHeroWithFragmentsDuplicationFragmentVars, + GHeroWithFragmentsDuplicationVars; import 'package:end_to_end_test/fragments/__generated__/hero_with_fragments.data.gql.dart' show GHeroWithFragmentsData, @@ -277,6 +280,8 @@ final SerializersBuilder _serializersBuilder = _$serializers.toBuilder() GHeroWithFragmentsDuplication, GHeroWithFragmentsDuplicationData, GHeroWithFragmentsDuplicationData_hero, + GHeroWithFragmentsDuplicationFragmentData, + GHeroWithFragmentsDuplicationFragmentVars, GHeroWithFragmentsDuplicationVars, GHeroWithFragmentsVars, GHeroWithInlineFragments, diff --git a/codegen/end_to_end_test/lib/graphql/__generated__/serializers.gql.g.dart b/codegen/end_to_end_test/lib/graphql/__generated__/serializers.gql.g.dart index e14dfd8f..d10eae03 100644 --- a/codegen/end_to_end_test/lib/graphql/__generated__/serializers.gql.g.dart +++ b/codegen/end_to_end_test/lib/graphql/__generated__/serializers.gql.g.dart @@ -72,6 +72,8 @@ Serializers _$serializers = (new Serializers().toBuilder() ..add(GHeroWithFragmentsDuplication.serializer) ..add(GHeroWithFragmentsDuplicationData.serializer) ..add(GHeroWithFragmentsDuplicationData_hero.serializer) + ..add(GHeroWithFragmentsDuplicationFragmentData.serializer) + ..add(GHeroWithFragmentsDuplicationFragmentVars.serializer) ..add(GHeroWithFragmentsDuplicationVars.serializer) ..add(GHeroWithFragmentsVars.serializer) ..add(GHeroWithInlineFragments.serializer) From 67f85435326c58a457ed1655ab4dbbf5edfcbee5 Mon Sep 17 00:00:00 2001 From: Martin Kamleithner Date: Sun, 31 Dec 2023 21:08:13 +0000 Subject: [PATCH 20/20] wip: @skip/@include support --- .../lib/src/operation/data.dart | 107 +++++++++++++----- 1 file changed, 80 insertions(+), 27 deletions(-) diff --git a/codegen/gql_code_builder/lib/src/operation/data.dart b/codegen/gql_code_builder/lib/src/operation/data.dart index 28c0313b..7144695f 100644 --- a/codegen/gql_code_builder/lib/src/operation/data.dart +++ b/codegen/gql_code_builder/lib/src/operation/data.dart @@ -25,6 +25,22 @@ List buildOperationDataClasses( final fragmentMap = _fragmentMap(docSource); + final collectedFields = collectFields( + docSource, + schemaSource, + getTypeDefinitionNode( + schemaSource.flatDocument, + _operationType( + schemaSource.document, + op, + ), + )!, + op.selectionSet.selections, + {}, + ); + + final mergedFields = mergeWithSkipsOrIncludes(collectedFields); + return buildSelectionSetDataClasses( name: "${op.name!.value}Data", selections: mergeSelections( @@ -143,6 +159,7 @@ List buildSelectionSetDataClasses({ bool built = true, required InlineFragmentSpreadWhenExtensionConfig whenExtensionConfig, }) { + for (final selection in selections.whereType()) { if (!fragmentMap.containsKey(selection.name.value)) { throw Exception( @@ -157,6 +174,19 @@ List buildSelectionSetDataClasses({ ); } + final fields = collectFields(docSource, schemaSource, + getTypeDefinitionNode(schemaSource.flatDocument, type)!, selections, {}); + + final mergedFields = mergeWithSkipsOrIncludes(fields); + + + if(fields.values.any((element) => element.any((element) => element.hasSkipOrInlcude))) { + print("has skip or include"); + print("$name \n $fields \n\n $mergedFields"); + } + + + final superclassSelectionNodes = superclassSelections.values .expand((selections) => selections.selections) .toSet(); @@ -485,34 +515,38 @@ TypeNode _getFieldTypeNode( .type; } -typedef FieldNodeWithNullability = ({FieldNode fieldNode, bool isMaybeSkipped}); +typedef FieldNodeWithSkipOrInclude = ({FieldNode fieldNode, bool hasSkipOrInlcude}); //https://spec.graphql.org/draft/#CollectFields() -Map> collectFields( +Map> collectFields( SourceNode document, SourceNode schema, TypeDefinitionNode objectType, List selectionSet, Set visitedFragments, ) { + + if(visitedFragments.isEmpty || true) { + print("collectFields: ${document.url} ${selectionSet}"); + } + //Initialize groupedFields to an empty ordered map of lists. - final groupedFields = >{}; + final groupedFields = >{}; //For each selection in selectionSet: for (final selection in selectionSet) { - final isMaybeSkipped = selection.directives.any( + final isSelectionSkipped = selection.directives.any( (directive) => const {"skip", "include"}.contains(directive.name.value), ); //If the selection is a field: if (selection is FieldNode) { - //If the selection is not skipped or already present in groupedFields: - if (!groupedFields.containsKey(selection.name.value)) { + //Append the field to groupedFields under the response name of the aliased field or the field name. groupedFields .putIfAbsent( selection.alias?.value ?? selection.name.value, () => []) - .add((fieldNode: selection, isMaybeSkipped: isMaybeSkipped)); - } + .add((fieldNode: selection, hasSkipOrInlcude: isSelectionSkipped)); + } //If the selection is an inline fragment: else if (selection is InlineFragmentNode) { @@ -522,6 +556,7 @@ Map> collectFields( if (fragmentType != null && !doesFragmentTypeApply( objectType, fragmentType, schema.flatDocument)) { + print("fragmentType is not null and DoesFragmentTypeApply(objectType, fragmentType) is false, continue with the next selection in selectionSet."); continue; } //Let fragmentSelectionSet be the top-level selection set of selection. @@ -531,23 +566,15 @@ Map> collectFields( objectType, fragmentSelectionSet.selections, visitedFragments); //For each fragmentGroup in fragmentGroupedFieldSet: for (final fragmentGroup in fragmentGroupedFieldSet.entries) { - //If fragmentGroup is not already present in groupedFields: - if (!groupedFields.containsKey(fragmentGroup.key)) { //Let responseKey be the response key shared by all fields in fragmentGroup. final responseKey = fragmentGroup.key; //Let groupForResponseKey be the list in groupedFields for responseKey; if no such list exists, create it as an empty list. final groupForResponseKey = groupedFields.putIfAbsent(responseKey, () => []); - final values = fragmentGroup.value - .map((e) => ( - fieldNode: e.fieldNode, - isMaybeSkipped: isMaybeSkipped || e.isMaybeSkipped - )) - .toList(); //Append all items in fragmentGroup to groupForResponseKey. - groupForResponseKey.addAll(values); + groupForResponseKey.addAll(fragmentGroup.value.map((e) => (fieldNode: e.fieldNode, hasSkipOrInlcude: isSelectionSkipped || e.hasSkipOrInlcude))); } - } + } //If the selection is a fragment spread: @@ -575,6 +602,7 @@ Map> collectFields( //If DoesFragmentTypeApply(objectType, fragmentType) is false, continue with the next selection in selectionSet. if (!doesFragmentTypeApply( objectType, fragmentType, schema.flatDocument)) { + print("DoesFragmentTypeApply(objectType, fragmentType) is false, continue with the next selection in selectionSet."); continue; } //Let fragmentSelectionSet be the top-level selection set of fragment. @@ -590,15 +618,7 @@ Map> collectFields( final groupForResponseKey = groupedFields.putIfAbsent(responseKey, () => []); //Append all items in fragmentGroup to groupForResponseKey. - - final values = fragmentGroup.value - .map((e) => ( - fieldNode: e.fieldNode, - isMaybeSkipped: isMaybeSkipped || e.isMaybeSkipped - )) - .toList(); - - groupForResponseKey.addAll(values); + groupForResponseKey.addAll(fragmentGroup.value.map((e) => (fieldNode: e.fieldNode, hasSkipOrInlcude: isSelectionSkipped || e.hasSkipOrInlcude))); } } } @@ -606,6 +626,39 @@ Map> collectFields( return groupedFields; } +/// detects field nodes with the same response key, and merges them into one +/// considering skip and include directives; +/// if a field node has skip or include directive on all of its selections, +/// it is potentially skipped and must be made nullable +Map> mergeWithSkipsOrIncludes( + Map> groupedFields, +) { + +final result = >{}; + + for (final group in groupedFields.entries) { + final responseKey = group.key; + final fields = group.value; + + //group fields by alias or name and merge them + final merged = + fields.groupFoldBy((element) => element.fieldNode.alias?.value ?? element.fieldNode.name.value, (previous, element) { + if(previous == null) { + return element; + } + if(element.hasSkipOrInlcude) { + print("gggggg \n previous: $previous, element: $element merge!"); + } + return (fieldNode: element.fieldNode, hasSkipOrInlcude: previous.hasSkipOrInlcude && element.hasSkipOrInlcude); + }); + + result[responseKey] = merged.values.toList(); + +} + + return result; + } + //https://spec.graphql.org/draft/#DoesFragmentTypeApply() bool doesFragmentTypeApply(TypeDefinitionNode objectType, TypeConditionNode fragmentConditionType, DocumentNode schema) {