
    8j                     p    d Z ddlZddlZddlmZmZ ddlmZ ddlm	Z	 de
dee	   fdZde
d	ee	   ddfd
Zy)z6Persistencia simple de la lista de cuentas en un JSON.    N)asdictfields)List)Accountpathreturnc                    t         j                  j                  |       sg S t        | dd      5 }t	        j
                  |      }d d d        t        t              D ch c]  }|j                   }}D cg c]4  }t        di |j                         D ci c]  \  }}||v s|| c}}6 c}}}S # 1 sw Y   sxY wc c}w c c}}w c c}}}w )Nrutf-8encoding )
osr   existsopenjsonloadr   r   nameitems)r   fdatafldknownitemkvs           agent/store.pyload_accountsr      s    77>>$		dC'	*ayy| 
+!'1#SXXE1QUVQUGD

C1U
q!tCDQUVV 
+	*1CVs/   B8C:CC	&C	+C8C	Caccountsc           	      $   t        j                  t         j                  j                  |       xs dd       t	        | dd      5 }t        j                  |D cg c]  }t        |       c}|dd	       d d d        y c c}w # 1 sw Y   y xY w)
N.T)exist_okwr   r      F)indentensure_ascii)r   makedirsr   dirnamer   r   dumpr   )r   r   r   as       r   save_accountsr+      si    KK%,t<	dC'	*a		h/h6!9h/15Q 
+	*/ 
+	*s   BB
-BBB)__doc__r   r   dataclassesr   r   typingr   agent.modelsr   strr   r+   r       r   <module>r2      sS    <  	 &   W WW WR RtG} R Rr1   