
    Dhx                         S r SSKJr  SSKrSSKrSSKrSSKJrJr  SSK	J
r
  \R                  " S5        SS jrS rS	 rS
 rS rS rg)z1Helper objects needed by multiple CLI commands.

    )partialN)Geometryto_dict)munchifydefaultc                    ^ ^^ [        T 5      mTR                  S5      (       a  UU U4S jnU" 5       $ UU U4S jnU" 5       $ )z9Return a generator of JSON objects loaded from ``lines``.c               3     >#    TR                  S5      n T HN  nUR                  S5      (       a1  U (       a  [        R                  " U TS9v   UR                  S5      n MJ  X-  n MP     [        R                  " U TS9v   g 7f)Nr	   object_hook)strip
startswithjsonloads)bufferline
first_linelinesr   s     dC:\Users\julio\OneDrive\Documentos\Trabajo\Ideas Frescas\venv\Lib\site-packages\fiona/fio/helpers.pygenobj_gen.<locals>.gen   sk     %%f-F??6**"jj[II!ZZ/FNF  jj[AAs   A>Bc               3   |   >#    [         R                  " TTS9v   T H  n [         R                  " U TS9v   M     g 7f)Nr   )r   r   )r   r   r   r   s    r   r   r   $   s2     **Z[AAjj;?? s   9<)nextr   )r   r   r   r   s   `` @r   obj_genr      s;    eJV$$
	B& 5L	@
 5L    c                     U c  g U" U 5      $ N )valcasts     r   nullabler!   ,   s    
{Cyr   c                 z   S[        [        U 5      5      0nUR                  [        [        [
        [        [        [        [        [        [        5      [        [        [        5      [        [        [        5      [        [        [        5      S.
5         SSKJn  X2S'   [%        USS 0U5      $ ! ["         a     Nf = f)Nf)
sumpowminmaxmathboolintstrfloatlenr   )shaper.   __builtins__)r   r   updater$   r%   r&   r'   r(   r)   r   r!   r*   r+   r,   r-   shapely.geometryr.   ImportErroreval)feature
expression	safe_dictr.   s       r   eval_feature_expressionr7   3   s    hww/01I8S)8S)Xu-8S)	
*"' 
^T2I>>  s   
B- -
B:9B:c           	         S0 SS_SS_SS_SS	_S
S_SS_SS_SS_SS_SS_SSSS._SS_SS_SS_S S!S"S._S#S$_S%S&_S'S(S)S*S+S,S-.E0nU =(       d    /  H6  nUR                  S.5      u  p4UR                  5       XR                  5       '   M8     U$ )/zPReturns a JSON-LD Context object.

See https://json-ld.org/spec/latest/json-ld/.z@contextgeojsonzhttp://ld.geojson.org/vocab#Featurezgeojson:FeatureFeatureCollectionzgeojson:FeatureCollectionGeometryCollectionzgeojson:GeometryCollection
LineStringzgeojson:LineStringMultiLineStringzgeojson:MultiLineString
MultiPointzgeojson:MultiPointMultiPolygonzgeojson:MultiPolygonPointzgeojson:PointPolygonzgeojson:Polygonbboxz@listzgeojson:bbox)z
@container@idcoordinateszgeojson:coordinatesdatetimez)http://www.w3.org/2006/time#inXSDDateTimedescriptionz$http://purl.org/dc/terms/descriptionfeaturesz@setzgeojson:featuresgeometryzgeojson:geometryidrD   zgeojson:propertiesz(http://www.w3.org/2006/time#hasBeginningz%http://www.w3.org/2006/time#hasEndingzhttp://purl.org/dc/terms/titlez@typezgeojson:when)
propertiesstartstoptitletypewhen=)splitr   )context_itemsctxitemturis        r   make_ld_contextrX   L   sI   
 	 
5
(
  !<
 !">	

 .
 8
 .
 2
 _
 (
 7>B
 0
 C
 A
 v6HI
  *!
" %#
$ /?;5"/
C6 ##CGGI $ Jr   c                     SU S    3U S'   U $ )zAConverts a record's id to a blank node id and returns the record.z_:frJ   r   )recs    r   	id_recordr[   q   s    c$i[!CIJr   c           	         US:  a  U $ [        U SS5      (       a-  [        U R                   Vs/ s H  n[        X!5      PM     snS9$ [        U SS5      (       a-  [        U R                   Vs/ s H  n[        X!5      PM     snS9$ [        U [        [        45      (       a  [        X5      $ U  Vs/ s H  n[        X!5      PM     sn$ s  snf s  snf s  snf )zRecursively round coordinates.r   
geometriesN)r]   rE   )rE   )	getattrr   r]   recursive_roundrE   
isinstancer*   r,   round)obj	precisionparts      r   r_   r_   w   s    1}
sL$''EH^^T^T8^T
 	
 
mT	*	*FIooVod9oV
 	
 #U|$$S$$=@AST0SAA U W
 Bs   C	-C1Cr   )__doc__	functoolsr   r   r(   warningsfiona.modelr   r   fiona._vendor.munchr   simplefilterr   r!   r7   rX   r[   r_   r   r   r   <module>rk      sN        ) ( 	  i  6?2"JBr   