@absolutejs/absolute 0.19.0-beta.982 → 0.19.0-beta.983
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/angular/components/core/streamingSlotRegistrar.js +1 -1
- package/dist/angular/components/core/streamingSlotRegistry.js +2 -2
- package/dist/angular/index.js +98 -149
- package/dist/angular/index.js.map +8 -9
- package/dist/angular/server.js +98 -149
- package/dist/angular/server.js.map +8 -9
- package/dist/build.js +494 -696
- package/dist/build.js.map +8 -10
- package/dist/client/index.js +1 -3
- package/dist/client/index.js.map +4 -4
- package/dist/index.js +521 -723
- package/dist/index.js.map +8 -10
- package/dist/islands/index.js +1 -3
- package/dist/islands/index.js.map +4 -4
- package/dist/react/index.js +1 -3
- package/dist/react/index.js.map +4 -4
- package/dist/src/build/runAngularHandlerScan.d.ts +0 -5
- package/dist/svelte/index.js +1 -3
- package/dist/svelte/index.js.map +4 -4
- package/dist/types/angular.d.ts +0 -1
- package/dist/vue/index.js +1 -3
- package/dist/vue/index.js.map +4 -4
- package/package.json +1 -1
- package/dist/src/angular/loadRouteMounts.d.ts +0 -3
- package/dist/src/build/emitAngularProvidersFiles.d.ts +0 -29
- package/dist/src/build/emitAngularRouteMounts.d.ts +0 -3
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// @bun
|
|
2
2
|
var __require = import.meta.require;
|
|
3
3
|
|
|
4
|
-
// .angular-partial-tmp-
|
|
4
|
+
// .angular-partial-tmp-f4OdRK/src/core/streamingSlotRegistrar.ts
|
|
5
5
|
var STREAMING_SLOT_REGISTRAR_KEY = Symbol.for("absolutejs.streamingSlotRegistrar");
|
|
6
6
|
var STREAMING_SLOT_WARNING_STORAGE_KEY = Symbol.for("absolutejs.streamingSlotWarningController");
|
|
7
7
|
var STREAMING_SLOT_COLLECTION_STORAGE_KEY = Symbol.for("absolutejs.streamingSlotCollectionController");
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// @bun
|
|
2
2
|
var __require = import.meta.require;
|
|
3
3
|
|
|
4
|
-
// .angular-partial-tmp-
|
|
4
|
+
// .angular-partial-tmp-f4OdRK/src/core/streamingSlotRegistrar.ts
|
|
5
5
|
var STREAMING_SLOT_REGISTRAR_KEY = Symbol.for("absolutejs.streamingSlotRegistrar");
|
|
6
6
|
var STREAMING_SLOT_WARNING_STORAGE_KEY = Symbol.for("absolutejs.streamingSlotWarningController");
|
|
7
7
|
var STREAMING_SLOT_COLLECTION_STORAGE_KEY = Symbol.for("absolutejs.streamingSlotCollectionController");
|
|
@@ -48,7 +48,7 @@ var warnMissingStreamingSlotCollector = (primitiveName) => {
|
|
|
48
48
|
getWarningController()?.maybeWarn(primitiveName);
|
|
49
49
|
};
|
|
50
50
|
|
|
51
|
-
// .angular-partial-tmp-
|
|
51
|
+
// .angular-partial-tmp-f4OdRK/src/core/streamingSlotRegistry.ts
|
|
52
52
|
var STREAMING_SLOT_STORAGE_KEY = Symbol.for("absolutejs.streamingSlotAsyncLocalStorage");
|
|
53
53
|
var isObjectRecord2 = (value) => Boolean(value) && typeof value === "object";
|
|
54
54
|
var isAsyncLocalStorage = (value) => isObjectRecord2(value) && ("getStore" in value) && typeof value.getStore === "function" && ("run" in value) && typeof value.run === "function";
|
package/dist/angular/index.js
CHANGED
|
@@ -468,7 +468,6 @@ var initDominoAdapter = (platformServer) => {
|
|
|
468
468
|
return {
|
|
469
469
|
APP_BASE_HREF: common.APP_BASE_HREF,
|
|
470
470
|
bootstrapApplication: platformBrowser.bootstrapApplication,
|
|
471
|
-
clearResolutionOfComponentResourcesQueue: core.\u{275}clearResolutionOfComponentResourcesQueue,
|
|
472
471
|
DomSanitizer: platformBrowser.DomSanitizer,
|
|
473
472
|
ENVIRONMENT_INITIALIZER: core.ENVIRONMENT_INITIALIZER,
|
|
474
473
|
inject: core.inject,
|
|
@@ -556,7 +555,6 @@ var routeContextCache, cacheRouteData = (pagePath, data) => {
|
|
|
556
555
|
}
|
|
557
556
|
return result;
|
|
558
557
|
}, renderAngularApp = async (deps, PageComponent, providers, document2, url = "/") => {
|
|
559
|
-
deps.clearResolutionOfComponentResourcesQueue();
|
|
560
558
|
const bootstrap = (context) => deps.bootstrapApplication(PageComponent, { providers }, context);
|
|
561
559
|
return withSuppressedAngularDevLogs(() => deps.renderApplication(bootstrap, {
|
|
562
560
|
document: document2,
|
|
@@ -2962,16 +2960,6 @@ var init_logger = __esm(() => {
|
|
|
2962
2960
|
};
|
|
2963
2961
|
});
|
|
2964
2962
|
|
|
2965
|
-
// src/utils/generatedDir.ts
|
|
2966
|
-
var exports_generatedDir = {};
|
|
2967
|
-
__export(exports_generatedDir, {
|
|
2968
|
-
getGeneratedRoot: () => getGeneratedRoot,
|
|
2969
|
-
getFrameworkGeneratedDir: () => getFrameworkGeneratedDir
|
|
2970
|
-
});
|
|
2971
|
-
import { join as join6 } from "path";
|
|
2972
|
-
var GENERATED_DIR_NAME = "generated", ABSOLUTE_CACHE_DIR_NAME = ".absolutejs", getGeneratedRoot = (projectRoot = process.cwd()) => join6(projectRoot, ABSOLUTE_CACHE_DIR_NAME, GENERATED_DIR_NAME), getFrameworkGeneratedDir = (framework, projectRoot = process.cwd()) => join6(getGeneratedRoot(projectRoot), framework);
|
|
2973
|
-
var init_generatedDir = () => {};
|
|
2974
|
-
|
|
2975
2963
|
// src/islands/sourceMetadata.ts
|
|
2976
2964
|
var islandFrameworks2, islandHydrationModes2, isIslandFramework2 = (value) => islandFrameworks2.some((framework) => framework === value), isIslandHydrate2 = (value) => islandHydrationModes2.some((hydrate) => hydrate === value), parseIslandTagAttributes = (attributeString) => {
|
|
2977
2965
|
const frameworkMatch = attributeString.match(/\bframework\s*=\s*["']([^"']+)["']/);
|
|
@@ -3510,6 +3498,16 @@ var init_lowerDeferSyntax = __esm(() => {
|
|
|
3510
3498
|
init_constants();
|
|
3511
3499
|
});
|
|
3512
3500
|
|
|
3501
|
+
// src/utils/generatedDir.ts
|
|
3502
|
+
var exports_generatedDir = {};
|
|
3503
|
+
__export(exports_generatedDir, {
|
|
3504
|
+
getGeneratedRoot: () => getGeneratedRoot,
|
|
3505
|
+
getFrameworkGeneratedDir: () => getFrameworkGeneratedDir
|
|
3506
|
+
});
|
|
3507
|
+
import { join as join6 } from "path";
|
|
3508
|
+
var GENERATED_DIR_NAME = "generated", ABSOLUTE_CACHE_DIR_NAME = ".absolutejs", getGeneratedRoot = (projectRoot = process.cwd()) => join6(projectRoot, ABSOLUTE_CACHE_DIR_NAME, GENERATED_DIR_NAME), getFrameworkGeneratedDir = (framework, projectRoot = process.cwd()) => join6(getGeneratedRoot(projectRoot), framework);
|
|
3509
|
+
var init_generatedDir = () => {};
|
|
3510
|
+
|
|
3513
3511
|
// src/build/compileAngular.ts
|
|
3514
3512
|
var exports_compileAngular = {};
|
|
3515
3513
|
__export(exports_compileAngular, {
|
|
@@ -3519,8 +3517,8 @@ __export(exports_compileAngular, {
|
|
|
3519
3517
|
compileAngularFile: () => compileAngularFile,
|
|
3520
3518
|
compileAngular: () => compileAngular
|
|
3521
3519
|
});
|
|
3522
|
-
import { existsSync as
|
|
3523
|
-
import { join as
|
|
3520
|
+
import { existsSync as existsSync4, readFileSync as readFileSync4, promises as fs } from "fs";
|
|
3521
|
+
import { join as join7, basename as basename3, sep, dirname as dirname4, resolve as resolve6, relative as relative4 } from "path";
|
|
3524
3522
|
var {Glob } = globalThis.Bun;
|
|
3525
3523
|
import ts from "typescript";
|
|
3526
3524
|
var traceAngularPhase = async (name, fn, metadata) => {
|
|
@@ -3563,12 +3561,12 @@ var traceAngularPhase = async (name, fn, metadata) => {
|
|
|
3563
3561
|
`${candidate}.tsx`,
|
|
3564
3562
|
`${candidate}.js`,
|
|
3565
3563
|
`${candidate}.jsx`,
|
|
3566
|
-
|
|
3567
|
-
|
|
3568
|
-
|
|
3569
|
-
|
|
3564
|
+
join7(candidate, "index.ts"),
|
|
3565
|
+
join7(candidate, "index.tsx"),
|
|
3566
|
+
join7(candidate, "index.js"),
|
|
3567
|
+
join7(candidate, "index.jsx")
|
|
3570
3568
|
];
|
|
3571
|
-
return candidates.find((file) =>
|
|
3569
|
+
return candidates.find((file) => existsSync4(file));
|
|
3572
3570
|
}, createLegacyAngularAnimationUsageResolver = (rootDir) => {
|
|
3573
3571
|
const baseDir = resolve6(rootDir);
|
|
3574
3572
|
const tsconfigAliases = readTsconfigPathAliases();
|
|
@@ -3602,9 +3600,9 @@ var traceAngularPhase = async (name, fn, metadata) => {
|
|
|
3602
3600
|
});
|
|
3603
3601
|
}
|
|
3604
3602
|
const resolved = resolve6(actualPath);
|
|
3605
|
-
const
|
|
3606
|
-
if (
|
|
3607
|
-
return
|
|
3603
|
+
const cached = scanCache.get(resolved);
|
|
3604
|
+
if (cached)
|
|
3605
|
+
return cached;
|
|
3608
3606
|
const promise = (async () => {
|
|
3609
3607
|
let sourceCode;
|
|
3610
3608
|
try {
|
|
@@ -3649,11 +3647,11 @@ var traceAngularPhase = async (name, fn, metadata) => {
|
|
|
3649
3647
|
}, resolveDevClientDir = () => {
|
|
3650
3648
|
const projectRoot = process.cwd();
|
|
3651
3649
|
const fromSource = resolve6(import.meta.dir, "../dev/client");
|
|
3652
|
-
if (
|
|
3650
|
+
if (existsSync4(fromSource) && fromSource.startsWith(projectRoot)) {
|
|
3653
3651
|
return fromSource;
|
|
3654
3652
|
}
|
|
3655
3653
|
const fromNodeModules = resolve6(projectRoot, "node_modules/@absolutejs/absolute/dist/dev/client");
|
|
3656
|
-
if (
|
|
3654
|
+
if (existsSync4(fromNodeModules))
|
|
3657
3655
|
return fromNodeModules;
|
|
3658
3656
|
return resolve6(import.meta.dir, "./dev/client");
|
|
3659
3657
|
}, devClientDir, hmrClientPath, formatDiagnosticMessage = (diagnostic) => {
|
|
@@ -3699,11 +3697,11 @@ var traceAngularPhase = async (name, fn, metadata) => {
|
|
|
3699
3697
|
return `${path}${query}`;
|
|
3700
3698
|
const importerDir = dirname4(importerOutputPath);
|
|
3701
3699
|
const fileCandidate = resolve6(importerDir, `${path}.js`);
|
|
3702
|
-
if (outputFiles?.has(fileCandidate) ||
|
|
3700
|
+
if (outputFiles?.has(fileCandidate) || existsSync4(fileCandidate)) {
|
|
3703
3701
|
return `${path}.js${query}`;
|
|
3704
3702
|
}
|
|
3705
3703
|
const indexCandidate = resolve6(importerDir, path, "index.js");
|
|
3706
|
-
if (outputFiles?.has(indexCandidate) ||
|
|
3704
|
+
if (outputFiles?.has(indexCandidate) || existsSync4(indexCandidate)) {
|
|
3707
3705
|
return `${path}/index.js${query}`;
|
|
3708
3706
|
}
|
|
3709
3707
|
return `${path}.js${query}`;
|
|
@@ -3736,12 +3734,12 @@ var traceAngularPhase = async (name, fn, metadata) => {
|
|
|
3736
3734
|
`${basePath}.tsx`,
|
|
3737
3735
|
`${basePath}.mts`,
|
|
3738
3736
|
`${basePath}.cts`,
|
|
3739
|
-
|
|
3740
|
-
|
|
3741
|
-
|
|
3742
|
-
|
|
3737
|
+
join7(basePath, "index.ts"),
|
|
3738
|
+
join7(basePath, "index.tsx"),
|
|
3739
|
+
join7(basePath, "index.mts"),
|
|
3740
|
+
join7(basePath, "index.cts")
|
|
3743
3741
|
];
|
|
3744
|
-
return candidates.map((candidate) => resolve6(candidate)).find((candidate) =>
|
|
3742
|
+
return candidates.map((candidate) => resolve6(candidate)).find((candidate) => existsSync4(candidate) && !candidate.endsWith(".d.ts")) ?? null;
|
|
3745
3743
|
}, readFileForAotTransform = async (fileName, readFile2) => {
|
|
3746
3744
|
const hostSource = readFile2?.(fileName);
|
|
3747
3745
|
if (typeof hostSource === "string")
|
|
@@ -3765,15 +3763,15 @@ var traceAngularPhase = async (name, fn, metadata) => {
|
|
|
3765
3763
|
const paths = [];
|
|
3766
3764
|
const templateUrlMatch = findUncommentedMatch(source, /templateUrl\s*:\s*['"]([^'"]+)['"]/);
|
|
3767
3765
|
if (templateUrlMatch?.[1])
|
|
3768
|
-
paths.push(
|
|
3766
|
+
paths.push(join7(fileDir, templateUrlMatch[1]));
|
|
3769
3767
|
const styleUrlMatch = findUncommentedMatch(source, /styleUrl\s*:\s*['"]([^'"]+)['"]/);
|
|
3770
3768
|
if (styleUrlMatch?.[1])
|
|
3771
|
-
paths.push(
|
|
3769
|
+
paths.push(join7(fileDir, styleUrlMatch[1]));
|
|
3772
3770
|
const styleUrlsMatch = findUncommentedMatch(source, /styleUrls\s*:\s*\[([^\]]+)\]/);
|
|
3773
3771
|
const urlMatches = styleUrlsMatch?.[1]?.match(/['"]([^'"]+)['"]/g);
|
|
3774
3772
|
if (urlMatches) {
|
|
3775
3773
|
for (const urlMatch of urlMatches) {
|
|
3776
|
-
paths.push(
|
|
3774
|
+
paths.push(join7(fileDir, urlMatch.replace(/['"]/g, "")));
|
|
3777
3775
|
}
|
|
3778
3776
|
}
|
|
3779
3777
|
return paths.map((path) => resolve6(path));
|
|
@@ -3807,7 +3805,7 @@ var traceAngularPhase = async (name, fn, metadata) => {
|
|
|
3807
3805
|
safeStableStringify(stylePreprocessors ?? null)
|
|
3808
3806
|
].join("\x00");
|
|
3809
3807
|
const cacheKey = Bun.hash(cacheInput).toString(BASE_36_RADIX);
|
|
3810
|
-
return
|
|
3808
|
+
return join7(process.cwd(), ".absolutejs", "cache", "angular-resources", `${cacheKey}.json`);
|
|
3811
3809
|
}, precomputeAotResourceTransforms = async (inputPaths, readFile2, stylePreprocessors) => {
|
|
3812
3810
|
const transformedSources = new Map;
|
|
3813
3811
|
const visited = new Set;
|
|
@@ -3822,16 +3820,16 @@ var traceAngularPhase = async (name, fn, metadata) => {
|
|
|
3822
3820
|
if (visited.has(resolvedPath))
|
|
3823
3821
|
return;
|
|
3824
3822
|
visited.add(resolvedPath);
|
|
3825
|
-
if (!
|
|
3823
|
+
if (!existsSync4(resolvedPath) || resolvedPath.endsWith(".d.ts"))
|
|
3826
3824
|
return;
|
|
3827
3825
|
stats.filesVisited += 1;
|
|
3828
3826
|
const source = await readFileForAotTransform(resolvedPath, readFile2);
|
|
3829
3827
|
const cachePath = await resolveResourceTransformCachePath(resolvedPath, source, stylePreprocessors);
|
|
3830
|
-
const
|
|
3828
|
+
const cached = await readResourceCacheFile(cachePath);
|
|
3831
3829
|
let transformedSource;
|
|
3832
|
-
if (
|
|
3830
|
+
if (cached) {
|
|
3833
3831
|
stats.cacheHits += 1;
|
|
3834
|
-
transformedSource =
|
|
3832
|
+
transformedSource = cached.source;
|
|
3835
3833
|
} else {
|
|
3836
3834
|
stats.cacheMisses += 1;
|
|
3837
3835
|
const transformed = await inlineResources(source, dirname4(resolvedPath), stylePreprocessors);
|
|
@@ -3853,7 +3851,7 @@ var traceAngularPhase = async (name, fn, metadata) => {
|
|
|
3853
3851
|
return { stats, transformedSources };
|
|
3854
3852
|
}, compileAngularFiles = async (inputPaths, outDir, stylePreprocessors) => {
|
|
3855
3853
|
const islandMetadataByOutputPath = await traceAngularPhase("aot/island-metadata", () => new Map(inputPaths.map((inputPath) => {
|
|
3856
|
-
const outputPath = resolve6(
|
|
3854
|
+
const outputPath = resolve6(join7(outDir, relative4(process.cwd(), resolve6(inputPath)).replace(/\.[cm]?[tj]sx?$/, ".js")));
|
|
3857
3855
|
return [
|
|
3858
3856
|
outputPath,
|
|
3859
3857
|
buildIslandMetadataExports(readFileSync4(inputPath, "utf-8"))
|
|
@@ -3900,7 +3898,7 @@ var traceAngularPhase = async (name, fn, metadata) => {
|
|
|
3900
3898
|
const originalGetSourceFile = host.getSourceFile;
|
|
3901
3899
|
host.getSourceFile = (fileName, languageVersion, onError) => {
|
|
3902
3900
|
if (fileName.startsWith("lib.") && fileName.endsWith(".d.ts") && tsLibDir) {
|
|
3903
|
-
const resolvedPath =
|
|
3901
|
+
const resolvedPath = join7(tsLibDir, fileName);
|
|
3904
3902
|
return originalGetSourceFile?.call(host, resolvedPath, languageVersion, onError);
|
|
3905
3903
|
}
|
|
3906
3904
|
return originalGetSourceFile?.call(host, fileName, languageVersion, onError);
|
|
@@ -3955,7 +3953,7 @@ var traceAngularPhase = async (name, fn, metadata) => {
|
|
|
3955
3953
|
const entries = await traceAngularPhase("aot/postprocess-emitted-js", () => {
|
|
3956
3954
|
const rawEntries = Object.entries(emitted).filter(([fileName]) => fileName.endsWith(".js")).map(([fileName, content]) => ({
|
|
3957
3955
|
content,
|
|
3958
|
-
target:
|
|
3956
|
+
target: join7(outDir, fileName)
|
|
3959
3957
|
}));
|
|
3960
3958
|
const outputFiles = new Set(rawEntries.map(({ target }) => resolve6(target)));
|
|
3961
3959
|
return rawEntries.map(({ content, target }) => {
|
|
@@ -3996,7 +3994,7 @@ var traceAngularPhase = async (name, fn, metadata) => {
|
|
|
3996
3994
|
return null;
|
|
3997
3995
|
}, resolveAngularDeferImportSpecifier = () => {
|
|
3998
3996
|
const sourceEntry = resolve6(import.meta.dir, "../angular/components/index.ts");
|
|
3999
|
-
if (
|
|
3997
|
+
if (existsSync4(sourceEntry)) {
|
|
4000
3998
|
return sourceEntry.replace(/\\/g, "/");
|
|
4001
3999
|
}
|
|
4002
4000
|
return "@absolutejs/absolute/angular/components";
|
|
@@ -4124,7 +4122,7 @@ ${slot.resolvedBindings.map((binding) => ` "${binding.key}": this.__absoluteDef
|
|
|
4124
4122
|
${fields}
|
|
4125
4123
|
`);
|
|
4126
4124
|
}, readAndEscapeFile = async (filePath, stylePreprocessors) => {
|
|
4127
|
-
if (!
|
|
4125
|
+
if (!existsSync4(filePath)) {
|
|
4128
4126
|
throw new Error(`Unable to inline Angular style resource: file not found at ${filePath}`);
|
|
4129
4127
|
}
|
|
4130
4128
|
const content = await compileStyleFileIfNeeded(filePath, stylePreprocessors);
|
|
@@ -4132,8 +4130,8 @@ ${fields}
|
|
|
4132
4130
|
}, inlineTemplateAndLowerDefer = async (source, fileDir) => {
|
|
4133
4131
|
const templateUrlMatch = findUncommentedMatch(source, /templateUrl\s*:\s*['"]([^'"]+)['"]/);
|
|
4134
4132
|
if (templateUrlMatch?.[1]) {
|
|
4135
|
-
const templatePath =
|
|
4136
|
-
if (!
|
|
4133
|
+
const templatePath = join7(fileDir, templateUrlMatch[1]);
|
|
4134
|
+
if (!existsSync4(templatePath)) {
|
|
4137
4135
|
throw new Error(`Unable to inline Angular templateUrl "${templateUrlMatch[1]}": file not found at ${templatePath}`);
|
|
4138
4136
|
}
|
|
4139
4137
|
const templateRaw2 = await fs.readFile(templatePath, "utf-8");
|
|
@@ -4163,8 +4161,8 @@ ${fields}
|
|
|
4163
4161
|
}, inlineTemplateAndLowerDeferSync = (source, fileDir) => {
|
|
4164
4162
|
const templateUrlMatch = findUncommentedMatch(source, /templateUrl\s*:\s*['"]([^'"]+)['"]/);
|
|
4165
4163
|
if (templateUrlMatch?.[1]) {
|
|
4166
|
-
const templatePath =
|
|
4167
|
-
if (!
|
|
4164
|
+
const templatePath = join7(fileDir, templateUrlMatch[1]);
|
|
4165
|
+
if (!existsSync4(templatePath)) {
|
|
4168
4166
|
throw new Error(`Unable to inline Angular templateUrl "${templateUrlMatch[1]}": file not found at ${templatePath}`);
|
|
4169
4167
|
}
|
|
4170
4168
|
const templateRaw2 = readFileSync4(templatePath, "utf-8");
|
|
@@ -4200,7 +4198,7 @@ ${fields}
|
|
|
4200
4198
|
return source;
|
|
4201
4199
|
const stylePromises = urlMatches.map((urlMatch) => {
|
|
4202
4200
|
const styleUrl = urlMatch.replace(/['"]/g, "");
|
|
4203
|
-
return readAndEscapeFile(
|
|
4201
|
+
return readAndEscapeFile(join7(fileDir, styleUrl), stylePreprocessors);
|
|
4204
4202
|
});
|
|
4205
4203
|
const results = await Promise.all(stylePromises);
|
|
4206
4204
|
const inlinedStyles = results.filter(Boolean).map((escaped) => `\`${escaped}\``);
|
|
@@ -4211,7 +4209,7 @@ ${fields}
|
|
|
4211
4209
|
const styleUrlMatch = findUncommentedMatch(source, /styleUrl\s*:\s*['"]([^'"]+)['"]/);
|
|
4212
4210
|
if (!styleUrlMatch?.[1])
|
|
4213
4211
|
return source;
|
|
4214
|
-
const escaped = await readAndEscapeFile(
|
|
4212
|
+
const escaped = await readAndEscapeFile(join7(fileDir, styleUrlMatch[1]), stylePreprocessors);
|
|
4215
4213
|
if (!escaped)
|
|
4216
4214
|
return source;
|
|
4217
4215
|
return source.slice(0, styleUrlMatch.index) + `styles: [\`${escaped}\`]` + source.slice(styleUrlMatch.index + styleUrlMatch[0].length);
|
|
@@ -4247,12 +4245,12 @@ ${fields}
|
|
|
4247
4245
|
`${candidate}.js`,
|
|
4248
4246
|
`${candidate}.jsx`,
|
|
4249
4247
|
`${candidate}.json`,
|
|
4250
|
-
|
|
4251
|
-
|
|
4252
|
-
|
|
4253
|
-
|
|
4248
|
+
join7(candidate, "index.ts"),
|
|
4249
|
+
join7(candidate, "index.tsx"),
|
|
4250
|
+
join7(candidate, "index.js"),
|
|
4251
|
+
join7(candidate, "index.jsx")
|
|
4254
4252
|
];
|
|
4255
|
-
return candidates.find((file) =>
|
|
4253
|
+
return candidates.find((file) => existsSync4(file));
|
|
4256
4254
|
};
|
|
4257
4255
|
const resolveLocalImport = (specifier, fromDir) => {
|
|
4258
4256
|
if (specifier.startsWith(".") || specifier.startsWith("/")) {
|
|
@@ -4277,10 +4275,10 @@ ${fields}
|
|
|
4277
4275
|
const inputDir = dirname4(sourcePath);
|
|
4278
4276
|
const fileBase = basename3(sourcePath).replace(/\.[cm]?[tj]sx?$/, ".js");
|
|
4279
4277
|
if (inputDir === outDir || inputDir.startsWith(`${outDir}${sep}`)) {
|
|
4280
|
-
return
|
|
4278
|
+
return join7(inputDir, fileBase);
|
|
4281
4279
|
}
|
|
4282
4280
|
const relativeDir = inputDir.startsWith(baseDir) ? inputDir.substring(baseDir.length + 1) : inputDir;
|
|
4283
|
-
return
|
|
4281
|
+
return join7(outDir, relativeDir, fileBase);
|
|
4284
4282
|
};
|
|
4285
4283
|
const withCacheBuster = (specifier) => {
|
|
4286
4284
|
if (!cacheBuster)
|
|
@@ -4327,11 +4325,11 @@ ${fields}
|
|
|
4327
4325
|
if (visited.has(resolved))
|
|
4328
4326
|
return;
|
|
4329
4327
|
visited.add(resolved);
|
|
4330
|
-
if (resolved.endsWith(".json") &&
|
|
4328
|
+
if (resolved.endsWith(".json") && existsSync4(resolved)) {
|
|
4331
4329
|
const inputDir2 = dirname4(resolved);
|
|
4332
4330
|
const relativeDir2 = inputDir2.startsWith(baseDir) ? inputDir2.substring(baseDir.length + 1) : inputDir2;
|
|
4333
|
-
const targetDir2 =
|
|
4334
|
-
const targetPath2 =
|
|
4331
|
+
const targetDir2 = join7(outDir, relativeDir2);
|
|
4332
|
+
const targetPath2 = join7(targetDir2, basename3(resolved));
|
|
4335
4333
|
await fs.mkdir(targetDir2, { recursive: true });
|
|
4336
4334
|
await fs.copyFile(resolved, targetPath2);
|
|
4337
4335
|
allOutputs.push(targetPath2);
|
|
@@ -4340,7 +4338,7 @@ ${fields}
|
|
|
4340
4338
|
let actualPath = resolved;
|
|
4341
4339
|
if (!actualPath.endsWith(".ts"))
|
|
4342
4340
|
actualPath += ".ts";
|
|
4343
|
-
if (!
|
|
4341
|
+
if (!existsSync4(actualPath))
|
|
4344
4342
|
return;
|
|
4345
4343
|
let sourceCode = await fs.readFile(actualPath, "utf-8");
|
|
4346
4344
|
const inlined = await inlineResources(sourceCode, dirname4(actualPath), stylePreprocessors);
|
|
@@ -4378,7 +4376,7 @@ ${fields}
|
|
|
4378
4376
|
const isEntry = resolve6(actualPath) === resolve6(entryPath);
|
|
4379
4377
|
const contentHash = Bun.hash(sourceCode).toString(BASE_36_RADIX);
|
|
4380
4378
|
const cacheKey = actualPath;
|
|
4381
|
-
const shouldWriteFile = cacheBuster && isEntry ? true : jitContentCache.get(cacheKey) !== contentHash || !
|
|
4379
|
+
const shouldWriteFile = cacheBuster && isEntry ? true : jitContentCache.get(cacheKey) !== contentHash || !existsSync4(targetPath);
|
|
4382
4380
|
if (shouldWriteFile) {
|
|
4383
4381
|
const processedContent = transpileAndRewrite(sourceCode, relativeDir, actualPath, importRewrites);
|
|
4384
4382
|
await fs.mkdir(targetDir, { recursive: true });
|
|
@@ -4390,7 +4388,7 @@ ${fields}
|
|
|
4390
4388
|
};
|
|
4391
4389
|
await transpileFile(inputPath);
|
|
4392
4390
|
const entryOutputPath = toOutputPath(entryPath);
|
|
4393
|
-
if (
|
|
4391
|
+
if (existsSync4(entryOutputPath)) {
|
|
4394
4392
|
const entryOutput = await fs.readFile(entryOutputPath, "utf-8");
|
|
4395
4393
|
const withoutLegacyFlag = entryOutput.replace(/\nexport const __ABSOLUTE_PAGE_USES_LEGACY_ANIMATIONS__ = true;\n?/g, `
|
|
4396
4394
|
`);
|
|
@@ -4409,23 +4407,23 @@ export const __ABSOLUTE_PAGE_USES_LEGACY_ANIMATIONS__ = true;
|
|
|
4409
4407
|
return { clientPaths: [...emptyPaths], serverPaths: [...emptyPaths] };
|
|
4410
4408
|
}
|
|
4411
4409
|
const compiledRoot = compiledParent;
|
|
4412
|
-
const indexesDir =
|
|
4410
|
+
const indexesDir = join7(compiledParent, "indexes");
|
|
4413
4411
|
await traceAngularPhase("setup/create-indexes-dir", () => fs.mkdir(indexesDir, { recursive: true }));
|
|
4414
4412
|
const aotOutputs = hmr ? [] : await traceAngularPhase("aot/compile-files", () => compileAngularFiles(entryPoints.map((entry) => resolve6(entry)), compiledRoot, stylePreprocessors), { entries: entryPoints.length });
|
|
4415
4413
|
if (!hmr) {
|
|
4416
4414
|
await traceAngularPhase("aot/copy-json-resources", async () => {
|
|
4417
4415
|
const cwd = process.cwd();
|
|
4418
4416
|
const angularSrcDir = resolve6(outRoot);
|
|
4419
|
-
if (!
|
|
4417
|
+
if (!existsSync4(angularSrcDir))
|
|
4420
4418
|
return;
|
|
4421
4419
|
const jsonGlob = new Glob("**/*.json");
|
|
4422
4420
|
for (const rel of jsonGlob.scanSync({
|
|
4423
4421
|
absolute: false,
|
|
4424
4422
|
cwd: angularSrcDir
|
|
4425
4423
|
})) {
|
|
4426
|
-
const sourcePath =
|
|
4424
|
+
const sourcePath = join7(angularSrcDir, rel);
|
|
4427
4425
|
const cwdRel = relative4(cwd, sourcePath);
|
|
4428
|
-
const targetPath =
|
|
4426
|
+
const targetPath = join7(compiledRoot, cwdRel);
|
|
4429
4427
|
await fs.mkdir(dirname4(targetPath), { recursive: true });
|
|
4430
4428
|
await fs.copyFile(sourcePath, targetPath);
|
|
4431
4429
|
}
|
|
@@ -4442,24 +4440,24 @@ export const __ABSOLUTE_PAGE_USES_LEGACY_ANIMATIONS__ = true;
|
|
|
4442
4440
|
const fileBase = basename3(resolvedEntry).replace(/\.[tj]s$/, "");
|
|
4443
4441
|
const jsName = `${fileBase}.js`;
|
|
4444
4442
|
const compiledFallbackPaths = [
|
|
4445
|
-
|
|
4446
|
-
|
|
4447
|
-
|
|
4443
|
+
join7(compiledRoot, relativeEntry),
|
|
4444
|
+
join7(compiledRoot, "pages", jsName),
|
|
4445
|
+
join7(compiledRoot, jsName)
|
|
4448
4446
|
].map((file) => resolve6(file));
|
|
4449
4447
|
const resolveRawServerFile = (candidatePaths) => {
|
|
4450
4448
|
const normalizedCandidates = [
|
|
4451
4449
|
...candidatePaths.map((file) => resolve6(file)),
|
|
4452
4450
|
...compiledFallbackPaths
|
|
4453
4451
|
];
|
|
4454
|
-
let candidate = normalizedCandidates.find((file) =>
|
|
4452
|
+
let candidate = normalizedCandidates.find((file) => existsSync4(file) && file.endsWith(`${sep}${relativeEntry}`));
|
|
4455
4453
|
if (!candidate) {
|
|
4456
|
-
candidate = normalizedCandidates.find((file) =>
|
|
4454
|
+
candidate = normalizedCandidates.find((file) => existsSync4(file) && file.endsWith(`${sep}pages${sep}${jsName}`));
|
|
4457
4455
|
}
|
|
4458
4456
|
if (!candidate) {
|
|
4459
|
-
candidate = normalizedCandidates.find((file) =>
|
|
4457
|
+
candidate = normalizedCandidates.find((file) => existsSync4(file) && file.endsWith(`${sep}${jsName}`));
|
|
4460
4458
|
}
|
|
4461
4459
|
if (!candidate) {
|
|
4462
|
-
candidate = normalizedCandidates.find((file) =>
|
|
4460
|
+
candidate = normalizedCandidates.find((file) => existsSync4(file));
|
|
4463
4461
|
}
|
|
4464
4462
|
return candidate;
|
|
4465
4463
|
};
|
|
@@ -4467,11 +4465,11 @@ export const __ABSOLUTE_PAGE_USES_LEGACY_ANIMATIONS__ = true;
|
|
|
4467
4465
|
if (!rawServerFile) {
|
|
4468
4466
|
rawServerFile = await traceAngularPhase("wrapper/resolve-server-output-fallback", () => resolveRawServerFile([]), { entry: resolvedEntry });
|
|
4469
4467
|
}
|
|
4470
|
-
if (rawServerFile && !
|
|
4468
|
+
if (rawServerFile && !existsSync4(rawServerFile)) {
|
|
4471
4469
|
outputs = hmr ? await compileEntry() : aotOutputs;
|
|
4472
4470
|
rawServerFile = await traceAngularPhase("wrapper/resolve-server-output-retry", () => resolveRawServerFile(outputs), { entry: resolvedEntry });
|
|
4473
4471
|
}
|
|
4474
|
-
if (!rawServerFile || !
|
|
4472
|
+
if (!rawServerFile || !existsSync4(rawServerFile)) {
|
|
4475
4473
|
throw new Error(`Compiled output not found for ${entry}. Looking for: ${jsName}. Available: ${[
|
|
4476
4474
|
...outputs,
|
|
4477
4475
|
...compiledFallbackPaths
|
|
@@ -4492,8 +4490,8 @@ export const __ABSOLUTE_PAGE_USES_LEGACY_ANIMATIONS__ = true;
|
|
|
4492
4490
|
const usesLegacyAnimations = await traceAngularPhase("wrapper/detect-legacy-animations", () => usesLegacyAngularAnimations(resolvedEntry), { entry: resolvedEntry });
|
|
4493
4491
|
const serverContentHash = Bun.hash(original).toString(BASE_36_RADIX);
|
|
4494
4492
|
const cachedWrapper = wrapperOutputCache.get(resolvedEntry);
|
|
4495
|
-
const clientFile =
|
|
4496
|
-
if (hmr && cachedWrapper && cachedWrapper.serverHash === serverContentHash &&
|
|
4493
|
+
const clientFile = join7(indexesDir, jsName);
|
|
4494
|
+
if (hmr && cachedWrapper && cachedWrapper.serverHash === serverContentHash && existsSync4(clientFile) && (usesLegacyAnimations || !original.includes("__ABSOLUTE_PAGE_USES_LEGACY_ANIMATIONS__")) && (!usesLegacyAnimations || original.includes("__ABSOLUTE_PAGE_USES_LEGACY_ANIMATIONS__"))) {
|
|
4497
4495
|
return {
|
|
4498
4496
|
clientPath: clientFile,
|
|
4499
4497
|
indexUnchanged: true,
|
|
@@ -4523,7 +4521,7 @@ export const __ABSOLUTE_PAGE_USES_LEGACY_ANIMATIONS__ = true;
|
|
|
4523
4521
|
const angularDirAbs = resolve6(outRoot);
|
|
4524
4522
|
const appSourceAbs = resolve6(providersInjection.appProvidersSource);
|
|
4525
4523
|
const rel = relative4(angularDirAbs, appSourceAbs).replace(/\\/g, "/");
|
|
4526
|
-
return
|
|
4524
|
+
return join7(compiledParent, rel).replace(/\.[cm]?[tj]sx?$/, ".js");
|
|
4527
4525
|
})();
|
|
4528
4526
|
const appProvidersSpec = (() => {
|
|
4529
4527
|
const rel = relative4(dirname4(rawServerFile), compiledAppProvidersPath).replace(/\\/g, "/");
|
|
@@ -4550,7 +4548,6 @@ export const providers = [${fragments.join(", ")}];
|
|
|
4550
4548
|
await traceAngularPhase("wrapper/write-server-output", () => fs.writeFile(rawServerFile, rewritten, "utf-8"), { entry: resolvedEntry });
|
|
4551
4549
|
const relativePath = relative4(indexesDir, rawServerFile).replace(/\\/g, "/");
|
|
4552
4550
|
const normalizedImportPath = relativePath.startsWith(".") ? relativePath : `./${relativePath}`;
|
|
4553
|
-
const generatedProvidersImport = "var generatedProviders = null;";
|
|
4554
4551
|
const hmrPreamble = hmr ? `window.__HMR_FRAMEWORK__ = "angular";
|
|
4555
4552
|
import "${hmrClientPath}";
|
|
4556
4553
|
` : "";
|
|
@@ -4561,8 +4558,6 @@ import { provideClientHydration } from '@angular/platform-browser';
|
|
|
4561
4558
|
import { withHttpTransferCacheOptions } from '@angular/platform-browser';
|
|
4562
4559
|
import { provideZonelessChangeDetection, REQUEST_CONTEXT } from '@angular/core';
|
|
4563
4560
|
import * as pageModule from '${normalizedImportPath}';
|
|
4564
|
-
${generatedProvidersImport}
|
|
4565
|
-
|
|
4566
4561
|
var ${componentClassName} = pageModule.default;
|
|
4567
4562
|
// REQUEST_CONTEXT is hydrated from the SSR-serialized payload so client-side
|
|
4568
4563
|
// \`inject(REQUEST_CONTEXT)\` (or \`usePageContext<T>()\`) returns the same
|
|
@@ -4575,15 +4570,14 @@ var pageHasIslands = Boolean(pageModule.__ABSOLUTE_PAGE_HAS_ISLANDS__) || Boolea
|
|
|
4575
4570
|
var pageHasRawStreamingSlots = Boolean(document.querySelector('[data-absolute-raw-slot="true"]'));
|
|
4576
4571
|
var pageHasStreamingSlots = Boolean(document.querySelector('[data-absolute-slot="true"]'));
|
|
4577
4572
|
var contextProviders = [{ provide: REQUEST_CONTEXT, useValue: requestContext }];
|
|
4578
|
-
// Page-level providers
|
|
4579
|
-
//
|
|
4580
|
-
//
|
|
4581
|
-
//
|
|
4582
|
-
//
|
|
4583
|
-
|
|
4584
|
-
var
|
|
4585
|
-
|
|
4586
|
-
: (Array.isArray(legacyPageProviders) ? legacyPageProviders : []);
|
|
4573
|
+
// Page-level providers are injected directly into the page module's
|
|
4574
|
+
// server output by \`compileAngular\`'s providers-injection step
|
|
4575
|
+
// (\`...appProviders, provideRouter(routes), { APP_BASE_HREF }\`),
|
|
4576
|
+
// so the page module always exports its own ready-to-use \`providers\`
|
|
4577
|
+
// array. Same module, same \`@angular/core\` instance on both server
|
|
4578
|
+
// and client bundle.
|
|
4579
|
+
var pageProvidersExport = Reflect.get(pageModule, 'providers');
|
|
4580
|
+
var pageProviders = Array.isArray(pageProvidersExport) ? pageProvidersExport : [];
|
|
4587
4581
|
var absoluteHttpTransferCacheOptions = {
|
|
4588
4582
|
includePostRequests: false,
|
|
4589
4583
|
includeRequestsWithAuthHeaders: false,
|
|
@@ -4660,8 +4654,6 @@ import { provideClientHydration } from '@angular/platform-browser';
|
|
|
4660
4654
|
import { withHttpTransferCacheOptions } from '@angular/platform-browser';
|
|
4661
4655
|
import { enableProdMode, provideZonelessChangeDetection, REQUEST_CONTEXT } from '@angular/core';
|
|
4662
4656
|
import * as pageModule from '${normalizedImportPath}';
|
|
4663
|
-
${generatedProvidersImport}
|
|
4664
|
-
|
|
4665
4657
|
var ${componentClassName} = pageModule.default;
|
|
4666
4658
|
// REQUEST_CONTEXT is hydrated from the SSR-serialized payload so client-side
|
|
4667
4659
|
// \`inject(REQUEST_CONTEXT)\` (or \`usePageContext<T>()\`) returns the same
|
|
@@ -4674,15 +4666,14 @@ var pageHasIslands = Boolean(pageModule.__ABSOLUTE_PAGE_HAS_ISLANDS__) || Boolea
|
|
|
4674
4666
|
var pageHasRawStreamingSlots = Boolean(document.querySelector('[data-absolute-raw-slot="true"]'));
|
|
4675
4667
|
var pageHasStreamingSlots = Boolean(document.querySelector('[data-absolute-slot="true"]'));
|
|
4676
4668
|
var contextProviders = [{ provide: REQUEST_CONTEXT, useValue: requestContext }];
|
|
4677
|
-
// Page-level providers
|
|
4678
|
-
//
|
|
4679
|
-
//
|
|
4680
|
-
//
|
|
4681
|
-
//
|
|
4682
|
-
|
|
4683
|
-
var
|
|
4684
|
-
|
|
4685
|
-
: (Array.isArray(legacyPageProviders) ? legacyPageProviders : []);
|
|
4669
|
+
// Page-level providers are injected directly into the page module's
|
|
4670
|
+
// server output by \`compileAngular\`'s providers-injection step
|
|
4671
|
+
// (\`...appProviders, provideRouter(routes), { APP_BASE_HREF }\`),
|
|
4672
|
+
// so the page module always exports its own ready-to-use \`providers\`
|
|
4673
|
+
// array. Same module, same \`@angular/core\` instance on both server
|
|
4674
|
+
// and client bundle.
|
|
4675
|
+
var pageProvidersExport = Reflect.get(pageModule, 'providers');
|
|
4676
|
+
var pageProviders = Array.isArray(pageProvidersExport) ? pageProvidersExport : [];
|
|
4686
4677
|
var absoluteHttpTransferCacheOptions = {
|
|
4687
4678
|
includePostRequests: false,
|
|
4688
4679
|
includeRequestsWithAuthHeaders: false,
|
|
@@ -4751,7 +4742,7 @@ var init_compileAngular = __esm(() => {
|
|
|
4751
4742
|
init_stylePreprocessor();
|
|
4752
4743
|
init_generatedDir();
|
|
4753
4744
|
devClientDir = resolveDevClientDir();
|
|
4754
|
-
hmrClientPath =
|
|
4745
|
+
hmrClientPath = join7(devClientDir, "hmrClient.ts").replace(/\\/g, "/");
|
|
4755
4746
|
jitContentCache = new Map;
|
|
4756
4747
|
wrapperOutputCache = new Map;
|
|
4757
4748
|
});
|
|
@@ -13862,7 +13853,7 @@ init_constants();
|
|
|
13862
13853
|
import { AsyncLocalStorage as AsyncLocalStorage3 } from "async_hooks";
|
|
13863
13854
|
import { mkdir as mkdir3, symlink } from "fs/promises";
|
|
13864
13855
|
import { tmpdir } from "os";
|
|
13865
|
-
import { basename as basename4, dirname as dirname5, join as
|
|
13856
|
+
import { basename as basename4, dirname as dirname5, join as join8, resolve as resolve7 } from "path";
|
|
13866
13857
|
import { pathToFileURL as pathToFileURL2 } from "url";
|
|
13867
13858
|
|
|
13868
13859
|
// src/core/islandPageContext.ts
|
|
@@ -14699,38 +14690,6 @@ var runWithStreamingSlotWarningScope = (task, metadata) => ensureWarningStorage(
|
|
|
14699
14690
|
|
|
14700
14691
|
// src/angular/pageHandler.ts
|
|
14701
14692
|
init_ssrRender();
|
|
14702
|
-
|
|
14703
|
-
// src/angular/loadRouteMounts.ts
|
|
14704
|
-
init_generatedDir();
|
|
14705
|
-
import { existsSync as existsSync4 } from "fs";
|
|
14706
|
-
import { join as join7 } from "path";
|
|
14707
|
-
var cached = null;
|
|
14708
|
-
var loadAngularRouteMounts = async () => {
|
|
14709
|
-
if (cached)
|
|
14710
|
-
return cached;
|
|
14711
|
-
const filePath = join7(getFrameworkGeneratedDir("angular", process.cwd()), "route-mounts.ts");
|
|
14712
|
-
if (!existsSync4(filePath)) {
|
|
14713
|
-
cached = [];
|
|
14714
|
-
return cached;
|
|
14715
|
-
}
|
|
14716
|
-
try {
|
|
14717
|
-
const mod = await import(filePath);
|
|
14718
|
-
cached = mod.routeMounts ?? [];
|
|
14719
|
-
} catch (error) {
|
|
14720
|
-
console.warn("[absolute/angular] failed to load route-mounts:", error);
|
|
14721
|
-
cached = [];
|
|
14722
|
-
}
|
|
14723
|
-
return cached;
|
|
14724
|
-
};
|
|
14725
|
-
var matchAngularBasePath = (mounts, urlPath) => {
|
|
14726
|
-
for (const mount of mounts) {
|
|
14727
|
-
if (mount.pattern.test(urlPath))
|
|
14728
|
-
return mount.basePath;
|
|
14729
|
-
}
|
|
14730
|
-
return "/";
|
|
14731
|
-
};
|
|
14732
|
-
|
|
14733
|
-
// src/angular/pageHandler.ts
|
|
14734
14693
|
var lastSelector = "angular-page";
|
|
14735
14694
|
var isRecord5 = (value) => typeof value === "object" && value !== null;
|
|
14736
14695
|
var isAngularComponent2 = (value) => typeof value === "function";
|
|
@@ -14751,11 +14710,11 @@ var ensureAngularCompiler = () => {
|
|
|
14751
14710
|
return compilerImportPromise;
|
|
14752
14711
|
};
|
|
14753
14712
|
var readAngularPageModule = (value) => isRecord5(value) ? value : null;
|
|
14754
|
-
var resolveAngularSsrOutDir = () => process.env.ABSOLUTE_ANGULAR_SSR_OUTDIR ??
|
|
14713
|
+
var resolveAngularSsrOutDir = () => process.env.ABSOLUTE_ANGULAR_SSR_OUTDIR ?? join8(tmpdir(), "absolutejs", "generated", "angular-ssr");
|
|
14755
14714
|
var createAngularRuntimeCacheBuster = () => `${Date.now().toString(BASE_36_RADIX)}.${Math.random().toString(BASE_36_RADIX).substring(2, RANDOM_ID_END_INDEX)}`;
|
|
14756
14715
|
var ensureAngularSsrNodeModules = async (outDir) => {
|
|
14757
14716
|
const outRoot = resolve7(dirname5(dirname5(outDir)));
|
|
14758
|
-
const nodeModulesLink =
|
|
14717
|
+
const nodeModulesLink = join8(outRoot, "node_modules");
|
|
14759
14718
|
if (process.env.ABSOLUTE_ANGULAR_SSR_OUTDIR) {
|
|
14760
14719
|
return;
|
|
14761
14720
|
}
|
|
@@ -14871,18 +14830,8 @@ var handleAngularPageRequest = async (input) => {
|
|
|
14871
14830
|
const sanitizer = getSsrSanitizer(deps);
|
|
14872
14831
|
const pageProvidersExport = Reflect.get(pageModule, "providers");
|
|
14873
14832
|
const pageProviders = Array.isArray(pageProvidersExport) ? pageProvidersExport : [];
|
|
14874
|
-
const routeMounts = await loadAngularRouteMounts();
|
|
14875
|
-
const requestUrlPath = input.request ? new URL(input.request.url).pathname : "/";
|
|
14876
|
-
const inferredBasePath = matchAngularBasePath(routeMounts, requestUrlPath);
|
|
14877
|
-
const inferredBasePathProvider = inferredBasePath === "/" ? [] : [
|
|
14878
|
-
{
|
|
14879
|
-
provide: deps.APP_BASE_HREF,
|
|
14880
|
-
useValue: inferredBasePath
|
|
14881
|
-
}
|
|
14882
|
-
];
|
|
14883
14833
|
const combinedProviders = [
|
|
14884
14834
|
...await buildRouterRedirectProviders(deps, responseInit),
|
|
14885
|
-
...inferredBasePathProvider,
|
|
14886
14835
|
...pageProviders,
|
|
14887
14836
|
...await buildServerAnimationProviders(usesLegacyAnimations)
|
|
14888
14837
|
];
|
|
@@ -15438,5 +15387,5 @@ export {
|
|
|
15438
15387
|
ABSOLUTE_HTTP_TRANSFER_CACHE_SKIP_HEADER
|
|
15439
15388
|
};
|
|
15440
15389
|
|
|
15441
|
-
//# debugId=
|
|
15390
|
+
//# debugId=9C93C7CD63419DAF64756E2164756E21
|
|
15442
15391
|
//# sourceMappingURL=index.js.map
|