- Add src/lib/components/JobErrorLine.svelte: reusable error banner with icon, truncated message, accent retry and danger delete buttons; Svelte 5 runes; WCAG AA (role=alert/status, aria-busy, aria-label, focus ring) - Integrate into src/routes/+page.svelte: replace .recent-err-line div with JobErrorLine; add handleRetry function updating jobs array in-place - Integrate into src/routes/jobs/+page.svelte: remove inline .job-err-inline and .row-retry-slot; add JobErrorLine inside .job-info for failed/cancelled; refactor retryJobById/deleteJobById with clean (jobId: string) signatures; done-job delete preserved in row-actions - Add src/tests/job-error-line.test.ts: 8 component rendering tests via @testing-library/svelte + happy-dom covering message, buttons, callbacks, fallback text, and ARIA roles - Install @testing-library/svelte@5 and happy-dom as devDeps for component test support; update vitest.config.ts with svelte plugin, happy-dom env match glob, and browser resolve condition for Svelte 5 client build Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
43 lines
1.2 KiB
JSON
43 lines
1.2 KiB
JSON
{
|
|
"name": "tonemark",
|
|
"private": true,
|
|
"version": "0.0.1",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "vite dev",
|
|
"build": "vite build",
|
|
"preview": "vite preview",
|
|
"prepare": "svelte-kit sync || echo ''",
|
|
"check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
|
|
"check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
|
|
"start": "node build",
|
|
"test": "vitest run",
|
|
"test:watch": "vitest",
|
|
"test:coverage": "vitest run --coverage"
|
|
},
|
|
"devDependencies": {
|
|
"@sveltejs/adapter-auto": "^7.0.1",
|
|
"@sveltejs/kit": "^2.57.0",
|
|
"@sveltejs/vite-plugin-svelte": "^7.0.0",
|
|
"@tailwindcss/vite": "^4.2.4",
|
|
"@testing-library/svelte": "^5.4.2",
|
|
"@types/better-sqlite3": "^7.6.13",
|
|
"@types/web-push": "^3.6.4",
|
|
"@vitest/coverage-v8": "^4.1.5",
|
|
"happy-dom": "^20.10.6",
|
|
"svelte": "^5.55.2",
|
|
"svelte-check": "^4.4.6",
|
|
"typescript": "^6.0.2",
|
|
"vite": "^8.0.7",
|
|
"vitest": "^4.1.5"
|
|
},
|
|
"dependencies": {
|
|
"@sveltejs/adapter-node": "^5.5.4",
|
|
"better-sqlite3": "^12.9.0",
|
|
"form-data": "^4.0.5",
|
|
"node-fetch": "^3.3.2",
|
|
"web-push": "^3.6.7",
|
|
"youtube-transcript": "^1.3.1"
|
|
}
|
|
}
|