소스 검색

Use JupyterFrontEnd.IPaths.

Ian Rose 5 년 전
부모
커밋
3da56c735b
4개의 변경된 파일14개의 추가작업 그리고 10개의 파일을 삭제
  1. 3 4
      jupyterlab/extension.py
  2. 2 0
      packages/application/src/frontend.ts
  3. 3 1
      packages/application/src/lab.ts
  4. 6 5
      packages/hub-extension/src/index.ts

+ 3 - 4
jupyterlab/extension.py

@@ -206,10 +206,9 @@ def load_jupyter_server_extension(nbapp):
 
     # If running under JupyterHub, add more metadata.
     if hasattr(nbapp, 'hub_prefix'):
-        logger.error('******\nhey, got a prefix\n\n')
-        page_config['hub_prefix'] = nbapp.hub_prefix
-        page_config['hub_host'] = nbapp.hub_host
-        page_config['hub_user'] = nbapp.user
+        settings['page_config_data']['hubPrefix'] = nbapp.hub_prefix
+        settings['page_config_data']['hubHost'] = nbapp.hub_host
+        settings['page_config_data']['hubUser'] = nbapp.user
         api_token = os.getenv('JUPYTERHUB_API_TOKEN', '')
         page_config['token'] = api_token
     else:

+ 2 - 0
packages/application/src/frontend.ts

@@ -272,6 +272,8 @@ export namespace JupyterFrontEnd {
       readonly themes: string;
       readonly tree: string;
       readonly workspaces: string;
+      readonly hubPrefix?: string;
+      readonly hubHost?: string;
     };
 
     /**

+ 3 - 1
packages/application/src/lab.ts

@@ -244,7 +244,9 @@ export namespace JupyterLab {
       settings: PageConfig.getOption('settingsUrl'),
       themes: PageConfig.getOption('themesUrl'),
       tree: PageConfig.getOption('treeUrl'),
-      workspaces: PageConfig.getOption('workspacesUrl')
+      workspaces: PageConfig.getOption('workspacesUrl'),
+      hubHost: PageConfig.getOption('hubHost'),
+      hubPrefix: PageConfig.getOption('hubPrefix')
     },
     directories: {
       appSettings: PageConfig.getOption('appSettingsDir'),

+ 6 - 5
packages/hub-extension/src/index.ts

@@ -12,7 +12,7 @@ import {
   JupyterFrontEndPlugin
 } from '@jupyterlab/application';
 
-import { PageConfig, URLExt } from '@jupyterlab/coreutils';
+import { URLExt } from '@jupyterlab/coreutils';
 
 import { IMainMenu } from '@jupyterlab/mainmenu';
 
@@ -30,12 +30,13 @@ export namespace CommandIDs {
  */
 function activateHubExtension(
   app: JupyterFrontEnd,
+  paths: JupyterFrontEnd.IPaths,
   palette: ICommandPalette,
   mainMenu: IMainMenu
 ): void {
-  const hubHost = PageConfig.getOption('hub_host');
-  const hubPrefix = PageConfig.getOption('hub_prefix');
-  const baseUrl = PageConfig.getBaseUrl();
+  const hubHost = paths.urls.hubHost;
+  const hubPrefix = paths.urls.hubPrefix;
+  const baseUrl = paths.urls.base;
 
   // Bail if not running on JupyterHub.
   if (!hubPrefix) {
@@ -82,7 +83,7 @@ function activateHubExtension(
 const hubExtension: JupyterFrontEndPlugin<void> = {
   activate: activateHubExtension,
   id: 'jupyter.extensions.hub-extension',
-  requires: [ICommandPalette, IMainMenu],
+  requires: [JupyterFrontEnd.IPaths, ICommandPalette, IMainMenu],
   autoStart: true
 };