Commit 928d71a15ac1e455b0ce433ef97315727579d131
render channel subscriptions
Matt McKegg committed on 2/15/2017, 3:12:21 PMParent: 66eb3aded58d22467d641cb52da1353212e8219a
Files changed
plugs/message/html/render/channel.js | added |
plugs/message/html/render/channel.js | ||
---|---|---|
@@ -1,0 +1,33 @@ | ||
1 … | +var h = require('mutant/h') | |
2 … | +var nest = require('depnest') | |
3 … | +var extend = require('xtend') | |
4 … | + | |
5 … | +exports.needs = nest({ | |
6 … | + 'message.html': { | |
7 … | + decorate: 'reduce', | |
8 … | + layout: 'first' | |
9 … | + } | |
10 … | +}) | |
11 … | + | |
12 … | +exports.gives = nest('message.html.render') | |
13 … | + | |
14 … | +exports.create = function (api) { | |
15 … | + return nest('message.html.render', function renderMessage (msg, opts) { | |
16 … | + if (msg.value.content.type !== 'channel') return | |
17 … | + var element = api.message.html.layout(msg, extend({ | |
18 … | + content: messageContent(msg), | |
19 … | + layout: 'mini' | |
20 … | + }, opts)) | |
21 … | + | |
22 … | + return api.message.html.decorate(element, { msg }) | |
23 … | + }) | |
24 … | + | |
25 … | + function messageContent (msg) { | |
26 … | + var channel = `#${msg.value.content.channel}` | |
27 … | + var subscribed = msg.value.content.subscribed | |
28 … | + return [ | |
29 … | + subscribed ? 'subscribed to ' : 'unsubscribed from ', | |
30 … | + h('a', {href: channel}, channel) | |
31 … | + ] | |
32 … | + } | |
33 … | +} |
Built with git-ssb-web