Repository navigation
Conversation
…tegration tests - Roving-tabindex checkbox groups with Arrow/Home/End/Space, Escape clears query - Isolate useWatch in a leaf, per-group useController + memo, dedupe emits - Ignore parent echoes so in-progress query typing is not clobbered - Unit, re-render budget and store-backed integration tests - Add docs/filters-panel.md Closes MettaChain#1223, closes MettaChain#1224, closes MettaChain#1225, closes MettaChain#1226 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The lockfile on main contained invalid JSON from a bad merge, breaking npm ci. FilterSidebar.stories.tsx imported the removed FilterSidebar module and failed FilterUiConsolidation.test.tsx. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
@feyishola Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits. You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #1223, closes #1224, closes #1225, closes #1226
Summary
Keyboard navigation (#1226)
role="group"with a roving tabindex, so the group is one Tab stop.role="search"landmark labelled "Property filters".Re-render optimisation (#1225)
useWatchsubscription moved into a leaf (FilterAutoApply), so typing no longer re-renders the whole panel.CheckboxGroupFieldthat subscribes to its own field withuseController, so a toggle re-renders only that group.React.memo.onApplyFiltersfires only when the filters actually change.Tests (#1223, #1224)
SearchFilterForm.test.tsx: unit tests for rendering, emitting, debounce, Clear, and keyboard navigation.SearchFilterForm.renders.test.tsx: re-render budget using a checkbox that counts its own renders. All three tests fail against the previous implementation.SearchFilterForm.integration.test.tsx: the panel wired to the realuseSearchStore, covering the control → store → props loop and a keyboard-only session.Docs
docs/filters-panel.mdcovering behaviour, keyboard support, and the re-render model.Fixes to unblock CI
package-lock.json. The lockfile onmainhad invalid JSON from a bad merge, sonpm cifailed.src/stories/FilterSidebar.stories.tsx. It imported the deletedFilterSidebarand failedFilterUiConsolidation.test.tsx.Test plan
npx jest src/components/forms: 36/36 passeslintclean on changed filesnpm ci --dry-runsucceeds with the regenerated lockfiletsc: the repo-wide type errors onmainremain. The only one in this file is the unchangedzodResolver(searchFilterSchema)line.🤖 Generated with Claude Code