Commit ae7c8f32a4d51050bd9b6b9d07764f2b81665223
refactor: support git-ssb-index
noffle committed on 5/20/2018, 5:38:34 PMParent: 9c3452530e296365dce5b439655e7ae70f4d1f44
Files changed
index.js | changed |
lib/users.js | changed |
index.js | ||
---|---|---|
@@ -587,12 +587,25 @@ | ||
587 | 587 … | var opts = { |
588 | 588 … | reverse: !query.forwards, |
589 | 589 … | lt: query.lt && +query.lt || Date.now(), |
590 | 590 … | gt: query.gt ? +query.gt : -Infinity, |
591 … | + values: true, | |
591 | 592 … | id: feedId |
592 | 593 … | } |
594 … | + | |
595 … | + // use git index, if present | |
596 … | + var source | |
597 … | + if (this.ssb.git) { | |
598 … | + source = pull( | |
599 … | + feedId ? this.ssb.git.author(opts) : this.ssb.git.read(opts), | |
600 … | + pull.map(function (msg) { return msg.value }), | |
601 … | + ) | |
602 … | + } else { | |
603 … | + source = feedId ? this.ssb.createUserStream(opts) : this.ssb.createFeedStream(opts) | |
604 … | + } | |
605 … | + | |
593 | 606 … | return pull( |
594 | - feedId ? this.ssb.createUserStream(opts) : this.ssb.createFeedStream(opts), | |
607 … | + source, | |
595 | 608 … | u.decryptMessages(this.ssb), |
596 | 609 … | u.readableMessages(), |
597 | 610 … | pull.filter(function (msg) { |
598 | 611 … | var c = msg.value.content |
lib/users.js | ||
---|---|---|
@@ -60,22 +60,41 @@ | ||
60 | 60 … | |
61 | 61 … | U.serveUserRepos = function (req, feedId) { |
62 | 62 … | var self = this |
63 | 63 … | var title = req._t('UsersRepos', {name: '%{name}'}) |
64 | - return self.renderUserPage(req, feedId, 'repos', title, pull( | |
65 | - cat([ | |
66 | - self.web.ssb.messagesByType({ | |
67 | - type: 'git-update', | |
68 | - reverse: true | |
64 … | + | |
65 … | + // use git index, if present | |
66 … | + var source | |
67 … | + if (self.web.ssb.git) { | |
68 … | + source = pull( | |
69 … | + self.web.ssb.git.author({ | |
70 … | + lt: '9999999999999', | |
71 … | + values: true, | |
72 … | + reverse: true, | |
73 … | + id: feedId | |
69 | 74 … | }), |
70 | - self.web.ssb.messagesByType({ | |
71 | - type: 'git-repo', | |
72 | - reverse: true | |
75 … | + pull.map(function (msg) { return msg.value }), | |
76 … | + ) | |
77 … | + } else { | |
78 … | + source = pull( | |
79 … | + cat([ | |
80 … | + self.web.ssb.messagesByType({ | |
81 … | + type: 'git-update', | |
82 … | + reverse: true | |
83 … | + }), | |
84 … | + self.web.ssb.messagesByType({ | |
85 … | + type: 'git-repo', | |
86 … | + reverse: true | |
87 … | + }) | |
88 … | + ]), | |
89 … | + pull.filter(function (msg) { | |
90 … | + return msg.value.author == feedId | |
73 | 91 … | }) |
74 | - ]), | |
75 | - pull.filter(function (msg) { | |
76 | - return msg.value.author == feedId | |
77 | - }), | |
92 … | + ) | |
93 … | + } | |
94 … | + | |
95 … | + return self.renderUserPage(req, feedId, 'repos', title, pull( | |
96 … | + source, | |
78 | 97 … | pull.unique(function (msg) { |
79 | 98 … | return msg.value.content.repo || msg.key |
80 | 99 … | }), |
81 | 100 … | paramap(function (msg, cb) { |
Built with git-ssb-web