From 271dd81d9ee86b1c5499ccf5061f3bed35a268c1 Mon Sep 17 00:00:00 2001 From: shu Date: Fri, 31 May 2019 11:03:25 +0200 Subject: [PATCH] Use bus and constants icons --- src/components/LocalBusMixin.ts | 14 ++++ src/services/mastodon/Account.vue | 8 +- src/services/mastodon/BusMixin.ts | 13 +++ src/services/mastodon/Client.vue | 61 ++++++++++---- src/services/mastodon/Icons.ts | 25 ++++++ src/services/mastodon/Mastodon.vue | 5 +- src/services/mastodon/Notification.vue | 39 ++++----- src/services/mastodon/Status.vue | 107 ++++++++++++++----------- src/services/mastodon/StatusMeta.vue | 23 ++++++ src/services/mastodon/Types.ts | 11 ++- 10 files changed, 211 insertions(+), 95 deletions(-) create mode 100644 src/components/LocalBusMixin.ts create mode 100644 src/services/mastodon/BusMixin.ts create mode 100644 src/services/mastodon/Icons.ts create mode 100644 src/services/mastodon/StatusMeta.vue diff --git a/src/components/LocalBusMixin.ts b/src/components/LocalBusMixin.ts new file mode 100644 index 0000000..2673695 --- /dev/null +++ b/src/components/LocalBusMixin.ts @@ -0,0 +1,14 @@ +import Vue from 'vue' +import { Component, Prop } from 'vue-property-decorator' + +export interface IEmit { + $emit: (name: string, arg: any) => void +} + +@Component +export default class LocalBusMixin extends Vue { + + @Prop(Object) + readonly bus!: B + +} \ No newline at end of file diff --git a/src/services/mastodon/Account.vue b/src/services/mastodon/Account.vue index fcd31a7..7d4e347 100644 --- a/src/services/mastodon/Account.vue +++ b/src/services/mastodon/Account.vue @@ -8,16 +8,20 @@ a.account(target="_blank" :href="account.url") diff --git a/src/services/mastodon/Status.vue b/src/services/mastodon/Status.vue index 25c2818..ccf03d7 100644 --- a/src/services/mastodon/Status.vue +++ b/src/services/mastodon/Status.vue @@ -1,8 +1,8 @@ diff --git a/src/services/mastodon/Types.ts b/src/services/mastodon/Types.ts index f1db099..316bafb 100644 --- a/src/services/mastodon/Types.ts +++ b/src/services/mastodon/Types.ts @@ -11,13 +11,17 @@ export interface Account { export type TimelineType = 'home' | 'local' | 'public' -export interface Options { +export interface BusOptions { + showMedia: boolean + showCounts: boolean +} + +export interface Options extends BusOptions { timeout: number reconnect: boolean buffer: number reblog: boolean reply: boolean - showMedia: boolean timeline: TimelineType } @@ -99,10 +103,11 @@ export interface Context { descendants: Status[] } +export type NotificationType = 'follow' | 'mention' | 'reblog' | 'favourite' export interface Notification { id: number account: Account - type: string + type: NotificationType created_at: string status?: Status }