create-bundle-renderer.ts — vue Source File
Architecture documentation for create-bundle-renderer.ts, a typescript file in the vue codebase. 8 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR f74c7f32_6b84_af20_b750_d2532206091d["create-bundle-renderer.ts"] 89eacf5c_deee_e42e_d519_69cb05e48e63["util.ts"] f74c7f32_6b84_af20_b750_d2532206091d --> 89eacf5c_deee_e42e_d519_69cb05e48e63 46da04ac_8d5c_f991_fddd_ba38b64b6398["createPromiseCallback"] f74c7f32_6b84_af20_b750_d2532206091d --> 46da04ac_8d5c_f991_fddd_ba38b64b6398 5a1c51f2_4876_fec0_df27_1d6ef59f031a["create-bundle-runner.ts"] f74c7f32_6b84_af20_b750_d2532206091d --> 5a1c51f2_4876_fec0_df27_1d6ef59f031a e142ddd7_db7e_6e31_6600_9ceabc3f3fa2["createBundleRunner"] f74c7f32_6b84_af20_b750_d2532206091d --> e142ddd7_db7e_6e31_6600_9ceabc3f3fa2 53b05d28_585e_4d3e_ad81_d6a7ef6875f2["create-renderer.ts"] f74c7f32_6b84_af20_b750_d2532206091d --> 53b05d28_585e_4d3e_ad81_d6a7ef6875f2 1adeac87_d26d_ac40_0174_e261a2e75a41["source-map-support.ts"] f74c7f32_6b84_af20_b750_d2532206091d --> 1adeac87_d26d_ac40_0174_e261a2e75a41 53c38896_e852_adea_86c6_0c45a1a6707f["createSourceMapConsumers"] f74c7f32_6b84_af20_b750_d2532206091d --> 53c38896_e852_adea_86c6_0c45a1a6707f da88ddd6_89c9_1ce7_3552_bd114f03e481["rewriteErrorTrace"] f74c7f32_6b84_af20_b750_d2532206091d --> da88ddd6_89c9_1ce7_3552_bd114f03e481 style f74c7f32_6b84_af20_b750_d2532206091d fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
import { createPromiseCallback } from '../util'
import { createBundleRunner } from './create-bundle-runner'
import type { Renderer, RenderOptions } from '../create-renderer'
import {
createSourceMapConsumers,
rewriteErrorTrace
} from './source-map-support'
const fs = require('fs')
const path = require('path')
const PassThrough = require('stream').PassThrough
const INVALID_MSG =
'Invalid server-rendering bundle format. Should be a string ' +
'or a bundle Object of type:\n\n' +
`{
entry: string;
files: { [filename: string]: string; };
maps: { [filename: string]: string; };
}\n`
// The render bundle can either be a string (single bundled file)
// or a bundle manifest object generated by vue-ssr-webpack-plugin.
type RenderBundle = {
basedir?: string
entry: string
files: { [filename: string]: string }
maps: { [filename: string]: string }
modules?: { [filename: string]: Array<string> }
}
export function createBundleRendererCreator(
createRenderer: (options?: RenderOptions) => Renderer
) {
return function createBundleRenderer(
bundle: string | RenderBundle,
rendererOptions: RenderOptions = {}
) {
let files, entry, maps
let basedir = rendererOptions.basedir
// load bundle if given filepath
if (
typeof bundle === 'string' &&
/\.js(on)?$/.test(bundle) &&
path.isAbsolute(bundle)
) {
if (fs.existsSync(bundle)) {
const isJSON = /\.json$/.test(bundle)
basedir = basedir || path.dirname(bundle)
bundle = fs.readFileSync(bundle, 'utf-8')
if (isJSON) {
try {
// @ts-expect-error
bundle = JSON.parse(bundle)
} catch (e: any) {
throw new Error(`Invalid JSON bundle file: ${bundle}`)
}
}
} else {
// ... (100 more lines)
Domain
Subdomains
Functions
Types
Dependencies
Source
Frequently Asked Questions
What does create-bundle-renderer.ts do?
create-bundle-renderer.ts is a source file in the vue codebase, written in typescript. It belongs to the ServerRenderer domain, BundleRenderer subdomain.
What functions are defined in create-bundle-renderer.ts?
create-bundle-renderer.ts defines 1 function(s): createBundleRendererCreator.
What does create-bundle-renderer.ts depend on?
create-bundle-renderer.ts imports 8 module(s): create-bundle-runner.ts, create-renderer.ts, createBundleRunner, createPromiseCallback, createSourceMapConsumers, rewriteErrorTrace, source-map-support.ts, util.ts.
Where is create-bundle-renderer.ts in the architecture?
create-bundle-renderer.ts is located at packages/server-renderer/src/bundle-renderer/create-bundle-renderer.ts (domain: ServerRenderer, subdomain: BundleRenderer, directory: packages/server-renderer/src/bundle-renderer).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free