Skip to content

Commit 8591aa8

Browse files
committed
chore(settings): display crawlers subtitles lang next to each crawler
1 parent bbf3148 commit 8591aa8

47 files changed

Lines changed: 118 additions & 153 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

src/app/crawlers/abstract/base.crawler.ts

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,16 +16,18 @@ export abstract class BaseCrawler {
1616
protected _name: string;
1717
protected _baseUrl: string;
1818
protected _isActive: boolean;
19+
protected _defaultSubtitles: string;
1920
protected filters: FilterList = {};
2021
protected cache: Cache = {
2122
animeList: [],
2223
latestEpisodes: [],
2324
};
2425

25-
constructor(name: string, baseUrl: string) {
26+
constructor(name: string, baseUrl: string, defaultSubtitles: string) {
2627
this._name = name;
2728
this._baseUrl = baseUrl;
2829
this._isActive = true;
30+
this._defaultSubtitles = defaultSubtitles;
2931
this.filters = {
3032
number: (text: string) => {
3133
return toNumber(text);
@@ -60,6 +62,9 @@ export abstract class BaseCrawler {
6062
const currentDate = now().getTime();
6163
return date > currentDate ? currentDate : date;
6264
},
65+
subtitles: (text: string) => {
66+
return defaultSubtitles;
67+
},
6368
};
6469
}
6570

@@ -71,6 +76,10 @@ export abstract class BaseCrawler {
7176
return this._baseUrl;
7277
}
7378

79+
get subtitles() {
80+
return this._defaultSubtitles;
81+
}
82+
7483
get isActive() {
7584
return this._isActive;
7685
}

src/app/crawlers/vostar/addanime.crawler.ts

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import { Observable } from 'rxjs';
55

66
export class AddAnimeCrawler extends LatestEpisodesCrawler {
77
constructor(private scraper: ScraperService) {
8-
super('AddAnime', 'https://ar.addanime.online');
8+
super('AddAnime', 'https://ar.addanime.online', 'vostar');
99
this.filters = {
1010
...this.filters,
1111
title: (text: string) => {
@@ -21,9 +21,6 @@ export class AddAnimeCrawler extends LatestEpisodesCrawler {
2121
const num = text.match(/(.*) (\d+)/);
2222
return num?.length ? +num[2] : 1;
2323
},
24-
subtitles: (text: string) => {
25-
return 'vostar';
26-
},
2724
};
2825
}
2926

src/app/crawlers/vostar/anime4up.crawler.ts

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,13 @@ import { Observable } from 'rxjs';
55

66
export class AnimeFourUpCrawler extends LatestEpisodesCrawler {
77
constructor(private scraper: ScraperService) {
8-
super('Anime4up', 'https://w1.anime4up.com');
8+
super('Anime4up', 'https://w1.anime4up.com', 'vostar');
99
this.filters = {
1010
...this.filters,
1111
number: (text: string) => {
1212
const num = text.match(/(.*) (\d+)/);
1313
return num?.length ? +num[2] : 1;
1414
},
15-
subtitles: (text: string) => {
16-
return 'vostar';
17-
},
1815
};
1916
}
2017

src/app/crawlers/vostar/arabanime.crawler.ts

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,13 @@ import { Observable } from 'rxjs';
55

66
export class ArabAnimeCrawler extends LatestEpisodesCrawler {
77
constructor(private scraper: ScraperService) {
8-
super('ArabAnime', 'https://www.arabanime.net');
8+
super('ArabAnime', 'https://www.arabanime.net', 'vostar');
99
this.filters = {
1010
...this.filters,
1111
number: (text: string) => {
1212
const num = text.match(/(.*) (\d+)/);
1313
return num?.length ? +num[2] : 1;
1414
},
15-
subtitles: (text: string) => {
16-
return 'vostar';
17-
},
1815
};
1916
}
2017

src/app/crawlers/vostar/egyanime.crawler.ts

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import { Observable } from 'rxjs';
55

66
export class EgyAnimeCrawler extends LatestEpisodesCrawler {
77
constructor(private scraper: ScraperService) {
8-
super('EgyAnime', 'https://www.egyanime.com');
8+
super('EgyAnime', 'https://www.egyanime.com', 'vostar');
99
this.filters = {
1010
...this.filters,
1111
cover: (text: string) => {
@@ -16,9 +16,6 @@ export class EgyAnimeCrawler extends LatestEpisodesCrawler {
1616
const num = text.match(/(.*) (\d+)/);
1717
return num?.length ? +num[2] : 1;
1818
},
19-
subtitles: (text: string) => {
20-
return 'vostar';
21-
},
2219
};
2320
}
2421

src/app/crawlers/vostar/okanime.crawler.ts

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,7 @@ import { Observable } from 'rxjs';
55

66
export class OkanimeCrawler extends LatestEpisodesCrawler {
77
constructor(private scraper: ScraperService) {
8-
super('OKanime', 'https://okanime.tv');
9-
this.filters = {
10-
...this.filters,
11-
subtitles: (text: string) => {
12-
return 'vostar';
13-
},
14-
};
8+
super('OKanime', 'https://okanime.tv', 'vostar');
159
}
1610

1711
_getLatestEpisodes(): Observable<Episode[]> {

src/app/crawlers/vostar/witanime.crawler.ts

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,13 @@ import { Observable } from 'rxjs';
55

66
export class WitAnimeCrawler extends LatestEpisodesCrawler {
77
constructor(private scraper: ScraperService) {
8-
super('WitAnime', 'https://witanime.com');
8+
super('WitAnime', 'https://witanime.com', 'vostar');
99
this.filters = {
1010
...this.filters,
1111
number: (text: string) => {
1212
const num = text.match(/(.*) (\d+)/);
1313
return num?.length ? +num[2] : 1;
1414
},
15-
subtitles: (text: string) => {
16-
return 'vostar';
17-
},
1815
};
1916
}
2017

src/app/crawlers/vostar/zimabdko.crawler.ts

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import { toNumber } from 'src/app/helpers/number.helper';
66

77
export class ZimabdkoCrawler extends LatestEpisodesCrawler {
88
constructor(private scraper: ScraperService) {
9-
super('Zimabdko', 'https://www.zimabdko.com');
9+
super('Zimabdko', 'https://www.zimabdko.com', 'vostar');
1010
this.filters = {
1111
...this.filters,
1212
title: (text: string) => {
@@ -22,9 +22,6 @@ export class ZimabdkoCrawler extends LatestEpisodesCrawler {
2222
.match(/(أنمي )?(.*) الحلقة (\d+)/);
2323
return toNumber(num?.length ? num[3] : text.match(/\d+/g)?.[0]);
2424
},
25-
subtitles: (text: string) => {
26-
return 'vostar';
27-
},
2825
};
2926
}
3027

src/app/crawlers/vosten/4anime.crawler.ts

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import { toNumber } from 'src/app/helpers/number.helper';
66

77
export class FourAnimeCrawler extends LatestEpisodesCrawler {
88
constructor(private scraper: ScraperService) {
9-
super('4Anime', 'https://4anime.to');
9+
super('4Anime', 'https://4anime.to', 'vosten');
1010
this.filters = {
1111
...this.filters,
1212
cover: (text: string) => {
@@ -20,9 +20,6 @@ export class FourAnimeCrawler extends LatestEpisodesCrawler {
2020
const num = text.match(/\d+/g);
2121
return toNumber(num?.length ? num[0] : text);
2222
},
23-
subtitles: (text: string) => {
24-
return 'vosten';
25-
},
2623
};
2724
}
2825

src/app/crawlers/vosten/9anime.crawler.ts

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import { toNumber } from 'src/app/helpers/number.helper';
66

77
export class NineAnimeCrawler extends LatestEpisodesCrawler {
88
constructor(private scraper: ScraperService) {
9-
super('9Anime', 'https://9anime.id');
9+
super('9Anime', 'https://9anime.id', 'vosten');
1010
this.filters = {
1111
...this.filters,
1212
number: (text: string) => {
@@ -21,9 +21,6 @@ export class NineAnimeCrawler extends LatestEpisodesCrawler {
2121
);
2222
return `${this.filters.concatUrl(text)}/ep-${number}`;
2323
},
24-
subtitles: (text: string) => {
25-
return 'vosten';
26-
},
2724
};
2825
}
2926

0 commit comments

Comments
 (0)