Home / Function/ renderToStaticMarkup() — astro Function Reference

renderToStaticMarkup() — astro Function Reference

Architecture documentation for the renderToStaticMarkup() function in server.ts from the astro codebase.

Entity Profile

Dependency Diagram

graph TD
  b93c3061_d0bb_13fa_7748_d8013ed34365["renderToStaticMarkup()"]
  d27cc44a_e2ff_86d0_e654_f90b112f1bba["server.ts"]
  b93c3061_d0bb_13fa_7748_d8013ed34365 -->|defined in| d27cc44a_e2ff_86d0_e654_f90b112f1bba
  bc2036f2_5936_19f6_593b_03d811c851f6["slotName()"]
  b93c3061_d0bb_13fa_7748_d8013ed34365 -->|calls| bc2036f2_5936_19f6_593b_03d811c851f6
  5703d90b_3c3b_3f89_f0a7_d0c7a039aa5b["shouldHydrate()"]
  b93c3061_d0bb_13fa_7748_d8013ed34365 -->|calls| 5703d90b_3c3b_3f89_f0a7_d0c7a039aa5b
  style b93c3061_d0bb_13fa_7748_d8013ed34365 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/integrations/preact/src/server.ts lines 51–91

async function renderToStaticMarkup(
	this: RendererContext,
	Component: any,
	props: Record<string, any>,
	{ default: children, ...slotted }: Record<string, any>,
	metadata: AstroComponentMetadata | undefined,
) {
	const ctx = getContext(this.result);

	const slots: Record<string, ReturnType<typeof h>> = {};
	for (const [key, value] of Object.entries(slotted)) {
		const name = slotName(key);
		slots[name] = h(StaticHtml, {
			hydrate: shouldHydrate(metadata),
			value,
			name,
		}) as VNode<any>;
	}

	// Restore signals back onto props so that they will be passed as-is to components
	let propsMap = restoreSignalsOnProps(ctx, props);

	const newProps = { ...props, ...slots };

	const attrs: AstroPreactAttrs = {};
	serializeSignals(ctx, props, attrs, propsMap);

	const vNode: VNode<any> = h(
		Component,
		newProps,
		children != null
			? h(StaticHtml, {
					hydrate: shouldHydrate(metadata),
					value: children,
				})
			: children,
	);

	const html = await renderToStringAsync(vNode);
	return { attrs, html };
}

Domain

Subdomains

Frequently Asked Questions

What does renderToStaticMarkup() do?
renderToStaticMarkup() is a function in the astro codebase, defined in packages/integrations/preact/src/server.ts.
Where is renderToStaticMarkup() defined?
renderToStaticMarkup() is defined in packages/integrations/preact/src/server.ts at line 51.
What does renderToStaticMarkup() call?
renderToStaticMarkup() calls 2 function(s): shouldHydrate, slotName.

Analyze Your Own Codebase

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

Try Supermodel Free