chore: add user schema

This commit is contained in:
2025-06-05 02:25:09 +01:00
parent 0879aec750
commit b70bdba0dc
9 changed files with 570 additions and 70 deletions
+19
View File
@@ -2,6 +2,7 @@ package api
import (
"net/http"
"regexp"
"github.com/go-playground/validator/v10"
"github.com/labstack/echo/v4"
@@ -17,3 +18,21 @@ func (validator *CustomValidator) Validate(i any) error {
}
return nil
}
func PasswordValidator(fieldLevel validator.FieldLevel) bool {
password := fieldLevel.Field().String()
var (
upper = regexp.MustCompile(`[A-Z]`)
lower = regexp.MustCompile(`[a-z]`)
number = regexp.MustCompile(`[0-9]`)
special = regexp.MustCompile(`[!@#~$%^&*()+|_{}:<>?,./;'\[\]\\-]`)
minChars = 8
)
return len(password) >= minChars &&
upper.MatchString(password) &&
lower.MatchString(password) &&
number.MatchString(password) &&
special.MatchString(password)
}