evanw/esbuild · error · Error
Invalid supported: ${key}
Error message
Invalid supported: ${key} What it means
Error "Invalid supported: ${key}" thrown in evanw/esbuild.
Source
Thrown at lib/shared/common.ts:225
if (jsxImportSource) flags.push(`--jsx-import-source=${jsxImportSource}`)
if (jsxDev) flags.push(`--jsx-dev`)
if (jsxSideEffects) flags.push(`--jsx-side-effects`)
if (define) {
for (let key in define) {
if (key.indexOf('=') >= 0) throw new Error(`Invalid define: ${key}`)
flags.push(`--define:${key}=${validateStringValue(define[key], 'define', key)}`)
}
}
if (logOverride) {
for (let key in logOverride) {
if (key.indexOf('=') >= 0) throw new Error(`Invalid log override: ${key}`)
flags.push(`--log-override:${key}=${validateStringValue(logOverride[key], 'log override', key)}`)
}
}
if (supported) {
for (let key in supported) {
if (key.indexOf('=') >= 0) throw new Error(`Invalid supported: ${key}`)
const value = supported[key]
if (typeof value !== 'boolean') throw new Error(`Expected value for supported ${quote(key)} to be a boolean, got ${typeof value} instead`)
flags.push(`--supported:${key}=${value}`)
}
}
if (pure) for (let fn of pure) flags.push(`--pure:${validateStringValue(fn, 'pure')}`)
if (keepNames) flags.push(`--keep-names`)
}
function flagsForBuildOptions(
callName: string,
options: types.BuildOptions,
isTTY: boolean,
logLevelDefault: types.LogLevel,
writeDefault: boolean,
): {
entries: [string, string][],
flags: string[],View on GitHub (pinned to 6ff1d8b0d8)
Solutions
- Ensure the "supported" key names a valid JS/CSS feature that esbuild recognizes
- Check the esbuild documentation for the list of feature names usable with "supported"
Example fix
esbuild.buildSync({ supported: { 'optional-chain': false } }); When it happens
Trigger: Thrown at lib/shared/common.ts:225 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/77a9819feac07823.json.
Report an issue: GitHub.