aboutsummaryrefslogtreecommitdiff
path: root/src/components/timeline/timeline.vue
diff options
context:
space:
mode:
authorHakaba Hitoyo <example@example.com>2018-04-22 00:48:06 +0900
committerHakaba Hitoyo <example@example.com>2018-04-22 00:48:06 +0900
commit033170212f59ee2e0757fcc0264f64a15e638f64 (patch)
treebc592c1d90070e2d6b8854556bdc2f710b670fae /src/components/timeline/timeline.vue
parentef67bd693e9ee0cb42b4ebd0b10f68e63ba04750 (diff)
parentb6eb1b1d98c839f5340edd3d3c4764952f2cb189 (diff)
merge
Diffstat (limited to 'src/components/timeline/timeline.vue')
-rw-r--r--src/components/timeline/timeline.vue132
1 files changed, 76 insertions, 56 deletions
diff --git a/src/components/timeline/timeline.vue b/src/components/timeline/timeline.vue
index d6ecfd2f..c4e0fbce 100644
--- a/src/components/timeline/timeline.vue
+++ b/src/components/timeline/timeline.vue
@@ -1,48 +1,50 @@
<template>
<div class="timeline panel panel-default" v-if="viewing == 'statuses'">
- <div class="panel-heading timeline-heading base02-background base04">
+ <div class="panel-heading timeline-heading">
<div class="title">
{{title}}
</div>
- <button @click.prevent="showNewStatuses" class="base05 base02-background loadmore-button" v-if="timeline.newStatusCount > 0 && !timelineError">
+ <button @click.prevent="showNewStatuses" class="loadmore-button" v-if="timeline.newStatusCount > 0 && !timelineError">
{{$t('timeline.show_new')}}{{newStatusCountStr}}
</button>
- <div @click.prevent class="base06 error loadmore-text" v-if="timelineError">
+ <div @click.prevent class="loadmore-error alert error" v-if="timelineError">
{{$t('timeline.error_fetching')}}
</div>
- <div @click.prevent class="base04 base02-background loadmore-text" v-if="!timeline.newStatusCount > 0 && !timelineError">
+ <div @click.prevent class="loadmore-text" v-if="!timeline.newStatusCount > 0 && !timelineError">
{{$t('timeline.up_to_date')}}
</div>
</div>
- <div class="panel-body base01-background">
+ <div class="panel-body">
<div class="timeline">
- <status-or-conversation v-for="status in timeline.visibleStatuses" :key="status.id" v-bind:statusoid="status"></status-or-conversation>
- <a href="#" v-on:click.prevent='fetchOlderStatuses()' v-if="!timeline.loading">
- <div class="base02-background base03-border new-status-notification text-center">{{$t('timeline.load_older')}}</div>
- </a>
- <div class="base02-background base03-border new-status-notification text-center" v-else>...</div>
+ <status-or-conversation v-for="status in timeline.visibleStatuses" :key="status.id" v-bind:statusoid="status" class="status-fadein"></status-or-conversation>
</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>
</div>
<div class="timeline panel panel-default" v-else-if="viewing == 'followers'">
- <div class="panel-heading timeline-heading base02-background base04">
+ <div class="panel-heading timeline-heading">
<div class="title">
{{$t('user_card.followers')}}
</div>
</div>
- <div class="panel-body base01-background">
+ <div class="panel-body">
<div class="timeline">
<user-card v-for="follower in followers" :key="follower.id" :user="follower" :showFollows="false"></user-card>
</div>
</div>
</div>
<div class="timeline panel panel-default" v-else-if="viewing == 'friends'">
- <div class="panel-heading timeline-heading base02-background base04">
+ <div class="panel-heading timeline-heading">
<div class="title">
{{$t('user_card.followees')}}
</div>
</div>
- <div class="panel-body base01-background">
+ <div class="panel-body">
<div class="timeline">
<user-card v-for="friend in friends" :key="friend.id" :user="friend" :showFollows="true"></user-card>
</div>
@@ -52,51 +54,69 @@
<script src="./timeline.js"></script>
<style lang="scss">
+@import '../../_variables.scss';
+
+.timeline {
+ .timeline-heading {
+ position: relative;
+ display: flex;
+ }
+
+ .title {
+ white-space: nowrap;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ max-width: 70%;
+ }
+
+ .loadmore-button {
+ position: absolute;
+ right: 0.6em;
+ font-size: 14px;
- .timeline {
- .timeline-heading {
- position: relative;
- display: flex;
- }
- .title {
- white-space: nowrap;
- overflow: hidden;
- text-overflow: ellipsis;
- max-width: 70%;
- }
- .loadmore-button {
- position: absolute;
- right: 0.6em;
- font-size: 14px;
+ min-width: 6em;
+ height: 1.8em;
+ line-height: 100%;
+ }
- min-width: 6em;
- height: 1.8em;
- line-height: 100%;
- }
- .loadmore-text {
- position: absolute;
- right: 0.6em;
- font-size: 14px;
- min-width: 6em;
- border-radius: 5px;
- font-family: sans-serif;
- text-align: center;
- padding: 0 0.5em 0 0.5em;
- opacity: 0.8;
- }
- .error {
- background-color: rgba(255, 48, 16, 0.65);
- }
+ .loadmore-text {
+ position: absolute;
+ right: 0.6em;
+ font-size: 14px;
+ min-width: 6em;
+ font-family: sans-serif;
+ text-align: center;
+ padding: 0 0.5em 0 0.5em;
+ opacity: 0.8;
+ background-color: transparent;
+ color: $fallback--faint;
+ color: var(--faint, $fallback--faint);
}
- .new-status-notification {
- position:relative;
- margin-top: -1px;
- font-size: 1.1em;
- border-width: 1px 0 0 0;
- border-style: solid;
- border-radius: 0 0 10px 10px;
- padding: 10px;
- z-index: 1;
+ .loadmore-error {
+ position: absolute;
+ right: 0.6em;
+ font-size: 14px;
+ min-width: 6em;
+ font-family: sans-serif;
+ text-align: center;
+ padding: 0 0.25em 0 0.25em;
+ margin: 0;
+ color: $fallback--fg;
+ color: var(--fg, $fallback--fg);
}
+}
+
+.new-status-notification {
+ 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;
+ background-color: $fallback--btn;
+ background-color: var(--btn, $fallback--btn);
+}
</style>