
    Eg                     X    d dl Z d dlZd dlZd dlZd ZdedefdZdedefdZd Zd Z	dS )	    Nc                     t           j                             | |          }t           j                             t          |                    |                    |          }||z
  j        S )N)datetimestrptimestrstrftimedays)date1date2date_formatabs        Q/var/www/sysmax/venv/lib/python3.11/site-packages/webdriver_manager/core/utils.pyget_date_diffr      sY    ""5+66A""ENN;''((+	7 	7A E<    appsreturnc                  ~    t          j        d          dk    rdndd                    fd| D                       S )zCreate 'browser --version' command from browser app names.

    Result command example:
        chromium --version || chromium-browser --version
    WDM_LOG_LEVEL0z 2>/dev/null z || c              3   &   K   | ]}| d  V  dS )z
 --versionN ).0iignore_errors_cmd_parts     r   	<genexpr>z,linux_browser_apps_to_cmd.<locals>.<genexpr>   s2      NNA!??'=??NNNNNNr   )osgetenvjoin)r   r   s    @r   linux_browser_apps_to_cmdr       sW     02y0 00  0 ^^%' ;;NNNNNNNNNNr   c                  |    t                      }ddd                    fd| D                       z   }| d| dS )z9Create analogue of browser --version command for windows.z4$tmp = {expression}; if ($tmp) {{echo $tmp; Exit;}};z+$ErrorActionPreference='silentlycontinue';  c              3   D   K   | ]}                     |           V  dS ))
expressionN)format)r   efirst_hit_templates     r   r   z.windows_browser_apps_to_cmd.<locals>.<genexpr>   sN       F F45!!Q!//F F F F F Fr   z -NoProfile "")determine_powershellr   )r   
powershellscriptr'   s      @r   windows_browser_apps_to_cmdr,      st    %''JS:SXX F F F F9=F F F > > F 00v0000r   c                 B   t          j        | t           j        t           j        d          5 }|                                d                                         }t          j        ||          }|r|                    d          nd }d d d            n# 1 swxY w Y   |S )NT)stdoutstdinshellr   )	
subprocessPopenPIPEDEVNULLcommunicatedecoderesearchgroup)cmdpatternstreamr.   versions        r   read_version_from_cmdr>   &   s    		?$	
 
 
 8
 
##%%a(//11)GV,,&-7'--"""48 8 8 8 8 8 8 8 8 8 8 8 8 8 8 Ns   ABBBc                     d} t          j        | t           j        t           j        t           j        d          5 }|                                d                                         }ddd           n# 1 swxY w Y   |dk    rdndS )zDReturns "True" if runs in Powershell and "False" if another console.z0(dir 2>&1 *`|echo CMD);&<# rem #>echo powershellT)r.   stderrr/   r0   r   Nr*   r   )r1   r2   r3   r4   r5   r6   )r:   r<   r.   s      r   r)   r)   3   s    
<C		?%$
 
 
 2 
##%%a(//112 2 2 2 2 2 2 2 2 2 2 2 2 2 2 <''22\9s   -A33A7:A7)
r   r   r7   r1   r   r   r    r,   r>   r)   r   r   r   <module>rA      s     				 				      OS OS O O O O	1s 	1s 	1 	1 	1 	1
 
 
: : : : :r   