Spaces:
Running
Running
makeup
Browse files
app.py
CHANGED
@@ -82,7 +82,7 @@ def create_ui():
|
|
82 |
validation_progress = gr.HTML(visible=False)
|
83 |
|
84 |
# Collapsible report section
|
85 |
-
with gr.Accordion("Download full validation report
|
86 |
with gr.Column():
|
87 |
report_md = gr.File(
|
88 |
label="Download Report",
|
@@ -229,13 +229,50 @@ def create_ui():
|
|
229 |
display: flex;
|
230 |
align-items: center;
|
231 |
gap: 8px;
|
|
|
232 |
}
|
233 |
.gr-accordion > .label-wrap::after {
|
234 |
content: "▶";
|
235 |
position: absolute;
|
236 |
right: 16px;
|
|
|
|
|
237 |
transition: transform 0.3s ease;
|
|
|
238 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
239 |
.gr-accordion[data-open=true] > .label-wrap::after {
|
240 |
transform: rotate(90deg);
|
241 |
}
|
@@ -392,8 +429,8 @@ def create_ui():
|
|
392 |
}}">
|
393 |
<div class="step-left">
|
394 |
<div class="step-status {status_class}">{status_icon}</div>
|
395 |
-
<
|
396 |
-
<
|
397 |
</div>
|
398 |
</div>
|
399 |
<div class="step-details" id="details-{i}" style="display: none;">
|
|
|
82 |
validation_progress = gr.HTML(visible=False)
|
83 |
|
84 |
# Collapsible report section
|
85 |
+
with gr.Accordion("Download full validation report", visible=False, open=False) as report_group:
|
86 |
with gr.Column():
|
87 |
report_md = gr.File(
|
88 |
label="Download Report",
|
|
|
229 |
display: flex;
|
230 |
align-items: center;
|
231 |
gap: 8px;
|
232 |
+
padding-right: 32px; /* Make room for the arrow */
|
233 |
}
|
234 |
.gr-accordion > .label-wrap::after {
|
235 |
content: "▶";
|
236 |
position: absolute;
|
237 |
right: 16px;
|
238 |
+
top: 50%;
|
239 |
+
transform: translateY(-50%);
|
240 |
transition: transform 0.3s ease;
|
241 |
+
font-size: 0.8em;
|
242 |
}
|
243 |
+
.gr-accordion[data-open=true] > .label-wrap::after {
|
244 |
+
transform: translateY(-50%) rotate(90deg);
|
245 |
+
}
|
246 |
+
|
247 |
+
/* Consistent arrow styling for both validation steps and accordion */
|
248 |
+
.validation-step .step-header,
|
249 |
+
.gr-accordion > .label-wrap {
|
250 |
+
position: relative;
|
251 |
+
display: flex;
|
252 |
+
align-items: center;
|
253 |
+
gap: 8px;
|
254 |
+
}
|
255 |
+
|
256 |
+
.validation-step .arrow-indicator,
|
257 |
+
.gr-accordion > .label-wrap::after {
|
258 |
+
content: "▶";
|
259 |
+
font-size: 0.8em;
|
260 |
+
margin-left: 8px;
|
261 |
+
transition: transform 0.3s ease;
|
262 |
+
}
|
263 |
+
|
264 |
+
/* Remove absolute positioning and right alignment for accordion arrow */
|
265 |
+
.gr-accordion > .label-wrap {
|
266 |
+
padding-right: 0; /* Remove extra padding */
|
267 |
+
}
|
268 |
+
.gr-accordion > .label-wrap::after {
|
269 |
+
position: static; /* Remove absolute positioning */
|
270 |
+
right: auto;
|
271 |
+
transform: none;
|
272 |
+
}
|
273 |
+
|
274 |
+
/* Consistent rotation for expanded state */
|
275 |
+
.validation-step .arrow-down,
|
276 |
.gr-accordion[data-open=true] > .label-wrap::after {
|
277 |
transform: rotate(90deg);
|
278 |
}
|
|
|
429 |
}}">
|
430 |
<div class="step-left">
|
431 |
<div class="step-status {status_class}">{status_icon}</div>
|
432 |
+
<span class="step-title">{test_name}</span>
|
433 |
+
<span class="arrow-indicator" id="arrow-{i}">▶</span>
|
434 |
</div>
|
435 |
</div>
|
436 |
<div class="step-details" id="details-{i}" style="display: none;">
|