diff --git a/apps/server/src/api/v2/users/[id]/suggested-prompts/GET.ts b/apps/server/src/api/v2/users/[id]/suggested-prompts/GET.ts index fe31db522..867d40583 100644 --- a/apps/server/src/api/v2/users/[id]/suggested-prompts/GET.ts +++ b/apps/server/src/api/v2/users/[id]/suggested-prompts/GET.ts @@ -7,16 +7,17 @@ import { getUserSuggestedPrompts, updateUserSuggestedPrompts, } from '@buster/database'; -import { GetSuggestedPromptsRequestSchema, type GetSuggestedPromptsResponse } from '@buster/server-shared/user'; +import { + GetSuggestedPromptsRequestSchema, + type GetSuggestedPromptsResponse, +} from '@buster/server-shared/user'; import { zValidator } from '@hono/zod-validator'; import { Hono } from 'hono'; import { HTTPException } from 'hono/http-exception'; import { standardErrorHandler } from '../../../../../utils/response'; -const app = new Hono().get( - '/', - zValidator('param', GetSuggestedPromptsRequestSchema), - async (c) => { +const app = new Hono() + .get('/', zValidator('param', GetSuggestedPromptsRequestSchema), async (c) => { const userId = c.req.param('id'); const authenticatedUser = c.get('busterUser'); @@ -27,35 +28,38 @@ const app = new Hono().get( }); } - const currentSuggestedPrompts: GetSuggestedPromptsResponse = await getUserSuggestedPrompts({ userId }); + const currentSuggestedPrompts: GetSuggestedPromptsResponse = await getUserSuggestedPrompts({ + userId, + }); if (currentSuggestedPrompts) { // Check if the updatedAt date is from today const today = new Date(); const updatedDate = new Date(currentSuggestedPrompts.updatedAt); - const isToday = - today.getFullYear() === updatedDate.getFullYear() && - today.getMonth() === updatedDate.getMonth() && - today.getDate() === updatedDate.getDate(); + const isToday = + today.getFullYear() === updatedDate.getFullYear() && + today.getMonth() === updatedDate.getMonth() && + today.getDate() === updatedDate.getDate(); - if (isToday) { - return c.json(currentSuggestedPrompts); - } + if (isToday) { + return c.json(currentSuggestedPrompts); } + } - const timeoutMs = 10000; // 10 seconds timeout + const timeoutMs = 10000; // 10 seconds timeout - const timeoutPromise = new Promise((_, reject) => { - setTimeout(() => { - reject( - new Error('Request timeout after 10 seconds. Returning current suggested prompts.') - ); - }, timeoutMs); - }); + const timeoutPromise = new Promise((_, reject) => { + setTimeout(() => { + reject(new Error('Request timeout after 10 seconds. Returning current suggested prompts.')); + }, timeoutMs); + }); try { - const newPrompts: GetSuggestedPromptsResponse = await Promise.race([buildNewSuggestedPrompts(userId), timeoutPromise]); + const newPrompts: GetSuggestedPromptsResponse = await Promise.race([ + buildNewSuggestedPrompts(userId), + timeoutPromise, + ]); return c.json(newPrompts); } catch { if (currentSuggestedPrompts) { @@ -64,9 +68,8 @@ const app = new Hono().get( const defaultPrompts: GetSuggestedPromptsResponse = DEFAULT_USER_SUGGESTED_PROMPTS; return c.json(defaultPrompts); } - } -) -.onError(standardErrorHandler); + }) + .onError(standardErrorHandler); /** * Generate new suggested prompts for a user and update the database with the new prompts