import { SelectFiltered, Option, Box, Chip } from '@rocket.chat/fuselage';
import { useDebouncedValue } from '@rocket.chat/fuselage-hooks';
import React, { memo, useMemo, useState } from 'react';
import { useEndpointData } from '../../hooks/useEndpointData';
import UserAvatar from '../avatar/UserAvatar';
const query = (term = '', conditions = {}) => ({ selector: JSON.stringify({ term, conditions }) });
const UserAutoComplete = (props) => {
const { conditions = {} } = props;
const [filter, setFilter] = useState('');
const debouncedFilter = useDebouncedValue(filter, 1000);
const { value: data } = useEndpointData(
'users.autocomplete',
// eslint-disable-next-line react-hooks/exhaustive-deps
useMemo(() => query(debouncedFilter, conditions), [filter]),
);
const options = useMemo(() => (data && data.items.map((user) => [user.username, user.name])) || [], [data]);
const renderSelected = ({ value, label }) =>
value ? (
props.onChange()} mie='x4'>
{label}
) : null;
const renderItem = ({ value, ...props }) => } />;
return (
);
};
export default memo(UserAutoComplete);