
    Eoh
                     z    d dl m Z mZ d dlmZ d dlmZ d dlmZ  G d de      Z G d de      Z	 G d	 d
e      Z
y)    )datetime	timedelta)Optional)Field)
BaseSchemac                   R   e Zd ZU  edd      Zee   ed<    edd      Zee   ed<    edd      Z	ee   ed<    edd	      Z
ee   ed
<    edd      Zee   ed<    edd      Zee   ed<    edd      Zee   ed<    edd      Zee   ed<    edd      Zee   ed<   y)SessionBaseNIP address of requestdefaultdescriptionip_addrSession JWTtokenzAccessing devicedevicezAccessing device's platformplatformz#Accessing device's Operating SystemoszRequest User-Agent string
user_agentExpiry Date and time of session
expires_atz Refresh Date and time of sessionrefreshed_atz@If the session is persisted, it will be active until next 7 dayspersist)__name__
__module____qualname__r   r   r   str__annotations__r   r   r   r   r   r   r   r   r   bool     _/var/www/html/wine-match-dev/backend/winematch-backend/src/apps/auth/schemas/session_schemas.pyr	   r	   	   s    "4=TUGXc]U =IE8C=I!$<NOFHSMO#D>[\Hhsm\d8]^B^ %d@[ \J\%*4Ef%gJ"g',TGi'jL(8$j#"dGXd^ r    r	   c                   L    e Zd ZU  ed      Zeed<    ed      Zee	   ed<   y)SessionSchemazId of Line Item resourcer   id5Unique id of session typically has the form 'se_xxx' 
session_idN)
r   r   r   r   r%   intr   r'   r   r   r   r    r!   r#   r#      s&     :;B; %2i jJjr    r#   c                      e Zd ZU  edd      Zee   ed<    edd      Zee   ed<    ed      Z	eed	<    ed
      Z
eed<    ed      Zeed<    edd      Zee   ed<    edd      Zee   ed<    edd      Zee   ed<    ed      Zee   ed<    ed      Zee   ed<    ed      Zee   ed<    ed      Zee   ed<    ed      Zee   ed<    ed      Zee   ed<    ed      Zee   ed<    ed      Zee   ed<    edd      Zee   ed<    edd      Zee   ed <    edd!      Zee   ed"<   y)#SessionCreateNr&   r   r'   r
   r   r   r$   r   r   r   z+ID of the user to whom this session belongsuser_idzuser login devicer   z User login locationlocationzURL of the previous webpagereferer)r   cityregioncountrylocpostaltimezonebrowser	is_mobilezOperating system of the devicer   z$Time when session was last refreshedr   zTime when session was created
created_at)r   r   r   r   r'   r   r   r   r   r   r   r   r+   r(   r   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r   r   r   r6   r   r    r!   r*   r*      s}    %d@w xJx"4=TUGXc]U=1E31 -NOJO%RSGSS!$<OPFHSMP#D>TUHhsmU"4=Z[GXc][  -D(3--!$/FHSM/"40GXc]0t,C#,!$/FHSM/#D1Hhsm1"40GXc]0 %d 3Ix~3d8XYBY',TGm'nL(8$n%*4Ed%eJ"er    r*   N)r   r   typingr   pydanticr   src.apps.base.schemas.commonr   r	   r#   r*   r   r    r!   <module>r:      s9    (   3* kK k
fK fr    