Web: Files: InviteInput: fixed drop-down
This commit is contained in:
parent
419ca6a6d7
commit
8471201864
@ -118,17 +118,19 @@ const InviteInput = ({
|
||||
};
|
||||
};
|
||||
|
||||
const searchByQuery = async (value) => {
|
||||
const searchByQuery = async (value, isValid) => {
|
||||
const query = value.trim();
|
||||
|
||||
if (query.length >= minSearchValue && !isAddEmailPanelBlocked) {
|
||||
if (query.length >= minSearchValue) {
|
||||
const filter = Filter.getFilterWithOutDisabledUser();
|
||||
filter.search = query;
|
||||
|
||||
const users = await getMembersList(roomId, filter);
|
||||
|
||||
setUsersList(users.items);
|
||||
setIsAddEmailPanelBlocked(false);
|
||||
|
||||
if (users.total || isValid) setIsAddEmailPanelBlocked(false);
|
||||
else setIsAddEmailPanelBlocked(true);
|
||||
}
|
||||
|
||||
if (!query) {
|
||||
@ -138,8 +140,8 @@ const InviteInput = ({
|
||||
};
|
||||
|
||||
const debouncedSearch = useCallback(
|
||||
debounce((value) => searchByQuery(value), 300),
|
||||
[]
|
||||
debounce((value, isValid) => searchByQuery(value, isValid), 300),
|
||||
[],
|
||||
);
|
||||
|
||||
const onChange = (e) => {
|
||||
@ -158,16 +160,18 @@ const InviteInput = ({
|
||||
/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{0,}))$/g;
|
||||
|
||||
const parts = getParts(value);
|
||||
let isValid = false;
|
||||
for (let i = 0; i < parts.length; i += 1) {
|
||||
if (regex.test(parts[i])) {
|
||||
setIsAddEmailPanelBlocked(false);
|
||||
if (roomId !== -1) {
|
||||
debouncedSearch(clearValue);
|
||||
|
||||
return;
|
||||
}
|
||||
isValid = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (roomId !== -1) {
|
||||
debouncedSearch(clearValue, isValid);
|
||||
|
||||
return;
|
||||
}
|
||||
};
|
||||
|
||||
const removeExist = (items) => {
|
||||
|
Loading…
Reference in New Issue
Block a user