Home / Function/ getModuleInformation() — vite Function Reference

getModuleInformation() — vite Function Reference

Architecture documentation for the getModuleInformation() function in runner.ts from the vite codebase.

Entity Profile

Dependency Diagram

graph TD
  6d9a8fd8_b579_289e_b43c_8d04619aff11["getModuleInformation()"]
  1d3ff778_7ac6_0038_640f_997e968c3c8f["ModuleRunner"]
  6d9a8fd8_b579_289e_b43c_8d04619aff11 -->|defined in| 1d3ff778_7ac6_0038_640f_997e968c3c8f
  1ca5cbd8_3591_8042_7bb5_fed80a4ac932["cachedModule()"]
  1ca5cbd8_3591_8042_7bb5_fed80a4ac932 -->|calls| 6d9a8fd8_b579_289e_b43c_8d04619aff11
  7ea4161b_ab41_b309_0390_3e9a8521014d["ensureBuiltins()"]
  6d9a8fd8_b579_289e_b43c_8d04619aff11 -->|calls| 7ea4161b_ab41_b309_0390_3e9a8521014d
  d784e6cc_4e2b_6dd3_a857_d698343d213a["ensureModule()"]
  6d9a8fd8_b579_289e_b43c_8d04619aff11 -->|calls| d784e6cc_4e2b_6dd3_a857_d698343d213a
  2f69cb50_c4b7_e6c7_8485_18ff0f8f604e["invalidateModule()"]
  6d9a8fd8_b579_289e_b43c_8d04619aff11 -->|calls| 2f69cb50_c4b7_e6c7_8485_18ff0f8f604e
  style 6d9a8fd8_b579_289e_b43c_8d04619aff11 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/vite/src/module-runner/runner.ts lines 272–326

  private async getModuleInformation(
    url: string,
    importer: string | undefined,
    cachedModule: EvaluatedModuleNode | undefined,
  ): Promise<EvaluatedModuleNode> {
    if (this.closed) {
      throw new Error(`Vite module runner has been closed.`)
    }

    await this.ensureBuiltins()

    this.debug?.('[module runner] fetching', url)

    const isCached = !!(typeof cachedModule === 'object' && cachedModule.meta)

    const fetchedModule = // fast return for established externalized pattern
      (
        url.startsWith('data:') || this.isBuiltin?.(url)
          ? { externalize: url, type: 'builtin' }
          : await this.transport.invoke('fetchModule', [
              url,
              importer,
              {
                cached: isCached,
                startOffset: this.evaluator.startOffset,
              },
            ])
      ) as ResolvedResult

    if ('cache' in fetchedModule) {
      if (!cachedModule || !cachedModule.meta) {
        throw new Error(
          `Module "${url}" was mistakenly invalidated during fetch phase.`,
        )
      }
      return cachedModule
    }

    const moduleId =
      'externalize' in fetchedModule
        ? fetchedModule.externalize
        : fetchedModule.id
    const moduleUrl = 'url' in fetchedModule ? fetchedModule.url : url
    const module = this.evaluatedModules.ensureModule(moduleId, moduleUrl)

    if ('invalidate' in fetchedModule && fetchedModule.invalidate) {
      this.evaluatedModules.invalidateModule(module)
    }

    fetchedModule.url = moduleUrl
    fetchedModule.id = moduleId
    module.meta = fetchedModule

    return module
  }

Domain

Subdomains

Called By

Frequently Asked Questions

What does getModuleInformation() do?
getModuleInformation() is a function in the vite codebase, defined in packages/vite/src/module-runner/runner.ts.
Where is getModuleInformation() defined?
getModuleInformation() is defined in packages/vite/src/module-runner/runner.ts at line 272.
What does getModuleInformation() call?
getModuleInformation() calls 3 function(s): ensureBuiltins, ensureModule, invalidateModule.
What calls getModuleInformation()?
getModuleInformation() is called by 1 function(s): cachedModule.

Analyze Your Own Codebase

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

Try Supermodel Free