2024-01-05 14:17:10 +01:00
|
|
|
import env from "../environment"
|
2024-01-02 16:58:47 +01:00
|
|
|
|
2024-01-05 14:17:10 +01:00
|
|
|
export const PASSWORD_MIN_LENGTH = +(env.PASSWORD_MIN_LENGTH || 8)
|
|
|
|
export const PASSWORD_MAX_LENGTH = +(env.PASSWORD_MAX_LENGTH || 512)
|
2024-01-02 12:29:27 +01:00
|
|
|
|
|
|
|
export function validatePassword(
|
|
|
|
password: string
|
|
|
|
): { valid: true } | { valid: false; error: string } {
|
2024-01-02 16:38:58 +01:00
|
|
|
if (!password || password.length < PASSWORD_MIN_LENGTH) {
|
2024-01-02 13:22:38 +01:00
|
|
|
return {
|
|
|
|
valid: false,
|
2024-01-03 10:12:22 +01:00
|
|
|
error: `Password invalid. Minimum ${PASSWORD_MIN_LENGTH} characters.`,
|
2024-01-02 13:22:38 +01:00
|
|
|
}
|
2024-01-02 12:29:27 +01:00
|
|
|
}
|
|
|
|
|
2024-01-02 16:38:58 +01:00
|
|
|
if (password.length > PASSWORD_MAX_LENGTH) {
|
2024-01-02 15:16:09 +01:00
|
|
|
return {
|
|
|
|
valid: false,
|
2024-01-02 16:38:58 +01:00
|
|
|
error: `Password invalid. Maximum ${PASSWORD_MAX_LENGTH} characters.`,
|
2024-01-02 15:16:09 +01:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2024-01-02 12:29:27 +01:00
|
|
|
return { valid: true }
|
|
|
|
}
|