o
    eA                     @   s0   d dl mZmZmZ d dlT G dd deZdS )    )PlivoXMLElementmap_typeBreakElement)*c                       s   e Zd ZdZg dZedd Zejdd Zee	e
jgddd Z				d fd
d	Zdd Z				dddZ		dddZ		dddZ				dddZ						d ddZ				dddZ		dddZ		dddZ  ZS )!EmphasisElementemphasis)breakr   langphonemeprosodyzsay-assubwc                 C   s   | j S N)_EmphasisElement__level)self r   L/var/www/html/venv/lib/python3.10/site-packages/plivo/xml/emphasisElement.pylevel   s   zEmphasisElement.levelc                 C   s"   |d urt || _d S d | _d S r   )six	text_typer   r   valuer   r   r   r      s   
)r   c                 C   s
   || _ | S r   )r   r   r   r   r   	set_level   s   zEmphasisElement.set_levelNc                    s   t t|   || _|| _d S r   )superr   __init__contentr   )r   r   r   	__class__r   r   r   &   s   
zEmphasisElement.__init__c                 C   s   d| j i}dd | D S )Nr   c                 S   s(   i | ]\}}|d ur|t t|qS r   )r   r   r   ).0kvr   r   r   
<dictcomp>5   s    z+EmphasisElement.to_dict.<locals>.<dictcomp>)r   items)r   dr   r   r   to_dict0   s
   zEmphasisElement.to_dictc                 C   s   |  t||d | S )N)strengthtime)addr   )r   r%   r&   r   r   r   	add_break:   s   zEmphasisElement.add_breakc                 C   "   ddl m} | |||d | S )N   )LangElement)r   xmllang)langElementr+   r'   )r   r   r,   r+   r   r   r   add_langF      zEmphasisElement.add_langc                 C   r)   )Nr*   )r   )r   r   )emphasisElementr   r'   )r   r   r   r   r   r   r   add_emphasisT   r/   zEmphasisElement.add_emphasisc                 C   $   ddl m} | ||||d | S )Nr*   )PhonemeElement)r   alphabetph)phonemeElementr3   r'   )r   r   r4   r5   r3   r   r   r   add_phonemeb      zEmphasisElement.add_phonemec                 C   s&   ddl m} | |||||d | S )Nr*   )ProsodyElement)r   volumeratepitch)prosodyElementr9   r'   )r   r   r:   r;   r<   r9   r   r   r   add_prosodyr   s   zEmphasisElement.add_prosodyc                 C   r2   )Nr*   )SayAsElement)r   interpret_asformat)sayAsElementr?   r'   )r   r   r@   rA   r?   r   r   r   
add_say_as   r8   zEmphasisElement.add_say_asc                 C   r)   )Nr*   )
SubElement)r   alias)
subElementrD   r'   )r   r   rE   rD   r   r   r   add_sub   r/   zEmphasisElement.add_subc                 C   r)   )Nr*   )WElement)r   role)wElementrH   r'   )r   r   rI   rH   r   r   r   add_w   r/   zEmphasisElement.add_w)NNr   )NNN)__name__
__module____qualname___name	_nestablepropertyr   settervalidate_argsof_typer   r   r   r   r$   r(   r.   r1   r7   r>   rC   rG   rK   __classcell__r   r   r   r   r   	   sH    











r   N)	plivo.xmlr   r   r   plivo.utils.validatorsr   r   r   r   r   <module>   s    