Sanjana Vekhande commited on
Commit ·
e9f63db
1
Parent(s): f4b6f60
hide logs, fix upload text, auto-scroll to download
Browse files- frontend/index.html +10 -23
frontend/index.html
CHANGED
|
@@ -416,23 +416,7 @@ input[type="range"]::-webkit-slider-thumb:hover {
|
|
| 416 |
width: 0%;
|
| 417 |
}
|
| 418 |
|
| 419 |
-
.log-box {
|
| 420 |
-
background: #1C1A17;
|
| 421 |
-
color: #A89F94;
|
| 422 |
-
border-radius: 8px;
|
| 423 |
-
padding: 0.85rem 1rem;
|
| 424 |
-
font-family: 'SF Mono', 'Fira Code', monospace;
|
| 425 |
-
font-size: 11px;
|
| 426 |
-
line-height: 1.9;
|
| 427 |
-
max-height: 140px;
|
| 428 |
-
overflow-y: auto;
|
| 429 |
-
margin-top: 0.75rem;
|
| 430 |
-
white-space: pre-wrap;
|
| 431 |
-
}
|
| 432 |
-
|
| 433 |
-
.log-ok { color: #6FCF97; }
|
| 434 |
-
.log-err { color: #EB5757; }
|
| 435 |
-
.log-info { color: #56CCF2; }
|
| 436 |
|
| 437 |
/* ── Results ─────────────────────────── */
|
| 438 |
.stats-row {
|
|
@@ -560,9 +544,9 @@ footer a:hover { color: var(--ink); }
|
|
| 560 |
<input type="file" id="fileModel" accept=".xlsx" multiple onchange="handleFiles('model', this.files)"/>
|
| 561 |
<span class="drop-icon">📁</span>
|
| 562 |
<div class="drop-text">
|
| 563 |
-
<strong>Drop model
|
| 564 |
or click to browse
|
| 565 |
-
<small>.xlsx only ·
|
| 566 |
</div>
|
| 567 |
</div>
|
| 568 |
<div class="file-chips" id="chipsModel"></div>
|
|
@@ -581,9 +565,9 @@ footer a:hover { color: var(--ink); }
|
|
| 581 |
<input type="file" id="fileMapping" accept=".xlsx" multiple onchange="handleFiles('mapping', this.files)"/>
|
| 582 |
<span class="drop-icon">📁</span>
|
| 583 |
<div class="drop-text">
|
| 584 |
-
<strong>Drop mapping
|
| 585 |
or click to browse
|
| 586 |
-
<small>.xlsx only · same order as model
|
| 587 |
</div>
|
| 588 |
</div>
|
| 589 |
<div class="file-chips" id="chipsMapping"></div>
|
|
@@ -771,10 +755,13 @@ async function startJob() {
|
|
| 771 |
sse.close();
|
| 772 |
document.getElementById('statFiles').textContent = (d.file_count || '—').toLocaleString();
|
| 773 |
document.getElementById('statSpecies').textContent = d.species_count || '—';
|
|
|
|
| 774 |
document.getElementById('resultsSection').classList.remove('hidden');
|
| 775 |
document.getElementById('runBtn').disabled = false;
|
| 776 |
-
//
|
| 777 |
-
|
|
|
|
|
|
|
| 778 |
}
|
| 779 |
|
| 780 |
if (d.status === 'error') {
|
|
|
|
| 416 |
width: 0%;
|
| 417 |
}
|
| 418 |
|
| 419 |
+
.log-box { display: none; }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 420 |
|
| 421 |
/* ── Results ─────────────────────────── */
|
| 422 |
.stats-row {
|
|
|
|
| 544 |
<input type="file" id="fileModel" accept=".xlsx" multiple onchange="handleFiles('model', this.files)"/>
|
| 545 |
<span class="drop-icon">📁</span>
|
| 546 |
<div class="drop-text">
|
| 547 |
+
<strong>Drop model file here</strong>
|
| 548 |
or click to browse
|
| 549 |
+
<small>.xlsx only · one file per species</small>
|
| 550 |
</div>
|
| 551 |
</div>
|
| 552 |
<div class="file-chips" id="chipsModel"></div>
|
|
|
|
| 565 |
<input type="file" id="fileMapping" accept=".xlsx" multiple onchange="handleFiles('mapping', this.files)"/>
|
| 566 |
<span class="drop-icon">📁</span>
|
| 567 |
<div class="drop-text">
|
| 568 |
+
<strong>Drop mapping file here</strong>
|
| 569 |
or click to browse
|
| 570 |
+
<small>.xlsx only · one file per species, same order as model</small>
|
| 571 |
</div>
|
| 572 |
</div>
|
| 573 |
<div class="file-chips" id="chipsMapping"></div>
|
|
|
|
| 755 |
sse.close();
|
| 756 |
document.getElementById('statFiles').textContent = (d.file_count || '—').toLocaleString();
|
| 757 |
document.getElementById('statSpecies').textContent = d.species_count || '—';
|
| 758 |
+
document.getElementById('downloadBtn').dataset.jobId = jobId;
|
| 759 |
document.getElementById('resultsSection').classList.remove('hidden');
|
| 760 |
document.getElementById('runBtn').disabled = false;
|
| 761 |
+
// Auto-scroll to download button
|
| 762 |
+
setTimeout(() => {
|
| 763 |
+
document.getElementById('downloadBtn').scrollIntoView({ behavior: 'smooth', block: 'center' });
|
| 764 |
+
}, 300);
|
| 765 |
}
|
| 766 |
|
| 767 |
if (d.status === 'error') {
|