+ @* DateTimeRangeFilter is INPUT-ONLY: it surfaces the raw datetime-local
+ picks (DateTimeKind.Unspecified) straight into the model's range fields.
+ The local→UTC conversion still happens later in Apply()/LocalInputToUtc,
+ exactly as before. IdPrefix="audit" keeps the audit-from/audit-to ids. *@
+
}
else
{
diff --git a/src/ZB.MOM.WW.ScadaBridge.CentralUI/Components/Audit/AuditResultsGrid.razor b/src/ZB.MOM.WW.ScadaBridge.CentralUI/Components/Audit/AuditResultsGrid.razor
index a37c5b57..3a00b9e6 100644
--- a/src/ZB.MOM.WW.ScadaBridge.CentralUI/Components/Audit/AuditResultsGrid.razor
+++ b/src/ZB.MOM.WW.ScadaBridge.CentralUI/Components/Audit/AuditResultsGrid.razor
@@ -72,24 +72,20 @@
-
- Page @_pageNumber · @_rows.Count rows
- @* CentralUI-032: keyset paging is naturally forward-only, but the
- in-component _cursorStack lets the user step back through previous
- pages by replaying the prior cursor. The Previous button is gated
- on the stack having at least one prior cursor — i.e. we are not on
- the first page. *@
-
-
-
-
-
+ @* CentralUI-032: keyset paging is naturally forward-only, but the
+ in-component _cursorStack lets the user step back through previous
+ pages by replaying the prior cursor. The Previous button is gated
+ on CanGoBack (the stack having at least one prior cursor — i.e. we
+ are not on the first page); HasNextPage mirrors the prior "short
+ page = end" signal (a full page suggests more rows may follow). All
+ cursor logic stays page-side; KeysetPager is purely presentational. *@
+
@code {
diff --git a/tests/ZB.MOM.WW.ScadaBridge.CentralUI.Tests/Components/Audit/AuditResultsGridTests.cs b/tests/ZB.MOM.WW.ScadaBridge.CentralUI.Tests/Components/Audit/AuditResultsGridTests.cs
index dcffee29..a9b009b3 100644
--- a/tests/ZB.MOM.WW.ScadaBridge.CentralUI.Tests/Components/Audit/AuditResultsGridTests.cs
+++ b/tests/ZB.MOM.WW.ScadaBridge.CentralUI.Tests/Components/Audit/AuditResultsGridTests.cs
@@ -95,7 +95,7 @@ public class AuditResultsGridTests : BunitContext
var cut = Render(p => p.Add(c => c.Filter, new AuditLogQueryFilter()));
- cut.Find("[data-test=\"grid-next-page\"]").Click();
+ cut.Find("[data-test=\"keyset-next\"]").Click();
// Two service calls: initial + next.
Assert.Equal(2, _calls.Count);