pluginContainer.ts — vite Source File
Architecture documentation for pluginContainer.ts, a typescript file in the vite codebase. 49 imports, 13 dependents.
Entity Profile
Dependency Diagram
graph LR 3b8df068_35d0_2c94_3ad1_e93c93d1d613["pluginContainer.ts"] 5abb8c87_ffcb_f2d4_7421_e36705d9e5c7["plugin.ts"] 3b8df068_35d0_2c94_3ad1_e93c93d1d613 --> 5abb8c87_ffcb_f2d4_7421_e36705d9e5c7 1dc2cf7d_5d97_c778_8c33_6449a7607aef["Plugin"] 3b8df068_35d0_2c94_3ad1_e93c93d1d613 --> 1dc2cf7d_5d97_c778_8c33_6449a7607aef 031bc221_67a8_c579_f2bf_bb30a08beeb2["utils.ts"] 3b8df068_35d0_2c94_3ad1_e93c93d1d613 --> 031bc221_67a8_c579_f2bf_bb30a08beeb2 cb1210e8_03e9_2eec_ef04_aa15d44d4c08["combineSourcemaps"] 3b8df068_35d0_2c94_3ad1_e93c93d1d613 --> cb1210e8_03e9_2eec_ef04_aa15d44d4c08 23a2e685_f919_9578_27ba_bde71c122058["createDebugger"] 3b8df068_35d0_2c94_3ad1_e93c93d1d613 --> 23a2e685_f919_9578_27ba_bde71c122058 0a6fbb70_77d3_9873_8417_b1e4ffba2651["ensureWatchedFile"] 3b8df068_35d0_2c94_3ad1_e93c93d1d613 --> 0a6fbb70_77d3_9873_8417_b1e4ffba2651 310ed049_c1b4_c917_b399_81bab290e5a2["generateCodeFrame"] 3b8df068_35d0_2c94_3ad1_e93c93d1d613 --> 310ed049_c1b4_c917_b399_81bab290e5a2 23257aa1_5e3f_7e6e_1b43_875b139e4ec5["isExternalUrl"] 3b8df068_35d0_2c94_3ad1_e93c93d1d613 --> 23257aa1_5e3f_7e6e_1b43_875b139e4ec5 2aff86e8_0c9d_22cb_6536_c1321e1aaa1d["isObject"] 3b8df068_35d0_2c94_3ad1_e93c93d1d613 --> 2aff86e8_0c9d_22cb_6536_c1321e1aaa1d a4adb1a7_cf54_091f_eb63_8217e684a8e1["normalizePath"] 3b8df068_35d0_2c94_3ad1_e93c93d1d613 --> a4adb1a7_cf54_091f_eb63_8217e684a8e1 7e08b9a5_2650_5312_63d2_5971015349af["numberToPos"] 3b8df068_35d0_2c94_3ad1_e93c93d1d613 --> 7e08b9a5_2650_5312_63d2_5971015349af 0850ad90_f980_60a3_ab1f_b17433109b74["prettifyUrl"] 3b8df068_35d0_2c94_3ad1_e93c93d1d613 --> 0850ad90_f980_60a3_ab1f_b17433109b74 14c1c6b3_e4b1_62ce_7196_077ecd00ef57["timeFrom"] 3b8df068_35d0_2c94_3ad1_e93c93d1d613 --> 14c1c6b3_e4b1_62ce_7196_077ecd00ef57 545df65b_7f67_94d3_e2e8_a592d5e64b8f["constants.ts"] 3b8df068_35d0_2c94_3ad1_e93c93d1d613 --> 545df65b_7f67_94d3_e2e8_a592d5e64b8f style 3b8df068_35d0_2c94_3ad1_e93c93d1d613 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
/**
* This file is refactored into TypeScript based on
* https://github.com/preactjs/wmr/blob/main/packages/wmr/src/lib/rollup-plugin-container.js
*/
/**
https://github.com/preactjs/wmr/blob/master/LICENSE
MIT License
Copyright (c) 2020 The Preact Authors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
*/
import fs from 'node:fs'
import fsp from 'node:fs/promises'
import { join } from 'node:path'
import { performance } from 'node:perf_hooks'
import { parseAst as rolldownParseAst } from 'rolldown/parseAst'
import type { Program } from '@oxc-project/types'
import type {
AsyncPluginHooks,
CustomPluginOptions,
EmittedFile,
FunctionPluginHooks,
ImportKind,
InputOptions,
LoadResult,
ModuleInfo,
ModuleOptions,
ModuleType,
NormalizedInputOptions,
OutputOptions,
ParallelPluginHooks,
PartialNull,
PartialResolvedId,
PluginContextMeta,
ResolvedId,
RollupError,
RolldownFsModule as RollupFsModule,
RollupLog,
MinimalPluginContext as RollupMinimalPluginContext,
PluginContext as RollupPluginContext,
// ... (1267 more lines)
Domain
Subdomains
Classes
Dependencies
- DevEnvironment
- Environment
- EnvironmentModuleGraph
- EnvironmentModuleNode
- Logger
- Plugin
- PluginHookUtils
- buildErrorMessage
- chokidar
- cleanUrl
- combineSourcemaps
- config.ts
- constants.ts
- createDebugger
- createPluginHookUtils
- deprecations.ts
- ensureWatchedFile
- environment.ts
- environment.ts
- error.ts
- generateCodeFrame
- getCachedFilterForPlugin
- getHookHandler
- index.ts
- isExternalUrl
- isFutureDeprecationEnabled
- isObject
- logger.ts
- magic-string
- moduleGraph.ts
- node:fs
- node:path
- node:perf_hooks
- normalizePath
- numberToPos
- parseAst
- picocolors
- plugin.ts
- prettifyUrl
- promises
- remapping
- rolldown
- timeFrom
- trace-mapping
- types
- unwrapId
- utils.ts
- utils.ts
- warnFutureDeprecation
Imported By
- packages/vite/src/node/build.ts
- packages/vite/src/node/config.ts
- packages/vite/src/node/plugins/css.ts
- packages/vite/src/node/server/environment.ts
- packages/vite/src/node/server/hmr.ts
- packages/vite/src/node/idResolver.ts
- packages/vite/src/node/plugins/importAnalysis.ts
- packages/vite/src/node/server/index.ts
- packages/vite/src/node/server/middlewares/indexHtml.ts
- packages/vite/src/node/preview.ts
- packages/vite/src/node/optimizer/scan.ts
- packages/vite/src/node/server/middlewares/transform.ts
- packages/vite/src/node/server/transformRequest.ts
Source
Frequently Asked Questions
What does pluginContainer.ts do?
pluginContainer.ts is a source file in the vite codebase, written in typescript. It belongs to the ViteCore domain, ConfigEngine subdomain.
What functions are defined in pluginContainer.ts?
pluginContainer.ts defines 4 function(s): createEnvironmentPluginContainer, createPluginContainer, name, throwClosedServerError.
What does pluginContainer.ts depend on?
pluginContainer.ts imports 49 module(s): DevEnvironment, Environment, EnvironmentModuleGraph, EnvironmentModuleNode, Logger, Plugin, PluginHookUtils, buildErrorMessage, and 41 more.
What files import pluginContainer.ts?
pluginContainer.ts is imported by 13 file(s): build.ts, config.ts, css.ts, environment.ts, hmr.ts, idResolver.ts, importAnalysis.ts, index.ts, and 5 more.
Where is pluginContainer.ts in the architecture?
pluginContainer.ts is located at packages/vite/src/node/server/pluginContainer.ts (domain: ViteCore, subdomain: ConfigEngine, directory: packages/vite/src/node/server).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free