Commit aeffed8b04f94878e4481ca09cd5359940c55102
feed.pull.rollup: use pull.unique instead of custom code
Matt McKegg committed on 6/21/2017, 12:33:57 AMParent: 31f46fbae8f4e0e6a228ab89d9304da16ad34b03
Files changed
feed/pull/rollup.js | changed |
feed/pull/rollup.js | |||
---|---|---|---|
@@ -17,32 +17,18 @@ | |||
17 | 17 … | ||
18 | 18 … | exports.create = function (api) { | |
19 | 19 … | return nest('feed.pull.rollup', function (rootFilter) { | |
20 | 20 … | return pull( | |
21 | - Roots(), | ||
21 … | + pull.map(msg => api.message.sync.root(msg) || msg.key), | ||
22 … | + pull.unique(), | ||
22 | 23 … | Lookup(), | |
23 | 24 … | pull.filter(msg => msg && msg.value && !api.message.sync.root(msg)), | |
24 | 25 … | pull.filter(rootFilter || (() => true)), | |
25 | 26 … | AddReplies() | |
26 | 27 … | ) | |
27 | 28 … | }) | |
28 | 29 … | ||
29 | 30 … | // scoped | |
30 | - | ||
31 | - function Roots () { | ||
32 | - var alreadyEmitted = new Set() | ||
33 | - return pull( | ||
34 | - pull.map((msg) => { | ||
35 | - var root = api.message.sync.root(msg) || msg.key | ||
36 | - if (!alreadyEmitted.has(root)) { | ||
37 | - alreadyEmitted.add(root) | ||
38 | - return root | ||
39 | - } | ||
40 | - }), | ||
41 | - pull.filter() | ||
42 | - ) | ||
43 | - } | ||
44 | - | ||
45 | 31 … | function Lookup () { | |
46 | 32 … | return pull.asyncMap((key, cb) => { | |
47 | 33 … | api.sbot.async.get(key, (_, value) => { | |
48 | 34 … | if (typeof value.content === 'string') { |
Built with git-ssb-web