mirror of
https://github.com/knightcrawler-stremio/knightcrawler.git
synced 2024-12-20 03:29:51 +00:00
extension now ts
This commit is contained in:
@@ -1,62 +0,0 @@
|
|||||||
const VIDEO_EXTENSIONS = [
|
|
||||||
"3g2",
|
|
||||||
"3gp",
|
|
||||||
"avi",
|
|
||||||
"flv",
|
|
||||||
"mkv",
|
|
||||||
"mk3d",
|
|
||||||
"mov",
|
|
||||||
"mp2",
|
|
||||||
"mp4",
|
|
||||||
"m4v",
|
|
||||||
"mpe",
|
|
||||||
"mpeg",
|
|
||||||
"mpg",
|
|
||||||
"mpv",
|
|
||||||
"webm",
|
|
||||||
"wmv",
|
|
||||||
"ogm",
|
|
||||||
"divx"
|
|
||||||
];
|
|
||||||
const SUBTITLE_EXTENSIONS = [
|
|
||||||
"aqt",
|
|
||||||
"gsub",
|
|
||||||
"jss",
|
|
||||||
"sub",
|
|
||||||
"ttxt",
|
|
||||||
"pjs",
|
|
||||||
"psb",
|
|
||||||
"rt",
|
|
||||||
"smi",
|
|
||||||
"slt",
|
|
||||||
"ssf",
|
|
||||||
"srt",
|
|
||||||
"ssa",
|
|
||||||
"ass",
|
|
||||||
"usf",
|
|
||||||
"idx",
|
|
||||||
"vtt"
|
|
||||||
];
|
|
||||||
const DISK_EXTENSIONS = [
|
|
||||||
"iso",
|
|
||||||
"m2ts",
|
|
||||||
"ts",
|
|
||||||
"vob"
|
|
||||||
]
|
|
||||||
|
|
||||||
export function isVideo(filename) {
|
|
||||||
return isExtension(filename, VIDEO_EXTENSIONS);
|
|
||||||
}
|
|
||||||
|
|
||||||
export function isSubtitle(filename) {
|
|
||||||
return isExtension(filename, SUBTITLE_EXTENSIONS);
|
|
||||||
}
|
|
||||||
|
|
||||||
export function isDisk(filename) {
|
|
||||||
return isExtension(filename, DISK_EXTENSIONS);
|
|
||||||
}
|
|
||||||
|
|
||||||
export function isExtension(filename, extensions) {
|
|
||||||
const extensionMatch = filename.match(/\.(\w{2,4})$/);
|
|
||||||
return extensionMatch && extensions.includes(extensionMatch[1].toLowerCase());
|
|
||||||
}
|
|
||||||
62
src/node/consumer/src/lib/extension.ts
Normal file
62
src/node/consumer/src/lib/extension.ts
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
const VIDEO_EXTENSIONS: string[] = [
|
||||||
|
"3g2",
|
||||||
|
"3gp",
|
||||||
|
"avi",
|
||||||
|
"flv",
|
||||||
|
"mkv",
|
||||||
|
"mk3d",
|
||||||
|
"mov",
|
||||||
|
"mp2",
|
||||||
|
"mp4",
|
||||||
|
"m4v",
|
||||||
|
"mpe",
|
||||||
|
"mpeg",
|
||||||
|
"mpg",
|
||||||
|
"mpv",
|
||||||
|
"webm",
|
||||||
|
"wmv",
|
||||||
|
"ogm",
|
||||||
|
"divx"
|
||||||
|
];
|
||||||
|
const SUBTITLE_EXTENSIONS: string[] = [
|
||||||
|
"aqt",
|
||||||
|
"gsub",
|
||||||
|
"jss",
|
||||||
|
"sub",
|
||||||
|
"ttxt",
|
||||||
|
"pjs",
|
||||||
|
"psb",
|
||||||
|
"rt",
|
||||||
|
"smi",
|
||||||
|
"slt",
|
||||||
|
"ssf",
|
||||||
|
"srt",
|
||||||
|
"ssa",
|
||||||
|
"ass",
|
||||||
|
"usf",
|
||||||
|
"idx",
|
||||||
|
"vtt"
|
||||||
|
];
|
||||||
|
const DISK_EXTENSIONS: string[] = [
|
||||||
|
"iso",
|
||||||
|
"m2ts",
|
||||||
|
"ts",
|
||||||
|
"vob"
|
||||||
|
]
|
||||||
|
|
||||||
|
export function isVideo(filename: string): boolean {
|
||||||
|
return isExtension(filename, VIDEO_EXTENSIONS);
|
||||||
|
}
|
||||||
|
|
||||||
|
export function isSubtitle(filename: string): boolean {
|
||||||
|
return isExtension(filename, SUBTITLE_EXTENSIONS);
|
||||||
|
}
|
||||||
|
|
||||||
|
export function isDisk(filename: string): boolean {
|
||||||
|
return isExtension(filename, DISK_EXTENSIONS);
|
||||||
|
}
|
||||||
|
|
||||||
|
export function isExtension(filename: string, extensions: string[]): boolean {
|
||||||
|
const extensionMatch = filename.match(/\.(\w{2,4})$/);
|
||||||
|
return extensionMatch !== null && extensions.includes(extensionMatch[1].toLowerCase());
|
||||||
|
}
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
import { decode } from 'magnet-uri';
|
import { decode } from 'magnet-uri';
|
||||||
import torrentStream from 'torrent-stream';
|
import torrentStream from 'torrent-stream';
|
||||||
import { torrentConfig } from './config.js';
|
import { torrentConfig } from './config.js';
|
||||||
import {isSubtitle, isVideo} from './extension.js';
|
import {isSubtitle, isVideo} from './extension';
|
||||||
|
|
||||||
export async function torrentFiles(torrent, timeout) {
|
export async function torrentFiles(torrent, timeout) {
|
||||||
return filesFromTorrentStream(torrent, timeout)
|
return filesFromTorrentStream(torrent, timeout)
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import distance from 'jaro-winkler';
|
|||||||
import moment from 'moment';
|
import moment from 'moment';
|
||||||
import { parse } from 'parse-torrent-title';
|
import { parse } from 'parse-torrent-title';
|
||||||
import { metadataConfig } from './config.js';
|
import { metadataConfig } from './config.js';
|
||||||
import { isDisk } from './extension.js';
|
import { isDisk } from './extension';
|
||||||
import { getMetadata, getImdbId, getKitsuId } from './metadata';
|
import { getMetadata, getImdbId, getKitsuId } from './metadata';
|
||||||
import { parseSeriesVideos, isPackTorrent } from './parseHelper';
|
import { parseSeriesVideos, isPackTorrent } from './parseHelper';
|
||||||
import * as Promises from './promises';
|
import * as Promises from './promises';
|
||||||
|
|||||||
Reference in New Issue
Block a user