edi9999/docxtemplater-image-module 57
A module to insert images with docxtemplater
Angular expressions as standalone module
A simple security experiment
edi9999/cours-dweb-iut-haguenau 3
Cours de l'IUT de Haguenau, option D-WEB
edi9999/berlin-laravel-meetup 2
Code for the berlin laravel talk about laravel and angular
edi9999/blink-mocha-reporter 2
A reporter for your blink
A remake of BlinkControl written in JS with nw.js and Riot (OSX, Linux and Windows compatible)
[DEPRECATED] Please don't use it anymore. NodeJS Server for the docxtemplater library
push eventpeerigon/angular-expressions
commit sha aa667525bce215fcbf3036ca69159409cc092002
Bump elliptic from 6.5.2 to 6.5.3 Bumps [elliptic](https://github.com/indutny/elliptic) from 6.5.2 to 6.5.3. - [Release notes](https://github.com/indutny/elliptic/releases) - [Commits](https://github.com/indutny/elliptic/compare/v6.5.2...v6.5.3) Signed-off-by: dependabot[bot] <[email protected]>
commit sha d37f34a04cced4c8eaa1113f2071589b707bb3c4
Merge pull request #16 from peerigon/dependabot/npm_and_yarn/elliptic-6.5.3 Bump elliptic from 6.5.2 to 6.5.3
push time in 2 days
PR merged peerigon/angular-expressions
Bumps elliptic from 6.5.2 to 6.5.3. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/indutny/elliptic/commit/8647803dc3d90506aa03021737f7b061ba959ae1"><code>8647803</code></a> 6.5.3</li> <li><a href="https://github.com/indutny/elliptic/commit/856fe4d99fe7b6200556e6400b3bf585b1721bec"><code>856fe4d</code></a> signature: prevent malleability and overflows</li> <li>See full diff in <a href="https://github.com/indutny/elliptic/compare/v6.5.2...v6.5.3">compare view</a></li> </ul> </details> <br />
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
<details> <summary>Dependabot commands and options</summary> <br />
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot mergewill merge this PR after your CI passes on it@dependabot squash and mergewill squash and merge this PR after your CI passes on it@dependabot cancel mergewill cancel a previously requested merge and block automerging@dependabot reopenwill reopen this PR if it is closed@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)@dependabot use these labelswill set the current labels as the default for future PRs for this repo and language@dependabot use these reviewerswill set the current reviewers as the default for future PRs for this repo and language@dependabot use these assigneeswill set the current assignees as the default for future PRs for this repo and language@dependabot use this milestonewill set the current milestone as the default for future PRs for this repo and language
You can disable automated security fix PRs for this repo from the Security Alerts page.
</details>
pr closed time in 2 days
issue commentopen-xml-templating/docxtemplater
@shadab14meb346 are you alright ? I think I will tackle this issue soon if I don't get a response in the next few days.
comment created time in 4 days
push eventopen-xml-templating/pizzip
commit sha 720462428bb9cc211652df24ee149455f036c7dd
Bump elliptic from 6.5.2 to 6.5.3 Bumps [elliptic](https://github.com/indutny/elliptic) from 6.5.2 to 6.5.3. - [Release notes](https://github.com/indutny/elliptic/releases) - [Commits](https://github.com/indutny/elliptic/compare/v6.5.2...v6.5.3) Signed-off-by: dependabot[bot] <[email protected]>
commit sha a979a185cfbd19add94481c51870a9c3c5a423bd
Merge pull request #8 from open-xml-templating/dependabot/npm_and_yarn/elliptic-6.5.3 Bump elliptic from 6.5.2 to 6.5.3
push time in 4 days
PR merged open-xml-templating/pizzip
Bumps elliptic from 6.5.2 to 6.5.3. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/indutny/elliptic/commit/8647803dc3d90506aa03021737f7b061ba959ae1"><code>8647803</code></a> 6.5.3</li> <li><a href="https://github.com/indutny/elliptic/commit/856fe4d99fe7b6200556e6400b3bf585b1721bec"><code>856fe4d</code></a> signature: prevent malleability and overflows</li> <li>See full diff in <a href="https://github.com/indutny/elliptic/compare/v6.5.2...v6.5.3">compare view</a></li> </ul> </details> <br />
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
<details> <summary>Dependabot commands and options</summary> <br />
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot mergewill merge this PR after your CI passes on it@dependabot squash and mergewill squash and merge this PR after your CI passes on it@dependabot cancel mergewill cancel a previously requested merge and block automerging@dependabot reopenwill reopen this PR if it is closed@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)@dependabot use these labelswill set the current labels as the default for future PRs for this repo and language@dependabot use these reviewerswill set the current reviewers as the default for future PRs for this repo and language@dependabot use these assigneeswill set the current assignees as the default for future PRs for this repo and language@dependabot use this milestonewill set the current milestone as the default for future PRs for this repo and language
You can disable automated security fix PRs for this repo from the Security Alerts page.
</details>
pr closed time in 4 days
push eventopen-xml-templating/docxtemplater-build
commit sha 37f79ef970ecb333e671b6547189088f7eb98682
Bump elliptic from 6.4.0 to 6.5.3 Bumps [elliptic](https://github.com/indutny/elliptic) from 6.4.0 to 6.5.3. - [Release notes](https://github.com/indutny/elliptic/releases) - [Commits](https://github.com/indutny/elliptic/compare/v6.4.0...v6.5.3) Signed-off-by: dependabot[bot] <[email protected]>
commit sha 40e715cef364ea402eb8b18ed43e4df2eba79259
Merge pull request #8 from open-xml-templating/dependabot/npm_and_yarn/elliptic-6.5.3 Bump elliptic from 6.4.0 to 6.5.3
push time in 5 days
PR merged open-xml-templating/docxtemplater-build
Bumps elliptic from 6.4.0 to 6.5.3. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/indutny/elliptic/commit/8647803dc3d90506aa03021737f7b061ba959ae1"><code>8647803</code></a> 6.5.3</li> <li><a href="https://github.com/indutny/elliptic/commit/856fe4d99fe7b6200556e6400b3bf585b1721bec"><code>856fe4d</code></a> signature: prevent malleability and overflows</li> <li><a href="https://github.com/indutny/elliptic/commit/60489415e545efdfd3010ae74b9726facbf08ca8"><code>6048941</code></a> 6.5.2</li> <li><a href="https://github.com/indutny/elliptic/commit/9984964457c9f8a63b91b01ea103260417eca237"><code>9984964</code></a> package: bump dependencies</li> <li><a href="https://github.com/indutny/elliptic/commit/ec735edde187a43693197f6fa3667ceade751a3a"><code>ec735ed</code></a> utils: leak less information in <code>getNAF()</code></li> <li><a href="https://github.com/indutny/elliptic/commit/71e4e8e2f5b8f0bdbfbe106c72cc9fbc746d3d60"><code>71e4e8e</code></a> 6.5.1</li> <li><a href="https://github.com/indutny/elliptic/commit/7ec66ffa255079260126d87b1762a59ea10de5ea"><code>7ec66ff</code></a> short: add infinity check before multiplying</li> <li><a href="https://github.com/indutny/elliptic/commit/ee7970b92f388e981d694be0436c4c8036b5d36c"><code>ee7970b</code></a> travis: really move on</li> <li><a href="https://github.com/indutny/elliptic/commit/637d0216b58de7edee4f3eb5641295ac323acadb"><code>637d021</code></a> travis: move on</li> <li><a href="https://github.com/indutny/elliptic/commit/5ed0babb6467cd8575a9218265473fda926d9d42"><code>5ed0bab</code></a> package: update deps</li> <li>Additional commits viewable in <a href="https://github.com/indutny/elliptic/compare/v6.4.0...v6.5.3">compare view</a></li> </ul> </details> <br />
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
<details> <summary>Dependabot commands and options</summary> <br />
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot mergewill merge this PR after your CI passes on it@dependabot squash and mergewill squash and merge this PR after your CI passes on it@dependabot cancel mergewill cancel a previously requested merge and block automerging@dependabot reopenwill reopen this PR if it is closed@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)@dependabot use these labelswill set the current labels as the default for future PRs for this repo and language@dependabot use these reviewerswill set the current reviewers as the default for future PRs for this repo and language@dependabot use these assigneeswill set the current assignees as the default for future PRs for this repo and language@dependabot use this milestonewill set the current milestone as the default for future PRs for this repo and language
You can disable automated security fix PRs for this repo from the Security Alerts page.
</details>
pr closed time in 5 days
issue commentopen-xml-templating/docxtemplater
How to generate Circled character
With the angular filter, you could write :
{@ myChar | circled}, where you would do `doc.setData({myChar: 'x'})
comment created time in 6 days
issue commentopen-xml-templating/docxtemplater
How to generate Circled character
You could add a function that you call to generate this XML.
Or even write a custom angular filter (see docs here : https://docxtemplater.readthedocs.io/en/latest/angular_parse.html) to have this behavior.
comment created time in 6 days
issue closedopen-xml-templating/docxtemplater
How to realize circled character

closed time in 9 days
zengyuanqiuissue commentopen-xml-templating/docxtemplater
I think the docx looks like this :
<w:p>
<w:pPr>
<w:rPr>
<w:rFonts w:hint="default"/>
<w:lang w:val="en"/>
</w:rPr>
</w:pPr>
<w:r>
<w:rPr>
<w:rFonts w:hint="default"/>
<w:lang w:val="en"/>
</w:rPr>
<w:fldChar w:fldCharType="begin"/>
</w:r>
<w:r>
<w:rPr>
<w:rFonts w:hint="default"/>
<w:lang w:val="en"/>
</w:rPr>
<w:instrText xml:space="preserve"> EQ \o\ac(</w:instrText>
</w:r>
<w:r>
<w:rPr>
<w:rFonts w:hint="eastAsia" w:asciiTheme="minorHAnsi" w:hAnsiTheme="minorHAnsi" w:eastAsiaTheme="minorEastAsia" w:cstheme="minorBidi"/>
<w:position w:val="-4"/>
<w:sz w:val="30"/>
<w:lang w:val="en" w:eastAsia="zh-CN" w:bidi="ar-SA"/>
</w:rPr>
<w:instrText xml:space="preserve">○</w:instrText>
</w:r>
<w:r>
<w:rPr>
<w:rFonts w:hint="default"/>
<w:lang w:val="en"/>
</w:rPr>
<w:instrText xml:space="preserve">,x)</w:instrText>
</w:r>
<w:r>
<w:rPr>
<w:rFonts w:hint="default"/>
<w:lang w:val="en"/>
</w:rPr>
<w:fldChar w:fldCharType="end"/>
</w:r>
<w:bookmarkStart w:id="0" w:name="_GoBack"/>
<w:bookmarkEnd w:id="0"/>
</w:p>
So you could add it with the rawxml module, like this :
In your template, write :
{@rawText}
in your setData call, write :
doc.setData({
rawText: ` <w:p>
<w:pPr>
<w:rPr>
<w:rFonts w:hint="default"/>
<w:lang w:val="en"/>
</w:rPr>
</w:pPr>
<w:r>
<w:rPr>
<w:rFonts w:hint="default"/>
<w:lang w:val="en"/>
</w:rPr>
<w:fldChar w:fldCharType="begin"/>
</w:r>
<w:r>
<w:rPr>
<w:rFonts w:hint="default"/>
<w:lang w:val="en"/>
</w:rPr>
<w:instrText xml:space="preserve"> EQ \o\ac(</w:instrText>
</w:r>
<w:r>
<w:rPr>
<w:rFonts w:hint="eastAsia" w:asciiTheme="minorHAnsi" w:hAnsiTheme="minorHAnsi" w:eastAsiaTheme="minorEastAsia" w:cstheme="minorBidi"/>
<w:position w:val="-4"/>
<w:sz w:val="30"/>
<w:lang w:val="en" w:eastAsia="zh-CN" w:bidi="ar-SA"/>
</w:rPr>
<w:instrText xml:space="preserve">○</w:instrText>
</w:r>
<w:r>
<w:rPr>
<w:rFonts w:hint="default"/>
<w:lang w:val="en"/>
</w:rPr>
<w:instrText xml:space="preserve">,x)</w:instrText>
</w:r>
<w:r>
<w:rPr>
<w:rFonts w:hint="default"/>
<w:lang w:val="en"/>
</w:rPr>
<w:fldChar w:fldCharType="end"/>
</w:r>
<w:bookmarkStart w:id="0" w:name="_GoBack"/>
<w:bookmarkEnd w:id="0"/>
</w:p>`
})
Here, I'm enclosing the character x, but you could change that of course.
comment created time in 9 days
issue commentopen-xml-templating/docxtemplater
Can you send me the docx that you would want to achieve @zengyuanqiu ?
comment created time in 10 days
issue openedopen-xml-templating/docxtemplater
Currently, for typescript users, there are no typings at all.
It would be cool to have them (by writing some docxtemplater.d.ts file).
The object of this issue is NOT to use typescript in docxtemplater itself, just to provide typing files (for the public API only).
The same should be done for Pizzip.
created time in 11 days
issue closedopen-xml-templating/docxtemplater
can we used condition inside loop
#Looop inside loop not working:
- can we apply condition on loop variable i try to find solution but not getting any
let data = {
parentUser:[
{
name:"demo"
childUser:[{
name:"child-demo"
}]
},
{
name:"demo2",
childUser: []
}
]
}
see data
- i want to display child user names inside table if child array size is 0 then skip this doc
- i try to find the solution but not getting any solution
closed time in 11 days
sagarmodhavaniyapush eventopen-xml-templating/docxtemplater
commit sha 76fed4b788d1f19f8072df7a7f219c70676f351e
[docs] Remove deadlink
push time in 11 days
push eventopen-xml-templating/docxtemplater
commit sha 7eb3521c0dd98abde2e26209e37bc0ffdb199d15
[doc] For angular parser, recommend to use assign instead of merge Since merge is recursive and deep, it can be much slower than assign, and lead to performance issues.
push time in 14 days
push eventpeerigon/angular-expressions
commit sha bc75631bf4aacb6862bf2b9b8de0538681094677
Bump lodash from 4.17.15 to 4.17.19 Bumps [lodash](https://github.com/lodash/lodash) from 4.17.15 to 4.17.19. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.15...4.17.19) Signed-off-by: dependabot[bot] <[email protected]>
commit sha 228e410e42124224d61ccc582e26411db03bb0e2
Merge pull request #15 from peerigon/dependabot/npm_and_yarn/lodash-4.17.19 Bump lodash from 4.17.15 to 4.17.19
push time in 15 days
PR merged peerigon/angular-expressions
Bumps lodash from 4.17.15 to 4.17.19. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/lodash/lodash/releases">lodash's releases</a>.</em></p> <blockquote> <h2>4.17.16</h2> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/lodash/lodash/commit/d7fbc52ee0466a6d248f047b5d5c3e6d1e099056"><code>d7fbc52</code></a> Bump to v4.17.19</li> <li><a href="https://github.com/lodash/lodash/commit/2e1c0f22f425e9c013815b2cd7c2ebd51f49a8d6"><code>2e1c0f2</code></a> Add npm-package</li> <li><a href="https://github.com/lodash/lodash/commit/1b6c282299f4e0271f932b466c67f0f822aa308e"><code>1b6c282</code></a> Bump to v4.17.18</li> <li><a href="https://github.com/lodash/lodash/commit/a370ac81408de2da77a82b3c4b61a01a3b9c2fac"><code>a370ac8</code></a> Bump to v4.17.17</li> <li><a href="https://github.com/lodash/lodash/commit/1144918f3578a84fcc4986da9b806e63a6175cbb"><code>1144918</code></a> Rebuild lodash and docs</li> <li><a href="https://github.com/lodash/lodash/commit/3a3b0fd339c2109563f7e8167dc95265ed82ef3e"><code>3a3b0fd</code></a> Bump to v4.17.16</li> <li><a href="https://github.com/lodash/lodash/commit/c84fe82760fb2d3e03a63379b297a1cc1a2fce12"><code>c84fe82</code></a> fix(zipObjectDeep): prototype pollution (<a href="https://github-redirect.dependabot.com/lodash/lodash/issues/4759">#4759</a>)</li> <li><a href="https://github.com/lodash/lodash/commit/e7b28ea6cb17b4ca021e7c9d66218c8c89782f32"><code>e7b28ea</code></a> Sanitize sourceURL so it cannot affect evaled code (<a href="https://github-redirect.dependabot.com/lodash/lodash/issues/4518">#4518</a>)</li> <li><a href="https://github.com/lodash/lodash/commit/0cec225778d4ac26c2bac95031ecc92a94f08bbb"><code>0cec225</code></a> Fix lodash.isEqual for circular references (<a href="https://github-redirect.dependabot.com/lodash/lodash/issues/4320">#4320</a>) (<a href="https://github-redirect.dependabot.com/lodash/lodash/issues/4515">#4515</a>)</li> <li><a href="https://github.com/lodash/lodash/commit/94c3a8133cb4fcdb50db72b4fd14dd884b195cd5"><code>94c3a81</code></a> Document matches* shorthands for over* methods (<a href="https://github-redirect.dependabot.com/lodash/lodash/issues/4510">#4510</a>) (<a href="https://github-redirect.dependabot.com/lodash/lodash/issues/4514">#4514</a>)</li> <li>Additional commits viewable in <a href="https://github.com/lodash/lodash/compare/4.17.15...4.17.19">compare view</a></li> </ul> </details> <details> <summary>Maintainer changes</summary> <p>This version was pushed to npm by <a href="https://www.npmjs.com/~mathias">mathias</a>, a new releaser for lodash since your current version.</p> </details> <br />
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
<details> <summary>Dependabot commands and options</summary> <br />
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot mergewill merge this PR after your CI passes on it@dependabot squash and mergewill squash and merge this PR after your CI passes on it@dependabot cancel mergewill cancel a previously requested merge and block automerging@dependabot reopenwill reopen this PR if it is closed@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)@dependabot use these labelswill set the current labels as the default for future PRs for this repo and language@dependabot use these reviewerswill set the current reviewers as the default for future PRs for this repo and language@dependabot use these assigneeswill set the current assignees as the default for future PRs for this repo and language@dependabot use this milestonewill set the current milestone as the default for future PRs for this repo and language
You can disable automated security fix PRs for this repo from the Security Alerts page.
</details>
pr closed time in 15 days
push eventopen-xml-templating/docxtemplater
commit sha a1b5bfebeb7bb1ebfa80f47b1bb256f474045f29
Update README
push time in 16 days
push eventopen-xml-templating/docxtemplater
commit sha a841c58f51aef78312c0ce480b434097d0e7e9c5
Update dependencies
push time in 16 days
push eventopen-xml-templating/docxtemplater
commit sha 7be81ee8d0fc0a9336174182d612ce9dcdc04bf6
[test] Add error message when expectedError doesn't have a rootError
push time in 16 days
issue commentopen-xml-templating/docxtemplater
And then in your template, have
| {#groups}{label} |
| {#products} {name} | {price}{/}{/} |
comment created time in 17 days
issue closedopen-xml-templating/docxtemplater
Hi , I created a table with group subheader like this:
| {#products}{label_group} |
| {name} | {price}{/products} |
all products are split between groups but after merge the data it came out with repeated label_group, even if there is empty label_group can you please provide an example on how to turn off label_group row depending on some flag?
closed time in 17 days
jonny64issue commentopen-xml-templating/docxtemplater
Hello @jonny64 ,
In this case, I would rather structure your data differently before passing it to setData,
This means, from your code, transform the structure :
{
products: [
{
label_group: "foobar",
name: "john",
price: 10,
},
{
label_group: "foobar",
name: "mary",
price: 20,
},
]
}
Into :
{
groups: [
{
name: "foobar",
products: [{
name: "john",
price: 10,
},{
name: "mary",
price: 20,
}]
}
]
}
comment created time in 17 days
PR merged open-xml-templating/pizzip
Bumps lodash from 4.17.15 to 4.17.19. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/lodash/lodash/releases">lodash's releases</a>.</em></p> <blockquote> <h2>4.17.16</h2> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/lodash/lodash/commit/d7fbc52ee0466a6d248f047b5d5c3e6d1e099056"><code>d7fbc52</code></a> Bump to v4.17.19</li> <li><a href="https://github.com/lodash/lodash/commit/2e1c0f22f425e9c013815b2cd7c2ebd51f49a8d6"><code>2e1c0f2</code></a> Add npm-package</li> <li><a href="https://github.com/lodash/lodash/commit/1b6c282299f4e0271f932b466c67f0f822aa308e"><code>1b6c282</code></a> Bump to v4.17.18</li> <li><a href="https://github.com/lodash/lodash/commit/a370ac81408de2da77a82b3c4b61a01a3b9c2fac"><code>a370ac8</code></a> Bump to v4.17.17</li> <li><a href="https://github.com/lodash/lodash/commit/1144918f3578a84fcc4986da9b806e63a6175cbb"><code>1144918</code></a> Rebuild lodash and docs</li> <li><a href="https://github.com/lodash/lodash/commit/3a3b0fd339c2109563f7e8167dc95265ed82ef3e"><code>3a3b0fd</code></a> Bump to v4.17.16</li> <li><a href="https://github.com/lodash/lodash/commit/c84fe82760fb2d3e03a63379b297a1cc1a2fce12"><code>c84fe82</code></a> fix(zipObjectDeep): prototype pollution (<a href="https://github-redirect.dependabot.com/lodash/lodash/issues/4759">#4759</a>)</li> <li><a href="https://github.com/lodash/lodash/commit/e7b28ea6cb17b4ca021e7c9d66218c8c89782f32"><code>e7b28ea</code></a> Sanitize sourceURL so it cannot affect evaled code (<a href="https://github-redirect.dependabot.com/lodash/lodash/issues/4518">#4518</a>)</li> <li><a href="https://github.com/lodash/lodash/commit/0cec225778d4ac26c2bac95031ecc92a94f08bbb"><code>0cec225</code></a> Fix lodash.isEqual for circular references (<a href="https://github-redirect.dependabot.com/lodash/lodash/issues/4320">#4320</a>) (<a href="https://github-redirect.dependabot.com/lodash/lodash/issues/4515">#4515</a>)</li> <li><a href="https://github.com/lodash/lodash/commit/94c3a8133cb4fcdb50db72b4fd14dd884b195cd5"><code>94c3a81</code></a> Document matches* shorthands for over* methods (<a href="https://github-redirect.dependabot.com/lodash/lodash/issues/4510">#4510</a>) (<a href="https://github-redirect.dependabot.com/lodash/lodash/issues/4514">#4514</a>)</li> <li>Additional commits viewable in <a href="https://github.com/lodash/lodash/compare/4.17.15...4.17.19">compare view</a></li> </ul> </details> <details> <summary>Maintainer changes</summary> <p>This version was pushed to npm by <a href="https://www.npmjs.com/~mathias">mathias</a>, a new releaser for lodash since your current version.</p> </details> <br />
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
<details> <summary>Dependabot commands and options</summary> <br />
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot mergewill merge this PR after your CI passes on it@dependabot squash and mergewill squash and merge this PR after your CI passes on it@dependabot cancel mergewill cancel a previously requested merge and block automerging@dependabot reopenwill reopen this PR if it is closed@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)@dependabot use these labelswill set the current labels as the default for future PRs for this repo and language@dependabot use these reviewerswill set the current reviewers as the default for future PRs for this repo and language@dependabot use these assigneeswill set the current assignees as the default for future PRs for this repo and language@dependabot use this milestonewill set the current milestone as the default for future PRs for this repo and language
You can disable automated security fix PRs for this repo from the Security Alerts page.
</details>
pr closed time in 17 days
push eventopen-xml-templating/pizzip
commit sha 80dd1b6fe38922c7941670bb45c70236a68d3179
Bump lodash from 4.17.15 to 4.17.19 Bumps [lodash](https://github.com/lodash/lodash) from 4.17.15 to 4.17.19. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.15...4.17.19) Signed-off-by: dependabot[bot] <[email protected]>
commit sha f4bed88900d6efdcc7b887964e0eb45d80d9ff30
Merge pull request #7 from open-xml-templating/dependabot/npm_and_yarn/lodash-4.17.19 Bump lodash from 4.17.15 to 4.17.19
push time in 17 days
push eventopen-xml-templating/docxtemplater
commit sha caa52e3e6ede2198120b29ee99b4385a87de053e
[doc] Update doc about filetype detection
push time in 21 days
push eventopen-xml-templating/docxtemplater
commit sha e18b6647f54b83da4b7c66980121c75913f6f069
[doc] Update doc about comparison operators and boolean operators
push time in 21 days
push eventopen-xml-templating/docxtemplater
commit sha f5a6005aa533e701033bc0eb417ce448d89383ee
Update dependencies
push time in 21 days
push eventedi9999/ultisnips
commit sha 2e6bb2c61101e32b4ca54a32d223109edcaa8f9b
Minimal typo
push time in 22 days
fork edi9999/ultisnips
UltiSnips - The ultimate snippet solution for Vim. Send pull requests to SirVer/ultisnips!
fork in 22 days
push eventedi9999/newsboat
commit sha 38a7a6f94999e212fa76f9f5bcfcb6f790809dcc
Fix typos Dowload -> Download
push time in 24 days
issue openednewsboat/newsboat
Podboat : When the title of an episode contains `/`, it should not add a folder
Newsboat version (copy the output of newsboat -v or the first line of git show):
newsboat 2.20.1 - https://newsboat.org/
Copyright (C) 2006-2015 Andreas Krennmair
Copyright (C) 2015-2020 Alexander Batischev
Copyright (C) 2006-2017 Newsbeuter contributors
Copyright (C) 2017-2020 Newsboat contributors
Newsboat is free software licensed under the MIT License. (Type `newsboat -vv' to see the full text.)
It bundles:
- JSON for Modern C++ library, licensed under the MIT License: https://github.com/nlohmann/json
- optional-lite library, licensed under the Boost Software License: https://github.com/martinmoene/optional-lite
- expected-lite library, licensed under the Boost Software License: https://github.com/martinmoene/expected-lite
newsboat 2.20.1
System: Linux 4.15.0-109-generic (x86_64)
Compiler: g++ 7.5.0
ncurses: ncurses 6.1.20180127 (compiled with 6.1)
libcurl: libcurl/7.58.0 GnuTLS/3.5.18 zlib/1.2.11 libidn2/2.3.0 libpsl/0.19.1 (+libidn2/2.0.4) nghttp2/1.30.0 librtmp/2.3 (compiled with 7.58.0)
SQLite: 3.22.0 (compiled with 3.22.0)
libxml2: compiled with 2.9.10
Steps to reproduce the issue:
-
For the following RSS podcast : https://rss.acast.com/les-couilles-sur-la-table
-
One of the title of the podcasts is :
Nourrir son homme : le bon steak et le joli morceau (2/2) -
When enqueuing that episode to podboat, then downloading it, it will create a folder called
Nourrir son homme : le bon steak et le joli morceau (2and create the mp3 file inside that folder.
I think that this / should be escaped to avoid creating folders.
created time in 24 days
issue commentopen-xml-templating/docxtemplater
Loops generate extra new lines and spaces
If you're using raw xml inside loops, the paragraphLoop option will still work :
doc.setOptions({paragraphLoop: true});
with the following template :
{#loops}
{@rawXml}
{/}
Note that you should use "normal" enter, not shift enter.
comment created time in a month
push eventopen-xml-templating/docxtemplater
commit sha 29db80faa47ab75300164bf85149571c774b2905
Update dependencies
push time in a month
push eventopen-xml-templating/docxtemplater
commit sha bd83f47ddcf1e7e4f6e66489d85aab7cb0054249
Remove node 8 from .travis.yml
push time in a month
push eventopen-xml-templating/docxtemplater
commit sha fc7c55be03a2a29246ce1778f9b7cdfcaf6e41d4
Update dependencies
commit sha 7384e3adb0ed300f96be2ab639372018782fc541
[doc] Update doc about parser to avoid parent scope
push time in a month
issue commentopen-xml-templating/docxtemplater
TemplateError: Multi error occurs on generating large documents
I haven't yet received any email
comment created time in a month
issue closedopen-xml-templating/docxtemplater
Environment
- Version of docxtemplater : 3.17.9
- Used docxtemplater-modules : html-pptx-module-3.1.1, slides-module-3.2.9
- Runner : Browser
How to reproduce my problem :
Using the interactive demo at https://docxtemplater.com/modules/html-pptx/ with data that looks like:
{
"html1": "<b>bold</b> <i>italic</i>"
}
I would expect it to return the following output:

But it returns the following instead (note the lack of spacing between the words):

closed time in a month
mamccrissue commentopen-xml-templating/docxtemplater
This is now fixed in version 3.1.2 of the module.
Thanks for taking the time to submit the issue !
comment created time in a month
issue commentopen-xml-templating/docxtemplater
You're right, I confirm this issue. I will get back to you soon, hopefuly with a fix.
comment created time in a month
issue closedopen-xml-templating/docxtemplater
Cannot read property 'replace' of undefined
The HTML-DOCXTEMLPATER is crashing with an empty img tag.
For reproducing goto the demo page: https://docxtemplater.com/demo/#html
Use the data below: Data: { "html": "<img></img>" }
The error: TypeError: Cannot read property 'replace' of undefined at base64DataURLToArrayBuffer (/opt/formtitan/docker-node-workflow/application/node_modules/docxtemplater-html-module/js/image-handler.js:9:29)
closed time in a month
tsabbayissue commentopen-xml-templating/docxtemplater
Cannot read property 'replace' of undefined
Hello @tsabbay , this is fixed in version 3.23.1 of the HTML module which I just released.
comment created time in a month
issue commentopen-xml-templating/docxtemplater
TemplateError: Multi error occurs on generating large documents
Any update @avanishchauhan ? You can send me your template per email (my email is on my github profile at https://github.com/edi9999/ )
comment created time in a month
issue commentopen-xml-templating/docxtemplater
TemplateError: Multi error occurs on generating large documents
You could change the line
const errorMessage = error.properties.errors.map(function( error) {
console.log('ERROR DETAIL', error.message, error.stack, error)
return error.properties.explanation;
}).join("\n")
Also, are you using latest version of docxtemplater, 3.17.9 ?
I would be interested in the template if you can still reproduce the bug with that version.
Are you using any modules ?
comment created time in a month
issue commentopen-xml-templating/docxtemplater
Hello @ASCMax , from what I understand, you would want to embed a font in the docx output so that even if the font is not installed on the computer opening the file, it will still be readable.
I think that if you do embed the font in the template that you use, it will also be present in the generated file.
At the current time, it is not possible to embed a font programmatically with docxtemplater (and since this is not a very common usecase, if I implemented it, it would be in a PRO module (probably the meta module in this case)).
comment created time in a month
issue closedopen-xml-templating/docxtemplater
How can i embed fonts forcefully in docxtemplater in docx output?
Suppose i am using some font in my template which on client end is not available and i want my font to be embedded in docx output using docxtemplater, is it possible?
closed time in a month
ASCMaxissue commentopen-xml-templating/docxtemplater
To generate a document from an external URL in node.
Hello @whatusaid
Here is the code that you can use :
I've commented the docxConverter part since I don't know that, but it works now.
I have just used encoding: null on the request parameters, but I'm not sure why it does'nt work when you convert the string to a buffer manually however...
var PizZip = require('pizzip');
var Docxtemplater = require('docxtemplater');
// var docxConverter = require('docx-pdf');
const request = require('request');
var fs = require('fs');
var path = require('path');
//Load the docx file as a binary
//var content = fs.readFileSync(path.resolve(__dirname, 'newsal.docx'));
request.get({url:"https://docxtemplater.com/tag-example.docx", encoding: null}, function (error, response, body) {
if (!error && response.statusCode == 200) {
// let gg = Buffer.from(buff);//buffer
var zip = new PizZip(body);
var doc = new Docxtemplater();
doc.loadZip(zip);
doc.setOptions({delimiters: {start: '{', end: '}'}});
//set the templateVariables
doc.setData({
'first_name': 'Abhilash',
'last_name': 'Balaji'
});
try {
// render the document (replace all occurences of {first_name} by John, {last_name} by Doe, ...)
doc.render()
}
catch (error) {
var e = {
message: error.message,
name: error.name,
stack: error.stack,
properties: error.properties,
}
console.log(JSON.stringify({error: e}));
// The error thrown here contains additional information when logged with JSON.stringify (it contains a property object).
throw error;
}
var buf = doc.getZip()
.generate({type: 'nodebuffer'});
// buf is a nodejs buffer, you can either write it to a file or do anything else with it.
fs.writeFileSync(path.resolve(__dirname, 'sal13.docx'), buf);
// docxConverter('./sal13.docx','./output123.pdf',function(err,result){
// if(err){
// console.log(err);
// }
// console.log('result',result.filename);
// });
}
});
comment created time in a month
issue closedopen-xml-templating/docxtemplater
To generate a document from an external URL in node.
As I was going through and started developing in node, My requirement was to develop based on the external URL(CDN) where the docx will be there in that URL.
When I try to pass the body that is converted to a buffer in pizzip, I get
Uncaught Error: Corrupted zip: missing 1203586221 bytes.
And in some cases with different URL I get an error message as
Uncaught Error: End of data reached (data length = 46077, asked index = 71350). Corrupted zip ?
kindly help me out on how to generate a document via external URL in Node, I have added my sample code below.
var PizZip = require('pizzip');
var Docxtemplater = require('docxtemplater');
var docxConverter = require('docx-pdf');
const request = require('request');
var fs = require('fs');
var path = require('path');
//Load the docx file as a binary
//var content = fs.readFileSync(path.resolve(__dirname, 'newsal.docx'));
request.get("https://docxtemplater.com/tag-example.docx", function (error, response, body) {
console.log(body.length);
if (!error && response.statusCode == 200) {
let buff = Buffer.from(body);// unit8array
let gg = Buffer.from(buff);//buffer
var zip = new PizZip(gg);
console.log(zip);
var doc = new Docxtemplater();
doc.loadZip(zipz);
doc.setOptions({delimiters: {start: '{', end: '}'}});
//set the templateVariables
let zipz=''
doc.setData({
'first_name': 'Abhilash',
'last_name': 'Balaji'
});
try {
// render the document (replace all occurences of {first_name} by John, {last_name} by Doe, ...)
doc.render()
}
catch (error) {
var e = {
message: error.message,
name: error.name,
stack: error.stack,
properties: error.properties,
}
console.log(JSON.stringify({error: e}));
// The error thrown here contains additional information when logged with JSON.stringify (it contains a property object).
throw error;
}
var buf = doc.getZip()
.generate({type: 'nodebuffer'});
// buf is a nodejs buffer, you can either write it to a file or do anything else with it.
fs.writeFileSync(path.resolve(__dirname, 'sal13.docx'), buf);
docxConverter('./sal13.docx','./output123.pdf',function(err,result){
if(err){
console.log(err);
}
console.log('result',result.filename);
});
}
});
closed time in a month
whatusaidissue commentopen-xml-templating/docxtemplater
To generate a document from an external URL in node.
Hello @whatusaid , if the error is Corrupted zip: missing 1203586221 bytes. , it means that it happened during var zip = new PizZip(gg);
It has nothing directly to do with docxtemplater.
1203586221 bytes seems to be enormous (it is approximately 1 GB of data).
From what I can tell, this could be due to the fact that the server responded with a partial response maybe ?
Also, on a side note, I don't think you should use Buffer.from() twice here :
let buff = Buffer.from(body);// unit8array
let gg = Buffer.from(buff);//buffer
As far as I can tell, Buffer.from() will always return a Buffer.
What I would do in your case is to try to understand what is happening when the error happens by saving the buffer to disk and trying to unzip the file on disk with some other utility.
comment created time in a month
issue commentneovim/neovim
Assertion failed: saved_copyID != copyID && saved_copyID != copyID - 1
Yes, I also still have this issue every few minutes, making work in nvim almost impossible. I don't understand why it takes more than 2 weeks to fix such a critical issue.
comment created time in a month
issue closedopen-xml-templating/docxtemplater
Corrupt docx when using loops with sections inside them
When having the following document.xml :
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<w:document xmlns:wpc="http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas" xmlns:cx="http://schemas.microsoft.com/office/drawing/2014/chartex" xmlns:cx1="http://schemas.microsoft.com/office/drawing/2015/9/8/chartex" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:wp14="http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:w15="http://schemas.microsoft.com/office/word/2012/wordml" xmlns:w16se="http://schemas.microsoft.com/office/word/2015/wordml/symex" xmlns:wpg="http://schemas.microsoft.com/office/word/2010/wordprocessingGroup" xmlns:wpi="http://schemas.microsoft.com/office/word/2010/wordprocessingInk" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wps="http://schemas.microsoft.com/office/word/2010/wordprocessingShape" mc:Ignorable="w14 w15 w16se wp14">
<w:body>
<w:p w14:paraId="2B573909" w14:textId="26A65651" w:rsidR="008E1CD7" w:rsidRDefault="008E1CD7" w:rsidP="00A048EB">
<w:r>
<w:t>{#loop}</w:t>
</w:r>
</w:p>
<w:p w14:paraId="01138056" w14:textId="77777777" w:rsidR="00FE53AA" w:rsidRPr="002A44F5" w:rsidRDefault="00FE53AA" w:rsidP="00FE53AA">
<w:pPr>
<w:autoSpaceDE w:val="0"/>
<w:autoSpaceDN w:val="0"/>
<w:adjustRightInd w:val="0"/>
<w:spacing w:after="0" w:line="240" w:lineRule="auto"/>
<w:jc w:val="both"/>
<w:sectPr w:rsidR="00FE53AA" w:rsidRPr="002A44F5" w:rsidSect="0087111E">
<w:headerReference w:type="default" r:id="rId12"/>
<w:footerReference w:type="default" r:id="rId13"/>
<w:type w:val="continuous"/>
<w:pgSz w:w="12240" w:h="15840"/>
<w:pgMar w:top="516" w:right="1440" w:bottom="900" w:left="1440" w:header="720" w:footer="720" w:gutter="0"/>
<w:cols w:space="720"/>
<w:docGrid w:linePitch="360"/>
</w:sectPr>
</w:pPr>
</w:p>
<w:p w14:paraId="7A0108CF" w14:textId="736B5D2D" w:rsidR="008E1CD7" w:rsidRDefault="008E1CD7" w:rsidP="008D7C74">
<w:r>
<w:t>{/loop}</w:t>
</w:r>
</w:p>
<w:sectPr w:rsidR="008E1CD7" w:rsidSect="0087111E">
<w:headerReference w:type="default" r:id="rId14"/>
<w:footerReference w:type="default" r:id="rId15"/>
<w:type w:val="continuous"/>
<w:pgSz w:w="12240" w:h="15840"/>
<w:pgMar w:top="516" w:right="1440" w:bottom="900" w:left="1440" w:header="720" w:footer="720" w:gutter="0"/>
<w:cols w:space="720"/>
<w:docGrid w:linePitch="360"/>
</w:sectPr>
</w:body>
</w:document>
The fact that multiple sectPr with headerReference that have the same id are created (because of the loop), makes the docx corrupt.
closed time in 2 months
edi9999issue commentopen-xml-templating/docxtemplater
Corrupt docx when using loops with sections inside them
Fixed and published in v3,17.9
comment created time in 2 months
created tagopen-xml-templating/docxtemplater
Generate docx and pptx (microsoft word documents) from templates, from Node.js, the Browser and the command line / Demo: https://docxtemplater.com/demo
created time in 2 months
push eventopen-xml-templating/docxtemplater
commit sha 1bd74037bd0a817fb05a21716e566dec5b652292
Bugfix corruption when having loop containing section
commit sha f062d46807e93f1074a25a8ac83aebe925a13259
Update versions in documentation
commit sha 4b0d15a76219545375512069bf008b08ed23fa11
3.17.9
push time in 2 months
push eventopen-xml-templating/docxtemplater
commit sha 135628dada47b40848ad6721beab2aed2a28a5be
Add test for MicrosoftEdge version 83
commit sha 41a1ef91fe6f2864be8b74f31f42aa27ea3f0ca1
Remove message about security vulnerability (discovered 4 months ago)
push time in 2 months
issue closedopen-xml-templating/docxtemplater
Intermittent TypeError on doc.render() : Cannot read property 'asText' of undefined
Environment
- Version of docxtemplater : 3.17.6
- Used docxtemplater-modules : None
- Runner : Browser
How to reproduce my problem :
The following code produces the stack trace below on an intermittent basis. This is independent of the particular file contents or placeholders in setData. While the intermittent nature had suggested to me a timing issue with resolving the URL, inserting substantial timeouts did not resolve the issue. I've likewise tested the latest version of PizZip in place of JSZip and the behavior was the same.
As I've tried numerous workarounds and researched cause from all available sources, I'd really appreciate any guidance or suggestions. Thank you!
With the following js file :
const asyncLoadZip = async url => (
new Promise((resolve, reject) => {
JSZipUtils.getBinaryContent(url, (e, content) => {
if (e) reject(e)
resolve(new JSZip(content))
})
})
)
const zip = await asyncLoadZip(url)
const baseOptions = {
paragraphLoop: true,
nullGetter: () => '',
}
const doc = new Docxtemplater()
.loadZip(zip)
.setOptions(baseOptions)
.setData({ ... })
try {
doc.render()
} catch (error) {
this.handleError(error)
}

closed time in 2 months
michaelbridgeissue commentopen-xml-templating/docxtemplater
Intermittent TypeError on doc.render() : Cannot read property 'asText' of undefined
Thanks for your investigation on your side !
Mutating the options object was not an expected behavior, so I've changed that in the just released version 3.17.8. It might avoid this difficult debug for another person in the future.
comment created time in 2 months
created tagopen-xml-templating/docxtemplater
Generate docx and pptx (microsoft word documents) from templates, from Node.js, the Browser and the command line / Demo: https://docxtemplater.com/demo
created time in 2 months
push eventopen-xml-templating/docxtemplater
commit sha 000fde38946450ed567fd38ebc56f29f8debb5bf
Do not mutate options when calling setOptions
commit sha 6dd8a6ddc6e75177f77a6ed38095a67f96638a6e
Update versions in documentation
commit sha f6b5412a254529260b892779de8b7d434cb47a4c
3.17.8
push time in 2 months
issue commentopen-xml-templating/docxtemplater
Corrupt docx when using loops with sections inside them
This issue comes from #521
comment created time in 2 months
issue openedopen-xml-templating/docxtemplater
Corrupt docx when using loops with sections inside them
When having the following document.xml :
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<w:document xmlns:wpc="http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas" xmlns:cx="http://schemas.microsoft.com/office/drawing/2014/chartex" xmlns:cx1="http://schemas.microsoft.com/office/drawing/2015/9/8/chartex" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:wp14="http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:w15="http://schemas.microsoft.com/office/word/2012/wordml" xmlns:w16se="http://schemas.microsoft.com/office/word/2015/wordml/symex" xmlns:wpg="http://schemas.microsoft.com/office/word/2010/wordprocessingGroup" xmlns:wpi="http://schemas.microsoft.com/office/word/2010/wordprocessingInk" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wps="http://schemas.microsoft.com/office/word/2010/wordprocessingShape" mc:Ignorable="w14 w15 w16se wp14">
<w:body>
<w:p w14:paraId="2B573909" w14:textId="26A65651" w:rsidR="008E1CD7" w:rsidRDefault="008E1CD7" w:rsidP="00A048EB">
<w:r>
<w:t>{#loop}</w:t>
</w:r>
</w:p>
<w:p w14:paraId="01138056" w14:textId="77777777" w:rsidR="00FE53AA" w:rsidRPr="002A44F5" w:rsidRDefault="00FE53AA" w:rsidP="00FE53AA">
<w:pPr>
<w:autoSpaceDE w:val="0"/>
<w:autoSpaceDN w:val="0"/>
<w:adjustRightInd w:val="0"/>
<w:spacing w:after="0" w:line="240" w:lineRule="auto"/>
<w:jc w:val="both"/>
<w:sectPr w:rsidR="00FE53AA" w:rsidRPr="002A44F5" w:rsidSect="0087111E">
<w:headerReference w:type="default" r:id="rId12"/>
<w:footerReference w:type="default" r:id="rId13"/>
<w:type w:val="continuous"/>
<w:pgSz w:w="12240" w:h="15840"/>
<w:pgMar w:top="516" w:right="1440" w:bottom="900" w:left="1440" w:header="720" w:footer="720" w:gutter="0"/>
<w:cols w:space="720"/>
<w:docGrid w:linePitch="360"/>
</w:sectPr>
</w:pPr>
</w:p>
<w:p w14:paraId="7A0108CF" w14:textId="736B5D2D" w:rsidR="008E1CD7" w:rsidRDefault="008E1CD7" w:rsidP="008D7C74">
<w:r>
<w:t>{/loop}</w:t>
</w:r>
</w:p>
<w:sectPr w:rsidR="008E1CD7" w:rsidSect="0087111E">
<w:headerReference w:type="default" r:id="rId14"/>
<w:footerReference w:type="default" r:id="rId15"/>
<w:type w:val="continuous"/>
<w:pgSz w:w="12240" w:h="15840"/>
<w:pgMar w:top="516" w:right="1440" w:bottom="900" w:left="1440" w:header="720" w:footer="720" w:gutter="0"/>
<w:cols w:space="720"/>
<w:docGrid w:linePitch="360"/>
</w:sectPr>
</w:body>
</w:document>
The fact that multiple sectPr with headerReference that have the same id are created (because of the loop), makes the docx corrupt.
created time in 2 months
issue commentopen-xml-templating/docxtemplater
Hello @josevenezuelapadron , I guess I won't work on it in the open-source version, I might one day release it as a paid module however.
comment created time in 2 months
issue commentopen-xml-templating/docxtemplater
Intermittent TypeError on doc.render() : Cannot read property 'asText' of undefined
I'm pretty sure that it means that some module has been applied for a previous generation, and you are reusing the same docxtemplater instance maybe ??
Note that you shouldn't reuse a docxtemplater instance, ie do loadZip, compile, setData and render only once on a given docxtemplater instance.
comment created time in 2 months
issue commentopen-xml-templating/docxtemplater
Intermittent TypeError on doc.render() : Cannot read property 'asText' of undefined
In your log, I see that there is "word/_rels/header2.xml.rels" in your xmlFileNames, hence, it should also be in the zipfiles but it seems that it is not.
comment created time in 2 months
issue commentopen-xml-templating/docxtemplater
Intermittent TypeError on doc.render() : Cannot read property 'asText' of undefined
It could be a coincidence but I remember having seen this sort of bug with reduce and being like WTF : https://bugs.chromium.org/p/chromium/issues/detail?id=1049982 Do you use a specific version of Chrome ?
comment created time in 2 months
issue commentopen-xml-templating/docxtemplater
Intermittent TypeError on doc.render()
Oh wait, there's an other very strange thing.
If you don't use any kind of module, this.options.xmlFileNames should be an empty array : [], so the reduce should actually never be called. Can you do a console.log(this.options.xmlFileNames) in the compiled code ?
comment created time in 2 months
issue commentopen-xml-templating/docxtemplater
Intermittent TypeError on doc.render()
That is interesting, it seems that some files have disappeared or something ...
The whole following code is totally synchronous (eg it blocks the main thread, nothing can happen at the same time) :
const doc = new Docxtemplater()
.loadZip(zip)
.setOptions(baseOptions)
.setData({ ... })
try {
doc.render()
} catch (error) {
this.handleError(error)
}
So I would be pretty astonished that there is a race somewhere.
Can you reproduce the bug by using a specific template with some specific data ?
It would be interesting to debug the zip file at the time of the crash, since it seems not to contain some file.
Can you do :
const doc = new Docxtemplater()
.loadZip(zip)
.setOptions(baseOptions)
.setData({ ... })
try {
doc.render()
} catch (error) {
console.log('zipfiles', Object.keys(zip.files));
this.handleError(error)
}
and report the console.log when this fails ?
comment created time in 2 months
issue commentopen-xml-templating/docxtemplater
The zip creation is done here :
docxtemplater/es6/tests/utils.js line 403 const zip = new PizZip(content);
The usage of the zip is done at several places, for example :
docxtemplater/es6/collect-content-types.js line 15
docxtemplater/es6/docxtemplater.js line 45
docxtemplater/es6/docxtemplater.js line 242
docxtemplater/es6/docxtemplater.js line 342
docxtemplater/es6/docxtemplater.js line 352
docxtemplater/es6/docxtemplater.js line 363
In all these cases, the zip instance created in docxtemplater/es6/tests/utils.js line 403 is the one that is going to be used in all other places, what I mean by that is that it is the exact same object.
comment created time in 2 months
created tagopen-xml-templating/docxtemplater
Generate docx and pptx (microsoft word documents) from templates, from Node.js, the Browser and the command line / Demo: https://docxtemplater.com/demo
created time in 2 months
push eventopen-xml-templating/docxtemplater
commit sha f797de0f58266266a05ead485a4888a4e0a28951
Update cleanError and errorVerifier
commit sha 9e3e29881fef614908670001498d70a07360bd98
Correctly report Rendering Errors within loops
commit sha 363e8d64f9d6d8febb28314d400b44126d63d1da
Update versions in documentation
commit sha 5d97f5302d57b146754f3373dd3e39f2f3a2e699
3.17.7
push time in 2 months
issue commentopen-xml-templating/docxtemplater
Marathi/Hindi text not rendered properly
I'm closing this since I think it should work, feel free to comment if it doesn't work for you.
comment created time in 2 months
issue closedopen-xml-templating/docxtemplater
Marathi/Hindi text not rendered properly
First of all, great library!
Environment
- Version of docxtemplater :"^3.17.6"
- Used docxtemplater-modules :None except angular parser.
- Runner : Node.JS
How to reproduce my problem :
My template is the following : input.docx
With the following js file :
var fs = require('fs');
var Docxtemplater = require('docxtemplater');
//Load the docx file as a binary
var content = fs
.readFileSync(__dirname + "/template.zip", "binary");
var zip = new PizZip(content);
var doc=new Docxtemplater().loadZip(zip)
//set the templateVariables
doc.setData({ text: 'पेरणी ते उगवण' });
doc.render();
var buf = doc.getZip()
.generate({type:"nodebuffer"});
fs.writeFileSync(__dirname+"/output.docx",buf);
The template should render the text correctly. It's rendering the text but its shown like this
closed time in 2 months
paulKabiraissue closedopen-xml-templating/docxtemplater
How to group and aggregate records.
I want to how can i group and aggregate records like i have
{
"ACCOUNT_ID": 1699,
"ACCOUNT_DETAIL": [
{
"CATEGORY": "Cat1",
"DETAIL": [
{
"TRANS_ID": 1,
"DATE_": 930305,
"TYPE": "ABC",
"AMOUNT": 5224
},
{
"TRANS_ID": 2,
"DATE_": 930305,
"TYPE": "XYZ",
"AMOUNT": 2234
}
]
},
{
"CATEGORY": "Cat2",
"DETAIL": [
{
"TRANS_ID": 6,
"DATE_": 930114,
"TYPE": "ZXC",
"AMOUNT": 800
},
{
"TRANS_ID": 7,
"DATE_": 930114,
"TYPE": "ABC",
"AMOUNT": 600
}
]
}
]
}
and i want to sum amount over category, so how i will be able to achieve it in loop table in docx module.
closed time in 2 months
ASCMaxissue commentopen-xml-templating/docxtemplater
How to group and aggregate records.
You can do nested loops like this :
{#ACCOUNT_DETAIL}
Category is : {CATEGORY}
Detail :
{#DETAIL}
TYPE: {TYPE}, Amount : {AMOUNT}
{/}
{/}
For the aggregation, I would probably in this case add this to your data before doing the generation (with some Javascript inside your application).
But if you prefer, you also could potentially do it from within your template. To do this, use the angular parser. I have now added an example in the doc which you can find here : https://docxtemplater.readthedocs.io/en/latest/angular_parse.html#data-aggregation
comment created time in 2 months
push eventopen-xml-templating/docxtemplater
commit sha 293f1e45133e648ea62ed5ffa5756ba1d3ea7672
Allow to upgrade mocha (since node 6 is no more supported)
commit sha 2f45a2a0f29a901094b8d9fb77f36c3743f6c83a
Update dependencies
commit sha 971681ca8ff5bac8239638126d7957fe2f799d58
[doc] Add some more examples with angular parser
push time in 2 months
issue commentopen-xml-templating/docxtemplater
Marathi/Hindi text not rendered properly
Hello @paulKabira ,
I'm not sure I can reproduce the problem.
Here is a docx that I have generated with the data
doc.setData({ text: 'पेरणी ते उगवण' });
You can download the docx here : https://docxtemplater.com/cptmp_file_tmp_thY36z.docx
When I open the file in Word, it seems to show up correctly.

Can you tell me if my file works for you (to be sure it is not an issue with fonts), and could you send me a docx file that you create manually with those characters that show up correctly ?
comment created time in 2 months
issue commentopen-xml-templating/docxtemplater
I don't see any attachment, can you send them to the email on my github profile ? Or else, attach it to the issue (you need to be on github for that I think).
comment created time in 2 months
issue commentopen-xml-templating/docxtemplater
Migrate doc to stop using `setOptions`, `attachModule`, `loadZip`
Closed by #518
comment created time in 2 months
issue closedopen-xml-templating/docxtemplater
Migrate doc to stop using `setOptions`, `attachModule`, `loadZip`
In version 3.17.0, some methods have been deprecated : See the CHANGELOG : https://github.com/open-xml-templating/docxtemplater/blob/master/CHANGELOG.md#3170
This means that all following calls should no more appear in the doc, instead, it would be better to use the new constructor in the examples. This includes following functions :
- setOptions
- attachModule
- loadZip
Estimated time of completion : 1 day
closed time in 2 months
edi9999issue commentopen-xml-templating/docxtemplater
loop rendering bug - inner loop props are rendered with root level data
No, I don't think it is a bug, most users expect that the upper scope can be accessed.
Docxtemplater is inspired by mustache and I think in most mustache implementation, it works like this (altough I'm not sure whether it is specified explicitly). See https://github.com/janl/mustache.js/issues/399 for a discussion.
Docxtemplater is actually less strict then that, since, with the custom parser, it allows you to change the behavior.
comment created time in 2 months
issue commentopen-xml-templating/docxtemplater
loop rendering bug - inner loop props are rendered with root level data
Here is the added doc : https://docxtemplater.readthedocs.io/en/latest/configuration.html#parser-example-to-avoid-using-the-parent-scope-if-a-value-is-null-on-the-main-scope
comment created time in 2 months
issue commentopen-xml-templating/docxtemplater
loop rendering bug - inner loop props are rendered with root level data
I think your condition will also work, it is just a bit more specific.
With my condition, it will work regardless of the "nesting", eg it will never use a scope that is not the "deepest one". With your condition, it will return null only when doing the last evaluation on the rootScope, but it won't circuit-break if having 2 levels of loops.
comment created time in 2 months
issue commentopen-xml-templating/docxtemplater
loop rendering bug - inner loop props are rendered with root level data
Hello @shaharsol , I've just added it to the FAQ.
If you use the following condition it should work :
parser(tag) {
return {
get(scope, context) {
if (context.num < context.scopePath.length) {
return null;
}
// You can customize your parser here instead of scope[tag] of course
return scope[tag];
},
};
},
comment created time in 2 months
push eventopen-xml-templating/docxtemplater
commit sha 771cb6077cdc4ece3cf0773d63c990cb2dc854e8
[doc] Remove trailing whitespace
commit sha 9d573e0616f4b9dfbcd7a58f7d7dd77055d4bd10
[doc] Add example on how to disable "scope inheritance" Fix #523
push time in 2 months
issue closedopen-xml-templating/docxtemplater
loop rendering bug - inner loop props are rendered with root level data
Environment
- Version of docxtemplater : 3.17.6
- Used docxtemplater-modules : all the basic
- Runner : Node.JS
How to reproduce my problem :
My template is the following : template.zip
{#products}
{name}, {price} €
{/products}
With the following js file :
var PizZip = require('pizzip');
var Docxtemplater = require('docxtemplater');
var fs = require('fs');
var path = require('path');
// The error object contains additional information when logged with JSON.stringify (it contains a properties object containing all suberrors).
function replaceErrors(key, value) {
if (value instanceof Error) {
return Object.getOwnPropertyNames(value).reduce(function(error, key) {
error[key] = value[key];
return error;
}, {});
}
return value;
}
function errorHandler(error) {
console.log(JSON.stringify({error: error}, replaceErrors));
if (error.properties && error.properties.errors instanceof Array) {
const errorMessages = error.properties.errors.map(function (error) {
return error.properties.explanation;
}).join("\n");
console.log('errorMessages', errorMessages);
// errorMessages is a humanly readable message looking like this :
// 'The tag beginning with "foobar" is unopened'
}
throw error;
}
//Load the docx file as a binary
var content = fs
.readFileSync('/Users/shaharsol/Downloads/templ.docx', 'binary');
var zip = new PizZip(content);
var doc;
try {
doc = new Docxtemplater(zip);
} catch(error) {
// Catch compilation errors (errors caused by the compilation of the template : misplaced tags)
errorHandler(error);
}
//set the templateVariables
doc.setData({
name: 'Santa Katerina',
products: [
{
price: '$3.99'
}
]
});
try {
// render the document (replace all occurences of {first_name} by John, {last_name} by Doe, ...)
doc.render()
}
catch (error) {
// Catch rendering errors (errors relating to the rendering of the template : angularParser throws an error)
errorHandler(error);
}
var buf = doc.getZip()
.generate({type: 'nodebuffer'});
// buf is a nodejs buffer, you can either write it to a file or do anything else with it.
fs.writeFileSync('/Users/shaharsol/Downloads/ret2.docx', buf);
This is the result: ret.zip

The problem is that the name property, which is set in the root data element, is rendered as if it was part of products. I would expect it not to render there, and let the nullGetter handle that value since it supposed to be null.
closed time in 2 months
shaharsolpush eventopen-xml-templating/docxtemplater
commit sha a85cfaca29dc08e82aec073db472f1388aaca759
Remove node 6 from .travis.yml
commit sha c67ee65936aeb112bd06f22bb22798502e7c673c
Update dependencies
push time in 2 months
push eventpeerigon/angular-expressions
commit sha 28a05a7f092fb3291c06d138155c0262509f1dc8
Bump websocket-extensions from 0.1.3 to 0.1.4 Bumps [websocket-extensions](https://github.com/faye/websocket-extensions-node) from 0.1.3 to 0.1.4. - [Release notes](https://github.com/faye/websocket-extensions-node/releases) - [Changelog](https://github.com/faye/websocket-extensions-node/blob/master/CHANGELOG.md) - [Commits](https://github.com/faye/websocket-extensions-node/compare/0.1.3...0.1.4) Signed-off-by: dependabot[bot] <[email protected]>
commit sha b2269a0a63e46f21058492edc4205d8ae3764dde
Merge pull request #14 from peerigon/dependabot/npm_and_yarn/websocket-extensions-0.1.4 Bump websocket-extensions from 0.1.3 to 0.1.4
push time in 2 months
PR merged peerigon/angular-expressions
Bumps websocket-extensions from 0.1.3 to 0.1.4. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/faye/websocket-extensions-node/blob/master/CHANGELOG.md">websocket-extensions's changelog</a>.</em></p> <blockquote> <h3>0.1.4 / 2020-06-02</h3> <ul> <li>Remove a ReDoS vulnerability in the header parser (CVE-2020-7662, reported by Robert McLaughlin)</li> <li>Change license from MIT to Apache 2.0</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/faye/websocket-extensions-node/commit/8efd0cd6e35faf9bb9cb08759be1e27082177d43"><code>8efd0cd</code></a> Bump version to 0.1.4</li> <li><a href="https://github.com/faye/websocket-extensions-node/commit/3dad4ad44a8c5f74d4f8f4efd3f9d6e0b5df3051"><code>3dad4ad</code></a> Remove ReDoS vulnerability in the Sec-WebSocket-Extensions header parser</li> <li><a href="https://github.com/faye/websocket-extensions-node/commit/4a76c75efb1c5d6a2f60550e9501757458d19533"><code>4a76c75</code></a> Add Node versions 13 and 14 on Travis</li> <li><a href="https://github.com/faye/websocket-extensions-node/commit/44a677a9c0631daed0b0f4a4b68c095b624183b8"><code>44a677a</code></a> Formatting change: {...} should have spaces inside the braces</li> <li><a href="https://github.com/faye/websocket-extensions-node/commit/f6c50aba0c20ff45b0f87cea33babec1217ec3f5"><code>f6c50ab</code></a> Let npm reformat package.json</li> <li><a href="https://github.com/faye/websocket-extensions-node/commit/2d211f3705d52d9efb4f01daf5a253adf828592e"><code>2d211f3</code></a> Change markdown formatting of docs.</li> <li><a href="https://github.com/faye/websocket-extensions-node/commit/0b620834cc1e1f2eace1d55ab17f71d90d88271d"><code>0b62083</code></a> Update Travis target versions.</li> <li><a href="https://github.com/faye/websocket-extensions-node/commit/729a4653073fa8dd020561113513bfa2e2119415"><code>729a465</code></a> Switch license to Apache 2.0.</li> <li>See full diff in <a href="https://github.com/faye/websocket-extensions-node/compare/0.1.3...0.1.4">compare view</a></li> </ul> </details> <br />
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
<details> <summary>Dependabot commands and options</summary> <br />
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot mergewill merge this PR after your CI passes on it@dependabot squash and mergewill squash and merge this PR after your CI passes on it@dependabot cancel mergewill cancel a previously requested merge and block automerging@dependabot reopenwill reopen this PR if it is closed@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)@dependabot use these labelswill set the current labels as the default for future PRs for this repo and language@dependabot use these reviewerswill set the current reviewers as the default for future PRs for this repo and language@dependabot use these assigneeswill set the current assignees as the default for future PRs for this repo and language@dependabot use this milestonewill set the current milestone as the default for future PRs for this repo and language
You can disable automated security fix PRs for this repo from the Security Alerts page.
</details>
pr closed time in 2 months
push eventopen-xml-templating/docxtemplater
commit sha 74e402b609c33a6ac3cab701c26340f52d71960d
Add doc about Encrypting files
push time in 2 months
issue commentopen-xml-templating/docxtemplater
Interesting, could you send me the input and output file so that I can investigate ?
I thought there were no more corruptions in those cases, by having the template/output I could probably fix it.
comment created time in 2 months
starteddankamongmen/notcurses
started time in 2 months
issue commentneovim/neovim
Assertion failed: saved_copyID != copyID && saved_copyID != copyID - 1
Same issue for me, my plugin list if it might be helpful to find an intersection :
Plug 'AndrewRadev/switch.vim'
Plug 'machakann/vim-highlightedyank'
Plug 'nicklasos/vim-jsx-riot'
Plug 'groenewege/vim-less'
Plug 'godoctor/godoctor.vim'
Plug 'gabesoft/vim-ags'
Plug 'lambdalisue/vim-manpager'
Plug 'chrisbra/CheckAttach'
Plug 'kana/vim-textobj-user'
Plug 'kana/vim-textobj-function'
Plug 'thinca/vim-textobj-function-javascript'
Plug 'tpope/vim-apathy'
Plug 'beloglazov/vim-online-thesaurus'
Plug 'junegunn/fzf.vim'
Plug 'rking/ag.vim', {'on': 'Ag'}
Plug 'junegunn/vim-after-object'
Plug 'tpope/vim-endwise'
Plug 'vim-scripts/ReplaceWithRegister'
Plug 'lucapette/vim-textobj-underscore'
Plug 'mattn/vim-textobj-url'
Plug 'junegunn/vim-peekaboo'
Plug 'StanAngeloff/php.vim'
Plug 'tpope/vim-unimpaired'
Plug 'vim-scripts/Align', {'on': 'Align'}
Plug 'tommcdo/vim-exchange'
Plug 'tpope/vim-fugitive'
Plug 'airblade/vim-gitgutter'
Plug 'mbbill/undotree', {'on': 'UndotreeToggle'}
Plug 'tpope/vim-commentary'
Plug 'tpope/vim-surround'
Plug 'airblade/vim-rooter'
Plug 'tpope/vim-dispatch'
Plug 'tpope/vim-repeat'
Plug 'honza/vim-snippets'
Plug 'tpope/vim-abolish'
Plug 'wellle/targets.vim'
Plug 'bogado/file-line'
Plug 'tpope/vim-vinegar'
Plug 'tpope/vim-speeddating'
Plug 'othree/html5.vim'
Plug 'moll/vim-node'
Plug 'elzr/vim-json'
Plug 'fatih/vim-go'
Plug 'avakhov/vim-yaml'
Plug 'wavded/vim-stylus'
Plug 'mattn/emmet-vim'
Plug 'tpope/vim-markdown'
Plug 'isRuslan/vim-es6'
Plug 'hail2u/vim-css3-syntax'
Plug '~/vimplugins/signlist'
Plug '~/vimplugins/asynccommand'
Plug '~/vimplugins/resetplugins'
Plug 'neomake/neomake'
Plug 'jwalton512/vim-blade'
Plug 'editorconfig/editorconfig-vim'
Plug 'SirVer/ultisnips'
Plug 'vim-scripts/SyntaxRange'
Plug 'vim-scripts/ingo-library'
Plug 'robertmeta/nofrils'
Plug 'rhysd/committia.vim'
comment created time in 2 months
issue commentopen-xml-templating/docxtemplater
I think it is because when using a real pizzip instance, you need to use the file contents, not the file path.
IE :
const zippedFilePath = path.join(__dirname, "/testZip.zip");
const content = fs.readFileSync(zippedFilePath).toString()
const zip = new PizZip(content);
comment created time in 2 months
issue commentopen-xml-templating/docxtemplater
Does this make things more clear ?
comment created time in 2 months
issue commentopen-xml-templating/docxtemplater
Hello @nderiley , there is no limit in the number of nesting loops.
What do you mean by "it breaks" ?
comment created time in 2 months
push eventopen-xml-templating/docxtemplater
commit sha 6d47ec1973bd76003d5a7bcf8b7f74947ad2c1d8
Update dependencies
push time in 2 months