diff --git a/graph/loaders/users.js b/graph/loaders/users.js index 9b9020d60..d8e1927cb 100644 --- a/graph/loaders/users.js +++ b/graph/loaders/users.js @@ -84,10 +84,10 @@ const getUsersByQuery = async ( if (value.length > 0) { // Lowercase the search term and escape any regex characters. - value = escapeRegExp(value).toLowerCase(); + value = escapeRegExp(value); - // Compile the prefix search regex. - const $regex = new RegExp(`^${value}`); + const lowercasedRegex = new RegExp(`^${value.toLowerCase()}`); + const notLowercasedRegex = new RegExp(`^${value}`); // Merge in the regex params. query.merge({ @@ -95,7 +95,7 @@ const getUsersByQuery = async ( // Search by a prefix match on the username. { lowercaseUsername: { - $regex, + $regex: lowercasedRegex, }, }, @@ -104,7 +104,7 @@ const getUsersByQuery = async ( profiles: { $elemMatch: { id: { - $regex, + $regex: lowercasedRegex, }, provider: 'local', }, @@ -114,7 +114,7 @@ const getUsersByQuery = async ( // Search by the displayName metadata field. { 'metadata.displayName': { - $regex, + $regex: notLowercasedRegex, }, }, ],