
    Eoh4                     R    d dl mZ d dlmZmZmZ d dlmZ d dlm	Z	  G d de      Z
y)    )Optional)EmailStrFieldmodel_validator)
BaseSchema)EMAIL_REGEXc                       e Zd ZU eed<   eed<   eed<   eed<   eed<   dZee   ed<    ed	      d
        Z	 ed	      d        Z
y)UserRegisterSchemaemailphonepasswordconfirm_password
first_nameN	last_nameafter)modec                 N    |j                   |j                  k7  rt        d      |S )NzPasswords do not match)r   r   
ValueErrorclsmodels     \/var/www/html/wine-match-dev/backend/winematch-backend/src/apps/auth/schemas/user_schemas.pypasswords_matchz"UserRegisterSchema.passwords_match   s%    >>U333566    c                 r    |j                   rt        j                  |j                         st        d      |S )NzInvalid email address format)r   r   matchr   r   s     r   email_is_validz!UserRegisterSchema.email_is_valid   s+    {{+"3"3EKK"@;<<r   )__name__
__module____qualname__r   __annotations__strr   r   r   r   r    r   r   r
   r
   	   s^    OJM O  $Ix}#'" #
 '" #r   r
   N)typingr   pydanticr   r   r   src.apps.base.schemas.commonr   src.utils.regexpr   r
   r#   r   r   <module>r(      s      5 5 3 ( r   