diff --git a/dart/anime/multisrc/datalifeengine/src/frenchanime/frenchanime.dart b/dart/anime/multisrc/datalifeengine/src/frenchanime/frenchanime.dart index f28491dc..719dcece 100644 --- a/dart/anime/multisrc/datalifeengine/src/frenchanime/frenchanime.dart +++ b/dart/anime/multisrc/datalifeengine/src/frenchanime/frenchanime.dart @@ -7,7 +7,7 @@ Source _frenchanimeSource = Source( baseUrl: "https://french-anime.com", lang: "fr", typeSource: "datalifeengine", - isManga: false, + itemType: ItemType.anime, iconUrl: "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/multisrc/datalifeengine/src/frenchanime/icon.png", ); diff --git a/dart/anime/multisrc/datalifeengine/src/wiflix/wiflix.dart b/dart/anime/multisrc/datalifeengine/src/wiflix/wiflix.dart index c5cb9064..c4682ee4 100644 --- a/dart/anime/multisrc/datalifeengine/src/wiflix/wiflix.dart +++ b/dart/anime/multisrc/datalifeengine/src/wiflix/wiflix.dart @@ -7,7 +7,7 @@ Source _wiflixSource = Source( baseUrl: "https://wiflix-hd.vip", lang: "fr", typeSource: "datalifeengine", - isManga: false, + itemType: ItemType.anime, iconUrl: "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/multisrc/datalifeengine/src/wiflix/icon.png", ); diff --git a/dart/anime/multisrc/dopeflix/src/dopebox/dopebox.dart b/dart/anime/multisrc/dopeflix/src/dopebox/dopebox.dart index 2029e53f..ef8a39c7 100644 --- a/dart/anime/multisrc/dopeflix/src/dopebox/dopebox.dart +++ b/dart/anime/multisrc/dopeflix/src/dopebox/dopebox.dart @@ -7,7 +7,7 @@ Source _dopeboxSource = Source( baseUrl: "https://dopebox.to", lang: "en", typeSource: "dopeflix", - isManga: false, + itemType: ItemType.anime, iconUrl: "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/multisrc/dopeflix/src/dopebox/icon.png", ); diff --git a/dart/anime/multisrc/dopeflix/src/sflix/sflix.dart b/dart/anime/multisrc/dopeflix/src/sflix/sflix.dart index 89d420a4..c19dbd1e 100644 --- a/dart/anime/multisrc/dopeflix/src/sflix/sflix.dart +++ b/dart/anime/multisrc/dopeflix/src/sflix/sflix.dart @@ -7,7 +7,7 @@ Source _sflixSource = Source( baseUrl: "https://sflix.to", lang: "en", typeSource: "dopeflix", - isManga: false, + itemType: ItemType.anime, iconUrl: "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/multisrc/dopeflix/src/sflix/icon.png", ); diff --git a/dart/anime/multisrc/zorotheme/src/hianime/hianime.dart b/dart/anime/multisrc/zorotheme/src/hianime/hianime.dart index 86b54428..27bc3449 100644 --- a/dart/anime/multisrc/zorotheme/src/hianime/hianime.dart +++ b/dart/anime/multisrc/zorotheme/src/hianime/hianime.dart @@ -6,7 +6,7 @@ Source _aniwatchSource = Source( id: 814067600, name: "HiAnime", baseUrl: "https://hianime.to", - isManga: false, + itemType: ItemType.anime, lang: "en", typeSource: "zorotheme", iconUrl: diff --git a/dart/anime/multisrc/zorotheme/src/kaido/kaido.dart b/dart/anime/multisrc/zorotheme/src/kaido/kaido.dart index 7270c8cb..59929d21 100644 --- a/dart/anime/multisrc/zorotheme/src/kaido/kaido.dart +++ b/dart/anime/multisrc/zorotheme/src/kaido/kaido.dart @@ -6,7 +6,7 @@ Source _kaidoSource = Source( name: "Kaido.to", baseUrl: "https://kaido.to", lang: "en", - isManga: false, + itemType: ItemType.anime, typeSource: "zorotheme", iconUrl: "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/multisrc/zorotheme/src/kaido/icon.png", diff --git a/dart/anime/src/all/animeworldindia/sources.dart b/dart/anime/src/all/animeworldindia/sources.dart index 52db9e30..7d5e80e8 100644 --- a/dart/anime/src/all/animeworldindia/sources.dart +++ b/dart/anime/src/all/animeworldindia/sources.dart @@ -28,6 +28,6 @@ List _animeworldindiaSourcesList = _languages typeSource: "multiple", iconUrl: _iconUrl, version: _animeworldindiaVersion, - isManga: false, + itemType: ItemType.anime, sourceCodeUrl: _animeworldindiaSourceCodeUrl)) .toList(); diff --git a/dart/anime/src/all/nyaa/source.dart b/dart/anime/src/all/nyaa/source.dart index ea04acd6..358cda2c 100644 --- a/dart/anime/src/all/nyaa/source.dart +++ b/dart/anime/src/all/nyaa/source.dart @@ -15,5 +15,5 @@ Source _nyaaSource = Source( typeSource: "torrent", iconUrl: _iconUrl, version: _nyaaVersion, - isManga: false, + itemType: ItemType.anime, sourceCodeUrl: _nyaaSourceCodeUrl); diff --git a/dart/anime/src/ar/okanime/source.dart b/dart/anime/src/ar/okanime/source.dart index 64ab435d..ac354883 100644 --- a/dart/anime/src/ar/okanime/source.dart +++ b/dart/anime/src/ar/okanime/source.dart @@ -13,4 +13,4 @@ Source _okanimeSource = Source( "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/src/ar/okanime/icon.png", sourceCodeUrl: _okanimeSourceCodeUrl, version: _okanimeVersion, - isManga: false); + itemType: ItemType.anime); diff --git a/dart/anime/src/de/animetoast/source.dart b/dart/anime/src/de/animetoast/source.dart index f3b6e160..e472a65c 100644 --- a/dart/anime/src/de/animetoast/source.dart +++ b/dart/anime/src/de/animetoast/source.dart @@ -13,4 +13,4 @@ Source _animetoast = Source( "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/src/de/animetoast/icon.png", sourceCodeUrl: _animetoastCodeUrl, version: _animetoastVersion, - isManga: false); + itemType: ItemType.anime); diff --git a/dart/anime/src/en/animepahe/source.dart b/dart/anime/src/en/animepahe/source.dart index 9a52802d..0bf8602a 100644 --- a/dart/anime/src/en/animepahe/source.dart +++ b/dart/anime/src/en/animepahe/source.dart @@ -13,4 +13,4 @@ Source _animepaheSource = Source( "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/src/en/animepahe/icon.png", sourceCodeUrl: _animepaheSourceCodeUrl, version: _animepaheVersion, - isManga: false); + itemType: ItemType.anime); diff --git a/dart/anime/src/en/dramacool/source.dart b/dart/anime/src/en/dramacool/source.dart index f70146c6..7c0cb4cd 100644 --- a/dart/anime/src/en/dramacool/source.dart +++ b/dart/anime/src/en/dramacool/source.dart @@ -13,4 +13,4 @@ Source _dramacoolSource = Source( "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/src/en/dramacool/icon.png", sourceCodeUrl: _dramacoolSourceCodeUrl, version: _dramacoolVersion, - isManga: false); + itemType: ItemType.anime); diff --git a/dart/anime/src/en/gogoanime/source.dart b/dart/anime/src/en/gogoanime/source.dart index 0529962b..90640b1f 100644 --- a/dart/anime/src/en/gogoanime/source.dart +++ b/dart/anime/src/en/gogoanime/source.dart @@ -13,4 +13,4 @@ Source _gogoanimeSource = Source( "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/src/en/gogoanime/icon.png", sourceCodeUrl: _gogoanimeSourceCodeUrl, version: _gogoanimeVersion, - isManga: false); + itemType: ItemType.anime); diff --git a/dart/anime/src/en/kisskh/source.dart b/dart/anime/src/en/kisskh/source.dart index 26cc5a10..c4405238 100644 --- a/dart/anime/src/en/kisskh/source.dart +++ b/dart/anime/src/en/kisskh/source.dart @@ -13,4 +13,4 @@ Source _kisskhSource = Source( "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/src/en/kisskh/icon.png", sourceCodeUrl: _kisskhSourceCodeUrl, version: _kisskhVersion, - isManga: false); + itemType: ItemType.anime); diff --git a/dart/anime/src/en/nineanimetv/source.dart b/dart/anime/src/en/nineanimetv/source.dart index d568ea93..c57ada38 100644 --- a/dart/anime/src/en/nineanimetv/source.dart +++ b/dart/anime/src/en/nineanimetv/source.dart @@ -13,4 +13,4 @@ Source _nineanimetv = Source( "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/src/en/nineanimetv/icon.png", sourceCodeUrl: _nineanimetvCodeUrl, version: _nineanimetvVersion, - isManga: false); + itemType: ItemType.anime); diff --git a/dart/anime/src/en/uhdmovies/source.dart b/dart/anime/src/en/uhdmovies/source.dart index 8cb2eb8f..00014bc9 100644 --- a/dart/anime/src/en/uhdmovies/source.dart +++ b/dart/anime/src/en/uhdmovies/source.dart @@ -13,4 +13,4 @@ Source _uhdmoviesSource = Source( "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/src/en/uhdmovies/icon.png", sourceCodeUrl: _uhdmoviesSourceCodeUrl, version: _uhdmoviesVersion, - isManga: false); + itemType: ItemType.anime); diff --git a/dart/anime/src/es/animeonlineninja/source.dart b/dart/anime/src/es/animeonlineninja/source.dart index c6b5eac8..c3036b40 100644 --- a/dart/anime/src/es/animeonlineninja/source.dart +++ b/dart/anime/src/es/animeonlineninja/source.dart @@ -13,4 +13,4 @@ Source _animeonlineninjaSource = Source( "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/src/es/animeonlineninja/icon.png", sourceCodeUrl: _animeonlineninjaSourceCodeUrl, version: _animeonlineninjaVersion, - isManga: false); + itemType: ItemType.anime); diff --git a/dart/anime/src/fr/animesama/source.dart b/dart/anime/src/fr/animesama/source.dart index 18baefe3..bc99cc92 100644 --- a/dart/anime/src/fr/animesama/source.dart +++ b/dart/anime/src/fr/animesama/source.dart @@ -13,4 +13,4 @@ Source _animesama = Source( "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/src/fr/animesama/icon.png", sourceCodeUrl: animesamaCodeUrl, version: animesamaVersion, - isManga: false); + itemType: ItemType.anime); diff --git a/dart/anime/src/fr/animesultra/source.dart b/dart/anime/src/fr/animesultra/source.dart index 2fbc1c92..cfb16690 100644 --- a/dart/anime/src/fr/animesultra/source.dart +++ b/dart/anime/src/fr/animesultra/source.dart @@ -13,5 +13,5 @@ Source _animesultraSource = Source( "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/src/fr/animesultra/icon.png", sourceCodeUrl: _animesultraSourceCodeUrl, version: _animesultraVersion, - isManga: false, + itemType: ItemType.anime, isFullData: false); diff --git a/dart/anime/src/fr/anizone/source.dart b/dart/anime/src/fr/anizone/source.dart index 4caf9537..3c1fa693 100644 --- a/dart/anime/src/fr/anizone/source.dart +++ b/dart/anime/src/fr/anizone/source.dart @@ -13,4 +13,4 @@ Source _aniZoneSource = Source( "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/src/fr/anizone/icon.png", sourceCodeUrl: _aniZoneSourceCodeUrl, version: _aniZoneVersion, - isManga: false); + itemType: ItemType.anime); diff --git a/dart/anime/src/fr/franime/source.dart b/dart/anime/src/fr/franime/source.dart index c91f0113..22b5a5b8 100644 --- a/dart/anime/src/fr/franime/source.dart +++ b/dart/anime/src/fr/franime/source.dart @@ -14,5 +14,5 @@ Source _franimeSource = Source( "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/src/fr/franime/icon.png", sourceCodeUrl: _franimeSourceCodeUrl, version: _franimeVersion, - isManga: false, + itemType: ItemType.anime, isFullData: true); diff --git a/dart/anime/src/fr/otakufr/source.dart b/dart/anime/src/fr/otakufr/source.dart index 1c12b2b5..8670a8f9 100644 --- a/dart/anime/src/fr/otakufr/source.dart +++ b/dart/anime/src/fr/otakufr/source.dart @@ -13,5 +13,5 @@ Source _otakufr = Source( "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/src/fr/otakufr/icon.png", sourceCodeUrl: otakufrCodeUrl, version: otakufrVersion, - isManga: false, + itemType: ItemType.anime, isFullData: false); diff --git a/dart/anime/src/hi/yomovies/source.dart b/dart/anime/src/hi/yomovies/source.dart index a6df350c..39d2e5d1 100644 --- a/dart/anime/src/hi/yomovies/source.dart +++ b/dart/anime/src/hi/yomovies/source.dart @@ -13,4 +13,4 @@ Source _yomoviesSource = Source( "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/src/hi/yomovies/icon.png", sourceCodeUrl: _yomoviesSourceCodeUrl, version: _yomoviesVersion, - isManga: false); + itemType: ItemType.anime); diff --git a/dart/anime/src/id/nimegami/source.dart b/dart/anime/src/id/nimegami/source.dart index 1468aca8..1c009109 100644 --- a/dart/anime/src/id/nimegami/source.dart +++ b/dart/anime/src/id/nimegami/source.dart @@ -13,4 +13,4 @@ Source _nimegami = Source( "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/src/id/nimegami/icon.png", sourceCodeUrl: _nimegamiCodeUrl, version: _nimegamiVersion, - isManga: false); + itemType: ItemType.anime); diff --git a/dart/anime/src/id/oploverz/source.dart b/dart/anime/src/id/oploverz/source.dart index 4083f29f..d1ec05ba 100644 --- a/dart/anime/src/id/oploverz/source.dart +++ b/dart/anime/src/id/oploverz/source.dart @@ -13,4 +13,4 @@ Source _oploverz = Source( "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/src/id/oploverz/icon.png", sourceCodeUrl: _oploverzCodeUrl, version: _oploverzVersion, - isManga: false); + itemType: ItemType.anime); diff --git a/dart/anime/src/id/otakudesu/source.dart b/dart/anime/src/id/otakudesu/source.dart index 288b4050..f91ae909 100644 --- a/dart/anime/src/id/otakudesu/source.dart +++ b/dart/anime/src/id/otakudesu/source.dart @@ -13,4 +13,4 @@ Source _otakudesu = Source( "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/src/id/otakudesu/icon.png", sourceCodeUrl: _otakudesuCodeUrl, version: _otakudesuVersion, - isManga: false); + itemType: ItemType.anime); diff --git a/dart/anime/src/it/animesaturn/source.dart b/dart/anime/src/it/animesaturn/source.dart index bbfd3ec3..442e746c 100644 --- a/dart/anime/src/it/animesaturn/source.dart +++ b/dart/anime/src/it/animesaturn/source.dart @@ -13,4 +13,4 @@ Source _animesaturn = Source( "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/src/it/animesaturn/icon.png", sourceCodeUrl: _animesaturnCodeUrl, version: _animesaturnVersion, - isManga: false); + itemType: ItemType.anime); diff --git a/dart/anime/src/pt/animesvision/source.dart b/dart/anime/src/pt/animesvision/source.dart index e2aa1711..183c192e 100644 --- a/dart/anime/src/pt/animesvision/source.dart +++ b/dart/anime/src/pt/animesvision/source.dart @@ -13,4 +13,4 @@ Source _animesvision = Source( "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/src/pt/animesvision/icon.png", sourceCodeUrl: _animesvisionCodeUrl, version: _animesvisionVersion, - isManga: false); + itemType: ItemType.anime); diff --git a/dart/anime/src/sq/filma24/source.dart b/dart/anime/src/sq/filma24/source.dart index d26ea58c..2b085406 100644 --- a/dart/anime/src/sq/filma24/source.dart +++ b/dart/anime/src/sq/filma24/source.dart @@ -13,4 +13,4 @@ Source _filma24 = Source( "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/src/sq/filma24/icon.png", sourceCodeUrl: _filma24CodeUrl, version: _filma24Version, - isManga: false); + itemType: ItemType.anime); diff --git a/dart/anime/src/tr/diziwatch/source.dart b/dart/anime/src/tr/diziwatch/source.dart index fdef5bc5..d13cc343 100644 --- a/dart/anime/src/tr/diziwatch/source.dart +++ b/dart/anime/src/tr/diziwatch/source.dart @@ -13,4 +13,4 @@ Source _diziwatchSource = Source( "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/src/tr/diziwatch/icon.png", sourceCodeUrl: _diziwatchSourceCodeUrl, version: _diziwatchVersion, - isManga: false); + itemType: ItemType.anime); diff --git a/dart/manga/multisrc/madara/sources.dart b/dart/manga/multisrc/madara/sources.dart index d31f89e5..01043613 100644 --- a/dart/manga/multisrc/madara/sources.dart +++ b/dart/manga/multisrc/madara/sources.dart @@ -571,6 +571,7 @@ List _madaraSourcesList = [ webtoonhattiSource, ] .map((e) => e + ..itemType = ItemType.manga ..sourceCodeUrl = madaraSourceCodeUrl ..version = madaraVersion) .toList(); diff --git a/dart/manga/multisrc/mangabox/sources.dart b/dart/manga/multisrc/mangabox/sources.dart index 9d6ebeb2..8ba94a88 100644 --- a/dart/manga/multisrc/mangabox/sources.dart +++ b/dart/manga/multisrc/mangabox/sources.dart @@ -20,6 +20,7 @@ List _mangaboxSourcesList = [ manganatoSource ] .map((e) => e + ..itemType = ItemType.manga ..sourceCodeUrl = mangaboxSourceCodeUrl ..version = mangaboxVersion) .toList(); diff --git a/dart/manga/multisrc/mangareader/sources.dart b/dart/manga/multisrc/mangareader/sources.dart index bd65a208..f8f0863c 100644 --- a/dart/manga/multisrc/mangareader/sources.dart +++ b/dart/manga/multisrc/mangareader/sources.dart @@ -289,6 +289,7 @@ List _mangareaderSourcesList = [ zenithscansSource ] .map((e) => e + ..itemType = ItemType.manga ..sourceCodeUrl = mangareaderSourceCodeUrl ..version = mangareaderVersion) .toList(); diff --git a/dart/manga/multisrc/mmrcms/sources.dart b/dart/manga/multisrc/mmrcms/sources.dart index 57164115..cbcc621d 100644 --- a/dart/manga/multisrc/mmrcms/sources.dart +++ b/dart/manga/multisrc/mmrcms/sources.dart @@ -32,6 +32,7 @@ List _mmrcmsSourcesList = [ mangafrSource, ] .map((e) => e + ..itemType = ItemType.manga ..sourceCodeUrl = mmrcmsSourceCodeUrl ..version = mmrcmsVersion) .toList(); diff --git a/dart/manga/multisrc/nepnep/sources.dart b/dart/manga/multisrc/nepnep/sources.dart index e191c8e0..f71f1929 100644 --- a/dart/manga/multisrc/nepnep/sources.dart +++ b/dart/manga/multisrc/nepnep/sources.dart @@ -15,6 +15,7 @@ List _nepnepSourcesList = [ mangalifeSource, ] .map((e) => e + ..itemType = ItemType.manga ..sourceCodeUrl = nepnepSourceCodeUrl ..version = nepnepVersion) .toList(); diff --git a/dart/manga/src/all/comick/sources.dart b/dart/manga/src/all/comick/sources.dart index 1fe49c0a..dbfb1b61 100644 --- a/dart/manga/src/all/comick/sources.dart +++ b/dart/manga/src/all/comick/sources.dart @@ -67,5 +67,6 @@ List _comickSourcesList = _languages isNsfw: _isNsfw, dateFormatLocale: "en", version: _comickVersion, + itemType: ItemType.manga, sourceCodeUrl: _comickSourceCodeUrl)) .toList(); diff --git a/dart/manga/src/all/mangadex/sources.dart b/dart/manga/src/all/mangadex/sources.dart index f7f2089c..ff1def04 100644 --- a/dart/manga/src/all/mangadex/sources.dart +++ b/dart/manga/src/all/mangadex/sources.dart @@ -70,5 +70,6 @@ List _mangaDexSourcesList = _languages isNsfw: _isNsfw, dateFormatLocale: 'en_Us', version: _mangadexVersion, + itemType: ItemType.manga, sourceCodeUrl: _mangadexSourceCodeUrl)) .toList(); diff --git a/dart/manga/src/en/mangahere/source.dart b/dart/manga/src/en/mangahere/source.dart index 095f6fe0..789e1d84 100644 --- a/dart/manga/src/en/mangahere/source.dart +++ b/dart/manga/src/en/mangahere/source.dart @@ -12,6 +12,7 @@ Source _mangahereSource = Source( iconUrl: "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/manga/src/en/mangahere/icon.png", sourceCodeUrl: _mangahereSourceCodeUrl, + itemType: ItemType.manga, version: _mangahereVersion, dateFormat: "MMM dd,yyyy", dateFormatLocale: "en", diff --git a/dart/novel/novel_source_list.dart b/dart/novel/novel_source_list.dart new file mode 100644 index 00000000..51a1594a --- /dev/null +++ b/dart/novel/novel_source_list.dart @@ -0,0 +1,4 @@ +import '../../model/source.dart'; + +List dartNovelSourceList = [ +]; diff --git a/dart/novel/src/en/icon.png b/dart/novel/src/en/icon.png new file mode 100644 index 00000000..544fef06 Binary files /dev/null and b/dart/novel/src/en/icon.png differ diff --git a/dart/novel/src/en/novelupdates.dart b/dart/novel/src/en/novelupdates.dart new file mode 100644 index 00000000..e69de29b diff --git a/dart/novel/src/en/source.dart b/dart/novel/src/en/source.dart new file mode 100644 index 00000000..475354c3 --- /dev/null +++ b/dart/novel/src/en/source.dart @@ -0,0 +1,19 @@ +import '../../../../model/source.dart'; + +Source get novelUpdatesSource => _novelUpdatesSource; +const _novelUpdatesVersion = "0.0.1"; +const _novelUpdatesSourceCodeUrl = + "https://raw.githubusercontent.com/Schnitzel5/mangayomi-extensions/$branchName/dart/novel/src/en/novelupdates.dart"; +Source _novelUpdatesSource = Source( + name: "NovelUpdates", + baseUrl: "https://www.novelupdates.com", + lang: "en", + typeSource: "single", + iconUrl: + "https://raw.githubusercontent.com/Schnitzel5/mangayomi-extensions/$branchName/dart/manga/src/en/icon.png", + sourceCodeUrl: _novelUpdatesSourceCodeUrl, + itemType: ItemType.novel, + version: _novelUpdatesVersion, + dateFormat: "MMM dd,yyyy", + dateFormatLocale: "en", +); diff --git a/javascript/anime/src/all/netflixmirror.js b/javascript/anime/src/all/netflixmirror.js index 3fa88c48..732f902d 100644 --- a/javascript/anime/src/all/netflixmirror.js +++ b/javascript/anime/src/all/netflixmirror.js @@ -5,7 +5,7 @@ const mangayomiSources = [{ "apiUrl": "", "iconUrl": "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/main/javascript/icon/all.netflixmirror.png", "typeSource": "single", - "isManga": false, + "itemType": 1, "version": "0.0.45", "dateFormat": "", "dateFormatLocale": "", diff --git a/javascript/anime/src/de/aniworld.js b/javascript/anime/src/de/aniworld.js index 2032e284..b0a22743 100644 --- a/javascript/anime/src/de/aniworld.js +++ b/javascript/anime/src/de/aniworld.js @@ -5,7 +5,7 @@ const mangayomiSources = [{ "apiUrl": "", "iconUrl": "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/main/javascript/icon/de.aniworld.png", "typeSource": "single", - "isManga": false, + "itemType": 1, "isNsfw": false, "version": "0.3.0", "dateFormat": "", diff --git a/javascript/anime/src/de/serienstream.js b/javascript/anime/src/de/serienstream.js index 64dca94c..8ec23f50 100644 --- a/javascript/anime/src/de/serienstream.js +++ b/javascript/anime/src/de/serienstream.js @@ -5,7 +5,7 @@ const mangayomiSources = [{ "apiUrl": "", "iconUrl": "https://s.to/favicon.ico", "typeSource": "single", - "isManga": false, + "itemType": 1, "isNsfw": false, "version": "0.0.2", "dateFormat": "", diff --git a/javascript/anime/src/en/allanime.js b/javascript/anime/src/en/allanime.js index bb6aeea1..f1af692d 100644 --- a/javascript/anime/src/en/allanime.js +++ b/javascript/anime/src/en/allanime.js @@ -5,7 +5,7 @@ const mangayomiSources = [{ "apiUrl": "https://api.allanime.day/api", "iconUrl": "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/main/javascript/icon/en.allanime.png", "typeSource": "single", - "isManga": false, + "itemType": 1, "isNsfw": false, "version": "0.0.35", "dateFormat": "", diff --git a/javascript/anime/src/es/animefenix.js b/javascript/anime/src/es/animefenix.js index 3b25c047..1fa7dceb 100644 --- a/javascript/anime/src/es/animefenix.js +++ b/javascript/anime/src/es/animefenix.js @@ -5,7 +5,7 @@ const mangayomiSources = [{ "apiUrl": "", "iconUrl": "https://www3.animefenix.tv/themes/fenix-neo/images/AveFenix.png", "typeSource": "single", - "isManga": false, + "itemType": 1, "version": "0.1.1", "dateFormat": "", "dateFormatLocale": "", diff --git a/javascript/anime/src/es/animeflv.js b/javascript/anime/src/es/animeflv.js index 06ace0bd..0a3a7eda 100644 --- a/javascript/anime/src/es/animeflv.js +++ b/javascript/anime/src/es/animeflv.js @@ -5,7 +5,7 @@ const mangayomiSources = [{ "apiUrl": "", "iconUrl": "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/main/javascript/icon/es.animeflv.png", "typeSource": "single", - "isManga": false, + "itemType": 1, "isNsfw": false, "version": "0.0.1", "dateFormat": "", diff --git a/javascript/anime/src/es/jkanime.js b/javascript/anime/src/es/jkanime.js index b03c8a13..badfa183 100644 --- a/javascript/anime/src/es/jkanime.js +++ b/javascript/anime/src/es/jkanime.js @@ -5,7 +5,7 @@ const mangayomiSources = [{ "apiUrl": "", "iconUrl": "https://cdn.jkanime.net/logo_jk.png", "typeSource": "single", - "isManga": false, + "itemType": 1, "version": "0.1.1", "dateFormat": "", "dateFormatLocale": "", diff --git a/javascript/anime/src/es/tioanime.js b/javascript/anime/src/es/tioanime.js index 514154e9..274e7752 100644 --- a/javascript/anime/src/es/tioanime.js +++ b/javascript/anime/src/es/tioanime.js @@ -5,7 +5,7 @@ const mangayomiSources = [{ "apiUrl": "", "iconUrl": "https://tioanime.com/assets/img/tio_fb.jpg", "typeSource": "single", - "isManga": false, + "itemType": 1, "version": "0.1.1", "dateFormat": "", "dateFormatLocale": "", diff --git a/javascript/anime/src/zh/360zy.js b/javascript/anime/src/zh/360zy.js index c0a59e36..4ee378f5 100644 --- a/javascript/anime/src/zh/360zy.js +++ b/javascript/anime/src/zh/360zy.js @@ -5,7 +5,7 @@ const mangayomiSources = [{ "apiUrl": "", "iconUrl": "https://360zy.com/favicon.ico", "typeSource": "single", - "isManga": false, + "itemType": 1, "isNsfw": false, "version": "0.0.1", "dateFormat": "", diff --git a/javascript/anime/src/zh/ffzy.js b/javascript/anime/src/zh/ffzy.js index f9dd2184..dbd79752 100644 --- a/javascript/anime/src/zh/ffzy.js +++ b/javascript/anime/src/zh/ffzy.js @@ -5,7 +5,7 @@ const mangayomiSources = [{ "apiUrl": "", "iconUrl": "http://ffzy.tv/template/default/img/favicon.png", "typeSource": "single", - "isManga": false, + "itemType": 1, "isNsfw": false, "version": "0.0.1", "dateFormat": "", diff --git a/javascript/anime/src/zh/huaweiba.js b/javascript/anime/src/zh/huaweiba.js index 200de6f7..3f109ba3 100644 --- a/javascript/anime/src/zh/huaweiba.js +++ b/javascript/anime/src/zh/huaweiba.js @@ -5,7 +5,7 @@ const mangayomiSources = [{ "apiUrl": "", "iconUrl": "https://huaweiba.live/template/ziyuan/images/logo2.png", "typeSource": "single", - "isManga": false, + "itemType": 1, "isNsfw": false, "version": "0.0.1", "dateFormat": "", diff --git a/javascript/anime/src/zh/jisuzy.js b/javascript/anime/src/zh/jisuzy.js index 7600ceb4..0c4f0fb8 100644 --- a/javascript/anime/src/zh/jisuzy.js +++ b/javascript/anime/src/zh/jisuzy.js @@ -5,7 +5,7 @@ const mangayomiSources = [{ "apiUrl": "", "iconUrl": "https://www.jisuzy.com/template/default/images/site_logo.png", "typeSource": "single", - "isManga": false, + "itemType": 1, "isNsfw": false, "version": "0.0.1", "dateFormat": "", diff --git a/javascript/anime/src/zh/mikan.js b/javascript/anime/src/zh/mikan.js index abbd893a..e7e65b51 100644 --- a/javascript/anime/src/zh/mikan.js +++ b/javascript/anime/src/zh/mikan.js @@ -5,7 +5,7 @@ const mangayomiSources = [{ "apiUrl": "", "iconUrl": "https://mikanime.tv/images/mikan-pic.png", "typeSource": "torrent", - "isManga": false, + "itemType": 1, "isNsfw": false, "version": "0.0.15", "dateFormat": "", diff --git a/javascript/anime/src/zh/tiankongzy.js b/javascript/anime/src/zh/tiankongzy.js index e9d21096..06d0906d 100644 --- a/javascript/anime/src/zh/tiankongzy.js +++ b/javascript/anime/src/zh/tiankongzy.js @@ -5,7 +5,7 @@ const mangayomiSources = [{ "apiUrl": "", "iconUrl": "https://api.tiankongapi.com/template/v10012/images/logo.jpg", "typeSource": "single", - "isManga": false, + "itemType": 1, "isNsfw": false, "version": "0.0.1", "dateFormat": "", diff --git a/javascript/anime/src/zh/wogg.js b/javascript/anime/src/zh/wogg.js index 20112134..ab606811 100644 --- a/javascript/anime/src/zh/wogg.js +++ b/javascript/anime/src/zh/wogg.js @@ -5,7 +5,7 @@ const mangayomiSources = [{ "apiUrl": "", "iconUrl": "https://imgsrc.baidu.com/forum/pic/item/4b90f603738da977d5da660af651f8198618e31f.jpg", "typeSource": "single", - "isManga": false, + "itemType": 1, "isNsfw": false, "version": "0.0.2", "dateFormat": "", diff --git a/javascript/anime/src/zh/yhdm.js b/javascript/anime/src/zh/yhdm.js index a6bf7f82..e720af67 100644 --- a/javascript/anime/src/zh/yhdm.js +++ b/javascript/anime/src/zh/yhdm.js @@ -5,7 +5,7 @@ const mangayomiSources = [{ "apiUrl": "", "iconUrl": "http://www.iyinghua.io/js/20180601/favicon.ico", "typeSource": "single", - "isManga": false, + "itemType": 1, "isNsfw": false, "version": "0.0.15", "dateFormat": "", diff --git a/javascript/anime/src/zh/yydsys.js b/javascript/anime/src/zh/yydsys.js index bcfc74f7..40787d71 100644 --- a/javascript/anime/src/zh/yydsys.js +++ b/javascript/anime/src/zh/yydsys.js @@ -5,7 +5,7 @@ const mangayomiSources = [{ "apiUrl": "", "iconUrl": "https://tv.yydsys.top/template/DYXS2/static/picture/logo.png", "typeSource": "single", - "isManga": false, + "itemType": 1, "isNsfw": false, "version": "0.0.2", "dateFormat": "", diff --git a/javascript/manga/src/all/mangafire.js b/javascript/manga/src/all/mangafire.js index c3befa4d..5dda18ea 100644 --- a/javascript/manga/src/all/mangafire.js +++ b/javascript/manga/src/all/mangafire.js @@ -5,7 +5,7 @@ const mangayomiSources = [{ "apiUrl": "", "iconUrl": "https://mangafire.to/assets/sites/mangafire/favicon.png?v3", "typeSource": "single", - "isManga": true, + "itemType": 0, "version": "0.1.2", "dateFormat": "", "dateFormatLocale": "", diff --git a/javascript/manga/src/en/asurascans.js b/javascript/manga/src/en/asurascans.js index a95af2d5..357aa80d 100644 --- a/javascript/manga/src/en/asurascans.js +++ b/javascript/manga/src/en/asurascans.js @@ -6,7 +6,7 @@ const mangayomiSources = [{ "apiUrl": "", "iconUrl": "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/main/javascript/icon/en.asurascans.png", "typeSource": "single", - "isManga": true, + "itemType": 0, "version": "0.1.65", "dateFormat": "", "dateFormatLocale": "", diff --git a/javascript/manga/src/zh/77mh.js b/javascript/manga/src/zh/77mh.js index 78417889..2030e666 100644 --- a/javascript/manga/src/zh/77mh.js +++ b/javascript/manga/src/zh/77mh.js @@ -5,7 +5,7 @@ const mangayomiSources = [{ "apiUrl": "", "iconUrl": "https://www.77mh.nl/favicon.ico", "typeSource": "single", - "isManga": true, + "itemType": 0, "isNsfw": false, "version": "0.0.25", "apiUrl": "", diff --git a/javascript/manga/src/zh/copymanga.js b/javascript/manga/src/zh/copymanga.js index 9278cad6..0393af8b 100644 --- a/javascript/manga/src/zh/copymanga.js +++ b/javascript/manga/src/zh/copymanga.js @@ -5,7 +5,7 @@ const mangayomiSources = [{ "apiUrl": "https://api.mangacopy.com", "iconUrl": "https://hi77-overseas.mangafuna.xyz/static/free.ico", "typeSource": "single", - "isManga": true, + "itemType": 0, "isNsfw": false, "version": "0.0.2", "dateFormat": "", diff --git a/javascript/manga/src/zh/dmzj.js b/javascript/manga/src/zh/dmzj.js index 9c490fd4..da76ad2c 100644 --- a/javascript/manga/src/zh/dmzj.js +++ b/javascript/manga/src/zh/dmzj.js @@ -5,7 +5,7 @@ const mangayomiSources = [{ "apiUrl": "", "iconUrl": "https://www.dmzj.com/_nuxt/logo_dmzj.1c94014a.png", "typeSource": "single", - "isManga": true, + "itemType": 0, "isNsfw": false, "version": "0.0.25", "dateFormat": "", diff --git a/javascript/manga/src/zh/manhuadb.js b/javascript/manga/src/zh/manhuadb.js index bc270e02..b66cf33d 100644 --- a/javascript/manga/src/zh/manhuadb.js +++ b/javascript/manga/src/zh/manhuadb.js @@ -5,7 +5,7 @@ const mangayomiSources = [{ "apiUrl": "", "iconUrl": "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/main/javascript/icon/zh.manhuadb.png", "typeSource": "single", - "isManga": true, + "itemType": 0, "isNsfw": false, "version": "0.0.25", "dateFormat": "", diff --git a/javascript/manga/src/zh/manhuagui.js b/javascript/manga/src/zh/manhuagui.js index 6dd7c95c..94e30518 100644 --- a/javascript/manga/src/zh/manhuagui.js +++ b/javascript/manga/src/zh/manhuagui.js @@ -5,7 +5,7 @@ const mangayomiSources = [{ "apiUrl": "", "iconUrl": "https://www.manhuagui.com/favicon.ico", "typeSource": "single", - "isManga": true, + "itemType": 0, "isNsfw": false, "version": "0.0.25", "dateFormat": "", diff --git a/model/source.dart b/model/source.dart index a1bf987c..94b2b4c6 100644 --- a/model/source.dart +++ b/model/source.dart @@ -25,7 +25,7 @@ class Source { String? version; - bool? isManga; + ItemType? itemType; bool? isFullData; @@ -49,7 +49,7 @@ class Source { this.sourceCodeUrl = "", this.apiUrl = "", this.version = "", - this.isManga = true, + this.itemType = ItemType.manga, this.isFullData = false, this.appMinVerReq = "0.2.0", this.additionalParams = "", @@ -69,7 +69,7 @@ class Source { : 'mangayomi-js-"${json['lang'] ?? ""}"."${json['name'] ?? ""}"')) .hashCode; isFullData = json['isFullData'] ?? false; - isManga = json['isManga'] ?? false; + itemType = ItemType.values[json['itemType'] ?? 0]; isNsfw = json['isNsfw'] ?? false; lang = json['lang'] ?? ""; name = json['name'] ?? ""; @@ -95,7 +95,7 @@ class Source { "sourceCodeUrl": sourceCodeUrl, "apiUrl": apiUrl, "version": version, - "isManga": isManga, + "itemType": itemType?.index ?? 0, "isFullData": isFullData, "appMinVerReq": appMinVerReq, "additionalParams": additionalParams, @@ -105,3 +105,9 @@ class Source { } const branchName = "main"; + +enum ItemType { + manga, + anime, + novel +} \ No newline at end of file diff --git a/source_generator.dart b/source_generator.dart index e6a6e694..21944e78 100644 --- a/source_generator.dart +++ b/source_generator.dart @@ -3,12 +3,14 @@ import 'dart:developer'; import 'dart:io'; import 'dart/anime/anime_source_list.dart'; import 'dart/manga/manga_source_list.dart'; +import 'dart/novel/novel_source_list.dart'; import 'model/source.dart'; void main() { final jsSources = _searchJsSources(Directory("javascript")); - genManga(jsSources.where((element) => element.isManga!).toList()); - genAnime(jsSources.where((element) => !element.isManga!).toList()); + genManga(jsSources.where((element) => element.itemType == "manga").toList()); + genAnime(jsSources.where((element) => element.itemType == "anime").toList()); + genNovel(jsSources.where((element) => element.itemType == "novel").toList()); } void genManga(List jsMangasourceList) { @@ -39,6 +41,20 @@ void genAnime(List jsAnimesourceList) { log('JSON file created: ${file.path}'); } +void genNovel(List jsNovelSourceList) { + List novelSources = []; + novelSources.addAll(dartNovelSourceList); + novelSources.addAll(jsNovelSourceList); + final List> jsonList = + novelSources.map((source) => source.toJson()).toList(); + final jsonString = jsonEncode(jsonList); + + final file = File('novel_index.json'); + file.writeAsStringSync(jsonString); + + log('JSON file created: ${file.path}'); +} + List _searchJsSources(Directory dir) { List sourceList = []; List entities = dir.listSync();