Move "getMigratable" function to "MigrationEntries"

This commit is contained in:
schroda
2026-05-16 02:35:25 +02:00
parent 21c16d4ba9
commit 05a722de8d
3 changed files with 20 additions and 18 deletions

View File

@@ -6,7 +6,8 @@
* file, You can obtain one at https://mozilla.org/MPL/2.0/.
*/
import type { MigrationEntryStatus, TMigrationEntry } from '@/features/migration/Migration.types.ts';
import type { MigratableEntry, TMigrationEntry } from '@/features/migration/Migration.types.ts';
import { MigrationEntryStatus } from '@/features/migration/Migration.types.ts';
export class MigrationEntries {
public static getExcluded(entries: TMigrationEntry[]): TMigrationEntry[] {
@@ -43,4 +44,14 @@ export class MigrationEntries {
return a.mangaTitle.localeCompare(b.mangaTitle);
});
}
public static getMigratable(entries: TMigrationEntry[]): MigratableEntry[] {
return Object.values(entries).filter(
(entry): entry is MigratableEntry =>
[MigrationEntryStatus.SEARCH_COMPLETE, MigrationEntryStatus.MIGRATING].includes(entry.status) &&
!entry.isExcluded &&
entry.selectedMatchMangaId != null &&
entry.selectedMatchSourceId != null,
);
}
}