�
J�gї � � � d dl mZmZ d dlmZ d dlmZmZ ddlm Z m
Z
mZmZm
Z
mZmZmZmZ ddlmZ ddlmZmZ ddlmZ ed �
� � Z G d� d� � Z G d
� d� � Z ed�� � G d� d� � � � Z ed�� � G d� d� � � � Z ed�� � G d� d� � � � Zdd�ZdS )� )� dataclass�replace)�Number)�Optional�Union� ) �Align�MethodReturnValue�TableBordersLayout�TableCellFillMode�TableHeadingsDisplay�WrapMode�VAlign� TableSpan�CellBordersLayout)�
FPDFException)�
CORE_FONTS�FontFace)�Padding�BOLD)�emphasisc � � e Zd ZdZ dddej dej ddddeddd de j
ddd
d
d�d�Zdd
�Zd� Z
d� Zd� Z dd�Zdd�Zd� ZdS )�Tablez�
Object that `fpdf.FPDF.table()` yields, used to build a table in the document.
Detailed usage documentation: https://py-pdf.github.io/fpdf2/Tables.html
� �CENTER�MIDDLENTr F�JUSTIFYr )�align�v_align�borders_layout�cell_fill_color�cell_fill_mode�
col_widths�first_row_as_headings�
gutter_height�gutter_width�headings_style�line_height�markdown�
text_align�width�wrapmode�padding�outer_border_width�num_heading_rows�repeat_headingsc � � || _ t j |� � | _ t j |� � | _ t
j |� � | _ || _ || _ t j |� � | _ || _ | | _
|
| _ || _ || _ |
�
d|j z n|
| _ || _ || _ || _ || _ || _ t1 j |� � | _ d| _ g | _ |�t9 j d� � | _ nt9 j |� � | _ | j t j t j fvr|�tC d� � �d| _ | j r||dz z |
|dz z f| _"