Open jozark opened 1 year ago
When I try to use nodePolyfills({ crypto: true }) as rollup option, i get following type error:
nodePolyfills({ crypto: true })
Type '{ name: string; resolveId(importee: string, importer: string): { id: any; moduleSideEffects: boolean; } | null; load(id: string): string | undefined; transform(code: string, id: string): any; }' is not assignable to type 'InputPluginOption'. Type '{ name: string; resolveId(importee: string, importer: string): { id: any; moduleSideEffects: boolean; } | null; load(id: string): string | undefined; transform(code: string, id: string): any; }' is not assignable to type 'Plugin'. Types of property 'resolveId' are incompatible. Type '(importee: string, importer: string) => { id: any; moduleSideEffects: boolean; } | null' is not assignable to type 'ObjectHook<(this: PluginContext, source: string, importer: string | undefined, options: { assertions: Record<string, string>; custom?: CustomPluginOptions | undefined; isEntry: boolean; }) => ResolveIdResult | Promise<...>, {}> | undefined'. Type '(importee: string, importer: string) => { id: any; moduleSideEffects: boolean; } | null' is not assignable to type '(this: PluginContext, source: string, importer: string | undefined, options: { assertions: Record<string, string>; custom?: CustomPluginOptions | undefined; isEntry: boolean; }) => ResolveIdResult | Promise<...>'. Types of parameters 'importer' and 'importer' are incompatible. Type 'string | undefined' is not assignable to type 'string'. Type 'undefined' is not assignable to type 'string'. 28 plugins: [nodePolyfills()], ~~~~~~~~~~~~~~~
This is my vite.config.ts:
vite.config.ts
import { defineConfig } from 'vite'; import react from '@vitejs/plugin-react'; import { NodeGlobalsPolyfillPlugin } from '@esbuild-plugins/node-globals-polyfill'; import nodePolyfills from 'rollup-plugin-node-polyfills'; // https://vitejs.dev/config/ export default defineConfig({ server: { port: 3000, }, plugins: [react()], resolve: { alias: { stream: 'rollup-plugin-node-polyfills/polyfills/stream', events: 'rollup-plugin-node-polyfills/polyfills/events', assert: 'assert', crypto: 'crypto-browserify', util: 'util', 'near-api-js': 'near-api-js/dist/near-api-js.js', }, }, define: { 'process.env': process.env ?? {}, }, build: { target: 'esnext', rollupOptions: { plugins: [nodePolyfills({ crypto: true })], }, }, optimizeDeps: { esbuildOptions: { // eslint-disable-next-line @typescript-eslint/no-explicit-any plugins: [NodeGlobalsPolyfillPlugin({ buffer: true }) as any], }, }, });
Replicated the issue here: https://stackblitz.com/edit/vitejs-vite-uqkmtp?file=vite.config.ts
Does anybody have an idea how to solve this?
When I try to use
nodePolyfills({ crypto: true })
as rollup option, i get following type error:This is my
vite.config.ts
:Replicated the issue here: https://stackblitz.com/edit/vitejs-vite-uqkmtp?file=vite.config.ts
Does anybody have an idea how to solve this?