2021-10-21 03:51:50 +05:30
|
|
|
import Foundation
|
|
|
|
|
|
|
|
enum VideosApp: String, CaseIterable {
|
|
|
|
case invidious, piped
|
2022-10-26 16:41:35 +05:30
|
|
|
case demoApp
|
2021-10-21 03:51:50 +05:30
|
|
|
|
|
|
|
var name: String {
|
|
|
|
rawValue.capitalized
|
|
|
|
}
|
|
|
|
|
|
|
|
var supportsAccounts: Bool {
|
2021-11-15 04:36:01 +05:30
|
|
|
true
|
|
|
|
}
|
|
|
|
|
2021-10-21 03:51:50 +05:30
|
|
|
var supportsPopular: Bool {
|
|
|
|
self == .invidious
|
|
|
|
}
|
|
|
|
|
|
|
|
var supportsSearchFilters: Bool {
|
|
|
|
self == .invidious
|
|
|
|
}
|
|
|
|
|
|
|
|
var supportsSubscriptions: Bool {
|
|
|
|
supportsAccounts
|
|
|
|
}
|
|
|
|
|
|
|
|
var supportsTrendingCategories: Bool {
|
|
|
|
self == .invidious
|
|
|
|
}
|
|
|
|
|
|
|
|
var supportsUserPlaylists: Bool {
|
2022-04-10 20:37:10 +05:30
|
|
|
true
|
|
|
|
}
|
|
|
|
|
|
|
|
var userPlaylistsEndpointIncludesVideos: Bool {
|
2021-10-21 03:51:50 +05:30
|
|
|
self == .invidious
|
|
|
|
}
|
2021-10-28 02:41:38 +05:30
|
|
|
|
2022-08-21 19:35:26 +05:30
|
|
|
var userPlaylistsUseChannelPlaylistEndpoint: Bool {
|
|
|
|
self == .piped
|
|
|
|
}
|
|
|
|
|
2022-05-22 03:59:51 +05:30
|
|
|
var userPlaylistsHaveVisibility: Bool {
|
|
|
|
self == .invidious
|
|
|
|
}
|
|
|
|
|
|
|
|
var userPlaylistsAreEditable: Bool {
|
|
|
|
self == .invidious
|
|
|
|
}
|
|
|
|
|
2021-10-28 02:41:38 +05:30
|
|
|
var hasFrontendURL: Bool {
|
|
|
|
self == .piped
|
|
|
|
}
|
2021-12-05 01:05:41 +05:30
|
|
|
|
2022-01-05 04:48:01 +05:30
|
|
|
var searchUsesIndexedPages: Bool {
|
|
|
|
self == .invidious
|
|
|
|
}
|
2022-06-25 04:18:57 +05:30
|
|
|
|
|
|
|
var supportsOpeningChannelsByName: Bool {
|
|
|
|
self == .piped
|
|
|
|
}
|
2022-07-22 03:22:09 +05:30
|
|
|
|
|
|
|
var allowsDisablingVidoesProxying: Bool {
|
|
|
|
self == .invidious
|
|
|
|
}
|
2021-10-21 03:51:50 +05:30
|
|
|
}
|