owncast/web/utils/urls.ts

18 lines
516 B
TypeScript
Raw Normal View History

// to use with <input type="url"> fields, as the default pattern only checks for `:`,
export const DEFAULT_TEXTFIELD_URL_PATTERN = 'https?://.*';
2021-02-16 22:41:24 +03:00
export default function isValidUrl(url: string): boolean {
const validProtocols = ['http:', 'https:'];
try {
const validationObject = new URL(url);
if (validationObject.protocol === '' || validationObject.hostname === '' || !validProtocols.includes(validationObject.protocol)) {
2021-02-16 22:41:24 +03:00
return false;
}
} catch(e) {
return false;
}
2021-02-16 22:41:24 +03:00
return true;
}