AllDebrid is another debrid provider. Add support to Ferrite in addition to RealDebrid. The overall debrid login backend has changed to accomodate for a more agnostic app structure where more services can be added as needed. Also add some cosmetic changes to search so filters can be added while searching for a phrase. Signed-off-by: kingbri <bdashore3@proton.me>
37 lines
994 B
Swift
37 lines
994 B
Swift
//
|
|
// DebridChoiceView.swift
|
|
// Ferrite
|
|
//
|
|
// Created by Brian Dashore on 11/26/22.
|
|
//
|
|
|
|
import SwiftUI
|
|
|
|
struct DebridChoiceView: View {
|
|
@EnvironmentObject var debridManager: DebridManager
|
|
|
|
var body: some View {
|
|
Menu {
|
|
Picker("", selection: $debridManager.selectedDebridType) {
|
|
Text("None")
|
|
.tag(nil as DebridType?)
|
|
|
|
ForEach(DebridType.allCases, id: \.self) { (debridType: DebridType) in
|
|
if debridManager.enabledDebrids.contains(debridType) {
|
|
Text(debridType.toString())
|
|
.tag(DebridType?.some(debridType))
|
|
}
|
|
}
|
|
}
|
|
} label: {
|
|
Text(debridManager.selectedDebridType?.toString(abbreviated: true) ?? "Debrid")
|
|
}
|
|
.animation(.none)
|
|
}
|
|
}
|
|
|
|
struct DebridChoiceView_Previews: PreviewProvider {
|
|
static var previews: some View {
|
|
DebridChoiceView()
|
|
}
|
|
}
|