@angular/platform-browser 17.0.0-next.7 → 17.0.0-next.8
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/animations/async/index.d.ts +1 -1
- package/animations/index.d.ts +1 -1
- package/esm2022/animations/async/src/async_animation_renderer.mjs +40 -4
- package/esm2022/animations/src/animation_builder.mjs +3 -3
- package/esm2022/animations/src/module.mjs +8 -8
- package/esm2022/animations/src/providers.mjs +3 -3
- package/esm2022/src/browser/meta.mjs +3 -3
- package/esm2022/src/browser/title.mjs +3 -3
- package/esm2022/src/browser/xhr.mjs +3 -3
- package/esm2022/src/browser.mjs +4 -4
- package/esm2022/src/dom/dom_renderer.mjs +3 -3
- package/esm2022/src/dom/events/dom_events.mjs +3 -3
- package/esm2022/src/dom/events/event_manager.mjs +3 -3
- package/esm2022/src/dom/events/hammer_gestures.mjs +10 -10
- package/esm2022/src/dom/events/key_events.mjs +3 -3
- package/esm2022/src/dom/shared_styles_host.mjs +20 -18
- package/esm2022/src/errors.mjs +1 -1
- package/esm2022/src/hydration.mjs +31 -49
- package/esm2022/src/platform-browser.mjs +2 -2
- package/esm2022/src/private_export.mjs +1 -1
- package/esm2022/src/security/dom_sanitization_service.mjs +6 -6
- package/esm2022/src/version.mjs +1 -1
- package/esm2022/testing/src/browser.mjs +4 -4
- package/fesm2022/animations/async.mjs +40 -5
- package/fesm2022/animations/async.mjs.map +1 -1
- package/fesm2022/animations.mjs +15 -15
- package/fesm2022/platform-browser.mjs +91 -107
- package/fesm2022/platform-browser.mjs.map +1 -1
- package/fesm2022/testing.mjs +5 -5
- package/index.d.ts +32 -37
- package/package.json +4 -4
- package/testing/index.d.ts +1 -1
@@ -5,61 +5,38 @@
|
|
5
5
|
* Use of this source code is governed by an MIT-style license that can be
|
6
6
|
* found in the LICENSE file at https://angular.io/license
|
7
7
|
*/
|
8
|
-
import { ɵwithHttpTransferCache
|
9
|
-
import { ENVIRONMENT_INITIALIZER, inject, makeEnvironmentProviders, NgZone, ɵConsole as Console, ɵformatRuntimeError as formatRuntimeError, ɵwithDomHydration as withDomHydration } from '@angular/core';
|
8
|
+
import { ɵwithHttpTransferCache } from '@angular/common/http';
|
9
|
+
import { ENVIRONMENT_INITIALIZER, inject, makeEnvironmentProviders, NgZone, ɵConsole as Console, ɵformatRuntimeError as formatRuntimeError, ɵwithDomHydration as withDomHydration, } from '@angular/core';
|
10
10
|
/**
|
11
11
|
* Helper function to create an object that represents a Hydration feature.
|
12
12
|
*/
|
13
|
-
function hydrationFeature(
|
14
|
-
return { ɵkind
|
13
|
+
function hydrationFeature(ɵkind, ɵproviders = [], ɵoptions = {}) {
|
14
|
+
return { ɵkind, ɵproviders };
|
15
15
|
}
|
16
16
|
/**
|
17
|
-
* Disables
|
18
|
-
*
|
19
|
-
*
|
20
|
-
* When this option is enabled, make sure that the initial navigation
|
21
|
-
* option is configured for the Router as `enabledBlocking` by using the
|
22
|
-
* `withEnabledBlockingInitialNavigation` in the `provideRouter` call:
|
23
|
-
*
|
24
|
-
* ```
|
25
|
-
* bootstrapApplication(RootComponent, {
|
26
|
-
* providers: [
|
27
|
-
* provideRouter(
|
28
|
-
* // ... other features ...
|
29
|
-
* withEnabledBlockingInitialNavigation()
|
30
|
-
* ),
|
31
|
-
* provideClientHydration(withNoDomReuse())
|
32
|
-
* ]
|
33
|
-
* });
|
34
|
-
* ```
|
35
|
-
*
|
36
|
-
* This would ensure that the application is rerendered after all async
|
37
|
-
* operations in the Router (such as lazy-loading of components,
|
38
|
-
* waiting for async guards and resolvers) are completed to avoid
|
39
|
-
* clearing the DOM on the client too soon, thus causing content flicker.
|
40
|
-
*
|
41
|
-
* @see {@link provideRouter}
|
42
|
-
* @see {@link withEnabledBlockingInitialNavigation}
|
17
|
+
* Disables HTTP transfer cache. Effectively causes HTTP requests to be performed twice: once on the
|
18
|
+
* server and other one on the browser.
|
43
19
|
*
|
44
20
|
* @publicApi
|
45
21
|
* @developerPreview
|
46
22
|
*/
|
47
|
-
export function
|
23
|
+
export function withNoHttpTransferCache() {
|
48
24
|
// This feature has no providers and acts as a flag that turns off
|
49
|
-
//
|
50
|
-
return hydrationFeature(0 /* HydrationFeatureKind.
|
25
|
+
// HTTP transfer cache (which otherwise is turned on by default).
|
26
|
+
return hydrationFeature(0 /* HydrationFeatureKind.NoHttpTransferCache */);
|
51
27
|
}
|
52
28
|
/**
|
53
|
-
*
|
54
|
-
*
|
29
|
+
* The function accepts a an object, which allows to configure cache parameters,
|
30
|
+
* such as which headers should be included (no headers are included by default),
|
31
|
+
* wether POST requests should be cached or a callback function to determine if a
|
32
|
+
* particular request should be cached.
|
55
33
|
*
|
56
34
|
* @publicApi
|
57
35
|
* @developerPreview
|
58
36
|
*/
|
59
|
-
export function
|
60
|
-
// This feature has no providers and acts as a flag
|
61
|
-
|
62
|
-
return hydrationFeature(1 /* HydrationFeatureKind.NoHttpTransferCache */);
|
37
|
+
export function withHttpTransferCacheOptions(options) {
|
38
|
+
// This feature has no providers and acts as a flag to pass options to the HTTP transfer cache.
|
39
|
+
return hydrationFeature(1 /* HydrationFeatureKind.HttpTransferCacheOptions */, ɵwithHttpTransferCache(options));
|
63
40
|
}
|
64
41
|
/**
|
65
42
|
* Returns an `ENVIRONMENT_INITIALIZER` token setup with a function
|
@@ -89,19 +66,16 @@ function provideZoneJsCompatibilityDetector() {
|
|
89
66
|
* Sets up providers necessary to enable hydration functionality for the application.
|
90
67
|
*
|
91
68
|
* By default, the function enables the recommended set of features for the optimal
|
92
|
-
* performance for most of the applications.
|
93
|
-
* passing special functions (from the `HydrationFeatures` set) as arguments to the
|
94
|
-
* `provideClientHydration` function. It includes the following features:
|
69
|
+
* performance for most of the applications. It includes the following features:
|
95
70
|
*
|
96
71
|
* * Reconciling DOM hydration. Learn more about it [here](guide/hydration).
|
97
72
|
* * [`HttpClient`](api/common/http/HttpClient) response caching while running on the server and
|
98
73
|
* transferring this cache to the client to avoid extra HTTP requests. Learn more about data caching
|
99
74
|
* [here](/guide/universal#caching-data-when-using-httpclient).
|
100
75
|
*
|
101
|
-
* These functions
|
102
|
-
* * {@link withNoDomReuse} to disable DOM nodes reuse during hydration
|
76
|
+
* These functions allow you to disable some of the default features or configure features
|
103
77
|
* * {@link withNoHttpTransferCache} to disable HTTP transfer cache
|
104
|
-
*
|
78
|
+
* * {@link withHttpTransferCacheOptions} to configure some HTTP transfer cache options
|
105
79
|
*
|
106
80
|
* @usageNotes
|
107
81
|
*
|
@@ -124,8 +98,8 @@ function provideZoneJsCompatibilityDetector() {
|
|
124
98
|
* export class AppModule {}
|
125
99
|
* ```
|
126
100
|
*
|
127
|
-
* @see {@link withNoDomReuse}
|
128
101
|
* @see {@link withNoHttpTransferCache}
|
102
|
+
* @see {@link withHttpTransferCacheOptions}
|
129
103
|
*
|
130
104
|
* @param features Optional features to configure additional router behaviors.
|
131
105
|
* @returns A set of providers to enable hydration.
|
@@ -136,17 +110,25 @@ function provideZoneJsCompatibilityDetector() {
|
|
136
110
|
export function provideClientHydration(...features) {
|
137
111
|
const providers = [];
|
138
112
|
const featuresKind = new Set();
|
113
|
+
const hasHttpTransferCacheOptions = featuresKind.has(1 /* HydrationFeatureKind.HttpTransferCacheOptions */);
|
139
114
|
for (const { ɵproviders, ɵkind } of features) {
|
140
115
|
featuresKind.add(ɵkind);
|
141
116
|
if (ɵproviders.length) {
|
142
117
|
providers.push(ɵproviders);
|
143
118
|
}
|
144
119
|
}
|
120
|
+
if (typeof ngDevMode !== 'undefined' && ngDevMode &&
|
121
|
+
featuresKind.has(0 /* HydrationFeatureKind.NoHttpTransferCache */) && hasHttpTransferCacheOptions) {
|
122
|
+
// TODO: Make this a runtime error
|
123
|
+
throw new Error('Configuration error: found both withHttpTransferCacheOptions() and withNoHttpTransferCache() in the same call to provideClientHydration(), which is a contradiction.');
|
124
|
+
}
|
145
125
|
return makeEnvironmentProviders([
|
146
126
|
(typeof ngDevMode !== 'undefined' && ngDevMode) ? provideZoneJsCompatibilityDetector() : [],
|
147
|
-
|
148
|
-
(featuresKind.has(
|
127
|
+
withDomHydration(),
|
128
|
+
((featuresKind.has(0 /* HydrationFeatureKind.NoHttpTransferCache */) || hasHttpTransferCacheOptions) ?
|
129
|
+
[] :
|
130
|
+
ɵwithHttpTransferCache({})),
|
149
131
|
providers,
|
150
132
|
]);
|
151
133
|
}
|
152
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHlkcmF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGxhdGZvcm0tYnJvd3Nlci9zcmMvaHlkcmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILE9BQU8sRUFBQyxzQkFBc0IsSUFBSSxxQkFBcUIsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ3JGLE9BQU8sRUFBQyx1QkFBdUIsRUFBd0IsTUFBTSxFQUFFLHdCQUF3QixFQUFFLE1BQU0sRUFBWSxRQUFRLElBQUksT0FBTyxFQUFFLG1CQUFtQixJQUFJLGtCQUFrQixFQUFFLGlCQUFpQixJQUFJLGdCQUFnQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBMkJ2Tzs7R0FFRztBQUNILFNBQVMsZ0JBQWdCLENBQ3JCLElBQWlCLEVBQUUsWUFBd0IsRUFBRTtJQUMvQyxPQUFPLEVBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFDLENBQUM7QUFDOUMsQ0FBQztBQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E4Qkc7QUFDSCxNQUFNLFVBQVUsY0FBYztJQUM1QixrRUFBa0U7SUFDbEUsdUVBQXVFO0lBQ3ZFLE9BQU8sZ0JBQWdCLGdEQUF3QyxDQUFDO0FBQ2xFLENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFDSCxNQUFNLFVBQVUsdUJBQXVCO0lBRXJDLGtFQUFrRTtJQUNsRSxpRUFBaUU7SUFDakUsT0FBTyxnQkFBZ0Isa0RBQTBDLENBQUM7QUFDcEUsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxTQUFTLGtDQUFrQztJQUN6QyxPQUFPLENBQUM7WUFDTixPQUFPLEVBQUUsdUJBQXVCO1lBQ2hDLFFBQVEsRUFBRSxHQUFHLEVBQUU7Z0JBQ2IsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUM5QixrRUFBa0U7Z0JBQ2xFLG1FQUFtRTtnQkFDbkUsSUFBSSxNQUFNLENBQUMsV0FBVyxLQUFLLE1BQU0sRUFBRTtvQkFDakMsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO29CQUNoQyxNQUFNLE9BQU8sR0FBRyxrQkFBa0IsMkRBRTlCLGlFQUFpRTt3QkFDN0QsdURBQXVEO3dCQUN2RCxrREFBa0QsQ0FBQyxDQUFDO29CQUM1RCxzQ0FBc0M7b0JBQ3RDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7aUJBQ3ZCO1lBQ0gsQ0FBQztZQUNELEtBQUssRUFBRSxJQUFJO1NBQ1osQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQStDRztBQUNILE1BQU0sVUFBVSxzQkFBc0IsQ0FBQyxHQUFHLFFBQWtEO0lBRTFGLE1BQU0sU0FBUyxHQUFlLEVBQUUsQ0FBQztJQUNqQyxNQUFNLFlBQVksR0FBRyxJQUFJLEdBQUcsRUFBd0IsQ0FBQztJQUVyRCxLQUFLLE1BQU0sRUFBQyxVQUFVLEVBQUUsS0FBSyxFQUFDLElBQUksUUFBUSxFQUFFO1FBQzFDLFlBQVksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFeEIsSUFBSSxVQUFVLENBQUMsTUFBTSxFQUFFO1lBQ3JCLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7U0FDNUI7S0FDRjtJQUNELE9BQU8sd0JBQXdCLENBQUM7UUFDOUIsQ0FBQyxPQUFPLFNBQVMsS0FBSyxXQUFXLElBQUksU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLGtDQUFrQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUU7UUFDM0YsQ0FBQyxZQUFZLENBQUMsR0FBRyxnREFBd0MsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3BGLENBQUMsWUFBWSxDQUFDLEdBQUcsa0RBQTBDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUMzRixTQUFTO0tBQ1YsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge8m1d2l0aEh0dHBUcmFuc2ZlckNhY2hlIGFzIHdpdGhIdHRwVHJhbnNmZXJDYWNoZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtFTlZJUk9OTUVOVF9JTklUSUFMSVpFUiwgRW52aXJvbm1lbnRQcm92aWRlcnMsIGluamVjdCwgbWFrZUVudmlyb25tZW50UHJvdmlkZXJzLCBOZ1pvbmUsIFByb3ZpZGVyLCDJtUNvbnNvbGUgYXMgQ29uc29sZSwgybVmb3JtYXRSdW50aW1lRXJyb3IgYXMgZm9ybWF0UnVudGltZUVycm9yLCDJtXdpdGhEb21IeWRyYXRpb24gYXMgd2l0aERvbUh5ZHJhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7UnVudGltZUVycm9yQ29kZX0gZnJvbSAnLi9lcnJvcnMnO1xuXG4vKipcbiAqIFRoZSBsaXN0IG9mIGZlYXR1cmVzIGFzIGFuIGVudW0gdG8gdW5pcXVlbHkgdHlwZSBlYWNoIGBIeWRyYXRpb25GZWF0dXJlYC5cbiAqIEBzZWUge0BsaW5rIEh5ZHJhdGlvbkZlYXR1cmV9XG4gKlxuICogQHB1YmxpY0FwaVxuICogQGRldmVsb3BlclByZXZpZXdcbiAqL1xuZXhwb3J0IGNvbnN0IGVudW0gSHlkcmF0aW9uRmVhdHVyZUtpbmQge1xuICBOb0RvbVJldXNlRmVhdHVyZSxcbiAgTm9IdHRwVHJhbnNmZXJDYWNoZVxufVxuXG4vKipcbiAqIEhlbHBlciB0eXBlIHRvIHJlcHJlc2VudCBhIEh5ZHJhdGlvbiBmZWF0dXJlLlxuICpcbiAqIEBwdWJsaWNBcGlcbiAqIEBkZXZlbG9wZXJQcmV2aWV3XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSHlkcmF0aW9uRmVhdHVyZTxGZWF0dXJlS2luZCBleHRlbmRzIEh5ZHJhdGlvbkZlYXR1cmVLaW5kPiB7XG4gIMm1a2luZDogRmVhdHVyZUtpbmQ7XG4gIMm1cHJvdmlkZXJzOiBQcm92aWRlcltdO1xufVxuXG4vKipcbiAqIEhlbHBlciBmdW5jdGlvbiB0byBjcmVhdGUgYW4gb2JqZWN0IHRoYXQgcmVwcmVzZW50cyBhIEh5ZHJhdGlvbiBmZWF0dXJlLlxuICovXG5mdW5jdGlvbiBoeWRyYXRpb25GZWF0dXJlPEZlYXR1cmVLaW5kIGV4dGVuZHMgSHlkcmF0aW9uRmVhdHVyZUtpbmQ+KFxuICAgIGtpbmQ6IEZlYXR1cmVLaW5kLCBwcm92aWRlcnM6IFByb3ZpZGVyW10gPSBbXSk6IEh5ZHJhdGlvbkZlYXR1cmU8RmVhdHVyZUtpbmQ+IHtcbiAgcmV0dXJuIHvJtWtpbmQ6IGtpbmQsIMm1cHJvdmlkZXJzOiBwcm92aWRlcnN9O1xufVxuXG4vKipcbiAqIERpc2FibGVzIERPTSBub2RlcyByZXVzZSBkdXJpbmcgaHlkcmF0aW9uLiBFZmZlY3RpdmVseSBtYWtlc1xuICogQW5ndWxhciByZS1yZW5kZXIgYW4gYXBwbGljYXRpb24gZnJvbSBzY3JhdGNoIG9uIHRoZSBjbGllbnQuXG4gKlxuICogV2hlbiB0aGlzIG9wdGlvbiBpcyBlbmFibGVkLCBtYWtlIHN1cmUgdGhhdCB0aGUgaW5pdGlhbCBuYXZpZ2F0aW9uXG4gKiBvcHRpb24gaXMgY29uZmlndXJlZCBmb3IgdGhlIFJvdXRlciBhcyBgZW5hYmxlZEJsb2NraW5nYCBieSB1c2luZyB0aGVcbiAqIGB3aXRoRW5hYmxlZEJsb2NraW5nSW5pdGlhbE5hdmlnYXRpb25gIGluIHRoZSBgcHJvdmlkZVJvdXRlcmAgY2FsbDpcbiAqXG4gKiBgYGBcbiAqIGJvb3RzdHJhcEFwcGxpY2F0aW9uKFJvb3RDb21wb25lbnQsIHtcbiAqICAgcHJvdmlkZXJzOiBbXG4gKiAgICAgcHJvdmlkZVJvdXRlcihcbiAqICAgICAgIC8vIC4uLiBvdGhlciBmZWF0dXJlcyAuLi5cbiAqICAgICAgIHdpdGhFbmFibGVkQmxvY2tpbmdJbml0aWFsTmF2aWdhdGlvbigpXG4gKiAgICAgKSxcbiAqICAgICBwcm92aWRlQ2xpZW50SHlkcmF0aW9uKHdpdGhOb0RvbVJldXNlKCkpXG4gKiAgIF1cbiAqIH0pO1xuICogYGBgXG4gKlxuICogVGhpcyB3b3VsZCBlbnN1cmUgdGhhdCB0aGUgYXBwbGljYXRpb24gaXMgcmVyZW5kZXJlZCBhZnRlciBhbGwgYXN5bmNcbiAqIG9wZXJhdGlvbnMgaW4gdGhlIFJvdXRlciAoc3VjaCBhcyBsYXp5LWxvYWRpbmcgb2YgY29tcG9uZW50cyxcbiAqIHdhaXRpbmcgZm9yIGFzeW5jIGd1YXJkcyBhbmQgcmVzb2x2ZXJzKSBhcmUgY29tcGxldGVkIHRvIGF2b2lkXG4gKiBjbGVhcmluZyB0aGUgRE9NIG9uIHRoZSBjbGllbnQgdG9vIHNvb24sIHRodXMgY2F1c2luZyBjb250ZW50IGZsaWNrZXIuXG4gKlxuICogQHNlZSB7QGxpbmsgcHJvdmlkZVJvdXRlcn1cbiAqIEBzZWUge0BsaW5rIHdpdGhFbmFibGVkQmxvY2tpbmdJbml0aWFsTmF2aWdhdGlvbn1cbiAqXG4gKiBAcHVibGljQXBpXG4gKiBAZGV2ZWxvcGVyUHJldmlld1xuICovXG5leHBvcnQgZnVuY3Rpb24gd2l0aE5vRG9tUmV1c2UoKTogSHlkcmF0aW9uRmVhdHVyZTxIeWRyYXRpb25GZWF0dXJlS2luZC5Ob0RvbVJldXNlRmVhdHVyZT4ge1xuICAvLyBUaGlzIGZlYXR1cmUgaGFzIG5vIHByb3ZpZGVycyBhbmQgYWN0cyBhcyBhIGZsYWcgdGhhdCB0dXJucyBvZmZcbiAgLy8gbm9uLWRlc3RydWN0aXZlIGh5ZHJhdGlvbiAod2hpY2ggb3RoZXJ3aXNlIGlzIHR1cm5lZCBvbiBieSBkZWZhdWx0KS5cbiAgcmV0dXJuIGh5ZHJhdGlvbkZlYXR1cmUoSHlkcmF0aW9uRmVhdHVyZUtpbmQuTm9Eb21SZXVzZUZlYXR1cmUpO1xufVxuXG4vKipcbiAqIERpc2FibGVzIEhUVFAgdHJhbnNmZXIgY2FjaGUuIEVmZmVjdGl2ZWx5IGNhdXNlcyBIVFRQIHJlcXVlc3RzIHRvIGJlIHBlcmZvcm1lZCB0d2ljZTogb25jZSBvbiB0aGVcbiAqIHNlcnZlciBhbmQgb3RoZXIgb25lIG9uIHRoZSBicm93c2VyLlxuICpcbiAqIEBwdWJsaWNBcGlcbiAqIEBkZXZlbG9wZXJQcmV2aWV3XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB3aXRoTm9IdHRwVHJhbnNmZXJDYWNoZSgpOlxuICAgIEh5ZHJhdGlvbkZlYXR1cmU8SHlkcmF0aW9uRmVhdHVyZUtpbmQuTm9IdHRwVHJhbnNmZXJDYWNoZT4ge1xuICAvLyBUaGlzIGZlYXR1cmUgaGFzIG5vIHByb3ZpZGVycyBhbmQgYWN0cyBhcyBhIGZsYWcgdGhhdCB0dXJucyBvZmZcbiAgLy8gSFRUUCB0cmFuc2ZlciBjYWNoZSAod2hpY2ggb3RoZXJ3aXNlIGlzIHR1cm5lZCBvbiBieSBkZWZhdWx0KS5cbiAgcmV0dXJuIGh5ZHJhdGlvbkZlYXR1cmUoSHlkcmF0aW9uRmVhdHVyZUtpbmQuTm9IdHRwVHJhbnNmZXJDYWNoZSk7XG59XG5cbi8qKlxuICogUmV0dXJucyBhbiBgRU5WSVJPTk1FTlRfSU5JVElBTElaRVJgIHRva2VuIHNldHVwIHdpdGggYSBmdW5jdGlvblxuICogdGhhdCB2ZXJpZmllcyB3aGV0aGVyIGNvbXBhdGlibGUgWm9uZUpTIHdhcyB1c2VkIGluIGFuIGFwcGxpY2F0aW9uXG4gKiBhbmQgbG9ncyBhIHdhcm5pbmcgaW4gYSBjb25zb2xlIGlmIGl0J3Mgbm90IHRoZSBjYXNlLlxuICovXG5mdW5jdGlvbiBwcm92aWRlWm9uZUpzQ29tcGF0aWJpbGl0eURldGVjdG9yKCk6IFByb3ZpZGVyW10ge1xuICByZXR1cm4gW3tcbiAgICBwcm92aWRlOiBFTlZJUk9OTUVOVF9JTklUSUFMSVpFUixcbiAgICB1c2VWYWx1ZTogKCkgPT4ge1xuICAgICAgY29uc3Qgbmdab25lID0gaW5qZWN0KE5nWm9uZSk7XG4gICAgICAvLyBDaGVja2luZyBgbmdab25lIGluc3RhbmNlb2YgTmdab25lYCB3b3VsZCBiZSBpbnN1ZmZpY2llbnQgaGVyZSxcbiAgICAgIC8vIGJlY2F1c2UgY3VzdG9tIGltcGxlbWVudGF0aW9ucyBtaWdodCB1c2UgTmdab25lIGFzIGEgYmFzZSBjbGFzcy5cbiAgICAgIGlmIChuZ1pvbmUuY29uc3RydWN0b3IgIT09IE5nWm9uZSkge1xuICAgICAgICBjb25zdCBjb25zb2xlID0gaW5qZWN0KENvbnNvbGUpO1xuICAgICAgICBjb25zdCBtZXNzYWdlID0gZm9ybWF0UnVudGltZUVycm9yKFxuICAgICAgICAgICAgUnVudGltZUVycm9yQ29kZS5VTlNVUFBPUlRFRF9aT05FSlNfSU5TVEFOQ0UsXG4gICAgICAgICAgICAnQW5ndWxhciBkZXRlY3RlZCB0aGF0IGh5ZHJhdGlvbiB3YXMgZW5hYmxlZCBmb3IgYW4gYXBwbGljYXRpb24gJyArXG4gICAgICAgICAgICAgICAgJ3RoYXQgdXNlcyBhIGN1c3RvbSBvciBhIG5vb3AgWm9uZS5qcyBpbXBsZW1lbnRhdGlvbi4gJyArXG4gICAgICAgICAgICAgICAgJ1RoaXMgaXMgbm90IHlldCBhIGZ1bGx5IHN1cHBvcnRlZCBjb25maWd1cmF0aW9uLicpO1xuICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tY29uc29sZVxuICAgICAgICBjb25zb2xlLndhcm4obWVzc2FnZSk7XG4gICAgICB9XG4gICAgfSxcbiAgICBtdWx0aTogdHJ1ZSxcbiAgfV07XG59XG5cbi8qKlxuICogU2V0cyB1cCBwcm92aWRlcnMgbmVjZXNzYXJ5IHRvIGVuYWJsZSBoeWRyYXRpb24gZnVuY3Rpb25hbGl0eSBmb3IgdGhlIGFwcGxpY2F0aW9uLlxuICpcbiAqIEJ5IGRlZmF1bHQsIHRoZSBmdW5jdGlvbiBlbmFibGVzIHRoZSByZWNvbW1lbmRlZCBzZXQgb2YgZmVhdHVyZXMgZm9yIHRoZSBvcHRpbWFsXG4gKiBwZXJmb3JtYW5jZSBmb3IgbW9zdCBvZiB0aGUgYXBwbGljYXRpb25zLiBZb3UgY2FuIGVuYWJsZS9kaXNhYmxlIGZlYXR1cmVzIGJ5XG4gKiBwYXNzaW5nIHNwZWNpYWwgZnVuY3Rpb25zIChmcm9tIHRoZSBgSHlkcmF0aW9uRmVhdHVyZXNgIHNldCkgYXMgYXJndW1lbnRzIHRvIHRoZVxuICogYHByb3ZpZGVDbGllbnRIeWRyYXRpb25gIGZ1bmN0aW9uLiBJdCBpbmNsdWRlcyB0aGUgZm9sbG93aW5nIGZlYXR1cmVzOlxuICpcbiAqICogUmVjb25jaWxpbmcgRE9NIGh5ZHJhdGlvbi4gTGVhcm4gbW9yZSBhYm91dCBpdCBbaGVyZV0oZ3VpZGUvaHlkcmF0aW9uKS5cbiAqICogW2BIdHRwQ2xpZW50YF0oYXBpL2NvbW1vbi9odHRwL0h0dHBDbGllbnQpIHJlc3BvbnNlIGNhY2hpbmcgd2hpbGUgcnVubmluZyBvbiB0aGUgc2VydmVyIGFuZFxuICogdHJhbnNmZXJyaW5nIHRoaXMgY2FjaGUgdG8gdGhlIGNsaWVudCB0byBhdm9pZCBleHRyYSBIVFRQIHJlcXVlc3RzLiBMZWFybiBtb3JlIGFib3V0IGRhdGEgY2FjaGluZ1xuICogW2hlcmVdKC9ndWlkZS91bml2ZXJzYWwjY2FjaGluZy1kYXRhLXdoZW4tdXNpbmctaHR0cGNsaWVudCkuXG4gKlxuICogVGhlc2UgZnVuY3Rpb25zIGZ1bmN0aW9ucyB3aWxsIGFsbG93IHlvdSB0byBkaXNhYmxlIHNvbWUgb2YgdGhlIGRlZmF1bHQgZmVhdHVyZXM6XG4gKiAqIHtAbGluayB3aXRoTm9Eb21SZXVzZX0gdG8gZGlzYWJsZSBET00gbm9kZXMgcmV1c2UgZHVyaW5nIGh5ZHJhdGlvblxuICogKiB7QGxpbmsgd2l0aE5vSHR0cFRyYW5zZmVyQ2FjaGV9IHRvIGRpc2FibGUgSFRUUCB0cmFuc2ZlciBjYWNoZVxuICpcbiAqXG4gKiBAdXNhZ2VOb3Rlc1xuICpcbiAqIEJhc2ljIGV4YW1wbGUgb2YgaG93IHlvdSBjYW4gZW5hYmxlIGh5ZHJhdGlvbiBpbiB5b3VyIGFwcGxpY2F0aW9uIHdoZW5cbiAqIGBib290c3RyYXBBcHBsaWNhdGlvbmAgZnVuY3Rpb24gaXMgdXNlZDpcbiAqIGBgYFxuICogYm9vdHN0cmFwQXBwbGljYXRpb24oQXBwQ29tcG9uZW50LCB7XG4gKiAgIHByb3ZpZGVyczogW3Byb3ZpZGVDbGllbnRIeWRyYXRpb24oKV1cbiAqIH0pO1xuICogYGBgXG4gKlxuICogQWx0ZXJuYXRpdmVseSBpZiB5b3UgYXJlIHVzaW5nIE5nTW9kdWxlcywgeW91IHdvdWxkIGFkZCBgcHJvdmlkZUNsaWVudEh5ZHJhdGlvbmBcbiAqIHRvIHlvdXIgcm9vdCBhcHAgbW9kdWxlJ3MgcHJvdmlkZXIgbGlzdC5cbiAqIGBgYFxuICogQE5nTW9kdWxlKHtcbiAqICAgZGVjbGFyYXRpb25zOiBbUm9vdENtcF0sXG4gKiAgIGJvb3RzdHJhcDogW1Jvb3RDbXBdLFxuICogICBwcm92aWRlcnM6IFtwcm92aWRlQ2xpZW50SHlkcmF0aW9uKCldLFxuICogfSlcbiAqIGV4cG9ydCBjbGFzcyBBcHBNb2R1bGUge31cbiAqIGBgYFxuICpcbiAqIEBzZWUge0BsaW5rIHdpdGhOb0RvbVJldXNlfVxuICogQHNlZSB7QGxpbmsgd2l0aE5vSHR0cFRyYW5zZmVyQ2FjaGV9XG4gKlxuICogQHBhcmFtIGZlYXR1cmVzIE9wdGlvbmFsIGZlYXR1cmVzIHRvIGNvbmZpZ3VyZSBhZGRpdGlvbmFsIHJvdXRlciBiZWhhdmlvcnMuXG4gKiBAcmV0dXJucyBBIHNldCBvZiBwcm92aWRlcnMgdG8gZW5hYmxlIGh5ZHJhdGlvbi5cbiAqXG4gKiBAcHVibGljQXBpXG4gKiBAZGV2ZWxvcGVyUHJldmlld1xuICovXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZUNsaWVudEh5ZHJhdGlvbiguLi5mZWF0dXJlczogSHlkcmF0aW9uRmVhdHVyZTxIeWRyYXRpb25GZWF0dXJlS2luZD5bXSk6XG4gICAgRW52aXJvbm1lbnRQcm92aWRlcnMge1xuICBjb25zdCBwcm92aWRlcnM6IFByb3ZpZGVyW10gPSBbXTtcbiAgY29uc3QgZmVhdHVyZXNLaW5kID0gbmV3IFNldDxIeWRyYXRpb25GZWF0dXJlS2luZD4oKTtcblxuICBmb3IgKGNvbnN0IHvJtXByb3ZpZGVycywgybVraW5kfSBvZiBmZWF0dXJlcykge1xuICAgIGZlYXR1cmVzS2luZC5hZGQoybVraW5kKTtcblxuICAgIGlmICjJtXByb3ZpZGVycy5sZW5ndGgpIHtcbiAgICAgIHByb3ZpZGVycy5wdXNoKMm1cHJvdmlkZXJzKTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVycyhbXG4gICAgKHR5cGVvZiBuZ0Rldk1vZGUgIT09ICd1bmRlZmluZWQnICYmIG5nRGV2TW9kZSkgPyBwcm92aWRlWm9uZUpzQ29tcGF0aWJpbGl0eURldGVjdG9yKCkgOiBbXSxcbiAgICAoZmVhdHVyZXNLaW5kLmhhcyhIeWRyYXRpb25GZWF0dXJlS2luZC5Ob0RvbVJldXNlRmVhdHVyZSkgPyBbXSA6IHdpdGhEb21IeWRyYXRpb24oKSksXG4gICAgKGZlYXR1cmVzS2luZC5oYXMoSHlkcmF0aW9uRmVhdHVyZUtpbmQuTm9IdHRwVHJhbnNmZXJDYWNoZSkgPyBbXSA6IHdpdGhIdHRwVHJhbnNmZXJDYWNoZSgpKSxcbiAgICBwcm92aWRlcnMsXG4gIF0pO1xufVxuIl19
|
134
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHlkcmF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGxhdGZvcm0tYnJvd3Nlci9zcmMvaHlkcmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILE9BQU8sRUFBMkIsc0JBQXNCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RixPQUFPLEVBQUMsdUJBQXVCLEVBQXdCLE1BQU0sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLEVBQVksUUFBUSxJQUFJLE9BQU8sRUFBRSxtQkFBbUIsSUFBSSxrQkFBa0IsRUFBRSxpQkFBaUIsSUFBSSxnQkFBZ0IsR0FBRSxNQUFNLGVBQWUsQ0FBQztBQTJCeE87O0dBRUc7QUFDSCxTQUFTLGdCQUFnQixDQUNyQixLQUFrQixFQUFFLGFBQXlCLEVBQUUsRUFDL0MsV0FBb0IsRUFBRTtJQUN4QixPQUFPLEVBQUMsS0FBSyxFQUFFLFVBQVUsRUFBQyxDQUFDO0FBQzdCLENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFDSCxNQUFNLFVBQVUsdUJBQXVCO0lBRXJDLGtFQUFrRTtJQUNsRSxpRUFBaUU7SUFDakUsT0FBTyxnQkFBZ0Isa0RBQTBDLENBQUM7QUFDcEUsQ0FBQztBQUVEOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxVQUFVLDRCQUE0QixDQUN4QyxPQUFpQztJQUVuQywrRkFBK0Y7SUFDL0YsT0FBTyxnQkFBZ0Isd0RBQzRCLHNCQUFzQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7QUFDdEYsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxTQUFTLGtDQUFrQztJQUN6QyxPQUFPLENBQUM7WUFDTixPQUFPLEVBQUUsdUJBQXVCO1lBQ2hDLFFBQVEsRUFBRSxHQUFHLEVBQUU7Z0JBQ2IsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUM5QixrRUFBa0U7Z0JBQ2xFLG1FQUFtRTtnQkFDbkUsSUFBSSxNQUFNLENBQUMsV0FBVyxLQUFLLE1BQU0sRUFBRTtvQkFDakMsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO29CQUNoQyxNQUFNLE9BQU8sR0FBRyxrQkFBa0IsMkRBRTlCLGlFQUFpRTt3QkFDN0QsdURBQXVEO3dCQUN2RCxrREFBa0QsQ0FBQyxDQUFDO29CQUM1RCxzQ0FBc0M7b0JBQ3RDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7aUJBQ3ZCO1lBQ0gsQ0FBQztZQUNELEtBQUssRUFBRSxJQUFJO1NBQ1osQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTRDRztBQUNILE1BQU0sVUFBVSxzQkFBc0IsQ0FBQyxHQUFHLFFBQWtEO0lBRTFGLE1BQU0sU0FBUyxHQUFlLEVBQUUsQ0FBQztJQUNqQyxNQUFNLFlBQVksR0FBRyxJQUFJLEdBQUcsRUFBd0IsQ0FBQztJQUNyRCxNQUFNLDJCQUEyQixHQUM3QixZQUFZLENBQUMsR0FBRyx1REFBK0MsQ0FBQztJQUVwRSxLQUFLLE1BQU0sRUFBQyxVQUFVLEVBQUUsS0FBSyxFQUFDLElBQUksUUFBUSxFQUFFO1FBQzFDLFlBQVksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFeEIsSUFBSSxVQUFVLENBQUMsTUFBTSxFQUFFO1lBQ3JCLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7U0FDNUI7S0FDRjtJQUVELElBQUksT0FBTyxTQUFTLEtBQUssV0FBVyxJQUFJLFNBQVM7UUFDN0MsWUFBWSxDQUFDLEdBQUcsa0RBQTBDLElBQUksMkJBQTJCLEVBQUU7UUFDN0Ysa0NBQWtDO1FBQ2xDLE1BQU0sSUFBSSxLQUFLLENBQ1gsc0tBQXNLLENBQUMsQ0FBQztLQUM3SztJQUVELE9BQU8sd0JBQXdCLENBQUM7UUFDOUIsQ0FBQyxPQUFPLFNBQVMsS0FBSyxXQUFXLElBQUksU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLGtDQUFrQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUU7UUFDM0YsZ0JBQWdCLEVBQUU7UUFDbEIsQ0FBQyxDQUFDLFlBQVksQ0FBQyxHQUFHLGtEQUEwQyxJQUFJLDJCQUEyQixDQUFDLENBQUMsQ0FBQztZQUN6RixFQUFFLENBQUMsQ0FBQztZQUNKLHNCQUFzQixDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2hDLFNBQVM7S0FDVixDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7SHR0cFRyYW5zZmVyQ2FjaGVPcHRpb25zLCDJtXdpdGhIdHRwVHJhbnNmZXJDYWNoZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtFTlZJUk9OTUVOVF9JTklUSUFMSVpFUiwgRW52aXJvbm1lbnRQcm92aWRlcnMsIGluamVjdCwgbWFrZUVudmlyb25tZW50UHJvdmlkZXJzLCBOZ1pvbmUsIFByb3ZpZGVyLCDJtUNvbnNvbGUgYXMgQ29uc29sZSwgybVmb3JtYXRSdW50aW1lRXJyb3IgYXMgZm9ybWF0UnVudGltZUVycm9yLCDJtXdpdGhEb21IeWRyYXRpb24gYXMgd2l0aERvbUh5ZHJhdGlvbix9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1J1bnRpbWVFcnJvckNvZGV9IGZyb20gJy4vZXJyb3JzJztcblxuLyoqXG4gKiBUaGUgbGlzdCBvZiBmZWF0dXJlcyBhcyBhbiBlbnVtIHRvIHVuaXF1ZWx5IHR5cGUgZWFjaCBgSHlkcmF0aW9uRmVhdHVyZWAuXG4gKiBAc2VlIHtAbGluayBIeWRyYXRpb25GZWF0dXJlfVxuICpcbiAqIEBwdWJsaWNBcGlcbiAqIEBkZXZlbG9wZXJQcmV2aWV3XG4gKi9cbmV4cG9ydCBjb25zdCBlbnVtIEh5ZHJhdGlvbkZlYXR1cmVLaW5kIHtcbiAgTm9IdHRwVHJhbnNmZXJDYWNoZSxcbiAgSHR0cFRyYW5zZmVyQ2FjaGVPcHRpb25zLFxufVxuXG4vKipcbiAqIEhlbHBlciB0eXBlIHRvIHJlcHJlc2VudCBhIEh5ZHJhdGlvbiBmZWF0dXJlLlxuICpcbiAqIEBwdWJsaWNBcGlcbiAqIEBkZXZlbG9wZXJQcmV2aWV3XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSHlkcmF0aW9uRmVhdHVyZTxGZWF0dXJlS2luZCBleHRlbmRzIEh5ZHJhdGlvbkZlYXR1cmVLaW5kPiB7XG4gIMm1a2luZDogRmVhdHVyZUtpbmQ7XG4gIMm1cHJvdmlkZXJzOiBQcm92aWRlcltdO1xufVxuXG4vKipcbiAqIEhlbHBlciBmdW5jdGlvbiB0byBjcmVhdGUgYW4gb2JqZWN0IHRoYXQgcmVwcmVzZW50cyBhIEh5ZHJhdGlvbiBmZWF0dXJlLlxuICovXG5mdW5jdGlvbiBoeWRyYXRpb25GZWF0dXJlPEZlYXR1cmVLaW5kIGV4dGVuZHMgSHlkcmF0aW9uRmVhdHVyZUtpbmQ+KFxuICAgIMm1a2luZDogRmVhdHVyZUtpbmQsIMm1cHJvdmlkZXJzOiBQcm92aWRlcltdID0gW10sXG4gICAgybVvcHRpb25zOiB1bmtub3duID0ge30pOiBIeWRyYXRpb25GZWF0dXJlPEZlYXR1cmVLaW5kPiB7XG4gIHJldHVybiB7ybVraW5kLCDJtXByb3ZpZGVyc307XG59XG5cbi8qKlxuICogRGlzYWJsZXMgSFRUUCB0cmFuc2ZlciBjYWNoZS4gRWZmZWN0aXZlbHkgY2F1c2VzIEhUVFAgcmVxdWVzdHMgdG8gYmUgcGVyZm9ybWVkIHR3aWNlOiBvbmNlIG9uIHRoZVxuICogc2VydmVyIGFuZCBvdGhlciBvbmUgb24gdGhlIGJyb3dzZXIuXG4gKlxuICogQHB1YmxpY0FwaVxuICogQGRldmVsb3BlclByZXZpZXdcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHdpdGhOb0h0dHBUcmFuc2ZlckNhY2hlKCk6XG4gICAgSHlkcmF0aW9uRmVhdHVyZTxIeWRyYXRpb25GZWF0dXJlS2luZC5Ob0h0dHBUcmFuc2ZlckNhY2hlPiB7XG4gIC8vIFRoaXMgZmVhdHVyZSBoYXMgbm8gcHJvdmlkZXJzIGFuZCBhY3RzIGFzIGEgZmxhZyB0aGF0IHR1cm5zIG9mZlxuICAvLyBIVFRQIHRyYW5zZmVyIGNhY2hlICh3aGljaCBvdGhlcndpc2UgaXMgdHVybmVkIG9uIGJ5IGRlZmF1bHQpLlxuICByZXR1cm4gaHlkcmF0aW9uRmVhdHVyZShIeWRyYXRpb25GZWF0dXJlS2luZC5Ob0h0dHBUcmFuc2ZlckNhY2hlKTtcbn1cblxuLyoqXG4gKiBUaGUgZnVuY3Rpb24gYWNjZXB0cyBhIGFuIG9iamVjdCwgd2hpY2ggYWxsb3dzIHRvIGNvbmZpZ3VyZSBjYWNoZSBwYXJhbWV0ZXJzLFxuICogc3VjaCBhcyB3aGljaCBoZWFkZXJzIHNob3VsZCBiZSBpbmNsdWRlZCAobm8gaGVhZGVycyBhcmUgaW5jbHVkZWQgYnkgZGVmYXVsdCksXG4gKiB3ZXRoZXIgUE9TVCByZXF1ZXN0cyBzaG91bGQgYmUgY2FjaGVkIG9yIGEgY2FsbGJhY2sgZnVuY3Rpb24gdG8gZGV0ZXJtaW5lIGlmIGFcbiAqIHBhcnRpY3VsYXIgcmVxdWVzdCBzaG91bGQgYmUgY2FjaGVkLlxuICpcbiAqIEBwdWJsaWNBcGlcbiAqIEBkZXZlbG9wZXJQcmV2aWV3XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB3aXRoSHR0cFRyYW5zZmVyQ2FjaGVPcHRpb25zKFxuICAgIG9wdGlvbnM6IEh0dHBUcmFuc2ZlckNhY2hlT3B0aW9ucyxcbiAgICApOiBIeWRyYXRpb25GZWF0dXJlPEh5ZHJhdGlvbkZlYXR1cmVLaW5kLkh0dHBUcmFuc2ZlckNhY2hlT3B0aW9ucz4ge1xuICAvLyBUaGlzIGZlYXR1cmUgaGFzIG5vIHByb3ZpZGVycyBhbmQgYWN0cyBhcyBhIGZsYWcgdG8gcGFzcyBvcHRpb25zIHRvIHRoZSBIVFRQIHRyYW5zZmVyIGNhY2hlLlxuICByZXR1cm4gaHlkcmF0aW9uRmVhdHVyZShcbiAgICAgIEh5ZHJhdGlvbkZlYXR1cmVLaW5kLkh0dHBUcmFuc2ZlckNhY2hlT3B0aW9ucywgybV3aXRoSHR0cFRyYW5zZmVyQ2FjaGUob3B0aW9ucykpO1xufVxuXG4vKipcbiAqIFJldHVybnMgYW4gYEVOVklST05NRU5UX0lOSVRJQUxJWkVSYCB0b2tlbiBzZXR1cCB3aXRoIGEgZnVuY3Rpb25cbiAqIHRoYXQgdmVyaWZpZXMgd2hldGhlciBjb21wYXRpYmxlIFpvbmVKUyB3YXMgdXNlZCBpbiBhbiBhcHBsaWNhdGlvblxuICogYW5kIGxvZ3MgYSB3YXJuaW5nIGluIGEgY29uc29sZSBpZiBpdCdzIG5vdCB0aGUgY2FzZS5cbiAqL1xuZnVuY3Rpb24gcHJvdmlkZVpvbmVKc0NvbXBhdGliaWxpdHlEZXRlY3RvcigpOiBQcm92aWRlcltdIHtcbiAgcmV0dXJuIFt7XG4gICAgcHJvdmlkZTogRU5WSVJPTk1FTlRfSU5JVElBTElaRVIsXG4gICAgdXNlVmFsdWU6ICgpID0+IHtcbiAgICAgIGNvbnN0IG5nWm9uZSA9IGluamVjdChOZ1pvbmUpO1xuICAgICAgLy8gQ2hlY2tpbmcgYG5nWm9uZSBpbnN0YW5jZW9mIE5nWm9uZWAgd291bGQgYmUgaW5zdWZmaWNpZW50IGhlcmUsXG4gICAgICAvLyBiZWNhdXNlIGN1c3RvbSBpbXBsZW1lbnRhdGlvbnMgbWlnaHQgdXNlIE5nWm9uZSBhcyBhIGJhc2UgY2xhc3MuXG4gICAgICBpZiAobmdab25lLmNvbnN0cnVjdG9yICE9PSBOZ1pvbmUpIHtcbiAgICAgICAgY29uc3QgY29uc29sZSA9IGluamVjdChDb25zb2xlKTtcbiAgICAgICAgY29uc3QgbWVzc2FnZSA9IGZvcm1hdFJ1bnRpbWVFcnJvcihcbiAgICAgICAgICAgIFJ1bnRpbWVFcnJvckNvZGUuVU5TVVBQT1JURURfWk9ORUpTX0lOU1RBTkNFLFxuICAgICAgICAgICAgJ0FuZ3VsYXIgZGV0ZWN0ZWQgdGhhdCBoeWRyYXRpb24gd2FzIGVuYWJsZWQgZm9yIGFuIGFwcGxpY2F0aW9uICcgK1xuICAgICAgICAgICAgICAgICd0aGF0IHVzZXMgYSBjdXN0b20gb3IgYSBub29wIFpvbmUuanMgaW1wbGVtZW50YXRpb24uICcgK1xuICAgICAgICAgICAgICAgICdUaGlzIGlzIG5vdCB5ZXQgYSBmdWxseSBzdXBwb3J0ZWQgY29uZmlndXJhdGlvbi4nKTtcbiAgICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWNvbnNvbGVcbiAgICAgICAgY29uc29sZS53YXJuKG1lc3NhZ2UpO1xuICAgICAgfVxuICAgIH0sXG4gICAgbXVsdGk6IHRydWUsXG4gIH1dO1xufVxuXG4vKipcbiAqIFNldHMgdXAgcHJvdmlkZXJzIG5lY2Vzc2FyeSB0byBlbmFibGUgaHlkcmF0aW9uIGZ1bmN0aW9uYWxpdHkgZm9yIHRoZSBhcHBsaWNhdGlvbi5cbiAqXG4gKiBCeSBkZWZhdWx0LCB0aGUgZnVuY3Rpb24gZW5hYmxlcyB0aGUgcmVjb21tZW5kZWQgc2V0IG9mIGZlYXR1cmVzIGZvciB0aGUgb3B0aW1hbFxuICogcGVyZm9ybWFuY2UgZm9yIG1vc3Qgb2YgdGhlIGFwcGxpY2F0aW9ucy4gSXQgaW5jbHVkZXMgdGhlIGZvbGxvd2luZyBmZWF0dXJlczpcbiAqXG4gKiAqIFJlY29uY2lsaW5nIERPTSBoeWRyYXRpb24uIExlYXJuIG1vcmUgYWJvdXQgaXQgW2hlcmVdKGd1aWRlL2h5ZHJhdGlvbikuXG4gKiAqIFtgSHR0cENsaWVudGBdKGFwaS9jb21tb24vaHR0cC9IdHRwQ2xpZW50KSByZXNwb25zZSBjYWNoaW5nIHdoaWxlIHJ1bm5pbmcgb24gdGhlIHNlcnZlciBhbmRcbiAqIHRyYW5zZmVycmluZyB0aGlzIGNhY2hlIHRvIHRoZSBjbGllbnQgdG8gYXZvaWQgZXh0cmEgSFRUUCByZXF1ZXN0cy4gTGVhcm4gbW9yZSBhYm91dCBkYXRhIGNhY2hpbmdcbiAqIFtoZXJlXSgvZ3VpZGUvdW5pdmVyc2FsI2NhY2hpbmctZGF0YS13aGVuLXVzaW5nLWh0dHBjbGllbnQpLlxuICpcbiAqIFRoZXNlIGZ1bmN0aW9ucyBhbGxvdyB5b3UgdG8gZGlzYWJsZSBzb21lIG9mIHRoZSBkZWZhdWx0IGZlYXR1cmVzIG9yIGNvbmZpZ3VyZSBmZWF0dXJlc1xuICogKiB7QGxpbmsgd2l0aE5vSHR0cFRyYW5zZmVyQ2FjaGV9IHRvIGRpc2FibGUgSFRUUCB0cmFuc2ZlciBjYWNoZVxuICogKiB7QGxpbmsgd2l0aEh0dHBUcmFuc2ZlckNhY2hlT3B0aW9uc30gdG8gY29uZmlndXJlIHNvbWUgSFRUUCB0cmFuc2ZlciBjYWNoZSBvcHRpb25zXG4gKlxuICogQHVzYWdlTm90ZXNcbiAqXG4gKiBCYXNpYyBleGFtcGxlIG9mIGhvdyB5b3UgY2FuIGVuYWJsZSBoeWRyYXRpb24gaW4geW91ciBhcHBsaWNhdGlvbiB3aGVuXG4gKiBgYm9vdHN0cmFwQXBwbGljYXRpb25gIGZ1bmN0aW9uIGlzIHVzZWQ6XG4gKiBgYGBcbiAqIGJvb3RzdHJhcEFwcGxpY2F0aW9uKEFwcENvbXBvbmVudCwge1xuICogICBwcm92aWRlcnM6IFtwcm92aWRlQ2xpZW50SHlkcmF0aW9uKCldXG4gKiB9KTtcbiAqIGBgYFxuICpcbiAqIEFsdGVybmF0aXZlbHkgaWYgeW91IGFyZSB1c2luZyBOZ01vZHVsZXMsIHlvdSB3b3VsZCBhZGQgYHByb3ZpZGVDbGllbnRIeWRyYXRpb25gXG4gKiB0byB5b3VyIHJvb3QgYXBwIG1vZHVsZSdzIHByb3ZpZGVyIGxpc3QuXG4gKiBgYGBcbiAqIEBOZ01vZHVsZSh7XG4gKiAgIGRlY2xhcmF0aW9uczogW1Jvb3RDbXBdLFxuICogICBib290c3RyYXA6IFtSb290Q21wXSxcbiAqICAgcHJvdmlkZXJzOiBbcHJvdmlkZUNsaWVudEh5ZHJhdGlvbigpXSxcbiAqIH0pXG4gKiBleHBvcnQgY2xhc3MgQXBwTW9kdWxlIHt9XG4gKiBgYGBcbiAqXG4gKiBAc2VlIHtAbGluayB3aXRoTm9IdHRwVHJhbnNmZXJDYWNoZX1cbiAqIEBzZWUge0BsaW5rIHdpdGhIdHRwVHJhbnNmZXJDYWNoZU9wdGlvbnN9XG4gKlxuICogQHBhcmFtIGZlYXR1cmVzIE9wdGlvbmFsIGZlYXR1cmVzIHRvIGNvbmZpZ3VyZSBhZGRpdGlvbmFsIHJvdXRlciBiZWhhdmlvcnMuXG4gKiBAcmV0dXJucyBBIHNldCBvZiBwcm92aWRlcnMgdG8gZW5hYmxlIGh5ZHJhdGlvbi5cbiAqXG4gKiBAcHVibGljQXBpXG4gKiBAZGV2ZWxvcGVyUHJldmlld1xuICovXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZUNsaWVudEh5ZHJhdGlvbiguLi5mZWF0dXJlczogSHlkcmF0aW9uRmVhdHVyZTxIeWRyYXRpb25GZWF0dXJlS2luZD5bXSk6XG4gICAgRW52aXJvbm1lbnRQcm92aWRlcnMge1xuICBjb25zdCBwcm92aWRlcnM6IFByb3ZpZGVyW10gPSBbXTtcbiAgY29uc3QgZmVhdHVyZXNLaW5kID0gbmV3IFNldDxIeWRyYXRpb25GZWF0dXJlS2luZD4oKTtcbiAgY29uc3QgaGFzSHR0cFRyYW5zZmVyQ2FjaGVPcHRpb25zID1cbiAgICAgIGZlYXR1cmVzS2luZC5oYXMoSHlkcmF0aW9uRmVhdHVyZUtpbmQuSHR0cFRyYW5zZmVyQ2FjaGVPcHRpb25zKTtcblxuICBmb3IgKGNvbnN0IHvJtXByb3ZpZGVycywgybVraW5kfSBvZiBmZWF0dXJlcykge1xuICAgIGZlYXR1cmVzS2luZC5hZGQoybVraW5kKTtcblxuICAgIGlmICjJtXByb3ZpZGVycy5sZW5ndGgpIHtcbiAgICAgIHByb3ZpZGVycy5wdXNoKMm1cHJvdmlkZXJzKTtcbiAgICB9XG4gIH1cblxuICBpZiAodHlwZW9mIG5nRGV2TW9kZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbmdEZXZNb2RlICYmXG4gICAgICBmZWF0dXJlc0tpbmQuaGFzKEh5ZHJhdGlvbkZlYXR1cmVLaW5kLk5vSHR0cFRyYW5zZmVyQ2FjaGUpICYmIGhhc0h0dHBUcmFuc2ZlckNhY2hlT3B0aW9ucykge1xuICAgIC8vIFRPRE86IE1ha2UgdGhpcyBhIHJ1bnRpbWUgZXJyb3JcbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdDb25maWd1cmF0aW9uIGVycm9yOiBmb3VuZCBib3RoIHdpdGhIdHRwVHJhbnNmZXJDYWNoZU9wdGlvbnMoKSBhbmQgd2l0aE5vSHR0cFRyYW5zZmVyQ2FjaGUoKSBpbiB0aGUgc2FtZSBjYWxsIHRvIHByb3ZpZGVDbGllbnRIeWRyYXRpb24oKSwgd2hpY2ggaXMgYSBjb250cmFkaWN0aW9uLicpO1xuICB9XG5cbiAgcmV0dXJuIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVycyhbXG4gICAgKHR5cGVvZiBuZ0Rldk1vZGUgIT09ICd1bmRlZmluZWQnICYmIG5nRGV2TW9kZSkgPyBwcm92aWRlWm9uZUpzQ29tcGF0aWJpbGl0eURldGVjdG9yKCkgOiBbXSxcbiAgICB3aXRoRG9tSHlkcmF0aW9uKCksXG4gICAgKChmZWF0dXJlc0tpbmQuaGFzKEh5ZHJhdGlvbkZlYXR1cmVLaW5kLk5vSHR0cFRyYW5zZmVyQ2FjaGUpIHx8IGhhc0h0dHBUcmFuc2ZlckNhY2hlT3B0aW9ucykgP1xuICAgICAgICAgW10gOlxuICAgICAgICAgybV3aXRoSHR0cFRyYW5zZmVyQ2FjaGUoe30pKSxcbiAgICBwcm92aWRlcnMsXG4gIF0pO1xufVxuIl19
|
@@ -35,7 +35,7 @@ export { REMOVE_STYLES_ON_COMPONENT_DESTROY } from './dom/dom_renderer';
|
|
35
35
|
export { EVENT_MANAGER_PLUGINS, EventManager, EventManagerPlugin } from './dom/events/event_manager';
|
36
36
|
export { HAMMER_GESTURE_CONFIG, HAMMER_LOADER, HammerGestureConfig, HammerModule } from './dom/events/hammer_gestures';
|
37
37
|
export { DomSanitizer } from './security/dom_sanitization_service';
|
38
|
-
export { provideClientHydration,
|
38
|
+
export { provideClientHydration, withHttpTransferCacheOptions, withNoHttpTransferCache } from './hydration';
|
39
39
|
export * from './private_export';
|
40
40
|
export { VERSION } from './version';
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhdGZvcm0tYnJvd3Nlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BsYXRmb3JtLWJyb3dzZXIvc3JjL3BsYXRmb3JtLWJyb3dzZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsbUdBQW1HO0FBQ25HLE9BQU8sRUFBQyxZQUFZLElBQUksb0JBQW9CLEVBQWdDLGFBQWEsSUFBSSxxQkFBcUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV6STs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILHlEQUF5RDtBQUN6RCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsb0JBQW9CLENBQUM7QUF1QmpELG9FQUFvRTtBQUNwRSxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQW9DLHFCQUFxQixDQUFDO0FBb0JwRixPQUFPLEVBQW9CLG9CQUFvQixFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsK0JBQStCLEVBQUMsTUFBTSxXQUFXLENBQUM7QUFDdEosT0FBTyxFQUFDLElBQUksRUFBaUIsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRCxPQUFPLEVBQUMsS0FBSyxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDdEMsT0FBTyxFQUFDLGlCQUFpQixFQUFFLGdCQUFnQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDMUUsT0FBTyxFQUFDLEVBQUUsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ2xDLE9BQU8sRUFBQyxrQ0FBa0MsRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQ3RFLE9BQU8sRUFBQyxxQkFBcUIsRUFBRSxZQUFZLEVBQUUsa0JBQWtCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRyxPQUFPLEVBQUMscUJBQXFCLEVBQUUsYUFBYSxFQUFFLG1CQUFtQixFQUFnQixZQUFZLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUNuSSxPQUFPLEVBQUMsWUFBWSxFQUF1RSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3ZJLE9BQU8sRUFBbUIsc0JBQXNCLEVBQXdCLDRCQUE0QixFQUFFLHVCQUF1QixFQUFDLE1BQU0sYUFBYSxDQUFDO0FBRWxKLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLFdBQVcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG4vLyBSZS1leHBvcnQgVHJhbnNmZXJTdGF0ZSB0byB0aGUgcHVibGljIEFQSSBvZiB0aGUgYHBsYXRmb3JtLWJyb3dzZXJgIGZvciBiYWNrd2FyZHMtY29tcGF0aWJpbGl0eS5cbmltcG9ydCB7bWFrZVN0YXRlS2V5IGFzIG1ha2VTdGF0ZUtleUZyb21Db3JlLCBTdGF0ZUtleSBhcyBTdGF0ZUtleUZyb21Db3JlLCBUcmFuc2ZlclN0YXRlIGFzIFRyYW5zZmVyU3RhdGVGcm9tQ29yZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogQ3JlYXRlIGEgYFN0YXRlS2V5PFQ+YCB0aGF0IGNhbiBiZSB1c2VkIHRvIHN0b3JlIHZhbHVlIG9mIHR5cGUgVCB3aXRoIGBUcmFuc2ZlclN0YXRlYC5cbiAqXG4gKiBFeGFtcGxlOlxuICpcbiAqIGBgYFxuICogY29uc3QgQ09VTlRFUl9LRVkgPSBtYWtlU3RhdGVLZXk8bnVtYmVyPignY291bnRlcicpO1xuICogbGV0IHZhbHVlID0gMTA7XG4gKlxuICogdHJhbnNmZXJTdGF0ZS5zZXQoQ09VTlRFUl9LRVksIHZhbHVlKTtcbiAqIGBgYFxuICpcbiAqIEBwdWJsaWNBcGlcbiAqIEBkZXByZWNhdGVkIGBtYWtlU3RhdGVLZXlgIGhhcyBtb3ZlZCwgcGxlYXNlIGltcG9ydCBgbWFrZVN0YXRlS2V5YCBmcm9tIGBAYW5ndWxhci9jb3JlYCBpbnN0ZWFkLlxuICovXG4vLyBUaGUgYmVsb3cgaXMgYSB3b3JrYXJvdW5kIHRvIGFkZCBhIGRlcHJlY2F0ZWQgbWVzc2FnZS5cbmV4cG9ydCBjb25zdCBtYWtlU3RhdGVLZXkgPSBtYWtlU3RhdGVLZXlGcm9tQ29yZTtcblxuLyoqXG4gKlxuICogQSBrZXkgdmFsdWUgc3RvcmUgdGhhdCBpcyB0cmFuc2ZlcnJlZCBmcm9tIHRoZSBhcHBsaWNhdGlvbiBvbiB0aGUgc2VydmVyIHNpZGUgdG8gdGhlIGFwcGxpY2F0aW9uXG4gKiBvbiB0aGUgY2xpZW50IHNpZGUuXG4gKlxuICogVGhlIGBUcmFuc2ZlclN0YXRlYCBpcyBhdmFpbGFibGUgYXMgYW4gaW5qZWN0YWJsZSB0b2tlbi5cbiAqIE9uIHRoZSBjbGllbnQsIGp1c3QgaW5qZWN0IHRoaXMgdG9rZW4gdXNpbmcgREkgYW5kIHVzZSBpdCwgaXQgd2lsbCBiZSBsYXppbHkgaW5pdGlhbGl6ZWQuXG4gKiBPbiB0aGUgc2VydmVyIGl0J3MgYWxyZWFkeSBpbmNsdWRlZCBpZiBgcmVuZGVyQXBwbGljYXRpb25gIGZ1bmN0aW9uIGlzIHVzZWQuIE90aGVyd2lzZSwgaW1wb3J0XG4gKiB0aGUgYFNlcnZlclRyYW5zZmVyU3RhdGVNb2R1bGVgIG1vZHVsZSB0byBtYWtlIHRoZSBgVHJhbnNmZXJTdGF0ZWAgYXZhaWxhYmxlLlxuICpcbiAqIFRoZSB2YWx1ZXMgaW4gdGhlIHN0b3JlIGFyZSBzZXJpYWxpemVkL2Rlc2VyaWFsaXplZCB1c2luZyBKU09OLnN0cmluZ2lmeS9KU09OLnBhcnNlLiBTbyBvbmx5XG4gKiBib29sZWFuLCBudW1iZXIsIHN0cmluZywgbnVsbCBhbmQgbm9uLWNsYXNzIG9iamVjdHMgd2lsbCBiZSBzZXJpYWxpemVkIGFuZCBkZXNlcmlhbGl6ZWQgaW4gYVxuICogbm9uLWxvc3N5IG1hbm5lci5cbiAqXG4gKiBAcHVibGljQXBpXG4gKlxuICogQGRlcHJlY2F0ZWQgYFRyYW5zZmVyU3RhdGVgIGhhcyBtb3ZlZCwgcGxlYXNlIGltcG9ydCBgVHJhbnNmZXJTdGF0ZWAgZnJvbSBgQGFuZ3VsYXIvY29yZWBcbiAqICAgICBpbnN0ZWFkLlxuICovXG4vLyBUaGUgYmVsb3cgaXMgYSB3b3JrYXJvdW5kIHRvIGFkZCBhIGRlcHJlY2F0ZWQgbWVzc2FnZS5cbmV4cG9ydCB0eXBlIFRyYW5zZmVyU3RhdGUgPSBUcmFuc2ZlclN0YXRlRnJvbUNvcmU7XG4vLyBUaGUgYmVsb3cgdHlwZSBpcyBuZWVkZWQgZm9yIEczIGR1ZSB0byBKU0NfQ09ORk9STUFOQ0VfVklPTEFUSU9OLlxuZXhwb3J0IGNvbnN0IFRyYW5zZmVyU3RhdGU6IHtuZXcgKCk6IFRyYW5zZmVyU3RhdGVGcm9tQ29yZX0gPSBUcmFuc2ZlclN0YXRlRnJvbUNvcmU7XG5cbi8qKlxuICogQSB0eXBlLXNhZmUga2V5IHRvIHVzZSB3aXRoIGBUcmFuc2ZlclN0YXRlYC5cbiAqXG4gKiBFeGFtcGxlOlxuICpcbiAqIGBgYFxuICogY29uc3QgQ09VTlRFUl9LRVkgPSBtYWtlU3RhdGVLZXk8bnVtYmVyPignY291bnRlcicpO1xuICogbGV0IHZhbHVlID0gMTA7XG4gKlxuICogdHJhbnNmZXJTdGF0ZS5zZXQoQ09VTlRFUl9LRVksIHZhbHVlKTtcbiAqIGBgYFxuICogQHB1YmxpY0FwaVxuICpcbiAqIEBkZXByZWNhdGVkIGBTdGF0ZUtleWAgaGFzIG1vdmVkLCBwbGVhc2UgaW1wb3J0IGBTdGF0ZUtleWAgZnJvbSBgQGFuZ3VsYXIvY29yZWAgaW5zdGVhZC5cbiAqL1xuLy8gVGhlIGJlbG93IGlzIGEgd29ya2Fyb3VuZCB0byBhZGQgYSBkZXByZWNhdGVkIG1lc3NhZ2UuXG5leHBvcnQgdHlwZSBTdGF0ZUtleTxUPiA9IFN0YXRlS2V5RnJvbUNvcmU8VD47XG5cbmV4cG9ydCB7QXBwbGljYXRpb25Db25maWcsIGJvb3RzdHJhcEFwcGxpY2F0aW9uLCBCcm93c2VyTW9kdWxlLCBjcmVhdGVBcHBsaWNhdGlvbiwgcGxhdGZvcm1Ccm93c2VyLCBwcm92aWRlUHJvdHJhY3RvclRlc3RpbmdTdXBwb3J0fSBmcm9tICcuL2Jyb3dzZXInO1xuZXhwb3J0IHtNZXRhLCBNZXRhRGVmaW5pdGlvbn0gZnJvbSAnLi9icm93c2VyL21ldGEnO1xuZXhwb3J0IHtUaXRsZX0gZnJvbSAnLi9icm93c2VyL3RpdGxlJztcbmV4cG9ydCB7ZGlzYWJsZURlYnVnVG9vbHMsIGVuYWJsZURlYnVnVG9vbHN9IGZyb20gJy4vYnJvd3Nlci90b29scy90b29scyc7XG5leHBvcnQge0J5fSBmcm9tICcuL2RvbS9kZWJ1Zy9ieSc7XG5leHBvcnQge1JFTU9WRV9TVFlMRVNfT05fQ09NUE9ORU5UX0RFU1RST1l9IGZyb20gJy4vZG9tL2RvbV9yZW5kZXJlcic7XG5leHBvcnQge0VWRU5UX01BTkFHRVJfUExVR0lOUywgRXZlbnRNYW5hZ2VyLCBFdmVudE1hbmFnZXJQbHVnaW59IGZyb20gJy4vZG9tL2V2ZW50cy9ldmVudF9tYW5hZ2VyJztcbmV4cG9ydCB7SEFNTUVSX0dFU1RVUkVfQ09ORklHLCBIQU1NRVJfTE9BREVSLCBIYW1tZXJHZXN0dXJlQ29uZmlnLCBIYW1tZXJMb2FkZXIsIEhhbW1lck1vZHVsZX0gZnJvbSAnLi9kb20vZXZlbnRzL2hhbW1lcl9nZXN0dXJlcyc7XG5leHBvcnQge0RvbVNhbml0aXplciwgU2FmZUh0bWwsIFNhZmVSZXNvdXJjZVVybCwgU2FmZVNjcmlwdCwgU2FmZVN0eWxlLCBTYWZlVXJsLCBTYWZlVmFsdWV9IGZyb20gJy4vc2VjdXJpdHkvZG9tX3Nhbml0aXphdGlvbl9zZXJ2aWNlJztcbmV4cG9ydCB7SHlkcmF0aW9uRmVhdHVyZSwgcHJvdmlkZUNsaWVudEh5ZHJhdGlvbiwgSHlkcmF0aW9uRmVhdHVyZUtpbmQsIHdpdGhIdHRwVHJhbnNmZXJDYWNoZU9wdGlvbnMsIHdpdGhOb0h0dHBUcmFuc2ZlckNhY2hlfSBmcm9tICcuL2h5ZHJhdGlvbic7XG5cbmV4cG9ydCAqIGZyb20gJy4vcHJpdmF0ZV9leHBvcnQnO1xuZXhwb3J0IHtWRVJTSU9OfSBmcm9tICcuL3ZlcnNpb24nO1xuIl19
|
@@ -15,4 +15,4 @@ export { HammerGesturesPlugin as ɵHammerGesturesPlugin } from './dom/events/ham
|
|
15
15
|
export { KeyEventsPlugin as ɵKeyEventsPlugin } from './dom/events/key_events';
|
16
16
|
export { SharedStylesHost as ɵSharedStylesHost } from './dom/shared_styles_host';
|
17
17
|
export { DomSanitizerImpl as ɵDomSanitizerImpl } from './security/dom_sanitization_service';
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9leHBvcnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wbGF0Zm9ybS1icm93c2VyL3NyYy9wcml2YXRlX2V4cG9ydC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFFSCxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDeEMsT0FBTyxFQUFDLGNBQWMsSUFBSSxlQUFlLEVBQUUsbUNBQW1DLElBQUksb0NBQW9DLEVBQUMsTUFBTSxXQUFXLENBQUM7QUFDekksT0FBTyxFQUFDLGlCQUFpQixJQUFJLGtCQUFrQixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDbEYsT0FBTyxFQUFDLHFCQUFxQixJQUFJLHNCQUFzQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDdEYsT0FBTyxFQUFDLG1CQUFtQixJQUFJLG9CQUFvQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDL0UsT0FBTyxFQUFDLGVBQWUsSUFBSSxnQkFBZ0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzVFLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxxQkFBcUIsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQzNGLE9BQU8sRUFBQyxlQUFlLElBQUksZ0JBQWdCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RSxPQUFPLEVBQUMsZ0JBQWdCLElBQUksaUJBQWlCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUUvRSxPQUFPLEVBQUMsZ0JBQWdCLElBQUksaUJBQWlCLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5leHBvcnQge8m1Z2V0RE9NfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuZXhwb3J0IHtpbml0RG9tQWRhcHRlciBhcyDJtWluaXREb21BZGFwdGVyLCBJTlRFUk5BTF9CUk9XU0VSX1BMQVRGT1JNX1BST1ZJREVSUyBhcyDJtUlOVEVSTkFMX0JST1dTRVJfUExBVEZPUk1fUFJPVklERVJTfSBmcm9tICcuL2Jyb3dzZXInO1xuZXhwb3J0IHtCcm93c2VyRG9tQWRhcHRlciBhcyDJtUJyb3dzZXJEb21BZGFwdGVyfSBmcm9tICcuL2Jyb3dzZXIvYnJvd3Nlcl9hZGFwdGVyJztcbmV4cG9ydCB7QnJvd3NlckdldFRlc3RhYmlsaXR5IGFzIMm1QnJvd3NlckdldFRlc3RhYmlsaXR5fSBmcm9tICcuL2Jyb3dzZXIvdGVzdGFiaWxpdHknO1xuZXhwb3J0IHtEb21SZW5kZXJlckZhY3RvcnkyIGFzIMm1RG9tUmVuZGVyZXJGYWN0b3J5Mn0gZnJvbSAnLi9kb20vZG9tX3JlbmRlcmVyJztcbmV4cG9ydCB7RG9tRXZlbnRzUGx1Z2luIGFzIMm1RG9tRXZlbnRzUGx1Z2lufSBmcm9tICcuL2RvbS9ldmVudHMvZG9tX2V2ZW50cyc7XG5leHBvcnQge0hhbW1lckdlc3R1cmVzUGx1Z2luIGFzIMm1SGFtbWVyR2VzdHVyZXNQbHVnaW59IGZyb20gJy4vZG9tL2V2ZW50cy9oYW1tZXJfZ2VzdHVyZXMnO1xuZXhwb3J0IHtLZXlFdmVudHNQbHVnaW4gYXMgybVLZXlFdmVudHNQbHVnaW59IGZyb20gJy4vZG9tL2V2ZW50cy9rZXlfZXZlbnRzJztcbmV4cG9ydCB7U2hhcmVkU3R5bGVzSG9zdCBhcyDJtVNoYXJlZFN0eWxlc0hvc3R9IGZyb20gJy4vZG9tL3NoYXJlZF9zdHlsZXNfaG9zdCc7XG5leHBvcnQge1J1bnRpbWVFcnJvckNvZGUgYXMgybVSdW50aW1lRXJyb3JDb2RlfSBmcm9tICcuL2Vycm9ycyc7XG5leHBvcnQge0RvbVNhbml0aXplckltcGwgYXMgybVEb21TYW5pdGl6ZXJJbXBsfSBmcm9tICcuL3NlY3VyaXR5L2RvbV9zYW5pdGl6YXRpb25fc2VydmljZSc7XG4iXX0=
|
@@ -41,10 +41,10 @@ export { SecurityContext };
|
|
41
41
|
* @publicApi
|
42
42
|
*/
|
43
43
|
export class DomSanitizer {
|
44
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.
|
45
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.0-next.
|
44
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.8", ngImport: i0, type: DomSanitizer, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
45
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.0-next.8", ngImport: i0, type: DomSanitizer, providedIn: 'root', useExisting: i0.forwardRef(() => DomSanitizerImpl) }); }
|
46
46
|
}
|
47
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.
|
47
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.8", ngImport: i0, type: DomSanitizer, decorators: [{
|
48
48
|
type: Injectable,
|
49
49
|
args: [{ providedIn: 'root', useExisting: forwardRef(() => DomSanitizerImpl) }]
|
50
50
|
}] });
|
@@ -109,10 +109,10 @@ export class DomSanitizerImpl extends DomSanitizer {
|
|
109
109
|
bypassSecurityTrustResourceUrl(value) {
|
110
110
|
return bypassSanitizationTrustResourceUrl(value);
|
111
111
|
}
|
112
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.
|
113
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.0-next.
|
112
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.8", ngImport: i0, type: DomSanitizerImpl, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
113
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.0-next.8", ngImport: i0, type: DomSanitizerImpl, providedIn: 'root', useFactory: domSanitizerImplFactory, deps: [{ token: Injector }] }); }
|
114
114
|
}
|
115
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.
|
115
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.8", ngImport: i0, type: DomSanitizerImpl, decorators: [{
|
116
116
|
type: Injectable,
|
117
117
|
args: [{ providedIn: 'root', useFactory: domSanitizerImplFactory, deps: [Injector] }]
|
118
118
|
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
package/esm2022/src/version.mjs
CHANGED
@@ -14,5 +14,5 @@ import { Version } from '@angular/core';
|
|
14
14
|
/**
|
15
15
|
* @publicApi
|
16
16
|
*/
|
17
|
-
export const VERSION = new Version('17.0.0-next.
|
17
|
+
export const VERSION = new Version('17.0.0-next.8');
|
18
18
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BsYXRmb3JtLWJyb3dzZXIvc3JjL3ZlcnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUg7Ozs7R0FJRztBQUVILE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFdEM7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsSUFBSSxPQUFPLENBQUMsbUJBQW1CLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG4vKipcbiAqIEBtb2R1bGVcbiAqIEBkZXNjcmlwdGlvblxuICogRW50cnkgcG9pbnQgZm9yIGFsbCBwdWJsaWMgQVBJcyBvZiB0aGUgcGxhdGZvcm0tYnJvd3NlciBwYWNrYWdlLlxuICovXG5cbmltcG9ydCB7VmVyc2lvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogQHB1YmxpY0FwaVxuICovXG5leHBvcnQgY29uc3QgVkVSU0lPTiA9IG5ldyBWZXJzaW9uKCcwLjAuMC1QTEFDRUhPTERFUicpO1xuIl19
|
@@ -26,9 +26,9 @@ export const platformBrowserTesting = createPlatformFactory(platformCore, 'brows
|
|
26
26
|
* @publicApi
|
27
27
|
*/
|
28
28
|
export class BrowserTestingModule {
|
29
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.
|
30
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.0-next.
|
31
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.0-next.
|
29
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.8", ngImport: i0, type: BrowserTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
30
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.0-next.8", ngImport: i0, type: BrowserTestingModule, exports: [BrowserModule] }); }
|
31
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.0-next.8", ngImport: i0, type: BrowserTestingModule, providers: [
|
32
32
|
{ provide: APP_ID, useValue: 'a' },
|
33
33
|
provideZoneChangeDetection(),
|
34
34
|
{ provide: PlatformLocation, useClass: MockPlatformLocation },
|
@@ -36,7 +36,7 @@ export class BrowserTestingModule {
|
|
36
36
|
{ provide: EffectScheduler, useExisting: ZoneAwareQueueingScheduler },
|
37
37
|
], imports: [BrowserModule] }); }
|
38
38
|
}
|
39
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.8", ngImport: i0, type: BrowserTestingModule, decorators: [{
|
40
40
|
type: NgModule,
|
41
41
|
args: [{
|
42
42
|
exports: [BrowserModule],
|
@@ -1,13 +1,14 @@
|
|
1
1
|
/**
|
2
|
-
* @license Angular v17.0.0-next.
|
2
|
+
* @license Angular v17.0.0-next.8
|
3
3
|
* (c) 2010-2022 Google LLC. https://angular.io/
|
4
4
|
* License: MIT
|
5
5
|
*/
|
6
6
|
|
7
7
|
import { DOCUMENT } from '@angular/common';
|
8
|
-
import { RendererFactory2, NgZone, ANIMATION_MODULE_TYPE } from '@angular/core';
|
8
|
+
import { ɵRuntimeError, RendererFactory2, NgZone, ANIMATION_MODULE_TYPE } from '@angular/core';
|
9
9
|
import { ɵDomRendererFactory2 } from '@angular/platform-browser';
|
10
10
|
|
11
|
+
const ANIMATION_PREFIX = '@';
|
11
12
|
class AsyncAnimationRendererFactory {
|
12
13
|
/**
|
13
14
|
*
|
@@ -28,8 +29,10 @@ class AsyncAnimationRendererFactory {
|
|
28
29
|
const moduleImpl = this.moduleImpl ?? import('@angular/animations/browser');
|
29
30
|
return moduleImpl
|
30
31
|
.catch((e) => {
|
31
|
-
|
32
|
-
|
32
|
+
throw new ɵRuntimeError(5300 /* RuntimeErrorCode.ANIMATION_RENDERER_ASYNC_LOADING_FAILURE */, (typeof ngDevMode === 'undefined' || ngDevMode) &&
|
33
|
+
'Async loading for animations package was ' +
|
34
|
+
'enabled, but loading failed. Angular falls back to using regular rendering. ' +
|
35
|
+
'No animations will be displayed and their styles won\'t be applied.');
|
33
36
|
})
|
34
37
|
.then(({ ɵcreateEngine, ɵAnimationRendererFactory }) => {
|
35
38
|
// We can't create the renderer yet because we might need the hostElement and the type
|
@@ -65,9 +68,14 @@ class AsyncAnimationRendererFactory {
|
|
65
68
|
if (rendererType?.data?.['animation'] && !this._rendererFactoryPromise) {
|
66
69
|
this._rendererFactoryPromise = this.loadImpl();
|
67
70
|
}
|
68
|
-
this._rendererFactoryPromise
|
71
|
+
this._rendererFactoryPromise
|
72
|
+
?.then((animationRendererFactory) => {
|
69
73
|
const animationRenderer = animationRendererFactory.createRenderer(hostElement, rendererType);
|
70
74
|
dynamicRenderer.use(animationRenderer);
|
75
|
+
})
|
76
|
+
.catch(e => {
|
77
|
+
// Permanently use regular renderer when loading fails.
|
78
|
+
dynamicRenderer.use(renderer);
|
71
79
|
});
|
72
80
|
return dynamicRenderer;
|
73
81
|
}
|
@@ -88,14 +96,27 @@ class AsyncAnimationRendererFactory {
|
|
88
96
|
class DynamicDelegationRenderer {
|
89
97
|
constructor(delegate) {
|
90
98
|
this.delegate = delegate;
|
99
|
+
// List of callbacks that need to be replayed on the animation renderer once its loaded
|
100
|
+
this.replay = [];
|
91
101
|
}
|
92
102
|
use(impl) {
|
93
103
|
this.delegate = impl;
|
104
|
+
if (this.replay !== null) {
|
105
|
+
// Replay queued actions using the animation renderer to apply
|
106
|
+
// all events and properties collected while loading was in progress.
|
107
|
+
for (const fn of this.replay) {
|
108
|
+
fn(impl);
|
109
|
+
}
|
110
|
+
// Set to `null` to indicate that the queue was processed
|
111
|
+
// and we no longer need to collect events and properties.
|
112
|
+
this.replay = null;
|
113
|
+
}
|
94
114
|
}
|
95
115
|
get data() {
|
96
116
|
return this.delegate.data;
|
97
117
|
}
|
98
118
|
destroy() {
|
119
|
+
this.replay = null;
|
99
120
|
this.delegate.destroy();
|
100
121
|
}
|
101
122
|
createElement(name, namespace) {
|
@@ -147,14 +168,28 @@ class DynamicDelegationRenderer {
|
|
147
168
|
this.delegate.removeStyle(el, style, flags);
|
148
169
|
}
|
149
170
|
setProperty(el, name, value) {
|
171
|
+
// We need to keep track of animation properties set on default renderer
|
172
|
+
// So we can also set them also on the animation renderer
|
173
|
+
if (this.shouldReplay(name)) {
|
174
|
+
this.replay.push((renderer) => renderer.setProperty(el, name, value));
|
175
|
+
}
|
150
176
|
this.delegate.setProperty(el, name, value);
|
151
177
|
}
|
152
178
|
setValue(node, value) {
|
153
179
|
this.delegate.setValue(node, value);
|
154
180
|
}
|
155
181
|
listen(target, eventName, callback) {
|
182
|
+
// We need to keep track of animation events registred by the default renderer
|
183
|
+
// So we can also register them against the animation renderer
|
184
|
+
if (this.shouldReplay(eventName)) {
|
185
|
+
this.replay.push((renderer) => renderer.listen(target, eventName, callback));
|
186
|
+
}
|
156
187
|
return this.delegate.listen(target, eventName, callback);
|
157
188
|
}
|
189
|
+
shouldReplay(propOrEventName) {
|
190
|
+
//`null` indicates that we no longer need to collect events and properties
|
191
|
+
return this.replay !== null && propOrEventName.startsWith(ANIMATION_PREFIX);
|
192
|
+
}
|
158
193
|
}
|
159
194
|
|
160
195
|
/**
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"async.mjs","sources":["../../../../../../../packages/platform-browser/animations/async/src/async_animation_renderer.ts","../../../../../../../packages/platform-browser/animations/async/src/providers.ts","../../../../../../../packages/platform-browser/animations/async/src/async-animations.ts","../../../../../../../packages/platform-browser/animations/async/public_api.ts","../../../../../../../packages/platform-browser/animations/async/index.ts","../../../../../../../packages/platform-browser/animations/async/async.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport type {ɵAnimationRendererFactory as AnimationRendererFactory, ɵAnimationRenderer as AnimationRenderer} from '@angular/animations/browser';\nimport {NgZone, Renderer2, RendererFactory2, RendererStyleFlags2, RendererType2} from '@angular/core';\n\n/**\n * This alias narrows down to only the properties we need when lazy loading (or mock) the module\n */\ntype AnimationBrowserModuleImports =\n Pick<typeof import('@angular/animations/browser'), 'ɵcreateEngine'|'ɵAnimationRendererFactory'>;\n\nexport class AsyncAnimationRendererFactory implements RendererFactory2 {\n private _rendererFactoryPromise: Promise<AnimationRendererFactory>|null = null;\n\n /**\n *\n * @param moduleImpl allows to provide a mock implmentation (or will load the animation module)\n */\n constructor(\n private doc: Document, private delegate: RendererFactory2, private zone: NgZone,\n private animationType: 'animations'|'noop',\n private moduleImpl?: Promise<AnimationBrowserModuleImports>) {}\n\n /**\n * @internal\n */\n private loadImpl(): Promise<AnimationRendererFactory> {\n const moduleImpl = this.moduleImpl ?? import('@angular/animations/browser');\n\n return moduleImpl\n .catch((e) => {\n // TODO: Create a runtime error\n throw new Error('Failed to load the @angular/animations/browser module');\n })\n .then(({ɵcreateEngine, ɵAnimationRendererFactory}) => {\n // We can't create the renderer yet because we might need the hostElement and the type\n // Both are provided in createRenderer().\n const engine = ɵcreateEngine(this.animationType, this.doc);\n const rendererFactory = new ɵAnimationRendererFactory(this.delegate, engine, this.zone);\n this.delegate = rendererFactory;\n return rendererFactory;\n });\n }\n\n /**\n * This method is delegating the renderer creation to the factories.\n * It uses default factory while the animation factory isn't loaded\n * and will rely on the animation factory once it is loaded.\n *\n * Calling this method will trigger as side effect the loading of the animation module\n * if the renderered component uses animations.\n */\n createRenderer(hostElement: any, rendererType: RendererType2): Renderer2 {\n const renderer = this.delegate.createRenderer(hostElement, rendererType);\n\n if ((renderer as AnimationRenderer).isAnimationRenderer) {\n // The factory is already loaded, this is an animation renderer\n return renderer;\n }\n\n // We need to prevent the DomRenderer to throw an error because of synthetic properties\n if (typeof (renderer as any).throwOnSyntheticProps === 'boolean') {\n (renderer as any).throwOnSyntheticProps = false;\n }\n\n // Using a dynamic renderer to switch the renderer implementation once the module is loaded.\n const dynamicRenderer = new DynamicDelegationRenderer(renderer);\n\n // Kick off the module loading if the component uses animations but the module hasn't been\n // loaded yet.\n if (rendererType?.data?.['animation'] && !this._rendererFactoryPromise) {\n this._rendererFactoryPromise = this.loadImpl();\n }\n\n this._rendererFactoryPromise?.then((animationRendererFactory) => {\n const animationRenderer = animationRendererFactory.createRenderer(hostElement, rendererType);\n dynamicRenderer.use(animationRenderer);\n });\n\n return dynamicRenderer;\n }\n\n begin(): void {\n this.delegate.begin?.();\n }\n\n end(): void {\n this.delegate.end?.();\n }\n\n whenRenderingDone?(): Promise<any> {\n return this.delegate.whenRenderingDone?.() ?? Promise.resolve();\n }\n}\n\n/**\n * The class allows to dynamicly switch between different renderer implementations\n * by changing the delegate renderer.\n */\nexport class DynamicDelegationRenderer implements Renderer2 {\n constructor(private delegate: Renderer2) {}\n\n use(impl: Renderer2) {\n this.delegate = impl;\n }\n\n get data(): {[key: string]: any;} {\n return this.delegate.data;\n }\n\n destroy(): void {\n this.delegate.destroy();\n }\n\n createElement(name: string, namespace?: string|null) {\n return this.delegate.createElement(name, namespace);\n }\n\n createComment(value: string): void {\n return this.delegate.createComment(value);\n }\n\n createText(value: string): any {\n return this.delegate.createText(value);\n }\n\n get destroyNode(): ((node: any) => void)|null {\n return this.delegate.destroyNode;\n }\n\n appendChild(parent: any, newChild: any): void {\n this.delegate.appendChild(parent, newChild);\n }\n\n insertBefore(parent: any, newChild: any, refChild: any, isMove?: boolean|undefined): void {\n this.delegate.insertBefore(parent, newChild, refChild, isMove);\n }\n\n removeChild(parent: any, oldChild: any, isHostElement?: boolean|undefined): void {\n this.delegate.removeChild(parent, oldChild, isHostElement);\n }\n\n selectRootElement(selectorOrNode: any, preserveContent?: boolean|undefined): any {\n return this.delegate.selectRootElement(selectorOrNode, preserveContent);\n }\n\n parentNode(node: any): any {\n return this.delegate.parentNode(node);\n }\n\n nextSibling(node: any): any {\n return this.delegate.nextSibling(node);\n }\n\n setAttribute(el: any, name: string, value: string, namespace?: string|null|undefined): void {\n this.delegate.setAttribute(el, name, value, namespace);\n }\n\n removeAttribute(el: any, name: string, namespace?: string|null|undefined): void {\n this.delegate.removeAttribute(el, name, namespace);\n }\n\n addClass(el: any, name: string): void {\n this.delegate.addClass(el, name);\n }\n\n removeClass(el: any, name: string): void {\n this.delegate.removeClass(el, name);\n }\n\n setStyle(el: any, style: string, value: any, flags?: RendererStyleFlags2|undefined): void {\n this.delegate.setStyle(el, style, value, flags);\n }\n\n removeStyle(el: any, style: string, flags?: RendererStyleFlags2|undefined): void {\n this.delegate.removeStyle(el, style, flags);\n }\n\n setProperty(el: any, name: string, value: any): void {\n this.delegate.setProperty(el, name, value);\n }\n\n setValue(node: any, value: string): void {\n this.delegate.setValue(node, value);\n }\n\n listen(target: any, eventName: string, callback: (event: any) => boolean | void): () => void {\n return this.delegate.listen(target, eventName, callback);\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {DOCUMENT} from '@angular/common';\nimport {ANIMATION_MODULE_TYPE, NgZone, Provider, RendererFactory2} from '@angular/core';\nimport {ɵDomRendererFactory2 as DomRendererFactory2} from '@angular/platform-browser';\n\nimport {AsyncAnimationRendererFactory} from './async_animation_renderer';\n\n/**\n * Returns the set of [dependency-injection providers](guide/glossary#provider)\n * to enable animations in an application. See [animations guide](guide/animations)\n * to learn more about animations in Angular.\n *\n * When you use this function instead of the eager `provideAnimations()`, animations won't be\n * renderered until the renderer is loaded.\n *\n * @usageNotes\n *\n * The function is useful when you want to enable animations in an application\n * bootstrapped using the `bootstrapApplication` function. In this scenario there\n * is no need to import the `BrowserAnimationsModule` NgModule at all, just add\n * providers returned by this function to the `providers` list as show below.\n *\n * ```typescript\n * bootstrapApplication(RootComponent, {\n * providers: [\n * provideAnimationsAsync()\n * ]\n * });\n * ```\n *\n * @param type pass `'noop'` as argument to disable animations.\n *\n * @publicApi\n * @developerPreview\n */\nexport function provideAnimationsAsync(type: 'animations'|'noop' = 'animations'): Provider[] {\n return [\n {\n provide: RendererFactory2,\n useFactory: (doc: Document, renderer: DomRendererFactory2, zone: NgZone) => {\n return new AsyncAnimationRendererFactory(doc, renderer, zone, type);\n },\n deps: [DOCUMENT, DomRendererFactory2, NgZone],\n },\n {\n provide: ANIMATION_MODULE_TYPE,\n useValue: type === 'noop' ? 'NoopAnimations' : 'BrowserAnimations',\n },\n ];\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @module\n * @description\n * Entry point for all animation APIs of the animation browser package.\n */\nexport {provideAnimationsAsync} from './providers';\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @module\n * @description\n * Entry point for all public APIs of this package.\n */\nexport * from './src/async-animations';\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n// This file is not used to build this module. It is only used during editing\n// by the TypeScript language service and during build for verification. `ngc`\n// replaces this file with production index.ts when it rewrites private symbol\n// names.\n\nexport * from './public_api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["DomRendererFactory2"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"async.mjs","sources":["../../../../../../../packages/platform-browser/animations/async/src/async_animation_renderer.ts","../../../../../../../packages/platform-browser/animations/async/src/providers.ts","../../../../../../../packages/platform-browser/animations/async/src/async-animations.ts","../../../../../../../packages/platform-browser/animations/async/public_api.ts","../../../../../../../packages/platform-browser/animations/async/index.ts","../../../../../../../packages/platform-browser/animations/async/async.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport type {ɵAnimationRendererFactory as AnimationRendererFactory, ɵAnimationRenderer as AnimationRenderer, ɵBaseAnimationRenderer as BaseAnimationRenderer} from '@angular/animations/browser';\nimport {NgZone, Renderer2, RendererFactory2, RendererStyleFlags2, RendererType2, ɵRuntimeError as RuntimeError} from '@angular/core';\nimport {ɵRuntimeErrorCode as RuntimeErrorCode} from '@angular/platform-browser';\n/**\n * This alias narrows down to only the properties we need when lazy loading (or mock) the module\n */\ntype AnimationBrowserModuleImports =\n Pick<typeof import('@angular/animations/browser'), 'ɵcreateEngine'|'ɵAnimationRendererFactory'>;\n\n\nconst ANIMATION_PREFIX = '@';\n\nexport class AsyncAnimationRendererFactory implements RendererFactory2 {\n private _rendererFactoryPromise: Promise<AnimationRendererFactory>|null = null;\n\n /**\n *\n * @param moduleImpl allows to provide a mock implmentation (or will load the animation module)\n */\n constructor(\n private doc: Document, private delegate: RendererFactory2, private zone: NgZone,\n private animationType: 'animations'|'noop',\n private moduleImpl?: Promise<AnimationBrowserModuleImports>) {}\n\n /**\n * @internal\n */\n private loadImpl(): Promise<AnimationRendererFactory> {\n const moduleImpl = this.moduleImpl ?? import('@angular/animations/browser');\n\n return moduleImpl\n .catch((e) => {\n throw new RuntimeError(\n RuntimeErrorCode.ANIMATION_RENDERER_ASYNC_LOADING_FAILURE,\n (typeof ngDevMode === 'undefined' || ngDevMode) &&\n 'Async loading for animations package was ' +\n 'enabled, but loading failed. Angular falls back to using regular rendering. ' +\n 'No animations will be displayed and their styles won\\'t be applied.');\n })\n .then(({ɵcreateEngine, ɵAnimationRendererFactory}) => {\n // We can't create the renderer yet because we might need the hostElement and the type\n // Both are provided in createRenderer().\n const engine = ɵcreateEngine(this.animationType, this.doc);\n const rendererFactory = new ɵAnimationRendererFactory(this.delegate, engine, this.zone);\n this.delegate = rendererFactory;\n return rendererFactory;\n });\n }\n\n /**\n * This method is delegating the renderer creation to the factories.\n * It uses default factory while the animation factory isn't loaded\n * and will rely on the animation factory once it is loaded.\n *\n * Calling this method will trigger as side effect the loading of the animation module\n * if the renderered component uses animations.\n */\n createRenderer(hostElement: any, rendererType: RendererType2): Renderer2 {\n const renderer = this.delegate.createRenderer(hostElement, rendererType);\n\n if ((renderer as AnimationRenderer).isAnimationRenderer) {\n // The factory is already loaded, this is an animation renderer\n return renderer;\n }\n\n // We need to prevent the DomRenderer to throw an error because of synthetic properties\n if (typeof (renderer as any).throwOnSyntheticProps === 'boolean') {\n (renderer as any).throwOnSyntheticProps = false;\n }\n\n // Using a dynamic renderer to switch the renderer implementation once the module is loaded.\n const dynamicRenderer = new DynamicDelegationRenderer(renderer);\n\n // Kick off the module loading if the component uses animations but the module hasn't been\n // loaded yet.\n if (rendererType?.data?.['animation'] && !this._rendererFactoryPromise) {\n this._rendererFactoryPromise = this.loadImpl();\n }\n\n this._rendererFactoryPromise\n ?.then((animationRendererFactory) => {\n const animationRenderer =\n animationRendererFactory.createRenderer(hostElement, rendererType);\n dynamicRenderer.use(animationRenderer);\n })\n .catch(e => {\n // Permanently use regular renderer when loading fails.\n dynamicRenderer.use(renderer);\n });\n\n return dynamicRenderer;\n }\n\n begin(): void {\n this.delegate.begin?.();\n }\n\n end(): void {\n this.delegate.end?.();\n }\n\n whenRenderingDone?(): Promise<any> {\n return this.delegate.whenRenderingDone?.() ?? Promise.resolve();\n }\n}\n\n/**\n * The class allows to dynamicly switch between different renderer implementations\n * by changing the delegate renderer.\n */\nexport class DynamicDelegationRenderer implements Renderer2 {\n // List of callbacks that need to be replayed on the animation renderer once its loaded\n private replay: ((renderer: Renderer2) => void)[]|null = [];\n\n constructor(private delegate: Renderer2) {}\n\n use(impl: Renderer2) {\n this.delegate = impl;\n\n if (this.replay !== null) {\n // Replay queued actions using the animation renderer to apply\n // all events and properties collected while loading was in progress.\n for (const fn of this.replay) {\n fn(impl);\n }\n // Set to `null` to indicate that the queue was processed\n // and we no longer need to collect events and properties.\n this.replay = null;\n }\n }\n\n get data(): {[key: string]: any} {\n return this.delegate.data;\n }\n\n destroy(): void {\n this.replay = null;\n this.delegate.destroy();\n }\n\n createElement(name: string, namespace?: string|null) {\n return this.delegate.createElement(name, namespace);\n }\n\n createComment(value: string): void {\n return this.delegate.createComment(value);\n }\n\n createText(value: string): any {\n return this.delegate.createText(value);\n }\n\n get destroyNode(): ((node: any) => void)|null {\n return this.delegate.destroyNode;\n }\n\n appendChild(parent: any, newChild: any): void {\n this.delegate.appendChild(parent, newChild);\n }\n\n insertBefore(parent: any, newChild: any, refChild: any, isMove?: boolean|undefined): void {\n this.delegate.insertBefore(parent, newChild, refChild, isMove);\n }\n\n removeChild(parent: any, oldChild: any, isHostElement?: boolean|undefined): void {\n this.delegate.removeChild(parent, oldChild, isHostElement);\n }\n\n selectRootElement(selectorOrNode: any, preserveContent?: boolean|undefined): any {\n return this.delegate.selectRootElement(selectorOrNode, preserveContent);\n }\n\n parentNode(node: any): any {\n return this.delegate.parentNode(node);\n }\n\n nextSibling(node: any): any {\n return this.delegate.nextSibling(node);\n }\n\n setAttribute(el: any, name: string, value: string, namespace?: string|null|undefined): void {\n this.delegate.setAttribute(el, name, value, namespace);\n }\n\n removeAttribute(el: any, name: string, namespace?: string|null|undefined): void {\n this.delegate.removeAttribute(el, name, namespace);\n }\n\n addClass(el: any, name: string): void {\n this.delegate.addClass(el, name);\n }\n\n removeClass(el: any, name: string): void {\n this.delegate.removeClass(el, name);\n }\n\n setStyle(el: any, style: string, value: any, flags?: RendererStyleFlags2|undefined): void {\n this.delegate.setStyle(el, style, value, flags);\n }\n\n removeStyle(el: any, style: string, flags?: RendererStyleFlags2|undefined): void {\n this.delegate.removeStyle(el, style, flags);\n }\n\n setProperty(el: any, name: string, value: any): void {\n // We need to keep track of animation properties set on default renderer\n // So we can also set them also on the animation renderer\n if (this.shouldReplay(name)) {\n this.replay!.push((renderer: Renderer2) => renderer.setProperty(el, name, value));\n }\n this.delegate.setProperty(el, name, value);\n }\n\n setValue(node: any, value: string): void {\n this.delegate.setValue(node, value);\n }\n\n listen(target: any, eventName: string, callback: (event: any) => boolean | void): () => void {\n // We need to keep track of animation events registred by the default renderer\n // So we can also register them against the animation renderer\n if (this.shouldReplay(eventName)) {\n this.replay!.push((renderer: Renderer2) => renderer.listen(target, eventName, callback));\n }\n return this.delegate.listen(target, eventName, callback);\n }\n\n private shouldReplay(propOrEventName: string): boolean {\n //`null` indicates that we no longer need to collect events and properties\n return this.replay !== null && propOrEventName.startsWith(ANIMATION_PREFIX);\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {DOCUMENT} from '@angular/common';\nimport {ANIMATION_MODULE_TYPE, NgZone, Provider, RendererFactory2} from '@angular/core';\nimport {ɵDomRendererFactory2 as DomRendererFactory2} from '@angular/platform-browser';\n\nimport {AsyncAnimationRendererFactory} from './async_animation_renderer';\n\n/**\n * Returns the set of [dependency-injection providers](guide/glossary#provider)\n * to enable animations in an application. See [animations guide](guide/animations)\n * to learn more about animations in Angular.\n *\n * When you use this function instead of the eager `provideAnimations()`, animations won't be\n * renderered until the renderer is loaded.\n *\n * @usageNotes\n *\n * The function is useful when you want to enable animations in an application\n * bootstrapped using the `bootstrapApplication` function. In this scenario there\n * is no need to import the `BrowserAnimationsModule` NgModule at all, just add\n * providers returned by this function to the `providers` list as show below.\n *\n * ```typescript\n * bootstrapApplication(RootComponent, {\n * providers: [\n * provideAnimationsAsync()\n * ]\n * });\n * ```\n *\n * @param type pass `'noop'` as argument to disable animations.\n *\n * @publicApi\n * @developerPreview\n */\nexport function provideAnimationsAsync(type: 'animations'|'noop' = 'animations'): Provider[] {\n return [\n {\n provide: RendererFactory2,\n useFactory: (doc: Document, renderer: DomRendererFactory2, zone: NgZone) => {\n return new AsyncAnimationRendererFactory(doc, renderer, zone, type);\n },\n deps: [DOCUMENT, DomRendererFactory2, NgZone],\n },\n {\n provide: ANIMATION_MODULE_TYPE,\n useValue: type === 'noop' ? 'NoopAnimations' : 'BrowserAnimations',\n },\n ];\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @module\n * @description\n * Entry point for all animation APIs of the animation browser package.\n */\nexport {provideAnimationsAsync} from './providers';\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @module\n * @description\n * Entry point for all public APIs of this package.\n */\nexport * from './src/async-animations';\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n// This file is not used to build this module. It is only used during editing\n// by the TypeScript language service and during build for verification. `ngc`\n// replaces this file with production index.ts when it rewrites private symbol\n// names.\n\nexport * from './public_api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["RuntimeError","DomRendererFactory2"],"mappings":";;;;;;;;;;AAkBA,MAAM,gBAAgB,GAAG,GAAG,CAAC;MAEhB,6BAA6B,CAAA;AAGxC;;;AAGG;IACH,WACY,CAAA,GAAa,EAAU,QAA0B,EAAU,IAAY,EACvE,aAAkC,EAClC,UAAmD,EAAA;QAFnD,IAAG,CAAA,GAAA,GAAH,GAAG,CAAU;QAAU,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAkB;QAAU,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAQ;QACvE,IAAa,CAAA,aAAA,GAAb,aAAa,CAAqB;QAClC,IAAU,CAAA,UAAA,GAAV,UAAU,CAAyC;QATvD,IAAuB,CAAA,uBAAA,GAA2C,IAAI,CAAC;KASZ;AAEnE;;AAEG;IACK,QAAQ,GAAA;QACd,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,OAAO,6BAA6B,CAAC,CAAC;AAE5E,QAAA,OAAO,UAAU;AACZ,aAAA,KAAK,CAAC,CAAC,CAAC,KAAI;YACX,MAAM,IAAIA,aAAY,CAAA,IAAA,kEAElB,CAAC,OAAO,SAAS,KAAK,WAAW,IAAI,SAAS;gBAC1C,2CAA2C;oBACvC,8EAA8E;AAC9E,oBAAA,qEAAqE,CAAC,CAAC;AACrF,SAAC,CAAC;aACD,IAAI,CAAC,CAAC,EAAC,aAAa,EAAE,yBAAyB,EAAC,KAAI;;;AAGnD,YAAA,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;AAC3D,YAAA,MAAM,eAAe,GAAG,IAAI,yBAAyB,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;AACxF,YAAA,IAAI,CAAC,QAAQ,GAAG,eAAe,CAAC;AAChC,YAAA,OAAO,eAAe,CAAC;AACzB,SAAC,CAAC,CAAC;KACR;AAED;;;;;;;AAOG;IACH,cAAc,CAAC,WAAgB,EAAE,YAA2B,EAAA;AAC1D,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QAEzE,IAAK,QAA8B,CAAC,mBAAmB,EAAE;;AAEvD,YAAA,OAAO,QAAQ,CAAC;AACjB,SAAA;;AAGD,QAAA,IAAI,OAAQ,QAAgB,CAAC,qBAAqB,KAAK,SAAS,EAAE;AAC/D,YAAA,QAAgB,CAAC,qBAAqB,GAAG,KAAK,CAAC;AACjD,SAAA;;AAGD,QAAA,MAAM,eAAe,GAAG,IAAI,yBAAyB,CAAC,QAAQ,CAAC,CAAC;;;AAIhE,QAAA,IAAI,YAAY,EAAE,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE;AACtE,YAAA,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;AAChD,SAAA;AAED,QAAA,IAAI,CAAC,uBAAuB;AACxB,cAAE,IAAI,CAAC,CAAC,wBAAwB,KAAI;YAClC,MAAM,iBAAiB,GACnB,wBAAwB,CAAC,cAAc,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;AACvE,YAAA,eAAe,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;AACzC,SAAC,CAAC;aACD,KAAK,CAAC,CAAC,IAAG;;AAET,YAAA,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAChC,SAAC,CAAC,CAAC;AAEP,QAAA,OAAO,eAAe,CAAC;KACxB;IAED,KAAK,GAAA;AACH,QAAA,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC;KACzB;IAED,GAAG,GAAA;AACD,QAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;KACvB;IAED,iBAAiB,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,iBAAiB,IAAI,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;KACjE;AACF,CAAA;AAED;;;AAGG;MACU,yBAAyB,CAAA;AAIpC,IAAA,WAAA,CAAoB,QAAmB,EAAA;QAAnB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;;QAF/B,IAAM,CAAA,MAAA,GAA2C,EAAE,CAAC;KAEjB;AAE3C,IAAA,GAAG,CAAC,IAAe,EAAA;AACjB,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;AAErB,QAAA,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,EAAE;;;AAGxB,YAAA,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE;gBAC5B,EAAE,CAAC,IAAI,CAAC,CAAC;AACV,aAAA;;;AAGD,YAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;AACpB,SAAA;KACF;AAED,IAAA,IAAI,IAAI,GAAA;AACN,QAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;KAC3B;IAED,OAAO,GAAA;AACL,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;AACnB,QAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;KACzB;IAED,aAAa,CAAC,IAAY,EAAE,SAAuB,EAAA;QACjD,OAAO,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;KACrD;AAED,IAAA,aAAa,CAAC,KAAa,EAAA;QACzB,OAAO,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;KAC3C;AAED,IAAA,UAAU,CAAC,KAAa,EAAA;QACtB,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;KACxC;AAED,IAAA,IAAI,WAAW,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;KAClC;IAED,WAAW,CAAC,MAAW,EAAE,QAAa,EAAA;QACpC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;KAC7C;AAED,IAAA,YAAY,CAAC,MAAW,EAAE,QAAa,EAAE,QAAa,EAAE,MAA0B,EAAA;AAChF,QAAA,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;KAChE;AAED,IAAA,WAAW,CAAC,MAAW,EAAE,QAAa,EAAE,aAAiC,EAAA;QACvE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;KAC5D;IAED,iBAAiB,CAAC,cAAmB,EAAE,eAAmC,EAAA;QACxE,OAAO,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;KACzE;AAED,IAAA,UAAU,CAAC,IAAS,EAAA;QAClB,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;KACvC;AAED,IAAA,WAAW,CAAC,IAAS,EAAA;QACnB,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;KACxC;AAED,IAAA,YAAY,CAAC,EAAO,EAAE,IAAY,EAAE,KAAa,EAAE,SAAiC,EAAA;AAClF,QAAA,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;KACxD;AAED,IAAA,eAAe,CAAC,EAAO,EAAE,IAAY,EAAE,SAAiC,EAAA;QACtE,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;KACpD;IAED,QAAQ,CAAC,EAAO,EAAE,IAAY,EAAA;QAC5B,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;KAClC;IAED,WAAW,CAAC,EAAO,EAAE,IAAY,EAAA;QAC/B,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;KACrC;AAED,IAAA,QAAQ,CAAC,EAAO,EAAE,KAAa,EAAE,KAAU,EAAE,KAAqC,EAAA;AAChF,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;KACjD;AAED,IAAA,WAAW,CAAC,EAAO,EAAE,KAAa,EAAE,KAAqC,EAAA;QACvE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;KAC7C;AAED,IAAA,WAAW,CAAC,EAAO,EAAE,IAAY,EAAE,KAAU,EAAA;;;AAG3C,QAAA,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE;YAC3B,IAAI,CAAC,MAAO,CAAC,IAAI,CAAC,CAAC,QAAmB,KAAK,QAAQ,CAAC,WAAW,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;AACnF,SAAA;QACD,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;KAC5C;IAED,QAAQ,CAAC,IAAS,EAAE,KAAa,EAAA;QAC/B,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;KACrC;AAED,IAAA,MAAM,CAAC,MAAW,EAAE,SAAiB,EAAE,QAAwC,EAAA;;;AAG7E,QAAA,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE;YAChC,IAAI,CAAC,MAAO,CAAC,IAAI,CAAC,CAAC,QAAmB,KAAK,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;AAC1F,SAAA;AACD,QAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;KAC1D;AAEO,IAAA,YAAY,CAAC,eAAuB,EAAA;;AAE1C,QAAA,OAAO,IAAI,CAAC,MAAM,KAAK,IAAI,IAAI,eAAe,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;KAC7E;AACF;;AChOD;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BG;AACa,SAAA,sBAAsB,CAAC,IAAA,GAA4B,YAAY,EAAA;IAC7E,OAAO;AACL,QAAA;AACE,YAAA,OAAO,EAAE,gBAAgB;YACzB,UAAU,EAAE,CAAC,GAAa,EAAE,QAA6B,EAAE,IAAY,KAAI;gBACzE,OAAO,IAAI,6BAA6B,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;aACrE;AACD,YAAA,IAAI,EAAE,CAAC,QAAQ,EAAEC,oBAAmB,EAAE,MAAM,CAAC;AAC9C,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,qBAAqB;YAC9B,QAAQ,EAAE,IAAI,KAAK,MAAM,GAAG,gBAAgB,GAAG,mBAAmB;AACnE,SAAA;KACF,CAAC;AACJ;;AChDA;;;;AAIG;;ACJH;;;;AAIG;;ACJH;;ACRA;;AAEG;;;;"}
|
package/fesm2022/animations.mjs
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/**
|
2
|
-
* @license Angular v17.0.0-next.
|
2
|
+
* @license Angular v17.0.0-next.8
|
3
3
|
* (c) 2010-2022 Google LLC. https://angular.io/
|
4
4
|
* License: MIT
|
5
5
|
*/
|
@@ -27,10 +27,10 @@ class BrowserAnimationBuilder extends AnimationBuilder {
|
|
27
27
|
issueAnimationCommand(this._renderer, null, id, 'register', [entry]);
|
28
28
|
return new BrowserAnimationFactory(id, this._renderer);
|
29
29
|
}
|
30
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.
|
31
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.0-next.
|
30
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.8", ngImport: i0, type: BrowserAnimationBuilder, deps: [{ token: i0.RendererFactory2 }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
31
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.0-next.8", ngImport: i0, type: BrowserAnimationBuilder }); }
|
32
32
|
}
|
33
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.
|
33
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.8", ngImport: i0, type: BrowserAnimationBuilder, decorators: [{
|
34
34
|
type: Injectable
|
35
35
|
}], ctorParameters: () => [{ type: i0.RendererFactory2 }, { type: Document, decorators: [{
|
36
36
|
type: Inject,
|
@@ -118,10 +118,10 @@ class InjectableAnimationEngine extends ɵAnimationEngine {
|
|
118
118
|
ngOnDestroy() {
|
119
119
|
this.flush();
|
120
120
|
}
|
121
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.
|
122
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.0-next.
|
121
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.8", ngImport: i0, type: InjectableAnimationEngine, deps: [{ token: DOCUMENT }, { token: i1.AnimationDriver }, { token: i1.ɵAnimationStyleNormalizer }, { token: i0.ApplicationRef }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
122
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.0-next.8", ngImport: i0, type: InjectableAnimationEngine }); }
|
123
123
|
}
|
124
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.
|
124
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.8", ngImport: i0, type: InjectableAnimationEngine, decorators: [{
|
125
125
|
type: Injectable
|
126
126
|
}], ctorParameters: () => [{ type: Document, decorators: [{
|
127
127
|
type: Inject,
|
@@ -188,11 +188,11 @@ class BrowserAnimationsModule {
|
|
188
188
|
BROWSER_ANIMATIONS_PROVIDERS
|
189
189
|
};
|
190
190
|
}
|
191
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.
|
192
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.0-next.
|
193
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.0-next.
|
191
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.8", ngImport: i0, type: BrowserAnimationsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
192
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.0-next.8", ngImport: i0, type: BrowserAnimationsModule, exports: [BrowserModule] }); }
|
193
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.0-next.8", ngImport: i0, type: BrowserAnimationsModule, providers: BROWSER_ANIMATIONS_PROVIDERS, imports: [BrowserModule] }); }
|
194
194
|
}
|
195
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.
|
195
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.8", ngImport: i0, type: BrowserAnimationsModule, decorators: [{
|
196
196
|
type: NgModule,
|
197
197
|
args: [{
|
198
198
|
exports: [BrowserModule],
|
@@ -231,11 +231,11 @@ function provideAnimations() {
|
|
231
231
|
* @publicApi
|
232
232
|
*/
|
233
233
|
class NoopAnimationsModule {
|
234
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.
|
235
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.0-next.
|
236
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.0-next.
|
234
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.8", ngImport: i0, type: NoopAnimationsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
235
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.0-next.8", ngImport: i0, type: NoopAnimationsModule, exports: [BrowserModule] }); }
|
236
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.0-next.8", ngImport: i0, type: NoopAnimationsModule, providers: BROWSER_NOOP_ANIMATIONS_PROVIDERS, imports: [BrowserModule] }); }
|
237
237
|
}
|
238
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.
|
238
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.8", ngImport: i0, type: NoopAnimationsModule, decorators: [{
|
239
239
|
type: NgModule,
|
240
240
|
args: [{
|
241
241
|
exports: [BrowserModule],
|