Skip to content

Commit ef37052

Browse files
committed
add solution to frontend
1 parent 5429595 commit ef37052

File tree

3 files changed

+54
-1
lines changed

3 files changed

+54
-1
lines changed

frontend/entrypoint.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import logging
22

3-
from frontend.solutions import document_intelligence, sandbox, transcription
3+
from frontend.solutions import azure_storage, document_intelligence, sandbox, transcription
44
from frontend.solutions.types import SolutionType
55

66
logger = logging.getLogger(__name__)
@@ -26,3 +26,8 @@ def start(
2626
backend_url=backend_url,
2727
log_level=log_level,
2828
)
29+
if solution_type == SolutionType.AZURE_STORAGE:
30+
return azure_storage.start(
31+
backend_url=backend_url,
32+
log_level=log_level,
33+
)
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
import asyncio
2+
import logging
3+
from io import BytesIO
4+
from urllib.parse import urljoin
5+
6+
import streamlit as st
7+
8+
from frontend.solutions.utilities import http_post_file
9+
10+
logger = logging.getLogger(__name__)
11+
12+
13+
def start(
14+
backend_url: str,
15+
log_level: int,
16+
):
17+
logger.setLevel(log_level)
18+
logger.debug(f"set log level to {log_level}")
19+
20+
st.header("Azure Storage")
21+
22+
file_uploader = st.file_uploader(
23+
label="Choose a file",
24+
key="file_uploader",
25+
)
26+
blob_name = st.text_input(
27+
label="Blob Name",
28+
key="blob_name",
29+
)
30+
upload_button = st.button(
31+
label="Upload File",
32+
key="upload_button",
33+
)
34+
35+
if upload_button:
36+
if file_uploader is None:
37+
st.warning("Please upload a file first")
38+
else:
39+
with st.spinner("Uploading..."):
40+
bytes_data = file_uploader.getvalue()
41+
response = asyncio.run(
42+
http_post_file(
43+
url=urljoin(base=backend_url, url=f"/azure_storage/blobs/upload/?blob_name={blob_name}"),
44+
data_bytes_io=BytesIO(bytes_data),
45+
)
46+
)
47+
st.write(response)

frontend/solutions/types.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,4 @@ class SolutionType(Enum):
55
SANDBOX = "SANDBOX"
66
TRANSCRIPTION = "TRANSCRIPTION"
77
DOCUMENT_INTELLIGENCE = "DOCUMENT_INTELLIGENCE"
8+
AZURE_STORAGE = "AZURE_STORAGE"

0 commit comments

Comments
 (0)