
    &th$                         d Z ddlZddlmZmZmZmZmZmZ ddlm	Z	 ddl
mZ ddlmZ e	rddlmZmZ  G d d	e          ZdS )
zTarget module.    N)AnyCallable	CoroutineDictListOptional)TYPE_CHECKING)
CDPSession)Page)BrowserBrowserContextc                   N   e Zd ZdZdedddeg eeeef         f         de	de
e         ded	ej        d
dfdZde	d
dfdZddZd
efdZd
e
e         fdZed
efd            Zed
efd            Zedd            Zedd            Zed
e
d          fd            Zded
dfdZdS )TargetzBrowser's target class.
targetInfobrowserContextr   sessionFactoryignoreHTTPSErrorsdefaultViewportscreenshotTaskQueueloopreturnNc                    || _         || _        |                    dd          | _        || _        || _        || _        || _        || _        d | _	        | j        
                                | _        | j        
                                | _        | j         d         dk    p| j         d         dk    | _        | j        r|                     d           d S d S )NtargetId typepageurlT)_targetInfo_browserContextget	_targetId_sessionFactory_ignoreHTTPSErrors_defaultViewport_screenshotTaskQueue_loop_pagecreate_future_initializedPromise_isClosedPromise_isInitialized_initializedCallback)selfr   r   r   r   r   r   r   s           d/var/www/html/mycamper/aliexpress-site/backend/venv/lib/python3.11/site-packages/pyppeteer/target.py__init__zTarget.__init__   s    
 &-#
B77-"3 /$7!
%)
#':#;#;#=#=  $
 8 8 : :#/76A  @"&"25"9R"? 	 	,%%d+++++	, 	,    blc                     | j                                         r| j                                        | _         | j                             |           d S N)r)   doner&   r(   
set_result)r-   r1   s     r.   r,   zTarget._initializedCallback*   sM    #((** 	B'+z'?'?'A'AD$ ++B/////r0   c                 :    | j                             d            d S r3   )r*   r5   r-   s    r.   _closedCallbackzTarget._closedCallback0   s    ((.....r0   c                 :   K   |                                   d{V S )zACreate a Chrome Devtools Protocol session attached to the target.N)r"   r7   s    r.   createCDPSessionzTarget.createCDPSession3   s*      ))+++++++++r0   c                    K   | j         d         dv rW| j        P|                                  d{V }t          j        || | j        | j        | j                   d{V }|| _        |S | j        S )z}Get page of this target.

        If the target is not of type "page" or "background_page", return
        ``None``.
        r   )r   background_pageN)r   r'   r"   r   creater#   r$   r%   )r-   clientnew_pages      r.   r   zTarget.page7   s       V$(CCC
"//11111111F!['%)	       H "DJOzr0   c                     | j         d         S )zGet url of this target.r   r   r7   s    r.   r   z
Target.urlJ   s     &&r0   c                 ,    | j         d         }|dv r|S dS )zGet type of this target.

        Type can be ``'page'``, ``'background_page'``, ``'service_worker'``,
        ``'browser'``, or ``'other'``.
        r   )r   r<   service_workerbrowserotherrA   )r-   _types     r.   r   zTarget.typeO   s'      (LLLLwr0   r   c                     | j         j        S )z&Get the browser the target belongs to.)r   rD   r7   s    r.   rD   zTarget.browser[   s     #++r0   c                     | j         S )z1Return the browser context the target belongs to.)r   r7   s    r.   r   zTarget.browserContext`   s     ##r0   c                 |    | j                             d          }|dS | j        j                            |          S )z\Get the target that opened this target.

        Top-level targets return ``None``.
        openerIdN)r   r    rD   _targets)r-   rJ   s     r.   openerzTarget.openere   s>     #''
334|$((222r0   c                     || _         | j        s@| j         d         dk    s| j         d         dk    r d| _        |                     d           d S d S d S )Nr   r   r   r   T)r   r+   r,   )r-   r   s     r.   _targetInfoChangedzTarget._targetInfoChangedp   sk    %" 	(8(@F(J(J(,(8(?2(E(E"&D%%d+++F		 	(E(Er0   )r   N)r   r   )r   r   )__name__
__module____qualname____doc__r   r   r   r   r
   boolr   r   asyncioAbstractEventLoopr/   r,   r8   r:   r   r   propertystrr   r   rD   r   rL   rN    r0   r.   r   r      s       !!,4 ,9I ,!)"iS*8L.M*M!N,$(,;CD>, '+, 3:2K, 	, , , ,,0t 0 0 0 0 0/ / / /,
 , , , ,HTN    & 'S ' ' ' X' 	c 	 	 	 X	 , , , X, $ $ $ X$ 3* 3 3 3 X3T d      r0   r   )rR   rT   typingr   r   r   r   r   r   r	   pyppeteer.connectionr
   pyppeteer.pager   pyppeteer.browserr   r   objectr   rX   r0   r.   <module>r^      s       A A A A A A A A A A A A A A A A             + + + + + +       :99999999f f f f fV f f f f fr0   