
    Mf	                     2    d dl mZmZ  G d de          ZdS )    )	Component_explicitize_argsc                        e Zd ZdZg ZdgZdZd Zee	j
        e	j        e	j        e	j        e	j        f fd	            Z xZS )Storea=  A Store component.
    Easily keep data on the client side with this component.
    The data is not inserted in the DOM.
    Data can be in memory, localStorage or sessionStorage.
    The data will be kept with the id as key.

    Keyword arguments:

    - id (string; required):
        The ID of this component, used to identify dash components in
        callbacks. The ID needs to be unique across all of the components
        in an app.

    - clear_data (boolean; default False):
        Set to True to remove the data contained in `data_key`.

    - data (dict | list | number | string | boolean; optional):
        The stored data for the id.

    - modified_timestamp (number; default -1):
        The last time the storage was modified.

    - storage_type (a value equal to: 'local', 'session', 'memory'; default 'memory'):
        The type of the web storage.  memory: only kept in memory, reset
        on page refresh. local: window.localStorage, data is kept after
        the browser quit. session: window.sessionStorage, data is cleared
        once the browser quit.childrendash_core_componentsc                 R  
 g d| _         g | _        g d| _        g | _        |                    d          }t                      

                    |           
fd|D             }dD ]}	|	|vrt          d|	z   dz              t          t          |           j
        di | d S )N)id
clear_datadatamodified_timestampstorage_type_explicit_argsc                 "    i | ]}||         S  r   ).0k_localss     M/var/www/surfInsights/venv3-11/lib/python3.11/site-packages/dash/dcc/Store.py
<dictcomp>z"Store.__init__.<locals>.<dictcomp>E   s    666!71:666    )r
   zRequired argument `z` was not specified.r   )_prop_names_valid_wildcard_attributesavailable_propertiesavailable_wildcard_propertiespoplocalsupdate	TypeErrorsuperr   __init__)selfr
   r   r   r   r   kwargsr   argsr   r   	__class__s             @r   r!   zStore.__init__(   s    
 
 
 +-'%
 %
 %
! .0*$455((v6666~666 	T 	TA}} 5 9<R RSSS  	$eT#++d+++++r   )__name__
__module____qualname____doc___children_props_base_nodes
_namespace_typer   r   REQUIRED	UNDEFINEDr!   __classcell__)r%   s   @r   r   r      s        " "8 O,K'JE ( &$.", ", ", ", ", ", ", ", ", ",r   r   N)dash.development.base_componentr   r   r   r   r   r   <module>r2      s^    I H H H H H H HE, E, E, E, E,I E, E, E, E, E,r   