mirror of
https://github.com/pezkuwichain/pwap.git
synced 2026-04-22 05:37:56 +00:00
fix: add browser to mainFields resolution to prevent crypto-browserify bundling
ws package has a browser field pointing to a crypto-free entry point. Without 'browser' in mainFields, Vite resolved the Node.js version which pulled in crypto-browserify -> inherits -> runtime error.
This commit is contained in:
@@ -1,11 +0,0 @@
|
|||||||
// Minimal crypto shim that delegates to the browser's native Web Crypto API
|
|
||||||
// Prevents crypto-browserify (and its inherits dependency) from being bundled
|
|
||||||
export default globalThis.crypto;
|
|
||||||
export const webcrypto = globalThis.crypto;
|
|
||||||
export const randomBytes = (size: number): Uint8Array => {
|
|
||||||
const bytes = new Uint8Array(size);
|
|
||||||
globalThis.crypto.getRandomValues(bytes);
|
|
||||||
return bytes;
|
|
||||||
};
|
|
||||||
export const createHash = undefined;
|
|
||||||
export const createHmac = undefined;
|
|
||||||
+1
-3
@@ -61,7 +61,7 @@ export default defineConfig(() => ({
|
|||||||
},
|
},
|
||||||
].filter(Boolean),
|
].filter(Boolean),
|
||||||
resolve: {
|
resolve: {
|
||||||
mainFields: ['module', 'main', 'exports'],
|
mainFields: ['browser', 'module', 'main', 'exports'],
|
||||||
alias: {
|
alias: {
|
||||||
"@": path.resolve(__dirname, "./src"),
|
"@": path.resolve(__dirname, "./src"),
|
||||||
"@pezkuwi/i18n": path.resolve(__dirname, "../shared/i18n"),
|
"@pezkuwi/i18n": path.resolve(__dirname, "../shared/i18n"),
|
||||||
@@ -75,8 +75,6 @@ export default defineConfig(() => ({
|
|||||||
'vite-plugin-node-polyfills/shims/buffer': path.resolve(__dirname, './src/polyfills/buffer-shim.ts'),
|
'vite-plugin-node-polyfills/shims/buffer': path.resolve(__dirname, './src/polyfills/buffer-shim.ts'),
|
||||||
'vite-plugin-node-polyfills/shims/global': path.resolve(__dirname, './src/polyfills/global-shim.ts'),
|
'vite-plugin-node-polyfills/shims/global': path.resolve(__dirname, './src/polyfills/global-shim.ts'),
|
||||||
'vite-plugin-node-polyfills/shims/process': path.resolve(__dirname, './src/polyfills/process-shim.ts'),
|
'vite-plugin-node-polyfills/shims/process': path.resolve(__dirname, './src/polyfills/process-shim.ts'),
|
||||||
// Prevent crypto-browserify chain (inherits error) - use native Web Crypto API
|
|
||||||
'crypto-browserify': path.resolve(__dirname, './src/polyfills/crypto-shim.ts'),
|
|
||||||
},
|
},
|
||||||
dedupe: ['react', 'lucide-react', 'sonner', '@pezkuwi/util-crypto', '@pezkuwi/util', '@pezkuwi/api', '@pezkuwi/extension-dapp', '@pezkuwi/keyring'],
|
dedupe: ['react', 'lucide-react', 'sonner', '@pezkuwi/util-crypto', '@pezkuwi/util', '@pezkuwi/api', '@pezkuwi/extension-dapp', '@pezkuwi/keyring'],
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user