ui(admin/system): improve mass-import card (loading state, i18n, font size) #569

Merged
marcel merged 10 commits from feat/issue-533-mass-import-ux into main 2026-05-14 17:20:20 +02:00
Showing only changes of commit 0d934a1b44 - Show all commits

View File

@@ -1,5 +1,6 @@
import { describe, expect, it, vi } from 'vitest';
import { render } from 'vitest-browser-svelte';
import { m } from '$lib/paraglide/messages.js';
import ImportStatusCard from './ImportStatusCard.svelte';
type ImportStatus = {
@@ -26,7 +27,7 @@ describe('ImportStatusCard', () => {
}
});
await expect.element(getByTestId('spinner')).toBeVisible();
await expect.element(getByTestId('spinner')).toBeAttached();
});
it('shows processed count at text-base while RUNNING', async () => {
@@ -62,7 +63,7 @@ describe('ImportStatusCard', () => {
}
});
await expect.element(getByText('No spreadsheet file found.')).toBeVisible();
await expect.element(getByText(m.admin_system_import_failed_no_spreadsheet())).toBeVisible();
});
it('shows internal error message when statusCode is IMPORT_FAILED_INTERNAL', async () => {
@@ -73,7 +74,7 @@ describe('ImportStatusCard', () => {
}
});
await expect.element(getByText('Import failed due to an internal error.')).toBeVisible();
await expect.element(getByText(m.admin_system_import_failed_internal())).toBeVisible();
});
it('shows idle text when importStatus is non-null and state is IDLE', async () => {
@@ -84,7 +85,7 @@ describe('ImportStatusCard', () => {
}
});
await expect.element(getByText('No import started.')).toBeVisible();
await expect.element(getByText(m.admin_system_import_status_idle())).toBeVisible();
});
it('shows no spinner when importStatus is null', async () => {