Files
transcription/workspace_test.py
T

67 lines
2.2 KiB
Python

from nicegui import ui
ui.colors(primary="#2563eb")
# ----------------------------------------------------------------------
# Header
# ----------------------------------------------------------------------
with ui.header(elevated=True).classes("items-center justify-between"):
ui.label("Document Review").classes("text-xl font-bold")
with ui.row().classes("items-center"):
ui.button(icon="zoom_out")
ui.button(icon="zoom_in")
ui.separator().props("vertical")
ui.input("Search").props("dense outlined")
ui.button("Export")
# ----------------------------------------------------------------------
# Main split view
# ----------------------------------------------------------------------
with ui.splitter(value=70).classes("w-full h-[calc(100vh-64px)]") as splitter:
# ==============================================================
# Left panel
# ==============================================================
with splitter.before, ui.column().classes("w-full h-full items-center bg-slate-100"):
# This can later become:
# - interactive_image
# - OpenSeadragon
# - Leaflet
# - custom HTML component
ui.image("https://picsum.photos/900/1200").classes("max-h-full max-w-full object-contain")
# ==============================================================
# Right panel
# ==============================================================
with splitter.after, ui.scroll_area().classes("w-full h-full"), ui.column().classes("w-full p-4 gap-3"):
with ui.expansion("Summary", icon="description", value=True):
ui.label("Short description of the document.")
with ui.expansion("OCR Text"):
ui.textarea().props("readonly").classes("w-full")
with ui.expansion("Entities", value=True):
ui.chip("Person")
ui.chip("Organization")
ui.chip("Date")
with ui.expansion("AI Analysis"):
ui.markdown("""
- Confidence: 98%
- Language: English
- Contains signature
""")
with ui.expansion("Notes"):
ui.textarea(placeholder="Add notes...").classes("w-full")
ui.run(port=8081)