UNPKG

1.35 kBJavaScriptView Raw
1var pull = require('pull-stream')
2var paramap = require('pull-paramap')
3var u = require('./util')
4var getAbout = require('ssb-avatar')
5var Issues = require('ssb-issues')
6
7module.exports = function (argv) {
8 process.stderr.write('Loading issues...\r')
9 var id = u.repoId(u.getRemoteUrl(argv._[0])) || u.getDefaultRemote()
10 if (!id)
11 err(1, 'unable to find git-ssb repo')
12
13 var open = u.issueStateBool(argv)
14
15 u.getSbot(argv, function (err, sbot) {
16 if (err) throw err
17 sbot.whoami(function (err, feed) {
18 if (err) throw err
19 var issues = Issues.init(sbot)
20 pull(
21 issues.list({
22 project: id,
23 open: open
24 }),
25 paramap(function (issue, cb) {
26 getAbout(sbot, feed.id, issue.author, function (err, authorAbout) {
27 issue.authorName = authorAbout.name
28 cb(err, issue)
29 })
30 // TODO: show issue petnames?
31 }, 8),
32 pull.map(function (issue) {
33 return issue.id + ' ' +
34 '@' + issue.authorName + ' ' +
35 (open == null ? issue.open ? 'open: ' : 'closed: ' : '') +
36 u.formatTitle(issue.text, 60)
37 }),
38 pull.drain(function (line) {
39 console.log(line)
40 }, function (err) {
41 if (err) throw err
42 process.exit(0)
43 })
44 )
45 })
46 })
47}
48