mirror of
https://github.com/mue/mue.git
synced 2026-07-23 00:37:27 +02:00
refactor(marketplace): improvements to url detection logic
This commit is contained in:
@@ -12,8 +12,15 @@ function sleep(ms) {
|
||||
// based on https://stackoverflow.com/questions/37684/how-to-replace-plain-urls-with-links
|
||||
export function urlParser(input) {
|
||||
const urlPattern =
|
||||
/https?:\/\/(www\.)?[-a-zA-Z0-9@:%._+~#=]{1,256}\.[a-zA-Z0-9()]{1,63}\b([-a-zA-Z0-9()!@:%_+.~#?&//=]*)/;
|
||||
return input.replace(urlPattern, '<br/><a class="link" href="$&" target="_blank">$&</a>');
|
||||
/https?:\/\/(www\.)?[-a-zA-Z0-9@:%._+~#=]{1,256}\.[a-zA-Z0-9()]{1,63}\b([-a-zA-Z0-9()!@:%_+.~#?&//=]*)/g;
|
||||
const emailPattern = /\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b/g;
|
||||
|
||||
const replaceUrl = (url) => `<br/><a class="link" href="${url}" target="_blank">${url}</a>`;
|
||||
const replaceEmail = (email) => `<a class="link" href="mailto:${email}">${email}</a>`;
|
||||
|
||||
const replacedUrls = input.replace(urlPattern, replaceUrl);
|
||||
const replacedEmails = replacedUrls.replace(emailPattern, replaceEmail);
|
||||
return replacedEmails;
|
||||
}
|
||||
|
||||
export function install(type, input, sideload) {
|
||||
|
||||
Reference in New Issue
Block a user