@atlaskit/global-search
Version:
A cross-product search component (batteries included)
19 lines (15 loc) • 525 B
JavaScript
import memoizeOne from 'memoize-one';
export const getAutocompleteText = memoizeOne((query, autocompleteSuggestions) => {
if (!autocompleteSuggestions || query.length === 0) {
return undefined;
}
if (autocompleteSuggestions.length === 0) {
return query;
}
const lowerCaseQuery = query.toLowerCase();
const match = autocompleteSuggestions.find(suggestion => suggestion.toLowerCase().startsWith(lowerCaseQuery));
if (!match) {
return query;
}
return `${query}${match.slice(query.length)}`;
});