// Fork of https://github.com/uiureo/link-text with HTML escaping disabled as we leverage // jQuery’s escaping mechanism: const linkify = require('linkify-it')(); function createLink(url, text, attrs = {}) { const html = []; html.push(' { html.push(` ${key}="${attrs[key]}"`); }); html.push('>'); html.push(decodeURIComponent(text)); html.push(''); return html.join(''); } module.exports = (text, attrs = {}) => { const matchData = linkify.match(text) || []; const result = []; let last = 0; matchData.forEach((match) => { if (last < match.index) { result.push(text.slice(last, match.index)); } result.push(createLink(match.url, match.text, attrs)); last = match.lastIndex; }); result.push(text.slice(last)); return result.join(''); };