summaryrefslogtreecommitdiff
path: root/packages/astro/src/vite-plugin-head-propagation/index.ts
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--packages/astro/src/vite-plugin-head-propagation/index.ts25
1 files changed, 15 insertions, 10 deletions
diff --git a/packages/astro/src/vite-plugin-head-propagation/index.ts b/packages/astro/src/vite-plugin-head-propagation/index.ts
index dd8355c0f..20cd84637 100644
--- a/packages/astro/src/vite-plugin-head-propagation/index.ts
+++ b/packages/astro/src/vite-plugin-head-propagation/index.ts
@@ -1,5 +1,5 @@
-import type { AstroSettings } from '../@types/astro';
import type { ModuleInfo } from 'rollup';
+import type { AstroSettings } from '../@types/astro';
import * as vite from 'vite';
import { getAstroMetadata } from '../vite-plugin-astro/index.js';
@@ -16,17 +16,22 @@ export default function configHeadPropagationVitePlugin({
}: {
settings: AstroSettings;
}): vite.Plugin {
- function addHeadInjectionInTree(graph: vite.ModuleGraph, id: string, getInfo: (id: string) => ModuleInfo | null, seen: Set<string> = new Set()) {
+ function addHeadInjectionInTree(
+ graph: vite.ModuleGraph,
+ id: string,
+ getInfo: (id: string) => ModuleInfo | null,
+ seen: Set<string> = new Set()
+ ) {
const mod = server.moduleGraph.getModuleById(id);
- for(const parent of mod?.importers || []) {
- if(parent.id) {
- if(seen.has(parent.id)) {
+ for (const parent of mod?.importers || []) {
+ if (parent.id) {
+ if (seen.has(parent.id)) {
continue;
}
const info = getInfo(parent.id);
- if(info?.meta.astro) {
+ if (info?.meta.astro) {
const astroMetadata = getAstroMetadata(info);
- if(astroMetadata) {
+ if (astroMetadata) {
astroMetadata.propagation = 'in-tree';
}
}
@@ -42,13 +47,13 @@ export default function configHeadPropagationVitePlugin({
server = _server;
},
transform(source, id) {
- if(!server) {
+ if (!server) {
return;
}
- if(injectExp.test(source)) {
+ if (injectExp.test(source)) {
addHeadInjectionInTree(server.moduleGraph, id, (child) => this.getModuleInfo(child));
}
- }
+ },
};
}