@@ -17,7 +17,10 @@ const {
1717 isRoleValid,
1818} = require ( '../../utils/roleUtils' ) ;
1919const { requireAdmin } = require ( '../../middleware/authentication' ) ;
20- const { ADMIN_ID , DEFAULT_USERS_ON_GET_REQUEST } = require ( '../../utils/constants' ) ;
20+ const {
21+ ADMIN_ID ,
22+ DEFAULT_USERS_ON_GET_REQUEST ,
23+ } = require ( '../../utils/constants' ) ;
2124
2225/**
2326 * Gets information about the user making this request.
@@ -59,7 +62,12 @@ router.get(
5962 const users = await identityProvider . listUsers ( params ) . promise ( ) ;
6063 await sendResponse ( res , 200 , '' , users ) ;
6164 } catch ( error ) {
62- await sendResponse ( res , 400 , 'Please send a proper pagination token.' , { } ) ;
65+ await sendResponse (
66+ res ,
67+ 400 ,
68+ 'Please send a proper pagination token.' ,
69+ { } ,
70+ ) ;
6371 }
6472 } ) ,
6573) ;
@@ -108,7 +116,9 @@ router.delete(
108116 // Check if user has this role
109117 const userRoles = await getUserRoles ( username ) ;
110118 const roleIndex = userRoles . indexOf ( roleId ) ;
111- if ( roleIndex === - 1 ) return sendResponse ( res , 400 , 'User does not have role' ) ;
119+ if ( roleIndex === - 1 ) {
120+ return sendResponse ( res , 400 , 'User does not have role' ) ;
121+ }
112122
113123 // Create params for the update in AWS
114124 userRoles . splice ( roleIndex , 1 ) ;
@@ -150,4 +160,27 @@ router.put(
150160 } ) ,
151161) ;
152162
163+ /**
164+ * Deletes a user. The URL param is the user's unique
165+ * username;
166+ */
167+ router . delete (
168+ '/:username' ,
169+ requireAdmin ,
170+ errorWrap ( async ( req , res ) => {
171+ const { username } = req . params ;
172+
173+ // Create the params for the deletion
174+ const params = {
175+ Username : username ,
176+ UserPoolId : USER_POOL_ID ,
177+ } ;
178+
179+ // Do the deletion
180+ const identityProvider = getIdentityProvider ( ) ;
181+ await identityProvider . adminDeleteUser ( params ) . promise ( ) ;
182+ await sendResponse ( res , 200 , 'Access updated' ) ;
183+ } ) ,
184+ ) ;
185+
153186module . exports = router ;
0 commit comments