290 Commits

Author SHA1 Message Date
Yukihiro Hasegawa 7a95c8f417 Clarify exported XlsxTemplate types in the declaration file (#221) 2026-03-09 16:13:19 +01:00
Yukihiro Hasegawa 8757308c9a fix(types): narrow generate return type by output type (#220) 2026-03-07 17:26:09 +01:00
Andrii Kurdiumov ab52ae20d7 js-yaml has prototype pollution in merge v1.4.7 2026-01-17 09:33:47 +01:00
Andrii Kurdiumov 3f193c7948 Update version to 1.4.7 2026-01-17 09:31:39 +01:00
Jonathan Durand 3b6139ed23 Revert dynamic file extension detection to hardcoded 'jpg' (#218) 2026-01-16 20:14:56 +01:00
Andrii Kurdiumov 5d19a1b860 Set version to 1.4.6 v1.4.6 2026-01-15 14:06:47 +01:00
Andrii Kurdiumov 66a4ba0a9d Remove Travis configuration We don't use it. (#217) 2026-01-15 14:04:31 +01:00
Jonathan Durand cbe7d93522 feat: preserve metadata types when adding images in cells (#216) 2026-01-15 14:00:32 +01:00
Jonathan Durand 6b235a47b4 Update deleteSheet for delete also relationships of sheet (#215) 2026-01-15 13:58:49 +01:00
tabata 7848cb45c6 Fix: Handle missing drawing rels file when worksheet contains shapes only (#214)
* create a new relationships element if the rels file does not exist.

* Add test for image substitution in worksheets with shapes lacking drawing rels
2026-01-02 13:57:27 +01:00
Andrii Kurdiumov 8bcf38d8c9 Update dependencies (#213) v1.4.5 2025-10-28 14:46:29 +01:00
Andrii Kurdiumov e17d2f6f17 Include @thelunarwolf contribution (#212) 2025-10-28 14:42:54 +01:00
Navadeep Raja a6c25f16bf Added option to hide columns in sheet by passing column indexes (#199) 2025-10-28 14:38:25 +01:00
Andrii Kurdiumov 83b74248b3 Remove emoji from README (#211) 2025-10-28 14:37:15 +01:00
Jonathan Durand 1fadb2b064 Refactor README.md (#210)
* Bump version to 1.4.5 with info on binary arg for copysheet
* Update README.md
2025-10-27 16:23:12 +01:00
Jonathan Durand 7356a8d5a9 fix(copySheet): preserve UTF-8 encoding in sheet XML content (#208)
- Replace etree.tostring() with asBinary() to prevent UTF-8 corruption
- Add warning when binary=false is used
- Apply binary parameter consistently across all copied files
- Add comprehensive tests for UTF-8, merged cells, styles, and images

Fixes Excel XML error: 'Illegal XML character' when copying sheets
with UTF-8 characters in headers/footers (éàèùï, etc.)

This bug was present even before PR #207 (comment copying fix).
2025-10-24 13:41:32 +02:00
Jonathan Durand 01840603ea Fix: copySheet() now properly copies sheets with comments (#207)
- Copy comment-related files (comments.xml, threadedComment.xml, vmlDrawing.vml)
- Generate unique UUIDs for copied comments while preserving personId
- Add Content-Types declarations for new files
- Preserve UTF-8 encoding using binary mode
2025-10-23 18:23:40 +02:00
IagoSRL fa33a1b01f Fix a bug where a literal colon in a cell between (#202)
two placeholders breaks detection of both placeholders,
replacing the whole as empty (from beggining of first
placeholder to end of the next one and any literal text in between)
2025-04-24 08:20:39 +05:00
Martin Aspeli 8e2bad705d Merge pull request #191 from jdugh/update_readme
Update readme with Image in cell
2024-04-18 21:59:24 +01:00
Martin Aspeli 599f9828b9 Merge pull request #190 from jdugh/insert_image_in_cell
Insert image in cell table
2024-04-18 21:58:38 +01:00
Jonathan DURAND b5ba88b69e Update readme with Image in cell 2024-03-28 15:07:03 +01:00
Jonathan DURAND 66f502b1a2 reset yaml 2024-03-28 12:44:05 +01:00
Jonathan DURAND 9a222e571e add test github 2024-03-28 12:28:10 +01:00
Jonathan DURAND f09957d36a fix merge 2024-03-27 18:00:36 +01:00
Jonathan Durand 52c6ba8663 Adding 'imageincell' substitution keyword (#189) 2024-03-26 09:07:18 +05:00
Andrii Kurdiumov d9a3666967 Bump version to 1.4.4 v1.4.4 2024-03-09 22:02:04 +05:00
IagoSRL 40aed538cd Move hyperlinks references on added rows and columns (#184)
* Push down and right hyperlinks references
* Test push down and right hyperlinks
2024-03-09 22:57:39 +06:00
Jason Ko 128dfdabb2 Merged line table (#188)
* fix merged line table issue
* fix more complex merged table

---------
Co-authored-by: muyoungko <muyoungko@11stcorp.com>
2024-03-09 22:56:27 +06:00
Andrii Kurdiumov eb603eacd4 Bump version to 1.4.3 v1.4.3 2023-03-07 23:08:06 +06:00
Andrii Kurdiumov d47f2eeb2b Update image-size to 1.0.2 2023-03-07 23:07:30 +06:00
Andrii Kurdiumov 0e1d14a992 Convert to class and by conincidence fix bug in findMaxFileId which take only last file name (which can lead to problem if XLSX template was generated) 2023-03-07 22:15:27 +06:00
Andrii Kurdiumov 300d4eff27 Update release notes 2023-02-15 15:10:49 +06:00
Andrii Kurdiumov 1f8e41a51d Bump to 1.4.2 2023-02-15 15:02:10 +06:00
Andrii Kurdiumov 1c6a33d2cd Bump version to 1.4.1 2023-02-15 13:40:42 +06:00
Andrii Kurdiumov 26683ef7d9 Switch to fork from @kant2002 with security patch 2023-02-15 13:39:58 +06:00
dependabot[bot] ddefcff0ad Bump json5 from 2.2.0 to 2.2.3 (#175)
Bumps [json5](https://github.com/json5/json5) from 2.2.0 to 2.2.3.
- [Release notes](https://github.com/json5/json5/releases)
- [Changelog](https://github.com/json5/json5/blob/main/CHANGELOG.md)
- [Commits](https://github.com/json5/json5/compare/v2.2.0...v2.2.3)

---
updated-dependencies:
- dependency-name: json5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-09 10:40:08 +06:00
Andrii Kurdiumov 7192862734 Bump version to 1.4.0 1.4.0 2022-11-20 18:15:04 +08:00
Andrii Kurdiumov be26d57917 Record changes in the 1.4.0 2022-11-20 18:07:39 +08:00
Andrii Kurdiumov 4fcf6ec3a9 Remove red squiggle 2022-11-20 17:13:40 +08:00
Jonathan Keebler b379121e36 substituteAll: Interpolate values for all the sheets using the given substitutions (#173) 2022-10-04 22:16:19 +06:00
Emmanuel Hadoux 27f5fa8700 Fix some of the types (#169)
`int` and `float` don't exist in Typescript, both are of type `number`. This fixes it. 
Still some bits to fix: the empty non-export namespace on 18 and the export on 126 that just wrong.
2022-09-08 12:40:44 +06:00
dependabot[bot] 1ab9cb18c2 Bump jszip from 2.6.1 to 2.7.0 (#170)
Bumps [jszip](https://github.com/Stuk/jszip) from 2.6.1 to 2.7.0.
- [Release notes](https://github.com/Stuk/jszip/releases)
- [Changelog](https://github.com/Stuk/jszip/blob/main/CHANGES.md)
- [Commits](https://github.com/Stuk/jszip/commits)

---
updated-dependencies:
- dependency-name: jszip
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-08 09:56:26 +06:00
Jonathan Durand 740534d7e2 Insert images (#126)
* first version

* can insert image - first version

* fix more than 9 images, with a parseInt on the '10' string. Otherwise, '9' if greater than '10'

* update Buffer() to Buffer.from()

* existing test if now ok, go to make test for insert image

* add first test

* add test for 100 insert images

* update readme.md, but need to be reread :)

* update index.d.ts

* convert tabulation to space

* remove fr - 0.0.1-security from package.json

* remove comment line

* remove condition not nescessary

* add percent ratio for single image

* Update Readme and add imageRatio option

* readd package-lock.json

* readd package-lock.json

* catch error if image does not exists

* change some comment console.log to console.error

* fix formatting

* test if imageToBuffer return a true image buffer, otherwise, throw an error - add handleImageError function : this function handle the image error and throw it by default; developers can override this function

* Move handleImageError function to an option

* remove useless ligne space in this commit
2022-05-30 10:30:57 +06:00
Jonathan Durand c514b3b0d4 add customXml in the order list for rebuild (#154)
* add customXml in the order list for rebuild to prevent error on remove sheet

* Remove the useless customXML type in order list ; in the sort function of rebuild, if the type of Relationship is not in the `order` list, go to the end ; adding test code
2022-05-30 00:22:33 +06:00
Andrii Kurdiumov a4b42e4985 Move source code to src folder (#160)
That's allow compile code using TSC before publish
And all future code can use TypeScript
2022-05-10 18:16:13 +06:00
Andrii Kurdiumov 3a5ad82617 Switch tests to TypeScript (#158)
* Switch tests to TypeScript
* Set default branch for build
2022-05-10 18:01:46 +06:00
Andrii Kurdiumov e993f63cdd Add Github Action for PR validation and CI test (#159)
* Add Github Action for PR validation and CI test
* Specify Node version for tests
2022-05-10 17:56:29 +06:00
Rafael Gomes b2998452ea Fix type definitions for Generate (#156)
Type definitions on typescript for output data
2022-04-21 13:03:24 +06:00
dependabot[bot] 9330d7cd10 Bump minimist from 1.2.5 to 1.2.6 (#155)
Bumps [minimist](https://github.com/substack/minimist) from 1.2.5 to 1.2.6.
- [Release notes](https://github.com/substack/minimist/releases)
- [Commits](https://github.com/substack/minimist/compare/1.2.5...1.2.6)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-28 09:32:26 +06:00
Jonathan Durand 451eb20a68 Formating (#124)
Adding 2 options affect table substitution :
subsituteAllTableRow : if true, all the cells in the row substitution will be copied in the new row
pushDownPageBreakOnTableSubstitution : if true, pushdown the pageBreak (not the rowBreaks : TODO with option)
2022-02-15 12:00:13 +06:00