@@ -11,7 +11,7 @@ class AuthorToday implements Plugin.PluginBase {
|
||||
name = 'Автор Тудей';
|
||||
icon = 'src/ru/authortoday/icon.png';
|
||||
site = 'https://author.today';
|
||||
version = '1.2.0';
|
||||
version = '1.2.1';
|
||||
|
||||
private userAgent =
|
||||
'Mozilla/5.0 (Android 15; Mobile; rv:138.0) Gecko/138.0 Firefox/138.0';
|
||||
@@ -140,7 +140,11 @@ class AuthorToday implements Plugin.PluginBase {
|
||||
isParsingGenres = true;
|
||||
if (novel.genres) novel.genres = '';
|
||||
}
|
||||
if (name === 'label' && attribs['class'].includes('label')) {
|
||||
if (
|
||||
name === 'label' &&
|
||||
attribs['class'] &&
|
||||
attribs['class'].includes('label')
|
||||
) {
|
||||
isParsingStatus = true;
|
||||
}
|
||||
if (name === 'li' && attribs['class'] === 'clearfix') {
|
||||
|
||||
@@ -18,9 +18,16 @@ class RLIB implements Plugin.PluginBase {
|
||||
name = 'RanobeLib';
|
||||
site = 'https://ranobelib.me';
|
||||
apiSite = 'https://api.cdnlibs.org/api/manga/';
|
||||
version = '2.2.0';
|
||||
version = '2.2.1';
|
||||
icon = 'src/ru/ranobelib/icon.png';
|
||||
webStorageUtilized = true;
|
||||
imageRequestInit = {
|
||||
headers: {
|
||||
Accept:
|
||||
'image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8',
|
||||
Referer: this.site,
|
||||
},
|
||||
};
|
||||
|
||||
async popularNovels(
|
||||
pageNo: number,
|
||||
@@ -95,7 +102,7 @@ class RLIB implements Plugin.PluginBase {
|
||||
async parseNovel(novelPath: string): Promise<Plugin.SourceNovel> {
|
||||
const { data }: { data: DataClass } = await fetchApi(
|
||||
`${this.apiSite}${novelPath}?fields[]=summary&fields[]=genres&fields[]=tags&fields[]=teams&fields[]=authors&fields[]=status_id&fields[]=artists`,
|
||||
{ headers: this.user?.token },
|
||||
{ headers: { ...this.user?.token, 'Site-Id': '3' } },
|
||||
).then(res => res.json());
|
||||
|
||||
const novel: Plugin.SourceNovel = {
|
||||
|
||||
Reference in New Issue
Block a user