callumalpass_tasknotes/tests
Renato Mendonca 395055b8a4 feat(bases): add inline search functionality to task-list view
- Implement TaskSearchFilter for ephemeral task filtering
  - Case-insensitive full-text search across task properties
  - Searches title, status, priority, tags, contexts, projects
  - Supports custom visible properties from view config
  - Performance monitoring for slow operations (>100ms)

- Seamless virtual scrolling integration
  - Search filtering applied before virtual scroll threshold check
  - Automatically switches between virtual/normal rendering based on filtered count
  - Maintains performance with large datasets (tested with 30k+ tasks)
  - Virtual scrolling activates at 100 filtered items threshold

- Create SearchBox UI component
  - Lucide search icon positioned outside input (left)
  - Debounced input (300ms) to reduce filter operations
  - Clear button with keyboard support (Escape key)
  - Proper cleanup to prevent memory leaks
  - BEM-style CSS with Obsidian design tokens

- BasesViewBase ready for reusability
  - Opt-in pattern via enableSearch flag
  - Shared setupSearch(), handleSearch(), applySearchFilter()
  - Component lifecycle integration for automatic cleanup
  - Ready for use in KanbanView, CalendarView, etc.

- Add test coverage
  - 24 unit tests for TaskSearchFilter
  - 24 unit tests for SearchBox component
  - Integration test placeholders for E2E testing

- Update TaskListView to use inherited search
  - Enable search with single flag: enableSearch = true
  - Apply filtering in renderFlat, renderGrouped methods
  - Preserves all existing functionality (grouping, sub-grouping, etc.)
2025-11-22 19:32:39 +13:00
..
__mocks__ fix: ICS calendar timezone conversion for non-IANA timezones (#781, #841) 2025-10-06 22:26:15 +11:00
components test: add comprehensive test coverage for hierarchical subgroup functionality 2025-09-18 10:15:08 +00:00
helpers Remove unused MinimalNativeCache and update tests to use TaskManager 2025-11-15 22:24:04 +11:00
integration feat(bases): add inline search functionality to task-list view 2025-11-22 19:32:39 +13:00
manual fix: all-day ICS events displaying on wrong day and appearing twice (#854, #695) 2025-10-07 07:20:48 +11:00
services test: fix TaskCreationModal test and remove OAuthService device-flow test 2025-10-29 22:49:37 +11:00
types test: add comprehensive test coverage for hierarchical subgroup functionality 2025-09-18 10:15:08 +00:00
unit feat(bases): add inline search functionality to task-list view 2025-11-22 19:32:39 +13:00
utils Remove unused MinimalNativeCache and update tests to use TaskManager 2025-11-15 22:24:04 +11:00
coverage-report.md test: add comprehensive tests for Issue #160 off-by-one date bugs 2025-07-11 23:06:37 +10:00
test-setup.ts feat: add saved views button position setting 2025-08-15 22:50:30 +10:00