
    ^h                     x    S r SSKJr  SSKJr  SSKJrJrJr  SSK	J
r
  SSKJr   " S S	\
5      r " S
 S\5      rg)zHTML slide show Exporter class    )deepcopy)warn)BoolUnicodedefault)Preprocessor   )HTMLExporterc                       \ rS rSrSS jrSrg)_RevealMetadataPreprocessor   Nc                    [        U5      nUR                   H@  n UR                  R                  S0 5      R                  SS5      nXCR                  l        MB     [        UR                  5       HV  u  pSUR                  R
                  S;  d  M!  SUR                  l        SUR                  l        SUR                  l        Un  O   Sn[        U5      eSn[        UR                  US	-   S  US	-   S
9 H  u  pSUR                  US	-
     n	UR                  R
                  S:X  a"  SU	R                  l
        SUR                  l        UR                  R
                  S;   a6  XR                  l        SU	R                  l        SUR                  l        SnM  UR                  R
                  S:X  d  M  SUR                  l        U(       a  SU	R                  l        M  SnM     XR                  S   R                  l        SUR                  S   R                  l        SUR                  S   R                  l
        X4$ ! [         a    Sn GN
f = f)N	slideshow
slide_type->   skipnotesslideTz-All cells are hidden, cannot create slideshowFr	   )start>   r   subslidefragment)r   cellsmetadatagetAttributeErrorr   	enumerateslide_startsubslide_start
ValueError	slide_endfragment_endsubslide_endfragment_start)
selfnb	resourcescellr   indexfirst_slide_ixmsgin_fragmentprevious_cells
             T/home/james-whalen/.local/lib/python3.13/site-packages/nbconvert/exporters/slides.py
preprocess&_RevealMetadataPreprocessor.preprocess   s   b\HHD!!]]..{B?CCLRUV
 (2MM$  %RXX.KE}}''/@@+2(,0)/3,!& / BCS/!$RXXnq.@.B%CN]^L^`KEHHUQY/M }}''7237&&0,0)}}''+@@6A&&36:&&3/3,#))Z7/3,:>M**7"&K= aB .9*-1**.'}o " ! 
!s   ,III )N)__name__
__module____qualname____firstlineno__r/   __static_attributes__r1       r.   r   r      s    >r7   r   c                     ^  \ rS rSrSrSr\" S5      S 5       r\" S5      S 5       r\" S5      S	 5       r	\
" S
S9R                  SS9r\" S5      S 5       r\
" SSS9R                  SS9r\
" SSS9R                  SS9r\" SSS9R                  SS9r\
" SSS9R                  SS9r\
" SSS9R                  SS9r\
" SSS9R                  SS9r\
" SSS9R                  SS9rU 4S jrSrU =r$ )SlidesExporterT   z"Exports HTML slides with reveal.jszReveal.js slidestemplate_namec                     g)Nrevealr1   r%   s    r.   _template_name_default%SlidesExporter._template_name_default[   s    r7   file_extensionc                     g)Nz.slides.htmlr1   r>   s    r.   _file_extension_default&SlidesExporter._file_extension_default_   s    r7   template_extensionc                     g)Nz.html.j2r1   r>   s    r.   _template_extension_default*SlidesExporter._template_extension_defaultc   s    r7   a,  The URL prefix for reveal.js (version 3.x).
        This defaults to the reveal CDN, but can be any url pointing to a copy
        of reveal.js.

        For speaker notes to work, this must be a relative path to a local
        copy of reveal.js: e.g., "reveal.js".

        If a relative path is given, it must be a subdirectory of the
        current directory (from which the server is run).

        See the usage documentation
        (https://nbconvert.readthedocs.io/en/latest/usage.html#reveal-js-html-slideshow)
        for more details.
        )helpT)configreveal_url_prefixc                 x    SU R                   ;   a*  [        SSS9  U R                   R                  R                  $ g)Nz!RevealHelpPreprocessor.url_prefixzdPlease update RevealHelpPreprocessor.url_prefix to SlidesExporter.reveal_url_prefix in config files.   )
stacklevelz!https://unpkg.com/reveal.js@4.0.2)rJ   r   RevealHelpPreprocessor
url_prefixr>   s    r.   _reveal_url_prefix_default)SlidesExporter._reveal_url_prefix_defaultz   s:    .$++=D
 ;;55@@@2r7   simplea(  
        Name of the reveal.js theme to use.

        We look for a file with this name under
        ``reveal_url_prefix``/css/theme/``reveal_theme``.css.

        https://github.com/hakimel/reveal.js/tree/master/css/theme has
        list of themes that ship by default with reveal.js.
        r   z
        Name of the reveal.js transition to use.

        The list of transitions that ships by default with reveal.js are:
        none, fade, slide, convex, concave and zoom.
        Fz=
        If True, enable scrolling within each slide
         z
        slide number format (e.g. 'c/t'). Choose from:
        'c': current, 't': total, 'h': horizontal, 'v': vertical
        z
        width used to determine the aspect ratio of your presentation.
        Use the horizontal pixels available on your intended presentation
        equipment.
        z
        height used to determine the aspect ratio of your presentation.
        Use the horizontal pixels available on your intended presentation
        equipment.
        zNhttps://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.csszY
        URL to load font awesome from.

        Defaults to loading from cdnjs.
        c                 8  > [         TU ]  U5      nSU;  a  0 US'   U R                  US   S'   U R                  US   S'   U R                  US   S'   U R
                  US   S'   U R                  US   S'   U R                  US   S'   U R                  US   S'   U$ )	Nr=   rP   theme
transitionscrollnumberheightwidth)	super_init_resourcesrK   reveal_themereveal_transitionreveal_scrollreveal_numberreveal_heightreveal_width)r%   r'   	__class__s     r.   r]   SlidesExporter._init_resources   s    G+I6	9$"$Ih,0,B,B	(L)'+'8'8	(G$,0,B,B	(L)(,(:(:	(H%(,(:(:	(H%(,(:(:	(H%'+'8'8	(G$r7   r1   )r2   r3   r4   r5   __doc__export_from_notebookr   r?   rC   rG   r   tagrK   rQ   r^   r_   r   r`   ra   rc   rb   font_awesome_urlr]   r6   __classcell__)rd   s   @r.   r9   r9   T   s   , ._    !" #
   
cc "  !3 "3  
cc    
cc  
 
cc  
 
cc  
 
cc  
 
cc  X 
cc  r7   r9   N)rf   copyr   warningsr   	traitletsr   r   r   nbconvert.preprocessors.baser   htmlr
   r   r9   r1   r7   r.   <module>rp      s9    $
   , , 5 A, AH}\ }r7   