feat: dynamic provider order, hoster routing, MKV sample fix

- Replace fixed primary/secondary/tertiary slots with unlimited ordered
  providerOrder: DebridProvider[] list; supports as many accounts as needed
- Provider list reorderable via up/down buttons in Accounts settings tab
- Migration: derives order from legacy primary/secondary/tertiary if empty
- Mega-Debrid split into megadebrid-api and megadebrid-web as separate providers
- Add per-hoster routing (hosterRouting) to assign specific debrid provider per hoster
- Fix duplicate MKV files in library: filter out sample files from Sample subfolders
- Remove legacy provider-selection dropdowns from hidden settings section
- Add CSS for provider-order-list/row/num/label/actions classes
- Update debrid tests: add providerOrder: [] to use legacy fallback path

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Sucukdeluxe
2026-03-06 22:17:44 +01:00
co-authored by Claude Opus 4.6
parent 0003d786d8
commit 716b516900
7 changed files with 166 additions and 96 deletions
+41
View File
@@ -1368,6 +1368,47 @@ body,
max-width: 260px;
}
.provider-order-list {
display: flex;
flex-direction: column;
gap: 4px;
margin-bottom: 10px;
}
.provider-order-row {
display: flex;
align-items: center;
gap: 10px;
padding: 7px 10px;
border-radius: 8px;
background: rgba(255, 255, 255, 0.04);
border: 1px solid var(--border);
}
.provider-order-num {
font-size: 0.8rem;
color: var(--muted);
min-width: 18px;
text-align: right;
}
.provider-order-label {
flex: 1;
font-size: 0.9rem;
font-weight: 500;
}
.provider-order-actions {
display: flex;
gap: 4px;
}
.provider-order-actions .btn-sm {
padding: 2px 8px;
font-size: 0.9rem;
line-height: 1.4;
}
.account-modal {
width: min(960px, calc(100vw - 36px));
max-height: calc(100vh - 36px);