
    h)                        S r SSKJr  SSKJr  SSKJrJrJr  SSK	J
r
JrJrJrJr  S r " S S\
5      r " S	 S
\
5      r " S S\
5      r " S S\
5      rg)z2Custom element classes related to the styles part.    )annotations)WD_STYLE_TYPE)ST_DecimalNumberST_OnOff	ST_String)BaseOxmlElementOptionalAttributeRequiredAttribute
ZeroOrMore	ZeroOrOnec                Z    SSSSSSSSS	S
S.
R                  X R                  SS5      5      $ )zhReturn the style id corresponding to `name`, taking into account special-case
names such as 'Heading 1'.CaptionHeading1Heading2Heading3Heading4Heading5Heading6Heading7Heading8Heading9)
captionz	heading 1z	heading 2z	heading 3z	heading 4z	heading 5z	heading 6z	heading 7z	heading 8z	heading 9  )getreplace)names    B/var/www/html/env/lib/python3.13/site-packages/docx/oxml/styles.pystyleId_from_namer      sC      
c$S"%&'    c                      \ rS rSrSr\" SSS9r\" S\5      r	\" S\
5      r\" S\
5      r\" S	\
5      r\" S
\5      r\" S\
5      rS rS rS rSrg)CT_LatentStyles!   z`w:latentStyles` element, defining behavior defaults for latent styles and
containing `w:lsdException` child elements that each override those defaults for a
named latent style.zw:lsdException 
successorszw:countzw:defLockedStatezw:defQFormatzw:defSemiHiddenzw:defUIPriorityzw:defUnhideWhenUsedc                $    [        X5      nUc  gU$ )zXReturn the boolean value of the attribute having `attr_name`, or |False| if
not present.Fgetattrself	attr_namevalues      r   	bool_propCT_LatentStyles.bool_prop/   s     (=r    c                D    U R                  SU-  5      nU(       d  gUS   $ )zHReturn the `w:lsdException` child having `name`, or |None| if not found.zw:lsdException[@w:name="%s"]Nr   xpath)r+   r   founds      r   get_by_nameCT_LatentStyles.get_by_name7   s%    

9D@AQxr    c                .    [        X[        U5      5        gz7Set the on/off attribute having `attr_name` to `value`.N)setattrboolr*   s      r   set_bool_propCT_LatentStyles.set_bool_prop>   s    e-r    N)__name__
__module____qualname____firstlineno____doc__r   lsdExceptionr	   r   countr   defLockedState
defQFormatdefSemiHiddendefUIPrioritydefUnhideWhenUsedr.   r4   r:   __static_attributes__r$   r    r   r"   r"   !   st     .2>Li)9:E&'98DN">8<J%&7BM%&79IJM)*?J.r    r"   c                      \ rS rSrSr\" S\5      r\" S\	5      r
\" S\5      r\" S\5      r\" S\5      r\" S\5      rS	 rS
 rS rSrg)CT_LsdExceptionC   z^``<w:lsdException>`` element, defining override visibility behaviors for a named
latent style.w:lockedw:name	w:qFormatw:semiHiddenw:uiPriorityw:unhideWhenUsedc                B    U R                  5       R                  U 5        g)z;Remove this `w:lsdException` element from the XML document.N	getparentremover+   s    r   deleteCT_LsdException.deleteN       %r    c                    [        X5      $ )zWReturn the boolean value of the attribute having `attr_name`, or |None| if
not present.r(   )r+   r,   s     r   on_off_propCT_LsdException.on_off_propR   s     t''r    c                    [        XU5        gr7   )r8   r*   s      r   set_on_off_propCT_LsdException.set_on_off_propW   s    'r    r$   N)r<   r=   r>   r?   r@   r	   r   lockedr
   r   r   qFormat
semiHiddenr   
uiPriorityunhideWhenUsedrW   r[   r^   rH   r$   r    r   rJ   rJ   C   sb     z84FXy1DX6G">8<J">3CDJ&'98DN&(
(r    rJ   c                     \ rS rSr% SrSr\" S\SS S9r\" S\S	S S9r\" S
\SS S9r	\" S\SS S9r
\" S\SS S9r\" S\SS S9r\" S\SS S9r\" S\SS S9r\" S\SS S9r\" S\SS S9rC\" S\5      rS\S'   \" S\5      rS\S'   \" S \5      r\" S!\5      r\S" 5       r\R8                  S# 5       r\S$ 5       rS% r\S& 5       r\R8                  S' 5       r\S( 5       r \ R8                  S) 5       r \S* 5       r!\S+ 5       r"\"R8                  S, 5       r"\S- 5       r#\#R8                  S. 5       r#\S/ 5       r$\$R8                  S0 5       r$\S1 5       r%\%R8                  S2 5       r%S3r&g)4CT_Style\   z9A ``<w:style>`` element, representing a style definition.)rM   z	w:aliases	w:basedOnw:nextzw:linkzw:autoRedefinezw:hiddenrP   rO   rQ   rN   rL   z
w:personalzw:personalComposezw:personalReplyzw:rsidw:pPrw:rPrzw:tblPrzw:trPrzw:tcPrzw:tblStylePrrM      Nr%   rh      ri      rP      rO   	   rQ   
   rN      rL      rj      rk      zw:typezWD_STYLE_TYPE | Nonetypez	w:styleIdz
str | NonestyleIdz	w:defaultzw:customStylec                :    U R                   nUc  gUR                  $ )z5Value of `w:basedOn/@w:val` or |None| if not present.N)basedOnval)r+   ry   s     r   basedOn_valCT_Style.basedOn_val   s     ,,?{{r    c                T    Uc  U R                  5         g XR                  5       l        g N)_remove_basedOnget_or_add_basedOnrz   r+   r-   s     r   r{   r|      s"    =  ",1##%)r    c                    U R                   nUc  gU R                  5       nUR                  UR                  5      nUc  gU$ )zcSibling CT_Style element this style is based on or |None| if no base style or
base style not found.N)ry   rT   	get_by_idrz   )r+   ry   styles
base_styles       r   r   CT_Style.base_style   sD     ,,?!%%gkk2
r    c                B    U R                  5       R                  U 5        g)zARemove this `w:style` element from its parent `w:styles` element.NrS   rV   s    r   rW   CT_Style.delete   rY   r    c                :    U R                   nUc  gUR                  $ )z5Value of `w:locked/@w:val` or |False| if not present.F)r`   rz   )r+   r`   s     r   
locked_valCT_Style.locked_val   s     >zzr    c                n    U R                  5         [        U5      SL a  U R                  5       nXl        g g NT)_remove_lockedr9   _add_lockedrz   )r+   r-   r`   s      r   r   r      s2    ;$%%'FJ r    c                :    U R                   nUc  gUR                  $ )z5Value of ``<w:name>`` child or |None| if not present.N)r   rz   )r+   r   s     r   name_valCT_Style.name_val   s     yy<xxr    c                X    U R                  5         Ub  U R                  5       nXl        g g r~   )_remove_name	_add_namerz   )r+   r-   r   s      r   r   r      s*    >>#DH r    c                x    U R                   nUc  gU R                  5       nUR                  UR                  5      $ )zSibling CT_Style element identified by the value of `w:name/@w:val` or |None|
if no value is present or no style with that style id is found.N)nextrT   r   rz   )r+   r   r   s      r   
next_styleCT_Style.next_style   s6     yy<!))r    c                :    U R                   nUc  gUR                  $ )z6Value of `w:qFormat/@w:val` or |False| if not present.F)ra   rz   )r+   ra   s     r   qFormat_valCT_Style.qFormat_val   s     ,,?{{r    c                f    U R                  5         [        U5      (       a  U R                  5         g g r~   )_remove_qFormatr9   _add_qFormatr   s     r   r   r      s(    ;; r    c                :    U R                   nUc  gUR                  $ )z<Value of ``<w:semiHidden>`` child or |False| if not present.F)rb   rz   )r+   rb   s     r   semiHidden_valCT_Style.semiHidden_val   s      __
~~r    c                n    U R                  5         [        U5      SL a  U R                  5       nXl        g g r   )_remove_semiHiddenr9   _add_semiHiddenrz   )r+   r-   rb   s      r   r   r      s2    !;$--/J"N r    c                :    U R                   nUc  gUR                  $ )z;Value of ``<w:uiPriority>`` child or |None| if not present.N)rc   rz   )r+   rc   s     r   uiPriority_valCT_Style.uiPriority_val   s      __
~~r    c                X    U R                  5         Ub  U R                  5       nXl        g g r~   )_remove_uiPriority_add_uiPriorityrz   )r+   r-   rc   s      r   r   r      s,    !--/J"N r    c                :    U R                   nUc  gUR                  $ )z=Value of `w:unhideWhenUsed/@w:val` or |False| if not present.F)rd   rz   )r+   rd   s     r   unhideWhenUsed_valCT_Style.unhideWhenUsed_val   s$     ,,!!!!r    c                n    U R                  5         [        U5      SL a  U R                  5       nXl        g g r   )_remove_unhideWhenUsedr9   _add_unhideWhenUsedrz   )r+   r-   rd   s      r   r   r     s3    ##%;$!557N!& r    r$   )'r<   r=   r>   r?   r@   _tag_seqr   r   ry   r   rc   rb   rd   ra   r`   pPrrPrr	   r   rv   __annotations__r   rw   r   defaultcustomStylepropertyr{   setterr   rW   r   r   r   r   r   r   r   rH   r$   r    r   rf   rf   \   sz   CH0 X(12,7D=GX(12,7D>hqrlCJ>hqrlCJ1hrsmLN>Gzhrsm<F
G
6C
G
6C!2-"D
  ,YGZ   X6G#OX>K  2 2 
 
&       __  * *      
   # #   # # " " ' 'r    rf   c                  f    \ rS rSrSrSr\" S\SS S9r\" SS	S9r	CS
 r
S rSS jrSS jrS rS	rg)	CT_Stylesi  zK``<w:styles>`` element, the root element of a styles part, i.e. styles.xml.)zw:docDefaultsw:latentStylesw:styler      Nr%   r   r$   c                ~    U R                  5       nX$l        U(       a  SOSUl        [        U5      Ul        Xl        U$ )zReturn a newly added `w:style` element having `name` and `style_type`.

`w:style/@customStyle` is set based on the value of `builtin`.
NT)	add_stylerv   r   r   rw   r   )r+   r   
style_typebuiltinstyles        r   add_style_of_typeCT_Styles.add_style_of_type  s7    
  
$+D)$/r    c                    U R                  5        Vs/ s H)  o"R                  U:X  d  M  UR                  (       d  M'  UPM+     nnU(       d  gUS   $ s  snf )zEReturn `w:style[@w:type="*{style_type}*][-1]` or |None| if not found.N)_iter_stylesrv   r   )r+   r   sdefault_styles_for_types       r   default_forCT_Styles.default_for$  sS     ((*#
*!ff
.BAqyyA* 	  #
 '&r**#
s   AAAc                V    SU S3n[        [        U R                  U5      5      S5      $ )zB`w:style` child where @styleId = `styleId`.

|None| if not found.
zw:style[@w:styleId="z"]Nr   iterr2   )r+   rw   r2   s      r   r   CT_Styles.get_by_id.  s-    
 'wir2DE*+T22r    c                T    SU-  n[        [        U R                  U5      5      S5      $ )zT`w:style` child with `w:name` grandchild having value `name`.

|None| if not found.
zw:style[w:name/@w:val="%s"]Nr   )r+   r   r2   s      r   r4   CT_Styles.get_by_name6  s)    
 .4DE*+T22r    c                2    S U R                  S5       5       $ )z@Generate each of the `w:style` child elements in document order.c              3  $   #    U  H  ov   M     g 7fr~   r$   ).0r   s     r   	<genexpr>)CT_Styles._iter_styles.<locals>.<genexpr>@  s     9#8%#8s   r   r1   rV   s    r   r   CT_Styles._iter_styles>  s    94::i#899r    )rw   strreturnCT_Style | None)r   r   r   r   )r<   r=   r>   r?   r@   r   r   latentStylesr   r   r   r   r   r4   r   rH   r$   r    r   r   r     sE    U=H-(12,GLyR0E
+33:r    r   N)r@   
__future__r   docx.enum.styler   docx.oxml.simpletypesr   r   r   docx.oxml.xmlchemyr   r	   r
   r   r   r   r"   rJ   rf   r   r$   r    r   <module>r      sW    8 " ) G G '".o .D(o (2q' q'h0: 0:r    