gnezim
b3ab73253d
Add data model types, datetime utils, and dictionary hook
...
Port Angular flight types (ISimpleFlight, IFlightLeg, ITimesSet, etc.)
to minimal React-friendly interfaces. Add formatDuration/formatTime/
formatDate/isDayChange as pure functions. Stub useCityName hook as
passthrough pending customer dictionary API endpoint.
2026-04-15 07:55:00 +03:00
gnezim
2742568a85
Implement safe storage abstraction with Zod validation and namespace prefix
2026-04-15 00:47:22 +03:00
gnezim
ebe6c38713
Fix lint warnings in SignalR wrapper and hook tests
...
Remove unused imports, eliminate non-null assertions,
drop invalid eslint-disable comment for missing rule.
2026-04-15 00:44:31 +03:00
gnezim
4c52bb4032
Add useLiveFlights SSR-safe hook with tests
...
Generic hook wrapping SignalR subscription with SSR guard
(typeof window check). Includes tests for subscribe, data
updates, cleanup, and SSR path.
2026-04-15 00:42:51 +03:00
gnezim
7052052742
Add SignalRConnection ref-counted wrapper with tests
...
Reference-counted connection management with grace period,
dynamic import to keep @microsoft/signalr out of SSR bundle,
and singleton sharing via getSharedConnection.
2026-04-15 00:41:28 +03:00
gnezim
599f35f14a
Add JsonLdRenderer and serializeJsonLd with schema-dts typing
2026-04-15 00:20:07 +03:00
gnezim
8abe8acf70
Add buildHreflangSet for 9 languages + x-default
2026-04-15 00:18:35 +03:00
gnezim
7992d2705a
Add ApiClient React context provider with useApiClient hook
2026-04-14 23:46:20 +03:00
gnezim
04c5432aef
Add CachedApiClient decorator layered above ApiClient
2026-04-14 23:45:56 +03:00
gnezim
65c8c8b55f
Add ApiClient with retry, timeout, and error mapping
2026-04-14 23:42:22 +03:00
gnezim
cb5e5b0106
Add three cache types (request-scoped, client TTL, server byte-capped LRU)
2026-04-14 23:39:35 +03:00
gnezim
fd62d6f123
Add circuit breaker with closed/open/half-open state machine
2026-04-14 23:30:53 +03:00
gnezim
6ef9ce4ed7
Add typed API error classes (ApiHttpError, ApiTimeoutError, ApiNetworkError)
2026-04-14 23:30:00 +03:00