devextreme-exceljs-fork 4.4.7 → 4.4.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/README.md +1 -1
  2. package/README_zh.md +1 -1
  3. package/dist/dx-exceljs-fork.bare.js +15848 -20465
  4. package/dist/dx-exceljs-fork.bare.js.map +317 -361
  5. package/dist/dx-exceljs-fork.bare.min.js +9 -9
  6. package/dist/dx-exceljs-fork.bare.min.js.map +1 -1
  7. package/dist/dx-exceljs-fork.js +16431 -21034
  8. package/dist/dx-exceljs-fork.js.map +489 -533
  9. package/dist/dx-exceljs-fork.min.js +9 -9
  10. package/dist/dx-exceljs-fork.min.js.map +1 -1
  11. package/dist/es5/csv/csv.js +1 -1
  12. package/dist/es5/csv/csv.js.map +1 -1
  13. package/dist/es5/doc/cell.js +5 -5
  14. package/dist/es5/doc/cell.js.map +1 -1
  15. package/dist/es5/doc/pivot-table.js +1 -1
  16. package/dist/es5/doc/pivot-table.js.map +1 -1
  17. package/dist/es5/doc/range.js +7 -7
  18. package/dist/es5/doc/range.js.map +1 -1
  19. package/dist/es5/doc/row.js +1 -1
  20. package/dist/es5/doc/row.js.map +1 -1
  21. package/dist/es5/doc/table.js +10 -10
  22. package/dist/es5/doc/table.js.map +1 -1
  23. package/dist/es5/doc/worksheet.js +7 -6
  24. package/dist/es5/doc/worksheet.js.map +1 -1
  25. package/dist/es5/dx-exceljs-fork.browser.js +1 -1
  26. package/dist/es5/dx-exceljs-fork.browser.js.map +1 -1
  27. package/dist/es5/stream/xlsx/hyperlink-reader.js +26 -49
  28. package/dist/es5/stream/xlsx/hyperlink-reader.js.map +1 -1
  29. package/dist/es5/stream/xlsx/sheet-comments-writer.js +6 -6
  30. package/dist/es5/stream/xlsx/sheet-comments-writer.js.map +1 -1
  31. package/dist/es5/stream/xlsx/sheet-rels-writer.js +6 -5
  32. package/dist/es5/stream/xlsx/sheet-rels-writer.js.map +1 -1
  33. package/dist/es5/stream/xlsx/workbook-reader.js +215 -320
  34. package/dist/es5/stream/xlsx/workbook-reader.js.map +1 -1
  35. package/dist/es5/stream/xlsx/workbook-writer.js +8 -8
  36. package/dist/es5/stream/xlsx/workbook-writer.js.map +1 -1
  37. package/dist/es5/stream/xlsx/worksheet-reader.js +265 -341
  38. package/dist/es5/stream/xlsx/worksheet-reader.js.map +1 -1
  39. package/dist/es5/stream/xlsx/worksheet-writer.js +9 -13
  40. package/dist/es5/stream/xlsx/worksheet-writer.js.map +1 -1
  41. package/dist/es5/utils/browser-buffer-decode.js +1 -1
  42. package/dist/es5/utils/browser-buffer-decode.js.map +1 -1
  43. package/dist/es5/utils/browser-buffer-encode.js +1 -1
  44. package/dist/es5/utils/browser-buffer-encode.js.map +1 -1
  45. package/dist/es5/utils/col-cache.js +14 -18
  46. package/dist/es5/utils/col-cache.js.map +1 -1
  47. package/dist/es5/utils/copy-style.js +12 -10
  48. package/dist/es5/utils/copy-style.js.map +1 -1
  49. package/dist/es5/utils/encryptor.js +1 -1
  50. package/dist/es5/utils/encryptor.js.map +1 -1
  51. package/dist/es5/utils/iterate-stream.js +26 -37
  52. package/dist/es5/utils/iterate-stream.js.map +1 -1
  53. package/dist/es5/utils/parse-sax.js +34 -67
  54. package/dist/es5/utils/parse-sax.js.map +1 -1
  55. package/dist/es5/utils/utils.js +1 -1
  56. package/dist/es5/utils/utils.js.map +1 -1
  57. package/dist/es5/utils/xml-stream.js +1 -1
  58. package/dist/es5/utils/xml-stream.js.map +1 -1
  59. package/dist/es5/xlsx/xform/base-xform.js +12 -35
  60. package/dist/es5/xlsx/xform/base-xform.js.map +1 -1
  61. package/dist/es5/xlsx/xform/book/defined-name-xform.js +2 -2
  62. package/dist/es5/xlsx/xform/book/defined-name-xform.js.map +1 -1
  63. package/dist/es5/xlsx/xform/book/workbook-xform.js +5 -5
  64. package/dist/es5/xlsx/xform/book/workbook-xform.js.map +1 -1
  65. package/dist/es5/xlsx/xform/comment/comment-xform.js +4 -8
  66. package/dist/es5/xlsx/xform/comment/comment-xform.js.map +1 -1
  67. package/dist/es5/xlsx/xform/comment/vml-shape-xform.js +1 -1
  68. package/dist/es5/xlsx/xform/comment/vml-shape-xform.js.map +1 -1
  69. package/dist/es5/xlsx/xform/comment/vml-textbox-xform.js +1 -1
  70. package/dist/es5/xlsx/xform/comment/vml-textbox-xform.js.map +1 -1
  71. package/dist/es5/xlsx/xform/core/content-types-xform.js +5 -5
  72. package/dist/es5/xlsx/xform/core/content-types-xform.js.map +1 -1
  73. package/dist/es5/xlsx/xform/core/core-xform.js +2 -2
  74. package/dist/es5/xlsx/xform/core/core-xform.js.map +1 -1
  75. package/dist/es5/xlsx/xform/core/relationships-xform.js +2 -2
  76. package/dist/es5/xlsx/xform/core/relationships-xform.js.map +1 -1
  77. package/dist/es5/xlsx/xform/drawing/c-nv-pr-xform.js +1 -1
  78. package/dist/es5/xlsx/xform/drawing/c-nv-pr-xform.js.map +1 -1
  79. package/dist/es5/xlsx/xform/list-xform.js +1 -1
  80. package/dist/es5/xlsx/xform/list-xform.js.map +1 -1
  81. package/dist/es5/xlsx/xform/pivot-table/cache-field.js +8 -2
  82. package/dist/es5/xlsx/xform/pivot-table/cache-field.js.map +1 -1
  83. package/dist/es5/xlsx/xform/pivot-table/pivot-cache-definition-xform.js +3 -7
  84. package/dist/es5/xlsx/xform/pivot-table/pivot-cache-definition-xform.js.map +1 -1
  85. package/dist/es5/xlsx/xform/pivot-table/pivot-cache-records-xform.js +7 -11
  86. package/dist/es5/xlsx/xform/pivot-table/pivot-cache-records-xform.js.map +1 -1
  87. package/dist/es5/xlsx/xform/pivot-table/pivot-table-xform.js +70 -10
  88. package/dist/es5/xlsx/xform/pivot-table/pivot-table-xform.js.map +1 -1
  89. package/dist/es5/xlsx/xform/sheet/auto-filter-xform.js +1 -1
  90. package/dist/es5/xlsx/xform/sheet/auto-filter-xform.js.map +1 -1
  91. package/dist/es5/xlsx/xform/sheet/cell-xform.js +4 -8
  92. package/dist/es5/xlsx/xform/sheet/cell-xform.js.map +1 -1
  93. package/dist/es5/xlsx/xform/sheet/cf/cf-rule-xform.js +18 -22
  94. package/dist/es5/xlsx/xform/sheet/cf/cf-rule-xform.js.map +1 -1
  95. package/dist/es5/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js +10 -5
  96. package/dist/es5/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js.map +1 -1
  97. package/dist/es5/xlsx/xform/sheet/data-validations-xform.js +11 -13
  98. package/dist/es5/xlsx/xform/sheet/data-validations-xform.js.map +1 -1
  99. package/dist/es5/xlsx/xform/sheet/merges.js +1 -1
  100. package/dist/es5/xlsx/xform/sheet/merges.js.map +1 -1
  101. package/dist/es5/xlsx/xform/sheet/row-xform.js +2 -2
  102. package/dist/es5/xlsx/xform/sheet/row-xform.js.map +1 -1
  103. package/dist/es5/xlsx/xform/sheet/worksheet-xform.js +10 -10
  104. package/dist/es5/xlsx/xform/sheet/worksheet-xform.js.map +1 -1
  105. package/dist/es5/xlsx/xform/strings/shared-strings-xform.js +2 -2
  106. package/dist/es5/xlsx/xform/strings/shared-strings-xform.js.map +1 -1
  107. package/dist/es5/xlsx/xform/style/border-xform.js +3 -7
  108. package/dist/es5/xlsx/xform/style/border-xform.js.map +1 -1
  109. package/dist/es5/xlsx/xform/table/auto-filter-xform.js +2 -2
  110. package/dist/es5/xlsx/xform/table/auto-filter-xform.js.map +1 -1
  111. package/dist/es5/xlsx/xform/table/filter-column-xform.js +1 -1
  112. package/dist/es5/xlsx/xform/table/filter-column-xform.js.map +1 -1
  113. package/dist/es5/xlsx/xform/table/table-xform.js +3 -7
  114. package/dist/es5/xlsx/xform/table/table-xform.js.map +1 -1
  115. package/dist/es5/xlsx/xlsx.js +22 -45
  116. package/dist/es5/xlsx/xlsx.js.map +1 -1
  117. package/lib/dx-exceljs-fork.browser.js +1 -1
  118. package/lib/utils/browser-buffer-decode.js +1 -1
  119. package/lib/utils/browser-buffer-encode.js +1 -1
  120. package/lib/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js +12 -3
  121. package/package.json +35 -35
@@ -1,10 +1,19 @@
1
- const {v4: uuidv4} = require('uuid');
1
+ const crypto = require('crypto');
2
2
  const BaseXform = require('../../base-xform');
3
3
  const CompositeXform = require('../../composite-xform');
4
4
 
5
5
  const DatabarExtXform = require('./databar-ext-xform');
6
6
  const IconSetExtXform = require('./icon-set-ext-xform');
7
7
 
8
+ const randomUUID = () => {
9
+ // support browser
10
+ if (globalThis.crypto && typeof globalThis.crypto.randomUUID === 'function') {
11
+ return globalThis.crypto.randomUUID();
12
+ }
13
+
14
+ return crypto.randomUUID();
15
+ };
16
+
8
17
  const extIcons = {
9
18
  '3Triangles': true,
10
19
  '3Stars': true,
@@ -40,7 +49,7 @@ class CfRuleExtXform extends CompositeXform {
40
49
 
41
50
  prepare(model) {
42
51
  if (CfRuleExtXform.isExt(model)) {
43
- model.x14Id = `{${uuidv4()}}`.toUpperCase();
52
+ model.x14Id = `{${randomUUID()}}`.toUpperCase();
44
53
  }
45
54
  }
46
55
 
@@ -74,7 +83,7 @@ class CfRuleExtXform extends CompositeXform {
74
83
  xmlStream.openNode(this.tag, {
75
84
  type: 'iconSet',
76
85
  priority: model.priority,
77
- id: model.x14Id || `{${uuidv4()}}`,
86
+ id: model.x14Id || `{${randomUUID()}}`,
78
87
  });
79
88
 
80
89
  this.iconSetXform.render(xmlStream, model);
package/package.json CHANGED
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "name": "devextreme-exceljs-fork",
3
- "version": "4.4.7",
3
+ "version": "4.4.9",
4
+ "packageManager": "pnpm@9.15.9",
4
5
  "description": "Fork of Excel Workbook Manager - Read and Write xlsx and csv Files.",
5
6
  "private": false,
6
7
  "license": "MIT",
@@ -10,7 +11,7 @@
10
11
  "url": "https://github.com/DevExpress/devextreme-exceljs-fork.git"
11
12
  },
12
13
  "engines": {
13
- "node": ">=18.20.8"
14
+ "node": ">=18"
14
15
  },
15
16
  "main": "./dx-excel-fork.js",
16
17
  "browser": "./dist/dx-exceljs-fork.min.js",
@@ -26,26 +27,24 @@
26
27
  "index.d.ts"
27
28
  ],
28
29
  "scripts": {
29
- "test": "npm run test:full",
30
- "test:es5": "export EXCEL_BUILD=es5 && npm run test:full",
31
- "test:full": "npm run build && npm run test:unit && npm run test:integration && npm run test:end-to-end && npm run test:jasmine",
32
- "test:no-jasmine": "npm run build && npm run test:unit && npm run test:integration && npm run test:end-to-end",
33
- "test:version": "npm run build && npm run test:unit && npm run test:integration && npm run test:end-to-end && npm run test:browser && npm run test:dist",
34
- "test:all": "npm run test:native && npm run test:es5",
35
- "test:native": "npm run test:full",
30
+ "test": "pnpm run test:full",
31
+ "test:es5": "export EXCEL_BUILD=es5 && pnpm run test:full",
32
+ "test:full": "pnpm run build && pnpm run test:unit && pnpm run test:integration && pnpm run test:end-to-end && pnpm run test:browser",
33
+ "test:version": "pnpm run build && pnpm run test:unit && pnpm run test:integration && pnpm run test:end-to-end && pnpm run test:browser && pnpm run test:dist",
34
+ "test:all": "pnpm run test:native && pnpm run test:es5",
35
+ "test:native": "pnpm run test:full",
36
36
  "test:unit": "mocha --require spec/config/setup --require spec/config/setup-unit spec/unit --recursive",
37
37
  "test:integration": "mocha --require spec/config/setup spec/integration --recursive",
38
38
  "test:end-to-end": "mocha --require spec/config/setup spec/end-to-end --recursive",
39
- "test:browser": "if [ ! -f .disable-test-browser ]; then npm run build && npm run test:jasmine; fi",
40
- "test:jasmine": "grunt jasmine",
41
- "test:unit:es5": "export EXCEL_BUILD=es5 && npm run test:unit",
42
- "test:integration:es5": "export EXCEL_BUILD=es5 && npm run test:integration",
43
- "test:end-to-end:es5": "export EXCEL_BUILD=es5 && npm run test:end-to-end",
39
+ "test:browser": "pnpm exec playwright test",
40
+ "test:unit:es5": "export EXCEL_BUILD=es5 && pnpm run test:unit",
41
+ "test:integration:es5": "export EXCEL_BUILD=es5 && pnpm run test:integration",
42
+ "test:end-to-end:es5": "export EXCEL_BUILD=es5 && pnpm run test:end-to-end",
44
43
  "test:dist": "mocha --require spec/config/setup spec/dist --recursive",
45
44
  "test:manual": "node spec/manual/app.js",
46
45
  "test:typescript": "mocha -r ts-node/register spec/typescript/**/*.spec.ts",
47
46
  "type-check": "tsc index.d.ts",
48
- "clean-build": "npm run clean && npm run build",
47
+ "clean-build": "pnpm run clean && pnpm run build",
49
48
  "lint": "eslint --format node_modules/eslint-friendly-formatter .",
50
49
  "lint:fix": "prettier-eslint --write $(pwd)'/**/*.js'",
51
50
  "lint:staged": "lint-staged",
@@ -53,8 +52,8 @@
53
52
  "benchmark": "node --expose-gc benchmark",
54
53
  "benchmark:debug": "node --expose-gc --inspect-brk --trace-deopt benchmark",
55
54
  "build": "grunt build",
56
- "install-build": "npm ci && grunt build",
57
- "preversion": "npm run clean && npm run build && npm run test:version",
55
+ "prepare-and-install": "pnpm install --frozen-lockfile && grunt build",
56
+ "preversion": "pnpm run clean && pnpm run build && pnpm run test:version",
58
57
  "postversion": "git push --no-verify && git push --tags --no-verify"
59
58
  },
60
59
  "husky": {
@@ -102,13 +101,13 @@
102
101
  "readable-stream": "^3.6.0",
103
102
  "saxes": "^5.0.1",
104
103
  "tmp": "^0.2.0",
105
- "unzipper": "^0.12.3",
106
- "uuid": "^8.3.0"
104
+ "unzipper": "^0.12.3"
107
105
  },
108
106
  "devDependencies": {
109
107
  "@babel/cli": "^7.10.5",
110
108
  "@babel/core": "^7.11.4",
111
- "@babel/preset-env": "^7.11.0",
109
+ "@babel/preset-env": "^7.29.2",
110
+ "@playwright/test": "^1.58.2",
112
111
  "@types/chai": "^4.2.12",
113
112
  "@types/mocha": "^8.0.3",
114
113
  "@types/node": "^18.19.0",
@@ -124,14 +123,13 @@
124
123
  "eslint-config-prettier": "^10.1.8",
125
124
  "eslint-friendly-formatter": "^4.0.1",
126
125
  "eslint-plugin-import": "^2.32.0",
127
- "eslint-plugin-node": "^11.1.0",
126
+ "eslint-plugin-n": "^14.0.0",
128
127
  "express": "^4.16.4",
129
128
  "got": "^11.8.3",
130
129
  "grunt": "^1.3.0",
131
130
  "grunt-babel": "^8.0.0",
132
131
  "grunt-browserify": "^6.0.0",
133
132
  "grunt-contrib-copy": "^1.0.0",
134
- "grunt-contrib-jasmine": "^4.0.0",
135
133
  "grunt-contrib-watch": "^1.1.0",
136
134
  "grunt-exorcise": "^2.1.1",
137
135
  "grunt-terser": "^2.0.0",
@@ -145,18 +143,20 @@
145
143
  "ts-node": "^8.10.2",
146
144
  "typescript": "^5.9.3"
147
145
  },
148
- "overrides": {
149
- "asn1.js": "^5.4.1",
150
- "glob": "^13.0.6",
151
- "qs": "~6.14.1",
152
- "grunt-exorcise": {
153
- "exorcist": "^2.0.0"
154
- },
155
- "grunt-contrib-jasmine": {
156
- "puppeteer": "^24.12.0"
157
- },
158
- "tar": "^7.5.10",
159
- "minimatch": "^10.2.4",
160
- "serialize-javascript": "^7.0.4"
146
+ "pnpm": {
147
+ "overrides": {
148
+ "asn1.js": "^5.4.1",
149
+ "glob": "^13.0.6",
150
+ "qs": "~6.14.1",
151
+ "grunt-exorcise>exorcist": "^2.0.0",
152
+ "tar": "^7.5.11",
153
+ "minimatch": "^10.2.4",
154
+ "eslint-plugin-import>minimatch": "^3.1.4",
155
+ "serialize-javascript": "^7.0.5",
156
+ "flatted": "^3.4.2",
157
+ "path-to-regexp": "^0.1.13",
158
+ "picomatch": "^2.3.2",
159
+ "lodash": "~4.18.1"
160
+ }
161
161
  }
162
162
  }