summaryrefslogtreecommitdiff
path: root/src/server/api/endpoints/users
diff options
context:
space:
mode:
authorsyuilo <Syuilotan@yahoo.co.jp>2019-04-13 01:43:22 +0900
committerGitHub <noreply@github.com>2019-04-13 01:43:22 +0900
commit987168b863c52d0548050ffbac569782bb9a8cef (patch)
treec9aa2243dcdcbd044688d201a51c601574bff259 /src/server/api/endpoints/users
parentFix bug (diff)
downloadsharkey-987168b863c52d0548050ffbac569782bb9a8cef.tar.gz
sharkey-987168b863c52d0548050ffbac569782bb9a8cef.tar.bz2
sharkey-987168b863c52d0548050ffbac569782bb9a8cef.zip
strictNullChecks (#4666)
* wip * wip * wip * wip * wip * wip * wip * wip * wip * wip * wip
Diffstat (limited to 'src/server/api/endpoints/users')
-rw-r--r--src/server/api/endpoints/users/followers.ts4
-rw-r--r--src/server/api/endpoints/users/following.ts4
-rw-r--r--src/server/api/endpoints/users/get-frequently-replied-users.ts2
-rw-r--r--src/server/api/endpoints/users/notes.ts8
-rw-r--r--src/server/api/endpoints/users/recommendation.ts2
-rw-r--r--src/server/api/endpoints/users/search.ts6
-rw-r--r--src/server/api/endpoints/users/show.ts6
7 files changed, 16 insertions, 16 deletions
diff --git a/src/server/api/endpoints/users/followers.ts b/src/server/api/endpoints/users/followers.ts
index 64d63e2d03..88a474be7c 100644
--- a/src/server/api/endpoints/users/followers.ts
+++ b/src/server/api/endpoints/users/followers.ts
@@ -66,7 +66,7 @@ export const meta = {
export default define(meta, async (ps, me) => {
const user = await Users.findOne(ps.userId != null
? { id: ps.userId }
- : { usernameLower: ps.username.toLowerCase(), host: toPuny(ps.host) });
+ : { usernameLower: ps.username!.toLowerCase(), host: toPuny(ps.host!) });
if (user == null) {
throw new ApiError(meta.errors.noSuchUser);
@@ -76,7 +76,7 @@ export default define(meta, async (ps, me) => {
.andWhere(`following.followeeId = :userId`, { userId: user.id });
const followings = await query
- .take(ps.limit)
+ .take(ps.limit!)
.getMany();
return await Followings.packMany(followings, me, { populateFollower: true });
diff --git a/src/server/api/endpoints/users/following.ts b/src/server/api/endpoints/users/following.ts
index 0e28001680..5e017150e8 100644
--- a/src/server/api/endpoints/users/following.ts
+++ b/src/server/api/endpoints/users/following.ts
@@ -66,7 +66,7 @@ export const meta = {
export default define(meta, async (ps, me) => {
const user = await Users.findOne(ps.userId != null
? { id: ps.userId }
- : { usernameLower: ps.username.toLowerCase(), host: toPuny(ps.host) });
+ : { usernameLower: ps.username!.toLowerCase(), host: toPuny(ps.host!) });
if (user == null) {
throw new ApiError(meta.errors.noSuchUser);
@@ -76,7 +76,7 @@ export default define(meta, async (ps, me) => {
.andWhere(`following.followerId = :userId`, { userId: user.id });
const followings = await query
- .take(ps.limit)
+ .take(ps.limit!)
.getMany();
return await Followings.packMany(followings, me, { populateFollowee: true });
diff --git a/src/server/api/endpoints/users/get-frequently-replied-users.ts b/src/server/api/endpoints/users/get-frequently-replied-users.ts
index f82f437629..a1d140c6c9 100644
--- a/src/server/api/endpoints/users/get-frequently-replied-users.ts
+++ b/src/server/api/endpoints/users/get-frequently-replied-users.ts
@@ -94,7 +94,7 @@ export default define(meta, async (ps, me) => {
const repliedUsersSorted = Object.keys(repliedUsers).sort((a, b) => repliedUsers[b] - repliedUsers[a]);
// Extract top replied users
- const topRepliedUsers = repliedUsersSorted.slice(0, ps.limit);
+ const topRepliedUsers = repliedUsersSorted.slice(0, ps.limit!);
// Make replies object (includes weights)
const repliesObj = await Promise.all(topRepliedUsers.map(async (user) => ({
diff --git a/src/server/api/endpoints/users/notes.ts b/src/server/api/endpoints/users/notes.ts
index 6df394cbb1..da23be3c55 100644
--- a/src/server/api/endpoints/users/notes.ts
+++ b/src/server/api/endpoints/users/notes.ts
@@ -153,11 +153,11 @@ export default define(meta, async (ps, me) => {
query.andWhere('note.fileIds != \'{}\'');
}
- if (ps.fileType) {
+ if (ps.fileType != null) {
query.andWhere('note.fileIds != \'{}\'');
query.andWhere(new Brackets(qb => {
- for (const type of ps.fileType) {
- const i = ps.fileType.indexOf(type);
+ for (const type of ps.fileType!) {
+ const i = ps.fileType!.indexOf(type);
qb.orWhere(`:type${i} = ANY(note.attachedFileTypes)`, { [`type${i}`]: type });
}
}));
@@ -194,7 +194,7 @@ export default define(meta, async (ps, me) => {
//#endregion
- const timeline = await query.take(ps.limit).getMany();
+ const timeline = await query.take(ps.limit!).getMany();
return await Notes.packMany(timeline, user);
});
diff --git a/src/server/api/endpoints/users/recommendation.ts b/src/server/api/endpoints/users/recommendation.ts
index 2c82d6613e..9e16e34e39 100644
--- a/src/server/api/endpoints/users/recommendation.ts
+++ b/src/server/api/endpoints/users/recommendation.ts
@@ -53,7 +53,7 @@ export default define(meta, async (ps, me) => {
query.setParameters(followingQuery.getParameters());
- const users = await query.take(ps.limit).skip(ps.offset).getMany();
+ const users = await query.take(ps.limit!).skip(ps.offset).getMany();
return await Users.packMany(users, me, { detail: true });
});
diff --git a/src/server/api/endpoints/users/search.ts b/src/server/api/endpoints/users/search.ts
index 443bd507f3..96da221d97 100644
--- a/src/server/api/endpoints/users/search.ts
+++ b/src/server/api/endpoints/users/search.ts
@@ -71,16 +71,16 @@ export default define(meta, async (ps, me) => {
.where('user.host IS NULL')
.andWhere('user.isSuspended = FALSE')
.andWhere('user.usernameLower like :username', { username: ps.query.replace('@', '').toLowerCase() + '%' })
- .take(ps.limit)
+ .take(ps.limit!)
.skip(ps.offset)
.getMany();
- if (users.length < ps.limit && !ps.localOnly) {
+ if (users.length < ps.limit! && !ps.localOnly) {
const otherUsers = await Users.createQueryBuilder('user')
.where('user.host IS NOT NULL')
.andWhere('user.isSuspended = FALSE')
.andWhere('user.usernameLower like :username', { username: ps.query.replace('@', '').toLowerCase() + '%' })
- .take(ps.limit - users.length)
+ .take(ps.limit! - users.length)
.getMany();
users = users.concat(otherUsers);
diff --git a/src/server/api/endpoints/users/show.ts b/src/server/api/endpoints/users/show.ts
index ae93e40eaa..2be193f89b 100644
--- a/src/server/api/endpoints/users/show.ts
+++ b/src/server/api/endpoints/users/show.ts
@@ -74,7 +74,7 @@ export default define(meta, async (ps, me) => {
})));
} else {
// Lookup user
- if (typeof ps.host === 'string') {
+ if (typeof ps.host === 'string' && typeof ps.username === 'string') {
user = await resolveUser(ps.username, ps.host).catch(e => {
apiLogger.warn(`failed to resolve remote user: ${e}`);
throw new ApiError(meta.errors.failedToResolveRemoteUser);
@@ -82,7 +82,7 @@ export default define(meta, async (ps, me) => {
} else {
const q: any = ps.userId != null
? { id: ps.userId }
- : { usernameLower: ps.username.toLowerCase(), host: null };
+ : { usernameLower: ps.username!.toLowerCase(), host: null };
user = await Users.findOne(q);
}
@@ -94,7 +94,7 @@ export default define(meta, async (ps, me) => {
// ユーザー情報更新
if (Users.isRemoteUser(user)) {
if (user.lastFetchedAt == null || Date.now() - user.lastFetchedAt.getTime() > 1000 * 60 * 60 * 24) {
- resolveUser(ps.username, ps.host, { }, true);
+ resolveUser(user.username, user.host, { }, true);
}
}