convertEsbuildPluginToRolldownPlugin() — vite Function Reference
Architecture documentation for the convertEsbuildPluginToRolldownPlugin() function in pluginConverter.ts from the vite codebase.
Entity Profile
Dependency Diagram
graph TD 9f6f139c_8c3d_b748_997b_26d6d6e67035["convertEsbuildPluginToRolldownPlugin()"] b8dcab0c_e45e_1664_f34c_62cebf0403f4["pluginConverter.ts"] 9f6f139c_8c3d_b748_997b_26d6d6e67035 -->|defined in| b8dcab0c_e45e_1664_f34c_62cebf0403f4 da55cbc2_af3e_f66d_6a2e_f785d784a425["applyDepOptimizationOptionCompat()"] da55cbc2_af3e_f66d_6a2e_f785d784a425 -->|calls| 9f6f139c_8c3d_b748_997b_26d6d6e67035 eb06e8c3_f076_d27b_2e82_e6b6e87be239["createResolveIdHandler()"] 9f6f139c_8c3d_b748_997b_26d6d6e67035 -->|calls| eb06e8c3_f076_d27b_2e82_e6b6e87be239 428f2e15_3be7_8055_9526_1da80db25615["createLoadHandler()"] 9f6f139c_8c3d_b748_997b_26d6d6e67035 -->|calls| 428f2e15_3be7_8055_9526_1da80db25615 1cebaeb4_7ad4_b30a_cf3d_ce32068ff869["idToPathAndNamespace()"] 9f6f139c_8c3d_b748_997b_26d6d6e67035 -->|calls| 1cebaeb4_7ad4_b30a_cf3d_ce32068ff869 style 9f6f139c_8c3d_b748_997b_26d6d6e67035 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/vite/src/node/optimizer/pluginConverter.ts lines 31–189
export function convertEsbuildPluginToRolldownPlugin(
esbuildPlugin: esbuild.Plugin,
): RolldownPlugin {
const onStartCallbacks: Array<() => void> = []
const onEndCallbacks: Array<(buildResult: esbuild.BuildResult) => void> = []
const onDisposeCallbacks: Array<() => void> = []
let resolveIdHandlers: ResolveIdHandler[]
let loadHandlers: LoadHandler[]
let isSetupDone = false
const setup = async (
plugins: RolldownPluginOption[],
platform: 'browser' | 'node' | 'neutral',
) => {
const onResolveCallbacks: Array<
[options: esbuild.OnResolveOptions, callback: EsbuildOnResolveCallback]
> = []
const onLoadCallbacks: Array<
[options: esbuild.OnLoadOptions, callback: EsbuildOnLoadCallback]
> = []
const pluginBuild: esbuild.PluginBuild = {
initialOptions: new Proxy(
{
platform,
plugins:
plugins?.flatMap((p) =>
p && 'name' in p
? [
{
name: p.name,
// eslint-disable-next-line @typescript-eslint/no-empty-function
setup() {},
},
]
: [],
) ?? [],
},
{
get(target, p, _receiver) {
if (p in target) return (target as any)[p]
throw new Error('Not implemented')
},
},
) as esbuild.BuildOptions,
resolve() {
throw new Error('Not implemented')
},
onStart(callback) {
onStartCallbacks.push(callback)
},
onEnd(callback) {
onEndCallbacks.push(callback)
},
onResolve(options, callback) {
onResolveCallbacks.push([options, callback])
},
onLoad(options, callback) {
onLoadCallbacks.push([options, callback])
},
onDispose(callback) {
onDisposeCallbacks.push(callback)
},
get esbuild(): esbuild.PluginBuild['esbuild'] {
throw new Error('Not implemented')
},
set esbuild(_: unknown) {
throw new Error('Not implemented')
},
}
await esbuildPlugin.setup(pluginBuild)
resolveIdHandlers = onResolveCallbacks.map(([options, callback]) =>
createResolveIdHandler(options, callback),
)
loadHandlers = onLoadCallbacks.map(([options, callback]) =>
createLoadHandler(options, callback),
)
isSetupDone = true
}
Domain
Subdomains
Called By
Source
Frequently Asked Questions
What does convertEsbuildPluginToRolldownPlugin() do?
convertEsbuildPluginToRolldownPlugin() is a function in the vite codebase, defined in packages/vite/src/node/optimizer/pluginConverter.ts.
Where is convertEsbuildPluginToRolldownPlugin() defined?
convertEsbuildPluginToRolldownPlugin() is defined in packages/vite/src/node/optimizer/pluginConverter.ts at line 31.
What does convertEsbuildPluginToRolldownPlugin() call?
convertEsbuildPluginToRolldownPlugin() calls 3 function(s): createLoadHandler, createResolveIdHandler, idToPathAndNamespace.
What calls convertEsbuildPluginToRolldownPlugin()?
convertEsbuildPluginToRolldownPlugin() is called by 1 function(s): applyDepOptimizationOptionCompat.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free