{"id":21267,"library":"esbuild-plugin-react-virtualized","title":"esbuild-plugin-react-virtualized","description":"ESBuild plugin that fixes the 'No matching export' error for react-virtualized by rewriting broken import statements. Version 1.0.6 is the latest stable release, with frequent updates (4 releases in 2024, 2 in 2025-2026). It is a lightweight, zero-config plugin that patches the specific export issue in react-virtualized's WindowScroller module. Unlike manual workarounds (e.g., patching node_modules), this plugin integrates cleanly into ESBuild and Vite esbuild optimization pipelines.","status":"active","version":"1.0.6","language":"javascript","source_language":"en","source_url":"https://github.com/abemedia/esbuild-plugin-react-virtualized","tags":["javascript"],"install":[{"cmd":"npm install esbuild-plugin-react-virtualized","lang":"bash","label":"npm"},{"cmd":"yarn add esbuild-plugin-react-virtualized","lang":"bash","label":"yarn"},{"cmd":"pnpm add esbuild-plugin-react-virtualized","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"peer dependency; plugin runs as an esbuild plugin","package":"esbuild","optional":false}],"imports":[{"note":"Package uses default export via ESM; CommonJS require will fail because the package is ESM-only (no CJS build).","wrong":"const fixReactVirtualized = require('esbuild-plugin-react-virtualized')","symbol":"fixReactVirtualized","correct":"import fixReactVirtualized from 'esbuild-plugin-react-virtualized'"},{"note":"Do not use named import; it is a default export. Named import will result in undefined.","wrong":"import { fixReactVirtualized } from 'esbuild-plugin-react-virtualized'","symbol":"fixReactVirtualized","correct":"import fixReactVirtualized from 'esbuild-plugin-react-virtualized'"},{"note":"This pattern works in environments that support require() with ESM, but it is not necessary if you use ESM imports.","wrong":"const { default: fixReactVirtualized } = require('esbuild-plugin-react-virtualized')","symbol":"fixReactVirtualized","correct":"import fixReactVirtualized from 'esbuild-plugin-react-virtualized'"}],"quickstart":{"code":"import * as esbuild from 'esbuild'\nimport fixReactVirtualized from 'esbuild-plugin-react-virtualized'\n\nawait esbuild.build({\n  entryPoints: ['app.js'],\n  bundle: true,\n  outfile: 'out.js',\n  plugins: [fixReactVirtualized],\n})","lang":"javascript","description":"Demonstrates basic usage of the plugin with esbuild build to fix react-virtualized import errors."},"warnings":[{"fix":"Use ESM imports or dynamic import() instead of require(). If using Jest or other CJS environments, ensure you have ESM support (e.g., --experimental-vm-modules).","message":"Package is ESM-only; does not provide a CommonJS build. Attempting to require() it will throw an error.","severity":"breaking","affected_versions":">=1.0.0"},{"fix":"If you encounter other errors from react-virtualized, consider using a different virtualized library or patching manually.","message":"The plugin only fixes the specific export error for 'bpfrpt_proptype_WindowScroller' from react-virtualized. Other react-virtualized import issues are not addressed.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Replace react-virtualized with react-window and use its planned esbuild plugin if needed.","message":"react-virtualized is in maintenance mode and not actively developed. Consider migrating to react-window for better performance and smaller bundles.","severity":"deprecated","affected_versions":">=1.0.0"}],"env_vars":null,"last_verified":"2026-04-27T00:00:00.000Z","next_check":"2026-07-26T00:00:00.000Z","problems":[{"fix":"Use esbuild-plugin-react-virtualized as shown in the quickstart.","cause":"react-virtualized exports a TypeScript type that is not properly handled by ESBuild during bundling.","error":"Error: No matching export in \"node_modules/react-virtualized/dist/es/WindowScroller/WindowScroller.js\" for import \"bpfrpt_proptype_WindowScroller\""},{"fix":"Use default import: import fixReactVirtualized from 'esbuild-plugin-react-virtualized'","cause":"Incorrect import type (default vs named).","error":"TypeError: fixReactVirtualized is not a function"},{"fix":"Switch to ESM imports (e.g., use 'import' syntax) or configure your runtime to handle ESM (e.g., with --experimental-vm-modules in Node).","cause":"Using CommonJS require() on an ESM-only package.","error":"SyntaxError: Unexpected token 'export'"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}