U
    kufŠ  ã                   @  sV   d Z ddlmZ ddlmZ G dd„ deƒZdd„ Zdd	d
„Zddd„Zddd„Z	dS )zAThe basic dict based notebook format.

Authors:

* Brian Granger
é    )Úannotations)ÚStructc                   @  s   e Zd ZdZdS )ÚNotebookNodezA notebook node object.N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__© r	   r	   ú6/tmp/pip-unpacked-wheel-zj9qk9v2/nbformat/v1/nbbase.pyr      s   r   c                 C  sR   t | tƒr2tƒ }|  ¡ D ]\}}t|ƒ||< q|S t | ttfƒrNdd„ | D ƒS | S )z'Create notebook node(s) from an object.c                 S  s   g | ]}t |ƒ‘qS r	   )Ú	from_dict)Ú.0Úir	   r	   r
   Ú
<listcomp>'   s     zfrom_dict.<locals>.<listcomp>)Ú
isinstanceÚdictr   Úitemsr   ÚtupleÚlist)ÚdÚnewdÚkÚvr	   r	   r
   r      s    
r   Nc                 C  s4   t ƒ }d|_| dk	rt| ƒ|_|dk	r0t|ƒ|_|S )z,Create a new code cell with input and outputÚcodeN)r   Ú	cell_typeÚstrr   ÚintÚprompt_number)r   r   Úcellr	   r	   r
   Únew_code_cell+   s    

r   c                 C  s"   t ƒ }| dk	rt| ƒ|_d|_|S )zCreate a new text cell.NÚtext)r   r   r   r   )r   r   r	   r	   r
   Únew_text_cell6   s
    
r    c                 C  s    t ƒ }| dk	r| |_ng |_|S )z7Create a notebook by name, id and a list of worksheets.N)r   Úcells)r!   Únbr	   r	   r
   Únew_notebook?   s
    r#   )NN)N)N)
r   Ú
__future__r   Znbformat._structr   r   r   r   r    r#   r	   r	   r	   r
   Ú<module>   s   

	