U
    uhQ                     @   s\   d dl mZ d dlmZmZ d dlmZ d dlmZm	Z	m
Z
 d dlmZ G dd de	ZdS )	    escape)SequenceUnion)Attr)VOID_ELEMENTS	DOMStringElt)HTMLc                   @   sl   e Zd ZdZeeedddZeee	e
ef  e
dddZeee
dd	d
Zeee
dddZdS )DOMStringCompatzV
    The same as DOMString, but with as much backwards-compatibility as possible.
    )attrreturnc                 C   s$   dd |   D }|  d|S )Nc                 S   s&   g | ]\}}d | dt | dqS ) z=""r   ).0kv r   n/var/www/dating/data/www/fatepal.com/env/lib/python3.8/site-packages/draftjs_exporter/engines/string_compat.py
<listcomp>   s     z0DOMStringCompat.render_attrs.<locals>.<listcomp> )itemssortjoin)r   attrsr   r   r   render_attrs   s    zDOMStringCompat.render_attrs)childrenr   c                 C   s   d dd | D S )Nr   c                 S   s,   g | ]$}t |trt|n
t|d dqS )T)quote)
isinstancer	   r   renderr   )r   cr   r   r   r      s   z3DOMStringCompat.render_children.<locals>.<listcomp>)r   )r   r   r   r   render_children   s
    zDOMStringCompat.render_children)eltr   c                 C   s   | j }| jrt| jnd}| jr.t| jnd}|dkr>|S |tkrVd| | dS |dkrd| jS d| | d| d| dS )Nr   fragment</>escaped_html></typer   r   r   r   r!   r   markupr"   type_r   r   r   r   r   r   !   s    zDOMStringCompat.renderc                 C   st   | j }| jrt| jnd}| jr.t| jnd}|tkrJd| | dS |dkrX| jS d| | d| d| dS )Nr   r$   r%   r&   r'   r(   r)   r,   r   r   r   render_debug2   s    zDOMStringCompat.render_debugN)__name__
__module____qualname____doc__staticmethodr   strr   r   r   r
   r	   r!   r   r.   r   r   r   r   r   	   s   r   N)htmlr   typingr   r   Zdraftjs_exporter.engines.baser   Zdraftjs_exporter.engines.stringr   r   r	   Zdraftjs_exporter.typesr
   r   r   r   r   r   <module>   s
   