From 65c658379d49aa1937153391e3601fe2f33fd96f Mon Sep 17 00:00:00 2001 From: Soopyboo32 <49228220+Soopyboo32@users.noreply.github.com> Date: Sat, 25 Oct 2025 01:24:13 +0800 Subject: [PATCH 01/13] Story seedling beginning --- plugins/english/StorySeedling.ts | 27 +++++++++------------------ proxy.ts | 4 ++-- 2 files changed, 11 insertions(+), 20 deletions(-) diff --git a/plugins/english/StorySeedling.ts b/plugins/english/StorySeedling.ts index b1a904b84..04646127b 100644 --- a/plugins/english/StorySeedling.ts +++ b/plugins/english/StorySeedling.ts @@ -1,6 +1,6 @@ import { CheerioAPI, load } from 'cheerio'; import { Plugin } from '@/types/plugin'; -import { fetchApi } from '@libs/fetch'; +import { fetchApi, fetchText } from '@libs/fetch'; import { NovelStatus } from '@libs/novelStatus'; import { defaultCover } from '@libs/defaultCover'; @@ -163,23 +163,14 @@ class StorySeedlingPlugin implements Plugin.PluginBase { } async parseChapter(chapterPath: string): Promise { - const $ = await this.getCheerio(this.site + chapterPath, false); - - const xdata = $('div[ax-load][x-data]').attr('x-data'); - - const t = $('div.justify-center > div.mb-4'); - let chapterText = t.html() || ''; - - if (xdata) { - chapterText = - chapterText + - "\n\n Error parsing chapter: Turnstile detected. Advise just reading in web view until there's a fix."; - // const listXdata = xdata?.split("'"); - // const dataNovelId = listXdata[1]; - // const dataNovelN = listXdata[3]; - } - - return chapterText; + return await fetchText(this.site + chapterPath + '/content', { + method: 'POST', + headers: { + 'referrer': this.site + chapterPath + '/', + 'x-nonce': '5c3a4f0004', //TODO: turnstyle bypass + }, + body: JSON.stringify({ 'captcha_response': '' }), + }); //TODO: remap chars } async searchNovels( diff --git a/proxy.ts b/proxy.ts index db93a11e0..e80ed8ff5 100644 --- a/proxy.ts +++ b/proxy.ts @@ -23,8 +23,8 @@ const settings: ServerSetting = { 'link', 'set-cookie', 'set-cookie2', - 'content-encoding', - 'content-length', + // 'content-encoding', + // 'content-length', ], useUserAgent: true, }; From 4fe03f4db9e207229203dd4bfdbdafc4a4e24806 Mon Sep 17 00:00:00 2001 From: Soopyboo32 <49228220+Soopyboo32@users.noreply.github.com> Date: Sat, 25 Oct 2025 02:04:55 +0800 Subject: [PATCH 02/13] Font decoding --- plugins/english/StorySeedling.ts | 28 +- plugins/index.ts | 426 +++++++++++++++---------------- 2 files changed, 233 insertions(+), 221 deletions(-) diff --git a/plugins/english/StorySeedling.ts b/plugins/english/StorySeedling.ts index 04646127b..c5f127c71 100644 --- a/plugins/english/StorySeedling.ts +++ b/plugins/english/StorySeedling.ts @@ -163,14 +163,26 @@ class StorySeedlingPlugin implements Plugin.PluginBase { } async parseChapter(chapterPath: string): Promise { - return await fetchText(this.site + chapterPath + '/content', { - method: 'POST', - headers: { - 'referrer': this.site + chapterPath + '/', - 'x-nonce': '5c3a4f0004', //TODO: turnstyle bypass - }, - body: JSON.stringify({ 'captcha_response': '' }), - }); //TODO: remap chars + return ( + await fetchText(this.site + chapterPath + '/content', { + method: 'POST', + headers: { + 'referrer': this.site + chapterPath + '/', + 'x-nonce': '5c3a4f0004', //TODO: is this actually constant? + }, + body: JSON.stringify({ 'captcha_response': '' }), + }) + ) + .split('') + .map(char => { + const code = char.charCodeAt(0); + const offset = code > 12123 ? 12027 : 12033; + const decoded = code - offset; + return decoded >= 32 && decoded <= 126 + ? String.fromCharCode(decoded) + : char; + }) + .join(''); } async searchNovels( diff --git a/plugins/index.ts b/plugins/index.ts index 1497bd358..c107553ef 100644 --- a/plugins/index.ts +++ b/plugins/index.ts @@ -1,250 +1,250 @@ import { Plugin } from '@/types/plugin'; import p_0 from '@plugins/arabic/ArNovel[madara]'; import p_1 from '@plugins/arabic/Azora[madara]'; -import p_2 from '@plugins/arabic/HizoManga[madara]'; -import p_3 from '@plugins/arabic/KolNovel[lightnovelwp]'; -import p_4 from '@plugins/arabic/Novel4Up[madara]'; -import p_5 from '@plugins/arabic/NovelsParadise[lightnovelwp]'; -import p_6 from '@plugins/arabic/Olaoecyou[madara]'; -import p_7 from '@plugins/arabic/Riwyat[madara]'; -import p_8 from '@plugins/arabic/dilartube'; -import p_9 from '@plugins/arabic/rewayatclub'; +import p_2 from '@plugins/arabic/dilartube'; +import p_3 from '@plugins/arabic/HizoManga[madara]'; +import p_4 from '@plugins/arabic/KolNovel[lightnovelwp]'; +import p_5 from '@plugins/arabic/Novel4Up[madara]'; +import p_6 from '@plugins/arabic/NovelsParadise[lightnovelwp]'; +import p_7 from '@plugins/arabic/Olaoecyou[madara]'; +import p_8 from '@plugins/arabic/rewayatclub'; +import p_9 from '@plugins/arabic/Riwyat[madara]'; import p_10 from '@plugins/arabic/sunovels'; import p_11 from '@plugins/chinese/69shu'; import p_12 from '@plugins/chinese/69xinshu'; -import p_13 from '@plugins/chinese/Quanben'; -import p_14 from '@plugins/chinese/ixdzs8'; -import p_15 from '@plugins/chinese/linovel'; -import p_16 from '@plugins/chinese/linovelib'; -import p_17 from '@plugins/chinese/linovelib_tw'; -import p_18 from '@plugins/chinese/novel543'; +import p_13 from '@plugins/chinese/ixdzs8'; +import p_14 from '@plugins/chinese/linovel'; +import p_15 from '@plugins/chinese/linovelib'; +import p_16 from '@plugins/chinese/linovelib_tw'; +import p_17 from '@plugins/chinese/novel543'; +import p_18 from '@plugins/chinese/Quanben'; import p_19 from '@plugins/english/AllNovelFull[readnovelfull]'; import p_20 from '@plugins/english/AllNovel[readnovelfull]'; -import p_21 from '@plugins/english/ArcaneTranslations[lightnovelwp]'; -import p_22 from '@plugins/english/BelleReservoir[madara]'; -import p_23 from '@plugins/english/BoxNovel[readnovelfull]'; -import p_24 from '@plugins/english/CPUnovel[lightnovelwp]'; -import p_25 from '@plugins/english/CitrusAurora[madara]'; -import p_26 from '@plugins/english/CoralBoutique[madara]'; -import p_27 from '@plugins/english/DaoNovel[madara]'; -import p_28 from '@plugins/english/DaoTranslate[lightnovelwp]'; -import p_29 from '@plugins/english/DaoistQuest[fictioneer]'; -import p_30 from '@plugins/english/DearestRosalie[fictioneer]'; -import p_31 from '@plugins/english/DragonTea[madara]'; -import p_32 from '@plugins/english/Dragonholic[madara]'; -import p_33 from '@plugins/english/DuskBlossoms[madara]'; -import p_34 from '@plugins/english/ElloTL[lightnovelwp]'; -import p_35 from '@plugins/english/Eternalune[madara]'; -import p_36 from '@plugins/english/EtudeTranslations[madara]'; -import p_37 from '@plugins/english/FanNovel[readwn]'; -import p_38 from '@plugins/english/FansMTL[readwn]'; -import p_39 from '@plugins/english/FansTranslations[madara]'; -import p_40 from '@plugins/english/FirstKissNovel[madara]'; -import p_41 from '@plugins/english/Foxaholic[madara]'; -import p_42 from '@plugins/english/FreeWebNovel[readnovelfull]'; -import p_43 from '@plugins/english/GalaxyTranslations[madara]'; -import p_44 from '@plugins/english/Guavaread[madara]'; -import p_45 from '@plugins/english/HiraethTranslation[madara]'; -import p_46 from '@plugins/english/HotNovelPub[hotnovelpub]'; -import p_47 from '@plugins/english/Ippotranslations[lightnovelwp]'; -import p_48 from '@plugins/english/KeopiTranslations[lightnovelwp]'; -import p_49 from '@plugins/english/KnoxT[lightnovelwp]'; -import p_50 from '@plugins/english/LazyGirlTranslations[lightnovelwp]'; -import p_51 from '@plugins/english/LibRead[readnovelfull]'; -import p_52 from '@plugins/english/LightNovelCave[lightnovelworld]'; -import p_53 from '@plugins/english/LightNovelHeaven[madara]'; -import p_54 from '@plugins/english/LightNovelPlus[readnovelfull]'; -import p_55 from '@plugins/english/LightNovelPubVip[lightnovelworld]'; -import p_56 from '@plugins/english/LightNovelUpdates[madara]'; -import p_57 from '@plugins/english/LightNovelWord[lightnovelworld]'; -import p_58 from '@plugins/english/LilyontheValley[fictioneer]'; -import p_59 from '@plugins/english/Ltnovel[readwn]'; -import p_60 from '@plugins/english/LunarLetters[madara]'; -import p_61 from '@plugins/english/MTLNovel[madara]'; -import p_62 from '@plugins/english/MTLNovel[mtlnovel]'; -import p_63 from '@plugins/english/Meownovel[madara]'; -import p_64 from '@plugins/english/MoonlightNovels[lightnovelwp]'; -import p_65 from '@plugins/english/MostNovel[madara]'; -import p_66 from '@plugins/english/MysticalSeries[madara]'; -import p_67 from '@plugins/english/NeoSekaiTranslations[madara]'; -import p_68 from '@plugins/english/NitroManga[madara]'; -import p_69 from '@plugins/english/NobleMTL[lightnovelwp]'; -import p_70 from '@plugins/english/NoiceTranslations[madara]'; -import p_71 from '@plugins/english/NovelBin[readnovelfull]'; -import p_72 from '@plugins/english/NovelCool[novelcool]'; -import p_73 from '@plugins/english/NovelFull[readnovelfull]'; -import p_74 from '@plugins/english/NovelLib[fictioneer]'; -import p_75 from '@plugins/english/NovelMultiverse[madara]'; -import p_76 from '@plugins/english/NovelOnline'; -import p_77 from '@plugins/english/NovelTranslate[madara]'; -import p_78 from '@plugins/english/NovelsKnight[lightnovelwp]'; -import p_79 from '@plugins/english/PandaMachineTranslations[lightnovelwp]'; -import p_80 from '@plugins/english/PastelTales[madara]'; -import p_81 from '@plugins/english/PenguinSquad[fictioneer]'; -import p_82 from '@plugins/english/Prizma[fictioneer]'; -import p_83 from '@plugins/english/Ranobes[ranobes]'; -import p_84 from '@plugins/english/Ranovel[madara]'; -import p_85 from '@plugins/english/ReadFanfic[madara]'; -import p_86 from '@plugins/english/ReadNovelFull[readnovelfull]'; -import p_87 from '@plugins/english/RequiemTranslations[lightnovelwp]'; -import p_88 from '@plugins/english/SalmonLatte[madara]'; -import p_89 from '@plugins/english/SleepyTranslations[madara]'; -import p_90 from '@plugins/english/SonicMTL[madara]'; -import p_91 from '@plugins/english/SrankManga[madara]'; -import p_92 from '@plugins/english/StorySeedling'; -import p_93 from '@plugins/english/SweetEscape[madara]'; -import p_94 from '@plugins/english/SystemTranslation[lightnovelwp]'; -import p_95 from '@plugins/english/TranslatinOtaku[madara]'; -import p_96 from '@plugins/english/TranslationWeaver[lightnovelwp]'; -import p_97 from '@plugins/english/UniversalNovel[lightnovelwp]'; -import p_98 from '@plugins/english/VandyTranslate[lightnovelwp]'; -import p_99 from '@plugins/english/VioletLily[madara]'; -import p_100 from '@plugins/english/WebNovelLover[madara]'; -import p_101 from '@plugins/english/WebNovelPub[lightnovelworld]'; -import p_102 from '@plugins/english/WebNovelTranslation[madara]'; -import p_103 from '@plugins/english/WhiteMoonlightNovels[lightnovelwp]'; -import p_104 from '@plugins/english/WooksTeahouse[madara]'; -import p_105 from '@plugins/english/WordExcerpt[madara]'; -import p_106 from '@plugins/english/WuxiaSpace[readwn]'; -import p_107 from '@plugins/english/WuxiaV[readwn]'; -import p_108 from '@plugins/english/WuxiaWorldSite[madara]'; -import p_109 from '@plugins/english/Wuxiabox[readwn]'; -import p_110 from '@plugins/english/Wuxiafox[readwn]'; -import p_111 from '@plugins/english/ZetroTranslation[madara]'; -import p_112 from '@plugins/english/ao3'; -import p_113 from '@plugins/english/bestlightnovel'; -import p_114 from '@plugins/english/chrysanthemumgarden'; -import p_115 from '@plugins/english/divinedaolibrary'; -import p_116 from '@plugins/english/dreambigtl'; -import p_117 from '@plugins/english/earlynovel'; -import p_118 from '@plugins/english/faqwikius'; -import p_119 from '@plugins/english/fenrirrealm'; -import p_120 from '@plugins/english/fictionzone'; -import p_121 from '@plugins/english/foxteller'; -import p_122 from '@plugins/english/genesis'; -import p_123 from '@plugins/english/inkitt'; -import p_124 from '@plugins/english/kdtnovels'; -import p_125 from '@plugins/english/lightnovelpub'; -import p_126 from '@plugins/english/lightnoveltranslation'; -import p_127 from '@plugins/english/lnmtl'; -import p_128 from '@plugins/english/mtlreader'; -import p_129 from '@plugins/english/mvlempyr'; -import p_130 from '@plugins/english/novelbuddy'; -import p_131 from '@plugins/english/novelfire'; -import p_132 from '@plugins/english/novelhall'; -import p_133 from '@plugins/english/novelight'; -import p_134 from '@plugins/english/novelupdates'; -import p_135 from '@plugins/english/pawread'; -import p_136 from '@plugins/english/rainofsnow'; -import p_137 from '@plugins/english/readfrom'; -import p_138 from '@plugins/english/readlitenovel'; -import p_139 from '@plugins/english/reaperscans'; -import p_140 from '@plugins/english/relibrary'; -import p_141 from '@plugins/english/royalroad'; -import p_142 from '@plugins/english/scribblehub'; -import p_143 from '@plugins/english/vynovel'; -import p_144 from '@plugins/english/webnovel'; -import p_145 from '@plugins/english/wtrlab'; -import p_146 from '@plugins/english/wuxiaworld'; -import p_147 from '@plugins/french/LighNovelFR[lightnovelwp]'; -import p_148 from '@plugins/french/MTLNovel(FR)[mtlnovel]'; -import p_149 from '@plugins/french/MassNovel[madara]'; -import p_150 from '@plugins/french/WorldNovel[madara]'; -import p_151 from '@plugins/french/chireads'; -import p_152 from '@plugins/french/harkeneliwood'; -import p_153 from '@plugins/french/kisswood'; -import p_154 from '@plugins/french/noveldeglace'; -import p_155 from '@plugins/french/novhell'; -import p_156 from '@plugins/french/phenixscans'; -import p_157 from '@plugins/french/warriorlegendtrad'; +import p_21 from '@plugins/english/ao3'; +import p_22 from '@plugins/english/ArcaneTranslations[lightnovelwp]'; +import p_23 from '@plugins/english/BelleReservoir[madara]'; +import p_24 from '@plugins/english/bestlightnovel'; +import p_25 from '@plugins/english/BoxNovel[readnovelfull]'; +import p_26 from '@plugins/english/chrysanthemumgarden'; +import p_27 from '@plugins/english/CitrusAurora[madara]'; +import p_28 from '@plugins/english/CoralBoutique[madara]'; +import p_29 from '@plugins/english/CPUnovel[lightnovelwp]'; +import p_30 from '@plugins/english/DaoistQuest[fictioneer]'; +import p_31 from '@plugins/english/DaoNovel[madara]'; +import p_32 from '@plugins/english/DaoTranslate[lightnovelwp]'; +import p_33 from '@plugins/english/DearestRosalie[fictioneer]'; +import p_34 from '@plugins/english/divinedaolibrary'; +import p_35 from '@plugins/english/Dragonholic[madara]'; +import p_36 from '@plugins/english/DragonTea[madara]'; +import p_37 from '@plugins/english/dreambigtl'; +import p_38 from '@plugins/english/DuskBlossoms[madara]'; +import p_39 from '@plugins/english/earlynovel'; +import p_40 from '@plugins/english/ElloTL[lightnovelwp]'; +import p_41 from '@plugins/english/Eternalune[madara]'; +import p_42 from '@plugins/english/EtudeTranslations[madara]'; +import p_43 from '@plugins/english/FanNovel[readwn]'; +import p_44 from '@plugins/english/FansMTL[readwn]'; +import p_45 from '@plugins/english/FansTranslations[madara]'; +import p_46 from '@plugins/english/faqwikius'; +import p_47 from '@plugins/english/fenrirrealm'; +import p_48 from '@plugins/english/fictionzone'; +import p_49 from '@plugins/english/FirstKissNovel[madara]'; +import p_50 from '@plugins/english/Foxaholic[madara]'; +import p_51 from '@plugins/english/foxteller'; +import p_52 from '@plugins/english/FreeWebNovel[readnovelfull]'; +import p_53 from '@plugins/english/GalaxyTranslations[madara]'; +import p_54 from '@plugins/english/genesis'; +import p_55 from '@plugins/english/Guavaread[madara]'; +import p_56 from '@plugins/english/HiraethTranslation[madara]'; +import p_57 from '@plugins/english/HotNovelPub[hotnovelpub]'; +import p_58 from '@plugins/english/inkitt'; +import p_59 from '@plugins/english/Ippotranslations[lightnovelwp]'; +import p_60 from '@plugins/english/kdtnovels'; +import p_61 from '@plugins/english/KeopiTranslations[lightnovelwp]'; +import p_62 from '@plugins/english/KnoxT[lightnovelwp]'; +import p_63 from '@plugins/english/LazyGirlTranslations[lightnovelwp]'; +import p_64 from '@plugins/english/LibRead[readnovelfull]'; +import p_65 from '@plugins/english/LightNovelCave[lightnovelworld]'; +import p_66 from '@plugins/english/LightNovelHeaven[madara]'; +import p_67 from '@plugins/english/LightNovelPlus[readnovelfull]'; +import p_68 from '@plugins/english/lightnovelpub'; +import p_69 from '@plugins/english/LightNovelPubVip[lightnovelworld]'; +import p_70 from '@plugins/english/lightnoveltranslation'; +import p_71 from '@plugins/english/LightNovelUpdates[madara]'; +import p_72 from '@plugins/english/LightNovelWord[lightnovelworld]'; +import p_73 from '@plugins/english/LilyontheValley[fictioneer]'; +import p_74 from '@plugins/english/lnmtl'; +import p_75 from '@plugins/english/Ltnovel[readwn]'; +import p_76 from '@plugins/english/LunarLetters[madara]'; +import p_77 from '@plugins/english/Meownovel[madara]'; +import p_78 from '@plugins/english/MoonlightNovels[lightnovelwp]'; +import p_79 from '@plugins/english/MostNovel[madara]'; +import p_80 from '@plugins/english/MTLNovel[madara]'; +import p_81 from '@plugins/english/MTLNovel[mtlnovel]'; +import p_82 from '@plugins/english/mtlreader'; +import p_83 from '@plugins/english/mvlempyr'; +import p_84 from '@plugins/english/MysticalSeries[madara]'; +import p_85 from '@plugins/english/NeoSekaiTranslations[madara]'; +import p_86 from '@plugins/english/NitroManga[madara]'; +import p_87 from '@plugins/english/NobleMTL[lightnovelwp]'; +import p_88 from '@plugins/english/NoiceTranslations[madara]'; +import p_89 from '@plugins/english/NovelBin[readnovelfull]'; +import p_90 from '@plugins/english/novelbuddy'; +import p_91 from '@plugins/english/NovelCool[novelcool]'; +import p_92 from '@plugins/english/novelfire'; +import p_93 from '@plugins/english/NovelFull[readnovelfull]'; +import p_94 from '@plugins/english/novelhall'; +import p_95 from '@plugins/english/novelight'; +import p_96 from '@plugins/english/NovelLib[fictioneer]'; +import p_97 from '@plugins/english/NovelMultiverse[madara]'; +import p_98 from '@plugins/english/NovelOnline'; +import p_99 from '@plugins/english/NovelsKnight[lightnovelwp]'; +import p_100 from '@plugins/english/NovelTranslate[madara]'; +import p_101 from '@plugins/english/novelupdates'; +import p_102 from '@plugins/english/PandaMachineTranslations[lightnovelwp]'; +import p_103 from '@plugins/english/PastelTales[madara]'; +import p_104 from '@plugins/english/pawread'; +import p_105 from '@plugins/english/PenguinSquad[fictioneer]'; +import p_106 from '@plugins/english/Prizma[fictioneer]'; +import p_107 from '@plugins/english/rainofsnow'; +import p_108 from '@plugins/english/Ranobes[ranobes]'; +import p_109 from '@plugins/english/Ranovel[madara]'; +import p_110 from '@plugins/english/ReadFanfic[madara]'; +import p_111 from '@plugins/english/readfrom'; +import p_112 from '@plugins/english/readlitenovel'; +import p_113 from '@plugins/english/ReadNovelFull[readnovelfull]'; +import p_114 from '@plugins/english/reaperscans'; +import p_115 from '@plugins/english/relibrary'; +import p_116 from '@plugins/english/RequiemTranslations[lightnovelwp]'; +import p_117 from '@plugins/english/royalroad'; +import p_118 from '@plugins/english/SalmonLatte[madara]'; +import p_119 from '@plugins/english/scribblehub'; +import p_120 from '@plugins/english/SleepyTranslations[madara]'; +import p_121 from '@plugins/english/SonicMTL[madara]'; +import p_122 from '@plugins/english/SrankManga[madara]'; +import p_123 from '@plugins/english/StorySeedling'; +import p_124 from '@plugins/english/SweetEscape[madara]'; +import p_125 from '@plugins/english/SystemTranslation[lightnovelwp]'; +import p_126 from '@plugins/english/TranslatinOtaku[madara]'; +import p_127 from '@plugins/english/TranslationWeaver[lightnovelwp]'; +import p_128 from '@plugins/english/UniversalNovel[lightnovelwp]'; +import p_129 from '@plugins/english/VandyTranslate[lightnovelwp]'; +import p_130 from '@plugins/english/VioletLily[madara]'; +import p_131 from '@plugins/english/vynovel'; +import p_132 from '@plugins/english/webnovel'; +import p_133 from '@plugins/english/WebNovelLover[madara]'; +import p_134 from '@plugins/english/WebNovelPub[lightnovelworld]'; +import p_135 from '@plugins/english/WebNovelTranslation[madara]'; +import p_136 from '@plugins/english/WhiteMoonlightNovels[lightnovelwp]'; +import p_137 from '@plugins/english/WooksTeahouse[madara]'; +import p_138 from '@plugins/english/WordExcerpt[madara]'; +import p_139 from '@plugins/english/wtrlab'; +import p_140 from '@plugins/english/Wuxiabox[readwn]'; +import p_141 from '@plugins/english/Wuxiafox[readwn]'; +import p_142 from '@plugins/english/WuxiaSpace[readwn]'; +import p_143 from '@plugins/english/WuxiaV[readwn]'; +import p_144 from '@plugins/english/wuxiaworld'; +import p_145 from '@plugins/english/WuxiaWorldSite[madara]'; +import p_146 from '@plugins/english/ZetroTranslation[madara]'; +import p_147 from '@plugins/french/chireads'; +import p_148 from '@plugins/french/harkeneliwood'; +import p_149 from '@plugins/french/kisswood'; +import p_150 from '@plugins/french/LighNovelFR[lightnovelwp]'; +import p_151 from '@plugins/french/MassNovel[madara]'; +import p_152 from '@plugins/french/MTLNovel(FR)[mtlnovel]'; +import p_153 from '@plugins/french/noveldeglace'; +import p_154 from '@plugins/french/novhell'; +import p_155 from '@plugins/french/phenixscans'; +import p_156 from '@plugins/french/warriorlegendtrad'; +import p_157 from '@plugins/french/WorldNovel[madara]'; import p_158 from '@plugins/french/wuxialnscantrad'; import p_159 from '@plugins/french/xiaowaz'; import p_160 from '@plugins/indonesian/BacaLightNovel[lightnovelwp]'; -import p_161 from '@plugins/indonesian/MTLNovel(ID)[mtlnovel]'; +import p_161 from '@plugins/indonesian/indowebnovel'; import p_162 from '@plugins/indonesian/MeioNovel[madara]'; -import p_163 from '@plugins/indonesian/NovelBookID[madara]'; -import p_164 from '@plugins/indonesian/Risenovel[madara]'; -import p_165 from '@plugins/indonesian/SekteNovel[lightnovelwp]'; -import p_166 from '@plugins/indonesian/WBNovel[madara]'; -import p_167 from '@plugins/indonesian/indowebnovel'; -import p_168 from '@plugins/indonesian/novelringan'; -import p_169 from '@plugins/indonesian/sakuranovel'; -import p_170 from '@plugins/japanese/Syosetu'; -import p_171 from '@plugins/japanese/kakuyomu'; +import p_163 from '@plugins/indonesian/MTLNovel(ID)[mtlnovel]'; +import p_164 from '@plugins/indonesian/NovelBookID[madara]'; +import p_165 from '@plugins/indonesian/novelringan'; +import p_166 from '@plugins/indonesian/Risenovel[madara]'; +import p_167 from '@plugins/indonesian/sakuranovel'; +import p_168 from '@plugins/indonesian/SekteNovel[lightnovelwp]'; +import p_169 from '@plugins/indonesian/WBNovel[madara]'; +import p_170 from '@plugins/japanese/kakuyomu'; +import p_171 from '@plugins/japanese/Syosetu'; import p_172 from '@plugins/korean/Agitoon'; import p_173 from '@plugins/korean/FortuneEternal[madara]'; import p_174 from '@plugins/multi/komga'; import p_175 from '@plugins/polish/novelki'; import p_176 from '@plugins/portuguese/BetterNovels[lightnovelwp]'; -import p_177 from '@plugins/portuguese/CentralNovel[lightnovelwp]'; -import p_178 from '@plugins/portuguese/Kiniga[madara]'; -import p_179 from '@plugins/portuguese/LaNovels[hotnovelpub]'; -import p_180 from '@plugins/portuguese/LightNovelBrasil[lightnovelwp]'; -import p_181 from '@plugins/portuguese/MTLNovel(PT)[mtlnovel]'; -import p_182 from '@plugins/portuguese/blogdoamonnovels'; +import p_177 from '@plugins/portuguese/blogdoamonnovels'; +import p_178 from '@plugins/portuguese/CentralNovel[lightnovelwp]'; +import p_179 from '@plugins/portuguese/Kiniga[madara]'; +import p_180 from '@plugins/portuguese/LaNovels[hotnovelpub]'; +import p_181 from '@plugins/portuguese/LightNovelBrasil[lightnovelwp]'; +import p_182 from '@plugins/portuguese/MTLNovel(PT)[mtlnovel]'; import p_183 from '@plugins/portuguese/novelmania'; import p_184 from '@plugins/portuguese/tsundoku'; -import p_185 from '@plugins/russian/Bookhamster[ifreedom]'; -import p_186 from '@plugins/russian/Erolate[rulate]'; -import p_187 from '@plugins/russian/EzNovels[hotnovelpub]'; -import p_188 from '@plugins/russian/LitSpace'; -import p_189 from '@plugins/russian/MTLNovel(RU)[mtlnovel]'; -import p_190 from '@plugins/russian/NovelCool(RU)[novelcool]'; -import p_191 from '@plugins/russian/Ranobes(RU)[ranobes]'; -import p_192 from '@plugins/russian/Rulate[rulate]'; -import p_193 from '@plugins/russian/authortoday'; -import p_194 from '@plugins/russian/bookriver'; -import p_195 from '@plugins/russian/ficbook'; -import p_196 from '@plugins/russian/jaomix'; -import p_197 from '@plugins/russian/neobook'; -import p_198 from '@plugins/russian/novelOvh'; -import p_199 from '@plugins/russian/novelTL'; -import p_200 from '@plugins/russian/ranobehub'; -import p_201 from '@plugins/russian/ranobelib'; -import p_202 from '@plugins/russian/ranoberf'; -import p_203 from '@plugins/russian/renovels'; +import p_185 from '@plugins/russian/authortoday'; +import p_186 from '@plugins/russian/Bookhamster[ifreedom]'; +import p_187 from '@plugins/russian/bookriver'; +import p_188 from '@plugins/russian/Erolate[rulate]'; +import p_189 from '@plugins/russian/EzNovels[hotnovelpub]'; +import p_190 from '@plugins/russian/ficbook'; +import p_191 from '@plugins/russian/jaomix'; +import p_192 from '@plugins/russian/LitSpace'; +import p_193 from '@plugins/russian/MTLNovel(RU)[mtlnovel]'; +import p_194 from '@plugins/russian/neobook'; +import p_195 from '@plugins/russian/NovelCool(RU)[novelcool]'; +import p_196 from '@plugins/russian/novelOvh'; +import p_197 from '@plugins/russian/novelTL'; +import p_198 from '@plugins/russian/ranobehub'; +import p_199 from '@plugins/russian/ranobelib'; +import p_200 from '@plugins/russian/ranoberf'; +import p_201 from '@plugins/russian/Ranobes(RU)[ranobes]'; +import p_202 from '@plugins/russian/renovels'; +import p_203 from '@plugins/russian/Rulate[rulate]'; import p_204 from '@plugins/russian/ruvers'; import p_205 from '@plugins/russian/topliba'; import p_206 from '@plugins/russian/zelluloza'; import p_207 from '@plugins/russian/СвободныйМирРанобэ[ifreedom]'; import p_208 from '@plugins/spanish/AllNovelRead[lightnovelwp]'; import p_209 from '@plugins/spanish/AnimesHoy12[madara]'; -import p_210 from '@plugins/spanish/LightNovelDaily[hotnovelpub]'; -import p_211 from '@plugins/spanish/MTLNovel(ES)[mtlnovel]'; -import p_212 from '@plugins/spanish/PanchoTranslations[madara]'; -import p_213 from '@plugins/spanish/TC&Sega[lightnovelwp]'; -import p_214 from '@plugins/spanish/TraduccionesAmistosas[madara]'; -import p_215 from '@plugins/spanish/hasutl'; -import p_216 from '@plugins/spanish/novelasligera'; -import p_217 from '@plugins/spanish/novelawuxia'; -import p_218 from '@plugins/spanish/oasistranslations'; -import p_219 from '@plugins/spanish/skynovels'; +import p_210 from '@plugins/spanish/hasutl'; +import p_211 from '@plugins/spanish/LightNovelDaily[hotnovelpub]'; +import p_212 from '@plugins/spanish/MTLNovel(ES)[mtlnovel]'; +import p_213 from '@plugins/spanish/novelasligera'; +import p_214 from '@plugins/spanish/novelawuxia'; +import p_215 from '@plugins/spanish/oasistranslations'; +import p_216 from '@plugins/spanish/PanchoTranslations[madara]'; +import p_217 from '@plugins/spanish/skynovels'; +import p_218 from '@plugins/spanish/TC&Sega[lightnovelwp]'; +import p_219 from '@plugins/spanish/TraduccionesAmistosas[madara]'; import p_220 from '@plugins/spanish/tunovelaligera'; import p_221 from '@plugins/spanish/yukitls'; import p_222 from '@plugins/thai/NovelLucky[madara]'; import p_223 from '@plugins/thai/NovelPDF[madara]'; import p_224 from '@plugins/turkish/ArazNovel[madara]'; import p_225 from '@plugins/turkish/EKTAPLAR[madara]'; -import p_226 from '@plugins/turkish/KodeksLibrary[lightnovelwp]'; -import p_227 from '@plugins/turkish/MangaTR'; -import p_228 from '@plugins/turkish/NABSCANS[madara]'; -import p_229 from '@plugins/turkish/Namevt[lightnovelwp]'; -import p_230 from '@plugins/turkish/NovelTR[lightnovelwp]'; -import p_231 from '@plugins/turkish/Noveloku[madara]'; -import p_232 from '@plugins/turkish/RagnarScans[madara]'; -import p_233 from '@plugins/turkish/ThNovels[hotnovelpub]'; -import p_234 from '@plugins/turkish/TurkceLightNovels[madara]'; -import p_235 from '@plugins/turkish/WebNovelOku[madara]'; -import p_236 from '@plugins/turkish/epiknovel'; -import p_237 from '@plugins/turkish/kakikata[madara]'; +import p_226 from '@plugins/turkish/epiknovel'; +import p_227 from '@plugins/turkish/kakikata[madara]'; +import p_228 from '@plugins/turkish/KodeksLibrary[lightnovelwp]'; +import p_229 from '@plugins/turkish/MangaTR'; +import p_230 from '@plugins/turkish/NABSCANS[madara]'; +import p_231 from '@plugins/turkish/Namevt[lightnovelwp]'; +import p_232 from '@plugins/turkish/Noveloku[madara]'; +import p_233 from '@plugins/turkish/NovelTR[lightnovelwp]'; +import p_234 from '@plugins/turkish/RagnarScans[madara]'; +import p_235 from '@plugins/turkish/ThNovels[hotnovelpub]'; +import p_236 from '@plugins/turkish/TurkceLightNovels[madara]'; +import p_237 from '@plugins/turkish/WebNovelOku[madara]'; import p_238 from '@plugins/ukrainian/bakainua'; import p_239 from '@plugins/ukrainian/smakolykytl'; import p_240 from '@plugins/ukrainian/uaranobeclub'; -import p_241 from '@plugins/vietnamese/LNHako'; -import p_242 from '@plugins/vietnamese/Truyenconect'; -import p_243 from '@plugins/vietnamese/lightnovelvn'; -import p_244 from '@plugins/vietnamese/nettruyen'; -import p_245 from '@plugins/vietnamese/truyenchu'; +import p_241 from '@plugins/vietnamese/lightnovelvn'; +import p_242 from '@plugins/vietnamese/LNHako'; +import p_243 from '@plugins/vietnamese/nettruyen'; +import p_244 from '@plugins/vietnamese/truyenchu'; +import p_245 from '@plugins/vietnamese/Truyenconect'; import p_246 from '@plugins/vietnamese/truyenfull'; const PLUGINS: Plugin.PluginBase[] = [ From 645a22d65f94e1fcb4a49e57c01cf123520a56be Mon Sep 17 00:00:00 2001 From: Soopyboo32 <49228220+Soopyboo32@users.noreply.github.com> Date: Sat, 25 Oct 2025 02:05:53 +0800 Subject: [PATCH 03/13] Bump version number --- plugins/english/StorySeedling.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/english/StorySeedling.ts b/plugins/english/StorySeedling.ts index c5f127c71..6944abcd7 100644 --- a/plugins/english/StorySeedling.ts +++ b/plugins/english/StorySeedling.ts @@ -9,7 +9,7 @@ class StorySeedlingPlugin implements Plugin.PluginBase { name = 'StorySeedling'; icon = 'src/en/storyseedling/icon.png'; site = 'https://storyseedling.com/'; - version = '1.0.3'; + version = '1.0.4'; async getCheerio(url: string, search: boolean): Promise { const r = await fetchApi(url); From b002fdd87009cd67aa16e0b2dbbde20f1e7665cf Mon Sep 17 00:00:00 2001 From: Soopyboo32 <49228220+Soopyboo32@users.noreply.github.com> Date: Sat, 25 Oct 2025 02:21:16 +0800 Subject: [PATCH 04/13] Remove spam --- plugins/english/StorySeedling.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/plugins/english/StorySeedling.ts b/plugins/english/StorySeedling.ts index 6944abcd7..171342c9b 100644 --- a/plugins/english/StorySeedling.ts +++ b/plugins/english/StorySeedling.ts @@ -173,6 +173,7 @@ class StorySeedlingPlugin implements Plugin.PluginBase { body: JSON.stringify({ 'captcha_response': '' }), }) ) + .replace(/cls[a-f0-9]+/g, '') .split('') .map(char => { const code = char.charCodeAt(0); From 3d3efdd4bd027617a76fcf7d34bd8500b256685a Mon Sep 17 00:00:00 2001 From: Soopyboo32 <49228220+Soopyboo32@users.noreply.github.com> Date: Sat, 25 Oct 2025 02:41:33 +0800 Subject: [PATCH 05/13] Remove story seedling ad --- plugins/english/StorySeedling.ts | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/plugins/english/StorySeedling.ts b/plugins/english/StorySeedling.ts index 171342c9b..62711df07 100644 --- a/plugins/english/StorySeedling.ts +++ b/plugins/english/StorySeedling.ts @@ -163,7 +163,7 @@ class StorySeedlingPlugin implements Plugin.PluginBase { } async parseChapter(chapterPath: string): Promise { - return ( + let html = ( await fetchText(this.site + chapterPath + '/content', { method: 'POST', headers: { @@ -184,6 +184,16 @@ class StorySeedlingPlugin implements Plugin.PluginBase { : char; }) .join(''); + let $ = load(html); + + $('span').text((_, txt) => + txt.toLowerCase().includes('storyseedling') || + txt.toLowerCase().includes('story seedling') + ? '' + : txt, + ); + + return $.html(); } async searchNovels( From 072338b45467ee8643e0119d69a97556ea5d10bd Mon Sep 17 00:00:00 2001 From: Soopyboo32 <49228220+Soopyboo32@users.noreply.github.com> Date: Sun, 26 Oct 2025 23:34:45 +0800 Subject: [PATCH 06/13] Live update nonce --- plugins/english/StorySeedling.ts | 37 ++++++++++++++++++++++---------- 1 file changed, 26 insertions(+), 11 deletions(-) diff --git a/plugins/english/StorySeedling.ts b/plugins/english/StorySeedling.ts index 62711df07..3185996b0 100644 --- a/plugins/english/StorySeedling.ts +++ b/plugins/english/StorySeedling.ts @@ -2,7 +2,6 @@ import { CheerioAPI, load } from 'cheerio'; import { Plugin } from '@/types/plugin'; import { fetchApi, fetchText } from '@libs/fetch'; import { NovelStatus } from '@libs/novelStatus'; -import { defaultCover } from '@libs/defaultCover'; class StorySeedlingPlugin implements Plugin.PluginBase { id = 'storyseedling'; @@ -10,6 +9,7 @@ class StorySeedlingPlugin implements Plugin.PluginBase { icon = 'src/en/storyseedling/icon.png'; site = 'https://storyseedling.com/'; version = '1.0.4'; + nonce: string | undefined; async getCheerio(url: string, search: boolean): Promise { const r = await fetchApi(url); @@ -162,17 +162,32 @@ class StorySeedlingPlugin implements Plugin.PluginBase { return novel as Plugin.SourceNovel; } + async updateNonce(chapterPath: string) { + const $ = await this.getCheerio(this.site + chapterPath, false); + this.nonce = $('div.mb-4:has(h1.text-xl) > div') + .attr('x-data') + ?.match(/loadChapter\('.+?', '(.+?)'\)/)[1]; + } + async parseChapter(chapterPath: string): Promise { - let html = ( - await fetchText(this.site + chapterPath + '/content', { - method: 'POST', - headers: { - 'referrer': this.site + chapterPath + '/', - 'x-nonce': '5c3a4f0004', //TODO: is this actually constant? - }, - body: JSON.stringify({ 'captcha_response': '' }), - }) - ) + const updatedNonce = !!this.nonce; + if (!this.nonce) await this.updateNonce(chapterPath); + const text = await fetchApi(this.site + chapterPath + '/content', { + method: 'POST', + headers: { + 'referrer': this.site + chapterPath + '/', + 'x-nonce': this.nonce, + }, + body: JSON.stringify({ 'captcha_response': '' }), + }).then(r => r.text()); + if (text == '{"success":false,"message":"Invalid security."}') { + if (updatedNonce) { + throw new Error(`Failed to bypass captcha!`); + } + this.nonce = ''; + return await this.parseChapter(chapterPath, true); + } + let html = text .replace(/cls[a-f0-9]+/g, '') .split('') .map(char => { From 174515f612f4765a1fa048e1ddba97636eac267e Mon Sep 17 00:00:00 2001 From: Soopyboo32 <49228220+Soopyboo32@users.noreply.github.com> Date: Sun, 26 Oct 2025 23:37:34 +0800 Subject: [PATCH 07/13] add error for captcha --- plugins/english/StorySeedling.ts | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/plugins/english/StorySeedling.ts b/plugins/english/StorySeedling.ts index 3185996b0..969e1f874 100644 --- a/plugins/english/StorySeedling.ts +++ b/plugins/english/StorySeedling.ts @@ -182,10 +182,20 @@ class StorySeedlingPlugin implements Plugin.PluginBase { }).then(r => r.text()); if (text == '{"success":false,"message":"Invalid security."}') { if (updatedNonce) { - throw new Error(`Failed to bypass captcha!`); + throw new Error(`Failed to find code!`); } this.nonce = ''; - return await this.parseChapter(chapterPath, true); + return await this.parseChapter(chapterPath); + } + if ( + text == + '{"success":false,"message":"Captcha verification required.","captcha":true}' + ) { + if (updatedNonce) { + throw new Error( + `Failed to bypass turnstile captcha (read in webview until it stops ig)`, + ); + } } let html = text .replace(/cls[a-f0-9]+/g, '') From a23dc767e7dc6718eef833917a279b16be0ecb61 Mon Sep 17 00:00:00 2001 From: Soopyboo32 <49228220+Soopyboo32@users.noreply.github.com> Date: Sun, 26 Oct 2025 23:44:31 +0800 Subject: [PATCH 08/13] JSON instead of text compare --- plugins/english/StorySeedling.ts | 34 ++++++++++++++++++-------------- 1 file changed, 19 insertions(+), 15 deletions(-) diff --git a/plugins/english/StorySeedling.ts b/plugins/english/StorySeedling.ts index 969e1f874..4334968fa 100644 --- a/plugins/english/StorySeedling.ts +++ b/plugins/english/StorySeedling.ts @@ -180,22 +180,26 @@ class StorySeedlingPlugin implements Plugin.PluginBase { }, body: JSON.stringify({ 'captcha_response': '' }), }).then(r => r.text()); - if (text == '{"success":false,"message":"Invalid security."}') { - if (updatedNonce) { - throw new Error(`Failed to find code!`); - } - this.nonce = ''; - return await this.parseChapter(chapterPath); - } - if ( - text == - '{"success":false,"message":"Captcha verification required.","captcha":true}' - ) { - if (updatedNonce) { - throw new Error( - `Failed to bypass turnstile captcha (read in webview until it stops ig)`, - ); + try { + const textJson = JSON.parse(text); + if (!textJson.success) { + if (textJson.message === 'Invalid security.') { + if (updatedNonce) { + throw new Error(`Failed to find code!`); + } + this.nonce = ''; + return await this.parseChapter(chapterPath); + } + if (textJson.captcha) { + if (updatedNonce) { + throw new Error( + `Failed to bypass turnstile captcha (read in webview until it stops ig)`, + ); + } + } } + } catch (_) { + //not json :fire: we have chapter } let html = text .replace(/cls[a-f0-9]+/g, '') From 429ea8785d62561ed295d7b7723fa6e475701d28 Mon Sep 17 00:00:00 2001 From: Soopyboo32 <49228220+Soopyboo32@users.noreply.github.com> Date: Sun, 26 Oct 2025 23:53:46 +0800 Subject: [PATCH 09/13] Fix proxy crashing on error --- proxy.ts | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/proxy.ts b/proxy.ts index e80ed8ff5..c699f12cb 100644 --- a/proxy.ts +++ b/proxy.ts @@ -184,11 +184,20 @@ const proxyRequest: Connect.SimpleHandleFunction = (req, res) => { res.end(); }); } else if (settings.fetchMode === FetchMode.PROXY) { - proxy.web(req, res, { - target: _url.origin, - selfHandleResponse: true, - followRedirects: true, - }); + proxy.web( + req, + res, + { + target: _url.origin, + selfHandleResponse: true, + followRedirects: true, + }, + err => { + console.error(err); + res.statusCode = 500; + res.end(); + }, + ); } }; From 556a1982d42d599b12ada7174e80ac291617aecf Mon Sep 17 00:00:00 2001 From: Soopyboo32 <49228220+Soopyboo32@users.noreply.github.com> Date: Sun, 26 Oct 2025 23:53:57 +0800 Subject: [PATCH 10/13] Fix captcha error --- plugins/english/StorySeedling.ts | 33 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 17 deletions(-) diff --git a/plugins/english/StorySeedling.ts b/plugins/english/StorySeedling.ts index 4334968fa..8dd13d02e 100644 --- a/plugins/english/StorySeedling.ts +++ b/plugins/english/StorySeedling.ts @@ -180,27 +180,26 @@ class StorySeedlingPlugin implements Plugin.PluginBase { }, body: JSON.stringify({ 'captcha_response': '' }), }).then(r => r.text()); + let textJson; try { - const textJson = JSON.parse(text); - if (!textJson.success) { - if (textJson.message === 'Invalid security.') { - if (updatedNonce) { - throw new Error(`Failed to find code!`); - } - this.nonce = ''; - return await this.parseChapter(chapterPath); - } - if (textJson.captcha) { - if (updatedNonce) { - throw new Error( - `Failed to bypass turnstile captcha (read in webview until it stops ig)`, - ); - } - } - } + textJson = JSON.parse(text); } catch (_) { //not json :fire: we have chapter } + if (textJson && !textJson.success) { + if (textJson.message === 'Invalid security.') { + if (updatedNonce) { + throw new Error(`Failed to find code!`); + } + this.nonce = ''; + return await this.parseChapter(chapterPath); + } + if (textJson.captcha) { + throw new Error( + `Failed to bypass turnstile captcha (read in webview until it stops ig)`, + ); + } + } let html = text .replace(/cls[a-f0-9]+/g, '') .split('') From 32efba96cf4d161ee8031c419cc9bc5847ffb6ad Mon Sep 17 00:00:00 2001 From: Soopyboo32 <49228220+Soopyboo32@users.noreply.github.com> Date: Mon, 27 Oct 2025 20:08:04 +0800 Subject: [PATCH 11/13] Fix updatedNonce check --- plugins/english/StorySeedling.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/english/StorySeedling.ts b/plugins/english/StorySeedling.ts index 8dd13d02e..0d1ecb643 100644 --- a/plugins/english/StorySeedling.ts +++ b/plugins/english/StorySeedling.ts @@ -170,7 +170,7 @@ class StorySeedlingPlugin implements Plugin.PluginBase { } async parseChapter(chapterPath: string): Promise { - const updatedNonce = !!this.nonce; + const updatedNonce = !this.nonce; if (!this.nonce) await this.updateNonce(chapterPath); const text = await fetchApi(this.site + chapterPath + '/content', { method: 'POST', From 583314ff8a8d62486c3d8ef0c85d9757c531a968 Mon Sep 17 00:00:00 2001 From: Soopyboo32 <49228220+Soopyboo32@users.noreply.github.com> Date: Wed, 29 Oct 2025 03:08:06 +0800 Subject: [PATCH 12/13] Compression headers should only be forwarded by proxy's that keep the content compressed --- proxy.ts | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/proxy.ts b/proxy.ts index c699f12cb..7a62431a0 100644 --- a/proxy.ts +++ b/proxy.ts @@ -19,13 +19,7 @@ const settings: ServerSetting = { 'sec-fetch-dest', 'pragma', ], - disAllowResponseHeaders: [ - 'link', - 'set-cookie', - 'set-cookie2', - // 'content-encoding', - // 'content-length', - ], + disAllowResponseHeaders: ['link', 'set-cookie', 'set-cookie2'], useUserAgent: true, }; @@ -171,7 +165,11 @@ const proxyRequest: Connect.SimpleHandleFunction = (req, res) => { .then(([res2, text]) => { res.statusCode = res2.status; res2.headers.forEach((val, key) => { - if (!settings.disAllowResponseHeaders.includes(key)) { + if ( + !settings.disAllowResponseHeaders.includes(key) && + key !== 'content-encoding' && + key !== 'content-length' + ) { res.setHeader(key, val); } }); From 1b22451212d8e980b6f5f5418ea650ea022860b7 Mon Sep 17 00:00:00 2001 From: Soopyboo32 <49228220+Soopyboo32@users.noreply.github.com> Date: Sun, 21 Dec 2025 22:53:59 +0800 Subject: [PATCH 13/13] Revert index.ts change --- plugins/index.ts | 426 +++++++++++++++++++++++------------------------ 1 file changed, 213 insertions(+), 213 deletions(-) diff --git a/plugins/index.ts b/plugins/index.ts index c107553ef..1497bd358 100644 --- a/plugins/index.ts +++ b/plugins/index.ts @@ -1,250 +1,250 @@ import { Plugin } from '@/types/plugin'; import p_0 from '@plugins/arabic/ArNovel[madara]'; import p_1 from '@plugins/arabic/Azora[madara]'; -import p_2 from '@plugins/arabic/dilartube'; -import p_3 from '@plugins/arabic/HizoManga[madara]'; -import p_4 from '@plugins/arabic/KolNovel[lightnovelwp]'; -import p_5 from '@plugins/arabic/Novel4Up[madara]'; -import p_6 from '@plugins/arabic/NovelsParadise[lightnovelwp]'; -import p_7 from '@plugins/arabic/Olaoecyou[madara]'; -import p_8 from '@plugins/arabic/rewayatclub'; -import p_9 from '@plugins/arabic/Riwyat[madara]'; +import p_2 from '@plugins/arabic/HizoManga[madara]'; +import p_3 from '@plugins/arabic/KolNovel[lightnovelwp]'; +import p_4 from '@plugins/arabic/Novel4Up[madara]'; +import p_5 from '@plugins/arabic/NovelsParadise[lightnovelwp]'; +import p_6 from '@plugins/arabic/Olaoecyou[madara]'; +import p_7 from '@plugins/arabic/Riwyat[madara]'; +import p_8 from '@plugins/arabic/dilartube'; +import p_9 from '@plugins/arabic/rewayatclub'; import p_10 from '@plugins/arabic/sunovels'; import p_11 from '@plugins/chinese/69shu'; import p_12 from '@plugins/chinese/69xinshu'; -import p_13 from '@plugins/chinese/ixdzs8'; -import p_14 from '@plugins/chinese/linovel'; -import p_15 from '@plugins/chinese/linovelib'; -import p_16 from '@plugins/chinese/linovelib_tw'; -import p_17 from '@plugins/chinese/novel543'; -import p_18 from '@plugins/chinese/Quanben'; +import p_13 from '@plugins/chinese/Quanben'; +import p_14 from '@plugins/chinese/ixdzs8'; +import p_15 from '@plugins/chinese/linovel'; +import p_16 from '@plugins/chinese/linovelib'; +import p_17 from '@plugins/chinese/linovelib_tw'; +import p_18 from '@plugins/chinese/novel543'; import p_19 from '@plugins/english/AllNovelFull[readnovelfull]'; import p_20 from '@plugins/english/AllNovel[readnovelfull]'; -import p_21 from '@plugins/english/ao3'; -import p_22 from '@plugins/english/ArcaneTranslations[lightnovelwp]'; -import p_23 from '@plugins/english/BelleReservoir[madara]'; -import p_24 from '@plugins/english/bestlightnovel'; -import p_25 from '@plugins/english/BoxNovel[readnovelfull]'; -import p_26 from '@plugins/english/chrysanthemumgarden'; -import p_27 from '@plugins/english/CitrusAurora[madara]'; -import p_28 from '@plugins/english/CoralBoutique[madara]'; -import p_29 from '@plugins/english/CPUnovel[lightnovelwp]'; -import p_30 from '@plugins/english/DaoistQuest[fictioneer]'; -import p_31 from '@plugins/english/DaoNovel[madara]'; -import p_32 from '@plugins/english/DaoTranslate[lightnovelwp]'; -import p_33 from '@plugins/english/DearestRosalie[fictioneer]'; -import p_34 from '@plugins/english/divinedaolibrary'; -import p_35 from '@plugins/english/Dragonholic[madara]'; -import p_36 from '@plugins/english/DragonTea[madara]'; -import p_37 from '@plugins/english/dreambigtl'; -import p_38 from '@plugins/english/DuskBlossoms[madara]'; -import p_39 from '@plugins/english/earlynovel'; -import p_40 from '@plugins/english/ElloTL[lightnovelwp]'; -import p_41 from '@plugins/english/Eternalune[madara]'; -import p_42 from '@plugins/english/EtudeTranslations[madara]'; -import p_43 from '@plugins/english/FanNovel[readwn]'; -import p_44 from '@plugins/english/FansMTL[readwn]'; -import p_45 from '@plugins/english/FansTranslations[madara]'; -import p_46 from '@plugins/english/faqwikius'; -import p_47 from '@plugins/english/fenrirrealm'; -import p_48 from '@plugins/english/fictionzone'; -import p_49 from '@plugins/english/FirstKissNovel[madara]'; -import p_50 from '@plugins/english/Foxaholic[madara]'; -import p_51 from '@plugins/english/foxteller'; -import p_52 from '@plugins/english/FreeWebNovel[readnovelfull]'; -import p_53 from '@plugins/english/GalaxyTranslations[madara]'; -import p_54 from '@plugins/english/genesis'; -import p_55 from '@plugins/english/Guavaread[madara]'; -import p_56 from '@plugins/english/HiraethTranslation[madara]'; -import p_57 from '@plugins/english/HotNovelPub[hotnovelpub]'; -import p_58 from '@plugins/english/inkitt'; -import p_59 from '@plugins/english/Ippotranslations[lightnovelwp]'; -import p_60 from '@plugins/english/kdtnovels'; -import p_61 from '@plugins/english/KeopiTranslations[lightnovelwp]'; -import p_62 from '@plugins/english/KnoxT[lightnovelwp]'; -import p_63 from '@plugins/english/LazyGirlTranslations[lightnovelwp]'; -import p_64 from '@plugins/english/LibRead[readnovelfull]'; -import p_65 from '@plugins/english/LightNovelCave[lightnovelworld]'; -import p_66 from '@plugins/english/LightNovelHeaven[madara]'; -import p_67 from '@plugins/english/LightNovelPlus[readnovelfull]'; -import p_68 from '@plugins/english/lightnovelpub'; -import p_69 from '@plugins/english/LightNovelPubVip[lightnovelworld]'; -import p_70 from '@plugins/english/lightnoveltranslation'; -import p_71 from '@plugins/english/LightNovelUpdates[madara]'; -import p_72 from '@plugins/english/LightNovelWord[lightnovelworld]'; -import p_73 from '@plugins/english/LilyontheValley[fictioneer]'; -import p_74 from '@plugins/english/lnmtl'; -import p_75 from '@plugins/english/Ltnovel[readwn]'; -import p_76 from '@plugins/english/LunarLetters[madara]'; -import p_77 from '@plugins/english/Meownovel[madara]'; -import p_78 from '@plugins/english/MoonlightNovels[lightnovelwp]'; -import p_79 from '@plugins/english/MostNovel[madara]'; -import p_80 from '@plugins/english/MTLNovel[madara]'; -import p_81 from '@plugins/english/MTLNovel[mtlnovel]'; -import p_82 from '@plugins/english/mtlreader'; -import p_83 from '@plugins/english/mvlempyr'; -import p_84 from '@plugins/english/MysticalSeries[madara]'; -import p_85 from '@plugins/english/NeoSekaiTranslations[madara]'; -import p_86 from '@plugins/english/NitroManga[madara]'; -import p_87 from '@plugins/english/NobleMTL[lightnovelwp]'; -import p_88 from '@plugins/english/NoiceTranslations[madara]'; -import p_89 from '@plugins/english/NovelBin[readnovelfull]'; -import p_90 from '@plugins/english/novelbuddy'; -import p_91 from '@plugins/english/NovelCool[novelcool]'; -import p_92 from '@plugins/english/novelfire'; -import p_93 from '@plugins/english/NovelFull[readnovelfull]'; -import p_94 from '@plugins/english/novelhall'; -import p_95 from '@plugins/english/novelight'; -import p_96 from '@plugins/english/NovelLib[fictioneer]'; -import p_97 from '@plugins/english/NovelMultiverse[madara]'; -import p_98 from '@plugins/english/NovelOnline'; -import p_99 from '@plugins/english/NovelsKnight[lightnovelwp]'; -import p_100 from '@plugins/english/NovelTranslate[madara]'; -import p_101 from '@plugins/english/novelupdates'; -import p_102 from '@plugins/english/PandaMachineTranslations[lightnovelwp]'; -import p_103 from '@plugins/english/PastelTales[madara]'; -import p_104 from '@plugins/english/pawread'; -import p_105 from '@plugins/english/PenguinSquad[fictioneer]'; -import p_106 from '@plugins/english/Prizma[fictioneer]'; -import p_107 from '@plugins/english/rainofsnow'; -import p_108 from '@plugins/english/Ranobes[ranobes]'; -import p_109 from '@plugins/english/Ranovel[madara]'; -import p_110 from '@plugins/english/ReadFanfic[madara]'; -import p_111 from '@plugins/english/readfrom'; -import p_112 from '@plugins/english/readlitenovel'; -import p_113 from '@plugins/english/ReadNovelFull[readnovelfull]'; -import p_114 from '@plugins/english/reaperscans'; -import p_115 from '@plugins/english/relibrary'; -import p_116 from '@plugins/english/RequiemTranslations[lightnovelwp]'; -import p_117 from '@plugins/english/royalroad'; -import p_118 from '@plugins/english/SalmonLatte[madara]'; -import p_119 from '@plugins/english/scribblehub'; -import p_120 from '@plugins/english/SleepyTranslations[madara]'; -import p_121 from '@plugins/english/SonicMTL[madara]'; -import p_122 from '@plugins/english/SrankManga[madara]'; -import p_123 from '@plugins/english/StorySeedling'; -import p_124 from '@plugins/english/SweetEscape[madara]'; -import p_125 from '@plugins/english/SystemTranslation[lightnovelwp]'; -import p_126 from '@plugins/english/TranslatinOtaku[madara]'; -import p_127 from '@plugins/english/TranslationWeaver[lightnovelwp]'; -import p_128 from '@plugins/english/UniversalNovel[lightnovelwp]'; -import p_129 from '@plugins/english/VandyTranslate[lightnovelwp]'; -import p_130 from '@plugins/english/VioletLily[madara]'; -import p_131 from '@plugins/english/vynovel'; -import p_132 from '@plugins/english/webnovel'; -import p_133 from '@plugins/english/WebNovelLover[madara]'; -import p_134 from '@plugins/english/WebNovelPub[lightnovelworld]'; -import p_135 from '@plugins/english/WebNovelTranslation[madara]'; -import p_136 from '@plugins/english/WhiteMoonlightNovels[lightnovelwp]'; -import p_137 from '@plugins/english/WooksTeahouse[madara]'; -import p_138 from '@plugins/english/WordExcerpt[madara]'; -import p_139 from '@plugins/english/wtrlab'; -import p_140 from '@plugins/english/Wuxiabox[readwn]'; -import p_141 from '@plugins/english/Wuxiafox[readwn]'; -import p_142 from '@plugins/english/WuxiaSpace[readwn]'; -import p_143 from '@plugins/english/WuxiaV[readwn]'; -import p_144 from '@plugins/english/wuxiaworld'; -import p_145 from '@plugins/english/WuxiaWorldSite[madara]'; -import p_146 from '@plugins/english/ZetroTranslation[madara]'; -import p_147 from '@plugins/french/chireads'; -import p_148 from '@plugins/french/harkeneliwood'; -import p_149 from '@plugins/french/kisswood'; -import p_150 from '@plugins/french/LighNovelFR[lightnovelwp]'; -import p_151 from '@plugins/french/MassNovel[madara]'; -import p_152 from '@plugins/french/MTLNovel(FR)[mtlnovel]'; -import p_153 from '@plugins/french/noveldeglace'; -import p_154 from '@plugins/french/novhell'; -import p_155 from '@plugins/french/phenixscans'; -import p_156 from '@plugins/french/warriorlegendtrad'; -import p_157 from '@plugins/french/WorldNovel[madara]'; +import p_21 from '@plugins/english/ArcaneTranslations[lightnovelwp]'; +import p_22 from '@plugins/english/BelleReservoir[madara]'; +import p_23 from '@plugins/english/BoxNovel[readnovelfull]'; +import p_24 from '@plugins/english/CPUnovel[lightnovelwp]'; +import p_25 from '@plugins/english/CitrusAurora[madara]'; +import p_26 from '@plugins/english/CoralBoutique[madara]'; +import p_27 from '@plugins/english/DaoNovel[madara]'; +import p_28 from '@plugins/english/DaoTranslate[lightnovelwp]'; +import p_29 from '@plugins/english/DaoistQuest[fictioneer]'; +import p_30 from '@plugins/english/DearestRosalie[fictioneer]'; +import p_31 from '@plugins/english/DragonTea[madara]'; +import p_32 from '@plugins/english/Dragonholic[madara]'; +import p_33 from '@plugins/english/DuskBlossoms[madara]'; +import p_34 from '@plugins/english/ElloTL[lightnovelwp]'; +import p_35 from '@plugins/english/Eternalune[madara]'; +import p_36 from '@plugins/english/EtudeTranslations[madara]'; +import p_37 from '@plugins/english/FanNovel[readwn]'; +import p_38 from '@plugins/english/FansMTL[readwn]'; +import p_39 from '@plugins/english/FansTranslations[madara]'; +import p_40 from '@plugins/english/FirstKissNovel[madara]'; +import p_41 from '@plugins/english/Foxaholic[madara]'; +import p_42 from '@plugins/english/FreeWebNovel[readnovelfull]'; +import p_43 from '@plugins/english/GalaxyTranslations[madara]'; +import p_44 from '@plugins/english/Guavaread[madara]'; +import p_45 from '@plugins/english/HiraethTranslation[madara]'; +import p_46 from '@plugins/english/HotNovelPub[hotnovelpub]'; +import p_47 from '@plugins/english/Ippotranslations[lightnovelwp]'; +import p_48 from '@plugins/english/KeopiTranslations[lightnovelwp]'; +import p_49 from '@plugins/english/KnoxT[lightnovelwp]'; +import p_50 from '@plugins/english/LazyGirlTranslations[lightnovelwp]'; +import p_51 from '@plugins/english/LibRead[readnovelfull]'; +import p_52 from '@plugins/english/LightNovelCave[lightnovelworld]'; +import p_53 from '@plugins/english/LightNovelHeaven[madara]'; +import p_54 from '@plugins/english/LightNovelPlus[readnovelfull]'; +import p_55 from '@plugins/english/LightNovelPubVip[lightnovelworld]'; +import p_56 from '@plugins/english/LightNovelUpdates[madara]'; +import p_57 from '@plugins/english/LightNovelWord[lightnovelworld]'; +import p_58 from '@plugins/english/LilyontheValley[fictioneer]'; +import p_59 from '@plugins/english/Ltnovel[readwn]'; +import p_60 from '@plugins/english/LunarLetters[madara]'; +import p_61 from '@plugins/english/MTLNovel[madara]'; +import p_62 from '@plugins/english/MTLNovel[mtlnovel]'; +import p_63 from '@plugins/english/Meownovel[madara]'; +import p_64 from '@plugins/english/MoonlightNovels[lightnovelwp]'; +import p_65 from '@plugins/english/MostNovel[madara]'; +import p_66 from '@plugins/english/MysticalSeries[madara]'; +import p_67 from '@plugins/english/NeoSekaiTranslations[madara]'; +import p_68 from '@plugins/english/NitroManga[madara]'; +import p_69 from '@plugins/english/NobleMTL[lightnovelwp]'; +import p_70 from '@plugins/english/NoiceTranslations[madara]'; +import p_71 from '@plugins/english/NovelBin[readnovelfull]'; +import p_72 from '@plugins/english/NovelCool[novelcool]'; +import p_73 from '@plugins/english/NovelFull[readnovelfull]'; +import p_74 from '@plugins/english/NovelLib[fictioneer]'; +import p_75 from '@plugins/english/NovelMultiverse[madara]'; +import p_76 from '@plugins/english/NovelOnline'; +import p_77 from '@plugins/english/NovelTranslate[madara]'; +import p_78 from '@plugins/english/NovelsKnight[lightnovelwp]'; +import p_79 from '@plugins/english/PandaMachineTranslations[lightnovelwp]'; +import p_80 from '@plugins/english/PastelTales[madara]'; +import p_81 from '@plugins/english/PenguinSquad[fictioneer]'; +import p_82 from '@plugins/english/Prizma[fictioneer]'; +import p_83 from '@plugins/english/Ranobes[ranobes]'; +import p_84 from '@plugins/english/Ranovel[madara]'; +import p_85 from '@plugins/english/ReadFanfic[madara]'; +import p_86 from '@plugins/english/ReadNovelFull[readnovelfull]'; +import p_87 from '@plugins/english/RequiemTranslations[lightnovelwp]'; +import p_88 from '@plugins/english/SalmonLatte[madara]'; +import p_89 from '@plugins/english/SleepyTranslations[madara]'; +import p_90 from '@plugins/english/SonicMTL[madara]'; +import p_91 from '@plugins/english/SrankManga[madara]'; +import p_92 from '@plugins/english/StorySeedling'; +import p_93 from '@plugins/english/SweetEscape[madara]'; +import p_94 from '@plugins/english/SystemTranslation[lightnovelwp]'; +import p_95 from '@plugins/english/TranslatinOtaku[madara]'; +import p_96 from '@plugins/english/TranslationWeaver[lightnovelwp]'; +import p_97 from '@plugins/english/UniversalNovel[lightnovelwp]'; +import p_98 from '@plugins/english/VandyTranslate[lightnovelwp]'; +import p_99 from '@plugins/english/VioletLily[madara]'; +import p_100 from '@plugins/english/WebNovelLover[madara]'; +import p_101 from '@plugins/english/WebNovelPub[lightnovelworld]'; +import p_102 from '@plugins/english/WebNovelTranslation[madara]'; +import p_103 from '@plugins/english/WhiteMoonlightNovels[lightnovelwp]'; +import p_104 from '@plugins/english/WooksTeahouse[madara]'; +import p_105 from '@plugins/english/WordExcerpt[madara]'; +import p_106 from '@plugins/english/WuxiaSpace[readwn]'; +import p_107 from '@plugins/english/WuxiaV[readwn]'; +import p_108 from '@plugins/english/WuxiaWorldSite[madara]'; +import p_109 from '@plugins/english/Wuxiabox[readwn]'; +import p_110 from '@plugins/english/Wuxiafox[readwn]'; +import p_111 from '@plugins/english/ZetroTranslation[madara]'; +import p_112 from '@plugins/english/ao3'; +import p_113 from '@plugins/english/bestlightnovel'; +import p_114 from '@plugins/english/chrysanthemumgarden'; +import p_115 from '@plugins/english/divinedaolibrary'; +import p_116 from '@plugins/english/dreambigtl'; +import p_117 from '@plugins/english/earlynovel'; +import p_118 from '@plugins/english/faqwikius'; +import p_119 from '@plugins/english/fenrirrealm'; +import p_120 from '@plugins/english/fictionzone'; +import p_121 from '@plugins/english/foxteller'; +import p_122 from '@plugins/english/genesis'; +import p_123 from '@plugins/english/inkitt'; +import p_124 from '@plugins/english/kdtnovels'; +import p_125 from '@plugins/english/lightnovelpub'; +import p_126 from '@plugins/english/lightnoveltranslation'; +import p_127 from '@plugins/english/lnmtl'; +import p_128 from '@plugins/english/mtlreader'; +import p_129 from '@plugins/english/mvlempyr'; +import p_130 from '@plugins/english/novelbuddy'; +import p_131 from '@plugins/english/novelfire'; +import p_132 from '@plugins/english/novelhall'; +import p_133 from '@plugins/english/novelight'; +import p_134 from '@plugins/english/novelupdates'; +import p_135 from '@plugins/english/pawread'; +import p_136 from '@plugins/english/rainofsnow'; +import p_137 from '@plugins/english/readfrom'; +import p_138 from '@plugins/english/readlitenovel'; +import p_139 from '@plugins/english/reaperscans'; +import p_140 from '@plugins/english/relibrary'; +import p_141 from '@plugins/english/royalroad'; +import p_142 from '@plugins/english/scribblehub'; +import p_143 from '@plugins/english/vynovel'; +import p_144 from '@plugins/english/webnovel'; +import p_145 from '@plugins/english/wtrlab'; +import p_146 from '@plugins/english/wuxiaworld'; +import p_147 from '@plugins/french/LighNovelFR[lightnovelwp]'; +import p_148 from '@plugins/french/MTLNovel(FR)[mtlnovel]'; +import p_149 from '@plugins/french/MassNovel[madara]'; +import p_150 from '@plugins/french/WorldNovel[madara]'; +import p_151 from '@plugins/french/chireads'; +import p_152 from '@plugins/french/harkeneliwood'; +import p_153 from '@plugins/french/kisswood'; +import p_154 from '@plugins/french/noveldeglace'; +import p_155 from '@plugins/french/novhell'; +import p_156 from '@plugins/french/phenixscans'; +import p_157 from '@plugins/french/warriorlegendtrad'; import p_158 from '@plugins/french/wuxialnscantrad'; import p_159 from '@plugins/french/xiaowaz'; import p_160 from '@plugins/indonesian/BacaLightNovel[lightnovelwp]'; -import p_161 from '@plugins/indonesian/indowebnovel'; +import p_161 from '@plugins/indonesian/MTLNovel(ID)[mtlnovel]'; import p_162 from '@plugins/indonesian/MeioNovel[madara]'; -import p_163 from '@plugins/indonesian/MTLNovel(ID)[mtlnovel]'; -import p_164 from '@plugins/indonesian/NovelBookID[madara]'; -import p_165 from '@plugins/indonesian/novelringan'; -import p_166 from '@plugins/indonesian/Risenovel[madara]'; -import p_167 from '@plugins/indonesian/sakuranovel'; -import p_168 from '@plugins/indonesian/SekteNovel[lightnovelwp]'; -import p_169 from '@plugins/indonesian/WBNovel[madara]'; -import p_170 from '@plugins/japanese/kakuyomu'; -import p_171 from '@plugins/japanese/Syosetu'; +import p_163 from '@plugins/indonesian/NovelBookID[madara]'; +import p_164 from '@plugins/indonesian/Risenovel[madara]'; +import p_165 from '@plugins/indonesian/SekteNovel[lightnovelwp]'; +import p_166 from '@plugins/indonesian/WBNovel[madara]'; +import p_167 from '@plugins/indonesian/indowebnovel'; +import p_168 from '@plugins/indonesian/novelringan'; +import p_169 from '@plugins/indonesian/sakuranovel'; +import p_170 from '@plugins/japanese/Syosetu'; +import p_171 from '@plugins/japanese/kakuyomu'; import p_172 from '@plugins/korean/Agitoon'; import p_173 from '@plugins/korean/FortuneEternal[madara]'; import p_174 from '@plugins/multi/komga'; import p_175 from '@plugins/polish/novelki'; import p_176 from '@plugins/portuguese/BetterNovels[lightnovelwp]'; -import p_177 from '@plugins/portuguese/blogdoamonnovels'; -import p_178 from '@plugins/portuguese/CentralNovel[lightnovelwp]'; -import p_179 from '@plugins/portuguese/Kiniga[madara]'; -import p_180 from '@plugins/portuguese/LaNovels[hotnovelpub]'; -import p_181 from '@plugins/portuguese/LightNovelBrasil[lightnovelwp]'; -import p_182 from '@plugins/portuguese/MTLNovel(PT)[mtlnovel]'; +import p_177 from '@plugins/portuguese/CentralNovel[lightnovelwp]'; +import p_178 from '@plugins/portuguese/Kiniga[madara]'; +import p_179 from '@plugins/portuguese/LaNovels[hotnovelpub]'; +import p_180 from '@plugins/portuguese/LightNovelBrasil[lightnovelwp]'; +import p_181 from '@plugins/portuguese/MTLNovel(PT)[mtlnovel]'; +import p_182 from '@plugins/portuguese/blogdoamonnovels'; import p_183 from '@plugins/portuguese/novelmania'; import p_184 from '@plugins/portuguese/tsundoku'; -import p_185 from '@plugins/russian/authortoday'; -import p_186 from '@plugins/russian/Bookhamster[ifreedom]'; -import p_187 from '@plugins/russian/bookriver'; -import p_188 from '@plugins/russian/Erolate[rulate]'; -import p_189 from '@plugins/russian/EzNovels[hotnovelpub]'; -import p_190 from '@plugins/russian/ficbook'; -import p_191 from '@plugins/russian/jaomix'; -import p_192 from '@plugins/russian/LitSpace'; -import p_193 from '@plugins/russian/MTLNovel(RU)[mtlnovel]'; -import p_194 from '@plugins/russian/neobook'; -import p_195 from '@plugins/russian/NovelCool(RU)[novelcool]'; -import p_196 from '@plugins/russian/novelOvh'; -import p_197 from '@plugins/russian/novelTL'; -import p_198 from '@plugins/russian/ranobehub'; -import p_199 from '@plugins/russian/ranobelib'; -import p_200 from '@plugins/russian/ranoberf'; -import p_201 from '@plugins/russian/Ranobes(RU)[ranobes]'; -import p_202 from '@plugins/russian/renovels'; -import p_203 from '@plugins/russian/Rulate[rulate]'; +import p_185 from '@plugins/russian/Bookhamster[ifreedom]'; +import p_186 from '@plugins/russian/Erolate[rulate]'; +import p_187 from '@plugins/russian/EzNovels[hotnovelpub]'; +import p_188 from '@plugins/russian/LitSpace'; +import p_189 from '@plugins/russian/MTLNovel(RU)[mtlnovel]'; +import p_190 from '@plugins/russian/NovelCool(RU)[novelcool]'; +import p_191 from '@plugins/russian/Ranobes(RU)[ranobes]'; +import p_192 from '@plugins/russian/Rulate[rulate]'; +import p_193 from '@plugins/russian/authortoday'; +import p_194 from '@plugins/russian/bookriver'; +import p_195 from '@plugins/russian/ficbook'; +import p_196 from '@plugins/russian/jaomix'; +import p_197 from '@plugins/russian/neobook'; +import p_198 from '@plugins/russian/novelOvh'; +import p_199 from '@plugins/russian/novelTL'; +import p_200 from '@plugins/russian/ranobehub'; +import p_201 from '@plugins/russian/ranobelib'; +import p_202 from '@plugins/russian/ranoberf'; +import p_203 from '@plugins/russian/renovels'; import p_204 from '@plugins/russian/ruvers'; import p_205 from '@plugins/russian/topliba'; import p_206 from '@plugins/russian/zelluloza'; import p_207 from '@plugins/russian/СвободныйМирРанобэ[ifreedom]'; import p_208 from '@plugins/spanish/AllNovelRead[lightnovelwp]'; import p_209 from '@plugins/spanish/AnimesHoy12[madara]'; -import p_210 from '@plugins/spanish/hasutl'; -import p_211 from '@plugins/spanish/LightNovelDaily[hotnovelpub]'; -import p_212 from '@plugins/spanish/MTLNovel(ES)[mtlnovel]'; -import p_213 from '@plugins/spanish/novelasligera'; -import p_214 from '@plugins/spanish/novelawuxia'; -import p_215 from '@plugins/spanish/oasistranslations'; -import p_216 from '@plugins/spanish/PanchoTranslations[madara]'; -import p_217 from '@plugins/spanish/skynovels'; -import p_218 from '@plugins/spanish/TC&Sega[lightnovelwp]'; -import p_219 from '@plugins/spanish/TraduccionesAmistosas[madara]'; +import p_210 from '@plugins/spanish/LightNovelDaily[hotnovelpub]'; +import p_211 from '@plugins/spanish/MTLNovel(ES)[mtlnovel]'; +import p_212 from '@plugins/spanish/PanchoTranslations[madara]'; +import p_213 from '@plugins/spanish/TC&Sega[lightnovelwp]'; +import p_214 from '@plugins/spanish/TraduccionesAmistosas[madara]'; +import p_215 from '@plugins/spanish/hasutl'; +import p_216 from '@plugins/spanish/novelasligera'; +import p_217 from '@plugins/spanish/novelawuxia'; +import p_218 from '@plugins/spanish/oasistranslations'; +import p_219 from '@plugins/spanish/skynovels'; import p_220 from '@plugins/spanish/tunovelaligera'; import p_221 from '@plugins/spanish/yukitls'; import p_222 from '@plugins/thai/NovelLucky[madara]'; import p_223 from '@plugins/thai/NovelPDF[madara]'; import p_224 from '@plugins/turkish/ArazNovel[madara]'; import p_225 from '@plugins/turkish/EKTAPLAR[madara]'; -import p_226 from '@plugins/turkish/epiknovel'; -import p_227 from '@plugins/turkish/kakikata[madara]'; -import p_228 from '@plugins/turkish/KodeksLibrary[lightnovelwp]'; -import p_229 from '@plugins/turkish/MangaTR'; -import p_230 from '@plugins/turkish/NABSCANS[madara]'; -import p_231 from '@plugins/turkish/Namevt[lightnovelwp]'; -import p_232 from '@plugins/turkish/Noveloku[madara]'; -import p_233 from '@plugins/turkish/NovelTR[lightnovelwp]'; -import p_234 from '@plugins/turkish/RagnarScans[madara]'; -import p_235 from '@plugins/turkish/ThNovels[hotnovelpub]'; -import p_236 from '@plugins/turkish/TurkceLightNovels[madara]'; -import p_237 from '@plugins/turkish/WebNovelOku[madara]'; +import p_226 from '@plugins/turkish/KodeksLibrary[lightnovelwp]'; +import p_227 from '@plugins/turkish/MangaTR'; +import p_228 from '@plugins/turkish/NABSCANS[madara]'; +import p_229 from '@plugins/turkish/Namevt[lightnovelwp]'; +import p_230 from '@plugins/turkish/NovelTR[lightnovelwp]'; +import p_231 from '@plugins/turkish/Noveloku[madara]'; +import p_232 from '@plugins/turkish/RagnarScans[madara]'; +import p_233 from '@plugins/turkish/ThNovels[hotnovelpub]'; +import p_234 from '@plugins/turkish/TurkceLightNovels[madara]'; +import p_235 from '@plugins/turkish/WebNovelOku[madara]'; +import p_236 from '@plugins/turkish/epiknovel'; +import p_237 from '@plugins/turkish/kakikata[madara]'; import p_238 from '@plugins/ukrainian/bakainua'; import p_239 from '@plugins/ukrainian/smakolykytl'; import p_240 from '@plugins/ukrainian/uaranobeclub'; -import p_241 from '@plugins/vietnamese/lightnovelvn'; -import p_242 from '@plugins/vietnamese/LNHako'; -import p_243 from '@plugins/vietnamese/nettruyen'; -import p_244 from '@plugins/vietnamese/truyenchu'; -import p_245 from '@plugins/vietnamese/Truyenconect'; +import p_241 from '@plugins/vietnamese/LNHako'; +import p_242 from '@plugins/vietnamese/Truyenconect'; +import p_243 from '@plugins/vietnamese/lightnovelvn'; +import p_244 from '@plugins/vietnamese/nettruyen'; +import p_245 from '@plugins/vietnamese/truyenchu'; import p_246 from '@plugins/vietnamese/truyenfull'; const PLUGINS: Plugin.PluginBase[] = [