1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
|
async function register ({ registerHook, registerSetting, settingsManager, storageManager, peertubeHelpers }) {
registerHook({
target: 'filter:feed.podcast.rss.create-custom-xmlns.result',
handler: (result, params) => {
return result.concat([
{
name: "biz",
value: "https://example.com/biz-xmlns",
},
])
}
})
registerHook({
target: 'filter:feed.podcast.channel.create-custom-tags.result',
handler: (result, params) => {
const { videoChannel } = params
return result.concat([
{
name: "fooTag",
attributes: { "bar": "baz" },
value: "42",
},
{
name: "biz:videoChannel",
attributes: { "name": videoChannel.name, "id": videoChannel.id },
},
{
name: "biz:buzzItem",
value: [
{
name: "nestedTag",
value: "example nested tag",
},
],
},
])
}
})
registerHook({
target: 'filter:feed.podcast.video.create-custom-tags.result',
handler: (result, params) => {
const { video, liveItem } = params
return result.concat([
{
name: "fizzTag",
attributes: { "bar": "baz" },
value: "21",
},
{
name: "biz:video",
attributes: { "name": video.name, "id": video.id, "isLive": liveItem },
},
{
name: "biz:buzz",
value: [
{
name: "nestedTag",
value: "example nested tag",
},
],
}
])
}
})
}
async function unregister () {
return
}
module.exports = {
register,
unregister
}
// ############################################################################
function addToCount (obj) {
return Object.assign({}, obj, { count: obj.count + 1 })
}
|