@@ -36,23 +36,23 @@ export function createRedirectsFromAstroRoutes({
3636 dir,
3737 buildOutput,
3838 assets,
39- } : CreateRedirectsFromAstroRoutesParams ) {
39+ } : CreateRedirectsFromAstroRoutesParams ) : Redirects {
4040 const base =
4141 config . base && config . base !== '/'
4242 ? config . base . endsWith ( '/' )
4343 ? config . base . slice ( 0 , - 1 )
4444 : config . base
4545 : '' ;
46- const _redirects = new Redirects ( ) ;
46+ const redirects = new Redirects ( ) ;
4747
4848 for ( const [ route , dynamicTarget = '' ] of routeToDynamicTargetMap ) {
4949 const distURL = assets . get ( route . pattern ) ;
5050 // A route with a `pathname` is as static route.
5151 if ( route . pathname ) {
5252 if ( route . redirect ) {
53- // A redirect route without dynami§c parts. Get the redirect status
53+ // A redirect route without dynamic parts. Get the redirect status
5454 // from the user if provided.
55- _redirects . add ( {
55+ redirects . add ( {
5656 dynamic : false ,
5757 input : `${ base } ${ route . pathname } ` ,
5858 target : typeof route . redirect === 'object' ? route . redirect . destination : route . redirect ,
@@ -65,16 +65,18 @@ export function createRedirectsFromAstroRoutes({
6565 // If this is a static build we don't want to add redirects to the HTML file.
6666 if ( buildOutput === 'static' ) {
6767 continue ;
68- } else if ( distURL ) {
69- _redirects . add ( {
68+ }
69+
70+ if ( distURL ) {
71+ redirects . add ( {
7072 dynamic : false ,
7173 input : `${ base } ${ route . pathname } ` ,
7274 target : prependForwardSlash ( distURL . toString ( ) . replace ( dir . toString ( ) , '' ) ) ,
7375 status : 200 ,
7476 weight : 2 ,
7577 } ) ;
7678 } else {
77- _redirects . add ( {
79+ redirects . add ( {
7880 dynamic : false ,
7981 input : `${ base } ${ route . pathname } ` ,
8082 target : dynamicTarget ,
@@ -83,7 +85,7 @@ export function createRedirectsFromAstroRoutes({
8385 } ) ;
8486
8587 if ( route . pattern === '/404' ) {
86- _redirects . add ( {
88+ redirects . add ( {
8789 dynamic : true ,
8890 input : '/*' ,
8991 target : dynamicTarget ,
@@ -100,22 +102,21 @@ export function createRedirectsFromAstroRoutes({
100102 // This route was prerendered and should be forwarded to the HTML file.
101103 if ( distURL ) {
102104 const targetRoute = route . redirectRoute ?? route ;
103- const targetPattern = generateDynamicPattern ( targetRoute ) ;
104- let target = targetPattern ;
105+ let target = generateDynamicPattern ( targetRoute ) ;
105106 if ( config . build . format === 'directory' ) {
106107 target = pathJoin ( target , 'index.html' ) ;
107108 } else {
108109 target += '.html' ;
109110 }
110- _redirects . add ( {
111+ redirects . add ( {
111112 dynamic : true ,
112113 input : `${ base } ${ pattern } ` ,
113114 target,
114115 status : route . type === 'redirect' ? 301 : 200 ,
115116 weight : 1 ,
116117 } ) ;
117118 } else {
118- _redirects . add ( {
119+ redirects . add ( {
119120 dynamic : true ,
120121 input : `${ base } ${ pattern } ` ,
121122 target : dynamicTarget ,
@@ -126,7 +127,7 @@ export function createRedirectsFromAstroRoutes({
126127 }
127128 }
128129
129- return _redirects ;
130+ return redirects ;
130131}
131132
132133/**
@@ -135,7 +136,7 @@ export function createRedirectsFromAstroRoutes({
135136 * With stars replacing spread and :id syntax replacing [id]
136137 */
137138function generateDynamicPattern ( route : IntegrationResolvedRoute ) {
138- const pattern =
139+ return (
139140 '/' +
140141 route . segments
141142 . map ( ( [ part ] ) => {
@@ -150,8 +151,8 @@ function generateDynamicPattern(route: IntegrationResolvedRoute) {
150151 return part . content ;
151152 }
152153 } )
153- . join ( '/' ) ;
154- return pattern ;
154+ . join ( '/' )
155+ ) ;
155156}
156157
157158function prependForwardSlash ( str : string ) {
0 commit comments