mirror of
https://github.com/4gray/iptvnator.git
synced 2026-10-15 13:46:16 -08:00
A restore whose write conflicted with an edit another device made during it had the conflict replay merge that edit in, and flushed() still said the lists were taken, so the restore was consumed with lists that were not the backup's. Both restore paths now compare the stored lists with the ones they wrote once the server took them, and a difference keeps the restore parked to run again on a fresh read. The two first-read tests released the mocked read after a fixed number of microtask turns, which could come before the read started; they now wait until it has. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
services
Shared runtime data access: injectable services, stores and runtime bridges
used across the renderer. It also hosts injectTranslationTick(), the signal
every computed that calls TranslateService.instant reads (see "Translated
Text" in the UI guidelines).
This library was generated with Nx.
Running unit tests
Run nx test services to execute the unit tests.