Skip to content

Commit b99ecb4

Browse files
authored
Merge pull request #936 from IgniteUI/gedinakova/fix-jszip-error
fix(Excel): Shimming the jszip export to resolve constructor error.
2 parents c934cf3 + ad1dd97 commit b99ecb4

File tree

3 files changed

+56
-30
lines changed

3 files changed

+56
-30
lines changed

browser/package-lock.json

Lines changed: 41 additions & 26 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

browser/src/jszip-shim.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import JSZip from 'jszip';
2+
3+
// This forces the export object to have a 'default' property
4+
// that points to the constructor, satisfying the problematic code.
5+
export default JSZip;
6+
export { JSZip };

browser/vite.config.js

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
import { defineConfig } from 'vite';
22
import react from '@vitejs/plugin-react';
33
import tsconfigPaths from 'vite-tsconfig-paths';
4-
import { resolve } from 'path';
4+
import path, { resolve } from 'path';
5+
6+
const jszipShimPath = path.resolve(__dirname, 'src/jszip-shim.js');
57

68
export default defineConfig(({ mode }) => ({
79
plugins: [
@@ -14,14 +16,17 @@ export default defineConfig(({ mode }) => ({
1416
'igniteui-react-grids/grids': resolve(__dirname, 'node_modules/igniteui-react-grids/grids'),
1517
'igniteui-react-grids/grids/themes/light/': resolve(__dirname, 'node_modules/igniteui-react-grids/grids/themes/light/'),
1618
'@infragistics/igniteui-react-grids/grids': resolve(__dirname, 'node_modules/@infragistics/igniteui-react-grids/grids'),
17-
'@infragistics/igniteui-react-grids/grids/themes/light/': resolve(__dirname, 'node_modules/@infragistics/igniteui-react-grids/grids/themes/light/')
19+
'@infragistics/igniteui-react-grids/grids/themes/light/': resolve(__dirname, 'node_modules/@infragistics/igniteui-react-grids/grids/themes/light/'),
20+
find: /^jszip(\/dist\/jszip)?$/,
21+
replacement: jszipShimPath,
1822
}
1923
},
2024
optimizeDeps: {
2125
include: [
2226
'pako',
23-
'jszip'
24-
]
27+
'jszip',
28+
'jszip/dist/jszip'
29+
],
2530
},
2631
build: {
2732
outDir: 'build',

0 commit comments

Comments
 (0)