50 lines
2.0 KiB
TypeScript
50 lines
2.0 KiB
TypeScript
export const LEGACY_QUARK_TEMP_SOURCE = 'quark-temp';
|
|
export const NETDISK_QUARK_SOURCE = 'netdisk-quark';
|
|
export const NETDISK_MOBILE_SOURCE = 'netdisk-mobile';
|
|
export const NETDISK_BAIDU_SOURCE = 'netdisk-baidu';
|
|
export const NETDISK_TIANYI_SOURCE = 'netdisk-tianyi';
|
|
export const NETDISK_123_SOURCE = 'netdisk-123';
|
|
|
|
export type NetdiskProvider = 'quark' | 'mobile' | 'baidu' | 'tianyi' | '123';
|
|
|
|
export function normalizeNetdiskSource(source?: string | null): string {
|
|
if (!source) return '';
|
|
if (source === LEGACY_QUARK_TEMP_SOURCE) return NETDISK_QUARK_SOURCE;
|
|
return source;
|
|
}
|
|
|
|
export function isNetdiskSource(source?: string | null): boolean {
|
|
const normalized = normalizeNetdiskSource(source);
|
|
return normalized === NETDISK_QUARK_SOURCE || normalized === NETDISK_MOBILE_SOURCE || normalized === NETDISK_BAIDU_SOURCE || normalized === NETDISK_TIANYI_SOURCE || normalized === NETDISK_123_SOURCE;
|
|
}
|
|
|
|
export function getNetdiskProvider(source?: string | null): NetdiskProvider | null {
|
|
const normalized = normalizeNetdiskSource(source);
|
|
if (normalized === NETDISK_QUARK_SOURCE) return 'quark';
|
|
if (normalized === NETDISK_MOBILE_SOURCE) return 'mobile';
|
|
if (normalized === NETDISK_BAIDU_SOURCE) return 'baidu';
|
|
if (normalized === NETDISK_TIANYI_SOURCE) return 'tianyi';
|
|
if (normalized === NETDISK_123_SOURCE) return '123';
|
|
return null;
|
|
}
|
|
|
|
export function isNetdiskQuarkSource(source?: string | null): boolean {
|
|
return normalizeNetdiskSource(source) === NETDISK_QUARK_SOURCE;
|
|
}
|
|
|
|
export function isNetdiskMobileSource(source?: string | null): boolean {
|
|
return normalizeNetdiskSource(source) === NETDISK_MOBILE_SOURCE;
|
|
}
|
|
|
|
export function isNetdiskBaiduSource(source?: string | null): boolean {
|
|
return normalizeNetdiskSource(source) === NETDISK_BAIDU_SOURCE;
|
|
}
|
|
|
|
export function isNetdiskTianyiSource(source?: string | null): boolean {
|
|
return normalizeNetdiskSource(source) === NETDISK_TIANYI_SOURCE;
|
|
}
|
|
|
|
export function isNetdisk123Source(source?: string | null): boolean {
|
|
return normalizeNetdiskSource(source) === NETDISK_123_SOURCE;
|
|
}
|