memoryFilesMiddleware() — vite Function Reference
Architecture documentation for the memoryFilesMiddleware() function in memoryFiles.ts from the vite codebase.
Entity Profile
Dependency Diagram
graph TD 1fadc87e_464c_941d_c8c8_dcd6d544b71e["memoryFilesMiddleware()"] d46a2918_0fad_3b8f_cba9_da7ff903ffa1["memoryFiles.ts"] 1fadc87e_464c_941d_c8c8_dcd6d544b71e -->|defined in| d46a2918_0fad_3b8f_cba9_da7ff903ffa1 24ecf2a1_3c09_d451_76f3_9485b4e993f8["_createServer()"] 24ecf2a1_3c09_d451_76f3_9485b4e993f8 -->|calls| 1fadc87e_464c_941d_c8c8_dcd6d544b71e 10b9dea8_362c_1af2_93be_afa4dd9aed9e["cleanUrl()"] 1fadc87e_464c_941d_c8c8_dcd6d544b71e -->|calls| 10b9dea8_362c_1af2_93be_afa4dd9aed9e 983c34fc_39a0_52cc_1c78_f5c74a361a26["get()"] 1fadc87e_464c_941d_c8c8_dcd6d544b71e -->|calls| 983c34fc_39a0_52cc_1c78_f5c74a361a26 style 1fadc87e_464c_941d_c8c8_dcd6d544b71e fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/vite/src/node/server/middlewares/memoryFiles.ts lines 7–52
export function memoryFilesMiddleware(
server: ViteDevServer,
): Connect.NextHandleFunction {
const memoryFiles =
server.environments.client instanceof FullBundleDevEnvironment
? server.environments.client.memoryFiles
: undefined
if (!memoryFiles) {
throw new Error('memoryFilesMiddleware can only be used for fullBundleMode')
}
const headers = server.config.server.headers
return function viteMemoryFilesMiddleware(req, res, next) {
const cleanedUrl = cleanUrl(req.url!)
if (cleanedUrl.endsWith('.html')) {
return next()
}
const pathname = decodeURIComponent(cleanedUrl)
const filePath = pathname.slice(1) // remove first /
const file = memoryFiles.get(filePath)
if (file) {
if (file.etag) {
if (req.headers['if-none-match'] === file.etag) {
res.statusCode = 304
res.end()
return
}
res.setHeader('Etag', file.etag)
}
const mime = mrmime.lookup(filePath)
if (mime) {
res.setHeader('Content-Type', mime)
}
for (const name in headers) {
res.setHeader(name, headers[name]!)
}
return res.end(file.source)
}
next()
}
}
Domain
Subdomains
Calls
Called By
Source
Frequently Asked Questions
What does memoryFilesMiddleware() do?
memoryFilesMiddleware() is a function in the vite codebase, defined in packages/vite/src/node/server/middlewares/memoryFiles.ts.
Where is memoryFilesMiddleware() defined?
memoryFilesMiddleware() is defined in packages/vite/src/node/server/middlewares/memoryFiles.ts at line 7.
What does memoryFilesMiddleware() call?
memoryFilesMiddleware() calls 2 function(s): cleanUrl, get.
What calls memoryFilesMiddleware()?
memoryFilesMiddleware() is called by 1 function(s): _createServer.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free