yandere_fe/src/components/timeline/timeline.vue

81 lines
2.6 KiB
Vue
Raw Normal View History

2016-10-26 10:03:55 -07:00
<template>
2017-08-21 10:25:01 -07:00
<div class="timeline panel panel-default" v-if="viewing == 'statuses'">
<div class="panel-heading timeline-heading">
<div class="title">
{{title}}
2016-10-28 06:40:13 -07:00
</div>
<div @click.prevent class="loadmore-error alert error" v-if="timelineError">
2017-11-07 06:14:37 -08:00
{{$t('timeline.error_fetching')}}
</div>
<button @click.prevent="showNewStatuses" class="loadmore-button" v-if="timeline.newStatusCount > 0 && !timelineError">
{{$t('timeline.show_new')}}{{newStatusCountStr}}
</button>
<div @click.prevent class="loadmore-text" v-if="!timeline.newStatusCount > 0 && !timelineError">
2017-11-07 06:14:37 -08:00
{{$t('timeline.up_to_date')}}
</div>
</div>
<div class="panel-body">
<div class="timeline">
<status-or-conversation v-for="status in timeline.visibleStatuses" :key="status.id" v-bind:statusoid="status" class="status-fadein"></status-or-conversation>
2016-11-06 08:44:05 -08:00
</div>
</div>
<div class="panel-footer">
<a href="#" v-on:click.prevent='fetchOlderStatuses()' v-if="!timeline.loading">
<div class="new-status-notification text-center panel-footer">{{$t('timeline.load_older')}}</div>
</a>
<div class="new-status-notification text-center panel-footer" v-else>...</div>
</div>
2016-10-26 10:03:55 -07:00
</div>
2017-08-21 10:25:01 -07:00
<div class="timeline panel panel-default" v-else-if="viewing == 'followers'">
<div class="panel-heading timeline-heading">
2017-08-21 10:25:01 -07:00
<div class="title">
2017-11-07 06:14:37 -08:00
{{$t('user_card.followers')}}
2017-08-21 10:25:01 -07:00
</div>
</div>
<div class="panel-body">
2017-08-21 10:25:01 -07:00
<div class="timeline">
2018-02-04 07:26:46 -08:00
<user-card v-for="follower in followers" :key="follower.id" :user="follower" :showFollows="false"></user-card>
2017-08-21 10:25:01 -07:00
</div>
</div>
</div>
<div class="timeline panel panel-default" v-else-if="viewing == 'friends'">
<div class="panel-heading timeline-heading">
2017-08-21 10:25:01 -07:00
<div class="title">
2017-11-07 06:14:37 -08:00
{{$t('user_card.followees')}}
2017-08-21 10:25:01 -07:00
</div>
</div>
<div class="panel-body">
2017-08-21 10:25:01 -07:00
<div class="timeline">
2018-02-04 07:26:46 -08:00
<user-card v-for="friend in friends" :key="friend.id" :user="friend" :showFollows="true"></user-card>
2017-08-21 10:25:01 -07:00
</div>
</div>
</div>
2016-10-26 10:03:55 -07:00
</template>
<script src="./timeline.js"></script>
<style lang="scss">
@import '../../_variables.scss';
.timeline {
2018-04-07 09:30:27 -07:00
.loadmore-text {
opacity: 0.8;
2018-04-07 09:30:27 -07:00
background-color: transparent;
color: $fallback--faint;
2018-10-07 09:59:22 -07:00
color: var(--panelFaint, $fallback--faint);
}
}
.new-status-notification {
2018-04-07 09:30:27 -07:00
position:relative;
margin-top: -1px;
font-size: 1.1em;
border-width: 1px 0 0 0;
border-style: solid;
border-color: var(--border, $fallback--border);
padding: 10px;
z-index: 1;
2018-10-07 09:59:22 -07:00
background-color: $fallback--fg;
2018-11-21 07:22:05 -08:00
background-color: var(--panel, $fallback--fg);
2018-04-07 09:30:27 -07:00
}
</style>