From 68ff30006edcd0dca44326780d34a6ca39f65157 Mon Sep 17 00:00:00 2001 From: praschke Date: Tue, 17 Oct 2023 21:54:53 +0100 Subject: fix: regexReplace and regexMatch joining the args together without cutting out the options arg can add an '[object Object]' into the result. --- docs/templates.md | 4 ++-- ext/js/templates/sandbox/anki-template-renderer.js | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/templates.md b/docs/templates.md index ce1e8d7e..e0ea0861 100644 --- a/docs/templates.md +++ b/docs/templates.md @@ -147,7 +147,7 @@ Uses a [regular expression](https://developer.mozilla.org/en-US/docs/Web/JavaScr Syntax: {{#regexReplace regex replacement [flags]}}text-to-modify{{/regexReplace}}
- {{#regexReplace regex replacement [flags] [text-to-modify]...}}{{/regexReplace}}
+ {{regexReplace regex replacement [flags] [text-to-modify]...}}
* _`regex`_
The raw string used to create the regular expression. This value is passed to the [`RegExp`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp/RegExp) constructor. @@ -181,7 +181,7 @@ Uses a [regular expression](https://developer.mozilla.org/en-US/docs/Web/JavaScr Syntax: {{#regexMatch regex [flags]}}text-to-modify{{/regexMatch}}
- {{#regexMatch regex [flags] [text-to-modify]...}}{{/regexMatch}}
+ {{regexMatch regex [flags] [text-to-modify]...}}
* _`regex`_
The raw string used to create the regular expression. This value is passed to the [`RegExp`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp/RegExp) constructor. diff --git a/ext/js/templates/sandbox/anki-template-renderer.js b/ext/js/templates/sandbox/anki-template-renderer.js index 62bf71b8..5d8ebd38 100644 --- a/ext/js/templates/sandbox/anki-template-renderer.js +++ b/ext/js/templates/sandbox/anki-template-renderer.js @@ -226,7 +226,7 @@ class AnkiTemplateRenderer { const options = args[argCount]; let value = typeof options.fn === 'function' ? options.fn(context) : ''; if (argCount > 3) { - value = `${args.slice(3).join('')}${value}`; + value = `${args.slice(3, -1).join('')}${value}`; } if (argCount > 1) { try { @@ -250,7 +250,7 @@ class AnkiTemplateRenderer { const options = args[argCount]; let value = typeof options.fn === 'function' ? options.fn(context) : ''; if (argCount > 2) { - value = `${args.slice(2).join('')}${value}`; + value = `${args.slice(2, -1).join('')}${value}`; } if (argCount > 0) { try { -- cgit v1.2.3