@@ -91,7 +91,11 @@ export async function sendVerificationEmail(
9191 throw new MonkeyError ( 400 , "Email already verified" ) ;
9292 }
9393
94- const userInfo = await UserDAL . getUser ( uid , "request verification email" ) ;
94+ const userInfo = await UserDAL . getPartialUser (
95+ uid ,
96+ "request verification email" ,
97+ [ "uid" , "name" , "email" ]
98+ ) ;
9599
96100 if ( userInfo . email !== email ) {
97101 throw new MonkeyError (
@@ -150,9 +154,10 @@ export async function sendForgotPasswordEmail(
150154
151155 try {
152156 const uid = ( await FirebaseAdmin ( ) . auth ( ) . getUserByEmail ( email ) ) . uid ;
153- const userInfo = await UserDAL . getUser (
157+ const userInfo = await UserDAL . getPartialUser (
154158 uid ,
155- "request forgot password email"
159+ "request forgot password email" ,
160+ [ "name" ]
156161 ) ;
157162
158163 const link = await FirebaseAdmin ( )
@@ -179,7 +184,12 @@ export async function deleteUser(
179184) : Promise < MonkeyResponse > {
180185 const { uid } = req . ctx . decodedToken ;
181186
182- const userInfo = await UserDAL . getUser ( uid , "delete user" ) ;
187+ const userInfo = await UserDAL . getPartialUser ( uid , "delete user" , [
188+ "banned" ,
189+ "name" ,
190+ "email" ,
191+ "discordId" ,
192+ ] ) ;
183193
184194 if ( userInfo . banned === true ) {
185195 await BlocklistDal . add ( userInfo ) ;
@@ -215,7 +225,12 @@ export async function resetUser(
215225) : Promise < MonkeyResponse > {
216226 const { uid } = req . ctx . decodedToken ;
217227
218- const userInfo = await UserDAL . getUser ( uid , "reset user" ) ;
228+ const userInfo = await UserDAL . getPartialUser ( uid , "reset user" , [
229+ "banned" ,
230+ "discordId" ,
231+ "email" ,
232+ "name" ,
233+ ] ) ;
219234 if ( userInfo . banned ) {
220235 throw new MonkeyError ( 403 , "Banned users cannot reset their account" ) ;
221236 }
@@ -247,7 +262,12 @@ export async function updateName(
247262 const { uid } = req . ctx . decodedToken ;
248263 const { name } = req . body ;
249264
250- const user = await UserDAL . getUser ( uid , "update name" ) ;
265+ const user = await UserDAL . getPartialUser ( uid , "update name" , [
266+ "name" ,
267+ "banned" ,
268+ "needsToChangeName" ,
269+ "lastNameChange" ,
270+ ] ) ;
251271
252272 if ( user . banned ) {
253273 throw new MonkeyError ( 403 , "Banned users cannot change their name" ) ;
@@ -486,7 +506,10 @@ export async function linkDiscord(
486506 throw new MonkeyError ( 403 , "Invalid user token" ) ;
487507 }
488508
489- const userInfo = await UserDAL . getUser ( uid , "link discord" ) ;
509+ const userInfo = await UserDAL . getPartialUser ( uid , "link discord" , [
510+ "banned" ,
511+ "discordId" ,
512+ ] ) ;
490513 if ( userInfo . banned ) {
491514 throw new MonkeyError ( 403 , "Banned accounts cannot link with Discord" ) ;
492515 }
@@ -538,7 +561,10 @@ export async function unlinkDiscord(
538561) : Promise < MonkeyResponse > {
539562 const { uid } = req . ctx . decodedToken ;
540563
541- const userInfo = await UserDAL . getUser ( uid , "unlink discord" ) ;
564+ const userInfo = await UserDAL . getPartialUser ( uid , "unlink discord" , [
565+ "banned" ,
566+ "discordId" ,
567+ ] ) ;
542568
543569 if ( userInfo . banned ) {
544570 throw new MonkeyError ( 403 , "Banned accounts cannot unlink Discord" ) ;
@@ -822,7 +848,10 @@ export async function updateProfile(
822848 const { uid } = req . ctx . decodedToken ;
823849 const { bio, keyboard, socialProfiles, selectedBadgeId } = req . body ;
824850
825- const user = await UserDAL . getUser ( uid , "update user profile" ) ;
851+ const user = await UserDAL . getPartialUser ( uid , "update user profile" , [
852+ "banned" ,
853+ "inventory" ,
854+ ] ) ;
826855
827856 if ( user . banned ) {
828857 throw new MonkeyError ( 403 , "Banned users cannot update their profile" ) ;
@@ -908,7 +937,9 @@ export async function setStreakHourOffset(
908937 const { uid } = req . ctx . decodedToken ;
909938 const { hourOffset } = req . body ;
910939
911- const user = await UserDAL . getUser ( uid , "update user profile" ) ;
940+ const user = await UserDAL . getPartialUser ( uid , "update user profile" , [
941+ "streak" ,
942+ ] ) ;
912943
913944 if (
914945 user . streak ?. hourOffset !== undefined &&
@@ -927,7 +958,10 @@ export async function toggleBan(
927958) : Promise < MonkeyResponse > {
928959 const { uid } = req . body ;
929960
930- const user = await UserDAL . getUser ( uid , "toggle ban" ) ;
961+ const user = await UserDAL . getPartialUser ( uid , "toggle ban" , [
962+ "banned" ,
963+ "discordId" ,
964+ ] ) ;
931965 const discordId = user . discordId ;
932966 const discordIdIsValid = discordId !== undefined && discordId !== "" ;
933967
@@ -1036,7 +1070,10 @@ export async function getTestActivity(
10361070) : Promise < MonkeyResponse > {
10371071 const { uid } = req . ctx . decodedToken ;
10381072 const premiumFeaturesEnabled = req . ctx . configuration . users . premium . enabled ;
1039- const user = await UserDAL . getUser ( uid , "testActivity" ) ;
1073+ const user = await UserDAL . getPartialUser ( uid , "testActivity" , [
1074+ "testActivity" ,
1075+ "premium" ,
1076+ ] ) ;
10401077 const userHasPremium = await UserDAL . checkIfUserIsPremium ( uid , user ) ;
10411078
10421079 if ( ! premiumFeaturesEnabled ) {
@@ -1063,7 +1100,9 @@ export async function getCurrentTestActivity(
10631100) : Promise < MonkeyResponse > {
10641101 const { uid } = req . ctx . decodedToken ;
10651102
1066- const user = await UserDAL . getUser ( uid , "current test activity" ) ;
1103+ const user = await UserDAL . getPartialUser ( uid , "current test activity" , [
1104+ "testActivity" ,
1105+ ] ) ;
10671106 const data = generateCurrentTestActivity ( user . testActivity ) ;
10681107 return new MonkeyResponse ( "Current test activity data retrieved" , data ) ;
10691108}
@@ -1073,7 +1112,7 @@ export async function getStreak(
10731112) : Promise < MonkeyResponse > {
10741113 const { uid } = req . ctx . decodedToken ;
10751114
1076- const user = await UserDAL . getUser ( uid , "streak" ) ;
1115+ const user = await UserDAL . getPartialUser ( uid , "streak" , [ "streak" ] ) ;
10771116
10781117 return new MonkeyResponse ( "Streak data retrieved" , user . streak ) ;
10791118}
0 commit comments