diff --git a/packages/astro/src/core/build/plugins/plugin-manifest.ts b/packages/astro/src/core/build/plugins/plugin-manifest.ts index b867bff4bb..7a4874b32e 100644 --- a/packages/astro/src/core/build/plugins/plugin-manifest.ts +++ b/packages/astro/src/core/build/plugins/plugin-manifest.ts @@ -189,8 +189,10 @@ function buildManifest( } for (const route of opts.manifest.routes) { - // TODO: Change that - const pageData = internals.pagesByKeys.get(route.component); + let pageData; + for (const page of internals.pagesByKeys.values()) { + if (page.route.route == route.route) pageData = page; + } if (route.prerender || !pageData) continue; const scripts: SerializedRouteInfo['scripts'] = []; if (pageData.hoistedScript) { diff --git a/packages/astro/src/core/build/plugins/plugin-pages.ts b/packages/astro/src/core/build/plugins/plugin-pages.ts index b89e5d35cc..376c8bf664 100644 --- a/packages/astro/src/core/build/plugins/plugin-pages.ts +++ b/packages/astro/src/core/build/plugins/plugin-pages.ts @@ -43,7 +43,8 @@ function vitePluginPages(opts: StaticBuildOptions, internals: BuildInternals): V const exports: string[] = []; const pageName = getPathFromVirtualModulePageName(ASTRO_PAGE_RESOLVED_MODULE_ID, id); // TODO: Change that - const pageData = internals.pagesByKeys.get(pageName); + // const pageData = internals.pagesByKeys.get(pageName); + const pageData = tmp(internals.pagesByKeys, pageName); if (pageData) { const resolvedPage = await this.resolve(pageData.moduleSpecifier); if (resolvedPage) { @@ -73,3 +74,12 @@ export function pluginPages(opts: StaticBuildOptions, internals: BuildInternals) }, }; } + +/** + * TMP: This is a temporary function to get the page data from the pagesByKeys map. + */ +function tmp(pagesByKeys: Map, pageName: string) { + for (const pages of pagesByKeys.values()) { + if (pages.component == pageName) return pages; + } +} diff --git a/packages/astro/src/core/build/plugins/plugin-ssr.ts b/packages/astro/src/core/build/plugins/plugin-ssr.ts index a42735893b..2b57b65faa 100644 --- a/packages/astro/src/core/build/plugins/plugin-ssr.ts +++ b/packages/astro/src/core/build/plugins/plugin-ssr.ts @@ -55,8 +55,7 @@ function vitePluginSSR( // we need to use the non-resolved ID in order to resolve correctly the virtual module imports.push(`const ${variable} = () => import("${virtualModuleName}");`); - // TODO: Change that - const pageData2 = internals.pagesByKeys.get(path); + const pageData2 = internals.pagesByKeys.get(pageData.key); if (pageData2) { pageMap.push(`[${JSON.stringify(pageData2.component)}, ${variable}]`); }