ssrTransform.spec.ts — vite Source File
Architecture documentation for ssrTransform.spec.ts, a typescript file in the vite codebase. 10 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR e13631c4_f21a_fed4_e229_655ad83f39af["ssrTransform.spec.ts"] 926e3b98_b813_2ff8_abb3_16447ab95544["esbuild.ts"] e13631c4_f21a_fed4_e229_655ad83f39af --> 926e3b98_b813_2ff8_abb3_16447ab95544 bf4a41be_9dbf_35be_2072_4283cd478ae7["transformWithEsbuild"] e13631c4_f21a_fed4_e229_655ad83f39af --> bf4a41be_9dbf_35be_2072_4283cd478ae7 20c20aaf_ad5b_4014_72b5_c8262a2b5be1["ssrTransform.ts"] e13631c4_f21a_fed4_e229_655ad83f39af --> 20c20aaf_ad5b_4014_72b5_c8262a2b5be1 1ee4af98_1554_7714_4370_05ac2b2589cd["ssrTransform"] e13631c4_f21a_fed4_e229_655ad83f39af --> 1ee4af98_1554_7714_4370_05ac2b2589cd 8377ae20_ffba_2f9c_bded_58742b7f1c3b["index.ts"] e13631c4_f21a_fed4_e229_655ad83f39af --> 8377ae20_ffba_2f9c_bded_58742b7f1c3b e6032fbc_44cf_58d6_868d_dd15106c18c5["node:fs"] e13631c4_f21a_fed4_e229_655ad83f39af --> e6032fbc_44cf_58d6_868d_dd15106c18c5 6feed3e8_55b8_cce7_b5ef_e40b872585f7["node:url"] e13631c4_f21a_fed4_e229_655ad83f39af --> 6feed3e8_55b8_cce7_b5ef_e40b872585f7 a340ba46_b2b7_3048_3bb3_6907a74c8464["vitest"] e13631c4_f21a_fed4_e229_655ad83f39af --> a340ba46_b2b7_3048_3bb3_6907a74c8464 693ca867_249b_3e5a_0ce1_8930413b7fcd["rolldown"] e13631c4_f21a_fed4_e229_655ad83f39af --> 693ca867_249b_3e5a_0ce1_8930413b7fcd b84d7b55_2c14_7c59_01d9_b663416bfad1["trace-mapping"] e13631c4_f21a_fed4_e229_655ad83f39af --> b84d7b55_2c14_7c59_01d9_b663416bfad1 style e13631c4_f21a_fed4_e229_655ad83f39af fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
import { readFileSync } from 'node:fs'
import { fileURLToPath } from 'node:url'
import { assert, expect, test } from 'vitest'
import type { SourceMap } from 'rolldown'
import { TraceMap, originalPositionFor } from '@jridgewell/trace-mapping'
import { transformWithEsbuild } from '../../plugins/esbuild'
import { ssrTransform } from '../ssrTransform'
import { createServer } from '../..'
const ssrTransformSimple = async (code: string, url = '') =>
ssrTransform(code, null, url, code)
const ssrTransformSimpleCode = async (code: string, url?: string) =>
(await ssrTransformSimple(code, url))?.code
test('default import', async () => {
expect(
await ssrTransformSimpleCode(`import foo from 'vue';console.log(foo.bar)`),
).toMatchInlineSnapshot(
`
"const __vite_ssr_import_0__ = await __vite_ssr_import__("vue", {"importedNames":["default"]});
console.log(__vite_ssr_import_0__.default.bar)"
`,
)
})
test('named import', async () => {
expect(
await ssrTransformSimpleCode(
`import { ref } from 'vue';function foo() { return ref(0) }`,
),
).toMatchInlineSnapshot(
`
"const __vite_ssr_import_0__ = await __vite_ssr_import__("vue", {"importedNames":["ref"]});
function foo() { return (0,__vite_ssr_import_0__.ref)(0) }"
`,
)
})
test('named import: arbitrary module namespace specifier', async () => {
expect(
await ssrTransformSimpleCode(
`import { "some thing" as ref } from 'vue';function foo() { return ref(0) }`,
),
).toMatchInlineSnapshot(
`
"const __vite_ssr_import_0__ = await __vite_ssr_import__("vue", {"importedNames":["some thing"]});
function foo() { return (0,__vite_ssr_import_0__["some thing"])(0) }"
`,
)
})
test('namespace import', async () => {
expect(
await ssrTransformSimpleCode(
`import * as vue from 'vue';function foo() { return vue.ref(0) }`,
),
).toMatchInlineSnapshot(
`
"const __vite_ssr_import_0__ = await __vite_ssr_import__("vue");
function foo() { return __vite_ssr_import_0__.ref(0) }"
// ... (1562 more lines)
Domain
Subdomains
Dependencies
- esbuild.ts
- index.ts
- node:fs
- node:url
- rolldown
- ssrTransform
- ssrTransform.ts
- trace-mapping
- transformWithEsbuild
- vitest
Source
Frequently Asked Questions
What does ssrTransform.spec.ts do?
ssrTransform.spec.ts is a source file in the vite codebase, written in typescript. It belongs to the ViteCore domain, ConfigEngine subdomain.
What functions are defined in ssrTransform.spec.ts?
ssrTransform.spec.ts defines 2 function(s): ssrTransformSimple, ssrTransformSimpleCode.
What does ssrTransform.spec.ts depend on?
ssrTransform.spec.ts imports 10 module(s): esbuild.ts, index.ts, node:fs, node:url, rolldown, ssrTransform, ssrTransform.ts, trace-mapping, and 2 more.
Where is ssrTransform.spec.ts in the architecture?
ssrTransform.spec.ts is located at packages/vite/src/node/ssr/__tests__/ssrTransform.spec.ts (domain: ViteCore, subdomain: ConfigEngine, directory: packages/vite/src/node/ssr/__tests__).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free