o
    QDiv                     @  sn   d dl mZ d dlZd dlmZ d dlmZ d dlZddlm	Z	 ddl
mZ ejdd	d
G dd deZdS )    )annotationsN)Decimal)Any   )settings)FieldTF)kw_onlyreprc                   @  sN   e Zd ZU dZdZg dZejZde	d< 	 dd Z
dd	 Zd
dddiiiZdS )IntegerFieldintegerT)requiredminimummaximumenumboolbare_numberc                   s&   d  | j s
td d fdd}|S )Nz((^[^-\d]*)|(\D*$))cellr   c                   s   t | tr!|  }  r d| } zt| W S  ty    Y d S w | du s)| du r+d S t | tr2| S t | tr?|  r?t| S t | trN| d dkrNt| S d S )N TF   r   )	
isinstancestrstripsubint	Exceptionfloat
is_integerr   r   pattern T/var/www/Datamplify/venv/lib/python3.10/site-packages/frictionless/fields/integer.pyvalue_reader(   s$   


z6IntegerField.create_value_reader.<locals>.value_readerr   r   )r   recompile)selfr"   r    r   r!   create_value_reader!   s
   
z IntegerField.create_value_readerc                 C  s   ddd}|S )Nr   r   c                 S  s   t | S )N)r   r   r    r    r!   value_writerF   s   z6IntegerField.create_value_writer.<locals>.value_writerr#   r    )r&   r(   r    r    r!   create_value_writerD   s   
z IntegerField.create_value_writer
properties
bareNumbertypebooleanN)__name__
__module____qualname__r,   builtinsupported_constraintsr   DEFAULT_BARE_NUMBERr   __annotations__r'   r)   metadata_profile_patchr    r    r    r!   r
      s   
 #
r
   )
__future__r   r$   decimalr   typingr   attrsr   r   schemar   definer
   r    r    r    r!   <module>   s    