Files
testing123/streamlit_dashboard/docs/_build/html/streamlit_dashboard.page_classes.html
2026-05-21 08:40:24 -04:00

380 lines
29 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="en" data-content_root="./">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>streamlit_dashboard.page_classes namespace &#8212; Streamlit Dashboard 1.0 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=5ecbeea2" />
<link rel="stylesheet" type="text/css" href="_static/basic.css?v=b08954a9" />
<link rel="stylesheet" type="text/css" href="_static/alabaster.css?v=27fed22d" />
<script src="_static/documentation_options.js?v=f2a433a1"></script>
<script src="_static/doctools.js?v=fd6eb6e6"></script>
<script src="_static/sphinx_highlight.js?v=6ffebe34"></script>
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="streamlit_dashboard.streamlit_pages namespace" href="streamlit_dashboard.streamlit_pages.html" />
<link rel="prev" title="streamlit_dashboard.components namespace" href="streamlit_dashboard.components.html" />
<link rel="stylesheet" href="_static/custom.css" type="text/css" />
</head><body>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body" role="main">
<section id="module-streamlit_dashboard.page_classes">
<span id="streamlit-dashboard-page-classes-namespace"></span><h1>streamlit_dashboard.page_classes namespace<a class="headerlink" href="#module-streamlit_dashboard.page_classes" title="Link to this heading"></a></h1>
<section id="submodules">
<h2>Submodules<a class="headerlink" href="#submodules" title="Link to this heading"></a></h2>
</section>
<section id="module-streamlit_dashboard.page_classes.admin_panel_page_class">
<span id="streamlit-dashboard-page-classes-admin-panel-page-class-module"></span><h2>streamlit_dashboard.page_classes.admin_panel_page_class module<a class="headerlink" href="#module-streamlit_dashboard.page_classes.admin_panel_page_class" title="Link to this heading"></a></h2>
<dl class="py class">
<dt class="sig sig-object py" id="streamlit_dashboard.page_classes.admin_panel_page_class.AdminPanelPage">
<span class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></span><span class="sig-prename descclassname"><span class="pre">streamlit_dashboard.page_classes.admin_panel_page_class.</span></span><span class="sig-name descname"><span class="pre">AdminPanelPage</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#streamlit_dashboard.page_classes.admin_panel_page_class.AdminPanelPage" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">BaseReportPage</span></code></p>
<p>Provides a centralized administrative interface for configuring dashboard data sources.</p>
<p>Unlike standard report pages, this class does not generate or render data visualizations.
Instead, it hooks into the standard BaseReportPage lifecycle to render a configuration
form. It manages the retrieval, validation, and updating of Neoserra API export URLs
stored within the global DashboardConfig session state.</p>
<p>It employs strict regex validation to ensure data pipeline integrity, while also
providing a deliberate bypass mechanism to future-proof against external API changes.</p>
<dl class="py method">
<dt class="sig sig-object py" id="streamlit_dashboard.page_classes.admin_panel_page_class.AdminPanelPage.generate_figures">
<span class="sig-name descname"><span class="pre">generate_figures</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">parameters</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Dict</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">Any</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#streamlit_dashboard.page_classes.admin_panel_page_class.AdminPanelPage.generate_figures" title="Link to this definition"></a></dt>
<dd><p>Overrides the standard data generation step as a no-op.</p>
<p>Because this page is strictly for configuration management, it circumvents
the data processing phase of the BaseReportPage lifecycle.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>parameters</strong> (<em>Dict</em><em>[</em><em>str</em><em>, </em><em>Any</em><em>]</em>) The parameter dictionary (empty from render_controls).</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>An empty dictionary representing no figure data.</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p>Dict[str, Any]</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="streamlit_dashboard.page_classes.admin_panel_page_class.AdminPanelPage.get_page_name">
<span class="property"><span class="k"><span class="pre">static</span></span><span class="w"> </span></span><span class="sig-name descname"><span class="pre">get_page_name</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#streamlit_dashboard.page_classes.admin_panel_page_class.AdminPanelPage.get_page_name" title="Link to this definition"></a></dt>
<dd><p>Retrieves the human-readable name of the admin panel for UI navigation.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The static display name “Admin Panel”.</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p>str</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="streamlit_dashboard.page_classes.admin_panel_page_class.AdminPanelPage.get_syncable_figure_keys">
<span class="sig-name descname"><span class="pre">get_syncable_figure_keys</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">List</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#streamlit_dashboard.page_classes.admin_panel_page_class.AdminPanelPage.get_syncable_figure_keys" title="Link to this definition"></a></dt>
<dd><p>Declares that this page has no visual figures requiring axis synchronization.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>An empty list.</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p>List[str]</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="streamlit_dashboard.page_classes.admin_panel_page_class.AdminPanelPage.is_valid_neoserra_url">
<span class="sig-name descname"><span class="pre">is_valid_neoserra_url</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">url</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#streamlit_dashboard.page_classes.admin_panel_page_class.AdminPanelPage.is_valid_neoserra_url" title="Link to this definition"></a></dt>
<dd><p>Validates a given URL against the expected Neoserra export API format.</p>
<p>Used as a gatekeeper during form submission to prevent malformed URLs from breaking
the dashboards data ingestion pipeline.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>url</strong> (<em>str</em>) The raw URL string to validate.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the URL matches the expected Neoserra API pattern, False otherwise.</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p>bool</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="streamlit_dashboard.page_classes.admin_panel_page_class.AdminPanelPage.render_controls">
<span class="sig-name descname"><span class="pre">render_controls</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">container</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">DeltaGenerator</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Dict</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">Any</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#streamlit_dashboard.page_classes.admin_panel_page_class.AdminPanelPage.render_controls" title="Link to this definition"></a></dt>
<dd><p>Builds the administrative form and handles the validation/submission pipeline.</p>
<p>This method constructs a unified Streamlit form containing URL grabber widgets for
various data modules (Clients, Trainings, NBS, Funding). By wrapping the inputs
in a single form, it ensures that configuration updates are processed as a single
batch rather than triggering piecemeal app reruns.</p>
<p>During submission, it utilizes an “all-or-nothing” validation strategy. If any link
fails regex validation (and the manual bypass is not checked), the entire save
operation is aborted to prevent partial configuration states.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>container</strong> (<em>DeltaGenerator</em>) The Streamlit container to draw the administrative form onto.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>An empty dictionary, as this page does not pass parameters to generate_figures.</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p>Dict[str, Any]</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="streamlit_dashboard.page_classes.admin_panel_page_class.AdminPanelPage.render_figures">
<span class="sig-name descname"><span class="pre">render_figures</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">container</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">DeltaGenerator</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">output_data</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Dict</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">Any</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#streamlit_dashboard.page_classes.admin_panel_page_class.AdminPanelPage.render_figures" title="Link to this definition"></a></dt>
<dd><p>Overrides the standard figure rendering step as a no-op.</p>
<p>Does nothing, as there are no visual charts or graphs to draw for the Admin Panel.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>container</strong> (<em>DeltaGenerator</em>) The Streamlit container.</p></li>
<li><p><strong>output_data</strong> (<em>Dict</em><em>[</em><em>str</em><em>, </em><em>Any</em><em>]</em>) The empty output data from generate_figures.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="streamlit_dashboard.page_classes.admin_panel_page_class.AdminPanelPage.save_settings">
<span class="sig-name descname"><span class="pre">save_settings</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#streamlit_dashboard.page_classes.admin_panel_page_class.AdminPanelPage.save_settings" title="Link to this definition"></a></dt>
<dd><p>Commits the current configuration state to persistent storage.</p>
<p>Extracts the DashboardConfig object from the Streamlit session state and triggers
its internal save mechanism, providing visual feedback to the user upon completion.</p>
</dd></dl>
</dd></dl>
</section>
<section id="streamlit-dashboard-page-classes-authentication-page-wrapper-module">
<h2>streamlit_dashboard.page_classes.authentication_page_wrapper module<a class="headerlink" href="#streamlit-dashboard-page-classes-authentication-page-wrapper-module" title="Link to this heading"></a></h2>
</section>
<section id="streamlit-dashboard-page-classes-center-milestones-page-class-module">
<h2>streamlit_dashboard.page_classes.center_milestones_page_class module<a class="headerlink" href="#streamlit-dashboard-page-classes-center-milestones-page-class-module" title="Link to this heading"></a></h2>
</section>
<section id="streamlit-dashboard-page-classes-funding-milestones-page-class-module">
<h2>streamlit_dashboard.page_classes.funding_milestones_page_class module<a class="headerlink" href="#streamlit-dashboard-page-classes-funding-milestones-page-class-module" title="Link to this heading"></a></h2>
</section>
<section id="streamlit-dashboard-page-classes-naics-report-page-class-module">
<h2>streamlit_dashboard.page_classes.naics_report_page_class module<a class="headerlink" href="#streamlit-dashboard-page-classes-naics-report-page-class-module" title="Link to this heading"></a></h2>
</section>
<section id="streamlit-dashboard-page-classes-nbs-milestones-page-class-module">
<h2>streamlit_dashboard.page_classes.nbs_milestones_page_class module<a class="headerlink" href="#streamlit-dashboard-page-classes-nbs-milestones-page-class-module" title="Link to this heading"></a></h2>
</section>
<section id="streamlit-dashboard-page-classes-page-class-constants-module">
<h2>streamlit_dashboard.page_classes.page_class_constants module<a class="headerlink" href="#streamlit-dashboard-page-classes-page-class-constants-module" title="Link to this heading"></a></h2>
</section>
<section id="module-streamlit_dashboard.page_classes.report_comparer_page_class">
<span id="streamlit-dashboard-page-classes-report-comparer-page-class-module"></span><h2>streamlit_dashboard.page_classes.report_comparer_page_class module<a class="headerlink" href="#module-streamlit_dashboard.page_classes.report_comparer_page_class" title="Link to this heading"></a></h2>
<dl class="py class">
<dt class="sig sig-object py" id="streamlit_dashboard.page_classes.report_comparer_page_class.ComparerColumn">
<span class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></span><span class="sig-prename descclassname"><span class="pre">streamlit_dashboard.page_classes.report_comparer_page_class.</span></span><span class="sig-name descname"><span class="pre">ComparerColumn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">report_name_map</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">dict</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">report_configs</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">dict</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">column_id</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#streamlit_dashboard.page_classes.report_comparer_page_class.ComparerColumn" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">BaseReportPage</span></code></p>
<p>Acts as an interactive proxy wrapper for a single report within a comparison layout.</p>
<p>Handles dynamic instantiation of a user-selected report and forcibly overrides its
instance ID. This guarantees that Streamlit widget keys remain completely unique
even if the user selects the exact same report class in both comparison columns.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>report_name_map</strong> (<em>dict</em>) Dictionary mapping UI display names to BaseReportPage classes.</p></li>
<li><p><strong>report_configs</strong> (<em>dict</em>) Dictionary mapping classes to their config keyword arguments.</p></li>
<li><p><strong>column_id</strong> (<em>str</em>) An identifier (e.g., left, right) prepended to prevent widget collisions.</p></li>
</ul>
</dd>
</dl>
<dl class="py method">
<dt class="sig sig-object py" id="streamlit_dashboard.page_classes.report_comparer_page_class.ComparerColumn.generate_figures">
<span class="sig-name descname"><span class="pre">generate_figures</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">parameters</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Dict</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">Any</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Dict</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">Any</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#streamlit_dashboard.page_classes.report_comparer_page_class.ComparerColumn.generate_figures" title="Link to this definition"></a></dt>
<dd><p>Delegates figure generation to the currently instantiated report.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>parameters</strong> (<em>Dict</em><em>[</em><em>str</em><em>, </em><em>Any</em><em>]</em>) User inputs specific to the selected report.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The output data payload from the selected report.</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p>Dict[str, Any]</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="streamlit_dashboard.page_classes.report_comparer_page_class.ComparerColumn.render_controls">
<span class="sig-name descname"><span class="pre">render_controls</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">container</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">DeltaGenerator</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Dict</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">Any</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#streamlit_dashboard.page_classes.report_comparer_page_class.ComparerColumn.render_controls" title="Link to this definition"></a></dt>
<dd><p>Draws a selection menu to instantiate the desired report, then renders its specific controls.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>container</strong> (<em>DeltaGenerator</em>) The Streamlit column container.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The parameters generated by the selected reports controls.</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p>Dict[str, Any]</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="streamlit_dashboard.page_classes.report_comparer_page_class.ComparerColumn.render_figures">
<span class="sig-name descname"><span class="pre">render_figures</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">container</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">DeltaGenerator</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">output_data</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Dict</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">Any</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#streamlit_dashboard.page_classes.report_comparer_page_class.ComparerColumn.render_figures" title="Link to this definition"></a></dt>
<dd><p>Delegates the final drawing phase to the currently instantiated report.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>container</strong> (<em>DeltaGenerator</em>) The Streamlit column container.</p></li>
<li><p><strong>output_data</strong> (<em>Dict</em><em>[</em><em>str</em><em>, </em><em>Any</em><em>]</em>) The display data, potentially mutated by the parent ComparerPage.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="streamlit_dashboard.page_classes.report_comparer_page_class.ComparerPage">
<span class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></span><span class="sig-prename descclassname"><span class="pre">streamlit_dashboard.page_classes.report_comparer_page_class.</span></span><span class="sig-name descname"><span class="pre">ComparerPage</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">report_configs</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#streamlit_dashboard.page_classes.report_comparer_page_class.ComparerPage" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">BaseReportPage</span></code></p>
<p>Orchestrates a dual-column layout to allow dynamic side-by-side report comparison.</p>
<p>Leverages the BaseReportPage lifecycle to intercept data generation between two
child columns. If identical report types are selected, it extracts their max values
and synchronizes their Y-axes globally before allowing the final rendering phase,
ensuring an accurate visual comparison.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>report_configs</strong> (<em>dict</em>) Mapping of report page classes to their respective instantiation arguments.</p>
</dd>
</dl>
<dl class="py method">
<dt class="sig sig-object py" id="streamlit_dashboard.page_classes.report_comparer_page_class.ComparerPage.render">
<span class="sig-name descname"><span class="pre">render</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">container</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">DeltaGenerator</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#streamlit_dashboard.page_classes.report_comparer_page_class.ComparerPage.render" title="Link to this definition"></a></dt>
<dd><p>Splits the layout and manages the synchronization pipeline for both child reports.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>container</strong> (<em>DeltaGenerator</em>) The main Streamlit container allocated for the comparer.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
</section>
<section id="streamlit-dashboard-page-classes-training-attendee-counts-class-module">
<h2>streamlit_dashboard.page_classes.training_attendee_counts_class module<a class="headerlink" href="#streamlit-dashboard-page-classes-training-attendee-counts-class-module" title="Link to this heading"></a></h2>
</section>
<section id="streamlit-dashboard-page-classes-training-attendee-ranges-page-class-module">
<h2>streamlit_dashboard.page_classes.training_attendee_ranges_page_class module<a class="headerlink" href="#streamlit-dashboard-page-classes-training-attendee-ranges-page-class-module" title="Link to this heading"></a></h2>
</section>
<section id="streamlit-dashboard-page-classes-training-count-statistics-page-class-module">
<h2>streamlit_dashboard.page_classes.training_count_statistics_page_class module<a class="headerlink" href="#streamlit-dashboard-page-classes-training-count-statistics-page-class-module" title="Link to this heading"></a></h2>
</section>
<section id="streamlit-dashboard-page-classes-training-event-count-attendee-comparison-page-class-module">
<h2>streamlit_dashboard.page_classes.training_event_count_attendee_comparison_page_class module<a class="headerlink" href="#streamlit-dashboard-page-classes-training-event-count-attendee-comparison-page-class-module" title="Link to this heading"></a></h2>
</section>
<section id="streamlit-dashboard-page-classes-training-event-count-page-class-module">
<h2>streamlit_dashboard.page_classes.training_event_count_page_class module<a class="headerlink" href="#streamlit-dashboard-page-classes-training-event-count-page-class-module" title="Link to this heading"></a></h2>
</section>
<section id="streamlit-dashboard-page-classes-training-primary-topics-page-class-module">
<h2>streamlit_dashboard.page_classes.training_primary_topics_page_class module<a class="headerlink" href="#streamlit-dashboard-page-classes-training-primary-topics-page-class-module" title="Link to this heading"></a></h2>
</section>
</section>
</div>
</div>
</div>
<div class="sphinxsidebar" role="navigation" aria-label="Main">
<div class="sphinxsidebarwrapper">
<h1 class="logo"><a href="index.html">Streamlit Dashboard</a></h1>
<search id="searchbox" style="display: none" role="search">
<div class="searchformwrapper">
<form class="search" action="search.html" method="get">
<input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" placeholder="Search"/>
<input type="submit" value="Go" />
</form>
</div>
</search>
<script>document.getElementById('searchbox').style.display = "block"</script><h3>Navigation</h3>
<p class="caption" role="heading"><span class="caption-text">Contents:</span></p>
<ul class="current">
<li class="toctree-l1 current"><a class="reference internal" href="modules.html">streamlit_dashboard</a><ul class="current">
<li class="toctree-l2 current"><a class="reference internal" href="streamlit_dashboard.html">streamlit_dashboard namespace</a></li>
</ul>
</li>
</ul>
<div class="relations">
<h3>Related Topics</h3>
<ul>
<li><a href="index.html">Documentation overview</a><ul>
<li><a href="modules.html">streamlit_dashboard</a><ul>
<li><a href="streamlit_dashboard.html">streamlit_dashboard namespace</a><ul>
<li>Previous: <a href="streamlit_dashboard.components.html" title="previous chapter">streamlit_dashboard.components namespace</a></li>
<li>Next: <a href="streamlit_dashboard.streamlit_pages.html" title="next chapter">streamlit_dashboard.streamlit_pages namespace</a></li>
</ul></li>
</ul></li>
</ul></li>
</ul>
</div>
</div>
</div>
<div class="clearer"></div>
</div>
<div class="footer">
&#169;2026, SBDC Team.
|
Powered by <a href="https://www.sphinx-doc.org/">Sphinx 9.1.0</a>
&amp; <a href="https://alabaster.readthedocs.io">Alabaster 1.0.0</a>
|
<a href="_sources/streamlit_dashboard.page_classes.rst.txt"
rel="nofollow">Page source</a>
</div>
</body>
</html>