o
    �h�j°  ã                   @   s   d e dB de defdd„ZdS )ÚoriginNÚregistered_domainÚreturnc                 C   sà   | r|sdS |   ¡  ¡ }| d¡r|dd… }n| d¡r#|dd… }| d¡d }|  ¡  ¡ }| d¡r<|dd… }n| d¡rG|dd… }| d¡d }||krTd	S | d
¡d }| d
¡d }||krhd	S |dv rnd	S dS )z¯
    Validates an incoming HTTP Origin header against a tenant's registered domain.
    Handles protocols (http://, https://), hostnames, and ports (e.g. 127.0.0.1:5500).
    Fzhttp://é   Nzhttps://é   ú/é    Tú:)Ú	localhostz	127.0.0.1)ÚstripÚlowerÚ
startswithÚsplit)r   r   Úclean_originÚclean_registeredÚorigin_hostÚregistered_host© r   ú;/web/html/dev/chatbot/backend/app/utils/origin_validator.pyÚis_origin_allowed   s.   



r   )ÚstrÚboolr   r   r   r   r   Ú<module>   s    