Home / File/ index.ts — astro Source File

index.ts — astro Source File

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

File typescript CoreAstro RenderingEngine 20 imports 3 functions 1 classes

Entity Profile

Dependency Diagram

graph LR
  3e7d5a30_05d3_8677_9bbe_dc57d1b07ace["index.ts"]
  fb66cdc7_16ad_43ba_51ae_37a26501b497["../core/client-directive/index.js"]
  3e7d5a30_05d3_8677_9bbe_dc57d1b07ace --> fb66cdc7_16ad_43ba_51ae_37a26501b497
  98277c9f_2ef4_8553_dbba_3908c3aeda5e["../../core/config/schemas/index.js"]
  3e7d5a30_05d3_8677_9bbe_dc57d1b07ace --> 98277c9f_2ef4_8553_dbba_3908c3aeda5e
  f7dbbd79_1b30_42d2_a656_b19b2a675798["../core/config/validate.js"]
  3e7d5a30_05d3_8677_9bbe_dc57d1b07ace --> f7dbbd79_1b30_42d2_a656_b19b2a675798
  dd2fe7bd_2244_3ff4_38ec_5e07763d1492["../core/encryption.js"]
  3e7d5a30_05d3_8677_9bbe_dc57d1b07ace --> dd2fe7bd_2244_3ff4_38ec_5e07763d1492
  d3861967_b647_84d2_ff48_15013353bd56["../core/logger/core.js"]
  3e7d5a30_05d3_8677_9bbe_dc57d1b07ace --> d3861967_b647_84d2_ff48_15013353bd56
  23f7d7cd_59bf_0643_9f11_6d90ab431fb7["../core/logger/node.js"]
  3e7d5a30_05d3_8677_9bbe_dc57d1b07ace --> 23f7d7cd_59bf_0643_9f11_6d90ab431fb7
  52dc42d6_2faa_3b2c_8099_7f9b545b1154["../core/middleware/noop-middleware.js"]
  3e7d5a30_05d3_8677_9bbe_dc57d1b07ace --> 52dc42d6_2faa_3b2c_8099_7f9b545b1154
  7e4494c0_5563_4329_1bff_a84be66e1bc2["../core/path.js"]
  3e7d5a30_05d3_8677_9bbe_dc57d1b07ace --> 7e4494c0_5563_4329_1bff_a84be66e1bc2
  7e14fb1f_4abe_1438_9c6e_bb382e90b0fe["../core/render-context.js"]
  3e7d5a30_05d3_8677_9bbe_dc57d1b07ace --> 7e14fb1f_4abe_1438_9c6e_bb382e90b0fe
  9bb1930a_e702_9e50_4193_f803a8a2c38e["../core/routing/manifest/parts.js"]
  3e7d5a30_05d3_8677_9bbe_dc57d1b07ace --> 9bb1930a_e702_9e50_4193_f803a8a2c38e
  a1519c71_eb4f_7c62_b5c1_9d29320228d0["../routing/manifest/pattern.js"]
  3e7d5a30_05d3_8677_9bbe_dc57d1b07ace --> a1519c71_eb4f_7c62_b5c1_9d29320228d0
  2f5efc82_d620_d82e_dfb0_82534e303212["./segment.js"]
  3e7d5a30_05d3_8677_9bbe_dc57d1b07ace --> 2f5efc82_d620_d82e_dfb0_82534e303212
  9e624f62_bcfa_4352_e9a0_dd454823f706["../../runtime/server/index.js"]
  3e7d5a30_05d3_8677_9bbe_dc57d1b07ace --> 9e624f62_bcfa_4352_e9a0_dd454823f706
  624e5f97_7f83_f926_3407_b10786361e90["./slot.js"]
  3e7d5a30_05d3_8677_9bbe_dc57d1b07ace --> 624e5f97_7f83_f926_3407_b10786361e90
  style 3e7d5a30_05d3_8677_9bbe_dc57d1b07ace fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import { posix } from 'node:path';
import { getDefaultClientDirectives } from '../core/client-directive/index.js';
import { ASTRO_CONFIG_DEFAULTS } from '../core/config/schemas/index.js';
import { validateConfig } from '../core/config/validate.js';
import { createKey } from '../core/encryption.js';
import { Logger } from '../core/logger/core.js';
import { nodeLogDestination } from '../core/logger/node.js';
import { NOOP_MIDDLEWARE_FN } from '../core/middleware/noop-middleware.js';
import { removeLeadingForwardSlash } from '../core/path.js';
import { RenderContext } from '../core/render-context.js';
import { getParts } from '../core/routing/manifest/parts.js';
import { getPattern } from '../core/routing/manifest/pattern.js';
import { validateSegment } from '../core/routing/manifest/segment.js';
import type { AstroComponentFactory } from '../runtime/server/index.js';
import { SlotString } from '../runtime/server/render/slot.js';
import type { ComponentInstance } from '../types/astro.js';
import type { AstroMiddlewareInstance, MiddlewareHandler, Props } from '../types/public/common.js';
import type { AstroConfig, AstroUserConfig } from '../types/public/config.js';
import type {
	NamedSSRLoadedRendererValue,
	RouteData,
	RouteType,
	SSRLoadedRenderer,
	SSRLoadedRendererValue,
	SSRManifest,
	SSRResult,
} from '../types/public/internal.js';
import { ContainerPipeline } from './pipeline.js';

/**
 * Public type, used for integrations to define a renderer for the container API
 * @deprecated Use `AstroRenderer` instead.
 */
export type ContainerRenderer = {
	/**
	 * The name of the renderer.
	 */
	name: string;
	/**
	 * The entrypoint that is used to render a component on the server
	 */
	serverEntrypoint: string;
};

/**
 * Options to be passed when rendering a route
 */
export type ContainerRenderOptions = {
	/**
	 * If your component renders slots, that's where you want to fill the slots.
	 * A single slot should have the `default` field:
	 *
	 * ## Examples
	 *
	 * **Default slot**
	 *
	 * ```js
	 * container.renderToString(Component, { slots: { default: "Some value"}});
	 * ```
	 *
// ... (581 more lines)

Domain

Subdomains

Dependencies

  • ../../core/config/schemas/index.js
  • ../../runtime/server/index.js
  • ../core/client-directive/index.js
  • ../core/config/validate.js
  • ../core/encryption.js
  • ../core/logger/core.js
  • ../core/logger/node.js
  • ../core/middleware/noop-middleware.js
  • ../core/path.js
  • ../core/render-context.js
  • ../core/routing/manifest/parts.js
  • ../routing/manifest/pattern.js
  • ../types/astro.js
  • ../types/public/common.js
  • ../types/public/config.js
  • ../types/public/internal.js
  • ./pipeline.js
  • ./segment.js
  • ./slot.js
  • node:path

Frequently Asked Questions

What does index.ts do?
index.ts is a source file in the astro codebase, written in typescript. It belongs to the CoreAstro domain, RenderingEngine subdomain.
What functions are defined in index.ts?
index.ts defines 3 function(s): createManifest, isNamedRenderer, markAllSlotsAsSlotString.
What does index.ts depend on?
index.ts imports 20 module(s): ../../core/config/schemas/index.js, ../../runtime/server/index.js, ../core/client-directive/index.js, ../core/config/validate.js, ../core/encryption.js, ../core/logger/core.js, ../core/logger/node.js, ../core/middleware/noop-middleware.js, and 12 more.
Where is index.ts in the architecture?
index.ts is located at packages/astro/src/container/index.ts (domain: CoreAstro, subdomain: RenderingEngine, directory: packages/astro/src/container).

Analyze Your Own Codebase

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

Try Supermodel Free