[Bug] DataGrid filters must apply to the full result set, not only the current page #263

Closed
opened 2026-07-14 20:08:38 +02:00 by zemion · 1 comment
Owner

Problem / User Need

Shared tables currently filter only the rows already loaded in the current paginated view. In campaign tables this means a filter that should return five matching items can still appear spread across many pages, because filtering happens after pagination instead of before or through the backend query.

Acceptance Criteria

  • Column/header filters apply to the full logical result set, not just the currently visible page.
  • Filtering and pagination counts stay consistent after applying or clearing filters.
  • Campaign tables using the shared table component no longer hide matches on other pages.
  • The shared table API documents which filters are client-side and which require backend query support.

Notes / Decisions

This likely belongs in the shared table/DataGrid contract first, with campaign tables used as a regression case.

## Problem / User Need Shared tables currently filter only the rows already loaded in the current paginated view. In campaign tables this means a filter that should return five matching items can still appear spread across many pages, because filtering happens after pagination instead of before or through the backend query. ## Acceptance Criteria - Column/header filters apply to the full logical result set, not just the currently visible page. - Filtering and pagination counts stay consistent after applying or clearing filters. - Campaign tables using the shared table component no longer hide matches on other pages. - The shared table API documents which filters are client-side and which require backend query support. ## Notes / Decisions This likely belongs in the shared table/DataGrid contract first, with campaign tables used as a regression case.
Author
Owner

Codex State: done

Summary

  • DataGrid now applies client-owned filter and sort operations to the full logical result before pagination, while server-owned grids expose an explicit query contract.
  • External query synchronization supports coherent count shortcuts without duplicating grid state.

Verification

  • npm run test:data-grid-actions (pass)
  • npm run build (pass; 5651 modules)
## Codex State: done ### Summary - DataGrid now applies client-owned filter and sort operations to the full logical result before pagination, while server-owned grids expose an explicit query contract. - External query synchronization supports coherent count shortcuts without duplicating grid state. ### Verification - `npm run test:data-grid-actions (pass)` - `npm run build (pass; 5651 modules)`
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: GovOPlaN/govoplan-core#263
No description provided.