
    g                     <    d dl mZ d dlZddZddZ eed      Zy)    )defaultdictNc                 V   | y | j                   j                  dvrt        d| j                   z        | j                   t        j                  k(  r| j                  t        j                        } | j                   t        j                  k(  r| j                  t        j                        } |r$| j                  d   st        j                  |       } t        |       t        | j                         | j                  d   t        | j                        dk(  rddS | j                  d   dS )N)uifzunsupported dtype: %sC_CONTIGUOUSr      )valuedtypelengthsize)r   kind
ValueErrornpfloat64astypefloat32int64int32flagsascontiguousarray
memoryviewstrshapelen)arobjforce_contiguouss      V/var/www/openai/venv/lib/python3.12/site-packages/pydeck/data_utils/binary_transfer.pyarray_to_binaryr       s    	z	xx}}O+0BHH=>>	xx2::YYrzz"	xx288YYrxx  8!!"% BRXX((1+]a'	 	 .0XXa[	 	    c                    | y t        t              }i }| D ]  }t        |d         }|j                  |d         rt	        ||d      |d         ||d   <   n|d   ||d   <   ||d      j                  d      si ||d      d<   |d   |d   |d   d||d      d   |d	   <    |j                         D ]  \  }}||   ||   d<    |S )
Nnp_datalayer_idr   
attributesr
   r   r   )r
   r   r   accessor)r   dictr    getmaxitems)data_set_colsr   layersr   colaccessor_attribute	layer_key_s           r   serialize_columnsr1   "   s   FF,S^<::c*o&&)&Z*ACUV^C_&`F3z?#&8&BF3z?# c*o&**<846F3z?#L1 (0'0&v.B
s:-c*o>   	1&,Y&7y(# 'Mr!   )to_json	from_json)NT)N)collectionsr   numpyr   r    r1   r'   data_buffer_serialization r!   r   <module>r8      s%    # 
46 !):dK r!   