diff --git a/web/src/lib/components/user-settings-page/PincodeInput.svelte b/web/src/lib/components/user-settings-page/PincodeInput.svelte index a14e28335f..eb7e8aa0d0 100644 --- a/web/src/lib/components/user-settings-page/PincodeInput.svelte +++ b/web/src/lib/components/user-settings-page/PincodeInput.svelte @@ -18,9 +18,7 @@ }); const focusNext = (index: number) => { - if (index < pinLength - 1) { - pincodeInputElements[index + 1]?.focus(); - } + pincodeInputElements[Math.min(index + 1, pinLength - 1)]?.focus(); }; const focusPrev = (index: number) => { @@ -37,7 +35,7 @@ currentPinValue = value.slice(0, 1); } - if (!/^\d*$/.test(value)) { + if (Number.isNaN(Number(value))) { pinValues[index] = ''; target.value = ''; return; @@ -82,7 +80,7 @@ return; } default: { - if (!/^\d$/.test(event.key)) { + if (Number.isNaN(Number(event.key))) { event.preventDefault(); } break; diff --git a/web/src/lib/components/user-settings-page/PincodeSettings.svelte b/web/src/lib/components/user-settings-page/PincodeSettings.svelte index fc7f8a5955..ce890f90f4 100644 --- a/web/src/lib/components/user-settings-page/PincodeSettings.svelte +++ b/web/src/lib/components/user-settings-page/PincodeSettings.svelte @@ -34,10 +34,7 @@ }); const canSubmit = $derived( - (hasPincode ? currentPincode.length === 6 : true) && - newPincode.length === 6 && - confirmPincode.length === 6 && - newPincode === confirmPincode, + (hasPincode ? currentPincode.length === 6 : true) && confirmPincode.length === 6 && newPincode === confirmPincode, ); const handleCreatePincode = async () => {