app.js — vite Source File
Architecture documentation for app.js, a javascript file in the vite codebase. 2 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR d44c698e_d1cd_ed19_8d50_613125d5aef6["app.js"] 0192bf72_c61f_e001_4c94_76ff7d67fe84["utils.js"] d44c698e_d1cd_ed19_8d50_613125d5aef6 --> 0192bf72_c61f_e001_4c94_76ff7d67fe84 cf21fac9_e015_27a5_f6ea_3605ffc57cc6["escapeHtml"] d44c698e_d1cd_ed19_8d50_613125d5aef6 --> cf21fac9_e015_27a5_f6ea_3605ffc57cc6 style d44c698e_d1cd_ed19_8d50_613125d5aef6 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
import { escapeHtml } from './utils'
const pathRenderers = {
'/': renderRoot,
'/circular-dep': renderCircularDep,
'/circular-import': renderCircularImport,
'/circular-import2': renderCircularImport2,
'/forked-deadlock-static-imports': renderForkedDeadlockStaticImports,
'/forked-deadlock-dynamic-imports': renderForkedDeadlockDynamicImports,
'/import-meta': renderImportMeta,
}
export async function render(url, rootDir) {
const pathname = url.replace(/#[^#]*$/, '').replace(/\?[^?]*$/, '')
const renderer = pathRenderers[pathname]
if (renderer) {
return await renderer(rootDir)
}
return '404'
}
async function renderRoot(rootDir) {
const paths = Object.keys(pathRenderers).filter((key) => key !== '/')
return `
<ul>
${paths
.map(
(path) =>
`<li><a href="${escapeHtml(path)}">${escapeHtml(path)}</a></li>`,
)
.join('\n')}
</ul>
`
}
async function renderCircularDep(rootDir) {
const { getValueAB } = await import('./circular-dep-init/circular-dep-init')
return `<div class="circ-dep-init">${escapeHtml(getValueAB())}</div>`
}
async function renderCircularImport(rootDir) {
const { logA } = await import('./circular-import/index.js')
return `<div class="circ-import">${escapeHtml(logA())}</div>`
}
async function renderCircularImport2(rootDir) {
const { logA } = await import('./circular-import2/index.js')
return `<div class="circ-import">${escapeHtml(logA())}</div>`
}
async function renderForkedDeadlockStaticImports(rootDir) {
const { commonModuleExport } = await import('./forked-deadlock/common-module')
commonModuleExport()
return `<div class="forked-deadlock-static-imports">rendered</div>`
}
async function renderForkedDeadlockDynamicImports(rootDir) {
const { commonModuleExport } =
await import('./forked-deadlock/dynamic-imports/common-module')
await commonModuleExport()
return `<div class="forked-deadlock-dynamic-imports">rendered</div>`
}
async function renderImportMeta(rootDir) {
const metaUrl = import.meta.url
const resolveResult = import.meta.resolve('./app.js')
const metaMain = import.meta.main
return (
`<div class="import-meta-url">${escapeHtml(metaUrl)}</div>` +
`<div class="import-meta-resolve">${escapeHtml(resolveResult)}</div>` +
`<div class="import-meta-main">${escapeHtml(String(metaMain))}</div>`
)
}
Domain
Subdomains
Functions
Dependencies
Source
Frequently Asked Questions
What does app.js do?
app.js is a source file in the vite codebase, written in javascript. It belongs to the ViteCore domain, BuildPipeline subdomain.
What functions are defined in app.js?
app.js defines 8 function(s): render, renderCircularDep, renderCircularImport, renderCircularImport2, renderForkedDeadlockDynamicImports, renderForkedDeadlockStaticImports, renderImportMeta, renderRoot.
What does app.js depend on?
app.js imports 2 module(s): escapeHtml, utils.js.
Where is app.js in the architecture?
app.js is located at playground/ssr/src/app.js (domain: ViteCore, subdomain: BuildPipeline, directory: playground/ssr/src).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free