MCPcopy
hub / github.com/vitejs/vite / getEnv

Function getEnv

packages/vite/src/node/plugins/importAnalysis.ts:233–255  ·  view source on GitHub ↗
(ssr: boolean)

Source from the content-addressed store, hash-verified

231 let _env: string | undefined
232 let _ssrEnv: string | undefined
233 function getEnv(ssr: boolean) {
234 if (!_ssrEnv || !_env) {
235 const importMetaEnvKeys: Record<string, any> = {}
236 const userDefineEnv: Record<string, any> = {}
237 for (const key in config.env) {
238 importMetaEnvKeys[key] = JSON.stringify(config.env[key])
239 }
240 for (const key in config.define) {
241 // non-import.meta.env.* is handled in `clientInjection` plugin
242 if (key.startsWith('import.meta.env.')) {
243 userDefineEnv[key.slice(16)] = config.define[key]
244 }
245 }
246 const env = `import.meta.env = ${serializeDefine({
247 ...importMetaEnvKeys,
248 SSR: '__vite_ssr__',
249 ...userDefineEnv,
250 })};`
251 _ssrEnv = env.replace('__vite_ssr__', 'true')
252 _env = env.replace('__vite_ssr__', 'false')
253 }
254 return ssr ? _ssrEnv : _env
255 }
256
257 return {
258 name: 'vite:import-analysis',

Callers 3

resolveConfigFunction · 0.85
transformFunction · 0.85
getDepsOptimizerFunction · 0.85

Calls 1

serializeDefineFunction · 0.90

Tested by

no test coverage detected