Simplify searching by making matching logic less strict.
- do not require full match
- additionally compare by removing all non letter and number chars
This prevents issues of manga having a specific library state while they are incorrectly in or not in categories.
E.g. a manga was removed from the library but the category update mutation failed, which now causes it to still be in the set categories while not being in the library anymore
In case the manga should not only be copied but actually migrated, the "migration" actions should only be executed in case the copy actions have succeeded.
In case chapters of the same manga had been fetched at the same time, they were sorted by their source order ascending instead of descending, which caused the newest chapter of that manga to be farther down instead of being the first
In case an uninitialized manga was opened from the library, the manga and its chapter list got refreshed.
However, the chapter infos (e.g. unread, downloaded count, etc.) were not requested with the chapter list mutation, which resulted in this information to be missing
With the changes from df006bb348, the requested download queue data changed not matching the previously used type.
The unnecessary cast then hid the tsc issues during compilation
In case there were no chapters to migrate the read or bookmark status, a request with an empty list was sent to the server.
This caused an exception on the server which resulted in a request failure which at the end caused the migration to fail
In case "skip duplicated chapters" is enabled and the next chapter is from a different scanlator, the initial opened chapter should still be used to remove duplicated chapters.
Otherwise, the original scanlator would get lost and the scanlator of the next chapter would get used, which was only a fallback chapter, because the initial chapters scanlator did not have a next chapter.