@angular/common 14.2.0-rc.0 → 14.2.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/esm2020/http/src/client.mjs +3 -3
- package/esm2020/http/src/interceptor.mjs +3 -3
- package/esm2020/http/src/jsonp.mjs +6 -6
- package/esm2020/http/src/module.mjs +15 -15
- package/esm2020/http/src/xhr.mjs +3 -3
- package/esm2020/http/src/xsrf.mjs +6 -6
- package/esm2020/http/testing/src/backend.mjs +3 -3
- package/esm2020/http/testing/src/module.mjs +4 -4
- package/esm2020/src/common_module.mjs +4 -4
- package/esm2020/src/directives/ng_class.mjs +3 -3
- package/esm2020/src/directives/ng_component_outlet.mjs +3 -3
- package/esm2020/src/directives/ng_for_of.mjs +3 -3
- package/esm2020/src/directives/ng_if.mjs +3 -3
- package/esm2020/src/directives/ng_optimized_image/image_loaders/image_loader.mjs +12 -11
- package/esm2020/src/directives/ng_optimized_image/lcp_image_observer.mjs +3 -3
- package/esm2020/src/directives/ng_optimized_image/ng_optimized_image.mjs +22 -32
- package/esm2020/src/directives/ng_optimized_image/preconnect_link_checker.mjs +3 -3
- package/esm2020/src/directives/ng_optimized_image/url.mjs +1 -11
- package/esm2020/src/directives/ng_plural.mjs +6 -6
- package/esm2020/src/directives/ng_style.mjs +3 -3
- package/esm2020/src/directives/ng_switch.mjs +9 -9
- package/esm2020/src/directives/ng_template_outlet.mjs +3 -3
- package/esm2020/src/i18n/localization.mjs +6 -6
- package/esm2020/src/location/hash_location_strategy.mjs +3 -3
- package/esm2020/src/location/location.mjs +3 -3
- package/esm2020/src/location/location_strategy.mjs +6 -6
- package/esm2020/src/location/platform_location.mjs +6 -6
- package/esm2020/src/pipes/async_pipe.mjs +3 -3
- package/esm2020/src/pipes/case_conversion_pipes.mjs +9 -9
- package/esm2020/src/pipes/date_pipe.mjs +3 -3
- package/esm2020/src/pipes/i18n_plural_pipe.mjs +3 -3
- package/esm2020/src/pipes/i18n_select_pipe.mjs +3 -3
- package/esm2020/src/pipes/json_pipe.mjs +3 -3
- package/esm2020/src/pipes/keyvalue_pipe.mjs +3 -3
- package/esm2020/src/pipes/number_pipe.mjs +9 -9
- package/esm2020/src/pipes/slice_pipe.mjs +3 -3
- package/esm2020/src/version.mjs +1 -1
- package/esm2020/testing/src/location_mock.mjs +3 -3
- package/esm2020/testing/src/mock_location_strategy.mjs +3 -3
- package/esm2020/testing/src/mock_platform_location.mjs +3 -3
- package/esm2020/upgrade/src/location_upgrade_module.mjs +4 -4
- package/fesm2015/common.mjs +158 -177
- package/fesm2015/common.mjs.map +1 -1
- package/fesm2015/http/testing.mjs +8 -8
- package/fesm2015/http.mjs +37 -37
- package/fesm2015/testing.mjs +10 -10
- package/fesm2015/upgrade.mjs +5 -5
- package/fesm2020/common.mjs +158 -177
- package/fesm2020/common.mjs.map +1 -1
- package/fesm2020/http/testing.mjs +8 -8
- package/fesm2020/http.mjs +37 -37
- package/fesm2020/testing.mjs +10 -10
- package/fesm2020/upgrade.mjs +5 -5
- package/http/index.d.ts +1 -1
- package/http/testing/index.d.ts +1 -1
- package/index.d.ts +3 -2
- package/package.json +2 -2
- package/testing/index.d.ts +1 -1
- package/upgrade/index.d.ts +1 -1
package/fesm2015/common.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license Angular v14.2.0
|
|
2
|
+
* @license Angular v14.2.0
|
|
3
3
|
* (c) 2010-2022 Google LLC. https://angular.io/
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
@@ -87,9 +87,9 @@ class PlatformLocation {
|
|
|
87
87
|
throw new Error('Not implemented');
|
|
88
88
|
}
|
|
89
89
|
}
|
|
90
|
-
PlatformLocation.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
91
|
-
PlatformLocation.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0
|
|
92
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
90
|
+
PlatformLocation.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: PlatformLocation, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
91
|
+
PlatformLocation.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: PlatformLocation, providedIn: 'platform', useFactory: useBrowserPlatformLocation });
|
|
92
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: PlatformLocation, decorators: [{
|
|
93
93
|
type: Injectable,
|
|
94
94
|
args: [{
|
|
95
95
|
providedIn: 'platform',
|
|
@@ -190,9 +190,9 @@ class BrowserPlatformLocation extends PlatformLocation {
|
|
|
190
190
|
return this._history.state;
|
|
191
191
|
}
|
|
192
192
|
}
|
|
193
|
-
BrowserPlatformLocation.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
194
|
-
BrowserPlatformLocation.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0
|
|
195
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
193
|
+
BrowserPlatformLocation.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: BrowserPlatformLocation, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
194
|
+
BrowserPlatformLocation.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: BrowserPlatformLocation, providedIn: 'platform', useFactory: createBrowserPlatformLocation });
|
|
195
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: BrowserPlatformLocation, decorators: [{
|
|
196
196
|
type: Injectable,
|
|
197
197
|
args: [{
|
|
198
198
|
providedIn: 'platform',
|
|
@@ -313,9 +313,9 @@ class LocationStrategy {
|
|
|
313
313
|
throw new Error('Not implemented');
|
|
314
314
|
}
|
|
315
315
|
}
|
|
316
|
-
LocationStrategy.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
317
|
-
LocationStrategy.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0
|
|
318
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
316
|
+
LocationStrategy.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: LocationStrategy, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
317
|
+
LocationStrategy.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: LocationStrategy, providedIn: 'root', useFactory: () => inject(PathLocationStrategy) });
|
|
318
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: LocationStrategy, decorators: [{
|
|
319
319
|
type: Injectable,
|
|
320
320
|
args: [{ providedIn: 'root', useFactory: () => inject(PathLocationStrategy) }]
|
|
321
321
|
}] });
|
|
@@ -424,9 +424,9 @@ class PathLocationStrategy extends LocationStrategy {
|
|
|
424
424
|
(_b = (_a = this._platformLocation).historyGo) === null || _b === void 0 ? void 0 : _b.call(_a, relativePosition);
|
|
425
425
|
}
|
|
426
426
|
}
|
|
427
|
-
PathLocationStrategy.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
428
|
-
PathLocationStrategy.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0
|
|
429
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
427
|
+
PathLocationStrategy.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: PathLocationStrategy, deps: [{ token: PlatformLocation }, { token: APP_BASE_HREF, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
428
|
+
PathLocationStrategy.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: PathLocationStrategy, providedIn: 'root' });
|
|
429
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: PathLocationStrategy, decorators: [{
|
|
430
430
|
type: Injectable,
|
|
431
431
|
args: [{ providedIn: 'root' }]
|
|
432
432
|
}], ctorParameters: function () {
|
|
@@ -525,9 +525,9 @@ class HashLocationStrategy extends LocationStrategy {
|
|
|
525
525
|
(_b = (_a = this._platformLocation).historyGo) === null || _b === void 0 ? void 0 : _b.call(_a, relativePosition);
|
|
526
526
|
}
|
|
527
527
|
}
|
|
528
|
-
HashLocationStrategy.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
529
|
-
HashLocationStrategy.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0
|
|
530
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
528
|
+
HashLocationStrategy.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: HashLocationStrategy, deps: [{ token: PlatformLocation }, { token: APP_BASE_HREF, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
529
|
+
HashLocationStrategy.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: HashLocationStrategy });
|
|
530
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: HashLocationStrategy, decorators: [{
|
|
531
531
|
type: Injectable
|
|
532
532
|
}], ctorParameters: function () {
|
|
533
533
|
return [{ type: PlatformLocation }, { type: undefined, decorators: [{
|
|
@@ -783,9 +783,9 @@ Location.joinWithSlash = joinWithSlash;
|
|
|
783
783
|
* @returns The URL string, modified if needed.
|
|
784
784
|
*/
|
|
785
785
|
Location.stripTrailingSlash = stripTrailingSlash;
|
|
786
|
-
Location.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
787
|
-
Location.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0
|
|
788
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
786
|
+
Location.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: Location, deps: [{ token: LocationStrategy }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
787
|
+
Location.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: Location, providedIn: 'root', useFactory: createLocation });
|
|
788
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: Location, decorators: [{
|
|
789
789
|
type: Injectable,
|
|
790
790
|
args: [{
|
|
791
791
|
providedIn: 'root',
|
|
@@ -2601,9 +2601,9 @@ function parseIntAutoRadix(text) {
|
|
|
2601
2601
|
*/
|
|
2602
2602
|
class NgLocalization {
|
|
2603
2603
|
}
|
|
2604
|
-
NgLocalization.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
2605
|
-
NgLocalization.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0
|
|
2606
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
2604
|
+
NgLocalization.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgLocalization, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2605
|
+
NgLocalization.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgLocalization, providedIn: 'root', useFactory: (locale) => new NgLocaleLocalization(locale), deps: [{ token: LOCALE_ID }] });
|
|
2606
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgLocalization, decorators: [{
|
|
2607
2607
|
type: Injectable,
|
|
2608
2608
|
args: [{
|
|
2609
2609
|
providedIn: 'root',
|
|
@@ -2658,9 +2658,9 @@ class NgLocaleLocalization extends NgLocalization {
|
|
|
2658
2658
|
}
|
|
2659
2659
|
}
|
|
2660
2660
|
}
|
|
2661
|
-
NgLocaleLocalization.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
2662
|
-
NgLocaleLocalization.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0
|
|
2663
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
2661
|
+
NgLocaleLocalization.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgLocaleLocalization, deps: [{ token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2662
|
+
NgLocaleLocalization.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgLocaleLocalization });
|
|
2663
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgLocaleLocalization, decorators: [{
|
|
2664
2664
|
type: Injectable
|
|
2665
2665
|
}], ctorParameters: function () {
|
|
2666
2666
|
return [{ type: undefined, decorators: [{
|
|
@@ -2855,9 +2855,9 @@ class NgClass {
|
|
|
2855
2855
|
}
|
|
2856
2856
|
}
|
|
2857
2857
|
}
|
|
2858
|
-
NgClass.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
2859
|
-
NgClass.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0
|
|
2860
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
2858
|
+
NgClass.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgClass, deps: [{ token: i0.IterableDiffers }, { token: i0.KeyValueDiffers }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
2859
|
+
NgClass.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0", type: NgClass, isStandalone: true, selector: "[ngClass]", inputs: { klass: ["class", "klass"], ngClass: "ngClass" }, ngImport: i0 });
|
|
2860
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgClass, decorators: [{
|
|
2861
2861
|
type: Directive,
|
|
2862
2862
|
args: [{
|
|
2863
2863
|
selector: '[ngClass]',
|
|
@@ -2976,9 +2976,9 @@ class NgComponentOutlet {
|
|
|
2976
2976
|
this._moduleRef.destroy();
|
|
2977
2977
|
}
|
|
2978
2978
|
}
|
|
2979
|
-
NgComponentOutlet.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
2980
|
-
NgComponentOutlet.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0
|
|
2981
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
2979
|
+
NgComponentOutlet.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgComponentOutlet, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
2980
|
+
NgComponentOutlet.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0", type: NgComponentOutlet, isStandalone: true, selector: "[ngComponentOutlet]", inputs: { ngComponentOutlet: "ngComponentOutlet", ngComponentOutletInjector: "ngComponentOutletInjector", ngComponentOutletContent: "ngComponentOutletContent", ngComponentOutletNgModule: "ngComponentOutletNgModule", ngComponentOutletNgModuleFactory: "ngComponentOutletNgModuleFactory" }, usesOnChanges: true, ngImport: i0 });
|
|
2981
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgComponentOutlet, decorators: [{
|
|
2982
2982
|
type: Directive,
|
|
2983
2983
|
args: [{
|
|
2984
2984
|
selector: '[ngComponentOutlet]',
|
|
@@ -3268,9 +3268,9 @@ class NgForOf {
|
|
|
3268
3268
|
return true;
|
|
3269
3269
|
}
|
|
3270
3270
|
}
|
|
3271
|
-
NgForOf.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
3272
|
-
NgForOf.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0
|
|
3273
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
3271
|
+
NgForOf.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgForOf, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }, { token: i0.IterableDiffers }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3272
|
+
NgForOf.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0", type: NgForOf, isStandalone: true, selector: "[ngFor][ngForOf]", inputs: { ngForOf: "ngForOf", ngForTrackBy: "ngForTrackBy", ngForTemplate: "ngForTemplate" }, ngImport: i0 });
|
|
3273
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgForOf, decorators: [{
|
|
3274
3274
|
type: Directive,
|
|
3275
3275
|
args: [{
|
|
3276
3276
|
selector: '[ngFor][ngForOf]',
|
|
@@ -3503,9 +3503,9 @@ class NgIf {
|
|
|
3503
3503
|
return true;
|
|
3504
3504
|
}
|
|
3505
3505
|
}
|
|
3506
|
-
NgIf.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
3507
|
-
NgIf.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0
|
|
3508
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
3506
|
+
NgIf.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgIf, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3507
|
+
NgIf.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0", type: NgIf, isStandalone: true, selector: "[ngIf]", inputs: { ngIf: "ngIf", ngIfThen: "ngIfThen", ngIfElse: "ngIfElse" }, ngImport: i0 });
|
|
3508
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgIf, decorators: [{
|
|
3509
3509
|
type: Directive,
|
|
3510
3510
|
args: [{
|
|
3511
3511
|
selector: '[ngIf]',
|
|
@@ -3676,9 +3676,9 @@ class NgSwitch {
|
|
|
3676
3676
|
}
|
|
3677
3677
|
}
|
|
3678
3678
|
}
|
|
3679
|
-
NgSwitch.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
3680
|
-
NgSwitch.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0
|
|
3681
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
3679
|
+
NgSwitch.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgSwitch, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
3680
|
+
NgSwitch.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0", type: NgSwitch, isStandalone: true, selector: "[ngSwitch]", inputs: { ngSwitch: "ngSwitch" }, ngImport: i0 });
|
|
3681
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgSwitch, decorators: [{
|
|
3682
3682
|
type: Directive,
|
|
3683
3683
|
args: [{
|
|
3684
3684
|
selector: '[ngSwitch]',
|
|
@@ -3737,9 +3737,9 @@ class NgSwitchCase {
|
|
|
3737
3737
|
this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase));
|
|
3738
3738
|
}
|
|
3739
3739
|
}
|
|
3740
|
-
NgSwitchCase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
3741
|
-
NgSwitchCase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0
|
|
3742
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
3740
|
+
NgSwitchCase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgSwitchCase, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }, { token: NgSwitch, host: true, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3741
|
+
NgSwitchCase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0", type: NgSwitchCase, isStandalone: true, selector: "[ngSwitchCase]", inputs: { ngSwitchCase: "ngSwitchCase" }, ngImport: i0 });
|
|
3742
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgSwitchCase, decorators: [{
|
|
3743
3743
|
type: Directive,
|
|
3744
3744
|
args: [{
|
|
3745
3745
|
selector: '[ngSwitchCase]',
|
|
@@ -3776,9 +3776,9 @@ class NgSwitchDefault {
|
|
|
3776
3776
|
ngSwitch._addDefault(new SwitchView(viewContainer, templateRef));
|
|
3777
3777
|
}
|
|
3778
3778
|
}
|
|
3779
|
-
NgSwitchDefault.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
3780
|
-
NgSwitchDefault.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0
|
|
3781
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
3779
|
+
NgSwitchDefault.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgSwitchDefault, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }, { token: NgSwitch, host: true, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3780
|
+
NgSwitchDefault.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0", type: NgSwitchDefault, isStandalone: true, selector: "[ngSwitchDefault]", ngImport: i0 });
|
|
3781
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgSwitchDefault, decorators: [{
|
|
3782
3782
|
type: Directive,
|
|
3783
3783
|
args: [{
|
|
3784
3784
|
selector: '[ngSwitchDefault]',
|
|
@@ -3864,9 +3864,9 @@ class NgPlural {
|
|
|
3864
3864
|
}
|
|
3865
3865
|
}
|
|
3866
3866
|
}
|
|
3867
|
-
NgPlural.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
3868
|
-
NgPlural.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0
|
|
3869
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
3867
|
+
NgPlural.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgPlural, deps: [{ token: NgLocalization }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3868
|
+
NgPlural.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0", type: NgPlural, isStandalone: true, selector: "[ngPlural]", inputs: { ngPlural: "ngPlural" }, ngImport: i0 });
|
|
3869
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgPlural, decorators: [{
|
|
3870
3870
|
type: Directive,
|
|
3871
3871
|
args: [{
|
|
3872
3872
|
selector: '[ngPlural]',
|
|
@@ -3902,9 +3902,9 @@ class NgPluralCase {
|
|
|
3902
3902
|
ngPlural.addCase(isANumber ? `=${value}` : value, new SwitchView(viewContainer, template));
|
|
3903
3903
|
}
|
|
3904
3904
|
}
|
|
3905
|
-
NgPluralCase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
3906
|
-
NgPluralCase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0
|
|
3907
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
3905
|
+
NgPluralCase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgPluralCase, deps: [{ token: 'ngPluralCase', attribute: true }, { token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: NgPlural, host: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3906
|
+
NgPluralCase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0", type: NgPluralCase, isStandalone: true, selector: "[ngPluralCase]", ngImport: i0 });
|
|
3907
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgPluralCase, decorators: [{
|
|
3908
3908
|
type: Directive,
|
|
3909
3909
|
args: [{
|
|
3910
3910
|
selector: '[ngPluralCase]',
|
|
@@ -4000,9 +4000,9 @@ class NgStyle {
|
|
|
4000
4000
|
changes.forEachChangedItem((record) => this._setStyle(record.key, record.currentValue));
|
|
4001
4001
|
}
|
|
4002
4002
|
}
|
|
4003
|
-
NgStyle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
4004
|
-
NgStyle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0
|
|
4005
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
4003
|
+
NgStyle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgStyle, deps: [{ token: i0.ElementRef }, { token: i0.KeyValueDiffers }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
4004
|
+
NgStyle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0", type: NgStyle, isStandalone: true, selector: "[ngStyle]", inputs: { ngStyle: "ngStyle" }, ngImport: i0 });
|
|
4005
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgStyle, decorators: [{
|
|
4006
4006
|
type: Directive,
|
|
4007
4007
|
args: [{
|
|
4008
4008
|
selector: '[ngStyle]',
|
|
@@ -4082,9 +4082,9 @@ class NgTemplateOutlet {
|
|
|
4082
4082
|
}
|
|
4083
4083
|
}
|
|
4084
4084
|
}
|
|
4085
|
-
NgTemplateOutlet.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
4086
|
-
NgTemplateOutlet.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0
|
|
4087
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
4085
|
+
NgTemplateOutlet.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgTemplateOutlet, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
4086
|
+
NgTemplateOutlet.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0", type: NgTemplateOutlet, isStandalone: true, selector: "[ngTemplateOutlet]", inputs: { ngTemplateOutletContext: "ngTemplateOutletContext", ngTemplateOutlet: "ngTemplateOutlet", ngTemplateOutletInjector: "ngTemplateOutletInjector" }, usesOnChanges: true, ngImport: i0 });
|
|
4087
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgTemplateOutlet, decorators: [{
|
|
4088
4088
|
type: Directive,
|
|
4089
4089
|
args: [{
|
|
4090
4090
|
selector: '[ngTemplateOutlet]',
|
|
@@ -4256,9 +4256,9 @@ class AsyncPipe {
|
|
|
4256
4256
|
}
|
|
4257
4257
|
}
|
|
4258
4258
|
}
|
|
4259
|
-
AsyncPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
4260
|
-
AsyncPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0
|
|
4261
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
4259
|
+
AsyncPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: AsyncPipe, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4260
|
+
AsyncPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: AsyncPipe, isStandalone: true, name: "async", pure: false });
|
|
4261
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: AsyncPipe, decorators: [{
|
|
4262
4262
|
type: Pipe,
|
|
4263
4263
|
args: [{
|
|
4264
4264
|
name: 'async',
|
|
@@ -4299,9 +4299,9 @@ class LowerCasePipe {
|
|
|
4299
4299
|
return value.toLowerCase();
|
|
4300
4300
|
}
|
|
4301
4301
|
}
|
|
4302
|
-
LowerCasePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
4303
|
-
LowerCasePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0
|
|
4304
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
4302
|
+
LowerCasePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: LowerCasePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4303
|
+
LowerCasePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: LowerCasePipe, isStandalone: true, name: "lowercase" });
|
|
4304
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: LowerCasePipe, decorators: [{
|
|
4305
4305
|
type: Pipe,
|
|
4306
4306
|
args: [{
|
|
4307
4307
|
name: 'lowercase',
|
|
@@ -4344,9 +4344,9 @@ class TitleCasePipe {
|
|
|
4344
4344
|
return value.replace(unicodeWordMatch, (txt => txt[0].toUpperCase() + txt.slice(1).toLowerCase()));
|
|
4345
4345
|
}
|
|
4346
4346
|
}
|
|
4347
|
-
TitleCasePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
4348
|
-
TitleCasePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0
|
|
4349
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
4347
|
+
TitleCasePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: TitleCasePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4348
|
+
TitleCasePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: TitleCasePipe, isStandalone: true, name: "titlecase" });
|
|
4349
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: TitleCasePipe, decorators: [{
|
|
4350
4350
|
type: Pipe,
|
|
4351
4351
|
args: [{
|
|
4352
4352
|
name: 'titlecase',
|
|
@@ -4371,9 +4371,9 @@ class UpperCasePipe {
|
|
|
4371
4371
|
return value.toUpperCase();
|
|
4372
4372
|
}
|
|
4373
4373
|
}
|
|
4374
|
-
UpperCasePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
4375
|
-
UpperCasePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0
|
|
4376
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
4374
|
+
UpperCasePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: UpperCasePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4375
|
+
UpperCasePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: UpperCasePipe, isStandalone: true, name: "uppercase" });
|
|
4376
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: UpperCasePipe, decorators: [{
|
|
4377
4377
|
type: Pipe,
|
|
4378
4378
|
args: [{
|
|
4379
4379
|
name: 'uppercase',
|
|
@@ -4569,9 +4569,9 @@ class DatePipe {
|
|
|
4569
4569
|
}
|
|
4570
4570
|
}
|
|
4571
4571
|
}
|
|
4572
|
-
DatePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
4573
|
-
DatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0
|
|
4574
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
4572
|
+
DatePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: DatePipe, deps: [{ token: LOCALE_ID }, { token: DATE_PIPE_DEFAULT_TIMEZONE, optional: true }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4573
|
+
DatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: DatePipe, isStandalone: true, name: "date" });
|
|
4574
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: DatePipe, decorators: [{
|
|
4575
4575
|
type: Pipe,
|
|
4576
4576
|
args: [{
|
|
4577
4577
|
name: 'date',
|
|
@@ -4633,9 +4633,9 @@ class I18nPluralPipe {
|
|
|
4633
4633
|
return pluralMap[key].replace(_INTERPOLATION_REGEXP, value.toString());
|
|
4634
4634
|
}
|
|
4635
4635
|
}
|
|
4636
|
-
I18nPluralPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
4637
|
-
I18nPluralPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0
|
|
4638
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
4636
|
+
I18nPluralPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: I18nPluralPipe, deps: [{ token: NgLocalization }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4637
|
+
I18nPluralPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: I18nPluralPipe, isStandalone: true, name: "i18nPlural" });
|
|
4638
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: I18nPluralPipe, decorators: [{
|
|
4639
4639
|
type: Pipe,
|
|
4640
4640
|
args: [{
|
|
4641
4641
|
name: 'i18nPlural',
|
|
@@ -4689,9 +4689,9 @@ class I18nSelectPipe {
|
|
|
4689
4689
|
return '';
|
|
4690
4690
|
}
|
|
4691
4691
|
}
|
|
4692
|
-
I18nSelectPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
4693
|
-
I18nSelectPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0
|
|
4694
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
4692
|
+
I18nSelectPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: I18nSelectPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4693
|
+
I18nSelectPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: I18nSelectPipe, isStandalone: true, name: "i18nSelect" });
|
|
4694
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: I18nSelectPipe, decorators: [{
|
|
4695
4695
|
type: Pipe,
|
|
4696
4696
|
args: [{
|
|
4697
4697
|
name: 'i18nSelect',
|
|
@@ -4730,9 +4730,9 @@ class JsonPipe {
|
|
|
4730
4730
|
return JSON.stringify(value, null, 2);
|
|
4731
4731
|
}
|
|
4732
4732
|
}
|
|
4733
|
-
JsonPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
4734
|
-
JsonPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0
|
|
4735
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
4733
|
+
JsonPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: JsonPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4734
|
+
JsonPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: JsonPipe, isStandalone: true, name: "json", pure: false });
|
|
4735
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: JsonPipe, decorators: [{
|
|
4736
4736
|
type: Pipe,
|
|
4737
4737
|
args: [{
|
|
4738
4738
|
name: 'json',
|
|
@@ -4800,9 +4800,9 @@ class KeyValuePipe {
|
|
|
4800
4800
|
return this.keyValues;
|
|
4801
4801
|
}
|
|
4802
4802
|
}
|
|
4803
|
-
KeyValuePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
4804
|
-
KeyValuePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0
|
|
4805
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
4803
|
+
KeyValuePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: KeyValuePipe, deps: [{ token: i0.KeyValueDiffers }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4804
|
+
KeyValuePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: KeyValuePipe, isStandalone: true, name: "keyvalue", pure: false });
|
|
4805
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: KeyValuePipe, decorators: [{
|
|
4806
4806
|
type: Pipe,
|
|
4807
4807
|
args: [{
|
|
4808
4808
|
name: 'keyvalue',
|
|
@@ -4935,9 +4935,9 @@ class DecimalPipe {
|
|
|
4935
4935
|
}
|
|
4936
4936
|
}
|
|
4937
4937
|
}
|
|
4938
|
-
DecimalPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
4939
|
-
DecimalPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0
|
|
4940
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
4938
|
+
DecimalPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: DecimalPipe, deps: [{ token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4939
|
+
DecimalPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: DecimalPipe, isStandalone: true, name: "number" });
|
|
4940
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: DecimalPipe, decorators: [{
|
|
4941
4941
|
type: Pipe,
|
|
4942
4942
|
args: [{
|
|
4943
4943
|
name: 'number',
|
|
@@ -5002,9 +5002,9 @@ class PercentPipe {
|
|
|
5002
5002
|
}
|
|
5003
5003
|
}
|
|
5004
5004
|
}
|
|
5005
|
-
PercentPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
5006
|
-
PercentPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0
|
|
5007
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
5005
|
+
PercentPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: PercentPipe, deps: [{ token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
5006
|
+
PercentPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: PercentPipe, isStandalone: true, name: "percent" });
|
|
5007
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: PercentPipe, decorators: [{
|
|
5008
5008
|
type: Pipe,
|
|
5009
5009
|
args: [{
|
|
5010
5010
|
name: 'percent',
|
|
@@ -5122,9 +5122,9 @@ class CurrencyPipe {
|
|
|
5122
5122
|
}
|
|
5123
5123
|
}
|
|
5124
5124
|
}
|
|
5125
|
-
CurrencyPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
5126
|
-
CurrencyPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0
|
|
5127
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
5125
|
+
CurrencyPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: CurrencyPipe, deps: [{ token: LOCALE_ID }, { token: DEFAULT_CURRENCY_CODE }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
5126
|
+
CurrencyPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: CurrencyPipe, isStandalone: true, name: "currency" });
|
|
5127
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: CurrencyPipe, decorators: [{
|
|
5128
5128
|
type: Pipe,
|
|
5129
5129
|
args: [{
|
|
5130
5130
|
name: 'currency',
|
|
@@ -5211,9 +5211,9 @@ class SlicePipe {
|
|
|
5211
5211
|
return typeof obj === 'string' || Array.isArray(obj);
|
|
5212
5212
|
}
|
|
5213
5213
|
}
|
|
5214
|
-
SlicePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
5215
|
-
SlicePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0
|
|
5216
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
5214
|
+
SlicePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SlicePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
5215
|
+
SlicePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: SlicePipe, isStandalone: true, name: "slice", pure: false });
|
|
5216
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SlicePipe, decorators: [{
|
|
5217
5217
|
type: Pipe,
|
|
5218
5218
|
args: [{
|
|
5219
5219
|
name: 'slice',
|
|
@@ -5267,10 +5267,10 @@ const COMMON_PIPES = [
|
|
|
5267
5267
|
*/
|
|
5268
5268
|
class CommonModule {
|
|
5269
5269
|
}
|
|
5270
|
-
CommonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
5271
|
-
CommonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.0
|
|
5272
|
-
CommonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.0
|
|
5273
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
5270
|
+
CommonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: CommonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
5271
|
+
CommonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: CommonModule, imports: [NgClass, NgComponentOutlet, NgForOf, NgIf, NgTemplateOutlet, NgStyle, NgSwitch, NgSwitchCase, NgSwitchDefault, NgPlural, NgPluralCase, AsyncPipe, UpperCasePipe, LowerCasePipe, JsonPipe, SlicePipe, DecimalPipe, PercentPipe, TitleCasePipe, CurrencyPipe, DatePipe, I18nPluralPipe, I18nSelectPipe, KeyValuePipe], exports: [NgClass, NgComponentOutlet, NgForOf, NgIf, NgTemplateOutlet, NgStyle, NgSwitch, NgSwitchCase, NgSwitchDefault, NgPlural, NgPluralCase, AsyncPipe, UpperCasePipe, LowerCasePipe, JsonPipe, SlicePipe, DecimalPipe, PercentPipe, TitleCasePipe, CurrencyPipe, DatePipe, I18nPluralPipe, I18nSelectPipe, KeyValuePipe] });
|
|
5272
|
+
CommonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: CommonModule });
|
|
5273
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: CommonModule, decorators: [{
|
|
5274
5274
|
type: NgModule,
|
|
5275
5275
|
args: [{
|
|
5276
5276
|
imports: [COMMON_DIRECTIVES, COMMON_PIPES],
|
|
@@ -5328,7 +5328,7 @@ function isPlatformWorkerUi(platformId) {
|
|
|
5328
5328
|
/**
|
|
5329
5329
|
* @publicApi
|
|
5330
5330
|
*/
|
|
5331
|
-
const VERSION = new Version('14.2.0
|
|
5331
|
+
const VERSION = new Version('14.2.0');
|
|
5332
5332
|
|
|
5333
5333
|
/**
|
|
5334
5334
|
* @license
|
|
@@ -5580,7 +5580,7 @@ function assertDevMode(checkName) {
|
|
|
5580
5580
|
* found in the LICENSE file at https://angular.io/license
|
|
5581
5581
|
*/
|
|
5582
5582
|
// Assembles directive details string, useful for error messages.
|
|
5583
|
-
function imgDirectiveDetails
|
|
5583
|
+
function imgDirectiveDetails(rawSrc, includeRawSrc = true) {
|
|
5584
5584
|
const rawSrcInfo = includeRawSrc ? `(activated on an <img> element with the \`rawSrc="${rawSrc}"\`) ` : '';
|
|
5585
5585
|
return `The NgOptimizedImage directive ${rawSrcInfo}has detected that`;
|
|
5586
5586
|
}
|
|
@@ -5601,16 +5601,6 @@ function getUrl(src, win) {
|
|
|
5601
5601
|
function isAbsoluteUrl(src) {
|
|
5602
5602
|
return /^https?:\/\//.test(src);
|
|
5603
5603
|
}
|
|
5604
|
-
// Assembles directive details string, useful for error messages.
|
|
5605
|
-
function imgDirectiveDetails(rawSrc, includeRawSrc = true) {
|
|
5606
|
-
const rawSrcInfo = includeRawSrc ? `(activated on an <img> element with the \`rawSrc="${rawSrc}"\`) ` : '';
|
|
5607
|
-
return `The NgOptimizedImage directive ${rawSrcInfo}has detected that`;
|
|
5608
|
-
}
|
|
5609
|
-
// Invokes a callback for each element in the array. Also invokes a callback
|
|
5610
|
-
// recursively for each nested array.
|
|
5611
|
-
function deepForEach$1(input, fn) {
|
|
5612
|
-
input.forEach(value => Array.isArray(value) ? deepForEach$1(value, fn) : fn(value));
|
|
5613
|
-
}
|
|
5614
5604
|
// Given a URL, extract the hostname part.
|
|
5615
5605
|
// If a URL is a relative one - the URL is returned as is.
|
|
5616
5606
|
function extractHostname(url) {
|
|
@@ -5730,7 +5720,7 @@ class PreconnectLinkChecker {
|
|
|
5730
5720
|
this.preconnectLinks = this.queryPreconnectLinks();
|
|
5731
5721
|
}
|
|
5732
5722
|
if (!this.preconnectLinks.has(imgUrl.origin)) {
|
|
5733
|
-
console.warn(ɵformatRuntimeError(2956 /* RuntimeErrorCode.PRIORITY_IMG_MISSING_PRECONNECT_TAG */, `${imgDirectiveDetails
|
|
5723
|
+
console.warn(ɵformatRuntimeError(2956 /* RuntimeErrorCode.PRIORITY_IMG_MISSING_PRECONNECT_TAG */, `${imgDirectiveDetails(rawSrc)} there is no preconnect tag present for this image. ` +
|
|
5734
5724
|
`Preconnecting to the origin(s) that serve priority images ensures that these ` +
|
|
5735
5725
|
`images are delivered as soon as possible. To fix this, please add the following ` +
|
|
5736
5726
|
`element into the <head> of the document:\n` +
|
|
@@ -5753,9 +5743,9 @@ class PreconnectLinkChecker {
|
|
|
5753
5743
|
this.alreadySeen.clear();
|
|
5754
5744
|
}
|
|
5755
5745
|
}
|
|
5756
|
-
PreconnectLinkChecker.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
5757
|
-
PreconnectLinkChecker.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0
|
|
5758
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
5746
|
+
PreconnectLinkChecker.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: PreconnectLinkChecker, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
5747
|
+
PreconnectLinkChecker.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: PreconnectLinkChecker, providedIn: 'root' });
|
|
5748
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: PreconnectLinkChecker, decorators: [{
|
|
5759
5749
|
type: Injectable,
|
|
5760
5750
|
args: [{ providedIn: 'root' }]
|
|
5761
5751
|
}], ctorParameters: function () { return []; } });
|
|
@@ -5807,14 +5797,14 @@ const IMAGE_LOADER = new InjectionToken('ImageLoader', {
|
|
|
5807
5797
|
*/
|
|
5808
5798
|
function createImageLoader(buildUrlFn, exampleUrls) {
|
|
5809
5799
|
return function provideImageLoader(path, options = { ensurePreconnect: true }) {
|
|
5810
|
-
if (
|
|
5800
|
+
if (!isValidPath(path)) {
|
|
5811
5801
|
throwInvalidPathError(path, exampleUrls || []);
|
|
5812
5802
|
}
|
|
5813
5803
|
// The trailing / is stripped (if provided) to make URL construction (concatenation) easier in
|
|
5814
5804
|
// the individual loader functions.
|
|
5815
5805
|
path = normalizePath(path);
|
|
5816
5806
|
const loaderFn = (config) => {
|
|
5817
|
-
if (
|
|
5807
|
+
if (isAbsoluteUrl(config.src)) {
|
|
5818
5808
|
// Image loader functions expect an image file name (e.g. `my-image.png`)
|
|
5819
5809
|
// or a relative path + a file name (e.g. `/a/b/c/my-image.png`) as an input,
|
|
5820
5810
|
// so the final absolute URL can be constructed.
|
|
@@ -5832,16 +5822,17 @@ function createImageLoader(buildUrlFn, exampleUrls) {
|
|
|
5832
5822
|
};
|
|
5833
5823
|
}
|
|
5834
5824
|
function throwInvalidPathError(path, exampleUrls) {
|
|
5835
|
-
|
|
5836
|
-
|
|
5837
|
-
|
|
5825
|
+
throw new ɵRuntimeError(2959 /* RuntimeErrorCode.INVALID_LOADER_ARGUMENTS */, ngDevMode &&
|
|
5826
|
+
`Image loader has detected an invalid path (\`${path}\`). ` +
|
|
5827
|
+
`To fix this, supply a path using one of the following formats: ${exampleUrls.join(' or ')}`);
|
|
5838
5828
|
}
|
|
5839
5829
|
function throwUnexpectedAbsoluteUrlError(path, url) {
|
|
5840
|
-
throw new ɵRuntimeError(2959 /* RuntimeErrorCode.INVALID_LOADER_ARGUMENTS */,
|
|
5841
|
-
`
|
|
5842
|
-
|
|
5843
|
-
|
|
5844
|
-
|
|
5830
|
+
throw new ɵRuntimeError(2959 /* RuntimeErrorCode.INVALID_LOADER_ARGUMENTS */, ngDevMode &&
|
|
5831
|
+
`Image loader has detected a \`<img>\` tag with an invalid \`rawSrc\` attribute: ${url}. ` +
|
|
5832
|
+
`This image loader expects \`rawSrc\` to be a relative URL - ` +
|
|
5833
|
+
`however the provided value is an absolute URL. ` +
|
|
5834
|
+
`To fix this, provide \`rawSrc\` as a path relative to the base URL ` +
|
|
5835
|
+
`configured for this loader (\`${path}\`).`);
|
|
5845
5836
|
}
|
|
5846
5837
|
|
|
5847
5838
|
/**
|
|
@@ -6066,14 +6057,14 @@ class LCPImageObserver {
|
|
|
6066
6057
|
this.alreadyWarned.clear();
|
|
6067
6058
|
}
|
|
6068
6059
|
}
|
|
6069
|
-
LCPImageObserver.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
6070
|
-
LCPImageObserver.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0
|
|
6071
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
6060
|
+
LCPImageObserver.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: LCPImageObserver, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
6061
|
+
LCPImageObserver.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: LCPImageObserver, providedIn: 'root' });
|
|
6062
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: LCPImageObserver, decorators: [{
|
|
6072
6063
|
type: Injectable,
|
|
6073
6064
|
args: [{ providedIn: 'root' }]
|
|
6074
6065
|
}], ctorParameters: function () { return []; } });
|
|
6075
6066
|
function logMissingPriorityWarning(rawSrc) {
|
|
6076
|
-
const directiveDetails = imgDirectiveDetails
|
|
6067
|
+
const directiveDetails = imgDirectiveDetails(rawSrc);
|
|
6077
6068
|
console.warn(ɵformatRuntimeError(2955 /* RuntimeErrorCode.LCP_IMG_MISSING_PRIORITY */, `${directiveDetails} this image is the Largest Contentful Paint (LCP) ` +
|
|
6078
6069
|
`element but was not marked "priority". This image should be marked ` +
|
|
6079
6070
|
`"priority" in order to prioritize its loading. ` +
|
|
@@ -6102,9 +6093,9 @@ const BASE64_IMG_MAX_LENGTH_IN_ERROR = 50;
|
|
|
6102
6093
|
const VALID_WIDTH_DESCRIPTOR_SRCSET = /^((\s*\d+w\s*(,|$)){1,})$/;
|
|
6103
6094
|
/**
|
|
6104
6095
|
* RegExpr to determine whether a src in a srcset is using density descriptors.
|
|
6105
|
-
* Should match something like: "1x, 2x".
|
|
6096
|
+
* Should match something like: "1x, 2x, 50x". Also supports decimals like "1.5x, 1.50x".
|
|
6106
6097
|
*/
|
|
6107
|
-
const VALID_DENSITY_DESCRIPTOR_SRCSET = /^((\s*\d(\.\d)?x\s*(,|$)){1,})$/;
|
|
6098
|
+
const VALID_DENSITY_DESCRIPTOR_SRCSET = /^((\s*\d+(\.\d+)?x\s*(,|$)){1,})$/;
|
|
6108
6099
|
/**
|
|
6109
6100
|
* Srcset values with a density descriptor higher than this value will actively
|
|
6110
6101
|
* throw an error. Such densities are not permitted as they cause image sizes
|
|
@@ -6175,7 +6166,7 @@ const OVERSIZED_IMAGE_TOLERANCE = 1000;
|
|
|
6175
6166
|
*
|
|
6176
6167
|
* To use the **default loader**: no additional code changes are necessary. The URL returned by the
|
|
6177
6168
|
* generic loader will always match the value of "src". In other words, this loader applies no
|
|
6178
|
-
* transformations to
|
|
6169
|
+
* transformations to the resource URL and the value of the `rawSrc` attribute will be used as is.
|
|
6179
6170
|
*
|
|
6180
6171
|
* To use an existing loader for a **third-party image service**: add the provider factory for your
|
|
6181
6172
|
* chosen service to the `providers` array. In the example below, the Imgix loader is used:
|
|
@@ -6230,6 +6221,8 @@ class NgOptimizedImage {
|
|
|
6230
6221
|
this.renderer = inject(Renderer2);
|
|
6231
6222
|
this.imgElement = inject(ElementRef).nativeElement;
|
|
6232
6223
|
this.injector = inject(Injector);
|
|
6224
|
+
// a LCP image observer - should be injected only in the dev mode
|
|
6225
|
+
this.lcpObserver = ngDevMode ? this.injector.get(LCPImageObserver) : null;
|
|
6233
6226
|
/**
|
|
6234
6227
|
* Calculate the rewritten `src` once and store it.
|
|
6235
6228
|
* This is needed to avoid repetitive calculations and make sure the directive cleanup in the
|
|
@@ -6287,7 +6280,12 @@ class NgOptimizedImage {
|
|
|
6287
6280
|
// Monitor whether an image is an LCP element only in case
|
|
6288
6281
|
// the `priority` attribute is missing. Otherwise, an image
|
|
6289
6282
|
// has the necessary settings and no extra checks are required.
|
|
6290
|
-
|
|
6283
|
+
if (this.lcpObserver !== null) {
|
|
6284
|
+
const ngZone = this.injector.get(NgZone);
|
|
6285
|
+
ngZone.runOutsideAngular(() => {
|
|
6286
|
+
this.lcpObserver.registerImage(this.getRewrittenSrc(), this.rawSrc);
|
|
6287
|
+
});
|
|
6288
|
+
}
|
|
6291
6289
|
}
|
|
6292
6290
|
}
|
|
6293
6291
|
this.setHostAttributes();
|
|
@@ -6342,8 +6340,8 @@ class NgOptimizedImage {
|
|
|
6342
6340
|
}
|
|
6343
6341
|
ngOnDestroy() {
|
|
6344
6342
|
if (ngDevMode) {
|
|
6345
|
-
if (!this.priority && this._renderedSrc !== null) {
|
|
6346
|
-
|
|
6343
|
+
if (!this.priority && this._renderedSrc !== null && this.lcpObserver !== null) {
|
|
6344
|
+
this.lcpObserver.unregisterImage(this._renderedSrc);
|
|
6347
6345
|
}
|
|
6348
6346
|
}
|
|
6349
6347
|
}
|
|
@@ -6351,9 +6349,9 @@ class NgOptimizedImage {
|
|
|
6351
6349
|
this.renderer.setAttribute(this.imgElement, name, value);
|
|
6352
6350
|
}
|
|
6353
6351
|
}
|
|
6354
|
-
NgOptimizedImage.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0
|
|
6355
|
-
NgOptimizedImage.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0
|
|
6356
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0
|
|
6352
|
+
NgOptimizedImage.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgOptimizedImage, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
6353
|
+
NgOptimizedImage.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0", type: NgOptimizedImage, isStandalone: true, selector: "img[rawSrc]", inputs: { rawSrc: "rawSrc", rawSrcset: "rawSrcset", width: "width", height: "height", loading: "loading", priority: "priority", src: "src", srcset: "srcset" }, usesOnChanges: true, ngImport: i0 });
|
|
6354
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: NgOptimizedImage, decorators: [{
|
|
6357
6355
|
type: Directive,
|
|
6358
6356
|
args: [{
|
|
6359
6357
|
standalone: true,
|
|
@@ -6389,30 +6387,13 @@ function inputToInteger(value) {
|
|
|
6389
6387
|
function inputToBoolean(value) {
|
|
6390
6388
|
return value != null && `${value}` !== 'false';
|
|
6391
6389
|
}
|
|
6392
|
-
/**
|
|
6393
|
-
* Invokes a function, passing an instance of the `LCPImageObserver` as an argument.
|
|
6394
|
-
*
|
|
6395
|
-
* Notes:
|
|
6396
|
-
* - the `LCPImageObserver` is a tree-shakable provider, provided in 'root',
|
|
6397
|
-
* thus it's a singleton within this application
|
|
6398
|
-
* - the process of `LCPImageObserver` creation and an actual operation are invoked outside of the
|
|
6399
|
-
* NgZone to make sure none of the calls inside the `LCPImageObserver` class trigger unnecessary
|
|
6400
|
-
* change detection
|
|
6401
|
-
*/
|
|
6402
|
-
function invokeLCPImageObserverCallback(injector, operation) {
|
|
6403
|
-
const ngZone = injector.get(NgZone);
|
|
6404
|
-
return ngZone.runOutsideAngular(() => {
|
|
6405
|
-
const observer = injector.get(LCPImageObserver);
|
|
6406
|
-
operation(observer);
|
|
6407
|
-
});
|
|
6408
|
-
}
|
|
6409
6390
|
/***** Assert functions *****/
|
|
6410
6391
|
/**
|
|
6411
6392
|
* Verifies that there is no `src` set on a host element.
|
|
6412
6393
|
*/
|
|
6413
6394
|
function assertNoConflictingSrc(dir) {
|
|
6414
6395
|
if (dir.src) {
|
|
6415
|
-
throw new ɵRuntimeError(2950 /* RuntimeErrorCode.UNEXPECTED_SRC_ATTR */, `${imgDirectiveDetails
|
|
6396
|
+
throw new ɵRuntimeError(2950 /* RuntimeErrorCode.UNEXPECTED_SRC_ATTR */, `${imgDirectiveDetails(dir.rawSrc)} both \`src\` and \`rawSrc\` have been set. ` +
|
|
6416
6397
|
`Supplying both of these attributes breaks lazy loading. ` +
|
|
6417
6398
|
`The NgOptimizedImage directive sets \`src\` itself based on the value of \`rawSrc\`. ` +
|
|
6418
6399
|
`To fix this, please remove the \`src\` attribute.`);
|
|
@@ -6423,7 +6404,7 @@ function assertNoConflictingSrc(dir) {
|
|
|
6423
6404
|
*/
|
|
6424
6405
|
function assertNoConflictingSrcset(dir) {
|
|
6425
6406
|
if (dir.srcset) {
|
|
6426
|
-
throw new ɵRuntimeError(2951 /* RuntimeErrorCode.UNEXPECTED_SRCSET_ATTR */, `${imgDirectiveDetails
|
|
6407
|
+
throw new ɵRuntimeError(2951 /* RuntimeErrorCode.UNEXPECTED_SRCSET_ATTR */, `${imgDirectiveDetails(dir.rawSrc)} both \`srcset\` and \`rawSrcset\` have been set. ` +
|
|
6427
6408
|
`Supplying both of these attributes breaks lazy loading. ` +
|
|
6428
6409
|
`The NgOptimizedImage directive sets \`srcset\` itself based on the value of ` +
|
|
6429
6410
|
`\`rawSrcset\`. To fix this, please remove the \`srcset\` attribute.`);
|
|
@@ -6438,7 +6419,7 @@ function assertNotBase64Image(dir) {
|
|
|
6438
6419
|
if (rawSrc.length > BASE64_IMG_MAX_LENGTH_IN_ERROR) {
|
|
6439
6420
|
rawSrc = rawSrc.substring(0, BASE64_IMG_MAX_LENGTH_IN_ERROR) + '...';
|
|
6440
6421
|
}
|
|
6441
|
-
throw new ɵRuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails
|
|
6422
|
+
throw new ɵRuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails(dir.rawSrc, false)} \`rawSrc\` is a Base64-encoded string ` +
|
|
6442
6423
|
`(${rawSrc}). NgOptimizedImage does not support Base64-encoded strings. ` +
|
|
6443
6424
|
`To fix this, disable the NgOptimizedImage directive for this element ` +
|
|
6444
6425
|
`by removing \`rawSrc\` and using a standard \`src\` attribute instead.`);
|
|
@@ -6450,7 +6431,7 @@ function assertNotBase64Image(dir) {
|
|
|
6450
6431
|
function assertNotBlobUrl(dir) {
|
|
6451
6432
|
const rawSrc = dir.rawSrc.trim();
|
|
6452
6433
|
if (rawSrc.startsWith('blob:')) {
|
|
6453
|
-
throw new ɵRuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails
|
|
6434
|
+
throw new ɵRuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails(dir.rawSrc)} \`rawSrc\` was set to a blob URL (${rawSrc}). ` +
|
|
6454
6435
|
`Blob URLs are not supported by the NgOptimizedImage directive. ` +
|
|
6455
6436
|
`To fix this, disable the NgOptimizedImage directive for this element ` +
|
|
6456
6437
|
`by removing \`rawSrc\` and using a regular \`src\` attribute instead.`);
|
|
@@ -6463,7 +6444,7 @@ function assertNonEmptyInput(dir, name, value) {
|
|
|
6463
6444
|
const isString = typeof value === 'string';
|
|
6464
6445
|
const isEmptyString = isString && value.trim() === '';
|
|
6465
6446
|
if (!isString || isEmptyString) {
|
|
6466
|
-
throw new ɵRuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails
|
|
6447
|
+
throw new ɵRuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails(dir.rawSrc)} \`${name}\` has an invalid value ` +
|
|
6467
6448
|
`(\`${value}\`). To fix this, change the value to a non-empty string.`);
|
|
6468
6449
|
}
|
|
6469
6450
|
}
|
|
@@ -6482,7 +6463,7 @@ function assertValidRawSrcset(dir, value) {
|
|
|
6482
6463
|
}
|
|
6483
6464
|
const isValidSrcset = isValidWidthDescriptor || isValidDensityDescriptor;
|
|
6484
6465
|
if (!isValidSrcset) {
|
|
6485
|
-
throw new ɵRuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails
|
|
6466
|
+
throw new ɵRuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails(dir.rawSrc)} \`rawSrcset\` has an invalid value (\`${value}\`). ` +
|
|
6486
6467
|
`To fix this, supply \`rawSrcset\` using a comma-separated list of one or more width ` +
|
|
6487
6468
|
`descriptors (e.g. "100w, 200w") or density descriptors (e.g. "1x, 2x").`);
|
|
6488
6469
|
}
|
|
@@ -6490,12 +6471,12 @@ function assertValidRawSrcset(dir, value) {
|
|
|
6490
6471
|
function assertUnderDensityCap(dir, value) {
|
|
6491
6472
|
const underDensityCap = value.split(',').every(num => num === '' || parseFloat(num) <= ABSOLUTE_SRCSET_DENSITY_CAP);
|
|
6492
6473
|
if (!underDensityCap) {
|
|
6493
|
-
throw new ɵRuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails
|
|
6474
|
+
throw new ɵRuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails(dir.rawSrc)} the \`rawSrcset\` contains an unsupported image density:` +
|
|
6494
6475
|
`\`${value}\`. NgOptimizedImage generally recommends a max image density of ` +
|
|
6495
6476
|
`${RECOMMENDED_SRCSET_DENSITY_CAP}x but supports image densities up to ` +
|
|
6496
6477
|
`${ABSOLUTE_SRCSET_DENSITY_CAP}x. The human eye cannot distinguish between image densities ` +
|
|
6497
6478
|
`greater than ${RECOMMENDED_SRCSET_DENSITY_CAP}x - which makes them unnecessary for ` +
|
|
6498
|
-
`most use cases. Images that will be pinch-zoomed are typically the primary use case for` +
|
|
6479
|
+
`most use cases. Images that will be pinch-zoomed are typically the primary use case for ` +
|
|
6499
6480
|
`${ABSOLUTE_SRCSET_DENSITY_CAP}x images. Please remove the high density descriptor and try again.`);
|
|
6500
6481
|
}
|
|
6501
6482
|
}
|
|
@@ -6504,7 +6485,7 @@ function assertUnderDensityCap(dir, value) {
|
|
|
6504
6485
|
* the directive has initialized.
|
|
6505
6486
|
*/
|
|
6506
6487
|
function postInitInputChangeError(dir, inputName) {
|
|
6507
|
-
return new ɵRuntimeError(2953 /* RuntimeErrorCode.UNEXPECTED_INPUT_CHANGE */, `${imgDirectiveDetails
|
|
6488
|
+
return new ɵRuntimeError(2953 /* RuntimeErrorCode.UNEXPECTED_INPUT_CHANGE */, `${imgDirectiveDetails(dir.rawSrc)} \`${inputName}\` was updated after initialization. ` +
|
|
6508
6489
|
`The NgOptimizedImage directive will not react to this input change. ` +
|
|
6509
6490
|
`To fix this, switch \`${inputName}\` a static value or wrap the image element ` +
|
|
6510
6491
|
`in an *ngIf that is gated on the necessary value.`);
|
|
@@ -6534,7 +6515,7 @@ function assertGreaterThanZero(dir, inputValue, inputName) {
|
|
|
6534
6515
|
const validNumber = typeof inputValue === 'number' && inputValue > 0;
|
|
6535
6516
|
const validString = typeof inputValue === 'string' && /^\d+$/.test(inputValue.trim()) && parseInt(inputValue) > 0;
|
|
6536
6517
|
if (!validNumber && !validString) {
|
|
6537
|
-
throw new ɵRuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails
|
|
6518
|
+
throw new ɵRuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails(dir.rawSrc)} \`${inputName}\` has an invalid value ` +
|
|
6538
6519
|
`(\`${inputValue}\`). To fix this, provide \`${inputName}\` ` +
|
|
6539
6520
|
`as a number greater than 0.`);
|
|
6540
6521
|
}
|
|
@@ -6569,7 +6550,7 @@ function assertNoImageDistortion(dir, img, renderer) {
|
|
|
6569
6550
|
const stylingDistortion = nonZeroRenderedDimensions &&
|
|
6570
6551
|
Math.abs(intrinsicAspectRatio - renderedAspectRatio) > ASPECT_RATIO_TOLERANCE;
|
|
6571
6552
|
if (inaccurateDimensions) {
|
|
6572
|
-
console.warn(ɵformatRuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails
|
|
6553
|
+
console.warn(ɵformatRuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails(dir.rawSrc)} the aspect ratio of the image does not match ` +
|
|
6573
6554
|
`the aspect ratio indicated by the width and height attributes. ` +
|
|
6574
6555
|
`Intrinsic image size: ${intrinsicWidth}w x ${intrinsicHeight}h ` +
|
|
6575
6556
|
`(aspect-ratio: ${intrinsicAspectRatio}). Supplied width and height attributes: ` +
|
|
@@ -6577,7 +6558,7 @@ function assertNoImageDistortion(dir, img, renderer) {
|
|
|
6577
6558
|
`To fix this, update the width and height attributes.`));
|
|
6578
6559
|
}
|
|
6579
6560
|
else if (stylingDistortion) {
|
|
6580
|
-
console.warn(ɵformatRuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails
|
|
6561
|
+
console.warn(ɵformatRuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails(dir.rawSrc)} the aspect ratio of the rendered image ` +
|
|
6581
6562
|
`does not match the image's intrinsic aspect ratio. ` +
|
|
6582
6563
|
`Intrinsic image size: ${intrinsicWidth}w x ${intrinsicHeight}h ` +
|
|
6583
6564
|
`(aspect-ratio: ${intrinsicAspectRatio}). Rendered image size: ` +
|
|
@@ -6595,12 +6576,12 @@ function assertNoImageDistortion(dir, img, renderer) {
|
|
|
6595
6576
|
const oversizedWidth = (intrinsicWidth - recommendedWidth) >= OVERSIZED_IMAGE_TOLERANCE;
|
|
6596
6577
|
const oversizedHeight = (intrinsicHeight - recommendedHeight) >= OVERSIZED_IMAGE_TOLERANCE;
|
|
6597
6578
|
if (oversizedWidth || oversizedHeight) {
|
|
6598
|
-
console.warn(ɵformatRuntimeError(2960 /* RuntimeErrorCode.OVERSIZED_IMAGE */, `${imgDirectiveDetails
|
|
6579
|
+
console.warn(ɵformatRuntimeError(2960 /* RuntimeErrorCode.OVERSIZED_IMAGE */, `${imgDirectiveDetails(dir.rawSrc)} the intrinsic image is significantly ` +
|
|
6599
6580
|
`larger than necessary. ` +
|
|
6600
|
-
|
|
6601
|
-
|
|
6602
|
-
|
|
6603
|
-
|
|
6581
|
+
`\nRendered image size: ${renderedWidth}w x ${renderedHeight}h. ` +
|
|
6582
|
+
`\nIntrinsic image size: ${intrinsicWidth}w x ${intrinsicHeight}h. ` +
|
|
6583
|
+
`\nRecommended intrinsic image size: ${recommendedWidth}w x ${recommendedHeight}h. ` +
|
|
6584
|
+
`\nNote: Recommended intrinsic image size is calculated assuming a maximum DPR of ` +
|
|
6604
6585
|
`${RECOMMENDED_SRCSET_DENSITY_CAP}. To improve loading time, resize the image ` +
|
|
6605
6586
|
`or consider using the "rawSrcset" and "sizes" attributes.`));
|
|
6606
6587
|
}
|
|
@@ -6617,7 +6598,7 @@ function assertNonEmptyWidthAndHeight(dir) {
|
|
|
6617
6598
|
if (dir.height === undefined)
|
|
6618
6599
|
missingAttributes.push('height');
|
|
6619
6600
|
if (missingAttributes.length > 0) {
|
|
6620
|
-
throw new ɵRuntimeError(2954 /* RuntimeErrorCode.REQUIRED_INPUT_MISSING */, `${imgDirectiveDetails
|
|
6601
|
+
throw new ɵRuntimeError(2954 /* RuntimeErrorCode.REQUIRED_INPUT_MISSING */, `${imgDirectiveDetails(dir.rawSrc)} these required attributes ` +
|
|
6621
6602
|
`are missing: ${missingAttributes.map(attr => `"${attr}"`).join(', ')}. ` +
|
|
6622
6603
|
`Including "width" and "height" attributes will prevent image-related layout shifts. ` +
|
|
6623
6604
|
`To fix this, include "width" and "height" attributes on the image tag.`);
|
|
@@ -6629,7 +6610,7 @@ function assertNonEmptyWidthAndHeight(dir) {
|
|
|
6629
6610
|
*/
|
|
6630
6611
|
function assertValidLoadingInput(dir) {
|
|
6631
6612
|
if (dir.loading && dir.priority) {
|
|
6632
|
-
throw new ɵRuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails
|
|
6613
|
+
throw new ɵRuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails(dir.rawSrc)} the \`loading\` attribute ` +
|
|
6633
6614
|
`was used on an image that was marked "priority". ` +
|
|
6634
6615
|
`Setting \`loading\` on priority images is not allowed ` +
|
|
6635
6616
|
`because these images will always be eagerly loaded. ` +
|
|
@@ -6637,7 +6618,7 @@ function assertValidLoadingInput(dir) {
|
|
|
6637
6618
|
}
|
|
6638
6619
|
const validInputs = ['auto', 'eager', 'lazy'];
|
|
6639
6620
|
if (typeof dir.loading === 'string' && !validInputs.includes(dir.loading)) {
|
|
6640
|
-
throw new ɵRuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails
|
|
6621
|
+
throw new ɵRuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails(dir.rawSrc)} the \`loading\` attribute ` +
|
|
6641
6622
|
`has an invalid value (\`${dir.loading}\`). ` +
|
|
6642
6623
|
`To fix this, provide a valid value ("lazy", "eager", or "auto").`);
|
|
6643
6624
|
}
|