preAliasPlugin() — vite Function Reference
Architecture documentation for the preAliasPlugin() function in preAlias.ts from the vite codebase.
Entity Profile
Dependency Diagram
graph TD 200356af_4305_31b8_b090_47f38784e182["preAliasPlugin()"] 1ad4458e_b744_979c_c30e_c1021fdd26b7["preAlias.ts"] 200356af_4305_31b8_b090_47f38784e182 -->|defined in| 1ad4458e_b744_979c_c30e_c1021fdd26b7 b1b40b5b_3e43_2197_dea0_d36389d312a1["resolvePlugins()"] b1b40b5b_3e43_2197_dea0_d36389d312a1 -->|calls| 200356af_4305_31b8_b090_47f38784e182 57415665_c9eb_2aaf_bde8_568754cae687["getAliasPatterns()"] 200356af_4305_31b8_b090_47f38784e182 -->|calls| 57415665_c9eb_2aaf_bde8_568754cae687 cf8cccc0_fa2a_e8ac_480a_47c54435825c["isDepOptimizationDisabled()"] 200356af_4305_31b8_b090_47f38784e182 -->|calls| cf8cccc0_fa2a_e8ac_480a_47c54435825c 9bace565_4b23_b1e6_8d82_883dae6cfae8["matches()"] 200356af_4305_31b8_b090_47f38784e182 -->|calls| 9bace565_4b23_b1e6_8d82_883dae6cfae8 a2e55a70_b7b6_bce2_e066_aea4c516313e["tryOptimizedResolve()"] 200356af_4305_31b8_b090_47f38784e182 -->|calls| a2e55a70_b7b6_bce2_e066_aea4c516313e 10b9dea8_362c_1af2_93be_afa4dd9aed9e["cleanUrl()"] 200356af_4305_31b8_b090_47f38784e182 -->|calls| 10b9dea8_362c_1af2_93be_afa4dd9aed9e 26e0aa25_abdb_a755_dedb_61e78323162d["moduleListContains()"] 200356af_4305_31b8_b090_47f38784e182 -->|calls| 26e0aa25_abdb_a755_dedb_61e78323162d 50ac7e51_9f94_e985_bfec_ae95273b23b0["isInNodeModules()"] 200356af_4305_31b8_b090_47f38784e182 -->|calls| 50ac7e51_9f94_e985_bfec_ae95273b23b0 908e9e35_950f_ad37_ffa9_0058622aa7e8["isOptimizable()"] 200356af_4305_31b8_b090_47f38784e182 -->|calls| 908e9e35_950f_ad37_ffa9_0058622aa7e8 0eb5ad90_ecd1_8056_eed4_0fc65836b26c["optimizeAliasReplacementForSSR()"] 200356af_4305_31b8_b090_47f38784e182 -->|calls| 0eb5ad90_ecd1_8056_eed4_0fc65836b26c style 200356af_4305_31b8_b090_47f38784e182 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/vite/src/node/plugins/preAlias.ts lines 24–85
export function preAliasPlugin(config: ResolvedConfig): Plugin {
const findPatterns = getAliasPatterns(config.resolve.alias)
return {
name: 'vite:pre-alias',
applyToEnvironment(environment) {
return !isDepOptimizationDisabled(environment.config.optimizeDeps)
},
async resolveId(id, importer, options) {
const environment = this.environment as DevEnvironment
const ssr = environment.config.consumer === 'server'
const depsOptimizer = environment.depsOptimizer
if (
importer &&
depsOptimizer &&
bareImportRE.test(id) &&
!options.scan &&
id !== '@vite/client' &&
id !== '@vite/env'
) {
if (findPatterns.find((pattern) => matches(pattern, id))) {
const optimizedId = await tryOptimizedResolve(
depsOptimizer,
id,
importer,
config.resolve.preserveSymlinks,
config.packageCache,
)
if (optimizedId) {
return optimizedId // aliased dep already optimized
}
if (depsOptimizer.options.noDiscovery) {
return
}
const resolved = await this.resolve(id, importer, options)
if (resolved && !depsOptimizer.isOptimizedDepFile(resolved.id)) {
const optimizeDeps = depsOptimizer.options
const resolvedId = cleanUrl(resolved.id)
const isVirtual = resolvedId === id || resolvedId.includes('\0')
if (
!isVirtual &&
fs.existsSync(resolvedId) &&
!moduleListContains(optimizeDeps.exclude, id) &&
path.isAbsolute(resolvedId) &&
(isInNodeModules(resolvedId) ||
optimizeDeps.include?.includes(id)) &&
isOptimizable(resolvedId, optimizeDeps) &&
(!ssr || optimizeAliasReplacementForSSR(resolvedId, optimizeDeps))
) {
// aliased dep has not yet been optimized
const optimizedInfo = depsOptimizer!.registerMissingImport(
id,
resolvedId,
)
return { id: depsOptimizer!.getOptimizedDepId(optimizedInfo) }
}
}
return resolved
}
}
},
}
}
Domain
Subdomains
Defined In
Calls
Called By
Source
Frequently Asked Questions
What does preAliasPlugin() do?
preAliasPlugin() is a function in the vite codebase, defined in packages/vite/src/node/plugins/preAlias.ts.
Where is preAliasPlugin() defined?
preAliasPlugin() is defined in packages/vite/src/node/plugins/preAlias.ts at line 24.
What does preAliasPlugin() call?
preAliasPlugin() calls 9 function(s): cleanUrl, getAliasPatterns, isDepOptimizationDisabled, isInNodeModules, isOptimizable, matches, moduleListContains, optimizeAliasReplacementForSSR, and 1 more.
What calls preAliasPlugin()?
preAliasPlugin() is called by 1 function(s): resolvePlugins.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free