Home / File/ optimizer.ts — vite Source File

optimizer.ts — vite Source File

Architecture documentation for optimizer.ts, a typescript file in the vite codebase. 30 imports, 1 dependents.

File typescript DependencyOptimizer Scanner 30 imports 1 dependents 3 functions

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)

Subdomains

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