Home / File/ rolldownDepPlugin.ts — vite Source File

rolldownDepPlugin.ts — vite Source File

Architecture documentation for rolldownDepPlugin.ts, a typescript file in the vite codebase. 27 imports, 2 dependents.

File typescript DependencyOptimizer PreBundler 27 imports 2 dependents 3 functions

Entity Profile

Dependency Diagram

graph LR
  88c474dd_3ef0_0479_2549_43cd02a6f84b["rolldownDepPlugin.ts"]
  545df65b_7f67_94d3_e2e8_a592d5e64b8f["constants.ts"]
  88c474dd_3ef0_0479_2549_43cd02a6f84b --> 545df65b_7f67_94d3_e2e8_a592d5e64b8f
  dff9cadb_1e8c_7fc9_4119_a173f1f21cbd["packages.ts"]
  88c474dd_3ef0_0479_2549_43cd02a6f84b --> dff9cadb_1e8c_7fc9_4119_a173f1f21cbd
  ffeba997_76c6_90dc_3e13_ad296db4ed52["PackageCache"]
  88c474dd_3ef0_0479_2549_43cd02a6f84b --> ffeba997_76c6_90dc_3e13_ad296db4ed52
  031bc221_67a8_c579_f2bf_bb30a08beeb2["utils.ts"]
  88c474dd_3ef0_0479_2549_43cd02a6f84b --> 031bc221_67a8_c579_f2bf_bb30a08beeb2
  5e378bd7_4558_94a6_54bf_d9742f54d2e9["escapeRegex"]
  88c474dd_3ef0_0479_2549_43cd02a6f84b --> 5e378bd7_4558_94a6_54bf_d9742f54d2e9
  1cc52ea9_1097_389c_806c_c1207629afcc["flattenId"]
  88c474dd_3ef0_0479_2549_43cd02a6f84b --> 1cc52ea9_1097_389c_806c_c1207629afcc
  5d2580c9_3b65_7396_afe1_ab2aa13f8ed9["isBuiltin"]
  88c474dd_3ef0_0479_2549_43cd02a6f84b --> 5d2580c9_3b65_7396_afe1_ab2aa13f8ed9
  ae8703ad_85e4_a4b4_5a15_57955bb1f6ce["isCSSRequest"]
  88c474dd_3ef0_0479_2549_43cd02a6f84b --> ae8703ad_85e4_a4b4_5a15_57955bb1f6ce
  298b86d6_4810_9884_d5fa_3e3077e2206a["isDataUrl"]
  88c474dd_3ef0_0479_2549_43cd02a6f84b --> 298b86d6_4810_9884_d5fa_3e3077e2206a
  23257aa1_5e3f_7e6e_1b43_875b139e4ec5["isExternalUrl"]
  88c474dd_3ef0_0479_2549_43cd02a6f84b --> 23257aa1_5e3f_7e6e_1b43_875b139e4ec5
  fb27ca2e_1576_f57b_b1dd_9bac4dddcf04["isNodeBuiltin"]
  88c474dd_3ef0_0479_2549_43cd02a6f84b --> fb27ca2e_1576_f57b_b1dd_9bac4dddcf04
  26e0aa25_abdb_a755_dedb_61e78323162d["moduleListContains"]
  88c474dd_3ef0_0479_2549_43cd02a6f84b --> 26e0aa25_abdb_a755_dedb_61e78323162d
  a4adb1a7_cf54_091f_eb63_8217e684a8e1["normalizePath"]
  88c474dd_3ef0_0479_2549_43cd02a6f84b --> a4adb1a7_cf54_091f_eb63_8217e684a8e1
  dcff87b0_a8ea_57a2_3b29_a7b8f19986f3["resolve.ts"]
  88c474dd_3ef0_0479_2549_43cd02a6f84b --> dcff87b0_a8ea_57a2_3b29_a7b8f19986f3
  style 88c474dd_3ef0_0479_2549_43cd02a6f84b fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import path from 'node:path'
import type { ImportKind, Plugin, RolldownPlugin } from 'rolldown'
import { prefixRegex } from 'rolldown/filter'
import MagicString from 'magic-string'
import { stripLiteral } from 'strip-literal'
import { JS_TYPES_RE, KNOWN_ASSET_TYPES } from '../constants'
import type { PackageCache } from '../packages'
import {
  escapeRegex,
  flattenId,
  isBuiltin,
  isCSSRequest,
  isDataUrl,
  isExternalUrl,
  isNodeBuiltin,
  moduleListContains,
  normalizePath,
} from '../utils'
import { browserExternalId, optionalPeerDepId } from '../plugins/resolve'
import { isModuleCSSRequest } from '../plugins/css'
import type { Environment } from '../environment'
import { createBackCompatIdResolver } from '../idResolver'
import { isWindows } from '../../shared/utils'
import { hasViteIgnoreRE } from '../plugins/importAnalysis'

const externalWithConversionNamespace =
  'vite:dep-pre-bundle:external-conversion'
const convertedExternalPrefix = 'vite-dep-pre-bundle-external:'

const cjsExternalFacadeNamespace = 'vite:cjs-external-facade'
const nonFacadePrefix = 'vite-cjs-external-facade:'

const externalTypes = [
  'css',
  // supported pre-processor types
  'less',
  'sass',
  'scss',
  'styl',
  'stylus',
  'pcss',
  'postcss',
  // wasm
  'wasm',
  // known SFC types
  'vue',
  'svelte',
  'marko',
  'astro',
  'imba',
  // JSX/TSX may be configured to be compiled differently from how esbuild
  // handles it by default, so exclude them as well
  'jsx',
  'tsx',
  ...KNOWN_ASSET_TYPES,
]

const optionalPeerDepNamespace = 'optional-peer-dep:'
const browserExternalNamespace = 'browser-external:'

// ... (365 more lines)

Subdomains

Frequently Asked Questions

What does rolldownDepPlugin.ts do?
rolldownDepPlugin.ts is a source file in the vite codebase, written in typescript. It belongs to the DependencyOptimizer domain, PreBundler subdomain.
What functions are defined in rolldownDepPlugin.ts?
rolldownDepPlugin.ts defines 3 function(s): matchesEntireLine, rolldownCjsExternalPlugin, rolldownDepPlugin.
What does rolldownDepPlugin.ts depend on?
rolldownDepPlugin.ts imports 27 module(s): Environment, PackageCache, constants.ts, createBackCompatIdResolver, css.ts, environment.ts, escapeRegex, filter, and 19 more.
What files import rolldownDepPlugin.ts?
rolldownDepPlugin.ts is imported by 2 file(s): index.ts, rolldownDepPlugin.spec.ts.
Where is rolldownDepPlugin.ts in the architecture?
rolldownDepPlugin.ts is located at packages/vite/src/node/optimizer/rolldownDepPlugin.ts (domain: DependencyOptimizer, subdomain: PreBundler, 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