refactor(frontend): enforce semantic tokens + extract 3 Screen Models

Color tokens: 3658→0 violations across 186 .svelte/.svelte.ts files.
All raw Tailwind colors (bg-blue-*, text-gray-*, border-red-*, etc.)
replaced with semantic tokens from tailwind.config.js in 5 perl passes.

Model extraction (11→8 oversized pages):
- LLMReportModel.svelte.ts: LLM report page 413→221 lines
- DatasetDetailModel.svelte.ts: dataset detail page 416→218 lines
- DatasetsHubModel.svelte.ts: datasets hub page 468→246 lines

Tests: 14 assertions updated (color classes + model refs).
Build: 1 duplicate class:text-primary fix in ValidationTaskForm.
All 699/699 tests pass.
This commit is contained in:
2026-06-02 17:58:30 +03:00
parent 29acfb4e69
commit cf7b3556f7
156 changed files with 4581 additions and 4569 deletions

View File

@@ -160,7 +160,7 @@ describe('DashboardMaintenanceBadge', () => {
const { container } = render(DashboardMaintenanceBadge, {
props: { dashboardId: 42 }
});
const badgeElements = container.querySelectorAll('.bg-orange-100');
const badgeElements = container.querySelectorAll('.bg-warning-light');
expect(badgeElements.length).toBe(0);
});
@@ -171,7 +171,7 @@ describe('DashboardMaintenanceBadge', () => {
const { container } = render(DashboardMaintenanceBadge, {
props: { dashboardId: 42 }
});
const badge = container.querySelector('.bg-orange-100');
const badge = container.querySelector('.bg-warning-light');
expect(badge).toBeTruthy();
expect(badge?.textContent).toContain('Maintenance');
});
@@ -183,7 +183,7 @@ describe('DashboardMaintenanceBadge', () => {
const { container } = render(DashboardMaintenanceBadge, {
props: { dashboardId: 42 }
});
const badge = container.querySelector('.bg-orange-100');
const badge = container.querySelector('.bg-warning-light');
expect(badge).toBeNull();
});
});