refactor(search): standardize debounced reactive search across modules

- Standardized the search pattern using Svelte 5 debounced $effects in Recovery Meetings, Badge Search, and Journals to eliminate manual triggers and stuttering.
- Fixed a bug in 'ae_idaa_comp__event_obj_li.svelte' where the Results count was inconsistent with the displayed list by implementing a derived 'visible_event_obj_li' state.
- Hardened 'ae_idaa_comp__event_obj_li_wrapper.svelte' to filter out 'undefined' entries from database 'bulkGet' calls.
- Cleaned up legacy search handling code in 'ae_idaa_comp__event_obj_qry.svelte'.
- Updated 'TODO.md' and 'GEMINI.md' to reflect search logic hardening accomplishments.
This commit is contained in:
Scott Idem
2026-01-27 13:08:11 -05:00
parent b837e6d0f8
commit 055d8e7816
8 changed files with 258 additions and 787 deletions

View File

@@ -25,6 +25,7 @@ This is a list of tasks to be completed before the next event/show/conference.
- [x] **Observability:** Heartbeat and Sync status moved to formal Config UI.
3. **Hardening V3 Search:**
- [ ] **Exhibit Search:** Restore missing search function and logic.
- [x] **Debounced Search Logic:** Standardized reactive, debounced search patterns across Recovery Meetings, Badge Search, and Journals to eliminate stutter and manual triggers. (Completed 2026-01-27)
- [ ] **Journal Search:** Refactor dynamic filtering and query logic (Coming back to this soon).
- [ ] **Global Rule:** Preserve `ft_qry`, `lk_qry`, and `and_qry` blocks as "sacred" business logic.