From aeb060e0126af7b1631812168760aeb39b2df262 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mislav=20Marohni=C4=87?= Date: Wed, 27 Nov 2019 18:25:01 +0100 Subject: [PATCH] Allow `pr list` filtering of assignee + state --- api/queries_pr.go | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/api/queries_pr.go b/api/queries_pr.go index d67c598be..562210134 100644 --- a/api/queries_pr.go +++ b/api/queries_pr.go @@ -466,8 +466,20 @@ func PullRequestList(client *Client, vars map[string]interface{}, limit int) ([] owner := vars["owner"].(string) repo := vars["repo"].(string) assignee := vars["assignee"].(string) - // TODO: support state, base, label filtering - variables["q"] = fmt.Sprintf("repo:%s/%s assignee:%s is:pr is:open sort:created-desc", owner, repo, assignee) + state := "" + states := vars["state"].([]string) + if len(states) == 1 { + switch states[0] { + case "OPEN": + state = " state:open" + case "CLOSED": + state = " state:closed" + case "MERGED": + state = " is:merged" + } + } + // TODO: support base, label filtering + variables["q"] = fmt.Sprintf("repo:%s/%s assignee:%s is:pr%s sort:created-desc", owner, repo, assignee, state) } for {