astro 0.22.12 → 0.22.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,8 +3,8 @@ import * as colors from "kleur/colors";
3
3
  import { debug } from "../logger.js";
4
4
  import { preload as ssrPreload } from "../ssr/index.js";
5
5
  import { validateGetStaticPathsModule, validateGetStaticPathsResult } from "../ssr/routing.js";
6
- import { generatePaginateFunction } from "../ssr/paginate.js";
7
6
  import { generateRssFunction } from "../ssr/rss.js";
7
+ import { assignStaticPaths } from "../ssr/route-cache.js";
8
8
  async function collectPagesData(opts) {
9
9
  const { astroConfig, logging, manifest, origin, routeCache, viteServer } = opts;
10
10
  const assets = {};
@@ -78,8 +78,8 @@ async function getStaticPathsForRoute(opts, route) {
78
78
  const mod = await viteServer.ssrLoadModule(fileURLToPath(filePath));
79
79
  validateGetStaticPathsModule(mod);
80
80
  const rss = generateRssFunction(astroConfig.buildOptions.site, route);
81
- const staticPaths = (await mod.getStaticPaths({ paginate: generatePaginateFunction(route), rss: rss.generator })).flat();
82
- routeCache[route.component] = staticPaths;
81
+ await assignStaticPaths(routeCache, route, mod, rss.generator);
82
+ const staticPaths = routeCache[route.component];
83
83
  validateGetStaticPathsResult(staticPaths, logging);
84
84
  return {
85
85
  paths: staticPaths.map((staticPath) => staticPath.params && route.generate(staticPath.params)).filter(Boolean),
@@ -89,4 +89,4 @@ async function getStaticPathsForRoute(opts, route) {
89
89
  export {
90
90
  collectPagesData
91
91
  };
92
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvcmUvYnVpbGQvcGFnZS1kYXRhLnRzIl0sCiAgIm1hcHBpbmdzIjogIkFBS0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFpQkEsZ0NBQXVDLE1BQWdFO0FBQ3RHLFFBQU0sRUFBRSxhQUFhLFNBQVMsVUFBVSxRQUFRLFlBQVksZUFBZTtBQUUzRSxRQUFNLFNBQWlDO0FBQ3ZDLFFBQU0sV0FBeUI7QUFNL0IsUUFBTSxRQUFRLElBQ2IsU0FBUyxPQUFPLElBQUksT0FBTyxVQUFVO0FBdkN2QztBQXlDRyxRQUFJLE1BQU0sVUFBVTtBQUNuQixlQUFTLE1BQU0sYUFBYTtBQUFBLFFBQzNCO0FBQUEsUUFDQSxPQUFPLENBQUMsTUFBTTtBQUFBLFFBQ2QsU0FBUyxNQUFNLFdBQVc7QUFBQSxVQUN6QjtBQUFBLFVBQ0EsVUFBVSxJQUFJLElBQUksS0FBSyxNQUFNLGFBQWEsWUFBWTtBQUFBLFVBQ3REO0FBQUEsVUFDQSxNQUFNO0FBQUEsVUFDTjtBQUFBLFVBQ0EsVUFBVSxNQUFNO0FBQUEsVUFDaEI7QUFBQSxVQUNBO0FBQUEsVUFDQTtBQUFBLFdBRUMsS0FBSyxDQUFDLFdBQVc7QUFDakIsZ0JBQU0sT0FBTyxHQUFHLE1BQU0sV0FBVyxRQUFRLFFBQVE7QUFDakQsZ0JBQU0sU0FBUyxTQUFTLHNCQUFPLE9BQU8sS0FBSyxPQUFPLE1BQU0sY0FBUyxNQUFNLG9CQUFlLE9BQU8sT0FBTztBQUNwRyxpQkFBTztBQUFBLFdBRVAsTUFBTSxDQUFDLFFBQVE7QUFDZixnQkFBTSxTQUFTLFNBQVMsc0JBQU8sT0FBTyxLQUFLLE9BQU8sSUFBSSxjQUFTLE1BQU07QUFDckUsZ0JBQU07QUFBQTtBQUFBO0FBR1Q7QUFBQTtBQUdELFVBQU0sU0FBUyxNQUFNLHVCQUF1QixNQUFNLE9BQ2hELEtBQUssQ0FBQyxXQUFXO0FBQ2pCLFlBQU0sUUFBUSxPQUFPLE1BQU0sV0FBVyxJQUFJLFNBQVM7QUFDbkQsWUFBTSxTQUFTLFNBQVMsc0JBQU8sT0FBTyxLQUFLLE9BQU8sTUFBTSxjQUFTLE1BQU0sb0JBQWUsT0FBTyxRQUFRLElBQUksT0FBTyxNQUFNLFVBQVU7QUFDaEksYUFBTztBQUFBLE9BRVAsTUFBTSxDQUFDLFFBQVE7QUFDZixZQUFNLFNBQVMsU0FBUyxzQkFBTyxPQUFPLEtBQUssT0FBTyxJQUFJLGNBQVMsTUFBTTtBQUNyRSxZQUFNO0FBQUE7QUFFUixRQUFJLGFBQU8sUUFBUCxtQkFBWSxLQUFLO0FBQ3BCLFlBQU0sVUFBVSxJQUFJLElBQUksT0FBTyxJQUFJLElBQUksUUFBUSxRQUFRLE9BQU8sWUFBWTtBQUMxRSxVQUFJLE9BQU8sY0FBYyxXQUFXO0FBQ25DLGNBQU0sSUFBSSxNQUFNLDZCQUE2QixPQUFPLElBQUk7QUFBQSxtRUFBeUYsTUFBTTtBQUFBO0FBRXhKLGFBQU8sY0FBYyxZQUFZLE9BQU8sSUFBSTtBQUFBO0FBRTdDLGFBQVMsTUFBTSxhQUFhO0FBQUEsTUFDM0I7QUFBQSxNQUNBLE9BQU8sT0FBTztBQUFBLE1BQ2QsU0FBUyxNQUFNLFdBQVc7QUFBQSxRQUN6QjtBQUFBLFFBQ0EsVUFBVSxJQUFJLElBQUksS0FBSyxNQUFNLGFBQWEsWUFBWTtBQUFBLFFBQ3REO0FBQUEsUUFDQSxNQUFNO0FBQUEsUUFDTjtBQUFBLFFBQ0EsVUFBVSxPQUFPLE1BQU07QUFBQSxRQUN2QjtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUE7QUFBQTtBQUFBO0FBTUosU0FBTyxFQUFFLFFBQVE7QUFBQTtBQUdsQixzQ0FBc0MsTUFBK0IsT0FBaUU7QUFDckksUUFBTSxFQUFFLGFBQWEsU0FBUyxZQUFZLGVBQWU7QUFDekQsTUFBSSxDQUFDO0FBQVksVUFBTSxJQUFJLE1BQU07QUFDakMsUUFBTSxXQUFXLElBQUksSUFBSSxLQUFLLE1BQU0sYUFBYSxZQUFZO0FBQzdELFFBQU0sTUFBTyxNQUFNLFdBQVcsY0FBYyxjQUFjO0FBQzFELCtCQUE2QjtBQUM3QixRQUFNLE1BQU0sb0JBQW9CLFlBQVksYUFBYSxNQUFNO0FBQy9ELFFBQU0sY0FBcUMsT0FBTSxJQUFJLGVBQWdCLEVBQUUsVUFBVSx5QkFBeUIsUUFBUSxLQUFLLElBQUksY0FBYztBQUN6SSxhQUFXLE1BQU0sYUFBYTtBQUM5QiwrQkFBNkIsYUFBYTtBQUMxQyxTQUFPO0FBQUEsSUFDTixPQUFPLFlBQVksSUFBSSxDQUFDLGVBQWUsV0FBVyxVQUFVLE1BQU0sU0FBUyxXQUFXLFNBQVMsT0FBTztBQUFBLElBQ3RHLEtBQUssSUFBSTtBQUFBO0FBQUE7IiwKICAibmFtZXMiOiBbXQp9Cg==
92
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvcmUvYnVpbGQvcGFnZS1kYXRhLnRzIl0sCiAgIm1hcHBpbmdzIjogIkFBS0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBQ0E7QUFpQkEsZ0NBQXVDLE1BQWdFO0FBQ3RHLFFBQU0sRUFBRSxhQUFhLFNBQVMsVUFBVSxRQUFRLFlBQVksZUFBZTtBQUUzRSxRQUFNLFNBQWlDO0FBQ3ZDLFFBQU0sV0FBeUI7QUFNL0IsUUFBTSxRQUFRLElBQ2IsU0FBUyxPQUFPLElBQUksT0FBTyxVQUFVO0FBeEN2QztBQTBDRyxRQUFJLE1BQU0sVUFBVTtBQUNuQixlQUFTLE1BQU0sYUFBYTtBQUFBLFFBQzNCO0FBQUEsUUFDQSxPQUFPLENBQUMsTUFBTTtBQUFBLFFBQ2QsU0FBUyxNQUFNLFdBQVc7QUFBQSxVQUN6QjtBQUFBLFVBQ0EsVUFBVSxJQUFJLElBQUksS0FBSyxNQUFNLGFBQWEsWUFBWTtBQUFBLFVBQ3REO0FBQUEsVUFDQSxNQUFNO0FBQUEsVUFDTjtBQUFBLFVBQ0EsVUFBVSxNQUFNO0FBQUEsVUFDaEI7QUFBQSxVQUNBO0FBQUEsVUFDQTtBQUFBLFdBRUMsS0FBSyxDQUFDLFdBQVc7QUFDakIsZ0JBQU0sT0FBTyxHQUFHLE1BQU0sV0FBVyxRQUFRLFFBQVE7QUFDakQsZ0JBQU0sU0FBUyxTQUFTLHNCQUFPLE9BQU8sS0FBSyxPQUFPLE1BQU0sY0FBUyxNQUFNLG9CQUFlLE9BQU8sT0FBTztBQUNwRyxpQkFBTztBQUFBLFdBRVAsTUFBTSxDQUFDLFFBQVE7QUFDZixnQkFBTSxTQUFTLFNBQVMsc0JBQU8sT0FBTyxLQUFLLE9BQU8sSUFBSSxjQUFTLE1BQU07QUFDckUsZ0JBQU07QUFBQTtBQUFBO0FBR1Q7QUFBQTtBQUdELFVBQU0sU0FBUyxNQUFNLHVCQUF1QixNQUFNLE9BQ2hELEtBQUssQ0FBQyxXQUFXO0FBQ2pCLFlBQU0sUUFBUSxPQUFPLE1BQU0sV0FBVyxJQUFJLFNBQVM7QUFDbkQsWUFBTSxTQUFTLFNBQVMsc0JBQU8sT0FBTyxLQUFLLE9BQU8sTUFBTSxjQUFTLE1BQU0sb0JBQWUsT0FBTyxRQUFRLElBQUksT0FBTyxNQUFNLFVBQVU7QUFDaEksYUFBTztBQUFBLE9BRVAsTUFBTSxDQUFDLFFBQVE7QUFDZixZQUFNLFNBQVMsU0FBUyxzQkFBTyxPQUFPLEtBQUssT0FBTyxJQUFJLGNBQVMsTUFBTTtBQUNyRSxZQUFNO0FBQUE7QUFFUixRQUFJLGFBQU8sUUFBUCxtQkFBWSxLQUFLO0FBQ3BCLFlBQU0sVUFBVSxJQUFJLElBQUksT0FBTyxJQUFJLElBQUksUUFBUSxRQUFRLE9BQU8sWUFBWTtBQUMxRSxVQUFJLE9BQU8sY0FBYyxXQUFXO0FBQ25DLGNBQU0sSUFBSSxNQUFNLDZCQUE2QixPQUFPLElBQUk7QUFBQSxtRUFBeUYsTUFBTTtBQUFBO0FBRXhKLGFBQU8sY0FBYyxZQUFZLE9BQU8sSUFBSTtBQUFBO0FBRTdDLGFBQVMsTUFBTSxhQUFhO0FBQUEsTUFDM0I7QUFBQSxNQUNBLE9BQU8sT0FBTztBQUFBLE1BQ2QsU0FBUyxNQUFNLFdBQVc7QUFBQSxRQUN6QjtBQUFBLFFBQ0EsVUFBVSxJQUFJLElBQUksS0FBSyxNQUFNLGFBQWEsWUFBWTtBQUFBLFFBQ3REO0FBQUEsUUFDQSxNQUFNO0FBQUEsUUFDTjtBQUFBLFFBQ0EsVUFBVSxPQUFPLE1BQU07QUFBQSxRQUN2QjtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUE7QUFBQTtBQUFBO0FBTUosU0FBTyxFQUFFLFFBQVE7QUFBQTtBQUdsQixzQ0FBc0MsTUFBK0IsT0FBaUU7QUFDckksUUFBTSxFQUFFLGFBQWEsU0FBUyxZQUFZLGVBQWU7QUFDekQsTUFBSSxDQUFDO0FBQVksVUFBTSxJQUFJLE1BQU07QUFDakMsUUFBTSxXQUFXLElBQUksSUFBSSxLQUFLLE1BQU0sYUFBYSxZQUFZO0FBQzdELFFBQU0sTUFBTyxNQUFNLFdBQVcsY0FBYyxjQUFjO0FBQzFELCtCQUE2QjtBQUM3QixRQUFNLE1BQU0sb0JBQW9CLFlBQVksYUFBYSxNQUFNO0FBQy9ELFFBQU0sa0JBQWtCLFlBQVksT0FBTyxLQUFLLElBQUk7QUFDcEQsUUFBTSxjQUFjLFdBQVcsTUFBTTtBQUNyQywrQkFBNkIsYUFBYTtBQUMxQyxTQUFPO0FBQUEsSUFDTixPQUFPLFlBQVksSUFBSSxDQUFDLGVBQWUsV0FBVyxVQUFVLE1BQU0sU0FBUyxXQUFXLFNBQVMsT0FBTztBQUFBLElBQ3RHLEtBQUssSUFBSTtBQUFBO0FBQUE7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -10,6 +10,7 @@ import { getParamsAndProps } from "../ssr/index.js";
10
10
  import { createResult } from "../ssr/result.js";
11
11
  import { renderPage } from "../../runtime/server/index.js";
12
12
  import { prepareOutDir } from "./fs.js";
13
+ const MAX_CONCURRENT_RENDERS = 10;
13
14
  function addPageName(pathname, opts) {
14
15
  const pathrepl = opts.astroConfig.buildOptions.pageUrlFormat === "directory" ? "/index.html" : pathname === "/" ? "index.html" : ".html";
15
16
  opts.pageNames.push(pathname.replace(/\/?$/, pathrepl).replace(/^\//, ""));
@@ -21,6 +22,23 @@ function chunkIsPage(output, internals) {
21
22
  const chunk = output;
22
23
  return chunk.facadeModuleId && (internals.entrySpecifierToBundleMap.has(chunk.facadeModuleId) || internals.entrySpecifierToBundleMap.has("/" + chunk.facadeModuleId));
23
24
  }
25
+ function* throttle(max, inPaths) {
26
+ let tmp = [];
27
+ let i = 0;
28
+ for (let path of inPaths) {
29
+ tmp.push(path);
30
+ if (i === max) {
31
+ yield tmp;
32
+ tmp.length = 0;
33
+ i = 0;
34
+ } else {
35
+ i++;
36
+ }
37
+ }
38
+ if (tmp.length) {
39
+ yield tmp;
40
+ }
41
+ }
24
42
  async function staticBuild(opts) {
25
43
  const { allPages, astroConfig } = opts;
26
44
  const pageInput = new Set();
@@ -166,10 +184,14 @@ async function generatePage(output, opts, internals, facadeIdToPageDataMap, rend
166
184
  Component,
167
185
  renderers
168
186
  };
169
- const renderPromises = pageData.paths.map((path) => {
170
- return generatePath(path, opts, generationOptions);
171
- });
172
- return await Promise.all(renderPromises);
187
+ const renderPromises = [];
188
+ for (const paths of throttle(MAX_CONCURRENT_RENDERS, pageData.paths)) {
189
+ for (const path of paths) {
190
+ renderPromises.push(generatePath(path, opts, generationOptions));
191
+ }
192
+ await Promise.all(renderPromises);
193
+ renderPromises.length = 0;
194
+ }
173
195
  }
174
196
  async function generatePath(pathname, opts, gopts) {
175
197
  const { astroConfig, logging, origin, pageNames, routeCache } = opts;
@@ -182,7 +204,8 @@ async function generatePath(pathname, opts, gopts) {
182
204
  routeCache,
183
205
  logging,
184
206
  pathname,
185
- mod
207
+ mod,
208
+ validate: false
186
209
  });
187
210
  debug(logging, "generate", `Generating: ${pathname}`);
188
211
  const result = createResult({ astroConfig, origin, params, pathname, renderers });
@@ -279,4 +302,4 @@ export {
279
302
  staticBuild,
280
303
  vitePluginNewBuild
281
304
  };
282
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvcmUvYnVpbGQvc3RhdGljLWJ1aWxkLnRzIl0sCiAgIm1hcHBpbmdzIjogIkFBVUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBWUEscUJBQXFCLFVBQWtCLE1BQWdDO0FBQ3RFLFFBQU0sV0FBVyxLQUFLLFlBQVksYUFBYSxrQkFBa0IsY0FBYyxnQkFBZ0IsYUFBYSxNQUFNLGVBQWU7QUFDakksT0FBSyxVQUFVLEtBQUssU0FBUyxRQUFRLFFBQVEsVUFBVSxRQUFRLE9BQU87QUFBQTtBQUl2RSxxQkFBcUIsUUFBbUMsV0FBMkI7QUFDbEYsTUFBSSxPQUFPLFNBQVMsU0FBUztBQUM1QixXQUFPO0FBQUE7QUFFUixRQUFNLFFBQVE7QUFDZCxTQUFPLE1BQU0sa0JBQW1CLFdBQVUsMEJBQTBCLElBQUksTUFBTSxtQkFBbUIsVUFBVSwwQkFBMEIsSUFBSSxNQUFNLE1BQU07QUFBQTtBQUd0SiwyQkFBa0MsTUFBMEI7QUFDM0QsUUFBTSxFQUFFLFVBQVUsZ0JBQWdCO0FBR2xDLFFBQU0sWUFBWSxJQUFJO0FBR3RCLFFBQU0sVUFBVSxJQUFJO0FBSXBCLFFBQU0sd0JBQXdCLElBQUk7QUFHbEMsUUFBTSxZQUFZLGFBQWEsTUFBTSxRQUFRLENBQUMsYUFBYTtBQUMxRCxXQUFRLFVBQVMsYUFBYSxJQUFJLE9BQU8sU0FBUyxzQkFBc0I7QUFBQTtBQUV6RSxhQUFXLFlBQVksV0FBVztBQUNqQyxZQUFRLElBQUk7QUFBQTtBQUdiLGFBQVcsQ0FBQyxXQUFXLGFBQWEsT0FBTyxRQUFRLFdBQVc7QUFDN0QsVUFBTSxDQUFDLFdBQVcsT0FBTyxTQUFTO0FBQ2xDLFVBQU0sV0FBVyxJQUFJO0FBRXJCLFVBQU0sa0JBQWtCLElBQUksSUFBSTtBQUFBLE1BRS9CLEdBQUcsU0FBUztBQUFBLE1BRVosR0FBRyxTQUFTO0FBQUEsTUFFWixHQUFHLFVBQVUsT0FBTyxDQUFDLGFBQWEs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QUFZLEtBQUs7QUFBQTtBQUU1QixRQUFNLFFBQVEsSUFDYixNQUFNLElBQUksT0FBTyxhQUFhO0FBQzdCLFVBQU0sTUFBTSxJQUFJLElBQUksVUFBVSxLQUFLLFlBQVk7QUFDL0MsVUFBTSxHQUFHLFNBQVMsR0FBRztBQUFBO0FBQUE7QUFLakIsNEJBQTRCLE9BQW9CLFdBQTJCLEtBQStCO0FBQ2hILFNBQU87QUFBQSxJQUNOLE1BQU07QUFBQSxJQUVOLE9BQU8sUUFBUSxTQUFTO0FBNVUxQjtBQTZVRyxZQUFNLFFBQTZCO0FBQ25DLFlBQU0sYUFBYSxJQUNsQixXQUFXO0FBQ1osVUFBSSxRQUFRLFlBQVksV0FBVyxjQUFPLFVBQVAsbUJBQWMsTUFBSztBQUNyRCxtQkFBVyxLQUFLO0FBQ2hCLGlCQUFTLEtBQUs7QUFBQTtBQUlmLFlBQU0sTUFBTTtBQUFBLFFBQ1g7QUFBQSxRQUNBO0FBQUE7QUFFRCxhQUFPO0FBQUE7QUFBQSxJQUdSLGVBQWUsZ0JBQWdCO0FBRTlCLFlBQU0sVUFBVSxlQUFlO0FBQy9CLFlBQU0sWUFBWSxRQUFRLEtBQUssQ0FBQyxNQUFNLEVBQUUsU0FBUztBQUNqRCxVQUFJLFdBQVc7QUFDZCxlQUFPLFVBQVU7QUFBQTtBQUFBO0FBQUEsSUFJbkIsY0FBYyxlQUFlO0FBQzVCLGFBQU8sT0FBTyxlQUFlO0FBQUEsUUFDNUIsZUFBZSxRQUEwQjtBQUN4QyxpQkFBTywwQkFBMEI7QUFBQTtBQUFBLFFBRWxDLGVBQWUsUUFBMEI7QUFDeEMsaUJBQU8sMEJBQTBCO0FBQUE7QUFBQTtBQUduQyxhQUFPO0FBQUE7QUFBQSxVQUdGLGVBQWUsVUFBVSxRQUFRO0FBQ3RDLFlBQU0sV0FBVztBQUNqQixZQUFNLFVBQVUsSUFBSTtBQUNwQixpQkFBVyxhQUFhLE9BQU87QUFDOUIsaUJBQVMsS0FDUixLQUFLLFFBQVEsV0FBVyxLQUFLLENBQUMsV0FBVztBQUN4QyxjQUFJLFFBQVE7QUFDWCxvQkFBUSxJQUFJLE9BQU8sSUFBSTtBQUFBO0FBQUE7QUFBQTtBQUszQixZQUFNLFFBQVEsSUFBSTtBQUNsQixpQkFBVyxDQUFDLEVBQUUsVUFBVSxPQUFPLFFBQVEsU0FBUztBQUMvQyxZQUFJLE1BQU0sU0FBUyxXQUFXLE1BQU0sa0JBQWtCLFFBQVEsSUFBSSxNQUFNLGlCQUFpQjtBQUN4RixnQkFBTSxZQUFZLFFBQVEsSUFBSSxNQUFNO0FBQ3BDLG9CQUFVLDBCQUEwQixJQUFJLFdBQVcsTUFBTTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7IiwKICAibmFtZXMiOiBbXQp9Cg==
305
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvcmUvYnVpbGQvc3RhdGljLWJ1aWxkLnRzIl0sCiAgIm1hcHBpbmdzIjogIkFBVUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBWUEsTUFBTSx5QkFBeUI7QUFFL0IscUJBQXFCLFVBQWtCLE1BQWdDO0FBQ3RFLFFBQU0sV0FBVyxLQUFLLFlBQVksYUFBYSxrQkFBa0IsY0FBYyxnQkFBZ0IsYUFBYSxNQUFNLGVBQWU7QUFDakksT0FBSyxVQUFVLEtBQUssU0FBUyxRQUFRLFFBQVEsVUFBVSxRQUFRLE9BQU87QUFBQTtBQUl2RSxxQkFBcUIsUUFBbUMsV0FBMkI7QUFDbEYsTUFBSSxPQUFPLFNBQVMsU0FBUztBQUM1QixXQUFPO0FBQUE7QUFFUixRQUFNLFFBQVE7QUFDZCxTQUFPLE1BQU0sa0JBQW1CLFdBQVUsMEJBQTBCLElBQUksTUFBTSxtQkFBbUIsVUFBVSwwQkFBMEIsSUFBSSxNQUFNLE1BQU07QUFBQTtBQUl0SixtQkFBbUIsS0FBYSxTQUFtQjtBQUNsRCxNQUFJLE1BQU07QUFDVixNQUFJLElBQUk7QUFDUixXQUFTLFFBQVEsU0FBUztBQUN6QixRQUFJLEtBQUs7QUFDVCxRQUFJLE1BQU0sS0FBSztBQUNkLFlBQU07QUFFTixVQUFJLFNBQVM7QUFDYixVQUFJO0FBQUEsV0FDRTtBQUNOO0FBQUE7QUFBQTtBQU1GLE1BQUksSUFBSSxRQUFRO0FBQ2YsVUFBTTtBQUFBO0FBQUE7QUFJUiwyQkFBa0MsTUFBMEI7QUFDM0QsUUFBTSxFQUFFLFVBQVUsZ0JBQWdCO0FBR2xDLFFBQU0sWUFBWSxJQUFJO0FBR3RCLFFBQU0sVUFBVSxJQUFJO0FBSXBCLFFBQU0sd0JBQXdCLElBQUk7QUFHbEMsUUFBTSxZQUFZLGFBQWEsTUFBTSxRQUFRLENBQUMsYUFBYTtBQUMxRCxXQUFRLFVBQVMsYUFBYSxJQUFJLE9BQU8sU0FBUyxzQkFBc0I7QUFBQTtBQUV6RSxhQUFX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
@@ -22,9 +22,9 @@ import { renderPage } from "../../runtime/server/index.js";
22
22
  import { codeFrame, resolveDependency } from "../util.js";
23
23
  import { getStylesForURL } from "./css.js";
24
24
  import { injectTags } from "./html.js";
25
- import { generatePaginateFunction } from "./paginate.js";
26
25
  import { getParams, validateGetStaticPathsModule, validateGetStaticPathsResult } from "./routing.js";
27
26
  import { createResult } from "./result.js";
27
+ import { assignStaticPaths, ensureRouteCached, findPathItemByKey } from "./route-cache.js";
28
28
  const svelteStylesRE = /svelte\?svelte&type=style/;
29
29
  const cache = new Map();
30
30
  async function resolveRenderer(viteServer, renderer, astroConfig) {
@@ -95,10 +95,11 @@ async function getParamsAndProps({
95
95
  routeCache,
96
96
  logging,
97
97
  pathname,
98
- mod
98
+ mod,
99
+ validate = true
99
100
  }) {
100
101
  let params = {};
101
- let pageProps = {};
102
+ let pageProps;
102
103
  if (route && !route.pathname) {
103
104
  if (route.params.length) {
104
105
  const paramsMatch = route.pattern.exec(pathname);
@@ -106,21 +107,24 @@ async function getParamsAndProps({
106
107
  params = getParams(route.params)(paramsMatch);
107
108
  }
108
109
  }
109
- validateGetStaticPathsModule(mod);
110
+ if (validate) {
111
+ validateGetStaticPathsModule(mod);
112
+ }
110
113
  if (!routeCache[route.component]) {
111
- routeCache[route.component] = await (await mod.getStaticPaths({
112
- paginate: generatePaginateFunction(route),
113
- rss: () => {
114
- }
115
- })).flat();
114
+ await assignStaticPaths(routeCache, route, mod);
116
115
  }
117
- validateGetStaticPathsResult(routeCache[route.component], logging);
118
- const routePathParams = routeCache[route.component];
119
- const matchedStaticPath = routePathParams.find(({ params: _params }) => JSON.stringify(_params) === JSON.stringify(params));
116
+ if (validate) {
117
+ validateGetStaticPathsResult(routeCache[route.component], logging);
118
+ }
119
+ const staticPaths = routeCache[route.component];
120
+ const paramsKey = JSON.stringify(params);
121
+ const matchedStaticPath = findPathItemByKey(staticPaths, paramsKey, logging);
120
122
  if (!matchedStaticPath) {
121
123
  throw new Error(`[getStaticPaths] route pattern matched, but no matching static path found. (${pathname})`);
122
124
  }
123
- pageProps = __spreadValues({}, matchedStaticPath.props) || {};
125
+ pageProps = Object.create(matchedStaticPath.props || Object.prototype);
126
+ } else {
127
+ pageProps = {};
124
128
  }
125
129
  return [params, pageProps];
126
130
  }
@@ -136,13 +140,7 @@ async function render(renderers, mod, ssrOpts) {
136
140
  }
137
141
  }
138
142
  validateGetStaticPathsModule(mod);
139
- if (!routeCache[route.component]) {
140
- routeCache[route.component] = await (await mod.getStaticPaths({
141
- paginate: generatePaginateFunction(route),
142
- rss: () => {
143
- }
144
- })).flat();
145
- }
143
+ await ensureRouteCached(routeCache, route, mod);
146
144
  validateGetStaticPathsResult(routeCache[route.component], logging);
147
145
  const routePathParams = routeCache[route.component];
148
146
  const matchedStaticPath = routePathParams.find(({ params: _params }) => JSON.stringify(_params) === JSON.stringify(params));
@@ -228,4 +226,4 @@ export {
228
226
  render,
229
227
  ssr
230
228
  };
231
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvcmUvc3NyL2luZGV4LnRzIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7OztBQUtBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFFQSxNQUFNLGlCQUFpQjtBQXVCdkIsTUFBTSxRQUFRLElBQUk7QUFHbEIsK0JBQStCLFlBQWdDLFVBQWtCLGFBQTBCO0FBQzFHLFFBQU0sbUJBQXdCO0FBSTlCLFFBQU07QUFBQSxJQUNMLFNBQVMsRUFBRSxNQUFNLFFBQVEsV0FBVyxvQkFBb0I7QUFBQSxNQUNyRCxNQUFNLE9BQU8sa0JBQWtCLFVBQVU7QUFFN0MsbUJBQWlCLE9BQU87QUFDeEIsTUFBSTtBQUFRLHFCQUFpQixTQUFTLEtBQUssTUFBTSxLQUFLLFVBQVU7QUFDaEUsbUJBQWlCLGNBQWMsS0FBSyxNQUFNLEtBQUssVUFBVTtBQUN6RCxNQUFJLE1BQU0sUUFBUTtBQUFxQixxQkFBaUIscUJBQXFCLG1CQUFtQixJQUFJLENBQUMsUUFBZ0IsS0FBSyxNQUFNLEtBQUssVUFBVTtBQUMvSSxNQUFJLE1BQU0sUUFBUTtBQUFZLHFCQUFpQixZQUFZLFVBQVUsSUFBSSxDQUFDLFFBQWdCLEtBQUssTUFBTSxLQUFLLFVBQVU7QUFDcEgsUUFBTSxFQUFFLFFBQVEsTUFBTSxXQUFXLFlBQVksbUJBQW1CLGlCQUFpQjtBQUNqRixRQUFNLEVBQUUsU0FBUyxnQkFBZ0IsTUFBTSxXQUFXLGNBQWM7QUFDaEUsbUJBQWlCLE1BQU07QUFFdkIsUUFBTSxvQkFBOEI7QUFDcEMsU0FBTztBQUFBO0FBR1IsZ0NBQWdDLFlBQWdDLGFBQStDO0FBQzlHLFFBQU0sTUFBZ0IsWUFBWTtBQUNsQyxRQUFNLFlBQVksTUFBTSxRQUFRLElBQy9CLElBQUksSUFBSSxDQUFDLGFBQWE7QUFDckIsUUFBSSxNQUFNLElBQUk7QUFBVyxhQUFPLE1BQU0sSUFBSTtBQUMxQyxRQUFJLFVBQVUsZ0JBQWdC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
229
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvcmUvc3NyL2luZGV4LnRzIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7OztBQWtCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFDQTtBQUNBO0FBRUEsTUFBTSxpQkFBaUI7QUF1QnZCLE1BQU0sUUFBUSxJQUFJO0FBR2xCLCtCQUErQixZQUFnQyxVQUFrQixhQUEwQjtBQUMxRyxRQUFNLG1CQUF3QjtBQUk5QixRQUFNO0FBQUEsSUFDTCxTQUFTLEVBQUUsTUFBTSxRQUFRLFdBQVcsb0JBQW9CO0FBQUEsTUFDckQsTUFBTSxPQUFPLGtCQUFrQixVQUFVO0FBRTdDLG1CQUFpQixPQUFPO0FBQ3hCLE1BQUk7QUFBUSxxQkFBaUIsU0FBUyxLQUFLLE1BQU0sS0FBSyxVQUFVO0FBQ2hFLG1CQUFpQixjQUFjLEtBQUssTUFBTSxLQUFLLFVBQVU7QUFDekQsTUFBSSxNQUFNLFFBQVE7QUFBcUIscUJBQWlCLHFCQUFxQixtQkFBbUIsSUFBSSxDQUFDLFFBQWdCLEtBQUssTUFBTSxLQUFLLFVBQVU7QUFDL0ksTUFBSSxNQUFNLFFBQVE7QUFBWSxxQkFBaUIsWUFBWSxVQUFVLElBQUksQ0FBQyxRQUFnQixLQUFLLE1BQU0sS0FBSyxVQUFVO0FBQ3BILFFBQU0sRUFBRSxRQUFRLE1BQU0sV0FBVyxZQUFZLG1CQUFtQixpQkFBaUI7QUFDakYsUUFBTSxFQUFFLFNBQVMsZ0JBQWdCLE1BQU0sV0FBVyxjQUFjO0FBQ2hFLG1CQUFpQixNQUFNO0FBRXZCLFFBQU0sb0JBQThCO0FBQ3BDLFNBQU87QUFBQTtBQUdSLGdDQUFnQyxZQUFnQyxhQUErQztBQUM5RyxRQUFNLE1BQWdCLFlBQVk7QUFDbEMsUUFBTSxZQUFZLE1BQU0sUUFBUSxJQUMvQixJQUFJLElBQUksQ0FBQyxhQUFhO0FBQ3JCLFFBQUksTUFBTSxJQUFJO0FBQVcsYUFBTyxNQUFNLElBQUk7QUFDMUMsUUFBSSxVQUFVLGdCQUFn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
@@ -0,0 +1,44 @@
1
+ import { debug } from "../logger.js";
2
+ import { generatePaginateFunction } from "../ssr/paginate.js";
3
+ async function callGetStaticPaths(mod, route, rssFn) {
4
+ const staticPaths = await (await mod.getStaticPaths({
5
+ paginate: generatePaginateFunction(route),
6
+ rss: rssFn || (() => {
7
+ })
8
+ })).flat();
9
+ const keyedStaticPaths = staticPaths;
10
+ keyedStaticPaths.keyed = new Map();
11
+ for (const sp of keyedStaticPaths) {
12
+ const paramsKey = JSON.stringify(sp.params);
13
+ keyedStaticPaths.keyed.set(paramsKey, sp);
14
+ }
15
+ return keyedStaticPaths;
16
+ }
17
+ async function assignStaticPaths(routeCache, route, mod, rssFn) {
18
+ const staticPaths = await callGetStaticPaths(mod, route, rssFn);
19
+ routeCache[route.component] = staticPaths;
20
+ }
21
+ async function ensureRouteCached(routeCache, route, mod, rssFn) {
22
+ if (!routeCache[route.component]) {
23
+ const staticPaths = await callGetStaticPaths(mod, route, rssFn);
24
+ routeCache[route.component] = staticPaths;
25
+ return staticPaths;
26
+ } else {
27
+ return routeCache[route.component];
28
+ }
29
+ }
30
+ function findPathItemByKey(staticPaths, paramsKey, logging) {
31
+ let matchedStaticPath = staticPaths.keyed.get(paramsKey);
32
+ if (matchedStaticPath) {
33
+ return matchedStaticPath;
34
+ }
35
+ debug(logging, "findPathItemByKey", `Unexpected cache miss looking for ${paramsKey}`);
36
+ matchedStaticPath = staticPaths.find(({ params: _params }) => JSON.stringify(_params) === paramsKey);
37
+ }
38
+ export {
39
+ assignStaticPaths,
40
+ callGetStaticPaths,
41
+ ensureRouteCached,
42
+ findPathItemByKey
43
+ };
44
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvcmUvc3NyL3JvdXRlLWNhY2hlLnRzIl0sCiAgIm1hcHBpbmdzIjogIkFBR0E7QUFDQTtBQUlBLGtDQUF5QyxLQUF3QixPQUFrQixPQUFtRDtBQUNySSxRQUFNLGNBQW9DLE1BQ3pDLE9BQU0sSUFBSSxlQUFnQjtBQUFBLElBQ3pCLFVBQVUseUJBQXlCO0FBQUEsSUFDbkMsS0FDQyxTQUNDLE9BQU07QUFBQTtBQUFBLE1BSVI7QUFFRixRQUFNLG1CQUFtQjtBQUN6QixtQkFBaUIsUUFBUSxJQUFJO0FBQzdCLGFBQVcsTUFBTSxrQkFBa0I7QUFDbEMsVUFBTSxZQUFZLEtBQUssVUFBVSxHQUFHO0FBQ3BDLHFCQUFpQixNQUFNLElBQUksV0FBVztBQUFBO0FBR3ZDLFNBQU87QUFBQTtBQUdSLGlDQUF3QyxZQUF3QixPQUFrQixLQUF3QixPQUE4QjtBQUN2SSxRQUFNLGNBQWMsTUFBTSxtQkFBbUIsS0FBSyxPQUFPO0FBQ3pELGFBQVcsTUFBTSxhQUFhO0FBQUE7QUFHL0IsaUNBQXdDLFlBQXdCLE9BQWtCLEtBQXdCLE9BQW1EO0FBQzVKLE1BQUksQ0FBQyxXQUFXLE1BQU0sWUFBWTtBQUNqQyxVQUFNLGNBQWMsTUFBTSxtQkFBbUIsS0FBSyxPQUFPO0FBQ3pELGVBQVcsTUFBTSxhQUFhO0FBQzlCLFdBQU87QUFBQSxTQUNEO0FBQ04sV0FBTyxXQUFXLE1BQU07QUFBQTtBQUFBO0FBSW5CLDJCQUEyQixhQUF3QyxXQUFtQixTQUFxQjtBQUNqSCxNQUFJLG9CQUFvQixZQUFZLE1BQU0sSUFBSTtBQUM5QyxNQUFJLG1CQUFtQjtBQUN0QixXQUFPO0FBQUE7QUFHUixRQUFNLFNBQVMscUJBQXFCLHFDQUFxQztBQUN6RSxzQkFBb0IsWUFBWSxLQUFLLENBQUMsRUFBRSxRQUFRLGNBQWMsS0FBSyxVQUFVLGFBQWE7QUFBQTsiLAogICJuYW1lcyI6IFtdCn0K
@@ -158,10 +158,14 @@ export declare type GetHydrateCallback = () => Promise<(element: Element, innerH
158
158
  paginate?: PaginateFunction;
159
159
  rss?: (...args: any[]) => any;
160
160
  }
161
- export declare type GetStaticPathsResult = {
161
+ export declare type GetStaticPathsItem = {
162
162
  params: Params;
163
163
  props?: Props;
164
- }[];
164
+ };
165
+ export declare type GetStaticPathsResult = GetStaticPathsItem[];
166
+ export declare type GetStaticPathsResultKeyed = GetStaticPathsResult & {
167
+ keyed: Map<string, GetStaticPathsItem>;
168
+ };
165
169
  export interface HydrateOptions {
166
170
  value?: string;
167
171
  }
@@ -288,7 +292,7 @@ export interface RouteData {
288
292
  pattern: RegExp;
289
293
  type: 'page';
290
294
  }
291
- export declare type RouteCache = Record<string, GetStaticPathsResult>;
295
+ export declare type RouteCache = Record<string, GetStaticPathsResultKeyed>;
292
296
  export declare type RuntimeMode = 'development' | 'production';
293
297
  /**
294
298
  * RSS
@@ -23,12 +23,13 @@ interface SSROptions {
23
23
  }
24
24
  export declare type ComponentPreload = [Renderer[], ComponentInstance];
25
25
  export declare function preload({ astroConfig, filePath, viteServer }: SSROptions): Promise<ComponentPreload>;
26
- export declare function getParamsAndProps({ route, routeCache, logging, pathname, mod, }: {
26
+ export declare function getParamsAndProps({ route, routeCache, logging, pathname, mod, validate, }: {
27
27
  route: RouteData | undefined;
28
28
  routeCache: RouteCache;
29
29
  pathname: string;
30
30
  mod: ComponentInstance;
31
31
  logging: LogOptions;
32
+ validate?: boolean;
32
33
  }): Promise<[Params, Props]>;
33
34
  /** use Vite to SSR */
34
35
  export declare function render(renderers: Renderer[], mod: ComponentInstance, ssrOpts: SSROptions): Promise<string>;
@@ -0,0 +1,8 @@
1
+ import type { ComponentInstance, GetStaticPathsItem, GetStaticPathsResultKeyed, RouteCache, RouteData } from '../../@types/astro';
2
+ import type { LogOptions } from '../logger';
3
+ declare type RSSFn = (...args: any[]) => any;
4
+ export declare function callGetStaticPaths(mod: ComponentInstance, route: RouteData, rssFn?: RSSFn): Promise<GetStaticPathsResultKeyed>;
5
+ export declare function assignStaticPaths(routeCache: RouteCache, route: RouteData, mod: ComponentInstance, rssFn?: RSSFn): Promise<void>;
6
+ export declare function ensureRouteCached(routeCache: RouteCache, route: RouteData, mod: ComponentInstance, rssFn?: RSSFn): Promise<GetStaticPathsResultKeyed>;
7
+ export declare function findPathItemByKey(staticPaths: GetStaticPathsResultKeyed, paramsKey: string, logging: LogOptions): GetStaticPathsItem | undefined;
8
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "astro",
3
- "version": "0.22.12",
3
+ "version": "0.22.13",
4
4
  "description": "Astro is a modern site builder with web best practices, performance, and DX front-of-mind.",
5
5
  "type": "module",
6
6
  "author": "withastro",