File: //usr/local/CyberPanel/lib64/python3.10/site-packages/validators/__pycache__/url.cpython-310.pyc
o
��h0 � @ s6 d Z ddlmZ ddlZddlmZ ddlmZmZm Z ddl
m
Z
ddlmZ ed d
� �Z
edd� �Zd
efdd�Zd
edefdd�Zd
efdd�Zd
ededededededee dedefdd�Zdeded ed!efd"d#�Zed$d$d%d$d%d$dd$d$d&� d
ededededed!ededee dedefd'd(��ZdS ))zURL.� )� lru_cacheN)�Optional)�parse_qs�unquote�urlsplit� )�hostname)� validatorc C � t �dt j�S )Nz�(^[\u0100-\u017F\u0180-\u024F]|[-!#$%&'*+/=?^_`{}|~0-9a-z]+(\.[-!#$%&'*+/=?^_`{}|~0-9a-z]+)*$|^([\001-\010\013\014\016-\037!#-\[\]-\177]|\\[\011.])*$)��re�compile�
IGNORECASE� r r �D/usr/local/CyberPanel/lib/python3.10/site-packages/validators/url.py�_username_regex s �r c C r
)Nz�^[\/a-z0-9\-\.\_\~\!\$\&\'\(\)\*\+\,\;\=\:\@\%\U0001F300-\U0001F5FF\U0001F600-\U0001F64F\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+$r r r r r �_path_regex s �r �valuec C s | r| dv S dS )zValidate scheme.> �ftp�git�irc�ssh�ftps�http�rtmp�rtsp�sftp�https�rtmps�telnetFr )r r r r �_validate_scheme* s ���
�r �skip_ipv6_addrc C s |p| � d�dk p| �d� S )zConfirm skip IPv6 check.�:� �[)�count�
startswith)r r! r r r �_confirm_ipv6_skip; s r'