Ë
    +Pkjz  ã                   óv  — d dl mZ d dlmZmZmZ  G d„ de«      Z G d„ de«      Z G d„ de«      Z G d	„ d
e«      Z	 G d„ de«      Z
 G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ d e«      Z G d!„ d"e«      Z G d#„ d$e«      Z G d%„ d&e«      Z G d'„ d(e«      Z G d)„ d*e«      Z G d+„ d,e«      Z G d-„ d.e«      Z G d/„ d0e«      Z G d1„ d2e«      Z G d3„ d4e«      Z G d5„ d6e«      Z G d7„ d8e«      Z y9):é    )ÚLiteral)Ú	BaseModelÚFieldÚmodel_validatorc                   ó   — e Zd ZU dZeed<   y)ÚLoginSchemaFÚforceN)Ú__name__Ú
__module__Ú__qualname__r	   ÚboolÚ__annotations__© ó    ú>/var/www/html/sergio/sergio-backend/app/schemas/hudl_schema.pyr   r      s   … Ø€Eˆ4Ôr   r   c                   ó0   — e Zd ZU  edddg¬«      Zeed<   y)ÚExchangeSearchSchema.é   ÚDetroit)Ú
min_lengthÚexamplesÚqueryN)r
   r   r   r   r   Ústrr   r   r   r   r   r   
   s   … Ù�s q°I°;Ô?€Eˆ3Ô?r   r   c                   óz   — e Zd ZU dZ eddg¬«      Zeed<   ed   ed<   ed   ed	<    ed
dgd¬«      Z	ed
z  ed<   y
)ÚExchangeTypeSchemau%  
    team_id: opponent from GET /exchange/data (suggested) or GET /exchange/search/teams (search)
    owner_team_id: our Hudl team (Football / Basketball) â€” opens /manage/exchanges/{owner}
    team_source: which list the opponent came from
    exchange_type: two-way | one-way | request
    .ú<dynamic_from_playwright>©r   Úteam_id)Ú	suggestedÚsearchÚteam_source)ztwo-wayzone-wayÚrequestÚexchange_typeNz/Selected org team (Football/Basketball) Hudl id©r   ÚdescriptionÚowner_team_id)
r
   r   r   Ú__doc__r   r   r   r   r   r&   r   r   r   r   r      sW   … ññ ˜Ð(CÐ'DÔE€GˆSÓEØÐ.Ñ/Ó/ØÐ:Ñ;Ó;Ù %ØØ-Ð.ØEô!€M�3˜‘:ô r   r   c                   ó<   — e Zd ZU dZ edddgg¬«      Zee   ed<   y)ÚVideoSelectSchemazM
    video_indices: List of indices from GET /exchange/videos to select.
    .r   é   r   Úvideo_indicesN)	r
   r   r   r'   r   r+   ÚlistÚintr   r   r   r   r)   r)      s$   … ññ  % S°Q¸°F°8Ô<€M�4˜‘9Ô<r   r)   c                   ó:   — e Zd ZU dZ eedgg¬«      Zee   ed<   y)ÚPlaylistSelectSchemazHplaylist_indices from the Choose Playlist(s) step (Football multi-step).r   )Údefault_factoryr   Úplaylist_indicesN)	r
   r   r   r'   r   r,   r1   r-   r   r   r   r   r/   r/   &   s   … ÙRÙ"'¸ÈÈÀuÔ"MÐ�d˜3‘iÔMr   r/   c                   ón   — e Zd ZU  eddg¬«      Zeed<    eddg¬«      Zeed<    eddg¬«      Zeed<   y)ÚStatsSchemaFTr   Úinclude_statsÚinclude_team_statsÚinclude_player_statsN)	r
   r   r   r   r4   r   r   r5   r6   r   r   r   r3   r3   +   s=   … Ù °°Ô7€M�4Ó7Ù$ T°T°FÔ;Ð˜Ó;Ù!& t°t°fÔ!=Ð˜$Ô=r   r3   c                   ó4   — e Zd ZU  eddg¬«      Zedz  ed<   y)ÚNotesSchemaNzHere are the requested videosr   Úmessage)r
   r   r   r   r9   r   r   r   r   r   r8   r8   1   s   … Ù Ð0OÐ/PÔQ€GˆS�4‰ZÔQr   r8   c                   ó.   — e Zd ZU  eddg¬«      Zeed<   y)ÚDeleteFileSchema.r   r   Ú
file_indexN)r
   r   r   r   r<   r-   r   r   r   r   r;   r;   5   ó   … Ù˜C¨1¨#Ô.€J�Ô.r   r;   c                   ó”   — e Zd ZU  eddg¬«      Zedz  ed<    ed«      Zed   ed<    eddg¬«      Z	e
dz  ed	<    ed
«      Zeed<   y)ÚVideoDetailsSchemaNr*   r   Úschedule_event_indexÚGame)rA   ÚPracticeÚScoutÚ
video_typezMy Custom TitleÚtitleFÚcheck_event)r
   r   r   r   r@   r-   r   rD   r   rE   r   rF   r   r   r   r   r?   r?   9   sU   … Ù',¨T¸Q¸CÔ'@Ð˜# ™*Ó@Ù7<¸V³}€J�Ð3Ñ4ÓDÙ˜dÐ.?Ð-@ÔA€Eˆ3�‰:ÓAÙ˜e›€K�Ô$r   r?   c                   ó.   — e Zd ZU  eddg¬«      Zeed<   y)ÚCancelSchema.r   r   Ú
step_indexN)r
   r   r   r   rI   r-   r   r   r   r   rH   rH   @   r=   r   rH   c                   ó.   — e Zd ZU  eddg¬«      Zeed<   y)Ú
BackSchema.r   r   Ú
back_indexN)r
   r   r   r   rL   r-   r   r   r   r   rK   rK   D   r=   r   rK   c                   óÂ   — e Zd ZU  eddg¬«      Zeed<    edddg¬«      Zeed<    edd	g¬
«      Z	edz  ed<    eddg¬
«      Z
edz  ed<    eddg¬«      Zedz  ed<   y)ÚActiveExchangeDetailsSchema.zEd White High Schoolr   Únamer   )ÚdefaultÚger   ÚindexNÚ6a1439c41a1e880488caec21)rP   r   Úexchange_idz3/teams/{team_id}/exchanges/6a1439c41a1e880488caec21Úhrefr   r   )r
   r   r   r   rO   r   r   rR   r-   rT   rU   r   r   r   r   rN   rN   H   s~   … Ù�cÐ%;Ð$<Ô=€Dˆ#Ó=Ù˜q Q°!°Ô5€Eˆ3Ó5Ù#¨DÐ<VÐ;WÔX€K��t‘ÓXÙØØGÐHô€Dˆ#�‰*ó ñ   Ð0KÐ/LÔM€GˆS�4‰ZÔMr   rN   c                   ó4   — e Zd ZU  eddg¬«      Zed   ed<   y)ÚActiveExchangeActionSchema.Úcancelr   )ÚdeleterX   ÚdeclineÚchooseÚaddÚaction_typeN)r
   r   r   r   r]   r   r   r   r   r   rW   rW   S   s!   … ÙKPØ�x�jôL€K�ÐGÑHô r   rW   c                   ó.   — e Zd ZU  eddg¬«      Zeed<   y)ÚVideoStreamSchema.ú#https://app.hudl.com/watch/team/...r   Ú	watch_urlN)r
   r   r   r   ra   r   r   r   r   r   r_   r_   Y   s   … Ù˜3Ð*OÐ)PÔQ€IˆsÔQr   r_   c                   ó.   — e Zd ZU  eddg¬«      Zeed<   y)ÚLibraryActionBaseSchema.r   r   Úvideo_indexN)r
   r   r   r   rd   r-   r   r   r   r   rc   rc   ]   s   … Ù˜S¨A¨3Ô/€K�Ô/r   rc   c                   ó.   — e Zd ZU  ed«      Zed   ed<   y)ÚLibraryUpdateTypeSchemarA   )rA   rC   rB   rD   N)r
   r   r   r   rD   r   r   r   r   r   rf   rf   a   s   … Ù7<¸V³}€J�Ð3Ñ4ÔDr   rf   c                   ó.   — e Zd ZU  eddg¬«      Zeed<   y)ÚLibraryUpdateEventSchema.ÚNoner   Ú
event_nameN)r
   r   r   r   rj   r   r   r   r   r   rh   rh   e   s   … Ù˜C¨6¨(Ô3€J�Ô3r   rh   c                   óN   — e Zd ZU  eddg¬«      Zedz  ed<    ed«      Zeed<   y)ÚLibraryRenameSchemaNzNew Video Namer   Únew_nameFrX   )	r
   r   r   r   rm   r   r   rX   r   r   r   r   rl   rl   i   s)   … Ù  Ð1AÐ0BÔC€Hˆc�D‰jÓCÙ˜“<€FˆDÔr   rl   c                   óH   — e Zd ZU  ed«      Zed   ed<    ed«      Zeed<   y)ÚLibraryEmailDownloadSchemaÚvideo_and_stats)rp   Ú
video_onlyÚoptionFrX   N)	r
   r   r   r   rr   r   r   rX   r   r   r   r   ro   ro   n   s&   … Ù7<Ð=NÓ7O€FˆGÐ3Ñ4ÓOÙ˜“<€FˆDÔr   ro   c                   óR   — e Zd ZU dZ eddg¬«      Zeed<    eddg¬«      Zeed<   y)	ÚLibraryDownloadToMediaSchemaz?Download a Hudl library video and persist it under media/{id}/..zUtica vs Powers Catholicr   rE   r`   ra   N)	r
   r   r   r'   r   rE   r   r   ra   r   r   r   rt   rt   s   s/   … ÙIá�sÐ&@Ð%AÔB€Eˆ3ÓBÙ˜3Ð*OÐ)PÔQ€IˆsÔQr   rt   c                   ó€   — e Zd ZU dZ eddg¬«      Zedz  ed<    edddgd¬	«      Ze	dz  ed
<    e
d¬«      d„ «       Zy)ÚLibraryDownloadByRefSchemazIDownload by library tile index or Hudl watch URL `v` id. Send either one.Nr   r   rd   Ú95304146Ú'VmlkZW82YTUwOTA3MGJmN2NlYzQ5Njk4M2IwNmUz@Hudl video id from ?v= (numeric or encoded; trailing = optional)r$   ÚvÚafter)Úmodec                 óŽ   — | j                   d u}t        | j                  xs dj                  «       «      }|s|st	        d«      ‚| S )NÚ zProvide either video_index or v)rd   r   ry   ÚstripÚ
ValueError)ÚselfÚ	has_indexÚhas_vs      r   Úrequire_video_index_or_vz3LibraryDownloadByRefSchema.require_video_index_or_v„   sC   € à×$Ñ$¨DÐ0ˆ	Ü�d—f‘f’l ×)Ñ)Ó+Ó,ˆÙ¡ÜÐ>Ó?Ð?Øˆr   )r
   r   r   r'   r   rd   r-   r   ry   r   r   rƒ   r   r   r   rv   rv   z   sY   … ÙSá# D°A°3Ô7€K��t‘Ó7ÙØØÐGÐHØVô€A€sˆT�zó ñ ˜'Ô"ñó #ñr   rv   c                   óR   — e Zd ZU  eed¬«      Zee   ed<    eddg¬«      Zeed<   y)	ÚManageLibraryDownloadItemSchemaú*Folder labels from season to parent folder©r0   r%   Úpath.úCommunication/Cadencer   ÚlabelN)	r
   r   r   r   r,   rˆ   r   r   rŠ   r   r   r   r…   r…   �   s-   … Ù¨DÐ>jÔk€Dˆ$ˆs‰)ÓkÙ�sÐ&=Ð%>Ô?€Eˆ3Ô?r   r…   c                   óž   — e Zd ZU  eddg¬«      Zedz  ed<    eddg¬«      Zeed<   ee	   ed<    ed	«      Z
ed
   ed<    ed«      Zeed<   y)ÚManageLibraryDownloadSchemaNr   r   r   .ú2026-2027 SeasonÚseasonÚitemsÚmultiple)r�   ÚsingleÚpresentationÚformatTÚinclude_breakdown)r
   r   r   r   r   r   r   rŽ   r,   r…   r“   r   r”   r   r   r   r   rŒ   rŒ   ’   s`   … Ù Ð0KÐ/LÔM€GˆS�4‰ZÓMÙ˜Ð'9Ð&:Ô;€FˆCÓ;ØÐ/Ñ0Ó0Ù<AÀ*Ó<M€FˆGÐ8Ñ9ÓMÙ# D›kÐ�tÔ)r   rŒ   c                   ó¶   — e Zd ZU  eddg¬«      Zedz  ed<    eddg¬«      Zeed<    eed¬	«      Z	ee   ed
<    eddg¬«      Z
eed<    edd¬«      Zeed<   y)ÚManageLibrarySelectSchemaNr   r   r   .r�   rŽ   r†   r‡   rˆ   r‰   rŠ   Tz+True to check the clip, False to uncheck it)r%   Úselected)r
   r   r   r   r   r   r   rŽ   r,   rˆ   rŠ   r—   r   r   r   r   r–   r–   š   sm   … Ù Ð0KÐ/LÔM€GˆS�4‰ZÓMÙ˜Ð'9Ð&:Ô;€FˆCÓ;Ù¨DÐ>jÔk€Dˆ$ˆs‰)ÓkÙ�sÐ&=Ð%>Ô?€Eˆ3Ó?Ù˜4Ð-ZÔ[€HˆdÔ[r   r–   c                   ó˜   — e Zd ZU  eddg¬«      Zedz  ed<    eddg¬«      Zeed<    eed¬	«      Z	ee   ed
<    eddg¬«      Z
eed<   y)ÚManageLibraryClipMetaSchemaNr   r   r   .z2022-2023 SeasonrŽ   r†   r‡   rˆ   z+*** Alabama Defense (Derrick Ansley) #2 ***rŠ   )r
   r   r   r   r   r   r   rŽ   r,   rˆ   rŠ   r   r   r   r™   r™   ¢   s[   … Ù Ð0KÐ/LÔM€GˆS�4‰ZÓMÙ˜Ð'9Ð&:Ô;€FˆCÓ;Ù¨DÐ>jÔk€Dˆ$ˆs‰)ÓkÙ�sÐ&SÐ%TÔU€Eˆ3ÔUr   r™   c                   ó|   — e Zd ZU  eddg¬«      Zeed<    eddg¬«      Zedz  ed<    eddgd	¬
«      Zedz  ed<   y)ÚSwitchHudlTeamSchema.z<team_name_from_switcher>r   Ú	team_nameNz<org_name_from_switcher>Úorg_namer   u;   Optional Hudl numeric team id â€” preferred over name matchr$   r   )	r
   r   r   r   rœ   r   r   r�   r   r   r   r   r›   r›   ©   sQ   … Ù˜3Ð*EÐ)FÔG€IˆsÓGÙ  Ð1KÐ0LÔM€Hˆc�D‰jÓMÙØØ-Ð.ØQô€GˆS�4‰Zô r   r›   c                   ó4   — e Zd ZU  eddg¬«      Zedz  ed<   y)ÚOpenExchangeSchemaNr   r   r   )r
   r   r   r   r   r   r   r   r   r   rŸ   rŸ   ³   s   … Ù Ð0KÐ/LÔM€GˆS�4‰ZÔMr   rŸ   N)!Útypingr   Úpydanticr   r   r   r   r   r   r)   r/   r3   r8   r;   r?   rH   rK   rN   rW   r_   rc   rf   rh   rl   ro   rt   rv   r…   rŒ   r–   r™   r›   rŸ   r   r   r   Ú<module>r¢      sn  ðÝ ç 6Ñ 6ô�)ô ô@˜9ô @ô˜ô ô"=˜	ô =ôN˜9ô Nô
>�)ô >ôR�)ô Rô/�yô /ô%˜ô %ô/�9ô /ô/�ô /ôN )ô NôÐ!<ô ôR˜	ô Rô0˜iô 0ôEÐ5ô Eô4Ð6ô 4ô Ð1ô  ô
 Ð!8ô  ô
RÐ#:ô Rô ô ô&@ iô @ô
* )ô *ô\ 	ô \ôV )ô Vô˜9ô ôN˜õ Nr   