From ee3e0bfbdc713baba67b56a27a0d178df3a2f7e6 Mon Sep 17 00:00:00 2001 From: Jonathan Barrow Date: Tue, 3 Oct 2023 13:12:34 -0400 Subject: [PATCH] removed the use of any in people endpoints --- src/services/api/routes/people.ts | 44 +++++++++++++++------------ src/types/miiverse/people.ts | 27 ++++++++++++++++ src/types/miiverse/wara-wara-plaza.ts | 12 ++------ 3 files changed, 54 insertions(+), 29 deletions(-) create mode 100644 src/types/miiverse/people.ts diff --git a/src/services/api/routes/people.ts b/src/services/api/routes/people.ts index 4e1f2f6..b372893 100644 --- a/src/services/api/routes/people.ts +++ b/src/services/api/routes/people.ts @@ -6,6 +6,7 @@ import { getValueFromQueryString, getUserFriendPIDs } from '@/util'; import { Post } from '@/models/post'; import { CommunityPostsQuery } from '@/types/mongoose/community-posts-query'; import { HydratedPostDocument, IPost } from '@/types/mongoose/post'; +import { PeopleFollowingResult, PeoplePostsResult } from '@/types/miiverse/people'; const router = express.Router(); @@ -72,18 +73,16 @@ router.get('/', async function (request: express.Request, response: express.Resp posts = await Post.find(query).sort({ created_at: -1}).limit(limit); } - const json: Record = { - result: { - has_error: 0, - version: 1, - expire: moment().add(1, 'days').format('YYYY-MM-DD HH:MM:SS'), - request_name: 'posts', - people: [] - } + const result: PeoplePostsResult = { + has_error: 0, + version: 1, + expire: moment().add(1, 'days').format('YYYY-MM-DD HH:MM:SS'), + request_name: 'posts', + people: [] }; for (const post of posts) { - json.result.people.push({ + result.people.push({ person: { posts: [ { @@ -97,7 +96,9 @@ router.get('/', async function (request: express.Request, response: express.Resp }); } - response.send(xmlbuilder.create(json, { + response.send(xmlbuilder.create({ + result + }, { separateArrayItems: true }).end({ pretty: true, @@ -124,22 +125,27 @@ router.get('/:pid/following', async function (request: express.Request, response const people = await getFollowedUsers(userContent); - const json: Record = { - result: { - has_error: '0', - version: '1', - request_name: 'user_infos', - people: [] - } + const result: PeopleFollowingResult = { + has_error: 0, + version: 1, + request_name: 'user_infos', + people: [] }; for (const person of people) { - json.result.people.push({ + result.people.push({ person: person.json() }); } - response.send(xmlbuilder.create(json, { separateArrayItems: true }).end({ pretty: true, allowEmpty: true })); + response.send(xmlbuilder.create({ + result + }, { + separateArrayItems: true + }).end({ + pretty: true, + allowEmpty: true + })); }); export default router; \ No newline at end of file diff --git a/src/types/miiverse/people.ts b/src/types/miiverse/people.ts new file mode 100644 index 0000000..500689d --- /dev/null +++ b/src/types/miiverse/people.ts @@ -0,0 +1,27 @@ +import { PostData } from '@/types/miiverse/post'; +import { SettingsData } from '@/types/miiverse/settings'; + +export type PersonPosts = { + person: { + posts: { + post: PostData; + }[]; + } +}; + +export type PeoplePostsResult = { + has_error: 0 | 1; + version: 1; + expire: string; + request_name: 'posts'; + people: PersonPosts[]; +}; + +export type PeopleFollowingResult = { + has_error: 0 | 1; + version: 1; + request_name: 'user_infos'; + people: { + person: SettingsData; + }[]; +}; \ No newline at end of file diff --git a/src/types/miiverse/wara-wara-plaza.ts b/src/types/miiverse/wara-wara-plaza.ts index f739047..582e9a0 100644 --- a/src/types/miiverse/wara-wara-plaza.ts +++ b/src/types/miiverse/wara-wara-plaza.ts @@ -1,12 +1,4 @@ -import { PostData } from '@/types/miiverse/post'; - -export type WWPPerson = { - person: { - posts: { - post: PostData; - }[]; - } -}; +import { PersonPosts } from '@/types/miiverse/people'; export type WWPTopic = { empathy_count: number; @@ -19,7 +11,7 @@ export type WWPTopic = { community_id: number; is_recommended: 0 | 1; name: string; - people: WWPPerson[]; + people: PersonPosts[]; position: number; };