mirror of
https://github.com/kodjodevf/mangayomi-extensions.git
synced 2026-02-14 10:51:17 +00:00
Refactor
This commit is contained in:
@@ -2,12 +2,14 @@ import 'package:mangayomi/bridge_lib.dart';
|
||||
import 'dart:convert';
|
||||
|
||||
class HeanCms extends MProvider {
|
||||
HeanCms();
|
||||
HeanCms({required this.source});
|
||||
|
||||
final Client client = Client();
|
||||
MSource source;
|
||||
|
||||
final Client client = Client(source);
|
||||
|
||||
@override
|
||||
Future<MPages> getPopular(MSource source, int page) async {
|
||||
Future<MPages> getPopular(int page) async {
|
||||
final headers = getHeader(source.baseUrl);
|
||||
String res = "";
|
||||
if (!useNewQueryEndpoint(source.name)) {
|
||||
@@ -28,11 +30,11 @@ class HeanCms extends MProvider {
|
||||
res =
|
||||
(await client.get(Uri.parse(newEndpointUrl), headers: headers)).body;
|
||||
}
|
||||
return mMangaRes(res, source);
|
||||
return mMangaRes(res);
|
||||
}
|
||||
|
||||
@override
|
||||
Future<MPages> getLatestUpdates(MSource source, int page) async {
|
||||
Future<MPages> getLatestUpdates(int page) async {
|
||||
final headers = getHeader(source.baseUrl);
|
||||
String res = "";
|
||||
if (!useNewQueryEndpoint(source.name)) {
|
||||
@@ -52,12 +54,11 @@ class HeanCms extends MProvider {
|
||||
res =
|
||||
(await client.get(Uri.parse(newEndpointUrl), headers: headers)).body;
|
||||
}
|
||||
return mMangaRes(res, source);
|
||||
return mMangaRes(res);
|
||||
}
|
||||
|
||||
@override
|
||||
Future<MPages> search(
|
||||
MSource source, String query, int page, FilterList filterList) async {
|
||||
Future<MPages> search(String query, int page, FilterList filterList) async {
|
||||
final headers = getHeader(source.baseUrl);
|
||||
String res = "";
|
||||
if (!useNewQueryEndpoint(source.source)) {
|
||||
@@ -71,11 +72,11 @@ class HeanCms extends MProvider {
|
||||
res =
|
||||
(await client.get(Uri.parse(newEndpointUrl), headers: headers)).body;
|
||||
}
|
||||
return mMangaRes(res, source);
|
||||
return mMangaRes(res);
|
||||
}
|
||||
|
||||
@override
|
||||
Future<MManga> getDetail(MSource source, String url) async {
|
||||
Future<MManga> getDetail(String url) async {
|
||||
MManga manga = MManga();
|
||||
String currentSlug = substringAfterLast(url, "/");
|
||||
final headers = getHeader(source.baseUrl);
|
||||
@@ -131,7 +132,7 @@ class HeanCms extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
Future<List<String>> getPageList(MSource source, String url) async {
|
||||
Future<List<String>> getPageList(String url) async {
|
||||
final headers = getHeader(source.baseUrl);
|
||||
|
||||
String res = "".toString();
|
||||
@@ -171,7 +172,7 @@ class HeanCms extends MProvider {
|
||||
return pageUrls;
|
||||
}
|
||||
|
||||
MPages mMangaRes(String res, MSource source) {
|
||||
MPages mMangaRes(String res) {
|
||||
bool hasNextPage = true;
|
||||
List<MManga> mangaList = [];
|
||||
List<String> names = [];
|
||||
@@ -240,6 +241,6 @@ Map<String, String> getHeader(String url) {
|
||||
return headers;
|
||||
}
|
||||
|
||||
HeanCms main() {
|
||||
return HeanCms();
|
||||
HeanCms main(MSource source) {
|
||||
return HeanCms(source: source);
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@ import 'src/yugenmangas/yugenmangas.dart';
|
||||
import 'src/omegascans/omegascans.dart';
|
||||
import 'src/perfscan/perfscan.dart';
|
||||
|
||||
const heancmsVersion = "0.0.65";
|
||||
const heancmsVersion = "0.0.7";
|
||||
const heancmsSourceCodeUrl =
|
||||
"https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/manga/multisrc/heancms/heancms.dart";
|
||||
|
||||
|
||||
@@ -2,12 +2,14 @@ import 'package:mangayomi/bridge_lib.dart';
|
||||
import 'dart:convert';
|
||||
|
||||
class Madara extends MProvider {
|
||||
Madara();
|
||||
Madara({required this.source});
|
||||
|
||||
final Client client = Client();
|
||||
MSource source;
|
||||
|
||||
final Client client = Client(source);
|
||||
|
||||
@override
|
||||
Future<MPages> getPopular(MSource source, int page) async {
|
||||
Future<MPages> getPopular(int page) async {
|
||||
final res = (await client.get(
|
||||
Uri.parse("${source.baseUrl}/manga/page/$page/?m_orderby=views")))
|
||||
.body;
|
||||
@@ -16,7 +18,7 @@ class Madara extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
Future<MPages> getLatestUpdates(MSource source, int page) async {
|
||||
Future<MPages> getLatestUpdates(int page) async {
|
||||
final res = (await client.get(
|
||||
Uri.parse("${source.baseUrl}/manga/page/$page/?m_orderby=latest")))
|
||||
.body;
|
||||
@@ -25,8 +27,7 @@ class Madara extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
Future<MPages> search(
|
||||
MSource source, String query, int page, FilterList filterList) async {
|
||||
Future<MPages> search(String query, int page, FilterList filterList) async {
|
||||
final filters = filterList.filters;
|
||||
|
||||
String url = "${source.baseUrl}/?s=$query&post_type=wp-manga";
|
||||
@@ -77,7 +78,7 @@ class Madara extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
Future<MManga> getDetail(MSource source, String url) async {
|
||||
Future<MManga> getDetail(String url) async {
|
||||
final statusList = [
|
||||
{
|
||||
"OnGoing": 0,
|
||||
@@ -248,7 +249,7 @@ class Madara extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
Future<List<String>> getPageList(MSource source, String url) async {
|
||||
Future<List<String>> getPageList(String url) async {
|
||||
final res = (await client.get(Uri.parse(url))).body;
|
||||
final document = parseHtml(res);
|
||||
final pageElement = document.selectFirst(
|
||||
@@ -298,7 +299,7 @@ class Madara extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
List<dynamic> getFilterList(MSource source) {
|
||||
List<dynamic> getFilterList() {
|
||||
return [
|
||||
TextFilter("AuthorFilter", "Author"),
|
||||
TextFilter("ArtistFilter", "Artist"),
|
||||
@@ -334,6 +335,6 @@ class Madara extends MProvider {
|
||||
}
|
||||
}
|
||||
|
||||
Madara main() {
|
||||
return Madara();
|
||||
Madara main(MSource source) {
|
||||
return Madara(source: source);
|
||||
}
|
||||
|
||||
@@ -164,7 +164,7 @@ import 'src/comicarab/comicarab.dart';
|
||||
import 'src/manga3asq/manga3asq.dart';
|
||||
import 'src/bakamh/bakamh.dart';
|
||||
|
||||
const madaraVersion = "0.0.8";
|
||||
const madaraVersion = "0.0.85";
|
||||
const madaraSourceCodeUrl =
|
||||
"https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/manga/multisrc/madara/madara.dart";
|
||||
|
||||
|
||||
@@ -1,11 +1,14 @@
|
||||
import 'package:mangayomi/bridge_lib.dart';
|
||||
class MangaBox extends MProvider {
|
||||
MangaBox();
|
||||
|
||||
final Client client = Client();
|
||||
class MangaBox extends MProvider {
|
||||
MangaBox({required this.source});
|
||||
|
||||
MSource source;
|
||||
|
||||
final Client client = Client(source);
|
||||
|
||||
@override
|
||||
Future<MPages> getPopular(MSource source, int page) async {
|
||||
Future<MPages> getPopular(int page) async {
|
||||
final res = (await client.get(Uri.parse(
|
||||
"${source.baseUrl}/${popularUrlPath(source.name, page)}")))
|
||||
.body;
|
||||
@@ -13,7 +16,7 @@ class MangaBox extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
Future<MPages> getLatestUpdates(MSource source, int page) async {
|
||||
Future<MPages> getLatestUpdates(int page) async {
|
||||
final res = (await client.get(
|
||||
Uri.parse("${source.baseUrl}/${latestUrlPath(source.name, page)}")))
|
||||
.body;
|
||||
@@ -21,8 +24,7 @@ class MangaBox extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
Future<MPages> search(
|
||||
MSource source, String query, int page, FilterList filterList) async {
|
||||
Future<MPages> search(String query, int page, FilterList filterList) async {
|
||||
final filters = filterList.filters;
|
||||
|
||||
String url = "";
|
||||
@@ -118,7 +120,7 @@ class MangaBox extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
Future<MManga> getDetail(MSource source, String url) async {
|
||||
Future<MManga> getDetail(String url) async {
|
||||
final statusList = [
|
||||
{"Ongoing": 0, "Completed": 1}
|
||||
];
|
||||
@@ -199,7 +201,7 @@ class MangaBox extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
Future<List<String>> getPageList(MSource source, String url) async {
|
||||
Future<List<String>> getPageList(String url) async {
|
||||
final res = (await client.get(Uri.parse(url))).body;
|
||||
List<String> pageUrls = [];
|
||||
final urls = xpath(res,
|
||||
@@ -297,7 +299,7 @@ class MangaBox extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
List<dynamic> getFilterList(MSource source) {
|
||||
List<dynamic> getFilterList() {
|
||||
if (source.name == "Mangairo") {
|
||||
return [];
|
||||
}
|
||||
@@ -422,6 +424,6 @@ Map<String, String> getHeader(String url) {
|
||||
return headers;
|
||||
}
|
||||
|
||||
MangaBox main() {
|
||||
return MangaBox();
|
||||
MangaBox main(MSource source) {
|
||||
return MangaBox(source: source);
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@ import 'src/mangairo/mangaeiro.dart';
|
||||
import 'src/mangakakalot/mangakakalot.dart';
|
||||
import 'src/manganato/manganato.dart';
|
||||
|
||||
const mangaboxVersion = "0.0.25";
|
||||
const mangaboxVersion = "0.0.3";
|
||||
const mangaboxSourceCodeUrl =
|
||||
"https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/manga/multisrc/mangabox/mangabox.dart";
|
||||
|
||||
|
||||
@@ -2,12 +2,14 @@ import 'package:mangayomi/bridge_lib.dart';
|
||||
import 'dart:convert';
|
||||
|
||||
class MangaReader extends MProvider {
|
||||
MangaReader();
|
||||
MangaReader({required this.source});
|
||||
|
||||
final Client client = Client();
|
||||
MSource source;
|
||||
|
||||
final Client client = Client(source);
|
||||
|
||||
@override
|
||||
Future<MPages> getPopular(MSource source, int page) async {
|
||||
Future<MPages> getPopular(int page) async {
|
||||
final res = (await client.get(Uri.parse(
|
||||
"${source.baseUrl}${getMangaUrlDirectory(source.name)}/?page=$page&order=popular")))
|
||||
.body;
|
||||
@@ -15,7 +17,7 @@ class MangaReader extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
Future<MPages> getLatestUpdates(MSource source, int page) async {
|
||||
Future<MPages> getLatestUpdates(int page) async {
|
||||
final res = (await client.get(Uri.parse(
|
||||
"${source.baseUrl}${getMangaUrlDirectory(source.name)}/?page=$page&order=update")))
|
||||
.body;
|
||||
@@ -23,8 +25,7 @@ class MangaReader extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
Future<MPages> search(
|
||||
MSource source, String query, int page, FilterList filterList) async {
|
||||
Future<MPages> search(String query, int page, FilterList filterList) async {
|
||||
final filters = filterList.filters;
|
||||
|
||||
String url =
|
||||
@@ -71,7 +72,7 @@ class MangaReader extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
Future<MManga> getDetail(MSource source, String url) async {
|
||||
Future<MManga> getDetail(String url) async {
|
||||
final statusList = [
|
||||
{
|
||||
"مستمرة": 0,
|
||||
@@ -188,7 +189,7 @@ class MangaReader extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
Future<List<String>> getPageList(MSource source, String url) async {
|
||||
Future<List<String>> getPageList(String url) async {
|
||||
url = getUrlWithoutDomain(url);
|
||||
final res = (await client.get(Uri.parse('${source.baseUrl}$url'))).body;
|
||||
|
||||
@@ -251,7 +252,7 @@ class MangaReader extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
List<dynamic> getFilterList(MSource source) {
|
||||
List<dynamic> getFilterList() {
|
||||
return [
|
||||
SeparatorFilter(),
|
||||
TextFilter("AuthorFilter", "Author"),
|
||||
@@ -316,6 +317,6 @@ class MangaReader extends MProvider {
|
||||
}
|
||||
}
|
||||
|
||||
MangaReader main() {
|
||||
return MangaReader();
|
||||
MangaReader main(MSource source) {
|
||||
return MangaReader(source: source);
|
||||
}
|
||||
|
||||
@@ -39,7 +39,7 @@ import 'src/turktoon/turktoon.dart';
|
||||
import 'src/uzaymanga/uzaymanga.dart';
|
||||
import 'src/xcalibrscans/xcalibrscans.dart';
|
||||
|
||||
const mangareaderVersion = "0.0.8";
|
||||
const mangareaderVersion = "0.0.85";
|
||||
const mangareaderSourceCodeUrl =
|
||||
"https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/manga/multisrc/mangareader/mangareader.dart";
|
||||
|
||||
|
||||
@@ -2,12 +2,14 @@ import 'package:mangayomi/bridge_lib.dart';
|
||||
import 'dart:convert';
|
||||
|
||||
class MMRCMS extends MProvider {
|
||||
MMRCMS();
|
||||
MMRCMS({required this.source});
|
||||
|
||||
final Client client = Client();
|
||||
MSource source;
|
||||
|
||||
final Client client = Client(source);
|
||||
|
||||
@override
|
||||
Future<MPages> getPopular(MSource source, int page) async {
|
||||
Future<MPages> getPopular(int page) async {
|
||||
final res = (await client.get(Uri.parse(
|
||||
"${source.baseUrl}/filterList?page=$page&sortBy=views&asc=false")))
|
||||
.body;
|
||||
@@ -38,7 +40,7 @@ class MMRCMS extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
Future<MPages> getLatestUpdates(MSource source, int page) async {
|
||||
Future<MPages> getLatestUpdates(int page) async {
|
||||
final res = (await client
|
||||
.get(Uri.parse("${source.baseUrl}/latest-release?page=$page")))
|
||||
.body;
|
||||
@@ -69,8 +71,7 @@ class MMRCMS extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
Future<MPages> search(
|
||||
MSource source, String query, int page, FilterList filterList) async {
|
||||
Future<MPages> search(String query, int page, FilterList filterList) async {
|
||||
final filters = filterList.filters;
|
||||
String url = "";
|
||||
if (query.isNotEmpty) {
|
||||
@@ -152,7 +153,7 @@ class MMRCMS extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
Future<MManga> getDetail(MSource source, String url) async {
|
||||
Future<MManga> getDetail(String url) async {
|
||||
final statusList = [
|
||||
{
|
||||
"complete": 1,
|
||||
@@ -214,7 +215,7 @@ class MMRCMS extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
Future<List<String>> getPageList(MSource source, String url) async {
|
||||
Future<List<String>> getPageList(String url) async {
|
||||
final res = (await client.get(Uri.parse(url))).body;
|
||||
|
||||
List<String> pagesUrl = [];
|
||||
@@ -231,7 +232,7 @@ class MMRCMS extends MProvider {
|
||||
return pagesUrl;
|
||||
}
|
||||
|
||||
List<dynamic> getFilterList(MSource source) {
|
||||
List<dynamic> getFilterList() {
|
||||
return [
|
||||
HeaderFilter("NOTE: Ignored if using text search!"),
|
||||
SeparatorFilter(),
|
||||
@@ -317,6 +318,6 @@ class MMRCMS extends MProvider {
|
||||
}
|
||||
}
|
||||
|
||||
MMRCMS main() {
|
||||
return MMRCMS();
|
||||
MMRCMS main(MSource source) {
|
||||
return MMRCMS(source: source);
|
||||
}
|
||||
|
||||
@@ -8,7 +8,7 @@ import 'src/readcomicsonline/readcomicsonline.dart';
|
||||
import 'src/lelscanvf/lelscanvf.dart';
|
||||
import 'src/mangafr/mangafr.dart';
|
||||
|
||||
const mmrcmsVersion = "0.0.55";
|
||||
const mmrcmsVersion = "0.0.6";
|
||||
const mmrcmsSourceCodeUrl =
|
||||
"https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/manga/multisrc/mmrcms/mmrcms.dart";
|
||||
|
||||
|
||||
@@ -2,12 +2,14 @@ import 'package:mangayomi/bridge_lib.dart';
|
||||
import 'dart:convert';
|
||||
|
||||
class NepNep extends MProvider {
|
||||
NepNep();
|
||||
NepNep({required this.source});
|
||||
|
||||
final Client client = Client();
|
||||
MSource source;
|
||||
|
||||
final Client client = Client(source);
|
||||
|
||||
@override
|
||||
Future<MPages> getPopular(MSource source, int page) async {
|
||||
Future<MPages> getPopular(int page) async {
|
||||
final res = (await client.get(Uri.parse("${source.baseUrl}/search/"))).body;
|
||||
final directory = directoryFromDocument(res);
|
||||
final resSort = sortMapList(json.decode(directory), "vm", 1);
|
||||
@@ -16,7 +18,7 @@ class NepNep extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
Future<MPages> getLatestUpdates(MSource source, int page) async {
|
||||
Future<MPages> getLatestUpdates(int page) async {
|
||||
final res = (await client.get(Uri.parse("${source.baseUrl}/search/"))).body;
|
||||
final directory = directoryFromDocument(res);
|
||||
final resSort = sortMapList(json.decode(directory), "lt", 1);
|
||||
@@ -25,8 +27,7 @@ class NepNep extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
Future<MPages> search(
|
||||
MSource source, String query, int page, FilterList filterList) async {
|
||||
Future<MPages> search(String query, int page, FilterList filterList) async {
|
||||
final filters = filterList.filters;
|
||||
List<dynamic> queryRes = [];
|
||||
final res = (await client.get(Uri.parse("${source.baseUrl}/search/"))).body;
|
||||
@@ -137,7 +138,7 @@ class NepNep extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
Future<MManga> getDetail(MSource source, String url) async {
|
||||
Future<MManga> getDetail(String url) async {
|
||||
final statusList = [
|
||||
{"Ongoing": 0, "Completed": 1, "Cancelled": 3, "Hiatus": 2}
|
||||
];
|
||||
@@ -189,7 +190,7 @@ class NepNep extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
Future<List<String>> getPageList(MSource source, String url) async {
|
||||
Future<List<String>> getPageList(String url) async {
|
||||
final headers = getHeader(source.baseUrl);
|
||||
List<String> pages = [];
|
||||
final res =
|
||||
@@ -306,7 +307,7 @@ class NepNep extends MProvider {
|
||||
}
|
||||
|
||||
@override
|
||||
List<dynamic> getFilterList(MSource source) {
|
||||
List<dynamic> getFilterList() {
|
||||
return [
|
||||
TextFilter("YearFilter", "Years"),
|
||||
TextFilter("AuthorFilter", "Author"),
|
||||
@@ -405,6 +406,6 @@ Map<String, String> getHeader(String url) {
|
||||
return headers;
|
||||
}
|
||||
|
||||
NepNep main() {
|
||||
return NepNep();
|
||||
NepNep main(MSource source) {
|
||||
return NepNep(source: source);
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@ import '../../../model/source.dart';
|
||||
import 'src/mangasee/mangasee.dart';
|
||||
import 'src/mangalife/mangalife.dart';
|
||||
|
||||
const nepnepVersion = "0.0.55";
|
||||
const nepnepVersion = "0.0.6";
|
||||
const nepnepSourceCodeUrl =
|
||||
"https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/manga/multisrc/nepnep/nepnep.dart";
|
||||
|
||||
|
||||
Reference in New Issue
Block a user