@@ -288,18 +288,20 @@ def get_uid_str(uid):
288288 }
289289
290290 let PageComponent;
291- try {
292- const pageEsmUrl = URL.createObjectURL(new Blob([pageEsm], { type: "text/javascript" }));
293- const pageModule = (await import(pageEsmUrl)).default;
294- URL.revokeObjectURL(pageEsmUrl);
291+ if(pageMode && pageEsm.length > 0) {
292+ try {
293+ const pageEsmUrl = URL.createObjectURL(new Blob([pageEsm], { type: "text/javascript" }));
294+ const pageModule = (await import(pageEsmUrl)).default;
295+ URL.revokeObjectURL(pageEsmUrl);
295296
296- const pageDeps = {
297- usePageModeView,
298- };
299- PageComponent = await pageModule.createPage(pageDeps);
300- } catch(e) {
301- console.error("Error loading page ESM or executing createPage function.")
302- console.error(e);
297+ const pageDeps = {
298+ usePageModeView,
299+ };
300+ PageComponent = await pageModule.createPage(pageDeps);
301+ } catch(e) {
302+ console.error("Error loading page ESM or executing createPage function.")
303+ console.error(e);
304+ }
303305 }
304306
305307 function VitessceWidget(props) {
@@ -608,7 +610,7 @@ def _plugin_command(self, params, buffers):
608610 return command_func (command_params , buffers )
609611
610612# Launch Vitessce using plain HTML representation (no ipywidgets)
611- def ipython_display (config , height = 600 , theme = 'auto' , base_url = None , host_name = None , uid = None , port = None , proxy = False , js_package_version = '3.3.12' , js_dev_mode = False , custom_js_url = '' , plugins = None , remount_on_uid_change = True ):
613+ def ipython_display (config , height = 600 , theme = 'auto' , base_url = None , host_name = None , uid = None , port = None , proxy = False , js_package_version = '3.3.12' , js_dev_mode = False , custom_js_url = '' , plugins = None , remount_on_uid_change = True , page_mode = False , page_esm = None ):
612614 from IPython .display import display , HTML
613615 uid_str = "vitessce" + get_uid_str (uid )
614616
@@ -627,6 +629,8 @@ def ipython_display(config, height=600, theme='auto', base_url=None, host_name=N
627629 "js_dev_mode" : js_dev_mode ,
628630 "custom_js_url" : custom_js_url ,
629631 "plugin_esm" : plugin_esm ,
632+ "page_mode" : page_mode ,
633+ "page_esm" : ('' if page_esm is None else page_esm ),
630634 "remount_on_uid_change" : remount_on_uid_change ,
631635 "proxy" : proxy ,
632636 "has_host_name" : host_name is not None ,
0 commit comments