chore: make fuzzy matching a paramater
This commit is contained in:
parent
bc416f282f
commit
aeb73a374f
@ -35,16 +35,14 @@ interface MatchedAssignee extends IUser {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// IDEA: maybe use a small fuzzy search here to prevent errors
|
// IDEA: maybe use a small fuzzy search here to prevent errors
|
||||||
function findPropertyByValue(object, key, value) {
|
function findPropertyByValue(object, key, value, fuzzy: boolean = false) {
|
||||||
return Object.values(object).find(
|
return Object.values(object).find(l => {
|
||||||
(l) => l[key]?.toLowerCase() === value.toLowerCase(),
|
if (fuzzy) {
|
||||||
)
|
return l[key]?.toLowerCase().includes(value.toLowerCase())
|
||||||
}
|
}
|
||||||
|
|
||||||
function findPropertyByValueFuzzy(object, key, value) {
|
return l[key]?.toLowerCase() === value.toLowerCase()
|
||||||
return Object.values(object).find(
|
})
|
||||||
(l) => l[key]?.toLowerCase().includes(value.toLowerCase()),
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Check if the user exists in the search results
|
// Check if the user exists in the search results
|
||||||
@ -53,9 +51,9 @@ function validateUser(
|
|||||||
query: IUser['username'] | IUser['name'] | IUser['email'],
|
query: IUser['username'] | IUser['name'] | IUser['email'],
|
||||||
) {
|
) {
|
||||||
if (users.length === 1) {
|
if (users.length === 1) {
|
||||||
return findPropertyByValueFuzzy(users, 'username', query) ||
|
return findPropertyByValue(users, 'username', query, true) ||
|
||||||
findPropertyByValueFuzzy(users, 'name', query) ||
|
findPropertyByValue(users, 'name', query, true) ||
|
||||||
findPropertyByValueFuzzy(users, 'email', query)
|
findPropertyByValue(users, 'email', query, true)
|
||||||
}
|
}
|
||||||
|
|
||||||
return findPropertyByValue(users, 'username', query) ||
|
return findPropertyByValue(users, 'username', query) ||
|
||||||
|
Loading…
x
Reference in New Issue
Block a user