diff --git a/examples/mysite/title_page/subpage/water/science/generate_science_page.py b/examples/mysite/title_page/subpage/water/science/generate_science_page.py index bf41cdc5..f3f91992 100644 --- a/examples/mysite/title_page/subpage/water/science/generate_science_page.py +++ b/examples/mysite/title_page/subpage/water/science/generate_science_page.py @@ -125,7 +125,8 @@ grid_area="markdown", background_color="rgba(240, 240, 240, 0.7)", border_radius="10px", - padding="10px" + padding="10px", + show_element_name=False ) dashboard.add_geocoder_block( diff --git a/examples/mysite/title_page/subpage/water/science/index.html b/examples/mysite/title_page/subpage/water/science/index.html index 8c7f3999..083df093 100644 --- a/examples/mysite/title_page/subpage/water/science/index.html +++ b/examples/mysite/title_page/subpage/water/science/index.html @@ -604,7 +604,7 @@ /* Navigation Menu Styles */ .sivo-nav-btn { - position: absolute; + position: fixed; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 8px; @@ -624,7 +624,7 @@ transform: translateY(-1px); } .sivo-nav-menu { - position: absolute; + position: fixed; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 8px; @@ -818,7 +818,7 @@ .sivo-nav-btn { - position: absolute; + position: fixed; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 8px; @@ -841,7 +841,7 @@ transform: translateY(-1px); } .sivo-nav-menu { - position: absolute; + position: fixed; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 8px; @@ -1052,7 +1052,7 @@ -
# Water Science @@ -1674,20 +1674,24 @@
Details opened in sidebar overlay.
`; + var headerHtml = showName ? `Details opened in sidebar overlay.
`; }); } else { // Update in-grid Details Panels detailsPanels.forEach(panel => { + const showName = panel.getAttribute('data-show-name') !== 'false'; const container = panel.querySelector('.sivo-details-content'); var safeName = window.DOMPurify ? window.DOMPurify.sanitize(params.name) : String(params.name || "").replace(//g, ">"); + var headerHtml = showName ? `No additional details mapped.
`; + container.innerHTML = `${headerHtml}No additional details mapped.
`; } }); } diff --git a/src/sivo/core/dashboard.py b/src/sivo/core/dashboard.py index e849ce93..730b82c2 100644 --- a/src/sivo/core/dashboard.py +++ b/src/sivo/core/dashboard.py @@ -142,7 +142,7 @@ def add_text_block(self, block_id: str, text: str, font_family: str = "Arial, sa self.add_html_block(block_id, html_content, col_span=col_span, slot=slot, grid_area=grid_area, overflow_visible=overflow_visible, min_height=min_height) - def add_details_panel(self, block_id: str, title: str = "Details", placeholder: str = "Select an item to view details.", col_span: int = 1, slot: str = "main", grid_area: Optional[str] = None, overflow_visible: bool = False, min_height: Optional[str] = None, background_color: Optional[str] = None, border_radius: Optional[str] = None, padding: Optional[str] = None): + def add_details_panel(self, block_id: str, title: str = "Details", placeholder: str = "Select an item to view details.", col_span: int = 1, slot: str = "main", grid_area: Optional[str] = None, overflow_visible: bool = False, min_height: Optional[str] = None, background_color: Optional[str] = None, border_radius: Optional[str] = None, padding: Optional[str] = None, show_element_name: bool = True): """ Adds a pre-built panel that automatically listens to SIVO canvas clicks and renders the clicked element's `html` (tooltip content) mapping. @@ -152,7 +152,8 @@ def add_details_panel(self, block_id: str, title: str = "Details", placeholder: "placeholder": placeholder, "background_color": background_color, "border_radius": border_radius, - "padding": padding + "padding": padding, + "show_element_name": show_element_name } self.layout_order.append({"type": "details", "id": block_id, "col_span": col_span, "slot": slot, "grid_area": grid_area, "overflow_visible": overflow_visible, "min_height": min_height}) diff --git a/src/sivo/runtime/templates/dashboard_blocks.html b/src/sivo/runtime/templates/dashboard_blocks.html index 009fa945..2554faa7 100644 --- a/src/sivo/runtime/templates/dashboard_blocks.html +++ b/src/sivo/runtime/templates/dashboard_blocks.html @@ -1043,7 +1043,7 @@{{ details_panels[block.id].placeholder }}
@@ -1634,20 +1634,24 @@Details opened in sidebar overlay.
`; + var headerHtml = showName ? `Details opened in sidebar overlay.
`; }); } else { // Update in-grid Details Panels detailsPanels.forEach(panel => { + const showName = panel.getAttribute('data-show-name') !== 'false'; const container = panel.querySelector('.sivo-details-content'); var safeName = window.DOMPurify ? window.DOMPurify.sanitize(params.name) : String(params.name || "").replace(//g, ">"); + var headerHtml = showName ? `No additional details mapped.
`; + container.innerHTML = `${headerHtml}No additional details mapped.
`; } }); } diff --git a/src/sivo/templates/dashboards/analytics_dashboard.html b/src/sivo/templates/dashboards/analytics_dashboard.html index 74406e1b..affdb35a 100644 --- a/src/sivo/templates/dashboards/analytics_dashboard.html +++ b/src/sivo/templates/dashboards/analytics_dashboard.html @@ -301,7 +301,7 @@{{ details_panels[block.id].placeholder }}
{{ details_panels[block.id].placeholder }}
{{ details_panels[block.id].placeholder }}
{{ details_panels[block.id].placeholder }}
Details opened in sidebar overlay.
`; + container.innerHTML = `${headerHtml}Details opened in sidebar overlay.
`; }); } else { detailsPanels.forEach(panel => { + const showName = panel.getAttribute('data-show-name') !== 'false'; + const headerHtml = showName ? `No additional details mapped.
`; + container.innerHTML = `${headerHtml}No additional details mapped.
`; } }); } diff --git a/src/sivo/templates/dashboards/sidebar_left.html b/src/sivo/templates/dashboards/sidebar_left.html index f72fbc28..44c3faad 100644 --- a/src/sivo/templates/dashboards/sidebar_left.html +++ b/src/sivo/templates/dashboards/sidebar_left.html @@ -226,14 +226,14 @@{{ details_panels[block.id].placeholder }}
{{ details_panels[block.id].placeholder }}
{{ details_panels[block.id].placeholder }}
{{ details_panels[block.id].placeholder }}
{{ details_panels[block.id].placeholder }}
{{ details_panels[block.id].placeholder }}