Home / File/ pipeline.ts — astro Source File

pipeline.ts — astro Source File

Architecture documentation for pipeline.ts, a typescript file in the astro codebase. 18 imports, 0 dependents.

File typescript CoreAstro RenderingEngine 18 imports 1 classes

Entity Profile

Dependency Diagram

graph LR
  59918ded_22d2_46a8_b3ae_67789eee6ce1["pipeline.ts"]
  be18ffb8_46cb_5266_8b78_659c01f80146["../core/base-pipeline.js"]
  59918ded_22d2_46a8_b3ae_67789eee6ce1 --> be18ffb8_46cb_5266_8b78_659c01f80146
  7216d952_4e4a_2d18_a85b_74b4ace79e2b["../core/constants.js"]
  59918ded_22d2_46a8_b3ae_67789eee6ce1 --> 7216d952_4e4a_2d18_a85b_74b4ace79e2b
  0e18005f_823b_9864_a584_bf040da30d0c["../core/errors/dev/index.js"]
  59918ded_22d2_46a8_b3ae_67789eee6ce1 --> 0e18005f_823b_9864_a584_bf040da30d0c
  ef8a1e3f_e350_75a6_b92d_62a8566d8db9["../core/errors/index.js"]
  59918ded_22d2_46a8_b3ae_67789eee6ce1 --> ef8a1e3f_e350_75a6_b92d_62a8566d8db9
  d3861967_b647_84d2_ff48_15013353bd56["../core/logger/core.js"]
  59918ded_22d2_46a8_b3ae_67789eee6ce1 --> d3861967_b647_84d2_ff48_15013353bd56
  32f8c7d4_d66e_e0cf_b019_46ec3f2fea31["../core/module-loader/index.js"]
  59918ded_22d2_46a8_b3ae_67789eee6ce1 --> 32f8c7d4_d66e_e0cf_b019_46ec3f2fea31
  45341dc4_99b6_1351_f590_fc377cd58298["../core/redirects/index.js"]
  59918ded_22d2_46a8_b3ae_67789eee6ce1 --> 45341dc4_99b6_1351_f590_fc377cd58298
  feb254e4_908a_ebac_cf06_c741bffea12a["../core/render/index.js"]
  59918ded_22d2_46a8_b3ae_67789eee6ce1 --> feb254e4_908a_ebac_cf06_c741bffea12a
  313916b3_64e3_9a00_0504_f5123ae24ad8["../core/routing/default.js"]
  59918ded_22d2_46a8_b3ae_67789eee6ce1 --> 313916b3_64e3_9a00_0504_f5123ae24ad8
  c923dac6_4ccb_a783_dee2_4bc95f0ebcf1["../core/routing/index.js"]
  59918ded_22d2_46a8_b3ae_67789eee6ce1 --> c923dac6_4ccb_a783_dee2_4bc95f0ebcf1
  99bef061_4ac1_91d4_947d_810691aafb80["../core/routing/rewrite.js"]
  59918ded_22d2_46a8_b3ae_67789eee6ce1 --> 99bef061_4ac1_91d4_947d_810691aafb80
  f68003f1_292f_ca44_03ce_21af87a33c7b["../core/util.js"]
  59918ded_22d2_46a8_b3ae_67789eee6ce1 --> f68003f1_292f_ca44_03ce_21af87a33c7b
  e9b74c5a_8d34_34a7_e196_5e41b87214aa["../types/astro.js"]
  59918ded_22d2_46a8_b3ae_67789eee6ce1 --> e9b74c5a_8d34_34a7_e196_5e41b87214aa
  baa53824_73a3_1e03_2043_4d0c058ecca5["../types/public/index.js"]
  59918ded_22d2_46a8_b3ae_67789eee6ce1 --> baa53824_73a3_1e03_2043_4d0c058ecca5
  style 59918ded_22d2_46a8_b3ae_67789eee6ce1 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import { fileURLToPath } from 'node:url';
import { type HeadElements, Pipeline, type TryRewriteResult } from '../core/base-pipeline.js';
import { ASTRO_VERSION } from '../core/constants.js';
import { enhanceViteSSRError } from '../core/errors/dev/index.js';
import { AggregateError, CSSError, MarkdownError } from '../core/errors/index.js';
import type { Logger } from '../core/logger/core.js';
import type { ModuleLoader } from '../core/module-loader/index.js';
import { RedirectComponentInstance } from '../core/redirects/index.js';
import { loadRenderer } from '../core/render/index.js';
import { createDefaultRoutes } from '../core/routing/default.js';
import { routeIsRedirect } from '../core/routing/index.js';
import { findRouteToRewrite } from '../core/routing/rewrite.js';
import { isPage } from '../core/util.js';
import type {
	AstroSettings,
	ComponentInstance,
	ImportedDevStyle,
	RoutesList,
} from '../types/astro.js';
import type {
	DevToolbarMetadata,
	RewritePayload,
	RouteData,
	SSRElement,
	SSRLoadedRenderer,
	SSRManifest,
} from '../types/public/index.js';
import { getComponentMetadata } from '../vite-plugin-astro-server/metadata.js';
import { createResolve } from '../vite-plugin-astro-server/resolve.js';
import { PAGE_SCRIPT_ID } from '../vite-plugin-scripts/index.js';

/**
 * This Pipeline is used when the Vite SSR environment is runnable.
 */
export class RunnablePipeline extends Pipeline {
	getName(): string {
		return 'RunnablePipeline';
	}

	// renderers are loaded on every request,
	// so it needs to be mutable here unlike in other environments
	override renderers = new Array<SSRLoadedRenderer>();

	routesList: RoutesList | undefined;

	private constructor(
		readonly loader: ModuleLoader,
		readonly logger: Logger,
		readonly manifest: SSRManifest,
		readonly settings: AstroSettings,
		readonly getDebugInfo: () => Promise<string>,
		readonly defaultRoutes = createDefaultRoutes(manifest),
	) {
		const resolve = createResolve(loader, manifest.rootDir);
		const streaming = true;
		super(logger, manifest, 'development', [], resolve, streaming);
	}

	static create(
		manifestData: RoutesList,
// ... (169 more lines)

Domain

Subdomains

Dependencies

  • ../core/base-pipeline.js
  • ../core/constants.js
  • ../core/errors/dev/index.js
  • ../core/errors/index.js
  • ../core/logger/core.js
  • ../core/module-loader/index.js
  • ../core/redirects/index.js
  • ../core/render/index.js
  • ../core/routing/default.js
  • ../core/routing/index.js
  • ../core/routing/rewrite.js
  • ../core/util.js
  • ../types/astro.js
  • ../types/public/index.js
  • ../vite-plugin-astro-server/metadata.js
  • ../vite-plugin-astro-server/resolve.js
  • ./index.js
  • node:url

Frequently Asked Questions

What does pipeline.ts do?
pipeline.ts is a source file in the astro codebase, written in typescript. It belongs to the CoreAstro domain, RenderingEngine subdomain.
What does pipeline.ts depend on?
pipeline.ts imports 18 module(s): ../core/base-pipeline.js, ../core/constants.js, ../core/errors/dev/index.js, ../core/errors/index.js, ../core/logger/core.js, ../core/module-loader/index.js, ../core/redirects/index.js, ../core/render/index.js, and 10 more.
Where is pipeline.ts in the architecture?
pipeline.ts is located at packages/astro/src/vite-plugin-app/pipeline.ts (domain: CoreAstro, subdomain: RenderingEngine, directory: packages/astro/src/vite-plugin-app).

Analyze Your Own Codebase

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

Try Supermodel Free