From 5c368f1433abfc8f9241d488bf5aae44ea5d347b Mon Sep 17 00:00:00 2001 From: Tom Moor Date: Thu, 1 Feb 2024 00:04:25 -0500 Subject: [PATCH] fix: Allow querying users with latin extended chars --- app/stores/UsersStore.ts | 25 +++++++++---------------- 1 file changed, 9 insertions(+), 16 deletions(-) diff --git a/app/stores/UsersStore.ts b/app/stores/UsersStore.ts index 97ea409ca..fed213473 100644 --- a/app/stores/UsersStore.ts +++ b/app/stores/UsersStore.ts @@ -1,4 +1,5 @@ import invariant from "invariant"; +import deburr from "lodash/deburr"; import differenceWith from "lodash/differenceWith"; import filter from "lodash/filter"; import orderBy from "lodash/orderBy"; @@ -276,9 +277,6 @@ export default class UsersStore extends Store { this.activeOrInvited, (user) => !userIds.includes(user.id) ); - if (!query) { - return users; - } return queriedUsers(users, query); }; @@ -291,9 +289,6 @@ export default class UsersStore extends Store { const users = filter(this.activeOrInvited, (user) => userIds.includes(user.id) ); - if (!query) { - return users; - } return queriedUsers(users, query); }; @@ -307,9 +302,6 @@ export default class UsersStore extends Store { this.activeOrInvited, (user) => !userIds.includes(user.id) ); - if (!query) { - return users; - } return queriedUsers(users, query); }; @@ -322,9 +314,6 @@ export default class UsersStore extends Store { const users = filter(this.activeOrInvited, (user) => userIds.includes(user.id) ); - if (!query) { - return users; - } return queriedUsers(users, query); }; @@ -341,8 +330,12 @@ export default class UsersStore extends Store { }; } -function queriedUsers(users: User[], query: string) { - return filter(users, (user) => - user.name.toLowerCase().includes(query.toLowerCase()) - ); +function queriedUsers(users: User[], query?: string) { + return query + ? filter(users, (user) => + deburr(user.name.toLocaleLowerCase()).includes( + deburr(query.toLocaleLowerCase()) + ) + ) + : users; }