o
    QDi                     @  s   d dl mZ d dlmZmZ ddlmZ ddlmZ ddl	m
Z
 ddlmZ ddlmZ er@dd	lmZ dd
lmZ ddlmZ G dd dZG dd dZdS )    )annotations)TYPE_CHECKINGAny   )errors)Dialect)FrictionlessException)get_name)Pipeline)Package)Step)TableResourcec                   @  s    e Zd ZdddZdd	d
ZdS )Transformerpackager   pipeliner
   c                 C  s^   |j D ])}z|| W q ty, } ztjdt| d| dd}t||d }~ww |S )N"
" raises "note)stepstransform_package	Exceptionr   	StepErrorr	   r   )selfr   r   step	exceptionerror r   ]/var/www/Datamplify/venv/lib/python3.10/site-packages/frictionless/transformer/transformer.pyr      s   

zTransformer.transform_packageresourcer   c                 C  s   |   |pt }|jD ]g}|j}z|| W n  ty8 } ztjdt| d| dd}t	||d }~ww |j|ursd |_
t|j|d|_d|_d|_d |_d |_g |_d |_t |_d |j_d |j_d |j_d |j_d |j_q|S )Nr   r   r   )r    inline)inferr
   r   datatransform_resourcer   r   r   r	   r   pathDataWithErrorHandlingschemeformatencodingcompression
extrapaths	innerpathr   dialectstatsmd5sha256bytesfieldsrows)r   r   r   r   r#   r   r   r   r   r   transform_table_resource    s8   



z$Transformer.transform_table_resourceN)r   r   r   r
   )r   r   r   r
   )__name__
__module____qualname__r   r4   r   r   r   r   r      s    
r   c                   @  s&   e Zd ZdddZdd Zd	d
 ZdS )r&   r#   r   r   r   c                C  s   || _ || _d S )N)r#   r   )r   r#   r   r   r   r   __init__M   s   
zDataWithErrorHandling.__init__c                 C  s   dS )Nz<transformed-data>r   )r   r   r   r   __repr__Q   s   zDataWithErrorHandling.__repr__c              
   c  s    zt | jr|  n| jE d H  W d S  ty@ } z!t|tr'|jjdkr' tjdt	| j
 d| dd}t||d }~ww )Nz
step-errorr   r   r   )callabler#   r   
isinstancer   r   typer   r   r	   r   )r   r   r   r   r   r   __iter__T   s   $
 
zDataWithErrorHandling.__iter__N)r#   r   r   r   )r5   r6   r7   r8   r9   r=   r   r   r   r   r&   L   s    
r&   N)
__future__r   typingr   r   r    r   r-   r   r   r   helpersr	   r   r
   r   r   r   	resourcesr   r   r&   r   r   r   r   <module>   s    ;