
    i                         d dl mZ d dlmZ e G d d                      Ze G d d                      Zdeee                  dz  d	ee         fd
Zdeee                  dz  d	ee         fdZ	dS )    )Any)	dataclassc                   <    e Zd ZU dZeed<   eed<   eed<   eed<   dS )BodyBatteryReadingz Individual Body Battery reading.	timestampstatuslevelversionN)__name__
__module____qualname____doc__int__annotations__strfloat     [/root/projects/butler/venv/lib/python3.11/site-packages/garth/data/body_battery/readings.pyr   r      s:         **NNNKKKJJJNNNNNr   r   c                   (    e Zd ZU dZeed<   eed<   dS )StressReadingzIndividual stress reading.r   stress_levelN)r   r   r   r   r   r   r   r   r   r   r      s-         $$NNNr   r   body_battery_values_arrayNreturnc           	          g }| pg D ]G}t          |          dk    r2|^}}}}}||!|                    t          ||||                     Ht          |d           S )z9Convert body battery values array to structured readings.   N)r   r   r	   r
   c                     | j         S Nr   readings    r   <lambda>z-parse_body_battery_readings.<locals>.<lambda>,   	    0A r   key)lenappendr   sorted)r   readingsvaluesr   r   r	   r
   _s           r   parse_body_battery_readingsr,      s     H+1r  v;;!4:1Ivug}OO"'!#	     ( A ABBBBr   stress_values_arrayc                     g }| pg D ]E}t          |          dk    r0|                    t          |d         |d                              Ft          |d           S )z3Convert stress values array to structured readings.   r      )r   r   c                     | j         S r   r   r    s    r   r"   z'parse_stress_readings.<locals>.<lambda>;   r#   r   r$   )r&   r'   r   r(   )r-   r)   r*   s      r   parse_stress_readingsr2   /   sv     H%+  v;;!OOq	q	JJJ   ( A ABBBBr   )
typingr   pydantic.dataclassesr   r   r   listr,   r   r2   r   r   r   <module>r6      s         * * * * * *                C#DI5C	
C C C C.Cd3i4/C	-C C C C C Cr   