
    9j*                     l    d Z 	 ddlmZ  G d de      Z G d de      ZeZeZ	y# e$ r	 ddlmZ Y (w xY w)z/
Created : 2021-07-30

@author: Eric Lapouyade
    )escapec                   N    e Zd ZdZddZ	 	 	 	 	 	 	 	 	 	 	 	 	 	 d	dZd Zd Zd Zy)
RichTextzclass to generate Rich Text when using templates variables

    This is much faster than using Subdoc class,
    but this only for texts INSIDE an existing paragraph.
    Nc                 >    d| _         |r | j                  |fi | y y N xmladdselftext	text_props      \/var/www/html/eeg-assistent/abrechnung/venv/lib/python3.12/site-packages/docxtpl/richtext.py__init__zRichText.__init__   $    DHHT'Y'     c                 2   t        |t              r | xj                  |j                  z  c_        y t        |t        t        f      st        |      }t        |t              s|j                  dd      }t        |      }d}|r|d|z  z  }|r|d   dk(  r|dd  }|d	|z  z  }|r|d   dk(  r|dd  }|d
|z  z  }|r|d|z  z  }|d|z  z  }|r|dz  }|r|dz  }|r|dz  }|r|dz  }|	r|dz  }|r|dz  }|
r|
dvrd}
|d|
z  z  }|r|dz  }|rDd}d|v r(|j                  dd      \  }}dj                  ||      }|dj                  ||      z  }|r|dz  }|r|d|z  z  }d}|r|d|z  z  }|d |z  z  }|r	d!|d"|d#}| xj                  |z  c_        y )$Nzutf-8ignore)errorsr   z<w:rStyle w:val="%s"/>r   #   z<w:color w:val="%s"/>z<w:shd w:fill="%s"/>z<w:sz w:val="%s"/>z<w:szCs w:val="%s"/>z <w:vertAlign w:val="subscript"/>z"<w:vertAlign w:val="superscript"/>z<w:b/>z<w:bCs/>z<w:i/>z<w:iCs/>)singledoublethickdotteddashdotDash
dotDotDashwaver   z<w:u w:val="%s"/>z<w:strike/>:z w:{region}="{font}")fontregionzJ<w:rFonts w:ascii="{font}" w:hAnsi="{font}" w:cs="{font}"{regional_font}/>)r"   regional_fontz<w:rtl w:val="true"/>z<w:lang w:val="%s"/>z<w:r>z<w:rPr>%s</w:rPr>z(<w:t xml:space="preserve">%s</w:t></w:r>z<w:hyperlink r:id="z" w:tgtFrame="_blank">z</w:hyperlink>)	
isinstancer   r
   strbytesdecoder   splitformat)r   r   stylecolor	highlightsize	subscriptsuperscriptbolditalic	underlinestriker"   url_idrtllangpropr$   r#   r
   s                       r   r   zRichText.add   s9   ( dH%HH H $e-t9D$$;;wx;8Dd|,u44DQx3ab	+e33D|s"%abM	*Y66D(4//D*T11D66D88DHD
"HD
" 	! 	 %	')33DM!DMd{#zz#q1 6 = =4PV = W`gg h  D ++D*T11D&--C9D@@C 	Cr   c                     | j                   S Nr
   r   s    r   __unicode__zRichText.__unicode__~       xxr   c                     | j                   S r:   r;   r<   s    r   __str__zRichText.__str__   r>   r   c                     | j                   S r:   r;   r<   s    r   __html__zRichText.__html__   r>   r   r:   )NNNNNNFFFFNNFN	__name__
__module____qualname____doc__r   r   r=   r@   rB    r   r   r   r      sN    ( !bHr   r   c                   4    e Zd ZdZddZ	 ddZd Zd Zd Zy)	RichTextParagraphzclass to generate Rich Text Paragraphs when using templates variables

    This is much faster than using Subdoc class,
    but this only for texts OUTSIDE an existing paragraph.
    Nc                 >    d| _         |r | j                  |fi | y y r   r	   r   s      r   r   zRichTextParagraph.__init__   r   r   c                     t        |t              st        |      }d}|r|d|z  z  }d}|r|d|z  z  }||j                  z  }|dz  }| xj                  |z  c_        y )Nr   z<w:pStyle w:val="%s"/>z<w:p>z<w:pPr>%s</w:pPr>z</w:p>)r%   r   r
   )r   r   	parastyler8   r
   s        r   r   zRichTextParagraph.add   sj     $)D>D,y88D&--CtxxxCr   c                     | j                   S r:   r;   r<   s    r   r=   zRichTextParagraph.__unicode__   r>   r   c                     | j                   S r:   r;   r<   s    r   r@   zRichTextParagraph.__str__   r>   r   c                     | j                   S r:   r;   r<   s    r   rB   zRichTextParagraph.__html__   r>   r   r:   rC   rH   r   r   rJ   rJ      s%    ( *r   rJ   N)
rG   htmlr   ImportErrorcgiobjectr   rJ   RRPrH   r   r   <module>rW      sO   
wv wt( (V W  s   % 33