
    kh                     f    d dl mZmZ ddlmZ ddlmZ ddlmZm	Z	 d Z
d Zd Zd	 Zd
 Zd Zd Zy)   )	documentsdocument_matchers   )LineParseError)	TokenType)try_parse_class_nameparse_stringc                    | j                  t        j                  d      r9t        |       }t	        |       }t        |       }t        j                  |||      S | j                  t        j                  d      r-t        |       }t	        |       }t        j                  ||      S | j                  t        j                  d      r-t        |       }t	        |       }t        j                  ||      S | j                  t        j                  d      rt        j                  S | j                  t        j                  d      rt        j                  S | j                  t        j                  d      rt        j                  S | j                  t        j                  d	      rt        j                  S | j                  t        j                  d
      rt        j                  S | j                  t        j                  d      rt        j                  S | j                  t        j                  d      rt!        |       S | j                  t        j                  d      rt        j"                  S | j                  t        j                  d      rt%        |       S t'        dj)                  | j+                  t        j                                    )Np)style_id
style_name	numberingr)r   r   tablebiustrikezall-capsz
small-caps	highlightzcomment-referencebrz"Unrecognised document element: {0})try_skipr   
IDENTIFIERr   _parse_style_name_parse_numberingr   	paragraphrunr   bolditalic	underlinestrikethroughall_caps
small_caps_parse_highlightcomment_reference_parse_breakr   format
next_value)tokensr   r   r   s       i/var/www/teggl/fontify/venv/lib/python3.12/site-packages/mammoth/styles/parser/document_matcher_parser.pyparse_document_matcherr*      s"   y++S1'/&v.
$V,	 **!
 	
 
--s	3'/&v.
 $$!
 	

 
--w	7'/&v.
 &&!
 	

 
--s	3 %%%	--s	3 '''	--s	3 ***	--x	8 ...	--z	: )))	--|	< +++	--{	;''	--/B	C 222	--t	4F## AHHIZIZ[d[o[oIpqrr    c                     | j                  t        j                  d      rM| j                  t        j                  d       t        |       }| j                  t        j                  d       |S y )N[z
style-name])r   r   SYMBOLskipr   _parse_string_matcher)r(   string_matchers     r)   r   r   C   sQ    y''-I((,7.v6I$$c*r+   c                 J   | j                  t        j                  d      rt        j                  t        |             S | j                  t        j                  d      rt        j                  t        |             S t        dj                  | j                                     )N=z^=z Unrecognised string matcher: {0})
r   r   r/   r   equal_tor	   starts_withr   r&   r'   )r(   s    r)   r1   r1   M   sv    y''- )),v*>??	))4	0 ,,\&-ABB?FFvGXGXGZ[\\r+   c                 ^   | j                  t        j                  d      rt        |       }| j	                  t        j                  d       t        | j                  t        j                              dz
  }| j	                  t        j                  d       t        j                  ||      S y )N:(r   ))
is_ordered)
r   r   r/   _parse_list_typer0   intr'   INTEGERr   numbering_level)r(   r;   levels      r)   r   r   U   s    y''-%f-
I$$c*F%%i&7&789A=I$$c*((:FF .r+   c                     | j                  t        j                        }|dk(  ry|dk(  ryt        dj	                  |            )Nzordered-listTzunordered-listFzUnrecognised list type: {0})r'   r   r   r   r&   )r(   	list_types     r)   r<   r<   ^   sF    !!)"6"67IN"	&	&:AA)LMMr+   c                 J   | j                  t        j                  d      rl| j                  t        j                  d       | j                  t        j                  d       t        |       }| j                  t        j                  d       nd }t        j                  |      S )Nr-   colorr4   r.   )rD   )r   r   r/   r0   r   r	   r   r   )r(   rD   s     r)   r#   r#   h   sr    y''-I(('2I$$c*V$I$$c*&&U33r+   c                    | j                  t        j                  d       | j                  t        j                  d       | j                  t        j                  d       t	        |       }| j                  t        j                  d       |dk(  rt
        j                  S |dk(  rt
        j                  S |dk(  rt
        j                  S t        dj                  |            )	Nr-   typer4   r.   linepagecolumnzUnrecognised break type: {0})r0   r   r/   r   r	   r   
line_break
page_breakcolumn_breakr   r&   )r(   	type_names     r)   r%   r%   t   s    
KK	  #&
KK	$$f-
KK	  #&V$I
KK	  #&F +++	f	 +++	h	 ---;BB9MNNr+   N) r   r   errorsr   	tokeniserr   token_parserr   r	   r*   r   r1   r   r<   r#   r%    r+   r)   <module>rS      s:    , "   <:sx]GN	4Or+   