git ssb

7+

dinoworm ๐Ÿ› / patchcore



Tree: 73ce52087fc4eb16ae6fef1818817c6f2fcd5a52

Files: 73ce52087fc4eb16ae6fef1818817c6f2fcd5a52 / feed / pull / channel.js

801 bytesRaw
1const nest = require('depnest')
2const extend = require('xtend')
3
4exports.gives = nest('feed.pull.channel')
5exports.needs = nest({
6 'sbot.pull.backlinks': 'first'
7})
8
9exports.create = function (api) {
10 return nest('feed.pull.channel', function (channel) {
11 if (typeof channel !== 'string') throw new Error('a channel name be specified')
12
13 return function (opts) {
14 // handle last item passed in as lt
15 var lt = (opts.lt && opts.lt.value)
16 ? opts.lt.value.timestamp
17 : opts.lt
18
19 delete opts.lt
20
21 var filter = {
22 dest: `#${channel}`,
23 value: {
24 timestamp: lt ? {$lt: lt, $gt: 0} : {$gt: 0}
25 }
26 }
27
28 return api.sbot.pull.backlinks(extend(opts, {
29 query: [
30 {$filter: filter}
31 ]
32 }))
33 }
34 })
35}
36

Built with git-ssb-web