From e9356c2ec9857e3e3d9b96203567a7cae6e86201 Mon Sep 17 00:00:00 2001 From: Jarek Radosz Date: Tue, 28 Nov 2023 10:55:02 +0100 Subject: [PATCH] DEV: Fix "no-empty" lint (#24588) --- .../lib/discourse-markdown/spoiler-alert.js | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/plugins/spoiler-alert/assets/javascripts/lib/discourse-markdown/spoiler-alert.js b/plugins/spoiler-alert/assets/javascripts/lib/discourse-markdown/spoiler-alert.js index 8989d4d70ae..2354e98bad7 100644 --- a/plugins/spoiler-alert/assets/javascripts/lib/discourse-markdown/spoiler-alert.js +++ b/plugins/spoiler-alert/assets/javascripts/lib/discourse-markdown/spoiler-alert.js @@ -6,14 +6,17 @@ function insertSpoiler(_, spoiler) { } function replaceSpoilers(text) { - text = text || ""; - while ( - text !== - (text = text.replace( + text ||= ""; + let previousText; + + do { + previousText = text; + text = text.replace( /\[spoiler\]((?:(?!\[spoiler\]|\[\/spoiler\])[\S\s])*)\[\/spoiler\]/gi, insertSpoiler - )) - ) {} + ); + } while (text !== previousText); + return text; }