Show loading text for include/exclude categories setting

Due to setting categories to be an empty array by default, the loading text was never shown
This commit is contained in:
schroda
2023-10-22 14:47:11 +02:00
parent 2ad9ccd9bd
commit b1aaeb4d5d

View File

@@ -101,11 +101,15 @@ export default function LibrarySettings() {
useSetDefaultBackTo('settings'); useSetDefaultBackTo('settings');
const { data, error: requestError } = requestManager.useGetCategories(); const { data, error: requestError } = requestManager.useGetCategories();
const categories = data?.categories.nodes ?? []; const categories = data?.categories.nodes;
const [dialogCategories, setDialogCategories] = useState<TCategory[]>(categories); const [dialogCategories, setDialogCategories] = useState<TCategory[]>(categories ?? []);
const [isDialogOpen, setIsDialogOpen] = useState(false); const [isDialogOpen, setIsDialogOpen] = useState(false);
useEffect(() => { useEffect(() => {
if (!categories) {
return;
}
setDialogCategories(categories); setDialogCategories(categories);
}, [categories]); }, [categories]);
@@ -135,7 +139,7 @@ export default function LibrarySettings() {
const updateCategories = async () => { const updateCategories = async () => {
const categoriesToUpdate = dialogCategories.filter((category) => { const categoriesToUpdate = dialogCategories.filter((category) => {
const currentCategory = categories.find((currCategory) => currCategory.id === category.id); const currentCategory = categories?.find((currCategory) => currCategory.id === category.id);
if (!currentCategory) { if (!currentCategory) {
return false; return false;