misskey/src/client/app/desktop/views/pages/deck/deck.note-column.vue

75 lines
1.4 KiB
Vue
Raw Normal View History

<template>
<x-column>
<span slot="header">
<fa :icon="['far', 'comment-alt']"/><span>{{ title }}</span>
</span>
<div class="rvtscbadixhhbsczoorqoaygovdeecsx" v-if="note">
2018-10-21 00:18:01 +09:00
<div class="is-remote" v-if="note.user.host != null">
<details>
<summary><fa icon="exclamation-triangle"/> %i18n:common.is-remote-post%</summary>
2018-10-21 00:18:01 +09:00
<a :href="note.url || note.uri" target="_blank">%i18n:common.view-on-remote%</a>
</details>
</div>
<x-note :note="note" :detail="true" :mini="true"/>
</div>
</x-column>
</template>
<script lang="ts">
import Vue from 'vue';
import XColumn from './deck.column.vue';
import XNotes from './deck.notes.vue';
import XNote from '../../components/note.vue';
export default Vue.extend({
components: {
XColumn,
XNotes,
XNote
},
props: {
noteId: {
type: String,
required: true
}
},
data() {
return {
note: null,
fetching: true
};
},
computed: {
title(): string {
return this.note ? Vue.filter('userName')(this.note.user) : '';
}
},
created() {
(this as any).api('notes/show', { noteId: this.noteId }).then(note => {
this.note = note;
this.fetching = false;
});
}
});
</script>
<style lang="stylus" scoped>
.rvtscbadixhhbsczoorqoaygovdeecsx
> .is-remote
padding 8px 16px
font-size 12px
&.is-remote
color var(--remoteInfoFg)
background var(--remoteInfoBg)
> a
font-weight bold
</style>