ui: tab Cataloga con streaming table + modal conferma move

This commit is contained in:
luciano committed 2026-08-27 10:04:57 +02:00
1 parent 9b711fd545
commit 401bed967a
3 files changed
+698

No files matched your search

+133
View File
@@ -687,6 +687,7 @@ input[type="number"]::-webkit-inner-spin-button {
.percent.green { color: var(--green-text); }
.percent.blue { color: var(--blue-text); }
.percent.pink { color: var(--pink-hover); }
.percent.purple { color: var(--purple-text); }
.progress {
width: 100%;
@@ -715,6 +716,10 @@ input[type="number"]::-webkit-inner-spin-button {
background: linear-gradient(90deg, var(--pink), var(--pink-hover));
}
.progress-fill.purple {
background: linear-gradient(90deg, var(--purple), var(--purple-hover));
}
/* ===============================
LOG BOX
=============================== */
@@ -1970,3 +1975,131 @@ input[type="number"]::-webkit-inner-spin-button {
padding-right: 6px; /* spazio per la scrollbar sul bordo */
}
/* ===============================
CATALOGA tab
=============================== */
.catalog-summary {
font-size: 14px;
color: var(--text-2);
font-weight: 600;
}
/* Scroll container per la tabella (analogo a dedup-groups-scroll) */
.catalog-scroll {
max-height: 55vh;
overflow-y: auto;
overflow-x: auto;
padding-right: 6px;
border: 1px solid var(--border);
border-radius: var(--r-md);
background: var(--bg-card);
}
.catalog-table {
width: 100%;
border-collapse: separate;
border-spacing: 0;
font-size: 12px;
color: var(--text-2);
}
.catalog-table thead th {
position: sticky;
top: 0;
z-index: 2;
background: var(--bg-card-2);
color: var(--text-1);
font-weight: 700;
padding: 10px 8px;
text-align: left;
font-size: 11px;
letter-spacing: 0.3px;
text-transform: uppercase;
border-bottom: 1px solid var(--border);
white-space: nowrap;
}
.catalog-table tbody td {
padding: 8px;
border-bottom: 1px solid var(--border);
vertical-align: middle;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
max-width: 260px;
}
.catalog-table tbody tr:hover {
background: var(--bg-elev);
}
/* Righe senza match AcoustID: sfondo rosa tenue */
.catalog-table tbody tr.catalog-row-unmatched {
background: rgba(236, 72, 153, 0.06);
}
.catalog-table tbody tr.catalog-row-unmatched:hover {
background: rgba(236, 72, 153, 0.12);
}
.catalog-col-check { width: 30px; text-align: center; }
.catalog-col-year { width: 60px; text-align: center; font-variant-numeric: tabular-nums; }
.catalog-col-status { width: 110px; }
.catalog-file-cell {
display: block;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
color: var(--text-1);
font-weight: 500;
}
.catalog-check {
width: 16px;
height: 16px;
cursor: pointer;
accent-color: var(--purple);
}
.catalog-status-badge {
display: inline-block;
padding: 2px 8px;
border-radius: 10px;
font-size: 10px;
font-weight: 700;
letter-spacing: 0.3px;
text-transform: uppercase;
}
.catalog-status-badge.ok {
background: var(--purple-dim);
color: var(--purple-text);
}
.catalog-status-badge.warn {
background: var(--amber-dim, rgba(245, 158, 11, 0.15));
color: var(--amber-text);
}
.catalog-status-badge.err {
background: rgba(220, 38, 38, 0.15);
color: var(--red);
}
.catalog-status-badge.busy {
background: var(--bg-input);
color: var(--text-3);
}
.catalog-footer-bar {
position: sticky;
bottom: 0;
z-index: 5;
display: flex;
justify-content: space-between;
align-items: center;
gap: 12px;
padding: 12px 16px;
margin-top: 12px;
border-radius: var(--r-md);
background: var(--bg-card);
box-shadow: 0 -4px 12px rgba(0, 0, 0, 0.15);
border: 1px solid var(--border);
}