
    ^h2                        S r SSKJrJr  SSKrSSKrSSKrSSKJr  SSK	r	SSK	J
r
JrJr  SSKJr  SSKJrJrJrJr  SSKJr  SSKrSS	KJr  SS
KJr  SSKJrJr  SSKJr  SSK J!r!  SSK"J#r#  SSK$J%r%  SSK&J'r'  Sr(0 r)0 r*SSS00\" S5      4\)S'   SSS00S4\)S'   SSS00\" S5      4\)S'   \*RW                  S S!S"S#S$S%S&S'S(.5         " S) S\%\\\'5      r,\,RZ                  =r.r/g)*z(A tornado based Jupyter notebook server.    )absolute_importprint_functionN)RedirectHandler)DEFAULT_STATIC_FILES_PATHDEFAULT_TEMPLATE_PATH_LISTnbclassic_path)__version__)UnicodeListBooldefault)jupyter_path)FileFindHandler)url_path_join)ExtensionAppExtensionAppJinjaMixin)_i18n)load_handlers   )TerminalHandler)NotebookConfigShimMixin)NotebookAppTraitsz
jupyter nbclassic                       # start the notebook
jupyter nbclassic --certfile=mycert.pem # use SSL/TLS certificate
jupyter nbclassic password              # enter a password to protect the server
	ServerAppopen_browserFz3Don't open the notebook in a browser after startup.z
no-browserNotebookAppenable_mathjaxa4  Disable MathJax

    MathJax is the javascript library Jupyter uses to render math/LaTeX. It is
    very large, so you may want to disable it if you have a slow internet
    connection, or for offline use of the notebook.

    When disabled, equations etc. will appear as their untransformed TeX source.
    z
no-mathjax
allow_rootTz,Allow the notebook to be run from root user.z
allow-rootzServerApp.ipzServerApp.portzServerApp.port_retrieszServerApp.keyfilezServerApp.certfilezServerApp.client_cazServerApp.notebook_dirzServerApp.browser)ipportzport-retrieskeyfilecertfilez	client-caznotebook-dirbrowserc                     ^  \ rS rSrSr\r\" S5      r\	r	\
r
Sr0 r\" S\" 5       -  5      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S9r\" \" 5       \" S5      S	9r\" S5      S 5       r\" \" 5       S\" S5      S9r\S 5       r\S 5       r\S 5       rU 4S jrU 4S jrS r S r!Sr"U =r#$ )r   g   	nbclassiczThe Jupyter HTML Notebook.

    This launches a Tornado based HTML Notebook Server that serves up an HTML5/Javascript Notebook client.z/treez%s/treeT)configzbWhether the banner is displayed on the page.
        By default, the banner is displayed.
        )helpa  Whether to open in a browser after starting.
        The specific browser used is platform dependent and
        determined by the python standard library `webbrowser`
        module, unless it is overridden using the --browser
        (ServerApp.browser) configuration option.
        jupyter_notebook_configzSpecify a config file to load.)r&   r'   z!Path to search for custom.js, cssstatic_custom_pathc                     U R                   [        4 Vs/ s H#  n[        R                  R	                  US5      PM%     sn$ s  snf )Ncustom)
config_dirr   ospathjoin)selfds     O/home/james-whalen/.local/lib/python3.13/site-packages/nbclassic/notebookapp.py_default_static_custom_path'NotebookApp._default_static_custom_path   sE     )0+
0+!BGGLLH% 0+
 	
 
s   *Az6extra paths to look for Javascript notebook extensionsc                 6    U R                   [        S5      -   nU$ )z3The path to look for Javascript notebook extensionsnbextensions)extra_nbextensions_pathr   )r0   r.   s     r2   nbextensions_pathNotebookApp.nbextensions_path   s     ++l>.JJ    c                 *    U R                   [        /-   $ )zRename trait in jupyter_server.)extra_static_pathsr   r0   s    r2   static_pathsNotebookApp.static_paths   s     &&+D*EEEr:   c                 (    U R                   [        -   $ )z Rename trait for Jupyter Server.)extra_template_pathsr   r=   s    r2   template_pathsNotebookApp.template_paths   s     ((+EEEr:   c                   > [         [        U ]  5         [        R                  R                  [        R                  5      n[        R                  " S[        R                  R                  US5      SS9nU R                  R                  USS9  U R                  R                  R                  [        S9  U R                  R                  R                  U R                   S9  g )	Nnbuiznbclassic/i18nT)	localedirfallbackF)newstyle)r   )show_banner)superr   _prepare_templatesr-   r.   dirnamer%   __file__gettexttranslationr/   
jinja2_envinstall_gettext_translationsglobalsupdater   rI   )r0   base_dirrE   	__class__s      r2   rK   NotebookApp._prepare_templates   s    k435 77??9#5#56""6RWW\\&6(26844TE4J&&n&E&&43C3C&Dr:   c                    > S n[        U5      UR                  l        S n[        U5      U R                  l        [        TU ]  U5      $ )Nc                 \    U R                   [        R                  [        R                  /-   $ ))return extra paths + the default location)r<   jupyter_serverr   r%   r=   s    r2   static_file_path_jupyter_serverSNotebookApp._link_jupyter_server_extension.<locals>.static_file_path_jupyter_server   s%    **n.V.VXaX{X{-|||r:   c                     U R                   [        R                  R                  [        R
                  S5      [        R
                  /-   $ )rY   notebook)r<   r-   r.   r/   r%   r   r=   s    r2   static_file_path_nbclassicNNotebookApp._link_jupyter_server_extension.<locals>.static_file_path_nbclassic   sC     **iAA&()2)L)LNN Nr:   )propertyrU   static_file_pathrJ   _link_jupyter_server_extension)r0   	serverappr[   r_   rU   s       r2   rc   *NotebookApp._link_jupyter_server_extension   sK    	} 08+0-	,		N +33M*N'w5i@@r:   c           
         U R                   (       ao  U R                  R                  [        S5      5        U R                  R                  [        S5      S-  5        [        R
                  " [        S5      [        5        [        U R                  S[        U R                  R                  SU R                  S5      /0U R                   U R                  U R                  U R                  S9nU R                   R"                  " S
0 UD6  g	)z Add settings to the tornado app.z@The `ignore_minified_js` flag is deprecated and no longer works.zIAlternatively use `%s` when working on the notebook's Javascript and LESSznpm run build:watchzOThe `ignore_minified_js` flag is deprecated and will be removed in Notebook 6.0no_cache_pathsstaticr+   )r)   static_handler_argsignore_minified_jsmathjax_urlmathjax_configr8   N )rj   logwarningr   warningswarnDeprecationWarningdictr)   r   rd   base_urlnamerk   rl   r8   settingsrS   )r0   rv   s     r2   initialize_settingsNotebookApp.initialize_settings   s    ""HH\]_HHU_acxy zMM%acdvx #66 !!// 		 	#
!  $66((.."44!
$ 	(x(r:   c                    / n[        [        5       5      S:  a1  UR                  S[        SU R                  R
                  S-   045        U R                  S    H  nUR                  [        U5      5        M     UR                  [        S5      5        UR                  [        S5      5        UR                  [        S5      5        UR                  [        S	5      5        U R                  R                  U5        / nU R                  R
                  n[        nUR                  U" US
5      [        SU R                  045        UR                  U" US5      [        U R                  S   S/S.45        UR                  U" US5      [        U R                  S   S/S.45        [        S5      n[        U5      S-   nU R                  R                  R                  nUR                   SU*  n	UR                   U* S n
/ Ul        UR#                  U	5        UR#                  U5        UR#                  U
5        [%        S5        g)z:Load the (URL pattern, handler) tuples for each component.r   z
/nbclassicurlznbclassic/treeextra_servicesznbclassic.tree.handlersznbclassic.notebook.handlersznbclassic.edit.handlersznbclassic.view.handlersz/terminals/(\w+)ru   z/nbextensions/(.*)r8   /)r.   rg   z/custom/(.*)r)   zjupyter_server.base.handlers   Na  
  _   _          _      _
 | | | |_ __  __| |__ _| |_ ___
 | |_| | '_ \/ _` / _` |  _/ -_)
  \___/| .__/\__,_\__,_|\__\___|
       |_|

Read the migration plan to Notebook 7 to learn about the new features and the actions to take if you are using extensions.

https://jupyter-notebook.readthedocs.io/en/latest/migrate_to_notebook7.html

Please note that updating to Notebook 7 might break some of your extensions.
)lenr   appendr   rd   rt   rv   extendr   handlersr   r   ru   r   web_appwildcard_routerrules	add_rulesprint)r0   r   servicestatic_handlersrt   ujoinbase_handlersnrouter
core_rulesfinal_ruless              r2   initialize_handlersNotebookApp.initialize_handlers   s     ~ 1$OO!#DNN334DDE }}%56GOOM'23 7 	&?@A&CDE&?@A&?@AX& >>**801?VTYYDWX	
 	823_&9:#&%G 	
 	8_-&:;#&%A 	
 &&DE "''77\\#A2&
llA23'$)%  	r:   rm   )$__name__
__module____qualname____firstlineno__ru   r	   versionr   descriptionaliasesflagsextension_urlsubcommandsr
   r   tagdefault_urlr   rI   r   config_file_namer   r)   r   r3   r7   ra   r8   r>   rB   rK   rc   rw   r   __static_attributes____classcell__)rU   s   @r2   r   r   g   sg    DG n oK GEMK)n&667;;4;HK

 #T#
   
cc  !- gi#("I$K 
 !"
 #
 #79T(-'c)e%
  
 F F F F
EA4)>W Wr:   )0__doc__
__future__r   r   r-   rN   rp   tornado.webr   r%   r   r   r   nbclassic._versionr	   	traitletsr
   r   r   r   jupyter_core.pathsr   rZ   jupyter_server.base.handlersr   jupyter_server.utilsr   $jupyter_server.extension.applicationr   r   jupyter_server.transutilsr   jupyter_server.serverappr   terminal.handlersr   notebook_shim.shimr   notebook_shim.traitsr   	_examplesr   r   rS   r   launch_instancemainlaunch_new_instancerm   r:   r2   <module>r      s.   .
 7 	   '   +  ,  8 .
 , / 6 2	 	
>5)*	
?@l 
 %u-.
l  <&'	
89l 
 
,"$&," $m	mj )88 8r:   