Try to fix greentext regexp for Safari

This commit is contained in:
silverpill 2022-11-25 21:42:11 +00:00
parent 9199092144
commit f5a5263725

View file

@ -1,4 +1,10 @@
export function addGreentext(text: string): string {
const greentextRegexp = /(?<=^|>)(&gt;[^<]+)(?=$|<)/gm
return text.replace(greentextRegexp, '<span class="greentext">$1</span>')
// Safari doesn't support lookbehind expressions
try {
/* eslint-disable-next-line prefer-regex-literals */
const greentextRegexp = new RegExp("(?<=^|>)(&gt;[^<]+)(?=$|<)", "gm")
return text.replace(greentextRegexp, '<span class="greentext">$1</span>')
} catch (error) {
return text
}
}