From 48a6a16f1aa546f6bbdf80efbc5e72aa783acf4b Mon Sep 17 00:00:00 2001 From: Fuwn Date: Sun, 24 Dec 2023 23:48:06 -0800 Subject: refactor(error): move closest path to module --- src/lib/Error/path.ts | 17 +++++++++++++++++ src/routes/+error.svelte | 38 ++++++++++++-------------------------- 2 files changed, 29 insertions(+), 26 deletions(-) create mode 100644 src/lib/Error/path.ts (limited to 'src') diff --git a/src/lib/Error/path.ts b/src/lib/Error/path.ts new file mode 100644 index 00000000..50874a12 --- /dev/null +++ b/src/lib/Error/path.ts @@ -0,0 +1,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; +}; diff --git a/src/routes/+error.svelte b/src/routes/+error.svelte index a5cd1dee..584d4ec0 100644 --- a/src/routes/+error.svelte +++ b/src/routes/+error.svelte @@ -1,32 +1,18 @@

Page not found.

-- cgit v1.2.3