diff --git a/apps/web/src/routes/cards/[id]/edit/+page.svelte b/apps/web/src/routes/cards/[id]/edit/+page.svelte new file mode 100644 index 0000000..ea10954 --- /dev/null +++ b/apps/web/src/routes/cards/[id]/edit/+page.svelte @@ -0,0 +1,236 @@ + + + + Karte bearbeiten · Cards + + +
+ {#if loading} +

Lade…

+ {:else if error} +

Fehler: {error}

+ {:else if card} + ← Zurück zum Deck +
+

Karte bearbeiten

+ + {cardType} + +
+

+ Der Card-Type kann nicht geändert werden — die Reviews-Tabelle hängt am Type. +

+ +
+ {#if cardType === 'cloze'} +
+ +

+ {'{{c1::Antwort}}'} definiert eine Lücke. Pro Cluster-ID + (c1, c2, …) entsteht ein eigenes Review. +

+ {#if text.trim() && clusterIds.length === 0} +

+ Mindestens ein {'{{cN::…}}'}-Cluster wird gebraucht. +

+ {:else if clusterIds.length > 0} +

+ {clusterIds.length} Cluster erkannt: c{clusterIds.join(', c')} → {clusterIds.length} + Reviews. +

+ {/if} +
+ + {#if clozePreviewHtml} +
+
+ Vorschau (c{clusterIds[0]} maskiert) +
+
{@html clozePreviewHtml}
+
+ {/if} + + + {:else} +
+
+ + {#if front.trim()} +
+
Vorschau
+
{@html frontHtml}
+
+ {/if} +
+
+ + {#if back.trim()} +
+
Vorschau
+
{@html backHtml}
+
+ {/if} +
+
+ {/if} + +
+
+ + Abbrechen +
+ +
+
+ {/if} +
diff --git a/apps/web/src/routes/decks/[id]/+page.svelte b/apps/web/src/routes/decks/[id]/+page.svelte index 2ba9a8f..e2feb20 100644 --- a/apps/web/src/routes/decks/[id]/+page.svelte +++ b/apps/web/src/routes/decks/[id]/+page.svelte @@ -121,17 +121,24 @@