aboutsummaryrefslogtreecommitdiff
path: root/src/lib/Error/path.ts
blob: f493726b4c9d8bb01c2e3b955945fedef5fb5880 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import levenshtein from 'fast-levenshtein';

export const closest = (path: string, suggestions: string[]) => {
	let closest = '';
	let lowestDistance = Infinity;

	[...suggestions, '...'].forEach((suggestion) => {
		const distance = levenshtein.get(path, suggestion);

		if (distance < lowestDistance) {
			lowestDistance = distance;
			closest = suggestion;
		}
	});

	return closest;
};