From 88aef9fc7bddda06a94c60820720b268067fefc6 Mon Sep 17 00:00:00 2001 From: homocodian Date: Mon, 5 Aug 2024 02:57:15 +0530 Subject: [PATCH] fix: latest resend not working in prod build --- apps/backend/package.json | 2 +- .../src/v1/controllers/user/password-reset.ts | 36 ++++++++++-------- bun.lockb | Bin 298184 -> 298688 bytes 3 files changed, 21 insertions(+), 17 deletions(-) diff --git a/apps/backend/package.json b/apps/backend/package.json index 63503c4..cbf7a25 100644 --- a/apps/backend/package.json +++ b/apps/backend/package.json @@ -31,7 +31,7 @@ "oslo": "^1.2.1", "pg": "^8.12.0", "postgres": "^3.4.4", - "resend": "^3.5.0", + "resend": "3.4.0", "ua-parser-js": "^1.0.38", "zod": "^3.23.8" }, diff --git a/apps/backend/src/v1/controllers/user/password-reset.ts b/apps/backend/src/v1/controllers/user/password-reset.ts index 3904083..b3eafc2 100644 --- a/apps/backend/src/v1/controllers/user/password-reset.ts +++ b/apps/backend/src/v1/controllers/user/password-reset.ts @@ -1,5 +1,5 @@ import { eq } from "drizzle-orm"; -import { Context } from "elysia"; +import { Context, error } from "elysia"; import { db } from "@/db"; import { userTable } from "@/db/schema/user"; @@ -22,23 +22,27 @@ export async function passwordReset(ctx: PasswordResetProps) { return `If a ${env.APP_NAME} account exists for ${ctx.body.email}, an e-mail will be sent with further instructions.`; } - const verificationToken = await createPasswordResetToken(user.id); + try { + const verificationToken = await createPasswordResetToken(user.id); - const verificationLink = - `${env.CLIENT_URL}/reset-password/` + verificationToken; + const verificationLink = + `${env.CLIENT_URL}/reset-password/` + verificationToken; - const { error } = await sendPasswordResetToken( - user.email, - verificationLink, - user.displayName - ); - - if (error) { - return ctx.error( - 500, - "Unable to send reset link and it's not your fault, please try again later" + const { error } = await sendPasswordResetToken( + user.email, + verificationLink, + user.displayName ); - } - return `If a ${env.APP_NAME} account exists for ${ctx.body.email}, an e-mail will be sent with further instructions.`; + if (error) { + return ctx.error( + 500, + "Unable to send reset link, please try again later" + ); + } + + return `If a ${env.APP_NAME} account exists for ${ctx.body.email}, an e-mail will be sent with further instructions.`; + } catch (err) { + return error(500, "Internal Server Error"); + } } diff --git a/bun.lockb b/bun.lockb index ebff7f483a5cc2907d32f7fcdf43e00d0caea1b0..eddd7ca8d1d80a9627f4078f9524402609e8b803 100644 GIT binary patch delta 5837 zcmeI0dstOf8phY&`yBJ2Tm=yo1xd?QXkmyq)*Nbd#9mL6B_55g=h!O(ZjsED@l5qcc>ayzkR;VC+bbUHnyudsjno56-1O*j^Y-Z_%X;e3C1yRa+)XblFe@YVpz?TAZiNv2a4?~l zS}dkx|5j^v`hhlMGS~FF<8h{izw#Lt(`UcdaD@A)#W{`_d*;E~E2zb^wi&me_P9PX zInF4~3K6T%Oo}tb!bKvZjh>loF}~p7#c=(>6}>dpV!DJ{yzMv*LoBA@n8Os*RJ|e5 zqLk?wC*nny z~MP>uI<&< z)-;D(35QF?;i?@j@LDT-(cwOV!=)mx+2Indx3Yx}ci85FtNJQ8^lLT!l_&I|+IXcv z&%pmP`li}=lS`ct(O3x`^~@xTX)tO7P-~+%46-P%>lqj0mE-!Ri&!!B_B?~$fOYu< zYJ>EWS#d^!8>$CSiZfNi4Mbm+k7Vrm17|Rw28Zt}RxVbTiI}6N@o`LNQR8)}a832T zx&7Lu`JReV&uNa&QiKrcMj=?oN*yQlX{qC(D%vMPxv+BnB&n038tTtNIqx~ir$M=} zGS86uyyVazmz)lixoTPWG~AuT-5YrWW}@7%$8mwtPA%mSIm^O zUl~Saw-slad0QE#ET&zzl`%B^Cjj4{0CFhfCxA|O0FE+vi+t_?9Aq%}4nQs)VlewI zK=54vo#xyH2y6s6#~_b_8UZR8ppL;Rin#}Hg~6J8 z0Bh(fgZyTI)MkLSRL~5N{4+ocgCa`#SsA0eOGPZ}s0l*FEodI!g60jhsRjH!QhtGK zq;!^IDrMP3ru&fhX)?dQ6O6>lckgnv1}uM6|$Y? zuiVHQWxKN`yO!B0~XcNm9q?jOIQaZ~)DrGrDCMU>Yn#^*9cCma# z?(HB)DTC!0?PEDkKJ6i2QzlC}9fHtoXACab8H4+l<~Rccx&WMGaDswd04f;dxB#4@ z(+n250`zkQI8AT30z|t3)G;_qF>U}?7_4yvI7e3*RUrRb-z%9^~zxN$G6EGrG`2Ao#nfM5C?1M;%PO3{LiTCvZfnsOw30c ze>F`Adm3&{k~x93LvZ_RU~OdG8Or5NFz$ob27YC*l_jz-=X8)PM=}@GJ?+dzECu8- zxFWhz+F7+jmY=;%=rZ3O^~WSz4#qbpyov~4Id+nHe4cKSwblKH`}0OMPCDHtEv9}xq? zpYBdD9zYL7r5s?H?AsHpI17+J@?8=>4F4K`_9(k0>jl41vX3PT09z{AKP7tvELXBm zBnt!^48}`i4;asK5W-*P`JVv9pLi6}L&8(CGp~c5lzk4%q?c?uEt`VT6adD{>x^U} z@OS{X6<+?_B^0s8jzpzoc>WcA5WLjRNfrhl%(I7bUb1lb5Ib`b7bJ`T3?={b7?WA% zSIed-G<62!C07H+tA)?w1;$J6iewh}V$3_Qu6o%QPyON!7_X!sB*VL@Ess~yP03>6 z`S}@Tf@qL14z&?>D1MX-5AvcPPV5i8B^h3Ei-)fv_Y1hj zTG`Ynn+Bk1KTj-5lVk(ohuDY^_asY1Jyhm3gW-?gG=y2Q7Ri#p!om3CzYoTz8;oc{ zpwPMts(%(w7Eh!B%KcLi{IbB4VFcsJ9g3JP=b($s<7co%xLz(@!FUkE5yQZEe!9uL zRQN$)JU`tf8v#GW&a#A`gd+j1@Lc>Q8wGzHqZ$D1Az2!HGGZX2Cm45m9N~k!L}&m2 z59SF(6xbkWpkz{4 znT1G}4qqkvhDtUTtXeX&WaGeU_~nmJ7AE1-@E2ubI2d2ac*OUTMasMhU_3iKs3^%M z!rww351@}^li(Y`__!9yCc|F_(62vb$>k#V^8xZdyHX@1U)r_h4FP3G8;$l>tNzxT^=hPh6i*OukrfF3EKef7fnSN}2HzF258Vn-=ey<# zL|$IHHpBzN5xjvrfwUm2S=qTwJFF_pX^y6a(q>J2Iqx0KlO8r`fn+vlhJGo?zAp8)#+g2fXm*(A@cXi(Fd4uM>D{c6bz%H_q-ZpCdO%qnDQCl~wO+-j!h*{92 z*;=Y6_Uc(vCr^19t;;S~ocCGw`Er$9=V(4ARhbYL9TFa5rVnRpBdy_cwEi7w>uhbl z_06|5gF;{DXq{>4GHo?}52fC@TBk0pzoxou{AxoQoqGmH2oH%0!71`+Vy@=XrS)f4 zFPD_DQ>LGaMM7kV1!ED7q~~f8U0Q!{UEwxwK*abhNk}l`2;pI((OR9Wtx}al>)hqq zcvTrnXIE$ucnfhQnJfNVW+@1S=U(F8i@`TFrCG{U1yS`+6^Xw02Ei|2- zAHBpRIGrlW=%*d4-MU~>H{(FJMMEzg7a~xI+_@)&=mOmi^@UD>GS8?J!XH`|EQFQI zjr@QQwbRFq@!byxrG4vcUIHp`M9<@WwCXZEN?O{4RR zSW6;1XPdb;OYXmO=%E_9Sa*NzKgvZM6C%b{W}b)Ky+(FQta&Hg2qQZ=*3u3ai5eb8 zUW(0pH>SzSAA=hWE{&QIHp@EX;vD_R6r070NlQgeGh~uYK5JARiZg!-mST*W7i;#$ zRHho$NwIQ{k##uEQiJ?RXWMd{r4u=4zj?!KGS-MW5@-H>y$}pV5mbk0@yARI=D?pC|qS%=F$Inwlv ztMC~(j1<+X-0r5^C7yScE^;|-|9NA?>Cw{9$T}S-GmI+yFE%<($5}qZ_a_=Fp}Ucn zY_phJg-Afo!;r}~nQT-w#mPdWqX{bpC0x&B$W)uz?>ixqjOwRjE%(EX2iJ{+c{a;x zhLi(cvCOmhntgc@`HVu`+)|>0^rjP`ji21;u}c=J0iX zNe4f>JrC?fGp>)lQ!G~__`fSpEvH{{VIB#gAO75nRe!9UFJU#(I|GyXgDykv7U()v z>!*}ktyks$p_O?zr~JCm{q7hK1@~VUn!O}IZmWo&w|Pfsz?WIOuPuAO@r9A! zcS*`!|4RCc(VKlrhAm6F{Bf)H>eu_mhpag>wf}PkV<+t2wX$Wy_~#cq>m|>;P`B%; z)EFwDK^CsN@1}iD`IzY;GfQst?Wz@l-ox!vl0IO-!4SXxrt)W zn<#$bCW_Zn6@Yw`{Qe2qKyz3&QVq+dsS~Ez4hNs1B*5e3ot0$nq}5m>}D!h{aClSawi?8B#?hEbq}pmiH;uL&HEl zGz`>3OOw^q0U&qMr%kyfbccu5g`6(hy?+WizOR&Dv(R>fATdI4Zv z6kDYjKZ1BUS&k@EkWY0VKxD=1_{Wpc1Mw~271BCYF9`mEV(S&_33d^T@tdk`FZdNW z7Wq1Fsd_vSj^`<8g@fU7q7O1%km0mNRqP9Y9xeG;eOs}9@GHRhJbnj^I}S#~z<5Hp zf$m;95H zn*16t#@*^8X;(!FC>n?0)S=iI_%K!P8W{dWA|hO|8;T`?4FluP|0Wn;H5t)~;3NUK z$yfx>StOoP-)PW6a`?4^C&L8D-`!NiZ2oE>^;C`UjwBX2Cr0!FcZxi4^w@z4;(Cc&p55)l2txXoll5bBMA4glbr zxfc-ymI%E=u_^E-FiwNO*xrYD6*t2Jy34_^N8FE0y{b4^ReS)9N5eO8w_+LaJQ`+0 z6nhZ9LA4E4EEB9zu`tD^f}H~6YlSQJ8~7&I9x)V*}<=J(qfbf{VTopl~QiYE|Hn(Px=w3{-3Ux7N&miJ!`!3%Mwedaf~w0y)~cV6o% zy?Ec}?fY}Y3X-kbW=ZynR?SDsSycU0Ps)VOEY+PX~(hr|797eHFzo(^uhFPO4v~_vq#NjnsR?XX__Z-7HN`ABK*wl}{l* zLl2U3X)w!nN;dR}Uap@^SNP^8L`>U~jOyX2K5VGiZZ`~lr6#34Y=u5elb%#qtViJ8 zp~fkfi}gJGU`h*0^jxV^M~R+pZ76n*WJW1XD%ImLHv7_26kGA%F~qkD>^)cMudS0& z^me@I0Xf|6kzg7UVgJK3rkEbqmID41g=jCJ9ZO98dyO@}l0GocNZjyv?v8s#CcYED u*jZk_*hG^{^_~<^XnM(dK+%T9+-e~0DKz=sdZ+pc89yaEt9BNecK-`0l5zR~