Home / Function/ resolveEnvironmentOptions() — vite Function Reference

resolveEnvironmentOptions() — vite Function Reference

Architecture documentation for the resolveEnvironmentOptions() function in config.ts from the vite codebase.

Entity Profile

Dependency Diagram

graph TD
  05b85d27_e543_a69f_707e_8e37768b0fda["resolveEnvironmentOptions()"]
  7da774f9_eca5_d54e_6e01_6bee7d460a2b["config.ts"]
  05b85d27_e543_a69f_707e_8e37768b0fda -->|defined in| 7da774f9_eca5_d54e_6e01_6bee7d460a2b
  58c4a210_68fe_1b4d_ed49_d59203f97ef1["resolveConfig()"]
  58c4a210_68fe_1b4d_ed49_d59203f97ef1 -->|calls| 05b85d27_e543_a69f_707e_8e37768b0fda
  1281fc07_d07b_eda1_0adf_a01736cf4431["resolveEnvironmentResolveOptions()"]
  05b85d27_e543_a69f_707e_8e37768b0fda -->|calls| 1281fc07_d07b_eda1_0adf_a01736cf4431
  9d98f746_61f2_7414_b955_969eb9cb18d5["resolveDepOptimizationOptions()"]
  05b85d27_e543_a69f_707e_8e37768b0fda -->|calls| 9d98f746_61f2_7414_b955_969eb9cb18d5
  3c538550_569a_9aaf_ddb0_57da8074cfca["resolveDevEnvironmentOptions()"]
  05b85d27_e543_a69f_707e_8e37768b0fda -->|calls| 3c538550_569a_9aaf_ddb0_57da8074cfca
  5a2ddafa_69c5_82bb_4c9e_32634cfa6eed["resolveBuildEnvironmentOptions()"]
  05b85d27_e543_a69f_707e_8e37768b0fda -->|calls| 5a2ddafa_69c5_82bb_4c9e_32634cfa6eed
  style 05b85d27_e543_a69f_707e_8e37768b0fda fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/vite/src/node/config.ts lines 915–991

function resolveEnvironmentOptions(
  options: EnvironmentOptions,
  alias: Alias[],
  preserveSymlinks: boolean,
  forceOptimizeDeps: boolean | undefined,
  logger: Logger,
  environmentName: string,
  isBundledDev: boolean,
  // Backward compatibility
  isSsrTargetWebworkerSet?: boolean,
  preTransformRequests?: boolean,
): ResolvedEnvironmentOptions {
  const isClientEnvironment = environmentName === 'client'
  const consumer =
    options.consumer ?? (isClientEnvironment ? 'client' : 'server')
  const isSsrTargetWebworkerEnvironment =
    isSsrTargetWebworkerSet && environmentName === 'ssr'

  if (options.define?.['process.env']) {
    const processEnvDefine = options.define['process.env']
    if (typeof processEnvDefine === 'object') {
      const pathKey = Object.entries(processEnvDefine).find(
        // check with toLowerCase() to match with `Path` / `PATH` (Windows uses `Path`)
        ([key, value]) => key.toLowerCase() === 'path' && !!value,
      )?.[0]
      if (pathKey) {
        logger.warnOnce(
          colors.yellow(
            `The \`define\` option contains an object with ${JSON.stringify(pathKey)} for "process.env" key. ` +
              'It looks like you may have passed the entire `process.env` object to `define`, ' +
              'which can unintentionally expose all environment variables. ' +
              'This poses a security risk and is discouraged.',
          ),
        )
      }
    }
  }

  const resolve = resolveEnvironmentResolveOptions(
    options.resolve,
    alias,
    preserveSymlinks,
    logger,
    consumer,
    isSsrTargetWebworkerEnvironment,
  )
  return {
    define: options.define,
    resolve,
    keepProcessEnv:
      options.keepProcessEnv ??
      (isSsrTargetWebworkerEnvironment ? false : consumer === 'server'),
    consumer,
    optimizeDeps: resolveDepOptimizationOptions(
      options.optimizeDeps,
      resolve.preserveSymlinks,
      forceOptimizeDeps,
      consumer,
      logger,
    ),
    dev: resolveDevEnvironmentOptions(
      options.dev,
      environmentName,
      consumer,
      preTransformRequests,
    ),
    build: resolveBuildEnvironmentOptions(
      options.build ?? {},
      logger,
      consumer,
      isBundledDev,
    ),
    plugins: undefined!, // to be resolved later
    // will be set by `setOptimizeDepsPluginNames` later
    optimizeDepsPluginNames: undefined!,
  }
}

Domain

Subdomains

Called By

Frequently Asked Questions

What does resolveEnvironmentOptions() do?
resolveEnvironmentOptions() is a function in the vite codebase, defined in packages/vite/src/node/config.ts.
Where is resolveEnvironmentOptions() defined?
resolveEnvironmentOptions() is defined in packages/vite/src/node/config.ts at line 915.
What does resolveEnvironmentOptions() call?
resolveEnvironmentOptions() calls 4 function(s): resolveBuildEnvironmentOptions, resolveDepOptimizationOptions, resolveDevEnvironmentOptions, resolveEnvironmentResolveOptions.
What calls resolveEnvironmentOptions()?
resolveEnvironmentOptions() is called by 1 function(s): resolveConfig.

Analyze Your Own Codebase

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

Try Supermodel Free