mirror of
https://github.com/logto-io/logto.git
synced 2025-01-06 20:40:08 -05:00
fix(core): save the interation result
save the interaction result
This commit is contained in:
parent
d8b5118c5e
commit
bf71698250
2 changed files with 8 additions and 6 deletions
|
@ -57,13 +57,13 @@ export const codeVerificationRecordDataGuard = z.object({
|
||||||
}) satisfies ToZodObject<CodeVerificationRecordData>;
|
}) satisfies ToZodObject<CodeVerificationRecordData>;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* CodeVerification is a verification factor the verifies a given identifier by sending a verification code
|
* CodeVerification is a verification type that verifies a given identifier by sending a verification code
|
||||||
* to the user's email or phone number.
|
* to the user's email or phone.
|
||||||
*
|
*
|
||||||
* @remark The verification code is sent to the user's email or phone number and the user is required to enter the code to verify.
|
* @remark The verification code is sent to the user's email or phone and the user is required to enter the code to verify.
|
||||||
* If the identifier is for a existing user, the userId will be set after the verification.
|
* If the identifier is for a existing user, the userId will be set after the verification.
|
||||||
*
|
*
|
||||||
* To avoid the redundant naming, the `CodeVerification` class is used instead of `VerificationCodeVerification`.
|
* To avoid the redundant naming, the `CodeVerification` is used instead of `VerificationCodeVerification`.
|
||||||
*/
|
*/
|
||||||
export class CodeVerification implements Verification {
|
export class CodeVerification implements Verification {
|
||||||
/**
|
/**
|
||||||
|
@ -110,7 +110,7 @@ export class CodeVerification implements Verification {
|
||||||
this.verified = verified;
|
this.verified = verified;
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Returns true if a userId is set */
|
/** Returns true if the identifier has been verified by a given code */
|
||||||
get isVerified() {
|
get isVerified() {
|
||||||
return this.verified;
|
return this.verified;
|
||||||
}
|
}
|
||||||
|
@ -130,7 +130,7 @@ export class CodeVerification implements Verification {
|
||||||
* - `verifiedUserId` will be set if the `identifier` matches any existing user's record.
|
* - `verifiedUserId` will be set if the `identifier` matches any existing user's record.
|
||||||
*/
|
*/
|
||||||
async verify(identifier: VerificationCodeIdentifier, code?: string) {
|
async verify(identifier: VerificationCodeIdentifier, code?: string) {
|
||||||
// Throw code not found error is the input identifier is not match with the verification record
|
// Throw code not found error if the input identifier does not match the current identifier
|
||||||
assertThat(identifier === this.identifier, 'verification_code.not_found');
|
assertThat(identifier === this.identifier, 'verification_code.not_found');
|
||||||
|
|
||||||
// Throw code not found error if the code is not provided
|
// Throw code not found error if the code is not provided
|
||||||
|
|
|
@ -39,6 +39,8 @@ export default function verificationCodeRoutes<T extends WithLogContext>(
|
||||||
|
|
||||||
ctx.interactionSession.appendVerificationRecord(codeVerification);
|
ctx.interactionSession.appendVerificationRecord(codeVerification);
|
||||||
|
|
||||||
|
await ctx.interactionSession.save();
|
||||||
|
|
||||||
ctx.body = {
|
ctx.body = {
|
||||||
verificationId: codeVerification.id,
|
verificationId: codeVerification.id,
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue