Tweaked the message UI.

git-svn-id: https://www.unprompted.com/svn/projects/tildefriends/trunk@3749 ed5197a5-7fde-0310-b194-c3ffbd925b24
This commit is contained in:
2022-01-09 21:31:05 +00:00
parent 5f96eb18b2
commit 7f8155613c
2 changed files with 17 additions and 8 deletions

View File

@ -10,6 +10,13 @@ Vue.component('tf-message', {
return undefined;
}
},
content_raw: function() {
try {
return JSON.stringify(JSON.parse(this.message.content), null, 2);
} catch {
return this.message.content;
}
}
},
methods: {
markdown: function(md) {
@ -51,17 +58,16 @@ Vue.component('tf-message', {
</div>
<div class="md-toolbar-section-end">
<md-menu>
<md-button md-menu-trigger class="md-icon-button"><md-icon>more_vert</md-icon></md-button>
<md-menu-content>
<md-menu-item v-if="!showRaw" v-on:click="showRaw = true">View Raw</md-menu-item>
<md-menu-item v-else v-on:click="showRaw = false">View Message</md-menu-item>
<md-menu-item @click="set_reply()">Reply</md-menu-item>
</md-menu-content>
<md-switch v-model="showRaw"></md-switch>
<md-tooltip>Show Raw Message</md-tooltip>
</md-menu>
</div>
</md-app-toolbar>
<md-app-content>
<div v-if="showRaw">{{message.content}}</div>
<div v-if="showRaw">
<h1>{{message.id}}</h1>
<pre style="word-wrap: break-all; white-space: pre-wrap">{{content_raw}}</pre>
</div>
<div v-else>
<div v-if="content_json && content_json.type == 'post'">
<div v-html="this.markdown(content_json.text)"></div>
@ -82,6 +88,9 @@ Vue.component('tf-message', {
{{vote + (votes[message.id][vote].length > 1 ? ' (' + votes[message.id][vote].length + ')' : '')}}
</md-chip>
<md-card-actions>
<md-button class="md-icon-button" @click="set_reply">
<md-icon>reply</md-icon>
</md-button>
<md-menu>
<md-menu-content>
<md-menu-item @click="vote">Like</md-menu-item>