@jsxtools/eslint-plugin-jsx-a11y
Version:
Static AST checker for accessibility rules on JSX elements for flat ESLint Config.
16 lines (13 loc) • 573 B
JavaScript
import editDistance from 'damerau-levenshtein';
const THRESHOLD = 2;
function getSuggestion(word, dictionary = [], limit = 2) {
const distances = Object.fromEntries(
dictionary.map((dictionaryWord) => {
const distance = editDistance(word.toUpperCase(), dictionaryWord.toUpperCase());
const { steps } = distance;
return [dictionaryWord, steps];
})
);
return Object.keys(distances).filter((suggestion) => distances[suggestion] <= THRESHOLD).sort((a, b) => distances[a] - distances[b]).slice(0, limit);
}
export { getSuggestion as default };