12 changed files with 765 additions and 3 deletions
			
			
		@ -0,0 +1,170 @@
					 | 
				
			||||
// ignore_for_file: camel_case_types | 
				
			||||
// ignore_for_file: discarded_futures | 
				
			||||
// ignore_for_file: public_member_api_docs | 
				
			||||
// ignore_for_file: unreachable_switch_case | 
				
			||||
 | 
				
			||||
import 'package:built_value/built_value.dart'; | 
				
			||||
import 'package:built_value/json_object.dart'; | 
				
			||||
import 'package:built_value/serializer.dart'; | 
				
			||||
import 'package:built_value/standard_json_plugin.dart'; | 
				
			||||
import 'package:collection/collection.dart'; | 
				
			||||
import 'package:dynamite_runtime/built_value.dart'; | 
				
			||||
import 'package:dynamite_runtime/http_client.dart'; | 
				
			||||
 | 
				
			||||
part 'type_defs.openapi.g.dart'; | 
				
			||||
 | 
				
			||||
class Client extends DynamiteClient { | 
				
			||||
  Client( | 
				
			||||
    super.baseURL, { | 
				
			||||
    super.baseHeaders, | 
				
			||||
    super.userAgent, | 
				
			||||
    super.httpClient, | 
				
			||||
    super.cookieJar, | 
				
			||||
  }); | 
				
			||||
 | 
				
			||||
  Client.fromClient(final DynamiteClient client) | 
				
			||||
      : super( | 
				
			||||
          client.baseURL, | 
				
			||||
          baseHeaders: client.baseHeaders, | 
				
			||||
          httpClient: client.httpClient, | 
				
			||||
          cookieJar: client.cookieJar, | 
				
			||||
          authentications: client.authentications, | 
				
			||||
        ); | 
				
			||||
} | 
				
			||||
 | 
				
			||||
typedef TypeResultBase = int; | 
				
			||||
 | 
				
			||||
typedef EmptySchema = JsonObject; | 
				
			||||
 | 
				
			||||
typedef Redirect = Base; | 
				
			||||
 | 
				
			||||
typedef RedirectBaseType = int; | 
				
			||||
 | 
				
			||||
typedef RedirectEmptyType = JsonObject; | 
				
			||||
 | 
				
			||||
@BuiltValue(instantiable: false) | 
				
			||||
abstract interface class BaseInterface { | 
				
			||||
  String? get attribute; | 
				
			||||
} | 
				
			||||
 | 
				
			||||
abstract class Base implements BaseInterface, Built<Base, BaseBuilder> { | 
				
			||||
  factory Base([final void Function(BaseBuilder)? b]) = _$Base; | 
				
			||||
 | 
				
			||||
  const Base._(); | 
				
			||||
 | 
				
			||||
  factory Base.fromJson(final Map<String, dynamic> json) => _jsonSerializers.deserializeWith(serializer, json)!; | 
				
			||||
 | 
				
			||||
  Map<String, dynamic> toJson() => _jsonSerializers.serializeWith(serializer, this)! as Map<String, dynamic>; | 
				
			||||
 | 
				
			||||
  static Serializer<Base> get serializer => _$baseSerializer; | 
				
			||||
} | 
				
			||||
 | 
				
			||||
@BuiltValue(instantiable: false) | 
				
			||||
abstract interface class NestedRedirectInterface { | 
				
			||||
  Base? get redirect; | 
				
			||||
  int? get redirectBaseType; | 
				
			||||
  JsonObject? get redirectEmptyType; | 
				
			||||
} | 
				
			||||
 | 
				
			||||
abstract class NestedRedirect implements NestedRedirectInterface, Built<NestedRedirect, NestedRedirectBuilder> { | 
				
			||||
  factory NestedRedirect([final void Function(NestedRedirectBuilder)? b]) = _$NestedRedirect; | 
				
			||||
 | 
				
			||||
  const NestedRedirect._(); | 
				
			||||
 | 
				
			||||
  factory NestedRedirect.fromJson(final Map<String, dynamic> json) => | 
				
			||||
      _jsonSerializers.deserializeWith(serializer, json)!; | 
				
			||||
 | 
				
			||||
  Map<String, dynamic> toJson() => _jsonSerializers.serializeWith(serializer, this)! as Map<String, dynamic>; | 
				
			||||
 | 
				
			||||
  static Serializer<NestedRedirect> get serializer => _$nestedRedirectSerializer; | 
				
			||||
} | 
				
			||||
 | 
				
			||||
@BuiltValue(instantiable: false) | 
				
			||||
abstract interface class SomeOfRedirectInterface { | 
				
			||||
  Base? get base; | 
				
			||||
  int? get $int; | 
				
			||||
  JsonObject? get jsonObject; | 
				
			||||
} | 
				
			||||
 | 
				
			||||
abstract class SomeOfRedirect implements SomeOfRedirectInterface, Built<SomeOfRedirect, SomeOfRedirectBuilder> { | 
				
			||||
  factory SomeOfRedirect([final void Function(SomeOfRedirectBuilder)? b]) = _$SomeOfRedirect; | 
				
			||||
 | 
				
			||||
  const SomeOfRedirect._(); | 
				
			||||
 | 
				
			||||
  factory SomeOfRedirect.fromJson(final Map<String, dynamic> json) => | 
				
			||||
      _jsonSerializers.deserializeWith(serializer, json)!; | 
				
			||||
 | 
				
			||||
  Map<String, dynamic> toJson() => _jsonSerializers.serializeWith(serializer, this)! as Map<String, dynamic>; | 
				
			||||
 | 
				
			||||
  @BuiltValueSerializer(custom: true) | 
				
			||||
  static Serializer<SomeOfRedirect> get serializer => _$SomeOfRedirectSerializer(); | 
				
			||||
 | 
				
			||||
  JsonObject get data; | 
				
			||||
  @BuiltValueHook(finalizeBuilder: true) | 
				
			||||
  static void _validate(final SomeOfRedirectBuilder b) { | 
				
			||||
    // When this is rebuild from another builder | 
				
			||||
    if (b._data == null) { | 
				
			||||
      return; | 
				
			||||
    } | 
				
			||||
 | 
				
			||||
    final match = [b._base, b._$int, b._jsonObject].singleWhereOrNull((final x) => x != null); | 
				
			||||
    if (match == null) { | 
				
			||||
      throw StateError("Need exactly one of 'base', '$int', 'jsonObject' for ${b._data}"); | 
				
			||||
    } | 
				
			||||
  } | 
				
			||||
} | 
				
			||||
 | 
				
			||||
class _$SomeOfRedirectSerializer implements PrimitiveSerializer<SomeOfRedirect> { | 
				
			||||
  @override | 
				
			||||
  final Iterable<Type> types = const [SomeOfRedirect, _$SomeOfRedirect]; | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  final String wireName = 'SomeOfRedirect'; | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  Object serialize( | 
				
			||||
    final Serializers serializers, | 
				
			||||
    final SomeOfRedirect object, { | 
				
			||||
    final FullType specifiedType = FullType.unspecified, | 
				
			||||
  }) => | 
				
			||||
      object.data.value; | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  SomeOfRedirect deserialize( | 
				
			||||
    final Serializers serializers, | 
				
			||||
    final Object data, { | 
				
			||||
    final FullType specifiedType = FullType.unspecified, | 
				
			||||
  }) { | 
				
			||||
    final result = SomeOfRedirectBuilder()..data = JsonObject(data); | 
				
			||||
    try { | 
				
			||||
      final value = _jsonSerializers.deserialize(data, specifiedType: const FullType(Base))! as Base; | 
				
			||||
      result.base.replace(value); | 
				
			||||
    } catch (_) {} | 
				
			||||
    try { | 
				
			||||
      final value = _jsonSerializers.deserialize(data, specifiedType: const FullType(int))! as int; | 
				
			||||
      result.$int = value; | 
				
			||||
    } catch (_) {} | 
				
			||||
    try { | 
				
			||||
      final value = _jsonSerializers.deserialize(data, specifiedType: const FullType(JsonObject))! as JsonObject; | 
				
			||||
      result.jsonObject = value; | 
				
			||||
    } catch (_) {} | 
				
			||||
    return result.build(); | 
				
			||||
  } | 
				
			||||
} | 
				
			||||
 | 
				
			||||
// coverage:ignore-start | 
				
			||||
final Serializers _serializers = (Serializers().toBuilder() | 
				
			||||
      ..addBuilderFactory(const FullType(Base), Base.new) | 
				
			||||
      ..add(Base.serializer) | 
				
			||||
      ..addBuilderFactory(const FullType(NestedRedirect), NestedRedirect.new) | 
				
			||||
      ..add(NestedRedirect.serializer) | 
				
			||||
      ..addBuilderFactory(const FullType(SomeOfRedirect), SomeOfRedirect.new) | 
				
			||||
      ..add(SomeOfRedirect.serializer)) | 
				
			||||
    .build(); | 
				
			||||
 | 
				
			||||
final Serializers _jsonSerializers = (_serializers.toBuilder() | 
				
			||||
      ..add(DynamiteDoubleSerializer()) | 
				
			||||
      ..addPlugin(StandardJsonPlugin()) | 
				
			||||
      ..addPlugin(const ContentStringPlugin())) | 
				
			||||
    .build(); | 
				
			||||
// coverage:ignore-end | 
				
			||||
@ -0,0 +1,456 @@
					 | 
				
			||||
// GENERATED CODE - DO NOT MODIFY BY HAND | 
				
			||||
 | 
				
			||||
part of 'type_defs.openapi.dart'; | 
				
			||||
 | 
				
			||||
// ************************************************************************** | 
				
			||||
// BuiltValueGenerator | 
				
			||||
// ************************************************************************** | 
				
			||||
 | 
				
			||||
Serializer<Base> _$baseSerializer = _$BaseSerializer(); | 
				
			||||
Serializer<NestedRedirect> _$nestedRedirectSerializer = _$NestedRedirectSerializer(); | 
				
			||||
 | 
				
			||||
class _$BaseSerializer implements StructuredSerializer<Base> { | 
				
			||||
  @override | 
				
			||||
  final Iterable<Type> types = const [Base, _$Base]; | 
				
			||||
  @override | 
				
			||||
  final String wireName = 'Base'; | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  Iterable<Object?> serialize(Serializers serializers, Base object, {FullType specifiedType = FullType.unspecified}) { | 
				
			||||
    final result = <Object?>[]; | 
				
			||||
    Object? value; | 
				
			||||
    value = object.attribute; | 
				
			||||
    if (value != null) { | 
				
			||||
      result | 
				
			||||
        ..add('attribute') | 
				
			||||
        ..add(serializers.serialize(value, specifiedType: const FullType(String))); | 
				
			||||
    } | 
				
			||||
    return result; | 
				
			||||
  } | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  Base deserialize(Serializers serializers, Iterable<Object?> serialized, | 
				
			||||
      {FullType specifiedType = FullType.unspecified}) { | 
				
			||||
    final result = BaseBuilder(); | 
				
			||||
 | 
				
			||||
    final iterator = serialized.iterator; | 
				
			||||
    while (iterator.moveNext()) { | 
				
			||||
      final key = iterator.current! as String; | 
				
			||||
      iterator.moveNext(); | 
				
			||||
      final Object? value = iterator.current; | 
				
			||||
      switch (key) { | 
				
			||||
        case 'attribute': | 
				
			||||
          result.attribute = serializers.deserialize(value, specifiedType: const FullType(String)) as String?; | 
				
			||||
          break; | 
				
			||||
      } | 
				
			||||
    } | 
				
			||||
 | 
				
			||||
    return result.build(); | 
				
			||||
  } | 
				
			||||
} | 
				
			||||
 | 
				
			||||
class _$NestedRedirectSerializer implements StructuredSerializer<NestedRedirect> { | 
				
			||||
  @override | 
				
			||||
  final Iterable<Type> types = const [NestedRedirect, _$NestedRedirect]; | 
				
			||||
  @override | 
				
			||||
  final String wireName = 'NestedRedirect'; | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  Iterable<Object?> serialize(Serializers serializers, NestedRedirect object, | 
				
			||||
      {FullType specifiedType = FullType.unspecified}) { | 
				
			||||
    final result = <Object?>[]; | 
				
			||||
    Object? value; | 
				
			||||
    value = object.redirect; | 
				
			||||
    if (value != null) { | 
				
			||||
      result | 
				
			||||
        ..add('redirect') | 
				
			||||
        ..add(serializers.serialize(value, specifiedType: const FullType(Base))); | 
				
			||||
    } | 
				
			||||
    value = object.redirectBaseType; | 
				
			||||
    if (value != null) { | 
				
			||||
      result | 
				
			||||
        ..add('redirectBaseType') | 
				
			||||
        ..add(serializers.serialize(value, specifiedType: const FullType(int))); | 
				
			||||
    } | 
				
			||||
    value = object.redirectEmptyType; | 
				
			||||
    if (value != null) { | 
				
			||||
      result | 
				
			||||
        ..add('redirectEmptyType') | 
				
			||||
        ..add(serializers.serialize(value, specifiedType: const FullType(JsonObject))); | 
				
			||||
    } | 
				
			||||
    return result; | 
				
			||||
  } | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  NestedRedirect deserialize(Serializers serializers, Iterable<Object?> serialized, | 
				
			||||
      {FullType specifiedType = FullType.unspecified}) { | 
				
			||||
    final result = NestedRedirectBuilder(); | 
				
			||||
 | 
				
			||||
    final iterator = serialized.iterator; | 
				
			||||
    while (iterator.moveNext()) { | 
				
			||||
      final key = iterator.current! as String; | 
				
			||||
      iterator.moveNext(); | 
				
			||||
      final Object? value = iterator.current; | 
				
			||||
      switch (key) { | 
				
			||||
        case 'redirect': | 
				
			||||
          result.redirect.replace(serializers.deserialize(value, specifiedType: const FullType(Base))! as Base); | 
				
			||||
          break; | 
				
			||||
        case 'redirectBaseType': | 
				
			||||
          result.redirectBaseType = serializers.deserialize(value, specifiedType: const FullType(int)) as int?; | 
				
			||||
          break; | 
				
			||||
        case 'redirectEmptyType': | 
				
			||||
          result.redirectEmptyType = | 
				
			||||
              serializers.deserialize(value, specifiedType: const FullType(JsonObject)) as JsonObject?; | 
				
			||||
          break; | 
				
			||||
      } | 
				
			||||
    } | 
				
			||||
 | 
				
			||||
    return result.build(); | 
				
			||||
  } | 
				
			||||
} | 
				
			||||
 | 
				
			||||
abstract mixin class BaseInterfaceBuilder { | 
				
			||||
  void replace(BaseInterface other); | 
				
			||||
  void update(void Function(BaseInterfaceBuilder) updates); | 
				
			||||
  String? get attribute; | 
				
			||||
  set attribute(String? attribute); | 
				
			||||
} | 
				
			||||
 | 
				
			||||
class _$Base extends Base { | 
				
			||||
  @override | 
				
			||||
  final String? attribute; | 
				
			||||
 | 
				
			||||
  factory _$Base([void Function(BaseBuilder)? updates]) => (BaseBuilder()..update(updates))._build(); | 
				
			||||
 | 
				
			||||
  _$Base._({this.attribute}) : super._(); | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  Base rebuild(void Function(BaseBuilder) updates) => (toBuilder()..update(updates)).build(); | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  BaseBuilder toBuilder() => BaseBuilder()..replace(this); | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  bool operator ==(Object other) { | 
				
			||||
    if (identical(other, this)) return true; | 
				
			||||
    return other is Base && attribute == other.attribute; | 
				
			||||
  } | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  int get hashCode { | 
				
			||||
    var _$hash = 0; | 
				
			||||
    _$hash = $jc(_$hash, attribute.hashCode); | 
				
			||||
    _$hash = $jf(_$hash); | 
				
			||||
    return _$hash; | 
				
			||||
  } | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  String toString() { | 
				
			||||
    return (newBuiltValueToStringHelper(r'Base')..add('attribute', attribute)).toString(); | 
				
			||||
  } | 
				
			||||
} | 
				
			||||
 | 
				
			||||
class BaseBuilder implements Builder<Base, BaseBuilder>, BaseInterfaceBuilder { | 
				
			||||
  _$Base? _$v; | 
				
			||||
 | 
				
			||||
  String? _attribute; | 
				
			||||
  String? get attribute => _$this._attribute; | 
				
			||||
  set attribute(covariant String? attribute) => _$this._attribute = attribute; | 
				
			||||
 | 
				
			||||
  BaseBuilder(); | 
				
			||||
 | 
				
			||||
  BaseBuilder get _$this { | 
				
			||||
    final $v = _$v; | 
				
			||||
    if ($v != null) { | 
				
			||||
      _attribute = $v.attribute; | 
				
			||||
      _$v = null; | 
				
			||||
    } | 
				
			||||
    return this; | 
				
			||||
  } | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  void replace(covariant Base other) { | 
				
			||||
    ArgumentError.checkNotNull(other, 'other'); | 
				
			||||
    _$v = other as _$Base; | 
				
			||||
  } | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  void update(void Function(BaseBuilder)? updates) { | 
				
			||||
    if (updates != null) updates(this); | 
				
			||||
  } | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  Base build() => _build(); | 
				
			||||
 | 
				
			||||
  _$Base _build() { | 
				
			||||
    final _$result = _$v ?? _$Base._(attribute: attribute); | 
				
			||||
    replace(_$result); | 
				
			||||
    return _$result; | 
				
			||||
  } | 
				
			||||
} | 
				
			||||
 | 
				
			||||
abstract mixin class NestedRedirectInterfaceBuilder { | 
				
			||||
  void replace(NestedRedirectInterface other); | 
				
			||||
  void update(void Function(NestedRedirectInterfaceBuilder) updates); | 
				
			||||
  BaseBuilder get redirect; | 
				
			||||
  set redirect(BaseBuilder? redirect); | 
				
			||||
 | 
				
			||||
  int? get redirectBaseType; | 
				
			||||
  set redirectBaseType(int? redirectBaseType); | 
				
			||||
 | 
				
			||||
  JsonObject? get redirectEmptyType; | 
				
			||||
  set redirectEmptyType(JsonObject? redirectEmptyType); | 
				
			||||
} | 
				
			||||
 | 
				
			||||
class _$NestedRedirect extends NestedRedirect { | 
				
			||||
  @override | 
				
			||||
  final Base? redirect; | 
				
			||||
  @override | 
				
			||||
  final int? redirectBaseType; | 
				
			||||
  @override | 
				
			||||
  final JsonObject? redirectEmptyType; | 
				
			||||
 | 
				
			||||
  factory _$NestedRedirect([void Function(NestedRedirectBuilder)? updates]) => | 
				
			||||
      (NestedRedirectBuilder()..update(updates))._build(); | 
				
			||||
 | 
				
			||||
  _$NestedRedirect._({this.redirect, this.redirectBaseType, this.redirectEmptyType}) : super._(); | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  NestedRedirect rebuild(void Function(NestedRedirectBuilder) updates) => (toBuilder()..update(updates)).build(); | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  NestedRedirectBuilder toBuilder() => NestedRedirectBuilder()..replace(this); | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  bool operator ==(Object other) { | 
				
			||||
    if (identical(other, this)) return true; | 
				
			||||
    return other is NestedRedirect && | 
				
			||||
        redirect == other.redirect && | 
				
			||||
        redirectBaseType == other.redirectBaseType && | 
				
			||||
        redirectEmptyType == other.redirectEmptyType; | 
				
			||||
  } | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  int get hashCode { | 
				
			||||
    var _$hash = 0; | 
				
			||||
    _$hash = $jc(_$hash, redirect.hashCode); | 
				
			||||
    _$hash = $jc(_$hash, redirectBaseType.hashCode); | 
				
			||||
    _$hash = $jc(_$hash, redirectEmptyType.hashCode); | 
				
			||||
    _$hash = $jf(_$hash); | 
				
			||||
    return _$hash; | 
				
			||||
  } | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  String toString() { | 
				
			||||
    return (newBuiltValueToStringHelper(r'NestedRedirect') | 
				
			||||
          ..add('redirect', redirect) | 
				
			||||
          ..add('redirectBaseType', redirectBaseType) | 
				
			||||
          ..add('redirectEmptyType', redirectEmptyType)) | 
				
			||||
        .toString(); | 
				
			||||
  } | 
				
			||||
} | 
				
			||||
 | 
				
			||||
class NestedRedirectBuilder implements Builder<NestedRedirect, NestedRedirectBuilder>, NestedRedirectInterfaceBuilder { | 
				
			||||
  _$NestedRedirect? _$v; | 
				
			||||
 | 
				
			||||
  BaseBuilder? _redirect; | 
				
			||||
  BaseBuilder get redirect => _$this._redirect ??= BaseBuilder(); | 
				
			||||
  set redirect(covariant BaseBuilder? redirect) => _$this._redirect = redirect; | 
				
			||||
 | 
				
			||||
  int? _redirectBaseType; | 
				
			||||
  int? get redirectBaseType => _$this._redirectBaseType; | 
				
			||||
  set redirectBaseType(covariant int? redirectBaseType) => _$this._redirectBaseType = redirectBaseType; | 
				
			||||
 | 
				
			||||
  JsonObject? _redirectEmptyType; | 
				
			||||
  JsonObject? get redirectEmptyType => _$this._redirectEmptyType; | 
				
			||||
  set redirectEmptyType(covariant JsonObject? redirectEmptyType) => _$this._redirectEmptyType = redirectEmptyType; | 
				
			||||
 | 
				
			||||
  NestedRedirectBuilder(); | 
				
			||||
 | 
				
			||||
  NestedRedirectBuilder get _$this { | 
				
			||||
    final $v = _$v; | 
				
			||||
    if ($v != null) { | 
				
			||||
      _redirect = $v.redirect?.toBuilder(); | 
				
			||||
      _redirectBaseType = $v.redirectBaseType; | 
				
			||||
      _redirectEmptyType = $v.redirectEmptyType; | 
				
			||||
      _$v = null; | 
				
			||||
    } | 
				
			||||
    return this; | 
				
			||||
  } | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  void replace(covariant NestedRedirect other) { | 
				
			||||
    ArgumentError.checkNotNull(other, 'other'); | 
				
			||||
    _$v = other as _$NestedRedirect; | 
				
			||||
  } | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  void update(void Function(NestedRedirectBuilder)? updates) { | 
				
			||||
    if (updates != null) updates(this); | 
				
			||||
  } | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  NestedRedirect build() => _build(); | 
				
			||||
 | 
				
			||||
  _$NestedRedirect _build() { | 
				
			||||
    _$NestedRedirect _$result; | 
				
			||||
    try { | 
				
			||||
      _$result = _$v ?? | 
				
			||||
          _$NestedRedirect._( | 
				
			||||
              redirect: _redirect?.build(), redirectBaseType: redirectBaseType, redirectEmptyType: redirectEmptyType); | 
				
			||||
    } catch (_) { | 
				
			||||
      late String _$failedField; | 
				
			||||
      try { | 
				
			||||
        _$failedField = 'redirect'; | 
				
			||||
        _redirect?.build(); | 
				
			||||
      } catch (e) { | 
				
			||||
        throw BuiltValueNestedFieldError(r'NestedRedirect', _$failedField, e.toString()); | 
				
			||||
      } | 
				
			||||
      rethrow; | 
				
			||||
    } | 
				
			||||
    replace(_$result); | 
				
			||||
    return _$result; | 
				
			||||
  } | 
				
			||||
} | 
				
			||||
 | 
				
			||||
abstract mixin class SomeOfRedirectInterfaceBuilder { | 
				
			||||
  void replace(SomeOfRedirectInterface other); | 
				
			||||
  void update(void Function(SomeOfRedirectInterfaceBuilder) updates); | 
				
			||||
  BaseBuilder get base; | 
				
			||||
  set base(BaseBuilder? base); | 
				
			||||
 | 
				
			||||
  int? get $int; | 
				
			||||
  set $int(int? $int); | 
				
			||||
 | 
				
			||||
  JsonObject? get jsonObject; | 
				
			||||
  set jsonObject(JsonObject? jsonObject); | 
				
			||||
} | 
				
			||||
 | 
				
			||||
class _$SomeOfRedirect extends SomeOfRedirect { | 
				
			||||
  @override | 
				
			||||
  final JsonObject data; | 
				
			||||
  @override | 
				
			||||
  final Base? base; | 
				
			||||
  @override | 
				
			||||
  final int? $int; | 
				
			||||
  @override | 
				
			||||
  final JsonObject? jsonObject; | 
				
			||||
 | 
				
			||||
  factory _$SomeOfRedirect([void Function(SomeOfRedirectBuilder)? updates]) => | 
				
			||||
      (SomeOfRedirectBuilder()..update(updates))._build(); | 
				
			||||
 | 
				
			||||
  _$SomeOfRedirect._({required this.data, this.base, this.$int, this.jsonObject}) : super._() { | 
				
			||||
    BuiltValueNullFieldError.checkNotNull(data, r'SomeOfRedirect', 'data'); | 
				
			||||
  } | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  SomeOfRedirect rebuild(void Function(SomeOfRedirectBuilder) updates) => (toBuilder()..update(updates)).build(); | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  SomeOfRedirectBuilder toBuilder() => SomeOfRedirectBuilder()..replace(this); | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  bool operator ==(Object other) { | 
				
			||||
    if (identical(other, this)) return true; | 
				
			||||
    return other is SomeOfRedirect && | 
				
			||||
        data == other.data && | 
				
			||||
        base == other.base && | 
				
			||||
        $int == other.$int && | 
				
			||||
        jsonObject == other.jsonObject; | 
				
			||||
  } | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  int get hashCode { | 
				
			||||
    var _$hash = 0; | 
				
			||||
    _$hash = $jc(_$hash, data.hashCode); | 
				
			||||
    _$hash = $jc(_$hash, base.hashCode); | 
				
			||||
    _$hash = $jc(_$hash, $int.hashCode); | 
				
			||||
    _$hash = $jc(_$hash, jsonObject.hashCode); | 
				
			||||
    _$hash = $jf(_$hash); | 
				
			||||
    return _$hash; | 
				
			||||
  } | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  String toString() { | 
				
			||||
    return (newBuiltValueToStringHelper(r'SomeOfRedirect') | 
				
			||||
          ..add('data', data) | 
				
			||||
          ..add('base', base) | 
				
			||||
          ..add('\$int', $int) | 
				
			||||
          ..add('jsonObject', jsonObject)) | 
				
			||||
        .toString(); | 
				
			||||
  } | 
				
			||||
} | 
				
			||||
 | 
				
			||||
class SomeOfRedirectBuilder implements Builder<SomeOfRedirect, SomeOfRedirectBuilder>, SomeOfRedirectInterfaceBuilder { | 
				
			||||
  _$SomeOfRedirect? _$v; | 
				
			||||
 | 
				
			||||
  JsonObject? _data; | 
				
			||||
  JsonObject? get data => _$this._data; | 
				
			||||
  set data(covariant JsonObject? data) => _$this._data = data; | 
				
			||||
 | 
				
			||||
  BaseBuilder? _base; | 
				
			||||
  BaseBuilder get base => _$this._base ??= BaseBuilder(); | 
				
			||||
  set base(covariant BaseBuilder? base) => _$this._base = base; | 
				
			||||
 | 
				
			||||
  int? _$int; | 
				
			||||
  int? get $int => _$this._$int; | 
				
			||||
  set $int(covariant int? $int) => _$this._$int = $int; | 
				
			||||
 | 
				
			||||
  JsonObject? _jsonObject; | 
				
			||||
  JsonObject? get jsonObject => _$this._jsonObject; | 
				
			||||
  set jsonObject(covariant JsonObject? jsonObject) => _$this._jsonObject = jsonObject; | 
				
			||||
 | 
				
			||||
  SomeOfRedirectBuilder(); | 
				
			||||
 | 
				
			||||
  SomeOfRedirectBuilder get _$this { | 
				
			||||
    final $v = _$v; | 
				
			||||
    if ($v != null) { | 
				
			||||
      _data = $v.data; | 
				
			||||
      _base = $v.base?.toBuilder(); | 
				
			||||
      _$int = $v.$int; | 
				
			||||
      _jsonObject = $v.jsonObject; | 
				
			||||
      _$v = null; | 
				
			||||
    } | 
				
			||||
    return this; | 
				
			||||
  } | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  void replace(covariant SomeOfRedirect other) { | 
				
			||||
    ArgumentError.checkNotNull(other, 'other'); | 
				
			||||
    _$v = other as _$SomeOfRedirect; | 
				
			||||
  } | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  void update(void Function(SomeOfRedirectBuilder)? updates) { | 
				
			||||
    if (updates != null) updates(this); | 
				
			||||
  } | 
				
			||||
 | 
				
			||||
  @override | 
				
			||||
  SomeOfRedirect build() => _build(); | 
				
			||||
 | 
				
			||||
  _$SomeOfRedirect _build() { | 
				
			||||
    SomeOfRedirect._validate(this); | 
				
			||||
    _$SomeOfRedirect _$result; | 
				
			||||
    try { | 
				
			||||
      _$result = _$v ?? | 
				
			||||
          _$SomeOfRedirect._( | 
				
			||||
              data: BuiltValueNullFieldError.checkNotNull(data, r'SomeOfRedirect', 'data'), | 
				
			||||
              base: _base?.build(), | 
				
			||||
              $int: $int, | 
				
			||||
              jsonObject: jsonObject); | 
				
			||||
    } catch (_) { | 
				
			||||
      late String _$failedField; | 
				
			||||
      try { | 
				
			||||
        _$failedField = 'base'; | 
				
			||||
        _base?.build(); | 
				
			||||
      } catch (e) { | 
				
			||||
        throw BuiltValueNestedFieldError(r'SomeOfRedirect', _$failedField, e.toString()); | 
				
			||||
      } | 
				
			||||
      rethrow; | 
				
			||||
    } | 
				
			||||
    replace(_$result); | 
				
			||||
    return _$result; | 
				
			||||
  } | 
				
			||||
} | 
				
			||||
 | 
				
			||||
// ignore_for_file: deprecated_member_use_from_same_package,type=lint | 
				
			||||
@ -0,0 +1,61 @@
					 | 
				
			||||
{ | 
				
			||||
    "openapi": "3.1.0", | 
				
			||||
    "info": { | 
				
			||||
        "title": "some ofs test", | 
				
			||||
        "version": "0.0.1" | 
				
			||||
    }, | 
				
			||||
    "components": { | 
				
			||||
        "schemas": { | 
				
			||||
            "Base": { | 
				
			||||
                "type": "object", | 
				
			||||
                "properties": { | 
				
			||||
                    "attribute": { | 
				
			||||
                        "type": "string" | 
				
			||||
                    } | 
				
			||||
                } | 
				
			||||
            }, | 
				
			||||
            "TypeResultBase": { | 
				
			||||
                "type": "integer" | 
				
			||||
            }, | 
				
			||||
            "EmptySchema": {}, | 
				
			||||
            "Redirect": { | 
				
			||||
                "$ref": "#/components/schemas/Base" | 
				
			||||
            }, | 
				
			||||
            "RedirectBaseType": { | 
				
			||||
                "$ref": "#/components/schemas/TypeResultBase" | 
				
			||||
            }, | 
				
			||||
            "RedirectEmptyType": { | 
				
			||||
                "$ref": "#/components/schemas/EmptySchema" | 
				
			||||
            }, | 
				
			||||
            "NestedRedirect": { | 
				
			||||
                "type": "object", | 
				
			||||
                "properties": { | 
				
			||||
                    "redirect": { | 
				
			||||
                        "$ref": "#/components/schemas/Base" | 
				
			||||
                    }, | 
				
			||||
                    "redirectBaseType": { | 
				
			||||
                        "$ref": "#/components/schemas/TypeResultBase" | 
				
			||||
                    }, | 
				
			||||
                    "redirectEmptyType": { | 
				
			||||
                        "$ref": "#/components/schemas/EmptySchema" | 
				
			||||
                    } | 
				
			||||
                } | 
				
			||||
            }, | 
				
			||||
            "SomeOfRedirect": { | 
				
			||||
                "oneOf": [ | 
				
			||||
                    { | 
				
			||||
                        "$ref": "#/components/schemas/Base" | 
				
			||||
                    }, | 
				
			||||
                    { | 
				
			||||
                        "$ref": "#/components/schemas/TypeResultBase" | 
				
			||||
                    }, | 
				
			||||
                    { | 
				
			||||
                        "$ref": "#/components/schemas/EmptySchema" | 
				
			||||
                    } | 
				
			||||
                ] | 
				
			||||
            } | 
				
			||||
        } | 
				
			||||
    }, | 
				
			||||
    "paths": {}, | 
				
			||||
    "tags": [] | 
				
			||||
} | 
				
			||||
@ -0,0 +1,13 @@
					 | 
				
			||||
import 'package:built_value/json_object.dart'; | 
				
			||||
import 'package:dynamite_end_to_end_test/type_defs.openapi.dart'; | 
				
			||||
import 'package:test/test.dart'; | 
				
			||||
 | 
				
			||||
void main() { | 
				
			||||
  test('TypeDefs', () { | 
				
			||||
    expect(1, isA<TypeResultBase>()); | 
				
			||||
    expect(JsonObject('value'), isA<EmptySchema>()); | 
				
			||||
    expect(Base(), isA<Redirect>()); | 
				
			||||
    expect(1, isA<RedirectBaseType>()); | 
				
			||||
    expect(JsonObject('value'), isA<RedirectEmptyType>()); | 
				
			||||
  }); | 
				
			||||
} | 
				
			||||
					Loading…
					
					
				
		Reference in new issue