Newer
Older
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
<template>
<div>
<slot></slot>
<p>
<i class="clock outline icon"></i><human-date :date="object.creation_date" />
<i class="user icon"></i>{{ object.actor }}
<template v-if="object.is_active">
<i class="play icon"></i>
<translate>Enabled</translate>
</template>
<template v-if="!object.is_active">
<i class="pause icon"></i>
<translate>Paused</translate>
</template>
</p>
<div>
<p><strong><translate>Rule</translate></strong></p>
<p v-if="object.block_all">
<i class="ban icon"></i>
<translate>Block everything</translate>
</p>
<div v-else class="ui list">
<div class="ui item" v-if="object.silence_activity">
<i class="feed icon"></i>
<div class="content"><translate>Silence activity</translate></div>
</div>
<div class="ui item" v-if="object.silence_notifications">
<i class="bell icon"></i>
<div class="content"><translate>Silence notifications</translate></div>
</div>
<div class="ui item" v-if="object.reject_media">
<i class="file icon"></i>
<div class="content"><translate>Reject media</translate></div>
</div>
</div>
</div>
<div v-if="markdown && object.summary">
<div class="ui hidden divider"></div>
<p><strong><translate>Reason</translate></strong></p>
<div v-html="markdown.makeHtml(object.summary)"></div>
</div>
<div class="ui hidden divider"></div>
<button @click="$emit('update')" class="ui right floated labeled icon button">
<i class="edit icon"></i>
<translate>Update</translate>
</button>
</div>
</template>
<script>
export default {
props: {
object: {type: Object, default: null},
},
data () {
return {
markdown: null
}
},
created () {
let self = this
import('showdown').then(module => {
self.markdown = new module.default.Converter({simplifiedAutoLink: true, openLinksInNewWindow: true})
})
}
}
</script>
<style scoped>
</style>