diff options
| author | syuilo <syuilotan@yahoo.co.jp> | 2019-02-25 04:02:18 +0900 |
|---|---|---|
| committer | syuilo <syuilotan@yahoo.co.jp> | 2019-02-25 04:02:18 +0900 |
| commit | 47d4dcfdf55864f50bb278cd8ba6122be600d159 (patch) | |
| tree | ad482cfc0d1acc5fdac82d33d9a041e303584f3f /src/services/chart | |
| parent | Improve doc (diff) | |
| download | sharkey-47d4dcfdf55864f50bb278cd8ba6122be600d159.tar.gz sharkey-47d4dcfdf55864f50bb278cd8ba6122be600d159.tar.bz2 sharkey-47d4dcfdf55864f50bb278cd8ba6122be600d159.zip | |
Improve doc
Diffstat (limited to 'src/services/chart')
| -rw-r--r-- | src/services/chart/per-user-following.ts | 84 |
1 files changed, 59 insertions, 25 deletions
diff --git a/src/services/chart/per-user-following.ts b/src/services/chart/per-user-following.ts index 9d6d347ef6..8a94a4f155 100644 --- a/src/services/chart/per-user-following.ts +++ b/src/services/chart/per-user-following.ts @@ -2,56 +2,90 @@ import autobind from 'autobind-decorator'; import Chart, { Obj } from './'; import Following from '../../models/following'; import { IUser, isLocalUser } from '../../models/user'; +import { SchemaType } from '../../misc/schema'; -/** - * ユーザーごとのフォローに関するチャート - */ -type PerUserFollowingLog = { - local: { - /** - * フォローしている - */ - followings: { +export const logSchema = { + /** + * フォローしている + */ + followings: { + type: 'object' as 'object', + properties: { /** - * 合計 + * フォローしている合計 */ - total: number; + total: { + type: 'number', + description: 'フォローしている合計', + }, /** * フォローした数 */ - inc: number; + inc: { + type: 'number', + description: 'フォローした数', + }, /** * フォロー解除した数 */ - dec: number; - }; + dec: { + type: 'number', + description: 'フォロー解除した数', + }, + } + }, - /** - * フォローされている - */ - followers: { + /** + * フォローされている + */ + followers: { + type: 'object' as 'object', + properties: { /** - * 合計 + * フォローされている合計 */ - total: number; + total: { + type: 'number', + description: 'フォローされている合計', + }, /** * フォローされた数 */ - inc: number; + inc: { + type: 'number', + description: 'フォローされた数', + }, /** * フォロー解除された数 */ - dec: number; - }; - }; + dec: { + type: 'number', + description: 'フォロー解除された数', + }, + } + }, +}; - remote: PerUserFollowingLog['local']; +export const perUserFollowingLogSchema = { + type: 'object' as 'object', + properties: { + local: { + type: 'object' as 'object', + properties: logSchema + }, + remote: { + type: 'object' as 'object', + properties: logSchema + }, + } }; +type PerUserFollowingLog = SchemaType<typeof perUserFollowingLogSchema>; + class PerUserFollowingChart extends Chart<PerUserFollowingLog> { constructor() { super('perUserFollowing', true); |