feat(core): Refactored plugin and request handling to use idpInterfaces
This commit is contained in:
@@ -19,7 +19,7 @@ export class UserManager {
|
||||
constructor(receptionRefArg: Reception) {
|
||||
this.receptionRef = receptionRefArg;
|
||||
this.receptionRef.typedrouter.addTypedRouter(this.typedrouter);
|
||||
this.typedrouter.addTypedHandler<plugins.lointReception.request.IReq_GetRolesAndOrganizationsForUserId>(
|
||||
this.typedrouter.addTypedHandler<plugins.idpInterfaces.request.IReq_GetRolesAndOrganizationsForUserId>(
|
||||
new plugins.typedrequest.TypedHandler('getRolesAndOrganizationsForUserId', async reqArg => {
|
||||
console.log('user manager: getting roles and orgs');
|
||||
const user = await this.getUserByJwtValidation(reqArg.jwt);
|
||||
@@ -33,6 +33,29 @@ export class UserManager {
|
||||
}
|
||||
})
|
||||
)
|
||||
|
||||
this.typedrouter.addTypedHandler<plugins.idpInterfaces.request.IReq_WhoIs>(
|
||||
new plugins.typedrequest.TypedHandler('whoIs', async reqArg => {
|
||||
const user = await this.getUserByJwtValidation(reqArg.jwt);
|
||||
if (!user) {
|
||||
throw new plugins.typedrequest.TypedResponseError('User not found');
|
||||
}
|
||||
return {
|
||||
user: {
|
||||
id: user.id,
|
||||
data: {
|
||||
name: user.data.name,
|
||||
username: user.data.username,
|
||||
email: user.data.email,
|
||||
mobileNumber: user.data.mobileNumber,
|
||||
connectedOrgs: user.data.connectedOrgs,
|
||||
status: null,
|
||||
password: null,
|
||||
} as plugins.idpInterfaces.data.IUser['data']
|
||||
}
|
||||
}
|
||||
})
|
||||
)
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -51,7 +74,7 @@ export class UserManager {
|
||||
* faster than the "getUserByJwt"
|
||||
*/
|
||||
public async getUserByJwtValidation(jwtStringArg: string) {
|
||||
const jwtDataArg: plugins.lointReception.data.IJwt = await this.receptionRef.jwtManager.smartjwtInstance.verifyJWTAndGetData(jwtStringArg);
|
||||
const jwtDataArg: plugins.idpInterfaces.data.IJwt = await this.receptionRef.jwtManager.smartjwtInstance.verifyJWTAndGetData(jwtStringArg);
|
||||
const resultingUser = await this.CUser.getInstance({
|
||||
id: jwtDataArg.data.userId
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user