diff --git a/services/api-server/src/api_server/html5.py b/services/api-server/src/api_server/html5.py
index 8307c25..54daba1 100644
--- a/services/api-server/src/api_server/html5.py
+++ b/services/api-server/src/api_server/html5.py
@@ -515,7 +515,7 @@ def render_html5_object_context(
{escape(str(name))}
{escape(str(getattr(obj, "kind", "object")))}
- {_object_action_links(project_id, str(name), getattr(obj, "lineage_id", ""), modules)}
+ {_object_action_links(project_id, str(name), getattr(obj, "lineage_id", ""), modules, normalized_mode)}
{_metric("Attrs", len(attributes))}
{_metric("Tables", len(sections))}
@@ -1541,7 +1541,13 @@ def _named_node_item(label: str, node: object) -> str:
"""
-def _object_action_links(project_id: str, object_name: str, lineage_id: object, modules: Iterable[object]) -> str:
+def _object_action_links(
+ project_id: str,
+ object_name: str,
+ lineage_id: object,
+ modules: Iterable[object],
+ active_mode: str,
+) -> str:
quoted_project = quote(project_id)
quoted_object = quote(object_name, safe="")
lineage = str(lineage_id or "")
@@ -1565,6 +1571,9 @@ def _object_action_links(project_id: str, object_name: str, lineage_id: object,
if lineage
else ""
)
+ def active_attrs(mode: str) -> str:
+ return ' aria-current="page" data-html5-object-action-active="true"' if mode == active_mode else ""
+
return f"""