mirror of
https://github.com/pd4d10/git-touch.git
synced 2026-05-30 15:55:57 -05:00
refactor: split gql queries into files
This commit is contained in:
@@ -4,7 +4,7 @@ targets:
|
||||
ferry_generator|graphql_builder:
|
||||
enabled: true
|
||||
options:
|
||||
schema: git_touch|lib/graphql/schema.graphql
|
||||
schema: git_touch|lib/gql_github/schema.graphql
|
||||
type_overrides:
|
||||
DateTime:
|
||||
name: DateTime
|
||||
@@ -15,7 +15,7 @@ targets:
|
||||
ferry_generator|serializer_builder:
|
||||
enabled: true
|
||||
options:
|
||||
schema: git_touch|lib/graphql/schema.graphql
|
||||
schema: git_touch|lib/gql_github/schema.graphql
|
||||
custom_serializers:
|
||||
- import: package:git_touch/utils/date_time_serializer.dart
|
||||
name: DateTimeSerializer
|
||||
|
||||
49
lib/gql_github/commits.graphql
Normal file
49
lib/gql_github/commits.graphql
Normal file
@@ -0,0 +1,49 @@
|
||||
# import './fragments.graphql'
|
||||
|
||||
fragment CommitsRefCommit on Commit {
|
||||
history(first: 30, after: $after) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
url
|
||||
messageHeadline
|
||||
committedDate
|
||||
author {
|
||||
name
|
||||
avatarUrl
|
||||
user {
|
||||
login
|
||||
}
|
||||
}
|
||||
status {
|
||||
state
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fragment CommitsRef on Ref {
|
||||
target {
|
||||
... on Commit {
|
||||
...CommitsRefCommit
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
query Commits(
|
||||
$owner: String!
|
||||
$name: String!
|
||||
$ref: String!
|
||||
$hasRef: Boolean!
|
||||
$after: String
|
||||
) {
|
||||
repository(owner: $owner, name: $name) {
|
||||
defaultBranchRef @skip(if: $hasRef) {
|
||||
...CommitsRef
|
||||
}
|
||||
ref(qualifiedName: $ref) @include(if: $hasRef) {
|
||||
...CommitsRef
|
||||
}
|
||||
}
|
||||
}
|
||||
41
lib/gql_github/fragments.graphql
Normal file
41
lib/gql_github/fragments.graphql
Normal file
@@ -0,0 +1,41 @@
|
||||
fragment PageInfoParts on PageInfo {
|
||||
hasNextPage
|
||||
endCursor
|
||||
}
|
||||
|
||||
fragment RepoParts on Repository {
|
||||
owner {
|
||||
login
|
||||
avatarUrl
|
||||
}
|
||||
name
|
||||
description
|
||||
isPrivate
|
||||
isFork
|
||||
stargazers {
|
||||
totalCount
|
||||
}
|
||||
forks {
|
||||
totalCount
|
||||
}
|
||||
primaryLanguage {
|
||||
color
|
||||
name
|
||||
}
|
||||
}
|
||||
|
||||
fragment UserParts on User {
|
||||
login
|
||||
name
|
||||
avatarUrl
|
||||
location
|
||||
createdAt
|
||||
}
|
||||
|
||||
fragment OrgParts on Organization {
|
||||
login
|
||||
name
|
||||
avatarUrl
|
||||
location
|
||||
createdAt
|
||||
}
|
||||
15
lib/gql_github/gist.graphql
Normal file
15
lib/gql_github/gist.graphql
Normal file
@@ -0,0 +1,15 @@
|
||||
query Gist($login: String!, $name: String!) {
|
||||
user(login: $login) {
|
||||
gist(name: $name) {
|
||||
name
|
||||
files {
|
||||
name
|
||||
language {
|
||||
name
|
||||
}
|
||||
text
|
||||
size
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
27
lib/gql_github/gists.graphql
Normal file
27
lib/gql_github/gists.graphql
Normal file
@@ -0,0 +1,27 @@
|
||||
# import './fragments.graphql'
|
||||
|
||||
query Gists($login: String!, $after: String) {
|
||||
user(login: $login) {
|
||||
gists(first: 30, after: $after) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
name
|
||||
description
|
||||
files {
|
||||
name
|
||||
language {
|
||||
name
|
||||
}
|
||||
text
|
||||
}
|
||||
updatedAt
|
||||
id
|
||||
owner {
|
||||
avatarUrl
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,518 +1,3 @@
|
||||
# common
|
||||
fragment PageInfoParts on PageInfo {
|
||||
hasNextPage
|
||||
endCursor
|
||||
}
|
||||
fragment RepoParts on Repository {
|
||||
owner {
|
||||
login
|
||||
avatarUrl
|
||||
}
|
||||
name
|
||||
description
|
||||
isPrivate
|
||||
isFork
|
||||
stargazers {
|
||||
totalCount
|
||||
}
|
||||
forks {
|
||||
totalCount
|
||||
}
|
||||
primaryLanguage {
|
||||
color
|
||||
name
|
||||
}
|
||||
}
|
||||
fragment UserParts on User {
|
||||
login
|
||||
name
|
||||
avatarUrl
|
||||
location
|
||||
createdAt
|
||||
}
|
||||
fragment OrgParts on Organization {
|
||||
login
|
||||
name
|
||||
avatarUrl
|
||||
location
|
||||
createdAt
|
||||
}
|
||||
|
||||
# user gists
|
||||
query Gists($login: String!, $after: String) {
|
||||
user(login: $login) {
|
||||
gists(first: 30, after: $after) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
name
|
||||
description
|
||||
files {
|
||||
name
|
||||
language {
|
||||
name
|
||||
}
|
||||
text
|
||||
}
|
||||
updatedAt
|
||||
id
|
||||
owner {
|
||||
avatarUrl
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# single gist
|
||||
query Gist($login: String!, $name: String!) {
|
||||
user(login: $login) {
|
||||
gist(name: $name) {
|
||||
name
|
||||
files {
|
||||
name
|
||||
language {
|
||||
name
|
||||
}
|
||||
text
|
||||
size
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# users
|
||||
query Followers($login: String!, $after: String) {
|
||||
user(login: $login) {
|
||||
followers(first: 30, after: $after) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
...UserParts
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
query Following($login: String!, $after: String) {
|
||||
user(login: $login) {
|
||||
following(first: 30, after: $after) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
...UserParts
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
query Orgs($login: String!, $after: String) {
|
||||
user(login: $login) {
|
||||
organizations(first: 30, after: $after) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
...OrgParts
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
query Members($login: String!, $after: String) {
|
||||
organization(login: $login) {
|
||||
membersWithRole(first: 30, after: $after) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
...UserParts
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
query Watchers($owner: String!, $name: String!, $after: String) {
|
||||
repository(owner: $owner, name: $name) {
|
||||
watchers(first: 30, after: $after) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
...UserParts
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
query Stargazers($owner: String!, $name: String!, $after: String) {
|
||||
repository(owner: $owner, name: $name) {
|
||||
stargazers(
|
||||
first: 30
|
||||
after: $after
|
||||
orderBy: { field: STARRED_AT, direction: DESC }
|
||||
) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
...UserParts
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# repos
|
||||
fragment RepoPartsWithTime on Repository {
|
||||
...RepoParts
|
||||
updatedAt
|
||||
}
|
||||
query Repos($login: String!, $after: String) {
|
||||
repositoryOwner(login: $login) {
|
||||
repositories(
|
||||
first: 30
|
||||
after: $after
|
||||
orderBy: { field: UPDATED_AT, direction: DESC }
|
||||
) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
...RepoPartsWithTime
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
query Stars($login: String!, $after: String) {
|
||||
user(login: $login) {
|
||||
starredRepositories(
|
||||
first: 30
|
||||
after: $after
|
||||
orderBy: { field: STARRED_AT, direction: DESC }
|
||||
) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
...RepoPartsWithTime
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# user
|
||||
fragment UserPartsFull on User {
|
||||
...UserParts
|
||||
company
|
||||
bio
|
||||
url
|
||||
email
|
||||
websiteUrl
|
||||
viewerCanFollow # TODO: remove in viewer query
|
||||
viewerIsFollowing
|
||||
sponsors {
|
||||
totalCount
|
||||
}
|
||||
followers {
|
||||
totalCount
|
||||
}
|
||||
following {
|
||||
totalCount
|
||||
}
|
||||
contributionsCollection {
|
||||
contributionCalendar {
|
||||
weeks {
|
||||
contributionDays {
|
||||
color
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
organizations {
|
||||
totalCount
|
||||
}
|
||||
repositories(
|
||||
first: 6
|
||||
ownerAffiliations: OWNER
|
||||
orderBy: { field: STARGAZERS, direction: DESC }
|
||||
) {
|
||||
totalCount
|
||||
nodes {
|
||||
...RepoParts
|
||||
}
|
||||
}
|
||||
starredRepositories {
|
||||
totalCount
|
||||
}
|
||||
gists {
|
||||
totalCount
|
||||
}
|
||||
pinnedItems(first: 6) {
|
||||
nodes {
|
||||
... on Repository {
|
||||
...RepoParts
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
query Viewer {
|
||||
viewer {
|
||||
...UserPartsFull
|
||||
}
|
||||
}
|
||||
|
||||
query User($login: String!) {
|
||||
user(login: $login) {
|
||||
...UserPartsFull
|
||||
}
|
||||
organization(login: $login) {
|
||||
login
|
||||
avatarUrl
|
||||
name
|
||||
url
|
||||
description
|
||||
location
|
||||
email
|
||||
websiteUrl
|
||||
createdAt
|
||||
viewerIsFollowing
|
||||
sponsors {
|
||||
totalCount
|
||||
}
|
||||
membersWithRole {
|
||||
totalCount
|
||||
}
|
||||
pinnedItems(first: 6) {
|
||||
nodes {
|
||||
... on Repository {
|
||||
...RepoParts
|
||||
}
|
||||
}
|
||||
}
|
||||
pinnableItems(first: 6, types: [REPOSITORY]) {
|
||||
totalCount
|
||||
nodes {
|
||||
... on Repository {
|
||||
...RepoParts
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# repo
|
||||
fragment RepoCommit on Commit {
|
||||
history {
|
||||
totalCount
|
||||
}
|
||||
}
|
||||
fragment RepoRef on Ref {
|
||||
name
|
||||
target {
|
||||
... on Commit {
|
||||
...RepoCommit
|
||||
}
|
||||
}
|
||||
}
|
||||
query Repo(
|
||||
$owner: String!
|
||||
$name: String!
|
||||
$branchSpecified: Boolean!
|
||||
$branch: String!
|
||||
) {
|
||||
repository(owner: $owner, name: $name) {
|
||||
owner {
|
||||
login
|
||||
avatarUrl
|
||||
}
|
||||
name
|
||||
description
|
||||
homepageUrl
|
||||
isPrivate
|
||||
isFork
|
||||
diskUsage
|
||||
hasIssuesEnabled
|
||||
url
|
||||
viewerHasStarred
|
||||
viewerSubscription
|
||||
projectsUrl
|
||||
primaryLanguage {
|
||||
color
|
||||
name
|
||||
}
|
||||
stargazers {
|
||||
totalCount
|
||||
}
|
||||
forks {
|
||||
totalCount
|
||||
}
|
||||
watchers {
|
||||
totalCount
|
||||
}
|
||||
issues(states: OPEN) {
|
||||
totalCount
|
||||
}
|
||||
pullRequests(states: OPEN) {
|
||||
totalCount
|
||||
}
|
||||
projects {
|
||||
totalCount
|
||||
}
|
||||
releases {
|
||||
totalCount
|
||||
}
|
||||
languages(first: 10, orderBy: { field: SIZE, direction: DESC }) {
|
||||
totalSize
|
||||
edges {
|
||||
size
|
||||
node {
|
||||
name
|
||||
color
|
||||
}
|
||||
}
|
||||
}
|
||||
defaultBranchRef @skip(if: $branchSpecified) {
|
||||
...RepoRef
|
||||
}
|
||||
ref(qualifiedName: $branch) @include(if: $branchSpecified) {
|
||||
...RepoRef
|
||||
}
|
||||
refs(first: 100, refPrefix: "refs/heads/") {
|
||||
totalCount
|
||||
nodes {
|
||||
name
|
||||
}
|
||||
}
|
||||
licenseInfo {
|
||||
name
|
||||
spdxId
|
||||
}
|
||||
repositoryTopics(first: 10) {
|
||||
nodes {
|
||||
url
|
||||
topic {
|
||||
name
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# commits
|
||||
fragment CommitsRefCommit on Commit {
|
||||
history(first: 30, after: $after) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
url
|
||||
messageHeadline
|
||||
committedDate
|
||||
author {
|
||||
name
|
||||
avatarUrl
|
||||
user {
|
||||
login
|
||||
}
|
||||
}
|
||||
status {
|
||||
state
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
fragment CommitsRef on Ref {
|
||||
target {
|
||||
... on Commit {
|
||||
...CommitsRefCommit
|
||||
}
|
||||
}
|
||||
}
|
||||
query Commits(
|
||||
$owner: String!
|
||||
$name: String!
|
||||
$ref: String!
|
||||
$hasRef: Boolean!
|
||||
$after: String
|
||||
) {
|
||||
repository(owner: $owner, name: $name) {
|
||||
defaultBranchRef @skip(if: $hasRef) {
|
||||
...CommitsRef
|
||||
}
|
||||
ref(qualifiedName: $ref) @include(if: $hasRef) {
|
||||
...CommitsRef
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# issues
|
||||
query Issues($owner: String!, $name: String!, $cursor: String) {
|
||||
repository(owner: $owner, name: $name) {
|
||||
issues(
|
||||
states: OPEN
|
||||
orderBy: { field: CREATED_AT, direction: DESC }
|
||||
first: 30
|
||||
after: $cursor
|
||||
) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
number
|
||||
title
|
||||
updatedAt
|
||||
author {
|
||||
login
|
||||
avatarUrl
|
||||
}
|
||||
labels(first: 10) {
|
||||
nodes {
|
||||
name
|
||||
color
|
||||
}
|
||||
}
|
||||
comments {
|
||||
totalCount
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
## pulls
|
||||
query Pulls($owner: String!, $name: String!, $cursor: String) {
|
||||
repository(owner: $owner, name: $name) {
|
||||
pullRequests(
|
||||
states: OPEN
|
||||
orderBy: { field: CREATED_AT, direction: DESC }
|
||||
first: 30
|
||||
after: $cursor
|
||||
) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
number
|
||||
title
|
||||
updatedAt
|
||||
author {
|
||||
login
|
||||
avatarUrl
|
||||
}
|
||||
labels(first: 10) {
|
||||
nodes {
|
||||
name
|
||||
color
|
||||
}
|
||||
}
|
||||
comments {
|
||||
totalCount
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# issue
|
||||
fragment CommentParts on Comment {
|
||||
id
|
||||
createdAt
|
||||
@@ -1086,48 +571,3 @@ query Issue($owner: String!, $name: String!, $number: Int!, $cursor: String) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# Releases
|
||||
query Releases($name: String!, $owner: String!, $cursor: String) {
|
||||
repository(name: $name, owner: $owner) {
|
||||
releases(
|
||||
first: 30
|
||||
after: $cursor
|
||||
orderBy: { field: CREATED_AT, direction: DESC }
|
||||
) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
tagName
|
||||
description
|
||||
name
|
||||
author {
|
||||
name
|
||||
avatarUrl
|
||||
}
|
||||
publishedAt
|
||||
url
|
||||
releaseAssets(first: 30) {
|
||||
nodes {
|
||||
name
|
||||
downloadUrl
|
||||
downloadCount
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# meta
|
||||
query Meta {
|
||||
meta {
|
||||
gitHubServicesSha
|
||||
gitIpAddresses
|
||||
hookIpAddresses
|
||||
importerIpAddresses
|
||||
isPasswordAuthenticationVerifiable
|
||||
pagesIpAddresses
|
||||
}
|
||||
}
|
||||
68
lib/gql_github/issues.graphql
Normal file
68
lib/gql_github/issues.graphql
Normal file
@@ -0,0 +1,68 @@
|
||||
# import './fragments.graphql'
|
||||
|
||||
query Issues($owner: String!, $name: String!, $cursor: String) {
|
||||
repository(owner: $owner, name: $name) {
|
||||
issues(
|
||||
states: OPEN
|
||||
orderBy: { field: CREATED_AT, direction: DESC }
|
||||
first: 30
|
||||
after: $cursor
|
||||
) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
number
|
||||
title
|
||||
updatedAt
|
||||
author {
|
||||
login
|
||||
avatarUrl
|
||||
}
|
||||
labels(first: 10) {
|
||||
nodes {
|
||||
name
|
||||
color
|
||||
}
|
||||
}
|
||||
comments {
|
||||
totalCount
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
## pulls
|
||||
query Pulls($owner: String!, $name: String!, $cursor: String) {
|
||||
repository(owner: $owner, name: $name) {
|
||||
pullRequests(
|
||||
states: OPEN
|
||||
orderBy: { field: CREATED_AT, direction: DESC }
|
||||
first: 30
|
||||
after: $cursor
|
||||
) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
number
|
||||
title
|
||||
updatedAt
|
||||
author {
|
||||
login
|
||||
avatarUrl
|
||||
}
|
||||
labels(first: 10) {
|
||||
nodes {
|
||||
name
|
||||
color
|
||||
}
|
||||
}
|
||||
comments {
|
||||
totalCount
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
10
lib/gql_github/meta.graphql
Normal file
10
lib/gql_github/meta.graphql
Normal file
@@ -0,0 +1,10 @@
|
||||
query Meta {
|
||||
meta {
|
||||
gitHubServicesSha
|
||||
gitIpAddresses
|
||||
hookIpAddresses
|
||||
importerIpAddresses
|
||||
isPasswordAuthenticationVerifiable
|
||||
pagesIpAddresses
|
||||
}
|
||||
}
|
||||
33
lib/gql_github/releases.graphql
Normal file
33
lib/gql_github/releases.graphql
Normal file
@@ -0,0 +1,33 @@
|
||||
# import './fragments.graphql'
|
||||
|
||||
query Releases($name: String!, $owner: String!, $cursor: String) {
|
||||
repository(name: $name, owner: $owner) {
|
||||
releases(
|
||||
first: 30
|
||||
after: $cursor
|
||||
orderBy: { field: CREATED_AT, direction: DESC }
|
||||
) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
tagName
|
||||
description
|
||||
name
|
||||
author {
|
||||
name
|
||||
avatarUrl
|
||||
}
|
||||
publishedAt
|
||||
url
|
||||
releaseAssets(first: 30) {
|
||||
nodes {
|
||||
name
|
||||
downloadUrl
|
||||
downloadCount
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
98
lib/gql_github/repo.graphql
Normal file
98
lib/gql_github/repo.graphql
Normal file
@@ -0,0 +1,98 @@
|
||||
fragment RepoCommit on Commit {
|
||||
history {
|
||||
totalCount
|
||||
}
|
||||
}
|
||||
|
||||
fragment RepoRef on Ref {
|
||||
name
|
||||
target {
|
||||
... on Commit {
|
||||
...RepoCommit
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
query Repo(
|
||||
$owner: String!
|
||||
$name: String!
|
||||
$branchSpecified: Boolean!
|
||||
$branch: String!
|
||||
) {
|
||||
repository(owner: $owner, name: $name) {
|
||||
owner {
|
||||
login
|
||||
avatarUrl
|
||||
}
|
||||
name
|
||||
description
|
||||
homepageUrl
|
||||
isPrivate
|
||||
isFork
|
||||
diskUsage
|
||||
hasIssuesEnabled
|
||||
url
|
||||
viewerHasStarred
|
||||
viewerSubscription
|
||||
projectsUrl
|
||||
primaryLanguage {
|
||||
color
|
||||
name
|
||||
}
|
||||
stargazers {
|
||||
totalCount
|
||||
}
|
||||
forks {
|
||||
totalCount
|
||||
}
|
||||
watchers {
|
||||
totalCount
|
||||
}
|
||||
issues(states: OPEN) {
|
||||
totalCount
|
||||
}
|
||||
pullRequests(states: OPEN) {
|
||||
totalCount
|
||||
}
|
||||
projects {
|
||||
totalCount
|
||||
}
|
||||
releases {
|
||||
totalCount
|
||||
}
|
||||
languages(first: 10, orderBy: { field: SIZE, direction: DESC }) {
|
||||
totalSize
|
||||
edges {
|
||||
size
|
||||
node {
|
||||
name
|
||||
color
|
||||
}
|
||||
}
|
||||
}
|
||||
defaultBranchRef @skip(if: $branchSpecified) {
|
||||
...RepoRef
|
||||
}
|
||||
ref(qualifiedName: $branch) @include(if: $branchSpecified) {
|
||||
...RepoRef
|
||||
}
|
||||
refs(first: 100, refPrefix: "refs/heads/") {
|
||||
totalCount
|
||||
nodes {
|
||||
name
|
||||
}
|
||||
}
|
||||
licenseInfo {
|
||||
name
|
||||
spdxId
|
||||
}
|
||||
repositoryTopics(first: 10) {
|
||||
nodes {
|
||||
url
|
||||
topic {
|
||||
name
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
38
lib/gql_github/repos.graphql
Normal file
38
lib/gql_github/repos.graphql
Normal file
@@ -0,0 +1,38 @@
|
||||
# import './fragments.graphql'
|
||||
|
||||
fragment RepoPartsWithTime on Repository {
|
||||
...RepoParts
|
||||
updatedAt
|
||||
}
|
||||
query Repos($login: String!, $after: String) {
|
||||
repositoryOwner(login: $login) {
|
||||
repositories(
|
||||
first: 30
|
||||
after: $after
|
||||
orderBy: { field: UPDATED_AT, direction: DESC }
|
||||
) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
...RepoPartsWithTime
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
query Stars($login: String!, $after: String) {
|
||||
user(login: $login) {
|
||||
starredRepositories(
|
||||
first: 30
|
||||
after: $after
|
||||
orderBy: { field: STARRED_AT, direction: DESC }
|
||||
) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
...RepoPartsWithTime
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
101
lib/gql_github/user.graphql
Normal file
101
lib/gql_github/user.graphql
Normal file
@@ -0,0 +1,101 @@
|
||||
# import './fragments.graphql'
|
||||
|
||||
fragment UserPartsFull on User {
|
||||
...UserParts
|
||||
company
|
||||
bio
|
||||
url
|
||||
email
|
||||
websiteUrl
|
||||
viewerCanFollow # TODO: remove in viewer query
|
||||
viewerIsFollowing
|
||||
sponsors {
|
||||
totalCount
|
||||
}
|
||||
followers {
|
||||
totalCount
|
||||
}
|
||||
following {
|
||||
totalCount
|
||||
}
|
||||
contributionsCollection {
|
||||
contributionCalendar {
|
||||
weeks {
|
||||
contributionDays {
|
||||
color
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
organizations {
|
||||
totalCount
|
||||
}
|
||||
repositories(
|
||||
first: 6
|
||||
ownerAffiliations: OWNER
|
||||
orderBy: { field: STARGAZERS, direction: DESC }
|
||||
) {
|
||||
totalCount
|
||||
nodes {
|
||||
...RepoParts
|
||||
}
|
||||
}
|
||||
starredRepositories {
|
||||
totalCount
|
||||
}
|
||||
gists {
|
||||
totalCount
|
||||
}
|
||||
pinnedItems(first: 6) {
|
||||
nodes {
|
||||
... on Repository {
|
||||
...RepoParts
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
query Viewer {
|
||||
viewer {
|
||||
...UserPartsFull
|
||||
}
|
||||
}
|
||||
|
||||
query User($login: String!) {
|
||||
user(login: $login) {
|
||||
...UserPartsFull
|
||||
}
|
||||
organization(login: $login) {
|
||||
login
|
||||
avatarUrl
|
||||
name
|
||||
url
|
||||
description
|
||||
location
|
||||
email
|
||||
websiteUrl
|
||||
createdAt
|
||||
viewerIsFollowing
|
||||
sponsors {
|
||||
totalCount
|
||||
}
|
||||
membersWithRole {
|
||||
totalCount
|
||||
}
|
||||
pinnedItems(first: 6) {
|
||||
nodes {
|
||||
... on Repository {
|
||||
...RepoParts
|
||||
}
|
||||
}
|
||||
}
|
||||
pinnableItems(first: 6, types: [REPOSITORY]) {
|
||||
totalCount
|
||||
nodes {
|
||||
... on Repository {
|
||||
...RepoParts
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
83
lib/gql_github/users.graphql
Normal file
83
lib/gql_github/users.graphql
Normal file
@@ -0,0 +1,83 @@
|
||||
# import './fragments.graphql'
|
||||
|
||||
query Followers($login: String!, $after: String) {
|
||||
user(login: $login) {
|
||||
followers(first: 30, after: $after) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
...UserParts
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
query Following($login: String!, $after: String) {
|
||||
user(login: $login) {
|
||||
following(first: 30, after: $after) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
...UserParts
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
query Orgs($login: String!, $after: String) {
|
||||
user(login: $login) {
|
||||
organizations(first: 30, after: $after) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
...OrgParts
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
query Members($login: String!, $after: String) {
|
||||
organization(login: $login) {
|
||||
membersWithRole(first: 30, after: $after) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
...UserParts
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
query Watchers($owner: String!, $name: String!, $after: String) {
|
||||
repository(owner: $owner, name: $name) {
|
||||
watchers(first: 30, after: $after) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
...UserParts
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
query Stargazers($owner: String!, $name: String!, $after: String) {
|
||||
repository(owner: $owner, name: $name) {
|
||||
stargazers(
|
||||
first: 30
|
||||
after: $after
|
||||
orderBy: { field: STARRED_AT, direction: DESC }
|
||||
) {
|
||||
pageInfo {
|
||||
...PageInfoParts
|
||||
}
|
||||
nodes {
|
||||
...UserParts
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,10 +1,8 @@
|
||||
import 'package:ferry/ferry.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:flutter_gen/gen_l10n/S.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.data.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.req.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.var.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/schema.schema.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/commits.data.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/commits.req.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/schema.schema.gql.dart';
|
||||
import 'package:git_touch/models/auth.dart';
|
||||
import 'package:git_touch/scaffolds/list_stateful.dart';
|
||||
import 'package:git_touch/widgets/app_bar_title.dart';
|
||||
@@ -42,7 +40,7 @@ class GhCommits extends StatelessWidget {
|
||||
b.vars.ref = branch ?? '';
|
||||
b.vars.after = cursor;
|
||||
});
|
||||
final OperationResponse<GCommitsData, GCommitsVars?> res =
|
||||
final res =
|
||||
await context.read<AuthModel>().gqlClient.request(req).first;
|
||||
final ref = res.data!.repository!.defaultBranchRef ??
|
||||
res.data!.repository!.ref!;
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
import 'package:ferry/ferry.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:flutter_gen/gen_l10n/S.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.data.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.req.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.var.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/gists.data.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/gists.req.gql.dart';
|
||||
import 'package:git_touch/models/auth.dart';
|
||||
import 'package:git_touch/scaffolds/list_stateful.dart';
|
||||
import 'package:git_touch/widgets/app_bar_title.dart';
|
||||
@@ -23,7 +21,7 @@ class GhGistsScreen extends StatelessWidget {
|
||||
final req = GGistsReq((b) => b
|
||||
..vars.login = login
|
||||
..vars.after = page);
|
||||
final OperationResponse<GGistsData, GGistsVars?> res =
|
||||
final res =
|
||||
await context.read<AuthModel>().gqlClient.request(req).first;
|
||||
final gists = res.data!.user!.gists;
|
||||
return ListPayload(
|
||||
|
||||
@@ -1,11 +1,9 @@
|
||||
import 'package:antd_mobile/antd_mobile.dart';
|
||||
import 'package:ferry/ferry.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:flutter_gen/gen_l10n/S.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.data.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.req.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.var.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/gist.data.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/gist.req.gql.dart';
|
||||
import 'package:git_touch/models/auth.dart';
|
||||
import 'package:git_touch/scaffolds/refresh_stateful.dart';
|
||||
import 'package:git_touch/widgets/app_bar_title.dart';
|
||||
@@ -25,7 +23,7 @@ class GhGistsFilesScreen extends StatelessWidget {
|
||||
final req = GGistReq((b) => b
|
||||
..vars.login = login
|
||||
..vars.name = id);
|
||||
final OperationResponse<GGistData, GGistVars?> res =
|
||||
final res =
|
||||
await context.read<AuthModel>().gqlClient.request(req).first;
|
||||
final gist = res.data!.user!.gist;
|
||||
return gist;
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
import 'package:antd_mobile/antd_mobile.dart';
|
||||
import 'package:ferry/ferry.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.data.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.req.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.var.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/issue.data.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/issue.req.gql.dart';
|
||||
import 'package:git_touch/models/auth.dart';
|
||||
import 'package:git_touch/models/theme.dart';
|
||||
import 'package:git_touch/scaffolds/long_list.dart';
|
||||
@@ -95,8 +93,7 @@ class GhIssueScreen extends StatelessWidget {
|
||||
b.vars.number = number;
|
||||
b.vars.cursor = cursor;
|
||||
});
|
||||
final OperationResponse<GIssueData, GIssueVars?> res =
|
||||
await context.read<AuthModel>().gqlClient.request(req).first;
|
||||
final res = await context.read<AuthModel>().gqlClient.request(req).first;
|
||||
return res.data!.repository!;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
import 'package:ferry/ferry.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:flutter_gen/gen_l10n/S.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.data.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.req.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.var.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/issues.data.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/issues.req.gql.dart';
|
||||
import 'package:git_touch/models/auth.dart';
|
||||
import 'package:git_touch/scaffolds/list_stateful.dart';
|
||||
import 'package:git_touch/widgets/action_entry.dart';
|
||||
@@ -31,7 +29,7 @@ class GhIssuesScreen extends StatelessWidget {
|
||||
b.vars.name = name;
|
||||
b.vars.cursor = cursor;
|
||||
});
|
||||
final OperationResponse<GIssuesData, GIssuesVars?> res =
|
||||
final res =
|
||||
await context.read<AuthModel>().gqlClient.request(req).first;
|
||||
final issues = res.data!.repository!.issues;
|
||||
return ListPayload(
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import 'package:antd_mobile/antd_mobile.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.data.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.req.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/meta.data.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/meta.req.gql.dart';
|
||||
import 'package:git_touch/models/auth.dart';
|
||||
import 'package:git_touch/scaffolds/refresh_stateful.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
import 'package:ferry/ferry.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:flutter_gen/gen_l10n/S.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.data.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.req.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.var.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/issues.data.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/issues.req.gql.dart';
|
||||
import 'package:git_touch/models/auth.dart';
|
||||
import 'package:git_touch/scaffolds/list_stateful.dart';
|
||||
import 'package:git_touch/widgets/app_bar_title.dart';
|
||||
@@ -27,7 +25,7 @@ class GhPullsScreen extends StatelessWidget {
|
||||
b.vars.name = name;
|
||||
b.vars.cursor = cursor;
|
||||
});
|
||||
final OperationResponse<GPullsData, GPullsVars?> res =
|
||||
final res =
|
||||
await context.read<AuthModel>().gqlClient.request(req).first;
|
||||
final pulls = res.data!.repository!.pullRequests;
|
||||
return ListPayload(
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
import 'package:ferry/ferry.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.data.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.req.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.var.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/releases.data.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/releases.req.gql.dart';
|
||||
import 'package:git_touch/models/auth.dart';
|
||||
import 'package:git_touch/scaffolds/list_stateful.dart';
|
||||
import 'package:git_touch/widgets/app_bar_title.dart';
|
||||
@@ -25,7 +23,7 @@ class GhReleasesScreen extends StatelessWidget {
|
||||
..vars.owner = owner
|
||||
..vars.name = name
|
||||
..vars.cursor = page);
|
||||
final OperationResponse<GReleasesData, GReleasesVars?> res =
|
||||
final res =
|
||||
await context.read<AuthModel>().gqlClient.request(req).first;
|
||||
final releases = res.data!.repository!.releases;
|
||||
return ListPayload(
|
||||
|
||||
@@ -1,13 +1,11 @@
|
||||
import 'package:antd_mobile/antd_mobile.dart';
|
||||
import 'package:ferry/ferry.dart';
|
||||
import 'package:filesize/filesize.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:flutter_gen/gen_l10n/S.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.data.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.req.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.var.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/schema.schema.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/repo.data.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/repo.req.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/schema.schema.gql.dart';
|
||||
import 'package:git_touch/models/auth.dart';
|
||||
import 'package:git_touch/models/theme.dart';
|
||||
import 'package:git_touch/scaffolds/refresh_stateful.dart';
|
||||
@@ -57,7 +55,7 @@ class GhRepoScreen extends StatelessWidget {
|
||||
..vars.name = name
|
||||
..vars.branchSpecified = branch != null
|
||||
..vars.branch = branch ?? '');
|
||||
final OperationResponse<GRepoData, GRepoVars?> res =
|
||||
final res =
|
||||
await context.read<AuthModel>().gqlClient.request(req).first;
|
||||
final repo = res.data!.repository;
|
||||
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
import 'package:ferry/ferry.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.data.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.req.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.var.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/repos.data.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/repos.req.gql.dart';
|
||||
import 'package:git_touch/models/auth.dart';
|
||||
import 'package:git_touch/scaffolds/list_stateful.dart';
|
||||
import 'package:git_touch/widgets/app_bar_title.dart';
|
||||
@@ -24,8 +22,7 @@ class GhRepos extends StatelessWidget {
|
||||
b.vars.login = login;
|
||||
b.vars.after = cursor;
|
||||
});
|
||||
final OperationResponse<GReposData, GReposVars?> res =
|
||||
await auth.gqlClient.request(req).first;
|
||||
final res = await auth.gqlClient.request(req).first;
|
||||
final p = res.data!.repositoryOwner!.repositories;
|
||||
return ListPayload(
|
||||
cursor: p.pageInfo.endCursor,
|
||||
@@ -55,8 +52,7 @@ class GhStars extends StatelessWidget {
|
||||
b.vars.login = login;
|
||||
b.vars.after = cursor;
|
||||
});
|
||||
final OperationResponse<GStarsData, GStarsVars?> res =
|
||||
await auth.gqlClient.request(req).first;
|
||||
final res = await auth.gqlClient.request(req).first;
|
||||
final p = res.data!.user!.starredRepositories;
|
||||
return ListPayload(
|
||||
cursor: p.pageInfo.endCursor,
|
||||
|
||||
@@ -2,8 +2,9 @@ import 'package:antd_mobile/antd_mobile.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:flutter_gen/gen_l10n/S.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.data.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.req.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/fragments.data.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/user.data.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/user.req.gql.dart';
|
||||
import 'package:git_touch/models/auth.dart';
|
||||
import 'package:git_touch/models/theme.dart';
|
||||
import 'package:git_touch/scaffolds/refresh_stateful.dart';
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
import 'package:ferry/ferry.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.data.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.req.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.var.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/fragments.data.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/users.req.gql.dart';
|
||||
import 'package:git_touch/models/auth.dart';
|
||||
import 'package:git_touch/scaffolds/list_stateful.dart';
|
||||
import 'package:git_touch/widgets/app_bar_title.dart';
|
||||
@@ -23,8 +21,7 @@ class GhFollowers extends StatelessWidget {
|
||||
b.vars.login = login;
|
||||
b.vars.after = cursor;
|
||||
});
|
||||
final OperationResponse<GFollowersData, GFollowersVars?> res =
|
||||
await auth.gqlClient.request(req).first;
|
||||
final res = await auth.gqlClient.request(req).first;
|
||||
final p = res.data!.user!.followers;
|
||||
return ListPayload(
|
||||
cursor: p.pageInfo.endCursor,
|
||||
@@ -53,8 +50,7 @@ class GhFollowing extends StatelessWidget {
|
||||
b.vars.login = login;
|
||||
b.vars.after = cursor;
|
||||
});
|
||||
final OperationResponse<GFollowingData, GFollowingVars?> res =
|
||||
await auth.gqlClient.request(req).first;
|
||||
final res = await auth.gqlClient.request(req).first;
|
||||
final p = res.data!.user!.following;
|
||||
return ListPayload(
|
||||
cursor: p.pageInfo.endCursor,
|
||||
@@ -112,8 +108,7 @@ class GhMembers extends StatelessWidget {
|
||||
b.vars.login = login;
|
||||
b.vars.after = cursor;
|
||||
});
|
||||
final OperationResponse<GMembersData, GMembersVars?> res =
|
||||
await auth.gqlClient.request(req).first;
|
||||
final res = await auth.gqlClient.request(req).first;
|
||||
final p = res.data!.organization!.membersWithRole;
|
||||
return ListPayload(
|
||||
cursor: p.pageInfo.endCursor,
|
||||
@@ -144,8 +139,7 @@ class GhWachers extends StatelessWidget {
|
||||
b.vars.name = name;
|
||||
b.vars.after = cursor;
|
||||
});
|
||||
final OperationResponse<GWatchersData, GWatchersVars?> res =
|
||||
await auth.gqlClient.request(req).first;
|
||||
final res = await auth.gqlClient.request(req).first;
|
||||
final p = res.data!.repository!.watchers;
|
||||
return ListPayload(
|
||||
cursor: p.pageInfo.endCursor,
|
||||
@@ -176,8 +170,7 @@ class GhStargazers extends StatelessWidget {
|
||||
b.vars.name = name;
|
||||
b.vars.after = cursor;
|
||||
});
|
||||
final OperationResponse<GStargazersData, GStargazersVars?> res =
|
||||
await auth.gqlClient.request(req).first;
|
||||
final res = await auth.gqlClient.request(req).first;
|
||||
final p = res.data!.repository!.stargazers;
|
||||
return ListPayload(
|
||||
cursor: p.pageInfo.endCursor,
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import 'package:antd_mobile/antd_mobile.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.data.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/schema.schema.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/issue.data.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/schema.schema.gql.dart';
|
||||
import 'package:git_touch/models/auth.dart';
|
||||
import 'package:git_touch/models/theme.dart';
|
||||
import 'package:git_touch/utils/utils.dart';
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import 'package:antd_mobile/antd_mobile.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:flutter_gen/gen_l10n/S.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.data.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/releases.data.gql.dart';
|
||||
import 'package:git_touch/models/theme.dart';
|
||||
import 'package:git_touch/utils/utils.dart';
|
||||
import 'package:git_touch/widgets/avatar.dart';
|
||||
|
||||
@@ -2,7 +2,7 @@ import 'package:antd_mobile/antd_mobile.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:from_css_color/from_css_color.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.data.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/fragments.data.gql.dart';
|
||||
import 'package:git_touch/models/bitbucket.dart';
|
||||
import 'package:git_touch/models/gitlab.dart';
|
||||
import 'package:git_touch/models/gogs.dart';
|
||||
|
||||
@@ -3,8 +3,8 @@ import 'dart:core';
|
||||
import 'package:antd_mobile/antd_mobile.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:flutter_gen/gen_l10n/S.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.data.gql.dart';
|
||||
import 'package:git_touch/graphql/__generated__/schema.schema.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/issue.data.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/schema.schema.gql.dart';
|
||||
import 'package:git_touch/models/theme.dart';
|
||||
import 'package:git_touch/utils/utils.dart';
|
||||
import 'package:git_touch/widgets/branch_name.dart';
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import 'package:antd_mobile/antd_mobile.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:git_touch/graphql/__generated__/github.data.gql.dart';
|
||||
import 'package:git_touch/gql_github/__generated__/fragments.data.gql.dart';
|
||||
import 'package:git_touch/models/theme.dart';
|
||||
import 'package:git_touch/utils/utils.dart';
|
||||
import 'package:git_touch/widgets/avatar.dart';
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/bash
|
||||
|
||||
# https://docs.github.com/en/graphql/overview/public-schema
|
||||
curl -o lib/graphql/schema.graphql https://docs.github.com/public/schema.docs.graphql
|
||||
curl -o lib/gql_github/schema.graphql https://docs.github.com/public/schema.docs.graphql
|
||||
|
||||
flutter pub run build_runner watch --delete-conflicting-outputs
|
||||
|
||||
Reference in New Issue
Block a user