Home / Function/ redirectRouteGenerate() — astro Function Reference

redirectRouteGenerate() — astro Function Reference

Architecture documentation for the redirectRouteGenerate() function in render.ts from the astro codebase.

Entity Profile

Dependency Diagram

graph TD
  94c0ccaf_805c_68a8_d3eb_cf64e5be918a["redirectRouteGenerate()"]
  257bae1e_85a4_d9fb_5253_5efdfeba739a["render.ts"]
  94c0ccaf_805c_68a8_d3eb_cf64e5be918a -->|defined in| 257bae1e_85a4_d9fb_5253_5efdfeba739a
  db301d98_2cae_ad49_5e45_32ec4a92b278["renderRedirect()"]
  db301d98_2cae_ad49_5e45_32ec4a92b278 -->|calls| 94c0ccaf_805c_68a8_d3eb_cf64e5be918a
  845c0f9c_0fb3_6374_3477_0790d24822d4["redirectIsExternal()"]
  94c0ccaf_805c_68a8_d3eb_cf64e5be918a -->|calls| 845c0f9c_0fb3_6374_3477_0790d24822d4
  style 94c0ccaf_805c_68a8_d3eb_cf64e5be918a fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/astro/src/core/redirects/render.ts lines 34–59

function redirectRouteGenerate(renderContext: RenderContext): string {
	const {
		params,
		routeData: { redirect, redirectRoute },
		pipeline,
	} = renderContext;

	if (typeof redirectRoute !== 'undefined') {
		const generate = getRouteGenerator(redirectRoute.segments, pipeline.manifest.trailingSlash);
		return generate(params) || redirectRoute?.pathname || '/';
	} else if (typeof redirect === 'string') {
		if (redirectIsExternal(redirect)) {
			return redirect;
		} else {
			let target = redirect;
			for (const param of Object.keys(params)) {
				const paramValue = params[param]!;
				target = target.replace(`[${param}]`, paramValue).replace(`[...${param}]`, paramValue);
			}
			return target;
		}
	} else if (typeof redirect === 'undefined') {
		return '/';
	}
	return redirect.destination;
}

Domain

Subdomains

Called By

Frequently Asked Questions

What does redirectRouteGenerate() do?
redirectRouteGenerate() is a function in the astro codebase, defined in packages/astro/src/core/redirects/render.ts.
Where is redirectRouteGenerate() defined?
redirectRouteGenerate() is defined in packages/astro/src/core/redirects/render.ts at line 34.
What does redirectRouteGenerate() call?
redirectRouteGenerate() calls 1 function(s): redirectIsExternal.
What calls redirectRouteGenerate()?
redirectRouteGenerate() is called by 1 function(s): renderRedirect.

Analyze Your Own Codebase

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

Try Supermodel Free