diff --git a/lib/modules/more/about_screen.dart b/lib/modules/more/about_screen.dart index d7da38bc..f06207c2 100644 --- a/lib/modules/more/about_screen.dart +++ b/lib/modules/more/about_screen.dart @@ -52,7 +52,15 @@ class _AboutScreenState extends State { ), body: Column( children: [ - const SizedBox(height: 150, child: Center(child: Text("LOGO"))), + SizedBox( + height: 150, + child: Center( + child: Image.asset( + "assets/icon.png", + color: Theme.of(context).brightness == Brightness.light + ? Colors.black + : Colors.white, + ))), Flexible( flex: 3, child: Column( diff --git a/lib/modules/more/settings/appearance/providers/flex_scheme_color_state_provider.g.dart b/lib/modules/more/settings/appearance/providers/flex_scheme_color_state_provider.g.dart index d84c1191..4dec183f 100644 --- a/lib/modules/more/settings/appearance/providers/flex_scheme_color_state_provider.g.dart +++ b/lib/modules/more/settings/appearance/providers/flex_scheme_color_state_provider.g.dart @@ -7,7 +7,7 @@ part of 'flex_scheme_color_state_provider.dart'; // ************************************************************************** String _$flexSchemeColorStateHash() => - r'a8b6bdbfce0d97a3fd9f95fceea81205e275a4b4'; + r'5c535382cc52e144426fa36dc20ea614d6288f53'; /// See also [FlexSchemeColorState]. @ProviderFor(FlexSchemeColorState) diff --git a/lib/modules/more/settings/appearance/providers/theme_mode_state_provider.g.dart b/lib/modules/more/settings/appearance/providers/theme_mode_state_provider.g.dart index 56098c80..db49e4be 100644 --- a/lib/modules/more/settings/appearance/providers/theme_mode_state_provider.g.dart +++ b/lib/modules/more/settings/appearance/providers/theme_mode_state_provider.g.dart @@ -6,7 +6,7 @@ part of 'theme_mode_state_provider.dart'; // RiverpodGenerator // ************************************************************************** -String _$themeModeStateHash() => r'6b366dcb03de67cfd2d792d3a9e6678da9e6869c'; +String _$themeModeStateHash() => r'49a0f05f3d5eb1fcd49ec3c8c0d0b57a732b54fc'; /// See also [ThemeModeState]. @ProviderFor(ThemeModeState) diff --git a/lib/services/http_service/cloudflare/cloudflare_bypass.g.dart b/lib/services/http_service/cloudflare/cloudflare_bypass.g.dart index e8176cdd..c2baecfc 100644 --- a/lib/services/http_service/cloudflare/cloudflare_bypass.g.dart +++ b/lib/services/http_service/cloudflare/cloudflare_bypass.g.dart @@ -129,7 +129,7 @@ class CloudflareBypassDomProvider extends AutoDisposeFutureProvider { } String _$cloudflareBypassHtmlHash() => - r'8c1d6820ba10fe5ddfe6ce532e1e4677b563ceee'; + r'fdc35dcbef7c4cb9fcca41d70208c4e82f9eb146'; typedef CloudflareBypassHtmlRef = AutoDisposeFutureProviderRef; /// See also [cloudflareBypassHtml]. diff --git a/lib/sources/multisrc/heancms/heancms.dart b/lib/sources/multisrc/heancms/heancms.dart index a63bce78..dbf6f850 100644 --- a/lib/sources/multisrc/heancms/heancms.dart +++ b/lib/sources/multisrc/heancms/heancms.dart @@ -1,7 +1,6 @@ import 'dart:convert'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:mangayomi/models/chapter.dart'; -import 'package:mangayomi/models/manga.dart'; import 'package:mangayomi/services/http_service/http_res_to_dom_html.dart'; import 'package:mangayomi/sources/multisrc/heancms/model/search.dart'; import 'package:mangayomi/sources/multisrc/heancms/utils/utils.dart'; @@ -121,14 +120,7 @@ class HeanCms extends MangaYomiServices { } for (var a in data) { - final status = (switch (a.status) { - "Ongoing" => Status.ongoing, - "Hiatus" => Status.onHiatus, - "Dropped" => Status.canceled, - "Completed" => Status.completed, - "Finished" => Status.completed, - _ => Status.unknown, - }); + final status = parseHeanCmsStatus(a.status!); statusList.add(status); image.add(a.thumbnail!.startsWith("https://") ? a.thumbnail @@ -165,14 +157,7 @@ class HeanCms extends MangaYomiServices { } for (var a in data) { - final status = (switch (a.status) { - "Ongoing" => Status.ongoing, - "Hiatus" => Status.onHiatus, - "Dropped" => Status.canceled, - "Completed" => Status.completed, - "Finished" => Status.completed, - _ => Status.unknown, - }); + final status = parseHeanCmsStatus(a.status!); statusList.add(status); image.add(a.thumbnail!.startsWith("https://") ? a.thumbnail @@ -212,14 +197,7 @@ class HeanCms extends MangaYomiServices { } for (var a in data) { - final status = (switch (a.status) { - "Ongoing" => Status.ongoing, - "Hiatus" => Status.onHiatus, - "Dropped" => Status.canceled, - "Completed" => Status.completed, - "Finished" => Status.completed, - _ => Status.unknown, - }); + final status = parseHeanCmsStatus(a.status!); statusList.add(status); image.add(a.thumbnail!.startsWith("https://") ? a.thumbnail diff --git a/lib/sources/multisrc/heancms/utils/utils.dart b/lib/sources/multisrc/heancms/utils/utils.dart index 0b293ead..5ee54b9c 100644 --- a/lib/sources/multisrc/heancms/utils/utils.dart +++ b/lib/sources/multisrc/heancms/utils/utils.dart @@ -1,2 +1,14 @@ +import 'package:mangayomi/models/manga.dart'; -RegExp timeStampRegex = RegExp("-\\d+"); \ No newline at end of file +RegExp timeStampRegex = RegExp("-\\d+"); + +parseHeanCmsStatus(String status) { + return switch (status) { + "Ongoing" => Status.ongoing, + "Hiatus" => Status.onHiatus, + "Dropped" => Status.canceled, + "Completed" => Status.completed, + "Finished" => Status.completed, + _ => Status.unknown, + }; +} diff --git a/lib/sources/multisrc/madara/src/madara.dart b/lib/sources/multisrc/madara/src/madara.dart index 04c257b2..f80187e0 100644 --- a/lib/sources/multisrc/madara/src/madara.dart +++ b/lib/sources/multisrc/madara/src/madara.dart @@ -1,4 +1,3 @@ -import 'dart:developer'; import 'dart:io'; import 'package:desktop_webview_window/desktop_webview_window.dart'; import 'package:flutter/material.dart'; @@ -53,7 +52,6 @@ class Madara extends MangaYomiServices { } else { pageUrls = imgs; } - log(pageUrls.toString()); return pageUrls; } diff --git a/lib/sources/src/all/comick/src/comick.dart b/lib/sources/src/all/comick/src/comick.dart index 68735f6f..8e71d824 100644 --- a/lib/sources/src/all/comick/src/comick.dart +++ b/lib/sources/src/all/comick/src/comick.dart @@ -141,16 +141,6 @@ class Comick extends MangaYomiServices { return pageUrls; } - Future paginatedChapterListRequest(AutoDisposeFutureProviderRef ref, - String mangaUrl, int page, String source, String lang) async { - final response = await ref.watch(httpGetProvider( - url: - "${getMangaAPIUrl(source)}$mangaUrl/chapters?${lang != "all" ? 'lang=$lang' : ''}&tachiyomi=true&page=$page", - source: source, - resDom: false) - .future) as String?; - return response!; - } @override Future> getLatestUpdatesManga( diff --git a/lib/sources/src/all/comick/src/utils/utils.dart b/lib/sources/src/all/comick/src/utils/utils.dart index 74a9ec30..411262b1 100644 --- a/lib/sources/src/all/comick/src/utils/utils.dart +++ b/lib/sources/src/all/comick/src/utils/utils.dart @@ -1,96 +1,29 @@ import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:mangayomi/models/manga.dart'; -import 'package:mangayomi/utils/headers.dart'; -import 'package:http/http.dart' as http; +import 'package:mangayomi/services/http_service/http_service.dart'; +import 'package:mangayomi/sources/utils/utils.dart'; parseStatut(int i) { - return (switch (i) { + return switch (i) { 1 => Status.ongoing, 2 => Status.completed, 3 => Status.canceled, 4 => Status.onHiatus, _ => Status.unknown, - }); -} - -Future findCurrentSlug(String oldSlug, AutoDisposeFutureProviderRef ref) async { - var request = http.Request('GET', - Uri.parse('https://api.comick.fun/tachiyomi/mapping?slugs=$oldSlug')); - - request.headers.addAll(ref.watch(headersProvider(source: "comick"))); - - http.StreamedResponse response = await request.send(); - - if (response.statusCode == 200) { - return await response.stream.bytesToString(); - } else { - return response.reasonPhrase; - } + }; } beautifyChapterName(String? vol, String? chap, String? title, String? lang) { return "${vol!.isNotEmpty ? chap!.isEmpty ? "Volume $vol " : "Vol. $vol " : ""}${chap!.isNotEmpty ? vol.isEmpty ? lang == "fr" ? "Chapitre $chap" : "Chapter $chap" : "Ch. $chap " : ""}${title!.isNotEmpty ? chap.isEmpty ? title : " : $title" : ""}"; } - - - - - -// class ChapterList { -// List chapters; -// int total; - -// ChapterList({ -// required this.chapters, -// required this.total, -// }); - -// factory ChapterList.fromJson(Map json) { -// return ChapterList( -// chapters: (json['chapters'] as List).map((item) => Chapter.fromJson(item)).toList(), -// total: json['total'], -// ); -// } -// } - -// class Chapter { -// String hid; -// String chap; -// String? vol; -// String? title; -// String? created_at; -// List group_name; - -// Chapter({ -// required this.hid, -// required this.chap, -// this.vol, -// this.title, -// this.created_at, -// required this.group_name, -// }); - -// factory Chapter.fromJson(Map json) { -// return Chapter( -// hid: json['hid'], -// chap: json['chap'], -// vol: json['vol'], -// title: json['title'], -// created_at: json['created_at'], -// group_name: (json['group_name'] as List).map((item) => item.toString()).toList(), -// ); -// } -// } - - -// class SChapter { -// String? url; -// String? name; -// int? date_upload; -// String? scanlator; - -// SChapter.create(); - -// // Add any additional properties and methods as needed -// } +Future paginatedChapterListRequest(AutoDisposeFutureProviderRef ref, + String mangaUrl, int page, String source, String lang) async { + final response = await ref.watch(httpGetProvider( + url: + "${getMangaAPIUrl(source)}$mangaUrl/chapters?${lang != "all" ? 'lang=$lang' : ''}&tachiyomi=true&page=$page", + source: source, + resDom: false) + .future) as String?; + return response!; +} diff --git a/lib/sources/src/en/mangahere/src/mangahere.dart b/lib/sources/src/en/mangahere/src/mangahere.dart index 2720e661..7a1c0fe9 100644 --- a/lib/sources/src/en/mangahere/src/mangahere.dart +++ b/lib/sources/src/en/mangahere/src/mangahere.dart @@ -32,11 +32,11 @@ class Mangahere extends MangaYomiServices { .map((e) => e.text.trim()) .toList(); - status = (switch (tt[0]) { + status = switch (tt[0]) { "ongoing" => Status.ongoing, "completed" => Status.completed, _ => Status.unknown, - }); + }; } else { status = Status.unknown; } diff --git a/lib/sources/src/fr/japscan/src/japscan.dart b/lib/sources/src/fr/japscan/src/japscan.dart index 22e5b1e3..5f4a9e11 100644 --- a/lib/sources/src/fr/japscan/src/japscan.dart +++ b/lib/sources/src/fr/japscan/src/japscan.dart @@ -41,11 +41,11 @@ class Japscan extends MangaYomiServices { if (stat.isNotEmpty) { String sta = stat[0].replaceAll('Statut:', '').trim(); - status = (switch (sta) { + status = switch (sta) { "En Cours" => Status.ongoing, "Terminé" => Status.completed, _ => Status.unknown, - }); + }; } else { status = Status.unknown; } diff --git a/lib/sources/src/fr/mangakawaii/src/mangakawaii.dart b/lib/sources/src/fr/mangakawaii/src/mangakawaii.dart index 8d2ac494..3d652880 100644 --- a/lib/sources/src/fr/mangakawaii/src/mangakawaii.dart +++ b/lib/sources/src/fr/mangakawaii/src/mangakawaii.dart @@ -61,11 +61,11 @@ class MangaKawaii extends MangaYomiServices { } } detail = detail.toSet().toList(); - status = (switch (detail[0]) { + status = switch (detail[0]) { "En Cours" => Status.ongoing, "Terminé" => Status.completed, _ => Status.unknown, - }); + }; author = detail[1]; if (dom.querySelectorAll("tr[class*='volume-']").isNotEmpty) { final url = dom.querySelectorAll("tr[class*='volume-']").map((e) { diff --git a/lib/utils/constant.dart b/lib/utils/constant.dart index d1ea8e5c..c1285d7c 100644 --- a/lib/utils/constant.dart +++ b/lib/utils/constant.dart @@ -5,21 +5,21 @@ const defaultUserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:110.0) Gecko/20100101 Firefox/110.0"; String getMangaStatusName(Status status) { - return (switch (status) { + return switch (status) { Status.ongoing => "Ongoing", Status.onHiatus => "On hiatus", Status.canceled => "Canceled", Status.completed => "Completed", _ => "Unknown", - }); + }; } IconData getMangaStatusIcon(Status status) { - return (switch (status) { + return switch (status) { Status.ongoing => Icons.schedule_rounded, Status.onHiatus => Icons.pause_circle_rounded, Status.canceled => Icons.cancel_rounded, Status.completed => Icons.done_all_rounded, _ => Icons.block_outlined, - }); + }; }