refactoring, numbering plan
This commit is contained in:
1 parent
b5279434b2
commit
3b04039aa9
47 files changed
+3485
-953
No files matched your search
@@ -4,6 +4,7 @@
|
||||
import Button from '$lib/components/ui/button.svelte';
|
||||
import { createBatchItem, runBatch, type BatchItem } from '$lib/batch';
|
||||
import { downloadBlob } from '$lib/download';
|
||||
import { pdfProcessingErrorMessage } from '$lib/pdf-errors';
|
||||
import {
|
||||
compressWithPreset,
|
||||
compressionPresets,
|
||||
@@ -12,6 +13,9 @@
|
||||
import { isRasterizationTooLarge, RASTERIZATION_MAX_BYTES } from '$lib/rasterization-limits';
|
||||
import { AlertTriangle } from '@lucide/svelte';
|
||||
|
||||
const compressErrorMessage = (error: unknown) =>
|
||||
pdfProcessingErrorMessage(error, 'Diese PDF konnte nicht komprimiert werden.');
|
||||
|
||||
let items = $state<BatchItem[]>([]);
|
||||
let selectedPreset = $state(defaultCompressionPreset.id);
|
||||
let isRunning = $state(false);
|
||||
@@ -55,7 +59,7 @@
|
||||
isRunning = true;
|
||||
try {
|
||||
await runBatch(queue, processFile, updateItem, {
|
||||
errorMessage: 'Diese PDF konnte nicht komprimiert werden.',
|
||||
errorMessage: compressErrorMessage,
|
||||
// Skip rows removed while they were still waiting in the queue.
|
||||
shouldProcess: (id) => items.some((item) => item.id === id)
|
||||
});
|
||||
@@ -72,7 +76,7 @@
|
||||
isRunning = true;
|
||||
try {
|
||||
await runBatch([item], processFile, updateItem, {
|
||||
errorMessage: 'Diese PDF konnte nicht komprimiert werden.'
|
||||
errorMessage: compressErrorMessage
|
||||
});
|
||||
} finally {
|
||||
isRunning = false;
|
||||
@@ -97,8 +101,8 @@
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="rounded-lg border border-amber-200 bg-amber-50 p-4 flex gap-3">
|
||||
<AlertTriangle class="h-5 w-5 shrink-0 text-amber-600 mt-0.5" />
|
||||
<div class="flex gap-3 rounded-lg border border-amber-200 bg-amber-50 p-4">
|
||||
<AlertTriangle class="mt-0.5 h-5 w-5 shrink-0 text-amber-600" />
|
||||
<div class="text-sm text-amber-800">
|
||||
<p class="font-medium">Hinweis zur Qualität</p>
|
||||
<p class="mt-1">
|
||||
@@ -118,17 +122,17 @@
|
||||
/>
|
||||
|
||||
{#if items.length > 0}
|
||||
<div class="rounded-2xl border border-border bg-card p-4 space-y-4">
|
||||
<div class="space-y-4 rounded-2xl border border-border bg-card p-4">
|
||||
<h2 class="text-lg font-semibold text-foreground">Komprimierungsstufe</h2>
|
||||
<p class="text-xs text-primary">Die Einstellung gilt für alle Dateien der Liste.</p>
|
||||
|
||||
<div class="space-y-2">
|
||||
{#each compressionPresets as preset (preset.id)}
|
||||
<label
|
||||
class="flex items-start gap-3 rounded-lg border p-3 cursor-pointer transition {selectedPreset ===
|
||||
class="flex cursor-pointer items-start gap-3 rounded-lg border p-3 transition {selectedPreset ===
|
||||
preset.id
|
||||
? 'border-primary bg-primary/5'
|
||||
: 'border-border hover:border-primary-300'}"
|
||||
: 'hover:border-primary-300 border-border'}"
|
||||
>
|
||||
<input
|
||||
type="radio"
|
||||
|
||||
Reference in new issue
Block a user