Registry / devops / esbuild-plugin-jsximportsource

esbuild-plugin-jsximportsource

JSON →
library1.0.1jsnpmunverified

An esbuild plugin that enables the @jsxImportSource pragma for automatic JSX runtime support. Version 1.0.1 is current, but the package is marked as obsolete because esbuild natively added automatic JSX runtime support in v0.14.51. This plugin provides a workaround for older esbuild versions that do not support the pragma. It ships TypeScript types and has a peer dependency on esbuild ^0.14.38. The v1 release is ESM-only, breaking CJS usage. Key differentiator: it transforms @jsxImportSource into explicit imports for the JSX factory, allowing libraries like Emotion to work with esbuild.

npm install esbuild-plugin-jsximportsource
INSTALL
IMPORT
SIG · ESBUILD-PLUGIN-JSX
E
esbuild-plugin-jsximportsource
devopsjavascriptv1.0.1
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

jsxImportSourcePlugin
import { jsxImportSourcePlugin } from 'esbuild-plugin-jsximportsource'
const { jsxImportSourcePlugin } = require('esbuild-plugin-jsximportsource')
v1 is ESM-only; use dynamic import() in CJS or pin v0.x
import { jsxImportSourcePlugin } from 'esbuild-plugin-jsximportsource'
import { jsxImportSourcePlugin } from 'esbuild-plugin-jsximportsource'
import jsxImportSourcePlugin from 'esbuild-plugin-jsximportsource'
The package exports a named export, not a default export.
require('esbuild-plugin-jsximportsource') (CJS)
const jsxImportSourcePlugin = (await import('esbuild-plugin-jsximportsource')).jsxImportSourcePlugin
const { jsxImportSourcePlugin } = require('esbuild-plugin-jsximportsource')
v1 is ESM-only: requires dynamic import from CJS; v0.x supports require.

Demonstrates using the plugin with esbuild to bundle a TSX file, transforming @jsxImportSource pragma.

import { jsxImportSourcePlugin } from 'esbuild-plugin-jsximportsource'; import * as esbuild from 'esbuild'; await esbuild.build({ entryPoints: ['src/index.tsx'], bundle: true, outfile: 'dist/bundle.js', plugins: [jsxImportSourcePlugin()], });
Debug
Known issues
deprecatedPackage is obsolete; esbuild >=0.14.51 supports automatic JSX runtime natively.
fix
Upgrade esbuild to >=0.14.51 and remove this plugin.
affects: >=1.0.0
breakingv1 is ESM-only; CommonJS require() will fail.
fix
Use dynamic import() in CJS or downgrade to v0.x (e.g., 0.0.4).
affects: >=1.0.0 <2.0.0
gotchaPlugin only transforms .jsx and .tsx files by default; other extensions need custom filter.
fix
Pass filter option: jsxImportSourcePlugin({ filter: /\.(js|ts|jsx|tsx)$/ })
affects: >=0.0.1
Errors
Common errors & fixes
Error [ERR_REQUIRE_ESM]: require() of ES Module not supported
Using require() on v1 which is ESM-only.
fix
Use dynamic import: const { jsxImportSourcePlugin } = await import('esbuild-plugin-jsximportsource');
TypeError: jsxImportSourcePlugin is not a function
Default import used instead of named import.
fix
Use named import: import { jsxImportSourcePlugin } from 'esbuild-plugin-jsximportsource';
Cannot find module 'esbuild-plugin-jsximportsource'
Package not installed or version mismatch.
fix
Run npm install esbuild-plugin-jsximportsource and ensure peer dependency esbuild ^0.14.38 is satisfied.
Upgrade
Version history
1.0.1latest on npm
Audit
Dependencies
esbuildrequiredPeer dependency: plugin interfaces with esbuild's build API
Agent activity
2 hits · last 30 days
node
2
Resources
esbuild-plugin-jsximportsource — npm install esbuild-plugin-jsximportsource · libregistry