git ssb

0+

ev / mvp



Tree: 7230f37363daf6ee98fab654ab98d27397914c28

Files: 7230f37363daf6ee98fab654ab98d27397914c28 / views.js

1592 bytesRaw
1var pull = require('pull-stream')
2var sbot = require('./scuttlebot')
3var hyperscroll = require('hyperscroll')
4var More = require('pull-more')
5var stream = require('hyperloadmore/stream')
6var h = require('hyperscript')
7var render = require('./render')
8var ref = require('ssb-ref')
9var keys = require('./keys')
10
11var logStream = function () {
12 var content = h('div.content')
13 var screen = document.getElementById('screen')
14 screen.appendChild(hyperscroll(content))
15
16 function createStream (opts) {
17 return pull(
18 More(sbot.createLogStream, opts),
19 pull.map(function (msg) {
20 return render(msg)
21 })
22 )
23 }
24
25 pull(
26 createStream({old: false, limit: 100}),
27 stream.top(content)
28 )
29
30 pull(
31 createStream({reverse: true, live: false, limit: 100}),
32 stream.bottom(content)
33 )
34}
35
36var userStream = function (src) {
37 var content = h('div.content')
38 var screen = document.getElementById('screen')
39 screen.appendChild(hyperscroll(content))
40 function createStream (opts) {
41 return pull(
42 More(sbot.userStream, opts, ['value', 'sequence']),
43 pull.map(function (msg) {
44 return render(msg)
45 })
46 )
47 }
48
49 pull(
50 createStream({old: false, limit: 10, id: src}),
51 stream.top(content)
52 )
53
54 pull(
55 createStream({reverse: true, live: false, limit: 10, id: src}),
56 stream.bottom(content)
57 )
58}
59
60function hash () {
61 return window.location.hash.substring(1)
62}
63
64module.exports = function () {
65 var src = hash()
66 if (ref.isFeed(src)) {
67 userStream(src)
68 } else {
69 logStream()
70 }
71}
72

Built with git-ssb-web