summaryrefslogtreecommitdiff
path: root/src/server/api/endpoints
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2021-02-13 15:33:38 +0900
committersyuilo <syuilotan@yahoo.co.jp>2021-02-13 15:33:38 +0900
commit91172654e4b715198099146d4c442e0787df0785 (patch)
treed6cc5de1c3be9e143c76c05fffe7d2f07fc376c8 /src/server/api/endpoints
parentwip: email notification (diff)
downloadsharkey-91172654e4b715198099146d4c442e0787df0785.tar.gz
sharkey-91172654e4b715198099146d4c442e0787df0785.tar.bz2
sharkey-91172654e4b715198099146d4c442e0787df0785.zip
refactor: resolve #7139
Diffstat (limited to 'src/server/api/endpoints')
-rw-r--r--src/server/api/endpoints/admin/federation/remove-all-following.ts5
-rw-r--r--src/server/api/endpoints/auth/accept.ts3
-rw-r--r--src/server/api/endpoints/auth/session/userkey.ts5
-rw-r--r--src/server/api/endpoints/i.ts3
-rw-r--r--src/server/api/endpoints/i/2fa/done.ts3
-rw-r--r--src/server/api/endpoints/i/2fa/key-done.ts3
-rw-r--r--src/server/api/endpoints/i/2fa/register-key.ts3
-rw-r--r--src/server/api/endpoints/i/2fa/register.ts3
-rw-r--r--src/server/api/endpoints/i/2fa/remove-key.ts3
-rw-r--r--src/server/api/endpoints/i/2fa/unregister.ts3
-rw-r--r--src/server/api/endpoints/i/change-password.ts3
-rw-r--r--src/server/api/endpoints/i/delete-account.ts3
-rw-r--r--src/server/api/endpoints/i/regenerate-token.ts3
-rw-r--r--src/server/api/endpoints/i/update-email.ts3
-rw-r--r--src/server/api/endpoints/i/update.ts3
-rw-r--r--src/server/api/endpoints/notes/delete.ts3
-rw-r--r--src/server/api/endpoints/notes/polls/vote.ts5
-rw-r--r--src/server/api/endpoints/room/show.ts3
18 files changed, 21 insertions, 39 deletions
diff --git a/src/server/api/endpoints/admin/federation/remove-all-following.ts b/src/server/api/endpoints/admin/federation/remove-all-following.ts
index 76497c0dd8..e593193552 100644
--- a/src/server/api/endpoints/admin/federation/remove-all-following.ts
+++ b/src/server/api/endpoints/admin/federation/remove-all-following.ts
@@ -2,7 +2,6 @@ import $ from 'cafy';
import define from '../../../define';
import deleteFollowing from '../../../../../services/following/delete';
import { Followings, Users } from '../../../../../models';
-import { ensure } from '../../../../../prelude/ensure';
export const meta = {
tags: ['admin'],
@@ -23,8 +22,8 @@ export default define(meta, async (ps, me) => {
});
const pairs = await Promise.all(followings.map(f => Promise.all([
- Users.findOne(f.followerId).then(ensure),
- Users.findOne(f.followeeId).then(ensure)
+ Users.findOneOrFail(f.followerId),
+ Users.findOneOrFail(f.followeeId)
])));
for (const pair of pairs) {
diff --git a/src/server/api/endpoints/auth/accept.ts b/src/server/api/endpoints/auth/accept.ts
index e98242a3c3..6d4d31fa1e 100644
--- a/src/server/api/endpoints/auth/accept.ts
+++ b/src/server/api/endpoints/auth/accept.ts
@@ -4,7 +4,6 @@ import define from '../../define';
import { ApiError } from '../../error';
import { AuthSessions, AccessTokens, Apps } from '../../../../models';
import { genId } from '../../../../misc/gen-id';
-import { ensure } from '../../../../prelude/ensure';
import { secureRndstr } from '../../../../misc/secure-rndstr';
export const meta = {
@@ -49,7 +48,7 @@ export default define(meta, async (ps, user) => {
if (exist == null) {
// Lookup app
- const app = await Apps.findOne(session.appId).then(ensure);
+ const app = await Apps.findOneOrFail(session.appId);
// Generate Hash
const sha256 = crypto.createHash('sha256');
diff --git a/src/server/api/endpoints/auth/session/userkey.ts b/src/server/api/endpoints/auth/session/userkey.ts
index 7b474c8295..68d0c7bdf1 100644
--- a/src/server/api/endpoints/auth/session/userkey.ts
+++ b/src/server/api/endpoints/auth/session/userkey.ts
@@ -2,7 +2,6 @@ import $ from 'cafy';
import define from '../../../define';
import { ApiError } from '../../../error';
import { Apps, AuthSessions, AccessTokens, Users } from '../../../../../models';
-import { ensure } from '../../../../../prelude/ensure';
export const meta = {
tags: ['auth'],
@@ -92,10 +91,10 @@ export default define(meta, async (ps) => {
}
// Lookup access token
- const accessToken = await AccessTokens.findOne({
+ const accessToken = await AccessTokens.findOneOrFail({
appId: app.id,
userId: session.userId
- }).then(ensure);
+ });
// Delete session
AuthSessions.delete(session.id);
diff --git a/src/server/api/endpoints/i.ts b/src/server/api/endpoints/i.ts
index 3d0c092adb..e5b65e0930 100644
--- a/src/server/api/endpoints/i.ts
+++ b/src/server/api/endpoints/i.ts
@@ -1,6 +1,5 @@
import define from '../define';
import { RegistryItems, UserProfiles, Users } from '../../../models';
-import { ensure } from '../../../prelude/ensure';
import { genId } from '../../../misc/gen-id';
export const meta = {
@@ -25,7 +24,7 @@ export default define(meta, async (ps, user, token) => {
const isSecure = token == null;
// TODO: そのうち消す
- const profile = await UserProfiles.findOne(user.id).then(ensure);
+ const profile = await UserProfiles.findOneOrFail(user.id);
for (const [k, v] of Object.entries(profile.clientData)) {
await RegistryItems.insert({
id: genId(),
diff --git a/src/server/api/endpoints/i/2fa/done.ts b/src/server/api/endpoints/i/2fa/done.ts
index 7d35f929e0..9a74d7675b 100644
--- a/src/server/api/endpoints/i/2fa/done.ts
+++ b/src/server/api/endpoints/i/2fa/done.ts
@@ -2,7 +2,6 @@ import $ from 'cafy';
import * as speakeasy from 'speakeasy';
import define from '../../../define';
import { UserProfiles } from '../../../../../models';
-import { ensure } from '../../../../../prelude/ensure';
export const meta = {
requireCredential: true as const,
@@ -19,7 +18,7 @@ export const meta = {
export default define(meta, async (ps, user) => {
const token = ps.token.replace(/\s/g, '');
- const profile = await UserProfiles.findOne(user.id).then(ensure);
+ const profile = await UserProfiles.findOneOrFail(user.id);
if (profile.twoFactorTempSecret == null) {
throw new Error('二段階認証の設定が開始されていません');
diff --git a/src/server/api/endpoints/i/2fa/key-done.ts b/src/server/api/endpoints/i/2fa/key-done.ts
index 8ac165e629..4634944ca7 100644
--- a/src/server/api/endpoints/i/2fa/key-done.ts
+++ b/src/server/api/endpoints/i/2fa/key-done.ts
@@ -9,7 +9,6 @@ import {
AttestationChallenges,
Users
} from '../../../../../models';
-import { ensure } from '../../../../../prelude/ensure';
import config from '../../../../../config';
import { procedures, hash } from '../../../2fa';
import { publishMainStream } from '../../../../../services/stream';
@@ -43,7 +42,7 @@ export const meta = {
const rpIdHashReal = hash(Buffer.from(config.hostname, 'utf-8'));
export default define(meta, async (ps, user) => {
- const profile = await UserProfiles.findOne(user.id).then(ensure);
+ const profile = await UserProfiles.findOneOrFail(user.id);
// Compare password
const same = await bcrypt.compare(ps.password, profile.password!);
diff --git a/src/server/api/endpoints/i/2fa/register-key.ts b/src/server/api/endpoints/i/2fa/register-key.ts
index e189519a4c..d5cc11c7fb 100644
--- a/src/server/api/endpoints/i/2fa/register-key.ts
+++ b/src/server/api/endpoints/i/2fa/register-key.ts
@@ -2,7 +2,6 @@ import $ from 'cafy';
import * as bcrypt from 'bcryptjs';
import define from '../../../define';
import { UserProfiles, AttestationChallenges } from '../../../../../models';
-import { ensure } from '../../../../../prelude/ensure';
import { promisify } from 'util';
import * as crypto from 'crypto';
import { genId } from '../../../../../misc/gen-id';
@@ -23,7 +22,7 @@ export const meta = {
};
export default define(meta, async (ps, user) => {
- const profile = await UserProfiles.findOne(user.id).then(ensure);
+ const profile = await UserProfiles.findOneOrFail(user.id);
// Compare password
const same = await bcrypt.compare(ps.password, profile.password!);
diff --git a/src/server/api/endpoints/i/2fa/register.ts b/src/server/api/endpoints/i/2fa/register.ts
index 784b276a26..a39b2963e9 100644
--- a/src/server/api/endpoints/i/2fa/register.ts
+++ b/src/server/api/endpoints/i/2fa/register.ts
@@ -5,7 +5,6 @@ import * as QRCode from 'qrcode';
import config from '../../../../../config';
import define from '../../../define';
import { UserProfiles } from '../../../../../models';
-import { ensure } from '../../../../../prelude/ensure';
export const meta = {
requireCredential: true as const,
@@ -20,7 +19,7 @@ export const meta = {
};
export default define(meta, async (ps, user) => {
- const profile = await UserProfiles.findOne(user.id).then(ensure);
+ const profile = await UserProfiles.findOneOrFail(user.id);
// Compare password
const same = await bcrypt.compare(ps.password, profile.password!);
diff --git a/src/server/api/endpoints/i/2fa/remove-key.ts b/src/server/api/endpoints/i/2fa/remove-key.ts
index 3eb92ba19d..135f0eb284 100644
--- a/src/server/api/endpoints/i/2fa/remove-key.ts
+++ b/src/server/api/endpoints/i/2fa/remove-key.ts
@@ -2,7 +2,6 @@ import $ from 'cafy';
import * as bcrypt from 'bcryptjs';
import define from '../../../define';
import { UserProfiles, UserSecurityKeys, Users } from '../../../../../models';
-import { ensure } from '../../../../../prelude/ensure';
import { publishMainStream } from '../../../../../services/stream';
export const meta = {
@@ -21,7 +20,7 @@ export const meta = {
};
export default define(meta, async (ps, user) => {
- const profile = await UserProfiles.findOne(user.id).then(ensure);
+ const profile = await UserProfiles.findOneOrFail(user.id);
// Compare password
const same = await bcrypt.compare(ps.password, profile.password!);
diff --git a/src/server/api/endpoints/i/2fa/unregister.ts b/src/server/api/endpoints/i/2fa/unregister.ts
index f1287b2dca..e809f40c71 100644
--- a/src/server/api/endpoints/i/2fa/unregister.ts
+++ b/src/server/api/endpoints/i/2fa/unregister.ts
@@ -2,7 +2,6 @@ import $ from 'cafy';
import * as bcrypt from 'bcryptjs';
import define from '../../../define';
import { UserProfiles } from '../../../../../models';
-import { ensure } from '../../../../../prelude/ensure';
export const meta = {
requireCredential: true as const,
@@ -17,7 +16,7 @@ export const meta = {
};
export default define(meta, async (ps, user) => {
- const profile = await UserProfiles.findOne(user.id).then(ensure);
+ const profile = await UserProfiles.findOneOrFail(user.id);
// Compare password
const same = await bcrypt.compare(ps.password, profile.password!);
diff --git a/src/server/api/endpoints/i/change-password.ts b/src/server/api/endpoints/i/change-password.ts
index bc2ec3d7b5..0a8b86e665 100644
--- a/src/server/api/endpoints/i/change-password.ts
+++ b/src/server/api/endpoints/i/change-password.ts
@@ -2,7 +2,6 @@ import $ from 'cafy';
import * as bcrypt from 'bcryptjs';
import define from '../../define';
import { UserProfiles } from '../../../../models';
-import { ensure } from '../../../../prelude/ensure';
export const meta = {
requireCredential: true as const,
@@ -21,7 +20,7 @@ export const meta = {
};
export default define(meta, async (ps, user) => {
- const profile = await UserProfiles.findOne(user.id).then(ensure);
+ const profile = await UserProfiles.findOneOrFail(user.id);
// Compare password
const same = await bcrypt.compare(ps.currentPassword, profile.password!);
diff --git a/src/server/api/endpoints/i/delete-account.ts b/src/server/api/endpoints/i/delete-account.ts
index 49a3349170..0f04c4c92d 100644
--- a/src/server/api/endpoints/i/delete-account.ts
+++ b/src/server/api/endpoints/i/delete-account.ts
@@ -2,7 +2,6 @@ import $ from 'cafy';
import * as bcrypt from 'bcryptjs';
import define from '../../define';
import { Users, UserProfiles } from '../../../../models';
-import { ensure } from '../../../../prelude/ensure';
import { doPostSuspend } from '../../../../services/suspend-user';
export const meta = {
@@ -18,7 +17,7 @@ export const meta = {
};
export default define(meta, async (ps, user) => {
- const profile = await UserProfiles.findOne(user.id).then(ensure);
+ const profile = await UserProfiles.findOneOrFail(user.id);
// Compare password
const same = await bcrypt.compare(ps.password, profile.password!);
diff --git a/src/server/api/endpoints/i/regenerate-token.ts b/src/server/api/endpoints/i/regenerate-token.ts
index 5d322aa122..3596e20197 100644
--- a/src/server/api/endpoints/i/regenerate-token.ts
+++ b/src/server/api/endpoints/i/regenerate-token.ts
@@ -4,7 +4,6 @@ import { publishMainStream } from '../../../../services/stream';
import generateUserToken from '../../common/generate-native-user-token';
import define from '../../define';
import { Users, UserProfiles } from '../../../../models';
-import { ensure } from '../../../../prelude/ensure';
export const meta = {
requireCredential: true as const,
@@ -19,7 +18,7 @@ export const meta = {
};
export default define(meta, async (ps, user) => {
- const profile = await UserProfiles.findOne(user.id).then(ensure);
+ const profile = await UserProfiles.findOneOrFail(user.id);
// Compare password
const same = await bcrypt.compare(ps.password, profile.password!);
diff --git a/src/server/api/endpoints/i/update-email.ts b/src/server/api/endpoints/i/update-email.ts
index d3d7bace75..730918aebe 100644
--- a/src/server/api/endpoints/i/update-email.ts
+++ b/src/server/api/endpoints/i/update-email.ts
@@ -6,7 +6,6 @@ import config from '../../../../config';
import * as ms from 'ms';
import * as bcrypt from 'bcryptjs';
import { Users, UserProfiles } from '../../../../models';
-import { ensure } from '../../../../prelude/ensure';
import { sendEmail } from '../../../../services/send-email';
import { ApiError } from '../../error';
@@ -40,7 +39,7 @@ export const meta = {
};
export default define(meta, async (ps, user) => {
- const profile = await UserProfiles.findOne(user.id).then(ensure);
+ const profile = await UserProfiles.findOneOrFail(user.id);
// Compare password
const same = await bcrypt.compare(ps.password, profile.password!);
diff --git a/src/server/api/endpoints/i/update.ts b/src/server/api/endpoints/i/update.ts
index bf1796924a..3d7f1fa76f 100644
--- a/src/server/api/endpoints/i/update.ts
+++ b/src/server/api/endpoints/i/update.ts
@@ -13,7 +13,6 @@ import { ApiError } from '../../error';
import { Users, DriveFiles, UserProfiles, Pages } from '../../../../models';
import { User } from '../../../../models/entities/user';
import { UserProfile } from '../../../../models/entities/user-profile';
-import { ensure } from '../../../../prelude/ensure';
import { notificationTypes } from '../../../../types';
import { normalizeForSearch } from '../../../../misc/normalize-for-search';
@@ -206,7 +205,7 @@ export default define(meta, async (ps, user, token) => {
const updates = {} as Partial<User>;
const profileUpdates = {} as Partial<UserProfile>;
- const profile = await UserProfiles.findOne(user.id).then(ensure);
+ const profile = await UserProfiles.findOneOrFail(user.id);
if (ps.name !== undefined) updates.name = ps.name;
if (ps.description !== undefined) profileUpdates.description = ps.description;
diff --git a/src/server/api/endpoints/notes/delete.ts b/src/server/api/endpoints/notes/delete.ts
index 65565ee3ab..5afd911ca9 100644
--- a/src/server/api/endpoints/notes/delete.ts
+++ b/src/server/api/endpoints/notes/delete.ts
@@ -6,7 +6,6 @@ import * as ms from 'ms';
import { getNote } from '../../common/getters';
import { ApiError } from '../../error';
import { Users } from '../../../../models';
-import { ensure } from '../../../../prelude/ensure';
export const meta = {
desc: {
@@ -62,5 +61,5 @@ export default define(meta, async (ps, user) => {
}
// この操作を行うのが投稿者とは限らない(例えばモデレーター)ため
- await deleteNote(await Users.findOne(note.userId).then(ensure), note);
+ await deleteNote(await Users.findOneOrFail(note.userId), note);
});
diff --git a/src/server/api/endpoints/notes/polls/vote.ts b/src/server/api/endpoints/notes/polls/vote.ts
index 1e6ab472cc..6113d7ea9a 100644
--- a/src/server/api/endpoints/notes/polls/vote.ts
+++ b/src/server/api/endpoints/notes/polls/vote.ts
@@ -13,7 +13,6 @@ import { PollVotes, NoteWatchings, Users, Polls } from '../../../../../models';
import { Not } from 'typeorm';
import { IRemoteUser } from '../../../../../models/entities/user';
import { genId } from '../../../../../misc/gen-id';
-import { ensure } from '../../../../../prelude/ensure';
export const meta = {
desc: {
@@ -87,7 +86,7 @@ export default define(meta, async (ps, user) => {
throw new ApiError(meta.errors.noPoll);
}
- const poll = await Polls.findOne({ noteId: note.id }).then(ensure);
+ const poll = await Polls.findOneOrFail({ noteId: note.id });
if (poll.expiresAt && poll.expiresAt < createdAt) {
throw new ApiError(meta.errors.alreadyExpired);
@@ -153,7 +152,7 @@ export default define(meta, async (ps, user) => {
// リモート投票の場合リプライ送信
if (note.userHost != null) {
- const pollOwner = await Users.findOne(note.userId).then(ensure) as IRemoteUser;
+ const pollOwner = await Users.findOneOrFail(note.userId) as IRemoteUser;
deliver(user, renderActivity(await renderVote(user, vote, note, poll, pollOwner)), pollOwner.inbox);
}
diff --git a/src/server/api/endpoints/room/show.ts b/src/server/api/endpoints/room/show.ts
index 96248a8c0c..e8af68956d 100644
--- a/src/server/api/endpoints/room/show.ts
+++ b/src/server/api/endpoints/room/show.ts
@@ -3,7 +3,6 @@ import define from '../../define';
import { ApiError } from '../../error';
import { Users, UserProfiles } from '../../../../models';
import { ID } from '../../../../misc/cafy-id';
-import { ensure } from '../../../../prelude/ensure';
import { toPunyNullable } from '../../../../misc/convert-host';
export const meta = {
@@ -51,7 +50,7 @@ export default define(meta, async (ps, me) => {
throw new ApiError(meta.errors.noSuchUser);
}
- const profile = await UserProfiles.findOne(user.id).then(ensure);
+ const profile = await UserProfiles.findOneOrFail(user.id);
if (profile.room.furnitures == null) {
await UserProfiles.update(user.id, {