mnm-matin commited on
Commit
6057316
·
verified ·
1 Parent(s): dbb685a

Support older HyperView Space runtime

Browse files
Files changed (1) hide show
  1. demo.py +20 -7
demo.py CHANGED
@@ -334,6 +334,11 @@ def model_panel_props(layouts: dict[str, str]) -> list[dict[str, Any]]:
334
  return props
335
 
336
 
 
 
 
 
 
337
  def build_demo_view(layouts: dict[str, str]) -> hv.ui.View:
338
  scatter_panels = [
339
  hv.ui.Scatter(
@@ -366,18 +371,26 @@ def launch_demo(dataset: hv.Dataset, layouts: dict[str, str]) -> hv.Session:
366
  "port": SPACE_PORT,
367
  "open_browser": False,
368
  "workspace_id": WORKSPACE_ID,
 
369
  }
370
- if "block" in signature(hv.launch).parameters:
371
- launch_kwargs["block"] = False
372
 
373
- session = hv.launch(dataset, **launch_kwargs)
374
- session.ui.add_extension(EXTENSION_DIR, workspace_id=WORKSPACE_ID)
 
 
 
375
  session.ui.apply_view(
376
  build_demo_view(layouts),
377
- workspace_id=WORKSPACE_ID,
 
 
 
 
 
 
 
 
378
  )
379
- session.ui.set_active_layout(None, workspace_id=WORKSPACE_ID)
380
- session.ui.set_selection([], workspace_id=WORKSPACE_ID)
381
  print(f"\nHyperView ABO catalog demo is running at {session.url}", flush=True)
382
  model_names = " and ".join(spec["display_name"] for spec in MODEL_SPECS)
383
  print(f" {model_names} pinned scatter panels are added side by side.", flush=True)
 
334
  return props
335
 
336
 
337
+ def supported_kwargs(func: Any, kwargs: dict[str, Any]) -> dict[str, Any]:
338
+ params = signature(func).parameters
339
+ return {key: value for key, value in kwargs.items() if key in params}
340
+
341
+
342
  def build_demo_view(layouts: dict[str, str]) -> hv.ui.View:
343
  scatter_panels = [
344
  hv.ui.Scatter(
 
371
  "port": SPACE_PORT,
372
  "open_browser": False,
373
  "workspace_id": WORKSPACE_ID,
374
+ "block": False,
375
  }
 
 
376
 
377
+ session = hv.launch(dataset, **supported_kwargs(hv.launch, launch_kwargs))
378
+ session.ui.add_extension(
379
+ EXTENSION_DIR,
380
+ **supported_kwargs(session.ui.add_extension, {"workspace_id": WORKSPACE_ID}),
381
+ )
382
  session.ui.apply_view(
383
  build_demo_view(layouts),
384
+ **supported_kwargs(session.ui.apply_view, {"workspace_id": WORKSPACE_ID}),
385
+ )
386
+ session.ui.set_active_layout(
387
+ None,
388
+ **supported_kwargs(session.ui.set_active_layout, {"workspace_id": WORKSPACE_ID}),
389
+ )
390
+ session.ui.set_selection(
391
+ [],
392
+ **supported_kwargs(session.ui.set_selection, {"workspace_id": WORKSPACE_ID}),
393
  )
 
 
394
  print(f"\nHyperView ABO catalog demo is running at {session.url}", flush=True)
395
  model_names = " and ".join(spec["display_name"] for spec in MODEL_SPECS)
396
  print(f" {model_names} pinned scatter panels are added side by side.", flush=True)