mirror of
https://github.com/git-touch/git-touch
synced 2025-03-02 18:27:52 +01:00
refactor: use freezed
This commit is contained in:
parent
0f4192f0be
commit
504ee9c863
@ -1,44 +1,22 @@
|
|||||||
import 'package:json_annotation/json_annotation.dart';
|
import 'package:freezed_annotation/freezed_annotation.dart';
|
||||||
|
|
||||||
|
part 'account.freezed.dart';
|
||||||
part 'account.g.dart';
|
part 'account.g.dart';
|
||||||
|
|
||||||
@JsonSerializable(includeIfNull: false)
|
@freezed
|
||||||
class Account {
|
class Account with _$Account {
|
||||||
// For Bitbucket
|
@JsonSerializable(includeIfNull: false)
|
||||||
|
factory Account({
|
||||||
// equals(Account a) {
|
required String platform,
|
||||||
// final uri = Uri.parse(domain);
|
required String domain,
|
||||||
// final uriA = Uri.parse(a.domain);
|
required String token,
|
||||||
|
required String login,
|
||||||
// // Treat domains as the same if they have the same hosts and ports
|
required String avatarUrl,
|
||||||
// return a.platform == platform &&
|
int? gitlabId, // For GitLab
|
||||||
// a.login == login &&
|
String? appPassword, // For Bitbucket
|
||||||
// a.gitlabId == gitlabId &&
|
String? accountId, // For Bitbucket
|
||||||
// uri.host == uriA.host &&
|
}) = _Account;
|
||||||
// uri.port == uriA.port;
|
|
||||||
// }
|
|
||||||
|
|
||||||
Account({
|
|
||||||
required this.platform,
|
|
||||||
required this.domain,
|
|
||||||
required this.token,
|
|
||||||
required this.login,
|
|
||||||
required this.avatarUrl,
|
|
||||||
this.gitlabId,
|
|
||||||
this.appPassword,
|
|
||||||
this.accountId,
|
|
||||||
});
|
|
||||||
|
|
||||||
factory Account.fromJson(Map<String, dynamic> json) =>
|
factory Account.fromJson(Map<String, dynamic> json) =>
|
||||||
_$AccountFromJson(json);
|
_$AccountFromJson(json);
|
||||||
String platform;
|
|
||||||
String domain;
|
|
||||||
String token;
|
|
||||||
String login;
|
|
||||||
String avatarUrl;
|
|
||||||
int? gitlabId; // For GitLab
|
|
||||||
String? appPassword; // For Bitbucket
|
|
||||||
String? accountId;
|
|
||||||
|
|
||||||
Map<String, dynamic> toJson() => _$AccountToJson(this);
|
|
||||||
}
|
}
|
||||||
|
300
lib/models/account.freezed.dart
Normal file
300
lib/models/account.freezed.dart
Normal file
@ -0,0 +1,300 @@
|
|||||||
|
// coverage:ignore-file
|
||||||
|
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||||
|
// ignore_for_file: type=lint
|
||||||
|
// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target
|
||||||
|
|
||||||
|
part of 'account.dart';
|
||||||
|
|
||||||
|
// **************************************************************************
|
||||||
|
// FreezedGenerator
|
||||||
|
// **************************************************************************
|
||||||
|
|
||||||
|
T _$identity<T>(T value) => value;
|
||||||
|
|
||||||
|
final _privateConstructorUsedError = UnsupportedError(
|
||||||
|
'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods');
|
||||||
|
|
||||||
|
Account _$AccountFromJson(Map<String, dynamic> json) {
|
||||||
|
return _Account.fromJson(json);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// @nodoc
|
||||||
|
mixin _$Account {
|
||||||
|
String get platform => throw _privateConstructorUsedError;
|
||||||
|
String get domain => throw _privateConstructorUsedError;
|
||||||
|
String get token => throw _privateConstructorUsedError;
|
||||||
|
String get login => throw _privateConstructorUsedError;
|
||||||
|
String get avatarUrl => throw _privateConstructorUsedError;
|
||||||
|
int? get gitlabId => throw _privateConstructorUsedError; // For GitLab
|
||||||
|
String? get appPassword =>
|
||||||
|
throw _privateConstructorUsedError; // For Bitbucket
|
||||||
|
String? get accountId => throw _privateConstructorUsedError;
|
||||||
|
|
||||||
|
Map<String, dynamic> toJson() => throw _privateConstructorUsedError;
|
||||||
|
@JsonKey(ignore: true)
|
||||||
|
$AccountCopyWith<Account> get copyWith => throw _privateConstructorUsedError;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// @nodoc
|
||||||
|
abstract class $AccountCopyWith<$Res> {
|
||||||
|
factory $AccountCopyWith(Account value, $Res Function(Account) then) =
|
||||||
|
_$AccountCopyWithImpl<$Res, Account>;
|
||||||
|
@useResult
|
||||||
|
$Res call(
|
||||||
|
{String platform,
|
||||||
|
String domain,
|
||||||
|
String token,
|
||||||
|
String login,
|
||||||
|
String avatarUrl,
|
||||||
|
int? gitlabId,
|
||||||
|
String? appPassword,
|
||||||
|
String? accountId});
|
||||||
|
}
|
||||||
|
|
||||||
|
/// @nodoc
|
||||||
|
class _$AccountCopyWithImpl<$Res, $Val extends Account>
|
||||||
|
implements $AccountCopyWith<$Res> {
|
||||||
|
_$AccountCopyWithImpl(this._value, this._then);
|
||||||
|
|
||||||
|
// ignore: unused_field
|
||||||
|
final $Val _value;
|
||||||
|
// ignore: unused_field
|
||||||
|
final $Res Function($Val) _then;
|
||||||
|
|
||||||
|
@pragma('vm:prefer-inline')
|
||||||
|
@override
|
||||||
|
$Res call({
|
||||||
|
Object? platform = null,
|
||||||
|
Object? domain = null,
|
||||||
|
Object? token = null,
|
||||||
|
Object? login = null,
|
||||||
|
Object? avatarUrl = null,
|
||||||
|
Object? gitlabId = freezed,
|
||||||
|
Object? appPassword = freezed,
|
||||||
|
Object? accountId = freezed,
|
||||||
|
}) {
|
||||||
|
return _then(_value.copyWith(
|
||||||
|
platform: null == platform
|
||||||
|
? _value.platform
|
||||||
|
: platform // ignore: cast_nullable_to_non_nullable
|
||||||
|
as String,
|
||||||
|
domain: null == domain
|
||||||
|
? _value.domain
|
||||||
|
: domain // ignore: cast_nullable_to_non_nullable
|
||||||
|
as String,
|
||||||
|
token: null == token
|
||||||
|
? _value.token
|
||||||
|
: token // ignore: cast_nullable_to_non_nullable
|
||||||
|
as String,
|
||||||
|
login: null == login
|
||||||
|
? _value.login
|
||||||
|
: login // ignore: cast_nullable_to_non_nullable
|
||||||
|
as String,
|
||||||
|
avatarUrl: null == avatarUrl
|
||||||
|
? _value.avatarUrl
|
||||||
|
: avatarUrl // ignore: cast_nullable_to_non_nullable
|
||||||
|
as String,
|
||||||
|
gitlabId: freezed == gitlabId
|
||||||
|
? _value.gitlabId
|
||||||
|
: gitlabId // ignore: cast_nullable_to_non_nullable
|
||||||
|
as int?,
|
||||||
|
appPassword: freezed == appPassword
|
||||||
|
? _value.appPassword
|
||||||
|
: appPassword // ignore: cast_nullable_to_non_nullable
|
||||||
|
as String?,
|
||||||
|
accountId: freezed == accountId
|
||||||
|
? _value.accountId
|
||||||
|
: accountId // ignore: cast_nullable_to_non_nullable
|
||||||
|
as String?,
|
||||||
|
) as $Val);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// @nodoc
|
||||||
|
abstract class _$$_AccountCopyWith<$Res> implements $AccountCopyWith<$Res> {
|
||||||
|
factory _$$_AccountCopyWith(
|
||||||
|
_$_Account value, $Res Function(_$_Account) then) =
|
||||||
|
__$$_AccountCopyWithImpl<$Res>;
|
||||||
|
@override
|
||||||
|
@useResult
|
||||||
|
$Res call(
|
||||||
|
{String platform,
|
||||||
|
String domain,
|
||||||
|
String token,
|
||||||
|
String login,
|
||||||
|
String avatarUrl,
|
||||||
|
int? gitlabId,
|
||||||
|
String? appPassword,
|
||||||
|
String? accountId});
|
||||||
|
}
|
||||||
|
|
||||||
|
/// @nodoc
|
||||||
|
class __$$_AccountCopyWithImpl<$Res>
|
||||||
|
extends _$AccountCopyWithImpl<$Res, _$_Account>
|
||||||
|
implements _$$_AccountCopyWith<$Res> {
|
||||||
|
__$$_AccountCopyWithImpl(_$_Account _value, $Res Function(_$_Account) _then)
|
||||||
|
: super(_value, _then);
|
||||||
|
|
||||||
|
@pragma('vm:prefer-inline')
|
||||||
|
@override
|
||||||
|
$Res call({
|
||||||
|
Object? platform = null,
|
||||||
|
Object? domain = null,
|
||||||
|
Object? token = null,
|
||||||
|
Object? login = null,
|
||||||
|
Object? avatarUrl = null,
|
||||||
|
Object? gitlabId = freezed,
|
||||||
|
Object? appPassword = freezed,
|
||||||
|
Object? accountId = freezed,
|
||||||
|
}) {
|
||||||
|
return _then(_$_Account(
|
||||||
|
platform: null == platform
|
||||||
|
? _value.platform
|
||||||
|
: platform // ignore: cast_nullable_to_non_nullable
|
||||||
|
as String,
|
||||||
|
domain: null == domain
|
||||||
|
? _value.domain
|
||||||
|
: domain // ignore: cast_nullable_to_non_nullable
|
||||||
|
as String,
|
||||||
|
token: null == token
|
||||||
|
? _value.token
|
||||||
|
: token // ignore: cast_nullable_to_non_nullable
|
||||||
|
as String,
|
||||||
|
login: null == login
|
||||||
|
? _value.login
|
||||||
|
: login // ignore: cast_nullable_to_non_nullable
|
||||||
|
as String,
|
||||||
|
avatarUrl: null == avatarUrl
|
||||||
|
? _value.avatarUrl
|
||||||
|
: avatarUrl // ignore: cast_nullable_to_non_nullable
|
||||||
|
as String,
|
||||||
|
gitlabId: freezed == gitlabId
|
||||||
|
? _value.gitlabId
|
||||||
|
: gitlabId // ignore: cast_nullable_to_non_nullable
|
||||||
|
as int?,
|
||||||
|
appPassword: freezed == appPassword
|
||||||
|
? _value.appPassword
|
||||||
|
: appPassword // ignore: cast_nullable_to_non_nullable
|
||||||
|
as String?,
|
||||||
|
accountId: freezed == accountId
|
||||||
|
? _value.accountId
|
||||||
|
: accountId // ignore: cast_nullable_to_non_nullable
|
||||||
|
as String?,
|
||||||
|
));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// @nodoc
|
||||||
|
|
||||||
|
@JsonSerializable(includeIfNull: false)
|
||||||
|
class _$_Account implements _Account {
|
||||||
|
_$_Account(
|
||||||
|
{required this.platform,
|
||||||
|
required this.domain,
|
||||||
|
required this.token,
|
||||||
|
required this.login,
|
||||||
|
required this.avatarUrl,
|
||||||
|
this.gitlabId,
|
||||||
|
this.appPassword,
|
||||||
|
this.accountId});
|
||||||
|
|
||||||
|
factory _$_Account.fromJson(Map<String, dynamic> json) =>
|
||||||
|
_$$_AccountFromJson(json);
|
||||||
|
|
||||||
|
@override
|
||||||
|
final String platform;
|
||||||
|
@override
|
||||||
|
final String domain;
|
||||||
|
@override
|
||||||
|
final String token;
|
||||||
|
@override
|
||||||
|
final String login;
|
||||||
|
@override
|
||||||
|
final String avatarUrl;
|
||||||
|
@override
|
||||||
|
final int? gitlabId;
|
||||||
|
// For GitLab
|
||||||
|
@override
|
||||||
|
final String? appPassword;
|
||||||
|
// For Bitbucket
|
||||||
|
@override
|
||||||
|
final String? accountId;
|
||||||
|
|
||||||
|
@override
|
||||||
|
String toString() {
|
||||||
|
return 'Account(platform: $platform, domain: $domain, token: $token, login: $login, avatarUrl: $avatarUrl, gitlabId: $gitlabId, appPassword: $appPassword, accountId: $accountId)';
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
bool operator ==(dynamic other) {
|
||||||
|
return identical(this, other) ||
|
||||||
|
(other.runtimeType == runtimeType &&
|
||||||
|
other is _$_Account &&
|
||||||
|
(identical(other.platform, platform) ||
|
||||||
|
other.platform == platform) &&
|
||||||
|
(identical(other.domain, domain) || other.domain == domain) &&
|
||||||
|
(identical(other.token, token) || other.token == token) &&
|
||||||
|
(identical(other.login, login) || other.login == login) &&
|
||||||
|
(identical(other.avatarUrl, avatarUrl) ||
|
||||||
|
other.avatarUrl == avatarUrl) &&
|
||||||
|
(identical(other.gitlabId, gitlabId) ||
|
||||||
|
other.gitlabId == gitlabId) &&
|
||||||
|
(identical(other.appPassword, appPassword) ||
|
||||||
|
other.appPassword == appPassword) &&
|
||||||
|
(identical(other.accountId, accountId) ||
|
||||||
|
other.accountId == accountId));
|
||||||
|
}
|
||||||
|
|
||||||
|
@JsonKey(ignore: true)
|
||||||
|
@override
|
||||||
|
int get hashCode => Object.hash(runtimeType, platform, domain, token, login,
|
||||||
|
avatarUrl, gitlabId, appPassword, accountId);
|
||||||
|
|
||||||
|
@JsonKey(ignore: true)
|
||||||
|
@override
|
||||||
|
@pragma('vm:prefer-inline')
|
||||||
|
_$$_AccountCopyWith<_$_Account> get copyWith =>
|
||||||
|
__$$_AccountCopyWithImpl<_$_Account>(this, _$identity);
|
||||||
|
|
||||||
|
@override
|
||||||
|
Map<String, dynamic> toJson() {
|
||||||
|
return _$$_AccountToJson(
|
||||||
|
this,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
abstract class _Account implements Account {
|
||||||
|
factory _Account(
|
||||||
|
{required final String platform,
|
||||||
|
required final String domain,
|
||||||
|
required final String token,
|
||||||
|
required final String login,
|
||||||
|
required final String avatarUrl,
|
||||||
|
final int? gitlabId,
|
||||||
|
final String? appPassword,
|
||||||
|
final String? accountId}) = _$_Account;
|
||||||
|
|
||||||
|
factory _Account.fromJson(Map<String, dynamic> json) = _$_Account.fromJson;
|
||||||
|
|
||||||
|
@override
|
||||||
|
String get platform;
|
||||||
|
@override
|
||||||
|
String get domain;
|
||||||
|
@override
|
||||||
|
String get token;
|
||||||
|
@override
|
||||||
|
String get login;
|
||||||
|
@override
|
||||||
|
String get avatarUrl;
|
||||||
|
@override
|
||||||
|
int? get gitlabId;
|
||||||
|
@override // For GitLab
|
||||||
|
String? get appPassword;
|
||||||
|
@override // For Bitbucket
|
||||||
|
String? get accountId;
|
||||||
|
@override
|
||||||
|
@JsonKey(ignore: true)
|
||||||
|
_$$_AccountCopyWith<_$_Account> get copyWith =>
|
||||||
|
throw _privateConstructorUsedError;
|
||||||
|
}
|
@ -6,7 +6,7 @@ part of 'account.dart';
|
|||||||
// JsonSerializableGenerator
|
// JsonSerializableGenerator
|
||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
Account _$AccountFromJson(Map<String, dynamic> json) => Account(
|
_$_Account _$$_AccountFromJson(Map<String, dynamic> json) => _$_Account(
|
||||||
platform: json['platform'] as String,
|
platform: json['platform'] as String,
|
||||||
domain: json['domain'] as String,
|
domain: json['domain'] as String,
|
||||||
token: json['token'] as String,
|
token: json['token'] as String,
|
||||||
@ -17,7 +17,7 @@ Account _$AccountFromJson(Map<String, dynamic> json) => Account(
|
|||||||
accountId: json['accountId'] as String?,
|
accountId: json['accountId'] as String?,
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$AccountToJson(Account instance) {
|
Map<String, dynamic> _$$_AccountToJson(_$_Account instance) {
|
||||||
final val = <String, dynamic>{
|
final val = <String, dynamic>{
|
||||||
'platform': instance.platform,
|
'platform': instance.platform,
|
||||||
'domain': instance.domain,
|
'domain': instance.domain,
|
||||||
|
14
pubspec.lock
14
pubspec.lock
@ -322,6 +322,20 @@ packages:
|
|||||||
description: flutter
|
description: flutter
|
||||||
source: sdk
|
source: sdk
|
||||||
version: "0.0.0"
|
version: "0.0.0"
|
||||||
|
freezed:
|
||||||
|
dependency: "direct dev"
|
||||||
|
description:
|
||||||
|
name: freezed
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "2.2.0"
|
||||||
|
freezed_annotation:
|
||||||
|
dependency: "direct main"
|
||||||
|
description:
|
||||||
|
name: freezed_annotation
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "2.2.0"
|
||||||
from_css_color:
|
from_css_color:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
|
@ -76,6 +76,7 @@ dependencies:
|
|||||||
from_css_color: ^2.0.0
|
from_css_color: ^2.0.0
|
||||||
maps_launcher: ^2.0.1
|
maps_launcher: ^2.0.1
|
||||||
path: ^1.8.2
|
path: ^1.8.2
|
||||||
|
freezed_annotation: ^2.2.0
|
||||||
|
|
||||||
dev_dependencies:
|
dev_dependencies:
|
||||||
build_runner: ^2.3.0
|
build_runner: ^2.3.0
|
||||||
@ -83,6 +84,7 @@ dev_dependencies:
|
|||||||
flutter_lints: ^2.0.1
|
flutter_lints: ^2.0.1
|
||||||
flutter_test:
|
flutter_test:
|
||||||
sdk: flutter
|
sdk: flutter
|
||||||
|
freezed: ^2.2.0
|
||||||
json_serializable: ^6.5.1
|
json_serializable: ^6.5.1
|
||||||
|
|
||||||
# For information on the generic Dart part of this file, see the
|
# For information on the generic Dart part of this file, see the
|
||||||
|
Loading…
x
Reference in New Issue
Block a user