@angular-devkit/build-angular 17.0.0-next.7 → 17.0.0-next.9
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 +11 -11
- package/src/builders/application/build-action.d.ts +2 -0
- package/src/builders/application/build-action.js +6 -3
- package/src/builders/application/execute-build.js +40 -70
- package/src/builders/application/execute-post-bundle.d.ts +24 -0
- package/src/builders/application/execute-post-bundle.js +88 -0
- package/src/builders/application/i18n.js +13 -35
- package/src/builders/application/index.d.ts +21 -5
- package/src/builders/application/index.js +25 -10
- package/src/builders/application/options.d.ts +10 -1
- package/src/builders/application/options.js +7 -3
- package/src/builders/application/schema.d.ts +0 -1
- package/src/builders/application/schema.js +1 -1
- package/src/builders/application/schema.json +1 -1
- package/src/builders/browser/schema.d.ts +0 -1
- package/src/builders/browser/schema.js +1 -1
- package/src/builders/browser/schema.json +1 -1
- package/src/builders/browser-esbuild/builder-status-warnings.d.ts +1 -1
- package/src/builders/browser-esbuild/builder-status-warnings.js +6 -7
- package/src/builders/browser-esbuild/index.d.ts +4 -3
- package/src/builders/browser-esbuild/index.js +45 -3
- package/src/builders/browser-esbuild/schema.d.ts +0 -1
- package/src/builders/browser-esbuild/schema.js +1 -1
- package/src/builders/browser-esbuild/schema.json +1 -1
- package/src/builders/dev-server/builder.d.ts +2 -1
- package/src/builders/dev-server/builder.js +10 -4
- package/src/builders/dev-server/load-proxy-config.js +3 -2
- package/src/builders/dev-server/options.d.ts +1 -1
- package/src/builders/dev-server/options.js +4 -3
- package/src/builders/dev-server/schema.d.ts +8 -1
- package/src/builders/dev-server/schema.js +1 -1
- package/src/builders/dev-server/schema.json +7 -1
- package/src/builders/dev-server/vite-server.d.ts +4 -2
- package/src/builders/dev-server/vite-server.js +30 -8
- package/src/builders/dev-server/webpack-server.js +2 -2
- package/src/builders/extract-i18n/application-extraction.js +3 -3
- package/src/builders/extract-i18n/builder.js +4 -3
- package/src/builders/extract-i18n/options.d.ts +1 -1
- package/src/builders/extract-i18n/options.js +4 -3
- package/src/builders/extract-i18n/schema.d.ts +8 -1
- package/src/builders/extract-i18n/schema.js +1 -1
- package/src/builders/extract-i18n/schema.json +7 -1
- package/src/builders/extract-i18n/webpack-extraction.js +2 -2
- package/src/builders/jest/index.js +2 -2
- package/src/builders/protractor/index.js +2 -2
- package/src/index.d.ts +1 -0
- package/src/index.js +4 -2
- package/src/tools/esbuild/angular/compilation-state.d.ts +15 -0
- package/src/tools/esbuild/angular/compilation-state.js +43 -0
- package/src/tools/esbuild/angular/compiler-plugin.d.ts +2 -12
- package/src/tools/esbuild/angular/compiler-plugin.js +34 -52
- package/src/tools/esbuild/angular/component-stylesheets.d.ts +47 -0
- package/src/tools/esbuild/angular/component-stylesheets.js +147 -0
- package/src/tools/esbuild/angular/jit-plugin-callbacks.d.ts +2 -5
- package/src/tools/esbuild/angular/jit-plugin-callbacks.js +11 -6
- package/src/tools/esbuild/angular/source-file-cache.d.ts +19 -0
- package/src/tools/esbuild/angular/source-file-cache.js +67 -0
- package/src/tools/esbuild/angular/uri.d.ts +1 -1
- package/src/tools/esbuild/application-code-bundle.d.ts +1 -1
- package/src/tools/esbuild/application-code-bundle.js +67 -6
- package/src/tools/esbuild/budget-stats.d.ts +19 -0
- package/src/tools/esbuild/budget-stats.js +55 -0
- package/src/tools/esbuild/bundler-context.d.ts +12 -1
- package/src/tools/esbuild/bundler-context.js +29 -3
- package/src/tools/esbuild/bundler-execution-result.d.ts +12 -14
- package/src/tools/esbuild/bundler-execution-result.js +6 -3
- package/src/tools/esbuild/compiler-plugin-options.d.ts +2 -1
- package/src/tools/esbuild/compiler-plugin-options.js +2 -1
- package/src/tools/esbuild/global-styles.js +2 -1
- package/src/tools/esbuild/i18n-inliner.d.ts +3 -3
- package/src/tools/esbuild/i18n-inliner.js +12 -3
- package/src/tools/esbuild/index-html-generator.d.ts +2 -3
- package/src/tools/esbuild/index-html-generator.js +5 -2
- package/src/tools/esbuild/stylesheets/bundle-options.d.ts +2 -24
- package/src/tools/esbuild/stylesheets/bundle-options.js +4 -106
- package/src/tools/esbuild/stylesheets/less-language.js +37 -10
- package/src/tools/esbuild/utils.d.ts +13 -7
- package/src/tools/esbuild/utils.js +109 -37
- package/src/utils/build-options.d.ts +1 -1
- package/src/utils/build-options.js +1 -1
- package/src/utils/bundle-calculator.d.ts +16 -3
- package/src/utils/bundle-calculator.js +21 -10
- package/src/utils/server-rendering/{esm-in-memory-file-loader.d.ts → esm-in-memory-loader/loader-hooks.d.ts} +1 -0
- package/src/utils/server-rendering/esm-in-memory-loader/loader-hooks.js +82 -0
- package/src/utils/server-rendering/esm-in-memory-loader/node-18-utils.d.ts +10 -0
- package/src/utils/server-rendering/esm-in-memory-loader/node-18-utils.js +39 -0
- package/src/utils/server-rendering/esm-in-memory-loader/register-hooks.d.ts +8 -0
- package/src/utils/server-rendering/esm-in-memory-loader/register-hooks.js +16 -0
- package/src/utils/server-rendering/prerender.d.ts +2 -2
- package/src/utils/server-rendering/prerender.js +10 -18
- package/src/utils/server-rendering/render-worker.d.ts +1 -1
- package/src/utils/server-rendering/render-worker.js +1 -1
- package/src/utils/server-rendering/routes-extractor-worker.d.ts +1 -1
- package/src/utils/server-rendering/routes-extractor-worker.js +1 -1
- package/src/utils/service-worker.d.ts +4 -9
- package/src/utils/service-worker.js +5 -2
- package/src/utils/server-rendering/esm-in-memory-file-loader.js +0 -76
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright Google LLC All Rights Reserved.
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://angular.io/license
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.load = exports.resolve = exports.initialize = void 0;
|
|
11
|
+
const node_path_1 = require("node:path");
|
|
12
|
+
const node_url_1 = require("node:url");
|
|
13
|
+
const url_1 = require("url");
|
|
14
|
+
const javascript_transformer_1 = require("../../../tools/esbuild/javascript-transformer");
|
|
15
|
+
const node_18_utils_1 = require("./node-18-utils");
|
|
16
|
+
const TRANSFORMED_FILES = {};
|
|
17
|
+
const CHUNKS_REGEXP = /file:\/\/\/(main\.server|chunk-\w+)\.mjs/;
|
|
18
|
+
let workspaceRootFile;
|
|
19
|
+
let outputFiles;
|
|
20
|
+
const javascriptTransformer = new javascript_transformer_1.JavaScriptTransformer(
|
|
21
|
+
// Always enable JIT linking to support applications built with and without AOT.
|
|
22
|
+
// In a development environment the additional scope information does not
|
|
23
|
+
// have a negative effect unlike production where final output size is relevant.
|
|
24
|
+
{ sourcemap: true, jit: true }, 1);
|
|
25
|
+
(0, node_18_utils_1.callInitializeIfNeeded)(initialize);
|
|
26
|
+
function initialize(data) {
|
|
27
|
+
workspaceRootFile = (0, node_url_1.pathToFileURL)((0, node_path_1.join)(data.workspaceRoot, 'index.mjs')).href;
|
|
28
|
+
outputFiles = data.outputFiles;
|
|
29
|
+
}
|
|
30
|
+
exports.initialize = initialize;
|
|
31
|
+
function resolve(specifier, context, nextResolve) {
|
|
32
|
+
if (!isFileProtocol(specifier)) {
|
|
33
|
+
const normalizedSpecifier = specifier.replace(/^\.\//, '');
|
|
34
|
+
if (normalizedSpecifier in outputFiles) {
|
|
35
|
+
return {
|
|
36
|
+
format: 'module',
|
|
37
|
+
shortCircuit: true,
|
|
38
|
+
// File URLs need to absolute. In Windows these also need to include the drive.
|
|
39
|
+
// The `/` will be resolved to the drive letter.
|
|
40
|
+
url: (0, node_url_1.pathToFileURL)('/' + normalizedSpecifier).href,
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
// Defer to the next hook in the chain, which would be the
|
|
45
|
+
// Node.js default resolve if this is the last user-specified loader.
|
|
46
|
+
return nextResolve(specifier, isBundleEntryPointOrChunk(context) ? { ...context, parentURL: workspaceRootFile } : context);
|
|
47
|
+
}
|
|
48
|
+
exports.resolve = resolve;
|
|
49
|
+
async function load(url, context, nextLoad) {
|
|
50
|
+
if (isFileProtocol(url)) {
|
|
51
|
+
const filePath = (0, url_1.fileURLToPath)(url);
|
|
52
|
+
// Remove '/' or drive letter for Windows that was added in the above 'resolve'.
|
|
53
|
+
let source = outputFiles[(0, node_path_1.relative)('/', filePath)] ?? TRANSFORMED_FILES[filePath];
|
|
54
|
+
if (source === undefined) {
|
|
55
|
+
source = TRANSFORMED_FILES[filePath] = Buffer.from(await javascriptTransformer.transformFile(filePath)).toString('utf-8');
|
|
56
|
+
}
|
|
57
|
+
if (source !== undefined) {
|
|
58
|
+
const { format } = context;
|
|
59
|
+
return {
|
|
60
|
+
format,
|
|
61
|
+
shortCircuit: true,
|
|
62
|
+
source,
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
// Let Node.js handle all other URLs.
|
|
67
|
+
return nextLoad(url);
|
|
68
|
+
}
|
|
69
|
+
exports.load = load;
|
|
70
|
+
function isFileProtocol(url) {
|
|
71
|
+
return url.startsWith('file://');
|
|
72
|
+
}
|
|
73
|
+
function handleProcessExit() {
|
|
74
|
+
void javascriptTransformer.close();
|
|
75
|
+
}
|
|
76
|
+
function isBundleEntryPointOrChunk(context) {
|
|
77
|
+
return !!context.parentURL && CHUNKS_REGEXP.test(context.parentURL);
|
|
78
|
+
}
|
|
79
|
+
process.once('exit', handleProcessExit);
|
|
80
|
+
process.once('SIGINT', handleProcessExit);
|
|
81
|
+
process.once('uncaughtException', handleProcessExit);
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVyLWhvb2tzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhcl9kZXZraXQvYnVpbGRfYW5ndWxhci9zcmMvdXRpbHMvc2VydmVyLXJlbmRlcmluZy9lc20taW4tbWVtb3J5LWxvYWRlci9sb2FkZXItaG9va3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7O0FBRUgseUNBQTJDO0FBQzNDLHVDQUF5QztBQUN6Qyw2QkFBb0M7QUFDcEMsMEZBQXNGO0FBQ3RGLG1EQUF5RDtBQVl6RCxNQUFNLGlCQUFpQixHQUEyQixFQUFFLENBQUM7QUFDckQsTUFBTSxhQUFhLEdBQUcsMENBQTBDLENBQUM7QUFDakUsSUFBSSxpQkFBeUIsQ0FBQztBQUM5QixJQUFJLFdBQW1DLENBQUM7QUFFeEMsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLDhDQUFxQjtBQUNyRCxnRkFBZ0Y7QUFDaEYseUVBQXlFO0FBQ3pFLGdGQUFnRjtBQUNoRixFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxFQUM5QixDQUFDLENBQ0YsQ0FBQztBQUVGLElBQUEsc0NBQXNCLEVBQUMsVUFBVSxDQUFDLENBQUM7QUFFbkMsU0FBZ0IsVUFBVSxDQUFDLElBQXFDO0lBQzlELGlCQUFpQixHQUFHLElBQUEsd0JBQWEsRUFBQyxJQUFBLGdCQUFJLEVBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUM5RSxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztBQUNqQyxDQUFDO0FBSEQsZ0NBR0M7QUFFRCxTQUFnQixPQUFPLENBQ3JCLFNBQWlCLEVBQ2pCLE9BQTBDLEVBQzFDLFdBQXFCO0lBRXJCLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLEVBQUU7UUFDOUIsTUFBTSxtQkFBbUIsR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUMzRCxJQUFJLG1CQUFtQixJQUFJLFdBQVcsRUFBRTtZQUN0QyxPQUFPO2dCQUNMLE1BQU0sRUFBRSxRQUFRO2dCQUNoQixZQUFZLEVBQUUsSUFBSTtnQkFDbEIsK0VBQStFO2dCQUMvRSxnREFBZ0Q7Z0JBQ2hELEdBQUcsRUFBRSxJQUFBLHdCQUFhLEVBQUMsR0FBRyxHQUFHLG1CQUFtQixDQUFDLENBQUMsSUFBSTthQUNuRCxDQUFDO1NBQ0g7S0FDRjtJQUVELDBEQUEwRDtJQUMxRCxxRUFBcUU7SUFDckUsT0FBTyxXQUFXLENBQ2hCLFNBQVMsRUFDVCx5QkFBeUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUM1RixDQUFDO0FBQ0osQ0FBQztBQXhCRCwwQkF3QkM7QUFFTSxLQUFLLFVBQVUsSUFBSSxDQUFDLEdBQVcsRUFBRSxPQUFtQyxFQUFFLFFBQWtCO0lBQzdGLElBQUksY0FBYyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1FBQ3ZCLE1BQU0sUUFBUSxHQUFHLElBQUEsbUJBQWEsRUFBQyxHQUFHLENBQUMsQ0FBQztRQUNwQyxnRkFBZ0Y7UUFDaEYsSUFBSSxNQUFNLEdBQUcsV0FBVyxDQUFDLElBQUEsb0JBQVEsRUFBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLENBQUMsSUFBSSxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUVqRixJQUFJLE1BQU0sS0FBSyxTQUFTLEVBQUU7WUFDeEIsTUFBTSxHQUFHLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQ2hELE1BQU0scUJBQXFCLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUNwRCxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUNyQjtRQUVELElBQUksTUFBTSxLQUFLLFNBQVMsRUFBRTtZQUN4QixNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsT0FBTyxDQUFDO1lBRTNCLE9BQU87Z0JBQ0wsTUFBTTtnQkFDTixZQUFZLEVBQUUsSUFBSTtnQkFDbEIsTUFBTTthQUNQLENBQUM7U0FDSDtLQUNGO0lBRUQscUNBQXFDO0lBQ3JDLE9BQU8sUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ3ZCLENBQUM7QUF6QkQsb0JBeUJDO0FBRUQsU0FBUyxjQUFjLENBQUMsR0FBVztJQUNqQyxPQUFPLEdBQUcsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDbkMsQ0FBQztBQUVELFNBQVMsaUJBQWlCO0lBQ3hCLEtBQUsscUJBQXFCLENBQUMsS0FBSyxFQUFFLENBQUM7QUFDckMsQ0FBQztBQUVELFNBQVMseUJBQXlCLENBQUMsT0FBMEM7SUFDM0UsT0FBTyxDQUFDLENBQUMsT0FBTyxDQUFDLFNBQVMsSUFBSSxhQUFhLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUN0RSxDQUFDO0FBRUQsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztBQUN4QyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0FBQzFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsaUJBQWlCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgeyBqb2luLCByZWxhdGl2ZSB9IGZyb20gJ25vZGU6cGF0aCc7XG5pbXBvcnQgeyBwYXRoVG9GaWxlVVJMIH0gZnJvbSAnbm9kZTp1cmwnO1xuaW1wb3J0IHsgZmlsZVVSTFRvUGF0aCB9IGZyb20gJ3VybCc7XG5pbXBvcnQgeyBKYXZhU2NyaXB0VHJhbnNmb3JtZXIgfSBmcm9tICcuLi8uLi8uLi90b29scy9lc2J1aWxkL2phdmFzY3JpcHQtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgY2FsbEluaXRpYWxpemVJZk5lZWRlZCB9IGZyb20gJy4vbm9kZS0xOC11dGlscyc7XG5cbi8qKlxuICogTm9kZS5qcyBFU00gbG9hZGVyIHRvIHJlZGlyZWN0IGltcG9ydHMgdG8gaW4gbWVtb3J5IGZpbGVzLlxuICogQHNlZTogaHR0cHM6Ly9ub2RlanMub3JnL2FwaS9lc20uaHRtbCNsb2FkZXJzIGZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IGxvYWRlcnMuXG4gKi9cblxuZXhwb3J0IGludGVyZmFjZSBFU01Jbk1lbW9yeUZpbGVMb2FkZXJXb3JrZXJEYXRhIHtcbiAgb3V0cHV0RmlsZXM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIHdvcmtzcGFjZVJvb3Q6IHN0cmluZztcbn1cblxuY29uc3QgVFJBTlNGT1JNRURfRklMRVM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcbmNvbnN0IENIVU5LU19SRUdFWFAgPSAvZmlsZTpcXC9cXC9cXC8obWFpblxcLnNlcnZlcnxjaHVuay1cXHcrKVxcLm1qcy87XG5sZXQgd29ya3NwYWNlUm9vdEZpbGU6IHN0cmluZztcbmxldCBvdXRwdXRGaWxlczogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcblxuY29uc3QgamF2YXNjcmlwdFRyYW5zZm9ybWVyID0gbmV3IEphdmFTY3JpcHRUcmFuc2Zvcm1lcihcbiAgLy8gQWx3YXlzIGVuYWJsZSBKSVQgbGlua2luZyB0byBzdXBwb3J0IGFwcGxpY2F0aW9ucyBidWlsdCB3aXRoIGFuZCB3aXRob3V0IEFPVC5cbiAgLy8gSW4gYSBkZXZlbG9wbWVudCBlbnZpcm9ubWVudCB0aGUgYWRkaXRpb25hbCBzY29wZSBpbmZvcm1hdGlvbiBkb2VzIG5vdFxuICAvLyBoYXZlIGEgbmVnYXRpdmUgZWZmZWN0IHVubGlrZSBwcm9kdWN0aW9uIHdoZXJlIGZpbmFsIG91dHB1dCBzaXplIGlzIHJlbGV2YW50LlxuICB7IHNvdXJjZW1hcDogdHJ1ZSwgaml0OiB0cnVlIH0sXG4gIDEsXG4pO1xuXG5jYWxsSW5pdGlhbGl6ZUlmTmVlZGVkKGluaXRpYWxpemUpO1xuXG5leHBvcnQgZnVuY3Rpb24gaW5pdGlhbGl6ZShkYXRhOiBFU01Jbk1lbW9yeUZpbGVMb2FkZXJXb3JrZXJEYXRhKSB7XG4gIHdvcmtzcGFjZVJvb3RGaWxlID0gcGF0aFRvRmlsZVVSTChqb2luKGRhdGEud29ya3NwYWNlUm9vdCwgJ2luZGV4Lm1qcycpKS5ocmVmO1xuICBvdXRwdXRGaWxlcyA9IGRhdGEub3V0cHV0RmlsZXM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlKFxuICBzcGVjaWZpZXI6IHN0cmluZyxcbiAgY29udGV4dDogeyBwYXJlbnRVUkw6IHVuZGVmaW5lZCB8IHN0cmluZyB9LFxuICBuZXh0UmVzb2x2ZTogRnVuY3Rpb24sXG4pIHtcbiAgaWYgKCFpc0ZpbGVQcm90b2NvbChzcGVjaWZpZXIpKSB7XG4gICAgY29uc3Qgbm9ybWFsaXplZFNwZWNpZmllciA9IHNwZWNpZmllci5yZXBsYWNlKC9eXFwuXFwvLywgJycpO1xuICAgIGlmIChub3JtYWxpemVkU3BlY2lmaWVyIGluIG91dHB1dEZpbGVzKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBmb3JtYXQ6ICdtb2R1bGUnLFxuICAgICAgICBzaG9ydENpcmN1aXQ6IHRydWUsXG4gICAgICAgIC8vIEZpbGUgVVJMcyBuZWVkIHRvIGFic29sdXRlLiBJbiBXaW5kb3dzIHRoZXNlIGFsc28gbmVlZCB0byBpbmNsdWRlIHRoZSBkcml2ZS5cbiAgICAgICAgLy8gVGhlIGAvYCB3aWxsIGJlIHJlc29sdmVkIHRvIHRoZSBkcml2ZSBsZXR0ZXIuXG4gICAgICAgIHVybDogcGF0aFRvRmlsZVVSTCgnLycgKyBub3JtYWxpemVkU3BlY2lmaWVyKS5ocmVmLFxuICAgICAgfTtcbiAgICB9XG4gIH1cblxuICAvLyBEZWZlciB0byB0aGUgbmV4dCBob29rIGluIHRoZSBjaGFpbiwgd2hpY2ggd291bGQgYmUgdGhlXG4gIC8vIE5vZGUuanMgZGVmYXVsdCByZXNvbHZlIGlmIHRoaXMgaXMgdGhlIGxhc3QgdXNlci1zcGVjaWZpZWQgbG9hZGVyLlxuICByZXR1cm4gbmV4dFJlc29sdmUoXG4gICAgc3BlY2lmaWVyLFxuICAgIGlzQnVuZGxlRW50cnlQb2ludE9yQ2h1bmsoY29udGV4dCkgPyB7IC4uLmNvbnRleHQsIHBhcmVudFVSTDogd29ya3NwYWNlUm9vdEZpbGUgfSA6IGNvbnRleHQsXG4gICk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBsb2FkKHVybDogc3RyaW5nLCBjb250ZXh0OiB7IGZvcm1hdD86IHN0cmluZyB8IG51bGwgfSwgbmV4dExvYWQ6IEZ1bmN0aW9uKSB7XG4gIGlmIChpc0ZpbGVQcm90b2NvbCh1cmwpKSB7XG4gICAgY29uc3QgZmlsZVBhdGggPSBmaWxlVVJMVG9QYXRoKHVybCk7XG4gICAgLy8gUmVtb3ZlICcvJyBvciBkcml2ZSBsZXR0ZXIgZm9yIFdpbmRvd3MgdGhhdCB3YXMgYWRkZWQgaW4gdGhlIGFib3ZlICdyZXNvbHZlJy5cbiAgICBsZXQgc291cmNlID0gb3V0cHV0RmlsZXNbcmVsYXRpdmUoJy8nLCBmaWxlUGF0aCldID8/IFRSQU5TRk9STUVEX0ZJTEVTW2ZpbGVQYXRoXTtcblxuICAgIGlmIChzb3VyY2UgPT09IHVuZGVmaW5lZCkge1xuICAgICAgc291cmNlID0gVFJBTlNGT1JNRURfRklMRVNbZmlsZVBhdGhdID0gQnVmZmVyLmZyb20oXG4gICAgICAgIGF3YWl0IGphdmFzY3JpcHRUcmFuc2Zvcm1lci50cmFuc2Zvcm1GaWxlKGZpbGVQYXRoKSxcbiAgICAgICkudG9TdHJpbmcoJ3V0Zi04Jyk7XG4gICAgfVxuXG4gICAgaWYgKHNvdXJjZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBjb25zdCB7IGZvcm1hdCB9ID0gY29udGV4dDtcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZm9ybWF0LFxuICAgICAgICBzaG9ydENpcmN1aXQ6IHRydWUsXG4gICAgICAgIHNvdXJjZSxcbiAgICAgIH07XG4gICAgfVxuICB9XG5cbiAgLy8gTGV0IE5vZGUuanMgaGFuZGxlIGFsbCBvdGhlciBVUkxzLlxuICByZXR1cm4gbmV4dExvYWQodXJsKTtcbn1cblxuZnVuY3Rpb24gaXNGaWxlUHJvdG9jb2wodXJsOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgcmV0dXJuIHVybC5zdGFydHNXaXRoKCdmaWxlOi8vJyk7XG59XG5cbmZ1bmN0aW9uIGhhbmRsZVByb2Nlc3NFeGl0KCk6IHZvaWQge1xuICB2b2lkIGphdmFzY3JpcHRUcmFuc2Zvcm1lci5jbG9zZSgpO1xufVxuXG5mdW5jdGlvbiBpc0J1bmRsZUVudHJ5UG9pbnRPckNodW5rKGNvbnRleHQ6IHsgcGFyZW50VVJMOiB1bmRlZmluZWQgfCBzdHJpbmcgfSk6IGJvb2xlYW4ge1xuICByZXR1cm4gISFjb250ZXh0LnBhcmVudFVSTCAmJiBDSFVOS1NfUkVHRVhQLnRlc3QoY29udGV4dC5wYXJlbnRVUkwpO1xufVxuXG5wcm9jZXNzLm9uY2UoJ2V4aXQnLCBoYW5kbGVQcm9jZXNzRXhpdCk7XG5wcm9jZXNzLm9uY2UoJ1NJR0lOVCcsIGhhbmRsZVByb2Nlc3NFeGl0KTtcbnByb2Nlc3Mub25jZSgndW5jYXVnaHRFeGNlcHRpb24nLCBoYW5kbGVQcm9jZXNzRXhpdCk7XG4iXX0=
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.io/license
|
|
7
|
+
*/
|
|
8
|
+
/** Call the initialize hook when running on Node.js 18 */
|
|
9
|
+
export declare function callInitializeIfNeeded(initialize: (typeof import('./loader-hooks'))['initialize']): void;
|
|
10
|
+
export declare function getESMLoaderArgs(): string[];
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright Google LLC All Rights Reserved.
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://angular.io/license
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.getESMLoaderArgs = exports.callInitializeIfNeeded = void 0;
|
|
11
|
+
const node_path_1 = require("node:path");
|
|
12
|
+
const node_url_1 = require("node:url");
|
|
13
|
+
const node_worker_threads_1 = require("node:worker_threads");
|
|
14
|
+
let IS_NODE_18;
|
|
15
|
+
function isNode18() {
|
|
16
|
+
return (IS_NODE_18 ??= process.versions.node.startsWith('18.'));
|
|
17
|
+
}
|
|
18
|
+
/** Call the initialize hook when running on Node.js 18 */
|
|
19
|
+
function callInitializeIfNeeded(initialize) {
|
|
20
|
+
if (isNode18()) {
|
|
21
|
+
initialize(node_worker_threads_1.workerData);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
exports.callInitializeIfNeeded = callInitializeIfNeeded;
|
|
25
|
+
function getESMLoaderArgs() {
|
|
26
|
+
if (isNode18()) {
|
|
27
|
+
return [
|
|
28
|
+
'--no-warnings',
|
|
29
|
+
'--loader',
|
|
30
|
+
(0, node_url_1.pathToFileURL)((0, node_path_1.join)(__dirname, 'loader-hooks.js')).href, // Loader cannot be an absolute path on Windows.
|
|
31
|
+
];
|
|
32
|
+
}
|
|
33
|
+
return [
|
|
34
|
+
'--import',
|
|
35
|
+
(0, node_url_1.pathToFileURL)((0, node_path_1.join)(__dirname, 'register-hooks.js')).href, // Loader cannot be an absolute path on Windows.
|
|
36
|
+
];
|
|
37
|
+
}
|
|
38
|
+
exports.getESMLoaderArgs = getESMLoaderArgs;
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS0xOC11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXJfZGV2a2l0L2J1aWxkX2FuZ3VsYXIvc3JjL3V0aWxzL3NlcnZlci1yZW5kZXJpbmcvZXNtLWluLW1lbW9yeS1sb2FkZXIvbm9kZS0xOC11dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7QUFFSCx5Q0FBaUM7QUFDakMsdUNBQXlDO0FBQ3pDLDZEQUFpRDtBQUVqRCxJQUFJLFVBQStCLENBQUM7QUFDcEMsU0FBUyxRQUFRO0lBQ2YsT0FBTyxDQUFDLFVBQVUsS0FBSyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztBQUNsRSxDQUFDO0FBRUQsMERBQTBEO0FBQzFELFNBQWdCLHNCQUFzQixDQUNwQyxVQUEyRDtJQUUzRCxJQUFJLFFBQVEsRUFBRSxFQUFFO1FBQ2QsVUFBVSxDQUFDLGdDQUFVLENBQUMsQ0FBQztLQUN4QjtBQUNILENBQUM7QUFORCx3REFNQztBQUVELFNBQWdCLGdCQUFnQjtJQUM5QixJQUFJLFFBQVEsRUFBRSxFQUFFO1FBQ2QsT0FBTztZQUNMLGVBQWU7WUFDZixVQUFVO1lBQ1YsSUFBQSx3QkFBYSxFQUFDLElBQUEsZ0JBQUksRUFBQyxTQUFTLEVBQUUsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxnREFBZ0Q7U0FDekcsQ0FBQztLQUNIO0lBRUQsT0FBTztRQUNMLFVBQVU7UUFDVixJQUFBLHdCQUFhLEVBQUMsSUFBQSxnQkFBSSxFQUFDLFNBQVMsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLGdEQUFnRDtLQUMzRyxDQUFDO0FBQ0osQ0FBQztBQWJELDRDQWFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7IGpvaW4gfSBmcm9tICdub2RlOnBhdGgnO1xuaW1wb3J0IHsgcGF0aFRvRmlsZVVSTCB9IGZyb20gJ25vZGU6dXJsJztcbmltcG9ydCB7IHdvcmtlckRhdGEgfSBmcm9tICdub2RlOndvcmtlcl90aHJlYWRzJztcblxubGV0IElTX05PREVfMTg6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG5mdW5jdGlvbiBpc05vZGUxOCgpOiBib29sZWFuIHtcbiAgcmV0dXJuIChJU19OT0RFXzE4ID8/PSBwcm9jZXNzLnZlcnNpb25zLm5vZGUuc3RhcnRzV2l0aCgnMTguJykpO1xufVxuXG4vKiogQ2FsbCB0aGUgaW5pdGlhbGl6ZSBob29rIHdoZW4gcnVubmluZyBvbiBOb2RlLmpzIDE4ICovXG5leHBvcnQgZnVuY3Rpb24gY2FsbEluaXRpYWxpemVJZk5lZWRlZChcbiAgaW5pdGlhbGl6ZTogKHR5cGVvZiBpbXBvcnQoJy4vbG9hZGVyLWhvb2tzJykpWydpbml0aWFsaXplJ10sXG4pOiB2b2lkIHtcbiAgaWYgKGlzTm9kZTE4KCkpIHtcbiAgICBpbml0aWFsaXplKHdvcmtlckRhdGEpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRFU01Mb2FkZXJBcmdzKCk6IHN0cmluZ1tdIHtcbiAgaWYgKGlzTm9kZTE4KCkpIHtcbiAgICByZXR1cm4gW1xuICAgICAgJy0tbm8td2FybmluZ3MnLCAvLyBTdXBwcmVzcyBgRXhwZXJpbWVudGFsV2FybmluZzogQ3VzdG9tIEVTTSBMb2FkZXJzIGlzIGFuIGV4cGVyaW1lbnRhbCBmZWF0dXJlLi4uYC5cbiAgICAgICctLWxvYWRlcicsXG4gICAgICBwYXRoVG9GaWxlVVJMKGpvaW4oX19kaXJuYW1lLCAnbG9hZGVyLWhvb2tzLmpzJykpLmhyZWYsIC8vIExvYWRlciBjYW5ub3QgYmUgYW4gYWJzb2x1dGUgcGF0aCBvbiBXaW5kb3dzLlxuICAgIF07XG4gIH1cblxuICByZXR1cm4gW1xuICAgICctLWltcG9ydCcsXG4gICAgcGF0aFRvRmlsZVVSTChqb2luKF9fZGlybmFtZSwgJ3JlZ2lzdGVyLWhvb2tzLmpzJykpLmhyZWYsIC8vIExvYWRlciBjYW5ub3QgYmUgYW4gYWJzb2x1dGUgcGF0aCBvbiBXaW5kb3dzLlxuICBdO1xufVxuIl19
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright Google LLC All Rights Reserved.
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://angular.io/license
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
// TODO: remove the below once @types/node are version 20.x.x
|
|
11
|
+
// @ts-expect-error "node:module"' has no exported member 'register'.ts(2305)
|
|
12
|
+
const node_module_1 = require("node:module");
|
|
13
|
+
const node_url_1 = require("node:url");
|
|
14
|
+
const node_worker_threads_1 = require("node:worker_threads");
|
|
15
|
+
(0, node_module_1.register)('./loader-hooks.js', (0, node_url_1.pathToFileURL)(__filename), { data: node_worker_threads_1.workerData });
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0ZXItaG9va3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyX2RldmtpdC9idWlsZF9hbmd1bGFyL3NyYy91dGlscy9zZXJ2ZXItcmVuZGVyaW5nL2VzbS1pbi1tZW1vcnktbG9hZGVyL3JlZ2lzdGVyLWhvb2tzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7O0FBRUgsNkRBQTZEO0FBQzdELDZFQUE2RTtBQUM3RSw2Q0FBdUM7QUFDdkMsdUNBQXlDO0FBQ3pDLDZEQUFpRDtBQUVqRCxJQUFBLHNCQUFRLEVBQUMsbUJBQW1CLEVBQUUsSUFBQSx3QkFBYSxFQUFDLFVBQVUsQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLGdDQUFVLEVBQUUsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbi8vIFRPRE86IHJlbW92ZSB0aGUgYmVsb3cgb25jZSBAdHlwZXMvbm9kZSBhcmUgdmVyc2lvbiAyMC54Lnhcbi8vIEB0cy1leHBlY3QtZXJyb3IgXCJub2RlOm1vZHVsZVwiJyBoYXMgbm8gZXhwb3J0ZWQgbWVtYmVyICdyZWdpc3RlcicudHMoMjMwNSlcbmltcG9ydCB7IHJlZ2lzdGVyIH0gZnJvbSAnbm9kZTptb2R1bGUnO1xuaW1wb3J0IHsgcGF0aFRvRmlsZVVSTCB9IGZyb20gJ25vZGU6dXJsJztcbmltcG9ydCB7IHdvcmtlckRhdGEgfSBmcm9tICdub2RlOndvcmtlcl90aHJlYWRzJztcblxucmVnaXN0ZXIoJy4vbG9hZGVyLWhvb2tzLmpzJywgcGF0aFRvRmlsZVVSTChfX2ZpbGVuYW1lKSwgeyBkYXRhOiB3b3JrZXJEYXRhIH0pO1xuIl19
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Use of this source code is governed by an MIT-style license that can be
|
|
6
6
|
* found in the LICENSE file at https://angular.io/license
|
|
7
7
|
*/
|
|
8
|
-
import {
|
|
8
|
+
import { BuildOutputFile } from '../../tools/esbuild/bundler-context';
|
|
9
9
|
interface PrerenderOptions {
|
|
10
10
|
routesFile?: string;
|
|
11
11
|
discoverRoutes?: boolean;
|
|
@@ -13,7 +13,7 @@ interface PrerenderOptions {
|
|
|
13
13
|
interface AppShellOptions {
|
|
14
14
|
route?: string;
|
|
15
15
|
}
|
|
16
|
-
export declare function prerenderPages(workspaceRoot: string, appShellOptions: AppShellOptions | undefined, prerenderOptions: PrerenderOptions | undefined, outputFiles: Readonly<
|
|
16
|
+
export declare function prerenderPages(workspaceRoot: string, appShellOptions: AppShellOptions | undefined, prerenderOptions: PrerenderOptions | undefined, outputFiles: Readonly<BuildOutputFile[]>, document: string, inlineCriticalCss?: boolean, maxThreads?: number, verbose?: boolean): Promise<{
|
|
17
17
|
output: Record<string, string>;
|
|
18
18
|
warnings: string[];
|
|
19
19
|
errors: string[];
|
|
@@ -13,19 +13,19 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
13
13
|
exports.prerenderPages = void 0;
|
|
14
14
|
const promises_1 = require("node:fs/promises");
|
|
15
15
|
const node_path_1 = require("node:path");
|
|
16
|
-
const node_url_1 = require("node:url");
|
|
17
16
|
const piscina_1 = __importDefault(require("piscina"));
|
|
17
|
+
const bundler_context_1 = require("../../tools/esbuild/bundler-context");
|
|
18
|
+
const node_18_utils_1 = require("./esm-in-memory-loader/node-18-utils");
|
|
18
19
|
async function prerenderPages(workspaceRoot, appShellOptions = {}, prerenderOptions = {}, outputFiles, document, inlineCriticalCss, maxThreads = 1, verbose = false) {
|
|
19
20
|
const output = {};
|
|
20
21
|
const warnings = [];
|
|
21
22
|
const errors = [];
|
|
22
23
|
const outputFilesForWorker = {};
|
|
23
|
-
for (const { text, path } of outputFiles) {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
break;
|
|
24
|
+
for (const { text, path, type } of outputFiles) {
|
|
25
|
+
if (type === bundler_context_1.BuildOutputFileType.Server || // Contains the server runnable application code
|
|
26
|
+
(type === bundler_context_1.BuildOutputFileType.Browser && (0, node_path_1.extname)(path) === '.css') // Global styles for critical CSS inlining.
|
|
27
|
+
) {
|
|
28
|
+
outputFilesForWorker[path] = text;
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
31
|
const { routes: allRoutes, warnings: routesWarnings } = await getAllRoutes(workspaceRoot, outputFilesForWorker, document, appShellOptions, prerenderOptions, verbose);
|
|
@@ -48,11 +48,7 @@ async function prerenderPages(workspaceRoot, appShellOptions = {}, prerenderOpti
|
|
|
48
48
|
inlineCriticalCss,
|
|
49
49
|
document,
|
|
50
50
|
},
|
|
51
|
-
execArgv:
|
|
52
|
-
'--no-warnings',
|
|
53
|
-
'--loader',
|
|
54
|
-
(0, node_url_1.pathToFileURL)((0, node_path_1.join)(__dirname, 'esm-in-memory-file-loader.js')).href, // Loader cannot be an absolute path on Windows.
|
|
55
|
-
],
|
|
51
|
+
execArgv: (0, node_18_utils_1.getESMLoaderArgs)(),
|
|
56
52
|
});
|
|
57
53
|
try {
|
|
58
54
|
const renderingPromises = [];
|
|
@@ -117,11 +113,7 @@ async function getAllRoutes(workspaceRoot, outputFilesForWorker, document, appSh
|
|
|
117
113
|
document,
|
|
118
114
|
verbose,
|
|
119
115
|
},
|
|
120
|
-
execArgv:
|
|
121
|
-
'--no-warnings',
|
|
122
|
-
'--loader',
|
|
123
|
-
(0, node_url_1.pathToFileURL)((0, node_path_1.join)(__dirname, 'esm-in-memory-file-loader.js')).href, // Loader cannot be an absolute path on Windows.
|
|
124
|
-
],
|
|
116
|
+
execArgv: (0, node_18_utils_1.getESMLoaderArgs)(),
|
|
125
117
|
});
|
|
126
118
|
const { routes: extractedRoutes, warnings } = await renderWorker
|
|
127
119
|
.run({})
|
|
@@ -134,4 +126,4 @@ async function getAllRoutes(workspaceRoot, outputFilesForWorker, document, appSh
|
|
|
134
126
|
function removeLeadingSlash(value) {
|
|
135
127
|
return value.charAt(0) === '/' ? value.slice(1) : value;
|
|
136
128
|
}
|
|
137
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlcmVuZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhcl9kZXZraXQvYnVpbGRfYW5ndWxhci9zcmMvdXRpbHMvc2VydmVyLXJlbmRlcmluZy9wcmVyZW5kZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7Ozs7O0FBR0gsK0NBQTRDO0FBQzVDLHlDQUFpRDtBQUNqRCx1Q0FBeUM7QUFDekMsc0RBQThCO0FBaUJ2QixLQUFLLFVBQVUsY0FBYyxDQUNsQyxhQUFxQixFQUNyQixrQkFBbUMsRUFBRSxFQUNyQyxtQkFBcUMsRUFBRSxFQUN2QyxXQUFtQyxFQUNuQyxRQUFnQixFQUNoQixpQkFBMkIsRUFDM0IsVUFBVSxHQUFHLENBQUMsRUFDZCxPQUFPLEdBQUcsS0FBSztJQU1mLE1BQU0sTUFBTSxHQUEyQixFQUFFLENBQUM7SUFDMUMsTUFBTSxRQUFRLEdBQWEsRUFBRSxDQUFDO0lBQzlCLE1BQU0sTUFBTSxHQUFhLEVBQUUsQ0FBQztJQUM1QixNQUFNLG9CQUFvQixHQUEyQixFQUFFLENBQUM7SUFFeEQsS0FBSyxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLFdBQVcsRUFBRTtRQUN4QyxRQUFRLElBQUEsbUJBQU8sRUFBQyxJQUFJLENBQUMsRUFBRTtZQUNyQixLQUFLLE1BQU0sQ0FBQyxDQUFDLGlEQUFpRDtZQUM5RCxLQUFLLE1BQU0sRUFBRSwyQ0FBMkM7Z0JBQ3RELG9CQUFvQixDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQztnQkFDbEMsTUFBTTtTQUNUO0tBQ0Y7SUFFRCxNQUFNLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsY0FBYyxFQUFFLEdBQUcsTUFBTSxZQUFZLENBQ3hFLGFBQWEsRUFDYixvQkFBb0IsRUFDcEIsUUFBUSxFQUNSLGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIsT0FB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QUMsRUFBRSxDQUFDO1NBQ1AsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssWUFBWSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFFOUMsS0FBSyxNQUFNLEtBQUssSUFBSSxlQUFlLEVBQUU7UUFDbkMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztLQUNuQjtJQUVELE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLENBQUM7QUFDOUIsQ0FBQztBQUVELFNBQVMsa0JBQWtCLENBQUMsS0FBYTtJQUN2QyxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7QUFDMUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgeyBPdXRwdXRGaWxlIH0gZnJvbSAnZXNidWlsZCc7XG5pbXBvcnQgeyByZWFkRmlsZSB9IGZyb20gJ25vZGU6ZnMvcHJvbWlzZXMnO1xuaW1wb3J0IHsgZXh0bmFtZSwgam9pbiwgcG9zaXggfSBmcm9tICdub2RlOnBhdGgnO1xuaW1wb3J0IHsgcGF0aFRvRmlsZVVSTCB9IGZyb20gJ25vZGU6dXJsJztcbmltcG9ydCBQaXNjaW5hIGZyb20gJ3Bpc2NpbmEnO1xuaW1wb3J0IHR5cGUgeyBSZW5kZXJSZXN1bHQsIFNlcnZlckNvbnRleHQgfSBmcm9tICcuL3JlbmRlci1wYWdlJztcbmltcG9ydCB0eXBlIHsgUmVuZGVyV29ya2VyRGF0YSB9IGZyb20gJy4vcmVuZGVyLXdvcmtlcic7XG5pbXBvcnQgdHlwZSB7XG4gIFJvdXRlcnNFeHRyYWN0b3JXb3JrZXJSZXN1bHQsXG4gIFJvdXRlc0V4dHJhY3RvcldvcmtlckRhdGEsXG59IGZyb20gJy4vcm91dGVzLWV4dHJhY3Rvci13b3JrZXInO1xuXG5pbnRlcmZhY2UgUHJlcmVuZGVyT3B0aW9ucyB7XG4gIHJvdXRlc0ZpbGU/OiBzdHJpbmc7XG4gIGRpc2NvdmVyUm91dGVzPzogYm9vbGVhbjtcbn1cblxuaW50ZXJmYWNlIEFwcFNoZWxsT3B0aW9ucyB7XG4gIHJvdXRlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcHJlcmVuZGVyUGFnZXMoXG4gIHdvcmtzcGFjZVJvb3Q6IHN0cmluZyxcbiAgYXBwU2hlbGxPcHRpb25zOiBBcHBTaGVsbE9wdGlvbnMgPSB7fSxcbiAgcHJlcmVuZGVyT3B0aW9uczogUHJlcmVuZGVyT3B0aW9ucyA9IHt9LFxuICBvdXRwdXRGaWxlczogUmVhZG9ubHk8T3V0cHV0RmlsZVtdPixcbiAgZG9jdW1lbnQ6IHN0cmluZyxcbiAgaW5saW5lQ3JpdGljYWxDc3M/OiBib29sZWFuLFxuICBtYXhUaHJlYWRzID0gMSxcbiAgdmVyYm9zZSA9IGZhbHNlLFxuKTogUHJvbWlzZTx7XG4gIG91dHB1dDogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgd2FybmluZ3M6IHN0cmluZ1tdO1xuICBlcnJvcnM6IHN0cmluZ1tdO1xufT4ge1xuICBjb25zdCBvdXRwdXQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcbiAgY29uc3Qgd2FybmluZ3M6IHN0cmluZ1tdID0gW107XG4gIGNvbnN0IGVycm9yczogc3RyaW5nW10gPSBbXTtcbiAgY29uc3Qgb3V0cHV0RmlsZXNGb3JXb3JrZXI6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcblxuICBmb3IgKGNvbnN0IHsgdGV4dCwgcGF0aCB9IG9mIG91dHB1dEZpbGVzKSB7XG4gICAgc3dpdGNoIChleHRuYW1lKHBhdGgpKSB7XG4gICAgICBjYXNlICcubWpzJzogLy8gQ29udGFpbnMgdGhlIHNlcnZlciBydW5uYWJsZSBhcHBsaWNhdGlvbiBjb2RlLlxuICAgICAgY2FzZSAnLmNzcyc6IC8vIEdsb2JhbCBzdHlsZXMgZm9yIGNyaXRpY2FsIENTUyBpbmxpbmluZy5cbiAgICAgICAgb3V0cHV0RmlsZXNGb3JXb3JrZXJbcGF0aF0gPSB0ZXh0O1xuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICBjb25zdCB7IHJvdXRlczogYWxsUm91dGVzLCB3YXJuaW5nczogcm91dGVzV2FybmluZ3MgfSA9IGF3YWl0IGdldEFsbFJvdXRlcyhcbiAgICB3b3Jrc3BhY2VSb290LFxuICAgIG91dHB1dEZpbGVzRm9yV29ya2VyLFxuICAgIGRvY3VtZW50LFxuICAgIGFwcFNoZWxsT3B0aW9ucyxcbiAgICBwcmVyZW5kZXJPcHRpb25zLFxuICAgIHZlcmJvc2UsXG4gICk7XG5cbiAgaWYgKHJvdXRlc1dhcm5pbmdzPy5sZW5ndGgpIHtcbiAgICB3YXJuaW5ncy5wdXNoKC4uLnJvdXRlc1dhcm5pbmdzKTtcbiAgfVxuXG4gIGlmIChhbGxSb3V0ZXMuc2l6ZSA8IDEpIHtcbiAgICByZXR1cm4ge1xuICAgICAgZXJyb3JzLFxuICAgICAgd2FybmluZ3MsXG4gICAgICBvdXRwdXQsXG4gICAgfTtcbiAgfVxuXG4gIGNvbnN0IHJlbmRlcldvcmtlciA9IG5ldyBQaXNjaW5hKHtcbiAgICBmaWxlbmFtZTogcmVxdWlyZS5yZXNvbHZlKCcuL3JlbmRlci13b3JrZXInKSxcbiAgICBtYXhUaHJlYWRzOiBNYXRoLm1pbihhbGxSb3V0ZXMuc2l6ZSwgbWF4VGhyZWFkcyksXG4gICAgd29ya2VyRGF0YToge1xuICAgICAgd29ya3NwYWNlUm9vdCxcbiAgICAgIG91dHB1dEZpbGVzOiBvdXRwdXRGaWxlc0ZvcldvcmtlcixcbiAgICAgIGlubGluZUNyaXRpY2FsQ3NzLFxuICAgICAgZG9jdW1lbnQsXG4gICAgfSBhcyBSZW5kZXJXb3JrZXJEYXRhLFxuICAgIGV4ZWNBcmd2OiBbXG4gICAgICAnLS1uby13YXJuaW5ncycsIC8vIFN1cHByZXNzIGBFeHBlcmltZW50YWxXYXJuaW5nOiBDdXN0b20gRVNNIExvYWRlcnMgaXMgYW4gZXhwZXJpbWVudGFsIGZlYXR1cmUuLi5gLlxuICAgICAgJy0tbG9hZGVyJyxcbiAgICAgIHBhdGhUb0ZpbGVVUkwoam9pbihfX2Rpcm5hbWUsICdlc20taW4tbWVtb3J5LWZpbGUtbG9hZGVyLmpzJykpLmhyZWYsIC8vIExvYWRlciBjYW5ub3QgYmUgYW4gYWJzb2x1dGUgcGF0aCBvbiBXaW5kb3dzLlxuICAgIF0sXG4gIH0pO1xuXG4gIHRyeSB7XG4gICAgY29uc3QgcmVuZGVyaW5nUHJvbWlzZXM6IFByb21pc2U8dm9pZD5bXSA9IFtdO1xuICAgIGNvbnN0IGFwcFNoZWxsUm91dGUgPSBhcHBTaGVsbE9wdGlvbnMucm91dGUgJiYgcmVtb3ZlTGVhZGluZ1NsYXNoKGFwcFNoZWxsT3B0aW9ucy5yb3V0ZSk7XG5cbiAgICBmb3IgKGNvbnN0IHJvdXRlIG9mIGFsbFJvdXRlcykge1xuICAgICAgY29uc3QgaXNBcHBTaGVsbFJvdXRlID0gYXBwU2hlbGxSb3V0ZSA9PT0gcm91dGU7XG4gICAgICBjb25zdCBzZXJ2ZXJDb250ZXh0OiBTZXJ2ZXJDb250ZXh0ID0gaXNBcHBTaGVsbFJvdXRlID8gJ2FwcC1zaGVsbCcgOiAnc3NnJztcblxuICAgICAgY29uc3QgcmVuZGVyOiBQcm9taXNlPFJlbmRlclJlc3VsdD4gPSByZW5kZXJXb3JrZXIucnVuKHsgcm91dGUsIHNlcnZlckNvbnRleHQgfSk7XG4gICAgICBjb25zdCByZW5kZXJSZXN1bHQ6IFByb21pc2U8dm9pZD4gPSByZW5kZXIudGhlbigoeyBjb250ZW50LCB3YXJuaW5ncywgZXJyb3JzIH0pID0+IHtcbiAgICAgICAgaWYgKGNvbnRlbnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIGNvbnN0IG91dFBhdGggPSBpc0FwcFNoZWxsUm91dGUgPyAnaW5kZXguaHRtbCcgOiBwb3NpeC5qb2luKHJvdXRlLCAnaW5kZXguaHRtbCcpO1xuICAgICAgICAgIG91dHB1dFtvdXRQYXRoXSA9IGNvbnRlbnQ7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAod2FybmluZ3MpIHtcbiAgICAgICAgICB3YXJuaW5ncy5wdXNoKC4uLndhcm5pbmdzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChlcnJvcnMpIHtcbiAgICAgICAgICBlcnJvcnMucHVzaCguLi5lcnJvcnMpO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgcmVuZGVyaW5nUHJvbWlzZXMucHVzaChyZW5kZXJSZXN1bHQpO1xuICAgIH1cblxuICAgIGF3YWl0IFByb21pc2UuYWxsKHJlbmRlcmluZ1Byb21pc2VzKTtcbiAgfSBmaW5hbGx5IHtcbiAgICB2b2lkIHJlbmRlcldvcmtlci5kZXN0cm95KCk7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIGVycm9ycyxcbiAgICB3YXJuaW5ncyxcbiAgICBvdXRwdXQsXG4gIH07XG59XG5cbmNsYXNzIFJvdXRlc1NldCBleHRlbmRzIFNldDxzdHJpbmc+IHtcbiAgb3ZlcnJpZGUgYWRkKHZhbHVlOiBzdHJpbmcpOiB0aGlzIHtcbiAgICByZXR1cm4gc3VwZXIuYWRkKHJlbW92ZUxlYWRpbmdTbGFzaCh2YWx1ZSkpO1xuICB9XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGdldEFsbFJvdXRlcyhcbiAgd29ya3NwYWNlUm9vdDogc3RyaW5nLFxuICBvdXRwdXRGaWxlc0ZvcldvcmtlcjogUmVjb3JkPHN0cmluZywgc3RyaW5nPixcbiAgZG9jdW1lbnQ6IHN0cmluZyxcbiAgYXBwU2hlbGxPcHRpb25zOiBBcHBTaGVsbE9wdGlvbnMsXG4gIHByZXJlbmRlck9wdGlvbnM6IFByZXJlbmRlck9wdGlvbnMsXG4gIHZlcmJvc2U6IGJvb2xlYW4sXG4pOiBQcm9taXNlPHsgcm91dGVzOiBTZXQ8c3RyaW5nPjsgd2FybmluZ3M/OiBzdHJpbmdbXSB9PiB7XG4gIGNvbnN0IHsgcm91dGVzRmlsZSwgZGlzY292ZXJSb3V0ZXMgfSA9IHByZXJlbmRlck9wdGlvbnM7XG4gIGNvbnN0IHJvdXRlcyA9IG5ldyBSb3V0ZXNTZXQoKTtcblxuICBjb25zdCB7IHJvdXRlOiBhcHBTaGVsbFJvdXRlIH0gPSBhcHBTaGVsbE9wdGlvbnM7XG4gIGlmIChhcHBTaGVsbFJvdXRlICE9PSB1bmRlZmluZWQpIHtcbiAgICByb3V0ZXMuYWRkKGFwcFNoZWxsUm91dGUpO1xuICB9XG5cbiAgaWYgKHJvdXRlc0ZpbGUpIHtcbiAgICBjb25zdCByb3V0ZXNGcm9tRmlsZSA9IChhd2FpdCByZWFkRmlsZShyb3V0ZXNGaWxlLCAndXRmOCcpKS5zcGxpdCgvXFxyP1xcbi8pO1xuICAgIGZvciAoY29uc3Qgcm91dGUgb2Ygcm91dGVzRnJvbUZpbGUpIHtcbiAgICAgIHJvdXRlcy5hZGQocm91dGUudHJpbSgpKTtcbiAgICB9XG4gIH1cblxuICBpZiAoIWRpc2NvdmVyUm91dGVzKSB7XG4gICAgcmV0dXJuIHsgcm91dGVzIH07XG4gIH1cblxuICBjb25zdCByZW5kZXJXb3JrZXIgPSBuZXcgUGlzY2luYSh7XG4gICAgZmlsZW5hbWU6IHJlcXVpcmUucmVzb2x2ZSgnLi9yb3V0ZXMtZXh0cmFjdG9yLXdvcmtlcicpLFxuICAgIG1heFRocmVhZHM6IDEsXG4gICAgd29ya2VyRGF0YToge1xuICAgICAgd29ya3NwYWNlUm9vdCxcbiAgICAgIG91dHB1dEZpbGVzOiBvdXRwdXRGaWxlc0ZvcldvcmtlcixcbiAgICAgIGRvY3VtZW50LFxuICAgICAgdmVyYm9zZSxcbiAgICB9IGFzIFJvdXRlc0V4dHJhY3RvcldvcmtlckRhdGEsXG4gICAgZXhlY0FyZ3Y6IFtcbiAgICAgICctLW5vLXdhcm5pbmdzJywgLy8gU3VwcHJlc3MgYEV4cGVyaW1lbnRhbFdhcm5pbmc6IEN1c3RvbSBFU00gTG9hZGVycyBpcyBhbiBleHBlcmltZW50YWwgZmVhdHVyZS4uLmAuXG4gICAgICAnLS1sb2FkZXInLFxuICAgICAgcGF0aFRvRmlsZVVSTChqb2luKF9fZGlybmFtZSwgJ2VzbS1pbi1tZW1vcnktZmlsZS1sb2FkZXIuanMnKSkuaHJlZiwgLy8gTG9hZGVyIGNhbm5vdCBiZSBhbiBhYnNvbHV0ZSBwYXRoIG9uIFdpbmRvd3MuXG4gICAgXSxcbiAgfSk7XG5cbiAgY29uc3QgeyByb3V0ZXM6IGV4dHJhY3RlZFJvdXRlcywgd2FybmluZ3MgfTogUm91dGVyc0V4dHJhY3RvcldvcmtlclJlc3VsdCA9IGF3YWl0IHJlbmRlcldvcmtlclxuICAgIC5ydW4oe30pXG4gICAgLmZpbmFsbHkoKCkgPT4gdm9pZCByZW5kZXJXb3JrZXIuZGVzdHJveSgpKTtcblxuICBmb3IgKGNvbnN0IHJvdXRlIG9mIGV4dHJhY3RlZFJvdXRlcykge1xuICAgIHJvdXRlcy5hZGQocm91dGUpO1xuICB9XG5cbiAgcmV0dXJuIHsgcm91dGVzLCB3YXJuaW5ncyB9O1xufVxuXG5mdW5jdGlvbiByZW1vdmVMZWFkaW5nU2xhc2godmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiB2YWx1ZS5jaGFyQXQoMCkgPT09ICcvJyA/IHZhbHVlLnNsaWNlKDEpIDogdmFsdWU7XG59XG4iXX0=
|
|
129
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlcmVuZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhcl9kZXZraXQvYnVpbGRfYW5ndWxhci9zcmMvdXRpbHMvc2VydmVyLXJlbmRlcmluZy9wcmVyZW5kZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7Ozs7O0FBRUgsK0NBQTRDO0FBQzVDLHlDQUEyQztBQUMzQyxzREFBOEI7QUFDOUIseUVBQTJGO0FBQzNGLHdFQUF3RTtBQWlCakUsS0FBSyxVQUFVLGNBQWMsQ0FDbEMsYUFBcUIsRUFDckIsa0JBQW1DLEVBQUUsRUFDckMsbUJBQXFDLEVBQUUsRUFDdkMsV0FBd0MsRUFDeEMsUUFBZ0IsRUFDaEIsaUJBQTJCLEVBQzNCLFVBQVUsR0FBRyxDQUFDLEVBQ2QsT0FBTyxHQUFHLEtBQUs7SUFNZixNQUFNLE1BQU0sR0FBMkIsRUFBRSxDQUFDO0lBQzFDLE1BQU0sUUFBUSxHQUFhLEVBQUUsQ0FBQztJQUM5QixNQUFNLE1BQU0sR0FBYSxFQUFFLENBQUM7SUFDNUIsTUFBTSxvQkFBb0IsR0FBMkIsRUFBRSxDQUFDO0lBRXhELEtBQUssTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksV0FBVyxFQUFFO1FBQzlDLElBQ0UsSUFBSSxLQUFLLHFDQUFtQixDQUFDLE1BQU0sSUFBSSxnREFBZ0Q7WUFDdkYsQ0FBQyxJQUFJLEtBQUsscUNBQW1CLENBQUMsT0FBTyxJQUFJLElBQUEsbUJBQU8sRUFBQyxJQUFJLENBQUMsS0FBSyxNQUFNLENBQUMsQ0FBQywyQ0FBMkM7VUFDOUc7WUFDQSxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUM7U0FDbkM7S0FDRjtJQUVELE1BQU0sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxjQUFjLEVBQUUsR0FBRyxNQUFNLFlBQVksQ0FDeEUs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LEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztLQUNuQjtJQUVELE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLENBQUM7QUFDOUIsQ0FBQztBQUVELFNBQVMsa0JBQWtCLENBQUMsS0FBYTtJQUN2QyxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7QUFDMUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgeyByZWFkRmlsZSB9IGZyb20gJ25vZGU6ZnMvcHJvbWlzZXMnO1xuaW1wb3J0IHsgZXh0bmFtZSwgcG9zaXggfSBmcm9tICdub2RlOnBhdGgnO1xuaW1wb3J0IFBpc2NpbmEgZnJvbSAncGlzY2luYSc7XG5pbXBvcnQgeyBCdWlsZE91dHB1dEZpbGUsIEJ1aWxkT3V0cHV0RmlsZVR5cGUgfSBmcm9tICcuLi8uLi90b29scy9lc2J1aWxkL2J1bmRsZXItY29udGV4dCc7XG5pbXBvcnQgeyBnZXRFU01Mb2FkZXJBcmdzIH0gZnJvbSAnLi9lc20taW4tbWVtb3J5LWxvYWRlci9ub2RlLTE4LXV0aWxzJztcbmltcG9ydCB0eXBlIHsgUmVuZGVyUmVzdWx0LCBTZXJ2ZXJDb250ZXh0IH0gZnJvbSAnLi9yZW5kZXItcGFnZSc7XG5pbXBvcnQgdHlwZSB7IFJlbmRlcldvcmtlckRhdGEgfSBmcm9tICcuL3JlbmRlci13b3JrZXInO1xuaW1wb3J0IHR5cGUge1xuICBSb3V0ZXJzRXh0cmFjdG9yV29ya2VyUmVzdWx0LFxuICBSb3V0ZXNFeHRyYWN0b3JXb3JrZXJEYXRhLFxufSBmcm9tICcuL3JvdXRlcy1leHRyYWN0b3Itd29ya2VyJztcblxuaW50ZXJmYWNlIFByZXJlbmRlck9wdGlvbnMge1xuICByb3V0ZXNGaWxlPzogc3RyaW5nO1xuICBkaXNjb3ZlclJvdXRlcz86IGJvb2xlYW47XG59XG5cbmludGVyZmFjZSBBcHBTaGVsbE9wdGlvbnMge1xuICByb3V0ZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHByZXJlbmRlclBhZ2VzKFxuICB3b3Jrc3BhY2VSb290OiBzdHJpbmcsXG4gIGFwcFNoZWxsT3B0aW9uczogQXBwU2hlbGxPcHRpb25zID0ge30sXG4gIHByZXJlbmRlck9wdGlvbnM6IFByZXJlbmRlck9wdGlvbnMgPSB7fSxcbiAgb3V0cHV0RmlsZXM6IFJlYWRvbmx5PEJ1aWxkT3V0cHV0RmlsZVtdPixcbiAgZG9jdW1lbnQ6IHN0cmluZyxcbiAgaW5saW5lQ3JpdGljYWxDc3M/OiBib29sZWFuLFxuICBtYXhUaHJlYWRzID0gMSxcbiAgdmVyYm9zZSA9IGZhbHNlLFxuKTogUHJvbWlzZTx7XG4gIG91dHB1dDogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgd2FybmluZ3M6IHN0cmluZ1tdO1xuICBlcnJvcnM6IHN0cmluZ1tdO1xufT4ge1xuICBjb25zdCBvdXRwdXQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcbiAgY29uc3Qgd2FybmluZ3M6IHN0cmluZ1tdID0gW107XG4gIGNvbnN0IGVycm9yczogc3RyaW5nW10gPSBbXTtcbiAgY29uc3Qgb3V0cHV0RmlsZXNGb3JXb3JrZXI6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcblxuICBmb3IgKGNvbnN0IHsgdGV4dCwgcGF0aCwgdHlwZSB9IG9mIG91dHB1dEZpbGVzKSB7XG4gICAgaWYgKFxuICAgICAgdHlwZSA9PT0gQnVpbGRPdXRwdXRGaWxlVHlwZS5TZXJ2ZXIgfHwgLy8gQ29udGFpbnMgdGhlIHNlcnZlciBydW5uYWJsZSBhcHBsaWNhdGlvbiBjb2RlXG4gICAgICAodHlwZSA9PT0gQnVpbGRPdXRwdXRGaWxlVHlwZS5Ccm93c2VyICYmIGV4dG5hbWUocGF0aCkgPT09ICcuY3NzJykgLy8gR2xvYmFsIHN0eWxlcyBmb3IgY3JpdGljYWwgQ1NTIGlubGluaW5nLlxuICAgICkge1xuICAgICAgb3V0cHV0RmlsZXNGb3JXb3JrZXJbcGF0aF0gPSB0ZXh0O1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0IHsgcm91dGVzOiBhbGxSb3V0ZXMsIHdhcm5pbmdzOiByb3V0ZXNXYXJuaW5ncyB9ID0gYXdhaXQgZ2V0QWxsUm91dGVzKFxuICAgIHdvcmtzcGFjZVJvb3QsXG4gICAgb3V0cHV0RmlsZXNGb3JXb3JrZXIsXG4gICAgZG9jdW1lbnQsXG4gICAgYXBwU2hlbGxPcHRpb25zLFxuICAgIHByZXJlbmRlck9wdGlvbnMsXG4gICAgdmVyYm9zZSxcbiAgKTtcblxuICBpZiAocm91dGVzV2FybmluZ3M/Lmxlbmd0aCkge1xuICAgIHdhcm5pbmdzLnB1c2goLi4ucm91dGVzV2FybmluZ3MpO1xuICB9XG5cbiAgaWYgKGFsbFJvdXRlcy5zaXplIDwgMSkge1xuICAgIHJldHVybiB7XG4gICAgICBlcnJvcnMsXG4gICAgICB3YXJuaW5ncyxcbiAgICAgIG91dHB1dCxcbiAgICB9O1xuICB9XG5cbiAgY29uc3QgcmVuZGVyV29ya2VyID0gbmV3IFBpc2NpbmEoe1xuICAgIGZpbGVuYW1lOiByZXF1aXJlLnJlc29sdmUoJy4vcmVuZGVyLXdvcmtlcicpLFxuICAgIG1heFRocmVhZHM6IE1hdGgubWluKGFsbFJvdXRlcy5zaXplLCBtYXhUaHJlYWRzKSxcbiAgICB3b3JrZXJEYXRhOiB7XG4gICAgICB3b3Jrc3BhY2VSb290LFxuICAgICAgb3V0cHV0RmlsZXM6IG91dHB1dEZpbGVzRm9yV29ya2VyLFxuICAgICAgaW5saW5lQ3JpdGljYWxDc3MsXG4gICAgICBkb2N1bWVudCxcbiAgICB9IGFzIFJlbmRlcldvcmtlckRhdGEsXG4gICAgZXhlY0FyZ3Y6IGdldEVTTUxvYWRlckFyZ3MoKSxcbiAgfSk7XG5cbiAgdHJ5IHtcbiAgICBjb25zdCByZW5kZXJpbmdQcm9taXNlczogUHJvbWlzZTx2b2lkPltdID0gW107XG4gICAgY29uc3QgYXBwU2hlbGxSb3V0ZSA9IGFwcFNoZWxsT3B0aW9ucy5yb3V0ZSAmJiByZW1vdmVMZWFkaW5nU2xhc2goYXBwU2hlbGxPcHRpb25zLnJvdXRlKTtcblxuICAgIGZvciAoY29uc3Qgcm91dGUgb2YgYWxsUm91dGVzKSB7XG4gICAgICBjb25zdCBpc0FwcFNoZWxsUm91dGUgPSBhcHBTaGVsbFJvdXRlID09PSByb3V0ZTtcbiAgICAgIGNvbnN0IHNlcnZlckNvbnRleHQ6IFNlcnZlckNvbnRleHQgPSBpc0FwcFNoZWxsUm91dGUgPyAnYXBwLXNoZWxsJyA6ICdzc2cnO1xuXG4gICAgICBjb25zdCByZW5kZXI6IFByb21pc2U8UmVuZGVyUmVzdWx0PiA9IHJlbmRlcldvcmtlci5ydW4oeyByb3V0ZSwgc2VydmVyQ29udGV4dCB9KTtcbiAgICAgIGNvbnN0IHJlbmRlclJlc3VsdDogUHJvbWlzZTx2b2lkPiA9IHJlbmRlci50aGVuKCh7IGNvbnRlbnQsIHdhcm5pbmdzLCBlcnJvcnMgfSkgPT4ge1xuICAgICAgICBpZiAoY29udGVudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgY29uc3Qgb3V0UGF0aCA9IGlzQXBwU2hlbGxSb3V0ZSA/ICdpbmRleC5odG1sJyA6IHBvc2l4LmpvaW4ocm91dGUsICdpbmRleC5odG1sJyk7XG4gICAgICAgICAgb3V0cHV0W291dFBhdGhdID0gY29udGVudDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh3YXJuaW5ncykge1xuICAgICAgICAgIHdhcm5pbmdzLnB1c2goLi4ud2FybmluZ3MpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGVycm9ycykge1xuICAgICAgICAgIGVycm9ycy5wdXNoKC4uLmVycm9ycyk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICByZW5kZXJpbmdQcm9taXNlcy5wdXNoKHJlbmRlclJlc3VsdCk7XG4gICAgfVxuXG4gICAgYXdhaXQgUHJvbWlzZS5hbGwocmVuZGVyaW5nUHJvbWlzZXMpO1xuICB9IGZpbmFsbHkge1xuICAgIHZvaWQgcmVuZGVyV29ya2VyLmRlc3Ryb3koKTtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgZXJyb3JzLFxuICAgIHdhcm5pbmdzLFxuICAgIG91dHB1dCxcbiAgfTtcbn1cblxuY2xhc3MgUm91dGVzU2V0IGV4dGVuZHMgU2V0PHN0cmluZz4ge1xuICBvdmVycmlkZSBhZGQodmFsdWU6IHN0cmluZyk6IHRoaXMge1xuICAgIHJldHVybiBzdXBlci5hZGQocmVtb3ZlTGVhZGluZ1NsYXNoKHZhbHVlKSk7XG4gIH1cbn1cblxuYXN5bmMgZnVuY3Rpb24gZ2V0QWxsUm91dGVzKFxuICB3b3Jrc3BhY2VSb290OiBzdHJpbmcsXG4gIG91dHB1dEZpbGVzRm9yV29ya2VyOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+LFxuICBkb2N1bWVudDogc3RyaW5nLFxuICBhcHBTaGVsbE9wdGlvbnM6IEFwcFNoZWxsT3B0aW9ucyxcbiAgcHJlcmVuZGVyT3B0aW9uczogUHJlcmVuZGVyT3B0aW9ucyxcbiAgdmVyYm9zZTogYm9vbGVhbixcbik6IFByb21pc2U8eyByb3V0ZXM6IFNldDxzdHJpbmc+OyB3YXJuaW5ncz86IHN0cmluZ1tdIH0+IHtcbiAgY29uc3QgeyByb3V0ZXNGaWxlLCBkaXNjb3ZlclJvdXRlcyB9ID0gcHJlcmVuZGVyT3B0aW9ucztcbiAgY29uc3Qgcm91dGVzID0gbmV3IFJvdXRlc1NldCgpO1xuXG4gIGNvbnN0IHsgcm91dGU6IGFwcFNoZWxsUm91dGUgfSA9IGFwcFNoZWxsT3B0aW9ucztcbiAgaWYgKGFwcFNoZWxsUm91dGUgIT09IHVuZGVmaW5lZCkge1xuICAgIHJvdXRlcy5hZGQoYXBwU2hlbGxSb3V0ZSk7XG4gIH1cblxuICBpZiAocm91dGVzRmlsZSkge1xuICAgIGNvbnN0IHJvdXRlc0Zyb21GaWxlID0gKGF3YWl0IHJlYWRGaWxlKHJvdXRlc0ZpbGUsICd1dGY4JykpLnNwbGl0KC9cXHI/XFxuLyk7XG4gICAgZm9yIChjb25zdCByb3V0ZSBvZiByb3V0ZXNGcm9tRmlsZSkge1xuICAgICAgcm91dGVzLmFkZChyb3V0ZS50cmltKCkpO1xuICAgIH1cbiAgfVxuXG4gIGlmICghZGlzY292ZXJSb3V0ZXMpIHtcbiAgICByZXR1cm4geyByb3V0ZXMgfTtcbiAgfVxuXG4gIGNvbnN0IHJlbmRlcldvcmtlciA9IG5ldyBQaXNjaW5hKHtcbiAgICBmaWxlbmFtZTogcmVxdWlyZS5yZXNvbHZlKCcuL3JvdXRlcy1leHRyYWN0b3Itd29ya2VyJyksXG4gICAgbWF4VGhyZWFkczogMSxcbiAgICB3b3JrZXJEYXRhOiB7XG4gICAgICB3b3Jrc3BhY2VSb290LFxuICAgICAgb3V0cHV0RmlsZXM6IG91dHB1dEZpbGVzRm9yV29ya2VyLFxuICAgICAgZG9jdW1lbnQsXG4gICAgICB2ZXJib3NlLFxuICAgIH0gYXMgUm91dGVzRXh0cmFjdG9yV29ya2VyRGF0YSxcbiAgICBleGVjQXJndjogZ2V0RVNNTG9hZGVyQXJncygpLFxuICB9KTtcblxuICBjb25zdCB7IHJvdXRlczogZXh0cmFjdGVkUm91dGVzLCB3YXJuaW5ncyB9OiBSb3V0ZXJzRXh0cmFjdG9yV29ya2VyUmVzdWx0ID0gYXdhaXQgcmVuZGVyV29ya2VyXG4gICAgLnJ1bih7fSlcbiAgICAuZmluYWxseSgoKSA9PiB2b2lkIHJlbmRlcldvcmtlci5kZXN0cm95KCkpO1xuXG4gIGZvciAoY29uc3Qgcm91dGUgb2YgZXh0cmFjdGVkUm91dGVzKSB7XG4gICAgcm91dGVzLmFkZChyb3V0ZSk7XG4gIH1cblxuICByZXR1cm4geyByb3V0ZXMsIHdhcm5pbmdzIH07XG59XG5cbmZ1bmN0aW9uIHJlbW92ZUxlYWRpbmdTbGFzaCh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIHZhbHVlLmNoYXJBdCgwKSA9PT0gJy8nID8gdmFsdWUuc2xpY2UoMSkgOiB2YWx1ZTtcbn1cbiJdfQ==
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Use of this source code is governed by an MIT-style license that can be
|
|
6
6
|
* found in the LICENSE file at https://angular.io/license
|
|
7
7
|
*/
|
|
8
|
-
import type { ESMInMemoryFileLoaderWorkerData } from './esm-in-memory-
|
|
8
|
+
import type { ESMInMemoryFileLoaderWorkerData } from './esm-in-memory-loader/loader-hooks';
|
|
9
9
|
import { RenderResult, ServerContext } from './render-page';
|
|
10
10
|
export interface RenderWorkerData extends ESMInMemoryFileLoaderWorkerData {
|
|
11
11
|
document: string;
|
|
@@ -17,4 +17,4 @@ function default_1(options) {
|
|
|
17
17
|
return (0, render_page_1.renderPage)({ ...options, outputFiles, document, inlineCriticalCss });
|
|
18
18
|
}
|
|
19
19
|
exports.default = default_1;
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyLXdvcmtlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXJfZGV2a2l0L2J1aWxkX2FuZ3VsYXIvc3JjL3V0aWxzL3NlcnZlci1yZW5kZXJpbmcvcmVuZGVyLXdvcmtlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOztBQUVILDZEQUFpRDtBQUVqRCwrQ0FBd0U7QUFZeEU7O0dBRUc7QUFDSCxNQUFNLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxHQUFHLGdDQUE4QixDQUFDO0FBRXBGLG1CQUF5QixPQUFzQjtJQUM3QyxPQUFPLElBQUEsd0JBQVUsRUFBQyxFQUFFLEdBQUcsT0FBTyxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDO0FBQzlFLENBQUM7QUFGRCw0QkFFQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgeyB3b3JrZXJEYXRhIH0gZnJvbSAnbm9kZTp3b3JrZXJfdGhyZWFkcyc7XG5pbXBvcnQgdHlwZSB7IEVTTUluTWVtb3J5RmlsZUxvYWRlcldvcmtlckRhdGEgfSBmcm9tICcuL2VzbS1pbi1tZW1vcnktbG9hZGVyL2xvYWRlci1ob29rcyc7XG5pbXBvcnQgeyBSZW5kZXJSZXN1bHQsIFNlcnZlckNvbnRleHQsIHJlbmRlclBhZ2UgfSBmcm9tICcuL3JlbmRlci1wYWdlJztcblxuZXhwb3J0IGludGVyZmFjZSBSZW5kZXJXb3JrZXJEYXRhIGV4dGVuZHMgRVNNSW5NZW1vcnlGaWxlTG9hZGVyV29ya2VyRGF0YSB7XG4gIGRvY3VtZW50OiBzdHJpbmc7XG4gIGlubGluZUNyaXRpY2FsQ3NzPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZW5kZXJPcHRpb25zIHtcbiAgcm91dGU6IHN0cmluZztcbiAgc2VydmVyQ29udGV4dDogU2VydmVyQ29udGV4dDtcbn1cblxuLyoqXG4gKiBUaGlzIGlzIHBhc3NlZCBhcyB3b3JrZXJEYXRhIHdoZW4gc2V0dGluZyB1cCB0aGUgd29ya2VyIHZpYSB0aGUgYHBpc2NpbmFgIHBhY2thZ2UuXG4gKi9cbmNvbnN0IHsgb3V0cHV0RmlsZXMsIGRvY3VtZW50LCBpbmxpbmVDcml0aWNhbENzcyB9ID0gd29ya2VyRGF0YSBhcyBSZW5kZXJXb3JrZXJEYXRhO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiAob3B0aW9uczogUmVuZGVyT3B0aW9ucyk6IFByb21pc2U8UmVuZGVyUmVzdWx0PiB7XG4gIHJldHVybiByZW5kZXJQYWdlKHsgLi4ub3B0aW9ucywgb3V0cHV0RmlsZXMsIGRvY3VtZW50LCBpbmxpbmVDcml0aWNhbENzcyB9KTtcbn1cbiJdfQ==
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Use of this source code is governed by an MIT-style license that can be
|
|
6
6
|
* found in the LICENSE file at https://angular.io/license
|
|
7
7
|
*/
|
|
8
|
-
import type { ESMInMemoryFileLoaderWorkerData } from './esm-in-memory-
|
|
8
|
+
import type { ESMInMemoryFileLoaderWorkerData } from './esm-in-memory-loader/loader-hooks';
|
|
9
9
|
export interface RoutesExtractorWorkerData extends ESMInMemoryFileLoaderWorkerData {
|
|
10
10
|
document: string;
|
|
11
11
|
verbose: boolean;
|
|
@@ -44,4 +44,4 @@ async function default_1() {
|
|
|
44
44
|
return { routes, warnings };
|
|
45
45
|
}
|
|
46
46
|
exports.default = default_1;
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVzLWV4dHJhY3Rvci13b3JrZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyX2RldmtpdC9idWlsZF9hbmd1bGFyL3NyYy91dGlscy9zZXJ2ZXItcmVuZGVyaW5nL3JvdXRlcy1leHRyYWN0b3Itd29ya2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7O0FBRUgsNkRBQWlEO0FBQ2pELDBDQUE0QztBQWM1Qzs7R0FFRztBQUNILE1BQU0sRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLEdBQUcsZ0NBQXVDLENBQUM7QUFFdkQsS0FBSztJQUNsQixNQUFNLEVBQUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLGFBQWEsRUFBRSxHQUN0RCxNQUFNLElBQUEsd0JBQWEsRUFBMEIsbUJBQW1CLENBQUMsQ0FBQztJQUVwRSxNQUFNLGdCQUFnQixHQUFhLEVBQUUsQ0FBQztJQUN0QyxNQUFNLGFBQWEsR0FBYSxFQUFFLENBQUM7SUFDbkMsTUFBTSxNQUFNLEdBQWEsRUFBRSxDQUFDO0lBRTVCLElBQUksS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxJQUFJLGFBQWEsQ0FDNUQsc0JBQXNCLEVBQ3RCLFFBQVEsQ0FDVCxFQUFFO1FBQ0QsSUFBSSxPQUFPLEVBQUU7WUFDWCxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ25CLFNBQVM7U0FDVjtRQUVELElBQUksUUFBUSxFQUFFO1lBQ1osZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzlCO2FBQU07WUFDTCxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzNCO0tBQ0Y7SUFFRCxJQUFJLENBQUMsT0FBTyxFQUFFO1FBQ1osT0FBTyxFQUFFLE1BQU0sRUFBRSxDQUFDO0tBQ25CO0lBRUQsSUFBSSxRQUE4QixDQUFDO0lBQ25DLElBQUksYUFBYSxDQUFDLE1BQU0sRUFBRTtRQUN4QixDQUFDLFFBQVEsS0FBSyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQ3BCLDRHQUE0RztZQUMxRyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUMzQixDQUFDO0tBQ0g7SUFFRCxJQUFJLGdCQUFnQixDQUFDLE1BQU0sRUFBRTtRQUMzQixDQUFDLFFBQVEsS0FBSyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQ3BCLHVGQUF1RixFQUN2RixnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQzVCLENBQUM7S0FDSDtJQUVELE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLENBQUM7QUFDOUIsQ0FBQztBQTVDRCw0QkE0Q0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHsgd29ya2VyRGF0YSB9IGZyb20gJ25vZGU6d29ya2VyX3RocmVhZHMnO1xuaW1wb3J0IHsgbG9hZEVzbU1vZHVsZSB9IGZyb20gJy4uL2xvYWQtZXNtJztcbmltcG9ydCB0eXBlIHsgRVNNSW5NZW1vcnlGaWxlTG9hZGVyV29ya2VyRGF0YSB9IGZyb20gJy4vZXNtLWluLW1lbW9yeS1sb2FkZXIvbG9hZGVyLWhvb2tzJztcbmltcG9ydCB7IE1haW5TZXJ2ZXJCdW5kbGVFeHBvcnRzIH0gZnJvbSAnLi9tYWluLWJ1bmRsZS1leHBvcnRzJztcblxuZXhwb3J0IGludGVyZmFjZSBSb3V0ZXNFeHRyYWN0b3JXb3JrZXJEYXRhIGV4dGVuZHMgRVNNSW5NZW1vcnlGaWxlTG9hZGVyV29ya2VyRGF0YSB7XG4gIGRvY3VtZW50OiBzdHJpbmc7XG4gIHZlcmJvc2U6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUm91dGVyc0V4dHJhY3RvcldvcmtlclJlc3VsdCB7XG4gIHJvdXRlczogc3RyaW5nW107XG4gIHdhcm5pbmdzPzogc3RyaW5nW107XG59XG5cbi8qKlxuICogVGhpcyBpcyBwYXNzZWQgYXMgd29ya2VyRGF0YSB3aGVuIHNldHRpbmcgdXAgdGhlIHdvcmtlciB2aWEgdGhlIGBwaXNjaW5hYCBwYWNrYWdlLlxuICovXG5jb25zdCB7IGRvY3VtZW50LCB2ZXJib3NlIH0gPSB3b3JrZXJEYXRhIGFzIFJvdXRlc0V4dHJhY3RvcldvcmtlckRhdGE7XG5cbmV4cG9ydCBkZWZhdWx0IGFzeW5jIGZ1bmN0aW9uICgpOiBQcm9taXNlPFJvdXRlcnNFeHRyYWN0b3JXb3JrZXJSZXN1bHQ+IHtcbiAgY29uc3QgeyBkZWZhdWx0OiBib290c3RyYXBBcHBGbk9yTW9kdWxlLCBleHRyYWN0Um91dGVzIH0gPVxuICAgIGF3YWl0IGxvYWRFc21Nb2R1bGU8TWFpblNlcnZlckJ1bmRsZUV4cG9ydHM+KCcuL21haW4uc2VydmVyLm1qcycpO1xuXG4gIGNvbnN0IHNraXBwZWRSZWRpcmVjdHM6IHN0cmluZ1tdID0gW107XG4gIGNvbnN0IHNraXBwZWRPdGhlcnM6IHN0cmluZ1tdID0gW107XG4gIGNvbnN0IHJvdXRlczogc3RyaW5nW10gPSBbXTtcblxuICBmb3IgYXdhaXQgKGNvbnN0IHsgcm91dGUsIHN1Y2Nlc3MsIHJlZGlyZWN0IH0gb2YgZXh0cmFjdFJvdXRlcyhcbiAgICBib290c3RyYXBBcHBGbk9yTW9kdWxlLFxuICAgIGRvY3VtZW50LFxuICApKSB7XG4gICAgaWYgKHN1Y2Nlc3MpIHtcbiAgICAgIHJvdXRlcy5wdXNoKHJvdXRlKTtcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cblxuICAgIGlmIChyZWRpcmVjdCkge1xuICAgICAgc2tpcHBlZFJlZGlyZWN0cy5wdXNoKHJvdXRlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgc2tpcHBlZE90aGVycy5wdXNoKHJvdXRlKTtcbiAgICB9XG4gIH1cblxuICBpZiAoIXZlcmJvc2UpIHtcbiAgICByZXR1cm4geyByb3V0ZXMgfTtcbiAgfVxuXG4gIGxldCB3YXJuaW5nczogc3RyaW5nW10gfCB1bmRlZmluZWQ7XG4gIGlmIChza2lwcGVkT3RoZXJzLmxlbmd0aCkge1xuICAgICh3YXJuaW5ncyA/Pz0gW10pLnB1c2goXG4gICAgICAnVGhlIGZvbGxvd2luZyByb3V0ZXMgd2VyZSBza2lwcGVkIGZyb20gcHJlcmVuZGVyaW5nIGJlY2F1c2UgdGhleSBjb250YWluIHJvdXRlcyB3aXRoIGR5bmFtaWMgcGFyYW1ldGVyczpcXG4nICtcbiAgICAgICAgc2tpcHBlZE90aGVycy5qb2luKCdcXG4nKSxcbiAgICApO1xuICB9XG5cbiAgaWYgKHNraXBwZWRSZWRpcmVjdHMubGVuZ3RoKSB7XG4gICAgKHdhcm5pbmdzID8/PSBbXSkucHVzaChcbiAgICAgICdUaGUgZm9sbG93aW5nIHJvdXRlcyB3ZXJlIHNraXBwZWQgZnJvbSBwcmVyZW5kZXJpbmcgYmVjYXVzZSB0aGV5IGNvbnRhaW4gcmVkaXJlY3RzOlxcbicsXG4gICAgICBza2lwcGVkUmVkaXJlY3RzLmpvaW4oJ1xcbicpLFxuICAgICk7XG4gIH1cblxuICByZXR1cm4geyByb3V0ZXMsIHdhcm5pbmdzIH07XG59XG4iXX0=
|
|
@@ -6,18 +6,13 @@
|
|
|
6
6
|
* found in the LICENSE file at https://angular.io/license
|
|
7
7
|
*/
|
|
8
8
|
import type { Config, Filesystem } from '@angular/service-worker/config';
|
|
9
|
-
import type { OutputFile } from 'esbuild';
|
|
10
9
|
import { promises as fsPromises } from 'node:fs';
|
|
10
|
+
import { BuildOutputFile } from '../tools/esbuild/bundler-context';
|
|
11
|
+
import { BuildOutputAsset } from '../tools/esbuild/bundler-execution-result';
|
|
11
12
|
export declare function augmentAppWithServiceWorker(appRoot: string, workspaceRoot: string, outputPath: string, baseHref: string, ngswConfigPath?: string, inputputFileSystem?: typeof fsPromises, outputFileSystem?: typeof fsPromises): Promise<void>;
|
|
12
|
-
export declare function augmentAppWithServiceWorkerEsbuild(workspaceRoot: string, configPath: string, baseHref: string, outputFiles:
|
|
13
|
-
source: string;
|
|
14
|
-
destination: string;
|
|
15
|
-
}[]): Promise<{
|
|
13
|
+
export declare function augmentAppWithServiceWorkerEsbuild(workspaceRoot: string, configPath: string, baseHref: string, outputFiles: BuildOutputFile[], assetFiles: BuildOutputAsset[]): Promise<{
|
|
16
14
|
manifest: string;
|
|
17
|
-
assetFiles:
|
|
18
|
-
source: string;
|
|
19
|
-
destination: string;
|
|
20
|
-
}[];
|
|
15
|
+
assetFiles: BuildOutputAsset[];
|
|
21
16
|
}>;
|
|
22
17
|
export declare function augmentAppWithServiceWorkerCore(config: Config, serviceWorkerFilesystem: Filesystem, baseHref: string): Promise<{
|
|
23
18
|
manifest: string;
|
|
@@ -34,6 +34,7 @@ exports.augmentAppWithServiceWorkerCore = exports.augmentAppWithServiceWorkerEsb
|
|
|
34
34
|
const crypto = __importStar(require("crypto"));
|
|
35
35
|
const node_fs_1 = require("node:fs");
|
|
36
36
|
const path = __importStar(require("path"));
|
|
37
|
+
const bundler_context_1 = require("../tools/esbuild/bundler-context");
|
|
37
38
|
const error_1 = require("./error");
|
|
38
39
|
const load_esm_1 = require("./load-esm");
|
|
39
40
|
class CliFilesystem {
|
|
@@ -84,7 +85,9 @@ class ResultFilesystem {
|
|
|
84
85
|
fileReaders = new Map();
|
|
85
86
|
constructor(outputFiles, assetFiles) {
|
|
86
87
|
for (const file of outputFiles) {
|
|
87
|
-
|
|
88
|
+
if (file.type === bundler_context_1.BuildOutputFileType.Media || file.type === bundler_context_1.BuildOutputFileType.Browser) {
|
|
89
|
+
this.fileReaders.set('/' + file.path.replace(/\\/g, '/'), async () => file.contents);
|
|
90
|
+
}
|
|
88
91
|
}
|
|
89
92
|
for (const file of assetFiles) {
|
|
90
93
|
this.fileReaders.set('/' + file.destination.replace(/\\/g, '/'), () => node_fs_1.promises.readFile(file.source));
|
|
@@ -203,4 +206,4 @@ async function augmentAppWithServiceWorkerCore(config, serviceWorkerFilesystem,
|
|
|
203
206
|
return result;
|
|
204
207
|
}
|
|
205
208
|
exports.augmentAppWithServiceWorkerCore = augmentAppWithServiceWorkerCore;
|
|
206
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS13b3JrZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyX2RldmtpdC9idWlsZF9hbmd1bGFyL3NyYy91dGlscy9zZXJ2aWNlLXdvcmtlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUdILCtDQUFpQztBQUVqQyxxQ0FBdUY7QUFDdkYsMkNBQTZCO0FBQzdCLG1DQUF3QztBQUN4Qyx5Q0FBMkM7QUFFM0MsTUFBTSxhQUFhO0lBQ0c7SUFBK0I7SUFBbkQsWUFBb0IsRUFBcUIsRUFBVSxJQUFZO1FBQTNDLE9BQUUsR0FBRixFQUFFLENBQW1CO1FBQVUsU0FBSSxHQUFKLElBQUksQ0FBUTtJQUFHLENBQUM7SUFFbkUsSUFBSSxDQUFDLEdBQVc7UUFDZCxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQsSUFBSSxDQUFDLElBQVk7UUFDZixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBWTtRQUNyQixPQUFPLE1BQU07YUFDVixVQUFVLENBQUMsTUFBTSxDQUFDO2FBQ2xCLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQzthQUNuRCxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkIsQ0FBQztJQUVELEtBQUssQ0FBQyxLQUFhLEVBQUUsUUFBZ0I7UUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQywy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RSxRQUFRLENBQUMsQ0FBQztJQUM5RSxNQUFNLE1BQU0sR0FBRyxNQUFNLFNBQVMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFL0MscUJBQXFCO0lBQ3JCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztJQUVqRCxrQ0FBa0M7SUFDbEMsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyx3Q0FBd0MsQ0FBQyxDQUFDO0lBRTdFLE1BQU0sTUFBTSxHQUFHO1FBQ2IsUUFBUTtRQUNSLG1CQUFtQjtRQUNuQixVQUFVLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLENBQUM7S0FDcEUsQ0FBQztJQUVGLDJDQUEyQztJQUMzQyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztJQUMzRSxJQUFJLElBQUEsb0JBQVUsRUFBQyxVQUFVLENBQUMsRUFBRTtRQUMxQixNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLHFCQUFxQixFQUFFLENBQUMsQ0FBQztRQUNuRixNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLGtCQUFrQixFQUFFLENBQUMsQ0FBQztLQUNqRjtJQUVELE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUM7QUF0Q0QsMEVBc0NDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB0eXBlIHsgQ29uZmlnLCBGaWxlc3lzdGVtIH0gZnJvbSAnQGFuZ3VsYXIvc2VydmljZS13b3JrZXIvY29uZmlnJztcbmltcG9ydCAqIGFzIGNyeXB0byBmcm9tICdjcnlwdG8nO1xuaW1wb3J0IHR5cGUgeyBPdXRwdXRGaWxlIH0gZnJvbSAnZXNidWlsZCc7XG5pbXBvcnQgeyBleGlzdHNTeW5jLCBjb25zdGFudHMgYXMgZnNDb25zdGFudHMsIHByb21pc2VzIGFzIGZzUHJvbWlzZXMgfSBmcm9tICdub2RlOmZzJztcbmltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgeyBhc3NlcnRJc0Vycm9yIH0gZnJvbSAnLi9lcnJvcic7XG5pbXBvcnQgeyBsb2FkRXNtTW9kdWxlIH0gZnJvbSAnLi9sb2FkLWVzbSc7XG5cbmNsYXNzIENsaUZpbGVzeXN0ZW0gaW1wbGVtZW50cyBGaWxlc3lzdGVtIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmczogdHlwZW9mIGZzUHJvbWlzZXMsIHByaXZhdGUgYmFzZTogc3RyaW5nKSB7fVxuXG4gIGxpc3QoZGlyOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gICAgcmV0dXJuIHRoaXMuX3JlY3Vyc2l2ZUxpc3QodGhpcy5fcmVzb2x2ZShkaXIpLCBbXSk7XG4gIH1cblxuICByZWFkKGZpbGU6IHN0cmluZyk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMuZnMucmVhZEZpbGUodGhpcy5fcmVzb2x2ZShmaWxlKSwgJ3V0Zi04Jyk7XG4gIH1cblxuICBhc3luYyBoYXNoKGZpbGU6IHN0cmluZyk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIGNyeXB0b1xuICAgICAgLmNyZWF0ZUhhc2goJ3NoYTEnKVxuICAgICAgLnVwZGF0ZShhd2FpdCB0aGlzLmZzLnJlYWRGaWxlKHRoaXMuX3Jlc29sdmUoZmlsZSkpKVxuICAgICAgLmRpZ2VzdCgnaGV4Jyk7XG4gIH1cblxuICB3cml0ZShfZmlsZTogc3RyaW5nLCBfY29udGVudDogc3RyaW5nKTogbmV2ZXIge1xuICAgIHRocm93IG5ldyBFcnJvcignVGhpcyBzaG91bGQgbmV2ZXIgaGFwcGVuLicpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVzb2x2ZShmaWxlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBwYXRoLmpvaW4odGhpcy5iYXNlLCBmaWxlKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgX3JlY3Vyc2l2ZUxpc3QoZGlyOiBzdHJpbmcsIGl0ZW1zOiBzdHJpbmdbXSk6IFByb21pc2U8c3RyaW5nW10+IHtcbiAgICBjb25zdCBzdWJkaXJlY3RvcmllcyA9IFtdO1xuICAgIGZvciAoY29uc3QgZW50cnkgb2YgYXdhaXQgdGhpcy5mcy5yZWFkZGlyKGRpcikpIHtcbiAgICAgIGNvbnN0IGVudHJ5UGF0aCA9IHBhdGguam9pbihkaXIsIGVudHJ5KTtcbiAgICAgIGNvbnN0IHN0YXRzID0gYXdhaXQgdGhpcy5mcy5zdGF0KGVudHJ5UGF0aCk7XG5cbiAgICAgIGlmIChzdGF0cy5pc0ZpbGUoKSkge1xuICAgICAgICAvLyBVc2VzIHBvc2l4IHBhdGhzIHNpbmNlIHRoZSBzZXJ2aWNlIHdvcmtlciBleHBlY3RzIFVSTHNcbiAgICAgICAgaXRlbXMucHVzaCgnLycgKyBwYXRoLnJlbGF0aXZlKHRoaXMuYmFzZSwgZW50cnlQYXRoKS5yZXBsYWNlKC9cXFxcL2csICcvJykpO1xuICAgICAgfSBlbHNlIGlmIChzdGF0cy5pc0RpcmVjdG9yeSgpKSB7XG4gICAgICAgIHN1YmRpcmVjdG9yaWVzLnB1c2goZW50cnlQYXRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IHN1YmRpcmVjdG9yeSBvZiBzdWJkaXJlY3Rvcmllcykge1xuICAgICAgYXdhaXQgdGhpcy5fcmVjdXJzaXZlTGlzdChzdWJkaXJlY3RvcnksIGl0ZW1zKTtcbiAgICB9XG5cbiAgICByZXR1cm4gaXRlbXM7XG4gIH1cbn1cblxuY2xhc3MgUmVzdWx0RmlsZXN5c3RlbSBpbXBsZW1lbnRzIEZpbGVzeXN0ZW0ge1xuICBwcml2YXRlIHJlYWRvbmx5IGZpbGVSZWFkZXJzID0gbmV3IE1hcDxzdHJpbmcsICgpID0+IFByb21pc2U8VWludDhBcnJheT4+KCk7XG5cbiAgY29uc3RydWN0b3Iob3V0cHV0RmlsZXM6IE91dHB1dEZpbGVbXSwgYXNzZXRGaWxlczogeyBzb3VyY2U6IHN0cmluZzsgZGVzdGluYXRpb246IHN0cmluZyB9W10pIHtcbiAgICBmb3IgKGNvbnN0IGZpbGUgb2Ygb3V0cHV0RmlsZXMpIHtcbiAgICAgIHRoaXMuZmlsZVJlYWRlcnMuc2V0KCcvJyArIGZpbGUucGF0aC5yZXBsYWNlKC9cXFxcL2csICcvJyksIGFzeW5jICgpID0+IGZpbGUuY29udGVudHMpO1xuICAgIH1cbiAgICBmb3IgKGNvbnN0IGZpbGUgb2YgYXNzZXRGaWxlcykge1xuICAgICAgdGhpcy5maWxlUmVhZGVycy5zZXQoJy8nICsgZmlsZS5kZXN0aW5hdGlvbi5yZXBsYWNlKC9cXFxcL2csICcvJyksICgpID0+XG4gICAgICAgIGZzUHJvbWlzZXMucmVhZEZpbGUoZmlsZS5zb3VyY2UpLFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBsaXN0KGRpcjogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xuICAgIGlmIChkaXIgIT09ICcvJykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdTZXJ2aWNld29ya2VyIG1hbmlmZXN0IGdlbmVyYXRvciBzaG91bGQgb25seSBsaXN0IGZpbGVzIGZyb20gcm9vdC4nKTtcbiAgICB9XG5cbiAgICByZXR1cm4gWy4uLnRoaXMuZmlsZVJlYWRlcnMua2V5cygpXTtcbiAgfVxuXG4gIGFzeW5jIHJlYWQoZmlsZTogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBjb25zdCByZWFkZXIgPSB0aGlzLmZpbGVSZWFkZXJzLmdldChmaWxlKTtcbiAgICBpZiAocmVhZGVyID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmlsZSBkb2VzIG5vdCBleGlzdC4nKTtcbiAgICB9XG4gICAgY29uc3QgY29udGVudHMgPSBhd2FpdCByZWFkZXIoKTtcblxuICAgIHJldHVybiBCdWZmZXIuZnJvbShjb250ZW50cy5idWZmZXIsIGNvbnRlbnRzLmJ5dGVPZmZzZXQsIGNvbnRlbnRzLmJ5dGVMZW5ndGgpLnRvU3RyaW5nKCd1dGYtOCcpO1xuICB9XG5cbiAgYXN5bmMgaGFzaChmaWxlOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIGNvbnN0IHJlYWRlciA9IHRoaXMuZmlsZVJlYWRlcnMuZ2V0KGZpbGUpO1xuICAgIGlmIChyZWFkZXIgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGaWxlIGRvZXMgbm90IGV4aXN0LicpO1xuICAgIH1cblxuICAgIHJldHVybiBjcnlwdG9cbiAgICAgIC5jcmVhdGVIYXNoKCdzaGExJylcbiAgICAgIC51cGRhdGUoYXdhaXQgcmVhZGVyKCkpXG4gICAgICAuZGlnZXN0KCdoZXgnKTtcbiAgfVxuXG4gIHdyaXRlKCk6IG5ldmVyIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1NlcnZpY2V3b3JrZXIgbWFuaWZlc3QgZ2VuZXJhdG9yIHNob3VsZCBub3QgYXR0ZW1wdGVkIHRvIHdyaXRlLicpO1xuICB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBhdWdtZW50QXBwV2l0aFNlcnZpY2VXb3JrZXIoXG4gIGFwcFJvb3Q6IHN0cmluZyxcbiAgd29ya3NwYWNlUm9vdDogc3RyaW5nLFxuICBvdXRwdXRQYXRoOiBzdHJpbmcsXG4gIGJhc2VIcmVmOiBzdHJpbmcsXG4gIG5nc3dDb25maWdQYXRoPzogc3RyaW5nLFxuICBpbnB1dHB1dEZpbGVTeXN0ZW0gPSBmc1Byb21pc2VzLFxuICBvdXRwdXRGaWxlU3lzdGVtID0gZnNQcm9taXNlcyxcbik6IFByb21pc2U8dm9pZD4ge1xuICAvLyBEZXRlcm1pbmUgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZSBwYXRoXG4gIGNvbnN0IGNvbmZpZ1BhdGggPSBuZ3N3Q29uZmlnUGF0aFxuICAgID8gcGF0aC5qb2luKHdvcmtzcGFjZVJvb3QsIG5nc3dDb25maWdQYXRoKVxuICAgIDogcGF0aC5qb2luKGFwcFJvb3QsICduZ3N3LWNvbmZpZy5qc29uJyk7XG5cbiAgLy8gUmVhZCB0aGUgY29uZmlndXJhdGlvbiBmaWxlXG4gIGxldCBjb25maWc6IENvbmZpZyB8IHVuZGVmaW5lZDtcbiAgdHJ5IHtcbiAgICBjb25zdCBjb25maWd1cmF0aW9uRGF0YSA9IGF3YWl0IGlucHV0cHV0RmlsZVN5c3RlbS5yZWFkRmlsZShjb25maWdQYXRoLCAndXRmLTgnKTtcbiAgICBjb25maWcgPSBKU09OLnBhcnNlKGNvbmZpZ3VyYXRpb25EYXRhKSBhcyBDb25maWc7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgYXNzZXJ0SXNFcnJvcihlcnJvcik7XG4gICAgaWYgKGVycm9yLmNvZGUgPT09ICdFTk9FTlQnKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdFcnJvcjogRXhwZWN0ZWQgdG8gZmluZCBhbiBuZ3N3LWNvbmZpZy5qc29uIGNvbmZpZ3VyYXRpb24gZmlsZScgK1xuICAgICAgICAgIGAgaW4gdGhlICR7YXBwUm9vdH0gZm9sZGVyLiBFaXRoZXIgcHJvdmlkZSBvbmUgb3JgICtcbiAgICAgICAgICAnIGRpc2FibGUgU2VydmljZSBXb3JrZXIgaW4gdGhlIGFuZ3VsYXIuanNvbiBjb25maWd1cmF0aW9uIGZpbGUuJyxcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGF1Z21lbnRBcHBXaXRoU2VydmljZVdvcmtlckNvcmUoXG4gICAgY29uZmlnLFxuICAgIG5ldyBDbGlGaWxlc3lzdGVtKG91dHB1dEZpbGVTeXN0ZW0sIG91dHB1dFBhdGgpLFxuICAgIGJhc2VIcmVmLFxuICApO1xuXG4gIGNvbnN0IGNvcHkgPSBhc3luYyAoc3JjOiBzdHJpbmcsIGRlc3Q6IHN0cmluZyk6IFByb21pc2U8dm9pZD4gPT4ge1xuICAgIGNvbnN0IHJlc29sdmVkRGVzdCA9IHBhdGguam9pbihvdXRwdXRQYXRoLCBkZXN0KTtcblxuICAgIHJldHVybiBpbnB1dHB1dEZpbGVTeXN0ZW0gPT09IG91dHB1dEZpbGVTeXN0ZW1cbiAgICAgID8gLy8gTmF0aXZlIEZTIChCdWlsZGVyKS5cbiAgICAgICAgaW5wdXRwdXRGaWxlU3lzdGVtLmNvcHlGaWxlKHNyYywgcmVzb2x2ZWREZXN0LCBmc0NvbnN0YW50cy5DT1BZRklMRV9GSUNMT05FKVxuICAgICAgOiAvLyBtZW1mcyAoV2VicGFjayk6IFJlYWQgdGhlIGZpbGUgZnJvbSB0aGUgaW5wdXQgRlMgKGRpc2spIGFuZCB3cml0ZSBpdCB0byB0aGUgb3V0cHV0IEZTIChtZW1vcnkpLlxuICAgICAgICBvdXRwdXRGaWxlU3lzdGVtLndyaXRlRmlsZShyZXNvbHZlZERlc3QsIGF3YWl0IGlucHV0cHV0RmlsZVN5c3RlbS5yZWFkRmlsZShzcmMpKTtcbiAgfTtcblxuICBhd2FpdCBvdXRwdXRGaWxlU3lzdGVtLndyaXRlRmlsZShwYXRoLmpvaW4ob3V0cHV0UGF0aCwgJ25nc3cuanNvbicpLCByZXN1bHQubWFuaWZlc3QpO1xuXG4gIGZvciAoY29uc3QgeyBzb3VyY2UsIGRlc3RpbmF0aW9uIH0gb2YgcmVzdWx0LmFzc2V0RmlsZXMpIHtcbiAgICBhd2FpdCBjb3B5KHNvdXJjZSwgZGVzdGluYXRpb24pO1xuICB9XG59XG5cbi8vIFRoaXMgaXMgY3VycmVudGx5IHVzZWQgYnkgdGhlIGVzYnVpbGQtYmFzZWQgYnVpbGRlclxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGF1Z21lbnRBcHBXaXRoU2VydmljZVdvcmtlckVzYnVpbGQoXG4gIHdvcmtzcGFjZVJvb3Q6IHN0cmluZyxcbiAgY29uZmlnUGF0aDogc3RyaW5nLFxuICBiYXNlSHJlZjogc3RyaW5nLFxuICBvdXRwdXRGaWxlczogT3V0cHV0RmlsZVtdLFxuICBhc3NldEZpbGVzOiB7IHNvdXJjZTogc3RyaW5nOyBkZXN0aW5hdGlvbjogc3RyaW5nIH1bXSxcbik6IFByb21pc2U8eyBtYW5pZmVzdDogc3RyaW5nOyBhc3NldEZpbGVzOiB7IHNvdXJjZTogc3RyaW5nOyBkZXN0aW5hdGlvbjogc3RyaW5nIH1bXSB9PiB7XG4gIC8vIFJlYWQgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZVxuICBsZXQgY29uZmlnOiBDb25maWcgfCB1bmRlZmluZWQ7XG4gIHRyeSB7XG4gICAgY29uc3QgY29uZmlndXJhdGlvbkRhdGEgPSBhd2FpdCBmc1Byb21pc2VzLnJlYWRGaWxlKGNvbmZpZ1BhdGgsICd1dGYtOCcpO1xuICAgIGNvbmZpZyA9IEpTT04ucGFyc2UoY29uZmlndXJhdGlvbkRhdGEpIGFzIENvbmZpZztcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBhc3NlcnRJc0Vycm9yKGVycm9yKTtcbiAgICBpZiAoZXJyb3IuY29kZSA9PT0gJ0VOT0VOVCcpIHtcbiAgICAgIC8vIFRPRE86IEdlbmVyYXRlIGFuIGVycm9yIG9iamVjdCB0aGF0IGNhbiBiZSBjb25zdW1lZCBieSB0aGUgZXNidWlsZC1iYXNlZCBidWlsZGVyXG4gICAgICBjb25zdCBtZXNzYWdlID0gYFNlcnZpY2Ugd29ya2VyIGNvbmZpZ3VyYXRpb24gZmlsZSBcIiR7cGF0aC5yZWxhdGl2ZShcbiAgICAgICAgd29ya3NwYWNlUm9vdCxcbiAgICAgICAgY29uZmlnUGF0aCxcbiAgICAgICl9XCIgY291bGQgbm90IGJlIGZvdW5kLmA7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IobWVzc2FnZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBhdWdtZW50QXBwV2l0aFNlcnZpY2VXb3JrZXJDb3JlKFxuICAgIGNvbmZpZyxcbiAgICBuZXcgUmVzdWx0RmlsZXN5c3RlbShvdXRwdXRGaWxlcywgYXNzZXRGaWxlcyksXG4gICAgYmFzZUhyZWYsXG4gICk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBhdWdtZW50QXBwV2l0aFNlcnZpY2VXb3JrZXJDb3JlKFxuICBjb25maWc6IENvbmZpZyxcbiAgc2VydmljZVdvcmtlckZpbGVzeXN0ZW06IEZpbGVzeXN0ZW0sXG4gIGJhc2VIcmVmOiBzdHJpbmcsXG4pOiBQcm9taXNlPHsgbWFuaWZlc3Q6IHN0cmluZzsgYXNzZXRGaWxlczogeyBzb3VyY2U6IHN0cmluZzsgZGVzdGluYXRpb246IHN0cmluZyB9W10gfT4ge1xuICAvLyBMb2FkIEVTTSBgQGFuZ3VsYXIvc2VydmljZS13b3JrZXIvY29uZmlnYCB1c2luZyB0aGUgVHlwZVNjcmlwdCBkeW5hbWljIGltcG9ydCB3b3JrYXJvdW5kLlxuICAvLyBPbmNlIFR5cGVTY3JpcHQgcHJvdmlkZXMgc3VwcG9ydCBmb3Iga2VlcGluZyB0aGUgZHluYW1pYyBpbXBvcnQgdGhpcyB3b3JrYXJvdW5kIGNhbiBiZVxuICAvLyBjaGFuZ2VkIHRvIGEgZGlyZWN0IGR5bmFtaWMgaW1wb3J0LlxuICBjb25zdCBHZW5lcmF0b3JDb25zdHJ1Y3RvciA9IChcbiAgICBhd2FpdCBsb2FkRXNtTW9kdWxlPHR5cGVvZiBpbXBvcnQoJ0Bhbmd1bGFyL3NlcnZpY2Utd29ya2VyL2NvbmZpZycpPihcbiAgICAgICdAYW5ndWxhci9zZXJ2aWNlLXdvcmtlci9jb25maWcnLFxuICAgIClcbiAgKS5HZW5lcmF0b3I7XG5cbiAgLy8gR2VuZXJhdGUgdGhlIG1hbmlmZXN0XG4gIGNvbnN0IGdlbmVyYXRvciA9IG5ldyBHZW5lcmF0b3JDb25zdHJ1Y3RvcihzZXJ2aWNlV29ya2VyRmlsZXN5c3RlbSwgYmFzZUhyZWYpO1xuICBjb25zdCBvdXRwdXQgPSBhd2FpdCBnZW5lcmF0b3IucHJvY2Vzcyhjb25maWcpO1xuXG4gIC8vIFdyaXRlIHRoZSBtYW5pZmVzdFxuICBjb25zdCBtYW5pZmVzdCA9IEpTT04uc3RyaW5naWZ5KG91dHB1dCwgbnVsbCwgMik7XG5cbiAgLy8gRmluZCB0aGUgc2VydmljZSB3b3JrZXIgcGFja2FnZVxuICBjb25zdCB3b3JrZXJQYXRoID0gcmVxdWlyZS5yZXNvbHZlKCdAYW5ndWxhci9zZXJ2aWNlLXdvcmtlci9uZ3N3LXdvcmtlci5qcycpO1xuXG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBtYW5pZmVzdCxcbiAgICAvLyBNYWluIHdvcmtlciBjb2RlXG4gICAgYXNzZXRGaWxlczogW3sgc291cmNlOiB3b3JrZXJQYXRoLCBkZXN0aW5hdGlvbjogJ25nc3ctd29ya2VyLmpzJyB9XSxcbiAgfTtcblxuICAvLyBJZiBwcmVzZW50LCB3cml0ZSB0aGUgc2FmZXR5IHdvcmtlciBjb2RlXG4gIGNvbnN0IHNhZmV0eVBhdGggPSBwYXRoLmpvaW4ocGF0aC5kaXJuYW1lKHdvcmtlclBhdGgpLCAnc2FmZXR5LXdvcmtlci5qcycpO1xuICBpZiAoZXhpc3RzU3luYyhzYWZldHlQYXRoKSkge1xuICAgIHJlc3VsdC5hc3NldEZpbGVzLnB1c2goeyBzb3VyY2U6IHNhZmV0eVBhdGgsIGRlc3RpbmF0aW9uOiAnd29ya2VyLWJhc2ljLm1pbi5qcycgfSk7XG4gICAgcmVzdWx0LmFzc2V0RmlsZXMucHVzaCh7IHNvdXJjZTogc2FmZXR5UGF0aCwgZGVzdGluYXRpb246ICdzYWZldHktd29ya2VyLmpzJyB9KTtcbiAgfVxuXG4gIHJldHVybiByZXN1bHQ7XG59XG4iXX0=
|
|
209
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS13b3JrZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyX2RldmtpdC9idWlsZF9hbmd1bGFyL3NyYy91dGlscy9zZXJ2aWNlLXdvcmtlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUdILCtDQUFpQztBQUNqQyxxQ0FBdUY7QUFDdkYsMkNBQTZCO0FBQzdCLHNFQUF3RjtBQUV4RixtQ0FBd0M7QUFDeEMseUNBQTJDO0FBRTNDLE1BQU0sYUFBYTtJQUVQO0lBQ0E7SUFGVixZQUNVLEVBQXFCLEVBQ3JCLElBQVk7UUFEWixPQUFFLEdBQUYsRUFBRSxDQUFtQjtRQUNyQixTQUFJLEdBQUosSUFBSSxDQUFRO0lBQ25CLENBQUM7SUFFSixJQUFJLENBQUMsR0FBVztRQUNkLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRCxJQUFJLENBQUMsSUFBWTtRQUNmLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFZO1FBQ3JCLE9BQU8sTUFBTTthQUNWLFVBQVUsQ0FBQyxNQUFNLENBQUM7YUFDbEIsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2FBQ25ELE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuQixDQUFDO0lBRUQsS0FBSyxDQUFDLEtBQWEsRUFBRSxRQUFnQjtRQUNuQyxNQUFNLElBQUks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KiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHR5cGUgeyBDb25maWcsIEZpbGVzeXN0ZW0gfSBmcm9tICdAYW5ndWxhci9zZXJ2aWNlLXdvcmtlci9jb25maWcnO1xuaW1wb3J0ICogYXMgY3J5cHRvIGZyb20gJ2NyeXB0byc7XG5pbXBvcnQgeyBleGlzdHNTeW5jLCBjb25zdGFudHMgYXMgZnNDb25zdGFudHMsIHByb21pc2VzIGFzIGZzUHJvbWlzZXMgfSBmcm9tICdub2RlOmZzJztcbmltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgeyBCdWlsZE91dHB1dEZpbGUsIEJ1aWxkT3V0cHV0RmlsZVR5cGUgfSBmcm9tICcuLi90b29scy9lc2J1aWxkL2J1bmRsZXItY29udGV4dCc7XG5pbXBvcnQgeyBCdWlsZE91dHB1dEFzc2V0IH0gZnJvbSAnLi4vdG9vbHMvZXNidWlsZC9idW5kbGVyLWV4ZWN1dGlvbi1yZXN1bHQnO1xuaW1wb3J0IHsgYXNzZXJ0SXNFcnJvciB9IGZyb20gJy4vZXJyb3InO1xuaW1wb3J0IHsgbG9hZEVzbU1vZHVsZSB9IGZyb20gJy4vbG9hZC1lc20nO1xuXG5jbGFzcyBDbGlGaWxlc3lzdGVtIGltcGxlbWVudHMgRmlsZXN5c3RlbSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZnM6IHR5cGVvZiBmc1Byb21pc2VzLFxuICAgIHByaXZhdGUgYmFzZTogc3RyaW5nLFxuICApIHt9XG5cbiAgbGlzdChkaXI6IHN0cmluZyk6IFByb21pc2U8c3RyaW5nW10+IHtcbiAgICByZXR1cm4gdGhpcy5fcmVjdXJzaXZlTGlzdCh0aGlzLl9yZXNvbHZlKGRpciksIFtdKTtcbiAgfVxuXG4gIHJlYWQoZmlsZTogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5mcy5yZWFkRmlsZSh0aGlzLl9yZXNvbHZlKGZpbGUpLCAndXRmLTgnKTtcbiAgfVxuXG4gIGFzeW5jIGhhc2goZmlsZTogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gY3J5cHRvXG4gICAgICAuY3JlYXRlSGFzaCgnc2hhMScpXG4gICAgICAudXBkYXRlKGF3YWl0IHRoaXMuZnMucmVhZEZpbGUodGhpcy5fcmVzb2x2ZShmaWxlKSkpXG4gICAgICAuZGlnZXN0KCdoZXgnKTtcbiAgfVxuXG4gIHdyaXRlKF9maWxlOiBzdHJpbmcsIF9jb250ZW50OiBzdHJpbmcpOiBuZXZlciB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdUaGlzIHNob3VsZCBuZXZlciBoYXBwZW4uJyk7XG4gIH1cblxuICBwcml2YXRlIF9yZXNvbHZlKGZpbGU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHBhdGguam9pbih0aGlzLmJhc2UsIGZpbGUpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBfcmVjdXJzaXZlTGlzdChkaXI6IHN0cmluZywgaXRlbXM6IHN0cmluZ1tdKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xuICAgIGNvbnN0IHN1YmRpcmVjdG9yaWVzID0gW107XG4gICAgZm9yIChjb25zdCBlbnRyeSBvZiBhd2FpdCB0aGlzLmZzLnJlYWRkaXIoZGlyKSkge1xuICAgICAgY29uc3QgZW50cnlQYXRoID0gcGF0aC5qb2luKGRpciwgZW50cnkpO1xuICAgICAgY29uc3Qgc3RhdHMgPSBhd2FpdCB0aGlzLmZzLnN0YXQoZW50cnlQYXRoKTtcblxuICAgICAgaWYgKHN0YXRzLmlzRmlsZSgpKSB7XG4gICAgICAgIC8vIFVzZXMgcG9zaXggcGF0aHMgc2luY2UgdGhlIHNlcnZpY2Ugd29ya2VyIGV4cGVjdHMgVVJMc1xuICAgICAgICBpdGVtcy5wdXNoKCcvJyArIHBhdGgucmVsYXRpdmUodGhpcy5iYXNlLCBlbnRyeVBhdGgpLnJlcGxhY2UoL1xcXFwvZywgJy8nKSk7XG4gICAgICB9IGVsc2UgaWYgKHN0YXRzLmlzRGlyZWN0b3J5KCkpIHtcbiAgICAgICAgc3ViZGlyZWN0b3JpZXMucHVzaChlbnRyeVBhdGgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGZvciAoY29uc3Qgc3ViZGlyZWN0b3J5IG9mIHN1YmRpcmVjdG9yaWVzKSB7XG4gICAgICBhd2FpdCB0aGlzLl9yZWN1cnNpdmVMaXN0KHN1YmRpcmVjdG9yeSwgaXRlbXMpO1xuICAgIH1cblxuICAgIHJldHVybiBpdGVtcztcbiAgfVxufVxuXG5jbGFzcyBSZXN1bHRGaWxlc3lzdGVtIGltcGxlbWVudHMgRmlsZXN5c3RlbSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgZmlsZVJlYWRlcnMgPSBuZXcgTWFwPHN0cmluZywgKCkgPT4gUHJvbWlzZTxVaW50OEFycmF5Pj4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBvdXRwdXRGaWxlczogQnVpbGRPdXRwdXRGaWxlW10sXG4gICAgYXNzZXRGaWxlczogeyBzb3VyY2U6IHN0cmluZzsgZGVzdGluYXRpb246IHN0cmluZyB9W10sXG4gICkge1xuICAgIGZvciAoY29uc3QgZmlsZSBvZiBvdXRwdXRGaWxlcykge1xuICAgICAgaWYgKGZpbGUudHlwZSA9PT0gQnVpbGRPdXRwdXRGaWxlVHlwZS5NZWRpYSB8fCBmaWxlLnR5cGUgPT09IEJ1aWxkT3V0cHV0RmlsZVR5cGUuQnJvd3Nlcikge1xuICAgICAgICB0aGlzLmZpbGVSZWFkZXJzLnNldCgnLycgKyBmaWxlLnBhdGgucmVwbGFjZSgvXFxcXC9nLCAnLycpLCBhc3luYyAoKSA9PiBmaWxlLmNvbnRlbnRzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgZm9yIChjb25zdCBmaWxlIG9mIGFzc2V0RmlsZXMpIHtcbiAgICAgIHRoaXMuZmlsZVJlYWRlcnMuc2V0KCcvJyArIGZpbGUuZGVzdGluYXRpb24ucmVwbGFjZSgvXFxcXC9nLCAnLycpLCAoKSA9PlxuICAgICAgICBmc1Byb21pc2VzLnJlYWRGaWxlKGZpbGUuc291cmNlKSxcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgbGlzdChkaXI6IHN0cmluZyk6IFByb21pc2U8c3RyaW5nW10+IHtcbiAgICBpZiAoZGlyICE9PSAnLycpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignU2VydmljZXdvcmtlciBtYW5pZmVzdCBnZW5lcmF0b3Igc2hvdWxkIG9ubHkgbGlzdCBmaWxlcyBmcm9tIHJvb3QuJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIFsuLi50aGlzLmZpbGVSZWFkZXJzLmtleXMoKV07XG4gIH1cblxuICBhc3luYyByZWFkKGZpbGU6IHN0cmluZyk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgY29uc3QgcmVhZGVyID0gdGhpcy5maWxlUmVhZGVycy5nZXQoZmlsZSk7XG4gICAgaWYgKHJlYWRlciA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ZpbGUgZG9lcyBub3QgZXhpc3QuJyk7XG4gICAgfVxuICAgIGNvbnN0IGNvbnRlbnRzID0gYXdhaXQgcmVhZGVyKCk7XG5cbiAgICByZXR1cm4gQnVmZmVyLmZyb20oY29udGVudHMuYnVmZmVyLCBjb250ZW50cy5ieXRlT2Zmc2V0LCBjb250ZW50cy5ieXRlTGVuZ3RoKS50b1N0cmluZygndXRmLTgnKTtcbiAgfVxuXG4gIGFzeW5jIGhhc2goZmlsZTogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBjb25zdCByZWFkZXIgPSB0aGlzLmZpbGVSZWFkZXJzLmdldChmaWxlKTtcbiAgICBpZiAocmVhZGVyID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmlsZSBkb2VzIG5vdCBleGlzdC4nKTtcbiAgICB9XG5cbiAgICByZXR1cm4gY3J5cHRvXG4gICAgICAuY3JlYXRlSGFzaCgnc2hhMScpXG4gICAgICAudXBkYXRlKGF3YWl0IHJlYWRlcigpKVxuICAgICAgLmRpZ2VzdCgnaGV4Jyk7XG4gIH1cblxuICB3cml0ZSgpOiBuZXZlciB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdTZXJ2aWNld29ya2VyIG1hbmlmZXN0IGdlbmVyYXRvciBzaG91bGQgbm90IGF0dGVtcHRlZCB0byB3cml0ZS4nKTtcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gYXVnbWVudEFwcFdpdGhTZXJ2aWNlV29ya2VyKFxuICBhcHBSb290OiBzdHJpbmcsXG4gIHdvcmtzcGFjZVJvb3Q6IHN0cmluZyxcbiAgb3V0cHV0UGF0aDogc3RyaW5nLFxuICBiYXNlSHJlZjogc3RyaW5nLFxuICBuZ3N3Q29uZmlnUGF0aD86IHN0cmluZyxcbiAgaW5wdXRwdXRGaWxlU3lzdGVtID0gZnNQcm9taXNlcyxcbiAgb3V0cHV0RmlsZVN5c3RlbSA9IGZzUHJvbWlzZXMsXG4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgLy8gRGV0ZXJtaW5lIHRoZSBjb25maWd1cmF0aW9uIGZpbGUgcGF0aFxuICBjb25zdCBjb25maWdQYXRoID0gbmdzd0NvbmZpZ1BhdGhcbiAgICA/IHBhdGguam9pbih3b3Jrc3BhY2VSb290LCBuZ3N3Q29uZmlnUGF0aClcbiAgICA6IHBhdGguam9pbihhcHBSb290LCAnbmdzdy1jb25maWcuanNvbicpO1xuXG4gIC8vIFJlYWQgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZVxuICBsZXQgY29uZmlnOiBDb25maWcgfCB1bmRlZmluZWQ7XG4gIHRyeSB7XG4gICAgY29uc3QgY29uZmlndXJhdGlvbkRhdGEgPSBhd2FpdCBpbnB1dHB1dEZpbGVTeXN0ZW0ucmVhZEZpbGUoY29uZmlnUGF0aCwgJ3V0Zi04Jyk7XG4gICAgY29uZmlnID0gSlNPTi5wYXJzZShjb25maWd1cmF0aW9uRGF0YSkgYXMgQ29uZmlnO1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGFzc2VydElzRXJyb3IoZXJyb3IpO1xuICAgIGlmIChlcnJvci5jb2RlID09PSAnRU5PRU5UJykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnRXJyb3I6IEV4cGVjdGVkIHRvIGZpbmQgYW4gbmdzdy1jb25maWcuanNvbiBjb25maWd1cmF0aW9uIGZpbGUnICtcbiAgICAgICAgICBgIGluIHRoZSAke2FwcFJvb3R9IGZvbGRlci4gRWl0aGVyIHByb3ZpZGUgb25lIG9yYCArXG4gICAgICAgICAgJyBkaXNhYmxlIFNlcnZpY2UgV29ya2VyIGluIHRoZSBhbmd1bGFyLmpzb24gY29uZmlndXJhdGlvbiBmaWxlLicsXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9XG4gIH1cblxuICBjb25zdCByZXN1bHQgPSBhd2FpdCBhdWdtZW50QXBwV2l0aFNlcnZpY2VXb3JrZXJDb3JlKFxuICAgIGNvbmZpZyxcbiAgICBuZXcgQ2xpRmlsZXN5c3RlbShvdXRwdXRGaWxlU3lzdGVtLCBvdXRwdXRQYXRoKSxcbiAgICBiYXNlSHJlZixcbiAgKTtcblxuICBjb25zdCBjb3B5ID0gYXN5bmMgKHNyYzogc3RyaW5nLCBkZXN0OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+ID0+IHtcbiAgICBjb25zdCByZXNvbHZlZERlc3QgPSBwYXRoLmpvaW4ob3V0cHV0UGF0aCwgZGVzdCk7XG5cbiAgICByZXR1cm4gaW5wdXRwdXRGaWxlU3lzdGVtID09PSBvdXRwdXRGaWxlU3lzdGVtXG4gICAgICA/IC8vIE5hdGl2ZSBGUyAoQnVpbGRlcikuXG4gICAgICAgIGlucHV0cHV0RmlsZVN5c3RlbS5jb3B5RmlsZShzcmMsIHJlc29sdmVkRGVzdCwgZnNDb25zdGFudHMuQ09QWUZJTEVfRklDTE9ORSlcbiAgICAgIDogLy8gbWVtZnMgKFdlYnBhY2spOiBSZWFkIHRoZSBmaWxlIGZyb20gdGhlIGlucHV0IEZTIChkaXNrKSBhbmQgd3JpdGUgaXQgdG8gdGhlIG91dHB1dCBGUyAobWVtb3J5KS5cbiAgICAgICAgb3V0cHV0RmlsZVN5c3RlbS53cml0ZUZpbGUocmVzb2x2ZWREZXN0LCBhd2FpdCBpbnB1dHB1dEZpbGVTeXN0ZW0ucmVhZEZpbGUoc3JjKSk7XG4gIH07XG5cbiAgYXdhaXQgb3V0cHV0RmlsZVN5c3RlbS53cml0ZUZpbGUocGF0aC5qb2luKG91dHB1dFBhdGgsICduZ3N3Lmpzb24nKSwgcmVzdWx0Lm1hbmlmZXN0KTtcblxuICBmb3IgKGNvbnN0IHsgc291cmNlLCBkZXN0aW5hdGlvbiB9IG9mIHJlc3VsdC5hc3NldEZpbGVzKSB7XG4gICAgYXdhaXQgY29weShzb3VyY2UsIGRlc3RpbmF0aW9uKTtcbiAgfVxufVxuXG4vLyBUaGlzIGlzIGN1cnJlbnRseSB1c2VkIGJ5IHRoZSBlc2J1aWxkLWJhc2VkIGJ1aWxkZXJcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBhdWdtZW50QXBwV2l0aFNlcnZpY2VXb3JrZXJFc2J1aWxkKFxuICB3b3Jrc3BhY2VSb290OiBzdHJpbmcsXG4gIGNvbmZpZ1BhdGg6IHN0cmluZyxcbiAgYmFzZUhyZWY6IHN0cmluZyxcbiAgb3V0cHV0RmlsZXM6IEJ1aWxkT3V0cHV0RmlsZVtdLFxuICBhc3NldEZpbGVzOiBCdWlsZE91dHB1dEFzc2V0W10sXG4pOiBQcm9taXNlPHsgbWFuaWZlc3Q6IHN0cmluZzsgYXNzZXRGaWxlczogQnVpbGRPdXRwdXRBc3NldFtdIH0+IHtcbiAgLy8gUmVhZCB0aGUgY29uZmlndXJhdGlvbiBmaWxlXG4gIGxldCBjb25maWc6IENvbmZpZyB8IHVuZGVmaW5lZDtcbiAgdHJ5IHtcbiAgICBjb25zdCBjb25maWd1cmF0aW9uRGF0YSA9IGF3YWl0IGZzUHJvbWlzZXMucmVhZEZpbGUoY29uZmlnUGF0aCwgJ3V0Zi04Jyk7XG4gICAgY29uZmlnID0gSlNPTi5wYXJzZShjb25maWd1cmF0aW9uRGF0YSkgYXMgQ29uZmlnO1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGFzc2VydElzRXJyb3IoZXJyb3IpO1xuICAgIGlmIChlcnJvci5jb2RlID09PSAnRU5PRU5UJykge1xuICAgICAgLy8gVE9ETzogR2VuZXJhdGUgYW4gZXJyb3Igb2JqZWN0IHRoYXQgY2FuIGJlIGNvbnN1bWVkIGJ5IHRoZSBlc2J1aWxkLWJhc2VkIGJ1aWxkZXJcbiAgICAgIGNvbnN0IG1lc3NhZ2UgPSBgU2VydmljZSB3b3JrZXIgY29uZmlndXJhdGlvbiBmaWxlIFwiJHtwYXRoLnJlbGF0aXZlKFxuICAgICAgICB3b3Jrc3BhY2VSb290LFxuICAgICAgICBjb25maWdQYXRoLFxuICAgICAgKX1cIiBjb3VsZCBub3QgYmUgZm91bmQuYDtcbiAgICAgIHRocm93IG5ldyBFcnJvcihtZXNzYWdlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGF1Z21lbnRBcHBXaXRoU2VydmljZVdvcmtlckNvcmUoXG4gICAgY29uZmlnLFxuICAgIG5ldyBSZXN1bHRGaWxlc3lzdGVtKG91dHB1dEZpbGVzLCBhc3NldEZpbGVzKSxcbiAgICBiYXNlSHJlZixcbiAgKTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGF1Z21lbnRBcHBXaXRoU2VydmljZVdvcmtlckNvcmUoXG4gIGNvbmZpZzogQ29uZmlnLFxuICBzZXJ2aWNlV29ya2VyRmlsZXN5c3RlbTogRmlsZXN5c3RlbSxcbiAgYmFzZUhyZWY6IHN0cmluZyxcbik6IFByb21pc2U8eyBtYW5pZmVzdDogc3RyaW5nOyBhc3NldEZpbGVzOiB7IHNvdXJjZTogc3RyaW5nOyBkZXN0aW5hdGlvbjogc3RyaW5nIH1bXSB9PiB7XG4gIC8vIExvYWQgRVNNIGBAYW5ndWxhci9zZXJ2aWNlLXdvcmtlci9jb25maWdgIHVzaW5nIHRoZSBUeXBlU2NyaXB0IGR5bmFtaWMgaW1wb3J0IHdvcmthcm91bmQuXG4gIC8vIE9uY2UgVHlwZVNjcmlwdCBwcm92aWRlcyBzdXBwb3J0IGZvciBrZWVwaW5nIHRoZSBkeW5hbWljIGltcG9ydCB0aGlzIHdvcmthcm91bmQgY2FuIGJlXG4gIC8vIGNoYW5nZWQgdG8gYSBkaXJlY3QgZHluYW1pYyBpbXBvcnQuXG4gIGNvbnN0IEdlbmVyYXRvckNvbnN0cnVjdG9yID0gKFxuICAgIGF3YWl0IGxvYWRFc21Nb2R1bGU8dHlwZW9mIGltcG9ydCgnQGFuZ3VsYXIvc2VydmljZS13b3JrZXIvY29uZmlnJyk+KFxuICAgICAgJ0Bhbmd1bGFyL3NlcnZpY2Utd29ya2VyL2NvbmZpZycsXG4gICAgKVxuICApLkdlbmVyYXRvcjtcblxuICAvLyBHZW5lcmF0ZSB0aGUgbWFuaWZlc3RcbiAgY29uc3QgZ2VuZXJhdG9yID0gbmV3IEdlbmVyYXRvckNvbnN0cnVjdG9yKHNlcnZpY2VXb3JrZXJGaWxlc3lzdGVtLCBiYXNlSHJlZik7XG4gIGNvbnN0IG91dHB1dCA9IGF3YWl0IGdlbmVyYXRvci5wcm9jZXNzKGNvbmZpZyk7XG5cbiAgLy8gV3JpdGUgdGhlIG1hbmlmZXN0XG4gIGNvbnN0IG1hbmlmZXN0ID0gSlNPTi5zdHJpbmdpZnkob3V0cHV0LCBudWxsLCAyKTtcblxuICAvLyBGaW5kIHRoZSBzZXJ2aWNlIHdvcmtlciBwYWNrYWdlXG4gIGNvbnN0IHdvcmtlclBhdGggPSByZXF1aXJlLnJlc29sdmUoJ0Bhbmd1bGFyL3NlcnZpY2Utd29ya2VyL25nc3ctd29ya2VyLmpzJyk7XG5cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIG1hbmlmZXN0LFxuICAgIC8vIE1haW4gd29ya2VyIGNvZGVcbiAgICBhc3NldEZpbGVzOiBbeyBzb3VyY2U6IHdvcmtlclBhdGgsIGRlc3RpbmF0aW9uOiAnbmdzdy13b3JrZXIuanMnIH1dLFxuICB9O1xuXG4gIC8vIElmIHByZXNlbnQsIHdyaXRlIHRoZSBzYWZldHkgd29ya2VyIGNvZGVcbiAgY29uc3Qgc2FmZXR5UGF0aCA9IHBhdGguam9pbihwYXRoLmRpcm5hbWUod29ya2VyUGF0aCksICdzYWZldHktd29ya2VyLmpzJyk7XG4gIGlmIChleGlzdHNTeW5jKHNhZmV0eVBhdGgpKSB7XG4gICAgcmVzdWx0LmFzc2V0RmlsZXMucHVzaCh7IHNvdXJjZTogc2FmZXR5UGF0aCwgZGVzdGluYXRpb246ICd3b3JrZXItYmFzaWMubWluLmpzJyB9KTtcbiAgICByZXN1bHQuYXNzZXRGaWxlcy5wdXNoKHsgc291cmNlOiBzYWZldHlQYXRoLCBkZXN0aW5hdGlvbjogJ3NhZmV0eS13b3JrZXIuanMnIH0pO1xuICB9XG5cbiAgcmV0dXJuIHJlc3VsdDtcbn1cbiJdfQ==
|
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* @license
|
|
4
|
-
* Copyright Google LLC All Rights Reserved.
|
|
5
|
-
*
|
|
6
|
-
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
-
* found in the LICENSE file at https://angular.io/license
|
|
8
|
-
*/
|
|
9
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.load = exports.resolve = void 0;
|
|
11
|
-
const node_path_1 = require("node:path");
|
|
12
|
-
const node_url_1 = require("node:url");
|
|
13
|
-
const node_worker_threads_1 = require("node:worker_threads");
|
|
14
|
-
const url_1 = require("url");
|
|
15
|
-
const javascript_transformer_1 = require("../../tools/esbuild/javascript-transformer");
|
|
16
|
-
const { outputFiles, workspaceRoot } = node_worker_threads_1.workerData;
|
|
17
|
-
const TRANSFORMED_FILES = {};
|
|
18
|
-
const CHUNKS_REGEXP = /file:\/\/\/(main\.server|chunk-\w+)\.mjs/;
|
|
19
|
-
const WORKSPACE_ROOT_FILE = (0, node_url_1.pathToFileURL)((0, node_path_1.join)(workspaceRoot, 'index.mjs')).href;
|
|
20
|
-
const JAVASCRIPT_TRANSFORMER = new javascript_transformer_1.JavaScriptTransformer(
|
|
21
|
-
// Always enable JIT linking to support applications built with and without AOT.
|
|
22
|
-
// In a development environment the additional scope information does not
|
|
23
|
-
// have a negative effect unlike production where final output size is relevant.
|
|
24
|
-
{ sourcemap: true, jit: true }, 1);
|
|
25
|
-
function resolve(specifier, context, nextResolve) {
|
|
26
|
-
if (!isFileProtocol(specifier)) {
|
|
27
|
-
const normalizedSpecifier = specifier.replace(/^\.\//, '');
|
|
28
|
-
if (normalizedSpecifier in outputFiles) {
|
|
29
|
-
return {
|
|
30
|
-
format: 'module',
|
|
31
|
-
shortCircuit: true,
|
|
32
|
-
// File URLs need to absolute. In Windows these also need to include the drive.
|
|
33
|
-
// The `/` will be resolved to the drive letter.
|
|
34
|
-
url: (0, node_url_1.pathToFileURL)('/' + normalizedSpecifier).href,
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
// Defer to the next hook in the chain, which would be the
|
|
39
|
-
// Node.js default resolve if this is the last user-specified loader.
|
|
40
|
-
return nextResolve(specifier, isBundleEntryPointOrChunk(context) ? { ...context, parentURL: WORKSPACE_ROOT_FILE } : context);
|
|
41
|
-
}
|
|
42
|
-
exports.resolve = resolve;
|
|
43
|
-
async function load(url, context, nextLoad) {
|
|
44
|
-
if (isFileProtocol(url)) {
|
|
45
|
-
const filePath = (0, url_1.fileURLToPath)(url);
|
|
46
|
-
// Remove '/' or drive letter for Windows that was added in the above 'resolve'.
|
|
47
|
-
let source = outputFiles[(0, node_path_1.relative)('/', filePath)] ?? TRANSFORMED_FILES[filePath];
|
|
48
|
-
if (source === undefined) {
|
|
49
|
-
source = TRANSFORMED_FILES[filePath] = Buffer.from(await JAVASCRIPT_TRANSFORMER.transformFile(filePath)).toString('utf-8');
|
|
50
|
-
}
|
|
51
|
-
if (source !== undefined) {
|
|
52
|
-
const { format } = context;
|
|
53
|
-
return {
|
|
54
|
-
format,
|
|
55
|
-
shortCircuit: true,
|
|
56
|
-
source,
|
|
57
|
-
};
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
// Let Node.js handle all other URLs.
|
|
61
|
-
return nextLoad(url);
|
|
62
|
-
}
|
|
63
|
-
exports.load = load;
|
|
64
|
-
function isFileProtocol(url) {
|
|
65
|
-
return url.startsWith('file://');
|
|
66
|
-
}
|
|
67
|
-
function handleProcessExit() {
|
|
68
|
-
void JAVASCRIPT_TRANSFORMER.close();
|
|
69
|
-
}
|
|
70
|
-
function isBundleEntryPointOrChunk(context) {
|
|
71
|
-
return !!context.parentURL && CHUNKS_REGEXP.test(context.parentURL);
|
|
72
|
-
}
|
|
73
|
-
process.once('exit', handleProcessExit);
|
|
74
|
-
process.once('SIGINT', handleProcessExit);
|
|
75
|
-
process.once('uncaughtException', handleProcessExit);
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNtLWluLW1lbW9yeS1maWxlLWxvYWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXJfZGV2a2l0L2J1aWxkX2FuZ3VsYXIvc3JjL3V0aWxzL3NlcnZlci1yZW5kZXJpbmcvZXNtLWluLW1lbW9yeS1maWxlLWxvYWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7QUFFSCx5Q0FBMkM7QUFDM0MsdUNBQXlDO0FBQ3pDLDZEQUFpRDtBQUNqRCw2QkFBb0M7QUFDcEMsdUZBQW1GO0FBWW5GLE1BQU0sRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFFLEdBQUcsZ0NBQTZDLENBQUM7QUFFckYsTUFBTSxpQkFBaUIsR0FBMkIsRUFBRSxDQUFDO0FBQ3JELE1BQU0sYUFBYSxHQUFHLDBDQUEwQyxDQUFDO0FBQ2pFLE1BQU0sbUJBQW1CLEdBQUcsSUFBQSx3QkFBYSxFQUFDLElBQUEsZ0JBQUksRUFBQyxhQUFhLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7QUFFakYsTUFBTSxzQkFBc0IsR0FBRyxJQUFJLDhDQUFxQjtBQUN0RCxnRkFBZ0Y7QUFDaEYseUVBQXlFO0FBQ3pFLGdGQUFnRjtBQUNoRixFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxFQUM5QixDQUFDLENBQ0YsQ0FBQztBQUVGLFNBQWdCLE9BQU8sQ0FDckIsU0FBaUIsRUFDakIsT0FBMEMsRUFDMUMsV0FBcUI7SUFFckIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsRUFBRTtRQUM5QixNQUFNLG1CQUFtQixHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzNELElBQUksbUJBQW1CLElBQUksV0FBVyxFQUFFO1lBQ3RDLE9BQU87Z0JBQ0wsTUFBTSxFQUFFLFFBQVE7Z0JBQ2hCLFlBQVksRUFBRSxJQUFJO2dCQUNsQiwrRUFBK0U7Z0JBQy9FLGdEQUFnRDtnQkFDaEQsR0FBRyxFQUFFLElBQUEsd0JBQWEsRUFBQyxHQUFHLEdBQUcsbUJBQW1CLENBQUMsQ0FBQyxJQUFJO2FBQ25ELENBQUM7U0FDSDtLQUNGO0lBRUQsMERBQTBEO0lBQzFELHFFQUFxRTtJQUNyRSxPQUFPLFdBQVcsQ0FDaEIsU0FBUyxFQUNULHlCQUF5QixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsT0FBTyxFQUFFLFNBQVMsRUFBRSxtQkFBbUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQzlGLENBQUM7QUFDSixDQUFDO0FBeEJELDBCQXdCQztBQUVNLEtBQUssVUFBVSxJQUFJLENBQUMsR0FBVyxFQUFFLE9BQW1DLEVBQUUsUUFBa0I7SUFDN0YsSUFBSSxjQUFjLENBQUMsR0FBRyxDQUFDLEVBQUU7UUFDdkIsTUFBTSxRQUFRLEdBQUcsSUFBQSxtQkFBYSxFQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3BDLGdGQUFnRjtRQUNoRixJQUFJLE1BQU0sR0FBRyxXQUFXLENBQUMsSUFBQSxvQkFBUSxFQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQyxJQUFJLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRWpGLElBQUksTUFBTSxLQUFLLFNBQVMsRUFBRTtZQUN4QixNQUFNLEdBQUcsaUJBQWlCLENBQUMsUUFBUSxDQUFDLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FDaEQsTUFBTSxzQkFBc0IsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQ3JELENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ3JCO1FBRUQsSUFBSSxNQUFNLEtBQUssU0FBUyxFQUFFO1lBQ3hCLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxPQUFPLENBQUM7WUFFM0IsT0FBTztnQkFDTCxNQUFNO2dCQUNOLFlBQVksRUFBRSxJQUFJO2dCQUNsQixNQUFNO2FBQ1AsQ0FBQztTQUNIO0tBQ0Y7SUFFRCxxQ0FBcUM7SUFDckMsT0FBTyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDdkIsQ0FBQztBQXpCRCxvQkF5QkM7QUFFRCxTQUFTLGNBQWMsQ0FBQyxHQUFXO0lBQ2pDLE9BQU8sR0FBRyxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUNuQyxDQUFDO0FBRUQsU0FBUyxpQkFBaUI7SUFDeEIsS0FBSyxzQkFBc0IsQ0FBQyxLQUFLLEVBQUUsQ0FBQztBQUN0QyxDQUFDO0FBRUQsU0FBUyx5QkFBeUIsQ0FBQyxPQUEwQztJQUMzRSxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsU0FBUyxJQUFJLGFBQWEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQ3RFLENBQUM7QUFFRCxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0FBQ3hDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLGlCQUFpQixDQUFDLENBQUM7QUFDMUMsT0FBTyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7IGpvaW4sIHJlbGF0aXZlIH0gZnJvbSAnbm9kZTpwYXRoJztcbmltcG9ydCB7IHBhdGhUb0ZpbGVVUkwgfSBmcm9tICdub2RlOnVybCc7XG5pbXBvcnQgeyB3b3JrZXJEYXRhIH0gZnJvbSAnbm9kZTp3b3JrZXJfdGhyZWFkcyc7XG5pbXBvcnQgeyBmaWxlVVJMVG9QYXRoIH0gZnJvbSAndXJsJztcbmltcG9ydCB7IEphdmFTY3JpcHRUcmFuc2Zvcm1lciB9IGZyb20gJy4uLy4uL3Rvb2xzL2VzYnVpbGQvamF2YXNjcmlwdC10cmFuc2Zvcm1lcic7XG5cbi8qKlxuICogTm9kZS5qcyBFU00gbG9hZGVyIHRvIHJlZGlyZWN0IGltcG9ydHMgdG8gaW4gbWVtb3J5IGZpbGVzLlxuICogQHNlZTogaHR0cHM6Ly9ub2RlanMub3JnL2FwaS9lc20uaHRtbCNsb2FkZXJzIGZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IGxvYWRlcnMuXG4gKi9cblxuZXhwb3J0IGludGVyZmFjZSBFU01Jbk1lbW9yeUZpbGVMb2FkZXJXb3JrZXJEYXRhIHtcbiAgb3V0cHV0RmlsZXM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIHdvcmtzcGFjZVJvb3Q6IHN0cmluZztcbn1cblxuY29uc3QgeyBvdXRwdXRGaWxlcywgd29ya3NwYWNlUm9vdCB9ID0gd29ya2VyRGF0YSBhcyBFU01Jbk1lbW9yeUZpbGVMb2FkZXJXb3JrZXJEYXRhO1xuXG5jb25zdCBUUkFOU0ZPUk1FRF9GSUxFUzogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9O1xuY29uc3QgQ0hVTktTX1JFR0VYUCA9IC9maWxlOlxcL1xcL1xcLyhtYWluXFwuc2VydmVyfGNodW5rLVxcdyspXFwubWpzLztcbmNvbnN0IFdPUktTUEFDRV9ST09UX0ZJTEUgPSBwYXRoVG9GaWxlVVJMKGpvaW4od29ya3NwYWNlUm9vdCwgJ2luZGV4Lm1qcycpKS5ocmVmO1xuXG5jb25zdCBKQVZBU0NSSVBUX1RSQU5TRk9STUVSID0gbmV3IEphdmFTY3JpcHRUcmFuc2Zvcm1lcihcbiAgLy8gQWx3YXlzIGVuYWJsZSBKSVQgbGlua2luZyB0byBzdXBwb3J0IGFwcGxpY2F0aW9ucyBidWlsdCB3aXRoIGFuZCB3aXRob3V0IEFPVC5cbiAgLy8gSW4gYSBkZXZlbG9wbWVudCBlbnZpcm9ubWVudCB0aGUgYWRkaXRpb25hbCBzY29wZSBpbmZvcm1hdGlvbiBkb2VzIG5vdFxuICAvLyBoYXZlIGEgbmVnYXRpdmUgZWZmZWN0IHVubGlrZSBwcm9kdWN0aW9uIHdoZXJlIGZpbmFsIG91dHB1dCBzaXplIGlzIHJlbGV2YW50LlxuICB7IHNvdXJjZW1hcDogdHJ1ZSwgaml0OiB0cnVlIH0sXG4gIDEsXG4pO1xuXG5leHBvcnQgZnVuY3Rpb24gcmVzb2x2ZShcbiAgc3BlY2lmaWVyOiBzdHJpbmcsXG4gIGNvbnRleHQ6IHsgcGFyZW50VVJMOiB1bmRlZmluZWQgfCBzdHJpbmcgfSxcbiAgbmV4dFJlc29sdmU6IEZ1bmN0aW9uLFxuKSB7XG4gIGlmICghaXNGaWxlUHJvdG9jb2woc3BlY2lmaWVyKSkge1xuICAgIGNvbnN0IG5vcm1hbGl6ZWRTcGVjaWZpZXIgPSBzcGVjaWZpZXIucmVwbGFjZSgvXlxcLlxcLy8sICcnKTtcbiAgICBpZiAobm9ybWFsaXplZFNwZWNpZmllciBpbiBvdXRwdXRGaWxlcykge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZm9ybWF0OiAnbW9kdWxlJyxcbiAgICAgICAgc2hvcnRDaXJjdWl0OiB0cnVlLFxuICAgICAgICAvLyBGaWxlIFVSTHMgbmVlZCB0byBhYnNvbHV0ZS4gSW4gV2luZG93cyB0aGVzZSBhbHNvIG5lZWQgdG8gaW5jbHVkZSB0aGUgZHJpdmUuXG4gICAgICAgIC8vIFRoZSBgL2Agd2lsbCBiZSByZXNvbHZlZCB0byB0aGUgZHJpdmUgbGV0dGVyLlxuICAgICAgICB1cmw6IHBhdGhUb0ZpbGVVUkwoJy8nICsgbm9ybWFsaXplZFNwZWNpZmllcikuaHJlZixcbiAgICAgIH07XG4gICAgfVxuICB9XG5cbiAgLy8gRGVmZXIgdG8gdGhlIG5leHQgaG9vayBpbiB0aGUgY2hhaW4sIHdoaWNoIHdvdWxkIGJlIHRoZVxuICAvLyBOb2RlLmpzIGRlZmF1bHQgcmVzb2x2ZSBpZiB0aGlzIGlzIHRoZSBsYXN0IHVzZXItc3BlY2lmaWVkIGxvYWRlci5cbiAgcmV0dXJuIG5leHRSZXNvbHZlKFxuICAgIHNwZWNpZmllcixcbiAgICBpc0J1bmRsZUVudHJ5UG9pbnRPckNodW5rKGNvbnRleHQpID8geyAuLi5jb250ZXh0LCBwYXJlbnRVUkw6IFdPUktTUEFDRV9ST09UX0ZJTEUgfSA6IGNvbnRleHQsXG4gICk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBsb2FkKHVybDogc3RyaW5nLCBjb250ZXh0OiB7IGZvcm1hdD86IHN0cmluZyB8IG51bGwgfSwgbmV4dExvYWQ6IEZ1bmN0aW9uKSB7XG4gIGlmIChpc0ZpbGVQcm90b2NvbCh1cmwpKSB7XG4gICAgY29uc3QgZmlsZVBhdGggPSBmaWxlVVJMVG9QYXRoKHVybCk7XG4gICAgLy8gUmVtb3ZlICcvJyBvciBkcml2ZSBsZXR0ZXIgZm9yIFdpbmRvd3MgdGhhdCB3YXMgYWRkZWQgaW4gdGhlIGFib3ZlICdyZXNvbHZlJy5cbiAgICBsZXQgc291cmNlID0gb3V0cHV0RmlsZXNbcmVsYXRpdmUoJy8nLCBmaWxlUGF0aCldID8/IFRSQU5TRk9STUVEX0ZJTEVTW2ZpbGVQYXRoXTtcblxuICAgIGlmIChzb3VyY2UgPT09IHVuZGVmaW5lZCkge1xuICAgICAgc291cmNlID0gVFJBTlNGT1JNRURfRklMRVNbZmlsZVBhdGhdID0gQnVmZmVyLmZyb20oXG4gICAgICAgIGF3YWl0IEpBVkFTQ1JJUFRfVFJBTlNGT1JNRVIudHJhbnNmb3JtRmlsZShmaWxlUGF0aCksXG4gICAgICApLnRvU3RyaW5nKCd1dGYtOCcpO1xuICAgIH1cblxuICAgIGlmIChzb3VyY2UgIT09IHVuZGVmaW5lZCkge1xuICAgICAgY29uc3QgeyBmb3JtYXQgfSA9IGNvbnRleHQ7XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIGZvcm1hdCxcbiAgICAgICAgc2hvcnRDaXJjdWl0OiB0cnVlLFxuICAgICAgICBzb3VyY2UsXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIC8vIExldCBOb2RlLmpzIGhhbmRsZSBhbGwgb3RoZXIgVVJMcy5cbiAgcmV0dXJuIG5leHRMb2FkKHVybCk7XG59XG5cbmZ1bmN0aW9uIGlzRmlsZVByb3RvY29sKHVybDogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHJldHVybiB1cmwuc3RhcnRzV2l0aCgnZmlsZTovLycpO1xufVxuXG5mdW5jdGlvbiBoYW5kbGVQcm9jZXNzRXhpdCgpOiB2b2lkIHtcbiAgdm9pZCBKQVZBU0NSSVBUX1RSQU5TRk9STUVSLmNsb3NlKCk7XG59XG5cbmZ1bmN0aW9uIGlzQnVuZGxlRW50cnlQb2ludE9yQ2h1bmsoY29udGV4dDogeyBwYXJlbnRVUkw6IHVuZGVmaW5lZCB8IHN0cmluZyB9KTogYm9vbGVhbiB7XG4gIHJldHVybiAhIWNvbnRleHQucGFyZW50VVJMICYmIENIVU5LU19SRUdFWFAudGVzdChjb250ZXh0LnBhcmVudFVSTCk7XG59XG5cbnByb2Nlc3Mub25jZSgnZXhpdCcsIGhhbmRsZVByb2Nlc3NFeGl0KTtcbnByb2Nlc3Mub25jZSgnU0lHSU5UJywgaGFuZGxlUHJvY2Vzc0V4aXQpO1xucHJvY2Vzcy5vbmNlKCd1bmNhdWdodEV4Y2VwdGlvbicsIGhhbmRsZVByb2Nlc3NFeGl0KTtcbiJdfQ==
|