@atlaskit/editor-core
Version:
A package contains Atlassian editor core functionality
40 lines (38 loc) • 666 B
text/typescript
const whitelistedURLPatterns = [
/^https?:\/\//im,
/^ftps?:\/\//im,
/^\//im,
/^mailto:/im,
/^skype:/im,
/^callto:/im,
/^facetime:/im,
/^git:/im,
/^irc6?:/im,
/^news:/im,
/^nntp:/im,
/^feed:/im,
/^cvs:/im,
/^svn:/im,
/^mvn:/im,
/^ssh:/im,
/^scp:\/\//im,
/^sftp:\/\//im,
/^itms:/im,
/^notes:/im,
/^smb:/im,
/^hipchat:\/\//im,
/^sourcetree:/im,
/^urn:/im,
/^tel:/im,
/^xmpp:/im,
/^telnet:/im,
/^vnc:/im,
/^rdp:/im,
/^whatsapp:/im,
/^slack:/im,
/^sips?:/im,
/^magnet:/im,
];
export const isSafeUrl = (url: string): boolean => {
return whitelistedURLPatterns.some(p => p.test(url.trim()) === true);
};