@angular-devkit/build-angular 19.1.0-next.1 → 19.1.0-rc.0
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/LICENSE +1 -1
- package/index.d.ts +8 -0
- package/index.js +24 -0
- package/package.json +14 -12
- package/src/builders/browser/index.d.ts +1 -1
- package/src/builders/browser-esbuild/index.d.ts +1 -1
- package/src/builders/dev-server/index.d.ts +1 -1
- package/src/builders/extract-i18n/index.d.ts +1 -1
- package/src/builders/jest/index.d.ts +1 -1
- package/src/builders/karma/application_builder.js +89 -5
- package/src/builders/karma/jasmine_global.js +18 -0
- package/src/builders/karma/jasmine_global_cleanup.js +14 -0
- package/src/builders/ng-packagr/index.d.ts +1 -1
- package/src/builders/prerender/index.d.ts +1 -1
- package/src/builders/protractor-error/index.d.ts +1 -1
- package/src/builders/server/index.d.ts +1 -1
- package/src/builders/web-test-runner/index.d.ts +1 -1
- package/src/tools/webpack/plugins/postcss-cli-resources.js +4 -1
- package/src/tools/webpack/plugins/scripts-webpack-plugin.js +4 -1
- package/src/utils/normalize-cache.js +1 -1
package/LICENSE
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
The MIT License
|
|
2
2
|
|
|
3
|
-
Copyright (c) 2010-
|
|
3
|
+
Copyright (c) 2010-2025 Google LLC. https://angular.dev/license
|
|
4
4
|
|
|
5
5
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
6
|
of this software and associated documentation files (the "Software"), to deal
|
package/index.d.ts
ADDED
package/index.js
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
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.dev/license
|
|
8
|
+
*/
|
|
9
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
12
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
13
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
14
|
+
}
|
|
15
|
+
Object.defineProperty(o, k2, desc);
|
|
16
|
+
}) : (function(o, m, k, k2) {
|
|
17
|
+
if (k2 === undefined) k2 = k;
|
|
18
|
+
o[k2] = m[k];
|
|
19
|
+
}));
|
|
20
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
21
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
22
|
+
};
|
|
23
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
|
+
__exportStar(require("./src/index"), exports);
|
package/package.json
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@angular-devkit/build-angular",
|
|
3
|
-
"version": "19.1.0-
|
|
3
|
+
"version": "19.1.0-rc.0",
|
|
4
4
|
"description": "Angular Webpack Build Facade",
|
|
5
5
|
"main": "src/index.js",
|
|
6
6
|
"typings": "src/index.d.ts",
|
|
7
7
|
"builders": "builders.json",
|
|
8
8
|
"dependencies": {
|
|
9
9
|
"@ampproject/remapping": "2.3.0",
|
|
10
|
-
"@angular-devkit/architect": "0.1901.0-
|
|
11
|
-
"@angular-devkit/build-webpack": "0.1901.0-
|
|
12
|
-
"@angular-devkit/core": "19.1.0-
|
|
13
|
-
"@angular/build": "19.1.0-
|
|
10
|
+
"@angular-devkit/architect": "0.1901.0-rc.0",
|
|
11
|
+
"@angular-devkit/build-webpack": "0.1901.0-rc.0",
|
|
12
|
+
"@angular-devkit/core": "19.1.0-rc.0",
|
|
13
|
+
"@angular/build": "19.1.0-rc.0",
|
|
14
14
|
"@babel/core": "7.26.0",
|
|
15
15
|
"@babel/generator": "7.26.3",
|
|
16
16
|
"@babel/helper-annotate-as-pure": "7.25.9",
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
"@babel/preset-env": "7.26.0",
|
|
22
22
|
"@babel/runtime": "7.26.0",
|
|
23
23
|
"@discoveryjs/json-ext": "0.6.3",
|
|
24
|
-
"@ngtools/webpack": "19.1.0-
|
|
24
|
+
"@ngtools/webpack": "19.1.0-rc.0",
|
|
25
25
|
"@vitejs/plugin-basic-ssl": "1.2.0",
|
|
26
26
|
"ansi-colors": "4.1.3",
|
|
27
27
|
"autoprefixer": "10.4.20",
|
|
@@ -29,8 +29,8 @@
|
|
|
29
29
|
"browserslist": "^4.21.5",
|
|
30
30
|
"copy-webpack-plugin": "12.0.2",
|
|
31
31
|
"css-loader": "7.1.2",
|
|
32
|
-
"esbuild-wasm": "0.24.
|
|
33
|
-
"fast-glob": "3.3.
|
|
32
|
+
"esbuild-wasm": "0.24.2",
|
|
33
|
+
"fast-glob": "3.3.3",
|
|
34
34
|
"http-proxy-middleware": "3.0.3",
|
|
35
35
|
"istanbul-lib-instrument": "6.0.3",
|
|
36
36
|
"jsonc-parser": "3.3.1",
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"postcss-loader": "8.1.1",
|
|
49
49
|
"resolve-url-loader": "5.0.0",
|
|
50
50
|
"rxjs": "7.8.1",
|
|
51
|
-
"sass": "1.
|
|
51
|
+
"sass": "1.83.1",
|
|
52
52
|
"sass-loader": "16.0.4",
|
|
53
53
|
"semver": "7.6.3",
|
|
54
54
|
"source-map-loader": "5.0.0",
|
|
@@ -63,14 +63,14 @@
|
|
|
63
63
|
"webpack-subresource-integrity": "5.1.0"
|
|
64
64
|
},
|
|
65
65
|
"optionalDependencies": {
|
|
66
|
-
"esbuild": "0.24.
|
|
66
|
+
"esbuild": "0.24.2"
|
|
67
67
|
},
|
|
68
68
|
"peerDependencies": {
|
|
69
69
|
"@angular/compiler-cli": "^19.0.0 || ^19.1.0-next.0",
|
|
70
70
|
"@angular/localize": "^19.0.0 || ^19.1.0-next.0",
|
|
71
71
|
"@angular/platform-server": "^19.0.0 || ^19.1.0-next.0",
|
|
72
72
|
"@angular/service-worker": "^19.0.0 || ^19.1.0-next.0",
|
|
73
|
-
"@angular/ssr": "^19.1.0-
|
|
73
|
+
"@angular/ssr": "^19.1.0-rc.0",
|
|
74
74
|
"@web/test-runner": "^0.19.0",
|
|
75
75
|
"browser-sync": "^3.0.2",
|
|
76
76
|
"jest": "^29.5.0",
|
|
@@ -126,7 +126,6 @@
|
|
|
126
126
|
"devkit",
|
|
127
127
|
"sdk"
|
|
128
128
|
],
|
|
129
|
-
"packageManager": "yarn@4.5.0",
|
|
130
129
|
"repository": {
|
|
131
130
|
"type": "git",
|
|
132
131
|
"url": "https://github.com/angular/angular-cli.git"
|
|
@@ -149,5 +148,8 @@
|
|
|
149
148
|
"puppeteer": {
|
|
150
149
|
"built": true
|
|
151
150
|
}
|
|
151
|
+
},
|
|
152
|
+
"pnpm": {
|
|
153
|
+
"onlyBuiltDependencies": []
|
|
152
154
|
}
|
|
153
155
|
}
|
|
@@ -38,5 +38,5 @@ export declare function buildWebpackBrowser(options: BrowserBuilderSchema, conte
|
|
|
38
38
|
logging?: WebpackLoggingCallback;
|
|
39
39
|
indexHtml?: IndexHtmlTransform;
|
|
40
40
|
}): Observable<BrowserBuilderOutput>;
|
|
41
|
-
declare const _default: import("../../../../architect/src/internal").Builder<BrowserBuilderSchema & import("../../../../core
|
|
41
|
+
declare const _default: import("../../../../architect/src/internal").Builder<BrowserBuilderSchema & import("../../../../core").JsonObject>;
|
|
42
42
|
export default _default;
|
|
@@ -24,5 +24,5 @@ export declare function buildEsbuildBrowser(userOptions: BrowserBuilderOptions,
|
|
|
24
24
|
export declare function convertBrowserOptions(options: BrowserBuilderOptions): Omit<ApplicationBuilderOptions, 'outputPath'> & {
|
|
25
25
|
outputPath: OutputPathClass;
|
|
26
26
|
};
|
|
27
|
-
declare const _default: import("../../../../architect/src/internal").Builder<BrowserBuilderOptions & import("../../../../core
|
|
27
|
+
declare const _default: import("../../../../architect/src/internal").Builder<BrowserBuilderOptions & import("../../../../core").JsonObject>;
|
|
28
28
|
export default _default;
|
|
@@ -9,6 +9,6 @@ import { DevServerBuilderOutput } from '@angular/build';
|
|
|
9
9
|
import { execute } from './builder';
|
|
10
10
|
import { Schema as DevServerBuilderOptions } from './schema';
|
|
11
11
|
export { type DevServerBuilderOptions, type DevServerBuilderOutput, execute as executeDevServerBuilder, };
|
|
12
|
-
declare const _default: import("../../../../architect/src/internal").Builder<DevServerBuilderOptions & import("../../../../core
|
|
12
|
+
declare const _default: import("../../../../architect/src/internal").Builder<DevServerBuilderOptions & import("../../../../core").JsonObject>;
|
|
13
13
|
export default _default;
|
|
14
14
|
export { execute as executeDevServer };
|
|
@@ -8,5 +8,5 @@
|
|
|
8
8
|
import { execute } from './builder';
|
|
9
9
|
import type { Schema as ExtractI18nBuilderOptions } from './schema';
|
|
10
10
|
export { ExtractI18nBuilderOptions, execute };
|
|
11
|
-
declare const _default: import("../../../../architect/src/internal").Builder<ExtractI18nBuilderOptions & import("../../../../core
|
|
11
|
+
declare const _default: import("../../../../architect/src/internal").Builder<ExtractI18nBuilderOptions & import("../../../../core").JsonObject>;
|
|
12
12
|
export default _default;
|
|
@@ -7,5 +7,5 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import { Schema as JestBuilderSchema } from './schema';
|
|
9
9
|
/** Main execution function for the Jest builder. */
|
|
10
|
-
declare const _default: import("../../../../architect/src/internal").Builder<JestBuilderSchema & import("../../../../core
|
|
10
|
+
declare const _default: import("../../../../architect/src/internal").Builder<JestBuilderSchema & import("../../../../core").JsonObject>;
|
|
11
11
|
export default _default;
|
|
@@ -103,6 +103,57 @@ class AngularAssetsMiddleware {
|
|
|
103
103
|
};
|
|
104
104
|
}
|
|
105
105
|
}
|
|
106
|
+
class AngularPolyfillsPlugin {
|
|
107
|
+
static $inject = ['config.files'];
|
|
108
|
+
static NAME = 'angular-polyfills';
|
|
109
|
+
static createPlugin(polyfillsFile, jasmineCleanupFiles) {
|
|
110
|
+
return {
|
|
111
|
+
// This has to be a "reporter" because reporters run _after_ frameworks
|
|
112
|
+
// and karma-jasmine-html-reporter injects additional scripts that may
|
|
113
|
+
// depend on Jasmine but aren't modules - which means that they would run
|
|
114
|
+
// _before_ all module code (including jasmine).
|
|
115
|
+
[`reporter:${AngularPolyfillsPlugin.NAME}`]: [
|
|
116
|
+
'factory',
|
|
117
|
+
Object.assign((files) => {
|
|
118
|
+
// The correct order is zone.js -> jasmine -> zone.js/testing.
|
|
119
|
+
// Jasmine has to see the patched version of the global `setTimeout`
|
|
120
|
+
// function so it doesn't cache the unpatched version. And /testing
|
|
121
|
+
// needs to see the global `jasmine` object so it can patch it.
|
|
122
|
+
const polyfillsIndex = 0;
|
|
123
|
+
files.splice(polyfillsIndex, 0, polyfillsFile);
|
|
124
|
+
// Insert just before test_main.js.
|
|
125
|
+
const zoneTestingIndex = files.findIndex((f) => {
|
|
126
|
+
if (typeof f === 'string') {
|
|
127
|
+
return false;
|
|
128
|
+
}
|
|
129
|
+
return f.pattern.endsWith('/test_main.js');
|
|
130
|
+
});
|
|
131
|
+
if (zoneTestingIndex === -1) {
|
|
132
|
+
throw new Error('Could not find test entrypoint file.');
|
|
133
|
+
}
|
|
134
|
+
files.splice(zoneTestingIndex, 0, jasmineCleanupFiles);
|
|
135
|
+
// We need to ensure that all files are served as modules, otherwise
|
|
136
|
+
// the order in the files list gets really confusing: Karma doesn't
|
|
137
|
+
// set defer on scripts, so all scripts with type=js will run first,
|
|
138
|
+
// even if type=module files appeared earlier in `files`.
|
|
139
|
+
for (const f of files) {
|
|
140
|
+
if (typeof f === 'string') {
|
|
141
|
+
throw new Error(`Unexpected string-based file: "${f}"`);
|
|
142
|
+
}
|
|
143
|
+
if (f.included === false) {
|
|
144
|
+
// Don't worry about files that aren't included on the initial
|
|
145
|
+
// page load. `type` won't affect them.
|
|
146
|
+
continue;
|
|
147
|
+
}
|
|
148
|
+
if (f.pattern.endsWith('.js') && 'js' === (f.type ?? 'js')) {
|
|
149
|
+
f.type = 'module';
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
}, AngularPolyfillsPlugin),
|
|
153
|
+
],
|
|
154
|
+
};
|
|
155
|
+
}
|
|
156
|
+
}
|
|
106
157
|
function injectKarmaReporter(buildOptions, buildIterator, karmaConfig, subscriber) {
|
|
107
158
|
const reporterName = 'angular-progress-notifier';
|
|
108
159
|
class ProgressNotifierReporter {
|
|
@@ -199,9 +250,21 @@ async function getProjectSourceRoot(context) {
|
|
|
199
250
|
}
|
|
200
251
|
function normalizePolyfills(polyfills) {
|
|
201
252
|
if (typeof polyfills === 'string') {
|
|
202
|
-
|
|
253
|
+
polyfills = [polyfills];
|
|
203
254
|
}
|
|
204
|
-
|
|
255
|
+
else if (!polyfills) {
|
|
256
|
+
polyfills = [];
|
|
257
|
+
}
|
|
258
|
+
const jasmineGlobalEntryPoint = '@angular-devkit/build-angular/src/builders/karma/jasmine_global.js';
|
|
259
|
+
const jasmineGlobalCleanupEntrypoint = '@angular-devkit/build-angular/src/builders/karma/jasmine_global_cleanup.js';
|
|
260
|
+
const zoneTestingEntryPoint = 'zone.js/testing';
|
|
261
|
+
const polyfillsExludingZoneTesting = polyfills.filter((p) => p !== zoneTestingEntryPoint);
|
|
262
|
+
return [
|
|
263
|
+
polyfillsExludingZoneTesting.concat([jasmineGlobalEntryPoint]),
|
|
264
|
+
polyfillsExludingZoneTesting.length === polyfills.length
|
|
265
|
+
? [jasmineGlobalCleanupEntrypoint]
|
|
266
|
+
: [jasmineGlobalCleanupEntrypoint, zoneTestingEntryPoint],
|
|
267
|
+
];
|
|
205
268
|
}
|
|
206
269
|
async function collectEntrypoints(options, context, projectSourceRoot) {
|
|
207
270
|
// Glob for files to test.
|
|
@@ -229,6 +292,10 @@ async function initializeApplication(options, context, karmaOptions, transforms
|
|
|
229
292
|
const instrumentForCoverage = options.codeCoverage
|
|
230
293
|
? createInstrumentationFilter(projectSourceRoot, getInstrumentationExcludedPaths(context.workspaceRoot, options.codeCoverageExclude ?? []))
|
|
231
294
|
: undefined;
|
|
295
|
+
const [polyfills, jasmineCleanup] = normalizePolyfills(options.polyfills);
|
|
296
|
+
for (let idx = 0; idx < jasmineCleanup.length; ++idx) {
|
|
297
|
+
entryPoints.set(`jasmine-cleanup-${idx}`, jasmineCleanup[idx]);
|
|
298
|
+
}
|
|
232
299
|
const buildOptions = {
|
|
233
300
|
assets: options.assets,
|
|
234
301
|
entryPoints,
|
|
@@ -245,7 +312,7 @@ async function initializeApplication(options, context, karmaOptions, transforms
|
|
|
245
312
|
},
|
|
246
313
|
instrumentForCoverage,
|
|
247
314
|
styles: options.styles,
|
|
248
|
-
polyfills
|
|
315
|
+
polyfills,
|
|
249
316
|
webWorkerTsConfig: options.webWorkerTsConfig,
|
|
250
317
|
watch: options.watch ?? !karmaOptions.singleRun,
|
|
251
318
|
stylePreprocessorOptions: options.stylePreprocessorOptions,
|
|
@@ -260,10 +327,24 @@ async function initializeApplication(options, context, karmaOptions, transforms
|
|
|
260
327
|
}
|
|
261
328
|
// Write test files
|
|
262
329
|
await writeTestFiles(buildOutput.files, buildOptions.outputPath);
|
|
330
|
+
// We need to add this to the beginning *after* the testing framework has
|
|
331
|
+
// prepended its files.
|
|
332
|
+
const polyfillsFile = {
|
|
333
|
+
pattern: `${outputPath}/polyfills.js`,
|
|
334
|
+
included: true,
|
|
335
|
+
served: true,
|
|
336
|
+
type: 'module',
|
|
337
|
+
watched: false,
|
|
338
|
+
};
|
|
339
|
+
const jasmineCleanupFiles = {
|
|
340
|
+
pattern: `${outputPath}/jasmine-cleanup-*.js`,
|
|
341
|
+
included: true,
|
|
342
|
+
served: true,
|
|
343
|
+
type: 'module',
|
|
344
|
+
watched: false,
|
|
345
|
+
};
|
|
263
346
|
karmaOptions.files ??= [];
|
|
264
347
|
karmaOptions.files.push(
|
|
265
|
-
// Serve polyfills first.
|
|
266
|
-
{ pattern: `${outputPath}/polyfills.js`, type: 'module', watched: false },
|
|
267
348
|
// Serve global setup script.
|
|
268
349
|
{ pattern: `${outputPath}/${mainName}.js`, type: 'module', watched: false },
|
|
269
350
|
// Serve all source maps.
|
|
@@ -305,6 +386,9 @@ async function initializeApplication(options, context, karmaOptions, transforms
|
|
|
305
386
|
parsedKarmaConfig.plugins.push(AngularAssetsMiddleware.createPlugin(buildOutput));
|
|
306
387
|
parsedKarmaConfig.middleware ??= [];
|
|
307
388
|
parsedKarmaConfig.middleware.push(AngularAssetsMiddleware.NAME);
|
|
389
|
+
parsedKarmaConfig.plugins.push(AngularPolyfillsPlugin.createPlugin(polyfillsFile, jasmineCleanupFiles));
|
|
390
|
+
parsedKarmaConfig.reporters ??= [];
|
|
391
|
+
parsedKarmaConfig.reporters.push(AngularPolyfillsPlugin.NAME);
|
|
308
392
|
// When using code-coverage, auto-add karma-coverage.
|
|
309
393
|
// This was done as part of the karma plugin for webpack.
|
|
310
394
|
if (options.codeCoverage &&
|
|
@@ -0,0 +1,18 @@
|
|
|
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.dev/license
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
// See: https://github.com/jasmine/jasmine/issues/2015
|
|
10
|
+
(function () {
|
|
11
|
+
'use strict';
|
|
12
|
+
|
|
13
|
+
// jasmine will ignore `window` unless it returns this specific (but uncommon)
|
|
14
|
+
// value from toString().
|
|
15
|
+
window.toString = function () {
|
|
16
|
+
return '[object GjsGlobal]';
|
|
17
|
+
};
|
|
18
|
+
})();
|
|
@@ -0,0 +1,14 @@
|
|
|
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.dev/license
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
// See: https://github.com/jasmine/jasmine/issues/2015
|
|
10
|
+
(function () {
|
|
11
|
+
'use strict';
|
|
12
|
+
|
|
13
|
+
delete window.toString;
|
|
14
|
+
})();
|
|
@@ -13,5 +13,5 @@ import { Schema as NgPackagrBuilderOptions } from './schema';
|
|
|
13
13
|
*/
|
|
14
14
|
export declare function execute(options: NgPackagrBuilderOptions, context: BuilderContext): Observable<BuilderOutput>;
|
|
15
15
|
export type { NgPackagrBuilderOptions };
|
|
16
|
-
declare const _default: import("../../../../architect/src/internal").Builder<Record<string, string> & NgPackagrBuilderOptions & import("../../../../core
|
|
16
|
+
declare const _default: import("../../../../architect/src/internal").Builder<Record<string, string> & NgPackagrBuilderOptions & import("../../../../core").JsonObject>;
|
|
17
17
|
export default _default;
|
|
@@ -15,5 +15,5 @@ type PrerenderBuilderOutput = BuilderOutput;
|
|
|
15
15
|
* the browser result.
|
|
16
16
|
*/
|
|
17
17
|
export declare function execute(options: PrerenderBuilderOptions, context: BuilderContext): Promise<PrerenderBuilderOutput>;
|
|
18
|
-
declare const _default: import("../../../../architect/src/internal").Builder<Schema & import("../../../../core
|
|
18
|
+
declare const _default: import("../../../../architect/src/internal").Builder<Schema & import("../../../../core").JsonObject>;
|
|
19
19
|
export default _default;
|
|
@@ -6,5 +6,5 @@
|
|
|
6
6
|
* found in the LICENSE file at https://angular.dev/license
|
|
7
7
|
*/
|
|
8
8
|
import { Schema as ProtractorBuilderOptions } from '../protractor/schema';
|
|
9
|
-
declare const _default: import("../../../../architect/src/internal").Builder<ProtractorBuilderOptions & import("../../../../core
|
|
9
|
+
declare const _default: import("../../../../architect/src/internal").Builder<ProtractorBuilderOptions & import("../../../../core").JsonObject>;
|
|
10
10
|
export default _default;
|
|
@@ -28,5 +28,5 @@ export type { ServerBuilderOptions };
|
|
|
28
28
|
export declare function execute(options: ServerBuilderOptions, context: BuilderContext, transforms?: {
|
|
29
29
|
webpackConfiguration?: ExecutionTransformer<webpack.Configuration>;
|
|
30
30
|
}): Observable<ServerBuilderOutput>;
|
|
31
|
-
declare const _default: import("../../../../architect/src/internal").Builder<ServerBuilderOptions & import("../../../../core
|
|
31
|
+
declare const _default: import("../../../../architect/src/internal").Builder<ServerBuilderOptions & import("../../../../core").JsonObject>;
|
|
32
32
|
export default _default;
|
|
@@ -6,5 +6,5 @@
|
|
|
6
6
|
* found in the LICENSE file at https://angular.dev/license
|
|
7
7
|
*/
|
|
8
8
|
import { Schema } from './schema';
|
|
9
|
-
declare const _default: import("../../../../architect/src/internal").Builder<Schema & import("../../../../core
|
|
9
|
+
declare const _default: import("../../../../architect/src/internal").Builder<Schema & import("../../../../core").JsonObject>;
|
|
10
10
|
export default _default;
|
|
@@ -109,7 +109,10 @@ function default_1(options) {
|
|
|
109
109
|
reject(err);
|
|
110
110
|
return;
|
|
111
111
|
}
|
|
112
|
-
let outputPath = (0, loader_utils_1.interpolateName)(
|
|
112
|
+
let outputPath = (0, loader_utils_1.interpolateName)(
|
|
113
|
+
// TODO: Revisit. Previously due to lack of type safety, this object
|
|
114
|
+
// was fine, but in practice it doesn't match the type of the loader context.
|
|
115
|
+
{ resourcePath: result }, filename(result), {
|
|
113
116
|
content,
|
|
114
117
|
context: loader.context || loader.rootContext,
|
|
115
118
|
}).replace(/\\|\//g, '-');
|
|
@@ -180,7 +180,10 @@ class ScriptsWebpackPlugin {
|
|
|
180
180
|
const assetName = this.options.filename;
|
|
181
181
|
const asset = compilation.getAsset(assetName);
|
|
182
182
|
if (asset) {
|
|
183
|
-
const interpolatedFilename = (0, loader_utils_1.interpolateName)(
|
|
183
|
+
const interpolatedFilename = (0, loader_utils_1.interpolateName)(
|
|
184
|
+
// TODO: Revisit. Previously due to lack of type safety, this object
|
|
185
|
+
// was fine, but in practice it doesn't match the type of the loader context.
|
|
186
|
+
{ resourcePath: 'scripts.js' }, assetName, { content: asset.source.source() });
|
|
184
187
|
if (assetName !== interpolatedFilename) {
|
|
185
188
|
compilation.renameAsset(assetName, interpolatedFilename);
|
|
186
189
|
}
|
|
@@ -10,7 +10,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
10
10
|
exports.normalizeCacheOptions = normalizeCacheOptions;
|
|
11
11
|
const node_path_1 = require("node:path");
|
|
12
12
|
/** Version placeholder is replaced during the build process with actual package version */
|
|
13
|
-
const VERSION = '19.1.0-
|
|
13
|
+
const VERSION = '19.1.0-rc.0';
|
|
14
14
|
function hasCacheMetadata(value) {
|
|
15
15
|
return (!!value &&
|
|
16
16
|
typeof value === 'object' &&
|