diff --git a/lib/services/trackers/anilist.dart b/lib/services/trackers/anilist.dart index 3145fc29..5c4666b7 100644 --- a/lib/services/trackers/anilist.dart +++ b/lib/services/trackers/anilist.dart @@ -16,15 +16,15 @@ part 'anilist.g.dart'; @riverpod class Anilist extends _$Anilist { final http = MClient.init(reqcopyWith: {'useDartHttpClient': true}); - static final isDesktop = Platform.isWindows || Platform.isLinux; - final String _clientId = isDesktop ? '13587' : '13588'; + static final _isDesktop = Platform.isWindows || Platform.isLinux; + final String _clientId = _isDesktop ? '13587' : '13588'; static const String _baseApiUrl = "https://graphql.anilist.co/"; final String _redirectUri = - isDesktop + _isDesktop ? 'http://localhost:43824/success?code=1337' : 'mangayomi://success?code=1337'; final String _clientSecret = - isDesktop + _isDesktop ? 'tJA13cAR2tCCXrJCwwvmwEDbWRoIaahFiJTXToHd' : 'G2fFUiGtgFd60D0lCkhgGKvMmrCfDmZXADQIzWXr'; @@ -33,7 +33,7 @@ class Anilist extends _$Anilist { Future login() async { final callbackUrlScheme = - isDesktop ? 'http://localhost:43824' : 'mangayomi'; + _isDesktop ? 'http://localhost:43824' : 'mangayomi'; final loginUrl = 'https://anilist.co/api/v2/oauth/authorize?client_id=$_clientId' '&redirect_uri=$_redirectUri&response_type=code'; @@ -207,7 +207,7 @@ class Anilist extends _$Anilist { ..libraryId = jsonRes['id'] as int ..syncId = syncId ..mediaId = jsonRes['media']['id'] as int - ..status = getALTrackStatus(jsonRes['status'], isManga) + ..status = _getALTrackStatus(jsonRes['status'], isManga) ..title = jsonRes['media']['title']['userPreferred'] ?? '' ..score = jsonRes['scoreRaw'] as int? ..lastChapterRead = jsonRes['progress'] as int? ?? 0 @@ -224,7 +224,7 @@ class Anilist extends _$Anilist { Uri.parse(_baseApiUrl), headers: { 'Content-Type': 'application/json', - 'Authorization': 'Bearer ${await getAccessToken()}', + 'Authorization': 'Bearer ${await _getAccessToken()}', }, body: jsonEncode({'query': document, 'variables': variables}), ); @@ -265,7 +265,7 @@ class Anilist extends _$Anilist { ); } - Future getAccessToken() async { + Future _getAccessToken() async { final track = ref.watch(tracksProvider(syncId: syncId)); final mALOAuth = OAuth.fromJson( jsonDecode(track!.oAuth!) as Map, @@ -304,7 +304,7 @@ class Anilist extends _$Anilist { }; } - TrackStatus getALTrackStatus(String status, bool isManga) { + TrackStatus _getALTrackStatus(String status, bool isManga) { return switch (status) { "CURRENT" => isManga ? TrackStatus.reading : TrackStatus.watching, "COMPLETED" => TrackStatus.completed, diff --git a/lib/services/trackers/kitsu.dart b/lib/services/trackers/kitsu.dart index 2d2c402b..2d195190 100644 --- a/lib/services/trackers/kitsu.dart +++ b/lib/services/trackers/kitsu.dart @@ -81,7 +81,7 @@ class Kitsu extends _$Kitsu { ); final headers = { "Content-Type": "application/vnd.api+json", - 'Authorization': 'Bearer ${getAccessToken()}', + 'Authorization': 'Bearer ${_getAccessToken()}', }; final payload = jsonEncode({ "data": { @@ -122,10 +122,10 @@ class Kitsu extends _$Kitsu { } Future> search(String search, bool isManga) async { - final accessToken = getAccessToken(); + final accessToken = _getAccessToken(); final url = Uri.parse(_algoliaKeyUrl); - final algoliaKeyResponse = await makeGetRequest(url, accessToken); + final algoliaKeyResponse = await _makeGetRequest(url, accessToken); final key = json.decode(algoliaKeyResponse.body)["media"]["key"]; final response = await http.post( Uri.parse(_algoliaUrl), @@ -169,12 +169,12 @@ class Kitsu extends _$Kitsu { Future findLibItem(Track track, bool isManga) async { final type = isManga ? "manga" : "anime"; final userId = _getUserId(); - final accessToken = getAccessToken(); + final accessToken = _getAccessToken(); final url = Uri.parse( '${_baseUrl}library-entries?filter[${type}_id]=${track.libraryId}&filter[user_id]=$userId&include=$type', ); - Response response = await makeGetRequest(url, accessToken); + Response response = await _makeGetRequest(url, accessToken); if (response.statusCode == 200) { final parsed = parseTrackResponse(response, track, type); if (parsed != null) return parsed; @@ -182,7 +182,7 @@ class Kitsu extends _$Kitsu { return await getItem(track, type); } - Future makeGetRequest(Uri url, String accessToken) async { + Future _makeGetRequest(Uri url, String accessToken) async { return await http.get( url, headers: { @@ -193,11 +193,11 @@ class Kitsu extends _$Kitsu { } Future getItem(Track track, String type) async { - final accessToken = getAccessToken(); + final accessToken = _getAccessToken(); final url = Uri.parse( '${_baseUrl}library-entries?filter[id]=${track.mediaId}&include=$type', ); - Response response = await makeGetRequest(url, accessToken); + Response response = await _makeGetRequest(url, accessToken); if (response.statusCode == 200) { return parseTrackResponse(response, track, type); } @@ -232,7 +232,7 @@ class Kitsu extends _$Kitsu { Future<(String, String)> _getCurrentUser(String accessToken) async { final url = Uri.parse('${_baseUrl}users?filter[self]=true'); - Response response = await makeGetRequest(url, accessToken); + Response response = await _makeGetRequest(url, accessToken); final data = json.decode(response.body)['data'][0]; return ( data['id'].toString(), @@ -240,7 +240,7 @@ class Kitsu extends _$Kitsu { ); } - String getAccessToken() { + String _getAccessToken() { final track = ref.watch(tracksProvider(syncId: syncId)); final mAKOAuth = OAuth.fromJson( jsonDecode(track!.oAuth!) as Map, diff --git a/lib/services/trackers/myanimelist.dart b/lib/services/trackers/myanimelist.dart index f94d8923..4a4275f4 100644 --- a/lib/services/trackers/myanimelist.dart +++ b/lib/services/trackers/myanimelist.dart @@ -65,7 +65,7 @@ class MyAnimeList extends _$MyAnimeList { } } - Future getAccessToken() async { + Future _getAccessToken() async { final track = ref.watch(tracksProvider(syncId: syncId)); final mALOAuth = OAuth.fromJson( jsonDecode(track!.oAuth!) as Map, @@ -101,11 +101,11 @@ class MyAnimeList extends _$MyAnimeList { } Future> search(String query, isManga) async { - final accessToken = await getAccessToken(); + final accessToken = await _getAccessToken(); final url = Uri.parse( '$baseApiUrl/${isManga ? "manga" : "anime"}', ).replace(queryParameters: {'q': query.trim(), 'nsfw': 'true'}); - final result = await makeGetRequest(url, accessToken); + final result = await _makeGetRequest(url, accessToken); final res = jsonDecode(result.body) as Map; List mangaIds = @@ -135,7 +135,7 @@ class MyAnimeList extends _$MyAnimeList { }, ); - final result = await makeGetRequest(url, accessToken); + final result = await _makeGetRequest(url, accessToken); final res = jsonDecode(result.body) as Map; return TrackSearch( @@ -174,7 +174,7 @@ class MyAnimeList extends _$MyAnimeList { return '$baseOAuthUrl/authorize?client_id=$clientId&code_challenge=$codeVerifier&response_type=code'; } - TrackStatus getMALTrackStatus(String status, bool isManga) { + TrackStatus _getMALTrackStatus(String status, bool isManga) { return switch (status) { "reading" when isManga => TrackStatus.reading, "watching" when !isManga => TrackStatus.watching, @@ -224,7 +224,7 @@ class MyAnimeList extends _$MyAnimeList { } Future _getUserName(String accessToken) async { - final response = await makeGetRequest( + final response = await _makeGetRequest( Uri.parse('$baseApiUrl/users/@me'), accessToken, ); @@ -234,30 +234,30 @@ class MyAnimeList extends _$MyAnimeList { Future findLibItem(Track track, bool isManga) async { final type = isManga ? "manga" : "anime"; final contentUnit = isManga ? 'num_chapters' : 'num_episodes'; - final accessToken = await getAccessToken(); + final accessToken = await _getAccessToken(); final uri = Uri.parse('$baseApiUrl/$type/${track.mediaId}').replace( queryParameters: { 'fields': '$contentUnit,my_list_status{start_date,finish_date}', }, ); - final response = await makeGetRequest(uri, accessToken); + final response = await _makeGetRequest(uri, accessToken); final mJson = jsonDecode(response.body); track.totalChapter = mJson[contentUnit] ?? 0; if (mJson['my_list_status'] != null) { - track = parseItem(mJson["my_list_status"], track, isManga); + track = _parseItem(mJson["my_list_status"], track, isManga); } else { track = await update(track, isManga); } return track; } - Track parseItem(Map mJson, Track track, bool isManga) { + Track _parseItem(Map mJson, Track track, bool isManga) { bool isRepeating = mJson[isManga ? "is_rereading" : "is_rewatching"] ?? false; track.status = isRepeating ? (isManga ? TrackStatus.reReading : TrackStatus.reWatching) - : getMALTrackStatus(mJson["status"], isManga); + : _getMALTrackStatus(mJson["status"], isManga); track.lastChapterRead = int.parse( mJson[isManga ? "num_chapters_read" : "num_episodes_watched"].toString(), ); @@ -275,7 +275,7 @@ class MyAnimeList extends _$MyAnimeList { } Future update(Track track, bool isManga) async { - final accessToken = await getAccessToken(); + final accessToken = await _getAccessToken(); final formBody = { 'status': (toMyAnimeListStatus(track.status, isManga) ?? @@ -304,10 +304,10 @@ class MyAnimeList extends _$MyAnimeList { request.headers.addAll({'Authorization': 'Bearer $accessToken'}); final response = await Client().send(request); final mJson = jsonDecode(await response.stream.bytesToString()); - return parseItem(mJson, track, isManga); + return _parseItem(mJson, track, isManga); } - Future makeGetRequest(Uri url, String accessToken) async { + Future _makeGetRequest(Uri url, String accessToken) async { return await http.get( url, headers: {'Authorization': 'Bearer $accessToken'},