npm package: @jsreport/jsreport-xlsx
Description: jsreport recipe rendering excels directly from open xml
Author: Jan Blaha
Latest version: 4.6.1

# @jsreport/jsreport-xlsx
[![NPM Version](http://img.shields.io/npm/v/@jsreport/jsreport-xlsx.svg?style=flat-square)](https://npmjs.com/package/@jsreport/jsreport-xlsx)

**jsreport recipe which renders excel reports based on uploaded excel templates by modifying the xlsx source using predefined templating engine helpers**

See the docs https://jsreport.net/learn/xlsx

## Changelog

### 4.6.1
- fix lazy formulas that are processed on the last part of rendering
- fix engine cache not being used because part of the handlebars template was containing a dynamic value

### 4.6.0
- minimum node.js version is now `22.18.0`
- fix more cases with lazy formulas

### 4.5.1

- `xlsxCType` helper normalize input "s" type to internal "inlineStr"

### 4.5.0

- update deps to fix audit
- fix xlsx viewer clipping content. generate empty cell (no child `<v>`) if handlebars returns empty value
- support for generating dynamic cells in a loop
- support for preserving rich text in cell
- support for setting explicit cell type

### 4.4.1

- update deps to fix audit
- dont remove xmlns from elements
- fix passing strings as values to handlebars helpers

### 4.4.0

- update deps to fix audit
- vertical loop complete support test cases with formulas

### 4.3.0

- generation step: add vertical loop support as beta
- fix generation step not working when the using loop with block parameters
- fix using folder scoped asset helpers in xlsx generation

### 4.2.0

- keep existing dimension when appropriate
- fix escaping issue in formulas
- optimization for autofit cols and cell type auto detection helpers
- performance improvement for templates with lots of cells in calcChain (using lot of formulas)

### 4.1.1

- update @jsreport/office to fix set `res.meta.fileExtension` without starting `.`

### 4.1.0

- performance optimizations
- remove the xlsxColAutofit comment also if there is no more text in the comment
- fix concat tags logic in some cases
- internal changes to support new `response.output` api
- fix xlsx with formulas stored with `'` string delimiters

### 4.0.2

- update @jsreport/office

### 4.0.1

- fix nested loops with closing tags on single line
- fix xlsxChart not working when copy/paste charts found
- fix xml/html entities encode
- make handlebars partials to work

### 4.0.0

- remove deprecated xlsxTemplates entity set
- xlsx generation improvements when working with formulas
- xlsx generation should not throw error when formula's cell ref point to different sheet
- fix for calcChain generation when using loops and formulas in more than one sheet
- minimum node.js version is now `18.15.0`
- update studio build against new webpack and babel

### 3.5.0

- add support for nested loops (row/block loops nested)
- remove VERTICAL TAB character (\u000b) and prevent bad xml to be generated
- improve performance (and prevent hang) by not using regexp for the auto detect content feature
- cells outside of loop should not access data from loop
- add support for block loop (loop that repeats cells across multiple rows)

### 3.4.0

- add support for specifying what are the main document properties of xlsxTemplates entitySet
- do not fail parsing cell found with error and no formula definition found

### 3.3.0

- xlsxAddImage support for alt text
- fix xlsx chart generation when it points to dynamic table generated by loop

### 3.2.3

- fix xlsx generation with template using shared formulas
- fix producing corrupted shared strings

### 3.2.2

- fix xlsx helpers execution during transformation step

### 3.2.1

- fix xlsx block helpers not working with asset call in helper body

### 3.2.0

- add support for generating xlsx based on handlebars tags present directly in a xlsx template file
- the old way of generating xlsx (transforming/assembling xml using templating engines and helpers) is still supported and it is now executed taking the generated xlsx as input

### 3.0.1

- fix error line numbers in xlsx recipe

### 3.0.0-beta.1

Adaptations for the v3 APIs