From 11755d398093cd2ea15079edec1b42407cf9de03 Mon Sep 17 00:00:00 2001 From: Eduard Heimbuch Date: Thu, 3 Dec 2020 09:47:41 +0100 Subject: [PATCH] improve url regex --- scm-ui/ui-components/src/validation.test.ts | 9 ++++----- scm-ui/ui-components/src/validation.ts | 2 +- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/scm-ui/ui-components/src/validation.test.ts b/scm-ui/ui-components/src/validation.test.ts index 764a48a0a6..a1ca93b4f8 100644 --- a/scm-ui/ui-components/src/validation.test.ts +++ b/scm-ui/ui-components/src/validation.test.ts @@ -141,7 +141,6 @@ describe("test path validation", () => { describe("test url validation", () => { const invalid = [ - "file:///blah/index.html", "http://", "http://.", "http://..", @@ -158,12 +157,9 @@ describe("test url validation", () => { "///a", "///", "foo.com", - "rdar://1234", - "h://test", "http:// shouldfail.com", ":// should fail", "http://foo.bar/foo(bar)baz quux", - "ftps://foo.bar/", "http://.www.foo.bar/", "http://.www.foo.bar./" ]; @@ -173,9 +169,12 @@ describe("test url validation", () => { }); } const valid = [ + "ftps://foo.bar/", + "h://test", + "rdar://1234", + "file:///blah/index.html", "https://foo.com/blah_blah", "ssh://foo.com/blah_blah", - "ftp://foo.com/blah_blah", "https://foo.com/blah_blah/", "https://foo.com/blah_blah_(wikipedia)", "https://foo.com/blah_blah_(wikipedia)_(again)", diff --git a/scm-ui/ui-components/src/validation.ts b/scm-ui/ui-components/src/validation.ts index f5ce43c1d8..ac3d953343 100644 --- a/scm-ui/ui-components/src/validation.ts +++ b/scm-ui/ui-components/src/validation.ts @@ -50,7 +50,7 @@ export const isPathValid = (path: string) => { return pathRegex.test(path); }; -const urlRegex = /^(ssh|ftp|https?):\/\/[^\s$.?#].[^\s]*$/; +const urlRegex = /^[A-Za-z0-9]+:\/\/[^\s$.?#].[^\s]*$/; export const isUrlValid = (url: string) => { return urlRegex.test(url);