Support older HyperView Space runtime
Browse files
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(
|
|
|
|
|
|
|
|
|
|
| 375 |
session.ui.apply_view(
|
| 376 |
build_demo_view(layouts),
|
| 377 |
-
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)
|