Handle restored date filters when DataTable and DataView metadata changes after mount
I maintainer di solito rispondono entro 5 giorni
@Shreyag02 ci sta già lavorando.
Dal 6/10/2026.
Valutazione
Questa issue non è ancora stata valutata.
Descrizione
Summary
Handle restored date filters when field metadata gains filterType: 'date' after mount in both DataTable and DataView.
- DataTable:
columnscan gain date-filter metadata afterDataTableRootinitializestableQuery. - DataView: root fields can change after mount, and a view's
fieldsoverride can register after the initial query loads. These changes affecteffectiveFields.
In both cases, an untyped restored date filter can remain untyped. Client filtering can then match no rows, and server query emission can use string-filter behavior instead of date-filter behavior.
This limitation predates PR #919. The follow-up is separate from that PR.
Required changes
- Derive missing filter types from the current DataTable
columnsand DataVieweffectiveFieldswhen computing row-filter state and emitted queries. - Use the shared date-filter metadata helper where appropriate.
- Preserve existing filter values, operators, explicit types, and user edits.
- Do not reinitialize
tableQueryfrom the original query or add an effect that replaces user edits. - Ensure DataView uses the active view's effective metadata, including its
fieldsoverride.
Affected areas
- DataTable:
DataTableRoot, row-filter state derivation, and server query emission. The reviewed root file ispackages/react/components/data-table/data-table.tsx. - DataView:
DataViewRoot,effectiveFields, row-filter state derivation, and server query emission. - Shared date-filter metadata helpers and DataTable/DataView regression tests.
Acceptance criteria
- Mount DataTable with an untyped restored date filter, then give its column
filterType: 'date'. Client filtering compares whole days and selects the expected rows. - Repeat this scenario in DataView for both updated root fields and a view's late-registering
fieldsoverride. - In server mode, both components emit the restored filter with date semantics and a viewer-local
YYYY-MM-DDstringValueafter date metadata becomes available. - Preserve the original filter
valueand any user edits made before metadata arrives. - Leave explicitly typed filters and unrelated filters unchanged.
- Add regression tests for both components, including client filtering and server query emission.
References
Requested by @Shreyag02.
- Lingua principale
- TypeScript
- Stelle
- 69
- Fork
- 13
- Merge medio
- 4g 4h
- PR unite (30g)
- 27
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di raystack/apsara
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
I maintainer di solito rispondono entro 5 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
I maintainer di solito rispondono entro 5 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
I maintainer di solito rispondono entro 5 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
I maintainer di solito rispondono entro 5 giorni
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
I maintainer di solito rispondono entro 5 giorni
Tutte le issue di raystack/apsara
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
I maintainer di solito rispondono entro 1 giorno
-
high priority
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
CI-CMG/deep-sea-corals-exb#84 · 1 commento ·
-
Create/import wallet form shows raw "password must be at least 1 characters" instead of the translated messageForse già presa @CapThunder19 l’ha presa oggi. Apertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
joinmarket-webui/jam#1538 ·
I maintainer di solito rispondono entro 1 giorno
-
t0ggles
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
nolimits4web/swiper#8240 · 1 commento ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
I maintainer di solito rispondono entro 1 giorno