mirror of
https://github.com/git-touch/git-touch
synced 2025-02-16 03:20:58 +01:00
refactor: user screen types
This commit is contained in:
parent
0543138f71
commit
6259faf935
@ -35,11 +35,17 @@ class GithubUserRepositoryOwner with EquatableMixin {
|
||||
return _$GithubUserRepositoryOwnerFromJson(json);
|
||||
}
|
||||
|
||||
String login;
|
||||
|
||||
String avatarUrl;
|
||||
|
||||
String url;
|
||||
|
||||
@JsonKey(name: '__typename')
|
||||
String resolveType;
|
||||
|
||||
@override
|
||||
List<Object> get props => [resolveType];
|
||||
List<Object> get props => [login, avatarUrl, url, resolveType];
|
||||
Map<String, dynamic> toJson() {
|
||||
switch (resolveType) {
|
||||
case 'User':
|
||||
@ -70,12 +76,8 @@ class GithubUserUser extends GithubUserAuditEntryActor
|
||||
factory GithubUserUser.fromJson(Map<String, dynamic> json) =>
|
||||
_$GithubUserUserFromJson(json);
|
||||
|
||||
String login;
|
||||
|
||||
String name;
|
||||
|
||||
String avatarUrl;
|
||||
|
||||
String bio;
|
||||
|
||||
String company;
|
||||
@ -100,17 +102,22 @@ class GithubUserUser extends GithubUserAuditEntryActor
|
||||
|
||||
bool viewerIsFollowing;
|
||||
|
||||
String url;
|
||||
|
||||
@override
|
||||
@JsonKey(name: '__typename')
|
||||
String resolveType;
|
||||
|
||||
@override
|
||||
String login;
|
||||
|
||||
@override
|
||||
String avatarUrl;
|
||||
|
||||
@override
|
||||
String url;
|
||||
|
||||
@override
|
||||
List<Object> get props => [
|
||||
login,
|
||||
name,
|
||||
avatarUrl,
|
||||
bio,
|
||||
company,
|
||||
location,
|
||||
@ -123,8 +130,10 @@ class GithubUserUser extends GithubUserAuditEntryActor
|
||||
pinnedItems,
|
||||
viewerCanFollow,
|
||||
viewerIsFollowing,
|
||||
url,
|
||||
resolveType
|
||||
resolveType,
|
||||
login,
|
||||
avatarUrl,
|
||||
url
|
||||
];
|
||||
Map<String, dynamic> toJson() => _$GithubUserUserToJson(this);
|
||||
}
|
||||
@ -466,17 +475,11 @@ class GithubUserActor with EquatableMixin {
|
||||
factory GithubUserActor.fromJson(Map<String, dynamic> json) =>
|
||||
_$GithubUserActorFromJson(json);
|
||||
|
||||
String login;
|
||||
|
||||
String avatarUrl;
|
||||
|
||||
String url;
|
||||
|
||||
@JsonKey(name: '__typename')
|
||||
String resolveType;
|
||||
|
||||
@override
|
||||
List<Object> get props => [login, avatarUrl, url, resolveType];
|
||||
List<Object> get props => [resolveType];
|
||||
Map<String, dynamic> toJson() => _$GithubUserActorToJson(this);
|
||||
}
|
||||
|
||||
@ -487,8 +490,6 @@ class GithubUserProfileOwner with EquatableMixin {
|
||||
factory GithubUserProfileOwner.fromJson(Map<String, dynamic> json) =>
|
||||
_$GithubUserProfileOwnerFromJson(json);
|
||||
|
||||
String login;
|
||||
|
||||
String name;
|
||||
|
||||
String location;
|
||||
@ -504,7 +505,7 @@ class GithubUserProfileOwner with EquatableMixin {
|
||||
|
||||
@override
|
||||
List<Object> get props =>
|
||||
[login, name, location, email, websiteUrl, pinnedItems, resolveType];
|
||||
[name, location, email, websiteUrl, pinnedItems, resolveType];
|
||||
Map<String, dynamic> toJson() => _$GithubUserProfileOwnerToJson(this);
|
||||
}
|
||||
|
||||
@ -542,12 +543,8 @@ class GithubUserOrganization extends GithubUserAuditEntryActor
|
||||
factory GithubUserOrganization.fromJson(Map<String, dynamic> json) =>
|
||||
_$GithubUserOrganizationFromJson(json);
|
||||
|
||||
String login;
|
||||
|
||||
String name;
|
||||
|
||||
String avatarUrl;
|
||||
|
||||
String description;
|
||||
|
||||
String location;
|
||||
@ -556,8 +553,6 @@ class GithubUserOrganization extends GithubUserAuditEntryActor
|
||||
|
||||
String websiteUrl;
|
||||
|
||||
String url;
|
||||
|
||||
GithubUserPinnableItemConnection pinnedItems;
|
||||
|
||||
GithubUserPinnableItemConnection pinnableItems;
|
||||
@ -568,20 +563,29 @@ class GithubUserOrganization extends GithubUserAuditEntryActor
|
||||
@JsonKey(name: '__typename')
|
||||
String resolveType;
|
||||
|
||||
@override
|
||||
String login;
|
||||
|
||||
@override
|
||||
String avatarUrl;
|
||||
|
||||
@override
|
||||
String url;
|
||||
|
||||
@override
|
||||
List<Object> get props => [
|
||||
login,
|
||||
name,
|
||||
avatarUrl,
|
||||
description,
|
||||
location,
|
||||
email,
|
||||
websiteUrl,
|
||||
url,
|
||||
pinnedItems,
|
||||
pinnableItems,
|
||||
membersWithRole,
|
||||
resolveType
|
||||
resolveType,
|
||||
login,
|
||||
avatarUrl,
|
||||
url
|
||||
];
|
||||
Map<String, dynamic> toJson() => _$GithubUserOrganizationToJson(this);
|
||||
}
|
||||
@ -665,30 +669,36 @@ class GithubUserQuery extends GraphQLQuery<GithubUser, GithubUserArguments> {
|
||||
arguments: [],
|
||||
directives: [],
|
||||
selectionSet: null),
|
||||
FieldNode(
|
||||
name: NameNode(value: 'login'),
|
||||
alias: null,
|
||||
arguments: [],
|
||||
directives: [],
|
||||
selectionSet: null),
|
||||
FieldNode(
|
||||
name: NameNode(value: 'avatarUrl'),
|
||||
alias: null,
|
||||
arguments: [],
|
||||
directives: [],
|
||||
selectionSet: null),
|
||||
FieldNode(
|
||||
name: NameNode(value: 'url'),
|
||||
alias: null,
|
||||
arguments: [],
|
||||
directives: [],
|
||||
selectionSet: null),
|
||||
InlineFragmentNode(
|
||||
typeCondition: TypeConditionNode(
|
||||
on: NamedTypeNode(
|
||||
name: NameNode(value: 'User'), isNonNull: false)),
|
||||
directives: [],
|
||||
selectionSet: SelectionSetNode(selections: [
|
||||
FieldNode(
|
||||
name: NameNode(value: 'login'),
|
||||
alias: null,
|
||||
arguments: [],
|
||||
directives: [],
|
||||
selectionSet: null),
|
||||
FieldNode(
|
||||
name: NameNode(value: 'name'),
|
||||
alias: null,
|
||||
arguments: [],
|
||||
directives: [],
|
||||
selectionSet: null),
|
||||
FieldNode(
|
||||
name: NameNode(value: 'avatarUrl'),
|
||||
alias: null,
|
||||
arguments: [],
|
||||
directives: [],
|
||||
selectionSet: null),
|
||||
FieldNode(
|
||||
name: NameNode(value: 'bio'),
|
||||
alias: null,
|
||||
@ -803,12 +813,6 @@ class GithubUserQuery extends GraphQLQuery<GithubUser, GithubUserArguments> {
|
||||
directives: [],
|
||||
selectionSet:
|
||||
SelectionSetNode(selections: [
|
||||
FieldNode(
|
||||
name: NameNode(value: '__typename'),
|
||||
alias: null,
|
||||
arguments: [],
|
||||
directives: [],
|
||||
selectionSet: null),
|
||||
FieldNode(
|
||||
name: NameNode(value: 'login'),
|
||||
alias: null,
|
||||
@ -940,13 +944,6 @@ class GithubUserQuery extends GraphQLQuery<GithubUser, GithubUserArguments> {
|
||||
directives: [],
|
||||
selectionSet:
|
||||
SelectionSetNode(selections: [
|
||||
FieldNode(
|
||||
name: NameNode(
|
||||
value: '__typename'),
|
||||
alias: null,
|
||||
arguments: [],
|
||||
directives: [],
|
||||
selectionSet: null),
|
||||
FieldNode(
|
||||
name:
|
||||
NameNode(value: 'login'),
|
||||
@ -1053,12 +1050,6 @@ class GithubUserQuery extends GraphQLQuery<GithubUser, GithubUserArguments> {
|
||||
alias: null,
|
||||
arguments: [],
|
||||
directives: [],
|
||||
selectionSet: null),
|
||||
FieldNode(
|
||||
name: NameNode(value: 'url'),
|
||||
alias: null,
|
||||
arguments: [],
|
||||
directives: [],
|
||||
selectionSet: null)
|
||||
])),
|
||||
InlineFragmentNode(
|
||||
@ -1068,24 +1059,12 @@ class GithubUserQuery extends GraphQLQuery<GithubUser, GithubUserArguments> {
|
||||
isNonNull: false)),
|
||||
directives: [],
|
||||
selectionSet: SelectionSetNode(selections: [
|
||||
FieldNode(
|
||||
name: NameNode(value: 'login'),
|
||||
alias: null,
|
||||
arguments: [],
|
||||
directives: [],
|
||||
selectionSet: null),
|
||||
FieldNode(
|
||||
name: NameNode(value: 'name'),
|
||||
alias: null,
|
||||
arguments: [],
|
||||
directives: [],
|
||||
selectionSet: null),
|
||||
FieldNode(
|
||||
name: NameNode(value: 'avatarUrl'),
|
||||
alias: null,
|
||||
arguments: [],
|
||||
directives: [],
|
||||
selectionSet: null),
|
||||
FieldNode(
|
||||
name: NameNode(value: 'description'),
|
||||
alias: null,
|
||||
@ -1110,12 +1089,6 @@ class GithubUserQuery extends GraphQLQuery<GithubUser, GithubUserArguments> {
|
||||
arguments: [],
|
||||
directives: [],
|
||||
selectionSet: null),
|
||||
FieldNode(
|
||||
name: NameNode(value: 'url'),
|
||||
alias: null,
|
||||
arguments: [],
|
||||
directives: [],
|
||||
selectionSet: null),
|
||||
FieldNode(
|
||||
name: NameNode(value: 'pinnedItems'),
|
||||
alias: null,
|
||||
@ -1154,13 +1127,6 @@ class GithubUserQuery extends GraphQLQuery<GithubUser, GithubUserArguments> {
|
||||
directives: [],
|
||||
selectionSet:
|
||||
SelectionSetNode(selections: [
|
||||
FieldNode(
|
||||
name: NameNode(
|
||||
value: '__typename'),
|
||||
alias: null,
|
||||
arguments: [],
|
||||
directives: [],
|
||||
selectionSet: null),
|
||||
FieldNode(
|
||||
name:
|
||||
NameNode(value: 'login'),
|
||||
@ -1306,13 +1272,6 @@ class GithubUserQuery extends GraphQLQuery<GithubUser, GithubUserArguments> {
|
||||
directives: [],
|
||||
selectionSet:
|
||||
SelectionSetNode(selections: [
|
||||
FieldNode(
|
||||
name: NameNode(
|
||||
value: '__typename'),
|
||||
alias: null,
|
||||
arguments: [],
|
||||
directives: [],
|
||||
selectionSet: null),
|
||||
FieldNode(
|
||||
name:
|
||||
NameNode(value: 'login'),
|
||||
|
@ -22,20 +22,24 @@ Map<String, dynamic> _$GithubUserToJson(GithubUser instance) =>
|
||||
GithubUserRepositoryOwner _$GithubUserRepositoryOwnerFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
return GithubUserRepositoryOwner()
|
||||
..login = json['login'] as String
|
||||
..avatarUrl = json['avatarUrl'] as String
|
||||
..url = json['url'] as String
|
||||
..resolveType = json['__typename'] as String;
|
||||
}
|
||||
|
||||
Map<String, dynamic> _$GithubUserRepositoryOwnerToJson(
|
||||
GithubUserRepositoryOwner instance) =>
|
||||
<String, dynamic>{
|
||||
'login': instance.login,
|
||||
'avatarUrl': instance.avatarUrl,
|
||||
'url': instance.url,
|
||||
'__typename': instance.resolveType,
|
||||
};
|
||||
|
||||
GithubUserUser _$GithubUserUserFromJson(Map<String, dynamic> json) {
|
||||
return GithubUserUser()
|
||||
..login = json['login'] as String
|
||||
..name = json['name'] as String
|
||||
..avatarUrl = json['avatarUrl'] as String
|
||||
..bio = json['bio'] as String
|
||||
..company = json['company'] as String
|
||||
..location = json['location'] as String
|
||||
@ -63,15 +67,15 @@ GithubUserUser _$GithubUserUserFromJson(Map<String, dynamic> json) {
|
||||
json['pinnedItems'] as Map<String, dynamic>)
|
||||
..viewerCanFollow = json['viewerCanFollow'] as bool
|
||||
..viewerIsFollowing = json['viewerIsFollowing'] as bool
|
||||
..url = json['url'] as String
|
||||
..resolveType = json['__typename'] as String;
|
||||
..resolveType = json['__typename'] as String
|
||||
..login = json['login'] as String
|
||||
..avatarUrl = json['avatarUrl'] as String
|
||||
..url = json['url'] as String;
|
||||
}
|
||||
|
||||
Map<String, dynamic> _$GithubUserUserToJson(GithubUserUser instance) =>
|
||||
<String, dynamic>{
|
||||
'login': instance.login,
|
||||
'name': instance.name,
|
||||
'avatarUrl': instance.avatarUrl,
|
||||
'bio': instance.bio,
|
||||
'company': instance.company,
|
||||
'location': instance.location,
|
||||
@ -84,8 +88,10 @@ Map<String, dynamic> _$GithubUserUserToJson(GithubUserUser instance) =>
|
||||
'pinnedItems': instance.pinnedItems?.toJson(),
|
||||
'viewerCanFollow': instance.viewerCanFollow,
|
||||
'viewerIsFollowing': instance.viewerIsFollowing,
|
||||
'url': instance.url,
|
||||
'__typename': instance.resolveType,
|
||||
'login': instance.login,
|
||||
'avatarUrl': instance.avatarUrl,
|
||||
'url': instance.url,
|
||||
};
|
||||
|
||||
GithubUserStarredRepositoryConnection
|
||||
@ -351,25 +357,17 @@ Map<String, dynamic> _$GithubUserAuditEntryActorToJson(
|
||||
<String, dynamic>{};
|
||||
|
||||
GithubUserActor _$GithubUserActorFromJson(Map<String, dynamic> json) {
|
||||
return GithubUserActor()
|
||||
..login = json['login'] as String
|
||||
..avatarUrl = json['avatarUrl'] as String
|
||||
..url = json['url'] as String
|
||||
..resolveType = json['__typename'] as String;
|
||||
return GithubUserActor()..resolveType = json['__typename'] as String;
|
||||
}
|
||||
|
||||
Map<String, dynamic> _$GithubUserActorToJson(GithubUserActor instance) =>
|
||||
<String, dynamic>{
|
||||
'login': instance.login,
|
||||
'avatarUrl': instance.avatarUrl,
|
||||
'url': instance.url,
|
||||
'__typename': instance.resolveType,
|
||||
};
|
||||
|
||||
GithubUserProfileOwner _$GithubUserProfileOwnerFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
return GithubUserProfileOwner()
|
||||
..login = json['login'] as String
|
||||
..name = json['name'] as String
|
||||
..location = json['location'] as String
|
||||
..email = json['email'] as String
|
||||
@ -384,7 +382,6 @@ GithubUserProfileOwner _$GithubUserProfileOwnerFromJson(
|
||||
Map<String, dynamic> _$GithubUserProfileOwnerToJson(
|
||||
GithubUserProfileOwner instance) =>
|
||||
<String, dynamic>{
|
||||
'login': instance.login,
|
||||
'name': instance.name,
|
||||
'location': instance.location,
|
||||
'email': instance.email,
|
||||
@ -407,14 +404,11 @@ Map<String, dynamic> _$GithubUserSponsorableToJson(
|
||||
GithubUserOrganization _$GithubUserOrganizationFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
return GithubUserOrganization()
|
||||
..login = json['login'] as String
|
||||
..name = json['name'] as String
|
||||
..avatarUrl = json['avatarUrl'] as String
|
||||
..description = json['description'] as String
|
||||
..location = json['location'] as String
|
||||
..email = json['email'] as String
|
||||
..websiteUrl = json['websiteUrl'] as String
|
||||
..url = json['url'] as String
|
||||
..pinnedItems = json['pinnedItems'] == null
|
||||
? null
|
||||
: GithubUserPinnableItemConnection.fromJson(
|
||||
@ -427,24 +421,27 @@ GithubUserOrganization _$GithubUserOrganizationFromJson(
|
||||
? null
|
||||
: GithubUserOrganizationMemberConnection.fromJson(
|
||||
json['membersWithRole'] as Map<String, dynamic>)
|
||||
..resolveType = json['__typename'] as String;
|
||||
..resolveType = json['__typename'] as String
|
||||
..login = json['login'] as String
|
||||
..avatarUrl = json['avatarUrl'] as String
|
||||
..url = json['url'] as String;
|
||||
}
|
||||
|
||||
Map<String, dynamic> _$GithubUserOrganizationToJson(
|
||||
GithubUserOrganization instance) =>
|
||||
<String, dynamic>{
|
||||
'login': instance.login,
|
||||
'name': instance.name,
|
||||
'avatarUrl': instance.avatarUrl,
|
||||
'description': instance.description,
|
||||
'location': instance.location,
|
||||
'email': instance.email,
|
||||
'websiteUrl': instance.websiteUrl,
|
||||
'url': instance.url,
|
||||
'pinnedItems': instance.pinnedItems?.toJson(),
|
||||
'pinnableItems': instance.pinnableItems?.toJson(),
|
||||
'membersWithRole': instance.membersWithRole?.toJson(),
|
||||
'__typename': instance.resolveType,
|
||||
'login': instance.login,
|
||||
'avatarUrl': instance.avatarUrl,
|
||||
'url': instance.url,
|
||||
};
|
||||
|
||||
GithubUserOrganizationMemberConnection
|
||||
|
@ -1,10 +1,11 @@
|
||||
query($login: String!) {
|
||||
repositoryOwner(login: $login) {
|
||||
__typename
|
||||
login
|
||||
avatarUrl
|
||||
url
|
||||
... on User {
|
||||
login
|
||||
name
|
||||
avatarUrl
|
||||
bio
|
||||
company
|
||||
location
|
||||
@ -27,7 +28,6 @@ query($login: String!) {
|
||||
totalCount
|
||||
nodes {
|
||||
owner {
|
||||
__typename
|
||||
login
|
||||
avatarUrl
|
||||
}
|
||||
@ -53,7 +53,6 @@ query($login: String!) {
|
||||
__typename
|
||||
... on Repository {
|
||||
owner {
|
||||
__typename
|
||||
login
|
||||
avatarUrl
|
||||
}
|
||||
@ -76,23 +75,18 @@ query($login: String!) {
|
||||
}
|
||||
viewerCanFollow
|
||||
viewerIsFollowing
|
||||
url
|
||||
}
|
||||
... on Organization {
|
||||
login
|
||||
name
|
||||
avatarUrl
|
||||
description
|
||||
location
|
||||
email
|
||||
websiteUrl
|
||||
url
|
||||
pinnedItems(first: 6) {
|
||||
nodes {
|
||||
__typename
|
||||
... on Repository {
|
||||
owner {
|
||||
__typename
|
||||
login
|
||||
avatarUrl
|
||||
}
|
||||
@ -119,7 +113,6 @@ query($login: String!) {
|
||||
__typename
|
||||
... on Repository {
|
||||
owner {
|
||||
__typename
|
||||
login
|
||||
avatarUrl
|
||||
}
|
||||
|
@ -83,8 +83,8 @@ class RepositoryItem extends StatelessWidget {
|
||||
|
||||
RepositoryItem.github(GithubUserRepository payload,
|
||||
{this.inRepoScreen = false})
|
||||
: this.owner = (payload.owner as GithubUserUser).login,
|
||||
this.avatarUrl = (payload.owner as GithubUserUser).avatarUrl,
|
||||
: this.owner = payload.owner.login,
|
||||
this.avatarUrl = payload.owner.avatarUrl,
|
||||
this.name = payload.name,
|
||||
this.description = payload.description,
|
||||
this.iconData = Octicons.repo, // TODO:
|
||||
@ -92,8 +92,8 @@ class RepositoryItem extends StatelessWidget {
|
||||
this.forkCount = payload.forks.totalCount,
|
||||
this.primaryLanguageName = payload.primaryLanguage?.name,
|
||||
this.primaryLanguageColor = payload.primaryLanguage?.color,
|
||||
this.screenBuilder = ((_) => RepositoryScreen(
|
||||
(payload.owner as GithubUserUser).login, payload.name)),
|
||||
this.screenBuilder =
|
||||
((_) => RepositoryScreen(payload.owner.login, payload.name)),
|
||||
this.topics = []; // TODO:
|
||||
// this.topics = payload['repositoryTopics'] == null
|
||||
// ? []
|
||||
|
Loading…
x
Reference in New Issue
Block a user