astro 0.22.15 → 0.22.19

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.
package/dist/cli/index.js CHANGED
@@ -1,19 +1,3 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
3
- var __hasOwnProp = Object.prototype.hasOwnProperty;
4
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
5
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
- var __spreadValues = (a, b) => {
7
- for (var prop in b || (b = {}))
8
- if (__hasOwnProp.call(b, prop))
9
- __defNormalProp(a, prop, b[prop]);
10
- if (__getOwnPropSymbols)
11
- for (var prop of __getOwnPropSymbols(b)) {
12
- if (__propIsEnum.call(b, prop))
13
- __defNormalProp(a, prop, b[prop]);
14
- }
15
- return a;
16
- };
17
1
  import * as colors from "kleur/colors";
18
2
  import fs from "fs";
19
3
  import yargs from "yargs-parser";
@@ -24,36 +8,6 @@ import devServer from "../core/dev/index.js";
24
8
  import preview from "../core/preview/index.js";
25
9
  import { check } from "./check.js";
26
10
  import { formatConfigError, loadConfig } from "../core/config.js";
27
- function resolveArgs(flags) {
28
- const options = {
29
- projectRoot: typeof flags.projectRoot === "string" ? flags.projectRoot : void 0,
30
- site: typeof flags.site === "string" ? flags.site : void 0,
31
- sitemap: typeof flags.sitemap === "boolean" ? flags.sitemap : void 0,
32
- port: typeof flags.port === "number" ? flags.port : void 0,
33
- config: typeof flags.config === "string" ? flags.config : void 0,
34
- hostname: typeof flags.hostname === "string" ? flags.hostname : void 0,
35
- experimentalStaticBuild: typeof flags.experimentalStaticBuild === "boolean" ? flags.experimentalStaticBuild : false,
36
- drafts: typeof flags.drafts === "boolean" ? flags.drafts : false
37
- };
38
- if (flags.version) {
39
- return { cmd: "version", options };
40
- } else if (flags.help) {
41
- return { cmd: "help", options };
42
- }
43
- const cmd = flags._[2];
44
- switch (cmd) {
45
- case "dev":
46
- return { cmd: "dev", options };
47
- case "build":
48
- return { cmd: "build", options };
49
- case "preview":
50
- return { cmd: "preview", options };
51
- case "check":
52
- return { cmd: "check", options };
53
- default:
54
- return { cmd: "help", options };
55
- }
56
- }
57
11
  function printHelp() {
58
12
  console.log(` ${colors.bold("astro")} - Futuristic web development tool.
59
13
  ${colors.bold("Commands:")}
@@ -80,26 +34,24 @@ async function printVersion() {
80
34
  const pkgVersion = pkg.version;
81
35
  console.log(pkgVersion);
82
36
  }
83
- function mergeCLIFlags(astroConfig, flags) {
84
- if (typeof flags.sitemap === "boolean")
85
- astroConfig.buildOptions.sitemap = flags.sitemap;
86
- if (typeof flags.site === "string")
87
- astroConfig.buildOptions.site = flags.site;
88
- if (typeof flags.port === "number")
89
- astroConfig.devOptions.port = flags.port;
90
- if (typeof flags.hostname === "string")
91
- astroConfig.devOptions.hostname = flags.hostname;
92
- if (typeof flags.experimentalStaticBuild === "boolean")
93
- astroConfig.buildOptions.experimentalStaticBuild = flags.experimentalStaticBuild;
94
- if (typeof flags.drafts === "boolean")
95
- astroConfig.buildOptions.drafts = flags.drafts;
37
+ function resolveCommand(flags) {
38
+ if (flags.version) {
39
+ return "version";
40
+ } else if (flags.help) {
41
+ return "help";
42
+ }
43
+ const cmd = flags._[2];
44
+ const supportedCommands = new Set(["dev", "build", "preview", "check"]);
45
+ if (supportedCommands.has(cmd)) {
46
+ return cmd;
47
+ }
48
+ return "help";
96
49
  }
97
50
  async function cli(args) {
98
51
  const flags = yargs(args);
99
- const state = resolveArgs(flags);
100
- const options = __spreadValues({}, state.options);
101
- const projectRoot = options.projectRoot || flags._[3];
102
- switch (state.cmd) {
52
+ const cmd = resolveCommand(flags);
53
+ const projectRoot = flags.projectRoot || flags._[3];
54
+ switch (cmd) {
103
55
  case "help":
104
56
  printHelp();
105
57
  return process.exit(0);
@@ -117,8 +69,7 @@ async function cli(args) {
117
69
  logging.level = "silent";
118
70
  let config;
119
71
  try {
120
- config = await loadConfig({ cwd: projectRoot, filename: options.config });
121
- mergeCLIFlags(config, options);
72
+ config = await loadConfig({ cwd: projectRoot, flags });
122
73
  } catch (err) {
123
74
  if (err instanceof z.ZodError) {
124
75
  console.error(formatConfigError(err));
@@ -127,7 +78,7 @@ async function cli(args) {
127
78
  }
128
79
  process.exit(1);
129
80
  }
130
- switch (state.cmd) {
81
+ switch (cmd) {
131
82
  case "dev": {
132
83
  try {
133
84
  await devServer(config, { logging });
@@ -160,7 +111,7 @@ async function cli(args) {
160
111
  return;
161
112
  }
162
113
  default: {
163
- throw new Error(`Error running ${state.cmd}`);
114
+ throw new Error(`Error running ${cmd}`);
164
115
  }
165
116
  }
166
117
  }
@@ -171,4 +122,4 @@ function throwAndExit(err) {
171
122
  export {
172
123
  cli
173
124
  };
174
- //# sourceMappingURL=data:application/json;base64,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
125
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NsaS9pbmRleC50cyJdLAogICJtYXBwaW5ncyI6ICJBQUtBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBTUEscUJBQXFCO0FBQ3BCLFVBQVEsSUFBSSxLQUFLLE9BQU8sS0FBSztBQUFBLElBQzFCLE9BQU8sS0FBSztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxJQU1aLE9BQU8sS0FBSztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFjaEIsOEJBQThCO0FBQzdCLFFBQU0sU0FBUyxJQUFJLElBQUksc0JBQXNCLFlBQVk7QUFDekQsUUFBTSxNQUFNLEtBQUssTUFBTSxNQUFNLEdBQUcsU0FBUyxTQUFTLFFBQVE7QUFDMUQsUUFBTSxhQUFhLElBQUk7QUFFdkIsVUFBUSxJQUFJO0FBQUE7QUFJYix3QkFBd0IsT0FBOEI7QUFDckQsTUFBSSxNQUFNLFNBQVM7QUFDbEIsV0FBTztBQUFBLGFBQ0csTUFBTSxNQUFNO0FBQ3RCLFdBQU87QUFBQTtBQUVSLFFBQU0sTUFBTSxNQUFNLEVBQUU7QUFDcEIsUUFBTSxvQkFBb0IsSUFBSSxJQUFJLENBQUMsT0FBTyxTQUFTLFdBQVc7QUFDOUQsTUFBSSxrQkFBa0IsSUFBSSxNQUFNO0FBQy9CLFdBQU87QUFBQTtBQUVSLFNBQU87QUFBQTtBQUlSLG1CQUEwQixNQUFnQjtBQUN6QyxRQUFNLFFBQVEsTUFBTTtBQUNwQixRQUFNLE1BQU0sZUFBZTtBQUMzQixRQUFNLGNBQWMsTUFBTSxlQUFlLE1BQU0sRUFBRTtBQUVqRCxVQUFRO0FBQUEsU0FDRjtBQUNKO0FBQ0EsYUFBTyxRQUFRLEtBQUs7QUFBQSxTQUNoQjtBQUNKLFlBQU07QUFDTixhQUFPLFFBQVEsS0FBSztBQUFBO0FBSXRCLE1BQUksVUFBc0I7QUFBQSxJQUN6QixNQUFNO0FBQUEsSUFDTixPQUFPO0FBQUE7QUFHUixNQUFJLE1BQU07QUFBUyxZQUFRLFFBQVE7QUFDbkMsTUFBSSxNQUFNO0FBQVEsWUFBUSxRQUFRO0FBQ2xDLE1BQUk7QUFDSixNQUFJO0FBQ0gsYUFBUyxNQUFNLFdBQVcsRUFBRSxLQUFLLGFBQWE7QUFBQSxXQUN0QyxLQUFQO0FBQ0QsUUFBSSxlQUFlLEVBQUUsVUFBVTtBQUM5QixjQUFRLE1BQU0sa0JBQWtCO0FBQUEsV0FDMUI7QUFDTixjQUFRLE1BQU0sT0FBTyxJQUFLLElBQVksY0FBYztBQUFBO0FBRXJELFlBQVEsS0FBSztBQUFBO0FBR2QsVUFBUTtBQUFBLFNBQ0YsT0FBTztBQUNYLFVBQUk7QUFDSCxjQUFNLFVBQVUsUUFBUSxFQUFFO0FBRTFCLGNBQU0sSUFBSSxRQUFRLE1BQU07QUFBQTtBQUFBLGVBQ2hCLEtBQVA7QUFDRCxxQkFBYTtBQUFBO0FBR2Q7QUFBQTtBQUFBLFNBR0ksU0FBUztBQUNiLFVBQUk7QUFDSCxjQUFNLE1BQU0sUUFBUSxFQUFFO0FBQ3RCLGdCQUFRLEtBQUs7QUFBQSxlQUNMLEtBQVA7QUFDRCxxQkFBYTtBQUFBO0FBRWQ7QUFBQTtBQUFBLFNBR0ksU0FBUztBQUNiLFlBQU0sTUFBTSxNQUFNLE1BQU07QUFDeEIsYUFBTyxRQUFRLEtBQUs7QUFBQTtBQUFBLFNBR2hCLFdBQVc7QUFDZixVQUFJO0FBQ0gsY0FBTSxRQUFRLFFBQVEsRUFBRTtBQUFBLGVBQ2hCLEtBQVA7QUFDRCxxQkFBYTtBQUFBO0FBRWQ7QUFBQTtBQUFBLGFBR1E7QUFDUixZQUFNLElBQUksTUFBTSxpQkFBaUI7QUFBQTtBQUFBO0FBQUE7QUFNcEMsc0JBQXNCLEtBQVU7QUFDL0IsVUFBUSxNQUFNLE9BQU8sSUFBSSxJQUFJLGNBQWM7QUFDM0MsVUFBUSxLQUFLO0FBQUE7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -104,7 +104,7 @@ class AstroBuilder {
104
104
  debug(logging, "build", timerMessage("Additional assets copied", timer.assetsStart));
105
105
  timer.sitemapStart = performance.now();
106
106
  if (this.config.buildOptions.sitemap && this.config.buildOptions.site) {
107
- const sitemap = generateSitemap(pageNames.map((pageName) => new URL(`/${pageName}`, this.config.buildOptions.site).href));
107
+ const sitemap = generateSitemap(pageNames.map((pageName) => new URL(pageName, this.config.buildOptions.site).href));
108
108
  const sitemapPath = new URL("./sitemap.xml", this.config.dist);
109
109
  await fs.promises.mkdir(new URL("./", sitemapPath), { recursive: true });
110
110
  await fs.promises.writeFile(sitemapPath, sitemap, "utf8");
@@ -127,4 +127,4 @@ class AstroBuilder {
127
127
  export {
128
128
  build as default
129
129
  };
130
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvcmUvYnVpbGQvaW5kZXgudHMiXSwKICAibWFwcGluZ3MiOiAiQUFHQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFRQSxxQkFBb0MsUUFBcUIsVUFBd0IsRUFBRSxTQUFTLHFCQUFvQztBQUUvSCxXQUFTLFlBQVk7QUFBQSxJQUNwQixTQUFTO0FBQUE7QUFHVixRQUFNLFVBQVUsSUFBSSxhQUFhLFFBQVE7QUFDekMsUUFBTSxRQUFRO0FBQUE7QUFHZixtQkFBbUI7QUFBQSxFQVVsQixZQUFZLFFBQXFCLFNBQXVCO0FBUGhELGdCQUFPO0FBRVAsc0JBQXlCO0FBTWhDLFFBQUksQ0FBQyxPQUFPLGFBQWEsUUFBUSxPQUFPLGFBQWEsWUFBWSxPQUFPO0FBQ3ZFLFdBQUssUUFBUSxTQUFTLFVBQVU7QUFBQTtBQUdqQyxRQUFJLFFBQVE7QUFBTSxXQUFLLE9BQU8sUUFBUTtBQUN0QyxTQUFLLFNBQVM7QUFDZCxVQUFNLE9BQU8sT0FBTyxXQUFXO0FBQy9CLFNBQUssVUFBVSxRQUFRO0FBQ3ZCLFNBQUssU0FBUyxPQUFPLGFBQWEsT0FBTyxJQUFJLElBQUksT0FBTyxhQUFhLE1BQU0sU0FBUyxvQkFBb0I7QUFDeEcsU0FBSyxXQUFXLG9CQUFvQixFQUFFLFVBQVUsS0FBSztBQUFBO0FBQUEsUUFHaEQsUUFBUTtBQUNiLFVBQU0sRUFBRSxTQUFTLFdBQVc7QUFDNUIsVUFBTSxRQUFnQztBQUN0QyxVQUFNLE9BQU8sWUFBWTtBQUN6QixVQUFNLFlBQVksWUFBWTtBQUM5QixVQUFNLGFBQWEsTUFBTSxXQUN4QixLQUFLLFlBQ0o7QUFBQSxNQUNDLE1BQU0sS0FBSztBQUFBLE1BQ1gsUUFBUTtBQUFBLFFBQ1AsS0FBSyxFQUFFLFNBQVM7QUFBQSxRQUNoQixnQkFBZ0I7QUFBQTtBQUFBLE9BR2xCLEtBQUssT0FBTyxRQUFRLEtBRXJCLEVBQUUsYUFBYSxLQUFLLFFBQVE7QUFFN0IsU0FBSyxhQUFhO0FBQ2xCLFVBQU0sYUFBYSxNQUFNLEtBQUssYUFBYTtBQUMzQyxTQUFLLGFBQWE7QUFDbEIsVUFBTSxTQUFTLFNBQVMsYUFBYSxnQkFBZ0IsTUFBTTtBQUUzRCxVQUFNLFlBQVksWUFBWTtBQUM5QixVQUFNLEVBQUUsUUFBUSxhQUFhLE1BQU0saUJBQWlCO0FBQUEsTUFDbkQsYUFBYSxLQUFLO0FBQUEsTUFDbEIsU0FBUyxLQUFLO0FBQUEsTUFDZCxVQUFVLEtBQUs7QUFBQSxNQUNmO0FBQUEsTUFDQSxZQUFZLEtBQUs7QUFBQSxNQUNqQixZQUFZLEtBQUs7QUFBQTtBQUlsQixXQUFPLFFBQVEsVUFBVSxRQUFRLENBQUMsQ0FBQyxNQUFNLFVBQVU7QUFDbEQsVUFBSSxpQkFBaUIsS0FBSyxRQUFRLElBQUk7QUFFckMsY0FBTSxjQUFlLEtBQUssUUFBUSxHQUFXO0FBQzdDLFlBQUksUUFBUSxZQUFZLFVBQVUsQ0FBQyxLQUFLLE9BQU8sYUFBYSxRQUFRO0FBQ25FLGdCQUFNLFNBQVMsU0FBUyxhQUFhLHVCQUF1QixRQUFRLE1BQU07QUFDMUUsaUJBQU8sU0FBUztBQUFBO0FBQUE7QUFBQTtBQUtuQixVQUFNLFNBQVMsU0FBUyxhQUFhLG9CQUFvQixNQUFNO0FBRy9ELFVBQU0sWUFBc0I7QUFJNUIsVUFBTSxhQUFhLFlBQVk7QUFHL0IsUUFBSSxLQUFLLE9BQU8sYUFBYSx5QkFBeUI7QUFDckQsWUFBTSxZQUFZO0FBQUEsUUFDakI7QUFBQSxRQUNBLGFBQWEsS0FBSztBQUFBLFFBQ2xCLFNBQVMsS0FBSztBQUFBLFFBQ2QsUUFBUSxLQUFLO0FBQUEsUUFDYjtBQUFBLFFBQ0EsWUFBWSxLQUFLO0FBQUEsUUFDakIsWUFBWSxLQUFLO0FBQUE7QUFBQSxXQUVaO0FBQ04sWUFBTSxlQUFlO0FBQUEsUUFDcEI7QUFBQSxRQUNBLGFBQWEsS0FBSztBQUFBLFFBQ2xCLFNBQVMsS0FBSztBQUFBLFFBQ2QsUUFBUSxLQUFLO0FBQUEsUUFDYjtBQUFBLFFBQ0EsWUFBWSxLQUFLO0FBQUEsUUFDakIsWUFBWSxLQUFLO0FBQUEsUUFDakIsWUFBWSxLQUFLO0FBQUE7QUFBQTtBQUduQixVQUFNLFNBQVMsU0FBUyxhQUFhLHVCQUF1QixNQUFNO0FBR2xFLFVBQU0sY0FBYyxZQUFZO0FBQ2hDLFdBQU8sS0FBSyxRQUFRLElBQUksQ0FBQyxNQUFNO0FBQzlCLFVBQUksQ0FBQyxPQUFPO0FBQUk7QUFDaEIsWUFBTSxXQUFXLElBQUksSUFBSSxVQUFVO0FBQ25DLFNBQUcsVUFBVSxJQUFJLElBQUksTUFBTSxXQUFXLEVBQUUsV0FBVztBQUNuRCxTQUFHLGNBQWMsVUFBVSxPQUFPLElBQUk7QUFDdEMsYUFBTyxPQUFPO0FBQUE7QUFFZixVQUFNLFNBQVMsU0FBUyxhQUFhLDRCQUE0QixNQUFNO0FBR3ZFLFVBQU0sZUFBZSxZQUFZO0FBQ2pDLFFBQUksS0FBSyxPQUFPLGFBQWEsV0FBVyxLQUFLLE9BQU8sYUFBYSxNQUFNO0FBQ3RFLFlBQU0sVUFBVSxnQkFBZ0IsVUFBVSxJQUFJLENBQUMsYUFBYSxJQUFJLElBQUksSUFBSSxZQUFZLEtBQUssT0FBTyxhQUFhLE1BQU07QUFDbkgsWUFBTSxjQUFjLElBQUksSUFBSSxpQkFBaUIsS0FBSyxPQUFPO0FBQ3pELFlBQU0sR0FBRyxTQUFTLE1BQU0sSUFBSSxJQUFJLE1BQU0sY0FBYyxFQUFFLFdBQVc7QUFDakUsWUFBTSxHQUFHLFNBQVMsVUFBVSxhQUFhLFNBQVM7QUFBQTtBQUVuRCxVQUFNLFNBQVMsU0FBUyxhQUFhLGlCQUFpQixNQUFNO0FBRzVELFVBQU0sV0FBVztBQUNqQixRQUFJLFFBQVEsU0FBUyxPQUFPLFFBQVEsVUFBVSxPQUFPLFNBQVM7QUFDN0QsWUFBTSxLQUFLLFdBQVcsRUFBRSxTQUFTLFdBQVcsTUFBTSxNQUFNLFdBQVcsVUFBVTtBQUFBO0FBQUE7QUFBQSxRQUtqRSxXQUFXLEVBQUUsU0FBUyxXQUFXLGFBQTRFO0FBRTFILFVBQU0sU0FBUztBQUNmLFVBQU0sWUFBWSxZQUFZLFFBQVE7QUFDdEMsVUFBTSxRQUFRLFlBQVksTUFBTSxHQUFHLEtBQUssTUFBTSxpQkFBaUIsR0FBSSxhQUFZLEtBQU0sUUFBUTtBQUM3RixVQUFNLFVBQVUsR0FBRyxLQUFLLE1BQU0sWUFBWTtBQUMxQyxTQUFLLFNBQVMsU0FBUyxHQUFHLDRCQUE0QixPQUFPLEtBQUssVUFBVSxPQUFPLElBQUksSUFBSTtBQUMzRixTQUFLLFNBQVMsU0FBUyxhQUFNLE9BQU8sS0FBSyxPQUFPLEtBQUs7QUFBQTtBQUFBOyIsCiAgIm5hbWVzIjogW10KfQo=
130
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvcmUvYnVpbGQvaW5kZXgudHMiXSwKICAibWFwcGluZ3MiOiAiQUFHQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFRQSxxQkFBb0MsUUFBcUIsVUFBd0IsRUFBRSxTQUFTLHFCQUFvQztBQUUvSCxXQUFTLFlBQVk7QUFBQSxJQUNwQixTQUFTO0FBQUE7QUFHVixRQUFNLFVBQVUsSUFBSSxhQUFhLFFBQVE7QUFDekMsUUFBTSxRQUFRO0FBQUE7QUFHZixtQkFBbUI7QUFBQSxFQVVsQixZQUFZLFFBQXFCLFNBQXVCO0FBUGhELGdCQUFPO0FBRVAsc0JBQXlCO0FBTWhDLFFBQUksQ0FBQyxPQUFPLGFBQWEsUUFBUSxPQUFPLGFBQWEsWUFBWSxPQUFPO0FBQ3ZFLFdBQUssUUFBUSxTQUFTLFVBQVU7QUFBQTtBQUdqQyxRQUFJLFFBQVE7QUFBTSxXQUFLLE9BQU8sUUFBUTtBQUN0QyxTQUFLLFNBQVM7QUFDZCxVQUFNLE9BQU8sT0FBTyxXQUFXO0FBQy9CLFNBQUssVUFBVSxRQUFRO0FBQ3ZCLFNBQUssU0FBUyxPQUFPLGFBQWEsT0FBTyxJQUFJLElBQUksT0FBTyxhQUFhLE1BQU0sU0FBUyxvQkFBb0I7QUFDeEcsU0FBSyxXQUFXLG9CQUFvQixFQUFFLFVBQVUsS0FBSztBQUFBO0FBQUEsUUFHaEQsUUFBUTtBQUNiLFVBQU0sRUFBRSxTQUFTLFdBQVc7QUFDNUIsVUFBTSxRQUFnQztBQUN0QyxVQUFNLE9BQU8sWUFBWTtBQUN6QixVQUFNLFlBQVksWUFBWTtBQUM5QixVQUFNLGFBQWEsTUFBTSxXQUN4QixLQUFLLFlBQ0o7QUFBQSxNQUNDLE1BQU0sS0FBSztBQUFBLE1BQ1gsUUFBUTtBQUFBLFFBQ1AsS0FBSyxFQUFFLFNBQVM7QUFBQSxRQUNoQixnQkFBZ0I7QUFBQTtBQUFBLE9BR2xCLEtBQUssT0FBTyxRQUFRLEtBRXJCLEVBQUUsYUFBYSxLQUFLLFFBQVE7QUFFN0IsU0FBSyxhQUFhO0FBQ2xCLFVBQU0sYUFBYSxNQUFNLEtBQUssYUFBYTtBQUMzQyxTQUFLLGFBQWE7QUFDbEIsVUFBTSxTQUFTLFNBQVMsYUFBYSxnQkFBZ0IsTUFBTTtBQUUzRCxVQUFNLFlBQVksWUFBWTtBQUM5QixVQUFNLEVBQUUsUUFBUSxhQUFhLE1BQU0saUJBQWlCO0FBQUEsTUFDbkQsYUFBYSxLQUFLO0FBQUEsTUFDbEIsU0FBUyxLQUFLO0FBQUEsTUFDZCxVQUFVLEtBQUs7QUFBQSxNQUNmO0FBQUEsTUFDQSxZQUFZLEtBQUs7QUFBQSxNQUNqQixZQUFZLEtBQUs7QUFBQTtBQUlsQixXQUFPLFFBQVEsVUFBVSxRQUFRLENBQUMsQ0FBQyxNQUFNLFVBQVU7QUFDbEQsVUFBSSxpQkFBaUIsS0FBSyxRQUFRLElBQUk7QUFFckMsY0FBTSxjQUFlLEtBQUssUUFBUSxHQUFXO0FBQzdDLFlBQUksUUFBUSxZQUFZLFVBQVUsQ0FBQyxLQUFLLE9BQU8sYUFBYSxRQUFRO0FBQ25FLGdCQUFNLFNBQVMsU0FBUyxhQUFhLHVCQUF1QixRQUFRLE1BQU07QUFDMUUsaUJBQU8sU0FBUztBQUFBO0FBQUE7QUFBQTtBQUtuQixVQUFNLFNBQVMsU0FBUyxhQUFhLG9CQUFvQixNQUFNO0FBRy9ELFVBQU0sWUFBc0I7QUFJNUIsVUFBTSxhQUFhLFlBQVk7QUFHL0IsUUFBSSxLQUFLLE9BQU8sYUFBYSx5QkFBeUI7QUFDckQsWUFBTSxZQUFZO0FBQUEsUUFDakI7QUFBQSxRQUNBLGFBQWEsS0FBSztBQUFBLFFBQ2xCLFNBQVMsS0FBSztBQUFBLFFBQ2QsUUFBUSxLQUFLO0FBQUEsUUFDYjtBQUFBLFFBQ0EsWUFBWSxLQUFLO0FBQUEsUUFDakIsWUFBWSxLQUFLO0FBQUE7QUFBQSxXQUVaO0FBQ04sWUFBTSxlQUFlO0FBQUEsUUFDcEI7QUFBQSxRQUNBLGFBQWEsS0FBSztBQUFBLFFBQ2xCLFNBQVMsS0FBSztBQUFBLFFBQ2QsUUFBUSxLQUFLO0FBQUEsUUFDYjtBQUFBLFFBQ0EsWUFBWSxLQUFLO0FBQUEsUUFDakIsWUFBWSxLQUFLO0FBQUEsUUFDakIsWUFBWSxLQUFLO0FBQUE7QUFBQTtBQUduQixVQUFNLFNBQVMsU0FBUyxhQUFhLHVCQUF1QixNQUFNO0FBR2xFLFVBQU0sY0FBYyxZQUFZO0FBQ2hDLFdBQU8sS0FBSyxRQUFRLElBQUksQ0FBQyxNQUFNO0FBQzlCLFVBQUksQ0FBQyxPQUFPO0FBQUk7QUFDaEIsWUFBTSxXQUFXLElBQUksSUFBSSxVQUFVO0FBQ25DLFNBQUcsVUFBVSxJQUFJLElBQUksTUFBTSxXQUFXLEVBQUUsV0FBVztBQUNuRCxTQUFHLGNBQWMsVUFBVSxPQUFPLElBQUk7QUFDdEMsYUFBTyxPQUFPO0FBQUE7QUFFZixVQUFNLFNBQVMsU0FBUyxhQUFhLDRCQUE0QixNQUFNO0FBR3ZFLFVBQU0sZUFBZSxZQUFZO0FBQ2pDLFFBQUksS0FBSyxPQUFPLGFBQWEsV0FBVyxLQUFLLE9BQU8sYUFBYSxNQUFNO0FBQ3RFLFlBQU0sVUFBVSxnQkFBZ0IsVUFBVSxJQUFJLENBQUMsYUFBYSxJQUFJLElBQUksVUFBVSxLQUFLLE9BQU8sYUFBYSxNQUFNO0FBQzdHLFlBQU0sY0FBYyxJQUFJLElBQUksaUJBQWlCLEtBQUssT0FBTztBQUN6RCxZQUFNLEdBQUcsU0FBUyxNQUFNLElBQUksSUFBSSxNQUFNLGNBQWMsRUFBRSxXQUFXO0FBQ2pFLFlBQU0sR0FBRyxTQUFTLFVBQVUsYUFBYSxTQUFTO0FBQUE7QUFFbkQsVUFBTSxTQUFTLFNBQVMsYUFBYSxpQkFBaUIsTUFBTTtBQUc1RCxVQUFNLFdBQVc7QUFDakIsUUFBSSxRQUFRLFNBQVMsT0FBTyxRQUFRLFVBQVUsT0FBTyxTQUFTO0FBQzdELFlBQU0sS0FBSyxXQUFXLEVBQUUsU0FBUyxXQUFXLE1BQU0sTUFBTSxXQUFXLFVBQVU7QUFBQTtBQUFBO0FBQUEsUUFLakUsV0FBVyxFQUFFLFNBQVMsV0FBVyxhQUE0RTtBQUUxSCxVQUFNLFNBQVM7QUFDZixVQUFNLFlBQVksWUFBWSxRQUFRO0FBQ3RDLFVBQU0sUUFBUSxZQUFZLE1BQU0sR0FBRyxLQUFLLE1BQU0saUJBQWlCLEdBQUksYUFBWSxLQUFNLFFBQVE7QUFDN0YsVUFBTSxVQUFVLEdBQUcsS0FBSyxNQUFNLFlBQVk7QUFDMUMsU0FBSyxTQUFTLFNBQVMsR0FBRyw0QkFBNEIsT0FBTyxLQUFLLFVBQVUsT0FBTyxJQUFJLElBQUk7QUFDM0YsU0FBSyxTQUFTLFNBQVMsYUFBTSxPQUFPLEtBQUssT0FBTyxLQUFLO0FBQUE7QUFBQTsiLAogICJuYW1lcyI6IFtdCn0K
@@ -4,16 +4,20 @@ function createBuildInternals() {
4
4
  const astroStyleMap = new Map();
5
5
  const astroPageStyleMap = new Map();
6
6
  const facadeIdToAssetsMap = new Map();
7
+ const hoistedScriptIdToHoistedMap = new Map();
8
+ const facadeIdToHoistedEntryMap = new Map();
7
9
  return {
8
10
  pureCSSChunks,
9
11
  chunkToReferenceIdMap,
10
12
  astroStyleMap,
11
13
  astroPageStyleMap,
12
14
  facadeIdToAssetsMap,
15
+ hoistedScriptIdToHoistedMap,
16
+ facadeIdToHoistedEntryMap,
13
17
  entrySpecifierToBundleMap: new Map()
14
18
  };
15
19
  }
16
20
  export {
17
21
  createBuildInternals
18
22
  };
19
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvcmUvYnVpbGQvaW50ZXJuYWwudHMiXSwKICAibWFwcGluZ3MiOiAiQUEwQk8sZ0NBQWdEO0FBR3RELFFBQU0sZ0JBQWdCLElBQUk7QUFDMUIsUUFBTSx3QkFBd0IsSUFBSTtBQUlsQyxRQUFNLGdCQUFnQixJQUFJO0FBRTFCLFFBQU0sb0JBQW9CLElBQUk7QUFHOUIsUUFBTSxzQkFBc0IsSUFBSTtBQUVoQyxTQUFPO0FBQUEsSUFDTjtBQUFBLElBQ0E7QUFBQSxJQUNBO0FBQUEsSUFDQTtBQUFBLElBQ0E7QUFBQSxJQUNBLDJCQUEyQixJQUFJO0FBQUE7QUFBQTsiLAogICJuYW1lcyI6IFtdCn0K
23
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvcmUvYnVpbGQvaW50ZXJuYWwudHMiXSwKICAibWFwcGluZ3MiOiAiQUE2Qk8sZ0NBQWdEO0FBR3RELFFBQU0sZ0JBQWdCLElBQUk7QUFDMUIsUUFBTSx3QkFBd0IsSUFBSTtBQUlsQyxRQUFNLGdCQUFnQixJQUFJO0FBRTFCLFFBQU0sb0JBQW9CLElBQUk7QUFHOUIsUUFBTSxzQkFBc0IsSUFBSTtBQUdoQyxRQUFNLDhCQUE4QixJQUFJO0FBQ3hDLFFBQU0sNEJBQTRCLElBQUk7QUFFdEMsU0FBTztBQUFBLElBQ047QUFBQSxJQUNBO0FBQUEsSUFDQTtBQUFBLElBQ0E7QUFBQSxJQUNBO0FBQUEsSUFDQTtBQUFBLElBQ0E7QUFBQSxJQUNBLDJCQUEyQixJQUFJO0FBQUE7QUFBQTsiLAogICJuYW1lcyI6IFtdCn0K
@@ -10,7 +10,7 @@ async function collectPagesData(opts) {
10
10
  const assets = {};
11
11
  const allPages = {};
12
12
  await Promise.all(manifest.routes.map(async (route) => {
13
- var _a, _b, _c;
13
+ var _a, _b;
14
14
  if (route.pathname) {
15
15
  allPages[route.component] = {
16
16
  route,
@@ -44,25 +44,30 @@ async function collectPagesData(opts) {
44
44
  debug(logging, "build", `\u251C\u2500\u2500 ${colors.bold(colors.red("\u2717"))} ${route.component}`);
45
45
  throw err;
46
46
  });
47
- if ((_a = result.rss) == null ? void 0 : _a.xml) {
48
- const { url, content } = result.rss.xml;
49
- if (content) {
50
- const rssFile = new URL(url.replace(/^\/?/, "./"), astroConfig.dist);
51
- if (assets[fileURLToPath(rssFile)]) {
52
- throw new Error(`[getStaticPaths] RSS feed ${url} already exists.
47
+ if ((_a = result.rss) == null ? void 0 : _a.length) {
48
+ for (let i = 0; i < result.rss.length; i++) {
49
+ const rss = result.rss[i];
50
+ if (rss.xml) {
51
+ const { url, content } = rss.xml;
52
+ if (content) {
53
+ const rssFile = new URL(url.replace(/^\/?/, "./"), astroConfig.dist);
54
+ if (assets[fileURLToPath(rssFile)]) {
55
+ throw new Error(`[getStaticPaths] RSS feed ${url} already exists.
53
56
  Use \`rss(data, {url: '...'})\` to choose a unique, custom URL. (${route.component})`);
57
+ }
58
+ assets[fileURLToPath(rssFile)] = content;
59
+ }
54
60
  }
55
- assets[fileURLToPath(rssFile)] = content;
56
- }
57
- }
58
- if ((_c = (_b = result.rss) == null ? void 0 : _b.xsl) == null ? void 0 : _c.content) {
59
- const { url, content } = result.rss.xsl;
60
- const stylesheetFile = new URL(url.replace(/^\/?/, "./"), astroConfig.dist);
61
- if (assets[fileURLToPath(stylesheetFile)]) {
62
- throw new Error(`[getStaticPaths] RSS feed stylesheet ${url} already exists.
61
+ if ((_b = rss.xsl) == null ? void 0 : _b.content) {
62
+ const { url, content } = rss.xsl;
63
+ const stylesheetFile = new URL(url.replace(/^\/?/, "./"), astroConfig.dist);
64
+ if (assets[fileURLToPath(stylesheetFile)]) {
65
+ throw new Error(`[getStaticPaths] RSS feed stylesheet ${url} already exists.
63
66
  Use \`rss(data, {stylesheet: '...'})\` to choose a unique, custom URL. (${route.component})`);
67
+ }
68
+ assets[fileURLToPath(stylesheetFile)] = content;
69
+ }
64
70
  }
65
- assets[fileURLToPath(stylesheetFile)] = content;
66
71
  }
67
72
  allPages[route.component] = {
68
73
  route,
@@ -101,4 +106,4 @@ async function getStaticPathsForRoute(opts, route) {
101
106
  export {
102
107
  collectPagesData
103
108
  };
104
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvcmUvYnVpbGQvcGFnZS1kYXRhLnRzIl0sCiAgIm1hcHBpbmdzIjogIkFBS0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBQ0E7QUFpQkEsZ0NBQXVDLE1BQWdFO0FBQ3RHLFFBQU0sRUFBRSxhQUFhLFNBQVMsVUFBVSxRQUFRLFlBQVksZUFBZTtBQUUzRSxRQUFNLFNBQWlDO0FBQ3ZDLFFBQU0sV0FBeUI7QUFNL0IsUUFBTSxRQUFRLElBQ2IsU0FBUyxPQUFPLElBQUksT0FBTyxVQUFVO0FBeEN2QztBQTBDRyxRQUFJLE1BQU0sVUFBVTtBQUNuQixlQUFTLE1BQU0sYUFBYTtBQUFBLFFBQzNCO0FBQUEsUUFDQSxPQUFPLENBQUMsTUFBTTtBQUFBLFFBQ2QsU0FBUyxNQUFNLFdBQVc7QUFBQSxVQUN6QjtBQUFBLFVBQ0EsVUFBVSxJQUFJLElBQUksS0FBSyxNQUFNLGFBQWEsWUFBWTtBQUFBLFVBQ3REO0FBQUEsVUFDQSxNQUFNO0FBQUEsVUFDTjtBQUFBLFVBQ0EsVUFBVSxNQUFNO0FBQUEsVUFDaEI7QUFBQSxVQUNBO0FBQUEsVUFDQTtBQUFBLFdBRUMsS0FBSyxDQUFDLFdBQVc7QUFDakIsZ0JBQU0sT0FBTyxHQUFHLE1BQU0sV0FBVyxRQUFRLFFBQVE7QUFDakQsZ0JBQU0sU0FBUyxTQUFTLHNCQUFPLE9BQU8sS0FBSyxPQUFPLE1BQU0sY0FBUyxNQUFNLG9CQUFlLE9BQU8sT0FBTztBQUNwRyxpQkFBTztBQUFBLFdBRVAsTUFBTSxDQUFDLFFBQVE7QUFDZixnQkFBTSxTQUFTLFNBQVMsc0JBQU8sT0FBTyxLQUFLLE9BQU8sSUFBSSxjQUFTLE1BQU07QUFDckUsZ0JBQU07QUFBQTtBQUFBO0FBR1Q7QUFBQTtBQUdELFVBQU0sU0FBUyxNQUFNLHVCQUF1QixNQUFNLE9BQ2hELEtBQUssQ0FBQyxXQUFXO0FBQ2pCLFlBQU0sUUFBUSxPQUFPLE1BQU0sV0FBVyxJQUFJLFNBQVM7QUFDbkQsWUFBTSxTQUFTLFNBQVMsc0JBQU8sT0FBTyxLQUFLLE9BQU8sTUFBTSxjQUFTLE1BQU0sb0JBQWUsT0FBTyxRQUFRLElBQUksT0FBTyxNQUFNLFVBQVU7QUFDaEksYUFBTztBQUFBLE9BRVAsTUFBTSxDQUFDLFFBQVE7QUFDZixZQUFNLFNBQVMsU0FBUyxzQkFBTyxPQUFPLEtBQUssT0FBTyxJQUFJLGNBQVMsTUFBTTtBQUNyRSxZQUFNO0FBQUE7QUFFUixRQUFJLGFBQU8sUUFBUCxtQkFBWSxLQUFLO0FBQ3BCLFlBQU0sRUFBRSxLQUFLLFlBQVksT0FBTyxJQUFJO0FBQ3BDLFVBQUksU0FBUztBQUNaLGNBQU0sVUFBVSxJQUFJLElBQUksSUFBSSxRQUFRLFFBQVEsT0FBTyxZQUFZO0FBQy9ELFlBQUksT0FBTyxjQUFjLFdBQVc7QUFDbkMsZ0JBQU0sSUFBSSxNQUFNLDZCQUE2QjtBQUFBLG1FQUF5RixNQUFNO0FBQUE7QUFFN0ksZUFBTyxjQUFjLFlBQVk7QUFBQTtBQUFBO0FBR25DLFFBQUksbUJBQU8sUUFBUCxtQkFBWSxRQUFaLG1CQUFpQixTQUFTO0FBQzdCLFlBQU0sRUFBRSxLQUFLLFlBQVksT0FBTyxJQUFJO0FBQ3BDLFlBQU0saUJBQWlCLElBQUksSUFBSSxJQUFJLFFBQVEsUUFBUSxPQUFPLFlBQVk7QUFDdEUsVUFBSSxPQUFPLGNBQWMsa0JBQWtCO0FBQzFDLGNBQU0sSUFBSSxNQUNULHdDQUF3QztBQUFBLDBFQUFnRyxNQUFNO0FBQUE7QUFHaEosYUFBTyxjQUFjLG1CQUFtQjtBQUFBO0FBRXpDLGFBQVMsTUFBTSxhQUFhO0FBQUEsTUFDM0I7QUFBQSxNQUNBLE9BQU8sT0FBTztBQUFBLE1BQ2QsU0FBUyxNQUFNLFdBQVc7QUFBQSxRQUN6QjtBQUFBLFFBQ0EsVUFBVSxJQUFJLElBQUksS0FBSyxNQUFNLGFBQWEsWUFBWTtBQUFBLFFBQ3REO0FBQUEsUUFDQSxNQUFNO0FBQUEsUUFDTjtBQUFBLFFBQ0EsVUFBVSxPQUFPLE1BQU07QUFBQSxRQUN2QjtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUE7QUFBQTtBQUFBO0FBTUosU0FBTyxFQUFFLFFBQVE7QUFBQTtBQUdsQixzQ0FBc0MsTUFBK0IsT0FBaUU7QUFDckksUUFBTSxFQUFFLGFBQWEsU0FBUyxZQUFZLGVBQWU7QUFDekQsTUFBSSxDQUFDO0FBQVksVUFBTSxJQUFJLE1BQU07QUFDakMsUUFBTSxXQUFXLElBQUksSUFBSSxLQUFLLE1BQU0sYUFBYSxZQUFZO0FBQzdELFFBQU0sTUFBTyxNQUFNLFdBQVcsY0FBYyxjQUFjO0FBQzFELCtCQUE2QjtBQUM3QixRQUFNLE1BQU0sb0JBQW9CLFlBQVksYUFBYSxNQUFNO0FBQy9ELFFBQU0sa0JBQWtCLFlBQVksT0FBTyxLQUFLLElBQUk7QUFDcEQsUUFBTSxjQUFjLFdBQVcsTUFBTTtBQUNyQywrQkFBNkIsYUFBYTtBQUMxQyxTQUFPO0FBQUEsSUFDTixPQUFPLFlBQVksSUFBSSxDQUFDLGVBQWUsV0FBVyxVQUFVLE1BQU0sU0FBUyxXQUFXLFNBQVMsT0FBTztBQUFBLElBQ3RHLEtBQUssSUFBSTtBQUFBO0FBQUE7IiwKICAibmFtZXMiOiBbXQp9Cg==
109
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvcmUvYnVpbGQvcGFnZS1kYXRhLnRzIl0sCiAgIm1hcHBpbmdzIjogIkFBS0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBQ0E7QUFpQkEsZ0NBQXVDLE1BQWdFO0FBQ3RHLFFBQU0sRUFBRSxhQUFhLFNBQVMsVUFBVSxRQUFRLFlBQVksZUFBZTtBQUUzRSxRQUFNLFNBQWlDO0FBQ3ZDLFFBQU0sV0FBeUI7QUFNL0IsUUFBTSxRQUFRLElBQ2IsU0FBUyxPQUFPLElBQUksT0FBTyxVQUFVO0FBeEN2QztBQTBDRyxRQUFJLE1BQU0sVUFBVTtBQUNuQixlQUFTLE1BQU0sYUFBYTtBQUFBLFFBQzNCO0FBQUEsUUFDQSxPQUFPLENBQUMsTUFBTTtBQUFBLFFBQ2QsU0FBUyxNQUFNLFdBQVc7QUFBQSxVQUN6QjtBQUFBLFVBQ0EsVUFBVSxJQUFJLElBQUksS0FBSyxNQUFNLGFBQWEsWUFBWTtBQUFBLFVBQ3REO0FBQUEsVUFDQSxNQUFNO0FBQUEsVUFDTjtBQUFBLFVBQ0EsVUFBVSxNQUFNO0FBQUEsVUFDaEI7QUFBQSxVQUNBO0FBQUEsVUFDQTtBQUFBLFdBRUMsS0FBSyxDQUFDLFdBQVc7QUFDakIsZ0JBQU0sT0FBTyxHQUFHLE1BQU0sV0FBVyxRQUFRLFFBQVE7QUFDakQsZ0JBQU0sU0FBUyxTQUFTLHNCQUFPLE9BQU8sS0FBSyxPQUFPLE1BQU0sY0FBUyxNQUFNLG9CQUFlLE9BQU8sT0FBTztBQUNwRyxpQkFBTztBQUFBLFdBRVAsTUFBTSxDQUFDLFFBQVE7QUFDZixnQkFBTSxTQUFTLFNBQVMsc0JBQU8sT0FBTyxLQUFLLE9BQU8sSUFBSSxjQUFTLE1BQU07QUFDckUsZ0JBQU07QUFBQTtBQUFBO0FBR1Q7QUFBQTtBQUdELFVBQU0sU0FBUyxNQUFNLHVCQUF1QixNQUFNLE9BQ2hELEtBQUssQ0FBQyxXQUFXO0FBQ2pCLFlBQU0sUUFBUSxPQUFPLE1BQU0sV0FBVyxJQUFJLFNBQVM7QUFDbkQsWUFBTSxTQUFTLFNBQVMsc0JBQU8sT0FBTyxLQUFLLE9BQU8sTUFBTSxjQUFTLE1BQU0sb0JBQWUsT0FBTyxRQUFRLElBQUksT0FBTyxNQUFNLFVBQVU7QUFDaEksYUFBTztBQUFBLE9BRVAsTUFBTSxDQUFDLFFBQVE7QUFDZixZQUFNLFNBQVMsU0FBUyxzQkFBTyxPQUFPLEtBQUssT0FBTyxJQUFJLGNBQVMsTUFBTTtBQUNyRSxZQUFNO0FBQUE7QUFFUixRQUFJLGFBQU8sUUFBUCxtQkFBWSxRQUFRO0FBQ3ZCLGVBQVMsSUFBSSxHQUFHLElBQUksT0FBTyxJQUFJLFFBQVEsS0FBSztBQUMzQyxjQUFNLE1BQU0sT0FBTyxJQUFJO0FBQ3ZCLFlBQUksSUFBSSxLQUFLO0FBQ1osZ0JBQU0sRUFBRSxLQUFLLFlBQVksSUFBSTtBQUM3QixjQUFJLFNBQVM7QUFDWixrQkFBTSxVQUFVLElBQUksSUFBSSxJQUFJLFFBQVEsUUFBUSxPQUFPLFlBQVk7QUFDL0QsZ0JBQUksT0FBTyxjQUFjLFdBQVc7QUFDbkMsb0JBQU0sSUFBSSxNQUFNLDZCQUE2QjtBQUFBLG1FQUF5RixNQUFNO0FBQUE7QUFFN0ksbUJBQU8sY0FBYyxZQUFZO0FBQUE7QUFBQTtBQUduQyxZQUFJLFVBQUksUUFBSixtQkFBUyxTQUFTO0FBQ3JCLGdCQUFNLEVBQUUsS0FBSyxZQUFZLElBQUk7QUFDN0IsZ0JBQU0saUJBQWlCLElBQUksSUFBSSxJQUFJLFFBQVEsUUFBUSxPQUFPLFlBQVk7QUFDdEUsY0FBSSxPQUFPLGNBQWMsa0JBQWtCO0FBQzFDLGtCQUFNLElBQUksTUFDVCx3Q0FBd0M7QUFBQSwwRUFBZ0csTUFBTTtBQUFBO0FBR2hKLGlCQUFPLGNBQWMsbUJBQW1CO0FBQUE7QUFBQTtBQUFBO0FBSTNDLGFBQVMsTUFBTSxhQUFhO0FBQUEsTUFDM0I7QUFBQSxNQUNBLE9BQU8sT0FBTztBQUFBLE1BQ2QsU0FBUyxNQUFNLFdBQVc7QUFBQSxRQUN6QjtBQUFBLFFBQ0EsVUFBVSxJQUFJLElBQUksS0FBSyxNQUFNLGFBQWEsWUFBWTtBQUFBLFFBQ3REO0FBQUEsUUFDQSxNQUFNO0FBQUEsUUFDTjtBQUFBLFFBQ0EsVUFBVSxPQUFPLE1BQU07QUFBQSxRQUN2QjtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUE7QUFBQTtBQUFBO0FBTUosU0FBTyxFQUFFLFFBQVE7QUFBQTtBQUdsQixzQ0FBc0MsTUFBK0IsT0FBbUU7QUFDdkksUUFBTSxFQUFFLGFBQWEsU0FBUyxZQUFZLGVBQWU7QUFDekQsTUFBSSxDQUFDO0FBQVksVUFBTSxJQUFJLE1BQU07QUFDakMsUUFBTSxXQUFXLElBQUksSUFBSSxLQUFLLE1BQU0sYUFBYSxZQUFZO0FBQzdELFFBQU0sTUFBTyxNQUFNLFdBQVcsY0FBYyxjQUFjO0FBQzFELCtCQUE2QjtBQUM3QixRQUFNLE1BQU0sb0JBQW9CLFlBQVksYUFBYSxNQUFNO0FBQy9ELFFBQU0sa0JBQWtCLFlBQVksT0FBTyxLQUFLLElBQUk7QUFDcEQsUUFBTSxjQUFjLFdBQVcsTUFBTTtBQUNyQywrQkFBNkIsYUFBYTtBQUMxQyxTQUFPO0FBQUEsSUFDTixPQUFPLFlBQVksSUFBSSxDQUFDLGVBQWUsV0FBVyxVQUFVLE1BQU0sU0FBUyxXQUFXLFNBQVMsT0FBTztBQUFBLElBQ3RHLEtBQUssSUFBSTtBQUFBO0FBQUE7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -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
+ import { vitePluginHoistedScripts } from "./vite-plugin-hoisted-scripts.js";
13
14
  const MAX_CONCURRENT_RENDERS = 10;
14
15
  function addPageName(pathname, opts) {
15
16
  const pathrepl = opts.astroConfig.buildOptions.pageUrlFormat === "directory" ? "/index.html" : pathname === "/" ? "index.html" : ".html";
@@ -39,6 +40,9 @@ function* throttle(max, inPaths) {
39
40
  yield tmp;
40
41
  }
41
42
  }
43
+ function getByFacadeId(facadeId, map) {
44
+ return map.get(facadeId) || map.get("/" + facadeId);
45
+ }
42
46
  async function staticBuild(opts) {
43
47
  const { allPages, astroConfig } = opts;
44
48
  const pageInput = new Set();
@@ -50,7 +54,10 @@ async function staticBuild(opts) {
50
54
  for (const polyfill of polyfills) {
51
55
  jsInput.add(polyfill);
52
56
  }
57
+ const internals = createBuildInternals();
53
58
  for (const [component, pageData] of Object.entries(allPages)) {
59
+ const astroModuleURL = new URL("./" + component, astroConfig.projectRoot);
60
+ const astroModuleId = astroModuleURL.pathname;
54
61
  const [renderers, mod] = pageData.preload;
55
62
  const metadata = mod.$$metadata;
56
63
  const topLevelImports = new Set([
@@ -58,14 +65,18 @@ async function staticBuild(opts) {
58
65
  ...metadata.hydrationDirectiveSpecifiers(),
59
66
  ...renderers.filter((renderer) => !!renderer.source).map((renderer) => renderer.source)
60
67
  ]);
68
+ const hoistedScripts = new Set(metadata.hoistedScriptPaths());
69
+ if (hoistedScripts.size) {
70
+ const moduleId = new URL("./hoisted.js", astroModuleURL + "/").pathname;
71
+ internals.hoistedScriptIdToHoistedMap.set(moduleId, hoistedScripts);
72
+ topLevelImports.add(moduleId);
73
+ }
61
74
  for (const specifier of topLevelImports) {
62
75
  jsInput.add(specifier);
63
76
  }
64
- let astroModuleId = new URL("./" + component, astroConfig.projectRoot).pathname;
65
77
  pageInput.add(astroModuleId);
66
78
  facadeIdToPageDataMap.set(astroModuleId, pageData);
67
79
  }
68
- const internals = createBuildInternals();
69
80
  prepareOutDir(astroConfig);
70
81
  const [ssrResult] = await Promise.all([ssrBuild(opts, internals, pageInput), clientBuild(opts, internals, jsInput)]);
71
82
  await generatePages(ssrResult, opts, internals, facadeIdToPageDataMap);
@@ -100,7 +111,8 @@ async function ssrBuild(opts, internals, input) {
100
111
  root: viteConfig.root,
101
112
  envPrefix: "PUBLIC_",
102
113
  server: viteConfig.server,
103
- base: astroConfig.buildOptions.site ? new URL(astroConfig.buildOptions.site).pathname : "/"
114
+ base: astroConfig.buildOptions.site ? new URL(astroConfig.buildOptions.site).pathname : "/",
115
+ ssr: viteConfig.ssr
104
116
  });
105
117
  }
106
118
  async function clientBuild(opts, internals, input) {
@@ -126,6 +138,7 @@ async function clientBuild(opts, internals, input) {
126
138
  },
127
139
  plugins: [
128
140
  vitePluginNewBuild(input, internals, "js"),
141
+ vitePluginHoistedScripts(internals),
129
142
  rollupPluginAstroBuildCSS({
130
143
  internals
131
144
  }),
@@ -170,17 +183,19 @@ async function generatePage(output, opts, internals, facadeIdToPageDataMap, rend
170
183
  const { astroConfig } = opts;
171
184
  let url = new URL("./" + output.fileName, astroConfig.dist);
172
185
  const facadeId = output.facadeModuleId;
173
- let pageData = facadeIdToPageDataMap.get(facadeId) || facadeIdToPageDataMap.get("/" + facadeId);
186
+ let pageData = getByFacadeId(facadeId, facadeIdToPageDataMap);
174
187
  if (!pageData) {
175
188
  throw new Error(`Unable to find a PageBuildData for the Astro page: ${facadeId}. There are the PageBuilDatas we have ${Array.from(facadeIdToPageDataMap.keys()).join(", ")}`);
176
189
  }
177
- let linkIds = internals.facadeIdToAssetsMap.get(facadeId) || [];
190
+ const linkIds = getByFacadeId(facadeId, internals.facadeIdToAssetsMap) || [];
191
+ const hoistedId = getByFacadeId(facadeId, internals.facadeIdToHoistedEntryMap) || null;
178
192
  let compiledModule = await import(url.toString());
179
193
  let Component = compiledModule.default;
180
194
  const generationOptions = {
181
195
  pageData,
182
196
  internals,
183
197
  linkIds,
198
+ hoistedId,
184
199
  Component,
185
200
  renderers
186
201
  };
@@ -194,8 +209,8 @@ async function generatePage(output, opts, internals, facadeIdToPageDataMap, rend
194
209
  }
195
210
  }
196
211
  async function generatePath(pathname, opts, gopts) {
197
- const { astroConfig, logging, origin, pageNames, routeCache } = opts;
198
- const { Component, internals, linkIds, pageData, renderers } = gopts;
212
+ const { astroConfig, logging, origin, routeCache } = opts;
213
+ const { Component, internals, linkIds, hoistedId, pageData, renderers } = gopts;
199
214
  addPageName(pathname, opts);
200
215
  const [, mod] = pageData.preload;
201
216
  try {
@@ -209,14 +224,23 @@ async function generatePath(pathname, opts, gopts) {
209
224
  });
210
225
  debug(logging, "generate", `Generating: ${pathname}`);
211
226
  const rootpath = new URL(astroConfig.buildOptions.site || "http://localhost/").pathname;
212
- const result = createResult({ astroConfig, logging, origin, params, pathname, renderers });
213
- result.links = new Set(linkIds.map((href) => ({
227
+ const links = new Set(linkIds.map((href) => ({
214
228
  props: {
215
229
  rel: "stylesheet",
216
230
  href: npath.posix.join(rootpath, href)
217
231
  },
218
232
  children: ""
219
233
  })));
234
+ const scripts = hoistedId ? new Set([
235
+ {
236
+ props: {
237
+ type: "module",
238
+ src: npath.posix.join(rootpath, hoistedId)
239
+ },
240
+ children: ""
241
+ }
242
+ ]) : new Set();
243
+ const result = createResult({ astroConfig, logging, origin, params, pathname, renderers, links, scripts });
220
244
  result.resolve = async (specifier) => {
221
245
  const hashedFilePath = internals.entrySpecifierToBundleMap.get(specifier);
222
246
  if (typeof hashedFilePath !== "string") {
@@ -303,4 +327,4 @@ export {
303
327
  staticBuild,
304
328
  vitePluginNewBuild
305
329
  };
306
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvcmUvYnVpbGQvc3RhdGljLWJ1aWxkLnRzIl0sCiAgIm1hcHBpbmdzIjogIkFBVUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBWUEsTUFBTSx5QkFBeUI7QUFFL0IscUJBQXFCLFVBQWtCLE1BQWdDO0FBQ3RFLFFBQU0sV0FBVyxLQUFLLFlBQVksYUFBYSxrQkFBa0IsY0FBYyxnQkFBZ0IsYUFBYSxNQUFNLGVBQWU7QUFDakksT0FBSyxVQUFVLEtBQUssU0FBUyxRQUFRLFFBQVEsVUFBVSxRQUFRLE9BQU87QUFBQTtBQUl2RSxxQkFBcUIsUUFBbUMsV0FBMkI7QUFDbEYsTUFBSSxPQUFPLFNBQVMsU0FBUztBQUM1QixXQUFPO0FBQUE7QUFFUixRQUFNLFFBQVE7QUFDZCxTQUFPLE1BQU0sa0JBQW1CLFdBQVUsMEJBQTBCLElBQUksTUFBTSxtQkFBbUIsVUFBVSwwQkFBMEIsSUFBSSxNQUFNLE1BQU07QUFBQTtBQUl0SixtQkFBbUIsS0FBYSxTQUFtQjtBQUNsRCxNQUFJLE1BQU07QUFDVixNQUFJLElBQUk7QUFDUixXQUFTLFFBQVEsU0FBUztBQUN6QixRQUFJLEtBQUs7QUFDVCxRQUFJLE1BQU0sS0FBSztBQUNkLFlBQU07QUFFTixVQUFJLFNBQVM7QUFDYixVQUFJO0FBQUEsV0FDRTtBQUNOO0FBQUE7QUFBQTtBQU1GLE1BQUksSUFBSSxRQUFRO0FBQ2YsVUFBTTtBQUFBO0FBQUE7QUFJUiwyQkFBa0MsTUFBMEI7QUFDM0QsUUFBTSxFQUFFLFVBQVUsZ0JBQWdCO0FBR2xDLFFBQU0sWUFBWSxJQUFJO0FBR3RCLFFBQU0sVUFBVSxJQUFJO0FBSXBCLFFBQU0sd0JBQXdCLElBQUk7QUFHbEMsUUFBTSxZQUFZLGFBQWEsTUFBTSxRQUFRLENBQUMsYUFBYTtBQUMxRCxXQUFRLFVBQVMsYUFBYSxJQUFJLE9BQU8sU0FBUyxzQkFBc0I7QUFBQTtBQUV6RSxhQUFX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
330
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvcmUvYnVpbGQvc3RhdGljLWJ1aWxkLnRzIl0sCiAgIm1hcHBpbmdzIjogIkFBVUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFZQSxNQUFNLHlCQUF5QjtBQUUvQixxQkFBcUIsVUFBa0IsTUFBZ0M7QUFDdEUsUUFBTSxXQUFXLEtBQUssWUFBWSxhQUFhLGtCQUFrQixjQUFjLGdCQUFnQixhQUFhLE1BQU0sZUFBZTtBQUNqSSxPQUFLLFVBQVUsS0FBSyxTQUFTLFFBQVEsUUFBUSxVQUFVLFFBQVEsT0FBTztBQUFBO0FBSXZFLHFCQUFxQixRQUFtQyxXQUEyQjtBQUNsRixNQUFJLE9BQU8sU0FBUyxTQUFTO0FBQzVCLFdBQU87QUFBQTtBQUVSLFFBQU0sUUFBUTtBQUNkLFNBQU8sTUFBTSxrQkFBbUIsV0FBVSwwQkFBMEIsSUFBSSxNQUFNLG1CQUFtQixVQUFVLDBCQUEwQixJQUFJLE1BQU0sTUFBTTtBQUFBO0FBSXRKLG1CQUFtQixLQUFhLFNBQW1CO0FBQ2xELE1BQUksTUFBTTtBQUNWLE1BQUksSUFBSTtBQUNSLFdBQVMsUUFBUSxTQUFTO0FBQ3pCLFFBQUksS0FBSztBQUNULFFBQUksTUFBTSxLQUFLO0FBQ2QsWUFBTTtBQUVOLFVBQUksU0FBUztBQUNiLFVBQUk7QUFBQSxXQUNFO0FBQ047QUFBQTtBQUFBO0FBTUYsTUFBSSxJQUFJLFFBQVE7QUFDZixVQUFNO0FBQUE7QUFBQTtBQUlSLHVCQUEwQixVQUFrQixLQUFvQztBQUMvRSxTQUNDLElBQUksSUFBSSxhQUVSLElBQUksSUFBSSxNQUFNO0FBQUE7QUFJaEIsMkJBQWtDLE1BQTBCO0FBQzNELFFBQU0sRUFBRSxVQUFVLGdCQUFnQjtBQUdsQyxRQUFNLFlBQVksSUFBSTtBQUd0QixRQUFNLFVBQVUsSUFBSTtBQUlwQixRQUFNLHdCQUF3QixJQUFJO0FBR2xDLFFBQU0sWUFBWSxhQUFhLE1B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YTtBQUM3QixVQUFNLE1BQU0sSUFBSSxJQUFJLFVBQVUsS0FBSyxZQUFZO0FBQy9DLFVBQU0sR0FBRyxTQUFTLEdBQUc7QUFBQTtBQUFBO0FBS2pCLDRCQUE0QixPQUFvQixXQUEyQixLQUErQjtBQUNoSCxTQUFPO0FBQUEsSUFDTixNQUFNO0FBQUEsSUFFTixPQUFPLFFBQVEsU0FBUztBQS9ZMUI7QUFnWkcsWUFBTSxRQUE2QjtBQUNuQyxZQUFNLGFBQWEsSUFDbEIsV0FBVztBQUNaLFVBQUksUUFBUSxZQUFZLFdBQVcsY0FBTyxVQUFQLG1CQUFjLE1BQUs7QUFDckQsbUJBQVcsS0FBSztBQUNoQixpQkFBUyxLQUFLO0FBQUE7QUFJZixZQUFNLE1BQU07QUFBQSxRQUNYO0FBQUEsUUFDQTtBQUFBO0FBRUQsYUFBTztBQUFBO0FBQUEsSUFHUixlQUFlLGdCQUFnQjtBQUU5QixZQUFNLFVBQVUsZUFBZTtBQUMvQixZQUFNLFlBQVksUUFBUSxLQUFLLENBQUMsTUFBTSxFQUFFLFNBQVM7QUFDakQsVUFBSSxXQUFXO0FBQ2QsZUFBTyxVQUFVO0FBQUE7QUFBQTtBQUFBLElBSW5CLGNBQWMsZUFBZTtBQUM1QixhQUFPLE9BQU8sZUFBZTtBQUFBLFFBQzVCLGVBQWUsUUFBMEI7QUFDeEMsaUJBQU8sMEJBQTBCO0FBQUE7QUFBQSxRQUVsQyxlQUFlLFFBQTBCO0FBQ3hDLGlCQUFPLDBCQUEwQjtBQUFBO0FBQUE7QUFHbkMsYUFBTztBQUFBO0FBQUEsVUFHRixlQUFlLFVBQVUsUUFBUTtBQUN0QyxZQUFNLFdBQVc7QUFDakIsWUFBTSxVQUFVLElBQUk7QUFDcEIsaUJBQVcsYUFBYSxPQUFPO0FBQzlCLGlCQUFTLEtBQ1IsS0FBSyxRQUFRLFdBQVcsS0FBSyxDQUFDLFdBQVc7QUFDeEMsY0FBSSxRQUFRO0FBQ1gsb0JBQVEsSUFBSSxPQUFPLElBQUk7QUFBQTtBQUFBO0FBQUE7QUFLM0IsWUFBTSxRQUFRLElBQUk7QUFDbEIsaUJBQVcsQ0FBQyxFQUFFLFVBQVUsT0FBTyxRQUFRLFNBQVM7QUFDL0MsWUFBSSxNQUFNLFNBQVMsV0FBVyxNQUFNLGtCQUFrQixRQUFRLElBQUksTUFBTSxpQkFBaUI7QUFDeEYsZ0JBQU0sWUFBWSxRQUFRLElBQUksTUFBTTtBQUNwQyxvQkFBVSwwQkFBMEIsSUFBSSxXQUFXLE1BQU07QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -0,0 +1,38 @@
1
+ function virtualHoistedEntry(id) {
2
+ return id.endsWith(".astro/hoisted.js") || id.endsWith(".md/hoisted.js");
3
+ }
4
+ function vitePluginHoistedScripts(internals) {
5
+ return {
6
+ name: "@astro/rollup-plugin-astro-hoisted-scripts",
7
+ resolveId(id) {
8
+ if (virtualHoistedEntry(id)) {
9
+ return id;
10
+ }
11
+ },
12
+ load(id) {
13
+ if (virtualHoistedEntry(id)) {
14
+ let code = "";
15
+ for (let path of internals.hoistedScriptIdToHoistedMap.get(id)) {
16
+ code += `import "${path}";`;
17
+ }
18
+ return {
19
+ code
20
+ };
21
+ }
22
+ return void 0;
23
+ },
24
+ async generateBundle(_options, bundle) {
25
+ for (const [id, output] of Object.entries(bundle)) {
26
+ if (output.type === "chunk" && output.facadeModuleId && virtualHoistedEntry(output.facadeModuleId)) {
27
+ const facadeId = output.facadeModuleId;
28
+ const filename = facadeId.slice(0, facadeId.length - "/hoisted.js".length);
29
+ internals.facadeIdToHoistedEntryMap.set(filename, id);
30
+ }
31
+ }
32
+ }
33
+ };
34
+ }
35
+ export {
36
+ vitePluginHoistedScripts
37
+ };
38
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvcmUvYnVpbGQvdml0ZS1wbHVnaW4taG9pc3RlZC1zY3JpcHRzLnRzIl0sCiAgIm1hcHBpbmdzIjogIkFBR0EsNkJBQTZCLElBQVk7QUFDeEMsU0FBTyxHQUFHLFNBQVMsd0JBQXdCLEdBQUcsU0FBUztBQUFBO0FBR2pELGtDQUFrQyxXQUF1QztBQUMvRSxTQUFPO0FBQUEsSUFDTixNQUFNO0FBQUEsSUFFTixVQUFVLElBQUk7QUFDYixVQUFJLG9CQUFvQixLQUFLO0FBQzVCLGVBQU87QUFBQTtBQUFBO0FBQUEsSUFJVCxLQUFLLElBQUk7QUFDUixVQUFJLG9CQUFvQixLQUFLO0FBQzVCLFlBQUksT0FBTztBQUNYLGlCQUFTLFFBQVEsVUFBVSw0QkFBNEIsSUFBSSxLQUFNO0FBQ2hFLGtCQUFRLFdBQVc7QUFBQTtBQUVwQixlQUFPO0FBQUEsVUFDTjtBQUFBO0FBQUE7QUFHRixhQUFPO0FBQUE7QUFBQSxVQUdGLGVBQWUsVUFBVSxRQUFRO0FBR3RDLGlCQUFXLENBQUMsSUFBSSxXQUFXLE9BQU8sUUFBUSxTQUFTO0FBQ2xELFlBQUksT0FBTyxTQUFTLFdBQVcsT0FBTyxrQkFBa0Isb0JBQW9CLE9BQU8saUJBQWlCO0FBQ25HLGdCQUFNLFdBQVcsT0FBTztBQUN4QixnQkFBTSxXQUFXLFNBQVMsTUFBTSxHQUFHLFNBQVMsU0FBUyxjQUFjO0FBQ25FLG9CQUFVLDBCQUEwQixJQUFJLFVBQVU7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -47,19 +47,51 @@ async function validateConfig(userConfig, root) {
47
47
  function addTrailingSlash(str) {
48
48
  return str.replace(/\/*$/, "/");
49
49
  }
50
- async function loadConfig(options) {
51
- const root = options.cwd ? path.resolve(options.cwd) : process.cwd();
50
+ function resolveFlags(flags) {
51
+ return {
52
+ projectRoot: typeof flags.projectRoot === "string" ? flags.projectRoot : void 0,
53
+ site: typeof flags.site === "string" ? flags.site : void 0,
54
+ sitemap: typeof flags.sitemap === "boolean" ? flags.sitemap : void 0,
55
+ port: typeof flags.port === "number" ? flags.port : void 0,
56
+ config: typeof flags.config === "string" ? flags.config : void 0,
57
+ hostname: typeof flags.hostname === "string" ? flags.hostname : void 0,
58
+ experimentalStaticBuild: typeof flags.experimentalStaticBuild === "boolean" ? flags.experimentalStaticBuild : false,
59
+ drafts: typeof flags.drafts === "boolean" ? flags.drafts : false
60
+ };
61
+ }
62
+ function mergeCLIFlags(astroConfig, flags) {
63
+ astroConfig.buildOptions = astroConfig.buildOptions || {};
64
+ astroConfig.devOptions = astroConfig.devOptions || {};
65
+ if (typeof flags.sitemap === "boolean")
66
+ astroConfig.buildOptions.sitemap = flags.sitemap;
67
+ if (typeof flags.site === "string")
68
+ astroConfig.buildOptions.site = flags.site;
69
+ if (typeof flags.port === "number")
70
+ astroConfig.devOptions.port = flags.port;
71
+ if (typeof flags.hostname === "string")
72
+ astroConfig.devOptions.hostname = flags.hostname;
73
+ if (typeof flags.experimentalStaticBuild === "boolean")
74
+ astroConfig.buildOptions.experimentalStaticBuild = flags.experimentalStaticBuild;
75
+ if (typeof flags.drafts === "boolean")
76
+ astroConfig.buildOptions.drafts = flags.drafts;
77
+ return astroConfig;
78
+ }
79
+ async function loadConfig(configOptions) {
80
+ const root = configOptions.cwd ? path.resolve(configOptions.cwd) : process.cwd();
81
+ const flags = resolveFlags(configOptions.flags || {});
52
82
  let userConfig = {};
53
83
  let userConfigPath;
54
- if (options.filename) {
55
- userConfigPath = /^\.*\//.test(options.filename) ? options.filename : `./${options.filename}`;
84
+ if (flags == null ? void 0 : flags.config) {
85
+ userConfigPath = /^\.*\//.test(flags.config) ? flags.config : `./${flags.config}`;
56
86
  userConfigPath = fileURLToPath(new URL(userConfigPath, `file://${root}/`));
57
87
  }
58
88
  const config = await load("astro", { mustExist: false, cwd: root, filePath: userConfigPath });
59
89
  if (config) {
60
90
  userConfig = config.value;
61
91
  }
62
- return validateConfig(userConfig, root);
92
+ const mergedConfig = mergeCLIFlags(userConfig, flags);
93
+ const validatedConfig = await validateConfig(mergedConfig, root);
94
+ return validatedConfig;
63
95
  }
64
96
  function formatConfigError(err) {
65
97
  const errorList = err.issues.map((issue) => ` ! ${colors.bold(issue.path.join("."))} ${colors.red(issue.message + ".")}`);
@@ -72,4 +104,4 @@ export {
72
104
  loadConfig,
73
105
  validateConfig
74
106
  };
75
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NvcmUvY29uZmlnLnRzIl0sCiAgIm1hcHBpbmdzIjogIkFBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUEsS0FBSyxJQUFJLENBQUM7QUFFSCxNQUFNLG9CQUFvQixFQUFFLE9BQU87QUFBQSxFQUN6QyxhQUFhLEVBQ1gsU0FDQSxXQUNBLFFBQVEsS0FDUixVQUFVLENBQUMsUUFBUSxJQUFJLElBQUk7QUFBQSxFQUM3QixLQUFLLEVBQ0gsU0FDQSxXQUNBLFFBQVEsU0FDUixVQUFVLENBQUMsUUFBUSxJQUFJLElBQUk7QUFBQSxFQUM3QixPQUFPLEVBQ0wsU0FDQSxXQUNBLFFBQVEsZUFDUixVQUFVLENBQUMsUUFBUSxJQUFJLElBQUk7QUFBQSxFQUM3QixTQUFTLEVBQ1AsU0FDQSxXQUNBLFFBQVEsaUJBQ1IsVUFBVSxDQUFDLFFBQVEsSUFBSSxJQUFJO0FBQUEsRUFDN0IsUUFBUSxFQUNOLFNBQ0EsV0FDQSxRQUFRLFlBQ1IsVUFBVSxDQUFDLFFBQVEsSUFBSSxJQUFJO0FBQUEsRUFDN0IsTUFBTSxFQUNKLFNBQ0EsV0FDQSxRQUFRLFVBQ1IsVUFBVSxDQUFDLFFBQVEsSUFBSSxJQUFJO0FBQUEsRUFDN0IsV0FBVyxFQUFFLE1BQU0sRUFBRSxVQUFVLFdBQVcsUUFBUSxDQUFDLDRCQUE0Qix5QkFBeUIsMkJBQTJCO0FBQUEsRUFDbkksaUJBQWlCLEVBQ2YsT0FBTztBQUFBLElBQ1AsV0FBVyxFQUFFLFVBQVU7QUFBQSxJQUN2QixLQUFLLEVBQUUsVUFBVTtBQUFBLElBQ2pCLFFBQVEsRUFBRSxNQUFNLFdBQVcsUUFBUSxDQUFDLDRCQUE0QjtBQUFBLEtBRWhFLFNBQ0EsV0FDQSxRQUFRO0FBQUEsRUFDVixjQUFjLEVBQ1osT0FBTztBQUFBLElBQ1AsTUFBTSxFQUFFLFNBQVM7QUFBQSxJQUNqQixTQUFTLEVBQUUsVUFBVSxXQUFXLFFBQVE7QUFBQSxJQUN4QyxlQUFlLEVBQ2IsTUFBTSxDQUFDLEVBQUUsUUFB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
107
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NvcmUvY29uZmlnLnRzIl0sCiAgIm1hcHBpbmdzIjogIkFBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUEsS0FBSyxJQUFJLENBQUM7QUFFSCxNQUFNLG9CQUFvQixFQUFFLE9BQU87QUFBQSxFQUN6QyxhQUFhLEVBQ1gsU0FDQSxXQUNBLFFBQVEsS0FDUixVQUFVLENBQUMsUUFBUSxJQUFJLElBQUk7QUFBQSxFQUM3QixLQUFLLEVBQ0gsU0FDQSxXQUNBLFFBQVEsU0FDUixVQUFVLENBQUMsUUFBUSxJQUFJLElBQUk7QUFBQSxFQUM3QixPQUFPLEVBQ0wsU0FDQSxXQUNBLFFBQVEsZUFDUixVQUFVLENBQUMsUUFBUSxJQUFJLElBQUk7QUFBQSxFQUM3QixTQUFTLEVBQ1AsU0FDQSxXQUNBLFFBQVEsaUJBQ1IsVUFBVSxDQUFDLFFBQVEsSUFBSSxJQUFJO0FBQUEsRUFDN0IsUUFBUSxFQUNOLFNBQ0EsV0FDQSxRQUFRLFlBQ1IsVUFBVSxDQUFDLFFBQVEsSUFBSSxJQUFJO0FBQUEsRUFDN0IsTUFBTSxFQUNKLFNBQ0EsV0FDQSxRQUFRLFVBQ1IsVUFBVSxDQUFDLFFBQVEsSUFBSSxJQUFJO0FBQUEsRUFDN0IsV0FBVyxFQUFFLE1BQU0sRUFBRSxVQUFVLFdBQVcsUUFBUSxDQUFDLDRCQUE0Qix5QkFBeUIsMkJBQTJCO0FBQUEsRUFDbkksaUJBQWlCLEVBQ2YsT0FBTztBQUFBLElBQ1AsV0FBVyxFQUFFLFVBQVU7QUFBQSxJQUN2QixLQUFLLEVBQUUsVUFBVTtBQUFBLElBQ2pCLFFBQVEsRUFBRSxNQUFNLFdBQVcsUUFBUSxDQUFDLDRCQUE0QjtBQUFBLEtBRWhFLFNBQ0EsV0FDQSxRQUFRO0FBQUEsRUFDVixjQUFjLEVBQ1osT0FBTztBQUFBLElBQ1AsTUFBTSxFQUFFLFNBQVM7QUFBQSxJQUNqQixTQUFTLEVBQUUsVUFBVSxXQUFXLFFBQVE7QUFBQSxJQUN4QyxlQUFlLEVBQ2IsTUFBTSxDQUFDLEVBQUUsUUFB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
@@ -154,7 +154,21 @@ async function render(renderers, mod, ssrOpts) {
154
154
  throw new Error(`Expected an exported Astro component but received typeof ${typeof Component}`);
155
155
  if (!Component.isAstroComponentFactory)
156
156
  throw new Error(`Unable to SSR non-Astro component (${route == null ? void 0 : route.component})`);
157
- const result = createResult({ astroConfig, logging, origin, params, pathname, renderers });
157
+ const scripts = astroConfig.buildOptions.experimentalStaticBuild ? new Set(Array.from(mod.$$metadata.hoistedScriptPaths()).map((src) => ({
158
+ props: { type: "module", src },
159
+ children: ""
160
+ }))) : new Set();
161
+ if (mode === "development" && astroConfig.buildOptions.experimentalStaticBuild) {
162
+ scripts.add({
163
+ props: { type: "module", src: "/@vite/client" },
164
+ children: ""
165
+ });
166
+ scripts.add({
167
+ props: { type: "module", src: new URL("../../runtime/client/hmr.js", import.meta.url).pathname },
168
+ children: ""
169
+ });
170
+ }
171
+ const result = createResult({ astroConfig, logging, origin, params, pathname, renderers, scripts });
158
172
  result.resolve = async (s) => {
159
173
  if (astroConfig.buildOptions.experimentalStaticBuild) {
160
174
  const [, resolvedPath] = await viteServer.moduleGraph.resolveUrl(s);
@@ -165,7 +179,7 @@ async function render(renderers, mod, ssrOpts) {
165
179
  };
166
180
  let html = await renderPage(result, Component, pageProps, null);
167
181
  const tags = [];
168
- if (mode === "development") {
182
+ if (mode === "development" && !astroConfig.buildOptions.experimentalStaticBuild) {
169
183
  tags.push({
170
184
  tag: "script",
171
185
  attrs: { type: "module" },
@@ -226,4 +240,4 @@ export {
226
240
  render,
227
241
  ssr
228
242
  };
229
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvcmUvc3NyL2luZGV4LnRzIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7OztBQWtCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFDQTtBQUNBO0FBRUEsTUFBTSxpQkFBaUI7QUF1QnZCLE1BQU0sUUFBUSxJQUFJO0FBR2xCLCtCQUErQixZQUFnQyxVQUFrQixhQUEwQjtBQUMxRyxRQUFNLG1CQUF3QjtBQUk5QixRQUFNO0FBQUEsSUFDTCxTQUFTLEVBQUUsTUFBTSxRQUFRLFdBQVcsb0JBQW9CO0FBQUEsTUFDckQsTUFBTSxPQUFPLGtCQUFrQixVQUFVO0FBRTdDLG1CQUFpQixPQUFPO0FBQ3hCLE1BQUk7QUFBUSxxQkFBaUIsU0FBUyxLQUFLLE1BQU0sS0FBSyxVQUFVO0FBQ2hFLG1CQUFpQixjQUFjLEtBQUssTUFBTSxLQUFLLFVBQVU7QUFDekQsTUFBSSxNQUFNLFFBQVE7QUFBcUIscUJBQWlCLHFCQUFxQixtQkFBbUIsSUFBSSxDQUFDLFFBQWdCLEtBQUssTUFBTSxLQUFLLFVBQVU7QUFDL0ksTUFBSSxNQUFNLFFBQVE7QUFBWSxxQkFBaUIsWUFBWSxVQUFVLElBQUksQ0FBQyxRQUFnQixLQUFLLE1BQU0sS0FBSyxVQUFVO0FBQ3BILFFBQU0sRUFBRSxRQUFRLE1BQU0sV0FBVyxZQUFZLG1CQUFtQixpQkFBaUI7QUFDakYsUUFBTSxFQUFFLFNBQVMsZ0JBQWdCLE1BQU0sV0FBVyxjQUFjO0FBQ2hFLG1CQUFpQixNQUFNO0FBRXZCLFFBQU0sb0JBQThCO0FBQ3BDLFNBQU87QUFBQTtBQUdSLGdDQUFnQyxZQUFnQyxhQUErQztBQUM5RyxRQUFNLE1BQWdCLFlBQVk7QUFDbEMsUUFBTSxZQUFZLE1BQU0sUUFBUSxJQUMvQixJQUFJLElBQUksQ0FBQyxhQUFhO0FBQ3JCLFFBQUksTUFBTSxJQUFJO0FBQVcsYUFBTyxNQUFNLElBQUk7QUFDMUMsUUFBSSxVQUFVLGdCQUFnQixZQUFZLFVBQVU7QUFDcEQsVUFBTSxJQUFJLFVBQVU7QUFDcEIsV0FBTztBQUFBO0FBSVQsU0FBTztBQUFBO0FBUVIsNEJBQTRCLEdBQVksRUFBRSxZQUFZLFlBQWlDO0FBRXRGLE1BQUssRUFBVSxPQUFPO0FBQ3JCLElBQUMsRUFBVSxRQUFRLElBQUksR0FBSSxFQUFVO0FBQUE7QUFJdEMsTUFBSSxhQUFhLE9BQU87QUFDdkIsZUFBVyxpQkFBaUI7QUFBQTtBQUk3QixNQUFJLE1BQU0sUUFBUyxFQUFVLFNBQVM7QUFDckMsVUFBTSxFQUFFLFVBQVUsWUFBWSxTQUFVLEVBQWtCLE9BQU87QUFDakUsVUFBTSxNQUFNO0FBQ1osUUFBSTtBQUFVLFVBQUksTUFBTSxFQUFFLE1BQU0sU0FBUyxNQUFNLE1BQU0sU0FBUyxNQUFNLFFBQVEsU0FBUztBQUNyRixRQUFJLE1BQU0sSUFBSTtBQUNkLFFBQUksQ0FBQyxPQUFPLElBQUksTUFBTSxHQUFHLFdBQVcsSUFBSTtBQUFLLFlBQU0sTUFBTSxHQUFHLFNBQVMsU0FBUyxJQUFJLElBQUk7QUFDdEYsUUFBSSxDQUFDO0FBQUssWUFBTSxNQUFNLEdBQUcsU0FBUyxTQUFTLFVBQVU7QUFDckQsUUFBSSxRQUFRLFVBQVUsS0FBSyxJQUFJO0FBQy9CLFFBQUksS0FBSyxxQ0FBVTtBQUNuQixRQUFJLFVBQVUsR0FBRyxxQ0FBVSxTQUFTO0FBQUEsRUFDcEMsSUFBSTtBQUFBO0FBRUosUUFBSTtBQUFZLFVBQUksU0FBUztBQUM3QixVQUFNO0FBQUE7QUFJUCxRQUFNO0FBQUE7QUFLUCx1QkFBOEIsRUFBRSxhQUFhLFVBQVUsY0FBcUQ7QUFFM0csUUFBTSxZQUFZLE1BQU0saUJBQWlCLFlBQVk7QUFFckQsUUFBTSxNQUFPLE1BQU0sV0FBVyxjQUFjLGNBQWM7QUFFMUQsU0FBTyxDQUFDLFdBQVc7QUFBQTtBQUdwQixpQ0FBd0M7QUFBQSxFQUN2QztBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBLFdBQVc7QUFBQSxHQVFpQjtBQUU1QixNQUFJLFNBQWlCO0FBQ3JCLE1BQUk7QUFDSixNQUFJLFNBQVMsQ0FBQyxNQUFNLFVBQVU7QUFDN0IsUUFBSSxNQUFNLE9BQU8sUUFBUTtBQUN4QixZQUFNLGNBQWMsTUFBTSxRQUFRLEtBQUs7QUFDdkMsVUFBSSxhQUFhO0FBQ2hCLGlCQUFTLFVBQVUsTUFBTSxRQUFRO0FBQUE7QUFBQTtBQUduQyxRQUFJLFVBQVU7QUFDYixtQ0FBNkI7QUFBQTtBQUU5QixRQUFJLENBQUMsV0FBVyxNQUFNLFlBQVk7QUFDakMsWUFBTSxrQkFBa0IsWUFBWSxPQUFPO0FBQUE7QUFFNUMsUUFBSSxVQUFVO0FBRWIsbUNBQTZCLFdBQVcsTUFBTSxZQUFZO0FBQUE7QUFFM0QsVUFBTSxjQUF5QyxXQUFXLE1BQU07QUFDaEUsVUFBTSxZQUFZLEtBQUssVUFBVTtBQUNqQyxVQUFNLG9CQUFvQixrQkFBa0IsYUFBYSxXQUFXO0FBQ3BFLFFBQUksQ0FBQyxtQkFBbUI7QUFDdkIsWUFBTSxJQUFJLE1BQU0sK0VBQStFO0FBQUE7QUFJaEcsZ0JBQVksT0FBTyxPQUFPLGtCQUFrQixTQUFTLE9BQU87QUFBQSxTQUN0RDtBQUNOLGdCQUFZO0FBQUE7QUFFYixTQUFPLENBQUMsUUFBUTtBQUFBO0FBSWpCLHNCQUE2QixXQUF1QixLQUF3QixTQUFzQztBQUNqSCxRQUFNLEVBQUUsYUFBYSxVQUFVLFNBQVMsTUFBTSxRQUFRLFVBQVUsT0FBTyxZQUFZLGVBQWU7QUFHbEcsTUFBSSxTQUFpQjtBQUNyQixNQUFJLFlBQW1CO0FBQ3ZCLE1BQUksU0FBUyxDQUFDLE1BQU0sVUFBVTtBQUM3QixRQUFJLE1BQU0sT0FBTyxRQUFRO0FBQ3hCLFlBQU0sY0FBYyxNQUFNLFFBQVEsS0FBSztBQUN2QyxVQUFJLGFBQWE7QUFDaEIsaUJBQVMsVUFBVSxNQUFNLFFBQVE7QUFBQTtBQUFBO0FBR25DLGlDQUE2QjtBQUM3QixVQUFNLGtCQUFrQixZQUFZLE9BQU87QUFDM0MsaUNBQTZCLFdBQVcsTUFBTSxZQUFZO0FBQzFELFVBQU0sa0JBQXdDLFdBQVcsTUFBTTtBQUMvRCxVQUFNLG9CQUFvQixnQkFBZ0IsS0FBSyxDQUFDLEVBQUUsUUFBUSxjQUFjLEtBQUssVUFBVSxhQUFhLEtBQUssVUFBVTtBQUNuSCxRQUFJLENBQUMsbUJBQW1CO0FBQ3ZCLFlBQU0sSUFBSSxNQUFNLCtFQUErRTtBQUFBO0FBRWhHLGdCQUFZLG1CQUFLLGtCQUFrQixVQUFXO0FBQUE7QUFJL0MsUUFBTSxZQUFZLE1BQU0sSUFBSTtBQUM1QixNQUFJLENBQUM7QUFBVyxVQUFNLElBQUksTUFBTSw0REFBNEQsT0FBTztBQUNuRyxNQUFJLENBQUMsVUFBVTtBQUF5QixVQUFNLElBQUksTUFBTSxzQ0FBc0MsK0JBQU87QUFFckcsUUFBTSxTQUFTLGFBQWEsRUFBRSxhQUFhLFNBQVMsUUFBUSxRQUFRLFVBQVU7QUFFOUUsU0FBTyxVQUFVLE9BQU8sTUFBYztBQUlyQyxRQUFJLFlBQVksYUFBYSx5QkFBeUI7QUFDckQsWUFBTSxDQUFDLEVBQUUsZ0JBQWdCLE1BQU0sV0FBVyxZQUFZLFdBQVc7QUFDakUsYUFBTztBQUFBLFdBQ0Q7QUFDTixhQUFPO0FBQUE7QUFBQTtBQUlULE1BQUksT0FBTyxNQUFNLFdBQVcsUUFBUSxXQUFXLFdBQVc7QUFHMUQsUUFBTSxPQUFpQztBQUd2QyxNQUFJLFNBQVMsZUFBZTtBQUMzQixTQUFLLEtBQUs7QUFBQSxNQUNULEtBQUs7QUFBQSxNQUNMLE9BQU8sRUFBRSxNQUFNO0FBQUEsTUFHZixVQUFVLE1BQU07QUFBQSxNQUNoQixVQUFVO0FBQUE7QUFBQTtBQUtaLEdBQUMsR0FBRyxnQkFBZ0IsVUFBVSxhQUFhLFFBQVEsQ0FBQyxTQUFTO0FBQzVELFFBQUksU0FBUyxpQkFBaUIsZUFBZSxLQUFLLE9BQU87QUFDeEQsV0FBSyxLQUFLO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxPQUFPLEVBQUUsTUFBTSxVQUFVLEtBQUs7QUFBQSxRQUM5QixVQUFVO0FBQUE7QUFBQSxXQUVMO0FBQ04sV0FBSyxLQUFLO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxPQUFPO0FBQUEsVUFDTixLQUFLO0FBQUEsVUFDTDtBQUFBLFVBQ0EsdUJBQXVCO0FBQUE7QUFBQSxRQUV4QixVQUFVO0FBQUE7QUFBQTtBQUFBO0FBTWIsU0FBTyxXQUFXLE1BQU07QUFHeEIsTUFBSSxTQUFTLGlCQUFpQixDQUFDLFlBQVksYUFBYSx5QkFBeUI7QUFDaEYsVUFBTSxjQUFjLFNBQVMsS0FBSyxRQUFRLFlBQVksWUFBWSxNQUFNO0FBQ3hFLFdBQU8sTUFBTSxXQUFXLG1CQUFtQixhQUFhLE1BQU07QUFBQTtBQUkvRCxNQUFJLENBQUMsa0JBQWtCLEtBQUssT0FBTztBQUNsQyxXQUFPLHNCQUFzQjtBQUFBO0FBRzlCLFNBQU87QUFBQTtBQUdSLElBQUk7QUFDSiw4QkFBOEI7QUFDN0IsTUFBSTtBQUFXLFdBQU87QUFDdEIsUUFBTSxXQUFXLGNBQWMsSUFBSSxJQUFJLCtCQUErQixZQUFZO0FBQ2xGLFFBQU0sVUFBVSxNQUFNLEdBQUcsU0FBUyxTQUFTO0FBQzNDLGNBQVksUUFBUTtBQUNwQixTQUFPO0FBQUE7QUFHUixtQkFBMEIsU0FBc0M7QUFDL0QsTUFBSTtBQUNILFVBQU0sQ0FBQyxXQUFXLE9BQU8sTUFBTSxRQUFRO0FBQ3ZDLFdBQU8sTUFBTSxPQUFPLFdBQVcsS0FBSztBQUFBLFdBQzVCLEdBQVA7QUFDRCxVQUFNLGFBQWEsR0FBRyxFQUFFLFlBQVksUUFBUSxZQUFZLFVBQVUsUUFBUTtBQUMxRSxVQUFNO0FBQUE7QUFBQTsiLAogICJuYW1lcyI6IFtdCn0K
243
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvcmUvc3NyL2luZGV4LnRzIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7OztBQWtCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFDQTtBQUNBO0FBRUEsTUFBTSxpQkFBaUI7QUF1QnZCLE1BQU0sUUFBUSxJQUFJO0FBR2xCLCtCQUErQixZQUFnQyxVQUFrQixhQUEwQjtBQUMxRyxRQUFNLG1CQUF3QjtBQUk5QixRQUFNO0FBQUEsSUFDTCxTQUFTLEVBQUUsTUFBTSxRQUFRLFdBQVcsb0JBQW9CO0FBQUEsTUFDckQsTUFBTSxPQUFPLGtCQUFrQixVQUFVO0FBRTdDLG1CQUFpQixPQUFPO0FBQ3hCLE1BQUk7QUFBUSxxQkFBaUIsU0FBUyxLQUFLLE1BQU0sS0FBSyxVQUFVO0FBQ2hFLG1CQUFpQixjQUFjLEtBQUssTUFBTSxLQUFLLFVBQVU7QUFDekQsTUFBSSxNQUFNLFFBQVE7QUFBcUIscUJBQWlCLHFCQUFxQixtQkFBbUIsSUFBSSxDQUFDLFFBQWdCLEtBQUssTUFBTSxLQUFLLFVBQVU7QUFDL0ksTUFBSSxNQUFNLFFBQVE7QUFBWSxxQkFBaUIsWUFBWSxVQUFVLElBQUksQ0FBQyxRQUFnQixLQUFLLE1BQU0sS0FBSyxVQUFVO0FBQ3BILFFBQU0sRUFBRSxRQUFRLE1BQU0sV0FBVyxZQUFZLG1CQUFtQixpQkFBaUI7QUFDakYsUUFBTSxFQUFFLFNBQVMsZ0JBQWdCLE1BQU0sV0FBVyxjQUFjO0FBQ2hFLG1CQUFpQixNQUFNO0FBRXZCLFFBQU0sb0JBQThCO0FBQ3BDLFNBQU87QUFBQTtBQUdSLGdDQUFnQyxZQUFnQyxhQUErQztBQUM5RyxRQUFNLE1BQWdCLFlBQVk7QUFDbEMsUUFBTSxZQUFZLE1BQU0sUUFBUSxJQUMvQixJQUFJLElBQUksQ0FBQyxhQUFhO0FBQ3JCLFFBQUksTUFBTSxJQUFJO0FBQVcsYUFBTyxNQUFNLElBQUk7QUFDMUMsUUFBSSxVQUFVLGdCQUFnQixZQUFZLFVBQVU7QUFDcEQsVUFBTSxJQUFJLFVBQVU7QUFDcEIsV0FBTztBQUFBO0FBSVQsU0FBTztBQUFBO0FBUVIsNEJBQTRCLEdBQVksRUFBRSxZQUFZLFlBQWlDO0FBRXRGLE1BQUssRUFBVSxPQUFPO0FBQ3JCLElBQUMsRUFBVSxRQUFRLElBQUksR0FBSSxFQUFVO0FBQUE7QUFJdEMsTUFBSSxhQUFhLE9BQU87QUFDdkIsZUFBVyxpQkFBaUI7QUFBQTtBQUk3QixNQUFJLE1BQU0sUUFBUyxFQUFVLFNBQVM7QUFDckMsVUFBTSxFQUFFLFVBQVUsWUFBWSxTQUFVLEVBQWtCLE9BQU87QUFDakUsVUFBTSxNQUFNO0FBQ1osUUFBSTtBQUFVLFVBQUksTUFBTSxFQUFFLE1BQU0sU0FBUyxNQUFNLE1BQU0sU0FBUyxNQUFNLFFBQVEsU0FBUztBQUNyRixRQUFJLE1BQU0sSUFBSTtBQUNkLFFBQUksQ0FBQyxPQUFPLElBQUksTUFBTSxHQUFHLFdBQVcsSUFBSTtBQUFLLFlBQU0sTUFBTSxHQUFHLFNBQVMsU0FBUyxJQUFJLElBQUk7QUFDdEYsUUFBSSxDQUFDO0FBQUssWUFBTSxNQUFNLEdBQUcsU0FBUyxTQUFTLFVBQVU7QUFDckQsUUFBSSxRQUFRLFVBQVUsS0FBSyxJQUFJO0FBQy9CLFFBQUksS0FBSyxxQ0FBVTtBQUNuQixRQUFJLFVBQVUsR0FBRyxxQ0FBVSxTQUFTO0FBQUEsRUFDcEMsSUFBSTtBQUFBO0FBRUosUUFBSTtBQUFZLFVBQUksU0FBUztBQUM3QixVQUFNO0FBQUE7QUFJUCxRQUFNO0FBQUE7QUFLUCx1QkFBOEIsRUFBRSxhQUFhLFVBQVUsY0FBcUQ7QUFFM0csUUFBTSxZQUFZLE1BQU0saUJBQWlCLFlBQVk7QUFFckQsUUFBTSxNQUFPLE1BQU0sV0FBVyxjQUFjLGNBQWM7QUFFMUQsU0FBTyxDQUFDLFdBQVc7QUFBQTtBQUdwQixpQ0FBd0M7QUFBQSxFQUN2QztBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBLFdBQVc7QUFBQSxHQVFpQjtBQUU1QixNQUFJLFNBQWlCO0FBQ3JCLE1BQUk7QUFDSixNQUFJLFNBQVMsQ0FBQyxNQUFNLFVBQVU7QUFDN0IsUUFBSSxNQUFNLE9BQU8sUUFBUTtBQUN4QixZQUFNLGNBQWMsTUFBTSxRQUFRLEtBQUs7QUFDdkMsVUFBSSxhQUFhO0FBQ2hCLGlCQUFTLFVBQVUsTUFBTSxRQUFRO0FBQUE7QUFBQTtBQUduQyxRQUFJLFVBQVU7QUFDYixtQ0FBNkI7QUFBQTtBQUU5QixRQUFJLENBQUMsV0FBVyxNQUFNLFlBQVk7QUFDakMsWUFBTSxrQkFBa0IsWUFBWSxPQUFPO0FBQUE7QUFFNUMsUUFBSSxVQUFVO0FBRWIsbUNBQTZCLFdBQVcsTUFBTSxZQUFZO0FBQUE7QUFFM0QsVUFBTSxjQUF5QyxXQUFXLE1BQU07QUFDaEUsVUFBTSxZQUFZLEtBQUssVUFBVTtBQUNqQyxVQUFNLG9CQUFvQixrQkFBa0IsYUFBYSxXQUFXO0FBQ3BFLFFBQUksQ0FBQyxtQkFBbUI7QUFDdkIsWUFBTSxJQUFJLE1BQU0sK0VBQStFO0FBQUE7QUFJaEcsZ0JBQVksT0FBTyxPQUFPLGtCQUFrQixTQUFTLE9BQU87QUFBQSxTQUN0RDtBQUNOLGdCQUFZO0FBQUE7QUFFYixTQUFPLENBQUMsUUFBUTtBQUFBO0FBSWpCLHNCQUE2QixXQUF1QixLQUF3QixTQUFzQztBQUNqSCxRQUFNLEVBQUUsYUFBYSxVQUFVLFNBQVMsTUFBTSxRQUFRLFVBQVUsT0FBTyxZQUFZLGVBQWU7QUFHbEcsTUFBSSxTQUFpQjtBQUNyQixNQUFJLFlBQW1CO0FBQ3ZCLE1BQUksU0FBUyxDQUFDLE1BQU0sVUFBVTtBQUM3QixRQUFJLE1BQU0sT0FBTyxRQUFRO0FBQ3hCLFlBQU0sY0FBYyxNQUFNLFFBQVEsS0FBSztBQUN2QyxVQUFJLGFBQWE7QUFDaEIsaUJBQVMsVUFBVSxNQUFNLFFBQVE7QUFBQTtBQUFBO0FBR25DLGlDQUE2QjtBQUM3QixVQUFNLGtCQUFrQixZQUFZLE9BQU87QUFDM0MsaUNBQTZCLFdBQVcsTUFBTSxZQUFZO0FBQzFELFVBQU0sa0JBQXdDLFdBQVcsTUFBTTtBQUMvRCxVQUFNLG9CQUFvQixnQkFBZ0IsS0FBSyxDQUFDLEVBQUUsUUFBUSxjQUFjLEtBQUssVUFBVSxhQUFhLEtBQUssVUFBVTtBQUNuSCxRQUFJLENBQUMsbUJBQW1CO0FBQ3ZCLFlBQU0sSUFBSSxNQUFNLCtFQUErRTtBQUFBO0FBRWhHLGdCQUFZLG1CQUFLLGtCQUFrQixVQUFXO0FBQUE7QUFJL0MsUUFBTSxZQUFZLE1BQU0sSUFBSTtBQUM1QixNQUFJLENBQUM7QUFBVyxVQUFNLElBQUksTUFBTSw0REFBNEQsT0FBTztBQUNuRyxNQUFJLENBQUMsVUFBVTtBQUF5QixVQUFNLElBQUksTUFBTSxzQ0FBc0MsK0JBQU87QUFHckcsUUFBTSxVQUFVLFlBQVksYUFBYSwwQkFDdEMsSUFBSSxJQUNKLE1BQU0sS0FBSyxJQUFJLFdBQVcsc0JBQXNCLElBQUksQ0FBQyxRQUFTO0FBQUEsSUFDN0QsT0FBTyxFQUFFLE1BQU0sVUFBVTtBQUFBLElBQ3pCLFVBQVU7QUFBQSxTQUdYLElBQUk7QUFHUCxNQUFJLFNBQVMsaUJBQWlCLFlBQVksYUFBYSx5QkFBeUI7QUFDL0UsWUFBUSxJQUFJO0FBQUEsTUFDWCxPQUFPLEVBQUUsTUFBTSxVQUFVLEtBQUs7QUFBQSxNQUM5QixVQUFVO0FBQUE7QUFFWCxZQUFRLElBQUk7QUFBQSxNQUNYLE9BQU8sRUFBRSxNQUFNLFVBQVUsS0FBSyxJQUFJLElBQUksK0JBQStCLFlBQVksS0FBSztBQUFBLE1BQ3RGLFVBQVU7QUFBQTtBQUFBO0FBSVosUUFBTSxTQUFTLGFBQWEsRUFBRSxhQUFhLFNBQVMsUUFBUSxRQUFRLFVBQVUsV0FBVztBQUV6RixTQUFPLFVBQVUsT0FBTyxNQUFjO0FBSXJDLFFBQUksWUFBWSxhQUFhLHlCQUF5QjtBQUNyRCxZQUFNLENBQUMsRUFBRSxnQkFBZ0IsTUFBTSxXQUFXLFlBQVksV0FBVztBQUNqRSxhQUFPO0FBQUEsV0FDRDtBQUNOLGFBQU87QUFBQTtBQUFBO0FBSVQsTUFBSSxPQUFPLE1BQU0sV0FBVyxRQUFRLFdBQVcsV0FBVztBQUcxRCxRQUFNLE9BQWlDO0FBR3ZDLE1BQUksU0FBUyxpQkFBaUIsQ0FBQyxZQUFZLGFBQWEseUJBQXlCO0FBQ2hGLFNBQUssS0FBSztBQUFBLE1BQ1QsS0FBSztBQUFBLE1BQ0wsT0FBTyxFQUFFLE1BQU07QUFBQSxNQUdmLFVBQVUsTUFBTTtBQUFBLE1BQ2hCLFVBQVU7QUFBQTtBQUFBO0FBS1osR0FBQyxHQUFHLGdCQUFnQixVQUFVLGFBQWEsUUFBUSxDQUFDLFNBQVM7QUFDNUQsUUFBSSxTQUFTLGlCQUFpQixlQUFlLEtBQUssT0FBTztBQUN4RCxXQUFLLEtBQUs7QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLE9BQU8sRUFBRSxNQUFNLFVBQVUsS0FBSztBQUFBLFFBQzlCLFVBQVU7QUFBQTtBQUFBLFdBRUw7QUFDTixXQUFLLEtBQUs7QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLE9BQU87QUFBQSxVQUNOLEtBQUs7QUFBQSxVQUNMO0FBQUEsVUFDQSx1QkFBdUI7QUFBQTtBQUFBLFFBRXhCLFVBQVU7QUFBQTtBQUFBO0FBQUE7QUFNYixTQUFPLFdBQVcsTUFBTTtBQUd4QixNQUFJLFNBQVMsaUJBQWlCLENBQUMsWUFBWSxhQUFhLHlCQUF5QjtBQUNoRixVQUFNLGNBQWMsU0FBUyxLQUFLLFFBQVEsWUFBWSxZQUFZLE1BQU07QUFDeEUsV0FBTyxNQUFNLFdBQVcsbUJBQW1CLGFBQWEsTUFBTTtBQUFBO0FBSS9ELE1BQUksQ0FBQyxrQkFBa0IsS0FBSyxPQUFPO0FBQ2xDLFdBQU8sc0JBQXNCO0FBQUE7QUFHOUIsU0FBTztBQUFBO0FBR1IsSUFBSTtBQUNKLDhCQUE4QjtBQUM3QixNQUFJO0FBQVcsV0FBTztBQUN0QixRQUFNLFdBQVcsY0FBYyxJQUFJLElBQUksK0JBQStCLFlBQVk7QUFDbEYsUUFBTSxVQUFVLE1BQU0sR0FBRyxTQUFTLFNBQVM7QUFDM0MsY0FBWSxRQUFRO0FBQ3BCLFNBQU87QUFBQTtBQUdSLG1CQUEwQixTQUFzQztBQUMvRCxNQUFJO0FBQ0gsVUFBTSxDQUFDLFdBQVcsT0FBTyxNQUFNLFFBQVE7QUFDdkMsV0FBTyxNQUFNLE9BQU8sV0FBVyxLQUFLO0FBQUEsV0FDNUIsR0FBUDtBQUNELFVBQU0sYUFBYSxHQUFHLEVBQUUsWUFBWSxRQUFRLFlBQVksVUFBVSxRQUFRO0FBQzFFLFVBQU07QUFBQTtBQUFBOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -20,11 +20,12 @@ import { isCSSRequest } from "./css.js";
20
20
  import { renderSlot } from "../../runtime/server/index.js";
21
21
  import { warn } from "../logger.js";
22
22
  function createResult(args) {
23
+ var _a, _b;
23
24
  const { astroConfig, origin, params, pathname, renderers } = args;
24
25
  const result = {
25
26
  styles: new Set(),
26
- scripts: new Set(),
27
- links: new Set(),
27
+ scripts: (_a = args.scripts) != null ? _a : new Set(),
28
+ links: (_b = args.links) != null ? _b : new Set(),
28
29
  createAstro(astroGlobal, props, slots) {
29
30
  const site = new URL(origin);
30
31
  const url = new URL("." + pathname, site);
@@ -89,4 +90,4 @@ ${extra}`);
89
90
  export {
90
91
  createResult
91
92
  };
92
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvcmUvc3NyL3Jlc3VsdC50cyJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBV08sc0JBQXNCLE1BQW1DO0FBQy9ELFFBQU0sRUFBRSxhQUFhLFFBQVEsUUFBUSxVQUFVLGNBQWM7QUFLN0QsUUFBTSxTQUFvQjtBQUFBLElBQ3pCLFFBQVEsSUFBSTtBQUFBLElBQ1osU0FBUyxJQUFJO0FBQUEsSUFDYixPQUFPLElBQUk7QUFBQSxJQUVYLFlBQVksYUFBaUMsT0FBNEIsT0FBbUM7QUFDM0csWUFBTSxPQUFPLElBQUksSUFBSTtBQUNyQixZQUFNLE1BQU0sSUFBSSxJQUFJLE1BQU0sVUFBVTtBQUNwQyxZQUFNLGVBQWUsZ0JBQWdCLE1BQU0sVUFBVSxZQUFZLGFBQWEsUUFBUTtBQUN0RixhQUFPO0FBQUEsUUFDTixXQUFXO0FBQUEsUUFDWDtBQUFBLFFBQ0EsU0FBUztBQUFBLFVBQ1I7QUFBQSxVQUNBO0FBQUEsVUFDQTtBQUFBO0FBQUEsUUFFRCxRQUFRLE1BQWM7QUFDckIsY0FBSSxZQUFZLGFBQWEseUJBQXlCO0FBQ3JELGdCQUFJLFFBQVEscUVBQXFFO0FBQ2pGLGdCQUFJLGFBQWEsT0FBTztBQUN2QixzQkFBUTtBQUFBO0FBQUE7QUFBQSxXQUdKO0FBQUE7QUFBQTtBQUFBO0FBS0wsaUJBQ0MsS0FBSyxTQUNMLGVBQ0EsR0FBRyxLQUFLLDJFQUEyRTtBQUFBLEVBQ3hGO0FBR0ksbUJBQU87QUFBQTtBQUdSLGlCQUFPLFlBQVksUUFBUTtBQUFBO0FBQUEsUUFFNUIsT0FBTyxPQUFPLFlBQVksT0FBTyxRQUFRLFNBQVMsSUFBSSxJQUFJLENBQUMsQ0FBQyxjQUFjLENBQUMsVUFBVTtBQUFBLFFBRXJGLDBCQUEwQixVQUFrQjtBQUMzQyxpQkFBTyxXQUFXLFFBQVEsUUFBUSxNQUFNLFlBQVk7QUFBQTtBQUFBLGNBRy9DLDhCQUE4QixTQUFpQixNQUFXO0FBQy9ELGNBQUksV0FBVyxZQUFZLGdCQUFnQjtBQUMzQyxjQUFJLGFBQWE7QUFDakIsY0FBSSxNQUFNLFFBQVEsV0FBVztBQUM1Qix5QkFBYSxTQUFTO0FBQ3RCLHVCQUFXLFNBQVM7QUFBQTtBQUdyQixjQUFJLE9BQU8sYUFBYSxVQUFVO0FBQ2pDLFlBQUMsR0FBRSxTQUFTLGFBQWEsTUFBTSxPQUFPO0FBQUEscUJBRzlCLG9CQUFvQixTQUFTO0FBQ3JDLFlBQUMsR0FBRSxTQUFTLGFBQWEsTUFBTTtBQUFBO0FBRWhDLGdCQUFNLEVBQUUsU0FBUyxNQUFNLFNBQVMsU0FBUyxrQ0FBSyxhQUFnQixzQkFBUTtBQUN0RSxpQkFBTztBQUFBO0FBQUE7QUFBQTtBQUFBLFVBS0osUUFBUSxHQUE0QjtBQUN6QyxhQUFPO0FBQUE7QUFBQSxJQUVSLFdBQVc7QUFBQSxNQUNWO0FBQUEsTUFDQTtBQUFBLE1BQ0EseUJBQXlCLFlBQVksYUFBYTtBQUFBO0FBQUE7QUFJcEQsU0FBTztBQUFBOyIsCiAgIm5hbWVzIjogW10KfQo=
93
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvcmUvc3NyL3Jlc3VsdC50cyJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBYU8sc0JBQXNCLE1BQW1DO0FBbkJoRTtBQW9CQyxRQUFNLEVBQUUsYUFBYSxRQUFRLFFBQVEsVUFBVSxjQUFjO0FBSzdELFFBQU0sU0FBb0I7QUFBQSxJQUN6QixRQUFRLElBQUk7QUFBQSxJQUNaLFNBQVMsV0FBSyxZQUFMLFlBQWdCLElBQUk7QUFBQSxJQUM3QixPQUFPLFdBQUssVUFBTCxZQUFjLElBQUk7QUFBQSxJQUV6QixZQUFZLGFBQWlDLE9BQTRCLE9BQW1DO0FBQzNHLFlBQU0sT0FBTyxJQUFJLElBQUk7QUFDckIsWUFBTSxNQUFNLElBQUksSUFBSSxNQUFNLFVBQVU7QUFDcEMsWUFBTSxlQUFlLGdCQUFnQixNQUFNLFVBQVUsWUFBWSxhQUFhLFFBQVE7QUFDdEYsYUFBTztBQUFBLFFBQ04sV0FBVztBQUFBLFFBQ1g7QUFBQSxRQUNBLFNBQVM7QUFBQSxVQUNSO0FBQUEsVUFDQTtBQUFBLFVBQ0E7QUFBQTtBQUFBLFFBRUQsUUFBUSxNQUFjO0FBQ3JCLGNBQUksWUFBWSxhQUFhLHlCQUF5QjtBQUNyRCxnQkFBSSxRQUFRLHFFQUFxRTtBQUNqRixnQkFBSSxhQUFhLE9BQU87QUFDdkIsc0JBQVE7QUFBQTtBQUFBO0FBQUEsV0FHSjtBQUFBO0FBQUE7QUFBQTtBQUtMLGlCQUNDLEtBQUssU0FDTCxlQUNBLEdBQUcsS0FBSywyRUFBMkU7QUFBQSxFQUN4RjtBQUdJLG1CQUFPO0FBQUE7QUFHUixpQkFBTyxZQUFZLFFBQVE7QUFBQTtBQUFBLFFBRTVCLE9BQU8sT0FBTyxZQUFZLE9BQU8sUUFBUSxTQUFTLElBQUksSUFBSSxDQUFDLENBQUMsY0FBYyxDQUFDLFVBQVU7QUFBQSxRQUVyRiwwQkFBMEIsVUFBa0I7QUFDM0MsaUJBQU8sV0FBVyxRQUFRLFFBQVEsTUFBTSxZQUFZO0FBQUE7QUFBQSxjQUcvQyw4QkFBOEIsU0FBaUIsTUFBVztBQUMvRCxjQUFJLFdBQVcsWUFBWSxnQkFBZ0I7QUFDM0MsY0FBSSxhQUFhO0FBQ2pCLGNBQUksTUFBTSxRQUFRLFdBQVc7QUFDNUIseUJBQWEsU0FBUztBQUN0Qix1QkFBVyxTQUFTO0FBQUE7QUFHckIsY0FBSSxPQUFPLGFBQWEsVUFBVTtBQUNqQyxZQUFDLEdBQUUsU0FBUyxhQUFhLE1BQU0sT0FBTztBQUFBLHFCQUc5QixvQkFBb0IsU0FBUztBQUNyQyxZQUFDLEdBQUUsU0FBUyxhQUFhLE1BQU07QUFBQTtBQUVoQyxnQkFBTSxFQUFFLFNBQVMsTUFBTSxTQUFTLFNBQVMsa0NBQUssYUFBZ0Isc0JBQVE7QUFDdEUsaUJBQU87QUFBQTtBQUFBO0FBQUE7QUFBQSxVQUtKLFFBQVEsR0FBNEI7QUFDekMsYUFBTztBQUFBO0FBQUEsSUFFUixXQUFXO0FBQUEsTUFDVjtBQUFBLE1BQ0E7QUFBQSxNQUNBLHlCQUF5QixZQUFZLGFBQWE7QUFBQTtBQUFBO0FBSXBELFNBQU87QUFBQTsiLAogICJuYW1lcyI6IFtdCn0K
@@ -14,7 +14,7 @@ var __objRest = (source, exclude) => {
14
14
  return target;
15
15
  };
16
16
  import { XMLValidator } from "fast-xml-parser";
17
- import { canonicalURL, PRETTY_FEED_V3 } from "../util.js";
17
+ import { canonicalURL, isValidURL, PRETTY_FEED_V3 } from "../util.js";
18
18
  function validateRSS(args) {
19
19
  const { rssData, srcFile } = args;
20
20
  if (!rssData.title)
@@ -28,7 +28,7 @@ function validateRSS(args) {
28
28
  }
29
29
  function generateRSS(args) {
30
30
  validateRSS(args);
31
- const { srcFile, feedURL, rssData, site } = args;
31
+ const { srcFile, rssData, site } = args;
32
32
  if (rssData.item)
33
33
  throw new Error(`[${srcFile}] rss() \`item()\` function was deprecated, and is now \`items: object[]\`.`);
34
34
  let xml = `<?xml version="1.0" encoding="UTF-8"?>`;
@@ -45,7 +45,7 @@ function generateRSS(args) {
45
45
  xml += `<channel>`;
46
46
  xml += `<title><![CDATA[${rssData.title}]]></title>`;
47
47
  xml += `<description><![CDATA[${rssData.description}]]></description>`;
48
- xml += `<link>${canonicalURL(feedURL, site).href}</link>`;
48
+ xml += `<link>${canonicalURL(site).href}</link>`;
49
49
  if (typeof rssData.customData === "string")
50
50
  xml += rssData.customData;
51
51
  for (const result of rssData.items) {
@@ -57,8 +57,9 @@ function generateRSS(args) {
57
57
  if (!result.link)
58
58
  throw new Error(`[${srcFile}] rss.items required "link" property is missing. got: "${JSON.stringify(result)}"`);
59
59
  xml += `<title><![CDATA[${result.title}]]></title>`;
60
- xml += `<link>${canonicalURL(result.link, site).href}</link>`;
61
- xml += `<guid>${canonicalURL(result.link, site).href}</guid>`;
60
+ const itemLink = isValidURL(result.link) ? result.link : canonicalURL(result.link, site).href;
61
+ xml += `<link>${itemLink}</link>`;
62
+ xml += `<guid>${itemLink}</guid>`;
62
63
  if (result.description)
63
64
  xml += `<description><![CDATA[${result.description}]]></description>`;
64
65
  if (result.pubDate) {
@@ -84,12 +85,13 @@ function generateRSSStylesheet() {
84
85
  return PRETTY_FEED_V3;
85
86
  }
86
87
  function generateRssFunction(site, route) {
87
- let result = {};
88
+ let results = [];
88
89
  return {
89
90
  generator: function rssUtility(args) {
90
91
  if (!site) {
91
92
  throw new Error(`[${route.component}] rss() tried to generate RSS but "buildOptions.site" missing in astro.config.mjs`);
92
93
  }
94
+ let result = {};
93
95
  const _a = args, { dest } = _a, rssData = __objRest(_a, ["dest"]);
94
96
  const feedURL = dest || "/rss.xml";
95
97
  if (rssData.stylesheet === true) {
@@ -105,10 +107,11 @@ function generateRssFunction(site, route) {
105
107
  }
106
108
  result.xml = {
107
109
  url: feedURL,
108
- content: generateRSS({ rssData, site, srcFile: route.component, feedURL })
110
+ content: generateRSS({ rssData, site, srcFile: route.component })
109
111
  };
112
+ results.push(result);
110
113
  },
111
- rss: result
114
+ rss: results
112
115
  };
113
116
  }
114
117
  export {
@@ -117,4 +120,4 @@ export {
117
120
  generateRssFunction,
118
121
  validateRSS
119
122
  };
120
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvcmUvc3NyL3Jzcy50cyJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7OztBQUVBO0FBQ0E7QUFHTyxxQkFBcUIsTUFBNkI7QUFDeEQsUUFBTSxFQUFFLFNBQVMsWUFBWTtBQUM3QixNQUFJLENBQUMsUUFBUTtBQUFPLFVBQU0sSUFBSSxNQUFNLElBQUk7QUFDeEMsTUFBSSxDQUFDLFFBQVE7QUFBYSxVQUFNLElBQUksTUFBTSxJQUFJO0FBQzlDLE1BQUssUUFBZ0I7QUFBTSxVQUFNLElBQUksTUFBTSxJQUFJO0FBQy9DLE1BQUksQ0FBQyxNQUFNLFFBQVEsUUFBUTtBQUFRLFVBQU0sSUFBSSxNQUFNLElBQUk7QUFBQTtBQU1qRCxxQkFBcUIsTUFBK0I7QUFDMUQsY0FBWTtBQUNaLFFBQU0sRUFBRSxTQUFTLFNBQVMsU0FBUyxTQUFTO0FBQzVDLE1BQUssUUFBZ0I7QUFBTSxVQUFNLElBQUksTUFBTSxJQUFJO0FBRS9DLE1BQUksTUFBTTtBQUNWLE1BQUksT0FBTyxRQUFRLGVBQWUsVUFBVTtBQUMzQyxXQUFPLDBCQUEwQixRQUFRO0FBQUE7QUFFMUMsU0FBTztBQUdQLE1BQUksUUFBUSxPQUFPO0FBQ2xCLGVBQVcsQ0FBQyxHQUFHLE1BQU0sT0FBTyxRQUFRLFFBQVEsUUFBUTtBQUNuRCxhQUFPLFVBQVUsTUFBTTtBQUFBO0FBQUE7QUFHekIsU0FBTztBQUNQLFNBQU87QUFHUCxTQUFPLG1CQUFtQixRQUFRO0FBQ2xDLFNBQU8seUJBQXlCLFFBQVE7QUFDeEMsU0FBTyxTQUFTLGFBQWEsU0FBUyxNQUFNO0FBQzVDLE1BQUksT0FBTyxRQUFRLGVBQWU7QUFBVSxXQUFPLFFBQVE7QUFFM0QsYUFBVyxVQUFVLFFBQVEsT0FBTztBQUNuQyxXQUFPO0FBRVAsUUFBSSxPQUFPLFdBQVc7QUFBVSxZQUFNLElBQUksTUFBTSxJQUFJLGdEQUFnRCxLQUFLLFVBQVU7QUFDbkgsUUFBSSxDQUFDLE9BQU87QUFBTyxZQUFNLElBQUksTUFBTSxJQUFJLGtFQUFrRSxLQUFLLFVBQVU7QUFDeEgsUUFBSSxDQUFDLE9BQU87QUFBTSxZQUFNLElBQUksTUFBTSxJQUFJLGlFQUFpRSxLQUFLLFVBQVU7QUFDdEgsV0FBTyxtQkFBbUIsT0FBTztBQUNqQyxXQUFPLFNBQVMsYUFBYSxPQUFPLE1BQU0sTUFBTTtBQUNoRCxXQUFPLFNBQVMsYUFBYSxPQUFPLE1BQU0sTUFBTTtBQUNoRCxRQUFJLE9BQU87QUFBYSxhQUFPLHlCQUF5QixPQUFPO0FBQy9ELFFBQUksT0FBTyxTQUFTO0FBRW5CLFVBQUksT0FBTyxPQUFPLFlBQVksWUFBWSxPQUFPLE9BQU8sWUFBWSxVQUFVO0FBQzdFLGVBQU8sVUFBVSxJQUFJLEtBQUssT0FBTztBQUFBLGlCQUN2QixPQUFPLG1CQUFtQixTQUFTLE9BQU87QUFDcEQsY0FBTSxJQUFJLE1BQU07QUFBQTtBQUVqQixhQUFPLFlBQVksT0FBTyxRQUFRO0FBQUE7QUFFbkMsUUFBSSxPQUFPLE9BQU8sZUFBZTtBQUFVLGFBQU8sT0FBTztBQUN6RCxXQUFPO0FBQUE7QUFHUixTQUFPO0FBR1AsUUFBTSxVQUFVLGFBQWEsU0FBUztBQUN0QyxNQUFJLFlBQVksTUFBTTtBQUVyQixVQUFNLElBQUksTUFBTTtBQUFBO0FBR2pCLFNBQU87QUFBQTtBQUdELGlDQUFpQztBQUN2QyxTQUFPO0FBQUE7QUFJRCw2QkFBNkIsTUFBMEIsT0FBK0Q7QUFDNUgsTUFBSSxTQUFvQjtBQUN4QixTQUFPO0FBQUEsSUFDTixXQUFXLG9CQUFvQixNQUFXO0FBQ3pDLFVBQUksQ0FBQyxNQUFNO0FBQ1YsY0FBTSxJQUFJLE1BQU0sSUFBSSxNQUFNO0FBQUE7QUFFM0IsWUFBNkIsV0FBckIsV0FBcUIsSUFBWixvQkFBWSxJQUFaLENBQVQ7QUFDUixZQUFNLFVBQVUsUUFBUTtBQUN4QixVQUFJLFFBQVEsZUFBZSxNQUFNO0FBQ2hDLGdCQUFRLGFBQWEsUUFBUSxRQUFRLFVBQVU7QUFDL0MsZUFBTyxNQUFNO0FBQUEsVUFDWixLQUFLLFFBQVE7QUFBQSxVQUNiLFNBQVM7QUFBQTtBQUFBLGlCQUVBLE9BQU8sUUFBUSxlQUFlLFVBQVU7QUFDbEQsZUFBTyxNQUFNO0FBQUEsVUFDWixLQUFLLFFBQVE7QUFBQTtBQUFBO0FBR2YsYUFBTyxNQUFNO0FBQUEsUUFDWixLQUFLO0FBQUEsUUFDTCxTQUFTLFlBQVksRUFBRSxTQUFTLE1BQU0sU0FBUyxNQUFNLFdBQVc7QUFBQTtBQUFBO0FBQUEsSUFHbEUsS0FBSztBQUFBO0FBQUE7IiwKICAibmFtZXMiOiBbXQp9Cg==
123
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvcmUvc3NyL3Jzcy50cyJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7OztBQUVBO0FBQ0E7QUFHTyxxQkFBcUIsTUFBNkI7QUFDeEQsUUFBTSxFQUFFLFNBQVMsWUFBWTtBQUM3QixNQUFJLENBQUMsUUFBUTtBQUFPLFVBQU0sSUFBSSxNQUFNLElBQUk7QUFDeEMsTUFBSSxDQUFDLFFBQVE7QUFBYSxVQUFNLElBQUksTUFBTSxJQUFJO0FBQzlDLE1BQUssUUFBZ0I7QUFBTSxVQUFNLElBQUksTUFBTSxJQUFJO0FBQy9DLE1BQUksQ0FBQyxNQUFNLFFBQVEsUUFBUTtBQUFRLFVBQU0sSUFBSSxNQUFNLElBQUk7QUFBQTtBQU1qRCxxQkFBcUIsTUFBK0I7QUFDMUQsY0FBWTtBQUNaLFFBQU0sRUFBRSxTQUFTLFNBQVMsU0FBUztBQUNuQyxNQUFLLFFBQWdCO0FBQU0sVUFBTSxJQUFJLE1BQU0sSUFBSTtBQUUvQyxNQUFJLE1BQU07QUFDVixNQUFJLE9BQU8sUUFBUSxlQUFlLFVBQVU7QUFDM0MsV0FBTywwQkFBMEIsUUFBUTtBQUFBO0FBRTFDLFNBQU87QUFHUCxNQUFJLFFBQVEsT0FBTztBQUNsQixlQUFXLENBQUMsR0FBRyxNQUFNLE9BQU8sUUFBUSxRQUFRLFFBQVE7QUFDbkQsYUFBTyxVQUFVLE1BQU07QUFBQTtBQUFBO0FBR3pCLFNBQU87QUFDUCxTQUFPO0FBR1AsU0FBTyxtQkFBbUIsUUFBUTtBQUNsQyxTQUFPLHlCQUF5QixRQUFRO0FBQ3hDLFNBQU8sU0FBUyxhQUFhLE1BQU07QUFDbkMsTUFBSSxPQUFPLFFBQVEsZUFBZTtBQUFVLFdBQU8sUUFBUTtBQUUzRCxhQUFXLFVBQVUsUUFBUSxPQUFPO0FBQ25DLFdBQU87QUFFUCxRQUFJLE9BQU8sV0FBVztBQUFVLFlBQU0sSUFBSSxNQUFNLElBQUksZ0RBQWdELEtBQUssVUFBVTtBQUNuSCxRQUFJLENBQUMsT0FBTztBQUFPLFlBQU0sSUFBSSxNQUFNLElBQUksa0VBQWtFLEtBQUssVUFBVTtBQUN4SCxRQUFJLENBQUMsT0FBTztBQUFNLFlBQU0sSUFBSSxNQUFNLElBQUksaUVBQWlFLEtBQUssVUFBVTtBQUN0SCxXQUFPLG1CQUFtQixPQUFPO0FBRWpDLFVBQU0sV0FBVyxXQUFXLE9BQU8sUUFBUSxPQUFPLE9BQU8sYUFBYSxPQUFPLE1BQU0sTUFBTTtBQUN6RixXQUFPLFNBQVM7QUFDaEIsV0FBTyxTQUFTO0FBQ2hCLFFBQUksT0FBTztBQUFhLGFBQU8seUJBQXlCLE9BQU87QUFDL0QsUUFBSSxPQUFPLFNBQVM7QUFFbkIsVUFBSSxPQUFPLE9BQU8sWUFBWSxZQUFZLE9BQU8sT0FBTyxZQUFZLFVBQVU7QUFDN0UsZUFBTyxVQUFVLElBQUksS0FBSyxPQUFPO0FBQUEsaUJBQ3ZCLE9BQU8sbUJBQW1CLFNBQVMsT0FBTztBQUNwRCxjQUFNLElBQUksTUFBTTtBQUFBO0FBRWpCLGFBQU8sWUFBWSxPQUFPLFFBQVE7QUFBQTtBQUVuQyxRQUFJLE9BQU8sT0FBTyxlQUFlO0FBQVUsYUFBTyxPQUFPO0FBQ3pELFdBQU87QUFBQTtBQUdSLFNBQU87QUFHUCxRQUFNLFVBQVUsYUFBYSxTQUFTO0FBQ3RDLE1BQUksWUFBWSxNQUFNO0FBRXJCLFVBQU0sSUFBSSxNQUFNO0FBQUE7QUFHakIsU0FBTztBQUFBO0FBR0QsaUNBQWlDO0FBQ3ZDLFNBQU87QUFBQTtBQUlELDZCQUE2QixNQUEwQixPQUFpRTtBQUM5SCxNQUFJLFVBQXVCO0FBQzNCLFNBQU87QUFBQSxJQUNOLFdBQVcsb0JBQW9CLE1BQVc7QUFDekMsVUFBSSxDQUFDLE1BQU07QUFDVixjQUFNLElBQUksTUFBTSxJQUFJLE1BQU07QUFBQTtBQUUzQixVQUFJLFNBQW9CO0FBQ3hCLFlBQTZCLFdBQXJCLFdBQXFCLElBQVosb0JBQVksSUFBWixDQUFUO0FBQ1IsWUFBTSxVQUFVLFFBQVE7QUFDeEIsVUFBSSxRQUFRLGVBQWUsTUFBTTtBQUNoQyxnQkFBUSxhQUFhLFFBQVEsUUFBUSxVQUFVO0FBQy9DLGVBQU8sTUFBTTtBQUFBLFVBQ1osS0FBSyxRQUFRO0FBQUEsVUFDYixTQUFTO0FBQUE7QUFBQSxpQkFFQSxPQUFPLFFBQVEsZUFBZSxVQUFVO0FBQ2xELGVBQU8sTUFBTTtBQUFBLFVBQ1osS0FBSyxRQUFRO0FBQUE7QUFBQTtBQUdmLGFBQU8sTUFBTTtBQUFBLFFBQ1osS0FBSztBQUFBLFFBQ0wsU0FBUyxZQUFZLEVBQUUsU0FBUyxNQUFNLFNBQVMsTUFBTTtBQUFBO0FBRXRELGNBQVEsS0FBSztBQUFBO0FBQUEsSUFFZCxLQUFLO0FBQUE7QUFBQTsiLAogICJuYW1lcyI6IFtdCn0K
package/dist/core/util.js CHANGED
@@ -11,6 +11,14 @@ function canonicalURL(url, base) {
11
11
  pathname = pathname.replace(/\/+/g, "/");
12
12
  return new URL(pathname, base);
13
13
  }
14
+ function isValidURL(url) {
15
+ try {
16
+ new URL(url);
17
+ return true;
18
+ } catch (e) {
19
+ }
20
+ return false;
21
+ }
14
22
  function parseNpmName(spec) {
15
23
  if (!spec || spec[0] === "." || spec[0] === "/")
16
24
  return void 0;
@@ -169,8 +177,9 @@ export {
169
177
  PRETTY_FEED_V3,
170
178
  canonicalURL,
171
179
  codeFrame,
180
+ isValidURL,
172
181
  parseNpmName,
173
182
  resolveDependency,
174
183
  viteID
175
184
  };
176
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NvcmUvdXRpbC50cyJdLAogICJtYXBwaW5ncyI6ICJBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFHTyxzQkFBc0IsS0FBYSxNQUFvQjtBQUM3RCxNQUFJLFdBQVcsSUFBSSxRQUFRLGlCQUFpQjtBQUM1QyxhQUFXLFNBQVMsUUFBUSxXQUFXO0FBQ3ZDLE1BQUksQ0FBQyxLQUFLLFFBQVE7QUFBVyxlQUFXLFNBQVMsUUFBUSxXQUFXO0FBQ3BFLGFBQVcsU0FBUyxRQUFRLFFBQVE7QUFDcEMsU0FBTyxJQUFJLElBQUksVUFBVTtBQUFBO0FBSW5CLHNCQUFzQixNQUE4RTtBQUUxRyxNQUFJLENBQUMsUUFBUSxLQUFLLE9BQU8sT0FBTyxLQUFLLE9BQU87QUFBSyxXQUFPO0FBRXhELE1BQUk7QUFDSixNQUFJLE9BQU87QUFFWCxNQUFJLFFBQVEsS0FBSyxNQUFNO0FBQ3ZCLE1BQUksTUFBTSxHQUFHLE9BQU8sS0FBSztBQUN4QixZQUFRLE1BQU07QUFDZCxXQUFPLE1BQU0sVUFBVTtBQUFBO0FBRXhCLFVBQVEsTUFBTTtBQUVkLE1BQUksVUFBVSxNQUFNLFNBQVMsS0FBSyxNQUFNLEtBQUssU0FBUztBQUV0RCxTQUFPO0FBQUEsSUFDTjtBQUFBLElBQ0E7QUFBQSxJQUNBO0FBQUE7QUFBQTtBQUtLLG1CQUFtQixLQUFhLEtBQXlDO0FBQy9FLE1BQUksQ0FBQztBQUFLLFdBQU87QUFDakIsUUFBTSxRQUFRLElBQUksR0FBRyxLQUFLLE1BQU07QUFFaEMsUUFBTSxlQUFlO0FBQ3JCLFdBQVMsSUFBSSxJQUFJLEtBQUssR0FBRyxLQUFLO0FBQzdCLFFBQUksTUFBTSxJQUFJLE9BQU87QUFBSSxtQkFBYSxLQUFLLElBQUksT0FBTztBQUFBO0FBR3ZELE1BQUksY0FBYztBQUNsQixhQUFXLFVBQVUsY0FBYztBQUNsQyxRQUFJLElBQUksS0FBSztBQUNiLFFBQUksRUFBRSxTQUFTO0FBQWEsb0JBQWMsRUFBRTtBQUFBO0FBRzdDLE1BQUksU0FBUztBQUNiLGFBQVcsVUFBVSxjQUFjO0FBQ2xDLFVBQU0sZ0JBQWdCLFdBQVcsSUFBSSxPQUFPO0FBQzVDLGNBQVUsZ0JBQWdCLE9BQU87QUFDakMsY0FBVSxHQUFHLFNBQVMsT0FBTyxNQUFNO0FBQUE7QUFDbkMsUUFBSTtBQUFlLGdCQUFVLEdBQUcsQ0FBQyxHQUFHLElBQUksTUFBTSxjQUFjLEtBQUssV0FBVyxDQUFDLEdBQUcsSUFBSSxNQUFNLElBQUksU0FBUyxLQUFLO0FBQUE7QUFBQTtBQUU3RyxTQUFPO0FBQUE7QUFHRCwyQkFBMkIsS0FBYSxhQUEwQjtBQUN4RSxRQUFNLFdBQVcsUUFBUSxLQUFLLEtBQUs7QUFBQSxJQUNsQyxTQUFTLGNBQWMsWUFBWTtBQUFBO0FBR3BDLFNBQU8sY0FBYyxVQUFVO0FBQUE7QUFTekIsZ0JBQWdCLFVBQXVCO0FBQzdDLFNBQU8sTUFBTSxjQUFjO0FBQUE7QUFLckIsTUFBTSxpQkFBaUI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7IiwKICAibmFtZXMiOiBbXQp9Cg==
185
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NvcmUvdXRpbC50cyJdLAogICJtYXBwaW5ncyI6ICJBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFHTyxzQkFBc0IsS0FBYSxNQUFvQjtBQUM3RCxNQUFJLFdBQVcsSUFBSSxRQUFRLGlCQUFpQjtBQUM1QyxhQUFXLFNBQVMsUUFBUSxXQUFXO0FBQ3ZDLE1BQUksQ0FBQyxLQUFLLFFBQVE7QUFBVyxlQUFXLFNBQVMsUUFBUSxXQUFXO0FBQ3BFLGFBQVcsU0FBUyxRQUFRLFFBQVE7QUFDcEMsU0FBTyxJQUFJLElBQUksVUFBVTtBQUFBO0FBSW5CLG9CQUFvQixLQUFzQjtBQUNoRCxNQUFJO0FBQ0gsUUFBSSxJQUFJO0FBQ1IsV0FBTztBQUFBLFdBQ0MsR0FBUDtBQUFBO0FBQ0YsU0FBTztBQUFBO0FBSUQsc0JBQXNCLE1BQThFO0FBRTFHLE1BQUksQ0FBQyxRQUFRLEtBQUssT0FBTyxPQUFPLEtBQUssT0FBTztBQUFLLFdBQU87QUFFeEQsTUFBSTtBQUNKLE1BQUksT0FBTztBQUVYLE1BQUksUUFBUSxLQUFLLE1BQU07QUFDdkIsTUFBSSxNQUFNLEdBQUcsT0FBTyxLQUFLO0FBQ3hCLFlBQVEsTUFBTTtBQUNkLFdBQU8sTUFBTSxVQUFVO0FBQUE7QUFFeEIsVUFBUSxNQUFNO0FBRWQsTUFBSSxVQUFVLE1BQU0sU0FBUyxLQUFLLE1BQU0sS0FBSyxTQUFTO0FBRXRELFNBQU87QUFBQSxJQUNOO0FBQUEsSUFDQTtBQUFBLElBQ0E7QUFBQTtBQUFBO0FBS0ssbUJBQW1CLEtBQWEsS0FBeUM7QUFDL0UsTUFBSSxDQUFDO0FBQUssV0FBTztBQUNqQixRQUFNLFFBQVEsSUFBSSxHQUFHLEtBQUssTUFBTTtBQUVoQyxRQUFNLGVBQWU7QUFDckIsV0FBUyxJQUFJLElBQUksS0FBSyxHQUFHLEtBQUs7QUFDN0IsUUFBSSxNQUFNLElBQUksT0FBTztBQUFJLG1CQUFhLEtBQUssSUFBSSxPQUFPO0FBQUE7QUFHdkQsTUFBSSxjQUFjO0FBQ2xCLGFBQVcsVUFBVSxjQUFjO0FBQ2xDLFFBQUksSUFBSSxLQUFLO0FBQ2IsUUFBSSxFQUFFLFNBQVM7QUFBYSxvQkFBYyxFQUFFO0FBQUE7QUFHN0MsTUFBSSxTQUFTO0FBQ2IsYUFBVyxVQUFVLGNBQWM7QUFDbEMsVUFBTSxnQkFBZ0IsV0FBVyxJQUFJLE9BQU87QUFDNUMsY0FBVSxnQkFBZ0IsT0FBTztBQUNqQyxjQUFVLEdBQUcsU0FBUyxPQUFPLE1BQU07QUFBQTtBQUNuQyxRQUFJO0FBQWUsZ0JBQVUsR0FBRyxDQUFDLEdBQUcsSUFBSSxNQUFNLGNBQWMsS0FBSyxXQUFXLENBQUMsR0FBRyxJQUFJLE1BQU0sSUFBSSxTQUFTLEtBQUs7QUFBQTtBQUFBO0FBRTdHLFNBQU87QUFBQTtBQUdELDJCQUEyQixLQUFhLGFBQTBCO0FBQ3hFLFFBQU0sV0FBVyxRQUFRLEtBQUssS0FBSztBQUFBLElBQ2xDLFNBQVMsY0FBYyxZQUFZO0FBQUE7QUFHcEMsU0FBTyxjQUFjLFVBQVU7QUFBQTtBQVN6QixnQkFBZ0IsVUFBdUI7QUFDN0MsU0FBTyxNQUFNLGNBQWM7QUFBQTtBQUtyQixNQUFNLGlCQUFpQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTsiLAogICJuYW1lcyI6IFtdCn0K
@@ -5,11 +5,11 @@ class Metadata {
5
5
  this.hoisted = opts.hoisted;
6
6
  this.hydratedComponents = opts.hydratedComponents;
7
7
  this.hydrationDirectives = opts.hydrationDirectives;
8
- this.fileURL = new URL(filePathname, "http://example.com");
8
+ this.mockURL = new URL(filePathname, "http://example.com");
9
9
  this.metadataCache = new Map();
10
10
  }
11
11
  resolvePath(specifier) {
12
- return specifier.startsWith(".") ? new URL(specifier, this.fileURL).pathname : specifier;
12
+ return specifier.startsWith(".") ? new URL(specifier, this.mockURL).pathname : specifier;
13
13
  }
14
14
  getPath(Component) {
15
15
  const metadata = this.getComponentMetadata(Component);
@@ -42,6 +42,15 @@ class Metadata {
42
42
  }
43
43
  }
44
44
  }
45
+ *hoistedScriptPaths() {
46
+ for (const metadata of this.deepMetadata()) {
47
+ let i = 0, pathname = metadata.mockURL.pathname;
48
+ while (i < metadata.hoisted.length) {
49
+ yield `${pathname}?astro&type=script&index=${i}`;
50
+ i++;
51
+ }
52
+ }
53
+ }
45
54
  *deepMetadata() {
46
55
  yield this;
47
56
  const seen = new Set();
@@ -95,4 +104,4 @@ export {
95
104
  Metadata,
96
105
  createMetadata
97
106
  };
98
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3J1bnRpbWUvc2VydmVyL21ldGFkYXRhLnRzIl0sCiAgIm1hcHBpbmdzIjogIkFBQUE7QUFtQk8sZUFBZTtBQUFBLEVBU3JCLFlBQVksY0FBc0IsTUFBNkI7QUFDOUQsU0FBSyxVQUFVLEtBQUs7QUFDcEIsU0FBSyxVQUFVLEtBQUs7QUFDcEIsU0FBSyxxQkFBcUIsS0FBSztBQUMvQixTQUFLLHNCQUFzQixLQUFLO0FBQ2hDLFNBQUssVUFBVSxJQUFJLElBQUksY0FBYztBQUNyQyxTQUFLLGdCQUFnQixJQUFJO0FBQUE7QUFBQSxFQUcxQixZQUFZLFdBQTJCO0FBQ3RDLFdBQU8sVUFBVSxXQUFXLE9BQU8sSUFBSSxJQUFJLFdBQVcsS0FBSyxTQUFTLFdBQVc7QUFBQTtBQUFBLEVBR2hGLFFBQVEsV0FBK0I7QUFDdEMsVUFBTSxXQUFXLEtBQUsscUJBQXFCO0FBQzNDLFdBQU8sc0NBQVUsaUJBQWdCO0FBQUE7QUFBQSxFQUdsQyxVQUFVLFdBQStCO0FBQ3hDLFVBQU0sV0FBVyxLQUFLLHFCQUFxQjtBQUMzQyxXQUFPLHNDQUFVLG9CQUFtQjtBQUFBO0FBQUEsR0FPcEMseUJBQXlCO0FBQ3pCLFVBQU0sUUFBUSxJQUFJO0FBQ2xCLGVBQVcsWUFBWSxLQUFLLGdCQUFnQjtBQUMzQyxpQkFBVyxhQUFhLFNBQVMsb0JBQW9CO0FBQ3BELGNBQU0sT0FBTyxTQUFTLFFBQVE7QUFDOUIsWUFBSSxRQUFRLENBQUMsTUFBTSxJQUFJLE9BQU87QUFDN0IsZ0JBQU0sSUFBSTtBQUNWLGdCQUFNO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxHQVNULCtCQUErQjtBQUMvQixVQUFNLFFBQVEsSUFBSTtBQUNsQixlQUFXLFlBQVksS0FBSyxnQkFBZ0I7QUFDM0MsaUJBQVcsYUFBYSxTQUFTLHFCQUFxQjtBQUNyRCxZQUFJLENBQUMsTUFBTSxJQUFJLFlBQVk7QUFDMUIsZ0JBQU0sSUFBSTtBQUNWLGdCQUFNLG1CQUFtQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsR0FNcEIsZUFBbUQ7QUFFM0QsVUFBTTtBQUVOLFVBQU0sT0FBTyxJQUFJO0FBQ2pCLGVBQVcsRUFBRSxRQUFRLFNBQVMsS0FBSyxTQUFTO0FBQzNDLFVBQUksT0FBTyxJQUFJLGVBQWUsYUFBYTtBQUMxQyxjQUFNLEtBQUssSUFBSTtBQUdmLG1CQUFXLGdCQUFnQixHQUFHLGdCQUFnQjtBQUM3QyxjQUFJLENBQUMsS0FBSyxJQUFJLGVBQWU7QUFDNUIsaUJBQUssSUFBSTtBQUNULGtCQUFNO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT0gscUJBQXFCLFdBQTBDO0FBQ3RFLFFBQUksS0FBSyxjQUFjLElBQUksWUFBWTtBQUN0QyxhQUFPLEtBQUssY0FBYyxJQUFJO0FBQUE7QUFFL0IsVUFBTSxXQUFXLEtBQUssc0JBQXNCO0FBQzVDLFNBQUssY0FBYyxJQUFJLFdBQVc7QUFDbEMsV0FBTztBQUFBO0FBQUEsRUFHQSxzQkFBc0IsV0FBMEM7QUFDdkUsVUFBTSxrQkFBa0IsT0FBTyxjQUFjO0FBQzdDLGVBQVcsRUFBRSxRQUFRLGVBQWUsS0FBSyxTQUFTO0FBQ2pELFlBQU0sS0FBSyxLQUFLLFlBQVk7QUFDNUIsaUJBQVcsQ0FBQyxLQUFLLFVBQVUsT0FBTyxRQUFRLFNBQVM7QUFDbEQsWUFBSSxpQkFBaUI7QUFDcEIsY0FBSSxRQUFRLGFBQWEsY0FBYyxPQUFPO0FBQzdDLG1CQUFPO0FBQUEsY0FDTixpQkFBaUI7QUFBQSxjQUNqQixjQUFjO0FBQUE7QUFBQTtBQUFBLG1CQUdOLGNBQWMsT0FBTztBQUMvQixpQkFBTztBQUFBLFlBQ04saUJBQWlCO0FBQUEsWUFDakIsY0FBYztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS2xCLFdBQU87QUFBQTtBQUFBO0FBSUYsd0JBQXdCLGNBQXNCLFNBQWdDO0FBQ3BGLFNBQU8sSUFBSSxTQUFTLGNBQWM7QUFBQTsiLAogICJuYW1lcyI6IFtdCn0K
107
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3J1bnRpbWUvc2VydmVyL21ldGFkYXRhLnRzIl0sCiAgIm1hcHBpbmdzIjogIkFBQUE7QUFtQk8sZUFBZTtBQUFBLEVBU3JCLFlBQVksY0FBc0IsTUFBNkI7QUFDOUQsU0FBSyxVQUFVLEtBQUs7QUFDcEIsU0FBSyxVQUFVLEtBQUs7QUFDcEIsU0FBSyxxQkFBcUIsS0FBSztBQUMvQixTQUFLLHNCQUFzQixLQUFLO0FBQ2hDLFNBQUssVUFBVSxJQUFJLElBQUksY0FBYztBQUNyQyxTQUFLLGdCQUFnQixJQUFJO0FBQUE7QUFBQSxFQUcxQixZQUFZLFdBQTJCO0FBQ3RDLFdBQU8sVUFBVSxXQUFXLE9BQU8sSUFBSSxJQUFJLFdBQVcsS0FBSyxTQUFTLFdBQVc7QUFBQTtBQUFBLEVBR2hGLFFBQVEsV0FBK0I7QUFDdEMsVUFBTSxXQUFXLEtBQUsscUJBQXFCO0FBQzNDLFdBQU8sc0NBQVUsaUJBQWdCO0FBQUE7QUFBQSxFQUdsQyxVQUFVLFdBQStCO0FBQ3hDLFVBQU0sV0FBVyxLQUFLLHFCQUFxQjtBQUMzQyxXQUFPLHNDQUFVLG9CQUFtQjtBQUFBO0FBQUEsR0FPcEMseUJBQXlCO0FBQ3pCLFVBQU0sUUFBUSxJQUFJO0FBQ2xCLGVBQVcsWUFBWSxLQUFLLGdCQUFnQjtBQUMzQyxpQkFBVyxhQUFhLFNBQVMsb0JBQW9CO0FBQ3BELGNBQU0sT0FBTyxTQUFTLFFBQVE7QUFDOUIsWUFBSSxRQUFRLENBQUMsTUFBTSxJQUFJLE9BQU87QUFDN0IsZ0JBQU0sSUFBSTtBQUNWLGdCQUFNO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxHQVNULCtCQUErQjtBQUMvQixVQUFNLFFBQVEsSUFBSTtBQUNsQixlQUFXLFlBQVksS0FBSyxnQkFBZ0I7QUFDM0MsaUJBQVcsYUFBYSxTQUFTLHFCQUFxQjtBQUNyRCxZQUFJLENBQUMsTUFBTSxJQUFJLFlBQVk7QUFDMUIsZ0JBQU0sSUFBSTtBQUNWLGdCQUFNLG1CQUFtQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsR0FNNUIscUJBQXFCO0FBQ3JCLGVBQVcsWUFBWSxLQUFLLGdCQUFnQjtBQUMzQyxVQUFJLElBQUksR0FDUCxXQUFXLFNBQVMsUUFBUTtBQUM3QixhQUFPLElBQUksU0FBUyxRQUFRLFFBQVE7QUFDbkMsY0FBTSxHQUFHLG9DQUFvQztBQUM3QztBQUFBO0FBQUE7QUFBQTtBQUFBLEdBS00sZUFBbUQ7QUFFM0QsVUFBTTtBQUVOLFVBQU0sT0FBTyxJQUFJO0FBQ2pCLGVBQVcsRUFBRSxRQUFRLFNBQVMsS0FBSyxTQUFTO0FBQzNDLFVBQUksT0FBTyxJQUFJLGVBQWUsYUFBYTtBQUMxQyxjQUFNLEtBQUssSUFBSTtBQUdmLG1CQUFXLGdCQUFnQixHQUFHLGdCQUFnQjtBQUM3QyxjQUFJLENBQUMsS0FBSyxJQUFJLGVBQWU7QUFDNUIsaUJBQUssSUFBSTtBQUNULGtCQUFNO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT0gscUJBQXFCLFdBQTBDO0FBQ3RFLFFBQUksS0FBSyxjQUFjLElBQUksWUFBWTtBQUN0QyxhQUFPLEtBQUssY0FBYyxJQUFJO0FBQUE7QUFFL0IsVUFBTSxXQUFXLEtBQUssc0JBQXNCO0FBQzVDLFNBQUssY0FBYyxJQUFJLFdBQVc7QUFDbEMsV0FBTztBQUFBO0FBQUEsRUFHQSxzQkFBc0IsV0FBMEM7QUFDdkUsVUFBTSxrQkFBa0IsT0FBTyxjQUFjO0FBQzdDLGVBQVcsRUFBRSxRQUFRLGVBQWUsS0FBSyxTQUFTO0FBQ2pELFlBQU0sS0FBSyxLQUFLLFlBQVk7QUFDNUIsaUJBQVcsQ0FBQyxLQUFLLFVBQVUsT0FBTyxRQUFRLFNBQVM7QUFDbEQsWUFBSSxpQkFBaUI7QUFDcEIsY0FBSSxRQUFRLGFBQWEsY0FBYyxPQUFPO0FBQzdDLG1CQUFPO0FBQUEsY0FDTixpQkFBaUI7QUFBQSxjQUNqQixjQUFjO0FBQUE7QUFBQTtBQUFBLG1CQUdOLGNBQWMsT0FBTztBQUMvQixpQkFBTztBQUFBLFlBQ04saUJBQWlCO0FBQUEsWUFDakIsY0FBYztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS2xCLFdBQU87QUFBQTtBQUFBO0FBSUYsd0JBQXdCLGNBQXNCLFNBQWdDO0FBQ3BGLFNBQU8sSUFBSSxTQUFTLGNBQWM7QUFBQTsiLAogICJuYW1lcyI6IFtdCn0K
@@ -19,6 +19,17 @@ export interface AstroComponentMetadata {
19
19
  namespace?: boolean;
20
20
  };
21
21
  }
22
+ /** The flags supported by the Astro CLI */
23
+ export interface CLIFlags {
24
+ projectRoot?: string;
25
+ site?: string;
26
+ sitemap?: boolean;
27
+ hostname?: string;
28
+ port?: number;
29
+ config?: string;
30
+ experimentalStaticBuild?: boolean;
31
+ drafts?: boolean;
32
+ }
22
33
  /**
23
34
  * Astro.* available in all components
24
35
  * Docs: https://docs.astro.build/reference/api-reference/#astro-global
@@ -113,6 +124,11 @@ export interface AstroUserConfig {
113
124
  * Default: false
114
125
  */
115
126
  drafts?: boolean;
127
+ /**
128
+ * Experimental: Enables "static build mode" for faster builds.
129
+ * Default: false
130
+ */
131
+ experimentalStaticBuild?: boolean;
116
132
  };
117
133
  /** Options for the development server run with `astro dev`. */
118
134
  devOptions?: {
@@ -5,6 +5,8 @@ export interface BuildInternals {
5
5
  astroStyleMap: Map<string, string>;
6
6
  astroPageStyleMap: Map<string, string>;
7
7
  facadeIdToAssetsMap: Map<string, string[]>;
8
+ hoistedScriptIdToHoistedMap: Map<string, Set<string>>;
9
+ facadeIdToHoistedEntryMap: Map<string, string>;
8
10
  entrySpecifierToBundleMap: Map<string, string>;
9
11
  }
10
12
  /**
@@ -0,0 +1,3 @@
1
+ import type { Plugin as VitePlugin } from '../vite';
2
+ import type { BuildInternals } from '../../core/build/internal.js';
3
+ export declare function vitePluginHoistedScripts(internals: BuildInternals): VitePlugin;
@@ -1,4 +1,5 @@
1
1
  import type { AstroConfig } from '../@types/astro';
2
+ import type { Arguments as Flags } from 'yargs-parser';
2
3
  import { z } from 'zod';
3
4
  export declare const AstroConfigSchema: z.ZodObject<{
4
5
  projectRoot: z.ZodEffects<z.ZodDefault<z.ZodOptional<z.ZodString>>, URL, string | undefined>;
@@ -111,9 +112,9 @@ export declare const AstroConfigSchema: z.ZodObject<{
111
112
  export declare function validateConfig(userConfig: any, root: string): Promise<AstroConfig>;
112
113
  interface LoadConfigOptions {
113
114
  cwd?: string;
114
- filename?: string;
115
+ flags?: Flags;
115
116
  }
116
117
  /** Attempt to load an `astro.config.mjs` file */
117
- export declare function loadConfig(options: LoadConfigOptions): Promise<AstroConfig>;
118
+ export declare function loadConfig(configOptions: LoadConfigOptions): Promise<AstroConfig>;
118
119
  export declare function formatConfigError(err: z.ZodError): string;
119
120
  export {};
@@ -1,4 +1,4 @@
1
- import type { AstroConfig, Params, Renderer, SSRResult } from '../../@types/astro';
1
+ import type { AstroConfig, Params, Renderer, SSRElement, SSRResult } from '../../@types/astro';
2
2
  import { LogOptions } from '../logger.js';
3
3
  export interface CreateResultArgs {
4
4
  astroConfig: AstroConfig;
@@ -7,5 +7,7 @@ export interface CreateResultArgs {
7
7
  params: Params;
8
8
  pathname: string;
9
9
  renderers: Renderer[];
10
+ links?: Set<SSRElement>;
11
+ scripts?: Set<SSRElement>;
10
12
  }
11
13
  export declare function createResult(args: CreateResultArgs): SSRResult;
@@ -5,7 +5,6 @@ declare type GenerateRSSArgs = {
5
5
  site: string;
6
6
  rssData: RSS;
7
7
  srcFile: string;
8
- feedURL: string;
9
8
  };
10
9
  /** Generate RSS 2.0 feed */
11
10
  export declare function generateRSS(args: GenerateRSSArgs): string;
@@ -13,6 +12,6 @@ export declare function generateRSSStylesheet(): string;
13
12
  /** Generated function to be run */
14
13
  export declare function generateRssFunction(site: string | undefined, route: RouteData): {
15
14
  generator: RSSFunction;
16
- rss?: RSSResult;
15
+ rss?: RSSResult[];
17
16
  };
18
17
  export {};
@@ -2,6 +2,8 @@ import type { AstroConfig } from '../@types/astro';
2
2
  import type { ErrorPayload } from 'vite';
3
3
  /** Normalize URL to its canonical form */
4
4
  export declare function canonicalURL(url: string, base?: string): URL;
5
+ /** Check if a URL is already valid */
6
+ export declare function isValidURL(url: string): boolean;
5
7
  /** is a specifier an npm package? */
6
8
  export declare function parseNpmName(spec: string): {
7
9
  scope?: string;
@@ -9,7 +9,7 @@ interface CreateMetadataOptions {
9
9
  hoisted: any[];
10
10
  }
11
11
  export declare class Metadata {
12
- fileURL: URL;
12
+ mockURL: URL;
13
13
  modules: ModuleInfo[];
14
14
  hoisted: any[];
15
15
  hydratedComponents: any[];
@@ -28,6 +28,7 @@ export declare class Metadata {
28
28
  * Gets all of the hydration specifiers used within this component.
29
29
  */
30
30
  hydrationDirectiveSpecifiers(): Generator<string, void, unknown>;
31
+ hoistedScriptPaths(): Generator<string, void, unknown>;
31
32
  private deepMetadata;
32
33
  private getComponentMetadata;
33
34
  private findComponentMetadata;
@@ -31,6 +31,9 @@ async function compile(config, filename, source, viteTransform, opts) {
31
31
  internalURL: "astro/internal",
32
32
  experimentalStaticExtraction: config.buildOptions.experimentalStaticBuild,
33
33
  preprocessStyle: async (value, attrs) => {
34
+ if (config.buildOptions.experimentalStaticBuild) {
35
+ return { code: value };
36
+ }
34
37
  const lang = `.${(attrs == null ? void 0 : attrs.lang) || "css"}`.toLowerCase();
35
38
  try {
36
39
  const result = await transformWithVite({
@@ -90,4 +93,4 @@ export {
90
93
  cachedCompilation,
91
94
  invalidateCompilation
92
95
  };
93
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3ZpdGUtcGx1Z2luLWFzdHJvL2NvbXBpbGUudHMiXSwKICAibWFwcGluZ3MiOiAiQUFLQTtBQUNBO0FBQ0E7QUFDQTtBQUlBLE1BQU0sY0FBYyxJQUFJO0FBR3hCLGVBQWUsU0FBMEQ7QUFDeEUsTUFBSSxZQUFZLFFBQVc7QUFDMUIsV0FBTztBQUFBO0FBRVIsTUFBSSxPQUFPLFlBQVksV0FBVztBQUNqQyxXQUFPO0FBQUE7QUFFUixNQUFJLE9BQU8sV0FBVyxVQUFVO0FBQy9CLFdBQU8sQ0FBQyxDQUFDLFFBQVE7QUFBQTtBQUVsQixTQUFPO0FBQUE7QUFHUix1QkFBdUIsUUFBcUIsVUFBa0IsUUFBZ0IsZUFBOEIsTUFBMkI7QUFHdEksUUFBTSxjQUFjLElBQUksSUFBSSxVQUFVO0FBQ3RDLFFBQU0sZUFBZSxjQUFjO0FBQ25DLFFBQU0sU0FBUyxhQUFhLFdBQVcsY0FBYyxPQUFPLFdBQVcsYUFBYSxXQUFXLGNBQWMsT0FBTztBQUNwSCxRQUFNLFdBQVcsWUFBWSxTQUFTLE9BQU8sT0FBTyxZQUFZLFNBQVMsU0FBUztBQUVsRixNQUFJO0FBS0osUUFBTSxrQkFBa0IsTUFBTSxVQUFVLFFBQVE7QUFBQSxJQUMvQyxJQUFJLFNBQVMsYUFBYTtBQUFBLElBQzFCO0FBQUEsSUFDQSxhQUFhLE9BQU8sWUFBWTtBQUFBLElBQ2hDLE1BQU0sT0FBTyxhQUFhO0FBQUEsSUFDMUIsWUFBWTtBQUFBLElBQ1osV0FBVztBQUFBLElBQ1gsYUFBYTtBQUFBLElBQ2IsOEJBQThCLE9BQU8sYUFBYTtBQUFBLElBRWxELGlCQUFpQixPQUFPLE9BQWUsVUFBa0M7QUFDeEUsWUFBTSxPQUFPLElBQUksZ0NBQU8sU0FBUSxRQUFRO0FBQ3hDLFVBQUk7QUFDSCxjQUFNLFNBQVMsTUFBTSxrQkFBa0I7QUFBQSxVQUN0QztBQUFBLFVBQ0E7QUFBQSxVQUNBLElBQUk7QUFBQSxVQUNKLGVBQWU7QUFBQSxVQUNmLEtBQUssTUFBTTtBQUFBO0FBR1osWUFBSTtBQUNKLFlBQUksQ0FBQztBQUFRLGlCQUFPO0FBQ3BCLFlBQUksT0FBTyxLQUFLO0FBQ2YsY0FBSSxPQUFPLE9BQU8sUUFBUSxVQUFVO0FBQ25DLGtCQUFNLE9BQU87QUFBQSxxQkFDSCxPQUFPLElBQUksVUFBVTtBQUMvQixrQkFBTSxPQUFPLElBQUk7QUFBQTtBQUFBO0FBR25CLGVBQU8sRUFBRSxNQUFNLE9BQU8sTUFBTTtBQUFBLGVBQ3BCLEtBQVA7QUFFRCw0QkFBb0I7QUFDcEIsZUFBTztBQUFBO0FBQUE7QUFBQTtBQU1WLE1BQUk7QUFBbUIsVUFBTTtBQUU3QixTQUFPO0FBQUE7QUFHRCwrQkFBK0IsUUFBcUIsVUFBa0I7QUFDNUUsTUFBSSxZQUFZLElBQUksU0FBUztBQUM1QixVQUFNLFFBQVEsWUFBWSxJQUFJO0FBQzlCLFVBQU0sT0FBTztBQUFBO0FBQUE7QUFJZixpQ0FBd0MsUUFBcUIsVUFBa0IsUUFBdUIsZUFBOEIsTUFBMkI7QUFDOUosTUFBSTtBQUNKLE1BQUksQ0FBQyxZQUFZLElBQUksU0FBUztBQUM3QixZQUFRLElBQUk7QUFDWixnQkFBWSxJQUFJLFFBQVE7QUFBQSxTQUNsQjtBQUNOLFlBQVEsWUFBWSxJQUFJO0FBQUE7QUFFekIsTUFBSSxNQUFNLElBQUksV0FBVztBQUN4QixXQUFPLE1BQU0sSUFBSTtBQUFBO0FBR2xCLE1BQUksV0FBVyxNQUFNO0FBQ3BCLFVBQU0sVUFBVSxJQUFJLElBQUksVUFBVTtBQUNsQyxhQUFTLE1BQU0sR0FBRyxTQUFTLFNBQVMsU0FBUztBQUFBO0FBRTlDLFFBQU0sa0JBQWtCLE1BQU0sUUFBUSxRQUFRLFVBQVUsUUFBUSxlQUFlO0FBQy9FLFFBQU0sSUFBSSxVQUFVO0FBQ3BCLFNBQU87QUFBQTsiLAogICJuYW1lcyI6IFtdCn0K
96
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3ZpdGUtcGx1Z2luLWFzdHJvL2NvbXBpbGUudHMiXSwKICAibWFwcGluZ3MiOiAiQUFLQTtBQUNBO0FBQ0E7QUFDQTtBQUlBLE1BQU0sY0FBYyxJQUFJO0FBR3hCLGVBQWUsU0FBMEQ7QUFDeEUsTUFBSSxZQUFZLFFBQVc7QUFDMUIsV0FBTztBQUFBO0FBRVIsTUFBSSxPQUFPLFlBQVksV0FBVztBQUNqQyxXQUFPO0FBQUE7QUFFUixNQUFJLE9BQU8sV0FBVyxVQUFVO0FBQy9CLFdBQU8sQ0FBQyxDQUFDLFFBQVE7QUFBQTtBQUVsQixTQUFPO0FBQUE7QUFHUix1QkFBdUIsUUFBcUIsVUFBa0IsUUFBZ0IsZUFBOEIsTUFBMkI7QUFHdEksUUFBTSxjQUFjLElBQUksSUFBSSxVQUFVO0FBQ3RDLFFBQU0sZUFBZSxjQUFjO0FBQ25DLFFBQU0sU0FBUyxhQUFhLFdBQVcsY0FBYyxPQUFPLFdBQVcsYUFBYSxXQUFXLGNBQWMsT0FBTztBQUNwSCxRQUFNLFdBQVcsWUFBWSxTQUFTLE9BQU8sT0FBTyxZQUFZLFNBQVMsU0FBUztBQUVsRixNQUFJO0FBS0osUUFBTSxrQkFBa0IsTUFBTSxVQUFVLFFBQVE7QUFBQSxJQUMvQyxJQUFJLFNBQVMsYUFBYTtBQUFBLElBQzFCO0FBQUEsSUFDQSxhQUFhLE9BQU8sWUFBWTtBQUFBLElBQ2hDLE1BQU0sT0FBTyxhQUFhO0FBQUEsSUFDMUIsWUFBWTtBQUFBLElBQ1osV0FBVztBQUFBLElBQ1gsYUFBYTtBQUFBLElBQ2IsOEJBQThCLE9BQU8sYUFBYTtBQUFBLElBRWxELGlCQUFpQixPQUFPLE9BQWUsVUFBa0M7QUFJeEUsVUFBSSxPQUFPLGFBQWEseUJBQXlCO0FBQ2hELGVBQU8sRUFBRSxNQUFNO0FBQUE7QUFHaEIsWUFBTSxPQUFPLElBQUksZ0NBQU8sU0FBUSxRQUFRO0FBQ3hDLFVBQUk7QUFDSCxjQUFNLFNBQVMsTUFBTSxrQkFBa0I7QUFBQSxVQUN0QztBQUFBLFVBQ0E7QUFBQSxVQUNBLElBQUk7QUFBQSxVQUNKLGVBQWU7QUFBQSxVQUNmLEtBQUssTUFBTTtBQUFBO0FBR1osWUFBSTtBQUNKLFlBQUksQ0FBQztBQUFRLGlCQUFPO0FBQ3BCLFlBQUksT0FBTyxLQUFLO0FBQ2YsY0FBSSxPQUFPLE9BQU8sUUFBUSxVQUFVO0FBQ25DLGtCQUFNLE9BQU87QUFBQSxxQkFDSCxPQUFPLElBQUksVUFBVTtBQUMvQixrQkFBTSxPQUFPLElBQUk7QUFBQTtBQUFBO0FBR25CLGVBQU8sRUFBRSxNQUFNLE9BQU8sTUFBTTtBQUFBLGVBQ3BCLEtBQVA7QUFFRCw0QkFBb0I7QUFDcEIsZUFBTztBQUFBO0FBQUE7QUFBQTtBQU1WLE1BQUk7QUFBbUIsVUFBTTtBQUU3QixTQUFPO0FBQUE7QUFHRCwrQkFBK0IsUUFBcUIsVUFBa0I7QUFDNUUsTUFBSSxZQUFZLElBQUksU0FBUztBQUM1QixVQUFNLFFBQVEsWUFBWSxJQUFJO0FBQzlCLFVBQU0sT0FBTztBQUFBO0FBQUE7QUFJZixpQ0FBd0MsUUFBcUIsVUFBa0IsUUFBdUIsZUFBOEIsTUFBMkI7QUFDOUosTUFBSTtBQUNKLE1BQUksQ0FBQyxZQUFZLElBQUksU0FBUztBQUM3QixZQUFRLElBQUk7QUFDWixnQkFBWSxJQUFJLFFBQVE7QUFBQSxTQUNsQjtBQUNOLFlBQVEsWUFBWSxJQUFJO0FBQUE7QUFFekIsTUFBSSxNQUFNLElBQUksV0FBVztBQUN4QixXQUFPLE1BQU0sSUFBSTtBQUFBO0FBR2xCLE1BQUksV0FBVyxNQUFNO0FBQ3BCLFVBQU0sVUFBVSxJQUFJLElBQUksVUFBVTtBQUNsQyxhQUFTLE1BQU0sR0FBRyxTQUFTLFNBQVMsU0FBUztBQUFBO0FBRTlDLFFBQU0sa0JBQWtCLE1BQU0sUUFBUSxRQUFRLFVBQVUsUUFBUSxlQUFlO0FBQy9FLFFBQU0sSUFBSSxVQUFVO0FBQ3BCLFNBQU87QUFBQTsiLAogICJuYW1lcyI6IFtdCn0K
@@ -1,4 +1,5 @@
1
1
  import esbuild from "esbuild";
2
+ import npath from "path";
2
3
  import { fileURLToPath } from "url";
3
4
  import { getViteTransform } from "./styles.js";
4
5
  import { parseAstroRequest } from "./query.js";
@@ -6,7 +7,17 @@ import { cachedCompilation, invalidateCompilation } from "./compile.js";
6
7
  import ancestor from "common-ancestor-path";
7
8
  const FRONTMATTER_PARSE_REGEXP = /^\-\-\-(.*)^\-\-\-/ms;
8
9
  function astro({ config, logging }) {
10
+ function normalizeFilename(filename) {
11
+ if (filename.startsWith("/@fs")) {
12
+ filename = filename.slice("/@fs".length);
13
+ } else if (filename.startsWith("/") && !ancestor(filename, config.projectRoot.pathname)) {
14
+ filename = new URL("." + filename, config.projectRoot).pathname;
15
+ }
16
+ return filename;
17
+ }
9
18
  let viteTransform;
19
+ const srcRootWeb = config.src.pathname.slice(config.projectRoot.pathname.length - 1);
20
+ const isBrowserPath = (path) => path.startsWith(srcRootWeb);
10
21
  return {
11
22
  name: "@astrojs/vite-plugin-astro",
12
23
  enforce: "pre",
@@ -14,7 +25,12 @@ function astro({ config, logging }) {
14
25
  viteTransform = getViteTransform(resolvedConfig);
15
26
  },
16
27
  async resolveId(id) {
17
- if (parseAstroRequest(id).query.astro) {
28
+ const { query } = parseAstroRequest(id);
29
+ if (query.astro) {
30
+ if (query.type === "style" && isBrowserPath(id)) {
31
+ const outId = npath.posix.join(config.projectRoot.pathname, id);
32
+ return outId;
33
+ }
18
34
  return id;
19
35
  }
20
36
  },
@@ -22,20 +38,28 @@ function astro({ config, logging }) {
22
38
  let { filename, query } = parseAstroRequest(id);
23
39
  if (query.astro) {
24
40
  if (query.type === "style") {
25
- if (filename.startsWith("/@fs")) {
26
- filename = filename.slice("/@fs".length);
27
- } else if (filename.startsWith("/") && !ancestor(filename, config.projectRoot.pathname)) {
28
- filename = new URL("." + filename, config.projectRoot).pathname;
29
- }
30
- const transformResult = await cachedCompilation(config, filename, null, viteTransform, opts);
31
41
  if (typeof query.index === "undefined") {
32
42
  throw new Error(`Requests for Astro CSS must include an index.`);
33
43
  }
44
+ const transformResult = await cachedCompilation(config, normalizeFilename(filename), null, viteTransform, opts);
34
45
  const csses = transformResult.css;
35
46
  const code = csses[query.index];
36
47
  return {
37
48
  code
38
49
  };
50
+ } else if (query.type === "script") {
51
+ if (typeof query.index === "undefined") {
52
+ throw new Error(`Requests for hoisted scripts must include an index`);
53
+ }
54
+ const transformResult = await cachedCompilation(config, normalizeFilename(filename), null, viteTransform, opts);
55
+ const scripts = transformResult.scripts;
56
+ const hoistedScript = scripts[query.index];
57
+ if (!hoistedScript) {
58
+ throw new Error(`No hoisted script at index ${query.index}`);
59
+ }
60
+ return {
61
+ code: hoistedScript.type === "inline" ? hoistedScript.code : `import "${hoistedScript.src}";`
62
+ };
39
63
  }
40
64
  }
41
65
  return null;
@@ -102,4 +126,4 @@ function astro({ config, logging }) {
102
126
  export {
103
127
  astro as default
104
128
  };
105
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3ZpdGUtcGx1Z2luLWFzdHJvL2luZGV4LnRzIl0sCiAgIm1hcHBpbmdzIjogIkFBSUE7QUFDQTtBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBRUEsTUFBTSwyQkFBMkI7QUFRbEIsZUFBZSxFQUFFLFFBQVEsV0FBNEM7QUFDbkYsTUFBSTtBQUNKLFNBQU87QUFBQSxJQUNOLE1BQU07QUFBQSxJQUNOLFNBQVM7QUFBQSxJQUNULGVBQWUsZ0JBQWdCO0FBQzlCLHNCQUFnQixpQkFBaUI7QUFBQTtBQUFBLFVBRzVCLFVBQVUsSUFBSTtBQUVuQixVQUFJLGtCQUFrQixJQUFJLE1BQU0sT0FBTztBQUN0QyxlQUFPO0FBQUE7QUFBQTtBQUFBLFVBR0gsS0FBSyxJQUFJLE1BQU07QUFDcEIsVUFBSSxFQUFFLFVBQVUsVUFBVSxrQkFBa0I7QUFDNUMsVUFBSSxNQUFNLE9BQU87QUFDaEIsWUFBSSxNQUFNLFNBQVMsU0FBUztBQUMzQixjQUFJLFNBQVMsV0FBVyxTQUFTO0FBQ2hDLHVCQUFXLFNBQVMsTUFBTSxPQUFPO0FBQUEscUJBQ3ZCLFNBQVMsV0FBVyxRQUFRLENBQUMsU0FBUyxVQUFVLE9BQU8sWUFBWSxXQUFXO0FBQ3hGLHVCQUFXLElBQUksSUFBSSxNQUFNLFVBQVUsT0FBTyxhQUFhO0FBQUE7QUFFeEQsZ0JBQU0sa0JBQWtCLE1BQU0sa0JBQWtCLFFBQVEsVUFBVSxNQUFNLGVBQWU7QUFFdkYsY0FBSSxPQUFPLE1BQU0sVUFBVSxhQUFhO0FBQ3ZDLGtCQUFNLElBQUksTUFBTTtBQUFBO0FBR2pCLGdCQUFNLFFBQVEsZ0JBQWdCO0FBQzlCLGdCQUFNLE9BQU8sTUFBTSxNQUFNO0FBRXpCLGlCQUFPO0FBQUEsWUFDTjtBQUFBO0FBQUE7QUFBQTtBQUtILGFBQU87QUFBQTtBQUFBLFVBRUYsVUFBVSxRQUFRLElBQUksTUFBTTtBQUNqQyxVQUFJLENBQUMsR0FBRyxTQUFTLFdBQVc7QUFDM0I7QUFBQTtBQUdELFVBQUk7QUFDSCxjQUFNLGtCQUFrQixNQUFNLGtCQUFrQixRQUFRLElBQUksUUFBUSxlQUFlO0FBSW5GLGNBQU0sRUFBRSxNQUFNLFFBQVEsTUFBTSxRQUFRLFVBQVUsZ0JBQWdCLE1BQU07QUFBQSxVQUNuRSxRQUFRO0FBQUEsVUFDUixXQUFXO0FBQUEsVUFDWCxZQUFZO0FBQUE7QUFHYixlQUFPO0FBQUEsVUFDTjtBQUFBLFVBQ0E7QUFBQTtBQUFBLGVBRU8sS0FBUDtBQVNELGNBQU0scUJBQXFCLHlCQUF5QixLQUFLO0FBQ3pELFlBQUksb0JBQW9CO0FBQ3ZCLGNBQUk7QUFDSCxrQkFBTSxRQUFRLFVBQVUsbUJBQW1CLElBQUksRUFBRSxRQUFRLE1BQU0sV0FBVyxPQUFPLFlBQVk7QUFBQSxtQkFDckYsZ0JBQVA7QUFHRCxnQkFBSSxrQkFBa0IsZUFBZSxTQUFTO0FBQzdDLDZCQUFlLFVBQVUsZUFBZSxRQUFRLFFBQVEsZUFBZTtBQUFBO0FBRXhFLGtCQUFNO0FBQUE7QUFBQTtBQUtSLFlBQUksSUFBSSxNQUFNLFNBQVMsa0JBQWtCO0FBQ3hDLGdCQUFNLFNBQVMsSUFBSSxnQkFBZ0I7QUFBQSxZQUNsQyxRQUFRO0FBQUEsWUFDUixPQUFPO0FBQUEsWUFDUCxNQUFNO0FBQUE7QUFBQTtBQUFBO0FBQUEsUUFJSixHQUFHLFFBQVEsY0FBYyxPQUFPLGNBQWM7QUFBQTtBQUFBLE1BRWhEO0FBQUE7QUFBQTtBQUFBO0FBSUQsY0FBSSxNQUFNLGlEQUFpRCxPQUFPO0FBQ2xFLGNBQUksVUFBVTtBQUFBO0FBQUE7QUFBQTtBQUFBLE1BSWIsSUFBSTtBQUVMLGNBQUksUUFBUSxVQUFVLFNBQVM7QUFFOUIsZ0JBQUksUUFBUSxVQUFVO0FBQUE7QUFBQTtBQUl4QixjQUFNO0FBQUE7QUFBQTtBQUFBLFVBR0YsZ0JBQWdCLFNBQVM7QUFFOUIsNEJBQXNCLFFBQVEsUUFBUTtBQUFBO0FBQUE7QUFBQTsiLAogICJuYW1lcyI6IFtdCn0K
129
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3ZpdGUtcGx1Z2luLWFzdHJvL2luZGV4LnRzIl0sCiAgIm1hcHBpbmdzIjogIkFBSUE7QUFDQTtBQUNBO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFFQSxNQUFNLDJCQUEyQjtBQVFsQixlQUFlLEVBQUUsUUFBUSxXQUE0QztBQUNuRiw2QkFBMkIsVUFBa0I7QUFDNUMsUUFBSSxTQUFTLFdBQVcsU0FBUztBQUNoQyxpQkFBVyxTQUFTLE1BQU0sT0FBTztBQUFBLGVBQ3ZCLFNBQVMsV0FBVyxRQUFRLENBQUMsU0FBUyxVQUFVLE9BQU8sWUFBWSxXQUFXO0FBQ3hGLGlCQUFXLElBQUksSUFBSSxNQUFNLFVBQVUsT0FBTyxhQUFhO0FBQUE7QUFFeEQsV0FBTztBQUFBO0FBR1IsTUFBSTtBQUdKLFFBQU0sYUFBYSxPQUFPLElBQUksU0FBUyxNQUFNLE9BQU8sWUFBWSxTQUFTLFNBQVM7QUFDbEYsUUFBTSxnQkFBZ0IsQ0FBQyxTQUFpQixLQUFLLFdBQVc7QUFFeEQsU0FBTztBQUFBLElBQ04sTUFBTTtBQUFBLElBQ04sU0FBUztBQUFBLElBQ1QsZUFBZSxnQkFBZ0I7QUFDOUIsc0JBQWdCLGlCQUFpQjtBQUFBO0FBQUEsVUFHNUIsVUFBVSxJQUFJO0FBRW5CLFlBQU0sRUFBRSxVQUFVLGtCQUFrQjtBQUNwQyxVQUFJLE1BQU0sT0FBTztBQUloQixZQUFJLE1BQU0sU0FBUyxXQUFXLGNBQWMsS0FBSztBQUNoRCxnQkFBTSxRQUFRLE1BQU0sTUFBTSxLQUFLLE9BQU8sWUFBWSxVQUFVO0FBQzVELGlCQUFPO0FBQUE7QUFHUixlQUFPO0FBQUE7QUFBQTtBQUFBLFVBR0gsS0FBSyxJQUFJLE1BQU07QUFDcEIsVUFBSSxFQUFFLFVBQVUsVUFBVSxrQkFBa0I7QUFDNUMsVUFBSSxNQUFNLE9BQU87QUFDaEIsWUFBSSxNQUFNLFNBQVMsU0FBUztBQUMzQixjQUFJLE9BQU8sTUFBTSxVQUFVLGFBQWE7QUFDdkMsa0JBQU0sSUFBSSxNQUFNO0FBQUE7QUFHakIsZ0JBQU0sa0JBQWtCLE1BQU0sa0JBQWtCLFFBQVEsa0JBQWtCLFdBQVcsTUFBTSxlQUFlO0FBQzFHLGdCQUFNLFFBQVEsZ0JBQWdCO0FBQzlCLGdCQUFNLE9BQU8sTUFBTSxNQUFNO0FBRXpCLGlCQUFPO0FBQUEsWUFDTjtBQUFBO0FBQUEsbUJBRVMsTUFBTSxTQUFTLFVBQVU7QUFDbkMsY0FBSSxPQUFPLE1BQU0sVUFBVSxhQUFhO0FBQ3ZDLGtCQUFNLElBQUksTUFBTTtBQUFBO0FBR2pCLGdCQUFNLGtCQUFrQixNQUFNLGtCQUFrQixRQUFRLGtCQUFrQixXQUFXLE1BQU0sZUFBZTtBQUMxRyxnQkFBTSxVQUFVLGdCQUFnQjtBQUNoQyxnQkFBTSxnQkFBZ0IsUUFBUSxNQUFNO0FBRXBDLGNBQUksQ0FBQyxlQUFlO0FBQ25CLGtCQUFNLElBQUksTUFBTSw4QkFBOEIsTUFBTTtBQUFBO0FBR3JELGlCQUFPO0FBQUEsWUFDTixNQUFNLGNBQWMsU0FBUyxXQUFXLGNBQWMsT0FBUSxXQUFXLGNBQWM7QUFBQTtBQUFBO0FBQUE7QUFLMUYsYUFBTztBQUFBO0FBQUEsVUFFRixVQUFVLFFBQVEsSUFBSSxNQUFNO0FBQ2pDLFVBQUksQ0FBQyxHQUFHLFNBQVMsV0FBVztBQUMzQjtBQUFBO0FBR0QsVUFBSTtBQUNILGNBQU0sa0JBQWtCLE1BQU0sa0JBQWtCLFFBQVEsSUFBSSxRQUFRLGVBQWU7QUFJbkYsY0FBTSxFQUFFLE1BQU0sUUFBUSxNQUFNLFFBQVEsVUFBVSxnQkFBZ0IsTUFBTTtBQUFBLFVBQ25FLFFBQVE7QUFBQSxVQUNSLFdBQVc7QUFBQSxVQUNYLFlBQVk7QUFBQTtBQUdiLGVBQU87QUFBQSxVQUNOO0FBQUEsVUFDQTtBQUFBO0FBQUEsZUFFTyxLQUFQO0FBU0QsY0FBTSxxQkFBcUIseUJBQXlCLEtBQUs7QUFDekQsWUFBSSxvQkFBb0I7QUFDdkIsY0FBSTtBQUNILGtCQUFNLFFBQVEsVUFBVSxtQkFBbUIsSUFBSSxFQUFFLFFBQVEsTUFBTSxXQUFXLE9BQU8sWUFBWTtBQUFBLG1CQUNyRixnQkFBUDtBQUdELGdCQUFJLGtCQUFrQixlQUFlLFNBQVM7QUFDN0MsNkJBQWUsVUFBVSxlQUFlLFFBQVEsUUFBUSxlQUFlO0FBQUE7QUFFeEUsa0JBQU07QUFBQTtBQUFBO0FBS1IsWUFBSSxJQUFJLE1BQU0sU0FBUyxrQkFBa0I7QUFDeEMsZ0JBQU0sU0FBUyxJQUFJLGdCQUFnQjtBQUFBLFlBQ2xDLFFBQVE7QUFBQSxZQUNSLE9BQU87QUFBQSxZQUNQLE1BQU07QUFBQTtBQUFBO0FBQUE7QUFBQSxRQUlKLEdBQUcsUUFBUSxjQUFjLE9BQU8sY0FBYztBQUFBO0FBQUEsTUFFaEQ7QUFBQTtBQUFBO0FBQUE7QUFJRCxjQUFJLE1BQU0saURBQWlELE9BQU87QUFDbEUsY0FBSSxVQUFVO0FBQUE7QUFBQTtBQUFBO0FBQUEsTUFJYixJQUFJO0FBRUwsY0FBSSxRQUFRLFVBQVUsU0FBUztBQUU5QixnQkFBSSxRQUFRLFVBQVU7QUFBQTtBQUFBO0FBSXhCLGNBQU07QUFBQTtBQUFBO0FBQUEsVUFHRixnQkFBZ0IsU0FBUztBQUU5Qiw0QkFBc0IsUUFBUSxRQUFRO0FBQUE7QUFBQTtBQUFBOyIsCiAgIm5hbWVzIjogW10KfQo=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "astro",
3
- "version": "0.22.15",
3
+ "version": "0.22.19",
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",
@@ -28,8 +28,6 @@
28
28
  "./vite-plugin-astro/*": "./dist/vite-plugin-astro/*",
29
29
  "./vite-plugin-astro-postprocess": "./dist/vite-plugin-astro-postprocess/index.js",
30
30
  "./vite-plugin-astro-postprocess/*": "./dist/vite-plugin-astro-postprocess/*",
31
- "./vite-plugin-fetch": "./dist/vite-plugin-fetch/index.js",
32
- "./vite-plugin-fetch/*": "./dist/vite-plugin-fetch/*",
33
31
  "./vite-plugin-jsx/*": "./dist/vite-plugin-jsx/*",
34
32
  "./vite-plugin-jsx": "./dist/vite-plugin-jsx/index.js",
35
33
  "./vite-plugin-markdown": "./dist/vite-plugin-markdown/index.js",
@@ -53,10 +51,11 @@
53
51
  "dev": "astro-scripts dev \"src/**/*.ts\"",
54
52
  "postbuild": "astro-scripts copy \"src/**/*.astro\"",
55
53
  "benchmark": "node test/benchmark/dev.bench.js && node test/benchmark/build.bench.js",
56
- "test": "mocha --parallel --timeout 15000"
54
+ "test": "mocha --parallel --timeout 15000 --ignore **/lit-element.test.js && mocha **/lit-element.test.js",
55
+ "test:match": "mocha --timeout 15000 -g"
57
56
  },
58
57
  "dependencies": {
59
- "@astrojs/compiler": "^0.8.0",
58
+ "@astrojs/compiler": "^0.9.2",
60
59
  "@astrojs/language-server": "^0.8.6",
61
60
  "@astrojs/markdown-remark": "^0.6.0",
62
61
  "@astrojs/prism": "0.4.0",
@@ -88,7 +87,6 @@
88
87
  "magic-string": "^0.25.7",
89
88
  "mime": "^3.0.0",
90
89
  "morphdom": "^2.6.1",
91
- "node-fetch": "^3.0.0",
92
90
  "parse5": "^6.0.1",
93
91
  "path-to-regexp": "^6.2.0",
94
92
  "postcss": "^8.3.8",
@@ -199,6 +199,16 @@ function warnFailedFetch(err, path) {
199
199
  socket.addEventListener('message', async ({ data }) => {
200
200
  handleMessage(JSON.parse(data));
201
201
  });
202
+
203
+ /**
204
+ * This cleans up the query params and removes the `direct` param which is internal.
205
+ * Other query params are preserved.
206
+ */
207
+ function cleanUrl(pathname) {
208
+ let url = new URL(pathname, location);
209
+ url.searchParams.delete('direct');
210
+ return url.pathname + url.search;
211
+ }
202
212
  let isFirstUpdate = true;
203
213
  async function handleMessage(payload) {
204
214
  switch (payload.type) {
@@ -230,11 +240,13 @@ async function handleMessage(payload) {
230
240
  // css-update
231
241
  // this is only sent when a css file referenced with <link> is updated
232
242
  let { path, timestamp } = update;
233
- path = path.replace(/\?.*/, '');
243
+ let searchUrl = cleanUrl(path);
234
244
  // can't use querySelector with `[href*=]` here since the link may be
235
245
  // using relative paths so we need to use link.href to grab the full
236
246
  // URL for the include check.
237
- const el = [].slice.call(document.querySelectorAll(`link`)).find((e) => e.href.includes(path));
247
+ const el = [].slice.call(document.querySelectorAll(`link`)).find((e) => {
248
+ return cleanUrl(e.href).includes(searchUrl)
249
+ });
238
250
  if (el) {
239
251
  const newPath = `${base}${path.slice(1)}${path.includes('?') ? '&' : '?'}t=${timestamp}`;
240
252
  el.href = new URL(newPath, el.href).href;
@@ -1,2 +0,0 @@
1
- import type { Plugin } from '../core/vite';
2
- export default function pluginFetch(): Plugin;
@@ -1,72 +0,0 @@
1
- import MagicString from "magic-string";
2
- import { walk } from "estree-walker";
3
- function isSSR(options) {
4
- if (options === void 0) {
5
- return false;
6
- }
7
- if (typeof options === "boolean") {
8
- return options;
9
- }
10
- if (typeof options == "object") {
11
- return !!options.ssr;
12
- }
13
- return false;
14
- }
15
- const SUPPORTED_FILES = /\.(astro|svelte|vue|[cm]?js|jsx|[cm]?ts|tsx)$/;
16
- const IGNORED_MODULES = [/astro\/dist\/runtime\/server/, /\/node-fetch\//];
17
- const DEFINE_FETCH = `import fetch from 'node-fetch';
18
- `;
19
- function isIdentifier(node) {
20
- return node.type === "Identifier";
21
- }
22
- function pluginFetch() {
23
- return {
24
- name: "@astrojs/vite-plugin-fetch",
25
- enforce: "post",
26
- async transform(code, id, opts) {
27
- const ssr = isSSR(opts);
28
- if (!ssr) {
29
- return null;
30
- }
31
- if (!id.match(SUPPORTED_FILES)) {
32
- return null;
33
- }
34
- if (!code.includes("fetch")) {
35
- return null;
36
- }
37
- const ast = this.parse(code);
38
- let fetchDeclared = false;
39
- walk(ast, {
40
- enter(node, parent) {
41
- if (fetchDeclared)
42
- return this.skip();
43
- if (isIdentifier(node)) {
44
- if (node.name === "fetch" && !parent.type.endsWith("Expression")) {
45
- fetchDeclared = true;
46
- }
47
- }
48
- }
49
- });
50
- if (fetchDeclared) {
51
- return null;
52
- }
53
- for (const ignored of IGNORED_MODULES) {
54
- if (id.match(ignored)) {
55
- return null;
56
- }
57
- }
58
- const s = new MagicString(code);
59
- s.prepend(DEFINE_FETCH);
60
- const result = s.toString();
61
- const map = s.generateMap({
62
- source: id,
63
- includeContent: true
64
- });
65
- return { code: result, map };
66
- }
67
- };
68
- }
69
- export {
70
- pluginFetch as default
71
- };
72
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3ZpdGUtcGx1Z2luLWZldGNoL2luZGV4LnRzIl0sCiAgIm1hcHBpbmdzIjogIkFBRUE7QUFDQTtBQUdBLGVBQWUsU0FBMEQ7QUFDeEUsTUFBSSxZQUFZLFFBQVc7QUFDMUIsV0FBTztBQUFBO0FBRVIsTUFBSSxPQUFPLFlBQVksV0FBVztBQUNqQyxXQUFPO0FBQUE7QUFFUixNQUFJLE9BQU8sV0FBVyxVQUFVO0FBQy9CLFdBQU8sQ0FBQyxDQUFDLFFBQVE7QUFBQTtBQUVsQixTQUFPO0FBQUE7QUFLUixNQUFNLGtCQUFrQjtBQUN4QixNQUFNLGtCQUFrQixDQUFDLGdDQUFnQztBQUN6RCxNQUFNLGVBQWU7QUFBQTtBQUVyQixzQkFBc0IsTUFBb0M7QUFDekQsU0FBTyxLQUFLLFNBQVM7QUFBQTtBQUdQLHVCQUErQjtBQUM3QyxTQUFPO0FBQUEsSUFDTixNQUFNO0FBQUEsSUFDTixTQUFTO0FBQUEsVUFDSCxVQUFVLE1BQU0sSUFBSSxNQUFNO0FBQy9CLFlBQU0sTUFBTSxNQUFNO0FBRWxCLFVBQUksQ0FBQyxLQUFLO0FBQ1QsZUFBTztBQUFBO0FBR1IsVUFBSSxDQUFDLEdBQUcsTUFBTSxrQkFBa0I7QUFDL0IsZUFBTztBQUFBO0FBR1IsVUFBSSxDQUFDLEtBQUssU0FBUyxVQUFVO0FBQzVCLGVBQU87QUFBQTtBQUdSLFlBQU0sTUFBTSxLQUFLLE1BQU07QUFDdkIsVUFBSSxnQkFBZ0I7QUFDcEIsV0FBSyxLQUFLO0FBQUEsUUFDVCxNQUFNLE1BQU0sUUFBUTtBQUNuQixjQUFJO0FBQWUsbUJBQU8sS0FBSztBQUMvQixjQUFJLGFBQWEsT0FBTztBQUV2QixnQkFBSSxLQUFLLFNBQVMsV0FBVyxDQUFDLE9BQU8sS0FBSyxTQUFTLGVBQWU7QUFDakUsOEJBQWdCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFPcEIsVUFBSSxlQUFlO0FBQ2xCLGVBQU87QUFBQTtBQUlSLGlCQUFXLFdBQVcsaUJBQWlCO0FBQ3RDLFlBQUksR0FBRyxNQUFNLFVBQVU7QUFDdEIsaUJBQU87QUFBQTtBQUFBO0FBR1QsWUFBTSxJQUFJLElBQUksWUFBWTtBQUMxQixRQUFFLFFBQVE7QUFDVixZQUFNLFNBQVMsRUFBRTtBQUNqQixZQUFNLE1BQU0sRUFBRSxZQUFZO0FBQUEsUUFDekIsUUFBUTtBQUFBLFFBQ1IsZ0JBQWdCO0FBQUE7QUFFakIsYUFBTyxFQUFFLE1BQU0sUUFBUTtBQUFBO0FBQUE7QUFBQTsiLAogICJuYW1lcyI6IFtdCn0K