From 931bdc6aace5e7aa71ffdfb470e208ead78a2a53 Mon Sep 17 00:00:00 2001 From: syuilo Date: Fri, 2 Nov 2018 03:32:24 +0900 Subject: Refactoring, Clean up and bug fixes --- src/server/api/endpoints/i/update.ts | 70 ++++++++++++++++++++++-------------- 1 file changed, 43 insertions(+), 27 deletions(-) (limited to 'src/server/api/endpoints/i/update.ts') diff --git a/src/server/api/endpoints/i/update.ts b/src/server/api/endpoints/i/update.ts index 04f132c551..93d4448092 100644 --- a/src/server/api/endpoints/i/update.ts +++ b/src/server/api/endpoints/i/update.ts @@ -1,4 +1,4 @@ -import $ from 'cafy'; import ID from '../../../../misc/cafy-id'; +import $ from 'cafy'; import ID, { transform } from '../../../../misc/cafy-id'; import User, { isValidName, isValidDescription, isValidLocation, isValidBirthday, pack, ILocalUser } from '../../../../models/user'; import { publishMainStream } from '../../../../stream'; import DriveFile from '../../../../models/drive-file'; @@ -19,83 +19,99 @@ export const meta = { kind: 'account-write', params: { - name: $.str.optional.nullable.pipe(isValidName).note({ + name: { + validator: $.str.optional.nullable.pipe(isValidName), desc: { 'ja-JP': '名前(ハンドルネームやニックネーム)' } - }), + }, - description: $.str.optional.nullable.pipe(isValidDescription).note({ + description: { + validator: $.str.optional.nullable.pipe(isValidDescription), desc: { 'ja-JP': 'アカウントの説明や自己紹介' } - }), + }, - location: $.str.optional.nullable.pipe(isValidLocation).note({ + location: { + validator: $.str.optional.nullable.pipe(isValidLocation), desc: { 'ja-JP': '住んでいる地域、所在' } - }), + }, - birthday: $.str.optional.nullable.pipe(isValidBirthday).note({ + birthday: { + validator: $.str.optional.nullable.pipe(isValidBirthday), desc: { 'ja-JP': '誕生日 (YYYY-MM-DD形式)' } - }), + }, - avatarId: $.type(ID).optional.nullable.note({ + avatarId: { + validator: $.type(ID).optional.nullable, + transform: transform, desc: { 'ja-JP': 'アイコンに設定する画像のドライブファイルID' } - }), + }, - bannerId: $.type(ID).optional.nullable.note({ + bannerId: { + validator: $.type(ID).optional.nullable, + transform: transform, desc: { 'ja-JP': 'バナーに設定する画像のドライブファイルID' } - }), + }, - wallpaperId: $.type(ID).optional.nullable.note({ + wallpaperId: { + validator: $.type(ID).optional.nullable, + transform: transform, desc: { 'ja-JP': '壁紙に設定する画像のドライブファイルID' } - }), + }, - isLocked: $.bool.optional.note({ + isLocked: { + validator: $.bool.optional, desc: { 'ja-JP': '鍵アカウントか否か' } - }), + }, - carefulBot: $.bool.optional.note({ + carefulBot: { + validator: $.bool.optional, desc: { 'ja-JP': 'Botからのフォローを承認制にするか' } - }), + }, - isBot: $.bool.optional.note({ + isBot: { + validator: $.bool.optional, desc: { 'ja-JP': 'Botか否か' } - }), + }, - isCat: $.bool.optional.note({ + isCat: { + validator: $.bool.optional, desc: { 'ja-JP': '猫か否か' } - }), + }, - autoWatch: $.bool.optional.note({ + autoWatch: { + validator: $.bool.optional, desc: { 'ja-JP': '投稿の自動ウォッチをするか否か' } - }), + }, - alwaysMarkNsfw: $.bool.optional.note({ + alwaysMarkNsfw: { + validator: $.bool.optional, desc: { 'ja-JP': 'アップロードするメディアをデフォルトで「閲覧注意」として設定するか' } - }), + }, } }; -- cgit v1.2.3-freya