index.ts — vite Source File
Architecture documentation for index.ts, a typescript file in the vite codebase. 51 imports, 4 dependents.
Entity Profile
Dependency Diagram
graph LR 3bf7f0de_2a9f_6f04_cead_0321b3b7af01["index.ts"] 7da774f9_eca5_d54e_6e01_6bee7d460a2b["config.ts"] 3bf7f0de_2a9f_6f04_cead_0321b3b7af01 --> 7da774f9_eca5_d54e_6e01_6bee7d460a2b dc2b73ac_ba85_f64f_7a13_c75051b44355["PluginHookUtils"] 3bf7f0de_2a9f_6f04_cead_0321b3b7af01 --> dc2b73ac_ba85_f64f_7a13_c75051b44355 eb5604c2_58e1_1c00_5a1a_5d97ea5236ad["ResolvedConfig"] 3bf7f0de_2a9f_6f04_cead_0321b3b7af01 --> eb5604c2_58e1_1c00_5a1a_5d97ea5236ad 5abb8c87_ffcb_f2d4_7421_e36705d9e5c7["plugin.ts"] 3bf7f0de_2a9f_6f04_cead_0321b3b7af01 --> 5abb8c87_ffcb_f2d4_7421_e36705d9e5c7 dff9cadb_1e8c_7fc9_4119_a173f1f21cbd["packages.ts"] 3bf7f0de_2a9f_6f04_cead_0321b3b7af01 --> dff9cadb_1e8c_7fc9_4119_a173f1f21cbd 19079986_f2b8_99fb_9d98_03f44722e17c["watchPackageDataPlugin"] 3bf7f0de_2a9f_6f04_cead_0321b3b7af01 --> 19079986_f2b8_99fb_9d98_03f44722e17c dcff87b0_a8ea_57a2_3b29_a7b8f19986f3["resolve.ts"] 3bf7f0de_2a9f_6f04_cead_0321b3b7af01 --> dcff87b0_a8ea_57a2_3b29_a7b8f19986f3 0ac6860f_bc2f_9818_86d4_22179cc9c8ba["oxcResolvePlugin"] 3bf7f0de_2a9f_6f04_cead_0321b3b7af01 --> 0ac6860f_bc2f_9818_86d4_22179cc9c8ba 1ad5c135_fc65_cc8f_2918_6f109d7fd644["optimizedDeps.ts"] 3bf7f0de_2a9f_6f04_cead_0321b3b7af01 --> 1ad5c135_fc65_cc8f_2918_6f109d7fd644 daaf9cbf_e2ae_6c47_2a70_91fb6babc950["optimizedDepsPlugin"] 3bf7f0de_2a9f_6f04_cead_0321b3b7af01 --> daaf9cbf_e2ae_6c47_2a70_91fb6babc950 5a7b98e4_4eb1_dfca_508b_2d43e2a077e6["importAnalysis.ts"] 3bf7f0de_2a9f_6f04_cead_0321b3b7af01 --> 5a7b98e4_4eb1_dfca_508b_2d43e2a077e6 a1fc1de5_905b_efe7_d960_3597604fbdfe["importAnalysisPlugin"] 3bf7f0de_2a9f_6f04_cead_0321b3b7af01 --> a1fc1de5_905b_efe7_d960_3597604fbdfe c3eb47df_971b_0616_6c9f_29b3ded72224["css.ts"] 3bf7f0de_2a9f_6f04_cead_0321b3b7af01 --> c3eb47df_971b_0616_6c9f_29b3ded72224 946fc4c1_3a7b_9d6a_6a0f_ab4355ad25c9["cssAnalysisPlugin"] 3bf7f0de_2a9f_6f04_cead_0321b3b7af01 --> 946fc4c1_3a7b_9d6a_6a0f_ab4355ad25c9 style 3bf7f0de_2a9f_6f04_cead_0321b3b7af01 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
import aliasPlugin, { type ResolverFunction } from '@rollup/plugin-alias'
import type { ObjectHook } from 'rolldown'
import {
viteAliasPlugin as nativeAliasPlugin,
viteJsonPlugin as nativeJsonPlugin,
viteWasmFallbackPlugin as nativeWasmFallbackPlugin,
} from 'rolldown/experimental'
import type { PluginHookUtils, ResolvedConfig } from '../config'
import {
type HookHandler,
type Plugin,
type PluginWithRequiredHook,
} from '../plugin'
import { watchPackageDataPlugin } from '../packages'
import { oxcResolvePlugin } from './resolve'
import { optimizedDepsPlugin } from './optimizedDeps'
import { importAnalysisPlugin } from './importAnalysis'
import { cssAnalysisPlugin, cssPlugin, cssPostPlugin } from './css'
import { assetPlugin } from './asset'
import { clientInjectionsPlugin } from './clientInjections'
import { buildHtmlPlugin, htmlInlineProxyPlugin } from './html'
import { wasmHelperPlugin } from './wasm'
import { modulePreloadPolyfillPlugin } from './modulePreloadPolyfill'
import { webWorkerPlugin } from './worker'
import { preAliasPlugin } from './preAlias'
import { definePlugin } from './define'
import { workerImportMetaUrlPlugin } from './workerImportMetaUrl'
import { assetImportMetaUrlPlugin } from './assetImportMetaUrl'
import { dynamicImportVarsPlugin } from './dynamicImportVars'
import { importGlobPlugin } from './importMetaGlob'
import {
type PluginFilter,
type TransformHookFilter,
createFilterForTransform,
createIdFilter,
} from './pluginFilter'
import { oxcPlugin } from './oxc'
import { esbuildBannerFooterCompatPlugin } from './esbuildBannerFooterCompatPlugin'
export async function resolvePlugins(
config: ResolvedConfig,
prePlugins: Plugin[],
normalPlugins: Plugin[],
postPlugins: Plugin[],
): Promise<Plugin[]> {
const isBuild = config.command === 'build'
const isBundled = config.isBundled
const isWorker = config.isWorker
const buildPlugins = isBundled
? await (await import('../build')).resolveBuildPlugins(config)
: { pre: [], post: [] }
const { modulePreload } = config.build
const enableNativePluginV1 = config.nativePluginEnabledLevel >= 1
return [
!isBundled ? optimizedDepsPlugin() : null,
!isWorker ? watchPackageDataPlugin(config.packageCache) : null,
!isBundled ? preAliasPlugin(config) : null,
isBundled &&
enableNativePluginV1 &&
// ... (199 more lines)
Domain
Subdomains
Functions
Types
Dependencies
- PluginHookUtils
- ResolvedConfig
- asset.ts
- assetImportMetaUrl.ts
- assetImportMetaUrlPlugin
- assetPlugin
- buildHtmlPlugin
- clientInjections.ts
- clientInjectionsPlugin
- config.ts
- createFilterForTransform
- createIdFilter
- css.ts
- cssAnalysisPlugin
- cssPlugin
- cssPostPlugin
- define.ts
- definePlugin
- dynamicImportVars.ts
- dynamicImportVarsPlugin
- esbuildBannerFooterCompatPlugin
- esbuildBannerFooterCompatPlugin.ts
- experimental
- html.ts
- htmlInlineProxyPlugin
- importAnalysis.ts
- importAnalysisPlugin
- importGlobPlugin
- importMetaGlob.ts
- modulePreloadPolyfill.ts
- modulePreloadPolyfillPlugin
- optimizedDeps.ts
- optimizedDepsPlugin
- oxc.ts
- oxcPlugin
- oxcResolvePlugin
- packages.ts
- plugin-alias
- plugin.ts
- pluginFilter.ts
- preAlias.ts
- preAliasPlugin
- resolve.ts
- rolldown
- wasm.ts
- wasmHelperPlugin
- watchPackageDataPlugin
- webWorkerPlugin
- worker.ts
- workerImportMetaUrl.ts
- workerImportMetaUrlPlugin
Imported By
Source
Frequently Asked Questions
What does index.ts do?
index.ts is a source file in the vite codebase, written in typescript. It belongs to the PluginSystem domain, AssetManagement subdomain.
What functions are defined in index.ts?
index.ts defines 7 function(s): createPluginHookUtils, extractFilter, getCachedFilterForPlugin, getHookHandler, getSortedPluginsByHook, resolvePlugins, viteAliasCustomResolver.
What does index.ts depend on?
index.ts imports 51 module(s): PluginHookUtils, ResolvedConfig, asset.ts, assetImportMetaUrl.ts, assetImportMetaUrlPlugin, assetPlugin, buildHtmlPlugin, clientInjections.ts, and 43 more.
What files import index.ts?
index.ts is imported by 4 file(s): build.ts, config.ts, hmr.ts, pluginContainer.ts.
Where is index.ts in the architecture?
index.ts is located at packages/vite/src/node/plugins/index.ts (domain: PluginSystem, subdomain: AssetManagement, directory: packages/vite/src/node/plugins).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free