überarbeitet: 300 neue tasks von gemini erzeugen lassen. dazu event types "Konfirmation" und "Schulabschluss" ergänzt. alles in Kollektionen gepackt und die seeder angepasst.

Des weiteren: neue Blogartikel und howto-Artikel von ChatGPT.
Das QR-Code-Canvas funktioniert nun noch besser. die Layouts sehen besser aus.
Der PaketSeeder enthält nun die Paddle Sandbox ProductIDs
This commit is contained in:
Codex Agent
2025-11-02 21:52:38 +01:00
parent 792b5dfe8b
commit 073b51e2d5
33 changed files with 3013 additions and 961 deletions

View File

@@ -53,6 +53,11 @@ export function DesignerCanvas({
const pendingDisposeRef = React.useRef<number | null>(null);
const pendingTimeoutRef = React.useRef<number | null>(null);
const lastRenderSignatureRef = React.useRef<string | null>(null);
const requestedSelectionRef = React.useRef<string | null>(selectedId);
React.useEffect(() => {
requestedSelectionRef.current = selectedId;
}, [selectedId]);
const destroyCanvas = React.useCallback((canvas: fabric.Canvas | null) => {
if (!canvas) {
@@ -207,13 +212,19 @@ export function DesignerCanvas({
onSelect(null);
return;
}
requestedSelectionRef.current = active.elementId ?? null;
onSelect(active.elementId);
};
const handleSelectionCleared = () => {
const handleSelectionCleared = (event?: fabric.IEvent<MouseEvent>) => {
if (readOnly) {
return;
}
const triggeredByPointer = Boolean(event?.e);
if (!triggeredByPointer && requestedSelectionRef.current) {
return;
}
requestedSelectionRef.current = null;
onSelect(null);
};