misc: finalized option setting logic

This commit is contained in:
Sheen Capadngan
2024-11-18 18:34:27 +08:00
parent 269c40c67c
commit e67218f170

View File

@ -37,11 +37,17 @@ export const TotpProvider = (): TDynamicProviderFns => {
const digitsFromUrl = urlObj.searchParams.get("digits");
const algorithm = urlObj.searchParams.get("algorithm");
authenticatorInstance.options = {
digits: digitsFromUrl ? +digitsFromUrl : undefined,
algorithm: algorithm ? (algorithm.toLowerCase() as HashAlgorithms) : undefined,
step: periodFromUrl ? +periodFromUrl : undefined
};
if (digitsFromUrl) {
authenticatorInstance.options = { digits: +digitsFromUrl };
}
if (algorithm) {
authenticatorInstance.options = { algorithm: algorithm.toLowerCase() as HashAlgorithms };
}
if (periodFromUrl) {
authenticatorInstance.options = { step: +periodFromUrl };
}
return { entityId, data: { TOTP: authenticatorInstance.generate(secret) } };
};