Files: cb2a914cb1b67be199e798ca44039444c43341fc / messages / post.js
1248 bytesRaw
1 | var ref = require('ssb-ref') |
2 | var niceAgo = require('nice-ago') |
3 | var htmlEscape = require('html-escape') |
4 | |
5 | var u = require('yap-util') |
6 | var toUrl = u.toUrl |
7 | |
8 | module.exports = u.createRenderer(function render (data, apply) { |
9 | var since = apply.since |
10 | var time = data.value.timestamp || data.timestamp |
11 | return ['div.Message', |
12 | apply.cacheAttrs(toUrl('message', {id: data.key}), data.key, since), |
13 | ['div.MessageSide', |
14 | apply('avatar', {id: data.value.author, name: false, image: true}), |
15 | ['a', { |
16 | href: toUrl('message', {id: data.key}), |
17 | title: new Date(time)+'\n'+data.key |
18 | }, |
19 | ''+niceAgo(Date.now(), time) |
20 | ] |
21 | ], |
22 | ['div.MessageMain', |
23 | ['div.MessageMeta', |
24 | apply('avatar', {id: data.value.author, name: true, image: false}), |
25 | /* |
26 | h('label.type', data.value.content.type), |
27 | */ |
28 | ['label.msgId', data.key], |
29 | |
30 | data.value.content.channel |
31 | ? ['a', {href: toUrl('patch/public', {channel: data.value.content.channel})}, '#'+data.value.content.channel] |
32 | : '', |
33 | |
34 | ['a', {href: toUrl('patch/thread', {id: data.value.content.root || data.key})}, 'Thread'] |
35 | |
36 | ], |
37 | ['div.MessageContent', u.markdown(data.value.content)] |
38 | ] |
39 | ] |
40 | }) |
41 |
Built with git-ssb-web