Browse Source

Always open links in a new tab

Austen Adler 11 tháng trước cách đây
mục cha
commit
3a1fbb936b
1 tập tin đã thay đổi với 7 bổ sung0 xóa
  1. 7 0
      src/lib/components/chat/Messages/ResponseMessage.svelte

+ 7 - 0
src/lib/components/chat/Messages/ResponseMessage.svelte

@@ -78,6 +78,13 @@
 		return `<code>${code.replaceAll('&amp;', '&')}</code>`;
 	};
 
+	// Open all links in a new tab/window (from https://github.com/markedjs/marked/issues/655#issuecomment-383226346)
+	const origLinkRenderer = renderer.link;
+	renderer.link =	(href, title, text) => {
+		const html = origLinkRenderer.call(renderer, href, title, text);
+		return html.replace(/^<a /, '<a target="_blank" rel="nofollow" ');
+	};
+
 	const { extensions, ...defaults } = marked.getDefaults() as marked.MarkedOptions & {
 		// eslint-disable-next-line @typescript-eslint/no-explicit-any
 		extensions: any;