rollup-plugin-js-imports

raw JSON →
1.2.6 verified Mon Apr 27 auth: no javascript

A Rollup plugin that resolves TypeScript files when imported with a .js extension and handles extra .js extensions (e.g., importing './file.js' to resolve './file.ts'). v1.2.6 stable, maintained with infrequent releases. Key differentiator: solves the common TypeScript issue of bundlers failing to resolve .js imports that point to .ts source files, useful in monorepos or mixed TS/JS codebases. Requires Node.js >=12 and Rollup >=2.0.

error Error: Cannot find module 'rollup-plugin-js-imports'
cause Missing package or incorrect import style (CommonJS)
fix
Use ESM import: import jsImports from 'rollup-plugin-js-imports'
error TypeError: jsImports is not a function
cause Using default export incorrectly (e.g., jsImports.default())
fix
Use jsImports() without .default
gotcha Requires Rollup v2 or higher.
fix Upgrade Rollup to v2 or later.
gotcha Only resolves .js imports to .ts; does not handle .jsx or .mjs.
fix Use additional plugins (e.g., @rollup/plugin-babel) for other extensions.
gotcha Does not transform source files; only rewrites imports. Ensure TypeScript compilation is separate.
fix Use with @rollup/plugin-typescript or tsc.
npm install rollup-plugin-js-imports
yarn add rollup-plugin-js-imports
pnpm add rollup-plugin-js-imports

Basic Rollup config enabling .js import resolution for .ts files.

// rollup.config.js (ESM)
import jsImports from 'rollup-plugin-js-imports';

export default {
  input: 'src/index.ts',
  output: { file: 'dist/bundle.js', format: 'esm' },
  plugins: [jsImports()]
};