My-Weekly-ToDo-List/tests/unit
mARTin-B78 7f850bb4e9
Some checks are pending
Playwright Tests / test (push) Waiting to run
Test and SonarQube / quality (push) Waiting to run
fix: URLs im Aufgabentitel als anklickbaren Link darstellen
Eine im Titel getippte URL war bisher reiner Text innerhalb des klickbaren Bereichs
der Aufgabe -- ein Klick darauf hat je nach Ansicht die Aufgabe durchgestrichen
(Tagesraster, GridTaskBlock) oder den Bearbeiten-Modus geoeffnet (Kanban/Someday/
Liste/Prioritaet, weekly/TaskItem.tsx und PriorityView.tsx), statt den Link zu oeffnen.

- src/lib/weekly/format.ts: neue reine Funktion splitTextAndUrls zerlegt einen Titel
  in Text- und URL-Abschnitte (http(s)://, www.-Adressen). Abschliessende Satzzeichen
  (".", ",", ")", ...) bleiben Text, nicht Teil des Links.
- src/components/weekly/LinkifiedText.tsx: rendert diese Abschnitte, URL-Abschnitte als
  echtes <a target="_blank" rel="noopener noreferrer"> mit stopPropagation, damit ein
  Klick ausschliesslich den Link oeffnet und nicht an den umgebenden Klick-Handler
  durchgereicht wird. Kein Titel ohne URL bekommt ein zusaetzliches Wrapper-Element.
- Eingebaut ueberall dort, wo ein Aufgabentitel bislang als reiner Text stand:
  GridTaskBlock.tsx, weekly/TaskItem.tsx, PriorityView.tsx.

Keine Aenderung an Daten, API oder dem separaten task.url-Feld (der eigene "Termin-
Link"-Button in TaskItem.tsx) -- reine Darstellungsaenderung.

8 neue Unit-Tests fuer splitTextAndUrls (Titel ohne URL, nur URL, URL mit Text davor/
danach, www.-Form, Satzzeichen am Ende, Klammern, zwei URLs im selben Titel).

Verifiziert: Typecheck, Lint (0 Fehler), 108 Unit-Tests (8 neu), Produktions-Build.

v1.128.0

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-14 14:03:17 +02:00
..
credential-crypto.test.ts feat: Kalender-Zugangsdaten verschluesselt speichern (AES-256-GCM) 2026-09-12 16:53:33 +02:00
date-utils.test.ts feat: Termine ueber Mitternacht am Tageswechsel teilen 2026-09-12 09:25:12 +02:00
drag-drop.test.ts refactor: Drop-Entscheidung aus handleDrop in reine, getestete Funktion ausgelagert 2026-09-13 13:54:28 +02:00
event-layout.test.ts refactor: Spaltenaufteilung ueberlappender Termine aus WeeklyView herausloesen 2026-09-12 09:30:29 +02:00
format.test.ts fix: URLs im Aufgabentitel als anklickbaren Link darstellen 2026-09-14 14:03:17 +02:00