added some more error handling for edge cases
This commit is contained in:
parent
6c715dcfb9
commit
531e69cf44
3 changed files with 44 additions and 15 deletions
|
|
@ -86,7 +86,11 @@ class SortChapterState extends _$SortChapterState {
|
|||
.sortChapterList!
|
||||
.where((element) => element.mangaId == mangaId)
|
||||
.toList()
|
||||
.first;
|
||||
.firstOrNull ?? SortChapter(
|
||||
mangaId: mangaId,
|
||||
index: 1,
|
||||
reverse: false,
|
||||
);
|
||||
}
|
||||
|
||||
void update(bool reverse, int index) {
|
||||
|
|
@ -128,12 +132,15 @@ class ChapterFilterDownloadedState extends _$ChapterFilterDownloadedState {
|
|||
}
|
||||
|
||||
int getType() {
|
||||
return isar.settings
|
||||
return (isar.settings
|
||||
.getSync(227)!
|
||||
.chapterFilterDownloadedList!
|
||||
.where((element) => element.mangaId == mangaId)
|
||||
.toList()
|
||||
.first
|
||||
.firstOrNull ?? ChapterFilterDownloaded(
|
||||
mangaId: mangaId,
|
||||
type: 0,
|
||||
))
|
||||
.type!;
|
||||
}
|
||||
|
||||
|
|
@ -177,12 +184,15 @@ class ChapterFilterUnreadState extends _$ChapterFilterUnreadState {
|
|||
}
|
||||
|
||||
int getType() {
|
||||
return isar.settings
|
||||
return (isar.settings
|
||||
.getSync(227)!
|
||||
.chapterFilterUnreadList!
|
||||
.where((element) => element.mangaId == mangaId)
|
||||
.toList()
|
||||
.first
|
||||
.firstOrNull ?? ChapterFilterUnread(
|
||||
mangaId: mangaId,
|
||||
type: 0,
|
||||
))
|
||||
.type!;
|
||||
}
|
||||
|
||||
|
|
@ -225,12 +235,15 @@ class ChapterFilterBookmarkedState extends _$ChapterFilterBookmarkedState {
|
|||
}
|
||||
|
||||
int getType() {
|
||||
return isar.settings
|
||||
return (isar.settings
|
||||
.getSync(227)!
|
||||
.chapterFilterBookmarkedList!
|
||||
.where((element) => element.mangaId == mangaId)
|
||||
.toList()
|
||||
.first
|
||||
.firstOrNull ?? ChapterFilterBookmarked(
|
||||
mangaId: mangaId,
|
||||
type: 0,
|
||||
))
|
||||
.type!;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -417,35 +417,48 @@ extension ChapterExtensions on Chapter {
|
|||
extension MangaExtensions on Manga {
|
||||
List<Chapter> getFilteredChapterList() {
|
||||
final data = this.chapters.toList().reversed.toList();
|
||||
final filterUnread = isar.settings
|
||||
final filterUnread = (isar.settings
|
||||
.getSync(227)!
|
||||
.chapterFilterUnreadList!
|
||||
.where((element) => element.mangaId == id)
|
||||
.toList()
|
||||
.first
|
||||
.firstOrNull ?? ChapterFilterUnread(
|
||||
mangaId: id,
|
||||
type: 0,
|
||||
))
|
||||
.type!;
|
||||
|
||||
final filterBookmarked = isar.settings
|
||||
final filterBookmarked = (isar.settings
|
||||
.getSync(227)!
|
||||
.chapterFilterBookmarkedList!
|
||||
.where((element) => element.mangaId == id)
|
||||
.toList()
|
||||
.first
|
||||
.firstOrNull ?? ChapterFilterBookmarked(
|
||||
mangaId: id,
|
||||
type: 0,
|
||||
))
|
||||
.type!;
|
||||
final filterDownloaded = isar.settings
|
||||
final filterDownloaded = (isar.settings
|
||||
.getSync(227)!
|
||||
.chapterFilterDownloadedList!
|
||||
.where((element) => element.mangaId == id)
|
||||
.toList()
|
||||
.first
|
||||
.firstOrNull ?? ChapterFilterDownloaded(
|
||||
mangaId: id,
|
||||
type: 0,
|
||||
))
|
||||
.type!;
|
||||
|
||||
final sortChapter = isar.settings
|
||||
final sortChapter = (isar.settings
|
||||
.getSync(227)!
|
||||
.sortChapterList!
|
||||
.where((element) => element.mangaId == id)
|
||||
.toList()
|
||||
.first
|
||||
.firstOrNull ?? SortChapter(
|
||||
mangaId: id,
|
||||
index: 1,
|
||||
reverse: false,
|
||||
))
|
||||
.index;
|
||||
final filterScanlator = _getFilterScanlator(this) ?? [];
|
||||
List<Chapter>? chapterList;
|
||||
|
|
|
|||
|
|
@ -488,6 +488,9 @@ class SyncServer extends _$SyncServer {
|
|||
if (settings != null) {
|
||||
isar.settings.putAllSync(settings);
|
||||
}
|
||||
if (isar.settings.getSync(227) == null) {
|
||||
isar.settings.putSync(Settings(id: 227));
|
||||
}
|
||||
isar.settings.putSync(
|
||||
isar.settings.getSync(227)!..syncAfterReading = syncAfterReading);
|
||||
isar.settings.putSync(
|
||||
|
|
|
|||
Loading…
Reference in a new issue