From e59db766946d7ec98638e3a05eeaa5d15b265381 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luis=20=C3=81vila?= Date: Tue, 14 Sep 2021 19:07:43 +0100 Subject: Fix URL cleaning: youtube IDs are not valid URLs --- src/utils/url.ts | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 src/utils/url.ts (limited to 'src/utils') diff --git a/src/utils/url.ts b/src/utils/url.ts new file mode 100644 index 0000000..f219929 --- /dev/null +++ b/src/utils/url.ts @@ -0,0 +1,18 @@ +import {URL} from 'url'; + +export const cleanUrl = (url: string) => { + try { + // Clean URL + const u = new URL(url); + + for (const [name] of u.searchParams) { + if (name !== 'v') { + u.searchParams.delete(name); + } + } + return u.toString(); + } + catch (_: unknown) { + return url; + } +} \ No newline at end of file -- cgit v1.2.3 From af8e81a569cdc90b04c9b69a8a82bd41a3cdc9b2 Mon Sep 17 00:00:00 2001 From: Max Isom Date: Tue, 14 Sep 2021 14:18:17 -0400 Subject: Fix lint issues --- src/utils/url.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/utils') diff --git a/src/utils/url.ts b/src/utils/url.ts index f219929..7ddc33d 100644 --- a/src/utils/url.ts +++ b/src/utils/url.ts @@ -10,9 +10,9 @@ export const cleanUrl = (url: string) => { u.searchParams.delete(name); } } + return u.toString(); - } - catch (_: unknown) { + } catch (_: unknown) { return url; } -} \ No newline at end of file +}; -- cgit v1.2.3