evanw/esbuild · error · Error
Invalid loader extension: ${ext}
Error message
Invalid loader extension: ${ext} What it means
Error "Invalid loader extension: ${ext}" thrown in evanw/esbuild.
Source
Thrown at lib/shared/common.ts:333
flags.push(`--alias:${old}=${validateStringValue(alias[old], 'alias', old)}`)
}
}
if (banner) {
for (let type in banner) {
if (type.indexOf('=') >= 0) throw new Error(`Invalid banner file type: ${type}`)
flags.push(`--banner:${type}=${validateStringValue(banner[type], 'banner', type)}`)
}
}
if (footer) {
for (let type in footer) {
if (type.indexOf('=') >= 0) throw new Error(`Invalid footer file type: ${type}`)
flags.push(`--footer:${type}=${validateStringValue(footer[type], 'footer', type)}`)
}
}
if (inject) for (let path of inject) flags.push(`--inject:${validateStringValue(path, 'inject')}`)
if (loader) {
for (let ext in loader) {
if (ext.indexOf('=') >= 0) throw new Error(`Invalid loader extension: ${ext}`)
flags.push(`--loader:${ext}=${validateStringValue(loader[ext], 'loader', ext)}`)
}
}
if (outExtension) {
for (let ext in outExtension) {
if (ext.indexOf('=') >= 0) throw new Error(`Invalid out extension: ${ext}`)
flags.push(`--out-extension:${ext}=${validateStringValue(outExtension[ext], 'out extension', ext)}`)
}
}
if (entryPoints) {
if (Array.isArray(entryPoints)) {
for (let i = 0, n = entryPoints.length; i < n; i++) {
let entryPoint = entryPoints[i]
if (typeof entryPoint === 'object' && entryPoint !== null) {
let entryPointKeys: OptionKeys = Object.create(null)
let input = getFlag(entryPoint, entryPointKeys, 'in', mustBeString)
let output = getFlag(entryPoint, entryPointKeys, 'out', mustBeString)View on GitHub (pinned to 6ff1d8b0d8)
Solutions
- Ensure loader keys are valid file extensions beginning with a dot (e.g. ".png")
- Fix or remove the malformed extension in the loader map
Example fix
esbuild.buildSync({ loader: { '.png': 'dataurl', '.svg': 'file' } }); When it happens
Trigger: Thrown at lib/shared/common.ts:333 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of evanw/esbuild@6ff1d8b0d8 (2026-08-03).
Data as JSON: /data/errors/bb54a165d0afa507.json.
Report an issue: GitHub.