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 +19 -68
- package/dist/core/build/index.js +2 -2
- package/dist/core/build/internal.js +5 -1
- package/dist/core/build/page-data.js +22 -17
- package/dist/core/build/static-build.js +34 -10
- package/dist/core/build/vite-plugin-hoisted-scripts.js +38 -0
- package/dist/core/config.js +38 -6
- package/dist/core/ssr/index.js +17 -3
- package/dist/core/ssr/result.js +4 -3
- package/dist/core/ssr/rss.js +12 -9
- package/dist/core/util.js +10 -1
- package/dist/runtime/server/metadata.js +12 -3
- package/dist/types/@types/astro.d.ts +16 -0
- package/dist/types/core/build/internal.d.ts +2 -0
- package/dist/types/core/build/vite-plugin-hoisted-scripts.d.ts +3 -0
- package/dist/types/core/config.d.ts +3 -2
- package/dist/types/core/ssr/result.d.ts +3 -1
- package/dist/types/core/ssr/rss.d.ts +1 -2
- package/dist/types/core/util.d.ts +2 -0
- package/dist/types/runtime/server/metadata.d.ts +2 -1
- package/dist/vite-plugin-astro/compile.js +4 -1
- package/dist/vite-plugin-astro/index.js +32 -8
- package/package.json +4 -6
- package/vendor/vite/dist/client/client.mjs +14 -2
- package/dist/types/vite-plugin-fetch/index.d.ts +0 -2
- package/dist/vite-plugin-fetch/index.js +0 -72
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
|
|
84
|
-
if (
|
|
85
|
-
|
|
86
|
-
if (
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
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
|
|
100
|
-
const
|
|
101
|
-
|
|
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,
|
|
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 (
|
|
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 ${
|
|
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,
|
|
125
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NsaS9pbmRleC50cyJdLAogICJtYXBwaW5ncyI6ICJBQUtBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBTUEscUJBQXFCO0FBQ3BCLFVBQVEsSUFBSSxLQUFLLE9BQU8sS0FBSztBQUFBLElBQzFCLE9BQU8sS0FBSztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxJQU1aLE9BQU8sS0FBSztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFjaEIsOEJBQThCO0FBQzdCLFFBQU0sU0FBUyxJQUFJLElBQUksc0JBQXNCLFlBQVk7QUFDekQsUUFBTSxNQUFNLEtBQUssTUFBTSxNQUFNLEdBQUcsU0FBUyxTQUFTLFFBQVE7QUFDMUQsUUFBTSxhQUFhLElBQUk7QUFFdkIsVUFBUSxJQUFJO0FBQUE7QUFJYix3QkFBd0IsT0FBOEI7QUFDckQsTUFBSSxNQUFNLFNBQVM7QUFDbEIsV0FBTztBQUFBLGFBQ0csTUFBTSxNQUFNO0FBQ3RCLFdBQU87QUFBQTtBQUVSLFFBQU0sTUFBTSxNQUFNLEVBQUU7QUFDcEIsUUFBTSxvQkFBb0IsSUFBSSxJQUFJLENBQUMsT0FBTyxTQUFTLFdBQVc7QUFDOUQsTUFBSSxrQkFBa0IsSUFBSSxNQUFNO0FBQy9CLFdBQU87QUFBQTtBQUVSLFNBQU87QUFBQTtBQUlSLG1CQUEwQixNQUFnQjtBQUN6QyxRQUFNLFFBQVEsTUFBTTtBQUNwQixRQUFNLE1BQU0sZUFBZTtBQUMzQixRQUFNLGNBQWMsTUFBTSxlQUFlLE1BQU0sRUFBRTtBQUVqRCxVQUFRO0FBQUEsU0FDRjtBQUNKO0FBQ0EsYUFBTyxRQUFRLEtBQUs7QUFBQSxTQUNoQjtBQUNKLFlBQU07QUFDTixhQUFPLFFBQVEsS0FBSztBQUFBO0FBSXRCLE1BQUksVUFBc0I7QUFBQSxJQUN6QixNQUFNO0FBQUEsSUFDTixPQUFPO0FBQUE7QUFHUixNQUFJLE1BQU07QUFBUyxZQUFRLFFBQVE7QUFDbkMsTUFBSSxNQUFNO0FBQVEsWUFBUSxRQUFRO0FBQ2xDLE1BQUk7QUFDSixNQUFJO0FBQ0gsYUFBUyxNQUFNLFdBQVcsRUFBRSxLQUFLLGFBQWE7QUFBQSxXQUN0QyxLQUFQO0FBQ0QsUUFBSSxlQUFlLEVBQUUsVUFBVTtBQUM5QixjQUFRLE1BQU0sa0JBQWtCO0FBQUEsV0FDMUI7QUFDTixjQUFRLE1BQU0sT0FBTyxJQUFLLElBQVksY0FBYztBQUFBO0FBRXJELFlBQVEsS0FBSztBQUFBO0FBR2QsVUFBUTtBQUFBLFNBQ0YsT0FBTztBQUNYLFVBQUk7QUFDSCxjQUFNLFVBQVUsUUFBUSxFQUFFO0FBRTFCLGNBQU0sSUFBSSxRQUFRLE1BQU07QUFBQTtBQUFBLGVBQ2hCLEtBQVA7QUFDRCxxQkFBYTtBQUFBO0FBR2Q7QUFBQTtBQUFBLFNBR0ksU0FBUztBQUNiLFVBQUk7QUFDSCxjQUFNLE1BQU0sUUFBUSxFQUFFO0FBQ3RCLGdCQUFRLEtBQUs7QUFBQSxlQUNMLEtBQVA7QUFDRCxxQkFBYTtBQUFBO0FBRWQ7QUFBQTtBQUFBLFNBR0ksU0FBUztBQUNiLFlBQU0sTUFBTSxNQUFNLE1BQU07QUFDeEIsYUFBTyxRQUFRLEtBQUs7QUFBQTtBQUFBLFNBR2hCLFdBQVc7QUFDZixVQUFJO0FBQ0gsY0FBTSxRQUFRLFFBQVEsRUFBRTtBQUFBLGVBQ2hCLEtBQVA7QUFDRCxxQkFBYTtBQUFBO0FBRWQ7QUFBQTtBQUFBLGFBR1E7QUFDUixZQUFNLElBQUksTUFBTSxpQkFBaUI7QUFBQTtBQUFBO0FBQUE7QUFNcEMsc0JBQXNCLEtBQVU7QUFDL0IsVUFBUSxNQUFNLE9BQU8sSUFBSSxJQUFJLGNBQWM7QUFDM0MsVUFBUSxLQUFLO0FBQUE7IiwKICAibmFtZXMiOiBbXQp9Cg==
|
package/dist/core/build/index.js
CHANGED
|
@@ -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(
|
|
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,
|
|
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,
|
|
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
|
|
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.
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
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
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
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,
|
|
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 =
|
|
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
|
-
|
|
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,
|
|
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
|
|
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,
|
|
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=
|
package/dist/core/config.js
CHANGED
|
@@ -47,19 +47,51 @@ async function validateConfig(userConfig, root) {
|
|
|
47
47
|
function addTrailingSlash(str) {
|
|
48
48
|
return str.replace(/\/*$/, "/");
|
|
49
49
|
}
|
|
50
|
-
|
|
51
|
-
|
|
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 (
|
|
55
|
-
userConfigPath = /^\.*\//.test(
|
|
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
|
-
|
|
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,
|
|
107
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NvcmUvY29uZmlnLnRzIl0sCiAgIm1hcHBpbmdzIjogIkFBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUEsS0FBSyxJQUFJLENBQUM7QUFFSCxNQUFNLG9CQUFvQixFQUFFLE9BQU87QUFBQSxFQUN6QyxhQUFhLEVBQ1gsU0FDQSxXQUNBLFFBQVEsS0FDUixVQUFVLENBQUMsUUFBUSxJQUFJLElBQUk7QUFBQSxFQUM3QixLQUFLLEVBQ0gsU0FDQSxXQUNBLFFBQVEsU0FDUixVQUFVLENBQUMsUUFBUSxJQUFJLElBQUk7QUFBQSxFQUM3QixPQUFPLEVBQ0wsU0FDQSxXQUNBLFFBQVEsZUFDUixVQUFVLENBQUMsUUFBUSxJQUFJLElBQUk7QUFBQSxFQUM3QixTQUFTLEVBQ1AsU0FDQSxXQUNBLFFBQVEsaUJBQ1IsVUFBVSxDQUFDLFFBQVEsSUFBSSxJQUFJO0FBQUEsRUFDN0IsUUFBUSxFQUNOLFNBQ0EsV0FDQSxRQUFRLFlBQ1IsVUFBVSxDQUFDLFFBQVEsSUFBSSxJQUFJO0FBQUEsRUFDN0IsTUFBTSxFQUNKLFNBQ0EsV0FDQSxRQUFRLFVBQ1IsVUFBVSxDQUFDLFFBQVEsSUFBSSxJQUFJO0FBQUEsRUFDN0IsV0FBVyxFQUFFLE1BQU0sRUFBRSxVQUFVLFdBQVcsUUFBUSxDQUFDLDRCQUE0Qix5QkFBeUIsMkJBQTJCO0FBQUEsRUFDbkksaUJBQWlCLEVBQ2YsT0FBTztBQUFBLElBQ1AsV0FBVyxFQUFFLFVBQVU7QUFBQSxJQUN2QixLQUFLLEVBQUUsVUFBVTtBQUFBLElBQ2pCLFFBQVEsRUFBRSxNQUFNLFdBQVcsUUFBUSxDQUFDLDRCQUE0QjtBQUFBLEtBRWhFLFNBQ0EsV0FDQSxRQUFRO0FBQUEsRUFDVixjQUFjLEVBQ1osT0FBTztBQUFBLElBQ1AsTUFBTSxFQUFFLFNBQVM7QUFBQSxJQUNqQixTQUFTLEVBQUUsVUFBVSxXQUFXLFFBQVE7QUFBQSxJQUN4QyxlQUFlLEVBQ2IsTUFBTSxDQUFDLEVBQUUsUUFB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
|
package/dist/core/ssr/index.js
CHANGED
|
@@ -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
|
|
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,
|
|
243
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvcmUvc3NyL2luZGV4LnRzIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7OztBQWtCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFDQTtBQUNBO0FBRUEsTUFBTSxpQkFBaUI7QUF1QnZCLE1BQU0sUUFBUSxJQUFJO0FBR2xCLCtCQUErQixZQUFnQyxVQUFrQixhQUEwQjtBQUMxRyxRQUFNLG1CQUF3QjtBQUk5QixRQUFNO0FBQUEsSUFDTCxTQUFTLEVBQUUsTUFBTSxRQUFRLFdBQVcsb0JBQW9CO0FBQUEsTUFDckQsTUFBTSxPQUFPLGtCQUFrQixVQUFVO0FBRTdDLG1CQUFpQixPQUFPO0FBQ3hCLE1BQUk7QUFBUSxxQkFBaUIsU0FBUyxLQUFLLE1BQU0sS0FBSyxVQUFVO0FBQ2hFLG1CQUFpQixjQUFjLEtBQUssTUFBTSxLQUFLLFVBQVU7QUFDekQsTUFBSSxNQUFNLFFBQVE7QUFBcUIscUJBQWlCLHFCQUFxQixtQkFBbUIsSUFBSSxDQUFDLFFBQWdCLEtBQUssTUFBTSxLQUFLLFVBQVU7QUFDL0ksTUFBSSxNQUFNLFFBQVE7QUFBWSxxQkFBaUIsWUFBWSxVQUFVLElBQUksQ0FBQyxRQUFnQixLQUFLLE1BQU0sS0FBSyxVQUFVO0FBQ3BILFFBQU0sRUFBRSxRQUFRLE1BQU0sV0FBVyxZQUFZLG1CQUFtQixpQkFBaUI7QUFDakYsUUFBTSxFQUFFLFNBQVMsZ0JBQWdCLE1BQU0sV0FBVyxjQUFjO0FBQ2hFLG1CQUFpQixNQUFNO0FBRXZCLFFBQU0sb0JBQThCO0FBQ3BDLFNBQU87QUFBQTtBQUdSLGdDQUFnQyxZQUFnQyxhQUErQztBQUM5RyxRQUFNLE1BQWdCLFlBQVk7QUFDbEMsUUFBTSxZQUFZLE1BQU0sUUFBUSxJQUMvQixJQUFJLElBQUksQ0FBQyxhQUFhO0FBQ3JCLFFBQUksTUFBTSxJQUFJO0FBQVcsYUFBTyxNQUFNLElBQUk7QUFDMUMsUUFBSSxVQUFVLGdCQUFn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
|
package/dist/core/ssr/result.js
CHANGED
|
@@ -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,
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvcmUvc3NyL3Jlc3VsdC50cyJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBYU8sc0JBQXNCLE1BQW1DO0FBbkJoRTtBQW9CQyxRQUFNLEVBQUUsYUFBYSxRQUFRLFFBQVEsVUFBVSxjQUFjO0FBSzdELFFBQU0sU0FBb0I7QUFBQSxJQUN6QixRQUFRLElBQUk7QUFBQSxJQUNaLFNBQVMsV0FBSyxZQUFMLFlBQWdCLElBQUk7QUFBQSxJQUM3QixPQUFPLFdBQUssVUFBTCxZQUFjLElBQUk7QUFBQSxJQUV6QixZQUFZLGFBQWlDLE9BQTRCLE9BQW1DO0FBQzNHLFlBQU0sT0FBTyxJQUFJLElBQUk7QUFDckIsWUFBTSxNQUFNLElBQUksSUFBSSxNQUFNLFVBQVU7QUFDcEMsWUFBTSxlQUFlLGdCQUFnQixNQUFNLFVBQVUsWUFBWSxhQUFhLFFBQVE7QUFDdEYsYUFBTztBQUFBLFFBQ04sV0FBVztBQUFBLFFBQ1g7QUFBQSxRQUNBLFNBQVM7QUFBQSxVQUNSO0FBQUEsVUFDQTtBQUFBLFVBQ0E7QUFBQTtBQUFBLFFBRUQsUUFBUSxNQUFjO0FBQ3JCLGNBQUksWUFBWSxhQUFhLHlCQUF5QjtBQUNyRCxnQkFBSSxRQUFRLHFFQUFxRTtBQUNqRixnQkFBSSxhQUFhLE9BQU87QUFDdkIsc0JBQVE7QUFBQTtBQUFBO0FBQUEsV0FHSjtBQUFBO0FBQUE7QUFBQTtBQUtMLGlCQUNDLEtBQUssU0FDTCxlQUNBLEdBQUcsS0FBSywyRUFBMkU7QUFBQSxFQUN4RjtBQUdJLG1CQUFPO0FBQUE7QUFHUixpQkFBTyxZQUFZLFFBQVE7QUFBQTtBQUFBLFFBRTVCLE9BQU8sT0FBTyxZQUFZLE9BQU8sUUFBUSxTQUFTLElBQUksSUFBSSxDQUFDLENBQUMsY0FBYyxDQUFDLFVBQVU7QUFBQSxRQUVyRiwwQkFBMEIsVUFBa0I7QUFDM0MsaUJBQU8sV0FBVyxRQUFRLFFBQVEsTUFBTSxZQUFZO0FBQUE7QUFBQSxjQUcvQyw4QkFBOEIsU0FBaUIsTUFBVztBQUMvRCxjQUFJLFdBQVcsWUFBWSxnQkFBZ0I7QUFDM0MsY0FBSSxhQUFhO0FBQ2pCLGNBQUksTUFBTSxRQUFRLFdBQVc7QUFDNUIseUJBQWEsU0FBUztBQUN0Qix1QkFBVyxTQUFTO0FBQUE7QUFHckIsY0FBSSxPQUFPLGFBQWEsVUFBVTtBQUNqQyxZQUFDLEdBQUUsU0FBUyxhQUFhLE1BQU0sT0FBTztBQUFBLHFCQUc5QixvQkFBb0IsU0FBUztBQUNyQyxZQUFDLEdBQUUsU0FBUyxhQUFhLE1BQU07QUFBQTtBQUVoQyxnQkFBTSxFQUFFLFNBQVMsTUFBTSxTQUFTLFNBQVMsa0NBQUssYUFBZ0Isc0JBQVE7QUFDdEUsaUJBQU87QUFBQTtBQUFBO0FBQUE7QUFBQSxVQUtKLFFBQVEsR0FBNEI7QUFDekMsYUFBTztBQUFBO0FBQUEsSUFFUixXQUFXO0FBQUEsTUFDVjtBQUFBLE1BQ0E7QUFBQSxNQUNBLHlCQUF5QixZQUFZLGFBQWE7QUFBQTtBQUFBO0FBSXBELFNBQU87QUFBQTsiLAogICJuYW1lcyI6IFtdCn0K
|
package/dist/core/ssr/rss.js
CHANGED
|
@@ -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,
|
|
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(
|
|
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
|
-
|
|
61
|
-
xml += `<
|
|
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
|
|
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
|
|
110
|
+
content: generateRSS({ rssData, site, srcFile: route.component })
|
|
109
111
|
};
|
|
112
|
+
results.push(result);
|
|
110
113
|
},
|
|
111
|
-
rss:
|
|
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,
|
|
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,
|
|
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.
|
|
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.
|
|
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,
|
|
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
|
/**
|
|
@@ -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
|
-
|
|
115
|
+
flags?: Flags;
|
|
115
116
|
}
|
|
116
117
|
/** Attempt to load an `astro.config.mjs` file */
|
|
117
|
-
export declare function loadConfig(
|
|
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
|
-
|
|
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,
|
|
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
|
-
|
|
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,
|
|
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.
|
|
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.
|
|
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
|
-
|
|
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) =>
|
|
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,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
|