Repository navigation
feat(dex): add search, sorting, and filters to Pokédex and Catch Log - #329
Merged
chattymin merged 5 commits intoSep 25, 2026
Merged
Conversation
chattymin
requested changes
Sep 24, 2026
chattymin
left a comment
Owner
There was a problem hiding this comment.
Please make name search diacritic-insensitive as promised by the PR. Pokédex and Catch Log should share the same matcher using case-insensitive and diacritic-insensitive comparison, with a regression test such as matching . Please also rebase onto the current main branch.
Owner
|
Clarification: the regression example above is Flabébé matching flabebe. |
- Add search bar matching by species name, # ID, and multilingual names - Add sorting options: Pokédex number asc/desc, name A-Z / Z-A, and rarity descending - Add Catch Log sorting options: most recent / oldest first, number asc/desc, name, and rarity - Add shiny-only filter toggle with visual indicator - Add empty search results state with reset filters button - Support all 7 application languages - Add comprehensive unit test suite in DexSearchAndFilterTests
…n DexSearchAndFilterTests - Initialize CompanionStore via encoded file to avoid private state setter access - Use boolean comparison checks for ComparisonResult ordering - Remove unused store instance in localization test
Pokédex and Catch Log each matched names with localizedCaseInsensitiveContains, which keeps accents, so "flabebe" missed Flabébé. Both screens now use DexSearchMatcher.
KillianHzr
force-pushed
the
feat/dex-search-sort-filters
branch
from
September 24, 2026 06:35
6cf3484 to
d7bfaf0
Compare
Contributor
Author
|
@chattymin Done: rebased on main, and both screens now share one matcher that ignores case and accents. Added a test for Flabébé / flabebe. |
chattymin
approved these changes
Sep 25, 2026
Owner
|
Thank you for your contribution! |
LuceteYang
added a commit
to LuceteYang/PikaTokenBar
that referenced
this pull request
Sep 25, 2026
- New usage recap shots (en/ko/ja) rendered from the production RecapCard in ScreenshotGenTests, with Gen 1 graduates, plus a tour row in each README (chattymin#332). - Pace-marker shots pick bar and percent colors with PaceTier like quotaRow does (chattymin#349); the pace row explains the six tiers. - Settings shots gain automatic backup snapshots under Backup & Transfer (chattymin#330) and a per-account session key row under Advanced (chattymin#346); footer bumped to 1.9.0. - "Also in the box" lists Pokedex search/filters (chattymin#329, chattymin#343) and save backups. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Strongorange
added a commit
to Strongorange/PokeTokenBar-windows
that referenced
this pull request
Oct 19, 2026
Port macOS chattymin#329: a search box matching species names in every stored language (case- and diacritic-insensitive, so 'flabebe' finds Flabebe) plus Pokedex numbers with partial-digit matches ('25' finds chattymin#125); sort options for the grid (number asc/desc, name, rarity) and the catch log (most recent / oldest first with the raising row pinned, number, name, rarity); and a shiny-only toggle whose fixed width keeps the row from resizing when toggled (upstream chattymin#390). Empty search results show a reset-filters button. DexQuery carries the one matcher and both sort contracts; the engine rows now carry multilingual names for search.
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.
Summary
This PR introduces comprehensive search, sorting, and filtering capabilities to both the Pokédex grid and the Catch Log (Journal de captures) in the Collection tab:
25or#25), and multilingual translations stored in saves. Includes a clear button (xmark.circle.fill).ko,en,ja,es,fr,pt,de).DexSearchAndFilterTests.swift.Type of change
UI changes
Checklist
swift buildandswift testpass locally