refactor: APIエンドポイントファイルの定義を良い感じにする (#8154)
* Fix API Schema Error * Delete SimpleSchema/SimpleObj and Move schemas to dedicated files * Userのスキーマを分割してみる * define packMany type * add , * Ensure enum schema and Make "as const" put once * test? * Revert "test?" This reverts commit97dc9bfa70
. * Revert "Fix API Schema Error" This reverts commit21b6176d97
. * ✌️ * clean up * test? * wip * wip * better schema def * ✌️ * fix * add minLength property * wip * wip * wip * anyOf/oneOf/allOfに対応? ~ relation.ts * refactor! * Define MinimumSchema * wip * wip * anyOf/oneOf/allOfが動作するようにUnionSchemaTypeを修正 * anyOf/oneOf/allOfが動作するようにUnionSchemaTypeを修正 * Update packages/backend/src/misc/schema.ts Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com> * fix * array oneOfをより正確な型に * array oneOfをより正確な型に * wip * ✌️ * なんかもういろいろ * remove * very good schema * api schema * wip * refactor: awaitAllの型定義を変えてみる * fix * specify types in awaitAll * specify types in awaitAll * ✌️ * wip * ... * ✌️ * AllowDateはやめておく * 不必要なoptional: false, nullable: falseを廃止 * Packedが展開されないように * 続packed * wip * define note type * wip * UserDetailedをMeDetailedかUserDetailedNotMeかを区別できるように * wip * wip * wip specify user type of other schemas * ok * convertSchemaToOpenApiSchemaを改修 * convertSchemaToOpenApiSchemaを改修 * Fix * fix * ✌️ * wip * 分割代入ではなくallOfで定義するように Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
This commit is contained in:
@@ -4,7 +4,7 @@ import define from '../../../define';
|
||||
import { UserProfiles } from '@/models/index';
|
||||
|
||||
export const meta = {
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
secure: true,
|
||||
|
||||
@@ -13,7 +13,7 @@ export const meta = {
|
||||
validator: $.str,
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -16,7 +16,7 @@ import { publishMainStream } from '@/services/stream';
|
||||
const cborDecodeFirst = promisify(cbor.decodeFirst) as any;
|
||||
|
||||
export const meta = {
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
secure: true,
|
||||
|
||||
@@ -37,7 +37,7 @@ export const meta = {
|
||||
validator: $.str,
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
const rpIdHashReal = hash(Buffer.from(config.hostname, 'utf-8'));
|
||||
|
||||
|
@@ -3,7 +3,7 @@ import define from '../../../define';
|
||||
import { UserProfiles } from '@/models/index';
|
||||
|
||||
export const meta = {
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
secure: true,
|
||||
|
||||
@@ -12,7 +12,7 @@ export const meta = {
|
||||
validator: $.boolean,
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -10,7 +10,7 @@ import { hash } from '../../../2fa';
|
||||
const randomBytes = promisify(crypto.randomBytes);
|
||||
|
||||
export const meta = {
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
secure: true,
|
||||
|
||||
@@ -19,7 +19,7 @@ export const meta = {
|
||||
validator: $.str,
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -7,7 +7,7 @@ import define from '../../../define';
|
||||
import { UserProfiles } from '@/models/index';
|
||||
|
||||
export const meta = {
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
secure: true,
|
||||
|
||||
@@ -16,7 +16,7 @@ export const meta = {
|
||||
validator: $.str,
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -5,7 +5,7 @@ import { UserProfiles, UserSecurityKeys, Users } from '@/models/index';
|
||||
import { publishMainStream } from '@/services/stream';
|
||||
|
||||
export const meta = {
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
secure: true,
|
||||
|
||||
@@ -17,7 +17,7 @@ export const meta = {
|
||||
validator: $.str,
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -4,7 +4,7 @@ import define from '../../../define';
|
||||
import { UserProfiles } from '@/models/index';
|
||||
|
||||
export const meta = {
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
secure: true,
|
||||
|
||||
@@ -13,7 +13,7 @@ export const meta = {
|
||||
validator: $.str,
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -3,7 +3,7 @@ import define from '../../define';
|
||||
import { AccessTokens } from '@/models/index';
|
||||
|
||||
export const meta = {
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
secure: true,
|
||||
|
||||
@@ -17,7 +17,7 @@ export const meta = {
|
||||
]),
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -3,7 +3,7 @@ import define from '../../define';
|
||||
import { AccessTokens, Apps } from '@/models/index';
|
||||
|
||||
export const meta = {
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
secure: true,
|
||||
|
||||
@@ -23,7 +23,7 @@ export const meta = {
|
||||
default: 'desc',
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -4,7 +4,7 @@ import define from '../../define';
|
||||
import { UserProfiles } from '@/models/index';
|
||||
|
||||
export const meta = {
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
secure: true,
|
||||
|
||||
@@ -17,7 +17,7 @@ export const meta = {
|
||||
validator: $.str,
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -7,7 +7,7 @@ import { publishUserEvent } from '@/services/stream';
|
||||
import { createDeleteAccountJob } from '@/queue';
|
||||
|
||||
export const meta = {
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
secure: true,
|
||||
|
||||
@@ -16,7 +16,7 @@ export const meta = {
|
||||
validator: $.str,
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -4,12 +4,12 @@ import ms from 'ms';
|
||||
|
||||
export const meta = {
|
||||
secure: true,
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
limit: {
|
||||
duration: ms('1hour'),
|
||||
max: 1,
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -5,7 +5,7 @@ import ms from 'ms';
|
||||
|
||||
export const meta = {
|
||||
secure: true,
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
limit: {
|
||||
duration: ms('1hour'),
|
||||
max: 1,
|
||||
@@ -20,7 +20,7 @@ export const meta = {
|
||||
default: false,
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -4,12 +4,12 @@ import ms from 'ms';
|
||||
|
||||
export const meta = {
|
||||
secure: true,
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
limit: {
|
||||
duration: ms('1hour'),
|
||||
max: 1,
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -4,12 +4,12 @@ import ms from 'ms';
|
||||
|
||||
export const meta = {
|
||||
secure: true,
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
limit: {
|
||||
duration: ms('1day'),
|
||||
max: 1,
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -4,12 +4,12 @@ import ms from 'ms';
|
||||
|
||||
export const meta = {
|
||||
secure: true,
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
limit: {
|
||||
duration: ms('1min'),
|
||||
max: 1,
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -7,7 +7,7 @@ import { makePaginationQuery } from '../../common/make-pagination-query';
|
||||
export const meta = {
|
||||
tags: ['account', 'notes', 'favorites'],
|
||||
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
kind: 'read:favorites',
|
||||
|
||||
@@ -27,15 +27,15 @@ export const meta = {
|
||||
},
|
||||
|
||||
res: {
|
||||
type: 'array' as const,
|
||||
optional: false as const, nullable: false as const,
|
||||
type: 'array',
|
||||
optional: false, nullable: false,
|
||||
items: {
|
||||
type: 'object' as const,
|
||||
optional: false as const, nullable: false as const,
|
||||
type: 'object',
|
||||
optional: false, nullable: false,
|
||||
ref: 'NoteFavorite',
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -7,7 +7,7 @@ import { makePaginationQuery } from '../../../common/make-pagination-query';
|
||||
export const meta = {
|
||||
tags: ['account', 'gallery'],
|
||||
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
kind: 'read:gallery-likes',
|
||||
|
||||
@@ -27,22 +27,22 @@ export const meta = {
|
||||
},
|
||||
|
||||
res: {
|
||||
type: 'object' as const,
|
||||
optional: false as const, nullable: false as const,
|
||||
type: 'object',
|
||||
optional: false, nullable: false,
|
||||
properties: {
|
||||
id: {
|
||||
type: 'string' as const,
|
||||
optional: false as const, nullable: false as const,
|
||||
type: 'string',
|
||||
optional: false, nullable: false,
|
||||
format: 'id',
|
||||
},
|
||||
page: {
|
||||
type: 'object' as const,
|
||||
optional: false as const, nullable: false as const,
|
||||
type: 'object',
|
||||
optional: false, nullable: false,
|
||||
ref: 'GalleryPost',
|
||||
},
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -7,7 +7,7 @@ import { makePaginationQuery } from '../../../common/make-pagination-query';
|
||||
export const meta = {
|
||||
tags: ['account', 'gallery'],
|
||||
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
kind: 'read:gallery',
|
||||
|
||||
@@ -27,15 +27,15 @@ export const meta = {
|
||||
},
|
||||
|
||||
res: {
|
||||
type: 'array' as const,
|
||||
optional: false as const, nullable: false as const,
|
||||
type: 'array',
|
||||
optional: false, nullable: false,
|
||||
items: {
|
||||
type: 'object' as const,
|
||||
optional: false as const, nullable: false as const,
|
||||
type: 'object',
|
||||
optional: false, nullable: false,
|
||||
ref: 'GalleryPost',
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -4,7 +4,7 @@ import { MutedNotes } from '@/models/index';
|
||||
export const meta = {
|
||||
tags: ['account'],
|
||||
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
kind: 'read:account',
|
||||
|
||||
@@ -12,16 +12,16 @@ export const meta = {
|
||||
},
|
||||
|
||||
res: {
|
||||
type: 'object' as const,
|
||||
optional: false as const, nullable: false as const,
|
||||
type: 'object',
|
||||
optional: false, nullable: false,
|
||||
properties: {
|
||||
count: {
|
||||
type: 'number' as const,
|
||||
optional: false as const, nullable: false as const,
|
||||
type: 'number',
|
||||
optional: false, nullable: false,
|
||||
},
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -8,7 +8,7 @@ import { DriveFiles } from '@/models/index';
|
||||
|
||||
export const meta = {
|
||||
secure: true,
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
limit: {
|
||||
duration: ms('1hour'),
|
||||
@@ -46,7 +46,7 @@ export const meta = {
|
||||
id: '6f3a4dcc-f060-a707-4950-806fbdbe60d6',
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -8,7 +8,7 @@ import { DriveFiles } from '@/models/index';
|
||||
|
||||
export const meta = {
|
||||
secure: true,
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
limit: {
|
||||
duration: ms('1hour'),
|
||||
max: 1,
|
||||
@@ -45,7 +45,7 @@ export const meta = {
|
||||
id: '31a1b42c-06f7-42ae-8a38-a661c5c9f691',
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -8,7 +8,7 @@ import { DriveFiles } from '@/models/index';
|
||||
|
||||
export const meta = {
|
||||
secure: true,
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
limit: {
|
||||
duration: ms('1hour'),
|
||||
@@ -46,7 +46,7 @@ export const meta = {
|
||||
id: 'd2f12af1-e7b4-feac-86a3-519548f2728e',
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -8,7 +8,7 @@ import { DriveFiles } from '@/models/index';
|
||||
|
||||
export const meta = {
|
||||
secure: true,
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
limit: {
|
||||
duration: ms('1hour'),
|
||||
max: 1,
|
||||
@@ -45,7 +45,7 @@ export const meta = {
|
||||
id: '99efe367-ce6e-4d44-93f8-5fae7b040356',
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -12,7 +12,7 @@ import { Brackets } from 'typeorm';
|
||||
export const meta = {
|
||||
tags: ['account', 'notifications'],
|
||||
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
kind: 'read:notifications',
|
||||
|
||||
@@ -55,15 +55,15 @@ export const meta = {
|
||||
},
|
||||
|
||||
res: {
|
||||
type: 'array' as const,
|
||||
optional: false as const, nullable: false as const,
|
||||
type: 'array',
|
||||
optional: false, nullable: false,
|
||||
items: {
|
||||
type: 'object' as const,
|
||||
optional: false as const, nullable: false as const,
|
||||
type: 'object',
|
||||
optional: false, nullable: false,
|
||||
ref: 'Notification',
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -7,7 +7,7 @@ import { makePaginationQuery } from '../../common/make-pagination-query';
|
||||
export const meta = {
|
||||
tags: ['account', 'pages'],
|
||||
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
kind: 'read:page-likes',
|
||||
|
||||
@@ -27,22 +27,22 @@ export const meta = {
|
||||
},
|
||||
|
||||
res: {
|
||||
type: 'object' as const,
|
||||
optional: false as const, nullable: false as const,
|
||||
type: 'object',
|
||||
optional: false, nullable: false,
|
||||
properties: {
|
||||
id: {
|
||||
type: 'string' as const,
|
||||
optional: false as const, nullable: false as const,
|
||||
type: 'string',
|
||||
optional: false, nullable: false,
|
||||
format: 'id',
|
||||
},
|
||||
page: {
|
||||
type: 'object' as const,
|
||||
optional: false as const, nullable: false as const,
|
||||
type: 'object',
|
||||
optional: false, nullable: false,
|
||||
ref: 'Page',
|
||||
},
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -7,7 +7,7 @@ import { makePaginationQuery } from '../../common/make-pagination-query';
|
||||
export const meta = {
|
||||
tags: ['account', 'pages'],
|
||||
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
kind: 'read:pages',
|
||||
|
||||
@@ -27,15 +27,15 @@ export const meta = {
|
||||
},
|
||||
|
||||
res: {
|
||||
type: 'array' as const,
|
||||
optional: false as const, nullable: false as const,
|
||||
type: 'array',
|
||||
optional: false, nullable: false,
|
||||
items: {
|
||||
type: 'object' as const,
|
||||
optional: false as const, nullable: false as const,
|
||||
type: 'object',
|
||||
optional: false, nullable: false,
|
||||
ref: 'Page',
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -8,7 +8,7 @@ import { Users } from '@/models/index';
|
||||
export const meta = {
|
||||
tags: ['account', 'notes'],
|
||||
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
kind: 'write:account',
|
||||
|
||||
@@ -39,11 +39,11 @@ export const meta = {
|
||||
},
|
||||
|
||||
res: {
|
||||
type: 'object' as const,
|
||||
optional: false as const, nullable: false as const,
|
||||
ref: 'User',
|
||||
type: 'object',
|
||||
optional: false, nullable: false,
|
||||
ref: 'MeDetailed',
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
@@ -54,7 +54,7 @@ export default define(meta, async (ps, user) => {
|
||||
throw e;
|
||||
});
|
||||
|
||||
return await Users.pack(user.id, user, {
|
||||
return await Users.pack<true, true>(user.id, user, {
|
||||
detail: true,
|
||||
});
|
||||
});
|
||||
|
@@ -5,13 +5,13 @@ import { MessagingMessages, UserGroupJoinings } from '@/models/index';
|
||||
export const meta = {
|
||||
tags: ['account', 'messaging'],
|
||||
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
kind: 'write:account',
|
||||
|
||||
params: {
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -5,13 +5,13 @@ import { NoteUnreads } from '@/models/index';
|
||||
export const meta = {
|
||||
tags: ['account'],
|
||||
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
kind: 'write:account',
|
||||
|
||||
params: {
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -9,7 +9,7 @@ import { publishMainStream } from '@/services/stream';
|
||||
export const meta = {
|
||||
tags: ['account'],
|
||||
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
kind: 'write:account',
|
||||
|
||||
@@ -26,7 +26,7 @@ export const meta = {
|
||||
id: '184663db-df88-4bc2-8b52-fb85f0681939',
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -6,7 +6,7 @@ import define from '../../define';
|
||||
import { Users, UserProfiles } from '@/models/index';
|
||||
|
||||
export const meta = {
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
secure: true,
|
||||
|
||||
@@ -15,7 +15,7 @@ export const meta = {
|
||||
validator: $.str,
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -3,7 +3,7 @@ import define from '../../../define';
|
||||
import { RegistryItems } from '@/models/index';
|
||||
|
||||
export const meta = {
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
secure: true,
|
||||
|
||||
@@ -13,7 +13,7 @@ export const meta = {
|
||||
default: [],
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -4,7 +4,7 @@ import { RegistryItems } from '@/models/index';
|
||||
import { ApiError } from '../../../error';
|
||||
|
||||
export const meta = {
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
secure: true,
|
||||
|
||||
@@ -26,7 +26,7 @@ export const meta = {
|
||||
id: '97a1e8e7-c0f7-47d2-957a-92e61256e01a',
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -4,7 +4,7 @@ import { RegistryItems } from '@/models/index';
|
||||
import { ApiError } from '../../../error';
|
||||
|
||||
export const meta = {
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
secure: true,
|
||||
|
||||
@@ -26,7 +26,7 @@ export const meta = {
|
||||
id: 'ac3ed68a-62f0-422b-a7bc-d5e09e8f6a6a',
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -3,7 +3,7 @@ import define from '../../../define';
|
||||
import { RegistryItems } from '@/models/index';
|
||||
|
||||
export const meta = {
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
secure: true,
|
||||
|
||||
@@ -13,7 +13,7 @@ export const meta = {
|
||||
default: [],
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -3,7 +3,7 @@ import define from '../../../define';
|
||||
import { RegistryItems } from '@/models/index';
|
||||
|
||||
export const meta = {
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
secure: true,
|
||||
|
||||
@@ -13,7 +13,7 @@ export const meta = {
|
||||
default: [],
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -4,7 +4,7 @@ import { RegistryItems } from '@/models/index';
|
||||
import { ApiError } from '../../../error';
|
||||
|
||||
export const meta = {
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
secure: true,
|
||||
|
||||
@@ -26,7 +26,7 @@ export const meta = {
|
||||
id: '1fac4e8a-a6cd-4e39-a4a5-3a7e11f1b019',
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -2,13 +2,13 @@ import define from '../../../define';
|
||||
import { RegistryItems } from '@/models/index';
|
||||
|
||||
export const meta = {
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
secure: true,
|
||||
|
||||
params: {
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -5,7 +5,7 @@ import { RegistryItems } from '@/models/index';
|
||||
import { genId } from '@/misc/gen-id';
|
||||
|
||||
export const meta = {
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
secure: true,
|
||||
|
||||
@@ -23,7 +23,7 @@ export const meta = {
|
||||
default: [],
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -5,7 +5,7 @@ import { ID } from '@/misc/cafy-id';
|
||||
import { publishUserEvent } from '@/services/stream';
|
||||
|
||||
export const meta = {
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
secure: true,
|
||||
|
||||
@@ -14,7 +14,7 @@ export const meta = {
|
||||
validator: $.type(ID),
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -5,7 +5,7 @@ import { Signins } from '@/models/index';
|
||||
import { makePaginationQuery } from '../../common/make-pagination-query';
|
||||
|
||||
export const meta = {
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
secure: true,
|
||||
|
||||
@@ -23,7 +23,7 @@ export const meta = {
|
||||
validator: $.optional.type(ID),
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -8,7 +8,7 @@ import { Users } from '@/models/index';
|
||||
export const meta = {
|
||||
tags: ['account', 'notes'],
|
||||
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
kind: 'write:account',
|
||||
|
||||
@@ -27,11 +27,11 @@ export const meta = {
|
||||
},
|
||||
|
||||
res: {
|
||||
type: 'object' as const,
|
||||
optional: false as const, nullable: false as const,
|
||||
ref: 'User',
|
||||
type: 'object',
|
||||
optional: false, nullable: false,
|
||||
ref: 'MeDetailed',
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
@@ -40,7 +40,7 @@ export default define(meta, async (ps, user) => {
|
||||
throw e;
|
||||
});
|
||||
|
||||
return await Users.pack(user.id, user, {
|
||||
return await Users.pack<true, true>(user.id, user, {
|
||||
detail: true,
|
||||
});
|
||||
});
|
||||
|
@@ -11,7 +11,7 @@ import { ApiError } from '../../error';
|
||||
import { validateEmailForAccount } from '@/services/validate-email-for-account';
|
||||
|
||||
export const meta = {
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
secure: true,
|
||||
|
||||
@@ -43,7 +43,7 @@ export const meta = {
|
||||
id: 'a2defefb-f220-8849-0af6-17f816099323',
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
@@ -19,7 +19,7 @@ import { normalizeForSearch } from '@/misc/normalize-for-search';
|
||||
export const meta = {
|
||||
tags: ['account'],
|
||||
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
kind: 'write:account',
|
||||
|
||||
@@ -162,11 +162,11 @@ export const meta = {
|
||||
},
|
||||
|
||||
res: {
|
||||
type: 'object' as const,
|
||||
optional: false as const, nullable: false as const,
|
||||
ref: 'User',
|
||||
type: 'object',
|
||||
optional: false, nullable: false,
|
||||
ref: 'MeDetailed',
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, _user, token) => {
|
||||
@@ -279,7 +279,7 @@ export default define(meta, async (ps, _user, token) => {
|
||||
if (Object.keys(updates).length > 0) await Users.update(user.id, updates);
|
||||
if (Object.keys(profileUpdates).length > 0) await UserProfiles.update(user.id, profileUpdates);
|
||||
|
||||
const iObj = await Users.pack(user.id, user, {
|
||||
const iObj = await Users.pack<true, true>(user.id, user, {
|
||||
detail: true,
|
||||
includeSecrets: isSecure,
|
||||
});
|
||||
|
@@ -7,7 +7,7 @@ import { makePaginationQuery } from '../../common/make-pagination-query';
|
||||
export const meta = {
|
||||
tags: ['account', 'groups'],
|
||||
|
||||
requireCredential: true as const,
|
||||
requireCredential: true,
|
||||
|
||||
kind: 'read:user-groups',
|
||||
|
||||
@@ -27,26 +27,26 @@ export const meta = {
|
||||
},
|
||||
|
||||
res: {
|
||||
type: 'array' as const,
|
||||
optional: false as const, nullable: false as const,
|
||||
type: 'array',
|
||||
optional: false, nullable: false,
|
||||
items: {
|
||||
type: 'object' as const,
|
||||
optional: false as const, nullable: false as const,
|
||||
type: 'object',
|
||||
optional: false, nullable: false,
|
||||
properties: {
|
||||
id: {
|
||||
type: 'string' as const,
|
||||
optional: false as const, nullable: false as const,
|
||||
type: 'string',
|
||||
optional: false, nullable: false,
|
||||
format: 'id',
|
||||
},
|
||||
group: {
|
||||
type: 'object' as const,
|
||||
optional: false as const, nullable: false as const,
|
||||
type: 'object',
|
||||
optional: false, nullable: false,
|
||||
ref: 'UserGroup',
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
};
|
||||
} as const;
|
||||
|
||||
// eslint-disable-next-line import/no-default-export
|
||||
export default define(meta, async (ps, user) => {
|
||||
|
Reference in New Issue
Block a user