@angular/common 19.0.0-next.9 → 19.0.0-rc.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/fesm2022/common.mjs +382 -272
- package/fesm2022/common.mjs.map +1 -1
- package/fesm2022/http/testing.mjs +18 -18
- package/fesm2022/http/testing.mjs.map +1 -1
- package/fesm2022/http.mjs +194 -108
- package/fesm2022/http.mjs.map +1 -1
- package/fesm2022/testing.mjs +117 -93
- package/fesm2022/testing.mjs.map +1 -1
- package/fesm2022/upgrade.mjs +33 -20
- package/fesm2022/upgrade.mjs.map +1 -1
- package/http/index.d.ts +2 -2
- package/http/testing/index.d.ts +1 -1
- package/index.d.ts +42 -8
- package/package.json +2 -2
- package/testing/index.d.ts +1 -1
- package/upgrade/index.d.ts +1 -1
package/fesm2022/common.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license Angular v19.0.0-
|
|
2
|
+
* @license Angular v19.0.0-rc.1
|
|
3
3
|
* (c) 2010-2024 Google LLC. https://angular.io/
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
@@ -31,10 +31,10 @@ class DomAdapter {
|
|
|
31
31
|
* implementations.
|
|
32
32
|
*/
|
|
33
33
|
class PlatformNavigation {
|
|
34
|
-
static
|
|
35
|
-
static
|
|
34
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: PlatformNavigation, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
35
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: PlatformNavigation, providedIn: 'platform', useFactory: () => window.navigation });
|
|
36
36
|
}
|
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: PlatformNavigation, decorators: [{
|
|
38
38
|
type: Injectable,
|
|
39
39
|
args: [{ providedIn: 'platform', useFactory: () => window.navigation }]
|
|
40
40
|
}] });
|
|
@@ -74,10 +74,10 @@ class PlatformLocation {
|
|
|
74
74
|
historyGo(relativePosition) {
|
|
75
75
|
throw new Error(ngDevMode ? 'Not implemented' : '');
|
|
76
76
|
}
|
|
77
|
-
static
|
|
78
|
-
static
|
|
77
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: PlatformLocation, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
78
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: PlatformLocation, providedIn: 'platform', useFactory: () => inject(BrowserPlatformLocation) });
|
|
79
79
|
}
|
|
80
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
80
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: PlatformLocation, decorators: [{
|
|
81
81
|
type: Injectable,
|
|
82
82
|
args: [{ providedIn: 'platform', useFactory: () => inject(BrowserPlatformLocation) }]
|
|
83
83
|
}] });
|
|
@@ -96,9 +96,11 @@ const LOCATION_INITIALIZED = new InjectionToken(ngDevMode ? 'Location Initialize
|
|
|
96
96
|
* @publicApi
|
|
97
97
|
*/
|
|
98
98
|
class BrowserPlatformLocation extends PlatformLocation {
|
|
99
|
+
_location;
|
|
100
|
+
_history;
|
|
101
|
+
_doc = inject(DOCUMENT);
|
|
99
102
|
constructor() {
|
|
100
103
|
super();
|
|
101
|
-
this._doc = inject(DOCUMENT);
|
|
102
104
|
this._location = window.location;
|
|
103
105
|
this._history = window.history;
|
|
104
106
|
}
|
|
@@ -157,10 +159,10 @@ class BrowserPlatformLocation extends PlatformLocation {
|
|
|
157
159
|
getState() {
|
|
158
160
|
return this._history.state;
|
|
159
161
|
}
|
|
160
|
-
static
|
|
161
|
-
static
|
|
162
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: BrowserPlatformLocation, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
163
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: BrowserPlatformLocation, providedIn: 'platform', useFactory: () => new BrowserPlatformLocation() });
|
|
162
164
|
}
|
|
163
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
165
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: BrowserPlatformLocation, decorators: [{
|
|
164
166
|
type: Injectable,
|
|
165
167
|
args: [{
|
|
166
168
|
providedIn: 'platform',
|
|
@@ -246,10 +248,10 @@ class LocationStrategy {
|
|
|
246
248
|
historyGo(relativePosition) {
|
|
247
249
|
throw new Error(ngDevMode ? 'Not implemented' : '');
|
|
248
250
|
}
|
|
249
|
-
static
|
|
250
|
-
static
|
|
251
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: LocationStrategy, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
252
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: LocationStrategy, providedIn: 'root', useFactory: () => inject(PathLocationStrategy) });
|
|
251
253
|
}
|
|
252
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
254
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: LocationStrategy, decorators: [{
|
|
253
255
|
type: Injectable,
|
|
254
256
|
args: [{ providedIn: 'root', useFactory: () => inject(PathLocationStrategy) }]
|
|
255
257
|
}] });
|
|
@@ -309,10 +311,12 @@ const APP_BASE_HREF = new InjectionToken(ngDevMode ? 'appBaseHref' : '');
|
|
|
309
311
|
* @publicApi
|
|
310
312
|
*/
|
|
311
313
|
class PathLocationStrategy extends LocationStrategy {
|
|
314
|
+
_platformLocation;
|
|
315
|
+
_baseHref;
|
|
316
|
+
_removeListenerFns = [];
|
|
312
317
|
constructor(_platformLocation, href) {
|
|
313
318
|
super();
|
|
314
319
|
this._platformLocation = _platformLocation;
|
|
315
|
-
this._removeListenerFns = [];
|
|
316
320
|
this._baseHref =
|
|
317
321
|
href ??
|
|
318
322
|
this._platformLocation.getBaseHrefFromDOM() ??
|
|
@@ -359,10 +363,10 @@ class PathLocationStrategy extends LocationStrategy {
|
|
|
359
363
|
historyGo(relativePosition = 0) {
|
|
360
364
|
this._platformLocation.historyGo?.(relativePosition);
|
|
361
365
|
}
|
|
362
|
-
static
|
|
363
|
-
static
|
|
366
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: PathLocationStrategy, deps: [{ token: PlatformLocation }, { token: APP_BASE_HREF, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
367
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: PathLocationStrategy, providedIn: 'root' });
|
|
364
368
|
}
|
|
365
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
369
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: PathLocationStrategy, decorators: [{
|
|
366
370
|
type: Injectable,
|
|
367
371
|
args: [{ providedIn: 'root' }]
|
|
368
372
|
}], ctorParameters: () => [{ type: PlatformLocation }, { type: undefined, decorators: [{
|
|
@@ -391,11 +395,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.9",
|
|
|
391
395
|
* @publicApi
|
|
392
396
|
*/
|
|
393
397
|
class HashLocationStrategy extends LocationStrategy {
|
|
398
|
+
_platformLocation;
|
|
399
|
+
_baseHref = '';
|
|
400
|
+
_removeListenerFns = [];
|
|
394
401
|
constructor(_platformLocation, _baseHref) {
|
|
395
402
|
super();
|
|
396
403
|
this._platformLocation = _platformLocation;
|
|
397
|
-
this._baseHref = '';
|
|
398
|
-
this._removeListenerFns = [];
|
|
399
404
|
if (_baseHref != null) {
|
|
400
405
|
this._baseHref = _baseHref;
|
|
401
406
|
}
|
|
@@ -448,10 +453,10 @@ class HashLocationStrategy extends LocationStrategy {
|
|
|
448
453
|
historyGo(relativePosition = 0) {
|
|
449
454
|
this._platformLocation.historyGo?.(relativePosition);
|
|
450
455
|
}
|
|
451
|
-
static
|
|
452
|
-
static
|
|
456
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: HashLocationStrategy, deps: [{ token: PlatformLocation }, { token: APP_BASE_HREF, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
457
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: HashLocationStrategy });
|
|
453
458
|
}
|
|
454
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
459
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: HashLocationStrategy, decorators: [{
|
|
455
460
|
type: Injectable
|
|
456
461
|
}], ctorParameters: () => [{ type: PlatformLocation }, { type: undefined, decorators: [{
|
|
457
462
|
type: Optional
|
|
@@ -489,13 +494,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.9",
|
|
|
489
494
|
* @publicApi
|
|
490
495
|
*/
|
|
491
496
|
class Location {
|
|
497
|
+
/** @internal */
|
|
498
|
+
_subject = new Subject();
|
|
499
|
+
/** @internal */
|
|
500
|
+
_basePath;
|
|
501
|
+
/** @internal */
|
|
502
|
+
_locationStrategy;
|
|
503
|
+
/** @internal */
|
|
504
|
+
_urlChangeListeners = [];
|
|
505
|
+
/** @internal */
|
|
506
|
+
_urlChangeSubscription = null;
|
|
492
507
|
constructor(locationStrategy) {
|
|
493
|
-
/** @internal */
|
|
494
|
-
this._subject = new Subject();
|
|
495
|
-
/** @internal */
|
|
496
|
-
this._urlChangeListeners = [];
|
|
497
|
-
/** @internal */
|
|
498
|
-
this._urlChangeSubscription = null;
|
|
499
508
|
this._locationStrategy = locationStrategy;
|
|
500
509
|
const baseHref = this._locationStrategy.getBaseHref();
|
|
501
510
|
// Note: This class's interaction with base HREF does not fully follow the rules
|
|
@@ -681,7 +690,7 @@ class Location {
|
|
|
681
690
|
*
|
|
682
691
|
* @returns The normalized URL parameters string.
|
|
683
692
|
*/
|
|
684
|
-
static
|
|
693
|
+
static normalizeQueryParams = normalizeQueryParams;
|
|
685
694
|
/**
|
|
686
695
|
* Joins two parts of a URL with a slash if needed.
|
|
687
696
|
*
|
|
@@ -691,7 +700,7 @@ class Location {
|
|
|
691
700
|
*
|
|
692
701
|
* @returns The joined URL string.
|
|
693
702
|
*/
|
|
694
|
-
static
|
|
703
|
+
static joinWithSlash = joinWithSlash;
|
|
695
704
|
/**
|
|
696
705
|
* Removes a trailing slash from a URL string if needed.
|
|
697
706
|
* Looks for the first occurrence of either `#`, `?`, or the end of the
|
|
@@ -701,11 +710,11 @@ class Location {
|
|
|
701
710
|
*
|
|
702
711
|
* @returns The URL string, modified if needed.
|
|
703
712
|
*/
|
|
704
|
-
static
|
|
705
|
-
static
|
|
706
|
-
static
|
|
713
|
+
static stripTrailingSlash = stripTrailingSlash;
|
|
714
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: Location, deps: [{ token: LocationStrategy }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
715
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: Location, providedIn: 'root', useFactory: createLocation });
|
|
707
716
|
}
|
|
708
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
717
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: Location, decorators: [{
|
|
709
718
|
type: Injectable,
|
|
710
719
|
args: [{
|
|
711
720
|
providedIn: 'root',
|
|
@@ -2607,10 +2616,10 @@ function parseIntAutoRadix(text) {
|
|
|
2607
2616
|
* @publicApi
|
|
2608
2617
|
*/
|
|
2609
2618
|
class NgLocalization {
|
|
2610
|
-
static
|
|
2611
|
-
static
|
|
2619
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgLocalization, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2620
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgLocalization, providedIn: 'root', useFactory: (locale) => new NgLocaleLocalization(locale), deps: [{ token: LOCALE_ID }] });
|
|
2612
2621
|
}
|
|
2613
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
2622
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgLocalization, decorators: [{
|
|
2614
2623
|
type: Injectable,
|
|
2615
2624
|
args: [{
|
|
2616
2625
|
providedIn: 'root',
|
|
@@ -2643,6 +2652,7 @@ function getPluralCategory(value, cases, ngLocalization, locale) {
|
|
|
2643
2652
|
* @publicApi
|
|
2644
2653
|
*/
|
|
2645
2654
|
class NgLocaleLocalization extends NgLocalization {
|
|
2655
|
+
locale;
|
|
2646
2656
|
constructor(locale) {
|
|
2647
2657
|
super();
|
|
2648
2658
|
this.locale = locale;
|
|
@@ -2664,10 +2674,10 @@ class NgLocaleLocalization extends NgLocalization {
|
|
|
2664
2674
|
return 'other';
|
|
2665
2675
|
}
|
|
2666
2676
|
}
|
|
2667
|
-
static
|
|
2668
|
-
static
|
|
2677
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgLocaleLocalization, deps: [{ token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2678
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgLocaleLocalization });
|
|
2669
2679
|
}
|
|
2670
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
2680
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgLocaleLocalization, decorators: [{
|
|
2671
2681
|
type: Injectable
|
|
2672
2682
|
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
2673
2683
|
type: Inject,
|
|
@@ -2730,11 +2740,14 @@ const EMPTY_ARRAY = [];
|
|
|
2730
2740
|
* @publicApi
|
|
2731
2741
|
*/
|
|
2732
2742
|
class NgClass {
|
|
2743
|
+
_ngEl;
|
|
2744
|
+
_renderer;
|
|
2745
|
+
initialClasses = EMPTY_ARRAY;
|
|
2746
|
+
rawClass;
|
|
2747
|
+
stateMap = new Map();
|
|
2733
2748
|
constructor(_ngEl, _renderer) {
|
|
2734
2749
|
this._ngEl = _ngEl;
|
|
2735
2750
|
this._renderer = _renderer;
|
|
2736
|
-
this.initialClasses = EMPTY_ARRAY;
|
|
2737
|
-
this.stateMap = new Map();
|
|
2738
2751
|
}
|
|
2739
2752
|
set klass(value) {
|
|
2740
2753
|
this.initialClasses = value != null ? value.trim().split(WS_REGEXP) : EMPTY_ARRAY;
|
|
@@ -2836,10 +2849,10 @@ class NgClass {
|
|
|
2836
2849
|
});
|
|
2837
2850
|
}
|
|
2838
2851
|
}
|
|
2839
|
-
static
|
|
2840
|
-
static
|
|
2852
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgClass, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
2853
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-rc.1", type: NgClass, isStandalone: true, selector: "[ngClass]", inputs: { klass: ["class", "klass"], ngClass: "ngClass" }, ngImport: i0 });
|
|
2841
2854
|
}
|
|
2842
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
2855
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgClass, decorators: [{
|
|
2843
2856
|
type: Directive,
|
|
2844
2857
|
args: [{
|
|
2845
2858
|
selector: '[ngClass]',
|
|
@@ -2923,15 +2936,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.9",
|
|
|
2923
2936
|
* @ngModule CommonModule
|
|
2924
2937
|
*/
|
|
2925
2938
|
class NgComponentOutlet {
|
|
2939
|
+
_viewContainerRef;
|
|
2940
|
+
ngComponentOutlet = null;
|
|
2941
|
+
ngComponentOutletInputs;
|
|
2942
|
+
ngComponentOutletInjector;
|
|
2943
|
+
ngComponentOutletContent;
|
|
2944
|
+
ngComponentOutletNgModule;
|
|
2945
|
+
/**
|
|
2946
|
+
* @deprecated This input is deprecated, use `ngComponentOutletNgModule` instead.
|
|
2947
|
+
*/
|
|
2948
|
+
ngComponentOutletNgModuleFactory;
|
|
2949
|
+
_componentRef;
|
|
2950
|
+
_moduleRef;
|
|
2951
|
+
/**
|
|
2952
|
+
* A helper data structure that allows us to track inputs that were part of the
|
|
2953
|
+
* ngComponentOutletInputs expression. Tracking inputs is necessary for proper removal of ones
|
|
2954
|
+
* that are no longer referenced.
|
|
2955
|
+
*/
|
|
2956
|
+
_inputsUsed = new Map();
|
|
2926
2957
|
constructor(_viewContainerRef) {
|
|
2927
2958
|
this._viewContainerRef = _viewContainerRef;
|
|
2928
|
-
this.ngComponentOutlet = null;
|
|
2929
|
-
/**
|
|
2930
|
-
* A helper data structure that allows us to track inputs that were part of the
|
|
2931
|
-
* ngComponentOutletInputs expression. Tracking inputs is necessary for proper removal of ones
|
|
2932
|
-
* that are no longer referenced.
|
|
2933
|
-
*/
|
|
2934
|
-
this._inputsUsed = new Map();
|
|
2935
2959
|
}
|
|
2936
2960
|
_needToReCreateNgModuleInstance(changes) {
|
|
2937
2961
|
// Note: square brackets property accessor is safe for Closure compiler optimizations (the
|
|
@@ -3006,10 +3030,10 @@ class NgComponentOutlet {
|
|
|
3006
3030
|
}
|
|
3007
3031
|
}
|
|
3008
3032
|
}
|
|
3009
|
-
static
|
|
3010
|
-
static
|
|
3033
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgComponentOutlet, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3034
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-rc.1", type: NgComponentOutlet, isStandalone: true, selector: "[ngComponentOutlet]", inputs: { ngComponentOutlet: "ngComponentOutlet", ngComponentOutletInputs: "ngComponentOutletInputs", ngComponentOutletInjector: "ngComponentOutletInjector", ngComponentOutletContent: "ngComponentOutletContent", ngComponentOutletNgModule: "ngComponentOutletNgModule", ngComponentOutletNgModuleFactory: "ngComponentOutletNgModuleFactory" }, usesOnChanges: true, ngImport: i0 });
|
|
3011
3035
|
}
|
|
3012
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
3036
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgComponentOutlet, decorators: [{
|
|
3013
3037
|
type: Directive,
|
|
3014
3038
|
args: [{
|
|
3015
3039
|
selector: '[ngComponentOutlet]',
|
|
@@ -3038,6 +3062,10 @@ function getParentInjector(injector) {
|
|
|
3038
3062
|
* @publicApi
|
|
3039
3063
|
*/
|
|
3040
3064
|
class NgForOfContext {
|
|
3065
|
+
$implicit;
|
|
3066
|
+
ngForOf;
|
|
3067
|
+
index;
|
|
3068
|
+
count;
|
|
3041
3069
|
constructor(
|
|
3042
3070
|
/** Reference to the current item from the collection. */
|
|
3043
3071
|
$implicit,
|
|
@@ -3172,6 +3200,9 @@ class NgForOfContext {
|
|
|
3172
3200
|
* @publicApi
|
|
3173
3201
|
*/
|
|
3174
3202
|
class NgForOf {
|
|
3203
|
+
_viewContainer;
|
|
3204
|
+
_template;
|
|
3205
|
+
_differs;
|
|
3175
3206
|
/**
|
|
3176
3207
|
* The value of the iterable expression, which can be used as a
|
|
3177
3208
|
* [template input variable](guide/directives/structural-directives#shorthand).
|
|
@@ -3208,13 +3239,17 @@ class NgForOf {
|
|
|
3208
3239
|
get ngForTrackBy() {
|
|
3209
3240
|
return this._trackByFn;
|
|
3210
3241
|
}
|
|
3242
|
+
_ngForOf = null;
|
|
3243
|
+
_ngForOfDirty = true;
|
|
3244
|
+
_differ = null;
|
|
3245
|
+
// TODO(issue/24571): remove '!'
|
|
3246
|
+
// waiting for microsoft/typescript#43662 to allow the return type `TrackByFunction|undefined` for
|
|
3247
|
+
// the getter
|
|
3248
|
+
_trackByFn;
|
|
3211
3249
|
constructor(_viewContainer, _template, _differs) {
|
|
3212
3250
|
this._viewContainer = _viewContainer;
|
|
3213
3251
|
this._template = _template;
|
|
3214
3252
|
this._differs = _differs;
|
|
3215
|
-
this._ngForOf = null;
|
|
3216
|
-
this._ngForOfDirty = true;
|
|
3217
|
-
this._differ = null;
|
|
3218
3253
|
}
|
|
3219
3254
|
/**
|
|
3220
3255
|
* A reference to the template that is stamped out for each item in the iterable.
|
|
@@ -3305,10 +3340,10 @@ class NgForOf {
|
|
|
3305
3340
|
static ngTemplateContextGuard(dir, ctx) {
|
|
3306
3341
|
return true;
|
|
3307
3342
|
}
|
|
3308
|
-
static
|
|
3309
|
-
static
|
|
3343
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgForOf, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }, { token: i0.IterableDiffers }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3344
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-rc.1", type: NgForOf, isStandalone: true, selector: "[ngFor][ngForOf]", inputs: { ngForOf: "ngForOf", ngForTrackBy: "ngForTrackBy", ngForTemplate: "ngForTemplate" }, ngImport: i0 });
|
|
3310
3345
|
}
|
|
3311
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
3346
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgForOf, decorators: [{
|
|
3312
3347
|
type: Directive,
|
|
3313
3348
|
args: [{
|
|
3314
3349
|
selector: '[ngFor][ngForOf]',
|
|
@@ -3468,13 +3503,14 @@ function getTypeName(type) {
|
|
|
3468
3503
|
* @publicApi
|
|
3469
3504
|
*/
|
|
3470
3505
|
class NgIf {
|
|
3506
|
+
_viewContainer;
|
|
3507
|
+
_context = new NgIfContext();
|
|
3508
|
+
_thenTemplateRef = null;
|
|
3509
|
+
_elseTemplateRef = null;
|
|
3510
|
+
_thenViewRef = null;
|
|
3511
|
+
_elseViewRef = null;
|
|
3471
3512
|
constructor(_viewContainer, templateRef) {
|
|
3472
3513
|
this._viewContainer = _viewContainer;
|
|
3473
|
-
this._context = new NgIfContext();
|
|
3474
|
-
this._thenTemplateRef = null;
|
|
3475
|
-
this._elseTemplateRef = null;
|
|
3476
|
-
this._thenViewRef = null;
|
|
3477
|
-
this._elseViewRef = null;
|
|
3478
3514
|
this._thenTemplateRef = templateRef;
|
|
3479
3515
|
}
|
|
3480
3516
|
/**
|
|
@@ -3522,6 +3558,17 @@ class NgIf {
|
|
|
3522
3558
|
}
|
|
3523
3559
|
}
|
|
3524
3560
|
}
|
|
3561
|
+
/** @internal */
|
|
3562
|
+
static ngIfUseIfTypeGuard;
|
|
3563
|
+
/**
|
|
3564
|
+
* Assert the correct type of the expression bound to the `ngIf` input within the template.
|
|
3565
|
+
*
|
|
3566
|
+
* The presence of this static field is a signal to the Ivy template type check compiler that
|
|
3567
|
+
* when the `NgIf` structural directive renders its template, the type of the expression bound
|
|
3568
|
+
* to `ngIf` should be narrowed in some way. For `NgIf`, the binding expression itself is used to
|
|
3569
|
+
* narrow its type, which allows the strictNullChecks feature of TypeScript to work with `NgIf`.
|
|
3570
|
+
*/
|
|
3571
|
+
static ngTemplateGuard_ngIf;
|
|
3525
3572
|
/**
|
|
3526
3573
|
* Asserts the correct type of the context for the template that `NgIf` will render.
|
|
3527
3574
|
*
|
|
@@ -3531,10 +3578,10 @@ class NgIf {
|
|
|
3531
3578
|
static ngTemplateContextGuard(dir, ctx) {
|
|
3532
3579
|
return true;
|
|
3533
3580
|
}
|
|
3534
|
-
static
|
|
3535
|
-
static
|
|
3581
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgIf, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3582
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-rc.1", type: NgIf, isStandalone: true, selector: "[ngIf]", inputs: { ngIf: "ngIf", ngIfThen: "ngIfThen", ngIfElse: "ngIfElse" }, ngImport: i0 });
|
|
3536
3583
|
}
|
|
3537
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
3584
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgIf, decorators: [{
|
|
3538
3585
|
type: Directive,
|
|
3539
3586
|
args: [{
|
|
3540
3587
|
selector: '[ngIf]',
|
|
@@ -3551,10 +3598,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.9",
|
|
|
3551
3598
|
* @publicApi
|
|
3552
3599
|
*/
|
|
3553
3600
|
class NgIfContext {
|
|
3554
|
-
|
|
3555
|
-
|
|
3556
|
-
this.ngIf = null;
|
|
3557
|
-
}
|
|
3601
|
+
$implicit = null;
|
|
3602
|
+
ngIf = null;
|
|
3558
3603
|
}
|
|
3559
3604
|
function assertTemplate(property, templateRef) {
|
|
3560
3605
|
const isTemplateRefOrNull = !!(!templateRef || templateRef.createEmbeddedView);
|
|
@@ -3564,10 +3609,12 @@ function assertTemplate(property, templateRef) {
|
|
|
3564
3609
|
}
|
|
3565
3610
|
|
|
3566
3611
|
class SwitchView {
|
|
3612
|
+
_viewContainerRef;
|
|
3613
|
+
_templateRef;
|
|
3614
|
+
_created = false;
|
|
3567
3615
|
constructor(_viewContainerRef, _templateRef) {
|
|
3568
3616
|
this._viewContainerRef = _viewContainerRef;
|
|
3569
3617
|
this._templateRef = _templateRef;
|
|
3570
|
-
this._created = false;
|
|
3571
3618
|
}
|
|
3572
3619
|
create() {
|
|
3573
3620
|
this._created = true;
|
|
@@ -3653,13 +3700,12 @@ class SwitchView {
|
|
|
3653
3700
|
*
|
|
3654
3701
|
*/
|
|
3655
3702
|
class NgSwitch {
|
|
3656
|
-
|
|
3657
|
-
|
|
3658
|
-
|
|
3659
|
-
|
|
3660
|
-
|
|
3661
|
-
|
|
3662
|
-
}
|
|
3703
|
+
_defaultViews = [];
|
|
3704
|
+
_defaultUsed = false;
|
|
3705
|
+
_caseCount = 0;
|
|
3706
|
+
_lastCaseCheckIndex = 0;
|
|
3707
|
+
_lastCasesMatched = false;
|
|
3708
|
+
_ngSwitch;
|
|
3663
3709
|
set ngSwitch(newValue) {
|
|
3664
3710
|
this._ngSwitch = newValue;
|
|
3665
3711
|
if (this._caseCount === 0) {
|
|
@@ -3694,10 +3740,10 @@ class NgSwitch {
|
|
|
3694
3740
|
}
|
|
3695
3741
|
}
|
|
3696
3742
|
}
|
|
3697
|
-
static
|
|
3698
|
-
static
|
|
3743
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgSwitch, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
3744
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-rc.1", type: NgSwitch, isStandalone: true, selector: "[ngSwitch]", inputs: { ngSwitch: "ngSwitch" }, ngImport: i0 });
|
|
3699
3745
|
}
|
|
3700
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
3746
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgSwitch, decorators: [{
|
|
3701
3747
|
type: Directive,
|
|
3702
3748
|
args: [{
|
|
3703
3749
|
selector: '[ngSwitch]',
|
|
@@ -3740,6 +3786,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.9",
|
|
|
3740
3786
|
*
|
|
3741
3787
|
*/
|
|
3742
3788
|
class NgSwitchCase {
|
|
3789
|
+
ngSwitch;
|
|
3790
|
+
_view;
|
|
3791
|
+
/**
|
|
3792
|
+
* Stores the HTML template to be selected on match.
|
|
3793
|
+
*/
|
|
3794
|
+
ngSwitchCase;
|
|
3743
3795
|
constructor(viewContainer, templateRef, ngSwitch) {
|
|
3744
3796
|
this.ngSwitch = ngSwitch;
|
|
3745
3797
|
if ((typeof ngDevMode === 'undefined' || ngDevMode) && !ngSwitch) {
|
|
@@ -3755,10 +3807,10 @@ class NgSwitchCase {
|
|
|
3755
3807
|
ngDoCheck() {
|
|
3756
3808
|
this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase));
|
|
3757
3809
|
}
|
|
3758
|
-
static
|
|
3759
|
-
static
|
|
3810
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgSwitchCase, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }, { token: NgSwitch, host: true, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3811
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-rc.1", type: NgSwitchCase, isStandalone: true, selector: "[ngSwitchCase]", inputs: { ngSwitchCase: "ngSwitchCase" }, ngImport: i0 });
|
|
3760
3812
|
}
|
|
3761
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
3813
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgSwitchCase, decorators: [{
|
|
3762
3814
|
type: Directive,
|
|
3763
3815
|
args: [{
|
|
3764
3816
|
selector: '[ngSwitchCase]',
|
|
@@ -3792,10 +3844,10 @@ class NgSwitchDefault {
|
|
|
3792
3844
|
}
|
|
3793
3845
|
ngSwitch._addDefault(new SwitchView(viewContainer, templateRef));
|
|
3794
3846
|
}
|
|
3795
|
-
static
|
|
3796
|
-
static
|
|
3847
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgSwitchDefault, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }, { token: NgSwitch, host: true, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3848
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-rc.1", type: NgSwitchDefault, isStandalone: true, selector: "[ngSwitchDefault]", ngImport: i0 });
|
|
3797
3849
|
}
|
|
3798
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
3850
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgSwitchDefault, decorators: [{
|
|
3799
3851
|
type: Directive,
|
|
3800
3852
|
args: [{
|
|
3801
3853
|
selector: '[ngSwitchDefault]',
|
|
@@ -3847,9 +3899,11 @@ function stringifyValue(value) {
|
|
|
3847
3899
|
* @publicApi
|
|
3848
3900
|
*/
|
|
3849
3901
|
class NgPlural {
|
|
3902
|
+
_localization;
|
|
3903
|
+
_activeView;
|
|
3904
|
+
_caseViews = {};
|
|
3850
3905
|
constructor(_localization) {
|
|
3851
3906
|
this._localization = _localization;
|
|
3852
|
-
this._caseViews = {};
|
|
3853
3907
|
}
|
|
3854
3908
|
set ngPlural(value) {
|
|
3855
3909
|
this._updateView(value);
|
|
@@ -3873,10 +3927,10 @@ class NgPlural {
|
|
|
3873
3927
|
this._activeView.create();
|
|
3874
3928
|
}
|
|
3875
3929
|
}
|
|
3876
|
-
static
|
|
3877
|
-
static
|
|
3930
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgPlural, deps: [{ token: NgLocalization }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3931
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-rc.1", type: NgPlural, isStandalone: true, selector: "[ngPlural]", inputs: { ngPlural: "ngPlural" }, ngImport: i0 });
|
|
3878
3932
|
}
|
|
3879
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
3933
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgPlural, decorators: [{
|
|
3880
3934
|
type: Directive,
|
|
3881
3935
|
args: [{
|
|
3882
3936
|
selector: '[ngPlural]',
|
|
@@ -3906,15 +3960,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.9",
|
|
|
3906
3960
|
* @publicApi
|
|
3907
3961
|
*/
|
|
3908
3962
|
class NgPluralCase {
|
|
3963
|
+
value;
|
|
3909
3964
|
constructor(value, template, viewContainer, ngPlural) {
|
|
3910
3965
|
this.value = value;
|
|
3911
3966
|
const isANumber = !isNaN(Number(value));
|
|
3912
3967
|
ngPlural.addCase(isANumber ? `=${value}` : value, new SwitchView(viewContainer, template));
|
|
3913
3968
|
}
|
|
3914
|
-
static
|
|
3915
|
-
static
|
|
3969
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgPluralCase, deps: [{ token: 'ngPluralCase', attribute: true }, { token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: NgPlural, host: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3970
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-rc.1", type: NgPluralCase, isStandalone: true, selector: "[ngPluralCase]", ngImport: i0 });
|
|
3916
3971
|
}
|
|
3917
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
3972
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgPluralCase, decorators: [{
|
|
3918
3973
|
type: Directive,
|
|
3919
3974
|
args: [{
|
|
3920
3975
|
selector: '[ngPluralCase]',
|
|
@@ -3964,12 +4019,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.9",
|
|
|
3964
4019
|
* @publicApi
|
|
3965
4020
|
*/
|
|
3966
4021
|
class NgStyle {
|
|
4022
|
+
_ngEl;
|
|
4023
|
+
_differs;
|
|
4024
|
+
_renderer;
|
|
4025
|
+
_ngStyle = null;
|
|
4026
|
+
_differ = null;
|
|
3967
4027
|
constructor(_ngEl, _differs, _renderer) {
|
|
3968
4028
|
this._ngEl = _ngEl;
|
|
3969
4029
|
this._differs = _differs;
|
|
3970
4030
|
this._renderer = _renderer;
|
|
3971
|
-
this._ngStyle = null;
|
|
3972
|
-
this._differ = null;
|
|
3973
4031
|
}
|
|
3974
4032
|
set ngStyle(values) {
|
|
3975
4033
|
this._ngStyle = values;
|
|
@@ -4000,10 +4058,10 @@ class NgStyle {
|
|
|
4000
4058
|
changes.forEachAddedItem((record) => this._setStyle(record.key, record.currentValue));
|
|
4001
4059
|
changes.forEachChangedItem((record) => this._setStyle(record.key, record.currentValue));
|
|
4002
4060
|
}
|
|
4003
|
-
static
|
|
4004
|
-
static
|
|
4061
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgStyle, deps: [{ token: i0.ElementRef }, { token: i0.KeyValueDiffers }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
4062
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-rc.1", type: NgStyle, isStandalone: true, selector: "[ngStyle]", inputs: { ngStyle: "ngStyle" }, ngImport: i0 });
|
|
4005
4063
|
}
|
|
4006
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
4064
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgStyle, decorators: [{
|
|
4007
4065
|
type: Directive,
|
|
4008
4066
|
args: [{
|
|
4009
4067
|
selector: '[ngStyle]',
|
|
@@ -4039,22 +4097,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.9",
|
|
|
4039
4097
|
* @publicApi
|
|
4040
4098
|
*/
|
|
4041
4099
|
class NgTemplateOutlet {
|
|
4100
|
+
_viewContainerRef;
|
|
4101
|
+
_viewRef = null;
|
|
4102
|
+
/**
|
|
4103
|
+
* A context object to attach to the {@link EmbeddedViewRef}. This should be an
|
|
4104
|
+
* object, the object's keys will be available for binding by the local template `let`
|
|
4105
|
+
* declarations.
|
|
4106
|
+
* Using the key `$implicit` in the context object will set its value as default.
|
|
4107
|
+
*/
|
|
4108
|
+
ngTemplateOutletContext = null;
|
|
4109
|
+
/**
|
|
4110
|
+
* A string defining the template reference and optionally the context object for the template.
|
|
4111
|
+
*/
|
|
4112
|
+
ngTemplateOutlet = null;
|
|
4113
|
+
/** Injector to be used within the embedded view. */
|
|
4114
|
+
ngTemplateOutletInjector = null;
|
|
4042
4115
|
constructor(_viewContainerRef) {
|
|
4043
4116
|
this._viewContainerRef = _viewContainerRef;
|
|
4044
|
-
this._viewRef = null;
|
|
4045
|
-
/**
|
|
4046
|
-
* A context object to attach to the {@link EmbeddedViewRef}. This should be an
|
|
4047
|
-
* object, the object's keys will be available for binding by the local template `let`
|
|
4048
|
-
* declarations.
|
|
4049
|
-
* Using the key `$implicit` in the context object will set its value as default.
|
|
4050
|
-
*/
|
|
4051
|
-
this.ngTemplateOutletContext = null;
|
|
4052
|
-
/**
|
|
4053
|
-
* A string defining the template reference and optionally the context object for the template.
|
|
4054
|
-
*/
|
|
4055
|
-
this.ngTemplateOutlet = null;
|
|
4056
|
-
/** Injector to be used within the embedded view. */
|
|
4057
|
-
this.ngTemplateOutletInjector = null;
|
|
4058
4117
|
}
|
|
4059
4118
|
ngOnChanges(changes) {
|
|
4060
4119
|
if (this._shouldRecreateView(changes)) {
|
|
@@ -4104,10 +4163,10 @@ class NgTemplateOutlet {
|
|
|
4104
4163
|
},
|
|
4105
4164
|
});
|
|
4106
4165
|
}
|
|
4107
|
-
static
|
|
4108
|
-
static
|
|
4166
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgTemplateOutlet, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
4167
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-rc.1", type: NgTemplateOutlet, isStandalone: true, selector: "[ngTemplateOutlet]", inputs: { ngTemplateOutletContext: "ngTemplateOutletContext", ngTemplateOutlet: "ngTemplateOutlet", ngTemplateOutletInjector: "ngTemplateOutletInjector" }, usesOnChanges: true, ngImport: i0 });
|
|
4109
4168
|
}
|
|
4110
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
4169
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgTemplateOutlet, decorators: [{
|
|
4111
4170
|
type: Directive,
|
|
4112
4171
|
args: [{
|
|
4113
4172
|
selector: '[ngTemplateOutlet]',
|
|
@@ -4203,12 +4262,13 @@ const _subscribableStrategy = new SubscribableStrategy();
|
|
|
4203
4262
|
* @publicApi
|
|
4204
4263
|
*/
|
|
4205
4264
|
class AsyncPipe {
|
|
4265
|
+
_ref;
|
|
4266
|
+
_latestValue = null;
|
|
4267
|
+
markForCheckOnValueUpdate = true;
|
|
4268
|
+
_subscription = null;
|
|
4269
|
+
_obj = null;
|
|
4270
|
+
_strategy = null;
|
|
4206
4271
|
constructor(ref) {
|
|
4207
|
-
this._latestValue = null;
|
|
4208
|
-
this.markForCheckOnValueUpdate = true;
|
|
4209
|
-
this._subscription = null;
|
|
4210
|
-
this._obj = null;
|
|
4211
|
-
this._strategy = null;
|
|
4212
4272
|
// Assign `ref` into `this._ref` manually instead of declaring `_ref` in the constructor
|
|
4213
4273
|
// parameter list, as the type of `this._ref` includes `null` unlike the type of `ref`.
|
|
4214
4274
|
this._ref = ref;
|
|
@@ -4275,10 +4335,10 @@ class AsyncPipe {
|
|
|
4275
4335
|
}
|
|
4276
4336
|
}
|
|
4277
4337
|
}
|
|
4278
|
-
static
|
|
4279
|
-
static
|
|
4338
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: AsyncPipe, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4339
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.0.0-rc.1", ngImport: i0, type: AsyncPipe, isStandalone: true, name: "async", pure: false });
|
|
4280
4340
|
}
|
|
4281
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
4341
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: AsyncPipe, decorators: [{
|
|
4282
4342
|
type: Pipe,
|
|
4283
4343
|
args: [{
|
|
4284
4344
|
name: 'async',
|
|
@@ -4311,10 +4371,10 @@ class LowerCasePipe {
|
|
|
4311
4371
|
}
|
|
4312
4372
|
return value.toLowerCase();
|
|
4313
4373
|
}
|
|
4314
|
-
static
|
|
4315
|
-
static
|
|
4374
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: LowerCasePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4375
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.0.0-rc.1", ngImport: i0, type: LowerCasePipe, isStandalone: true, name: "lowercase" });
|
|
4316
4376
|
}
|
|
4317
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
4377
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: LowerCasePipe, decorators: [{
|
|
4318
4378
|
type: Pipe,
|
|
4319
4379
|
args: [{
|
|
4320
4380
|
name: 'lowercase',
|
|
@@ -4356,10 +4416,10 @@ class TitleCasePipe {
|
|
|
4356
4416
|
}
|
|
4357
4417
|
return value.replace(unicodeWordMatch, (txt) => txt[0].toUpperCase() + txt.slice(1).toLowerCase());
|
|
4358
4418
|
}
|
|
4359
|
-
static
|
|
4360
|
-
static
|
|
4419
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: TitleCasePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4420
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.0.0-rc.1", ngImport: i0, type: TitleCasePipe, isStandalone: true, name: "titlecase" });
|
|
4361
4421
|
}
|
|
4362
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
4422
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: TitleCasePipe, decorators: [{
|
|
4363
4423
|
type: Pipe,
|
|
4364
4424
|
args: [{
|
|
4365
4425
|
name: 'titlecase',
|
|
@@ -4383,10 +4443,10 @@ class UpperCasePipe {
|
|
|
4383
4443
|
}
|
|
4384
4444
|
return value.toUpperCase();
|
|
4385
4445
|
}
|
|
4386
|
-
static
|
|
4387
|
-
static
|
|
4446
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: UpperCasePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4447
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.0.0-rc.1", ngImport: i0, type: UpperCasePipe, isStandalone: true, name: "uppercase" });
|
|
4388
4448
|
}
|
|
4389
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
4449
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: UpperCasePipe, decorators: [{
|
|
4390
4450
|
type: Pipe,
|
|
4391
4451
|
args: [{
|
|
4392
4452
|
name: 'uppercase',
|
|
@@ -4598,6 +4658,9 @@ const DATE_PIPE_DEFAULT_OPTIONS = new InjectionToken(ngDevMode ? 'DATE_PIPE_DEFA
|
|
|
4598
4658
|
* @publicApi
|
|
4599
4659
|
*/
|
|
4600
4660
|
class DatePipe {
|
|
4661
|
+
locale;
|
|
4662
|
+
defaultTimezone;
|
|
4663
|
+
defaultOptions;
|
|
4601
4664
|
constructor(locale, defaultTimezone, defaultOptions) {
|
|
4602
4665
|
this.locale = locale;
|
|
4603
4666
|
this.defaultTimezone = defaultTimezone;
|
|
@@ -4615,10 +4678,10 @@ class DatePipe {
|
|
|
4615
4678
|
throw invalidPipeArgumentError(DatePipe, error.message);
|
|
4616
4679
|
}
|
|
4617
4680
|
}
|
|
4618
|
-
static
|
|
4619
|
-
static
|
|
4681
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: DatePipe, deps: [{ token: LOCALE_ID }, { token: DATE_PIPE_DEFAULT_TIMEZONE, optional: true }, { token: DATE_PIPE_DEFAULT_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4682
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.0.0-rc.1", ngImport: i0, type: DatePipe, isStandalone: true, name: "date" });
|
|
4620
4683
|
}
|
|
4621
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
4684
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: DatePipe, decorators: [{
|
|
4622
4685
|
type: Pipe,
|
|
4623
4686
|
args: [{
|
|
4624
4687
|
name: 'date',
|
|
@@ -4655,6 +4718,7 @@ const _INTERPOLATION_REGEXP = /#/g;
|
|
|
4655
4718
|
* @publicApi
|
|
4656
4719
|
*/
|
|
4657
4720
|
class I18nPluralPipe {
|
|
4721
|
+
_localization;
|
|
4658
4722
|
constructor(_localization) {
|
|
4659
4723
|
this._localization = _localization;
|
|
4660
4724
|
}
|
|
@@ -4674,10 +4738,10 @@ class I18nPluralPipe {
|
|
|
4674
4738
|
const key = getPluralCategory(value, Object.keys(pluralMap), this._localization, locale);
|
|
4675
4739
|
return pluralMap[key].replace(_INTERPOLATION_REGEXP, value.toString());
|
|
4676
4740
|
}
|
|
4677
|
-
static
|
|
4678
|
-
static
|
|
4741
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: I18nPluralPipe, deps: [{ token: NgLocalization }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4742
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.0.0-rc.1", ngImport: i0, type: I18nPluralPipe, isStandalone: true, name: "i18nPlural" });
|
|
4679
4743
|
}
|
|
4680
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
4744
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: I18nPluralPipe, decorators: [{
|
|
4681
4745
|
type: Pipe,
|
|
4682
4746
|
args: [{
|
|
4683
4747
|
name: 'i18nPlural',
|
|
@@ -4722,10 +4786,10 @@ class I18nSelectPipe {
|
|
|
4722
4786
|
}
|
|
4723
4787
|
return '';
|
|
4724
4788
|
}
|
|
4725
|
-
static
|
|
4726
|
-
static
|
|
4789
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: I18nSelectPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4790
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.0.0-rc.1", ngImport: i0, type: I18nSelectPipe, isStandalone: true, name: "i18nSelect" });
|
|
4727
4791
|
}
|
|
4728
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
4792
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: I18nSelectPipe, decorators: [{
|
|
4729
4793
|
type: Pipe,
|
|
4730
4794
|
args: [{
|
|
4731
4795
|
name: 'i18nSelect',
|
|
@@ -4755,10 +4819,10 @@ class JsonPipe {
|
|
|
4755
4819
|
transform(value) {
|
|
4756
4820
|
return JSON.stringify(value, null, 2);
|
|
4757
4821
|
}
|
|
4758
|
-
static
|
|
4759
|
-
static
|
|
4822
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: JsonPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4823
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.0.0-rc.1", ngImport: i0, type: JsonPipe, isStandalone: true, name: "json", pure: false });
|
|
4760
4824
|
}
|
|
4761
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
4825
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: JsonPipe, decorators: [{
|
|
4762
4826
|
type: Pipe,
|
|
4763
4827
|
args: [{
|
|
4764
4828
|
name: 'json',
|
|
@@ -4779,6 +4843,7 @@ function makeKeyValuePair(key, value) {
|
|
|
4779
4843
|
* The output array will be ordered by keys.
|
|
4780
4844
|
* By default the comparator will be by Unicode point value.
|
|
4781
4845
|
* You can optionally pass a compareFn if your keys are complex types.
|
|
4846
|
+
* Passing `null` as the compareFn will use natural ordering of the input.
|
|
4782
4847
|
*
|
|
4783
4848
|
* @usageNotes
|
|
4784
4849
|
* ### Examples
|
|
@@ -4791,11 +4856,13 @@ function makeKeyValuePair(key, value) {
|
|
|
4791
4856
|
* @publicApi
|
|
4792
4857
|
*/
|
|
4793
4858
|
class KeyValuePipe {
|
|
4859
|
+
differs;
|
|
4794
4860
|
constructor(differs) {
|
|
4795
4861
|
this.differs = differs;
|
|
4796
|
-
this.keyValues = [];
|
|
4797
|
-
this.compareFn = defaultComparator;
|
|
4798
4862
|
}
|
|
4863
|
+
differ;
|
|
4864
|
+
keyValues = [];
|
|
4865
|
+
compareFn = defaultComparator;
|
|
4799
4866
|
transform(input, compareFn = defaultComparator) {
|
|
4800
4867
|
if (!input || (!(input instanceof Map) && typeof input !== 'object')) {
|
|
4801
4868
|
return null;
|
|
@@ -4811,15 +4878,17 @@ class KeyValuePipe {
|
|
|
4811
4878
|
});
|
|
4812
4879
|
}
|
|
4813
4880
|
if (differChanges || compareFnChanged) {
|
|
4814
|
-
|
|
4881
|
+
if (compareFn) {
|
|
4882
|
+
this.keyValues.sort(compareFn);
|
|
4883
|
+
}
|
|
4815
4884
|
this.compareFn = compareFn;
|
|
4816
4885
|
}
|
|
4817
4886
|
return this.keyValues;
|
|
4818
4887
|
}
|
|
4819
|
-
static
|
|
4820
|
-
static
|
|
4888
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: KeyValuePipe, deps: [{ token: i0.KeyValueDiffers }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4889
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.0.0-rc.1", ngImport: i0, type: KeyValuePipe, isStandalone: true, name: "keyvalue", pure: false });
|
|
4821
4890
|
}
|
|
4822
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
4891
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: KeyValuePipe, decorators: [{
|
|
4823
4892
|
type: Pipe,
|
|
4824
4893
|
args: [{
|
|
4825
4894
|
name: 'keyvalue',
|
|
@@ -4922,6 +4991,7 @@ function defaultComparator(keyValueA, keyValueB) {
|
|
|
4922
4991
|
* @publicApi
|
|
4923
4992
|
*/
|
|
4924
4993
|
class DecimalPipe {
|
|
4994
|
+
_locale;
|
|
4925
4995
|
constructor(_locale) {
|
|
4926
4996
|
this._locale = _locale;
|
|
4927
4997
|
}
|
|
@@ -4937,10 +5007,10 @@ class DecimalPipe {
|
|
|
4937
5007
|
throw invalidPipeArgumentError(DecimalPipe, error.message);
|
|
4938
5008
|
}
|
|
4939
5009
|
}
|
|
4940
|
-
static
|
|
4941
|
-
static
|
|
5010
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: DecimalPipe, deps: [{ token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
5011
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.0.0-rc.1", ngImport: i0, type: DecimalPipe, isStandalone: true, name: "number" });
|
|
4942
5012
|
}
|
|
4943
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
5013
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: DecimalPipe, decorators: [{
|
|
4944
5014
|
type: Pipe,
|
|
4945
5015
|
args: [{
|
|
4946
5016
|
name: 'number',
|
|
@@ -4971,6 +5041,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.9",
|
|
|
4971
5041
|
* @publicApi
|
|
4972
5042
|
*/
|
|
4973
5043
|
class PercentPipe {
|
|
5044
|
+
_locale;
|
|
4974
5045
|
constructor(_locale) {
|
|
4975
5046
|
this._locale = _locale;
|
|
4976
5047
|
}
|
|
@@ -5002,10 +5073,10 @@ class PercentPipe {
|
|
|
5002
5073
|
throw invalidPipeArgumentError(PercentPipe, error.message);
|
|
5003
5074
|
}
|
|
5004
5075
|
}
|
|
5005
|
-
static
|
|
5006
|
-
static
|
|
5076
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: PercentPipe, deps: [{ token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
5077
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.0.0-rc.1", ngImport: i0, type: PercentPipe, isStandalone: true, name: "percent" });
|
|
5007
5078
|
}
|
|
5008
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
5079
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: PercentPipe, decorators: [{
|
|
5009
5080
|
type: Pipe,
|
|
5010
5081
|
args: [{
|
|
5011
5082
|
name: 'percent',
|
|
@@ -5037,43 +5108,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.9",
|
|
|
5037
5108
|
* @publicApi
|
|
5038
5109
|
*/
|
|
5039
5110
|
class CurrencyPipe {
|
|
5111
|
+
_locale;
|
|
5112
|
+
_defaultCurrencyCode;
|
|
5040
5113
|
constructor(_locale, _defaultCurrencyCode = 'USD') {
|
|
5041
5114
|
this._locale = _locale;
|
|
5042
5115
|
this._defaultCurrencyCode = _defaultCurrencyCode;
|
|
5043
5116
|
}
|
|
5044
|
-
/**
|
|
5045
|
-
*
|
|
5046
|
-
* @param value The number to be formatted as currency.
|
|
5047
|
-
* @param currencyCode The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) currency code,
|
|
5048
|
-
* such as `USD` for the US dollar and `EUR` for the euro. The default currency code can be
|
|
5049
|
-
* configured using the `DEFAULT_CURRENCY_CODE` injection token.
|
|
5050
|
-
* @param display The format for the currency indicator. One of the following:
|
|
5051
|
-
* - `code`: Show the code (such as `USD`).
|
|
5052
|
-
* - `symbol`(default): Show the symbol (such as `$`).
|
|
5053
|
-
* - `symbol-narrow`: Use the narrow symbol for locales that have two symbols for their
|
|
5054
|
-
* currency.
|
|
5055
|
-
* For example, the Canadian dollar CAD has the symbol `CA$` and the symbol-narrow `$`. If the
|
|
5056
|
-
* locale has no narrow symbol, uses the standard symbol for the locale.
|
|
5057
|
-
* - String: Use the given string value instead of a code or a symbol.
|
|
5058
|
-
* For example, an empty string will suppress the currency & symbol.
|
|
5059
|
-
* - Boolean (marked deprecated in v5): `true` for symbol and false for `code`.
|
|
5060
|
-
*
|
|
5061
|
-
* @param digitsInfo Decimal representation options, specified by a string
|
|
5062
|
-
* in the following format:<br>
|
|
5063
|
-
* <code>{minIntegerDigits}.{minFractionDigits}-{maxFractionDigits}</code>.
|
|
5064
|
-
* - `minIntegerDigits`: The minimum number of integer digits before the decimal point.
|
|
5065
|
-
* Default is `1`.
|
|
5066
|
-
* - `minFractionDigits`: The minimum number of digits after the decimal point.
|
|
5067
|
-
* Default is `2`.
|
|
5068
|
-
* - `maxFractionDigits`: The maximum number of digits after the decimal point.
|
|
5069
|
-
* Default is `2`.
|
|
5070
|
-
* If not provided, the number will be formatted with the proper amount of digits,
|
|
5071
|
-
* depending on what the [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) specifies.
|
|
5072
|
-
* For example, the Canadian dollar has 2 digits, whereas the Chilean peso has none.
|
|
5073
|
-
* @param locale A locale code for the locale format rules to use.
|
|
5074
|
-
* When not supplied, uses the value of `LOCALE_ID`, which is `en-US` by default.
|
|
5075
|
-
* See [Setting your app locale](guide/i18n/locale-id).
|
|
5076
|
-
*/
|
|
5077
5117
|
transform(value, currencyCode = this._defaultCurrencyCode, display = 'symbol', digitsInfo, locale) {
|
|
5078
5118
|
if (!isValue(value))
|
|
5079
5119
|
return null;
|
|
@@ -5101,10 +5141,10 @@ class CurrencyPipe {
|
|
|
5101
5141
|
throw invalidPipeArgumentError(CurrencyPipe, error.message);
|
|
5102
5142
|
}
|
|
5103
5143
|
}
|
|
5104
|
-
static
|
|
5105
|
-
static
|
|
5144
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: CurrencyPipe, deps: [{ token: LOCALE_ID }, { token: DEFAULT_CURRENCY_CODE }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
5145
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.0.0-rc.1", ngImport: i0, type: CurrencyPipe, isStandalone: true, name: "currency" });
|
|
5106
5146
|
}
|
|
5107
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
5147
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: CurrencyPipe, decorators: [{
|
|
5108
5148
|
type: Pipe,
|
|
5109
5149
|
args: [{
|
|
5110
5150
|
name: 'currency',
|
|
@@ -5181,10 +5221,10 @@ class SlicePipe {
|
|
|
5181
5221
|
supports(obj) {
|
|
5182
5222
|
return typeof obj === 'string' || Array.isArray(obj);
|
|
5183
5223
|
}
|
|
5184
|
-
static
|
|
5185
|
-
static
|
|
5224
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: SlicePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
5225
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.0.0-rc.1", ngImport: i0, type: SlicePipe, isStandalone: true, name: "slice", pure: false });
|
|
5186
5226
|
}
|
|
5187
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
5227
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: SlicePipe, decorators: [{
|
|
5188
5228
|
type: Pipe,
|
|
5189
5229
|
args: [{
|
|
5190
5230
|
name: 'slice',
|
|
@@ -5228,11 +5268,11 @@ const COMMON_PIPES = [
|
|
|
5228
5268
|
* @publicApi
|
|
5229
5269
|
*/
|
|
5230
5270
|
class CommonModule {
|
|
5231
|
-
static
|
|
5232
|
-
static
|
|
5233
|
-
static
|
|
5271
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: CommonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
5272
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-rc.1", 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] });
|
|
5273
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: CommonModule });
|
|
5234
5274
|
}
|
|
5235
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
5275
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: CommonModule, decorators: [{
|
|
5236
5276
|
type: NgModule,
|
|
5237
5277
|
args: [{
|
|
5238
5278
|
imports: [COMMON_DIRECTIVES, COMMON_PIPES],
|
|
@@ -5265,7 +5305,7 @@ function isPlatformServer(platformId) {
|
|
|
5265
5305
|
/**
|
|
5266
5306
|
* @publicApi
|
|
5267
5307
|
*/
|
|
5268
|
-
const VERSION = new Version('19.0.0-
|
|
5308
|
+
const VERSION = new Version('19.0.0-rc.1');
|
|
5269
5309
|
|
|
5270
5310
|
/**
|
|
5271
5311
|
* Defines a scroll position manager. Implemented by `BrowserViewportScroller`.
|
|
@@ -5276,22 +5316,24 @@ class ViewportScroller {
|
|
|
5276
5316
|
// De-sugared tree-shakable injection
|
|
5277
5317
|
// See #23917
|
|
5278
5318
|
/** @nocollapse */
|
|
5279
|
-
static
|
|
5319
|
+
static ɵprov = /** @pureOrBreakMyCode */ /* @__PURE__ */ ɵɵdefineInjectable({
|
|
5280
5320
|
token: ViewportScroller,
|
|
5281
5321
|
providedIn: 'root',
|
|
5282
5322
|
factory: () => isPlatformBrowser(inject(PLATFORM_ID))
|
|
5283
5323
|
? new BrowserViewportScroller(inject(DOCUMENT), window)
|
|
5284
5324
|
: new NullViewportScroller(),
|
|
5285
|
-
});
|
|
5325
|
+
});
|
|
5286
5326
|
}
|
|
5287
5327
|
/**
|
|
5288
5328
|
* Manages the scroll position for a browser window.
|
|
5289
5329
|
*/
|
|
5290
5330
|
class BrowserViewportScroller {
|
|
5331
|
+
document;
|
|
5332
|
+
window;
|
|
5333
|
+
offset = () => [0, 0];
|
|
5291
5334
|
constructor(document, window) {
|
|
5292
5335
|
this.document = document;
|
|
5293
5336
|
this.window = window;
|
|
5294
|
-
this.offset = () => [0, 0];
|
|
5295
5337
|
}
|
|
5296
5338
|
/**
|
|
5297
5339
|
* Configures the top offset used when scrolling to an anchor.
|
|
@@ -5604,6 +5646,9 @@ function createCloudinaryUrl(path, config) {
|
|
|
5604
5646
|
if (config.width) {
|
|
5605
5647
|
params += `,w_${config.width}`;
|
|
5606
5648
|
}
|
|
5649
|
+
if (config.loaderParams?.['rounded']) {
|
|
5650
|
+
params += `,r_max`;
|
|
5651
|
+
}
|
|
5607
5652
|
return `${path}/image/upload/${params}/${config.src}`;
|
|
5608
5653
|
}
|
|
5609
5654
|
|
|
@@ -5797,11 +5842,11 @@ function assertDevMode(checkName) {
|
|
|
5797
5842
|
* Based on https://web.dev/lcp/#measure-lcp-in-javascript.
|
|
5798
5843
|
*/
|
|
5799
5844
|
class LCPImageObserver {
|
|
5845
|
+
// Map of full image URLs -> original `ngSrc` values.
|
|
5846
|
+
images = new Map();
|
|
5847
|
+
window = null;
|
|
5848
|
+
observer = null;
|
|
5800
5849
|
constructor() {
|
|
5801
|
-
// Map of full image URLs -> original `ngSrc` values.
|
|
5802
|
-
this.images = new Map();
|
|
5803
|
-
this.window = null;
|
|
5804
|
-
this.observer = null;
|
|
5805
5850
|
const isBrowser = isPlatformBrowser(inject(PLATFORM_ID));
|
|
5806
5851
|
assertDevMode('LCP checker');
|
|
5807
5852
|
const win = inject(DOCUMENT).defaultView;
|
|
@@ -5878,10 +5923,10 @@ class LCPImageObserver {
|
|
|
5878
5923
|
this.observer.disconnect();
|
|
5879
5924
|
this.images.clear();
|
|
5880
5925
|
}
|
|
5881
|
-
static
|
|
5882
|
-
static
|
|
5926
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: LCPImageObserver, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
5927
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: LCPImageObserver, providedIn: 'root' });
|
|
5883
5928
|
}
|
|
5884
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
5929
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: LCPImageObserver, decorators: [{
|
|
5885
5930
|
type: Injectable,
|
|
5886
5931
|
args: [{ providedIn: 'root' }]
|
|
5887
5932
|
}], ctorParameters: () => [] });
|
|
@@ -5929,20 +5974,20 @@ const PRECONNECT_CHECK_BLOCKLIST = new InjectionToken(ngDevMode ? 'PRECONNECT_CH
|
|
|
5929
5974
|
* thus there is no `ngDevMode` use in the code.
|
|
5930
5975
|
*/
|
|
5931
5976
|
class PreconnectLinkChecker {
|
|
5977
|
+
document = inject(DOCUMENT);
|
|
5978
|
+
isServer = isPlatformServer(inject(PLATFORM_ID));
|
|
5979
|
+
/**
|
|
5980
|
+
* Set of <link rel="preconnect"> tags found on this page.
|
|
5981
|
+
* The `null` value indicates that there was no DOM query operation performed.
|
|
5982
|
+
*/
|
|
5983
|
+
preconnectLinks = null;
|
|
5984
|
+
/*
|
|
5985
|
+
* Keep track of all already seen origin URLs to avoid repeating the same check.
|
|
5986
|
+
*/
|
|
5987
|
+
alreadySeen = new Set();
|
|
5988
|
+
window = null;
|
|
5989
|
+
blocklist = new Set(INTERNAL_PRECONNECT_CHECK_BLOCKLIST);
|
|
5932
5990
|
constructor() {
|
|
5933
|
-
this.document = inject(DOCUMENT);
|
|
5934
|
-
this.isServer = isPlatformServer(inject(PLATFORM_ID));
|
|
5935
|
-
/**
|
|
5936
|
-
* Set of <link rel="preconnect"> tags found on this page.
|
|
5937
|
-
* The `null` value indicates that there was no DOM query operation performed.
|
|
5938
|
-
*/
|
|
5939
|
-
this.preconnectLinks = null;
|
|
5940
|
-
/*
|
|
5941
|
-
* Keep track of all already seen origin URLs to avoid repeating the same check.
|
|
5942
|
-
*/
|
|
5943
|
-
this.alreadySeen = new Set();
|
|
5944
|
-
this.window = null;
|
|
5945
|
-
this.blocklist = new Set(INTERNAL_PRECONNECT_CHECK_BLOCKLIST);
|
|
5946
5991
|
assertDevMode('preconnect link checker');
|
|
5947
5992
|
const win = this.document.defaultView;
|
|
5948
5993
|
if (typeof win !== 'undefined') {
|
|
@@ -6005,10 +6050,10 @@ class PreconnectLinkChecker {
|
|
|
6005
6050
|
this.preconnectLinks?.clear();
|
|
6006
6051
|
this.alreadySeen.clear();
|
|
6007
6052
|
}
|
|
6008
|
-
static
|
|
6009
|
-
static
|
|
6053
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: PreconnectLinkChecker, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
6054
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: PreconnectLinkChecker, providedIn: 'root' });
|
|
6010
6055
|
}
|
|
6011
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
6056
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: PreconnectLinkChecker, decorators: [{
|
|
6012
6057
|
type: Injectable,
|
|
6013
6058
|
args: [{ providedIn: 'root' }]
|
|
6014
6059
|
}], ctorParameters: () => [] });
|
|
@@ -6050,10 +6095,8 @@ const PRELOADED_IMAGES = new InjectionToken('NG_OPTIMIZED_PRELOADED_IMAGES', {
|
|
|
6050
6095
|
* configured default preloaded images limit: {@link DEFAULT_PRELOADED_IMAGES_LIMIT}.
|
|
6051
6096
|
*/
|
|
6052
6097
|
class PreloadLinkCreator {
|
|
6053
|
-
|
|
6054
|
-
|
|
6055
|
-
this.document = inject(DOCUMENT);
|
|
6056
|
-
}
|
|
6098
|
+
preloadedImages = inject(PRELOADED_IMAGES);
|
|
6099
|
+
document = inject(DOCUMENT);
|
|
6057
6100
|
/**
|
|
6058
6101
|
* @description Add a preload `<link>` to the `<head>` of the `index.html` that is served from the
|
|
6059
6102
|
* server while using Angular Universal and SSR to kick off image loads for high priority images.
|
|
@@ -6097,10 +6140,10 @@ class PreloadLinkCreator {
|
|
|
6097
6140
|
}
|
|
6098
6141
|
renderer.appendChild(this.document.head, preload);
|
|
6099
6142
|
}
|
|
6100
|
-
static
|
|
6101
|
-
static
|
|
6143
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: PreloadLinkCreator, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
6144
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: PreloadLinkCreator, providedIn: 'root' });
|
|
6102
6145
|
}
|
|
6103
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
6146
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: PreloadLinkCreator, decorators: [{
|
|
6104
6147
|
type: Injectable,
|
|
6105
6148
|
args: [{ providedIn: 'root' }]
|
|
6106
6149
|
}] });
|
|
@@ -6300,37 +6343,104 @@ function resetImagePriorityCount() {
|
|
|
6300
6343
|
* @publicApi
|
|
6301
6344
|
*/
|
|
6302
6345
|
class NgOptimizedImage {
|
|
6303
|
-
|
|
6304
|
-
|
|
6305
|
-
|
|
6306
|
-
|
|
6307
|
-
|
|
6308
|
-
|
|
6309
|
-
|
|
6310
|
-
|
|
6311
|
-
|
|
6312
|
-
|
|
6313
|
-
|
|
6314
|
-
|
|
6315
|
-
|
|
6316
|
-
|
|
6317
|
-
|
|
6318
|
-
|
|
6319
|
-
|
|
6320
|
-
|
|
6321
|
-
|
|
6322
|
-
|
|
6323
|
-
|
|
6324
|
-
|
|
6325
|
-
|
|
6326
|
-
|
|
6327
|
-
|
|
6328
|
-
|
|
6329
|
-
|
|
6330
|
-
|
|
6331
|
-
|
|
6332
|
-
|
|
6333
|
-
|
|
6346
|
+
imageLoader = inject(IMAGE_LOADER);
|
|
6347
|
+
config = processConfig(inject(ɵIMAGE_CONFIG));
|
|
6348
|
+
renderer = inject(Renderer2);
|
|
6349
|
+
imgElement = inject(ElementRef).nativeElement;
|
|
6350
|
+
injector = inject(Injector);
|
|
6351
|
+
isServer = isPlatformServer(inject(PLATFORM_ID));
|
|
6352
|
+
preloadLinkCreator = inject(PreloadLinkCreator);
|
|
6353
|
+
// a LCP image observer - should be injected only in the dev mode
|
|
6354
|
+
lcpObserver = ngDevMode ? this.injector.get(LCPImageObserver) : null;
|
|
6355
|
+
/**
|
|
6356
|
+
* Calculate the rewritten `src` once and store it.
|
|
6357
|
+
* This is needed to avoid repetitive calculations and make sure the directive cleanup in the
|
|
6358
|
+
* `ngOnDestroy` does not rely on the `IMAGE_LOADER` logic (which in turn can rely on some other
|
|
6359
|
+
* instance that might be already destroyed).
|
|
6360
|
+
*/
|
|
6361
|
+
_renderedSrc = null;
|
|
6362
|
+
/**
|
|
6363
|
+
* Name of the source image.
|
|
6364
|
+
* Image name will be processed by the image loader and the final URL will be applied as the `src`
|
|
6365
|
+
* property of the image.
|
|
6366
|
+
*/
|
|
6367
|
+
ngSrc;
|
|
6368
|
+
/**
|
|
6369
|
+
* A comma separated list of width or density descriptors.
|
|
6370
|
+
* The image name will be taken from `ngSrc` and combined with the list of width or density
|
|
6371
|
+
* descriptors to generate the final `srcset` property of the image.
|
|
6372
|
+
*
|
|
6373
|
+
* Example:
|
|
6374
|
+
* ```
|
|
6375
|
+
* <img ngSrc="hello.jpg" ngSrcset="100w, 200w" /> =>
|
|
6376
|
+
* <img src="path/hello.jpg" srcset="path/hello.jpg?w=100 100w, path/hello.jpg?w=200 200w" />
|
|
6377
|
+
* ```
|
|
6378
|
+
*/
|
|
6379
|
+
ngSrcset;
|
|
6380
|
+
/**
|
|
6381
|
+
* The base `sizes` attribute passed through to the `<img>` element.
|
|
6382
|
+
* Providing sizes causes the image to create an automatic responsive srcset.
|
|
6383
|
+
*/
|
|
6384
|
+
sizes;
|
|
6385
|
+
/**
|
|
6386
|
+
* For responsive images: the intrinsic width of the image in pixels.
|
|
6387
|
+
* For fixed size images: the desired rendered width of the image in pixels.
|
|
6388
|
+
*/
|
|
6389
|
+
width;
|
|
6390
|
+
/**
|
|
6391
|
+
* For responsive images: the intrinsic height of the image in pixels.
|
|
6392
|
+
* For fixed size images: the desired rendered height of the image in pixels.
|
|
6393
|
+
*/
|
|
6394
|
+
height;
|
|
6395
|
+
/**
|
|
6396
|
+
* The desired loading behavior (lazy, eager, or auto). Defaults to `lazy`,
|
|
6397
|
+
* which is recommended for most images.
|
|
6398
|
+
*
|
|
6399
|
+
* Warning: Setting images as loading="eager" or loading="auto" marks them
|
|
6400
|
+
* as non-priority images and can hurt loading performance. For images which
|
|
6401
|
+
* may be the LCP element, use the `priority` attribute instead of `loading`.
|
|
6402
|
+
*/
|
|
6403
|
+
loading;
|
|
6404
|
+
/**
|
|
6405
|
+
* Indicates whether this image should have a high priority.
|
|
6406
|
+
*/
|
|
6407
|
+
priority = false;
|
|
6408
|
+
/**
|
|
6409
|
+
* Data to pass through to custom loaders.
|
|
6410
|
+
*/
|
|
6411
|
+
loaderParams;
|
|
6412
|
+
/**
|
|
6413
|
+
* Disables automatic srcset generation for this image.
|
|
6414
|
+
*/
|
|
6415
|
+
disableOptimizedSrcset = false;
|
|
6416
|
+
/**
|
|
6417
|
+
* Sets the image to "fill mode", which eliminates the height/width requirement and adds
|
|
6418
|
+
* styles such that the image fills its containing element.
|
|
6419
|
+
*/
|
|
6420
|
+
fill = false;
|
|
6421
|
+
/**
|
|
6422
|
+
* A URL or data URL for an image to be used as a placeholder while this image loads.
|
|
6423
|
+
*/
|
|
6424
|
+
placeholder;
|
|
6425
|
+
/**
|
|
6426
|
+
* Configuration object for placeholder settings. Options:
|
|
6427
|
+
* * blur: Setting this to false disables the automatic CSS blur.
|
|
6428
|
+
*/
|
|
6429
|
+
placeholderConfig;
|
|
6430
|
+
/**
|
|
6431
|
+
* Value of the `src` attribute if set on the host `<img>` element.
|
|
6432
|
+
* This input is exclusively read to assert that `src` is not set in conflict
|
|
6433
|
+
* with `ngSrc` and that images don't start to load until a lazy loading strategy is set.
|
|
6434
|
+
* @internal
|
|
6435
|
+
*/
|
|
6436
|
+
src;
|
|
6437
|
+
/**
|
|
6438
|
+
* Value of the `srcset` attribute if set on the host `<img>` element.
|
|
6439
|
+
* This input is exclusively read to assert that `srcset` is not set in conflict
|
|
6440
|
+
* with `ngSrcset` and that images don't start to load until a lazy loading strategy is set.
|
|
6441
|
+
* @internal
|
|
6442
|
+
*/
|
|
6443
|
+
srcset;
|
|
6334
6444
|
/** @nodoc */
|
|
6335
6445
|
ngOnInit() {
|
|
6336
6446
|
ɵperformanceMarkFeature('NgOptimizedImage');
|
|
@@ -6605,10 +6715,10 @@ class NgOptimizedImage {
|
|
|
6605
6715
|
setHostAttribute(name, value) {
|
|
6606
6716
|
this.renderer.setAttribute(this.imgElement, name, value);
|
|
6607
6717
|
}
|
|
6608
|
-
static
|
|
6609
|
-
static
|
|
6718
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgOptimizedImage, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
6719
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.0.0-rc.1", type: NgOptimizedImage, isStandalone: true, selector: "img[ngSrc]", inputs: { ngSrc: ["ngSrc", "ngSrc", unwrapSafeUrl], ngSrcset: "ngSrcset", sizes: "sizes", width: ["width", "width", numberAttribute], height: ["height", "height", numberAttribute], loading: "loading", priority: ["priority", "priority", booleanAttribute], loaderParams: "loaderParams", disableOptimizedSrcset: ["disableOptimizedSrcset", "disableOptimizedSrcset", booleanAttribute], fill: ["fill", "fill", booleanAttribute], placeholder: ["placeholder", "placeholder", booleanOrUrlAttribute], placeholderConfig: "placeholderConfig", src: "src", srcset: "srcset" }, host: { properties: { "style.position": "fill ? \"absolute\" : null", "style.width": "fill ? \"100%\" : null", "style.height": "fill ? \"100%\" : null", "style.inset": "fill ? \"0\" : null", "style.background-size": "placeholder ? \"cover\" : null", "style.background-position": "placeholder ? \"50% 50%\" : null", "style.background-repeat": "placeholder ? \"no-repeat\" : null", "style.background-image": "placeholder ? generatePlaceholder(placeholder) : null", "style.filter": "placeholder && shouldBlurPlaceholder(placeholderConfig) ? \"blur(15px)\" : null" } }, usesOnChanges: true, ngImport: i0 });
|
|
6610
6720
|
}
|
|
6611
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-
|
|
6721
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.1", ngImport: i0, type: NgOptimizedImage, decorators: [{
|
|
6612
6722
|
type: Directive,
|
|
6613
6723
|
args: [{
|
|
6614
6724
|
standalone: true,
|