
    HohW
                     ~    d gZ ddlZddlmZ ddlZddlmZmZmZm	Z	m
Z
mZmZ ddlmZ  G d d      Z G d	 d       Zy)
Resolver    N)List   )DeviceDomainMatcherMatchersOSPartialResult	UserAgent)fa_simplifierc                       e Zd ZdeddfdZy)DummyFilter_returnNc                      y )N )selfr   s     i/var/www/html/wine-match-dev/backend/winematch-backend/venv/lib/python3.12/site-packages/ua_parser/re2.pyMatchzDummyFilter.Match   s        )__name__
__module____qualname__strr   r   r   r   r   r      s    s t r   r   c                       e Zd ZU ej                  ed<   eee      ed<   ej                  ed<   eee	      ed<   ej                  ed<   eee
      ed<   dedd	fd
ZdededefdZy	)r   uauser_agent_matchersosos_matchersdevicesdevice_matchersmatchersr   Nc                     |\  | _         | _        | _        | j                   rst        j                         | _        | j                   D ]0  }| j
                  j                  t        |j                               2 | j
                  j                          nt               | _        | j                  rst        j                         | _        | j                  D ]0  }| j                  j                  t        |j                               2 | j                  j                          nt               | _        | j                  rt        j                         | _        | j                  D ]  }|j                  t        j                  z  r2| j                  j                  dt        |j                        z          R| j                  j                  t        |j                                | j                  j                          y t               | _        y )Nz(?i))r   r    r"   re2Filterr   Addr   regexCompiler   r   r!   flagsre
IGNORECASE)r   r#   uods        r   __init__zResolver.__init__!   sd    LTH $"2D4H##jjlDG-- 4M!''234GGOO!mDGjjlDG%% 4M!''234GGOO!mDG::<DL)) = 77R]]*LL$$VmAGG.D%DELL$$]177%;<= LL  "&=DLr   domainsc                   d x}x}}t         j                  |v r;| j                  j                  |      x}r | j                  t        |         |      }t         j                  |v r;| j                  j                  |      x}r | j                  t        |         |      }t         j                  |v r;| j                  j                  |      x}r | j                  t        |         |      }t        |||||      S )N)r1   string
user_agentr   device)r   
USER_AGENTr   r   r   minr
   r   r    DEVICEr!   r"   r   )r   r   r1   r4   r   r5   matchess          r   __call__zResolver.__call__E   s    #''
'R&'''--++w+ DT55c'lCBG
99''--++w+3T%%c'l3B7==G#,,,,R00w0;--c'l;B?B:"V
 	
r   )r   r   r   r%   r&   __annotations__r   r   r   r
   r   r	   r0   r   r   r   r:   r   r   r   r   r      s~    

Ngi011

Ngbk""ZZ'&/**")") 
")H
3 
 
} 
r   )__all__r+   typingr   r%   corer   r   r   r	   r
   r   r   utilsr   r   r   r   r   r   <module>r@      s=   , 	  
   ! 
<
 <
r   