
    
g                     J    d dl mZ d dlmZ d dlmZ  G d de          ZeZdS )    )chain)	PngWriter)	BaseImagec                   >    e Zd ZdZdZdZdZd Zd ZddZ	d	 Z
d
 ZdS )
PyPNGImagez
    pyPNG image builder.
    PNG)r   Fc                 h    t           st          d          t          | j        | j        dd          S )NzPyPNG library not installed.T   )	greyscalebitdepth)r   ImportError
pixel_size)selfkwargss     C/var/www/api/venv/lib/python3.11/site-packages/qrcode/image/pure.py	new_imagezPyPNGImage.new_image   s5     	><===$/TTUVVVV    c                     dS )z
        Not used.
        N )r   rowcols      r   drawrectzPyPNGImage.drawrect   s      r   Nc                     t          |t                    rt          |d          }| j                            ||                                            d S )Nwb)
isinstancestropen_imgwrite	rows_iter)r   streamkinds      r   savezPyPNGImage.save   sI    fc"" 	(&$''F	 0 011111r   c              #   J   K                                     E d {V  dg j         j        z  z  } j        D ]P}|t	          t          j         fd|D                                 z   |z   }t           j                  D ]}|V  Q                                  E d {V  d S )Nr
   c              3   0   K   | ]}| gj         z  V  d S N)box_size).0pointr   s     r   	<genexpr>z'PyPNGImage.rows_iter.<locals>.<genexpr>'   s?       ( (:?e)t}4( ( ( ( ( (r   )border_rows_iterr'   bordermoduleslistr   from_iterablerange)r   
border_col
module_rowr   _s   `    r   r    zPyPNGImage.rows_iter    s      ((*********SDMDK78
, 	 	J' ( ( ( (CM( ( (      4=))  				((***********r   c              #      K   dg| j         | j        | j        dz  z   z  z  }t          | j        | j         z            D ]}|V  d S )Nr
      )r'   widthr,   r0   )r   
border_rowr3   s      r   r+   zPyPNGImage.border_rows_iter1   s_      SDMTZ$+/-IJK
t{T]233 	 	A	 	r   r&   )__name__
__module____qualname____doc__r"   allowed_kindsneeds_drawrectr   r   r#   r    r+   r   r   r   r   r      s          DMNW W W  
2 2 2 2
+ + +"    r   r   N)	itertoolsr   qrcode.compat.pngr   qrcode.image.baser   r   PymagingImager   r   r   <module>rB      sq          ' ' ' ' ' ' ' ' ' ' ' '- - - - - - - -b r   