@angular/core 12.2.0-next.2 → 12.2.1
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/bundles/core-testing.umd.js +1 -1
- package/bundles/core.umd.js +93 -72
- package/bundles/core.umd.js.map +1 -1
- package/core.d.ts +1 -1
- package/core.metadata.json +1 -1
- package/esm2015/src/application_module.js +5 -5
- package/esm2015/src/application_ref.js +6 -2
- package/esm2015/src/compiler/compiler_facade.js +31 -8
- package/esm2015/src/di/jit/injectable.js +4 -3
- package/esm2015/src/di/r3_injector.js +5 -2
- package/esm2015/src/error_handler.js +3 -3
- package/esm2015/src/errors.js +2 -2
- package/esm2015/src/i18n/locale_en.js +4 -38
- package/esm2015/src/render3/instructions/shared.js +2 -1
- package/esm2015/src/render3/jit/directive.js +6 -5
- package/esm2015/src/render3/jit/module.js +7 -4
- package/esm2015/src/render3/jit/partial.js +27 -9
- package/esm2015/src/render3/jit/pipe.js +5 -3
- package/esm2015/src/version.js +1 -1
- package/fesm2015/core.js +94 -73
- package/fesm2015/core.js.map +1 -1
- package/fesm2015/testing.js +1 -1
- package/package.json +2 -2
- package/src/r3_symbols.d.ts +1 -1
- package/testing/testing.d.ts +1 -1
- package/testing.d.ts +1 -1
|
@@ -16,7 +16,7 @@ export function compilePipe(type, meta) {
|
|
|
16
16
|
get: () => {
|
|
17
17
|
if (ngFactoryDef === null) {
|
|
18
18
|
const metadata = getPipeMetadata(type, meta);
|
|
19
|
-
const compiler = getCompilerFacade();
|
|
19
|
+
const compiler = getCompilerFacade({ usage: 0 /* Decorator */, kind: 'pipe', type: metadata.type });
|
|
20
20
|
ngFactoryDef = compiler.compileFactory(angularCoreEnv, `ng:///${metadata.name}/ɵfac.js`, {
|
|
21
21
|
name: metadata.name,
|
|
22
22
|
type: metadata.type,
|
|
@@ -34,7 +34,9 @@ export function compilePipe(type, meta) {
|
|
|
34
34
|
get: () => {
|
|
35
35
|
if (ngPipeDef === null) {
|
|
36
36
|
const metadata = getPipeMetadata(type, meta);
|
|
37
|
-
|
|
37
|
+
const compiler = getCompilerFacade({ usage: 0 /* Decorator */, kind: 'pipe', type: metadata.type });
|
|
38
|
+
ngPipeDef =
|
|
39
|
+
compiler.compilePipe(angularCoreEnv, `ng:///${metadata.name}/ɵpipe.js`, metadata);
|
|
38
40
|
}
|
|
39
41
|
return ngPipeDef;
|
|
40
42
|
},
|
|
@@ -50,4 +52,4 @@ function getPipeMetadata(type, meta) {
|
|
|
50
52
|
pure: meta.pure !== undefined ? meta.pure : true
|
|
51
53
|
};
|
|
52
54
|
}
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL3JlbmRlcjMvaml0L3BpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUFDLGlCQUFpQixFQUF5QyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3pHLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBR3RELE9BQU8sRUFBQyxjQUFjLEVBQUUsV0FBVyxFQUFDLE1BQU0sV0FBVyxDQUFDO0FBRXRELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFN0MsTUFBTSxVQUFVLFdBQVcsQ0FBQyxJQUFlLEVBQUUsSUFBVTtJQUNyRCxJQUFJLFNBQVMsR0FBUSxJQUFJLENBQUM7SUFDMUIsSUFBSSxZQUFZLEdBQVEsSUFBSSxDQUFDO0lBRTdCLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLGNBQWMsRUFBRTtRQUMxQyxHQUFHLEVBQUUsR0FBRyxFQUFFO1lBQ1IsSUFBSSxZQUFZLEtBQUssSUFBSSxFQUFFO2dCQUN6QixNQUFNLFFBQVEsR0FBRyxlQUFlLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO2dCQUM3QyxNQUFNLFFBQVEsR0FBRyxpQkFBaUIsQ0FDOUIsRUFBQyxLQUFLLG1CQUE0QixFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxJQUFJLEVBQUMsQ0FBQyxDQUFDO2dCQUM1RSxZQUFZLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQyxjQUFjLEVBQUUsU0FBUyxRQUFRLENBQUMsSUFBSSxVQUFVLEVBQUU7b0JBQ3ZGLElBQUksRUFBRSxRQUFRLENBQUMsSUFBSTtvQkFDbkIsSUFBSSxFQUFFLFFBQVEsQ0FBQyxJQUFJO29CQUNuQixpQkFBaUIsRUFBRSxDQUFDO29CQUNwQixJQUFJLEVBQUUsbUJBQW1CLENBQUMsSUFBSSxDQUFDO29CQUMvQixNQUFNLEVBQUUsUUFBUSxDQUFDLGFBQWEsQ0FBQyxJQUFJO2lCQUNwQyxDQUFDLENBQUM7YUFDSjtZQUNELE9BQU8sWUFBWSxDQUFDO1FBQ3RCLENBQUM7UUFDRCwwRUFBMEU7UUFDMUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxTQUFTO0tBQzFCLENBQUMsQ0FBQztJQUVILE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRTtRQUN2QyxHQUFHLEVBQUUsR0FBRyxFQUFFO1lBQ1IsSUFBSSxTQUFTLEtBQUssSUFBSSxFQUFFO2dCQUN0QixNQUFNLFFBQVEsR0FBRyxlQUFlLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO2dCQUM3QyxNQUFNLFFBQVEsR0FBRyxpQkFBaUIsQ0FDOUIsRUFBQyxLQUFLLG1CQUE0QixFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxJQUFJLEVBQUMsQ0FBQyxDQUFDO2dCQUM1RSxTQUFTO29CQUNMLFFBQVEsQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFLFNBQVMsUUFBUSxDQUFDLElBQUksV0FBVyxFQUFFLFFBQVEsQ0FBQyxDQUFDO2FBQ3ZGO1lBQ0QsT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQztRQUNELDBFQUEwRTtRQUMxRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLFNBQVM7S0FDMUIsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELFNBQVMsZUFBZSxDQUFDLElBQWUsRUFBRSxJQUFVO0lBQ2xELE9BQU87UUFDTCxJQUFJLEVBQUUsSUFBSTtRQUNWLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtRQUNmLFFBQVEsRUFBRSxJQUFJLENBQUMsSUFBSTtRQUNuQixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUk7S0FDakQsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtnZXRDb21waWxlckZhY2FkZSwgSml0Q29tcGlsZXJVc2FnZSwgUjNQaXBlTWV0YWRhdGFGYWNhZGV9IGZyb20gJy4uLy4uL2NvbXBpbGVyL2NvbXBpbGVyX2ZhY2FkZSc7XG5pbXBvcnQge3JlZmxlY3REZXBlbmRlbmNpZXN9IGZyb20gJy4uLy4uL2RpL2ppdC91dGlsJztcbmltcG9ydCB7VHlwZX0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlL3R5cGUnO1xuaW1wb3J0IHtQaXBlfSBmcm9tICcuLi8uLi9tZXRhZGF0YS9kaXJlY3RpdmVzJztcbmltcG9ydCB7TkdfRkFDVE9SWV9ERUYsIE5HX1BJUEVfREVGfSBmcm9tICcuLi9maWVsZHMnO1xuXG5pbXBvcnQge2FuZ3VsYXJDb3JlRW52fSBmcm9tICcuL2Vudmlyb25tZW50JztcblxuZXhwb3J0IGZ1bmN0aW9uIGNvbXBpbGVQaXBlKHR5cGU6IFR5cGU8YW55PiwgbWV0YTogUGlwZSk6IHZvaWQge1xuICBsZXQgbmdQaXBlRGVmOiBhbnkgPSBudWxsO1xuICBsZXQgbmdGYWN0b3J5RGVmOiBhbnkgPSBudWxsO1xuXG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0eXBlLCBOR19GQUNUT1JZX0RFRiwge1xuICAgIGdldDogKCkgPT4ge1xuICAgICAgaWYgKG5nRmFjdG9yeURlZiA9PT0gbnVsbCkge1xuICAgICAgICBjb25zdCBtZXRhZGF0YSA9IGdldFBpcGVNZXRhZGF0YSh0eXBlLCBtZXRhKTtcbiAgICAgICAgY29uc3QgY29tcGlsZXIgPSBnZXRDb21waWxlckZhY2FkZShcbiAgICAgICAgICAgIHt1c2FnZTogSml0Q29tcGlsZXJVc2FnZS5EZWNvcmF0b3IsIGtpbmQ6ICdwaXBlJywgdHlwZTogbWV0YWRhdGEudHlwZX0pO1xuICAgICAgICBuZ0ZhY3RvcnlEZWYgPSBjb21waWxlci5jb21waWxlRmFjdG9yeShhbmd1bGFyQ29yZUVudiwgYG5nOi8vLyR7bWV0YWRhdGEubmFtZX0vybVmYWMuanNgLCB7XG4gICAgICAgICAgbmFtZTogbWV0YWRhdGEubmFtZSxcbiAgICAgICAgICB0eXBlOiBtZXRhZGF0YS50eXBlLFxuICAgICAgICAgIHR5cGVBcmd1bWVudENvdW50OiAwLFxuICAgICAgICAgIGRlcHM6IHJlZmxlY3REZXBlbmRlbmNpZXModHlwZSksXG4gICAgICAgICAgdGFyZ2V0OiBjb21waWxlci5GYWN0b3J5VGFyZ2V0LlBpcGVcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gbmdGYWN0b3J5RGVmO1xuICAgIH0sXG4gICAgLy8gTWFrZSB0aGUgcHJvcGVydHkgY29uZmlndXJhYmxlIGluIGRldiBtb2RlIHRvIGFsbG93IG92ZXJyaWRpbmcgaW4gdGVzdHNcbiAgICBjb25maWd1cmFibGU6ICEhbmdEZXZNb2RlLFxuICB9KTtcblxuICBPYmplY3QuZGVmaW5lUHJvcGVydHkodHlwZSwgTkdfUElQRV9ERUYsIHtcbiAgICBnZXQ6ICgpID0+IHtcbiAgICAgIGlmIChuZ1BpcGVEZWYgPT09IG51bGwpIHtcbiAgICAgICAgY29uc3QgbWV0YWRhdGEgPSBnZXRQaXBlTWV0YWRhdGEodHlwZSwgbWV0YSk7XG4gICAgICAgIGNvbnN0IGNvbXBpbGVyID0gZ2V0Q29tcGlsZXJGYWNhZGUoXG4gICAgICAgICAgICB7dXNhZ2U6IEppdENvbXBpbGVyVXNhZ2UuRGVjb3JhdG9yLCBraW5kOiAncGlwZScsIHR5cGU6IG1ldGFkYXRhLnR5cGV9KTtcbiAgICAgICAgbmdQaXBlRGVmID1cbiAgICAgICAgICAgIGNvbXBpbGVyLmNvbXBpbGVQaXBlKGFuZ3VsYXJDb3JlRW52LCBgbmc6Ly8vJHttZXRhZGF0YS5uYW1lfS/JtXBpcGUuanNgLCBtZXRhZGF0YSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gbmdQaXBlRGVmO1xuICAgIH0sXG4gICAgLy8gTWFrZSB0aGUgcHJvcGVydHkgY29uZmlndXJhYmxlIGluIGRldiBtb2RlIHRvIGFsbG93IG92ZXJyaWRpbmcgaW4gdGVzdHNcbiAgICBjb25maWd1cmFibGU6ICEhbmdEZXZNb2RlLFxuICB9KTtcbn1cblxuZnVuY3Rpb24gZ2V0UGlwZU1ldGFkYXRhKHR5cGU6IFR5cGU8YW55PiwgbWV0YTogUGlwZSk6IFIzUGlwZU1ldGFkYXRhRmFjYWRlIHtcbiAgcmV0dXJuIHtcbiAgICB0eXBlOiB0eXBlLFxuICAgIG5hbWU6IHR5cGUubmFtZSxcbiAgICBwaXBlTmFtZTogbWV0YS5uYW1lLFxuICAgIHB1cmU6IG1ldGEucHVyZSAhPT0gdW5kZWZpbmVkID8gbWV0YS5wdXJlIDogdHJ1ZVxuICB9O1xufVxuIl19
|
package/esm2015/src/version.js
CHANGED
|
@@ -21,5 +21,5 @@ export class Version {
|
|
|
21
21
|
/**
|
|
22
22
|
* @publicApi
|
|
23
23
|
*/
|
|
24
|
-
export const VERSION = new Version('12.2.
|
|
24
|
+
export const VERSION = new Version('12.2.1');
|
|
25
25
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL3ZlcnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUg7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyxPQUFPO0lBS2xCLFlBQW1CLElBQVk7UUFBWixTQUFJLEdBQUosSUFBSSxDQUFRO1FBQzdCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEQsQ0FBQztDQUNGO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsSUFBSSxPQUFPLENBQUMsbUJBQW1CLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG4vKipcbiAqIEBkZXNjcmlwdGlvbiBSZXByZXNlbnRzIHRoZSB2ZXJzaW9uIG9mIEFuZ3VsYXJcbiAqXG4gKiBAcHVibGljQXBpXG4gKi9cbmV4cG9ydCBjbGFzcyBWZXJzaW9uIHtcbiAgcHVibGljIHJlYWRvbmx5IG1ham9yOiBzdHJpbmc7XG4gIHB1YmxpYyByZWFkb25seSBtaW5vcjogc3RyaW5nO1xuICBwdWJsaWMgcmVhZG9ubHkgcGF0Y2g6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZnVsbDogc3RyaW5nKSB7XG4gICAgdGhpcy5tYWpvciA9IGZ1bGwuc3BsaXQoJy4nKVswXTtcbiAgICB0aGlzLm1pbm9yID0gZnVsbC5zcGxpdCgnLicpWzFdO1xuICAgIHRoaXMucGF0Y2ggPSBmdWxsLnNwbGl0KCcuJykuc2xpY2UoMikuam9pbignLicpO1xuICB9XG59XG5cbi8qKlxuICogQHB1YmxpY0FwaVxuICovXG5leHBvcnQgY29uc3QgVkVSU0lPTiA9IG5ldyBWZXJzaW9uKCcwLjAuMC1QTEFDRUhPTERFUicpO1xuIl19
|
package/fesm2015/core.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license Angular v12.2.
|
|
2
|
+
* @license Angular v12.2.1
|
|
3
3
|
* (c) 2010-2021 Google LLC. https://angular.io/
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
@@ -4025,15 +4025,38 @@ var ViewEncapsulation$1;
|
|
|
4025
4025
|
* Use of this source code is governed by an MIT-style license that can be
|
|
4026
4026
|
* found in the LICENSE file at https://angular.io/license
|
|
4027
4027
|
*/
|
|
4028
|
-
function getCompilerFacade() {
|
|
4028
|
+
function getCompilerFacade(request) {
|
|
4029
4029
|
const globalNg = _global['ng'];
|
|
4030
|
-
if (
|
|
4031
|
-
|
|
4032
|
-
|
|
4033
|
-
|
|
4034
|
-
|
|
4030
|
+
if (globalNg && globalNg.ɵcompilerFacade) {
|
|
4031
|
+
return globalNg.ɵcompilerFacade;
|
|
4032
|
+
}
|
|
4033
|
+
if (typeof ngDevMode === 'undefined' || ngDevMode) {
|
|
4034
|
+
// Log the type as an error so that a developer can easily navigate to the type from the
|
|
4035
|
+
// console.
|
|
4036
|
+
console.error(`JIT compilation failed for ${request.kind}`, request.type);
|
|
4037
|
+
let message = `The ${request.kind} '${request
|
|
4038
|
+
.type.name}' needs to be compiled using the JIT compiler, but '@angular/compiler' is not available.\n\n`;
|
|
4039
|
+
if (request.usage === 1 /* PartialDeclaration */) {
|
|
4040
|
+
message += `The ${request.kind} is part of a library that has been partially compiled.\n`;
|
|
4041
|
+
message +=
|
|
4042
|
+
`However, the Angular Linker has not processed the library such that JIT compilation is used as fallback.\n`;
|
|
4043
|
+
message += '\n';
|
|
4044
|
+
message +=
|
|
4045
|
+
`Ideally, the library is processed using the Angular Linker to become fully AOT compiled.\n`;
|
|
4046
|
+
}
|
|
4047
|
+
else {
|
|
4048
|
+
message +=
|
|
4049
|
+
`JIT compilation is discouraged for production use-cases! Consider using AOT mode instead.\n`;
|
|
4050
|
+
}
|
|
4051
|
+
message +=
|
|
4052
|
+
`Alternatively, the JIT compiler should be loaded by bootstrapping using '@angular/platform-browser-dynamic' or '@angular/platform-server',\n`;
|
|
4053
|
+
message +=
|
|
4054
|
+
`or manually provide the compiler with 'import "@angular/compiler";' before bootstrapping.`;
|
|
4055
|
+
throw new Error(message);
|
|
4056
|
+
}
|
|
4057
|
+
else {
|
|
4058
|
+
throw new Error('JIT compiler unavailable');
|
|
4035
4059
|
}
|
|
4036
|
-
return globalNg.ɵcompilerFacade;
|
|
4037
4060
|
}
|
|
4038
4061
|
|
|
4039
4062
|
/**
|
|
@@ -6450,7 +6473,7 @@ function getOriginalError(error) {
|
|
|
6450
6473
|
return error[ERROR_ORIGINAL_ERROR];
|
|
6451
6474
|
}
|
|
6452
6475
|
function getErrorLogger(error) {
|
|
6453
|
-
return error[ERROR_LOGGER] || defaultErrorLogger;
|
|
6476
|
+
return error && error[ERROR_LOGGER] || defaultErrorLogger;
|
|
6454
6477
|
}
|
|
6455
6478
|
function defaultErrorLogger(console, ...values) {
|
|
6456
6479
|
console.error(...values);
|
|
@@ -6515,11 +6538,11 @@ class ErrorHandler {
|
|
|
6515
6538
|
}
|
|
6516
6539
|
/** @internal */
|
|
6517
6540
|
_findOriginalError(error) {
|
|
6518
|
-
let e = getOriginalError(error);
|
|
6541
|
+
let e = error && getOriginalError(error);
|
|
6519
6542
|
while (e && getOriginalError(e)) {
|
|
6520
6543
|
e = getOriginalError(e);
|
|
6521
6544
|
}
|
|
6522
|
-
return e;
|
|
6545
|
+
return e || null;
|
|
6523
6546
|
}
|
|
6524
6547
|
}
|
|
6525
6548
|
|
|
@@ -9409,6 +9432,7 @@ function renderView(tView, lView, context) {
|
|
|
9409
9432
|
// an error, mark the view as corrupted so we can try to recover.
|
|
9410
9433
|
if (tView.firstCreatePass) {
|
|
9411
9434
|
tView.incompleteFirstPass = true;
|
|
9435
|
+
tView.firstCreatePass = false;
|
|
9412
9436
|
}
|
|
9413
9437
|
throw error;
|
|
9414
9438
|
}
|
|
@@ -11208,6 +11232,7 @@ class R3Injector {
|
|
|
11208
11232
|
this.assertNotDestroyed();
|
|
11209
11233
|
// Set the injection context.
|
|
11210
11234
|
const previousInjector = setCurrentInjector(this);
|
|
11235
|
+
const previousInjectImplementation = setInjectImplementation(undefined);
|
|
11211
11236
|
try {
|
|
11212
11237
|
// Check for the SkipSelf flag.
|
|
11213
11238
|
if (!(flags & InjectFlags.SkipSelf)) {
|
|
@@ -11260,7 +11285,8 @@ class R3Injector {
|
|
|
11260
11285
|
}
|
|
11261
11286
|
}
|
|
11262
11287
|
finally {
|
|
11263
|
-
// Lastly,
|
|
11288
|
+
// Lastly, restore the previous injection context.
|
|
11289
|
+
setInjectImplementation(previousInjectImplementation);
|
|
11264
11290
|
setCurrentInjector(previousInjector);
|
|
11265
11291
|
}
|
|
11266
11292
|
}
|
|
@@ -13669,7 +13695,8 @@ function compileInjectable(type, meta) {
|
|
|
13669
13695
|
Object.defineProperty(type, NG_PROV_DEF, {
|
|
13670
13696
|
get: () => {
|
|
13671
13697
|
if (ngInjectableDef === null) {
|
|
13672
|
-
|
|
13698
|
+
const compiler = getCompilerFacade({ usage: 0 /* Decorator */, kind: 'injectable', type });
|
|
13699
|
+
ngInjectableDef = compiler.compileInjectable(angularCoreDiEnv, `ng:///${type.name}/ɵprov.js`, getInjectableMetadata(type, meta));
|
|
13673
13700
|
}
|
|
13674
13701
|
return ngInjectableDef;
|
|
13675
13702
|
},
|
|
@@ -13680,7 +13707,7 @@ function compileInjectable(type, meta) {
|
|
|
13680
13707
|
Object.defineProperty(type, NG_FACTORY_DEF, {
|
|
13681
13708
|
get: () => {
|
|
13682
13709
|
if (ngFactoryDef === null) {
|
|
13683
|
-
const compiler = getCompilerFacade();
|
|
13710
|
+
const compiler = getCompilerFacade({ usage: 0 /* Decorator */, kind: 'injectable', type });
|
|
13684
13711
|
ngFactoryDef = compiler.compileFactory(angularCoreDiEnv, `ng:///${type.name}/ɵfac.js`, {
|
|
13685
13712
|
name: type.name,
|
|
13686
13713
|
type,
|
|
@@ -18782,49 +18809,15 @@ if (typeof ngI18nClosureMode === 'undefined') {
|
|
|
18782
18809
|
* Use of this source code is governed by an MIT-style license that can be
|
|
18783
18810
|
* found in the LICENSE file at https://angular.io/license
|
|
18784
18811
|
*/
|
|
18785
|
-
// THIS CODE IS GENERATED - DO NOT MODIFY
|
|
18786
|
-
// See angular/tools/gulp-tasks/cldr/extract.js
|
|
18812
|
+
// THIS CODE IS GENERATED - DO NOT MODIFY.
|
|
18787
18813
|
const u = undefined;
|
|
18788
18814
|
function plural(n) {
|
|
18789
|
-
|
|
18815
|
+
const i = Math.floor(Math.abs(n)), v = n.toString().replace(/^[^.]*\.?/, '').length;
|
|
18790
18816
|
if (i === 1 && v === 0)
|
|
18791
18817
|
return 1;
|
|
18792
18818
|
return 5;
|
|
18793
18819
|
}
|
|
18794
|
-
var localeEn = [
|
|
18795
|
-
'en',
|
|
18796
|
-
[['a', 'p'], ['AM', 'PM'], u],
|
|
18797
|
-
[['AM', 'PM'], u, u],
|
|
18798
|
-
[
|
|
18799
|
-
['S', 'M', 'T', 'W', 'T', 'F', 'S'], ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
|
|
18800
|
-
['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],
|
|
18801
|
-
['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa']
|
|
18802
|
-
],
|
|
18803
|
-
u,
|
|
18804
|
-
[
|
|
18805
|
-
['J', 'F', 'M', 'A', 'M', 'J', 'J', 'A', 'S', 'O', 'N', 'D'],
|
|
18806
|
-
['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
|
|
18807
|
-
[
|
|
18808
|
-
'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September',
|
|
18809
|
-
'October', 'November', 'December'
|
|
18810
|
-
]
|
|
18811
|
-
],
|
|
18812
|
-
u,
|
|
18813
|
-
[['B', 'A'], ['BC', 'AD'], ['Before Christ', 'Anno Domini']],
|
|
18814
|
-
0,
|
|
18815
|
-
[6, 0],
|
|
18816
|
-
['M/d/yy', 'MMM d, y', 'MMMM d, y', 'EEEE, MMMM d, y'],
|
|
18817
|
-
['h:mm a', 'h:mm:ss a', 'h:mm:ss a z', 'h:mm:ss a zzzz'],
|
|
18818
|
-
['{1}, {0}', u, '{1} \'at\' {0}', u],
|
|
18819
|
-
['.', ',', ';', '%', '+', '-', 'E', '×', '‰', '∞', 'NaN', ':'],
|
|
18820
|
-
['#,##0.###', '#,##0%', '¤#,##0.00', '#E0'],
|
|
18821
|
-
'USD',
|
|
18822
|
-
'$',
|
|
18823
|
-
'US Dollar',
|
|
18824
|
-
{},
|
|
18825
|
-
'ltr',
|
|
18826
|
-
plural
|
|
18827
|
-
];
|
|
18820
|
+
var localeEn = ["en", [["a", "p"], ["AM", "PM"], u], [["AM", "PM"], u, u], [["S", "M", "T", "W", "T", "F", "S"], ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"], ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"]], u, [["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"], ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]], u, [["B", "A"], ["BC", "AD"], ["Before Christ", "Anno Domini"]], 0, [6, 0], ["M/d/yy", "MMM d, y", "MMMM d, y", "EEEE, MMMM d, y"], ["h:mm a", "h:mm:ss a", "h:mm:ss a z", "h:mm:ss a zzzz"], ["{1}, {0}", u, "{1} 'at' {0}", u], [".", ",", ";", "%", "+", "-", "E", "×", "‰", "∞", "NaN", ":"], ["#,##0.###", "#,##0%", "¤#,##0.00", "#E0"], "USD", "$", "US Dollar", {}, "ltr", plural];
|
|
18828
18821
|
|
|
18829
18822
|
/**
|
|
18830
18823
|
* @license
|
|
@@ -21465,7 +21458,7 @@ class Version {
|
|
|
21465
21458
|
/**
|
|
21466
21459
|
* @publicApi
|
|
21467
21460
|
*/
|
|
21468
|
-
const VERSION = new Version('12.2.
|
|
21461
|
+
const VERSION = new Version('12.2.1');
|
|
21469
21462
|
|
|
21470
21463
|
/**
|
|
21471
21464
|
* @license
|
|
@@ -26924,7 +26917,8 @@ function compileNgModuleDefs(moduleType, ngModule, allowDuplicateDeclarationsInR
|
|
|
26924
26917
|
// go into an infinite loop before we've reached the point where we throw all the errors.
|
|
26925
26918
|
throw new Error(`'${stringifyForError(moduleType)}' module can't import itself`);
|
|
26926
26919
|
}
|
|
26927
|
-
|
|
26920
|
+
const compiler = getCompilerFacade({ usage: 0 /* Decorator */, kind: 'NgModule', type: moduleType });
|
|
26921
|
+
ngModuleDef = compiler.compileNgModule(angularCoreEnv, `ng:///${moduleType.name}/ɵmod.js`, {
|
|
26928
26922
|
type: moduleType,
|
|
26929
26923
|
bootstrap: flatten(ngModule.bootstrap || EMPTY_ARRAY).map(resolveForwardRef),
|
|
26930
26924
|
declarations: declarations.map(resolveForwardRef),
|
|
@@ -26952,7 +26946,7 @@ function compileNgModuleDefs(moduleType, ngModule, allowDuplicateDeclarationsInR
|
|
|
26952
26946
|
Object.defineProperty(moduleType, NG_FACTORY_DEF, {
|
|
26953
26947
|
get: () => {
|
|
26954
26948
|
if (ngFactoryDef === null) {
|
|
26955
|
-
const compiler = getCompilerFacade();
|
|
26949
|
+
const compiler = getCompilerFacade({ usage: 0 /* Decorator */, kind: 'NgModule', type: moduleType });
|
|
26956
26950
|
ngFactoryDef = compiler.compileFactory(angularCoreEnv, `ng:///${moduleType.name}/ɵfac.js`, {
|
|
26957
26951
|
name: moduleType.name,
|
|
26958
26952
|
type: moduleType,
|
|
@@ -26981,7 +26975,9 @@ function compileNgModuleDefs(moduleType, ngModule, allowDuplicateDeclarationsInR
|
|
|
26981
26975
|
(ngModule.exports || EMPTY_ARRAY).map(resolveForwardRef),
|
|
26982
26976
|
],
|
|
26983
26977
|
};
|
|
26984
|
-
|
|
26978
|
+
const compiler = getCompilerFacade({ usage: 0 /* Decorator */, kind: 'NgModule', type: moduleType });
|
|
26979
|
+
ngInjectorDef =
|
|
26980
|
+
compiler.compileInjector(angularCoreEnv, `ng:///${moduleType.name}/ɵinj.js`, meta);
|
|
26985
26981
|
}
|
|
26986
26982
|
return ngInjectorDef;
|
|
26987
26983
|
},
|
|
@@ -27347,7 +27343,7 @@ function compileComponent(type, metadata) {
|
|
|
27347
27343
|
Object.defineProperty(type, NG_COMP_DEF, {
|
|
27348
27344
|
get: () => {
|
|
27349
27345
|
if (ngComponentDef === null) {
|
|
27350
|
-
const compiler = getCompilerFacade();
|
|
27346
|
+
const compiler = getCompilerFacade({ usage: 0 /* Decorator */, kind: 'component', type: type });
|
|
27351
27347
|
if (componentNeedsResolution(metadata)) {
|
|
27352
27348
|
const error = [`Component '${type.name}' is not resolved:`];
|
|
27353
27349
|
if (metadata.templateUrl) {
|
|
@@ -27438,8 +27434,9 @@ function compileDirective(type, directive) {
|
|
|
27438
27434
|
// that use `@Directive()` with no selector. In that case, pass empty object to the
|
|
27439
27435
|
// `directiveMetadata` function instead of null.
|
|
27440
27436
|
const meta = getDirectiveMetadata$1(type, directive || {});
|
|
27437
|
+
const compiler = getCompilerFacade({ usage: 0 /* Decorator */, kind: 'directive', type });
|
|
27441
27438
|
ngDirectiveDef =
|
|
27442
|
-
|
|
27439
|
+
compiler.compileDirective(angularCoreEnv, meta.sourceMapUrl, meta.metadata);
|
|
27443
27440
|
}
|
|
27444
27441
|
return ngDirectiveDef;
|
|
27445
27442
|
},
|
|
@@ -27450,7 +27447,7 @@ function compileDirective(type, directive) {
|
|
|
27450
27447
|
function getDirectiveMetadata$1(type, metadata) {
|
|
27451
27448
|
const name = type && type.name;
|
|
27452
27449
|
const sourceMapUrl = `ng:///${name}/ɵdir.js`;
|
|
27453
|
-
const compiler = getCompilerFacade();
|
|
27450
|
+
const compiler = getCompilerFacade({ usage: 0 /* Decorator */, kind: 'directive', type });
|
|
27454
27451
|
const facade = directiveMetadata(type, metadata);
|
|
27455
27452
|
facade.typeSourceSpan = compiler.createParseSourceSpan('Directive', name, sourceMapUrl);
|
|
27456
27453
|
if (facade.usesInheritance) {
|
|
@@ -27464,7 +27461,7 @@ function addDirectiveFactoryDef(type, metadata) {
|
|
|
27464
27461
|
get: () => {
|
|
27465
27462
|
if (ngFactoryDef === null) {
|
|
27466
27463
|
const meta = getDirectiveMetadata$1(type, metadata);
|
|
27467
|
-
const compiler = getCompilerFacade();
|
|
27464
|
+
const compiler = getCompilerFacade({ usage: 0 /* Decorator */, kind: 'directive', type });
|
|
27468
27465
|
ngFactoryDef = compiler.compileFactory(angularCoreEnv, `ng:///${type.name}/ɵfac.js`, {
|
|
27469
27466
|
name: meta.metadata.name,
|
|
27470
27467
|
type: meta.metadata.type,
|
|
@@ -27615,7 +27612,7 @@ function compilePipe(type, meta) {
|
|
|
27615
27612
|
get: () => {
|
|
27616
27613
|
if (ngFactoryDef === null) {
|
|
27617
27614
|
const metadata = getPipeMetadata(type, meta);
|
|
27618
|
-
const compiler = getCompilerFacade();
|
|
27615
|
+
const compiler = getCompilerFacade({ usage: 0 /* Decorator */, kind: 'pipe', type: metadata.type });
|
|
27619
27616
|
ngFactoryDef = compiler.compileFactory(angularCoreEnv, `ng:///${metadata.name}/ɵfac.js`, {
|
|
27620
27617
|
name: metadata.name,
|
|
27621
27618
|
type: metadata.type,
|
|
@@ -27633,7 +27630,9 @@ function compilePipe(type, meta) {
|
|
|
27633
27630
|
get: () => {
|
|
27634
27631
|
if (ngPipeDef === null) {
|
|
27635
27632
|
const metadata = getPipeMetadata(type, meta);
|
|
27636
|
-
|
|
27633
|
+
const compiler = getCompilerFacade({ usage: 0 /* Decorator */, kind: 'pipe', type: metadata.type });
|
|
27634
|
+
ngPipeDef =
|
|
27635
|
+
compiler.compilePipe(angularCoreEnv, `ng:///${metadata.name}/ɵpipe.js`, metadata);
|
|
27637
27636
|
}
|
|
27638
27637
|
return ngPipeDef;
|
|
27639
27638
|
},
|
|
@@ -29081,7 +29080,11 @@ function compileNgModuleFactory__POST_R3__(injector, options, moduleType) {
|
|
|
29081
29080
|
if (compilerProviders.length === 0) {
|
|
29082
29081
|
return Promise.resolve(moduleFactory);
|
|
29083
29082
|
}
|
|
29084
|
-
const compiler = getCompilerFacade(
|
|
29083
|
+
const compiler = getCompilerFacade({
|
|
29084
|
+
usage: 0 /* Decorator */,
|
|
29085
|
+
kind: 'NgModule',
|
|
29086
|
+
type: moduleType,
|
|
29087
|
+
});
|
|
29085
29088
|
const compilerInjector = Injector.create({ providers: compilerProviders });
|
|
29086
29089
|
const resourceLoader = compilerInjector.get(compiler.ResourceLoader);
|
|
29087
29090
|
// The resource loader can also return a string while the "resolveComponentResources"
|
|
@@ -30624,16 +30627,16 @@ function _localeFactory(locale) {
|
|
|
30624
30627
|
/**
|
|
30625
30628
|
* Work out the locale from the potential global properties.
|
|
30626
30629
|
*
|
|
30627
|
-
* * Closure Compiler: use `goog.
|
|
30630
|
+
* * Closure Compiler: use `goog.getLocale()`.
|
|
30628
30631
|
* * Ivy enabled: use `$localize.locale`
|
|
30629
30632
|
*/
|
|
30630
30633
|
function getGlobalLocale() {
|
|
30631
30634
|
if (typeof ngI18nClosureMode !== 'undefined' && ngI18nClosureMode &&
|
|
30632
|
-
typeof goog !== 'undefined' && goog.
|
|
30633
|
-
// * The default `goog.
|
|
30635
|
+
typeof goog !== 'undefined' && goog.getLocale() !== 'en') {
|
|
30636
|
+
// * The default `goog.getLocale()` value is `en`, while Angular used `en-US`.
|
|
30634
30637
|
// * In order to preserve backwards compatibility, we use Angular default value over
|
|
30635
30638
|
// Closure Compiler's one.
|
|
30636
|
-
return goog.
|
|
30639
|
+
return goog.getLocale();
|
|
30637
30640
|
}
|
|
30638
30641
|
else {
|
|
30639
30642
|
// KEEP `typeof $localize !== 'undefined' && $localize.locale` IN SYNC WITH THE LOCALIZE
|
|
@@ -33023,7 +33026,7 @@ class NgModuleFactory_ extends NgModuleFactory {
|
|
|
33023
33026
|
* @codeGenApi
|
|
33024
33027
|
*/
|
|
33025
33028
|
function ɵɵngDeclareDirective(decl) {
|
|
33026
|
-
const compiler = getCompilerFacade();
|
|
33029
|
+
const compiler = getCompilerFacade({ usage: 1 /* PartialDeclaration */, kind: 'directive', type: decl.type });
|
|
33027
33030
|
return compiler.compileDirectiveDeclaration(angularCoreEnv, `ng:///${decl.type.name}/ɵfac.js`, decl);
|
|
33028
33031
|
}
|
|
33029
33032
|
/**
|
|
@@ -33041,7 +33044,7 @@ function ɵɵngDeclareClassMetadata(decl) {
|
|
|
33041
33044
|
* @codeGenApi
|
|
33042
33045
|
*/
|
|
33043
33046
|
function ɵɵngDeclareComponent(decl) {
|
|
33044
|
-
const compiler = getCompilerFacade();
|
|
33047
|
+
const compiler = getCompilerFacade({ usage: 1 /* PartialDeclaration */, kind: 'component', type: decl.type });
|
|
33045
33048
|
return compiler.compileComponentDeclaration(angularCoreEnv, `ng:///${decl.type.name}/ɵcmp.js`, decl);
|
|
33046
33049
|
}
|
|
33047
33050
|
/**
|
|
@@ -33050,16 +33053,34 @@ function ɵɵngDeclareComponent(decl) {
|
|
|
33050
33053
|
* @codeGenApi
|
|
33051
33054
|
*/
|
|
33052
33055
|
function ɵɵngDeclareFactory(decl) {
|
|
33053
|
-
const compiler = getCompilerFacade(
|
|
33056
|
+
const compiler = getCompilerFacade({
|
|
33057
|
+
usage: 1 /* PartialDeclaration */,
|
|
33058
|
+
kind: getFactoryKind(decl.target),
|
|
33059
|
+
type: decl.type
|
|
33060
|
+
});
|
|
33054
33061
|
return compiler.compileFactoryDeclaration(angularCoreEnv, `ng:///${decl.type.name}/ɵfac.js`, decl);
|
|
33055
33062
|
}
|
|
33063
|
+
function getFactoryKind(target) {
|
|
33064
|
+
switch (target) {
|
|
33065
|
+
case FactoryTarget.Directive:
|
|
33066
|
+
return 'directive';
|
|
33067
|
+
case FactoryTarget.Component:
|
|
33068
|
+
return 'component';
|
|
33069
|
+
case FactoryTarget.Injectable:
|
|
33070
|
+
return 'injectable';
|
|
33071
|
+
case FactoryTarget.Pipe:
|
|
33072
|
+
return 'pipe';
|
|
33073
|
+
case FactoryTarget.NgModule:
|
|
33074
|
+
return 'NgModule';
|
|
33075
|
+
}
|
|
33076
|
+
}
|
|
33056
33077
|
/**
|
|
33057
33078
|
* Compiles a partial injectable declaration object into a full injectable definition object.
|
|
33058
33079
|
*
|
|
33059
33080
|
* @codeGenApi
|
|
33060
33081
|
*/
|
|
33061
33082
|
function ɵɵngDeclareInjectable(decl) {
|
|
33062
|
-
const compiler = getCompilerFacade();
|
|
33083
|
+
const compiler = getCompilerFacade({ usage: 1 /* PartialDeclaration */, kind: 'injectable', type: decl.type });
|
|
33063
33084
|
return compiler.compileInjectableDeclaration(angularCoreEnv, `ng:///${decl.type.name}/ɵprov.js`, decl);
|
|
33064
33085
|
}
|
|
33065
33086
|
/**
|
|
@@ -33068,7 +33089,7 @@ function ɵɵngDeclareInjectable(decl) {
|
|
|
33068
33089
|
* @codeGenApi
|
|
33069
33090
|
*/
|
|
33070
33091
|
function ɵɵngDeclareInjector(decl) {
|
|
33071
|
-
const compiler = getCompilerFacade();
|
|
33092
|
+
const compiler = getCompilerFacade({ usage: 1 /* PartialDeclaration */, kind: 'NgModule', type: decl.type });
|
|
33072
33093
|
return compiler.compileInjectorDeclaration(angularCoreEnv, `ng:///${decl.type.name}/ɵinj.js`, decl);
|
|
33073
33094
|
}
|
|
33074
33095
|
/**
|
|
@@ -33077,7 +33098,7 @@ function ɵɵngDeclareInjector(decl) {
|
|
|
33077
33098
|
* @codeGenApi
|
|
33078
33099
|
*/
|
|
33079
33100
|
function ɵɵngDeclareNgModule(decl) {
|
|
33080
|
-
const compiler = getCompilerFacade();
|
|
33101
|
+
const compiler = getCompilerFacade({ usage: 1 /* PartialDeclaration */, kind: 'NgModule', type: decl.type });
|
|
33081
33102
|
return compiler.compileNgModuleDeclaration(angularCoreEnv, `ng:///${decl.type.name}/ɵmod.js`, decl);
|
|
33082
33103
|
}
|
|
33083
33104
|
/**
|
|
@@ -33086,7 +33107,7 @@ function ɵɵngDeclareNgModule(decl) {
|
|
|
33086
33107
|
* @codeGenApi
|
|
33087
33108
|
*/
|
|
33088
33109
|
function ɵɵngDeclarePipe(decl) {
|
|
33089
|
-
const compiler = getCompilerFacade();
|
|
33110
|
+
const compiler = getCompilerFacade({ usage: 1 /* PartialDeclaration */, kind: 'pipe', type: decl.type });
|
|
33090
33111
|
return compiler.compilePipeDeclaration(angularCoreEnv, `ng:///${decl.type.name}/ɵpipe.js`, decl);
|
|
33091
33112
|
}
|
|
33092
33113
|
|