diff --git a/bridge/github/import_query.go b/bridge/github/import_query.go index 264f5c224833f1c8265855003d413082490c8435..a791a88b5ef33540097bedb13b8dea0e851a82ce 100644 --- a/bridge/github/import_query.go +++ b/bridge/github/import_query.go @@ -203,3 +203,20 @@ type loginQuery struct { Login string `graphql:"login"` } `graphql:"viewer"` } + +type issueQuery struct { + Repository struct { + Issues struct { + Nodes []issue + PageInfo pageInfo + } `graphql:"issues(first: $issueFirst, after: $issueAfter, orderBy: {field: CREATED_AT, direction: ASC})"` //, filterBy: {since: $issueSince})"` + } `graphql:"repository(owner: $owner, name: $name)"` +} + +type issue struct { + authorEvent + Title string + Number githubv4.Int + Body githubv4.String + Url githubv4.URI +} diff --git a/bridge/github/iterator.go b/bridge/github/iterator.go index a9f4bd59cb206824048d617673c5668b73dfd614..f6a5fbd50dd8dee698d9523dc7a5403cfbe0723c 100644 --- a/bridge/github/iterator.go +++ b/bridge/github/iterator.go @@ -8,6 +8,29 @@ import ( "github.com/shurcooL/githubv4" ) +type iterator_A struct { + gc *githubv4.Client + since time.Time + ctx context.Context + err error + issueIter issueIter +} + +type issueIter struct { + iterVars + query issueQuery + // issueEditIter []issueEditIter + // timelineIter []timelineIter +} + +type iterVars struct { + index int + capacity int + variables varmap +} + +type varmap map[string]interface{} + type indexer struct{ index int } type issueEditIterator struct {