o
    ȟ1i                     @   s   d dl mZ d dlmZmZ d dlmZ d dlmZm	Z	m
Z
mZ G dd deZG dd deZG d	d
 d
eZG dd deZG dd deZdS )    )date)OptionalUnion)
UploadFile)	BaseModel
ConfigDictEmailStrFieldc                   @   sD  e Zd ZU dZee ed< dZee ed< eed< eed< eed< eed< dZ	ee ed< e
ed	< dZee ed
< eed< eed< eed< eed< dZee ed< dZee ed< dZee ed< dZee ed< dZeed< dZee ed< dZee ed< dZeed< eed< eed< eed< eed< dZee ed< e
ed< eed< dZee ed< dZee ed < dZee ed!< dZee ed"< dZee ed#< dZee
 ed$< dZee ed%< dZee ed&< dZee ed'< dZ ee ed(< dZ!ee ed)< dZ"ee ed*< dZ#ee ed+< eed,< eed-< eed.< dZ$ee ed/< dZ%ee ed0< eed1< dZ&ee ed2< dZ'ee ed3< dZ(ee ed4< dZ)ee ed5< dZ*ee ed6< dZ+ee ed7< dZ,ee ed8< dZ-ee ed9< dZ.ee ed:< dZ/ee ed;< dZ0ee ed<< dZ1ee ed=< eed>< eed?< eed@< dZ2ee edA< dZ3ee edB< dZ4ee edC< dZ5ee edD< dZ6ee
 edE< dZ7ee edF< dZ8eedG< dZ9ee edH< dZ:eedI< dZ;ee edJ< dZ<eedK< dZ=ee edL< dZ>eedM< dZ?ee edN< dZ@ee edO< dZAeedP< dZBee edQ< dZCeedR< dZDee edS< dZEee edT< eedU< eedV< dZFee edW< dZGee edX< dZHee edY< dZIee edZ< dZJee ed[< dZKee ed\< dZLee ed]< dZMee ed^< dZNee ed_< dZOeed`< dZPeeda< dZQeedb< dZReedc< dZSeedd< eTdedfZUdS )gProfileRegistrationBaseSchemaN	course_idparticipant_idservice_programmeparticipant
first_name	last_namepreferred_namestudent_emailstudent_phonedate_of_birthagegenderaddress_line1address_line2citystatepostcodeFbring_121_workeradditional_need_descriptionworker_detailsprimary_is_responsibleprimary_first_nameprimary_last_nameprimary_relationshipprimary_addressprimary_postcodeprimary_emailprimary_phonesecondary_first_namesecondary_last_namesecondary_relationshipsecondary_addresssecondary_postcodesecondary_emailsecondary_phonecommunication_preference_emailcommunication_preference_phone#communication_preference_newsletter'communication_preference_facebook_groupschool_nameeligible_free_school_meals	ethnicityreligious_backgroundenglish_first_languageother_languagessigning_systemsadult_speech_understandingcommunication_method_speechcommunication_method_makaton(communication_method_vocalisation_soundscommunication_method_gesturescommunication_method_bslcommunication_help_notesfavourites_and_interestsdislikesemotional_support_triggerssensitive_to_noise_or_lightdietary_requirementshelp_with_eating_or_drinkinggp_practicegp_namegp_address_line1gp_address_line2gp_citygp_stategp_postcodegp_emailgp_phonevisual_impairmentvisual_impairment_detailshearing_impairmenthearing_impairment_detailsepilepsyepilepsy_detailsmental_health_needsmental_health_detailsother_info_notesprn_medicationprn_medication_detailsother_medicationother_medication_details"other_medical_conditions_allergiestravel_to_buildingcomfort_with_new_places_peoplemobility_equipmentcare_plan_epilepsycare_plan_manual_handlingcare_plan_dysphagiacare_plan_ehcpcare_plan_positive_behaviourcare_plan_diabetescare_plan_othercare_plan_other_detailsconsent_share_care_plansconsent_photo_publicityconsent_medical_treatmentmailing_list_opt_ingdpr_agreedTfrom_attributes)V__name__
__module____qualname__r   r   int__annotations__r   strr   r   r   r   r   r   r   r   r   boolr   r   r   r$   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r7   r8   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   rW   rX   rY   rZ   r[   r\   r_   r`   ra   rb   rc   rd   re   rf   rg   rh   ri   rj   rk   rl   r   model_config rw   rw   #/app/schema/profile_registration.pyr
      s   
 r
   c                   @   s    e Zd ZU eddZeed< dS )ProfileRegistrationCreateSchemaNdefaultfile)ro   rp   rq   r	   r|   r   rs   rw   rw   rw   rx   ry   n   s   
 ry   c                   @   s(   e Zd ZU eed< eddZeed< dS )ProfileRegistrationUpdateSchemaidNrz   r|   )ro   rp   rq   rr   rs   r	   r|   r   rw   rw   rw   rx   r}   r   s   
 r}   c                   @   s4   e Zd ZU eed< dZeedf ed< eddZ	dS )!ProfileRegistrationResponseSchemar~   Nr|   Trm   )
ro   rp   rq   rr   rs   r|   r   rt   r   rv   rw   rw   rw   rx   r   w   s   
 r   c                   @   s0   e Zd ZU eed< eed< eed< eddZdS )ContentListRequestSchemar   user_id	user_typeTrm   N)ro   rp   rq   rr   rs   rt   r   rv   rw   rw   rw   rx   r   }   s
   
 r   N)datetimer   typingr   r   fastapir   pydanticr   r   r   r	   r
   ry   r}   r   r   rw   rw   rw   rx   <module>   s    f