From 4c7dc0ae28a5ee08594a5ce3053f3067342d21a7 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Mon, 29 Sep 2025 13:31:54 +0200 Subject: [PATCH] Expose GetLatestSnapshots on DataModel --- src/SIL.Harmony/DataModel.cs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/SIL.Harmony/DataModel.cs b/src/SIL.Harmony/DataModel.cs index 9235389..869d4eb 100644 --- a/src/SIL.Harmony/DataModel.cs +++ b/src/SIL.Harmony/DataModel.cs @@ -251,6 +251,15 @@ public async Task GetLatestSnapshotByObjectId(Guid entityId) throw new ArgumentException($"unable to find snapshot for entity {entityId}"); } + public async IAsyncEnumerable GetLatestSnapshots() + { + await using var repo = await _crdtRepositoryFactory.CreateRepository(); + await foreach (var snapshot in repo.CurrentSnapshots().AsAsyncEnumerable()) + { + yield return snapshot; + } + } + public async Task GetLatest(Guid objectId) where T : class { return await _crdtRepositoryFactory.Execute(repo => repo.GetCurrent(objectId));