
    Ui                         S SK J r   S SKJr  S SKJr  S SKJr  S SKJrJ	r	   " S S\
\5      r " S S	\	S
S9r " S S\	S
S9r " S S\	S
S9r " S S\	S
S9r " S S\	S
S9r " S S\	S
S9r " S S\	S
S9rg)    )datetime)Enum)Optional)UniqueConstraint)FieldSQLModelc                        \ rS rSrSrSrSrSrg)
PollStatus	   draftopenclosed N)__name__
__module____qualname____firstlineno__r   r   r   __static_attributes__r       IC:\Users\jasmi\Projects\line-hihaho-voting\backend\app\models\entities.pyr
   r
   	   s    EDFr   r
   c                   d    \ rS rSr% \" SS9r\\S'   Sr\\S'   \" \	R                  S9r\	\S'   S	rg
)Room   Tprimary_keyid namedefault_factory
created_atr   N)r   r   r   r   r   r   str__annotations__r   r   utcnowr!   r   r   r   r   r   r      s-    %B%D#N AJAr   r   T)tablec                      \ rS rSr% \" SS9r\\S'   \" SSS9r\\S'   \\S'   \" S	S
9r	\\S'   \" \
R                  S
9r\
\S'   Sr\\   \S'   Sr\\S'   Sr\\   \S'   \" SS
9r\\S'   \" SS
9r\\S'   \" \R(                  S9r\\S'   Srg)Poll   Tr   r   room.idforeign_keyindexroom_idtitlez[]defaultoptions_jsonstatusNwinner_optionr   winner_sourcedeadline_at{}config_jsonruntime_jsonr   r!   r   )r   r   r   r   r   r   r"   r#   r-   r1   r
   r   r2   r3   r   r4   r5   r   r7   r8   r$   r!   r   r   r   r   r'   r'      s    %B%Yd;GS;Jd+L#+z'7'78FJ8#'M8C='M3&*K(#*T*K*d+L#+ AJAr   r'   c                       \ rS rSr% \" SSSS94r\" SSS9r\\	   \
S	'   \" S
SS9r\\
S'   \" SS9r\\
S'   \\
S'   \" \R                  S9r\\
S'   Srg)Vote#   poll_idvoter_iduq_vote_poll_voterr   NTr0   r   r   zpoll.idr*   )r,   choicer   r!   r   )r   r   r   r   r   __table_args__r   r   r   intr#   r<   r"   r=   r   r$   r!   r   r   r   r   r:   r:   #   sa    &y*CWXZNd=B=Yd;GS;%Hc%K AJAr   r:   c                      \ rS rSr% \" SSS9r\\   \S'   \" SSS9r	\
\S'   Sr\
\S	'   Sr\
\S
'   Sr\
\S'   \" SSS9r\
\S'   \" SSS9r\
\S'   \" SSS9r\
\S'   Sr\
\S'   Sr\
\S'   \" \R(                  S9r\\S'   Srg)LineEventRecord-   NTr@   r   )uniquer,   event_idr   
event_typeraw_previewraw_jsonr0   r,   r-   participant_idline_user_id_hashreply_statusreply_errorr   r!   r   )r   r   r   r   r   r   r   rC   r#   rH   r"   rI   rJ   rK   r-   rM   rN   rO   rP   r   r$   r!   r   r   r   r   rE   rE   -   s    d=B=T2Hc2JKHc40GS0$7NC7"2T:s:L#K AJAr   rE   c                       \ rS rSr% \" SSSS94r\" SS9r\\	S'   \" S	SS
9r
\\	S'   \" SSS9r\\	S'   Sr\\	S'   Sr\\	S'   \" \R                  S9r\\	S'   \" \R                  S9r\\	S'   Srg)Participant;   r-   rN   uq_participant_room_liner?   Tr   r   r)   r*   r   rL   sourcedisplay_namer   	joined_atlast_seen_atr   N)r   r   r   r   r   rB   r   r   r"   r#   r-   rN   rU   rV   r   r$   rW   rX   r   r   r   r   rR   rR   ;   s    &y2ELfgiN%B%Yd;GS;"2T:s:FCL#@Ix@"8??CL(Cr   rR   c                       \ rS rSr% \" SS9r\\S'   \" SSS9r\\S'   \" SSS9r	\\S	'   \" S
SS9r
\\S'   S
r\\S'   \" \R                  S9r\\S'   \" \R                  S9r\\S'   \\S'   Srg)AudienceSessionG   Tr   
session_idparticipant.idr*   rM   r)   r-   r   rL   rN   rU   r   r!   rX   
expires_atr   N)r   r   r   r   r   r\   r"   r#   rM   r-   rN   rU   r   r$   r!   rX   r   r   r   r   rZ   rZ   G   s|    -J-,<DINCIYd;GS;"2T:s:FC AJA"8??CL(Cr   rZ   c                      \ rS rSr% \" SS9r\\S'   \" SSS9r\\S'   \" SSS9r	\\S	'   \" S
SS9r
\\S'   S
r\\S'   \" S
SS9r\\S'   \" SS9r\\S'   \" \R                  S9r\\S'   \\S'   Sr\\   \S'   Sr\\S'   Srg)	JoinTokenR   Tr   tokenr]   r*   rM   r)   r-   r   rL   rN   rU   rH   r6   r/   metadata_jsonr   r!   r^   Nlast_used_atr   	use_countr   )r   r   r   r   r   rb   r"   r#   rM   r-   rN   rU   rH   rc   r   r$   r!   rd   r   re   rC   r   r   r   r   r`   r`   R   s    4(E3(,<DINCIYd;GS;"2T:s:FC"D1Hc1t,M3, AJA'+L(8$+Isr   r`   N)r   enumr   typingr   
sqlalchemyr   sqlmodelr   r   r"   r
   r   r'   r:   rE   rR   rZ   r`   r   r   r   <module>rj      s       ' $d B84 BB84 BB84 BBhd B	D($ 	Dhd  r   