@angular/common 19.2.1 → 19.2.2
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 +220 -245
- package/fesm2022/common.mjs.map +1 -1
- package/fesm2022/http/testing.mjs +10 -14
- package/fesm2022/http/testing.mjs.map +1 -1
- package/fesm2022/http.mjs +61 -109
- package/fesm2022/http.mjs.map +1 -1
- package/fesm2022/testing.mjs +22 -41
- package/fesm2022/testing.mjs.map +1 -1
- package/fesm2022/upgrade.mjs +7 -23
- package/fesm2022/upgrade.mjs.map +1 -1
- package/http/index.d.ts +2803 -2858
- package/http/testing/index.d.ts +74 -79
- package/index.d.ts +2285 -2509
- package/package.json +2 -2
- package/testing/index.d.ts +55 -64
- package/upgrade/index.d.ts +137 -146
package/fesm2022/common.mjs
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license Angular v19.2.
|
|
2
|
+
* @license Angular v19.2.2
|
|
3
3
|
* (c) 2010-2025 Google LLC. https://angular.io/
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
7
|
import * as i0 from '@angular/core';
|
|
8
|
-
import { Injectable, InjectionToken, inject, Optional, Inject, ɵɵinject, ɵfindLocaleData, ɵLocaleDataIndex, ɵgetLocaleCurrencyCode
|
|
8
|
+
import { Injectable, InjectionToken, inject, Optional, Inject, ɵɵinject as __inject, ɵgetLocalePluralCase as _getLocalePluralCase, ɵfindLocaleData as _findLocaleData, ɵLocaleDataIndex as _LocaleDataIndex, ɵgetLocaleCurrencyCode as _getLocaleCurrencyCode, LOCALE_ID, ɵregisterLocaleData as _registerLocaleData, ɵstringify as _stringify, Input, Directive, createNgModule, NgModuleRef, ɵRuntimeError as _RuntimeError, Host, Attribute, RendererStyleFlags2, ɵisPromise as _isPromise, ɵisSubscribable as _isSubscribable, untracked, Pipe, DEFAULT_CURRENCY_CODE, NgModule, Version, ɵɵdefineInjectable as __defineInjectable, ɵformatRuntimeError as _formatRuntimeError, PLATFORM_ID, ɵIMAGE_CONFIG as _IMAGE_CONFIG, Renderer2, ElementRef, Injector, DestroyRef, ɵperformanceMarkFeature as _performanceMarkFeature, NgZone, ApplicationRef, booleanAttribute, numberAttribute, ChangeDetectorRef, ɵIMAGE_CONFIG_DEFAULTS as _IMAGE_CONFIG_DEFAULTS, ɵunwrapSafeValue as _unwrapSafeValue } from '@angular/core';
|
|
9
9
|
export { ɵIMAGE_CONFIG as IMAGE_CONFIG } from '@angular/core';
|
|
10
10
|
import { Subject } from 'rxjs';
|
|
11
11
|
|
|
@@ -30,10 +30,10 @@ class DomAdapter {
|
|
|
30
30
|
* implementations.
|
|
31
31
|
*/
|
|
32
32
|
class PlatformNavigation {
|
|
33
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
34
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
33
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: PlatformNavigation, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
34
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: PlatformNavigation, providedIn: 'platform', useFactory: () => window.navigation });
|
|
35
35
|
}
|
|
36
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: PlatformNavigation, decorators: [{
|
|
37
37
|
type: Injectable,
|
|
38
38
|
args: [{ providedIn: 'platform', useFactory: () => window.navigation }]
|
|
39
39
|
}] });
|
|
@@ -73,10 +73,10 @@ class PlatformLocation {
|
|
|
73
73
|
historyGo(relativePosition) {
|
|
74
74
|
throw new Error(ngDevMode ? 'Not implemented' : '');
|
|
75
75
|
}
|
|
76
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
77
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
76
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: PlatformLocation, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
77
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: PlatformLocation, providedIn: 'platform', useFactory: () => inject(BrowserPlatformLocation) });
|
|
78
78
|
}
|
|
79
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
79
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: PlatformLocation, decorators: [{
|
|
80
80
|
type: Injectable,
|
|
81
81
|
args: [{ providedIn: 'platform', useFactory: () => inject(BrowserPlatformLocation) }]
|
|
82
82
|
}] });
|
|
@@ -158,10 +158,10 @@ class BrowserPlatformLocation extends PlatformLocation {
|
|
|
158
158
|
getState() {
|
|
159
159
|
return this._history.state;
|
|
160
160
|
}
|
|
161
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
162
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
161
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: BrowserPlatformLocation, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
162
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: BrowserPlatformLocation, providedIn: 'platform', useFactory: () => new BrowserPlatformLocation() });
|
|
163
163
|
}
|
|
164
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
164
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: BrowserPlatformLocation, decorators: [{
|
|
165
165
|
type: Injectable,
|
|
166
166
|
args: [{
|
|
167
167
|
providedIn: 'platform',
|
|
@@ -242,10 +242,10 @@ class LocationStrategy {
|
|
|
242
242
|
historyGo(relativePosition) {
|
|
243
243
|
throw new Error(ngDevMode ? 'Not implemented' : '');
|
|
244
244
|
}
|
|
245
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
246
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
245
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: LocationStrategy, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
246
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: LocationStrategy, providedIn: 'root', useFactory: () => inject(PathLocationStrategy) });
|
|
247
247
|
}
|
|
248
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
248
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: LocationStrategy, decorators: [{
|
|
249
249
|
type: Injectable,
|
|
250
250
|
args: [{ providedIn: 'root', useFactory: () => inject(PathLocationStrategy) }]
|
|
251
251
|
}] });
|
|
@@ -357,10 +357,10 @@ class PathLocationStrategy extends LocationStrategy {
|
|
|
357
357
|
historyGo(relativePosition = 0) {
|
|
358
358
|
this._platformLocation.historyGo?.(relativePosition);
|
|
359
359
|
}
|
|
360
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
361
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
360
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: PathLocationStrategy, deps: [{ token: PlatformLocation }, { token: APP_BASE_HREF, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
361
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: PathLocationStrategy, providedIn: 'root' });
|
|
362
362
|
}
|
|
363
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
363
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: PathLocationStrategy, decorators: [{
|
|
364
364
|
type: Injectable,
|
|
365
365
|
args: [{ providedIn: 'root' }]
|
|
366
366
|
}], ctorParameters: () => [{ type: PlatformLocation }, { type: undefined, decorators: [{
|
|
@@ -443,10 +443,10 @@ class HashLocationStrategy extends LocationStrategy {
|
|
|
443
443
|
historyGo(relativePosition = 0) {
|
|
444
444
|
this._platformLocation.historyGo?.(relativePosition);
|
|
445
445
|
}
|
|
446
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
447
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
446
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: HashLocationStrategy, deps: [{ token: PlatformLocation }, { token: APP_BASE_HREF, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
447
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: HashLocationStrategy });
|
|
448
448
|
}
|
|
449
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
449
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: HashLocationStrategy, decorators: [{
|
|
450
450
|
type: Injectable
|
|
451
451
|
}], ctorParameters: () => [{ type: PlatformLocation }, { type: undefined, decorators: [{
|
|
452
452
|
type: Optional
|
|
@@ -700,10 +700,10 @@ class Location {
|
|
|
700
700
|
* @returns The URL string, modified if needed.
|
|
701
701
|
*/
|
|
702
702
|
static stripTrailingSlash = stripTrailingSlash;
|
|
703
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
704
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
703
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: Location, deps: [{ token: LocationStrategy }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
704
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: Location, providedIn: 'root', useFactory: createLocation });
|
|
705
705
|
}
|
|
706
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
706
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: Location, decorators: [{
|
|
707
707
|
type: Injectable,
|
|
708
708
|
args: [{
|
|
709
709
|
providedIn: 'root',
|
|
@@ -712,7 +712,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImpor
|
|
|
712
712
|
}]
|
|
713
713
|
}], ctorParameters: () => [{ type: LocationStrategy }] });
|
|
714
714
|
function createLocation() {
|
|
715
|
-
return new Location(
|
|
715
|
+
return new Location(__inject(LocationStrategy));
|
|
716
716
|
}
|
|
717
717
|
function _stripBasePath(basePath, url) {
|
|
718
718
|
if (!basePath || !url.startsWith(basePath)) {
|
|
@@ -971,7 +971,7 @@ var WeekDay;
|
|
|
971
971
|
* This function serves no purpose when relying on the `Intl` API.
|
|
972
972
|
*/
|
|
973
973
|
function getLocaleId(locale) {
|
|
974
|
-
return
|
|
974
|
+
return _findLocaleData(locale)[_LocaleDataIndex.LocaleId];
|
|
975
975
|
}
|
|
976
976
|
/**
|
|
977
977
|
* Retrieves day period strings for the given locale.
|
|
@@ -988,10 +988,10 @@ function getLocaleId(locale) {
|
|
|
988
988
|
* Use `Intl.DateTimeFormat` for date formating instead.
|
|
989
989
|
*/
|
|
990
990
|
function getLocaleDayPeriods(locale, formStyle, width) {
|
|
991
|
-
const data =
|
|
991
|
+
const data = _findLocaleData(locale);
|
|
992
992
|
const amPmData = [
|
|
993
|
-
data[
|
|
994
|
-
data[
|
|
993
|
+
data[_LocaleDataIndex.DayPeriodsFormat],
|
|
994
|
+
data[_LocaleDataIndex.DayPeriodsStandalone],
|
|
995
995
|
];
|
|
996
996
|
const amPm = getLastDefinedValue(amPmData, formStyle);
|
|
997
997
|
return getLastDefinedValue(amPm, width);
|
|
@@ -1012,10 +1012,10 @@ function getLocaleDayPeriods(locale, formStyle, width) {
|
|
|
1012
1012
|
* Use `Intl.DateTimeFormat` for date formating instead.
|
|
1013
1013
|
*/
|
|
1014
1014
|
function getLocaleDayNames(locale, formStyle, width) {
|
|
1015
|
-
const data =
|
|
1015
|
+
const data = _findLocaleData(locale);
|
|
1016
1016
|
const daysData = [
|
|
1017
|
-
data[
|
|
1018
|
-
data[
|
|
1017
|
+
data[_LocaleDataIndex.DaysFormat],
|
|
1018
|
+
data[_LocaleDataIndex.DaysStandalone],
|
|
1019
1019
|
];
|
|
1020
1020
|
const days = getLastDefinedValue(daysData, formStyle);
|
|
1021
1021
|
return getLastDefinedValue(days, width);
|
|
@@ -1036,10 +1036,10 @@ function getLocaleDayNames(locale, formStyle, width) {
|
|
|
1036
1036
|
* Use `Intl.DateTimeFormat` for date formating instead.
|
|
1037
1037
|
*/
|
|
1038
1038
|
function getLocaleMonthNames(locale, formStyle, width) {
|
|
1039
|
-
const data =
|
|
1039
|
+
const data = _findLocaleData(locale);
|
|
1040
1040
|
const monthsData = [
|
|
1041
|
-
data[
|
|
1042
|
-
data[
|
|
1041
|
+
data[_LocaleDataIndex.MonthsFormat],
|
|
1042
|
+
data[_LocaleDataIndex.MonthsStandalone],
|
|
1043
1043
|
];
|
|
1044
1044
|
const months = getLastDefinedValue(monthsData, formStyle);
|
|
1045
1045
|
return getLastDefinedValue(months, width);
|
|
@@ -1059,8 +1059,8 @@ function getLocaleMonthNames(locale, formStyle, width) {
|
|
|
1059
1059
|
* Use `Intl.DateTimeFormat` for date formating instead.
|
|
1060
1060
|
*/
|
|
1061
1061
|
function getLocaleEraNames(locale, width) {
|
|
1062
|
-
const data =
|
|
1063
|
-
const erasData = data[
|
|
1062
|
+
const data = _findLocaleData(locale);
|
|
1063
|
+
const erasData = data[_LocaleDataIndex.Eras];
|
|
1064
1064
|
return getLastDefinedValue(erasData, width);
|
|
1065
1065
|
}
|
|
1066
1066
|
/**
|
|
@@ -1081,8 +1081,8 @@ function getLocaleEraNames(locale, width) {
|
|
|
1081
1081
|
* - Other librairies like [`date-fns`](https://date-fns.org/), [`day.js`](https://day.js.org/en/) or [`weekstart`](https://www.npmjs.com/package/weekstart) library provide their own locale based data for the first day of the week.
|
|
1082
1082
|
*/
|
|
1083
1083
|
function getLocaleFirstDayOfWeek(locale) {
|
|
1084
|
-
const data =
|
|
1085
|
-
return data[
|
|
1084
|
+
const data = _findLocaleData(locale);
|
|
1085
|
+
return data[_LocaleDataIndex.FirstDayOfWeek];
|
|
1086
1086
|
}
|
|
1087
1087
|
/**
|
|
1088
1088
|
* Range of week days that are considered the week-end for the given locale.
|
|
@@ -1098,8 +1098,8 @@ function getLocaleFirstDayOfWeek(locale) {
|
|
|
1098
1098
|
* Libraries like [`Luxon`](https://moment.github.io/luxon/#/) rely on `Intl` but fallback on the ISO 8601 definition (Saturday+Sunday) if `getWeekInfo` is not supported .
|
|
1099
1099
|
*/
|
|
1100
1100
|
function getLocaleWeekEndRange(locale) {
|
|
1101
|
-
const data =
|
|
1102
|
-
return data[
|
|
1101
|
+
const data = _findLocaleData(locale);
|
|
1102
|
+
return data[_LocaleDataIndex.WeekendRange];
|
|
1103
1103
|
}
|
|
1104
1104
|
/**
|
|
1105
1105
|
* Retrieves a localized date-value formatting string.
|
|
@@ -1116,8 +1116,8 @@ function getLocaleWeekEndRange(locale) {
|
|
|
1116
1116
|
* Use `Intl.DateTimeFormat` for date formating instead.
|
|
1117
1117
|
*/
|
|
1118
1118
|
function getLocaleDateFormat(locale, width) {
|
|
1119
|
-
const data =
|
|
1120
|
-
return getLastDefinedValue(data[
|
|
1119
|
+
const data = _findLocaleData(locale);
|
|
1120
|
+
return getLastDefinedValue(data[_LocaleDataIndex.DateFormat], width);
|
|
1121
1121
|
}
|
|
1122
1122
|
/**
|
|
1123
1123
|
* Retrieves a localized time-value formatting string.
|
|
@@ -1133,8 +1133,8 @@ function getLocaleDateFormat(locale, width) {
|
|
|
1133
1133
|
* Use `Intl.DateTimeFormat` for date formating instead.
|
|
1134
1134
|
*/
|
|
1135
1135
|
function getLocaleTimeFormat(locale, width) {
|
|
1136
|
-
const data =
|
|
1137
|
-
return getLastDefinedValue(data[
|
|
1136
|
+
const data = _findLocaleData(locale);
|
|
1137
|
+
return getLastDefinedValue(data[_LocaleDataIndex.TimeFormat], width);
|
|
1138
1138
|
}
|
|
1139
1139
|
/**
|
|
1140
1140
|
* Retrieves a localized date-time formatting string.
|
|
@@ -1151,8 +1151,8 @@ function getLocaleTimeFormat(locale, width) {
|
|
|
1151
1151
|
* Use `Intl.DateTimeFormat` for date formating instead.
|
|
1152
1152
|
*/
|
|
1153
1153
|
function getLocaleDateTimeFormat(locale, width) {
|
|
1154
|
-
const data =
|
|
1155
|
-
const dateTimeFormatData = data[
|
|
1154
|
+
const data = _findLocaleData(locale);
|
|
1155
|
+
const dateTimeFormatData = data[_LocaleDataIndex.DateTimeFormat];
|
|
1156
1156
|
return getLastDefinedValue(dateTimeFormatData, width);
|
|
1157
1157
|
}
|
|
1158
1158
|
/**
|
|
@@ -1169,14 +1169,14 @@ function getLocaleDateTimeFormat(locale, width) {
|
|
|
1169
1169
|
* Use `Intl.NumberFormat` to format numbers instead.
|
|
1170
1170
|
*/
|
|
1171
1171
|
function getLocaleNumberSymbol(locale, symbol) {
|
|
1172
|
-
const data =
|
|
1173
|
-
const res = data[
|
|
1172
|
+
const data = _findLocaleData(locale);
|
|
1173
|
+
const res = data[_LocaleDataIndex.NumberSymbols][symbol];
|
|
1174
1174
|
if (typeof res === 'undefined') {
|
|
1175
1175
|
if (symbol === NumberSymbol.CurrencyDecimal) {
|
|
1176
|
-
return data[
|
|
1176
|
+
return data[_LocaleDataIndex.NumberSymbols][NumberSymbol.Decimal];
|
|
1177
1177
|
}
|
|
1178
1178
|
else if (symbol === NumberSymbol.CurrencyGroup) {
|
|
1179
|
-
return data[
|
|
1179
|
+
return data[_LocaleDataIndex.NumberSymbols][NumberSymbol.Group];
|
|
1180
1180
|
}
|
|
1181
1181
|
}
|
|
1182
1182
|
return res;
|
|
@@ -1220,8 +1220,8 @@ function getLocaleNumberSymbol(locale, symbol) {
|
|
|
1220
1220
|
* Let `Intl.NumberFormat` determine the number format instead
|
|
1221
1221
|
*/
|
|
1222
1222
|
function getLocaleNumberFormat(locale, type) {
|
|
1223
|
-
const data =
|
|
1224
|
-
return data[
|
|
1223
|
+
const data = _findLocaleData(locale);
|
|
1224
|
+
return data[_LocaleDataIndex.NumberFormats][type];
|
|
1225
1225
|
}
|
|
1226
1226
|
/**
|
|
1227
1227
|
* Retrieves the symbol used to represent the currency for the main country
|
|
@@ -1237,8 +1237,8 @@ function getLocaleNumberFormat(locale, type) {
|
|
|
1237
1237
|
* @deprecated Use the `Intl` API to format a currency with from currency code
|
|
1238
1238
|
*/
|
|
1239
1239
|
function getLocaleCurrencySymbol(locale) {
|
|
1240
|
-
const data =
|
|
1241
|
-
return data[
|
|
1240
|
+
const data = _findLocaleData(locale);
|
|
1241
|
+
return data[_LocaleDataIndex.CurrencySymbol] || null;
|
|
1242
1242
|
}
|
|
1243
1243
|
/**
|
|
1244
1244
|
* Retrieves the name of the currency for the main country corresponding
|
|
@@ -1253,8 +1253,8 @@ function getLocaleCurrencySymbol(locale) {
|
|
|
1253
1253
|
* @deprecated Use the `Intl` API to format a currency with from currency code
|
|
1254
1254
|
*/
|
|
1255
1255
|
function getLocaleCurrencyName(locale) {
|
|
1256
|
-
const data =
|
|
1257
|
-
return data[
|
|
1256
|
+
const data = _findLocaleData(locale);
|
|
1257
|
+
return data[_LocaleDataIndex.CurrencyName] || null;
|
|
1258
1258
|
}
|
|
1259
1259
|
/**
|
|
1260
1260
|
* Retrieves the default currency code for the given locale.
|
|
@@ -1270,7 +1270,7 @@ function getLocaleCurrencyName(locale) {
|
|
|
1270
1270
|
* Time relative currency data is provided by the CLDR project. See https://www.unicode.org/cldr/charts/44/supplemental/detailed_territory_currency_information.html
|
|
1271
1271
|
*/
|
|
1272
1272
|
function getLocaleCurrencyCode(locale) {
|
|
1273
|
-
return
|
|
1273
|
+
return _getLocaleCurrencyCode(locale);
|
|
1274
1274
|
}
|
|
1275
1275
|
/**
|
|
1276
1276
|
* Retrieves the currency values for a given locale.
|
|
@@ -1279,8 +1279,8 @@ function getLocaleCurrencyCode(locale) {
|
|
|
1279
1279
|
* @see [Internationalization (i18n) Guide](guide/i18n)
|
|
1280
1280
|
*/
|
|
1281
1281
|
function getLocaleCurrencies(locale) {
|
|
1282
|
-
const data =
|
|
1283
|
-
return data[
|
|
1282
|
+
const data = _findLocaleData(locale);
|
|
1283
|
+
return data[_LocaleDataIndex.Currencies];
|
|
1284
1284
|
}
|
|
1285
1285
|
/**
|
|
1286
1286
|
* @publicApi
|
|
@@ -1288,10 +1288,10 @@ function getLocaleCurrencies(locale) {
|
|
|
1288
1288
|
* @deprecated Angular recommends relying on the `Intl` API for i18n.
|
|
1289
1289
|
* Use `Intl.PluralRules` instead
|
|
1290
1290
|
*/
|
|
1291
|
-
const getLocalePluralCase =
|
|
1291
|
+
const getLocalePluralCase = _getLocalePluralCase;
|
|
1292
1292
|
function checkFullData(data) {
|
|
1293
|
-
if (!data[
|
|
1294
|
-
throw new Error(`Missing extra locale data for the locale "${data[
|
|
1293
|
+
if (!data[_LocaleDataIndex.ExtraData]) {
|
|
1294
|
+
throw new Error(`Missing extra locale data for the locale "${data[_LocaleDataIndex.LocaleId]}". Use "registerLocaleData" to load new data. See the "I18n guide" on angular.io to know more.`);
|
|
1295
1295
|
}
|
|
1296
1296
|
}
|
|
1297
1297
|
/**
|
|
@@ -1320,9 +1320,9 @@ function checkFullData(data) {
|
|
|
1320
1320
|
* Let `Intl.DateTimeFormat` determine the day period instead.
|
|
1321
1321
|
*/
|
|
1322
1322
|
function getLocaleExtraDayPeriodRules(locale) {
|
|
1323
|
-
const data =
|
|
1323
|
+
const data = _findLocaleData(locale);
|
|
1324
1324
|
checkFullData(data);
|
|
1325
|
-
const rules = data[
|
|
1325
|
+
const rules = data[_LocaleDataIndex.ExtraData][2 /* ɵExtraLocaleDataIndex.ExtraDayPeriodsRules */] || [];
|
|
1326
1326
|
return rules.map((rule) => {
|
|
1327
1327
|
if (typeof rule === 'string') {
|
|
1328
1328
|
return extractTime(rule);
|
|
@@ -1351,11 +1351,11 @@ function getLocaleExtraDayPeriodRules(locale) {
|
|
|
1351
1351
|
* To extract a day period use `Intl.DateTimeFormat` with the `dayPeriod` option instead.
|
|
1352
1352
|
*/
|
|
1353
1353
|
function getLocaleExtraDayPeriods(locale, formStyle, width) {
|
|
1354
|
-
const data =
|
|
1354
|
+
const data = _findLocaleData(locale);
|
|
1355
1355
|
checkFullData(data);
|
|
1356
1356
|
const dayPeriodsData = [
|
|
1357
|
-
data[
|
|
1358
|
-
data[
|
|
1357
|
+
data[_LocaleDataIndex.ExtraData][0 /* ɵExtraLocaleDataIndex.ExtraDayPeriodFormats */],
|
|
1358
|
+
data[_LocaleDataIndex.ExtraData][1 /* ɵExtraLocaleDataIndex.ExtraDayPeriodStandalone */],
|
|
1359
1359
|
];
|
|
1360
1360
|
const dayPeriods = getLastDefinedValue(dayPeriodsData, formStyle) || [];
|
|
1361
1361
|
return getLastDefinedValue(dayPeriods, width) || [];
|
|
@@ -1374,8 +1374,8 @@ function getLocaleExtraDayPeriods(locale, formStyle, width) {
|
|
|
1374
1374
|
* 3rd party alternatives like [`rtl-detect`](https://www.npmjs.com/package/rtl-detect) can work around this issue.
|
|
1375
1375
|
*/
|
|
1376
1376
|
function getLocaleDirection(locale) {
|
|
1377
|
-
const data =
|
|
1378
|
-
return data[
|
|
1377
|
+
const data = _findLocaleData(locale);
|
|
1378
|
+
return data[_LocaleDataIndex.Directionality];
|
|
1379
1379
|
}
|
|
1380
1380
|
/**
|
|
1381
1381
|
* Retrieves the first value that is defined in an array, going backwards from an index position.
|
|
@@ -1505,7 +1505,7 @@ function formatDate(value, format, locale, timezone) {
|
|
|
1505
1505
|
let dateTimezoneOffset = date.getTimezoneOffset();
|
|
1506
1506
|
if (timezone) {
|
|
1507
1507
|
dateTimezoneOffset = timezoneToOffset(timezone, dateTimezoneOffset);
|
|
1508
|
-
date = convertTimezoneToLocal(date, timezone
|
|
1508
|
+
date = convertTimezoneToLocal(date, timezone);
|
|
1509
1509
|
}
|
|
1510
1510
|
let text = '';
|
|
1511
1511
|
parts.forEach((value) => {
|
|
@@ -2104,7 +2104,7 @@ function addDateMinutes(date, minutes) {
|
|
|
2104
2104
|
return date;
|
|
2105
2105
|
}
|
|
2106
2106
|
function convertTimezoneToLocal(date, timezone, reverse) {
|
|
2107
|
-
const reverseValue =
|
|
2107
|
+
const reverseValue = -1 ;
|
|
2108
2108
|
const dateTimezoneOffset = date.getTimezoneOffset();
|
|
2109
2109
|
const timezoneOffset = timezoneToOffset(timezone, dateTimezoneOffset);
|
|
2110
2110
|
return addDateMinutes(date, reverseValue * (timezoneOffset - dateTimezoneOffset));
|
|
@@ -2580,10 +2580,10 @@ function parseIntAutoRadix(text) {
|
|
|
2580
2580
|
* @publicApi
|
|
2581
2581
|
*/
|
|
2582
2582
|
class NgLocalization {
|
|
2583
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
2584
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
2583
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgLocalization, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2584
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgLocalization, providedIn: 'root', useFactory: (locale) => new NgLocaleLocalization(locale), deps: [{ token: LOCALE_ID }] });
|
|
2585
2585
|
}
|
|
2586
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
2586
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgLocalization, decorators: [{
|
|
2587
2587
|
type: Injectable,
|
|
2588
2588
|
args: [{
|
|
2589
2589
|
providedIn: 'root',
|
|
@@ -2638,10 +2638,10 @@ class NgLocaleLocalization extends NgLocalization {
|
|
|
2638
2638
|
return 'other';
|
|
2639
2639
|
}
|
|
2640
2640
|
}
|
|
2641
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
2642
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
2641
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgLocaleLocalization, deps: [{ token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2642
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgLocaleLocalization });
|
|
2643
2643
|
}
|
|
2644
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
2644
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgLocaleLocalization, decorators: [{
|
|
2645
2645
|
type: Injectable
|
|
2646
2646
|
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
2647
2647
|
type: Inject,
|
|
@@ -2658,7 +2658,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImpor
|
|
|
2658
2658
|
* @publicApi
|
|
2659
2659
|
*/
|
|
2660
2660
|
function registerLocaleData(data, localeId, extraData) {
|
|
2661
|
-
return
|
|
2661
|
+
return _registerLocaleData(data, localeId, extraData);
|
|
2662
2662
|
}
|
|
2663
2663
|
|
|
2664
2664
|
function parseCookieValue(cookieStr, name) {
|
|
@@ -2807,7 +2807,7 @@ class NgClass {
|
|
|
2807
2807
|
_toggleClass(klass, enabled) {
|
|
2808
2808
|
if (ngDevMode) {
|
|
2809
2809
|
if (typeof klass !== 'string') {
|
|
2810
|
-
throw new Error(`NgClass can only toggle CSS classes expressed as strings, got ${
|
|
2810
|
+
throw new Error(`NgClass can only toggle CSS classes expressed as strings, got ${_stringify(klass)}`);
|
|
2811
2811
|
}
|
|
2812
2812
|
}
|
|
2813
2813
|
klass = klass.trim();
|
|
@@ -2822,10 +2822,10 @@ class NgClass {
|
|
|
2822
2822
|
});
|
|
2823
2823
|
}
|
|
2824
2824
|
}
|
|
2825
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
2826
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.
|
|
2825
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgClass, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
2826
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.2", type: NgClass, isStandalone: true, selector: "[ngClass]", inputs: { klass: ["class", "klass"], ngClass: "ngClass" }, ngImport: i0 });
|
|
2827
2827
|
}
|
|
2828
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
2828
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgClass, decorators: [{
|
|
2829
2829
|
type: Directive,
|
|
2830
2830
|
args: [{
|
|
2831
2831
|
selector: '[ngClass]',
|
|
@@ -3012,10 +3012,10 @@ class NgComponentOutlet {
|
|
|
3012
3012
|
}
|
|
3013
3013
|
}
|
|
3014
3014
|
}
|
|
3015
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
3016
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.
|
|
3015
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgComponentOutlet, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3016
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.2", type: NgComponentOutlet, isStandalone: true, selector: "[ngComponentOutlet]", inputs: { ngComponentOutlet: "ngComponentOutlet", ngComponentOutletInputs: "ngComponentOutletInputs", ngComponentOutletInjector: "ngComponentOutletInjector", ngComponentOutletContent: "ngComponentOutletContent", ngComponentOutletNgModule: "ngComponentOutletNgModule", ngComponentOutletNgModuleFactory: "ngComponentOutletNgModuleFactory" }, exportAs: ["ngComponentOutlet"], usesOnChanges: true, ngImport: i0 });
|
|
3017
3017
|
}
|
|
3018
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
3018
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgComponentOutlet, decorators: [{
|
|
3019
3019
|
type: Directive,
|
|
3020
3020
|
args: [{
|
|
3021
3021
|
selector: '[ngComponentOutlet]',
|
|
@@ -3267,7 +3267,7 @@ class NgForOf {
|
|
|
3267
3267
|
if (typeof value === 'object') {
|
|
3268
3268
|
errorMessage += ' Did you mean to use the keyvalue pipe?';
|
|
3269
3269
|
}
|
|
3270
|
-
throw new
|
|
3270
|
+
throw new _RuntimeError(-2200 /* RuntimeErrorCode.NG_FOR_MISSING_DIFFER */, errorMessage);
|
|
3271
3271
|
}
|
|
3272
3272
|
}
|
|
3273
3273
|
else {
|
|
@@ -3322,10 +3322,10 @@ class NgForOf {
|
|
|
3322
3322
|
static ngTemplateContextGuard(dir, ctx) {
|
|
3323
3323
|
return true;
|
|
3324
3324
|
}
|
|
3325
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
3326
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.
|
|
3325
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgForOf, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }, { token: i0.IterableDiffers }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3326
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.2", type: NgForOf, isStandalone: true, selector: "[ngFor][ngForOf]", inputs: { ngForOf: "ngForOf", ngForTrackBy: "ngForTrackBy", ngForTemplate: "ngForTemplate" }, ngImport: i0 });
|
|
3327
3327
|
}
|
|
3328
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
3328
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgForOf, decorators: [{
|
|
3329
3329
|
type: Directive,
|
|
3330
3330
|
args: [{
|
|
3331
3331
|
selector: '[ngFor][ngForOf]',
|
|
@@ -3505,7 +3505,7 @@ class NgIf {
|
|
|
3505
3505
|
* A template to show if the condition expression evaluates to true.
|
|
3506
3506
|
*/
|
|
3507
3507
|
set ngIfThen(templateRef) {
|
|
3508
|
-
assertTemplate('
|
|
3508
|
+
assertTemplate(templateRef, (typeof ngDevMode === 'undefined' || ngDevMode) && 'ngIfThen');
|
|
3509
3509
|
this._thenTemplateRef = templateRef;
|
|
3510
3510
|
this._thenViewRef = null; // clear previous view if any.
|
|
3511
3511
|
this._updateView();
|
|
@@ -3514,7 +3514,7 @@ class NgIf {
|
|
|
3514
3514
|
* A template to show if the condition expression evaluates to false.
|
|
3515
3515
|
*/
|
|
3516
3516
|
set ngIfElse(templateRef) {
|
|
3517
|
-
assertTemplate('
|
|
3517
|
+
assertTemplate(templateRef, (typeof ngDevMode === 'undefined' || ngDevMode) && 'ngIfElse');
|
|
3518
3518
|
this._elseTemplateRef = templateRef;
|
|
3519
3519
|
this._elseViewRef = null; // clear previous view if any.
|
|
3520
3520
|
this._updateView();
|
|
@@ -3559,10 +3559,10 @@ class NgIf {
|
|
|
3559
3559
|
static ngTemplateContextGuard(dir, ctx) {
|
|
3560
3560
|
return true;
|
|
3561
3561
|
}
|
|
3562
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
3563
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.
|
|
3562
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgIf, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3563
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.2", type: NgIf, isStandalone: true, selector: "[ngIf]", inputs: { ngIf: "ngIf", ngIfThen: "ngIfThen", ngIfElse: "ngIfElse" }, ngImport: i0 });
|
|
3564
3564
|
}
|
|
3565
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
3565
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgIf, decorators: [{
|
|
3566
3566
|
type: Directive,
|
|
3567
3567
|
args: [{
|
|
3568
3568
|
selector: '[ngIf]',
|
|
@@ -3581,10 +3581,10 @@ class NgIfContext {
|
|
|
3581
3581
|
$implicit = null;
|
|
3582
3582
|
ngIf = null;
|
|
3583
3583
|
}
|
|
3584
|
-
function assertTemplate(
|
|
3585
|
-
|
|
3586
|
-
|
|
3587
|
-
|
|
3584
|
+
function assertTemplate(templateRef, property) {
|
|
3585
|
+
if (templateRef && !templateRef.createEmbeddedView) {
|
|
3586
|
+
throw new _RuntimeError(2020 /* RuntimeErrorCode.NG_IF_NOT_A_TEMPLATE_REF */, (typeof ngDevMode === 'undefined' || ngDevMode) &&
|
|
3587
|
+
`${property} must be a TemplateRef, but received '${_stringify(templateRef)}'.`);
|
|
3588
3588
|
}
|
|
3589
3589
|
}
|
|
3590
3590
|
|
|
@@ -3720,10 +3720,10 @@ class NgSwitch {
|
|
|
3720
3720
|
}
|
|
3721
3721
|
}
|
|
3722
3722
|
}
|
|
3723
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
3724
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.
|
|
3723
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgSwitch, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
3724
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.2", type: NgSwitch, isStandalone: true, selector: "[ngSwitch]", inputs: { ngSwitch: "ngSwitch" }, ngImport: i0 });
|
|
3725
3725
|
}
|
|
3726
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
3726
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgSwitch, decorators: [{
|
|
3727
3727
|
type: Directive,
|
|
3728
3728
|
args: [{
|
|
3729
3729
|
selector: '[ngSwitch]',
|
|
@@ -3786,10 +3786,10 @@ class NgSwitchCase {
|
|
|
3786
3786
|
ngDoCheck() {
|
|
3787
3787
|
this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase));
|
|
3788
3788
|
}
|
|
3789
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
3790
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.
|
|
3789
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgSwitchCase, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }, { token: NgSwitch, host: true, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3790
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.2", type: NgSwitchCase, isStandalone: true, selector: "[ngSwitchCase]", inputs: { ngSwitchCase: "ngSwitchCase" }, ngImport: i0 });
|
|
3791
3791
|
}
|
|
3792
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
3792
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgSwitchCase, decorators: [{
|
|
3793
3793
|
type: Directive,
|
|
3794
3794
|
args: [{
|
|
3795
3795
|
selector: '[ngSwitchCase]',
|
|
@@ -3822,10 +3822,10 @@ class NgSwitchDefault {
|
|
|
3822
3822
|
}
|
|
3823
3823
|
ngSwitch._addDefault(new SwitchView(viewContainer, templateRef));
|
|
3824
3824
|
}
|
|
3825
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
3826
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.
|
|
3825
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgSwitchDefault, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }, { token: NgSwitch, host: true, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3826
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.2", type: NgSwitchDefault, isStandalone: true, selector: "[ngSwitchDefault]", ngImport: i0 });
|
|
3827
3827
|
}
|
|
3828
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
3828
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgSwitchDefault, decorators: [{
|
|
3829
3829
|
type: Directive,
|
|
3830
3830
|
args: [{
|
|
3831
3831
|
selector: '[ngSwitchDefault]',
|
|
@@ -3836,7 +3836,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImpor
|
|
|
3836
3836
|
type: Host
|
|
3837
3837
|
}] }] });
|
|
3838
3838
|
function throwNgSwitchProviderNotFoundError(attrName, directiveName) {
|
|
3839
|
-
throw new
|
|
3839
|
+
throw new _RuntimeError(2000 /* RuntimeErrorCode.PARENT_NG_SWITCH_NOT_FOUND */, `An element with the "${attrName}" attribute ` +
|
|
3840
3840
|
`(matching the "${directiveName}" directive) must be located inside an element with the "ngSwitch" attribute ` +
|
|
3841
3841
|
`(matching "NgSwitch" directive)`);
|
|
3842
3842
|
}
|
|
@@ -3901,10 +3901,10 @@ class NgPlural {
|
|
|
3901
3901
|
this._activeView.create();
|
|
3902
3902
|
}
|
|
3903
3903
|
}
|
|
3904
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
3905
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.
|
|
3904
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgPlural, deps: [{ token: NgLocalization }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3905
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.2", type: NgPlural, isStandalone: true, selector: "[ngPlural]", inputs: { ngPlural: "ngPlural" }, ngImport: i0 });
|
|
3906
3906
|
}
|
|
3907
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
3907
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgPlural, decorators: [{
|
|
3908
3908
|
type: Directive,
|
|
3909
3909
|
args: [{
|
|
3910
3910
|
selector: '[ngPlural]',
|
|
@@ -3939,10 +3939,10 @@ class NgPluralCase {
|
|
|
3939
3939
|
const isANumber = !isNaN(Number(value));
|
|
3940
3940
|
ngPlural.addCase(isANumber ? `=${value}` : value, new SwitchView(viewContainer, template));
|
|
3941
3941
|
}
|
|
3942
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
3943
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.
|
|
3942
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgPluralCase, deps: [{ token: 'ngPluralCase', attribute: true }, { token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: NgPlural, host: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3943
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.2", type: NgPluralCase, isStandalone: true, selector: "[ngPluralCase]", ngImport: i0 });
|
|
3944
3944
|
}
|
|
3945
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
3945
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgPluralCase, decorators: [{
|
|
3946
3946
|
type: Directive,
|
|
3947
3947
|
args: [{
|
|
3948
3948
|
selector: '[ngPluralCase]',
|
|
@@ -4035,10 +4035,10 @@ class NgStyle {
|
|
|
4035
4035
|
changes.forEachAddedItem((record) => this._setStyle(record.key, record.currentValue));
|
|
4036
4036
|
changes.forEachChangedItem((record) => this._setStyle(record.key, record.currentValue));
|
|
4037
4037
|
}
|
|
4038
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4039
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.
|
|
4038
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgStyle, deps: [{ token: i0.ElementRef }, { token: i0.KeyValueDiffers }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
4039
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.2", type: NgStyle, isStandalone: true, selector: "[ngStyle]", inputs: { ngStyle: "ngStyle" }, ngImport: i0 });
|
|
4040
4040
|
}
|
|
4041
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4041
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgStyle, decorators: [{
|
|
4042
4042
|
type: Directive,
|
|
4043
4043
|
args: [{
|
|
4044
4044
|
selector: '[ngStyle]',
|
|
@@ -4139,10 +4139,10 @@ class NgTemplateOutlet {
|
|
|
4139
4139
|
},
|
|
4140
4140
|
});
|
|
4141
4141
|
}
|
|
4142
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4143
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.
|
|
4142
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgTemplateOutlet, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
4143
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.2", type: NgTemplateOutlet, isStandalone: true, selector: "[ngTemplateOutlet]", inputs: { ngTemplateOutletContext: "ngTemplateOutletContext", ngTemplateOutlet: "ngTemplateOutlet", ngTemplateOutletInjector: "ngTemplateOutletInjector" }, usesOnChanges: true, ngImport: i0 });
|
|
4144
4144
|
}
|
|
4145
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4145
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgTemplateOutlet, decorators: [{
|
|
4146
4146
|
type: Directive,
|
|
4147
4147
|
args: [{
|
|
4148
4148
|
selector: '[ngTemplateOutlet]',
|
|
@@ -4174,7 +4174,7 @@ const COMMON_DIRECTIVES = [
|
|
|
4174
4174
|
];
|
|
4175
4175
|
|
|
4176
4176
|
function invalidPipeArgumentError(type, value) {
|
|
4177
|
-
return new
|
|
4177
|
+
return new _RuntimeError(2100 /* RuntimeErrorCode.INVALID_PIPE_ARGUMENT */, ngDevMode && `InvalidPipeArgument: '${value}' for pipe '${_stringify(type)}'`);
|
|
4178
4178
|
}
|
|
4179
4179
|
|
|
4180
4180
|
class SubscribableStrategy {
|
|
@@ -4286,10 +4286,10 @@ class AsyncPipe {
|
|
|
4286
4286
|
this._subscription = this._strategy.createSubscription(obj, (value) => this._updateLatestValue(obj, value));
|
|
4287
4287
|
}
|
|
4288
4288
|
_selectStrategy(obj) {
|
|
4289
|
-
if (
|
|
4289
|
+
if (_isPromise(obj)) {
|
|
4290
4290
|
return _promiseStrategy;
|
|
4291
4291
|
}
|
|
4292
|
-
if (
|
|
4292
|
+
if (_isSubscribable(obj)) {
|
|
4293
4293
|
return _subscribableStrategy;
|
|
4294
4294
|
}
|
|
4295
4295
|
throw invalidPipeArgumentError(AsyncPipe, obj);
|
|
@@ -4310,10 +4310,10 @@ class AsyncPipe {
|
|
|
4310
4310
|
}
|
|
4311
4311
|
}
|
|
4312
4312
|
}
|
|
4313
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4314
|
-
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.
|
|
4313
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AsyncPipe, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4314
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.2", ngImport: i0, type: AsyncPipe, isStandalone: true, name: "async", pure: false });
|
|
4315
4315
|
}
|
|
4316
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4316
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: AsyncPipe, decorators: [{
|
|
4317
4317
|
type: Pipe,
|
|
4318
4318
|
args: [{
|
|
4319
4319
|
name: 'async',
|
|
@@ -4345,10 +4345,10 @@ class LowerCasePipe {
|
|
|
4345
4345
|
}
|
|
4346
4346
|
return value.toLowerCase();
|
|
4347
4347
|
}
|
|
4348
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4349
|
-
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.
|
|
4348
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: LowerCasePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4349
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.2", ngImport: i0, type: LowerCasePipe, isStandalone: true, name: "lowercase" });
|
|
4350
4350
|
}
|
|
4351
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4351
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: LowerCasePipe, decorators: [{
|
|
4352
4352
|
type: Pipe,
|
|
4353
4353
|
args: [{
|
|
4354
4354
|
name: 'lowercase',
|
|
@@ -4389,10 +4389,10 @@ class TitleCasePipe {
|
|
|
4389
4389
|
}
|
|
4390
4390
|
return value.replace(unicodeWordMatch, (txt) => txt[0].toUpperCase() + txt.slice(1).toLowerCase());
|
|
4391
4391
|
}
|
|
4392
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4393
|
-
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.
|
|
4392
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: TitleCasePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4393
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.2", ngImport: i0, type: TitleCasePipe, isStandalone: true, name: "titlecase" });
|
|
4394
4394
|
}
|
|
4395
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4395
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: TitleCasePipe, decorators: [{
|
|
4396
4396
|
type: Pipe,
|
|
4397
4397
|
args: [{
|
|
4398
4398
|
name: 'titlecase',
|
|
@@ -4415,10 +4415,10 @@ class UpperCasePipe {
|
|
|
4415
4415
|
}
|
|
4416
4416
|
return value.toUpperCase();
|
|
4417
4417
|
}
|
|
4418
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4419
|
-
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.
|
|
4418
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: UpperCasePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4419
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.2", ngImport: i0, type: UpperCasePipe, isStandalone: true, name: "uppercase" });
|
|
4420
4420
|
}
|
|
4421
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4421
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: UpperCasePipe, decorators: [{
|
|
4422
4422
|
type: Pipe,
|
|
4423
4423
|
args: [{
|
|
4424
4424
|
name: 'uppercase',
|
|
@@ -4649,10 +4649,10 @@ class DatePipe {
|
|
|
4649
4649
|
throw invalidPipeArgumentError(DatePipe, error.message);
|
|
4650
4650
|
}
|
|
4651
4651
|
}
|
|
4652
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4653
|
-
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.
|
|
4652
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", 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 });
|
|
4653
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.2", ngImport: i0, type: DatePipe, isStandalone: true, name: "date" });
|
|
4654
4654
|
}
|
|
4655
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4655
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: DatePipe, decorators: [{
|
|
4656
4656
|
type: Pipe,
|
|
4657
4657
|
args: [{
|
|
4658
4658
|
name: 'date',
|
|
@@ -4708,10 +4708,10 @@ class I18nPluralPipe {
|
|
|
4708
4708
|
const key = getPluralCategory(value, Object.keys(pluralMap), this._localization, locale);
|
|
4709
4709
|
return pluralMap[key].replace(_INTERPOLATION_REGEXP, value.toString());
|
|
4710
4710
|
}
|
|
4711
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4712
|
-
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.
|
|
4711
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: I18nPluralPipe, deps: [{ token: NgLocalization }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4712
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.2", ngImport: i0, type: I18nPluralPipe, isStandalone: true, name: "i18nPlural" });
|
|
4713
4713
|
}
|
|
4714
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4714
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: I18nPluralPipe, decorators: [{
|
|
4715
4715
|
type: Pipe,
|
|
4716
4716
|
args: [{
|
|
4717
4717
|
name: 'i18nPlural',
|
|
@@ -4755,10 +4755,10 @@ class I18nSelectPipe {
|
|
|
4755
4755
|
}
|
|
4756
4756
|
return '';
|
|
4757
4757
|
}
|
|
4758
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4759
|
-
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.
|
|
4758
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: I18nSelectPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4759
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.2", ngImport: i0, type: I18nSelectPipe, isStandalone: true, name: "i18nSelect" });
|
|
4760
4760
|
}
|
|
4761
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4761
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: I18nSelectPipe, decorators: [{
|
|
4762
4762
|
type: Pipe,
|
|
4763
4763
|
args: [{
|
|
4764
4764
|
name: 'i18nSelect',
|
|
@@ -4787,10 +4787,10 @@ class JsonPipe {
|
|
|
4787
4787
|
transform(value) {
|
|
4788
4788
|
return JSON.stringify(value, null, 2);
|
|
4789
4789
|
}
|
|
4790
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4791
|
-
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.
|
|
4790
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: JsonPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4791
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.2", ngImport: i0, type: JsonPipe, isStandalone: true, name: "json", pure: false });
|
|
4792
4792
|
}
|
|
4793
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4793
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: JsonPipe, decorators: [{
|
|
4794
4794
|
type: Pipe,
|
|
4795
4795
|
args: [{
|
|
4796
4796
|
name: 'json',
|
|
@@ -4852,10 +4852,10 @@ class KeyValuePipe {
|
|
|
4852
4852
|
}
|
|
4853
4853
|
return this.keyValues;
|
|
4854
4854
|
}
|
|
4855
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4856
|
-
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.
|
|
4855
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: KeyValuePipe, deps: [{ token: i0.KeyValueDiffers }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4856
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.2", ngImport: i0, type: KeyValuePipe, isStandalone: true, name: "keyvalue", pure: false });
|
|
4857
4857
|
}
|
|
4858
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4858
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: KeyValuePipe, decorators: [{
|
|
4859
4859
|
type: Pipe,
|
|
4860
4860
|
args: [{
|
|
4861
4861
|
name: 'keyvalue',
|
|
@@ -4972,10 +4972,10 @@ class DecimalPipe {
|
|
|
4972
4972
|
throw invalidPipeArgumentError(DecimalPipe, error.message);
|
|
4973
4973
|
}
|
|
4974
4974
|
}
|
|
4975
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4976
|
-
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.
|
|
4975
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: DecimalPipe, deps: [{ token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
4976
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.2", ngImport: i0, type: DecimalPipe, isStandalone: true, name: "number" });
|
|
4977
4977
|
}
|
|
4978
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4978
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: DecimalPipe, decorators: [{
|
|
4979
4979
|
type: Pipe,
|
|
4980
4980
|
args: [{
|
|
4981
4981
|
name: 'number',
|
|
@@ -5037,10 +5037,10 @@ class PercentPipe {
|
|
|
5037
5037
|
throw invalidPipeArgumentError(PercentPipe, error.message);
|
|
5038
5038
|
}
|
|
5039
5039
|
}
|
|
5040
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
5041
|
-
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.
|
|
5040
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: PercentPipe, deps: [{ token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
5041
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.2", ngImport: i0, type: PercentPipe, isStandalone: true, name: "percent" });
|
|
5042
5042
|
}
|
|
5043
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
5043
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: PercentPipe, decorators: [{
|
|
5044
5044
|
type: Pipe,
|
|
5045
5045
|
args: [{
|
|
5046
5046
|
name: 'percent',
|
|
@@ -5104,10 +5104,10 @@ class CurrencyPipe {
|
|
|
5104
5104
|
throw invalidPipeArgumentError(CurrencyPipe, error.message);
|
|
5105
5105
|
}
|
|
5106
5106
|
}
|
|
5107
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
5108
|
-
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.
|
|
5107
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: CurrencyPipe, deps: [{ token: LOCALE_ID }, { token: DEFAULT_CURRENCY_CODE }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
5108
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.2", ngImport: i0, type: CurrencyPipe, isStandalone: true, name: "currency" });
|
|
5109
5109
|
}
|
|
5110
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
5110
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: CurrencyPipe, decorators: [{
|
|
5111
5111
|
type: Pipe,
|
|
5112
5112
|
args: [{
|
|
5113
5113
|
name: 'currency',
|
|
@@ -5181,10 +5181,10 @@ class SlicePipe {
|
|
|
5181
5181
|
}
|
|
5182
5182
|
return value.slice(start, end);
|
|
5183
5183
|
}
|
|
5184
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
5185
|
-
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.
|
|
5184
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: SlicePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
5185
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.2", ngImport: i0, type: SlicePipe, isStandalone: true, name: "slice", pure: false });
|
|
5186
5186
|
}
|
|
5187
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
5187
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: SlicePipe, decorators: [{
|
|
5188
5188
|
type: Pipe,
|
|
5189
5189
|
args: [{
|
|
5190
5190
|
name: 'slice',
|
|
@@ -5227,11 +5227,11 @@ const COMMON_PIPES = [
|
|
|
5227
5227
|
* @publicApi
|
|
5228
5228
|
*/
|
|
5229
5229
|
class CommonModule {
|
|
5230
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
5231
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.
|
|
5232
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.
|
|
5230
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: CommonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
5231
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.2", 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] });
|
|
5232
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: CommonModule });
|
|
5233
5233
|
}
|
|
5234
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
5234
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: CommonModule, decorators: [{
|
|
5235
5235
|
type: NgModule,
|
|
5236
5236
|
args: [{
|
|
5237
5237
|
imports: [COMMON_DIRECTIVES, COMMON_PIPES],
|
|
@@ -5264,7 +5264,7 @@ function isPlatformServer(platformId) {
|
|
|
5264
5264
|
/**
|
|
5265
5265
|
* @publicApi
|
|
5266
5266
|
*/
|
|
5267
|
-
const VERSION = new Version('19.2.
|
|
5267
|
+
const VERSION = new Version('19.2.2');
|
|
5268
5268
|
|
|
5269
5269
|
/**
|
|
5270
5270
|
* Defines a scroll position manager. Implemented by `BrowserViewportScroller`.
|
|
@@ -5275,7 +5275,7 @@ class ViewportScroller {
|
|
|
5275
5275
|
// De-sugared tree-shakable injection
|
|
5276
5276
|
// See #23917
|
|
5277
5277
|
/** @nocollapse */
|
|
5278
|
-
static ɵprov = /** @pureOrBreakMyCode */ /* @__PURE__ */
|
|
5278
|
+
static ɵprov = /** @pureOrBreakMyCode */ /* @__PURE__ */ __defineInjectable({
|
|
5279
5279
|
token: ViewportScroller,
|
|
5280
5280
|
providedIn: 'root',
|
|
5281
5281
|
factory: () => typeof ngServerMode !== 'undefined' && ngServerMode
|
|
@@ -5521,12 +5521,12 @@ function createImageLoader(buildUrlFn, exampleUrls) {
|
|
|
5521
5521
|
};
|
|
5522
5522
|
}
|
|
5523
5523
|
function throwInvalidPathError(path, exampleUrls) {
|
|
5524
|
-
throw new
|
|
5524
|
+
throw new _RuntimeError(2959 /* RuntimeErrorCode.INVALID_LOADER_ARGUMENTS */, ngDevMode &&
|
|
5525
5525
|
`Image loader has detected an invalid path (\`${path}\`). ` +
|
|
5526
5526
|
`To fix this, supply a path using one of the following formats: ${exampleUrls.join(' or ')}`);
|
|
5527
5527
|
}
|
|
5528
5528
|
function throwUnexpectedAbsoluteUrlError(path, url) {
|
|
5529
|
-
throw new
|
|
5529
|
+
throw new _RuntimeError(2959 /* RuntimeErrorCode.INVALID_LOADER_ARGUMENTS */, ngDevMode &&
|
|
5530
5530
|
`Image loader has detected a \`<img>\` tag with an invalid \`ngSrc\` attribute: ${url}. ` +
|
|
5531
5531
|
`This image loader expects \`ngSrc\` to be a relative URL - ` +
|
|
5532
5532
|
`however the provided value is an absolute URL. ` +
|
|
@@ -5718,7 +5718,7 @@ function isNetlifyUrl(url) {
|
|
|
5718
5718
|
*/
|
|
5719
5719
|
function provideNetlifyLoader(path) {
|
|
5720
5720
|
if (path && !isValidPath(path)) {
|
|
5721
|
-
throw new
|
|
5721
|
+
throw new _RuntimeError(2959 /* RuntimeErrorCode.INVALID_LOADER_ARGUMENTS */, ngDevMode &&
|
|
5722
5722
|
`Image loader has detected an invalid path (\`${path}\`). ` +
|
|
5723
5723
|
`To fix this, supply either the full URL to the Netlify site, or leave it empty to use the current site.`);
|
|
5724
5724
|
}
|
|
@@ -5762,7 +5762,7 @@ function createNetlifyUrl(config, path) {
|
|
|
5762
5762
|
}
|
|
5763
5763
|
else {
|
|
5764
5764
|
if (ngDevMode) {
|
|
5765
|
-
console.warn(
|
|
5765
|
+
console.warn(_formatRuntimeError(2959 /* RuntimeErrorCode.INVALID_LOADER_ARGUMENTS */, `The Netlify image loader has detected an \`<img>\` tag with the unsupported attribute "\`${param}\`".`));
|
|
5766
5766
|
}
|
|
5767
5767
|
}
|
|
5768
5768
|
}
|
|
@@ -5785,7 +5785,7 @@ function imgDirectiveDetails(ngSrc, includeNgSrc = true) {
|
|
|
5785
5785
|
*/
|
|
5786
5786
|
function assertDevMode(checkName) {
|
|
5787
5787
|
if (!ngDevMode) {
|
|
5788
|
-
throw new
|
|
5788
|
+
throw new _RuntimeError(2958 /* RuntimeErrorCode.UNEXPECTED_DEV_MODE_CHECK_IN_PROD_MODE */, `Unexpected invocation of the ${checkName} in the prod mode. ` +
|
|
5789
5789
|
`Please make sure that the prod mode is enabled for production builds.`);
|
|
5790
5790
|
}
|
|
5791
5791
|
}
|
|
@@ -5882,23 +5882,23 @@ class LCPImageObserver {
|
|
|
5882
5882
|
this.observer.disconnect();
|
|
5883
5883
|
this.images.clear();
|
|
5884
5884
|
}
|
|
5885
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
5886
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
5885
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: LCPImageObserver, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
5886
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: LCPImageObserver, providedIn: 'root' });
|
|
5887
5887
|
}
|
|
5888
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
5888
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: LCPImageObserver, decorators: [{
|
|
5889
5889
|
type: Injectable,
|
|
5890
5890
|
args: [{ providedIn: 'root' }]
|
|
5891
5891
|
}], ctorParameters: () => [] });
|
|
5892
5892
|
function logMissingPriorityError(ngSrc) {
|
|
5893
5893
|
const directiveDetails = imgDirectiveDetails(ngSrc);
|
|
5894
|
-
console.error(
|
|
5894
|
+
console.error(_formatRuntimeError(2955 /* RuntimeErrorCode.LCP_IMG_MISSING_PRIORITY */, `${directiveDetails} this image is the Largest Contentful Paint (LCP) ` +
|
|
5895
5895
|
`element but was not marked "priority". This image should be marked ` +
|
|
5896
5896
|
`"priority" in order to prioritize its loading. ` +
|
|
5897
5897
|
`To fix this, add the "priority" attribute.`));
|
|
5898
5898
|
}
|
|
5899
5899
|
function logModifiedWarning(ngSrc) {
|
|
5900
5900
|
const directiveDetails = imgDirectiveDetails(ngSrc);
|
|
5901
|
-
console.warn(
|
|
5901
|
+
console.warn(_formatRuntimeError(2964 /* RuntimeErrorCode.LCP_IMG_NGSRC_MODIFIED */, `${directiveDetails} this image is the Largest Contentful Paint (LCP) ` +
|
|
5902
5902
|
`element and has had its "ngSrc" attribute modified. This can cause ` +
|
|
5903
5903
|
`slower loading performance. It is recommended not to modify the "ngSrc" ` +
|
|
5904
5904
|
`property on any image which could be the LCP element.`));
|
|
@@ -5983,7 +5983,7 @@ class PreconnectLinkChecker {
|
|
|
5983
5983
|
// performance implications of making extra DOM lookups for each image.
|
|
5984
5984
|
this.preconnectLinks ??= this.queryPreconnectLinks();
|
|
5985
5985
|
if (!this.preconnectLinks.has(imgUrl.origin)) {
|
|
5986
|
-
console.warn(
|
|
5986
|
+
console.warn(_formatRuntimeError(2956 /* RuntimeErrorCode.PRIORITY_IMG_MISSING_PRECONNECT_TAG */, `${imgDirectiveDetails(originalNgSrc)} there is no preconnect tag present for this ` +
|
|
5987
5987
|
`image. Preconnecting to the origin(s) that serve priority images ensures that these ` +
|
|
5988
5988
|
`images are delivered as soon as possible. To fix this, please add the following ` +
|
|
5989
5989
|
`element into the <head> of the document:\n` +
|
|
@@ -6004,10 +6004,10 @@ class PreconnectLinkChecker {
|
|
|
6004
6004
|
this.preconnectLinks?.clear();
|
|
6005
6005
|
this.alreadySeen.clear();
|
|
6006
6006
|
}
|
|
6007
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
6008
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
6007
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: PreconnectLinkChecker, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
6008
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: PreconnectLinkChecker, providedIn: 'root' });
|
|
6009
6009
|
}
|
|
6010
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
6010
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: PreconnectLinkChecker, decorators: [{
|
|
6011
6011
|
type: Injectable,
|
|
6012
6012
|
args: [{ providedIn: 'root' }]
|
|
6013
6013
|
}], ctorParameters: () => [] });
|
|
@@ -6070,7 +6070,7 @@ class PreloadLinkCreator {
|
|
|
6070
6070
|
createPreloadLinkTag(renderer, src, srcset, sizes) {
|
|
6071
6071
|
if (ngDevMode) {
|
|
6072
6072
|
if (this.preloadedImages.size >= DEFAULT_PRELOADED_IMAGES_LIMIT) {
|
|
6073
|
-
throw new
|
|
6073
|
+
throw new _RuntimeError(2961 /* RuntimeErrorCode.TOO_MANY_PRELOADED_IMAGES */, ngDevMode &&
|
|
6074
6074
|
`The \`NgOptimizedImage\` directive has detected that more than ` +
|
|
6075
6075
|
`${DEFAULT_PRELOADED_IMAGES_LIMIT} images were marked as priority. ` +
|
|
6076
6076
|
`This might negatively affect an overall performance of the page. ` +
|
|
@@ -6094,10 +6094,10 @@ class PreloadLinkCreator {
|
|
|
6094
6094
|
}
|
|
6095
6095
|
renderer.appendChild(this.document.head, preload);
|
|
6096
6096
|
}
|
|
6097
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
6098
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
6097
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: PreloadLinkCreator, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
6098
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: PreloadLinkCreator, providedIn: 'root' });
|
|
6099
6099
|
}
|
|
6100
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
6100
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: PreloadLinkCreator, decorators: [{
|
|
6101
6101
|
type: Injectable,
|
|
6102
6102
|
args: [{ providedIn: 'root' }]
|
|
6103
6103
|
}] });
|
|
@@ -6192,12 +6192,6 @@ const PRIORITY_COUNT_THRESHOLD = 10;
|
|
|
6192
6192
|
* exceeds the threshold PRIORITY_COUNT_THRESHOLD
|
|
6193
6193
|
*/
|
|
6194
6194
|
let IMGS_WITH_PRIORITY_ATTR_COUNT = 0;
|
|
6195
|
-
/**
|
|
6196
|
-
* This function is for testing purpose.
|
|
6197
|
-
*/
|
|
6198
|
-
function resetImagePriorityCount() {
|
|
6199
|
-
IMGS_WITH_PRIORITY_ATTR_COUNT = 0;
|
|
6200
|
-
}
|
|
6201
6195
|
/**
|
|
6202
6196
|
* Directive that improves image loading performance by enforcing best practices.
|
|
6203
6197
|
*
|
|
@@ -6297,7 +6291,7 @@ function resetImagePriorityCount() {
|
|
|
6297
6291
|
*/
|
|
6298
6292
|
class NgOptimizedImage {
|
|
6299
6293
|
imageLoader = inject(IMAGE_LOADER);
|
|
6300
|
-
config = processConfig(inject(
|
|
6294
|
+
config = processConfig(inject(_IMAGE_CONFIG));
|
|
6301
6295
|
renderer = inject(Renderer2);
|
|
6302
6296
|
imgElement = inject(ElementRef).nativeElement;
|
|
6303
6297
|
injector = inject(Injector);
|
|
@@ -6408,7 +6402,7 @@ class NgOptimizedImage {
|
|
|
6408
6402
|
}
|
|
6409
6403
|
/** @nodoc */
|
|
6410
6404
|
ngOnInit() {
|
|
6411
|
-
|
|
6405
|
+
_performanceMarkFeature('NgOptimizedImage');
|
|
6412
6406
|
if (ngDevMode) {
|
|
6413
6407
|
const ngZone = this.injector.get(NgZone);
|
|
6414
6408
|
assertNonEmptyInput(this, 'ngSrc', this.ngSrc);
|
|
@@ -6675,10 +6669,10 @@ class NgOptimizedImage {
|
|
|
6675
6669
|
setHostAttribute(name, value) {
|
|
6676
6670
|
this.renderer.setAttribute(this.imgElement, name, value);
|
|
6677
6671
|
}
|
|
6678
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
6679
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.2.
|
|
6672
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgOptimizedImage, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
6673
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.2.2", 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 });
|
|
6680
6674
|
}
|
|
6681
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
6675
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: NgOptimizedImage, decorators: [{
|
|
6682
6676
|
type: Directive,
|
|
6683
6677
|
args: [{
|
|
6684
6678
|
selector: 'img[ngSrc]',
|
|
@@ -6739,7 +6733,7 @@ function processConfig(config) {
|
|
|
6739
6733
|
if (config.breakpoints) {
|
|
6740
6734
|
sortedBreakpoints.breakpoints = config.breakpoints.sort((a, b) => a - b);
|
|
6741
6735
|
}
|
|
6742
|
-
return Object.assign({},
|
|
6736
|
+
return Object.assign({}, _IMAGE_CONFIG_DEFAULTS, config, sortedBreakpoints);
|
|
6743
6737
|
}
|
|
6744
6738
|
/***** Assert functions *****/
|
|
6745
6739
|
/**
|
|
@@ -6747,7 +6741,7 @@ function processConfig(config) {
|
|
|
6747
6741
|
*/
|
|
6748
6742
|
function assertNoConflictingSrc(dir) {
|
|
6749
6743
|
if (dir.src) {
|
|
6750
|
-
throw new
|
|
6744
|
+
throw new _RuntimeError(2950 /* RuntimeErrorCode.UNEXPECTED_SRC_ATTR */, `${imgDirectiveDetails(dir.ngSrc)} both \`src\` and \`ngSrc\` have been set. ` +
|
|
6751
6745
|
`Supplying both of these attributes breaks lazy loading. ` +
|
|
6752
6746
|
`The NgOptimizedImage directive sets \`src\` itself based on the value of \`ngSrc\`. ` +
|
|
6753
6747
|
`To fix this, please remove the \`src\` attribute.`);
|
|
@@ -6758,7 +6752,7 @@ function assertNoConflictingSrc(dir) {
|
|
|
6758
6752
|
*/
|
|
6759
6753
|
function assertNoConflictingSrcset(dir) {
|
|
6760
6754
|
if (dir.srcset) {
|
|
6761
|
-
throw new
|
|
6755
|
+
throw new _RuntimeError(2951 /* RuntimeErrorCode.UNEXPECTED_SRCSET_ATTR */, `${imgDirectiveDetails(dir.ngSrc)} both \`srcset\` and \`ngSrcset\` have been set. ` +
|
|
6762
6756
|
`Supplying both of these attributes breaks lazy loading. ` +
|
|
6763
6757
|
`The NgOptimizedImage directive sets \`srcset\` itself based on the value of ` +
|
|
6764
6758
|
`\`ngSrcset\`. To fix this, please remove the \`srcset\` attribute.`);
|
|
@@ -6773,7 +6767,7 @@ function assertNotBase64Image(dir) {
|
|
|
6773
6767
|
if (ngSrc.length > BASE64_IMG_MAX_LENGTH_IN_ERROR) {
|
|
6774
6768
|
ngSrc = ngSrc.substring(0, BASE64_IMG_MAX_LENGTH_IN_ERROR) + '...';
|
|
6775
6769
|
}
|
|
6776
|
-
throw new
|
|
6770
|
+
throw new _RuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails(dir.ngSrc, false)} \`ngSrc\` is a Base64-encoded string ` +
|
|
6777
6771
|
`(${ngSrc}). NgOptimizedImage does not support Base64-encoded strings. ` +
|
|
6778
6772
|
`To fix this, disable the NgOptimizedImage directive for this element ` +
|
|
6779
6773
|
`by removing \`ngSrc\` and using a standard \`src\` attribute instead.`);
|
|
@@ -6785,7 +6779,7 @@ function assertNotBase64Image(dir) {
|
|
|
6785
6779
|
function assertNoComplexSizes(dir) {
|
|
6786
6780
|
let sizes = dir.sizes;
|
|
6787
6781
|
if (sizes?.match(/((\)|,)\s|^)\d+px/)) {
|
|
6788
|
-
throw new
|
|
6782
|
+
throw new _RuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails(dir.ngSrc, false)} \`sizes\` was set to a string including ` +
|
|
6789
6783
|
`pixel values. For automatic \`srcset\` generation, \`sizes\` must only include responsive ` +
|
|
6790
6784
|
`values, such as \`sizes="50vw"\` or \`sizes="(min-width: 768px) 50vw, 100vw"\`. ` +
|
|
6791
6785
|
`To fix this, modify the \`sizes\` attribute, or provide your own \`ngSrcset\` value directly.`);
|
|
@@ -6801,7 +6795,7 @@ function assertValidPlaceholder(dir, imageLoader) {
|
|
|
6801
6795
|
*/
|
|
6802
6796
|
function assertNoPlaceholderConfigWithoutPlaceholder(dir) {
|
|
6803
6797
|
if (dir.placeholderConfig && !dir.placeholder) {
|
|
6804
|
-
throw new
|
|
6798
|
+
throw new _RuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails(dir.ngSrc, false)} \`placeholderConfig\` options were provided for an ` +
|
|
6805
6799
|
`image that does not use the \`placeholder\` attribute, and will have no effect.`);
|
|
6806
6800
|
}
|
|
6807
6801
|
}
|
|
@@ -6811,7 +6805,7 @@ function assertNoPlaceholderConfigWithoutPlaceholder(dir) {
|
|
|
6811
6805
|
*/
|
|
6812
6806
|
function assertNoRelativePlaceholderWithoutLoader(dir, imageLoader) {
|
|
6813
6807
|
if (dir.placeholder === true && imageLoader === noopImageLoader) {
|
|
6814
|
-
throw new
|
|
6808
|
+
throw new _RuntimeError(2963 /* RuntimeErrorCode.MISSING_NECESSARY_LOADER */, `${imgDirectiveDetails(dir.ngSrc)} the \`placeholder\` attribute is set to true but ` +
|
|
6815
6809
|
`no image loader is configured (i.e. the default one is being used), ` +
|
|
6816
6810
|
`which would result in the same image being used for the primary image and its placeholder. ` +
|
|
6817
6811
|
`To fix this, provide a loader or remove the \`placeholder\` attribute from the image.`);
|
|
@@ -6825,13 +6819,13 @@ function assertNoOversizedDataUrl(dir) {
|
|
|
6825
6819
|
typeof dir.placeholder === 'string' &&
|
|
6826
6820
|
dir.placeholder.startsWith('data:')) {
|
|
6827
6821
|
if (dir.placeholder.length > DATA_URL_ERROR_LIMIT) {
|
|
6828
|
-
throw new
|
|
6822
|
+
throw new _RuntimeError(2965 /* RuntimeErrorCode.OVERSIZED_PLACEHOLDER */, `${imgDirectiveDetails(dir.ngSrc)} the \`placeholder\` attribute is set to a data URL which is longer ` +
|
|
6829
6823
|
`than ${DATA_URL_ERROR_LIMIT} characters. This is strongly discouraged, as large inline placeholders ` +
|
|
6830
6824
|
`directly increase the bundle size of Angular and hurt page load performance. To fix this, generate ` +
|
|
6831
6825
|
`a smaller data URL placeholder.`);
|
|
6832
6826
|
}
|
|
6833
6827
|
if (dir.placeholder.length > DATA_URL_WARN_LIMIT) {
|
|
6834
|
-
console.warn(
|
|
6828
|
+
console.warn(_formatRuntimeError(2965 /* RuntimeErrorCode.OVERSIZED_PLACEHOLDER */, `${imgDirectiveDetails(dir.ngSrc)} the \`placeholder\` attribute is set to a data URL which is longer ` +
|
|
6835
6829
|
`than ${DATA_URL_WARN_LIMIT} characters. This is discouraged, as large inline placeholders ` +
|
|
6836
6830
|
`directly increase the bundle size of Angular and hurt page load performance. For better loading performance, ` +
|
|
6837
6831
|
`generate a smaller data URL placeholder.`));
|
|
@@ -6844,7 +6838,7 @@ function assertNoOversizedDataUrl(dir) {
|
|
|
6844
6838
|
function assertNotBlobUrl(dir) {
|
|
6845
6839
|
const ngSrc = dir.ngSrc.trim();
|
|
6846
6840
|
if (ngSrc.startsWith('blob:')) {
|
|
6847
|
-
throw new
|
|
6841
|
+
throw new _RuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails(dir.ngSrc)} \`ngSrc\` was set to a blob URL (${ngSrc}). ` +
|
|
6848
6842
|
`Blob URLs are not supported by the NgOptimizedImage directive. ` +
|
|
6849
6843
|
`To fix this, disable the NgOptimizedImage directive for this element ` +
|
|
6850
6844
|
`by removing \`ngSrc\` and using a regular \`src\` attribute instead.`);
|
|
@@ -6857,7 +6851,7 @@ function assertNonEmptyInput(dir, name, value) {
|
|
|
6857
6851
|
const isString = typeof value === 'string';
|
|
6858
6852
|
const isEmptyString = isString && value.trim() === '';
|
|
6859
6853
|
if (!isString || isEmptyString) {
|
|
6860
|
-
throw new
|
|
6854
|
+
throw new _RuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails(dir.ngSrc)} \`${name}\` has an invalid value ` +
|
|
6861
6855
|
`(\`${value}\`). To fix this, change the value to a non-empty string.`);
|
|
6862
6856
|
}
|
|
6863
6857
|
}
|
|
@@ -6876,7 +6870,7 @@ function assertValidNgSrcset(dir, value) {
|
|
|
6876
6870
|
}
|
|
6877
6871
|
const isValidSrcset = isValidWidthDescriptor || isValidDensityDescriptor;
|
|
6878
6872
|
if (!isValidSrcset) {
|
|
6879
|
-
throw new
|
|
6873
|
+
throw new _RuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails(dir.ngSrc)} \`ngSrcset\` has an invalid value (\`${value}\`). ` +
|
|
6880
6874
|
`To fix this, supply \`ngSrcset\` using a comma-separated list of one or more width ` +
|
|
6881
6875
|
`descriptors (e.g. "100w, 200w") or density descriptors (e.g. "1x, 2x").`);
|
|
6882
6876
|
}
|
|
@@ -6886,7 +6880,7 @@ function assertUnderDensityCap(dir, value) {
|
|
|
6886
6880
|
.split(',')
|
|
6887
6881
|
.every((num) => num === '' || parseFloat(num) <= ABSOLUTE_SRCSET_DENSITY_CAP);
|
|
6888
6882
|
if (!underDensityCap) {
|
|
6889
|
-
throw new
|
|
6883
|
+
throw new _RuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails(dir.ngSrc)} the \`ngSrcset\` contains an unsupported image density:` +
|
|
6890
6884
|
`\`${value}\`. NgOptimizedImage generally recommends a max image density of ` +
|
|
6891
6885
|
`${RECOMMENDED_SRCSET_DENSITY_CAP}x but supports image densities up to ` +
|
|
6892
6886
|
`${ABSOLUTE_SRCSET_DENSITY_CAP}x. The human eye cannot distinguish between image densities ` +
|
|
@@ -6911,7 +6905,7 @@ function postInitInputChangeError(dir, inputName) {
|
|
|
6911
6905
|
`Changing the \`${inputName}\` would have no effect on the underlying ` +
|
|
6912
6906
|
`image element, because the resource loading has already occurred.`;
|
|
6913
6907
|
}
|
|
6914
|
-
return new
|
|
6908
|
+
return new _RuntimeError(2953 /* RuntimeErrorCode.UNEXPECTED_INPUT_CHANGE */, `${imgDirectiveDetails(dir.ngSrc)} \`${inputName}\` was updated after initialization. ` +
|
|
6915
6909
|
`The NgOptimizedImage directive will not react to this input change. ${reason} ` +
|
|
6916
6910
|
`To fix this, either switch \`${inputName}\` to a static value ` +
|
|
6917
6911
|
`or wrap the image element in an @if that is gated on the necessary value.`);
|
|
@@ -6941,7 +6935,7 @@ function assertGreaterThanZero(dir, inputValue, inputName) {
|
|
|
6941
6935
|
const validNumber = typeof inputValue === 'number' && inputValue > 0;
|
|
6942
6936
|
const validString = typeof inputValue === 'string' && /^\d+$/.test(inputValue.trim()) && parseInt(inputValue) > 0;
|
|
6943
6937
|
if (!validNumber && !validString) {
|
|
6944
|
-
throw new
|
|
6938
|
+
throw new _RuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails(dir.ngSrc)} \`${inputName}\` has an invalid value. ` +
|
|
6945
6939
|
`To fix this, provide \`${inputName}\` as a number greater than 0.`);
|
|
6946
6940
|
}
|
|
6947
6941
|
}
|
|
@@ -6983,7 +6977,7 @@ function assertNoImageDistortion(dir, img, renderer) {
|
|
|
6983
6977
|
const stylingDistortion = nonZeroRenderedDimensions &&
|
|
6984
6978
|
Math.abs(intrinsicAspectRatio - renderedAspectRatio) > ASPECT_RATIO_TOLERANCE;
|
|
6985
6979
|
if (inaccurateDimensions) {
|
|
6986
|
-
console.warn(
|
|
6980
|
+
console.warn(_formatRuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails(dir.ngSrc)} the aspect ratio of the image does not match ` +
|
|
6987
6981
|
`the aspect ratio indicated by the width and height attributes. ` +
|
|
6988
6982
|
`\nIntrinsic image size: ${intrinsicWidth}w x ${intrinsicHeight}h ` +
|
|
6989
6983
|
`(aspect-ratio: ${round(intrinsicAspectRatio)}). \nSupplied width and height attributes: ` +
|
|
@@ -6991,7 +6985,7 @@ function assertNoImageDistortion(dir, img, renderer) {
|
|
|
6991
6985
|
`\nTo fix this, update the width and height attributes.`));
|
|
6992
6986
|
}
|
|
6993
6987
|
else if (stylingDistortion) {
|
|
6994
|
-
console.warn(
|
|
6988
|
+
console.warn(_formatRuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails(dir.ngSrc)} the aspect ratio of the rendered image ` +
|
|
6995
6989
|
`does not match the image's intrinsic aspect ratio. ` +
|
|
6996
6990
|
`\nIntrinsic image size: ${intrinsicWidth}w x ${intrinsicHeight}h ` +
|
|
6997
6991
|
`(aspect-ratio: ${round(intrinsicAspectRatio)}). \nRendered image size: ` +
|
|
@@ -7009,7 +7003,7 @@ function assertNoImageDistortion(dir, img, renderer) {
|
|
|
7009
7003
|
const oversizedWidth = intrinsicWidth - recommendedWidth >= OVERSIZED_IMAGE_TOLERANCE;
|
|
7010
7004
|
const oversizedHeight = intrinsicHeight - recommendedHeight >= OVERSIZED_IMAGE_TOLERANCE;
|
|
7011
7005
|
if (oversizedWidth || oversizedHeight) {
|
|
7012
|
-
console.warn(
|
|
7006
|
+
console.warn(_formatRuntimeError(2960 /* RuntimeErrorCode.OVERSIZED_IMAGE */, `${imgDirectiveDetails(dir.ngSrc)} the intrinsic image is significantly ` +
|
|
7013
7007
|
`larger than necessary. ` +
|
|
7014
7008
|
`\nRendered image size: ${renderedWidth}w x ${renderedHeight}h. ` +
|
|
7015
7009
|
`\nIntrinsic image size: ${intrinsicWidth}w x ${intrinsicHeight}h. ` +
|
|
@@ -7041,7 +7035,7 @@ function assertNonEmptyWidthAndHeight(dir) {
|
|
|
7041
7035
|
if (dir.height === undefined)
|
|
7042
7036
|
missingAttributes.push('height');
|
|
7043
7037
|
if (missingAttributes.length > 0) {
|
|
7044
|
-
throw new
|
|
7038
|
+
throw new _RuntimeError(2954 /* RuntimeErrorCode.REQUIRED_INPUT_MISSING */, `${imgDirectiveDetails(dir.ngSrc)} these required attributes ` +
|
|
7045
7039
|
`are missing: ${missingAttributes.map((attr) => `"${attr}"`).join(', ')}. ` +
|
|
7046
7040
|
`Including "width" and "height" attributes will prevent image-related layout shifts. ` +
|
|
7047
7041
|
`To fix this, include "width" and "height" attributes on the image tag or turn on ` +
|
|
@@ -7054,7 +7048,7 @@ function assertNonEmptyWidthAndHeight(dir) {
|
|
|
7054
7048
|
*/
|
|
7055
7049
|
function assertEmptyWidthAndHeight(dir) {
|
|
7056
7050
|
if (dir.width || dir.height) {
|
|
7057
|
-
throw new
|
|
7051
|
+
throw new _RuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails(dir.ngSrc)} the attributes \`height\` and/or \`width\` are present ` +
|
|
7058
7052
|
`along with the \`fill\` attribute. Because \`fill\` mode causes an image to fill its containing ` +
|
|
7059
7053
|
`element, the size attributes have no effect and should be removed.`);
|
|
7060
7054
|
}
|
|
@@ -7069,7 +7063,7 @@ function assertNonZeroRenderedHeight(dir, img, renderer) {
|
|
|
7069
7063
|
removeErrorListenerFn();
|
|
7070
7064
|
const renderedHeight = img.clientHeight;
|
|
7071
7065
|
if (dir.fill && renderedHeight === 0) {
|
|
7072
|
-
console.warn(
|
|
7066
|
+
console.warn(_formatRuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails(dir.ngSrc)} the height of the fill-mode image is zero. ` +
|
|
7073
7067
|
`This is likely because the containing element does not have the CSS 'position' ` +
|
|
7074
7068
|
`property set to one of the following: "relative", "fixed", or "absolute". ` +
|
|
7075
7069
|
`To fix this problem, make sure the container element has the CSS 'position' ` +
|
|
@@ -7090,7 +7084,7 @@ function assertNonZeroRenderedHeight(dir, img, renderer) {
|
|
|
7090
7084
|
*/
|
|
7091
7085
|
function assertValidLoadingInput(dir) {
|
|
7092
7086
|
if (dir.loading && dir.priority) {
|
|
7093
|
-
throw new
|
|
7087
|
+
throw new _RuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails(dir.ngSrc)} the \`loading\` attribute ` +
|
|
7094
7088
|
`was used on an image that was marked "priority". ` +
|
|
7095
7089
|
`Setting \`loading\` on priority images is not allowed ` +
|
|
7096
7090
|
`because these images will always be eagerly loaded. ` +
|
|
@@ -7098,7 +7092,7 @@ function assertValidLoadingInput(dir) {
|
|
|
7098
7092
|
}
|
|
7099
7093
|
const validInputs = ['auto', 'eager', 'lazy'];
|
|
7100
7094
|
if (typeof dir.loading === 'string' && !validInputs.includes(dir.loading)) {
|
|
7101
|
-
throw new
|
|
7095
|
+
throw new _RuntimeError(2952 /* RuntimeErrorCode.INVALID_INPUT */, `${imgDirectiveDetails(dir.ngSrc)} the \`loading\` attribute ` +
|
|
7102
7096
|
`has an invalid value (\`${dir.loading}\`). ` +
|
|
7103
7097
|
`To fix this, provide a valid value ("lazy", "eager", or "auto").`);
|
|
7104
7098
|
}
|
|
@@ -7122,7 +7116,7 @@ function assertNotMissingBuiltInLoader(ngSrc, imageLoader) {
|
|
|
7122
7116
|
}
|
|
7123
7117
|
}
|
|
7124
7118
|
if (builtInLoaderName) {
|
|
7125
|
-
console.warn(
|
|
7119
|
+
console.warn(_formatRuntimeError(2962 /* RuntimeErrorCode.MISSING_BUILTIN_LOADER */, `NgOptimizedImage: It looks like your images may be hosted on the ` +
|
|
7126
7120
|
`${builtInLoaderName} CDN, but your app is not using Angular's ` +
|
|
7127
7121
|
`built-in loader for that CDN. We recommend switching to use ` +
|
|
7128
7122
|
`the built-in by calling \`provide${builtInLoaderName}Loader()\` ` +
|
|
@@ -7137,7 +7131,7 @@ function assertNotMissingBuiltInLoader(ngSrc, imageLoader) {
|
|
|
7137
7131
|
*/
|
|
7138
7132
|
function assertNoNgSrcsetWithoutLoader(dir, imageLoader) {
|
|
7139
7133
|
if (dir.ngSrcset && imageLoader === noopImageLoader) {
|
|
7140
|
-
console.warn(
|
|
7134
|
+
console.warn(_formatRuntimeError(2963 /* RuntimeErrorCode.MISSING_NECESSARY_LOADER */, `${imgDirectiveDetails(dir.ngSrc)} the \`ngSrcset\` attribute is present but ` +
|
|
7141
7135
|
`no image loader is configured (i.e. the default one is being used), ` +
|
|
7142
7136
|
`which would result in the same image being used for all configured sizes. ` +
|
|
7143
7137
|
`To fix this, provide a loader or remove the \`ngSrcset\` attribute from the image.`));
|
|
@@ -7149,7 +7143,7 @@ function assertNoNgSrcsetWithoutLoader(dir, imageLoader) {
|
|
|
7149
7143
|
*/
|
|
7150
7144
|
function assertNoLoaderParamsWithoutLoader(dir, imageLoader) {
|
|
7151
7145
|
if (dir.loaderParams && imageLoader === noopImageLoader) {
|
|
7152
|
-
console.warn(
|
|
7146
|
+
console.warn(_formatRuntimeError(2963 /* RuntimeErrorCode.MISSING_NECESSARY_LOADER */, `${imgDirectiveDetails(dir.ngSrc)} the \`loaderParams\` attribute is present but ` +
|
|
7153
7147
|
`no image loader is configured (i.e. the default one is being used), ` +
|
|
7154
7148
|
`which means that the loaderParams data will not be consumed and will not affect the URL. ` +
|
|
7155
7149
|
`To fix this, provide a custom loader or remove the \`loaderParams\` attribute from the image.`));
|
|
@@ -7163,7 +7157,7 @@ async function assetPriorityCountBelowThreshold(appRef) {
|
|
|
7163
7157
|
IMGS_WITH_PRIORITY_ATTR_COUNT++;
|
|
7164
7158
|
await appRef.whenStable();
|
|
7165
7159
|
if (IMGS_WITH_PRIORITY_ATTR_COUNT > PRIORITY_COUNT_THRESHOLD) {
|
|
7166
|
-
console.warn(
|
|
7160
|
+
console.warn(_formatRuntimeError(2966 /* RuntimeErrorCode.TOO_MANY_PRIORITY_ATTRIBUTES */, `NgOptimizedImage: The "priority" attribute is set to true more than ${PRIORITY_COUNT_THRESHOLD} times (${IMGS_WITH_PRIORITY_ATTR_COUNT} times). ` +
|
|
7167
7161
|
`Marking too many images as "high" priority can hurt your application's LCP (https://web.dev/lcp). ` +
|
|
7168
7162
|
`"Priority" should only be set on the image expected to be the page's LCP element.`));
|
|
7169
7163
|
}
|
|
@@ -7182,7 +7176,7 @@ function assertPlaceholderDimensions(dir, imgElement) {
|
|
|
7182
7176
|
let renderedWidth = parseFloat(computedStyle.getPropertyValue('width'));
|
|
7183
7177
|
let renderedHeight = parseFloat(computedStyle.getPropertyValue('height'));
|
|
7184
7178
|
if (renderedWidth > PLACEHOLDER_DIMENSION_LIMIT || renderedHeight > PLACEHOLDER_DIMENSION_LIMIT) {
|
|
7185
|
-
console.warn(
|
|
7179
|
+
console.warn(_formatRuntimeError(2967 /* RuntimeErrorCode.PLACEHOLDER_DIMENSION_LIMIT_EXCEEDED */, `${imgDirectiveDetails(dir.ngSrc)} it uses a placeholder image, but at least one ` +
|
|
7186
7180
|
`of the dimensions attribute (height or width) exceeds the limit of ${PLACEHOLDER_DIMENSION_LIMIT}px. ` +
|
|
7187
7181
|
`To fix this, use a smaller image as a placeholder.`));
|
|
7188
7182
|
}
|
|
@@ -7211,7 +7205,7 @@ function unwrapSafeUrl(value) {
|
|
|
7211
7205
|
if (typeof value === 'string') {
|
|
7212
7206
|
return value;
|
|
7213
7207
|
}
|
|
7214
|
-
return
|
|
7208
|
+
return _unwrapSafeValue(value);
|
|
7215
7209
|
}
|
|
7216
7210
|
// Transform function to handle inputs which may be booleans, strings, or string representations
|
|
7217
7211
|
// of boolean values. Used for the placeholder attribute.
|
|
@@ -7222,24 +7216,5 @@ function booleanOrUrlAttribute(value) {
|
|
|
7222
7216
|
return booleanAttribute(value);
|
|
7223
7217
|
}
|
|
7224
7218
|
|
|
7225
|
-
/**
|
|
7226
|
-
* @module
|
|
7227
|
-
* @description
|
|
7228
|
-
* Entry point for all public APIs of the common package.
|
|
7229
|
-
*/
|
|
7230
|
-
|
|
7231
|
-
/**
|
|
7232
|
-
* @module
|
|
7233
|
-
* @description
|
|
7234
|
-
* Entry point for all public APIs of this package.
|
|
7235
|
-
*/
|
|
7236
|
-
// This file only reexports content of the `src` folder. Keep it that way.
|
|
7237
|
-
|
|
7238
|
-
// This file is not used to build this module. It is only used during editing
|
|
7239
|
-
|
|
7240
|
-
/**
|
|
7241
|
-
* Generated bundle index. Do not edit.
|
|
7242
|
-
*/
|
|
7243
|
-
|
|
7244
7219
|
export { APP_BASE_HREF, AsyncPipe, BrowserPlatformLocation, CommonModule, CurrencyPipe, DATE_PIPE_DEFAULT_OPTIONS, DATE_PIPE_DEFAULT_TIMEZONE, DOCUMENT, DatePipe, DecimalPipe, FormStyle, FormatWidth, HashLocationStrategy, I18nPluralPipe, I18nSelectPipe, IMAGE_LOADER, JsonPipe, KeyValuePipe, LOCATION_INITIALIZED, Location, LocationStrategy, LowerCasePipe, NgClass, NgComponentOutlet, NgForOf as NgFor, NgForOf, NgForOfContext, NgIf, NgIfContext, NgLocaleLocalization, NgLocalization, NgOptimizedImage, NgPlural, NgPluralCase, NgStyle, NgSwitch, NgSwitchCase, NgSwitchDefault, NgTemplateOutlet, NumberFormatStyle, NumberSymbol, PRECONNECT_CHECK_BLOCKLIST, PathLocationStrategy, PercentPipe, PlatformLocation, Plural, SlicePipe, TitleCasePipe, TranslationWidth, UpperCasePipe, VERSION, ViewportScroller, WeekDay, XhrFactory, formatCurrency, formatDate, formatNumber, formatPercent, getCurrencySymbol, getLocaleCurrencyCode, getLocaleCurrencyName, getLocaleCurrencySymbol, getLocaleDateFormat, getLocaleDateTimeFormat, getLocaleDayNames, getLocaleDayPeriods, getLocaleDirection, getLocaleEraNames, getLocaleExtraDayPeriodRules, getLocaleExtraDayPeriods, getLocaleFirstDayOfWeek, getLocaleId, getLocaleMonthNames, getLocaleNumberFormat, getLocaleNumberSymbol, getLocalePluralCase, getLocaleTimeFormat, getLocaleWeekEndRange, getNumberOfCurrencyDigits, isPlatformBrowser, isPlatformServer, provideCloudflareLoader, provideCloudinaryLoader, provideImageKitLoader, provideImgixLoader, provideNetlifyLoader, registerLocaleData, DomAdapter as ɵDomAdapter, NullViewportScroller as ɵNullViewportScroller, PLATFORM_BROWSER_ID as ɵPLATFORM_BROWSER_ID, PLATFORM_SERVER_ID as ɵPLATFORM_SERVER_ID, PlatformNavigation as ɵPlatformNavigation, getDOM as ɵgetDOM, normalizeQueryParams as ɵnormalizeQueryParams, parseCookieValue as ɵparseCookieValue, setRootDomAdapter as ɵsetRootDomAdapter };
|
|
7245
7220
|
//# sourceMappingURL=common.mjs.map
|