
    ,h
                     4    d Z ddlmZ ddlmZ  G d d      Zy)zThe Alert implementation.    )keys_to_typing)Commandc                   N    e Zd ZdZd
dZedefd       Zd
dZd
dZ	deddfd	Z
y)Alertag  Allows to work with alerts.

    Use this class to interact with alert prompts.  It contains methods for dismissing,
    accepting, inputting, and getting text from alert prompts.

    Accepting / Dismissing alert prompts::

        Alert(driver).accept()
        Alert(driver).dismiss()

    Inputting a value into an alert prompt::

        name_prompt = Alert(driver)
        name_prompt.send_keys("Willian Shakesphere")
        name_prompt.accept()


    Reading a the text of a prompt for verification::

        alert_text = Alert(driver).text
        self.assertEqual("Do you wish to quit?", alert_text)
    returnNc                     || _         y)ztCreates a new Alert.

        :Args:
         - driver: The WebDriver instance which performs user actions.
        N)driver)selfr	   s     a/var/www/html/Resume-Scraper/venv/lib/python3.12/site-packages/selenium/webdriver/common/alert.py__init__zAlert.__init__/   s         c                 Z    | j                   j                  t        j                        d   S )zGets the text of the Alert.value)r	   executer   W3C_GET_ALERT_TEXTr
   s    r   textz
Alert.text7   s$     {{""7#=#=>wGGr   c                 V    | j                   j                  t        j                         y)zDismisses the alert available.N)r	   r   r   W3C_DISMISS_ALERTr   s    r   dismisszAlert.dismiss<   s    G556r   c                 V    | j                   j                  t        j                         y)zAccepts the alert available.

        :Usage:
            ::

                Alert(driver).accept() # Confirm a alert dialog.
        N)r	   r   r   W3C_ACCEPT_ALERTr   s    r   acceptzAlert.accept@   s     	G445r   
keysToSendc                 p    | j                   j                  t        j                  t	        |      |d       y)zeSend Keys to the Alert.

        :Args:
         - keysToSend: The text to be sent to Alert.
        )r   r   N)r	   r   r   W3C_SET_ALERT_VALUEr   )r
   r   s     r   	send_keyszAlert.send_keysJ   s*     	G77>R\C]gq9rsr   )r   N)__name__
__module____qualname____doc__r   propertystrr   r   r   r    r   r   r   r      sJ    . Hc H H76tC tD tr   r   N)r!   selenium.webdriver.common.utilsr   !selenium.webdriver.remote.commandr   r   r$   r   r   <module>r'      s   "   : 59t 9tr   