From b4290c24b3551f2388b287adad1ea08da098332e Mon Sep 17 00:00:00 2001 From: Mir Arif Hasan Date: Tue, 20 Dec 2022 14:51:58 +0600 Subject: [PATCH] fix: invalid user handled on createUserSettings --- .../user-settings/user-settings.service.ts | 31 +++++++++++-------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/packages/hoppscotch-backend/src/user-settings/user-settings.service.ts b/packages/hoppscotch-backend/src/user-settings/user-settings.service.ts index 700b49857..441452b2e 100644 --- a/packages/hoppscotch-backend/src/user-settings/user-settings.service.ts +++ b/packages/hoppscotch-backend/src/user-settings/user-settings.service.ts @@ -6,6 +6,7 @@ import * as E from 'fp-ts/Either'; import { stringToJson } from 'src/utils'; import { UserSettings } from './user-settings.model'; import { + USER_NOT_FOUND, USER_SETTINGS_INVALID_PROPERTIES, USER_SETTINGS_NOT_FOUND, USER_SETTINGS_UPDATE_FAILED, @@ -44,21 +45,25 @@ export class UserSettingsService { const jsonProperties = stringToJson(properties); if (E.isLeft(jsonProperties)) return E.left(jsonProperties.left); - const dbUserSettings = await this.prisma.userSettings.create({ - data: { - properties: jsonProperties.right, - userUid: user.uid, - }, - }); + try { + const dbUserSettings = await this.prisma.userSettings.create({ + data: { + properties: jsonProperties.right, + userUid: user.uid, + }, + }); - const userSettings: UserSettings = { - id: dbUserSettings.id, - userUid: dbUserSettings.userUid, - properties, - updatedOn: dbUserSettings.updatedOn, - }; + const userSettings: UserSettings = { + id: dbUserSettings.id, + userUid: dbUserSettings.userUid, + properties, + updatedOn: dbUserSettings.updatedOn, + }; - return E.right(userSettings); + return E.right(userSettings); + } catch (e) { + return E.left(USER_NOT_FOUND); + } } async updateUserSettings(user: User, properties: string) {