Ë
    :vžjD  ã                   ó²   — d Z ddlmZ ddlmZ ddlmZ ddlmZmZ ddl	m
Z ddlmZmZmZmZ dd	lmZ dd
lmZmZ  G d„ deee«      Zej.                  xZZy)úJupyterLab Server Applicationé    )Úglob)Úrelpath)ÚAny)ÚExtensionAppÚExtensionAppJinjaMixin)Úurl_path_join)ÚDictÚIntegerÚUnicodeÚobserveé   )Ú__version__)Ú	LabConfigÚadd_handlersc                   óT  — e Zd ZdZdZdZdZdZede	fd„«       Z
 edd¬	«      Zd
Z edd¬	«      j                  e¬«      Z edd
d¬«      Z edd
d¬«      Z edd
d¬«      Z edd
d¬«      Z edd
d¬«      Z ei d
d¬«      ZdddœZ e ee«      Ž deddfd„«       Zdd„Zdd„Zdd„Z y) ÚLabServerAppz1A Lab Server Application that runs out-of-the-boxÚjupyterlab_serverz/labr   z	/lab/treeÚreturnc                 ó   — | j                   S )N)Úname©Úselfs    úf/workspace/moltex-experiments/.pixi/envs/default/lib/python3.12/site-packages/jupyterlab_server/app.pyÚapp_namespacezLabServerApp.app_namespace   s   € à�y‰yÐó    z'The default URL to redirect to from `/`)ÚhelpTÚ zThe version of the application.)Údefaultz6Deprecated, use `LabServerApp.blocked_extensions_uris`)Úconfigr   zÅ
        A list of comma-separated URIs to get the blocked extensions list

        .. versionchanged:: 2.0.0
            `LabServerApp.blacklist_uris` renamed to `blocked_extensions_uris`
        z6Deprecated, use `LabServerApp.allowed_extensions_uris`zÇ
        "A list of comma-separated URIs to get the allowed extensions list

        .. versionchanged:: 2.0.0
            `LabServerApp.whitetlist_uris` renamed to `allowed_extensions_uris`
        i  z2The interval delay in seconds to refresh the listsz“The optional kwargs to use for the listings HTTP requests             as described on https://2.python-requests.org/en/v2.7.0/api/#requests.request)Úblocked_extensions_urisú1.2)Úallowed_extensions_urisr"   )Úblacklist_urisÚwhitelist_urisÚchangeNc                 óN  — |j                   }| j                  j                  |«      \  }}t        | |«      }||j                  k7  r`| j
                  j                  d| j                  j                  ||| j                  j                  |«       t        | ||j                  «       yy)zobserver for deprecated traitsz7%s.%s is deprecated in JupyterLab %s, use %s.%s insteadN)
r   Ú_deprecated_aliasesÚgetÚgetattrÚnewÚlogÚwarningÚ	__class__Ú__name__Úsetattr)r   r&   Úold_attrÚnew_attrÚversionÚ	new_values         r   Ú_deprecated_traitzLabServerApp._deprecated_traitU   s‘   € ð —;‘;ˆØ ×4Ñ4×8Ñ8¸ÓBÑˆ�'Ü˜D (Ó+ˆ	Ø˜Ÿ
™
Ò"ð �H‰H×ÑØIØ—‘×'Ñ'ØØØ—‘×'Ñ'Øôô �D˜( F§J¡JÕ/ð #r   c                 ó�  — t        | j                  j                  dg «      «      }|j                  | j                  «       | j
                  | j                  z   D ]N  }t        |› d�d¬«      D �cg c]"  }t        | j                  t        ||«      «      ‘Œ$ }}|j                  |«       ŒP | j                  j                  dt        |«      i«       | j                  ret        | j                  j                  dd«      }|rA| j                  j                   }|j                  j#                  di «      }t        |«      |d<   yyyc c}w )zuInitialize the settings:

        set the static files as immutable, since they should have all hashed name.
        Ústatic_immutable_cachez
/**/staticT)Ú	recursiveÚuntracked_message_typesNÚpage_config_data)ÚsetÚsettingsr)   ÚaddÚstatic_url_prefixÚlabextensions_pathÚextra_labextensions_pathr   ÚujoinÚlabextensions_urlr   ÚupdateÚlistÚ	serverappr*   Úkernel_managerÚweb_appÚ
setdefault)r   Úimmutable_cacheÚextension_pathÚpathÚextensions_urlr9   rG   r:   s           r   Úinitialize_settingsz LabServerApp.initialize_settingsj   s<  € ô
 ˜dŸm™m×/Ñ/Ð0HÈ"ÓMÓNˆð 	×Ñ˜D×2Ñ2Ô3ð #×5Ñ5¸×8UÑ8UÔUˆNô ! NÐ#3°:Ð!>È$ÕOóáO�Dô �d×,Ñ,¬g°d¸NÓ.KÕLØOð ð ð
 ×"Ñ" >Õ2ð Vð 	�‰×ÑÐ6¼¸_Ó8MÐNÔOØ�>Š>Ü&-Ø—‘×-Ñ-Ð/HÈ$ó'Ð#ñ 'ØŸ.™.×0Ñ0�Ø#*×#3Ñ#3×#>Ñ#>Ð?QÐSUÓ#VÐ Ü>BÐCZÓ>[Ð Ð!:Ò;ð 'ð	 ùòs   Á/'Ec                 óL   — | j                   g| _        | j                  g| _        y)zInitialize templates.N)Ú
static_dirÚstatic_pathsÚtemplates_dirÚtemplate_pathsr   s    r   Úinitialize_templatesz!LabServerApp.initialize_templates‡   s"   € à!Ÿ_™_Ð-ˆÔØ#×1Ñ1Ð2ˆÕr   c                 ó0   — t        | j                  | «       y)zInitialize handlers.N)r   Úhandlersr   s    r   Úinitialize_handlersz LabServerApp.initialize_handlersŒ   s   € ä�T—]‘] DÕ)r   )r   N)!r/   Ú
__module__Ú__qualname__Ú__doc__r   Úextension_urlÚapp_nameÚfile_url_prefixÚpropertyÚstrr   r   Údefault_urlÚload_other_extensionsÚtagr   Úapp_versionr$   r!   r%   r#   r   Úlistings_refresh_secondsr
   Úlistings_request_optionsr(   r   rD   r   r5   rM   rS   rV   © r   r   r   r      s6  „ Ù;à€DØ€MØ.€HØ!€Oàð˜sò ó ðñ ˜&Ð'PÔQ€Kð !Ðá˜"Ð#DÔE×IÑIÐR]ÐIÓ^€KáØ
�4ÐVô€Nñ &Ø
Øðô	Ðñ Ø
�4ÐVô€Nñ &Ø
Øðô	Ðñ  'Ø˜Ð#Wô Ðñ  $Ø
Øð[ô Ðð =Ø<ñÐñ ‰dÐ&Ó'Ð(ð0¨ð 0°ò 0ó )ð0ó(\ó:3ô
*r   r   N)rY   r   Úos.pathr   Útypingr   Ú$jupyter_server.extension.applicationr   r   Újupyter_server.utilsr	   rA   Ú	traitletsr
   r   r   r   Ú_versionr   rU   r   r   r   Úlaunch_instanceÚmainÚlaunch_new_instancere   r   r   Ú<module>ro      sL   ðÙ #õ
 Ý Ý ç UÝ 7ß 5Ó 5å !ß -ô|*Ð)¨9°lô |*ð~ *×9Ñ9Ð 9€Ñr   