fix(alias): resolve relative if alias is relative
This commit is contained in:
		
							parent
							
								
									fe2e16d937
								
							
						
					
					
						commit
						c18e6cd5bb
					
				| @ -1,14 +1,19 @@ | ||||
| import { resolveRelative, simplifySlug } from "../../util/path" | ||||
| import { isRelativeURL, resolveRelative, simplifySlug } from "../../util/path" | ||||
| import { QuartzEmitterPlugin } from "../types" | ||||
| import { write } from "./helpers" | ||||
| import { BuildCtx } from "../../util/ctx" | ||||
| import { VFile } from "vfile" | ||||
| import path from "path" | ||||
| 
 | ||||
| async function* processFile(ctx: BuildCtx, file: VFile) { | ||||
|   const ogSlug = simplifySlug(file.data.slug!) | ||||
| 
 | ||||
|   for (const slug of file.data.aliases ?? []) { | ||||
|     const redirUrl = resolveRelative(slug, file.data.slug!) | ||||
|   for (const aliasTarget of file.data.aliases ?? []) { | ||||
|     const aliasTargetSlug = isRelativeURL(aliasTarget) | ||||
|       ? path.normalize(path.join(ogSlug, "..", aliasTarget)) | ||||
|       : aliasTarget | ||||
| 
 | ||||
|     const redirUrl = resolveRelative(aliasTargetSlug, ogSlug) | ||||
|     yield write({ | ||||
|       ctx, | ||||
|       content: ` | ||||
| @ -23,7 +28,7 @@ async function* processFile(ctx: BuildCtx, file: VFile) { | ||||
|         </head> | ||||
|         </html> | ||||
|         `,
 | ||||
|       slug, | ||||
|       slug: aliasTargetSlug, | ||||
|       ext: ".html", | ||||
|     }) | ||||
|   } | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user