optimizer.ts — vite Source File
Architecture documentation for optimizer.ts, a typescript file in the vite codebase. 30 imports, 1 dependents.
Entity Profile
Dependency Diagram
graph LR 1e9c451c_672c_39cf_7b97_f46e41e7b47d["optimizer.ts"] 031bc221_67a8_c579_f2bf_bb30a08beeb2["utils.ts"] 1e9c451c_672c_39cf_7b97_f46e41e7b47d --> 031bc221_67a8_c579_f2bf_bb30a08beeb2 23a2e685_f919_9578_27ba_bde71c122058["createDebugger"] 1e9c451c_672c_39cf_7b97_f46e41e7b47d --> 23a2e685_f919_9578_27ba_bde71c122058 9d025481_71dc_8fbb_c07e_b6e74a08a45a["getHash"] 1e9c451c_672c_39cf_7b97_f46e41e7b47d --> 9d025481_71dc_8fbb_c07e_b6e74a08a45a abfc9e70_3c15_b3f0_a595_3cf27afb7e64["utils.ts"] 1e9c451c_672c_39cf_7b97_f46e41e7b47d --> abfc9e70_3c15_b3f0_a595_3cf27afb7e64 5b95806c_6cb8_a9a6_1dd6_709fd3849415["promiseWithResolvers"] 1e9c451c_672c_39cf_7b97_f46e41e7b47d --> 5b95806c_6cb8_a9a6_1dd6_709fd3849415 7916c84f_5621_2b3b_d220_a171ebce997f["environment.ts"] 1e9c451c_672c_39cf_7b97_f46e41e7b47d --> 7916c84f_5621_2b3b_d220_a171ebce997f f634223d_ed8e_a65b_08f8_a839ec17994a["DevEnvironment"] 1e9c451c_672c_39cf_7b97_f46e41e7b47d --> f634223d_ed8e_a65b_08f8_a839ec17994a 6c7a7f5e_5d30_3576_49bf_9041362fd3fd["scan.ts"] 1e9c451c_672c_39cf_7b97_f46e41e7b47d --> 6c7a7f5e_5d30_3576_49bf_9041362fd3fd f6cc5896_6a10_2069_d844_d1c6914e9d05["devToScanEnvironment"] 1e9c451c_672c_39cf_7b97_f46e41e7b47d --> f6cc5896_6a10_2069_d844_d1c6914e9d05 2f328851_91ee_fb05_63f0_4f466b9d6250["index.ts"] 1e9c451c_672c_39cf_7b97_f46e41e7b47d --> 2f328851_91ee_fb05_63f0_4f466b9d6250 1c26b345_9001_5539_856a_e1c755036eaa["addManuallyIncludedOptimizeDeps"] 1e9c451c_672c_39cf_7b97_f46e41e7b47d --> 1c26b345_9001_5539_856a_e1c755036eaa 7402f434_a1bf_d32f_d9fd_fd11f7538168["addOptimizedDepInfo"] 1e9c451c_672c_39cf_7b97_f46e41e7b47d --> 7402f434_a1bf_d32f_d9fd_fd11f7538168 0292cdda_4b03_d38d_11d6_b4b287d5f619["createIsOptimizedDepFile"] 1e9c451c_672c_39cf_7b97_f46e41e7b47d --> 0292cdda_4b03_d38d_11d6_b4b287d5f619 287d6c40_e13a_3c71_8d45_c949a2448ad8["createIsOptimizedDepUrl"] 1e9c451c_672c_39cf_7b97_f46e41e7b47d --> 287d6c40_e13a_3c71_8d45_c949a2448ad8 style 1e9c451c_672c_39cf_7b97_f46e41e7b47d fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
import colors from 'picocolors'
import { createDebugger, getHash } from '../utils'
import {
type PromiseWithResolvers,
promiseWithResolvers,
} from '../../shared/utils'
import type { DevEnvironment } from '../server/environment'
import { devToScanEnvironment } from './scan'
import {
addManuallyIncludedOptimizeDeps,
addOptimizedDepInfo,
createIsOptimizedDepFile,
createIsOptimizedDepUrl,
depsFromOptimizedDepInfo,
depsLogString,
discoverProjectDependencies,
extractExportsData,
getOptimizedDepPath,
initDepsOptimizerMetadata,
loadCachedDepOptimizationMetadata,
optimizeExplicitEnvironmentDeps,
runOptimizeDeps,
toDiscoveredDependencies,
} from './index'
import type {
DepOptimizationMetadata,
DepOptimizationResult,
DepsOptimizer,
OptimizedDepInfo,
} from './index'
const debug = createDebugger('vite:deps')
/**
* The amount to wait for requests to register newly found dependencies before triggering
* a re-bundle + page reload
*/
const debounceMs = 100
export function createDepsOptimizer(
environment: DevEnvironment,
): DepsOptimizer {
const { logger } = environment
const sessionTimestamp = Date.now().toString()
let debounceProcessingHandle: NodeJS.Timeout | undefined
let closed = false
const options = environment.config.optimizeDeps
const { noDiscovery, holdUntilCrawlEnd } = options
let metadata: DepOptimizationMetadata = initDepsOptimizerMetadata(
environment,
sessionTimestamp,
)
const depsOptimizer: DepsOptimizer = {
init,
// ... (744 more lines)
Domain
Subdomains
Dependencies
- DepOptimizationMetadata
- DepOptimizationResult
- DepsOptimizer
- DevEnvironment
- OptimizedDepInfo
- OptimizedDepInfo
- addManuallyIncludedOptimizeDeps
- addOptimizedDepInfo
- createDebugger
- createIsOptimizedDepFile
- createIsOptimizedDepUrl
- depsFromOptimizedDepInfo
- depsLogString
- devToScanEnvironment
- discoverProjectDependencies
- environment.ts
- extractExportsData
- getHash
- getOptimizedDepPath
- index.ts
- initDepsOptimizerMetadata
- loadCachedDepOptimizationMetadata
- optimizeExplicitEnvironmentDeps
- picocolors
- promiseWithResolvers
- runOptimizeDeps
- scan.ts
- toDiscoveredDependencies
- utils.ts
- utils.ts
Imported By
Source
Frequently Asked Questions
What does optimizer.ts do?
optimizer.ts is a source file in the vite codebase, written in typescript. It belongs to the DependencyOptimizer domain, Scanner subdomain.
What functions are defined in optimizer.ts?
optimizer.ts defines 3 function(s): createDepsOptimizer, createExplicitDepsOptimizer, findInteropMismatches.
What does optimizer.ts depend on?
optimizer.ts imports 30 module(s): DepOptimizationMetadata, DepOptimizationResult, DepsOptimizer, DevEnvironment, OptimizedDepInfo, OptimizedDepInfo, addManuallyIncludedOptimizeDeps, addOptimizedDepInfo, and 22 more.
What files import optimizer.ts?
optimizer.ts is imported by 1 file(s): environment.ts.
Where is optimizer.ts in the architecture?
optimizer.ts is located at packages/vite/src/node/optimizer/optimizer.ts (domain: DependencyOptimizer, subdomain: Scanner, directory: packages/vite/src/node/optimizer).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free