From 556e2acd8e7328488588edb6bc2c8ef9a641643e Mon Sep 17 00:00:00 2001 From: Dipendra Upreti Date: Thu, 15 Jun 2023 16:13:48 +0545 Subject: [PATCH 1/3] refactor(slonik): update return type of update method --- packages/slonik/src/service.ts | 2 +- packages/slonik/src/types/service.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/slonik/src/service.ts b/packages/slonik/src/service.ts index fa5af51c4..d4d5550d7 100644 --- a/packages/slonik/src/service.ts +++ b/packages/slonik/src/service.ts @@ -146,7 +146,7 @@ abstract class BaseService< return result[0].count; }; - update = async (id: number | string, data: U): Promise => { + update = async (id: number | string, data: U): Promise => { const query = this.factory.getUpdateSql(id, data); return await this.database.connect((connection) => { diff --git a/packages/slonik/src/types/service.ts b/packages/slonik/src/types/service.ts index 8ee8703ec..35c5b1919 100644 --- a/packages/slonik/src/types/service.ts +++ b/packages/slonik/src/types/service.ts @@ -29,7 +29,7 @@ interface Service { sort?: SortInput[] ): Promise>; count(filters?: FilterInput): Promise; - update(id: number | string, data: U): Promise; + update(id: number | string, data: U): Promise; } type PaginatedList = { From 03e27e16ea05aaf64a311b15acf74923be86e81f Mon Sep 17 00:00:00 2001 From: Dipendra Upreti Date: Fri, 16 Jun 2023 11:40:12 +0545 Subject: [PATCH 2/3] refactor(slonik): fix the issue when empty date is provided to update method --- packages/slonik/src/service.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/slonik/src/service.ts b/packages/slonik/src/service.ts index d4d5550d7..c933f3569 100644 --- a/packages/slonik/src/service.ts +++ b/packages/slonik/src/service.ts @@ -147,6 +147,10 @@ abstract class BaseService< }; update = async (id: number | string, data: U): Promise => { + if (Object.keys(data).length === 0) { + this.findById(id); + } + const query = this.factory.getUpdateSql(id, data); return await this.database.connect((connection) => { From 76fab281cc3316757c7342a6cd0254df6af6a844 Mon Sep 17 00:00:00 2001 From: Dipendra Upreti Date: Tue, 19 Sep 2023 13:30:17 +0545 Subject: [PATCH 3/3] fix(slonik): fix update method --- packages/slonik/src/service.ts | 2 +- .../user/src/model/invitations/handlers/revokeInvitation.ts | 4 ++-- packages/user/src/model/invitations/resolver.ts | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/slonik/src/service.ts b/packages/slonik/src/service.ts index 742af1f1c..513b5da37 100644 --- a/packages/slonik/src/service.ts +++ b/packages/slonik/src/service.ts @@ -148,7 +148,7 @@ abstract class BaseService< update = async (id: number | string, data: U): Promise => { if (Object.keys(data).length === 0) { - this.findById(id); + return (await this.findById(id)) ?? undefined; } const query = this.factory.getUpdateSql(id, data); diff --git a/packages/user/src/model/invitations/handlers/revokeInvitation.ts b/packages/user/src/model/invitations/handlers/revokeInvitation.ts index 59796d4b6..71df2d76d 100644 --- a/packages/user/src/model/invitations/handlers/revokeInvitation.ts +++ b/packages/user/src/model/invitations/handlers/revokeInvitation.ts @@ -50,9 +50,9 @@ const revokeInvitation = async ( }); } - invitation = await service.update(id, { + invitation = (await service.update(id, { revokedAt: formatDate(new Date(Date.now())), - }); + })) as Invitation & QueryResultRow; const data: Partial = invitation; diff --git a/packages/user/src/model/invitations/resolver.ts b/packages/user/src/model/invitations/resolver.ts index 73df40935..cb79a098b 100644 --- a/packages/user/src/model/invitations/resolver.ts +++ b/packages/user/src/model/invitations/resolver.ts @@ -313,9 +313,9 @@ const Mutation = { return mercuriusError; } - invitation = await service.update(arguments_.id, { + invitation = (await service.update(arguments_.id, { revokedAt: formatDate(new Date(Date.now())), - }); + })) as Invitation & QueryResultRow; return invitation; },