06097be829
Deploy PROD / deploy (push) Successful in 25s
Sama data w naglowku mowi KIEDY, ale nie mowi ZA ILE: "14 wrzesnia, godz. 10:00" wymaga od odwiedzajacego przeliczenia w glowie. Licznik odpowiada na pytanie, ktore naprawde sobie zadaje: czy to juz, czy jeszcze daleko. Przy wydarzeniu za dwie godziny jest przy okazji sygnalem, ze warto zapisac sie teraz, a nie wrocic pozniej. Miejsce: pod trescia strony, nad formularzem zapisu. ZNIKA PO TERMINIE Odliczanie do czegos, co juz sie zaczelo, wprowadza w blad. Po `startsAt` komponent nie renderuje sie wcale, wiec przy webinarze zakonczonym nie pokazuje zer obok komunikatu o zamknieciu zapisow. CZAS Z ZEGARA, NIE Z ODEJMOWANIA Wartosc bierze sie z roznicy dat przy kazdym tyknieciu. Karta uspiona przez przegladarke wstrzymuje `setInterval`, wiec licznik odliczajacy "o jeden" rozjechalby sie z zegarem tym bardziej, im dluzej strona byla w tle. STREFA CZASOWA Backend zwraca `OffsetDateTime`, czyli moment z przesunieciem, wiec odliczanie jest poprawne takze dla odwiedzajacego z innej strefy niz webinar. Zgodnie z regula, ze strefa zostaje jawna tam, gdzie ma znaczenie. `tabular-nums` (klasa `hx-data`) nie jest tu ozdoba: bez niego cyfry maja rozne szerokosci i licznik drga przy kazdej zmianie sekundy. Czytnik ekranu dostaje jedno zdanie z `aria-live`, a nie cztery liczby odczytane po kolei: same cyfry z podpisami sa dla oka, a odczytane brzmialyby jak zbior przypadkowych wartosci. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>