taler-typescript-core

Wallet core logic and WebUIs for various components
Log | Files | Refs | Submodules | README | LICENSE

commit 90ec5b51eadc6e018fd0b2e64dfd3fee647db281
parent 26d94c4ba7dd12cfa433d0c037f3bba8f73995f4
Author: Sebastian <sebasjm@gmail.com>
Date:   Fri, 30 Dec 2022 14:23:58 -0300

marc suggestions from email

Diffstat:
Mpackages/demobank-ui/src/pages/LoginForm.tsx | 10+++++++---
Mpackages/demobank-ui/src/pages/RegistrationPage.tsx | 11++++++-----
2 files changed, 13 insertions(+), 8 deletions(-)

diff --git a/packages/demobank-ui/src/pages/LoginForm.tsx b/packages/demobank-ui/src/pages/LoginForm.tsx @@ -23,7 +23,7 @@ import { BackendStateHandler } from "../hooks/backend.js"; import { bankUiSettings } from "../settings.js"; import { getBankBackendBaseUrl, undefinedIfEmpty } from "../utils.js"; import { ShowInputErrorLabel } from "./ShowInputErrorLabel.js"; -import { USERNAME_REGEX } from "./RegistrationPage.js"; +import { USERNAME_REGEX, PASSWORD_REGEX } from "./RegistrationPage.js"; /** * Collect and submit login data. @@ -42,9 +42,13 @@ export function LoginForm(): VNode { username: !username ? i18n.str`Missing username` : !USERNAME_REGEX.test(username) - ? i18n.str`Use only letter and numbers starting with a lower case letter` + ? i18n.str`Use letters and numbers only, and start with a lowercase letter` + : undefined, + password: !password + ? i18n.str`Missing password` + : !PASSWORD_REGEX.test(password) + ? i18n.str`Use letters and numbers only, and start with a lowercase letter or number` : undefined, - password: !password ? i18n.str`Missing password` : undefined, }); return ( diff --git a/packages/demobank-ui/src/pages/RegistrationPage.tsx b/packages/demobank-ui/src/pages/RegistrationPage.tsx @@ -47,7 +47,8 @@ export function RegistrationPage(): VNode { ); } -export const USERNAME_REGEX = /^[a-z][a-zA-Z0-9]+$/; +export const USERNAME_REGEX = /^[a-z][a-zA-Z0-9]*$/; +export const PASSWORD_REGEX = /^[a-z0-9][a-zA-Z0-9]*$/; /** * Collect and submit registration data. @@ -65,17 +66,17 @@ function RegistrationForm(): VNode { username: !username ? i18n.str`Missing username` : !USERNAME_REGEX.test(username) - ? i18n.str`Use only letter and numbers starting with a lower case letter` + ? i18n.str`Use letters and numbers only, and start with a lowercase letter` : undefined, password: !password ? i18n.str`Missing password` - : !USERNAME_REGEX.test(password) - ? i18n.str`Use only letter and numbers starting with a lower case letter` + : !PASSWORD_REGEX.test(password) + ? i18n.str`Use letters and numbers only, and start with a lowercase letter` : undefined, repeatPassword: !repeatPassword ? i18n.str`Missing password` : repeatPassword !== password - ? i18n.str`Password don't match` + ? i18n.str`Passwords don't match` : undefined, });