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:
co-authored by
Claude Opus 4.6
parent
0003d786d8
commit
716b516900
@@ -17,6 +17,7 @@ describe("debrid service", () => {
|
||||
megaLogin: "user",
|
||||
megaPassword: "pass",
|
||||
bestToken: "",
|
||||
providerOrder: [] as const,
|
||||
providerPrimary: "realdebrid" as const,
|
||||
providerSecondary: "megadebrid" as const,
|
||||
providerTertiary: "bestdebrid" as const,
|
||||
@@ -182,6 +183,7 @@ describe("debrid service", () => {
|
||||
const settings = {
|
||||
...defaultSettings(),
|
||||
allDebridToken: "ad-token",
|
||||
providerOrder: [] as const,
|
||||
providerPrimary: "alldebrid" as const,
|
||||
providerSecondary: "none" as const,
|
||||
providerTertiary: "none" as const,
|
||||
@@ -212,6 +214,7 @@ describe("debrid service", () => {
|
||||
token: "",
|
||||
bestToken: "",
|
||||
allDebridToken: "ad-token",
|
||||
providerOrder: [] as const,
|
||||
providerPrimary: "alldebrid" as const,
|
||||
providerSecondary: "realdebrid" as const,
|
||||
providerTertiary: "megadebrid" as const,
|
||||
@@ -285,6 +288,7 @@ describe("debrid service", () => {
|
||||
...defaultSettings(),
|
||||
allDebridToken: "ad-token",
|
||||
allDebridUseWebLogin: true,
|
||||
providerOrder: [] as const,
|
||||
providerPrimary: "alldebrid" as const,
|
||||
providerSecondary: "none" as const,
|
||||
providerTertiary: "none" as const,
|
||||
@@ -420,6 +424,7 @@ describe("debrid service", () => {
|
||||
allDebridToken: "",
|
||||
megaLogin: "user",
|
||||
megaPassword: "pass",
|
||||
providerOrder: [] as const,
|
||||
providerPrimary: "megadebrid" as const,
|
||||
providerSecondary: "megadebrid" as const,
|
||||
providerTertiary: "megadebrid" as const,
|
||||
@@ -484,6 +489,7 @@ describe("debrid service", () => {
|
||||
megaPassword: "pass",
|
||||
megaDebridApiEnabled: true,
|
||||
megaDebridWebEnabled: true,
|
||||
providerOrder: [] as const,
|
||||
providerPrimary: "megadebrid-api" as const,
|
||||
providerSecondary: "megadebrid-web" as const,
|
||||
providerTertiary: "none" as const,
|
||||
@@ -514,6 +520,7 @@ describe("debrid service", () => {
|
||||
allDebridToken: "",
|
||||
megaLogin: "user",
|
||||
megaPassword: "pass",
|
||||
providerOrder: [] as const,
|
||||
providerPrimary: "megadebrid" as const,
|
||||
providerSecondary: "none" as const,
|
||||
providerTertiary: "none" as const,
|
||||
|
||||
Reference in New Issue
Block a user