
    i$                         d Z ddlZddlmZ ej
                  rddlmZ ddlm	Z	 dddddd	Z
d
ZddgZdeddfdZdddefdZy)zDevicons (icons)    N)EngineResults)SXNG_Response)OnlineParamszhttps://devicon.dev/TJSON)websitewikidata_idofficial_api_documentationuse_official_apiresultsz3https://cdn.jsdelivr.net/gh/devicons/devicon@latestimagesiconsqueryparamsr   c                 (    t          d|d<   | |d<   |S )Nz/devicon.jsonurlr   )cdn_base_url)r   r   s     '/root/searxng/searx/engines/devicons.pyrequestr      s     #nM2F5MF7OM    respr   returnc                    t               }| j                  d   j                         j                  d      dt        t
        t        j                  f   dt        ffd}t        || j                               }|D ]a  }|d   d   D ]T  }t         d|d	    d
|d	    d| d}|j                  |j                  j                  d||d	   d|d    |dd             V c |S )Nr    resultr   c                 T    D ]"  }|| d   v r y| d   | d   z   D ]	  }||v s  y $ y)NnameTaltnamestagsF )r   parttagquery_partss      r   is_result_matchz!response.<locals>.is_result_match#   sM     	 Dvf~%j)F6N:  3; 		  r   versionssvgz/icons/r   /-z.svgzimages.htmlzBase color: colorSVG)templater   titlecontentimg_src
img_format)r   search_paramslowersplitdictstrtAnyboolfilterjsonr   addtypesLegacyResult)r   resr#   filtered_resultsr   
image_typer-   r"   s          @r   responser?      s   
/C$$W-335;;C@K	S!%%Z 0 	T 	 otyy{;"  ,U3 	J%gfVn-=Qvf~>NaPZ|[_`GGG		&&$1&!'%1&/1B#C#*&+		  Jr   )__doc__typingr4   searx.result_typesr   TYPE_CHECKINGextended_typesr   search.processors.onliner   aboutr   
categoriesr3   r   r?   r   r   r   <module>rH      sk      ,??,5 &"&	 E 
3   ?  }  r   