Skip to content

Commit

Permalink
Add issue function
Browse files Browse the repository at this point in the history
  • Loading branch information
kination committed Mar 13, 2019
1 parent 77aed93 commit 9d7df1a
Show file tree
Hide file tree
Showing 2 changed files with 64 additions and 0 deletions.
33 changes: 33 additions & 0 deletions api.go
Expand Up @@ -40,6 +40,39 @@ func GetRepositories() (RepositoryResponse, error) {
return response, nil
}

func GetIssues() {
client := defaultGraphQLConnection()
issueRequest := graphql.NewRequest(`
query getIssues($login: String!, $last: Int!){
user(login: $login) {
issues(last: $last states:OPEN orderBy:{
field:UPDATED_AT
direction: ASC
}) {
nodes {
title
resourcePath
url
}
}
}
}
`)

SetupRequest(issueRequest)
issueRequest.Var("last", 10)

ctx := context.Background()

var response IssueResponse
if err := client.Run(ctx, issueRequest, &response); err != nil {
log.Fatal(err)
return
}

IssuePrompter(response)
}

func SetupRequest(req *graphql.Request) {
user, err := ConfigReader()
if err != nil {
Expand Down
31 changes: 31 additions & 0 deletions prompter.go
Expand Up @@ -48,3 +48,34 @@ func RepositoryPrompter(repo RepositoryResponse) {
fmt.Printf("You choose %q\n", repoList[index].Url)
OpenBrowser(repoList[index].Url)
}

func IssuePrompter(issue IssueResponse) {
issueList := issue.User.Issues.Nodes
templates := &promptui.SelectTemplates{
Label: " [ {{ . }} ]",
Active: "\U0001F47F {{ .Title | red }}",
Inactive: " {{ .Title | cyan }}",
Selected: "\U0001F47F {{ .Title | green | red }}",
Details: `
--------- Repo ----------
{{ "Title:" | faint }} {{ .Title }}
{{ "Resource:" | faint }} {{ .ResourcePath }}
`,
}

prompt := promptui.Select{
Label: "Issues",
Items: issueList,
Templates: templates,
}

index, _, err := prompt.Run()

if err != nil {
fmt.Printf("Prompt failed %v\n", err)
return
}

fmt.Printf("Go to issue %q\n", issueList[index].Title)
OpenBrowser(issueList[index].Url)
}

0 comments on commit 9d7df1a

Please sign in to comment.