|
@@ -24,10 +24,10 @@ def _jupyter_server_extension_points():
|
|
|
}
|
|
|
]
|
|
|
|
|
|
-class ExampleApp(LabServerApp):
|
|
|
+class ExamplePrebuiltApp(LabServerApp):
|
|
|
name = 'lab'
|
|
|
load_other_extensions = False
|
|
|
- app_name = 'JupyterLab Example Federated App'
|
|
|
+ app_name = 'JupyterLab Example App with Prebuilt Extensions'
|
|
|
app_settings_dir = os.path.join(HERE, 'build', 'application_settings')
|
|
|
app_version = version
|
|
|
schemas_dir = os.path.join(HERE, 'core_package', 'build', 'schemas')
|
|
@@ -36,38 +36,41 @@ class ExampleApp(LabServerApp):
|
|
|
themes_dir = os.path.join(HERE, 'core_package', 'build', 'themes')
|
|
|
user_settings_dir = os.path.join(HERE, 'core_package', 'build', 'user_settings')
|
|
|
workspaces_dir = os.path.join(HERE, 'core_package', 'build', 'workspaces')
|
|
|
- labextensions_path = [os.path.join(HERE, "labextensions")]
|
|
|
|
|
|
- def initialize_handlers(self):
|
|
|
- # Handle labextension assets
|
|
|
- web_app = self.serverapp.web_app
|
|
|
- page_config = web_app.settings.get('page_config_data', {})
|
|
|
- web_app.settings['page_config_data'] = page_config
|
|
|
+ # Set the location for prebuilt extensions, overriding the default
|
|
|
+ # of looking in each of the Jupyter data paths.
|
|
|
+ labextensions_path = [os.path.join(HERE, "labextensions")]
|
|
|
|
|
|
- # By default, make terminals available.
|
|
|
- web_app.settings.setdefault('terminals_available', True)
|
|
|
+ # def initialize_handlers(self):
|
|
|
+ # # Handle labextension assets
|
|
|
+ # web_app = self.serverapp.web_app
|
|
|
+ # page_config = web_app.settings.get('page_config_data', {})
|
|
|
+ # web_app.settings['page_config_data'] = page_config
|
|
|
|
|
|
- # Extract the federated extension data from lab_extensions
|
|
|
- federated_exts = []
|
|
|
- for ext_path in [path for path in glob('./labextensions/**/package.json', recursive=True)]:
|
|
|
- with open(ext_path) as fid:
|
|
|
- data = json.load(fid)
|
|
|
- extbuild = data['jupyterlab']['_build']
|
|
|
- ext = {
|
|
|
- 'name': data['name'],
|
|
|
- 'load': extbuild['load'],
|
|
|
- }
|
|
|
- if 'extension' in extbuild:
|
|
|
- ext['extension'] = extbuild['extension']
|
|
|
- if 'mimeExtension' in extbuild:
|
|
|
- ext['mimeExtension'] = extbuild['mimeExtension']
|
|
|
- if 'style' in extbuild:
|
|
|
- ext['style'] = extbuild['style']
|
|
|
- federated_exts.append(ext)
|
|
|
+ # # By default, make terminals available.
|
|
|
+ # web_app.settings.setdefault('terminals_available', True)
|
|
|
|
|
|
- page_config['federated_extensions'] = federated_exts
|
|
|
+ # # Extract the federated extension data from lab_extensions
|
|
|
+ # federated_exts = []
|
|
|
+ # for ext_path in [path for path in glob('./labextensions/**/package.json', recursive=True)]:
|
|
|
+ # with open(ext_path) as fid:
|
|
|
+ # data = json.load(fid)
|
|
|
+ # extbuild = data['jupyterlab']['_build']
|
|
|
+ # ext = {
|
|
|
+ # 'name': data['name'],
|
|
|
+ # 'load': extbuild['load'],
|
|
|
+ # }
|
|
|
+ # if 'extension' in extbuild:
|
|
|
+ # ext['extension'] = extbuild['extension']
|
|
|
+ # if 'mimeExtension' in extbuild:
|
|
|
+ # ext['mimeExtension'] = extbuild['mimeExtension']
|
|
|
+ # if 'style' in extbuild:
|
|
|
+ # ext['style'] = extbuild['style']
|
|
|
+ # federated_exts.append(ext)
|
|
|
|
|
|
- super().initialize_handlers()
|
|
|
+ # page_config['federated_extensions'] = federated_exts
|
|
|
+
|
|
|
+ # super().initialize_handlers()
|
|
|
|
|
|
if __name__ == '__main__':
|
|
|
ExampleApp.launch_instance()
|