open-xml-templating/docxtemplater (docxtemplater)
### [`v3.42.4`](https://togithub.com/open-xml-templating/docxtemplater/blob/HEAD/CHANGELOG.md#3424)
[Compare Source](https://togithub.com/open-xml-templating/docxtemplater/compare/v3.42.3...v3.42.4)
Avoid issue `Cannot read properties of undefined (reading 'length')` when using `renderAsync`.
Now, the correct error message should be shown.
### [`v3.42.3`](https://togithub.com/open-xml-templating/docxtemplater/blob/HEAD/CHANGELOG.md#3423)
[Compare Source](https://togithub.com/open-xml-templating/docxtemplater/compare/v3.42.2...v3.42.3)
Bugfix to avoid following error when runnig `iModule.getStructuredTags()` :
TypeError: Cannot read properties of undefined (reading 'replace')
Now, the tags are correctly returned.
### [`v3.42.2`](https://togithub.com/open-xml-templating/docxtemplater/blob/HEAD/CHANGELOG.md#3422)
[Compare Source](https://togithub.com/open-xml-templating/docxtemplater/compare/v3.42.1...v3.42.2)
Bugfix to add clone method to the assertion module and to the inspect module
### [`v3.42.1`](https://togithub.com/open-xml-templating/docxtemplater/blob/HEAD/CHANGELOG.md#3421)
[Compare Source](https://togithub.com/open-xml-templating/docxtemplater/compare/v3.42.0...v3.42.1)
Bugfix for inspect module when used together with qrcode/xlsx or table module, in some specific cases, the getTags function would return values correctly, but also return a key named "undefined", like this :
```js
const tags = iModule.getAllTags();
console.log(tags); // would return : { name: {}, undefined: {}}
```
In order to apply the fix, you have to update the following modules (if you use them) :
- qrcode module to 3.4.7
- table module to 3.19.9
- xlsx module to 3.14.2
### [`v3.42.0`](https://togithub.com/open-xml-templating/docxtemplater/blob/HEAD/CHANGELOG.md#3420)
[Compare Source](https://togithub.com/open-xml-templating/docxtemplater/compare/v3.41.0...v3.42.0)
\[Internal] Add filePath to each "inspect" call, which fixes a bug with the chart module when used together with the "getTags" feature of the inspect module.
If you update to this version, it is important that you also upgrade following modules if you use them :
- slides module to version 3.5.3
- pptx-sub module to version 3.1.4
### [`v3.41.0`](https://togithub.com/open-xml-templating/docxtemplater/blob/HEAD/CHANGELOG.md#3410)
[Compare Source](https://togithub.com/open-xml-templating/docxtemplater/compare/v3.40.3...v3.41.0)
Correctly show error in a multi error if the scope parser execution fails inside the render function
Previously, following error was thrown :
```error
Error: Scope parser execution failed
at new XTScopeParserError (....)
```
with following template :
```txt
{#users | sortBy:'foo'}
Foo
{/}
```
expressionParser.filters.sortBy = function (input, ...fields) {
if (!input) return input;
return sortBy(input, fields);
};
(when sortBy is not imported correctly).
Now, the error will show a multierror with the list of errors that are happening + the tags that are causing the error.
Add support for angularExpressions.compile(), angularExpressions.Parser, and angularParser.Lexer
### [`v3.40.3`](https://togithub.com/open-xml-templating/docxtemplater/blob/HEAD/CHANGELOG.md#3403)
[Compare Source](https://togithub.com/open-xml-templating/docxtemplater/compare/v3.40.2...v3.40.3)
Fix issue when having {tag} inside title in pptx (or docx) and using the linebreak option.
### [`v3.40.2`](https://togithub.com/open-xml-templating/docxtemplater/blob/HEAD/CHANGELOG.md#3402)
[Compare Source](https://togithub.com/open-xml-templating/docxtemplater/compare/v3.40.1...v3.40.2)
Bugfix to not add "w:sdt" inside "w:sdtContent".
Fixes a corruption on a particular type of document.
### [`v3.40.1`](https://togithub.com/open-xml-templating/docxtemplater/blob/HEAD/CHANGELOG.md#3401)
[Compare Source](https://togithub.com/open-xml-templating/docxtemplater/compare/v3.40.0...v3.40.1)
Bugfix when using docxtemplater asynchronously, and having some module inside a loop.
The "contentType" and some other properties were not transfered correctly to the elements inside the loop.
This specifically caused an issue in the HTML module to return the correct pageHeight inside the `getSize` and `getImage` function.
This could also lead to some other bugs that were happening only when having some specific tag present in the loop.
### [`v3.40.0`](https://togithub.com/open-xml-templating/docxtemplater/blob/HEAD/CHANGELOG.md#3400)
[Compare Source](https://togithub.com/open-xml-templating/docxtemplater/compare/v3.39.2...v3.40.0)
- In previous versions the following code will throw an error:
```js
new Docxtemplater(zip, {
paragraphLoop: true,
linebreaks: true,
delimiters: {
start: "$(",
end: ")",
},
});
```
```template
$(last_name) $(first_name)
Some text (Some text) Some text
$(last_name) $(first_name)
```
```js
MultiError
{
name: "TemplateError",
id: "unopened_tag",
explanation: "The tag beginning with \") Some text\" is unopened"
}
```
The syntax can now be made more lenient to permit closing tags even when there are no corresponding opening tags. In your code, write :
```js
new Docxtemplater(zip, {
paragraphLoop: true,
linebreaks: true,
syntax: {
allowUnopenedTag: true,
},
});
```
For now, the only available property for `syntax` object is `allowUnopenedTag` (it makes it possible to use the end delimiter tag as a text and not to parse it as a closing tag and cause syntax error). Fixes [https://github.com/open-xml-templating/docxtemplater/issues/726](https://togithub.com/open-xml-templating/docxtemplater/issues/726).
The default behavior for the parser without setting the syntax option is the same as in 3.39.2, meaning without the `syntax.allowUnopenedTag: true` option, placeholders that are closed but not opened will throw an error.
- Internal: Refactor `getDelimiterErrors` function to be cleaner and more performant
- Internal: Add tests for new functionality
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
â™» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
~3.39.1
->~3.42.0
Release Notes
open-xml-templating/docxtemplater (docxtemplater)
### [`v3.42.4`](https://togithub.com/open-xml-templating/docxtemplater/blob/HEAD/CHANGELOG.md#3424) [Compare Source](https://togithub.com/open-xml-templating/docxtemplater/compare/v3.42.3...v3.42.4) Avoid issue `Cannot read properties of undefined (reading 'length')` when using `renderAsync`. Now, the correct error message should be shown. ### [`v3.42.3`](https://togithub.com/open-xml-templating/docxtemplater/blob/HEAD/CHANGELOG.md#3423) [Compare Source](https://togithub.com/open-xml-templating/docxtemplater/compare/v3.42.2...v3.42.3) Bugfix to avoid following error when runnig `iModule.getStructuredTags()` : TypeError: Cannot read properties of undefined (reading 'replace') Now, the tags are correctly returned. ### [`v3.42.2`](https://togithub.com/open-xml-templating/docxtemplater/blob/HEAD/CHANGELOG.md#3422) [Compare Source](https://togithub.com/open-xml-templating/docxtemplater/compare/v3.42.1...v3.42.2) Bugfix to add clone method to the assertion module and to the inspect module ### [`v3.42.1`](https://togithub.com/open-xml-templating/docxtemplater/blob/HEAD/CHANGELOG.md#3421) [Compare Source](https://togithub.com/open-xml-templating/docxtemplater/compare/v3.42.0...v3.42.1) Bugfix for inspect module when used together with qrcode/xlsx or table module, in some specific cases, the getTags function would return values correctly, but also return a key named "undefined", like this : ```js const tags = iModule.getAllTags(); console.log(tags); // would return : { name: {}, undefined: {}} ``` In order to apply the fix, you have to update the following modules (if you use them) : - qrcode module to 3.4.7 - table module to 3.19.9 - xlsx module to 3.14.2 ### [`v3.42.0`](https://togithub.com/open-xml-templating/docxtemplater/blob/HEAD/CHANGELOG.md#3420) [Compare Source](https://togithub.com/open-xml-templating/docxtemplater/compare/v3.41.0...v3.42.0) \[Internal] Add filePath to each "inspect" call, which fixes a bug with the chart module when used together with the "getTags" feature of the inspect module. If you update to this version, it is important that you also upgrade following modules if you use them : - slides module to version 3.5.3 - pptx-sub module to version 3.1.4 ### [`v3.41.0`](https://togithub.com/open-xml-templating/docxtemplater/blob/HEAD/CHANGELOG.md#3410) [Compare Source](https://togithub.com/open-xml-templating/docxtemplater/compare/v3.40.3...v3.41.0) Correctly show error in a multi error if the scope parser execution fails inside the render function Previously, following error was thrown : ```error Error: Scope parser execution failed at new XTScopeParserError (....) ``` with following template : ```txt {#users | sortBy:'foo'} Foo {/} ``` expressionParser.filters.sortBy = function (input, ...fields) { if (!input) return input; return sortBy(input, fields); }; (when sortBy is not imported correctly). Now, the error will show a multierror with the list of errors that are happening + the tags that are causing the error. Add support for angularExpressions.compile(), angularExpressions.Parser, and angularParser.Lexer ### [`v3.40.3`](https://togithub.com/open-xml-templating/docxtemplater/blob/HEAD/CHANGELOG.md#3403) [Compare Source](https://togithub.com/open-xml-templating/docxtemplater/compare/v3.40.2...v3.40.3) Fix issue when having {tag} inside title in pptx (or docx) and using the linebreak option. ### [`v3.40.2`](https://togithub.com/open-xml-templating/docxtemplater/blob/HEAD/CHANGELOG.md#3402) [Compare Source](https://togithub.com/open-xml-templating/docxtemplater/compare/v3.40.1...v3.40.2) Bugfix to not add "w:sdt" inside "w:sdtContent". Fixes a corruption on a particular type of document. ### [`v3.40.1`](https://togithub.com/open-xml-templating/docxtemplater/blob/HEAD/CHANGELOG.md#3401) [Compare Source](https://togithub.com/open-xml-templating/docxtemplater/compare/v3.40.0...v3.40.1) Bugfix when using docxtemplater asynchronously, and having some module inside a loop. The "contentType" and some other properties were not transfered correctly to the elements inside the loop. This specifically caused an issue in the HTML module to return the correct pageHeight inside the `getSize` and `getImage` function. This could also lead to some other bugs that were happening only when having some specific tag present in the loop. ### [`v3.40.0`](https://togithub.com/open-xml-templating/docxtemplater/blob/HEAD/CHANGELOG.md#3400) [Compare Source](https://togithub.com/open-xml-templating/docxtemplater/compare/v3.39.2...v3.40.0) - In previous versions the following code will throw an error: ```js new Docxtemplater(zip, { paragraphLoop: true, linebreaks: true, delimiters: { start: "$(", end: ")", }, }); ``` ```template $(last_name) $(first_name) Some text (Some text) Some text $(last_name) $(first_name) ``` ```js MultiError { name: "TemplateError", id: "unopened_tag", explanation: "The tag beginning with \") Some text\" is unopened" } ``` The syntax can now be made more lenient to permit closing tags even when there are no corresponding opening tags. In your code, write : ```js new Docxtemplater(zip, { paragraphLoop: true, linebreaks: true, syntax: { allowUnopenedTag: true, }, }); ``` For now, the only available property for `syntax` object is `allowUnopenedTag` (it makes it possible to use the end delimiter tag as a text and not to parse it as a closing tag and cause syntax error). Fixes [https://github.com/open-xml-templating/docxtemplater/issues/726](https://togithub.com/open-xml-templating/docxtemplater/issues/726). The default behavior for the parser without setting the syntax option is the same as in 3.39.2, meaning without the `syntax.allowUnopenedTag: true` option, placeholders that are closed but not opened will throw an error. - Internal: Refactor `getDelimiterErrors` function to be cleaner and more performant - Internal: Add tests for new functionalityConfiguration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
â™» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.