o
    g                     @   s   d Z ddlmZ ddlmZmZmZmZmZm	Z	m
Z
mZ ddlmZmZmZmZ ddlmZ G dd deZG dd	 d	eZG d
d deZG dd deZG dd deZdS )z
Richtext definition
    )Serialisable)AliasTypedIntegerSetNoneSetBoolStringSequence)
NestedBoolNestedIntegerNestedString
NestedText)Fontc                   @   sB   e Zd ZdZe Zeg ddZeg ddZ			dddZ	dS )	PhoneticProperties
phoneticPr)halfwidthKatakanafullwidthKatakanaHiragananoConversion)values)	noControlleftcenterdistributedNc                 C      || _ || _|| _d S N)fontIdtype	alignment)selfr   r   r    r!   L/var/www/html/api-tag/env/lib/python3.10/site-packages/openpyxl/cell/text.py__init__$      
zPhoneticProperties.__init__NNN)
__name__
__module____qualname__tagnamer   r   r   r   r   r#   r!   r!   r!   r"   r      s    r   c                   @   s>   e Zd ZdZe Ze ZeedZ	e
dZ			dddZdS )PhoneticTextrPh)expected_typetNc                 C   r   r   )sbebr-   )r    r.   r/   r-   r!   r!   r"   r#   7   r$   zPhoneticText.__init__r%   )r&   r'   r(   r)   r   r.   r/   r   strr-   r   textr#   r!   r!   r!   r"   r*   .   s    
r*   c                   @   s   e Zd ZdZdZeddZejZej	Z	ej
Z
ejZejZejZejZejZejZejZejZejZejZejZdZ															d	ddZdS )

InlineFontz
    Font for inline text because, yes what you need are different objects with the same elements but different constraints.
    RPrEltT)
allow_nonerFontcharsetfamilybistrikeoutlineshadowcondenseextendcolorszu	vertAlignschemeNc                 C   s^   || _ || _|| _|| _|| _|| _|| _|| _|	| _|
| _	|| _
|| _|| _|| _|| _d S r   r5   )r    r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   r!   r!   r"   r#   ]   s   
zInlineFont.__init__)NNNNNNNNNNNNNNN)r&   r'   r(   __doc__r)   r   r6   r   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   __elements__r#   r!   r!   r!   r"   r2   A   sF    
r2   c                   @   sJ   e Zd ZdZeeddZedZe	e
ddZedZdZ		d
dd	ZdS )RichTextREltTr,   r4   rPrr-   rJ   r-   Nc                 C   s   || _ || _d S r   rK   )r    rJ   r-   r!   r!   r"   r#      s   
zRichText.__init__)NN)r&   r'   r(   r)   r   r2   rJ   r   fontr   r0   r-   r1   rF   r#   r!   r!   r!   r"   rG      s    rG   c                   @   s   e Zd ZdZededZedZe	e
ddZedZe	eddZedZeeddZedZd	Z	
			
dddZedd Zd
S )Textr1   T)r4   r,   r-   rI   rr+   r   r-   rN   r+   r   Nr!   c                 C   s   || _ || _|| _|| _d S r   rO   )r    r-   rN   r+   r   r!   r!   r"   r#      s   
zText.__init__c                 C   sF   g }| j dur|| j  | jD ]}|jdur||j qd|S )z1
        Text stripped of all formatting
        N )plainappend	formattedr-   join)r    snippetsblockr!   r!   r"   content   s   



zText.content)Nr!   r!   N)r&   r'   r(   r)   r   r0   r-   r   rQ   r
   rG   rN   rS   r*   r+   phoneticr   r   r   rF   r#   propertyrW   r!   r!   r!   r"   rM      s$    
rM   N)rE   !openpyxl.descriptors.serialisabler   openpyxl.descriptorsr   r   r   r   r   r   r	   r
   openpyxl.descriptors.nestedr   r   r   r   openpyxl.styles.fontsr   r   r*   r2   rG   rM   r!   r!   r!   r"   <module>   s   (
>