From 8d90a9153700aaee302451fb25cd4d1746e76482 Mon Sep 17 00:00:00 2001
From: schroda <50052685+schroda@users.noreply.github.com>
Date: Sat, 16 May 2026 02:49:07 +0200
Subject: [PATCH] Show info text when no available migration destination
sources
---
CHANGELOG.md | 1 +
...ceList.tsx => MigrationDestinationSourceList.tsx} | 7 ++++++-
.../screens/MigrationSelectDestinationSources.tsx | 4 ++--
src/i18n/locales/en.po | 12 ++++++++----
4 files changed, 17 insertions(+), 7 deletions(-)
rename src/features/migration/components/{MigrationSourceList.tsx => MigrationDestinationSourceList.tsx} (97%)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 5c27fd58..0d05d87a 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -21,6 +21,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
- (**Migration**) Fix aborting bulk migration search/execution while webUI is served on a subpath
- (**Migration**) Fix retry button never being shown for failed search/migration entries
- (**Migration**) Fix showing an empty "Available" source group header when all sources are selected
+- (**Migration**) Fix showing no info message when no sources are available to select as destinations
- (**Reader**) Fix scrollbar appearing with "fit to widt/height/screen" page scale mode and applied safe area insets
- (**Reader**) Fix wrongly positioned mobile progress bar current page indicator
- (**Reader**) Fix mobile progress bar previous/next chapter button visibility on hover and while disabled
diff --git a/src/features/migration/components/MigrationSourceList.tsx b/src/features/migration/components/MigrationDestinationSourceList.tsx
similarity index 97%
rename from src/features/migration/components/MigrationSourceList.tsx
rename to src/features/migration/components/MigrationDestinationSourceList.tsx
index af56bdd0..67ce23d5 100644
--- a/src/features/migration/components/MigrationSourceList.tsx
+++ b/src/features/migration/components/MigrationDestinationSourceList.tsx
@@ -35,6 +35,7 @@ import DragHandle from '@mui/icons-material/DragHandle';
import { languageCodeToName } from '@/base/utils/Languages.ts';
import { DEFAULT_FULL_FAB_HEIGHT } from '@/base/components/buttons/StyledFab.tsx';
import Stack from '@mui/material/Stack';
+import { EmptyViewAbsoluteCentered } from '@/base/components/feedback/EmptyViewAbsoluteCentered.tsx';
const SourceCard = memo(
({
@@ -88,7 +89,7 @@ const SourceCard = memo(
},
);
-export const MigrationSourceList = ({
+export const MigrationDestinationSourceList = ({
sources,
handleSelection,
selectedSourceIds,
@@ -161,6 +162,10 @@ export const MigrationSourceList = ({
handlePriorityChange(oldIndex, newIndex);
};
+ if (!allSources.length) {
+ return ;
+ }
+
return (
{
const { t } = useLingui();
@@ -155,7 +155,7 @@ export const MigrationSelectDestinationSources = () => {
return (
<>
-