7 changed files with 67 additions and 21 deletions
@ -1,16 +1,40 @@
@@ -1,16 +1,40 @@
|
||||
import { MWMediaType } from "providers"; |
||||
import { mediaProviders } from "./providers"; |
||||
import { MWMediaType, MWMediaProviderMetadata } from "providers"; |
||||
import { mediaProviders, mediaProvidersUnchecked } from "./providers"; |
||||
|
||||
/* |
||||
** Fetch all enabled providers for a specific type |
||||
*/ |
||||
export function GetProvidersForType(type: MWMediaType) { |
||||
export function GetProvidersForType(type: MWMediaType) { |
||||
return mediaProviders.filter((v) => v.type.includes(type)); |
||||
} |
||||
|
||||
/* |
||||
** Get a provider by a id |
||||
*/ |
||||
export function getProviderFromId(id: string) { |
||||
export function getProviderFromId(id: string) { |
||||
return mediaProviders.find((v) => v.id === id); |
||||
} |
||||
|
||||
/* |
||||
** Get a provider metadata |
||||
*/ |
||||
export function getProviderMetadata(id: string): MWMediaProviderMetadata { |
||||
const provider = mediaProvidersUnchecked.find((v) => v.id === id); |
||||
|
||||
if (!provider) { |
||||
return { |
||||
exists: false, |
||||
type: [], |
||||
enabled: false, |
||||
id, |
||||
}; |
||||
} |
||||
|
||||
return { |
||||
exists: true, |
||||
type: provider.type, |
||||
enabled: provider.enabled, |
||||
id, |
||||
provider, |
||||
}; |
||||
} |
||||
|
Loading…
Reference in new issue