feat(#10577): adds task filtering#10623
Conversation
Signed-off-by: Diana Barsan <barsan@medic.org>
Signed-off-by: Diana Barsan <barsan@medic.org>
Signed-off-by: Diana Barsan <barsan@medic.org>
Signed-off-by: Diana Barsan <barsan@medic.org>
Signed-off-by: Diana Barsan <barsan@medic.org>
Signed-off-by: Diana Barsan <barsan@medic.org>
Signed-off-by: Diana Barsan <barsan@medic.org>
Signed-off-by: Diana Barsan <barsan@medic.org>
Signed-off-by: Diana Barsan <barsan@medic.org>
…d improve typings Signed-off-by: Diana Barsan <barsan@medic.org>
Signed-off-by: Diana Barsan <barsan@medic.org>
Signed-off-by: Diana Barsan <barsan@medic.org>
Signed-off-by: Diana Barsan <barsan@medic.org>
…, e2e tests, and unit tests accordingly Signed-off-by: Diana Barsan <barsan@medic.org>
… reducer logic and update related tests Signed-off-by: Diana Barsan <barsan@medic.org>
|
Hi @sugat009 ! Would appreciate a review. The PR does a bit of centralizing data: with adding facilities and online user type to the redux state. Let me know what you think. Thanks for your time! |
|
Added demo to main issue. |
Signed-off-by: Diana Barsan <barsan@medic.org>
Signed-off-by: Diana Barsan <barsan@medic.org>
|
Thanks a lot for the review @sugat009 . I pushed most of your suggestions - one exception about using sets for filters. I think that just creates an additional layer of complexity and confusion. We expect filters to be bite-sized and the task list to be something that a human can scroll through. |
sugat009
left a comment
There was a problem hiding this comment.
@dianabarsan thanks for the changes. LGTM! 🚀🚀🚀
|
@dianabarsan I just noticed something while testing manually. All filters does work but when clicking the "place filters" on the place name it does not check the box. Clicking the box checks the box for the place filter but not when clicking the place name. I've attached a video for clarity. 2026-02-12.18-01-07.mp4The same issue exists for the place filter in reports as well |
|
@sugat009 the place filter is just reused from reports, so this is "inherited" behavior. |
|
ah, now i saw the italics comment. I'm not sure about this one. the click on the place name is set to open the accordion (to display the lower level of places), so it's already assigned to an action. |
|
I see. I think we can keep it as it is. |
Description
Adds following task filters:
Due date - radio with two options, that show either tasks that are overdue (or due today) or that are due in the future.
Task type - checkboxes for every task type available in the task list
Area - identical to the reports area filter. will filter tasks based on the task owner lineage.
Minor refactor to how we display (and filter) item lineage, changed from being filtered in every component that will display items with lineage to using the store for user facilities and filtering lineage in the lineage pipe itself.
AI Disclosure
AI Assistance: This PR was developed using Claude Code.
How AI was used
Human oversight:
closes #10577
Code review checklist
can_view_old_navigationpermission to see the old design. Test it has appropriate design for RTL languages.Compose URLs
If Build CI hasn't passed, these may 404:
License
The software is provided under AGPL-3.0. Contributions to this project are accepted under the same license.