@analogjs/vite-plugin-angular 3.0.0-alpha.51 → 3.0.0-alpha.53
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/package.json +1 -1
- package/src/lib/angular-vite-plugin.js +18 -8
- package/src/lib/angular-vite-plugin.js.map +1 -1
- package/src/lib/compilation-api/compilation-api-plugin.js +11 -3
- package/src/lib/compilation-api/compilation-api-plugin.js.map +1 -1
- package/src/lib/fast-compile-plugin.js +2 -3
- package/src/lib/fast-compile-plugin.js.map +1 -1
- package/src/lib/stylesheet-registry.d.ts +1 -0
- package/src/lib/stylesheet-registry.js +13 -7
- package/src/lib/stylesheet-registry.js.map +1 -1
- package/src/lib/utils/css-extension-resolver.d.ts +32 -0
- package/src/lib/utils/css-extension-resolver.js +73 -0
- package/src/lib/utils/css-extension-resolver.js.map +1 -0
- package/src/lib/utils/plugin-config.d.ts +0 -3
- package/src/lib/utils/plugin-config.js +5 -8
- package/src/lib/utils/plugin-config.js.map +1 -1
package/package.json
CHANGED
|
@@ -22,6 +22,7 @@ import { buildStylePreprocessor, tailwindReferencePlugin, validateTailwindConfig
|
|
|
22
22
|
import { encapsulationPlugin, getComponentStyleSheetMeta, isComponentStyleSheet } from "./encapsulation-plugin.js";
|
|
23
23
|
import { virtualModulesPlugin } from "./virtual-modules-plugin.js";
|
|
24
24
|
import { angularVitestPlugins } from "./angular-vitest-plugin.js";
|
|
25
|
+
import { cssExtensionStyleResolverPlugin } from "./utils/css-extension-resolver.js";
|
|
25
26
|
import { pendingTasksPlugin } from "./angular-pending-tasks.plugin.js";
|
|
26
27
|
import { liveReloadPlugin } from "./live-reload-plugin.js";
|
|
27
28
|
import { nxFolderPlugin } from "./nx-folder-plugin.js";
|
|
@@ -32,7 +33,7 @@ import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
|
|
|
32
33
|
import { basename, dirname, isAbsolute, join, relative, resolve } from "node:path";
|
|
33
34
|
import * as compilerCli from "@angular/compiler-cli";
|
|
34
35
|
import { createRequire } from "node:module";
|
|
35
|
-
import {
|
|
36
|
+
import { normalizePath, preprocessCSS } from "vite";
|
|
36
37
|
//#region packages/vite-plugin-angular/src/lib/angular-vite-plugin.ts
|
|
37
38
|
var require = createRequire(import.meta.url);
|
|
38
39
|
var classNames = /* @__PURE__ */ new Map();
|
|
@@ -255,8 +256,7 @@ function angular(options) {
|
|
|
255
256
|
],
|
|
256
257
|
exclude: ["@angular/platform-server"],
|
|
257
258
|
...useRolldown ? { rolldownOptions } : { esbuildOptions }
|
|
258
|
-
}
|
|
259
|
-
resolve: { conditions: ["style", ...config.resolve?.conditions || defaultClientConditions] }
|
|
259
|
+
}
|
|
260
260
|
};
|
|
261
261
|
},
|
|
262
262
|
configResolved(config) {
|
|
@@ -587,6 +587,15 @@ function angular(options) {
|
|
|
587
587
|
}
|
|
588
588
|
if (isComponentStyleSheet(id)) {
|
|
589
589
|
const filename = getFilenameFromPath(id);
|
|
590
|
+
const search = new URL(id, "http://localhost").search;
|
|
591
|
+
const servedSourcePath = stylesheetRegistry?.getServedSourcePath(filename);
|
|
592
|
+
if (servedSourcePath) {
|
|
593
|
+
debugStylesV("resolveId: mapped served stylesheet to source", {
|
|
594
|
+
filename,
|
|
595
|
+
resolvedPath: servedSourcePath
|
|
596
|
+
});
|
|
597
|
+
return servedSourcePath + search;
|
|
598
|
+
}
|
|
590
599
|
if (stylesheetRegistry?.hasServed(filename)) {
|
|
591
600
|
debugStylesV("resolveId: kept preprocessed ID", { filename });
|
|
592
601
|
return id;
|
|
@@ -618,8 +627,8 @@ function angular(options) {
|
|
|
618
627
|
debugHmrV("stylesheet active request registered", {
|
|
619
628
|
requestId: id,
|
|
620
629
|
filename,
|
|
621
|
-
sourcePath: stylesheetRegistry?.resolveExternalSource(filename) ?? stylesheetRegistry?.resolveExternalSource(filename.replace(/^\//, "")),
|
|
622
|
-
trackedRequestIds: stylesheetRegistry?.getRequestIdsForSource(stylesheetRegistry?.resolveExternalSource(filename) ?? stylesheetRegistry?.resolveExternalSource(filename.replace(/^\//, "")) ?? "") ?? []
|
|
630
|
+
sourcePath: stylesheetRegistry?.resolveExternalSource(filename) ?? stylesheetRegistry?.resolveExternalSource(filename.replace(/^\//, "")) ?? stylesheetRegistry?.getServedSourcePath(filename) ?? stylesheetRegistry?.getServedSourcePath(filename.replace(/^\//, "")),
|
|
631
|
+
trackedRequestIds: stylesheetRegistry?.getRequestIdsForSource(stylesheetRegistry?.resolveExternalSource(filename) ?? stylesheetRegistry?.resolveExternalSource(filename.replace(/^\//, "")) ?? stylesheetRegistry?.getServedSourcePath(filename) ?? stylesheetRegistry?.getServedSourcePath(filename.replace(/^\//, "")) ?? "") ?? []
|
|
623
632
|
});
|
|
624
633
|
debugStylesV("load: served inline component stylesheet", {
|
|
625
634
|
filename,
|
|
@@ -777,6 +786,7 @@ function angular(options) {
|
|
|
777
786
|
fastCompileMode: pluginOptions.fastCompileMode
|
|
778
787
|
}) : angularPlugin();
|
|
779
788
|
return [
|
|
789
|
+
cssExtensionStyleResolverPlugin(),
|
|
780
790
|
replaceFiles(pluginOptions.fileReplacements, pluginOptions.workspaceRoot),
|
|
781
791
|
virtualModulesPlugin({ jit }),
|
|
782
792
|
templateClassBindingGuardPlugin(guardContext),
|
|
@@ -973,14 +983,14 @@ function isModuleForChangedResource(mod, changedFile, stylesheetRegistry) {
|
|
|
973
983
|
if (normalizePath((mod.file ?? "").split("?")[0]) === normalizedChangedFile) return true;
|
|
974
984
|
if (!mod.id) return false;
|
|
975
985
|
const requestPath = getFilenameFromPath(mod.id);
|
|
976
|
-
return normalizePath((stylesheetRegistry?.resolveExternalSource(requestPath) ?? stylesheetRegistry?.resolveExternalSource(requestPath.replace(/^\//, "")) ?? "").split("?")[0]) === normalizedChangedFile;
|
|
986
|
+
return normalizePath((stylesheetRegistry?.resolveExternalSource(requestPath) ?? stylesheetRegistry?.resolveExternalSource(requestPath.replace(/^\//, "")) ?? stylesheetRegistry?.getServedSourcePath(requestPath) ?? stylesheetRegistry?.getServedSourcePath(requestPath.replace(/^\//, "")) ?? "").split("?")[0]) === normalizedChangedFile;
|
|
977
987
|
}
|
|
978
988
|
function diagnoseComponentStylesheetPipeline(changedFile, directModule, stylesheetRegistry, wrapperModules, stylePreprocessor) {
|
|
979
989
|
const normalizedFile = normalizePath(changedFile.split("?")[0]);
|
|
980
990
|
const sourceExists = existsSync(normalizedFile);
|
|
981
991
|
const sourceCode = sourceExists ? readFileSync(normalizedFile, "utf-8") : void 0;
|
|
982
992
|
const directRequestPath = directModule.id ? getFilenameFromPath(directModule.id) : void 0;
|
|
983
|
-
const sourcePath = directRequestPath ? stylesheetRegistry?.resolveExternalSource(directRequestPath) ?? stylesheetRegistry?.resolveExternalSource(directRequestPath.replace(/^\//, "")) : normalizedFile;
|
|
993
|
+
const sourcePath = directRequestPath ? stylesheetRegistry?.resolveExternalSource(directRequestPath) ?? stylesheetRegistry?.resolveExternalSource(directRequestPath.replace(/^\//, "")) ?? stylesheetRegistry?.getServedSourcePath(directRequestPath) ?? stylesheetRegistry?.getServedSourcePath(directRequestPath.replace(/^\//, "")) : normalizedFile;
|
|
984
994
|
const registryCode = directRequestPath ? stylesheetRegistry?.getServedContent(directRequestPath) : void 0;
|
|
985
995
|
const trackedRequestIds = stylesheetRegistry?.getRequestIdsForSource(sourcePath ?? "") ?? [];
|
|
986
996
|
const dependencies = stylesheetRegistry?.getDependenciesForSource(sourcePath ?? "") ?? [];
|
|
@@ -1039,7 +1049,7 @@ async function findComponentStylesheetWrapperModules(server, changedFile, direct
|
|
|
1039
1049
|
if (directModule.id) directRequestIds.add(directModule.id);
|
|
1040
1050
|
if (directModule.url) directRequestIds.add(directModule.url);
|
|
1041
1051
|
const requestPath = directModule.id ? getFilenameFromPath(directModule.id) : void 0;
|
|
1042
|
-
const sourcePath = requestPath ? stylesheetRegistry?.resolveExternalSource(requestPath) ?? stylesheetRegistry?.resolveExternalSource(requestPath.replace(/^\//, "")) : void 0;
|
|
1052
|
+
const sourcePath = requestPath ? stylesheetRegistry?.resolveExternalSource(requestPath) ?? stylesheetRegistry?.resolveExternalSource(requestPath.replace(/^\//, "")) ?? stylesheetRegistry?.getServedSourcePath(requestPath) ?? stylesheetRegistry?.getServedSourcePath(requestPath.replace(/^\//, "")) : void 0;
|
|
1043
1053
|
for (const requestId of stylesheetRegistry?.getRequestIdsForSource(sourcePath ?? "") ?? []) if (requestId.includes("?ngcomp=")) directRequestIds.add(requestId);
|
|
1044
1054
|
const candidateWrapperIds = [...directRequestIds].filter((id) => id.includes("?direct&ngcomp=")).map((id) => id.replace("?direct&ngcomp=", "?ngcomp="));
|
|
1045
1055
|
const lookupHits = [];
|