Some checks failed
Security Scan / dependency-check (pull_request) Successful in 35s
Security Scan / security (pull_request) Successful in 40s
Test Suite / lint (pull_request) Failing after 40s
Test Suite / test (3.11) (pull_request) Successful in 1m26s
Test Suite / build (pull_request) Has been skipped
47 lines
1.3 KiB
Python
47 lines
1.3 KiB
Python
from dash import dcc, html
|
|
import dash_bootstrap_components as dbc
|
|
from .components.sidebar import SidebarComponent
|
|
|
|
|
|
class AppLayout:
|
|
def __init__(self):
|
|
self.sidebar = SidebarComponent()
|
|
|
|
def create_layout(self):
|
|
return dbc.Container(
|
|
[self._create_header(), self._create_main_content(), self._create_stores()],
|
|
fluid=True,
|
|
)
|
|
|
|
def _create_header(self):
|
|
return dbc.Row(
|
|
[
|
|
dbc.Col(
|
|
[
|
|
html.H1("EmbeddingBuddy", className="text-center mb-4"),
|
|
],
|
|
width=12,
|
|
)
|
|
]
|
|
)
|
|
|
|
def _create_main_content(self):
|
|
return dbc.Row(
|
|
[self.sidebar.create_layout(), self._create_visualization_area()]
|
|
)
|
|
|
|
def _create_visualization_area(self):
|
|
return dbc.Col(
|
|
[
|
|
dcc.Graph(
|
|
id="embedding-plot",
|
|
style={"height": "85vh", "width": "100%"},
|
|
config={"responsive": True, "displayModeBar": True},
|
|
)
|
|
],
|
|
width=9,
|
|
)
|
|
|
|
def _create_stores(self):
|
|
return [dcc.Store(id="processed-data"), dcc.Store(id="processed-prompts")]
|