From 462a4d4f5b1d35ae722aa70d43d2524f51e8c9ed Mon Sep 17 00:00:00 2001 From: Adam Kemish <49228220+Soopyboo32@users.noreply.github.com> Date: Thu, 13 Feb 2025 21:33:08 +0800 Subject: [PATCH] New fenrir source (#1513) * New fenrir source * Add filters * Fix filters * Remove chapter numbers * Fix chapter sorting * Fix getting blocked or smth --- public/static/multisrc/madara/fenrir/icon.png | Bin 2740 -> 0 bytes public/static/src/en/fenrirrealm/icon.png | Bin 0 -> 69344 bytes scripts/multisrc/madara/filters/fenrir.json | 300 ------------------ scripts/multisrc/madara/sources.json | 9 - src/plugins/english/fenrirrealm.ts | 233 ++++++++++++++ 5 files changed, 233 insertions(+), 309 deletions(-) delete mode 100644 public/static/multisrc/madara/fenrir/icon.png create mode 100644 public/static/src/en/fenrirrealm/icon.png delete mode 100644 scripts/multisrc/madara/filters/fenrir.json create mode 100644 src/plugins/english/fenrirrealm.ts diff --git a/public/static/multisrc/madara/fenrir/icon.png b/public/static/multisrc/madara/fenrir/icon.png deleted file mode 100644 index 3d616ef7bd4cf5f4e7d1bf99ac5d2a1701a80799..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2740 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%0AlLO|Tsn6Tel&t_0q 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 literal 0 HcmV?d00001 diff --git a/scripts/multisrc/madara/filters/fenrir.json b/scripts/multisrc/madara/filters/fenrir.json deleted file mode 100644 index e09b27b..0000000 --- a/scripts/multisrc/madara/filters/fenrir.json +++ /dev/null @@ -1,300 +0,0 @@ -{ - "filters": { - "genre[]": { - "type": "Checkbox", - "label": "Genre", - "value": [], - "options": [ - { - "label": "Action", - "value": "action" - }, - { - "label": "Adult", - "value": "adult" - }, - { - "label": "Adventure", - "value": "adventure" - }, - { - "label": "Anime", - "value": "anime" - }, - { - "label": "Cartoon", - "value": "cartoon" - }, - { - "label": "Comedy", - "value": "comedy" - }, - { - "label": "Comic", - "value": "comic" - }, - { - "label": "Cooking", - "value": "cooking" - }, - { - "label": "Detective", - "value": "detective" - }, - { - "label": "Doujinshi", - "value": "doujinshi" - }, - { - "label": "Drama", - "value": "drama" - }, - { - "label": "Ecchi", - "value": "ecchi" - }, - { - "label": "Fantasy", - "value": "fantasy" - }, - { - "label": "Gender Bender", - "value": "gender-bender" - }, - { - "label": "Harem", - "value": "harem" - }, - { - "label": "Historical", - "value": "historical" - }, - { - "label": "Horror", - "value": "horror" - }, - { - "label": "Josei", - "value": "josei" - }, - { - "label": "Live action", - "value": "live-action" - }, - { - "label": "Manga", - "value": "manga" - }, - { - "label": "Manhua", - "value": "manhua" - }, - { - "label": "Manhwa", - "value": "manhwa" - }, - { - "label": "Martial Arts", - "value": "martial-arts" - }, - { - "label": "Mature", - "value": "mature" - }, - { - "label": "Mecha", - "value": "mecha" - }, - { - "label": "Mystery", - "value": "mystery" - }, - { - "label": "One shot", - "value": "one-shot" - }, - { - "label": "Psychological", - "value": "psychological" - }, - { - "label": "Romance", - "value": "romance" - }, - { - "label": "School Life", - "value": "school-life" - }, - { - "label": "Sci-fi", - "value": "sci-fi" - }, - { - "label": "Seinen", - "value": "seinen" - }, - { - "label": "Shoujo", - "value": "shoujo" - }, - { - "label": "Shoujo Ai", - "value": "shoujo-ai" - }, - { - "label": "Shounen", - "value": "shounen" - }, - { - "label": "Shounen Ai", - "value": "shounen-ai" - }, - { - "label": "Slice of Life", - "value": "slice-of-life" - }, - { - "label": "Smut", - "value": "smut" - }, - { - "label": "Soft Yaoi", - "value": "soft-yaoi" - }, - { - "label": "Soft Yuri", - "value": "soft-yuri" - }, - { - "label": "Sports", - "value": "sports" - }, - { - "label": "Supernatural", - "value": "supernatural" - }, - { - "label": "Tragedy", - "value": "tragedy" - }, - { - "label": "Webtoon", - "value": "webtoon" - }, - { - "label": "Wuxia", - "value": "wuxia" - }, - { - "label": "Yaoi", - "value": "yaoi" - }, - { - "label": "Yuri", - "value": "yuri" - } - ] - }, - "op": { - "type": "Switch", - "label": "having all selected genres", - "value": false - }, - "author": { - "type": "Text", - "label": "Author", - "value": "" - }, - "artist": { - "type": "Text", - "label": "Artist", - "value": "" - }, - "release": { - "type": "Text", - "label": "Year of Released", - "value": "" - }, - "adult": { - "type": "Picker", - "label": "Adult content", - "value": "", - "options": [ - { - "label": "All", - "value": "" - }, - { - "label": "None adult content", - "value": "0" - }, - { - "label": "Only adult content", - "value": "1" - } - ] - }, - "status[]": { - "type": "Checkbox", - "label": "Status", - "value": [], - "options": [ - { - "label": "OnGoing", - "value": "on-going" - }, - { - "label": "Completed", - "value": "end" - }, - { - "label": "Canceled", - "value": "canceled" - }, - { - "label": "On Hold", - "value": "on-hold" - }, - { - "label": "Upcoming", - "value": "upcoming" - } - ] - }, - "m_orderby": { - "type": "Picker", - "label": "Order by", - "value": "", - "options": [ - { - "label": "Relevance", - "value": "" - }, - { - "label": "Latest", - "value": "latest" - }, - { - "label": "A-Z", - "value": "alphabet" - }, - { - "label": "Rating", - "value": "rating" - }, - { - "label": "Trending", - "value": "trending" - }, - { - "label": "Most Views", - "value": "views" - }, - { - "label": "New", - "value": "new-manga" - } - ] - } - } -} \ No newline at end of file diff --git a/scripts/multisrc/madara/sources.json b/scripts/multisrc/madara/sources.json index 8e46cc6..0f21ffa 100644 --- a/scripts/multisrc/madara/sources.json +++ b/scripts/multisrc/madara/sources.json @@ -398,15 +398,6 @@ "lang": "English" } }, - { - "id": "fenrir", - "sourceSite": "https://fenrirtranslations.com/", - "sourceName": "Fenrir Translations", - "options": { - "useNewChapterEndpoint": true, - "lang": "English" - } - }, { "id": "bellereservoir", "sourceSite": "https://bellereservoir.com/", diff --git a/src/plugins/english/fenrirrealm.ts b/src/plugins/english/fenrirrealm.ts new file mode 100644 index 0000000..930ab59 --- /dev/null +++ b/src/plugins/english/fenrirrealm.ts @@ -0,0 +1,233 @@ +import { fetchApi } from '@libs/fetch'; +import { Plugin } from '@typings/plugin'; +import { load as loadCheerio } from 'cheerio'; +import { Filters, FilterTypes } from '@libs/filterInputs'; + +class FenrirRealmPlugin implements Plugin.PluginBase { + id = 'fenrir'; + name = 'Fenrir Realm'; + icon = 'src/en/fenrirrealm/icon.png'; + site = 'https://fenrirealm.com'; + version = '1.0.7'; + imageRequestInit?: Plugin.ImageRequestInit | undefined = undefined; + + //flag indicates whether access to LocalStorage, SesesionStorage is required. + webStorageUtilized?: boolean; + + async popularNovels( + pageNo: number, + { + showLatestNovels, + filters, + }: Plugin.PopularNovelsOptions, + ): Promise { + // let sort = "updated"; + let sort = filters.sort.value; + if (showLatestNovels) sort = 'latest'; + const genresFilter = filters.genres.value + .map(g => '&genres%5B%5D=' + g) + .join(''); + const res = await fetchApi( + `${this.site}/api/novels/filter?page=${pageNo}&per_page=20&status=${filters.status.value}&order=${sort}${genresFilter}`, + ).then(r => r.json()); + + return res.data.map(r => this.parseNovelFromApi(r)); + } + + async parseNovel(novelPath: string): Promise { + const html = await fetchApi(`${this.site}/series/${novelPath}`, { + headers: { + 'User-Agent': '', + }, + }).then(r => r.text()); + const loadedCheerio = loadCheerio(html); + + loadedCheerio( + 'div.overflow-hidden.transition-all.max-h-\\[108px\\] > br', + ).replaceWith('%%NEWLINE%%'); + const novel: Plugin.SourceNovel = { + path: novelPath, + name: loadedCheerio('h1.my-2').text(), + summary: loadedCheerio( + 'div.overflow-hidden.transition-all.max-h-\\[108px\\]', + ) + .text() + .replaceAll('%%NEWLINE%%', '\n'), + }; + // novel.artist = ''; + novel.author = loadedCheerio( + 'div.flex-1 > div.mb-3 > a.inline-flex', + ).text(); + novel.cover = + this.site + + '/storage/' + + html.match(/,cover:"storage\/(.+?)",cover_data_url/)[1]; + novel.genres = loadedCheerio('div.flex-1 > div.flex:not(.mb-3, .mt-5) > a') + .map((i, el) => loadCheerio(el).text()) + .toArray() + .join(','); + novel.status = loadedCheerio('div.flex-1 > div.mb-3 > span.rounded-md') + .first() + .text(); + + const chapters = await fetchApi( + this.site + '/api/novels/chapter-list/' + novelPath, + ).then(r => r.json()); + + novel.chapters = chapters + .map(c => ({ + name: c.title, + path: novelPath + '/' + c.slug, + releaseTime: c.created_at, + chapterNumber: c.number, + })) + .sort((a, b) => a.chapterNumber - b.chapterNumber); + return novel; + } + + async parseChapter(chapterPath: string): Promise { + const page = await fetchApi(this.site + '/series/' + chapterPath, { + headers: { + 'User-Agent': '', + }, + }).then(r => r.text()); + return loadCheerio(page)('#reader-area').html(); + } + + async searchNovels( + searchTerm: string, + pageNo: number, + ): Promise { + return await fetchApi( + `${this.site}/api/novels/filter?page=${pageNo}&per_page=20&search=${encodeURIComponent(searchTerm)}`, + ) + .then(r => r.json()) + .then(r => r.data.map(novel => this.parseNovelFromApi(novel))); + } + + parseNovelFromApi(apiData) { + return { + name: apiData.title, + path: apiData.slug, + cover: this.site + '/' + apiData.cover, + summary: apiData.description, + status: apiData.status, + genres: apiData.genres.map(g => g.name).join(','), + }; + } + + resolveUrl = (path: string, isNovel?: boolean) => + this.site + '/series/' + path; + + filters = { + status: { + type: FilterTypes.Picker, + label: 'Status', + value: 'any', + options: [ + { label: 'All', value: 'any' }, + { label: 'Ongoing', value: 'ongoing' }, + { + label: 'Completed', + value: 'completed', + }, + ], + }, + sort: { + type: FilterTypes.Picker, + label: 'Sort', + value: 'popular', + options: [ + { label: 'Popular', value: 'popular' }, + { label: 'Latest', value: 'latest' }, + { label: 'Updated', value: 'updated' }, + ], + }, + genres: { + type: FilterTypes.CheckboxGroup, + label: 'Genres', + value: [], + options: [ + { 'label': 'Action', 'value': '1' }, + { 'label': 'Adult', 'value': '2' }, + { + 'label': 'Adventure', + 'value': '3', + }, + { 'label': 'Comedy', 'value': '4' }, + { 'label': 'Drama', 'value': '5' }, + { + 'label': 'Ecchi', + 'value': '6', + }, + { 'label': 'Fantasy', 'value': '7' }, + { 'label': 'Gender Bender', 'value': '8' }, + { + 'label': 'Harem', + 'value': '9', + }, + { 'label': 'Historical', 'value': '10' }, + { 'label': 'Horror', 'value': '11' }, + { + 'label': 'Josei', + 'value': '12', + }, + { 'label': 'Martial Arts', 'value': '13' }, + { 'label': 'Mature', 'value': '14' }, + { + 'label': 'Mecha', + 'value': '15', + }, + { 'label': 'Mystery', 'value': '16' }, + { 'label': 'Psychological', 'value': '17' }, + { + 'label': 'Romance', + 'value': '18', + }, + { 'label': 'School Life', 'value': '19' }, + { 'label': 'Sci-fi', 'value': '20' }, + { + 'label': 'Seinen', + 'value': '21', + }, + { 'label': 'Shoujo', 'value': '22' }, + { 'label': 'Shoujo Ai', 'value': '23' }, + { + 'label': 'Shounen', + 'value': '24', + }, + { 'label': 'Shounen Ai', 'value': '25' }, + { 'label': 'Slice of Life', 'value': '26' }, + { + 'label': 'Smut', + 'value': '27', + }, + { 'label': 'Sports', 'value': '28' }, + { 'label': 'Supernatural', 'value': '29' }, + { + 'label': 'Tragedy', + 'value': '30', + }, + { 'label': 'Wuxia', 'value': '31' }, + { 'label': 'Xianxia', 'value': '32' }, + { + 'label': 'Xuanhuan', + 'value': '33', + }, + { 'label': 'Yaoi', 'value': '34' }, + { 'label': 'Yuri', 'value': '35' }, + ], + }, + } satisfies Filters; +} + +export default new FenrirRealmPlugin(); + +//paste into console on site to load +async function getUpdatedGenres() { + const data = await fetch( + 'https://fenrirealm.com/api/novels/taxonomy/genres', + ).then(d => d.json()); + const genreData = data.map(g => ({ label: g.name, value: g.id.toString() })); + console.log(JSON.stringify(genreData)); +}