Home / File/ serve.ts — vite Source File

serve.ts — vite Source File

Architecture documentation for serve.ts, a typescript file in the vite codebase. 4 imports, 1 dependents.

File typescript ViteCore ConfigEngine 4 imports 1 dependents 2 functions

Entity Profile

Dependency Diagram

graph LR
  c0d25153_093b_2174_5b61_48846e1615ea["serve.ts"]
  51e96894_3556_ed5c_1ede_97d449867adf["node:path"]
  c0d25153_093b_2174_5b61_48846e1615ea --> 51e96894_3556_ed5c_1ede_97d449867adf
  c61c7da5_ab1b_2881_075e_127cc87cab93["kill-port"]
  c0d25153_093b_2174_5b61_48846e1615ea --> c61c7da5_ab1b_2881_075e_127cc87cab93
  54c37fea_4fe7_2693_71cb_1276b77f55f9["vite"]
  c0d25153_093b_2174_5b61_48846e1615ea --> 54c37fea_4fe7_2693_71cb_1276b77f55f9
  d3fd5575_295b_d6be_24dd_62d277645dc9["~utils"]
  c0d25153_093b_2174_5b61_48846e1615ea --> d3fd5575_295b_d6be_24dd_62d277645dc9
  19950c0c_258c_2a21_dfd9_9d53e842218e["ssr-wasm.spec.ts"]
  19950c0c_258c_2a21_dfd9_9d53e842218e --> c0d25153_093b_2174_5b61_48846e1615ea
  style c0d25153_093b_2174_5b61_48846e1615ea fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

// this is automatically detected by playground/vitestSetup.ts and will replace
// the default e2e test serve behavior

import path from 'node:path'
import kill from 'kill-port'
import { build } from 'vite'
import { hmrPorts, isBuild, ports, rootDir } from '~utils'

export const port = ports['ssr-wasm']

export async function preServe() {
  if (isBuild) {
    await build({ root: rootDir, logLevel: 'silent' })
  }
}

export async function serve(): Promise<{ close(): Promise<void> }> {
  await kill(port)

  const { createServer } = await import(path.resolve(rootDir, 'server.js'))
  const { app, vite } = await createServer(rootDir, hmrPorts['ssr-wasm'])

  return new Promise((resolve, reject) => {
    try {
      const server = app.listen(port, () => {
        resolve({
          // for test teardown
          async close() {
            await new Promise((resolve) => {
              server.close(resolve)
            })
            if (vite) {
              await vite.close()
            }
          },
        })
      })
    } catch (e) {
      reject(e)
    }
  })
}

Domain

Subdomains

Functions

Dependencies

  • kill-port
  • node:path
  • vite
  • ~utils

Frequently Asked Questions

What does serve.ts do?
serve.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 serve.ts?
serve.ts defines 2 function(s): preServe, serve.
What does serve.ts depend on?
serve.ts imports 4 module(s): kill-port, node:path, vite, ~utils.
What files import serve.ts?
serve.ts is imported by 1 file(s): ssr-wasm.spec.ts.
Where is serve.ts in the architecture?
serve.ts is located at playground/ssr-wasm/__tests__/serve.ts (domain: ViteCore, subdomain: ConfigEngine, directory: playground/ssr-wasm/__tests__).

Analyze Your Own Codebase

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

Try Supermodel Free