mirror of
				https://codeberg.org/yeentown/barkey.git
				synced 2025-11-04 07:24:13 +00:00 
			
		
		
		
	Refactor
This commit is contained in:
		
							parent
							
								
									9a6246fd4e
								
							
						
					
					
						commit
						724e812972
					
				
					 10 changed files with 128 additions and 584 deletions
				
			
		| 
						 | 
				
			
			@ -2,6 +2,7 @@ import Vue from 'vue';
 | 
			
		|||
 | 
			
		||||
import analogClock from './analog-clock.vue';
 | 
			
		||||
import menu from './menu.vue';
 | 
			
		||||
import noteHeader from './note-header.vue';
 | 
			
		||||
import signin from './signin.vue';
 | 
			
		||||
import signup from './signup.vue';
 | 
			
		||||
import forkit from './forkit.vue';
 | 
			
		||||
| 
						 | 
				
			
			@ -31,6 +32,7 @@ import welcomeTimeline from './welcome-timeline.vue';
 | 
			
		|||
 | 
			
		||||
Vue.component('mk-analog-clock', analogClock);
 | 
			
		||||
Vue.component('mk-menu', menu);
 | 
			
		||||
Vue.component('mk-note-header', noteHeader);
 | 
			
		||||
Vue.component('mk-signin', signin);
 | 
			
		||||
Vue.component('mk-signup', signup);
 | 
			
		||||
Vue.component('mk-forkit', forkit);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										112
									
								
								src/client/app/common/views/components/note-header.vue
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										112
									
								
								src/client/app/common/views/components/note-header.vue
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,112 @@
 | 
			
		|||
<template>
 | 
			
		||||
<header class="bvonvjxbwzaiskogyhbwgyxvcgserpmu">
 | 
			
		||||
	<mk-avatar class="avatar" :user="note.user" v-if="$store.state.device.postStyle == 'smart'"/>
 | 
			
		||||
	<router-link class="name" :to="note.user | userPage" v-user-preview="note.user.id">{{ note.user | userName }}</router-link>
 | 
			
		||||
	<span class="is-admin" v-if="note.user.isAdmin">admin</span>
 | 
			
		||||
	<span class="is-bot" v-if="note.user.isBot">bot</span>
 | 
			
		||||
	<span class="is-cat" v-if="note.user.isCat">cat</span>
 | 
			
		||||
	<span class="username"><mk-acct :user="note.user"/></span>
 | 
			
		||||
	<div class="info">
 | 
			
		||||
		<span class="app" v-if="note.app">via <b>{{ note.app.name }}</b></span>
 | 
			
		||||
		<span class="mobile" v-if="note.viaMobile">%fa:mobile-alt%</span>
 | 
			
		||||
		<router-link class="created-at" :to="note | notePage">
 | 
			
		||||
			<mk-time :time="note.createdAt"/>
 | 
			
		||||
		</router-link>
 | 
			
		||||
		<span class="visibility" v-if="note.visibility != 'public'">
 | 
			
		||||
			<template v-if="note.visibility == 'home'">%fa:home%</template>
 | 
			
		||||
			<template v-if="note.visibility == 'followers'">%fa:unlock%</template>
 | 
			
		||||
			<template v-if="note.visibility == 'specified'">%fa:envelope%</template>
 | 
			
		||||
			<template v-if="note.visibility == 'private'">%fa:lock%</template>
 | 
			
		||||
		</span>
 | 
			
		||||
	</div>
 | 
			
		||||
</header>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script lang="ts">
 | 
			
		||||
import Vue from 'vue';
 | 
			
		||||
 | 
			
		||||
export default Vue.extend({
 | 
			
		||||
	props: {
 | 
			
		||||
		note: {
 | 
			
		||||
			type: Object,
 | 
			
		||||
			required: true
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
});
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style lang="stylus" scoped>
 | 
			
		||||
@import '~const.styl'
 | 
			
		||||
 | 
			
		||||
root(isDark)
 | 
			
		||||
	display flex
 | 
			
		||||
	align-items baseline
 | 
			
		||||
	white-space nowrap
 | 
			
		||||
 | 
			
		||||
	> .avatar
 | 
			
		||||
		flex-shrink 0
 | 
			
		||||
		margin-right 8px
 | 
			
		||||
		width 20px
 | 
			
		||||
		height 20px
 | 
			
		||||
		border-radius 100%
 | 
			
		||||
 | 
			
		||||
	> .name
 | 
			
		||||
		display block
 | 
			
		||||
		margin 0 .5em 0 0
 | 
			
		||||
		padding 0
 | 
			
		||||
		overflow hidden
 | 
			
		||||
		color isDark ? #fff : #627079
 | 
			
		||||
		font-size 1em
 | 
			
		||||
		font-weight bold
 | 
			
		||||
		text-decoration none
 | 
			
		||||
		text-overflow ellipsis
 | 
			
		||||
 | 
			
		||||
		&:hover
 | 
			
		||||
			text-decoration underline
 | 
			
		||||
 | 
			
		||||
	> .is-admin
 | 
			
		||||
	> .is-bot
 | 
			
		||||
	> .is-cat
 | 
			
		||||
		align-self center
 | 
			
		||||
		margin 0 .5em 0 0
 | 
			
		||||
		padding 1px 6px
 | 
			
		||||
		font-size 12px
 | 
			
		||||
		color isDark ? #758188 : #aaa
 | 
			
		||||
		border solid 1px isDark ? #57616f : #ddd
 | 
			
		||||
		border-radius 3px
 | 
			
		||||
 | 
			
		||||
		&.is-admin
 | 
			
		||||
			border-color isDark ? #d42c41 : #f56a7b
 | 
			
		||||
			color isDark ? #d42c41 : #f56a7b
 | 
			
		||||
 | 
			
		||||
	> .username
 | 
			
		||||
		margin 0 .5em 0 0
 | 
			
		||||
		overflow hidden
 | 
			
		||||
		text-overflow ellipsis
 | 
			
		||||
		color isDark ? #606984 : #ccc
 | 
			
		||||
 | 
			
		||||
	> .info
 | 
			
		||||
		margin-left auto
 | 
			
		||||
		font-size 0.9em
 | 
			
		||||
 | 
			
		||||
		> *
 | 
			
		||||
			color isDark ? #606984 : #c0c0c0
 | 
			
		||||
 | 
			
		||||
		> .mobile
 | 
			
		||||
			margin-right 8px
 | 
			
		||||
 | 
			
		||||
		> .app
 | 
			
		||||
			margin-right 8px
 | 
			
		||||
			padding-right 8px
 | 
			
		||||
			border-right solid 1px isDark ? #1c2023 : #eaeaea
 | 
			
		||||
 | 
			
		||||
		> .visibility
 | 
			
		||||
			margin-left 8px
 | 
			
		||||
 | 
			
		||||
.bvonvjxbwzaiskogyhbwgyxvcgserpmu[data-darkmode]
 | 
			
		||||
	root(true)
 | 
			
		||||
 | 
			
		||||
.bvonvjxbwzaiskogyhbwgyxvcgserpmu:not([data-darkmode])
 | 
			
		||||
	root(false)
 | 
			
		||||
 | 
			
		||||
</style>
 | 
			
		||||
| 
						 | 
				
			
			@ -2,22 +2,7 @@
 | 
			
		|||
<div class="mk-note-preview" :title="title">
 | 
			
		||||
	<mk-avatar class="avatar" :user="note.user"/>
 | 
			
		||||
	<div class="main">
 | 
			
		||||
		<header>
 | 
			
		||||
			<router-link class="name" :to="note.user | userPage" v-user-preview="note.userId">{{ note.user | userName }}</router-link>
 | 
			
		||||
			<span class="username"><mk-acct :user="note.user"/></span>
 | 
			
		||||
			<div class="info">
 | 
			
		||||
				<span class="mobile" v-if="note.viaMobile">%fa:mobile-alt%</span>
 | 
			
		||||
				<router-link class="created-at" :to="note | notePage">
 | 
			
		||||
					<mk-time :time="note.createdAt"/>
 | 
			
		||||
				</router-link>
 | 
			
		||||
				<span class="visibility" v-if="note.visibility != 'public'">
 | 
			
		||||
					<template v-if="note.visibility == 'home'">%fa:home%</template>
 | 
			
		||||
					<template v-if="note.visibility == 'followers'">%fa:unlock%</template>
 | 
			
		||||
					<template v-if="note.visibility == 'specified'">%fa:envelope%</template>
 | 
			
		||||
					<template v-if="note.visibility == 'private'">%fa:lock%</template>
 | 
			
		||||
				</span>
 | 
			
		||||
			</div>
 | 
			
		||||
		</header>
 | 
			
		||||
		<mk-note-header class="header" :note="note"/>
 | 
			
		||||
		<div class="body">
 | 
			
		||||
			<mk-sub-note-content class="text" :note="note"/>
 | 
			
		||||
		</div>
 | 
			
		||||
| 
						 | 
				
			
			@ -56,43 +41,6 @@ root(isDark)
 | 
			
		|||
		flex 1
 | 
			
		||||
		min-width 0
 | 
			
		||||
 | 
			
		||||
		> header
 | 
			
		||||
			display flex
 | 
			
		||||
			align-items baseline
 | 
			
		||||
			white-space nowrap
 | 
			
		||||
 | 
			
		||||
			> .name
 | 
			
		||||
				margin 0 .5em 0 0
 | 
			
		||||
				padding 0
 | 
			
		||||
				overflow hidden
 | 
			
		||||
				color isDark ? #fff : #607073
 | 
			
		||||
				font-size 1em
 | 
			
		||||
				font-weight bold
 | 
			
		||||
				text-decoration none
 | 
			
		||||
				text-overflow ellipsis
 | 
			
		||||
 | 
			
		||||
				&:hover
 | 
			
		||||
					text-decoration underline
 | 
			
		||||
 | 
			
		||||
			> .username
 | 
			
		||||
				margin 0 .5em 0 0
 | 
			
		||||
				overflow hidden
 | 
			
		||||
				text-overflow ellipsis
 | 
			
		||||
				color isDark ? #606984 : #d1d8da
 | 
			
		||||
 | 
			
		||||
			> .info
 | 
			
		||||
				margin-left auto
 | 
			
		||||
				font-size 0.9em
 | 
			
		||||
 | 
			
		||||
				> *
 | 
			
		||||
					color isDark ? #606984 : #b2b8bb
 | 
			
		||||
 | 
			
		||||
				> .mobile
 | 
			
		||||
					margin-right 6px
 | 
			
		||||
 | 
			
		||||
				> .visibility
 | 
			
		||||
					margin-left 6px
 | 
			
		||||
 | 
			
		||||
		> .body
 | 
			
		||||
 | 
			
		||||
			> .text
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,25 +2,7 @@
 | 
			
		|||
<div class="sub" :title="title">
 | 
			
		||||
	<mk-avatar class="avatar" :user="note.user"/>
 | 
			
		||||
	<div class="main">
 | 
			
		||||
		<header>
 | 
			
		||||
			<router-link class="name" :to="note.user | userPage" v-user-preview="note.userId">{{ note.user | userName }}</router-link>
 | 
			
		||||
			<span class="is-admin" v-if="note.user.isAdmin">admin</span>
 | 
			
		||||
			<span class="is-bot" v-if="note.user.isBot">bot</span>
 | 
			
		||||
			<span class="is-cat" v-if="note.user.isCat">cat</span>
 | 
			
		||||
			<span class="username"><mk-acct :user="note.user"/></span>
 | 
			
		||||
			<div class="info">
 | 
			
		||||
				<span class="mobile" v-if="note.viaMobile">%fa:mobile-alt%</span>
 | 
			
		||||
				<router-link class="created-at" :to="note | notePage">
 | 
			
		||||
					<mk-time :time="note.createdAt"/>
 | 
			
		||||
				</router-link>
 | 
			
		||||
				<span class="visibility" v-if="note.visibility != 'public'">
 | 
			
		||||
					<template v-if="note.visibility == 'home'">%fa:home%</template>
 | 
			
		||||
					<template v-if="note.visibility == 'followers'">%fa:unlock%</template>
 | 
			
		||||
					<template v-if="note.visibility == 'specified'">%fa:envelope%</template>
 | 
			
		||||
					<template v-if="note.visibility == 'private'">%fa:lock%</template>
 | 
			
		||||
				</span>
 | 
			
		||||
			</div>
 | 
			
		||||
		</header>
 | 
			
		||||
		<mk-note-header class="header" :note="note"/>
 | 
			
		||||
		<div class="body">
 | 
			
		||||
			<mk-sub-note-content class="text" :note="note"/>
 | 
			
		||||
		</div>
 | 
			
		||||
| 
						 | 
				
			
			@ -62,57 +44,8 @@ root(isDark)
 | 
			
		|||
		flex 1
 | 
			
		||||
		min-width 0
 | 
			
		||||
 | 
			
		||||
		> header
 | 
			
		||||
			display flex
 | 
			
		||||
			align-items baseline
 | 
			
		||||
		> .header
 | 
			
		||||
			margin-bottom 2px
 | 
			
		||||
			white-space nowrap
 | 
			
		||||
 | 
			
		||||
			> .name
 | 
			
		||||
				display block
 | 
			
		||||
				margin 0 .5em 0 0
 | 
			
		||||
				padding 0
 | 
			
		||||
				overflow hidden
 | 
			
		||||
				color isDark ? #fff : #607073
 | 
			
		||||
				font-size 1em
 | 
			
		||||
				font-weight bold
 | 
			
		||||
				text-decoration none
 | 
			
		||||
				text-overflow ellipsis
 | 
			
		||||
 | 
			
		||||
				&:hover
 | 
			
		||||
					text-decoration underline
 | 
			
		||||
 | 
			
		||||
			> .is-admin
 | 
			
		||||
			> .is-bot
 | 
			
		||||
			> .is-cat
 | 
			
		||||
				align-self center
 | 
			
		||||
				margin 0 0.5em 0 0
 | 
			
		||||
				padding 1px 5px
 | 
			
		||||
				font-size 10px
 | 
			
		||||
				color isDark ? #758188 : #aaa
 | 
			
		||||
				border solid 1px isDark ? #57616f : #ddd
 | 
			
		||||
				border-radius 3px
 | 
			
		||||
 | 
			
		||||
				&.is-admin
 | 
			
		||||
					border-color isDark ? #d42c41 : #f56a7b
 | 
			
		||||
					color isDark ? #d42c41 : #f56a7b
 | 
			
		||||
 | 
			
		||||
			> .username
 | 
			
		||||
				margin 0 .5em 0 0
 | 
			
		||||
				color isDark ? #606984 : #d1d8da
 | 
			
		||||
 | 
			
		||||
			> .info
 | 
			
		||||
				margin-left auto
 | 
			
		||||
				font-size 0.9em
 | 
			
		||||
 | 
			
		||||
				> *
 | 
			
		||||
					color isDark ? #606984 : #b2b8bb
 | 
			
		||||
 | 
			
		||||
				> .mobile
 | 
			
		||||
					margin-right 6px
 | 
			
		||||
 | 
			
		||||
				> .visibility
 | 
			
		||||
					margin-left 6px
 | 
			
		||||
 | 
			
		||||
		> .body
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -14,26 +14,7 @@
 | 
			
		|||
	<article>
 | 
			
		||||
		<mk-avatar class="avatar" :user="p.user"/>
 | 
			
		||||
		<div class="main">
 | 
			
		||||
			<header>
 | 
			
		||||
				<router-link class="name" :to="p.user | userPage" v-user-preview="p.user.id">{{ p.user | userName }}</router-link>
 | 
			
		||||
				<span class="is-admin" v-if="p.user.isAdmin">admin</span>
 | 
			
		||||
				<span class="is-bot" v-if="p.user.isBot">bot</span>
 | 
			
		||||
				<span class="is-cat" v-if="p.user.isCat">cat</span>
 | 
			
		||||
				<span class="username"><mk-acct :user="p.user"/></span>
 | 
			
		||||
				<div class="info">
 | 
			
		||||
					<span class="app" v-if="p.app">via <b>{{ p.app.name }}</b></span>
 | 
			
		||||
					<span class="mobile" v-if="p.viaMobile">%fa:mobile-alt%</span>
 | 
			
		||||
					<router-link class="created-at" :to="p | notePage">
 | 
			
		||||
						<mk-time :time="p.createdAt"/>
 | 
			
		||||
					</router-link>
 | 
			
		||||
					<span class="visibility" v-if="p.visibility != 'public'">
 | 
			
		||||
						<template v-if="p.visibility == 'home'">%fa:home%</template>
 | 
			
		||||
						<template v-if="p.visibility == 'followers'">%fa:unlock%</template>
 | 
			
		||||
						<template v-if="p.visibility == 'specified'">%fa:envelope%</template>
 | 
			
		||||
						<template v-if="p.visibility == 'private'">%fa:lock%</template>
 | 
			
		||||
					</span>
 | 
			
		||||
				</div>
 | 
			
		||||
			</header>
 | 
			
		||||
			<mk-note-header class="header" :note="p"/>
 | 
			
		||||
			<div class="body">
 | 
			
		||||
				<p v-if="p.cw != null" class="cw">
 | 
			
		||||
					<span class="text" v-if="p.cw != ''">{{ p.cw }}</span>
 | 
			
		||||
| 
						 | 
				
			
			@ -409,64 +390,8 @@ root(isDark)
 | 
			
		|||
			flex 1
 | 
			
		||||
			min-width 0
 | 
			
		||||
 | 
			
		||||
			> header
 | 
			
		||||
				display flex
 | 
			
		||||
				align-items baseline
 | 
			
		||||
			> .header
 | 
			
		||||
				margin-bottom 4px
 | 
			
		||||
				white-space nowrap
 | 
			
		||||
 | 
			
		||||
				> .name
 | 
			
		||||
					display block
 | 
			
		||||
					margin 0 .5em 0 0
 | 
			
		||||
					padding 0
 | 
			
		||||
					overflow hidden
 | 
			
		||||
					color isDark ? #fff : #627079
 | 
			
		||||
					font-size 1em
 | 
			
		||||
					font-weight bold
 | 
			
		||||
					text-decoration none
 | 
			
		||||
					text-overflow ellipsis
 | 
			
		||||
 | 
			
		||||
					&:hover
 | 
			
		||||
						text-decoration underline
 | 
			
		||||
 | 
			
		||||
				> .is-admin
 | 
			
		||||
				> .is-bot
 | 
			
		||||
				> .is-cat
 | 
			
		||||
					align-self center
 | 
			
		||||
					margin 0 .5em 0 0
 | 
			
		||||
					padding 1px 6px
 | 
			
		||||
					font-size 12px
 | 
			
		||||
					color isDark ? #758188 : #aaa
 | 
			
		||||
					border solid 1px isDark ? #57616f : #ddd
 | 
			
		||||
					border-radius 3px
 | 
			
		||||
 | 
			
		||||
					&.is-admin
 | 
			
		||||
						border-color isDark ? #d42c41 : #f56a7b
 | 
			
		||||
						color isDark ? #d42c41 : #f56a7b
 | 
			
		||||
 | 
			
		||||
				> .username
 | 
			
		||||
					margin 0 .5em 0 0
 | 
			
		||||
					overflow hidden
 | 
			
		||||
					text-overflow ellipsis
 | 
			
		||||
					color isDark ? #606984 : #ccc
 | 
			
		||||
 | 
			
		||||
				> .info
 | 
			
		||||
					margin-left auto
 | 
			
		||||
					font-size 0.9em
 | 
			
		||||
 | 
			
		||||
					> *
 | 
			
		||||
						color isDark ? #606984 : #c0c0c0
 | 
			
		||||
 | 
			
		||||
					> .mobile
 | 
			
		||||
						margin-right 8px
 | 
			
		||||
 | 
			
		||||
					> .app
 | 
			
		||||
						margin-right 8px
 | 
			
		||||
						padding-right 8px
 | 
			
		||||
						border-right solid 1px isDark ? #1c2023 : #eaeaea
 | 
			
		||||
 | 
			
		||||
					> .visibility
 | 
			
		||||
						margin-left 8px
 | 
			
		||||
 | 
			
		||||
			> .body
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,25 +2,7 @@
 | 
			
		|||
<div class="fnlfosztlhtptnongximhlbykxblytcq">
 | 
			
		||||
	<mk-avatar class="avatar" :user="note.user"/>
 | 
			
		||||
	<div class="main">
 | 
			
		||||
		<header>
 | 
			
		||||
			<router-link class="name" :to="note.user | userPage">{{ note.user | userName }}</router-link>
 | 
			
		||||
			<span class="is-admin" v-if="note.user.isAdmin">%i18n:@admin%</span>
 | 
			
		||||
			<span class="is-bot" v-if="note.user.isBot">%i18n:@bot%</span>
 | 
			
		||||
			<span class="is-cat" v-if="note.user.isCat">%i18n:@cat%</span>
 | 
			
		||||
			<span class="username"><mk-acct :user="note.user"/></span>
 | 
			
		||||
			<div class="info">
 | 
			
		||||
				<span class="mobile" v-if="note.viaMobile">%fa:mobile-alt%</span>
 | 
			
		||||
				<router-link class="created-at" :to="note | notePage">
 | 
			
		||||
					<mk-time :time="note.createdAt"/>
 | 
			
		||||
				</router-link>
 | 
			
		||||
				<span class="visibility" v-if="note.visibility != 'public'">
 | 
			
		||||
					<template v-if="note.visibility == 'home'">%fa:home%</template>
 | 
			
		||||
					<template v-if="note.visibility == 'followers'">%fa:unlock%</template>
 | 
			
		||||
					<template v-if="note.visibility == 'specified'">%fa:envelope%</template>
 | 
			
		||||
					<template v-if="note.visibility == 'private'">%fa:lock%</template>
 | 
			
		||||
				</span>
 | 
			
		||||
			</div>
 | 
			
		||||
		</header>
 | 
			
		||||
		<mk-note-header class="header" :note="note"/>
 | 
			
		||||
		<div class="body">
 | 
			
		||||
			<mk-sub-note-content class="text" :note="note"/>
 | 
			
		||||
		</div>
 | 
			
		||||
| 
						 | 
				
			
			@ -72,66 +54,8 @@ root(isDark)
 | 
			
		|||
		flex 1
 | 
			
		||||
		min-width 0
 | 
			
		||||
 | 
			
		||||
		> header
 | 
			
		||||
			display flex
 | 
			
		||||
			align-items baseline
 | 
			
		||||
		> .header
 | 
			
		||||
			margin-bottom 2px
 | 
			
		||||
			white-space nowrap
 | 
			
		||||
 | 
			
		||||
			> .avatar
 | 
			
		||||
				flex-shrink 0
 | 
			
		||||
				margin-right 8px
 | 
			
		||||
				width 18px
 | 
			
		||||
				height 18px
 | 
			
		||||
				border-radius 100%
 | 
			
		||||
 | 
			
		||||
			> .name
 | 
			
		||||
				display block
 | 
			
		||||
				margin 0 0.5em 0 0
 | 
			
		||||
				padding 0
 | 
			
		||||
				overflow hidden
 | 
			
		||||
				color isDark ? #fff : #607073
 | 
			
		||||
				font-size 1em
 | 
			
		||||
				font-weight 700
 | 
			
		||||
				text-align left
 | 
			
		||||
				text-decoration none
 | 
			
		||||
				text-overflow ellipsis
 | 
			
		||||
 | 
			
		||||
				&:hover
 | 
			
		||||
					text-decoration underline
 | 
			
		||||
 | 
			
		||||
			> .is-admin
 | 
			
		||||
			> .is-bot
 | 
			
		||||
			> .is-cat
 | 
			
		||||
				align-self center
 | 
			
		||||
				margin 0 0.5em 0 0
 | 
			
		||||
				padding 1px 5px
 | 
			
		||||
				font-size 0.8em
 | 
			
		||||
				color isDark ? #758188 : #aaa
 | 
			
		||||
				border solid 1px isDark ? #57616f : #ddd
 | 
			
		||||
				border-radius 3px
 | 
			
		||||
 | 
			
		||||
				&.is-admin
 | 
			
		||||
					border-color isDark ? #d42c41 : #f56a7b
 | 
			
		||||
					color isDark ? #d42c41 : #f56a7b
 | 
			
		||||
 | 
			
		||||
			> .username
 | 
			
		||||
				text-align left
 | 
			
		||||
				margin 0
 | 
			
		||||
				color isDark ? #606984 : #d1d8da
 | 
			
		||||
 | 
			
		||||
			> .info
 | 
			
		||||
				margin-left auto
 | 
			
		||||
				font-size 0.9em
 | 
			
		||||
 | 
			
		||||
				> *
 | 
			
		||||
					color isDark ? #606984 : #b2b8bb
 | 
			
		||||
 | 
			
		||||
				> .mobile
 | 
			
		||||
					margin-right 6px
 | 
			
		||||
 | 
			
		||||
				> .visibility
 | 
			
		||||
					margin-left 6px
 | 
			
		||||
 | 
			
		||||
		> .body
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -14,25 +14,7 @@
 | 
			
		|||
	<article>
 | 
			
		||||
		<mk-avatar class="avatar" :user="p.user"/>
 | 
			
		||||
		<div class="main">
 | 
			
		||||
			<header>
 | 
			
		||||
				<router-link class="name" :to="p.user | userPage">{{ p.user | userName }}</router-link>
 | 
			
		||||
				<span class="is-admin" v-if="p.user.isAdmin">admin</span>
 | 
			
		||||
				<span class="is-bot" v-if="p.user.isBot">bot</span>
 | 
			
		||||
				<span class="is-cat" v-if="p.user.isCat">cat</span>
 | 
			
		||||
				<span class="username"><mk-acct :user="p.user"/></span>
 | 
			
		||||
				<div class="info">
 | 
			
		||||
					<span class="mobile" v-if="p.viaMobile">%fa:mobile-alt%</span>
 | 
			
		||||
					<router-link class="created-at" :to="p | notePage">
 | 
			
		||||
						<mk-time :time="p.createdAt"/>
 | 
			
		||||
					</router-link>
 | 
			
		||||
					<span class="visibility" v-if="p.visibility != 'public'">
 | 
			
		||||
						<template v-if="p.visibility == 'home'">%fa:home%</template>
 | 
			
		||||
						<template v-if="p.visibility == 'followers'">%fa:unlock%</template>
 | 
			
		||||
						<template v-if="p.visibility == 'specified'">%fa:envelope%</template>
 | 
			
		||||
						<template v-if="p.visibility == 'private'">%fa:lock%</template>
 | 
			
		||||
					</span>
 | 
			
		||||
				</div>
 | 
			
		||||
			</header>
 | 
			
		||||
			<mk-note-header class="header" :note="p"/>
 | 
			
		||||
			<div class="body">
 | 
			
		||||
				<p v-if="p.cw != null" class="cw">
 | 
			
		||||
					<span class="text" v-if="p.cw != ''">{{ p.cw }}</span>
 | 
			
		||||
| 
						 | 
				
			
			@ -292,62 +274,6 @@ root(isDark)
 | 
			
		|||
			flex 1
 | 
			
		||||
			min-width 0
 | 
			
		||||
 | 
			
		||||
			> header
 | 
			
		||||
				display flex
 | 
			
		||||
				align-items baseline
 | 
			
		||||
				white-space nowrap
 | 
			
		||||
 | 
			
		||||
				> .avatar
 | 
			
		||||
					flex-shrink 0
 | 
			
		||||
					margin-right 8px
 | 
			
		||||
					width 20px
 | 
			
		||||
					height 20px
 | 
			
		||||
					border-radius 100%
 | 
			
		||||
 | 
			
		||||
				> .name
 | 
			
		||||
					display block
 | 
			
		||||
					margin 0 0.5em 0 0
 | 
			
		||||
					padding 0
 | 
			
		||||
					overflow hidden
 | 
			
		||||
					color isDark ? #fff : #627079
 | 
			
		||||
					font-weight bold
 | 
			
		||||
					text-decoration none
 | 
			
		||||
					text-overflow ellipsis
 | 
			
		||||
 | 
			
		||||
				> .is-admin
 | 
			
		||||
				> .is-bot
 | 
			
		||||
				> .is-cat
 | 
			
		||||
					align-self center
 | 
			
		||||
					margin 0 0.5em 0 0
 | 
			
		||||
					padding 1px 6px
 | 
			
		||||
					font-size 0.8em
 | 
			
		||||
					color isDark ? #758188 : #aaa
 | 
			
		||||
					border solid 1px isDark ? #57616f : #ddd
 | 
			
		||||
					border-radius 3px
 | 
			
		||||
 | 
			
		||||
					&.is-admin
 | 
			
		||||
						border-color isDark ? #d42c41 : #f56a7b
 | 
			
		||||
						color isDark ? #d42c41 : #f56a7b
 | 
			
		||||
 | 
			
		||||
				> .username
 | 
			
		||||
					margin 0 0.5em 0 0
 | 
			
		||||
					overflow hidden
 | 
			
		||||
					text-overflow ellipsis
 | 
			
		||||
					color isDark ? #606984 : #ccc
 | 
			
		||||
 | 
			
		||||
				> .info
 | 
			
		||||
					margin-left auto
 | 
			
		||||
					font-size 0.9em
 | 
			
		||||
 | 
			
		||||
					> *
 | 
			
		||||
						color isDark ? #606984 : #c0c0c0
 | 
			
		||||
 | 
			
		||||
					> .mobile
 | 
			
		||||
						margin-right 6px
 | 
			
		||||
 | 
			
		||||
					> .visibility
 | 
			
		||||
						margin-left 6px
 | 
			
		||||
 | 
			
		||||
			> .body
 | 
			
		||||
 | 
			
		||||
				> .cw
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,26 +2,7 @@
 | 
			
		|||
<div class="mk-note-preview" :class="{ smart: $store.state.device.postStyle == 'smart' }">
 | 
			
		||||
	<mk-avatar class="avatar" :user="note.user" v-if="$store.state.device.postStyle != 'smart'"/>
 | 
			
		||||
	<div class="main">
 | 
			
		||||
		<header>
 | 
			
		||||
			<mk-avatar class="avatar" :user="note.user" v-if="$store.state.device.postStyle == 'smart'"/>
 | 
			
		||||
			<router-link class="name" :to="note.user | userPage">{{ note.user | userName }}</router-link>
 | 
			
		||||
			<span class="is-admin" v-if="note.user.isAdmin">%i18n:@admin%</span>
 | 
			
		||||
			<span class="is-bot" v-if="note.user.isBot">%i18n:@bot%</span>
 | 
			
		||||
			<span class="is-cat" v-if="note.user.isCat">%i18n:@cat%</span>
 | 
			
		||||
			<span class="username"><mk-acct :user="note.user"/></span>
 | 
			
		||||
			<div class="info">
 | 
			
		||||
				<span class="mobile" v-if="note.viaMobile">%fa:mobile-alt%</span>
 | 
			
		||||
				<router-link class="created-at" :to="note | notePage">
 | 
			
		||||
					<mk-time :time="note.createdAt"/>
 | 
			
		||||
				</router-link>
 | 
			
		||||
				<span class="visibility" v-if="note.visibility != 'public'">
 | 
			
		||||
					<template v-if="note.visibility == 'home'">%fa:home%</template>
 | 
			
		||||
					<template v-if="note.visibility == 'followers'">%fa:unlock%</template>
 | 
			
		||||
					<template v-if="note.visibility == 'specified'">%fa:envelope%</template>
 | 
			
		||||
					<template v-if="note.visibility == 'private'">%fa:lock%</template>
 | 
			
		||||
				</span>
 | 
			
		||||
			</div>
 | 
			
		||||
		</header>
 | 
			
		||||
		<mk-note-header class="header" :note="note"/>
 | 
			
		||||
		<div class="body">
 | 
			
		||||
			<mk-sub-note-content class="text" :note="note"/>
 | 
			
		||||
		</div>
 | 
			
		||||
| 
						 | 
				
			
			@ -79,64 +60,8 @@ root(isDark)
 | 
			
		|||
		flex 1
 | 
			
		||||
		min-width 0
 | 
			
		||||
 | 
			
		||||
		> header
 | 
			
		||||
			display flex
 | 
			
		||||
			align-items baseline
 | 
			
		||||
		> .header
 | 
			
		||||
			margin-bottom 2px
 | 
			
		||||
			white-space nowrap
 | 
			
		||||
 | 
			
		||||
			> .avatar
 | 
			
		||||
				flex-shrink 0
 | 
			
		||||
				margin-right 8px
 | 
			
		||||
				width 18px
 | 
			
		||||
				height 18px
 | 
			
		||||
				border-radius 100%
 | 
			
		||||
 | 
			
		||||
			> .name
 | 
			
		||||
				display block
 | 
			
		||||
				margin 0 .5em 0 0
 | 
			
		||||
				padding 0
 | 
			
		||||
				overflow hidden
 | 
			
		||||
				color isDark ? #fff : #607073
 | 
			
		||||
				font-size 1em
 | 
			
		||||
				font-weight 700
 | 
			
		||||
				text-align left
 | 
			
		||||
				text-decoration none
 | 
			
		||||
				text-overflow ellipsis
 | 
			
		||||
 | 
			
		||||
			> .is-admin
 | 
			
		||||
			> .is-bot
 | 
			
		||||
			> .is-cat
 | 
			
		||||
				align-self center
 | 
			
		||||
				margin 0 0.5em 0 0
 | 
			
		||||
				padding 1px 6px
 | 
			
		||||
				font-size 0.8em
 | 
			
		||||
				color isDark ? #758188 : #aaa
 | 
			
		||||
				border solid 1px isDark ? #57616f : #ddd
 | 
			
		||||
				border-radius 3px
 | 
			
		||||
 | 
			
		||||
				&.is-admin
 | 
			
		||||
					border-color isDark ? #d42c41 : #f56a7b
 | 
			
		||||
					color isDark ? #d42c41 : #f56a7b
 | 
			
		||||
 | 
			
		||||
			> .username
 | 
			
		||||
				margin 0 .5em 0 0
 | 
			
		||||
				overflow hidden
 | 
			
		||||
				text-overflow ellipsis
 | 
			
		||||
				color isDark ? #606984 : #d1d8da
 | 
			
		||||
 | 
			
		||||
			> .info
 | 
			
		||||
				margin-left auto
 | 
			
		||||
				font-size 0.9em
 | 
			
		||||
 | 
			
		||||
				> *
 | 
			
		||||
					color isDark ? #606984 : #b2b8bb
 | 
			
		||||
 | 
			
		||||
				> .mobile
 | 
			
		||||
					margin-right 6px
 | 
			
		||||
 | 
			
		||||
				> .visibility
 | 
			
		||||
					margin-left 6px
 | 
			
		||||
 | 
			
		||||
		> .body
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,26 +2,7 @@
 | 
			
		|||
<div class="sub" :class="{ smart: $store.state.device.postStyle == 'smart' }">
 | 
			
		||||
	<mk-avatar class="avatar" :user="note.user" v-if="$store.state.device.postStyle != 'smart'"/>
 | 
			
		||||
	<div class="main">
 | 
			
		||||
		<header>
 | 
			
		||||
			<mk-avatar class="avatar" :user="note.user" v-if="$store.state.device.postStyle == 'smart'"/>
 | 
			
		||||
			<router-link class="name" :to="note.user | userPage">{{ note.user | userName }}</router-link>
 | 
			
		||||
			<span class="is-admin" v-if="note.user.isAdmin">%i18n:@admin%</span>
 | 
			
		||||
			<span class="is-bot" v-if="note.user.isBot">%i18n:@bot%</span>
 | 
			
		||||
			<span class="is-cat" v-if="note.user.isCat">%i18n:@cat%</span>
 | 
			
		||||
			<span class="username"><mk-acct :user="note.user"/></span>
 | 
			
		||||
			<div class="info">
 | 
			
		||||
				<span class="mobile" v-if="note.viaMobile">%fa:mobile-alt%</span>
 | 
			
		||||
				<router-link class="created-at" :to="note | notePage">
 | 
			
		||||
					<mk-time :time="note.createdAt"/>
 | 
			
		||||
				</router-link>
 | 
			
		||||
				<span class="visibility" v-if="note.visibility != 'public'">
 | 
			
		||||
					<template v-if="note.visibility == 'home'">%fa:home%</template>
 | 
			
		||||
					<template v-if="note.visibility == 'followers'">%fa:unlock%</template>
 | 
			
		||||
					<template v-if="note.visibility == 'specified'">%fa:envelope%</template>
 | 
			
		||||
					<template v-if="note.visibility == 'private'">%fa:lock%</template>
 | 
			
		||||
				</span>
 | 
			
		||||
			</div>
 | 
			
		||||
		</header>
 | 
			
		||||
		<mk-note-header class="header" :note="note"/>
 | 
			
		||||
		<div class="body">
 | 
			
		||||
			<mk-sub-note-content class="text" :note="note"/>
 | 
			
		||||
		</div>
 | 
			
		||||
| 
						 | 
				
			
			@ -92,66 +73,8 @@ root(isDark)
 | 
			
		|||
		flex 1
 | 
			
		||||
		min-width 0
 | 
			
		||||
 | 
			
		||||
		> header
 | 
			
		||||
			display flex
 | 
			
		||||
			align-items baseline
 | 
			
		||||
		> .header
 | 
			
		||||
			margin-bottom 2px
 | 
			
		||||
			white-space nowrap
 | 
			
		||||
 | 
			
		||||
			> .avatar
 | 
			
		||||
				flex-shrink 0
 | 
			
		||||
				margin-right 8px
 | 
			
		||||
				width 18px
 | 
			
		||||
				height 18px
 | 
			
		||||
				border-radius 100%
 | 
			
		||||
 | 
			
		||||
			> .name
 | 
			
		||||
				display block
 | 
			
		||||
				margin 0 0.5em 0 0
 | 
			
		||||
				padding 0
 | 
			
		||||
				overflow hidden
 | 
			
		||||
				color isDark ? #fff : #607073
 | 
			
		||||
				font-size 1em
 | 
			
		||||
				font-weight 700
 | 
			
		||||
				text-align left
 | 
			
		||||
				text-decoration none
 | 
			
		||||
				text-overflow ellipsis
 | 
			
		||||
 | 
			
		||||
				&:hover
 | 
			
		||||
					text-decoration underline
 | 
			
		||||
 | 
			
		||||
			> .is-admin
 | 
			
		||||
			> .is-bot
 | 
			
		||||
			> .is-cat
 | 
			
		||||
				align-self center
 | 
			
		||||
				margin 0 0.5em 0 0
 | 
			
		||||
				padding 1px 5px
 | 
			
		||||
				font-size 0.8em
 | 
			
		||||
				color isDark ? #758188 : #aaa
 | 
			
		||||
				border solid 1px isDark ? #57616f : #ddd
 | 
			
		||||
				border-radius 3px
 | 
			
		||||
 | 
			
		||||
				&.is-admin
 | 
			
		||||
					border-color isDark ? #d42c41 : #f56a7b
 | 
			
		||||
					color isDark ? #d42c41 : #f56a7b
 | 
			
		||||
 | 
			
		||||
			> .username
 | 
			
		||||
				text-align left
 | 
			
		||||
				margin 0
 | 
			
		||||
				color isDark ? #606984 : #d1d8da
 | 
			
		||||
 | 
			
		||||
			> .info
 | 
			
		||||
				margin-left auto
 | 
			
		||||
				font-size 0.9em
 | 
			
		||||
 | 
			
		||||
				> *
 | 
			
		||||
					color isDark ? #606984 : #b2b8bb
 | 
			
		||||
 | 
			
		||||
				> .mobile
 | 
			
		||||
					margin-right 6px
 | 
			
		||||
 | 
			
		||||
				> .visibility
 | 
			
		||||
					margin-left 6px
 | 
			
		||||
 | 
			
		||||
		> .body
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -14,26 +14,7 @@
 | 
			
		|||
	<article>
 | 
			
		||||
		<mk-avatar class="avatar" :user="p.user" v-if="$store.state.device.postStyle != 'smart'"/>
 | 
			
		||||
		<div class="main">
 | 
			
		||||
			<header>
 | 
			
		||||
				<mk-avatar class="avatar" :user="p.user" v-if="$store.state.device.postStyle == 'smart'"/>
 | 
			
		||||
				<router-link class="name" :to="p.user | userPage">{{ p.user | userName }}</router-link>
 | 
			
		||||
				<span class="is-admin" v-if="p.user.isAdmin">admin</span>
 | 
			
		||||
				<span class="is-bot" v-if="p.user.isBot">bot</span>
 | 
			
		||||
				<span class="is-cat" v-if="p.user.isCat">cat</span>
 | 
			
		||||
				<span class="username"><mk-acct :user="p.user"/></span>
 | 
			
		||||
				<div class="info">
 | 
			
		||||
					<span class="mobile" v-if="p.viaMobile">%fa:mobile-alt%</span>
 | 
			
		||||
					<router-link class="created-at" :to="p | notePage">
 | 
			
		||||
						<mk-time :time="p.createdAt"/>
 | 
			
		||||
					</router-link>
 | 
			
		||||
					<span class="visibility" v-if="p.visibility != 'public'">
 | 
			
		||||
						<template v-if="p.visibility == 'home'">%fa:home%</template>
 | 
			
		||||
						<template v-if="p.visibility == 'followers'">%fa:unlock%</template>
 | 
			
		||||
						<template v-if="p.visibility == 'specified'">%fa:envelope%</template>
 | 
			
		||||
						<template v-if="p.visibility == 'private'">%fa:lock%</template>
 | 
			
		||||
					</span>
 | 
			
		||||
				</div>
 | 
			
		||||
			</header>
 | 
			
		||||
			<mk-note-header class="header" :note="p"/>
 | 
			
		||||
			<div class="body">
 | 
			
		||||
				<p v-if="p.cw != null" class="cw">
 | 
			
		||||
					<span class="text" v-if="p.cw != ''">{{ p.cw }}</span>
 | 
			
		||||
| 
						 | 
				
			
			@ -358,65 +339,10 @@ root(isDark)
 | 
			
		|||
			flex 1
 | 
			
		||||
			min-width 0
 | 
			
		||||
 | 
			
		||||
			> header
 | 
			
		||||
				display flex
 | 
			
		||||
				align-items baseline
 | 
			
		||||
				white-space nowrap
 | 
			
		||||
 | 
			
		||||
			> .header
 | 
			
		||||
				@media (min-width 500px)
 | 
			
		||||
					margin-bottom 2px
 | 
			
		||||
 | 
			
		||||
				> .avatar
 | 
			
		||||
					flex-shrink 0
 | 
			
		||||
					margin-right 8px
 | 
			
		||||
					width 20px
 | 
			
		||||
					height 20px
 | 
			
		||||
					border-radius 100%
 | 
			
		||||
 | 
			
		||||
				> .name
 | 
			
		||||
					display block
 | 
			
		||||
					margin 0 0.5em 0 0
 | 
			
		||||
					padding 0
 | 
			
		||||
					overflow hidden
 | 
			
		||||
					color isDark ? #fff : #627079
 | 
			
		||||
					font-weight bold
 | 
			
		||||
					text-decoration none
 | 
			
		||||
					text-overflow ellipsis
 | 
			
		||||
 | 
			
		||||
				> .is-admin
 | 
			
		||||
				> .is-bot
 | 
			
		||||
				> .is-cat
 | 
			
		||||
					align-self center
 | 
			
		||||
					margin 0 0.5em 0 0
 | 
			
		||||
					padding 1px 6px
 | 
			
		||||
					font-size 0.8em
 | 
			
		||||
					color isDark ? #758188 : #aaa
 | 
			
		||||
					border solid 1px isDark ? #57616f : #ddd
 | 
			
		||||
					border-radius 3px
 | 
			
		||||
 | 
			
		||||
					&.is-admin
 | 
			
		||||
						border-color isDark ? #d42c41 : #f56a7b
 | 
			
		||||
						color isDark ? #d42c41 : #f56a7b
 | 
			
		||||
 | 
			
		||||
				> .username
 | 
			
		||||
					margin 0 0.5em 0 0
 | 
			
		||||
					overflow hidden
 | 
			
		||||
					text-overflow ellipsis
 | 
			
		||||
					color isDark ? #606984 : #ccc
 | 
			
		||||
 | 
			
		||||
				> .info
 | 
			
		||||
					margin-left auto
 | 
			
		||||
					font-size 0.9em
 | 
			
		||||
 | 
			
		||||
					> *
 | 
			
		||||
						color isDark ? #606984 : #c0c0c0
 | 
			
		||||
 | 
			
		||||
					> .mobile
 | 
			
		||||
						margin-right 6px
 | 
			
		||||
 | 
			
		||||
					> .visibility
 | 
			
		||||
						margin-left 6px
 | 
			
		||||
 | 
			
		||||
			> .body
 | 
			
		||||
				@media (min-width 700px)
 | 
			
		||||
					font-size 1.1em
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		
		Reference in a new issue