Home / File/ runner.ts — vite Source File

runner.ts — vite Source File

Architecture documentation for runner.ts, a typescript file in the vite codebase. 33 imports, 3 dependents.

File typescript ModuleRunner SSRRuntime 33 imports 3 dependents 1 functions 1 classes

Entity Profile

Dependency Diagram

graph LR
  29e248d2_9983_1037_00e6_8bcd9ee87840["runner.ts"]
  56154347_d0e1_1403_ce0e_25508620362c["hmr.ts"]
  29e248d2_9983_1037_00e6_8bcd9ee87840 --> 56154347_d0e1_1403_ce0e_25508620362c
  59034bde_6f4e_fe6a_b2ce_a002a0aa10b4["HMRClient"]
  29e248d2_9983_1037_00e6_8bcd9ee87840 --> 59034bde_6f4e_fe6a_b2ce_a002a0aa10b4
  d86a8333_3c9a_922b_57b2_926575326289["HMRContext"]
  29e248d2_9983_1037_00e6_8bcd9ee87840 --> d86a8333_3c9a_922b_57b2_926575326289
  abfc9e70_3c15_b3f0_a595_3cf27afb7e64["utils.ts"]
  29e248d2_9983_1037_00e6_8bcd9ee87840 --> abfc9e70_3c15_b3f0_a595_3cf27afb7e64
  10b9dea8_362c_1af2_93be_afa4dd9aed9e["cleanUrl"]
  29e248d2_9983_1037_00e6_8bcd9ee87840 --> 10b9dea8_362c_1af2_93be_afa4dd9aed9e
  0dc7ee1e_8a3c_61b7_f7a8_7cc4dc085f43["isPrimitive"]
  29e248d2_9983_1037_00e6_8bcd9ee87840 --> 0dc7ee1e_8a3c_61b7_f7a8_7cc4dc085f43
  e5afda66_d325_b39d_895d_9edd47b6bafd["ssrTransform.ts"]
  29e248d2_9983_1037_00e6_8bcd9ee87840 --> e5afda66_d325_b39d_895d_9edd47b6bafd
  0d6c59ba_8e92_3008_e3b8_8fe33b44bf4c["analyzeImportedModDifference"]
  29e248d2_9983_1037_00e6_8bcd9ee87840 --> 0d6c59ba_8e92_3008_e3b8_8fe33b44bf4c
  a469d907_868c_e1c2_3f7a_7aaf42cc6a7a["moduleRunnerTransport.ts"]
  29e248d2_9983_1037_00e6_8bcd9ee87840 --> a469d907_868c_e1c2_3f7a_7aaf42cc6a7a
  f9bbebfe_9cba_07d9_a804_95e8776eaea9["normalizeModuleRunnerTransport"]
  29e248d2_9983_1037_00e6_8bcd9ee87840 --> f9bbebfe_9cba_07d9_a804_95e8776eaea9
  58ae8bb3_1e86_ef80_62f2_c3c6b3a5d4dd["builtin.ts"]
  29e248d2_9983_1037_00e6_8bcd9ee87840 --> 58ae8bb3_1e86_ef80_62f2_c3c6b3a5d4dd
  eb16f54b_f518_e287_d712_4a0d7705bdff["createIsBuiltin"]
  29e248d2_9983_1037_00e6_8bcd9ee87840 --> eb16f54b_f518_e287_d712_4a0d7705bdff
  9f67d7a4_f300_a592_a5b0_c8f97c2d3564["evaluatedModules.ts"]
  29e248d2_9983_1037_00e6_8bcd9ee87840 --> 9f67d7a4_f300_a592_a5b0_c8f97c2d3564
  8d2b7888_15bf_974f_f74d_adfa81650eff["EvaluatedModuleNode"]
  29e248d2_9983_1037_00e6_8bcd9ee87840 --> 8d2b7888_15bf_974f_f74d_adfa81650eff
  style 29e248d2_9983_1037_00e6_8bcd9ee87840 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import type { ViteHotContext } from '#types/hot'
import { HMRClient, HMRContext, type HMRLogger } from '../shared/hmr'
import { cleanUrl, isPrimitive } from '../shared/utils'
import { analyzeImportedModDifference } from '../shared/ssrTransform'
import {
  type NormalizedModuleRunnerTransport,
  normalizeModuleRunnerTransport,
} from '../shared/moduleRunnerTransport'
import { createIsBuiltin } from '../shared/builtin'
import type { EvaluatedModuleNode } from './evaluatedModules'
import { EvaluatedModules } from './evaluatedModules'
import type {
  ModuleEvaluator,
  ModuleRunnerContext,
  ModuleRunnerOptions,
  ResolvedResult,
  SSRImportMetadata,
} from './types'
import { posixDirname, posixPathToFileHref, posixResolve } from './utils'
import {
  ssrDynamicImportKey,
  ssrExportAllKey,
  ssrExportNameKey,
  ssrImportKey,
  ssrImportMetaKey,
  ssrModuleExportsKey,
} from './constants'
import { hmrLogger, silentConsole } from './hmrLogger'
import { createHMRHandlerForRunner } from './hmrHandler'
import { enableSourceMapSupport } from './sourcemap/index'
import { ESModulesEvaluator } from './esmEvaluator'
import { createDefaultImportMeta } from './createImportMeta'

interface ModuleRunnerDebugger {
  (formatter: unknown, ...args: unknown[]): void
}

export class ModuleRunner {
  public evaluatedModules: EvaluatedModules
  public hmrClient?: HMRClient

  private readonly transport: NormalizedModuleRunnerTransport
  private readonly resetSourceMapSupport?: () => void
  private readonly concurrentModuleNodePromises = new Map<
    string,
    Promise<EvaluatedModuleNode>
  >()
  private isBuiltin?: (id: string) => boolean
  private builtinsPromise?: Promise<void>

  private closed = false

  constructor(
    public options: ModuleRunnerOptions,
    public evaluator: ModuleEvaluator = new ESModulesEvaluator(),
    private debug?: ModuleRunnerDebugger | undefined,
  ) {
    this.evaluatedModules = options.evaluatedModules ?? new EvaluatedModules()
    this.transport = normalizeModuleRunnerTransport(options.transport)
    if (options.hmr !== false) {
// ... (395 more lines)

Domain

Subdomains

Functions

Classes

Frequently Asked Questions

What does runner.ts do?
runner.ts is a source file in the vite codebase, written in typescript. It belongs to the ModuleRunner domain, SSRRuntime subdomain.
What functions are defined in runner.ts?
runner.ts defines 1 function(s): exportAll.
What does runner.ts depend on?
runner.ts imports 33 module(s): ESModulesEvaluator, EvaluatedModuleNode, EvaluatedModules, HMRClient, HMRContext, ModuleEvaluator, ModuleRunnerContext, ModuleRunnerOptions, and 25 more.
What files import runner.ts?
runner.ts is imported by 3 file(s): hmrHandler.ts, index.ts, interceptor.ts.
Where is runner.ts in the architecture?
runner.ts is located at packages/vite/src/module-runner/runner.ts (domain: ModuleRunner, subdomain: SSRRuntime, directory: packages/vite/src/module-runner).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free