Spaces:
Sleeping
Sleeping
Upload 4 files
Browse files- static/script.js +15 -5
static/script.js
CHANGED
@@ -8,15 +8,16 @@ document.getElementById("uploadForm").addEventListener("submit", async (e) => {
|
|
8 |
const loadingElement = document.getElementById("loading");
|
9 |
const errorElement = document.getElementById("error");
|
10 |
|
|
|
11 |
visualizationImage.src = "";
|
12 |
visualizationImage.classList.remove("loaded");
|
13 |
generatedCodeElement.textContent = "";
|
14 |
errorElement.textContent = "";
|
15 |
errorElement.classList.add("hidden");
|
16 |
-
|
17 |
loadingElement.classList.remove("hidden");
|
18 |
|
19 |
try {
|
|
|
20 |
const uploadFormData = new FormData();
|
21 |
uploadFormData.append("file", fileInput.files[0]);
|
22 |
|
@@ -33,6 +34,7 @@ document.getElementById("uploadForm").addEventListener("submit", async (e) => {
|
|
33 |
const uploadResult = await uploadResponse.json();
|
34 |
console.log("✅ File uploaded:", uploadResult);
|
35 |
|
|
|
36 |
const visFormData = new FormData();
|
37 |
visFormData.append("filename", uploadResult.filename);
|
38 |
visFormData.append("prompt", promptInput.value);
|
@@ -50,14 +52,22 @@ document.getElementById("uploadForm").addEventListener("submit", async (e) => {
|
|
50 |
const result = await visResponse.json();
|
51 |
console.log("🔹 Response from API:", result);
|
52 |
|
53 |
-
if
|
54 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
55 |
visualizationImage.onload = () => {
|
56 |
visualizationImage.classList.add("loaded");
|
57 |
};
|
58 |
-
|
|
|
|
|
59 |
} else {
|
60 |
-
throw new Error("No plot
|
61 |
}
|
62 |
} catch (error) {
|
63 |
console.error("Error:", error);
|
|
|
8 |
const loadingElement = document.getElementById("loading");
|
9 |
const errorElement = document.getElementById("error");
|
10 |
|
11 |
+
// Reset UI
|
12 |
visualizationImage.src = "";
|
13 |
visualizationImage.classList.remove("loaded");
|
14 |
generatedCodeElement.textContent = "";
|
15 |
errorElement.textContent = "";
|
16 |
errorElement.classList.add("hidden");
|
|
|
17 |
loadingElement.classList.remove("hidden");
|
18 |
|
19 |
try {
|
20 |
+
// Upload file
|
21 |
const uploadFormData = new FormData();
|
22 |
uploadFormData.append("file", fileInput.files[0]);
|
23 |
|
|
|
34 |
const uploadResult = await uploadResponse.json();
|
35 |
console.log("✅ File uploaded:", uploadResult);
|
36 |
|
37 |
+
// Generate visualization
|
38 |
const visFormData = new FormData();
|
39 |
visFormData.append("filename", uploadResult.filename);
|
40 |
visFormData.append("prompt", promptInput.value);
|
|
|
52 |
const result = await visResponse.json();
|
53 |
console.log("🔹 Response from API:", result);
|
54 |
|
55 |
+
// Always display generated code if present
|
56 |
+
if (result.generated_code) {
|
57 |
+
generatedCodeElement.textContent = result.generated_code;
|
58 |
+
}
|
59 |
+
|
60 |
+
// Display plot or error
|
61 |
+
if (result.plot_base64) {
|
62 |
+
visualizationImage.src = `data:image/png;base64,${result.plot_base64}`;
|
63 |
visualizationImage.onload = () => {
|
64 |
visualizationImage.classList.add("loaded");
|
65 |
};
|
66 |
+
} else if (result.error) {
|
67 |
+
errorElement.textContent = `Error: ${result.error}`;
|
68 |
+
errorElement.classList.remove("hidden");
|
69 |
} else {
|
70 |
+
throw new Error("No plot or error message received.");
|
71 |
}
|
72 |
} catch (error) {
|
73 |
console.error("Error:", error);
|