From 9c43ba95e6c368b87acbfa8bac16c385605e7502 Mon Sep 17 00:00:00 2001 From: Fallenbagel <98979876+Fallenbagel@users.noreply.github.com> Date: Wed, 20 Apr 2022 03:12:01 +0500 Subject: [PATCH] fix: relax jellyfin url validation to allow local domains Relaxes jellyfin url validation so that http://localhost:8096 and http://jellyfin:8096 urls are accepted in addition to full urls like https://example.com fix #123 --- src/components/Login/JellyfinLogin.tsx | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/components/Login/JellyfinLogin.tsx b/src/components/Login/JellyfinLogin.tsx index 6c943223..89c5982c 100644 --- a/src/components/Login/JellyfinLogin.tsx +++ b/src/components/Login/JellyfinLogin.tsx @@ -48,7 +48,10 @@ const JellyfinLogin: React.FC = ({ if (initial) { const LoginSchema = Yup.object().shape({ host: Yup.string() - .url(intl.formatMessage(messages.validationhostformat)) + .matches( + /^(?:(?:(?:https?):)?\/\/)(?:\S+(?::\S*)?@)?(?:(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)*\.?)(?::\d{2,5})?(?:[/?#]\S*)?$/, + intl.formatMessage(messages.validationhostformat) + ) .required(intl.formatMessage(messages.validationhostrequired)), email: Yup.string() .email(intl.formatMessage(messages.validationemailformat))