o
    M,h
                     @   sR   d dl mZ d dlmZ d dlmZ d dlmZ G dd dZG dd deZ	d	S )
    )Union)interaction)InputDevice)
WebElementc                   @   s   e Zd Zdeeef dededdfddZedd	ededefd
dZ	eddedefddZ
edeeef fddZedefddZedefddZdS )ScrollOriginoriginx_offsety_offsetreturnNc                 C   s   || _ || _|| _d S N)_origin	_x_offset	_y_offset)selfr   r   r	    r   y/var/www/www-root/data/www/bot.pdev.uz/venv/lib/python3.10/site-packages/selenium/webdriver/common/actions/wheel_input.py__init__   s   
zScrollOrigin.__init__r   elementc                 C   s   | |||S r   r   )clsr   r   r	   r   r   r   from_element      zScrollOrigin.from_elementc                 C   s   | d||S )Nviewportr   )r   r   r	   r   r   r   from_viewport"   r   zScrollOrigin.from_viewportc                 C      | j S r   )r   r   r   r   r   r   &      zScrollOrigin.originc                 C   r   r   )r   r   r   r   r   r   *   r   zScrollOrigin.x_offsetc                 C   r   r   )r   r   r   r   r   r	   .   r   zScrollOrigin.y_offset)r   r   )__name__
__module____qualname__r   strr   intr   classmethodr   r   propertyr   r   r	   r   r   r   r   r      s    "r   c                       sj   e Zd Zd fddZdefddZdeded	ed
ededdfddZddeee	f ddfddZ
  ZS )
WheelInputr
   Nc                    s    t  j|d || _tj| _d S )N)name)superr   r$   r   WHEELtype)r   r$   	__class__r   r   r   4   s   zWheelInput.__init__c                 C   s   | j | j| jdS )N)r'   idactions)r'   r$   r+   r   r   r   r   encode9   s   zWheelInput.encodexydelta_xdelta_ydurationc              
   C   s2   t |tr
d|ji}| d||||||d d S )Nz#element-6066-11e4-a52e-4f735466cecfscroll)r'   r-   r.   deltaXdeltaYr1   r   )
isinstancer   r*   
add_action)r   r-   r.   r/   r0   r1   r   r   r   r   create_scroll<   s   

zWheelInput.create_scrollr   pause_durationc                 C   s   |  dt|d d d S )Npausei  )r'   r1   )r6   r    )r   r8   r   r   r   create_pauseK   s   zWheelInput.create_pause)r
   N)r   )r   r   r   r   dictr,   r    r7   r   floatr:   __classcell__r   r   r(   r   r#   3   s
    "$r#   N)
typingr   !selenium.webdriver.common.actionsr   .selenium.webdriver.common.actions.input_devicer   $selenium.webdriver.remote.webelementr   r   r#   r   r   r   r   <module>   s   