From 2a29a8246454fbffe1979bd023e640cbc4f9bdca Mon Sep 17 00:00:00 2001 From: Mario Zechner Date: Thu, 12 Feb 2026 20:50:39 +0100 Subject: [PATCH] fix(web-ui): make model selector search case-insensitive (fixes #1443) --- packages/web-ui/CHANGELOG.md | 4 ++++ packages/web-ui/src/dialogs/ModelSelector.ts | 5 ++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/web-ui/CHANGELOG.md b/packages/web-ui/CHANGELOG.md index 744d791e..59715d22 100644 --- a/packages/web-ui/CHANGELOG.md +++ b/packages/web-ui/CHANGELOG.md @@ -2,6 +2,10 @@ ## [Unreleased] +### Fixed + +- Made model selector search case-insensitive by normalizing query tokens, fixing auto-capitalized mobile input filtering ([#1443](https://github.com/badlogic/pi-mono/issues/1443)) + ## [0.52.9] - 2026-02-08 ## [0.52.8] - 2026-02-07 diff --git a/packages/web-ui/src/dialogs/ModelSelector.ts b/packages/web-ui/src/dialogs/ModelSelector.ts index 08213f50..2ef59ab9 100644 --- a/packages/web-ui/src/dialogs/ModelSelector.ts +++ b/packages/web-ui/src/dialogs/ModelSelector.ts @@ -179,7 +179,10 @@ export class ModelSelector extends DialogBase { // Apply search filter if (this.searchQuery) { filteredModels = filteredModels.filter(({ provider, id, model }) => { - const searchTokens = this.searchQuery.split(/\s+/).filter((t) => t); + const searchTokens = this.searchQuery + .toLowerCase() + .split(/\s+/) + .filter((t) => t); const searchText = `${provider} ${id} ${model.name}`.toLowerCase(); return searchTokens.every((token) => searchText.includes(token)); });