oskar.gmerek
06/13/2022, 4:46 PMrp_st
06/13/2022, 5:05 PMoskar.gmerek
06/13/2022, 5:07 PMrp_st
06/13/2022, 5:08 PMoskar.gmerek
06/13/2022, 5:10 PMrp_st
06/13/2022, 5:10 PMoskar.gmerek
06/13/2022, 5:11 PMrp_st
06/13/2022, 5:12 PMrp_st
06/13/2022, 5:12 PMrp_st
06/13/2022, 5:14 PMrp_st
06/13/2022, 5:14 PMoskar.gmerek
06/13/2022, 5:19 PMoskar.gmerek
06/13/2022, 5:19 PMrp_st
06/13/2022, 5:19 PMoskar.gmerek
06/13/2022, 5:19 PMoskar.gmerek
06/13/2022, 5:20 PMrp_st
06/13/2022, 5:27 PMts
ThirdPartyEmailPassword.init({
override: {
apis: (oI) => {
return {
...oI,
emailPasswordSignInPOST: (input) => {
// we can access req later on in the API
input.userContext.req = input.options.req;
return oI.emailPasswordSignInPOST!(input);
},
emailPasswordSignUpPOST: (input) => {
// we can access req later on in the API
input.userContext.req = input.options.req;
return oI.emailPasswordSignUpPOST!(input);
},
thirdPartySignInUpPOST: (input) => {
// we can access req later on in the API
input.userContext.req = input.options.req;
input.options.req.getHeaderValue('User-Agent');
return oI.thirdPartySignInUpPOST!(input);
},
}
}
}
})
Session.init({
override: {
functions: (oI) => {
return {
...oI,
createNewSession: async function (input) {
// same req as what's available in the sign in / sign up APIs
let req = input.userContext.req;
let userAgent = req.getHeaderValue('User-Agent');
if (userAgent !== undefined) {
// this saves the user-agent info in the session
// so that it can be fetched later on when displaying the user's
// device list
input.sessionData = {
...input.sessionData,
userAgent
}
}
return oI.createNewSession(input);
}
}
}
}
})
In the recipeList in supertokens.initrp_st
06/13/2022, 5:29 PMts
async function getDevicesForAUser(userId: string) {
let sessions = await Session.getAllSessionHandlesForUser(userId);
return sessions.map(async sessionHandle => {
let sessionInfo = await Session.getSessionInformation(sessionHandle);
let sessionData = sessionInfo.sessionData;
let userAgent = sessionData.userAgent;
return {
sessionHandle,
userAgent
}
})
}
oskar.gmerek
06/13/2022, 8:26 PMrp_st
06/14/2022, 4:06 AM