o
    Ò·h×  ã                   @  sh   d dl mZ ddlmZ ddlmZ ddlmZ ddlmZ ddl	m
Z
 dd	lmZ G d
d„ deƒZdS )é    )Úannotationsé   )Úkeys_to_typingé   )ÚKEY)ÚInteraction)ÚKeyInput)ÚPointerInput)Ú
WheelInputc                      sT   e Zd Zdd‡ fdd„Zdd
d„Zddd„Zdddd„Zddd„Zd dd„Z‡  Z	S )!Ú
KeyActionsNÚsourceú+KeyInput | PointerInput | WheelInput | NoneÚreturnÚNonec                   s"   |st tƒ}|| _tƒ  |¡ d S ©N)r   r   r   ÚsuperÚ__init__)Úselfr   ©Ú	__class__© ú`/var/www/html/venv/lib/python3.10/site-packages/selenium/webdriver/common/actions/key_actions.pyr      s   zKeyActions.__init__ÚletterÚstrc                 C  ó   |   d|¡S )NÚcreate_key_down©Ú_key_action©r   r   r   r   r   Úkey_down"   ó   zKeyActions.key_downc                 C  r   )NÚcreate_key_upr   r   r   r   r   Úkey_up%   r    zKeyActions.key_upr   ÚdurationÚintc                 C  r   )NÚcreate_pauser   )r   r#   r   r   r   Úpause(   r    zKeyActions.pauseÚtextú
str | listc                 C  s4   t |tƒs	t|ƒ}|D ]}|  |¡ |  |¡ q| S r   )Ú
isinstanceÚlistr   r   r"   )r   r'   r   r   r   r   Ú	send_keys+   s   

zKeyActions.send_keysÚactionc                 C  s   t | j|ƒ}||ƒ | S r   )Úgetattrr   )r   r,   r   Úmethr   r   r   r   3   s   zKeyActions._key_actionr   )r   r   r   r   )r   r   r   r   )r   )r#   r$   r   r   )r'   r(   r   r   )r,   r   r   r   )
Ú__name__Ú
__module__Ú__qualname__r   r   r"   r&   r+   r   Ú__classcell__r   r   r   r   r      s    


r   N)Ú
__future__r   Úutilsr   Úinteractionr   r   Ú	key_inputr   Úpointer_inputr	   Úwheel_inputr
   r   r   r   r   r   Ú<module>   s   