patchTypes() — vite Function Reference
Architecture documentation for the patchTypes() function in rolldown.dts.config.ts from the vite codebase.
Entity Profile
Dependency Diagram
graph TD aabc1827_7354_5411_3a0d_63e4e16fd805["patchTypes()"] c2239521_b59e_589c_03c3_99028d5442bd["rolldown.dts.config.ts"] aabc1827_7354_5411_3a0d_63e4e16fd805 -->|defined in| c2239521_b59e_589c_03c3_99028d5442bd c95eddef_3bfe_b2eb_a638_ac6578c67700["getAllImportBindings()"] aabc1827_7354_5411_3a0d_63e4e16fd805 -->|calls| c95eddef_3bfe_b2eb_a638_ac6578c67700 0fe4209a_fc08_faeb_40d3_56f0240104b0["cleanUnnecessaryComments()"] aabc1827_7354_5411_3a0d_63e4e16fd805 -->|calls| 0fe4209a_fc08_faeb_40d3_56f0240104b0 style aabc1827_7354_5411_3a0d_63e4e16fd805 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/vite/rolldown.dts.config.ts lines 133–161
function patchTypes(): Plugin {
return {
name: 'patch-types',
generateBundle: {
order: 'post',
handler(_opts, bundle) {
for (const chunk of Object.values(bundle)) {
if (chunk.type !== 'chunk') continue
const ast = parseAst(chunk.code, { lang: 'ts', sourceType: 'module' })
const importBindings = getAllImportBindings(ast)
if (
chunk.fileName.startsWith('module-runner') ||
// index and moduleRunner have a common chunk
chunk.fileName.startsWith('chunks/') ||
chunk.fileName.startsWith('types.d-')
) {
validateRunnerChunk.call(this, chunk, importBindings)
} else {
validateChunkImports.call(this, chunk, importBindings)
replaceConfusingTypeNames.call(this, chunk, importBindings)
stripInternalTypes.call(this, chunk)
cleanUnnecessaryComments(chunk)
}
}
},
},
}
}
Domain
Subdomains
Defined In
Source
Frequently Asked Questions
What does patchTypes() do?
patchTypes() is a function in the vite codebase, defined in packages/vite/rolldown.dts.config.ts.
Where is patchTypes() defined?
patchTypes() is defined in packages/vite/rolldown.dts.config.ts at line 133.
What does patchTypes() call?
patchTypes() calls 2 function(s): cleanUnnecessaryComments, getAllImportBindings.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free