@angular/core 18.2.6 → 18.2.7
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/LICENSE +21 -0
- package/esm2022/src/core_private_export.mjs +2 -3
- package/esm2022/src/core_reactivity_export_internal.mjs +2 -1
- package/esm2022/src/event_delegation_utils.mjs +2 -57
- package/esm2022/src/hydration/event_replay.mjs +3 -7
- package/esm2022/src/hydration/tokens.mjs +1 -5
- package/esm2022/src/image_performance_warning.mjs +25 -7
- package/esm2022/src/render3/after_render/hooks.mjs +3 -2
- package/esm2022/src/render3/after_render/manager.mjs +3 -3
- package/esm2022/src/render3/component_ref.mjs +1 -1
- package/esm2022/src/version.mjs +1 -1
- package/esm2022/testing/src/application_error_handler.mjs +3 -3
- package/esm2022/testing/src/logger.mjs +3 -3
- package/fesm2022/core.mjs +35 -107
- package/fesm2022/core.mjs.map +1 -1
- package/fesm2022/primitives/event-dispatch.mjs +1 -1
- package/fesm2022/primitives/signals.mjs +1 -1
- package/fesm2022/rxjs-interop.mjs +1 -1
- package/fesm2022/testing.mjs +4 -4
- package/index.d.ts +37 -52
- package/package.json +1 -1
- package/primitives/event-dispatch/index.d.ts +1 -1
- package/primitives/signals/index.d.ts +1 -1
- package/rxjs-interop/index.d.ts +1 -1
- package/schematics/migrations/after-render-phase/bundle.js +267 -267
- package/schematics/migrations/http-providers/bundle.js +270 -270
- package/schematics/migrations/invalid-two-way-bindings/bundle.js +161 -161
- package/schematics/ng-generate/control-flow-migration/bundle.js +270 -270
- package/schematics/ng-generate/inject-migration/bundle.js +281 -274
- package/schematics/ng-generate/route-lazy-loading/bundle.js +269 -269
- package/schematics/ng-generate/standalone-migration/bundle.js +454 -452
- package/testing/index.d.ts +1 -1
- package/esm2022/src/event_dispatch/event_delegation.mjs +0 -43
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
The MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2010-2024 Google LLC. https://angular.dev/license
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in
|
|
13
|
+
all copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
21
|
+
THE SOFTWARE.
|
|
@@ -27,8 +27,7 @@ export { formatRuntimeError as ɵformatRuntimeError, RuntimeError as ɵRuntimeEr
|
|
|
27
27
|
export { annotateForHydration as ɵannotateForHydration } from './hydration/annotate';
|
|
28
28
|
export { withDomHydration as ɵwithDomHydration, withI18nSupport as ɵwithI18nSupport, } from './hydration/api';
|
|
29
29
|
export { withEventReplay as ɵwithEventReplay } from './hydration/event_replay';
|
|
30
|
-
export {
|
|
31
|
-
export { provideGlobalEventDelegation as ɵprovideGlobalEventDelegation } from './event_dispatch/event_delegation';
|
|
30
|
+
export { JSACTION_EVENT_CONTRACT as ɵJSACTION_EVENT_CONTRACT } from './event_delegation_utils';
|
|
32
31
|
export { IS_HYDRATION_DOM_REUSE_ENABLED as ɵIS_HYDRATION_DOM_REUSE_ENABLED } from './hydration/tokens';
|
|
33
32
|
export { readHydrationInfo as ɵreadHydrationInfo, SSR_CONTENT_INTEGRITY_MARKER as ɵSSR_CONTENT_INTEGRITY_MARKER, } from './hydration/utils';
|
|
34
33
|
export { findLocaleData as ɵfindLocaleData, getLocaleCurrencyCode as ɵgetLocaleCurrencyCode, getLocalePluralCase as ɵgetLocalePluralCase, LocaleDataIndex as ɵLocaleDataIndex, registerLocaleData as ɵregisterLocaleData, unregisterAllLocaleData as ɵunregisterLocaleData, } from './i18n/locale_data_api';
|
|
@@ -50,4 +49,4 @@ export { isPromise as ɵisPromise, isSubscribable as ɵisSubscribable } from './
|
|
|
50
49
|
export { performanceMarkFeature as ɵperformanceMarkFeature } from './util/performance';
|
|
51
50
|
export { stringify as ɵstringify, truncateMiddle as ɵtruncateMiddle } from './util/stringify';
|
|
52
51
|
export { NOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR as ɵNOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR } from './view/provider_flags';
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZV9wcml2YXRlX2V4cG9ydC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2NvcmVfcHJpdmF0ZV9leHBvcnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUFDLHVCQUF1QixJQUFJLHdCQUF3QixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDMUYsT0FBTyxFQUNMLDZCQUE2QixJQUFJLDhCQUE4QixFQUMvRCxVQUFVLElBQUksV0FBVyxHQUMxQixNQUFNLCtCQUErQixDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxrQ0FBa0MsSUFBSSxtQ0FBbUMsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzFHLE9BQU8sRUFDTCxZQUFZLElBQUksYUFBYSxFQUM3QixxQkFBcUIsSUFBSSxzQkFBc0IsR0FFaEQsTUFBTSxrQ0FBa0MsQ0FBQztBQUMxQyxPQUFPLEVBQUMseUJBQXlCLElBQUksMEJBQTBCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUN6RyxPQUFPLEVBQ0wsc0JBQXNCLElBQUksdUJBQXVCLEVBQ2pELHNCQUFzQixJQUFJLHVCQUF1QixHQUNsRCxNQUFNLHFDQUFxQyxDQUFDO0FBQzdDLE9BQU8sRUFDTCxrQ0FBa0MsSUFBSSxtQ0FBbUMsRUFDekUsZ0JBQWdCLElBQUksaUJBQWlCLEdBQ3RDLE1BQU0sa0RBQWtELENBQUM7QUFDMUQsT0FBTyxFQUFDLDRCQUE0QixJQUFJLDZCQUE2QixFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFDckksT0FBTyxFQUNMLHdCQUF3QixJQUFJLHlCQUF5QixFQUVyRCxnQkFBZ0IsSUFBSSxpQkFBaUIsR0FDdEMsTUFBTSxtREFBbUQsQ0FBQztBQUMzRCxPQUFPLEVBQUMsT0FBTyxJQUFJLFFBQVEsRUFBQyxNQUFNLFdBQVcsQ0FBQztBQUM5QyxPQUFPLEVBRUwsY0FBYyxJQUFJLGVBQWUsR0FDbEMsTUFBTSxt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QUMsYUFBYSxJQUFJLGNBQWMsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQzlFLE9BQU8sRUFBQyxZQUFZLElBQUksYUFBYSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDM0UsT0FBTyxFQUNMLFdBQVcsSUFBSSxZQUFZLEVBQzNCLGtCQUFrQixJQUFJLG1CQUFtQixHQUMxQyxNQUFNLDJCQUEyQixDQUFDO0FBQ25DLE9BQU8sRUFBQyxnQkFBZ0IsRUFBRSxlQUFlLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRSxPQUFPLEVBQUMsWUFBWSxJQUFJLGFBQWEsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxNQUFNLElBQUksT0FBTyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2hELE9BQU8sRUFBQyxTQUFTLElBQUksVUFBVSxFQUFFLGNBQWMsSUFBSSxlQUFlLEVBQUMsTUFBTSxhQUFhLENBQUM7QUFDdkYsT0FBTyxFQUFDLHNCQUFzQixJQUFJLHVCQUF1QixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDckYsT0FBTyxFQUFDLFNBQVMsSUFBSSxVQUFVLEVBQUUsY0FBYyxJQUFJLGVBQWUsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQzVGLE9BQU8sRUFBQyxxQ0FBcUMsSUFBSSxzQ0FBc0MsRUFBQyxNQUFNLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2VcbiAqL1xuXG5leHBvcnQge3NldEFsdGVybmF0ZVdlYWtSZWZJbXBsIGFzIMm1c2V0QWx0ZXJuYXRlV2Vha1JlZkltcGx9IGZyb20gJy4uL3ByaW1pdGl2ZXMvc2lnbmFscyc7XG5leHBvcnQge1xuICBkZXRlY3RDaGFuZ2VzSW5WaWV3SWZSZXF1aXJlZCBhcyDJtWRldGVjdENoYW5nZXNJblZpZXdJZlJlcXVpcmVkLFxuICB3aGVuU3RhYmxlIGFzIMm1d2hlblN0YWJsZSxcbn0gZnJvbSAnLi9hcHBsaWNhdGlvbi9hcHBsaWNhdGlvbl9yZWYnO1xuZXhwb3J0IHtJTlRFUk5BTF9BUFBMSUNBVElPTl9FUlJPUl9IQU5ETEVSIGFzIMm1SU5URVJOQUxfQVBQTElDQVRJT05fRVJST1JfSEFORExFUn0gZnJvbSAnLi9lcnJvcl9oYW5kbGVyJztcbmV4cG9ydCB7XG4gIElNQUdFX0NPTkZJRyBhcyDJtUlNQUdFX0NPTkZJRyxcbiAgSU1BR0VfQ09ORklHX0RFRkFVTFRTIGFzIMm1SU1BR0VfQ09ORklHX0RFRkFVTFRTLFxuICBJbWFnZUNvbmZpZyBhcyDJtUltYWdlQ29uZmlnLFxufSBmcm9tICcuL2FwcGxpY2F0aW9uL2FwcGxpY2F0aW9uX3Rva2Vucyc7XG5leHBvcnQge2ludGVybmFsQ3JlYXRlQXBwbGljYXRpb24gYXMgybVpbnRlcm5hbENyZWF0ZUFwcGxpY2F0aW9ufSBmcm9tICcuL2FwcGxpY2F0aW9uL2NyZWF0ZV9hcHBsaWNhdGlvbic7XG5leHBvcnQge1xuICBkZWZhdWx0SXRlcmFibGVEaWZmZXJzIGFzIMm1ZGVmYXVsdEl0ZXJhYmxlRGlmZmVycyxcbiAgZGVmYXVsdEtleVZhbHVlRGlmZmVycyBhcyDJtWRlZmF1bHRLZXlWYWx1ZURpZmZlcnMsXG59IGZyb20gJy4vY2hhbmdlX2RldGVjdGlvbi9jaGFuZ2VfZGV0ZWN0aW9uJztcbmV4cG9ydCB7XG4gIGludGVybmFsUHJvdmlkZVpvbmVDaGFuZ2VEZXRlY3Rpb24gYXMgybVpbnRlcm5hbFByb3ZpZGVab25lQ2hhbmdlRGV0ZWN0aW9uLFxuICBQUk9WSURFRF9OR19aT05FIGFzIMm1UFJPVklERURfTkdfWk9ORSxcbn0gZnJvbSAnLi9jaGFuZ2VfZGV0ZWN0aW9uL3NjaGVkdWxpbmcvbmdfem9uZV9zY2hlZHVsaW5nJztcbmV4cG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU2NoZWR1bGVySW1wbCBhcyDJtUNoYW5nZURldGVjdGlvblNjaGVkdWxlckltcGx9IGZyb20gJy4vY2hhbmdlX2RldGVjdGlvbi9zY2hlZHVsaW5nL3pvbmVsZXNzX3NjaGVkdWxpbmdfaW1wbCc7XG5leHBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TY2hlZHVsZXIgYXMgybVDaGFuZ2VEZXRlY3Rpb25TY2hlZHVsZXIsXG4gIE5vdGlmaWNhdGlvblNvdXJjZSBhcyDJtU5vdGlmaWNhdGlvblNvdXJjZSxcbiAgWk9ORUxFU1NfRU5BQkxFRCBhcyDJtVpPTkVMRVNTX0VOQUJMRUQsXG59IGZyb20gJy4vY2hhbmdlX2RldGVjdGlvbi9zY2hlZHVsaW5nL3pvbmVsZXNzX3NjaGVkdWxpbmcnO1xuZXhwb3J0IHtDb25zb2xlIGFzIMm1Q29uc29sZX0gZnJvbSAnLi9jb25zb2xlJztcbmV4cG9ydCB7XG4gIERlZmVyQmxvY2tEZXRhaWxzIGFzIMm1RGVmZXJCbG9ja0RldGFpbHMsXG4gIGdldERlZmVyQmxvY2tzIGFzIMm1Z2V0RGVmZXJCbG9ja3MsXG59IGZyb20gJy4vZGVmZXIvZGlzY292ZXJ5JztcbmV4cG9ydCB7XG4gIHJlbmRlckRlZmVyQmxvY2tTdGF0ZSBhcyDJtXJlbmRlckRlZmVyQmxvY2tTdGF0ZSxcbiAgdHJpZ2dlclJlc291cmNlTG9hZGluZyBhcyDJtXRyaWdnZXJSZXNvdXJjZUxvYWRpbmcsXG59IGZyb20gJy4vZGVmZXIvaW5zdHJ1Y3Rpb25zJztcbmV4cG9ydCB7XG4gIERlZmVyQmxvY2tCZWhhdmlvciBhcyDJtURlZmVyQmxvY2tCZWhhdmlvcixcbiAgRGVmZXJCbG9ja0NvbmZpZyBhcyDJtURlZmVyQmxvY2tDb25maWcsXG4gIERlZmVyQmxvY2tTdGF0ZSBhcyDJtURlZmVyQmxvY2tTdGF0ZSxcbn0gZnJvbSAnLi9kZWZlci9pbnRlcmZhY2VzJztcbmV4cG9ydCB7XG4gIGNvbnZlcnRUb0JpdEZsYWdzIGFzIMm1Y29udmVydFRvQml0RmxhZ3MsXG4gIHNldEN1cnJlbnRJbmplY3RvciBhcyDJtXNldEN1cnJlbnRJbmplY3Rvcixcbn0gZnJvbSAnLi9kaS9pbmplY3Rvcl9jb21wYXRpYmlsaXR5JztcbmV4cG9ydCB7XG4gIGdldEluamVjdGFibGVEZWYgYXMgybVnZXRJbmplY3RhYmxlRGVmLFxuICDJtcm1SW5qZWN0YWJsZURlY2xhcmF0aW9uLFxuICDJtcm1SW5qZWN0b3JEZWYsXG59IGZyb20gJy4vZGkvaW50ZXJmYWNlL2RlZnMnO1xuZXhwb3J0IHtcbiAgSW50ZXJuYWxFbnZpcm9ubWVudFByb3ZpZGVycyBhcyDJtUludGVybmFsRW52aXJvbm1lbnRQcm92aWRlcnMsXG4gIGlzRW52aXJvbm1lbnRQcm92aWRlcnMgYXMgybVpc0Vudmlyb25tZW50UHJvdmlkZXJzLFxufSBmcm9tICcuL2RpL2ludGVyZmFjZS9wcm92aWRlcic7XG5leHBvcnQge0lOSkVDVE9SX1NDT1BFIGFzIMm1SU5KRUNUT1JfU0NPUEV9IGZyb20gJy4vZGkvc2NvcGUnO1xuZXhwb3J0IHtYU1NfU0VDVVJJVFlfVVJMIGFzIMm1WFNTX1NFQ1VSSVRZX1VSTH0gZnJvbSAnLi9lcnJvcl9kZXRhaWxzX2Jhc2VfdXJsJztcbmV4cG9ydCB7XG4gIGZvcm1hdFJ1bnRpbWVFcnJvciBhcyDJtWZvcm1hdFJ1bnRpbWVFcnJvcixcbiAgUnVudGltZUVycm9yIGFzIMm1UnVudGltZUVycm9yLFxuICBSdW50aW1lRXJyb3JDb2RlIGFzIMm1UnVudGltZUVycm9yQ29kZSxcbn0gZnJvbSAnLi9lcnJvcnMnO1xuZXhwb3J0IHthbm5vdGF0ZUZvckh5ZHJhdGlvbiBhcyDJtWFubm90YXRlRm9ySHlkcmF0aW9ufSBmcm9tICcuL2h5ZHJhdGlvbi9hbm5vdGF0ZSc7XG5leHBvcnQge1xuICB3aXRoRG9tSHlkcmF0aW9uIGFzIMm1d2l0aERvbUh5ZHJhdGlvbixcbiAgd2l0aEkxOG5TdXBwb3J0IGFzIMm1d2l0aEkxOG5TdXBwb3J0LFxufSBmcm9tICcuL2h5ZHJhdGlvbi9hcGknO1xuZXhwb3J0IHt3aXRoRXZlbnRSZXBsYXkgYXMgybV3aXRoRXZlbnRSZXBsYXl9IGZyb20gJy4vaHlkcmF0aW9uL2V2ZW50X3JlcGxheSc7XG5leHBvcnQge1xuICBHTE9CQUxfRVZFTlRfREVMRUdBVElPTiBhcyDJtUdMT0JBTF9FVkVOVF9ERUxFR0FUSU9OLFxuICBKU0FDVElPTl9FVkVOVF9DT05UUkFDVCBhcyDJtUpTQUNUSU9OX0VWRU5UX0NPTlRSQUNULFxufSBmcm9tICcuL2V2ZW50X2RlbGVnYXRpb25fdXRpbHMnO1xuZXhwb3J0IHtwcm92aWRlR2xvYmFsRXZlbnREZWxlZ2F0aW9uIGFzIMm1cHJvdmlkZUdsb2JhbEV2ZW50RGVsZWdhdGlvbn0gZnJvbSAnLi9ldmVudF9kaXNwYXRjaC9ldmVudF9kZWxlZ2F0aW9uJztcbmV4cG9ydCB7SVNfSFlEUkFUSU9OX0RPTV9SRVVTRV9FTkFCTEVEIGFzIMm1SVNfSFlEUkFUSU9OX0RPTV9SRVVTRV9FTkFCTEVEfSBmcm9tICcuL2h5ZHJhdGlvbi90b2tlbnMnO1xuZXhwb3J0IHtcbiAgSHlkcmF0ZWROb2RlIGFzIMm1SHlkcmF0ZWROb2RlLFxuICBIeWRyYXRpb25JbmZvIGFzIMm1SHlkcmF0aW9uSW5mbyxcbiAgcmVhZEh5ZHJhdGlvbkluZm8gYXMgybVyZWFkSHlkcmF0aW9uSW5mbyxcbiAgU1NSX0NPTlRFTlRfSU5URUdSSVRZX01BUktFUiBhcyDJtVNTUl9DT05URU5UX0lOVEVHUklUWV9NQVJLRVIsXG59IGZyb20gJy4vaHlkcmF0aW9uL3V0aWxzJztcbmV4cG9ydCB7XG4gIEN1cnJlbmN5SW5kZXggYXMgybVDdXJyZW5jeUluZGV4LFxuICBFeHRyYUxvY2FsZURhdGFJbmRleCBhcyDJtUV4dHJhTG9jYWxlRGF0YUluZGV4LFxuICBmaW5kTG9jYWxlRGF0YSBhcyDJtWZpbmRMb2NhbGVEYXRhLFxuICBnZXRMb2NhbGVDdXJyZW5jeUNvZGUgYXMgybVnZXRMb2NhbGVDdXJyZW5jeUNvZGUsXG4gIGdldExvY2FsZVBsdXJhbENhc2UgYXMgybVnZXRMb2NhbGVQbHVyYWxDYXNlLFxuICBMb2NhbGVEYXRhSW5kZXggYXMgybVMb2NhbGVEYXRhSW5kZXgsXG4gIHJlZ2lzdGVyTG9jYWxlRGF0YSBhcyDJtXJlZ2lzdGVyTG9jYWxlRGF0YSxcbiAgdW5yZWdpc3RlckFsbExvY2FsZURhdGEgYXMgybV1bnJlZ2lzdGVyTG9jYWxlRGF0YSxcbn0gZnJvbSAnLi9pMThuL2xvY2FsZV9kYXRhX2FwaSc7XG5leHBvcnQge0RFRkFVTFRfTE9DQUxFX0lEIGFzIMm1REVGQVVMVF9MT0NBTEVfSUR9IGZyb20gJy4vaTE4bi9sb2NhbGl6YXRpb24nO1xuZXhwb3J0IHtXcml0YWJsZSBhcyDJtVdyaXRhYmxlfSBmcm9tICcuL2ludGVyZmFjZS90eXBlJztcbmV4cG9ydCB7Q29tcG9uZW50RmFjdG9yeSBhcyDJtUNvbXBvbmVudEZhY3Rvcnl9IGZyb20gJy4vbGlua2VyL2NvbXBvbmVudF9mYWN0b3J5JztcbmV4cG9ydCB7XG4gIGNsZWFyUmVzb2x1dGlvbk9mQ29tcG9uZW50UmVzb3VyY2VzUXVldWUgYXMgybVjbGVhclJlc29sdXRpb25PZkNvbXBvbmVudFJlc291cmNlc1F1ZXVlLFxuICBpc0NvbXBvbmVudERlZlBlbmRpbmdSZXNvbHV0aW9uIGFzIMm1aXNDb21wb25lbnREZWZQZW5kaW5nUmVzb2x1dGlvbixcbiAgcmVzb2x2ZUNvbXBvbmVudFJlc291cmNlcyBhcyDJtXJlc29sdmVDb21wb25lbnRSZXNvdXJjZXMsXG4gIHJlc3RvcmVDb21wb25lbnRSZXNvbHV0aW9uUXVldWUgYXMgybVyZXN0b3JlQ29tcG9uZW50UmVzb2x1dGlvblF1ZXVlLFxufSBmcm9tICcuL21ldGFkYXRhL3Jlc291cmNlX2xvYWRpbmcnO1xuZXhwb3J0IHtQZW5kaW5nVGFza3MgYXMgybVQZW5kaW5nVGFza3N9IGZyb20gJy4vcGVuZGluZ190YXNrcyc7XG5leHBvcnQge0FMTE9XX01VTFRJUExFX1BMQVRGT1JNUyBhcyDJtUFMTE9XX01VTFRJUExFX1BMQVRGT1JNU30gZnJvbSAnLi9wbGF0Zm9ybS9wbGF0Zm9ybSc7XG5leHBvcnQge1JlZmxlY3Rpb25DYXBhYmlsaXRpZXMgYXMgybVSZWZsZWN0aW9uQ2FwYWJpbGl0aWVzfSBmcm9tICcuL3JlZmxlY3Rpb24vcmVmbGVjdGlvbl9jYXBhYmlsaXRpZXMnO1xuZXhwb3J0IHtBbmltYXRpb25SZW5kZXJlclR5cGUgYXMgybVBbmltYXRpb25SZW5kZXJlclR5cGV9IGZyb20gJy4vcmVuZGVyL2FwaSc7XG5leHBvcnQge1xuICBJbmplY3RvclByb2ZpbGVyQ29udGV4dCBhcyDJtUluamVjdG9yUHJvZmlsZXJDb250ZXh0LFxuICBQcm92aWRlclJlY29yZCBhcyDJtVByb3ZpZGVyUmVjb3JkLFxuICBzZXRJbmplY3RvclByb2ZpbGVyQ29udGV4dCBhcyDJtXNldEluamVjdG9yUHJvZmlsZXJDb250ZXh0LFxufSBmcm9tICcuL3JlbmRlcjMvZGVidWcvaW5qZWN0b3JfcHJvZmlsZXInO1xuZXhwb3J0IHtcbiAgYWxsb3dTYW5pdGl6YXRpb25CeXBhc3NBbmRUaHJvdyBhcyDJtWFsbG93U2FuaXRpemF0aW9uQnlwYXNzQW5kVGhyb3csXG4gIEJ5cGFzc1R5cGUgYXMgybVCeXBhc3NUeXBlLFxuICBnZXRTYW5pdGl6YXRpb25CeXBhc3NUeXBlIGFzIMm1Z2V0U2FuaXRpemF0aW9uQnlwYXNzVHlwZSxcbiAgU2FmZUh0bWwgYXMgybVTYWZlSHRtbCxcbiAgU2FmZVJlc291cmNlVXJsIGFzIMm1U2FmZVJlc291cmNlVXJsLFxuICBTYWZlU2NyaXB0IGFzIMm1U2FmZVNjcmlwdCxcbiAgU2FmZVN0eWxlIGFzIMm1U2FmZVN0eWxlLFxuICBTYWZlVXJsIGFzIMm1U2FmZVVybCxcbiAgU2FmZVZhbHVlIGFzIMm1U2FmZVZhbHVlLFxuICB1bndyYXBTYWZlVmFsdWUgYXMgybV1bndyYXBTYWZlVmFsdWUsXG59IGZyb20gJy4vc2FuaXRpemF0aW9uL2J5cGFzcyc7XG5leHBvcnQge19zYW5pdGl6ZUh0bWwgYXMgybVfc2FuaXRpemVIdG1sfSBmcm9tICcuL3Nhbml0aXphdGlvbi9odG1sX3Nhbml0aXplcic7XG5leHBvcnQge19zYW5pdGl6ZVVybCBhcyDJtV9zYW5pdGl6ZVVybH0gZnJvbSAnLi9zYW5pdGl6YXRpb24vdXJsX3Nhbml0aXplcic7XG5leHBvcnQge1xuICBURVNUQUJJTElUWSBhcyDJtVRFU1RBQklMSVRZLFxuICBURVNUQUJJTElUWV9HRVRURVIgYXMgybVURVNUQUJJTElUWV9HRVRURVIsXG59IGZyb20gJy4vdGVzdGFiaWxpdHkvdGVzdGFiaWxpdHknO1xuZXhwb3J0IHtib29sZWFuQXR0cmlidXRlLCBudW1iZXJBdHRyaWJ1dGV9IGZyb20gJy4vdXRpbC9jb2VyY2lvbic7XG5leHBvcnQge2Rldk1vZGVFcXVhbCBhcyDJtWRldk1vZGVFcXVhbH0gZnJvbSAnLi91dGlsL2NvbXBhcmlzb24nO1xuZXhwb3J0IHtnbG9iYWwgYXMgybVnbG9iYWx9IGZyb20gJy4vdXRpbC9nbG9iYWwnO1xuZXhwb3J0IHtpc1Byb21pc2UgYXMgybVpc1Byb21pc2UsIGlzU3Vic2NyaWJhYmxlIGFzIMm1aXNTdWJzY3JpYmFibGV9IGZyb20gJy4vdXRpbC9sYW5nJztcbmV4cG9ydCB7cGVyZm9ybWFuY2VNYXJrRmVhdHVyZSBhcyDJtXBlcmZvcm1hbmNlTWFya0ZlYXR1cmV9IGZyb20gJy4vdXRpbC9wZXJmb3JtYW5jZSc7XG5leHBvcnQge3N0cmluZ2lmeSBhcyDJtXN0cmluZ2lmeSwgdHJ1bmNhdGVNaWRkbGUgYXMgybV0cnVuY2F0ZU1pZGRsZX0gZnJvbSAnLi91dGlsL3N0cmluZ2lmeSc7XG5leHBvcnQge05PVF9GT1VORF9DSEVDS19PTkxZX0VMRU1FTlRfSU5KRUNUT1IgYXMgybVOT1RfRk9VTkRfQ0hFQ0tfT05MWV9FTEVNRU5UX0lOSkVDVE9SfSBmcm9tICcuL3ZpZXcvcHJvdmlkZXJfZmxhZ3MnO1xuIl19
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZV9wcml2YXRlX2V4cG9ydC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2NvcmVfcHJpdmF0ZV9leHBvcnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUFDLHVCQUF1QixJQUFJLHdCQUF3QixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDMUYsT0FBTyxFQUNMLDZCQUE2QixJQUFJLDhCQUE4QixFQUMvRCxVQUFVLElBQUksV0FBVyxHQUMxQixNQUFNLCtCQUErQixDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxrQ0FBa0MsSUFBSSxtQ0FBbUMsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzFHLE9BQU8sRUFDTCxZQUFZLElBQUksYUFBYSxFQUM3QixxQkFBcUIsSUFBSSxzQkFBc0IsR0FFaEQsTUFBTSxrQ0FBa0MsQ0FBQztBQUMxQyxPQUFPLEVBQUMseUJBQXlCLElBQUksMEJBQTBCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUN6RyxPQUFPLEVBQ0wsc0JBQXNCLElBQUksdUJBQXVCLEVBQ2pELHNCQUFzQixJQUFJLHVCQUF1QixHQUNsRCxNQUFNLHFDQUFxQyxDQUFDO0FBQzdDLE9BQU8sRUFDTCxrQ0FBa0MsSUFBSSxtQ0FBbUMsRUFDekUsZ0JBQWdCLElBQUksaUJBQWlCLEdBQ3RDLE1BQU0sa0RBQWtELENBQUM7QUFDMUQsT0FBTyxFQUFDLDRCQUE0QixJQUFJLDZCQUE2QixFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFDckksT0FBTyxFQUNMLHdCQUF3QixJQUFJLHlCQUF5QixFQUVyRCxnQkFBZ0IsSUFBSSxpQkFBaUIsR0FDdEMsTUFBTSxtREFBbUQsQ0FBQztBQUMzRCxPQUFPLEVBQUMsT0FBTyxJQUFJLFFBQVEsRUFBQyxNQUFNLFdBQVcsQ0FBQztBQUM5QyxPQUFPLEVBRUwsY0FBYyxJQUFJLGVBQWUsR0FDbEMsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQixPQUFPLEVBQ0wscUJBQXFCLElBQUksc0JBQXNCLEVBQy9DLHNCQUFzQixJQUFJLHVCQUF1QixHQUNsRCxNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFDTCxrQkFBa0IsSUFBSSxtQkFBbUIsRUFFekMsZUFBZSxJQUFJLGdCQUFnQixHQUNwQyxNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFDTCxpQkFBaUIsSUFBSSxrQkFBa0IsRUFDdkMsa0JBQWtCLElBQUksbUJBQW1CLEdBQzFDLE1BQU0sNkJBQTZCLENBQUM7QUFDckMsT0FBTyxFQUNMLGdCQUFnQixJQUFJLGlCQUFpQixHQUd0QyxNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFFTCxzQkFBc0IsSUFBSSx1QkFBdUIsR0FDbEQsTUFBTSx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQUMsY0FBYyxJQUFJLGVBQWUsRUFBQyxNQUFNLFlBQVksQ0FBQztBQUM3RCxPQUFPLEVBQUMsZ0JBQWdCLElBQUksaUJBQWlCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRSxPQUFPLEVBQ0wsa0JBQWtCLElBQUksbUJBQW1CLEVBQ3pDLFlBQVksSUFBSSxhQUFhLEdBRTlCLE1BQU0sVUFBVSxDQUFDO0FBQ2xCLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxxQkFBcUIsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ25GLE9BQU8sRUFDTCxnQkFBZ0IsSUFBSSxpQkFBaUIsRUFDckMsZUFBZSxJQUFJLGdCQUFnQixHQUNwQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBQyxlQUFlLElBQUksZ0JBQWdCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUM3RSxPQUFPLEVBQUMsdUJBQXVCLElBQUksd0JBQXdCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUM3RixPQUFPLEVBQUMsOEJBQThCLElBQUksK0JBQStCLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUNyRyxPQUFPLEVBR0wsaUJBQWlCLElBQUksa0JBQWtCLEVBQ3ZDLDRCQUE0QixJQUFJLDZCQUE2QixHQUM5RCxNQUFNLG1CQUFtQixDQUFDO0FBQzNCLE9BQU8sRUFHTCxjQUFjLElBQUksZUFBZSxFQUNqQyxxQkFBcUIsSUFBSSxzQkFBc0IsRUFDL0MsbUJBQW1CLElBQUksb0JBQW9CLEVBQzNDLGVBQWUsSUFBSSxnQkFBZ0IsRUFDbkMsa0JBQWtCLElBQUksbUJBQW1CLEVBQ3pDLHVCQUF1QixJQUFJLHFCQUFxQixHQUNqRCxNQUFNLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8sRUFBQyxpQkFBaUIsSUFBSSxrQkFBa0IsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBRTVFLE9BQU8sRUFBQyxnQkFBZ0IsSUFBSSxpQkFBaUIsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ2pGLE9BQU8sRUFDTCx3Q0FBd0MsSUFBSSx5Q0FBeUMsRUFDckYsK0JBQStCLElBQUksZ0NBQWdDLEVBQ25FLHlCQUF5QixJQUFJLDBCQUEwQixFQUN2RCwrQkFBK0IsSUFBSSxnQ0FBZ0MsR0FDcEUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyQyxPQUFPLEVBQUMsWUFBWSxJQUFJLGFBQWEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzlELE9BQU8sRUFBQyx3QkFBd0IsSUFBSSx5QkFBeUIsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzFGLE9BQU8sRUFBQyxzQkFBc0IsSUFBSSx1QkFBdUIsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBRXZHLE9BQU8sRUFHTCwwQkFBMEIsSUFBSSwyQkFBMkIsR0FDMUQsTUFBTSxtQ0FBbUMsQ0FBQztBQUMzQyxPQUFPLEVBQ0wsK0JBQStCLElBQUksZ0NBQWdDLEVBRW5FLHlCQUF5QixJQUFJLDBCQUEwQixFQU92RCxlQUFlLElBQUksZ0JBQWdCLEdBQ3BDLE1BQU0sdUJBQXVCLENBQUM7QUFDL0IsT0FBTyxFQUFDLGFBQWEsSUFBSSxjQUFjLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUM5RSxPQUFPLEVBQUMsWUFBWSxJQUFJLGFBQWEsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQzNFLE9BQU8sRUFDTCxXQUFXLElBQUksWUFBWSxFQUMzQixrQkFBa0IsSUFBSSxtQkFBbUIsR0FDMUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNuQyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUUsZUFBZSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDbEUsT0FBTyxFQUFDLFlBQVksSUFBSSxhQUFhLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUNoRSxPQUFPLEVBQUMsTUFBTSxJQUFJLE9BQU8sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNoRCxPQUFPLEVBQUMsU0FBUyxJQUFJLFVBQVUsRUFBRSxjQUFjLElBQUksZUFBZSxFQUFDLE1BQU0sYUFBYSxDQUFDO0FBQ3ZGLE9BQU8sRUFBQyxzQkFBc0IsSUFBSSx1QkFBdUIsRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQ3JGLE9BQU8sRUFBQyxTQUFTLElBQUksVUFBVSxFQUFFLGNBQWMsSUFBSSxlQUFlLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUM1RixPQUFPLEVBQUMscUNBQXFDLElBQUksc0NBQXNDLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlXG4gKi9cblxuZXhwb3J0IHtzZXRBbHRlcm5hdGVXZWFrUmVmSW1wbCBhcyDJtXNldEFsdGVybmF0ZVdlYWtSZWZJbXBsfSBmcm9tICcuLi9wcmltaXRpdmVzL3NpZ25hbHMnO1xuZXhwb3J0IHtcbiAgZGV0ZWN0Q2hhbmdlc0luVmlld0lmUmVxdWlyZWQgYXMgybVkZXRlY3RDaGFuZ2VzSW5WaWV3SWZSZXF1aXJlZCxcbiAgd2hlblN0YWJsZSBhcyDJtXdoZW5TdGFibGUsXG59IGZyb20gJy4vYXBwbGljYXRpb24vYXBwbGljYXRpb25fcmVmJztcbmV4cG9ydCB7SU5URVJOQUxfQVBQTElDQVRJT05fRVJST1JfSEFORExFUiBhcyDJtUlOVEVSTkFMX0FQUExJQ0FUSU9OX0VSUk9SX0hBTkRMRVJ9IGZyb20gJy4vZXJyb3JfaGFuZGxlcic7XG5leHBvcnQge1xuICBJTUFHRV9DT05GSUcgYXMgybVJTUFHRV9DT05GSUcsXG4gIElNQUdFX0NPTkZJR19ERUZBVUxUUyBhcyDJtUlNQUdFX0NPTkZJR19ERUZBVUxUUyxcbiAgSW1hZ2VDb25maWcgYXMgybVJbWFnZUNvbmZpZyxcbn0gZnJvbSAnLi9hcHBsaWNhdGlvbi9hcHBsaWNhdGlvbl90b2tlbnMnO1xuZXhwb3J0IHtpbnRlcm5hbENyZWF0ZUFwcGxpY2F0aW9uIGFzIMm1aW50ZXJuYWxDcmVhdGVBcHBsaWNhdGlvbn0gZnJvbSAnLi9hcHBsaWNhdGlvbi9jcmVhdGVfYXBwbGljYXRpb24nO1xuZXhwb3J0IHtcbiAgZGVmYXVsdEl0ZXJhYmxlRGlmZmVycyBhcyDJtWRlZmF1bHRJdGVyYWJsZURpZmZlcnMsXG4gIGRlZmF1bHRLZXlWYWx1ZURpZmZlcnMgYXMgybVkZWZhdWx0S2V5VmFsdWVEaWZmZXJzLFxufSBmcm9tICcuL2NoYW5nZV9kZXRlY3Rpb24vY2hhbmdlX2RldGVjdGlvbic7XG5leHBvcnQge1xuICBpbnRlcm5hbFByb3ZpZGVab25lQ2hhbmdlRGV0ZWN0aW9uIGFzIMm1aW50ZXJuYWxQcm92aWRlWm9uZUNoYW5nZURldGVjdGlvbixcbiAgUFJPVklERURfTkdfWk9ORSBhcyDJtVBST1ZJREVEX05HX1pPTkUsXG59IGZyb20gJy4vY2hhbmdlX2RldGVjdGlvbi9zY2hlZHVsaW5nL25nX3pvbmVfc2NoZWR1bGluZyc7XG5leHBvcnQge0NoYW5nZURldGVjdGlvblNjaGVkdWxlckltcGwgYXMgybVDaGFuZ2VEZXRlY3Rpb25TY2hlZHVsZXJJbXBsfSBmcm9tICcuL2NoYW5nZV9kZXRlY3Rpb24vc2NoZWR1bGluZy96b25lbGVzc19zY2hlZHVsaW5nX2ltcGwnO1xuZXhwb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU2NoZWR1bGVyIGFzIMm1Q2hhbmdlRGV0ZWN0aW9uU2NoZWR1bGVyLFxuICBOb3RpZmljYXRpb25Tb3VyY2UgYXMgybVOb3RpZmljYXRpb25Tb3VyY2UsXG4gIFpPTkVMRVNTX0VOQUJMRUQgYXMgybVaT05FTEVTU19FTkFCTEVELFxufSBmcm9tICcuL2NoYW5nZV9kZXRlY3Rpb24vc2NoZWR1bGluZy96b25lbGVzc19zY2hlZHVsaW5nJztcbmV4cG9ydCB7Q29uc29sZSBhcyDJtUNvbnNvbGV9IGZyb20gJy4vY29uc29sZSc7XG5leHBvcnQge1xuICBEZWZlckJsb2NrRGV0YWlscyBhcyDJtURlZmVyQmxvY2tEZXRhaWxzLFxuICBnZXREZWZlckJsb2NrcyBhcyDJtWdldERlZmVyQmxvY2tzLFxufSBmcm9tICcuL2RlZmVyL2Rpc2NvdmVyeSc7XG5leHBvcnQge1xuICByZW5kZXJEZWZlckJsb2NrU3RhdGUgYXMgybVyZW5kZXJEZWZlckJsb2NrU3RhdGUsXG4gIHRyaWdnZXJSZXNvdXJjZUxvYWRpbmcgYXMgybV0cmlnZ2VyUmVzb3VyY2VMb2FkaW5nLFxufSBmcm9tICcuL2RlZmVyL2luc3RydWN0aW9ucyc7XG5leHBvcnQge1xuICBEZWZlckJsb2NrQmVoYXZpb3IgYXMgybVEZWZlckJsb2NrQmVoYXZpb3IsXG4gIERlZmVyQmxvY2tDb25maWcgYXMgybVEZWZlckJsb2NrQ29uZmlnLFxuICBEZWZlckJsb2NrU3RhdGUgYXMgybVEZWZlckJsb2NrU3RhdGUsXG59IGZyb20gJy4vZGVmZXIvaW50ZXJmYWNlcyc7XG5leHBvcnQge1xuICBjb252ZXJ0VG9CaXRGbGFncyBhcyDJtWNvbnZlcnRUb0JpdEZsYWdzLFxuICBzZXRDdXJyZW50SW5qZWN0b3IgYXMgybVzZXRDdXJyZW50SW5qZWN0b3IsXG59IGZyb20gJy4vZGkvaW5qZWN0b3JfY29tcGF0aWJpbGl0eSc7XG5leHBvcnQge1xuICBnZXRJbmplY3RhYmxlRGVmIGFzIMm1Z2V0SW5qZWN0YWJsZURlZixcbiAgybXJtUluamVjdGFibGVEZWNsYXJhdGlvbixcbiAgybXJtUluamVjdG9yRGVmLFxufSBmcm9tICcuL2RpL2ludGVyZmFjZS9kZWZzJztcbmV4cG9ydCB7XG4gIEludGVybmFsRW52aXJvbm1lbnRQcm92aWRlcnMgYXMgybVJbnRlcm5hbEVudmlyb25tZW50UHJvdmlkZXJzLFxuICBpc0Vudmlyb25tZW50UHJvdmlkZXJzIGFzIMm1aXNFbnZpcm9ubWVudFByb3ZpZGVycyxcbn0gZnJvbSAnLi9kaS9pbnRlcmZhY2UvcHJvdmlkZXInO1xuZXhwb3J0IHtJTkpFQ1RPUl9TQ09QRSBhcyDJtUlOSkVDVE9SX1NDT1BFfSBmcm9tICcuL2RpL3Njb3BlJztcbmV4cG9ydCB7WFNTX1NFQ1VSSVRZX1VSTCBhcyDJtVhTU19TRUNVUklUWV9VUkx9IGZyb20gJy4vZXJyb3JfZGV0YWlsc19iYXNlX3VybCc7XG5leHBvcnQge1xuICBmb3JtYXRSdW50aW1lRXJyb3IgYXMgybVmb3JtYXRSdW50aW1lRXJyb3IsXG4gIFJ1bnRpbWVFcnJvciBhcyDJtVJ1bnRpbWVFcnJvcixcbiAgUnVudGltZUVycm9yQ29kZSBhcyDJtVJ1bnRpbWVFcnJvckNvZGUsXG59IGZyb20gJy4vZXJyb3JzJztcbmV4cG9ydCB7YW5ub3RhdGVGb3JIeWRyYXRpb24gYXMgybVhbm5vdGF0ZUZvckh5ZHJhdGlvbn0gZnJvbSAnLi9oeWRyYXRpb24vYW5ub3RhdGUnO1xuZXhwb3J0IHtcbiAgd2l0aERvbUh5ZHJhdGlvbiBhcyDJtXdpdGhEb21IeWRyYXRpb24sXG4gIHdpdGhJMThuU3VwcG9ydCBhcyDJtXdpdGhJMThuU3VwcG9ydCxcbn0gZnJvbSAnLi9oeWRyYXRpb24vYXBpJztcbmV4cG9ydCB7d2l0aEV2ZW50UmVwbGF5IGFzIMm1d2l0aEV2ZW50UmVwbGF5fSBmcm9tICcuL2h5ZHJhdGlvbi9ldmVudF9yZXBsYXknO1xuZXhwb3J0IHtKU0FDVElPTl9FVkVOVF9DT05UUkFDVCBhcyDJtUpTQUNUSU9OX0VWRU5UX0NPTlRSQUNUfSBmcm9tICcuL2V2ZW50X2RlbGVnYXRpb25fdXRpbHMnO1xuZXhwb3J0IHtJU19IWURSQVRJT05fRE9NX1JFVVNFX0VOQUJMRUQgYXMgybVJU19IWURSQVRJT05fRE9NX1JFVVNFX0VOQUJMRUR9IGZyb20gJy4vaHlkcmF0aW9uL3Rva2Vucyc7XG5leHBvcnQge1xuICBIeWRyYXRlZE5vZGUgYXMgybVIeWRyYXRlZE5vZGUsXG4gIEh5ZHJhdGlvbkluZm8gYXMgybVIeWRyYXRpb25JbmZvLFxuICByZWFkSHlkcmF0aW9uSW5mbyBhcyDJtXJlYWRIeWRyYXRpb25JbmZvLFxuICBTU1JfQ09OVEVOVF9JTlRFR1JJVFlfTUFSS0VSIGFzIMm1U1NSX0NPTlRFTlRfSU5URUdSSVRZX01BUktFUixcbn0gZnJvbSAnLi9oeWRyYXRpb24vdXRpbHMnO1xuZXhwb3J0IHtcbiAgQ3VycmVuY3lJbmRleCBhcyDJtUN1cnJlbmN5SW5kZXgsXG4gIEV4dHJhTG9jYWxlRGF0YUluZGV4IGFzIMm1RXh0cmFMb2NhbGVEYXRhSW5kZXgsXG4gIGZpbmRMb2NhbGVEYXRhIGFzIMm1ZmluZExvY2FsZURhdGEsXG4gIGdldExvY2FsZUN1cnJlbmN5Q29kZSBhcyDJtWdldExvY2FsZUN1cnJlbmN5Q29kZSxcbiAgZ2V0TG9jYWxlUGx1cmFsQ2FzZSBhcyDJtWdldExvY2FsZVBsdXJhbENhc2UsXG4gIExvY2FsZURhdGFJbmRleCBhcyDJtUxvY2FsZURhdGFJbmRleCxcbiAgcmVnaXN0ZXJMb2NhbGVEYXRhIGFzIMm1cmVnaXN0ZXJMb2NhbGVEYXRhLFxuICB1bnJlZ2lzdGVyQWxsTG9jYWxlRGF0YSBhcyDJtXVucmVnaXN0ZXJMb2NhbGVEYXRhLFxufSBmcm9tICcuL2kxOG4vbG9jYWxlX2RhdGFfYXBpJztcbmV4cG9ydCB7REVGQVVMVF9MT0NBTEVfSUQgYXMgybVERUZBVUxUX0xPQ0FMRV9JRH0gZnJvbSAnLi9pMThuL2xvY2FsaXphdGlvbic7XG5leHBvcnQge1dyaXRhYmxlIGFzIMm1V3JpdGFibGV9IGZyb20gJy4vaW50ZXJmYWNlL3R5cGUnO1xuZXhwb3J0IHtDb21wb25lbnRGYWN0b3J5IGFzIMm1Q29tcG9uZW50RmFjdG9yeX0gZnJvbSAnLi9saW5rZXIvY29tcG9uZW50X2ZhY3RvcnknO1xuZXhwb3J0IHtcbiAgY2xlYXJSZXNvbHV0aW9uT2ZDb21wb25lbnRSZXNvdXJjZXNRdWV1ZSBhcyDJtWNsZWFyUmVzb2x1dGlvbk9mQ29tcG9uZW50UmVzb3VyY2VzUXVldWUsXG4gIGlzQ29tcG9uZW50RGVmUGVuZGluZ1Jlc29sdXRpb24gYXMgybVpc0NvbXBvbmVudERlZlBlbmRpbmdSZXNvbHV0aW9uLFxuICByZXNvbHZlQ29tcG9uZW50UmVzb3VyY2VzIGFzIMm1cmVzb2x2ZUNvbXBvbmVudFJlc291cmNlcyxcbiAgcmVzdG9yZUNvbXBvbmVudFJlc29sdXRpb25RdWV1ZSBhcyDJtXJlc3RvcmVDb21wb25lbnRSZXNvbHV0aW9uUXVldWUsXG59IGZyb20gJy4vbWV0YWRhdGEvcmVzb3VyY2VfbG9hZGluZyc7XG5leHBvcnQge1BlbmRpbmdUYXNrcyBhcyDJtVBlbmRpbmdUYXNrc30gZnJvbSAnLi9wZW5kaW5nX3Rhc2tzJztcbmV4cG9ydCB7QUxMT1dfTVVMVElQTEVfUExBVEZPUk1TIGFzIMm1QUxMT1dfTVVMVElQTEVfUExBVEZPUk1TfSBmcm9tICcuL3BsYXRmb3JtL3BsYXRmb3JtJztcbmV4cG9ydCB7UmVmbGVjdGlvbkNhcGFiaWxpdGllcyBhcyDJtVJlZmxlY3Rpb25DYXBhYmlsaXRpZXN9IGZyb20gJy4vcmVmbGVjdGlvbi9yZWZsZWN0aW9uX2NhcGFiaWxpdGllcyc7XG5leHBvcnQge0FuaW1hdGlvblJlbmRlcmVyVHlwZSBhcyDJtUFuaW1hdGlvblJlbmRlcmVyVHlwZX0gZnJvbSAnLi9yZW5kZXIvYXBpJztcbmV4cG9ydCB7XG4gIEluamVjdG9yUHJvZmlsZXJDb250ZXh0IGFzIMm1SW5qZWN0b3JQcm9maWxlckNvbnRleHQsXG4gIFByb3ZpZGVyUmVjb3JkIGFzIMm1UHJvdmlkZXJSZWNvcmQsXG4gIHNldEluamVjdG9yUHJvZmlsZXJDb250ZXh0IGFzIMm1c2V0SW5qZWN0b3JQcm9maWxlckNvbnRleHQsXG59IGZyb20gJy4vcmVuZGVyMy9kZWJ1Zy9pbmplY3Rvcl9wcm9maWxlcic7XG5leHBvcnQge1xuICBhbGxvd1Nhbml0aXphdGlvbkJ5cGFzc0FuZFRocm93IGFzIMm1YWxsb3dTYW5pdGl6YXRpb25CeXBhc3NBbmRUaHJvdyxcbiAgQnlwYXNzVHlwZSBhcyDJtUJ5cGFzc1R5cGUsXG4gIGdldFNhbml0aXphdGlvbkJ5cGFzc1R5cGUgYXMgybVnZXRTYW5pdGl6YXRpb25CeXBhc3NUeXBlLFxuICBTYWZlSHRtbCBhcyDJtVNhZmVIdG1sLFxuICBTYWZlUmVzb3VyY2VVcmwgYXMgybVTYWZlUmVzb3VyY2VVcmwsXG4gIFNhZmVTY3JpcHQgYXMgybVTYWZlU2NyaXB0LFxuICBTYWZlU3R5bGUgYXMgybVTYWZlU3R5bGUsXG4gIFNhZmVVcmwgYXMgybVTYWZlVXJsLFxuICBTYWZlVmFsdWUgYXMgybVTYWZlVmFsdWUsXG4gIHVud3JhcFNhZmVWYWx1ZSBhcyDJtXVud3JhcFNhZmVWYWx1ZSxcbn0gZnJvbSAnLi9zYW5pdGl6YXRpb24vYnlwYXNzJztcbmV4cG9ydCB7X3Nhbml0aXplSHRtbCBhcyDJtV9zYW5pdGl6ZUh0bWx9IGZyb20gJy4vc2FuaXRpemF0aW9uL2h0bWxfc2FuaXRpemVyJztcbmV4cG9ydCB7X3Nhbml0aXplVXJsIGFzIMm1X3Nhbml0aXplVXJsfSBmcm9tICcuL3Nhbml0aXphdGlvbi91cmxfc2FuaXRpemVyJztcbmV4cG9ydCB7XG4gIFRFU1RBQklMSVRZIGFzIMm1VEVTVEFCSUxJVFksXG4gIFRFU1RBQklMSVRZX0dFVFRFUiBhcyDJtVRFU1RBQklMSVRZX0dFVFRFUixcbn0gZnJvbSAnLi90ZXN0YWJpbGl0eS90ZXN0YWJpbGl0eSc7XG5leHBvcnQge2Jvb2xlYW5BdHRyaWJ1dGUsIG51bWJlckF0dHJpYnV0ZX0gZnJvbSAnLi91dGlsL2NvZXJjaW9uJztcbmV4cG9ydCB7ZGV2TW9kZUVxdWFsIGFzIMm1ZGV2TW9kZUVxdWFsfSBmcm9tICcuL3V0aWwvY29tcGFyaXNvbic7XG5leHBvcnQge2dsb2JhbCBhcyDJtWdsb2JhbH0gZnJvbSAnLi91dGlsL2dsb2JhbCc7XG5leHBvcnQge2lzUHJvbWlzZSBhcyDJtWlzUHJvbWlzZSwgaXNTdWJzY3JpYmFibGUgYXMgybVpc1N1YnNjcmliYWJsZX0gZnJvbSAnLi91dGlsL2xhbmcnO1xuZXhwb3J0IHtwZXJmb3JtYW5jZU1hcmtGZWF0dXJlIGFzIMm1cGVyZm9ybWFuY2VNYXJrRmVhdHVyZX0gZnJvbSAnLi91dGlsL3BlcmZvcm1hbmNlJztcbmV4cG9ydCB7c3RyaW5naWZ5IGFzIMm1c3RyaW5naWZ5LCB0cnVuY2F0ZU1pZGRsZSBhcyDJtXRydW5jYXRlTWlkZGxlfSBmcm9tICcuL3V0aWwvc3RyaW5naWZ5JztcbmV4cG9ydCB7Tk9UX0ZPVU5EX0NIRUNLX09OTFlfRUxFTUVOVF9JTkpFQ1RPUiBhcyDJtU5PVF9GT1VORF9DSEVDS19PTkxZX0VMRU1FTlRfSU5KRUNUT1J9IGZyb20gJy4vdmlldy9wcm92aWRlcl9mbGFncyc7XG5cbmV4cG9ydCB7dHlwZSBJbnB1dFNpZ25hbE5vZGUgYXMgybVJbnB1dFNpZ25hbE5vZGV9IGZyb20gJy4vYXV0aG9yaW5nL2lucHV0L2lucHV0X3NpZ25hbF9ub2RlJztcbiJdfQ==
|
|
@@ -5,10 +5,11 @@
|
|
|
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.dev/license
|
|
7
7
|
*/
|
|
8
|
+
export { SIGNAL as ɵSIGNAL } from '@angular/core/primitives/signals';
|
|
8
9
|
export { isSignal } from './render3/reactivity/api';
|
|
9
10
|
export { computed } from './render3/reactivity/computed';
|
|
10
11
|
export { signal, ɵunwrapWritableSignal, } from './render3/reactivity/signal';
|
|
11
12
|
export { untracked } from './render3/reactivity/untracked';
|
|
12
13
|
export { effect, EffectScheduler as ɵEffectScheduler, } from './render3/reactivity/effect';
|
|
13
14
|
export { assertNotInReactiveContext } from './render3/reactivity/asserts';
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZV9yZWFjdGl2aXR5X2V4cG9ydF9pbnRlcm5hbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2NvcmVfcmVhY3Rpdml0eV9leHBvcnRfaW50ZXJuYWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUFDLE1BQU0sSUFBSSxPQUFPLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUVuRSxPQUFPLEVBQUMsUUFBUSxFQUEwQixNQUFNLDBCQUEwQixDQUFDO0FBQzNFLE9BQU8sRUFBQyxRQUFRLEVBQXdCLE1BQU0sK0JBQStCLENBQUM7QUFDOUUsT0FBTyxFQUVMLE1BQU0sRUFFTixxQkFBcUIsR0FDdEIsTUFBTSw2QkFBNkIsQ0FBQztBQUNyQyxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDekQsT0FBTyxFQUVMLE1BQU0sRUFJTixlQUFlLElBQUksZ0JBQWdCLEdBQ3BDLE1BQU0sNkJBQTZCLENBQUM7QUFDckMsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sOEJBQThCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZVxuICovXG5cbmV4cG9ydCB7U0lHTkFMIGFzIMm1U0lHTkFMfSBmcm9tICdAYW5ndWxhci9jb3JlL3ByaW1pdGl2ZXMvc2lnbmFscyc7XG5cbmV4cG9ydCB7aXNTaWduYWwsIFNpZ25hbCwgVmFsdWVFcXVhbGl0eUZufSBmcm9tICcuL3JlbmRlcjMvcmVhY3Rpdml0eS9hcGknO1xuZXhwb3J0IHtjb21wdXRlZCwgQ3JlYXRlQ29tcHV0ZWRPcHRpb25zfSBmcm9tICcuL3JlbmRlcjMvcmVhY3Rpdml0eS9jb21wdXRlZCc7XG5leHBvcnQge1xuICBDcmVhdGVTaWduYWxPcHRpb25zLFxuICBzaWduYWwsXG4gIFdyaXRhYmxlU2lnbmFsLFxuICDJtXVud3JhcFdyaXRhYmxlU2lnbmFsLFxufSBmcm9tICcuL3JlbmRlcjMvcmVhY3Rpdml0eS9zaWduYWwnO1xuZXhwb3J0IHt1bnRyYWNrZWR9IGZyb20gJy4vcmVuZGVyMy9yZWFjdGl2aXR5L3VudHJhY2tlZCc7XG5leHBvcnQge1xuICBDcmVhdGVFZmZlY3RPcHRpb25zLFxuICBlZmZlY3QsXG4gIEVmZmVjdFJlZixcbiAgRWZmZWN0Q2xlYW51cEZuLFxuICBFZmZlY3RDbGVhbnVwUmVnaXN0ZXJGbixcbiAgRWZmZWN0U2NoZWR1bGVyIGFzIMm1RWZmZWN0U2NoZWR1bGVyLFxufSBmcm9tICcuL3JlbmRlcjMvcmVhY3Rpdml0eS9lZmZlY3QnO1xuZXhwb3J0IHthc3NlcnROb3RJblJlYWN0aXZlQ29udGV4dH0gZnJvbSAnLi9yZW5kZXIzL3JlYWN0aXZpdHkvYXNzZXJ0cyc7XG4iXX0=
|
|
@@ -5,12 +5,8 @@
|
|
|
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.dev/license
|
|
7
7
|
*/
|
|
8
|
-
// tslint:disable:no-duplicate-imports
|
|
9
|
-
import { EventContract, EventContractContainer, EventDispatcher, isEarlyEventType, getActionCache, registerDispatcher, } from '@angular/core/primitives/event-dispatch';
|
|
10
8
|
import { Attribute } from '@angular/core/primitives/event-dispatch';
|
|
11
|
-
import {
|
|
12
|
-
import { EVENT_REPLAY_ENABLED_DEFAULT, IS_EVENT_REPLAY_ENABLED } from './hydration/tokens';
|
|
13
|
-
import * as i0 from "./r3_symbols";
|
|
9
|
+
import { InjectionToken } from './di';
|
|
14
10
|
export function invokeRegisteredListeners(event) {
|
|
15
11
|
const handlerFns = event.currentTarget?.__jsaction_fns?.get(event.type);
|
|
16
12
|
if (!handlerFns) {
|
|
@@ -44,55 +40,4 @@ export const JSACTION_EVENT_CONTRACT = new InjectionToken(ngDevMode ? 'EVENT_CON
|
|
|
44
40
|
providedIn: 'root',
|
|
45
41
|
factory: () => ({}),
|
|
46
42
|
});
|
|
47
|
-
|
|
48
|
-
/**
|
|
49
|
-
* This class is the delegate for `EventDelegationPlugin`. It represents the
|
|
50
|
-
* noop version of this class, with the enabled version set when
|
|
51
|
-
* `provideGlobalEventDelegation` is called.
|
|
52
|
-
*/
|
|
53
|
-
export class GlobalEventDelegation {
|
|
54
|
-
constructor() {
|
|
55
|
-
this.eventContractDetails = inject(JSACTION_EVENT_CONTRACT);
|
|
56
|
-
}
|
|
57
|
-
ngOnDestroy() {
|
|
58
|
-
this.eventContractDetails.instance?.cleanUp();
|
|
59
|
-
}
|
|
60
|
-
supports(eventType) {
|
|
61
|
-
return isEarlyEventType(eventType);
|
|
62
|
-
}
|
|
63
|
-
addEventListener(element, eventType, handler) {
|
|
64
|
-
// Note: contrary to the type, Window and Document can be passed in
|
|
65
|
-
// as well.
|
|
66
|
-
if (element.nodeType === Node.ELEMENT_NODE) {
|
|
67
|
-
this.eventContractDetails.instance.addEvent(eventType);
|
|
68
|
-
getActionCache(element)[eventType] = '';
|
|
69
|
-
sharedStashFunction(element, eventType, handler);
|
|
70
|
-
}
|
|
71
|
-
else {
|
|
72
|
-
element.addEventListener(eventType, handler);
|
|
73
|
-
}
|
|
74
|
-
return () => this.removeEventListener(element, eventType, handler);
|
|
75
|
-
}
|
|
76
|
-
removeEventListener(element, eventType, callback) {
|
|
77
|
-
if (element.nodeType === Node.ELEMENT_NODE) {
|
|
78
|
-
getActionCache(element)[eventType] = undefined;
|
|
79
|
-
}
|
|
80
|
-
else {
|
|
81
|
-
element.removeEventListener(eventType, callback);
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
static { this.ɵfac = function GlobalEventDelegation_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || GlobalEventDelegation)(); }; }
|
|
85
|
-
static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: GlobalEventDelegation, factory: GlobalEventDelegation.ɵfac }); }
|
|
86
|
-
}
|
|
87
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.setClassMetadata(GlobalEventDelegation, [{
|
|
88
|
-
type: Injectable
|
|
89
|
-
}], null, null); })();
|
|
90
|
-
export const initGlobalEventDelegation = (eventContractDetails, injector) => {
|
|
91
|
-
if (injector.get(IS_EVENT_REPLAY_ENABLED, EVENT_REPLAY_ENABLED_DEFAULT)) {
|
|
92
|
-
return;
|
|
93
|
-
}
|
|
94
|
-
const eventContract = (eventContractDetails.instance = new EventContract(new EventContractContainer(document.body)));
|
|
95
|
-
const dispatcher = new EventDispatcher(invokeRegisteredListeners, /** clickModSupport */ false);
|
|
96
|
-
registerDispatcher(eventContract, dispatcher);
|
|
97
|
-
};
|
|
98
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRfZGVsZWdhdGlvbl91dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2V2ZW50X2RlbGVnYXRpb25fdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsc0NBQXNDO0FBQ3RDLE9BQU8sRUFDTCxhQUFhLEVBQ2Isc0JBQXNCLEVBQ3RCLGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIsY0FBYyxFQUNkLGtCQUFrQixHQUNuQixNQUFNLHlDQUF5QyxDQUFDO0FBQ2pELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUNsRSxPQUFPLEVBQUMsVUFBVSxFQUFFLGNBQWMsRUFBWSxNQUFNLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFFbEUsT0FBTyxFQUFDLDRCQUE0QixFQUFFLHVCQUF1QixFQUFDLE1BQU0sb0JBQW9CLENBQUM7O0FBU3pGLE1BQU0sVUFBVSx5QkFBeUIsQ0FBQyxLQUFZO0lBQ3BELE1BQU0sVUFBVSxHQUFJLEtBQUssQ0FBQyxhQUF5QixFQUFFLGNBQWMsRUFBRSxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3JGLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNoQixPQUFPO0lBQ1QsQ0FBQztJQUNELEtBQUssTUFBTSxPQUFPLElBQUksVUFBVSxFQUFFLENBQUM7UUFDakMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pCLENBQUM7QUFDSCxDQUFDO0FBRUQsTUFBTSxVQUFVLHFCQUFxQixDQUFDLGFBQXNCLEVBQUUsVUFBb0I7SUFDaEYsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN2QixPQUFPO0lBQ1QsQ0FBQztJQUNELE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLEdBQUcsSUFBSSxHQUFHLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN4RSxNQUFNLFlBQVksR0FBRyxhQUFhLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNwRSxhQUFhLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsR0FBRyxZQUFZLElBQUksRUFBRSxHQUFHLEtBQUssRUFBRSxDQUFDLENBQUM7QUFDbEYsQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQUMsR0FBYSxFQUFFLFNBQWlCLEVBQUUsVUFBb0IsRUFBRSxFQUFFO0lBQzVGLE1BQU0sRUFBRSxHQUFHLEdBQXlCLENBQUM7SUFDckMsTUFBTSxnQkFBZ0IsR0FBRyxFQUFFLENBQUMsY0FBYyxJQUFJLElBQUksR0FBRyxFQUFFLENBQUM7SUFDeEQsTUFBTSxjQUFjLEdBQUcsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM3RCxjQUFjLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2hDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDaEQsRUFBRSxDQUFDLGNBQWMsR0FBRyxnQkFBZ0IsQ0FBQztBQUN2QyxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsQ0FBQyxFQUFXLEVBQUUsRUFBRTtJQUM3QyxFQUFFLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN2QyxFQUFFLENBQUMsY0FBYyxHQUFHLFNBQVMsQ0FBQztBQUNoQyxDQUFDLENBQUM7QUFNRixNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxJQUFJLGNBQWMsQ0FDdkQsU0FBUyxDQUFDLENBQUMsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUN6QztJQUNFLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQztDQUNwQixDQUNGLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxJQUFJLGNBQWMsQ0FDdkQsU0FBUyxDQUFDLENBQUMsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUMzQyxDQUFDO0FBRUY7Ozs7R0FJRztBQUVILE1BQU0sT0FBTyxxQkFBcUI7SUFEbEM7UUFFVSx5QkFBb0IsR0FBRyxNQUFNLENBQUMsdUJBQXVCLENBQUMsQ0FBQztLQThCaEU7SUE1QkMsV0FBVztRQUNULElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLENBQUM7SUFDaEQsQ0FBQztJQUVELFFBQVEsQ0FBQyxTQUFpQjtRQUN4QixPQUFPLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxPQUFvQixFQUFFLFNBQWlCLEVBQUUsT0FBaUI7UUFDekUsbUVBQW1FO1FBQ25FLFdBQVc7UUFDWCxJQUFJLE9BQU8sQ0FBQyxRQUFRLEtBQUssSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQzNDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxRQUFTLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3hELGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDeEMsbUJBQW1CLENBQUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNuRCxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsT0FBd0IsQ0FBQyxDQUFDO1FBQ2hFLENBQUM7UUFDRCxPQUFPLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxPQUFvQixFQUFFLFNBQWlCLEVBQUUsUUFBa0I7UUFDN0UsSUFBSSxPQUFPLENBQUMsUUFBUSxLQUFLLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUMzQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsU0FBUyxDQUFDO1FBQ2pELENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxDQUFDLG1CQUFtQixDQUFDLFNBQVMsRUFBRSxRQUF5QixDQUFDLENBQUM7UUFDcEUsQ0FBQztJQUNILENBQUM7c0hBOUJVLHFCQUFxQjt1RUFBckIscUJBQXFCLFdBQXJCLHFCQUFxQjs7Z0ZBQXJCLHFCQUFxQjtjQURqQyxVQUFVOztBQWtDWCxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRyxDQUN2QyxvQkFBMEMsRUFDMUMsUUFBa0IsRUFDbEIsRUFBRTtJQUNGLElBQUksUUFBUSxDQUFDLEdBQUcsQ0FBQyx1QkFBdUIsRUFBRSw0QkFBNEIsQ0FBQyxFQUFFLENBQUM7UUFDeEUsT0FBTztJQUNULENBQUM7SUFDRCxNQUFNLGFBQWEsR0FBRyxDQUFDLG9CQUFvQixDQUFDLFFBQVEsR0FBRyxJQUFJLGFBQWEsQ0FDdEUsSUFBSSxzQkFBc0IsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQzFDLENBQUMsQ0FBQztJQUNILE1BQU0sVUFBVSxHQUFHLElBQUksZUFBZSxDQUFDLHlCQUF5QixFQUFFLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hHLGtCQUFrQixDQUFDLGFBQWEsRUFBRSxVQUFVLENBQUMsQ0FBQztBQUNoRCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZVxuICovXG5cbi8vIHRzbGludDpkaXNhYmxlOm5vLWR1cGxpY2F0ZS1pbXBvcnRzXG5pbXBvcnQge1xuICBFdmVudENvbnRyYWN0LFxuICBFdmVudENvbnRyYWN0Q29udGFpbmVyLFxuICBFdmVudERpc3BhdGNoZXIsXG4gIGlzRWFybHlFdmVudFR5cGUsXG4gIGdldEFjdGlvbkNhY2hlLFxuICByZWdpc3RlckRpc3BhdGNoZXIsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcHJpbWl0aXZlcy9ldmVudC1kaXNwYXRjaCc7XG5pbXBvcnQge0F0dHJpYnV0ZX0gZnJvbSAnQGFuZ3VsYXIvY29yZS9wcmltaXRpdmVzL2V2ZW50LWRpc3BhdGNoJztcbmltcG9ydCB7SW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4sIEluamVjdG9yLCBpbmplY3R9IGZyb20gJy4vZGknO1xuaW1wb3J0IHtSRWxlbWVudH0gZnJvbSAnLi9yZW5kZXIzL2ludGVyZmFjZXMvcmVuZGVyZXJfZG9tJztcbmltcG9ydCB7RVZFTlRfUkVQTEFZX0VOQUJMRURfREVGQVVMVCwgSVNfRVZFTlRfUkVQTEFZX0VOQUJMRUR9IGZyb20gJy4vaHlkcmF0aW9uL3Rva2Vucyc7XG5pbXBvcnQge09uRGVzdHJveX0gZnJvbSAnLi9pbnRlcmZhY2UvbGlmZWN5Y2xlX2hvb2tzJztcblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgRWxlbWVudCB7XG4gICAgX19qc2FjdGlvbl9mbnM6IE1hcDxzdHJpbmcsIEZ1bmN0aW9uW10+IHwgdW5kZWZpbmVkO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbnZva2VSZWdpc3RlcmVkTGlzdGVuZXJzKGV2ZW50OiBFdmVudCkge1xuICBjb25zdCBoYW5kbGVyRm5zID0gKGV2ZW50LmN1cnJlbnRUYXJnZXQgYXMgRWxlbWVudCk/Ll9fanNhY3Rpb25fZm5zPy5nZXQoZXZlbnQudHlwZSk7XG4gIGlmICghaGFuZGxlckZucykge1xuICAgIHJldHVybjtcbiAgfVxuICBmb3IgKGNvbnN0IGhhbmRsZXIgb2YgaGFuZGxlckZucykge1xuICAgIGhhbmRsZXIoZXZlbnQpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXRKU0FjdGlvbkF0dHJpYnV0ZXMobmF0aXZlRWxlbWVudDogRWxlbWVudCwgZXZlbnRUeXBlczogc3RyaW5nW10pIHtcbiAgaWYgKCFldmVudFR5cGVzLmxlbmd0aCkge1xuICAgIHJldHVybjtcbiAgfVxuICBjb25zdCBwYXJ0cyA9IGV2ZW50VHlwZXMucmVkdWNlKChwcmV2LCBjdXJyKSA9PiBwcmV2ICsgY3VyciArICc6OycsICcnKTtcbiAgY29uc3QgZXhpc3RpbmdBdHRyID0gbmF0aXZlRWxlbWVudC5nZXRBdHRyaWJ1dGUoQXR0cmlidXRlLkpTQUNUSU9OKTtcbiAgbmF0aXZlRWxlbWVudC5zZXRBdHRyaWJ1dGUoQXR0cmlidXRlLkpTQUNUSU9OLCBgJHtleGlzdGluZ0F0dHIgPz8gJyd9JHtwYXJ0c31gKTtcbn1cblxuZXhwb3J0IGNvbnN0IHNoYXJlZFN0YXNoRnVuY3Rpb24gPSAockVsOiBSRWxlbWVudCwgZXZlbnRUeXBlOiBzdHJpbmcsIGxpc3RlbmVyRm46IEZ1bmN0aW9uKSA9PiB7XG4gIGNvbnN0IGVsID0gckVsIGFzIHVua25vd24gYXMgRWxlbWVudDtcbiAgY29uc3QgZXZlbnRMaXN0ZW5lck1hcCA9IGVsLl9fanNhY3Rpb25fZm5zID8/IG5ldyBNYXAoKTtcbiAgY29uc3QgZXZlbnRMaXN0ZW5lcnMgPSBldmVudExpc3RlbmVyTWFwLmdldChldmVudFR5cGUpID8/IFtdO1xuICBldmVudExpc3RlbmVycy5wdXNoKGxpc3RlbmVyRm4pO1xuICBldmVudExpc3RlbmVyTWFwLnNldChldmVudFR5cGUsIGV2ZW50TGlzdGVuZXJzKTtcbiAgZWwuX19qc2FjdGlvbl9mbnMgPSBldmVudExpc3RlbmVyTWFwO1xufTtcblxuZXhwb3J0IGNvbnN0IHJlbW92ZUxpc3RlbmVycyA9IChlbDogRWxlbWVudCkgPT4ge1xuICBlbC5yZW1vdmVBdHRyaWJ1dGUoQXR0cmlidXRlLkpTQUNUSU9OKTtcbiAgZWwuX19qc2FjdGlvbl9mbnMgPSB1bmRlZmluZWQ7XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIEV2ZW50Q29udHJhY3REZXRhaWxzIHtcbiAgaW5zdGFuY2U/OiBFdmVudENvbnRyYWN0O1xufVxuXG5leHBvcnQgY29uc3QgSlNBQ1RJT05fRVZFTlRfQ09OVFJBQ1QgPSBuZXcgSW5qZWN0aW9uVG9rZW48RXZlbnRDb250cmFjdERldGFpbHM+KFxuICBuZ0Rldk1vZGUgPyAnRVZFTlRfQ09OVFJBQ1RfREVUQUlMUycgOiAnJyxcbiAge1xuICAgIHByb3ZpZGVkSW46ICdyb290JyxcbiAgICBmYWN0b3J5OiAoKSA9PiAoe30pLFxuICB9LFxuKTtcblxuZXhwb3J0IGNvbnN0IEdMT0JBTF9FVkVOVF9ERUxFR0FUSU9OID0gbmV3IEluamVjdGlvblRva2VuPEdsb2JhbEV2ZW50RGVsZWdhdGlvbj4oXG4gIG5nRGV2TW9kZSA/ICdHTE9CQUxfRVZFTlRfREVMRUdBVElPTicgOiAnJyxcbik7XG5cbi8qKlxuICogVGhpcyBjbGFzcyBpcyB0aGUgZGVsZWdhdGUgZm9yIGBFdmVudERlbGVnYXRpb25QbHVnaW5gLiBJdCByZXByZXNlbnRzIHRoZVxuICogbm9vcCB2ZXJzaW9uIG9mIHRoaXMgY2xhc3MsIHdpdGggdGhlIGVuYWJsZWQgdmVyc2lvbiBzZXQgd2hlblxuICogYHByb3ZpZGVHbG9iYWxFdmVudERlbGVnYXRpb25gIGlzIGNhbGxlZC5cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEdsb2JhbEV2ZW50RGVsZWdhdGlvbiBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgZXZlbnRDb250cmFjdERldGFpbHMgPSBpbmplY3QoSlNBQ1RJT05fRVZFTlRfQ09OVFJBQ1QpO1xuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZXZlbnRDb250cmFjdERldGFpbHMuaW5zdGFuY2U/LmNsZWFuVXAoKTtcbiAgfVxuXG4gIHN1cHBvcnRzKGV2ZW50VHlwZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzRWFybHlFdmVudFR5cGUoZXZlbnRUeXBlKTtcbiAgfVxuXG4gIGFkZEV2ZW50TGlzdGVuZXIoZWxlbWVudDogSFRNTEVsZW1lbnQsIGV2ZW50VHlwZTogc3RyaW5nLCBoYW5kbGVyOiBGdW5jdGlvbik6IEZ1bmN0aW9uIHtcbiAgICAvLyBOb3RlOiBjb250cmFyeSB0byB0aGUgdHlwZSwgV2luZG93IGFuZCBEb2N1bWVudCBjYW4gYmUgcGFzc2VkIGluXG4gICAgLy8gYXMgd2VsbC5cbiAgICBpZiAoZWxlbWVudC5ub2RlVHlwZSA9PT0gTm9kZS5FTEVNRU5UX05PREUpIHtcbiAgICAgIHRoaXMuZXZlbnRDb250cmFjdERldGFpbHMuaW5zdGFuY2UhLmFkZEV2ZW50KGV2ZW50VHlwZSk7XG4gICAgICBnZXRBY3Rpb25DYWNoZShlbGVtZW50KVtldmVudFR5cGVdID0gJyc7XG4gICAgICBzaGFyZWRTdGFzaEZ1bmN0aW9uKGVsZW1lbnQsIGV2ZW50VHlwZSwgaGFuZGxlcik7XG4gICAgfSBlbHNlIHtcbiAgICAgIGVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGhhbmRsZXIgYXMgRXZlbnRMaXN0ZW5lcik7XG4gICAgfVxuICAgIHJldHVybiAoKSA9PiB0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIoZWxlbWVudCwgZXZlbnRUeXBlLCBoYW5kbGVyKTtcbiAgfVxuXG4gIHJlbW92ZUV2ZW50TGlzdGVuZXIoZWxlbWVudDogSFRNTEVsZW1lbnQsIGV2ZW50VHlwZTogc3RyaW5nLCBjYWxsYmFjazogRnVuY3Rpb24pOiB2b2lkIHtcbiAgICBpZiAoZWxlbWVudC5ub2RlVHlwZSA9PT0gTm9kZS5FTEVNRU5UX05PREUpIHtcbiAgICAgIGdldEFjdGlvbkNhY2hlKGVsZW1lbnQpW2V2ZW50VHlwZV0gPSB1bmRlZmluZWQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIGVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGNhbGxiYWNrIGFzIEV2ZW50TGlzdGVuZXIpO1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgY29uc3QgaW5pdEdsb2JhbEV2ZW50RGVsZWdhdGlvbiA9IChcbiAgZXZlbnRDb250cmFjdERldGFpbHM6IEV2ZW50Q29udHJhY3REZXRhaWxzLFxuICBpbmplY3RvcjogSW5qZWN0b3IsXG4pID0+IHtcbiAgaWYgKGluamVjdG9yLmdldChJU19FVkVOVF9SRVBMQVlfRU5BQkxFRCwgRVZFTlRfUkVQTEFZX0VOQUJMRURfREVGQVVMVCkpIHtcbiAgICByZXR1cm47XG4gIH1cbiAgY29uc3QgZXZlbnRDb250cmFjdCA9IChldmVudENvbnRyYWN0RGV0YWlscy5pbnN0YW5jZSA9IG5ldyBFdmVudENvbnRyYWN0KFxuICAgIG5ldyBFdmVudENvbnRyYWN0Q29udGFpbmVyKGRvY3VtZW50LmJvZHkpLFxuICApKTtcbiAgY29uc3QgZGlzcGF0Y2hlciA9IG5ldyBFdmVudERpc3BhdGNoZXIoaW52b2tlUmVnaXN0ZXJlZExpc3RlbmVycywgLyoqIGNsaWNrTW9kU3VwcG9ydCAqLyBmYWxzZSk7XG4gIHJlZ2lzdGVyRGlzcGF0Y2hlcihldmVudENvbnRyYWN0LCBkaXNwYXRjaGVyKTtcbn07XG4iXX0=
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRfZGVsZWdhdGlvbl91dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2V2ZW50X2RlbGVnYXRpb25fdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBSUgsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQ2xFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFTcEMsTUFBTSxVQUFVLHlCQUF5QixDQUFDLEtBQVk7SUFDcEQsTUFBTSxVQUFVLEdBQUksS0FBSyxDQUFDLGFBQXlCLEVBQUUsY0FBYyxFQUFFLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckYsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2hCLE9BQU87SUFDVCxDQUFDO0lBQ0QsS0FBSyxNQUFNLE9BQU8sSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUNqQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakIsQ0FBQztBQUNILENBQUM7QUFFRCxNQUFNLFVBQVUscUJBQXFCLENBQUMsYUFBc0IsRUFBRSxVQUFvQjtJQUNoRixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3ZCLE9BQU87SUFDVCxDQUFDO0lBQ0QsTUFBTSxLQUFLLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksR0FBRyxJQUFJLEdBQUcsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3hFLE1BQU0sWUFBWSxHQUFHLGFBQWEsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3BFLGFBQWEsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxHQUFHLFlBQVksSUFBSSxFQUFFLEdBQUcsS0FBSyxFQUFFLENBQUMsQ0FBQztBQUNsRixDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxHQUFhLEVBQUUsU0FBaUIsRUFBRSxVQUFvQixFQUFFLEVBQUU7SUFDNUYsTUFBTSxFQUFFLEdBQUcsR0FBeUIsQ0FBQztJQUNyQyxNQUFNLGdCQUFnQixHQUFHLEVBQUUsQ0FBQyxjQUFjLElBQUksSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUN4RCxNQUFNLGNBQWMsR0FBRyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzdELGNBQWMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDaEMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxjQUFjLENBQUMsQ0FBQztJQUNoRCxFQUFFLENBQUMsY0FBYyxHQUFHLGdCQUFnQixDQUFDO0FBQ3ZDLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxDQUFDLEVBQVcsRUFBRSxFQUFFO0lBQzdDLEVBQUUsQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3ZDLEVBQUUsQ0FBQyxjQUFjLEdBQUcsU0FBUyxDQUFDO0FBQ2hDLENBQUMsQ0FBQztBQU1GLE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLElBQUksY0FBYyxDQUN2RCxTQUFTLENBQUMsQ0FBQyxDQUFDLHdCQUF3QixDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQ3pDO0lBQ0UsVUFBVSxFQUFFLE1BQU07SUFDbEIsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDO0NBQ3BCLENBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlXG4gKi9cblxuLy8gdHNsaW50OmRpc2FibGU6bm8tZHVwbGljYXRlLWltcG9ydHNcbmltcG9ydCB7RXZlbnRDb250cmFjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9wcmltaXRpdmVzL2V2ZW50LWRpc3BhdGNoJztcbmltcG9ydCB7QXR0cmlidXRlfSBmcm9tICdAYW5ndWxhci9jb3JlL3ByaW1pdGl2ZXMvZXZlbnQtZGlzcGF0Y2gnO1xuaW1wb3J0IHtJbmplY3Rpb25Ub2tlbn0gZnJvbSAnLi9kaSc7XG5pbXBvcnQge1JFbGVtZW50fSBmcm9tICcuL3JlbmRlcjMvaW50ZXJmYWNlcy9yZW5kZXJlcl9kb20nO1xuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBFbGVtZW50IHtcbiAgICBfX2pzYWN0aW9uX2ZuczogTWFwPHN0cmluZywgRnVuY3Rpb25bXT4gfCB1bmRlZmluZWQ7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGludm9rZVJlZ2lzdGVyZWRMaXN0ZW5lcnMoZXZlbnQ6IEV2ZW50KSB7XG4gIGNvbnN0IGhhbmRsZXJGbnMgPSAoZXZlbnQuY3VycmVudFRhcmdldCBhcyBFbGVtZW50KT8uX19qc2FjdGlvbl9mbnM/LmdldChldmVudC50eXBlKTtcbiAgaWYgKCFoYW5kbGVyRm5zKSB7XG4gICAgcmV0dXJuO1xuICB9XG4gIGZvciAoY29uc3QgaGFuZGxlciBvZiBoYW5kbGVyRm5zKSB7XG4gICAgaGFuZGxlcihldmVudCk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNldEpTQWN0aW9uQXR0cmlidXRlcyhuYXRpdmVFbGVtZW50OiBFbGVtZW50LCBldmVudFR5cGVzOiBzdHJpbmdbXSkge1xuICBpZiAoIWV2ZW50VHlwZXMubGVuZ3RoKSB7XG4gICAgcmV0dXJuO1xuICB9XG4gIGNvbnN0IHBhcnRzID0gZXZlbnRUeXBlcy5yZWR1Y2UoKHByZXYsIGN1cnIpID0+IHByZXYgKyBjdXJyICsgJzo7JywgJycpO1xuICBjb25zdCBleGlzdGluZ0F0dHIgPSBuYXRpdmVFbGVtZW50LmdldEF0dHJpYnV0ZShBdHRyaWJ1dGUuSlNBQ1RJT04pO1xuICBuYXRpdmVFbGVtZW50LnNldEF0dHJpYnV0ZShBdHRyaWJ1dGUuSlNBQ1RJT04sIGAke2V4aXN0aW5nQXR0ciA/PyAnJ30ke3BhcnRzfWApO1xufVxuXG5leHBvcnQgY29uc3Qgc2hhcmVkU3Rhc2hGdW5jdGlvbiA9IChyRWw6IFJFbGVtZW50LCBldmVudFR5cGU6IHN0cmluZywgbGlzdGVuZXJGbjogRnVuY3Rpb24pID0+IHtcbiAgY29uc3QgZWwgPSByRWwgYXMgdW5rbm93biBhcyBFbGVtZW50O1xuICBjb25zdCBldmVudExpc3RlbmVyTWFwID0gZWwuX19qc2FjdGlvbl9mbnMgPz8gbmV3IE1hcCgpO1xuICBjb25zdCBldmVudExpc3RlbmVycyA9IGV2ZW50TGlzdGVuZXJNYXAuZ2V0KGV2ZW50VHlwZSkgPz8gW107XG4gIGV2ZW50TGlzdGVuZXJzLnB1c2gobGlzdGVuZXJGbik7XG4gIGV2ZW50TGlzdGVuZXJNYXAuc2V0KGV2ZW50VHlwZSwgZXZlbnRMaXN0ZW5lcnMpO1xuICBlbC5fX2pzYWN0aW9uX2ZucyA9IGV2ZW50TGlzdGVuZXJNYXA7XG59O1xuXG5leHBvcnQgY29uc3QgcmVtb3ZlTGlzdGVuZXJzID0gKGVsOiBFbGVtZW50KSA9PiB7XG4gIGVsLnJlbW92ZUF0dHJpYnV0ZShBdHRyaWJ1dGUuSlNBQ1RJT04pO1xuICBlbC5fX2pzYWN0aW9uX2ZucyA9IHVuZGVmaW5lZDtcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXZlbnRDb250cmFjdERldGFpbHMge1xuICBpbnN0YW5jZT86IEV2ZW50Q29udHJhY3Q7XG59XG5cbmV4cG9ydCBjb25zdCBKU0FDVElPTl9FVkVOVF9DT05UUkFDVCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxFdmVudENvbnRyYWN0RGV0YWlscz4oXG4gIG5nRGV2TW9kZSA/ICdFVkVOVF9DT05UUkFDVF9ERVRBSUxTJyA6ICcnLFxuICB7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxuICAgIGZhY3Rvcnk6ICgpID0+ICh7fSksXG4gIH0sXG4pO1xuIl19
|
|
@@ -13,7 +13,7 @@ import { setStashFn } from '../render3/instructions/listener';
|
|
|
13
13
|
import { CLEANUP } from '../render3/interfaces/view';
|
|
14
14
|
import { isPlatformBrowser } from '../render3/util/misc_utils';
|
|
15
15
|
import { unwrapRNode } from '../render3/util/view_utils';
|
|
16
|
-
import { EVENT_REPLAY_ENABLED_DEFAULT, IS_EVENT_REPLAY_ENABLED
|
|
16
|
+
import { EVENT_REPLAY_ENABLED_DEFAULT, IS_EVENT_REPLAY_ENABLED } from './tokens';
|
|
17
17
|
import { sharedStashFunction, removeListeners, invokeRegisteredListeners, JSACTION_EVENT_CONTRACT, } from '../event_delegation_utils';
|
|
18
18
|
import { APP_ID } from '../application/application_tokens';
|
|
19
19
|
import { performanceMarkFeature } from '../util/performance';
|
|
@@ -21,15 +21,11 @@ import { performanceMarkFeature } from '../util/performance';
|
|
|
21
21
|
* A set of DOM elements with `jsaction` attributes.
|
|
22
22
|
*/
|
|
23
23
|
const jsactionSet = new Set();
|
|
24
|
-
function isGlobalEventDelegationEnabled(injector) {
|
|
25
|
-
return injector.get(IS_GLOBAL_EVENT_DELEGATION_ENABLED, false);
|
|
26
|
-
}
|
|
27
24
|
/**
|
|
28
25
|
* Determines whether Event Replay feature should be activated on the client.
|
|
29
26
|
*/
|
|
30
27
|
function shouldEnableEventReplay(injector) {
|
|
31
|
-
return
|
|
32
|
-
!isGlobalEventDelegationEnabled(injector));
|
|
28
|
+
return injector.get(IS_EVENT_REPLAY_ENABLED, EVENT_REPLAY_ENABLED_DEFAULT);
|
|
33
29
|
}
|
|
34
30
|
/**
|
|
35
31
|
* Returns a set of providers required to setup support for event replay.
|
|
@@ -159,4 +155,4 @@ export function collectDomEventsInfo(tView, lView, eventTypesToReplay) {
|
|
|
159
155
|
}
|
|
160
156
|
return domEventsInfo;
|
|
161
157
|
}
|
|
162
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRfcmVwbGF5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvaHlkcmF0aW9uL2V2ZW50X3JlcGxheS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFFSCxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLGtCQUFrQixFQUNsQixzQkFBc0IsRUFDdEIsYUFBYSxFQUNiLGVBQWUsRUFDZixrQkFBa0IsRUFDbEIsNEJBQTRCLEVBQzVCLGdDQUFnQyxHQUNqQyxNQUFNLHlDQUF5QyxDQUFDO0FBRWpELE9BQU8sRUFBQyxzQkFBc0IsRUFBRSxjQUFjLEVBQUUsVUFBVSxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEcsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFFBQVEsRUFBQyxNQUFNLE9BQU8sQ0FBQztBQUN4RCxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFFcEQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBRTVELE9BQU8sRUFBQyxPQUFPLEVBQWUsTUFBTSw0QkFBNEIsQ0FBQztBQUNqRSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUM3RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFdkQsT0FBTyxFQUNMLDRCQUE0QixFQUM1Qix1QkFBdUIsRUFDdkIsa0NBQWtDLEdBQ25DLE1BQU0sVUFBVSxDQUFDO0FBQ2xCLE9BQU8sRUFDTCxtQkFBbUIsRUFDbkIsZUFBZSxFQUNmLHlCQUF5QixFQUV6Qix1QkFBdUIsR0FDeEIsTUFBTSwyQkFBMkIsQ0FBQztBQUNuQyxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDekQsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFM0Q7O0dBRUc7QUFDSCxNQUFNLFdB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U0FBUyxJQUFJLGdCQUFnQixJQUFJLENBQUMsQ0FBQztRQUNsRixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDaEIsU0FBUztRQUNYLENBQUM7UUFDRCxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO1lBQ3hDLGFBQWEsQ0FBQyxHQUFHLENBQUMsZUFBZSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztRQUNsRCxDQUFDO2FBQU0sQ0FBQztZQUNOLGFBQWEsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3RELENBQUM7SUFDSCxDQUFDO0lBQ0QsT0FBTyxhQUFhLENBQUM7QUFDdkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtcbiAgaXNFYXJseUV2ZW50VHlwZSxcbiAgaXNDYXB0dXJlRXZlbnRUeXBlLFxuICBFdmVudENvbnRyYWN0Q29udGFpbmVyLFxuICBFdmVudENvbnRyYWN0LFxuICBFdmVudERpc3BhdGNoZXIsXG4gIHJlZ2lzdGVyRGlzcGF0Y2hlcixcbiAgZ2V0QXBwU2NvcGVkUXVldWVkRXZlbnRJbmZvcyxcbiAgY2xlYXJBcHBTY29wZWRFYXJseUV2ZW50Q29udHJhY3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcHJpbWl0aXZlcy9ldmVudC1kaXNwYXRjaCc7XG5cbmltcG9ydCB7QVBQX0JPT1RTVFJBUF9MSVNURU5FUiwgQXBwbGljYXRpb25SZWYsIHdoZW5TdGFibGV9IGZyb20gJy4uL2FwcGxpY2F0aW9uL2FwcGxpY2F0aW9uX3JlZic7XG5pbXBvcnQge0VOVklST05NRU5UX0lOSVRJQUxJWkVSLCBJbmplY3Rvcn0gZnJvbSAnLi4vZGknO1xuaW1wb3J0IHtpbmplY3R9IGZyb20gJy4uL2RpL2luamVjdG9yX2NvbXBhdGliaWxpdHknO1xuaW1wb3J0IHtQcm92aWRlcn0gZnJvbSAnLi4vZGkvaW50ZXJmYWNlL3Byb3ZpZGVyJztcbmltcG9ydCB7c2V0U3Rhc2hGbn0gZnJvbSAnLi4vcmVuZGVyMy9pbnN0cnVjdGlvbnMvbGlzdGVuZXInO1xuaW1wb3J0IHtSRWxlbWVudH0gZnJvbSAnLi4vcmVuZGVyMy9pbnRlcmZhY2VzL3JlbmRlcmVyX2RvbSc7XG5pbXBvcnQge0NMRUFOVVAsIExWaWV3LCBUVmlld30gZnJvbSAnLi4vcmVuZGVyMy9pbnRlcmZhY2VzL3ZpZXcnO1xuaW1wb3J0IHtpc1BsYXRmb3JtQnJvd3Nlcn0gZnJvbSAnLi4vcmVuZGVyMy91dGlsL21pc2NfdXRpbHMnO1xuaW1wb3J0IHt1bndyYXBSTm9kZX0gZnJvbSAnLi4vcmVuZGVyMy91dGlsL3ZpZXdfdXRpbHMnO1xuXG5pbXBvcnQge1xuICBFVkVOVF9SRVBMQVlfRU5BQkxFRF9ERUZBVUxULFxuICBJU19FVkVOVF9SRVBMQVlfRU5BQkxFRCxcbiAgSVNfR0xPQkFMX0VWRU5UX0RFTEVHQVRJT05fRU5BQkxFRCxcbn0gZnJvbSAnLi90b2tlbnMnO1xuaW1wb3J0IHtcbiAgc2hhcmVkU3Rhc2hGdW5jdGlvbixcbiAgcmVtb3ZlTGlzdGVuZXJzLFxuICBpbnZva2VSZWdpc3RlcmVkTGlzdGVuZXJzLFxuICBFdmVudENvbnRyYWN0RGV0YWlscyxcbiAgSlNBQ1RJT05fRVZFTlRfQ09OVFJBQ1QsXG59IGZyb20gJy4uL2V2ZW50X2RlbGVnYXRpb25fdXRpbHMnO1xuaW1wb3J0IHtBUFBfSUR9IGZyb20gJy4uL2FwcGxpY2F0aW9uL2FwcGxpY2F0aW9uX3Rva2Vucyc7XG5pbXBvcnQge3BlcmZvcm1hbmNlTWFya0ZlYXR1cmV9IGZyb20gJy4uL3V0aWwvcGVyZm9ybWFuY2UnO1xuXG4vKipcbiAqIEEgc2V0IG9mIERPTSBlbGVtZW50cyB3aXRoIGBqc2FjdGlvbmAgYXR0cmlidXRlcy5cbiAqL1xuY29uc3QganNhY3Rpb25TZXQgPSBuZXcgU2V0PEVsZW1lbnQ+KCk7XG5cbmZ1bmN0aW9uIGlzR2xvYmFsRXZlbnREZWxlZ2F0aW9uRW5hYmxlZChpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgcmV0dXJuIGluamVjdG9yLmdldChJU19HTE9CQUxfRVZFTlRfREVMRUdBVElPTl9FTkFCTEVELCBmYWxzZSk7XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIEV2ZW50IFJlcGxheSBmZWF0dXJlIHNob3VsZCBiZSBhY3RpdmF0ZWQgb24gdGhlIGNsaWVudC5cbiAqL1xuZnVuY3Rpb24gc2hvdWxkRW5hYmxlRXZlbnRSZXBsYXkoaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gIHJldHVybiAoXG4gICAgaW5qZWN0b3IuZ2V0KElTX0VWRU5UX1JFUExBWV9FTkFCTEVELCBFVkVOVF9SRVBMQVlfRU5BQkxFRF9ERUZBVUxUKSAmJlxuICAgICFpc0dsb2JhbEV2ZW50RGVsZWdhdGlvbkVuYWJsZWQoaW5qZWN0b3IpXG4gICk7XG59XG5cbi8qKlxuICogUmV0dXJucyBhIHNldCBvZiBwcm92aWRlcnMgcmVxdWlyZWQgdG8gc2V0dXAgc3VwcG9ydCBmb3IgZXZlbnQgcmVwbGF5LlxuICogUmVxdWlyZXMgaHlkcmF0aW9uIHRvIGJlIGVuYWJsZWQgc2VwYXJhdGVseS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHdpdGhFdmVudFJlcGxheSgpOiBQcm92aWRlcltdIHtcbiAgcmV0dXJuIFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBJU19FVkVOVF9SRVBMQVlfRU5BQkxFRCxcbiAgICAgIHVzZUZhY3Rvcnk6ICgpID0+IHtcbiAgICAgICAgbGV0IGlzRW5hYmxlZCA9IHRydWU7XG4gICAgICAgIGlmIChpc1BsYXRmb3JtQnJvd3NlcigpKSB7XG4gICAgICAgICAgLy8gTm90ZTogZ2xvYmFsVGhpc1tDT05UUkFDVF9QUk9QRVJUWV0gbWF5IGJlIHVuZGVmaW5lZCBpbiBjYXNlIEV2ZW50IFJlcGxheSBmZWF0dXJlXG4gICAgICAgICAgLy8gaXMgZW5hYmxlZCwgYnV0IHRoZXJlIGFyZSBubyBldmVudHMgY29uZmlndXJlZCBpbiB0aGlzIGFwcGxpY2F0aW9uLCBpbiB3aGljaCBjYXNlXG4gICAgICAgICAgLy8gd2UgZG9uJ3QgYWN0aXZhdGUgdGhpcyBmZWF0dXJlLCBzaW5jZSB0aGVyZSBhcmUgbm8gZXZlbnRzIHRvIHJlcGxheS5cbiAgICAgICAgICBjb25zdCBhcHBJZCA9IGluamVjdChBUFBfSUQpO1xuICAgICAgICAgIGlzRW5hYmxlZCA9ICEhd2luZG93Ll9lanNhcz8uW2FwcElkXTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNFbmFibGVkKSB7XG4gICAgICAgICAgcGVyZm9ybWFuY2VNYXJrRmVhdHVyZSgnTmdFdmVudFJlcGxheScpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBpc0VuYWJsZWQ7XG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogRU5WSVJPTk1FTlRfSU5JVElBTElaRVIsXG4gICAgICB1c2VWYWx1ZTogKCkgPT4ge1xuICAgICAgICBjb25zdCBpbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG4gICAgICAgIGlmIChpc1BsYXRmb3JtQnJvd3NlcihpbmplY3RvcikgJiYgc2hvdWxkRW5hYmxlRXZlbnRSZXBsYXkoaW5qZWN0b3IpKSB7XG4gICAgICAgICAgc2V0U3Rhc2hGbigockVsOiBSRWxlbWVudCwgZXZlbnROYW1lOiBzdHJpbmcsIGxpc3RlbmVyRm46IFZvaWRGdW5jdGlvbikgPT4ge1xuICAgICAgICAgICAgc2hhcmVkU3Rhc2hGdW5jdGlvbihyRWwsIGV2ZW50TmFtZSwgbGlzdGVuZXJGbik7XG4gICAgICAgICAgICBqc2FjdGlvblNldC5hZGQockVsIGFzIHVua25vd24gYXMgRWxlbWVudCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IEFQUF9CT09UU1RSQVBfTElTVEVORVIsXG4gICAgICB1c2VGYWN0b3J5OiAoKSA9PiB7XG4gICAgICAgIGlmIChpc1BsYXRmb3JtQnJvd3NlcigpKSB7XG4gICAgICAgICAgY29uc3QgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuICAgICAgICAgIGNvbnN0IGFwcFJlZiA9IGluamVjdChBcHBsaWNhdGlvblJlZik7XG4gICAgICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgICAgIGlmICghc2hvdWxkRW5hYmxlRXZlbnRSZXBsYXkoaW5qZWN0b3IpKSB7XG4gICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gS2ljayBvZmYgZXZlbnQgcmVwbGF5IGxvZ2ljIG9uY2UgaHlkcmF0aW9uIGZvciB0aGUgaW5pdGlhbCBwYXJ0XG4gICAgICAgICAgICAvLyBvZiB0aGUgYXBwbGljYXRpb24gaXMgY29tcGxldGVkLiBUaGlzIHRpbWluZyBpcyBzaW1pbGFyIHRvIHRoZSB1bmNsYWltZWRcbiAgICAgICAgICAgIC8vIGRlaHlkcmF0ZWQgdmlld3MgY2xlYW51cCB0aW1pbmcuXG4gICAgICAgICAgICB3aGVuU3RhYmxlKGFwcFJlZikudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IGV2ZW50Q29udHJhY3REZXRhaWxzID0gaW5qZWN0b3IuZ2V0KEpTQUNUSU9OX0VWRU5UX0NPTlRSQUNUKTtcbiAgICAgICAgICAgICAgaW5pdEV2ZW50UmVwbGF5KGV2ZW50Q29udHJhY3REZXRhaWxzLCBpbmplY3Rvcik7XG4gICAgICAgICAgICAgIGpzYWN0aW9uU2V0LmZvckVhY2gocmVtb3ZlTGlzdGVuZXJzKTtcbiAgICAgICAgICAgICAgLy8gQWZ0ZXIgaHlkcmF0aW9uLCB3ZSBzaG91bGRuJ3QgbmVlZCB0byBkbyBhbnltb3JlIHdvcmsgcmVsYXRlZCB0b1xuICAgICAgICAgICAgICAvLyBldmVudCByZXBsYXkgYW55bW9yZS5cbiAgICAgICAgICAgICAgc2V0U3Rhc2hGbigoKSA9PiB7fSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiAoKSA9PiB7fTsgLy8gbm9vcCBmb3IgdGhlIHNlcnZlciBjb2RlXG4gICAgICB9LFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXTtcbn1cblxuY29uc3QgaW5pdEV2ZW50UmVwbGF5ID0gKGV2ZW50RGVsZWdhdGlvbjogRXZlbnRDb250cmFjdERldGFpbHMsIGluamVjdG9yOiBJbmplY3RvcikgPT4ge1xuICBjb25zdCBhcHBJZCA9IGluamVjdG9yLmdldChBUFBfSUQpO1xuICAvLyBUaGlzIGlzIHNldCBpbiBwYWNrYWdlcy9wbGF0Zm9ybS1zZXJ2ZXIvc3JjL3V0aWxzLnRzXG4gIGNvbnN0IGVhcmx5SnNhY3Rpb25EYXRhID0gd2luZG93Ll9lanNhcyFbYXBwSWRdITtcbiAgY29uc3QgZXZlbnRDb250cmFjdCA9IChldmVudERlbGVnYXRpb24uaW5zdGFuY2UgPSBuZXcgRXZlbnRDb250cmFjdChcbiAgICBuZXcgRXZlbnRDb250cmFjdENvbnRhaW5lcihlYXJseUpzYWN0aW9uRGF0YS5jKSxcbiAgKSk7XG4gIGZvciAoY29uc3QgZXQgb2YgZWFybHlKc2FjdGlvbkRhdGEuZXQpIHtcbiAgICBldmVudENvbnRyYWN0LmFkZEV2ZW50KGV0KTtcbiAgfVxuICBmb3IgKGNvbnN0IGV0IG9mIGVhcmx5SnNhY3Rpb25EYXRhLmV0Yykge1xuICAgIGV2ZW50Q29udHJhY3QuYWRkRXZlbnQoZXQpO1xuICB9XG4gIGNvbnN0IGV2ZW50SW5mb3MgPSBnZXRBcHBTY29wZWRRdWV1ZWRFdmVudEluZm9zKGFwcElkKTtcbiAgZXZlbnRDb250cmFjdC5yZXBsYXlFYXJseUV2ZW50SW5mb3MoZXZlbnRJbmZvcyk7XG4gIGNsZWFyQXBwU2NvcGVkRWFybHlFdmVudENvbnRyYWN0KGFwcElkKTtcbiAgY29uc3QgZGlzcGF0Y2hlciA9IG5ldyBFdmVudERpc3BhdGNoZXIoaW52b2tlUmVnaXN0ZXJlZExpc3RlbmVycyk7XG4gIHJlZ2lzdGVyRGlzcGF0Y2hlcihldmVudENvbnRyYWN0LCBkaXNwYXRjaGVyKTtcbn07XG5cbi8qKlxuICogRXh0cmFjdHMgaW5mb3JtYXRpb24gYWJvdXQgYWxsIERPTSBldmVudHMgKGFkZGVkIGluIGEgdGVtcGxhdGUpIHJlZ2lzdGVyZWQgb24gZWxlbWVudHMgaW4gYSBnaXZlXG4gKiBMVmlldy4gTWFwcyBjb2xsZWN0ZWQgZXZlbnRzIHRvIGEgY29ycmVzcG9uZGluZyBET00gZWxlbWVudCAoYW4gZWxlbWVudCBpcyB1c2VkIGFzIGEga2V5KS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvbGxlY3REb21FdmVudHNJbmZvKFxuICB0VmlldzogVFZpZXcsXG4gIGxWaWV3OiBMVmlldyxcbiAgZXZlbnRUeXBlc1RvUmVwbGF5OiB7cmVndWxhcjogU2V0PHN0cmluZz47IGNhcHR1cmU6IFNldDxzdHJpbmc+fSxcbik6IE1hcDxFbGVtZW50LCBzdHJpbmdbXT4ge1xuICBjb25zdCBkb21FdmVudHNJbmZvID0gbmV3IE1hcDxFbGVtZW50LCBzdHJpbmdbXT4oKTtcbiAgY29uc3QgbENsZWFudXAgPSBsVmlld1tDTEVBTlVQXTtcbiAgY29uc3QgdENsZWFudXAgPSB0Vmlldy5jbGVhbnVwO1xuICBpZiAoIXRDbGVhbnVwIHx8ICFsQ2xlYW51cCkge1xuICAgIHJldHVybiBkb21FdmVudHNJbmZvO1xuICB9XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgdENsZWFudXAubGVuZ3RoOyApIHtcbiAgICBjb25zdCBmaXJzdFBhcmFtID0gdENsZWFudXBbaSsrXTtcbiAgICBjb25zdCBzZWNvbmRQYXJhbSA9IHRDbGVhbnVwW2krK107XG4gICAgaWYgKHR5cGVvZiBmaXJzdFBhcmFtICE9PSAnc3RyaW5nJykge1xuICAgICAgY29udGludWU7XG4gICAgfVxuICAgIGNvbnN0IGV2ZW50VHlwZSA9IGZpcnN0UGFyYW07XG4gICAgaWYgKCFpc0Vhcmx5RXZlbnRUeXBlKGV2ZW50VHlwZSkpIHtcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cbiAgICBpZiAoaXNDYXB0dXJlRXZlbnRUeXBlKGV2ZW50VHlwZSkpIHtcbiAgICAgIGV2ZW50VHlwZXNUb1JlcGxheS5jYXB0dXJlLmFkZChldmVudFR5cGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBldmVudFR5cGVzVG9SZXBsYXkucmVndWxhci5hZGQoZXZlbnRUeXBlKTtcbiAgICB9XG4gICAgY29uc3QgbGlzdGVuZXJFbGVtZW50ID0gdW53cmFwUk5vZGUobFZpZXdbc2Vjb25kUGFyYW1dKSBhcyBhbnkgYXMgRWxlbWVudDtcbiAgICBpKys7IC8vIG1vdmUgdGhlIGN1cnNvciB0byB0aGUgbmV4dCBwb3NpdGlvbiAobG9jYXRpb24gb2YgdGhlIGxpc3RlbmVyIGlkeClcbiAgICBjb25zdCB1c2VDYXB0dXJlT3JJbmR4ID0gdENsZWFudXBbaSsrXTtcbiAgICAvLyBpZiB1c2VDYXB0dXJlT3JJbmR4IGlzIGJvb2xlYW4gdGhlbiByZXBvcnQgaXQgYXMgaXMuXG4gICAgLy8gaWYgdXNlQ2FwdHVyZU9ySW5keCBpcyBwb3NpdGl2ZSBudW1iZXIgdGhlbiBpdCBpbiB1bnN1YnNjcmliZSBtZXRob2RcbiAgICAvLyBpZiB1c2VDYXB0dXJlT3JJbmR4IGlzIG5lZ2F0aXZlIG51bWJlciB0aGVuIGl0IGlzIGEgU3Vic2NyaXB0aW9uXG4gICAgY29uc3QgaXNEb21FdmVudCA9IHR5cGVvZiB1c2VDYXB0dXJlT3JJbmR4ID09PSAnYm9vbGVhbicgfHwgdXNlQ2FwdHVyZU9ySW5keCA+PSAwO1xuICAgIGlmICghaXNEb21FdmVudCkge1xuICAgICAgY29udGludWU7XG4gICAgfVxuICAgIGlmICghZG9tRXZlbnRzSW5mby5oYXMobGlzdGVuZXJFbGVtZW50KSkge1xuICAgICAgZG9tRXZlbnRzSW5mby5zZXQobGlzdGVuZXJFbGVtZW50LCBbZXZlbnRUeXBlXSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGRvbUV2ZW50c0luZm8uZ2V0KGxpc3RlbmVyRWxlbWVudCkhLnB1c2goZXZlbnRUeXBlKTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIGRvbUV2ZW50c0luZm87XG59XG4iXX0=
|
|
158
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRfcmVwbGF5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvaHlkcmF0aW9uL2V2ZW50X3JlcGxheS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFFSCxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLGtCQUFrQixFQUNsQixzQkFBc0IsRUFDdEIsYUFBYSxFQUNiLGVBQWUsRUFDZixrQkFBa0IsRUFDbEIsNEJBQTRCLEVBQzVCLGdDQUFnQyxHQUNqQyxNQUFNLHlDQUF5QyxDQUFDO0FBRWpELE9BQU8sRUFBQyxzQkFBc0IsRUFBRSxjQUFjLEVBQUUsVUFBVSxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEcsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFFBQVEsRUFBQyxNQUFNLE9BQU8sQ0FBQztBQUN4RCxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFFcEQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBRTVELE9BQU8sRUFBQyxPQUFPLEVBQWUsTUFBTSw0QkFBNEIsQ0FBQztBQUNqRSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUM3RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFdkQsT0FBTyxFQUFDLDRCQUE0QixFQUFFLHVCQUF1QixFQUFDLE1BQU0sVUFBVSxDQUFDO0FBQy9FLE9BQU8sRUFDTCxtQkFBbUIsRUFDbkIsZUFBZSxFQUNmLHlCQUF5QixFQUV6Qix1QkFBdUIsR0FDeEIsTUFBTSwyQkFBMkIsQ0FBQztBQUNuQyxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDekQsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFM0Q7O0dBRUc7QUFDSCxNQUFNLFdBQVcsR0FBRyxJQUFJLEdB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R0FBRyxDQUFDLGVBQWUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7UUFDbEQsQ0FBQzthQUFNLENBQUM7WUFDTixhQUFhLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN0RCxDQUFDO0lBQ0gsQ0FBQztJQUNELE9BQU8sYUFBYSxDQUFDO0FBQ3ZCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZVxuICovXG5cbmltcG9ydCB7XG4gIGlzRWFybHlFdmVudFR5cGUsXG4gIGlzQ2FwdHVyZUV2ZW50VHlwZSxcbiAgRXZlbnRDb250cmFjdENvbnRhaW5lcixcbiAgRXZlbnRDb250cmFjdCxcbiAgRXZlbnREaXNwYXRjaGVyLFxuICByZWdpc3RlckRpc3BhdGNoZXIsXG4gIGdldEFwcFNjb3BlZFF1ZXVlZEV2ZW50SW5mb3MsXG4gIGNsZWFyQXBwU2NvcGVkRWFybHlFdmVudENvbnRyYWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlL3ByaW1pdGl2ZXMvZXZlbnQtZGlzcGF0Y2gnO1xuXG5pbXBvcnQge0FQUF9CT09UU1RSQVBfTElTVEVORVIsIEFwcGxpY2F0aW9uUmVmLCB3aGVuU3RhYmxlfSBmcm9tICcuLi9hcHBsaWNhdGlvbi9hcHBsaWNhdGlvbl9yZWYnO1xuaW1wb3J0IHtFTlZJUk9OTUVOVF9JTklUSUFMSVpFUiwgSW5qZWN0b3J9IGZyb20gJy4uL2RpJztcbmltcG9ydCB7aW5qZWN0fSBmcm9tICcuLi9kaS9pbmplY3Rvcl9jb21wYXRpYmlsaXR5JztcbmltcG9ydCB7UHJvdmlkZXJ9IGZyb20gJy4uL2RpL2ludGVyZmFjZS9wcm92aWRlcic7XG5pbXBvcnQge3NldFN0YXNoRm59IGZyb20gJy4uL3JlbmRlcjMvaW5zdHJ1Y3Rpb25zL2xpc3RlbmVyJztcbmltcG9ydCB7UkVsZW1lbnR9IGZyb20gJy4uL3JlbmRlcjMvaW50ZXJmYWNlcy9yZW5kZXJlcl9kb20nO1xuaW1wb3J0IHtDTEVBTlVQLCBMVmlldywgVFZpZXd9IGZyb20gJy4uL3JlbmRlcjMvaW50ZXJmYWNlcy92aWV3JztcbmltcG9ydCB7aXNQbGF0Zm9ybUJyb3dzZXJ9IGZyb20gJy4uL3JlbmRlcjMvdXRpbC9taXNjX3V0aWxzJztcbmltcG9ydCB7dW53cmFwUk5vZGV9IGZyb20gJy4uL3JlbmRlcjMvdXRpbC92aWV3X3V0aWxzJztcblxuaW1wb3J0IHtFVkVOVF9SRVBMQVlfRU5BQkxFRF9ERUZBVUxULCBJU19FVkVOVF9SRVBMQVlfRU5BQkxFRH0gZnJvbSAnLi90b2tlbnMnO1xuaW1wb3J0IHtcbiAgc2hhcmVkU3Rhc2hGdW5jdGlvbixcbiAgcmVtb3ZlTGlzdGVuZXJzLFxuICBpbnZva2VSZWdpc3RlcmVkTGlzdGVuZXJzLFxuICBFdmVudENvbnRyYWN0RGV0YWlscyxcbiAgSlNBQ1RJT05fRVZFTlRfQ09OVFJBQ1QsXG59IGZyb20gJy4uL2V2ZW50X2RlbGVnYXRpb25fdXRpbHMnO1xuaW1wb3J0IHtBUFBfSUR9IGZyb20gJy4uL2FwcGxpY2F0aW9uL2FwcGxpY2F0aW9uX3Rva2Vucyc7XG5pbXBvcnQge3BlcmZvcm1hbmNlTWFya0ZlYXR1cmV9IGZyb20gJy4uL3V0aWwvcGVyZm9ybWFuY2UnO1xuXG4vKipcbiAqIEEgc2V0IG9mIERPTSBlbGVtZW50cyB3aXRoIGBqc2FjdGlvbmAgYXR0cmlidXRlcy5cbiAqL1xuY29uc3QganNhY3Rpb25TZXQgPSBuZXcgU2V0PEVsZW1lbnQ+KCk7XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIEV2ZW50IFJlcGxheSBmZWF0dXJlIHNob3VsZCBiZSBhY3RpdmF0ZWQgb24gdGhlIGNsaWVudC5cbiAqL1xuZnVuY3Rpb24gc2hvdWxkRW5hYmxlRXZlbnRSZXBsYXkoaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gIHJldHVybiBpbmplY3Rvci5nZXQoSVNfRVZFTlRfUkVQTEFZX0VOQUJMRUQsIEVWRU5UX1JFUExBWV9FTkFCTEVEX0RFRkFVTFQpO1xufVxuXG4vKipcbiAqIFJldHVybnMgYSBzZXQgb2YgcHJvdmlkZXJzIHJlcXVpcmVkIHRvIHNldHVwIHN1cHBvcnQgZm9yIGV2ZW50IHJlcGxheS5cbiAqIFJlcXVpcmVzIGh5ZHJhdGlvbiB0byBiZSBlbmFibGVkIHNlcGFyYXRlbHkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB3aXRoRXZlbnRSZXBsYXkoKTogUHJvdmlkZXJbXSB7XG4gIHJldHVybiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogSVNfRVZFTlRfUkVQTEFZX0VOQUJMRUQsXG4gICAgICB1c2VGYWN0b3J5OiAoKSA9PiB7XG4gICAgICAgIGxldCBpc0VuYWJsZWQgPSB0cnVlO1xuICAgICAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIoKSkge1xuICAgICAgICAgIC8vIE5vdGU6IGdsb2JhbFRoaXNbQ09OVFJBQ1RfUFJPUEVSVFldIG1heSBiZSB1bmRlZmluZWQgaW4gY2FzZSBFdmVudCBSZXBsYXkgZmVhdHVyZVxuICAgICAgICAgIC8vIGlzIGVuYWJsZWQsIGJ1dCB0aGVyZSBhcmUgbm8gZXZlbnRzIGNvbmZpZ3VyZWQgaW4gdGhpcyBhcHBsaWNhdGlvbiwgaW4gd2hpY2ggY2FzZVxuICAgICAgICAgIC8vIHdlIGRvbid0IGFjdGl2YXRlIHRoaXMgZmVhdHVyZSwgc2luY2UgdGhlcmUgYXJlIG5vIGV2ZW50cyB0byByZXBsYXkuXG4gICAgICAgICAgY29uc3QgYXBwSWQgPSBpbmplY3QoQVBQX0lEKTtcbiAgICAgICAgICBpc0VuYWJsZWQgPSAhIXdpbmRvdy5fZWpzYXM/LlthcHBJZF07XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzRW5hYmxlZCkge1xuICAgICAgICAgIHBlcmZvcm1hbmNlTWFya0ZlYXR1cmUoJ05nRXZlbnRSZXBsYXknKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gaXNFbmFibGVkO1xuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IEVOVklST05NRU5UX0lOSVRJQUxJWkVSLFxuICAgICAgdXNlVmFsdWU6ICgpID0+IHtcbiAgICAgICAgY29uc3QgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuICAgICAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIoaW5qZWN0b3IpICYmIHNob3VsZEVuYWJsZUV2ZW50UmVwbGF5KGluamVjdG9yKSkge1xuICAgICAgICAgIHNldFN0YXNoRm4oKHJFbDogUkVsZW1lbnQsIGV2ZW50TmFtZTogc3RyaW5nLCBsaXN0ZW5lckZuOiBWb2lkRnVuY3Rpb24pID0+IHtcbiAgICAgICAgICAgIHNoYXJlZFN0YXNoRnVuY3Rpb24ockVsLCBldmVudE5hbWUsIGxpc3RlbmVyRm4pO1xuICAgICAgICAgICAganNhY3Rpb25TZXQuYWRkKHJFbCBhcyB1bmtub3duIGFzIEVsZW1lbnQpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBBUFBfQk9PVFNUUkFQX0xJU1RFTkVSLFxuICAgICAgdXNlRmFjdG9yeTogKCkgPT4ge1xuICAgICAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIoKSkge1xuICAgICAgICAgIGNvbnN0IGluamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcbiAgICAgICAgICBjb25zdCBhcHBSZWYgPSBpbmplY3QoQXBwbGljYXRpb25SZWYpO1xuICAgICAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXNob3VsZEVuYWJsZUV2ZW50UmVwbGF5KGluamVjdG9yKSkge1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEtpY2sgb2ZmIGV2ZW50IHJlcGxheSBsb2dpYyBvbmNlIGh5ZHJhdGlvbiBmb3IgdGhlIGluaXRpYWwgcGFydFxuICAgICAgICAgICAgLy8gb2YgdGhlIGFwcGxpY2F0aW9uIGlzIGNvbXBsZXRlZC4gVGhpcyB0aW1pbmcgaXMgc2ltaWxhciB0byB0aGUgdW5jbGFpbWVkXG4gICAgICAgICAgICAvLyBkZWh5ZHJhdGVkIHZpZXdzIGNsZWFudXAgdGltaW5nLlxuICAgICAgICAgICAgd2hlblN0YWJsZShhcHBSZWYpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCBldmVudENvbnRyYWN0RGV0YWlscyA9IGluamVjdG9yLmdldChKU0FDVElPTl9FVkVOVF9DT05UUkFDVCk7XG4gICAgICAgICAgICAgIGluaXRFdmVudFJlcGxheShldmVudENvbnRyYWN0RGV0YWlscywgaW5qZWN0b3IpO1xuICAgICAgICAgICAgICBqc2FjdGlvblNldC5mb3JFYWNoKHJlbW92ZUxpc3RlbmVycyk7XG4gICAgICAgICAgICAgIC8vIEFmdGVyIGh5ZHJhdGlvbiwgd2Ugc2hvdWxkbid0IG5lZWQgdG8gZG8gYW55bW9yZSB3b3JrIHJlbGF0ZWQgdG9cbiAgICAgICAgICAgICAgLy8gZXZlbnQgcmVwbGF5IGFueW1vcmUuXG4gICAgICAgICAgICAgIHNldFN0YXNoRm4oKCkgPT4ge30pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gKCkgPT4ge307IC8vIG5vb3AgZm9yIHRoZSBzZXJ2ZXIgY29kZVxuICAgICAgfSxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gIF07XG59XG5cbmNvbnN0IGluaXRFdmVudFJlcGxheSA9IChldmVudERlbGVnYXRpb246IEV2ZW50Q29udHJhY3REZXRhaWxzLCBpbmplY3RvcjogSW5qZWN0b3IpID0+IHtcbiAgY29uc3QgYXBwSWQgPSBpbmplY3Rvci5nZXQoQVBQX0lEKTtcbiAgLy8gVGhpcyBpcyBzZXQgaW4gcGFja2FnZXMvcGxhdGZvcm0tc2VydmVyL3NyYy91dGlscy50c1xuICBjb25zdCBlYXJseUpzYWN0aW9uRGF0YSA9IHdpbmRvdy5fZWpzYXMhW2FwcElkXSE7XG4gIGNvbnN0IGV2ZW50Q29udHJhY3QgPSAoZXZlbnREZWxlZ2F0aW9uLmluc3RhbmNlID0gbmV3IEV2ZW50Q29udHJhY3QoXG4gICAgbmV3IEV2ZW50Q29udHJhY3RDb250YWluZXIoZWFybHlKc2FjdGlvbkRhdGEuYyksXG4gICkpO1xuICBmb3IgKGNvbnN0IGV0IG9mIGVhcmx5SnNhY3Rpb25EYXRhLmV0KSB7XG4gICAgZXZlbnRDb250cmFjdC5hZGRFdmVudChldCk7XG4gIH1cbiAgZm9yIChjb25zdCBldCBvZiBlYXJseUpzYWN0aW9uRGF0YS5ldGMpIHtcbiAgICBldmVudENvbnRyYWN0LmFkZEV2ZW50KGV0KTtcbiAgfVxuICBjb25zdCBldmVudEluZm9zID0gZ2V0QXBwU2NvcGVkUXVldWVkRXZlbnRJbmZvcyhhcHBJZCk7XG4gIGV2ZW50Q29udHJhY3QucmVwbGF5RWFybHlFdmVudEluZm9zKGV2ZW50SW5mb3MpO1xuICBjbGVhckFwcFNjb3BlZEVhcmx5RXZlbnRDb250cmFjdChhcHBJZCk7XG4gIGNvbnN0IGRpc3BhdGNoZXIgPSBuZXcgRXZlbnREaXNwYXRjaGVyKGludm9rZVJlZ2lzdGVyZWRMaXN0ZW5lcnMpO1xuICByZWdpc3RlckRpc3BhdGNoZXIoZXZlbnRDb250cmFjdCwgZGlzcGF0Y2hlcik7XG59O1xuXG4vKipcbiAqIEV4dHJhY3RzIGluZm9ybWF0aW9uIGFib3V0IGFsbCBET00gZXZlbnRzIChhZGRlZCBpbiBhIHRlbXBsYXRlKSByZWdpc3RlcmVkIG9uIGVsZW1lbnRzIGluIGEgZ2l2ZVxuICogTFZpZXcuIE1hcHMgY29sbGVjdGVkIGV2ZW50cyB0byBhIGNvcnJlc3BvbmRpbmcgRE9NIGVsZW1lbnQgKGFuIGVsZW1lbnQgaXMgdXNlZCBhcyBhIGtleSkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb2xsZWN0RG9tRXZlbnRzSW5mbyhcbiAgdFZpZXc6IFRWaWV3LFxuICBsVmlldzogTFZpZXcsXG4gIGV2ZW50VHlwZXNUb1JlcGxheToge3JlZ3VsYXI6IFNldDxzdHJpbmc+OyBjYXB0dXJlOiBTZXQ8c3RyaW5nPn0sXG4pOiBNYXA8RWxlbWVudCwgc3RyaW5nW10+IHtcbiAgY29uc3QgZG9tRXZlbnRzSW5mbyA9IG5ldyBNYXA8RWxlbWVudCwgc3RyaW5nW10+KCk7XG4gIGNvbnN0IGxDbGVhbnVwID0gbFZpZXdbQ0xFQU5VUF07XG4gIGNvbnN0IHRDbGVhbnVwID0gdFZpZXcuY2xlYW51cDtcbiAgaWYgKCF0Q2xlYW51cCB8fCAhbENsZWFudXApIHtcbiAgICByZXR1cm4gZG9tRXZlbnRzSW5mbztcbiAgfVxuICBmb3IgKGxldCBpID0gMDsgaSA8IHRDbGVhbnVwLmxlbmd0aDsgKSB7XG4gICAgY29uc3QgZmlyc3RQYXJhbSA9IHRDbGVhbnVwW2krK107XG4gICAgY29uc3Qgc2Vjb25kUGFyYW0gPSB0Q2xlYW51cFtpKytdO1xuICAgIGlmICh0eXBlb2YgZmlyc3RQYXJhbSAhPT0gJ3N0cmluZycpIHtcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cbiAgICBjb25zdCBldmVudFR5cGUgPSBmaXJzdFBhcmFtO1xuICAgIGlmICghaXNFYXJseUV2ZW50VHlwZShldmVudFR5cGUpKSB7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG4gICAgaWYgKGlzQ2FwdHVyZUV2ZW50VHlwZShldmVudFR5cGUpKSB7XG4gICAgICBldmVudFR5cGVzVG9SZXBsYXkuY2FwdHVyZS5hZGQoZXZlbnRUeXBlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgZXZlbnRUeXBlc1RvUmVwbGF5LnJlZ3VsYXIuYWRkKGV2ZW50VHlwZSk7XG4gICAgfVxuICAgIGNvbnN0IGxpc3RlbmVyRWxlbWVudCA9IHVud3JhcFJOb2RlKGxWaWV3W3NlY29uZFBhcmFtXSkgYXMgYW55IGFzIEVsZW1lbnQ7XG4gICAgaSsrOyAvLyBtb3ZlIHRoZSBjdXJzb3IgdG8gdGhlIG5leHQgcG9zaXRpb24gKGxvY2F0aW9uIG9mIHRoZSBsaXN0ZW5lciBpZHgpXG4gICAgY29uc3QgdXNlQ2FwdHVyZU9ySW5keCA9IHRDbGVhbnVwW2krK107XG4gICAgLy8gaWYgdXNlQ2FwdHVyZU9ySW5keCBpcyBib29sZWFuIHRoZW4gcmVwb3J0IGl0IGFzIGlzLlxuICAgIC8vIGlmIHVzZUNhcHR1cmVPckluZHggaXMgcG9zaXRpdmUgbnVtYmVyIHRoZW4gaXQgaW4gdW5zdWJzY3JpYmUgbWV0aG9kXG4gICAgLy8gaWYgdXNlQ2FwdHVyZU9ySW5keCBpcyBuZWdhdGl2ZSBudW1iZXIgdGhlbiBpdCBpcyBhIFN1YnNjcmlwdGlvblxuICAgIGNvbnN0IGlzRG9tRXZlbnQgPSB0eXBlb2YgdXNlQ2FwdHVyZU9ySW5keCA9PT0gJ2Jvb2xlYW4nIHx8IHVzZUNhcHR1cmVPckluZHggPj0gMDtcbiAgICBpZiAoIWlzRG9tRXZlbnQpIHtcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cbiAgICBpZiAoIWRvbUV2ZW50c0luZm8uaGFzKGxpc3RlbmVyRWxlbWVudCkpIHtcbiAgICAgIGRvbUV2ZW50c0luZm8uc2V0KGxpc3RlbmVyRWxlbWVudCwgW2V2ZW50VHlwZV0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBkb21FdmVudHNJbmZvLmdldChsaXN0ZW5lckVsZW1lbnQpIS5wdXNoKGV2ZW50VHlwZSk7XG4gICAgfVxuICB9XG4gIHJldHVybiBkb21FdmVudHNJbmZvO1xufVxuIl19
|
|
@@ -33,8 +33,4 @@ export const IS_I18N_HYDRATION_ENABLED = new InjectionToken(typeof ngDevMode ===
|
|
|
33
33
|
*/
|
|
34
34
|
export const IS_EVENT_REPLAY_ENABLED = new InjectionToken(typeof ngDevMode === 'undefined' || !!ngDevMode ? 'IS_EVENT_REPLAY_ENABLED' : '');
|
|
35
35
|
export const EVENT_REPLAY_ENABLED_DEFAULT = false;
|
|
36
|
-
|
|
37
|
-
* Internal token that indicates whether global event delegation support is enabled.
|
|
38
|
-
*/
|
|
39
|
-
export const IS_GLOBAL_EVENT_DELEGATION_ENABLED = new InjectionToken(typeof ngDevMode === 'undefined' || !!ngDevMode ? 'IS_GLOBAL_EVENT_DELEGATION_ENABLED' : '');
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvaHlkcmF0aW9uL3Rva2Vucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFFSCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFFckQ7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sOEJBQThCLEdBQUcsSUFBSSxjQUFjLENBQzlELE9BQU8sU0FBUyxLQUFLLFdBQVcsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUN4RixDQUFDO0FBRUYsb0VBQW9FO0FBQ3BFLDREQUE0RDtBQUM1RCxNQUFNLENBQUMsTUFBTSw2QkFBNkIsR0FBRyxLQUFLLENBQUM7QUFFbkQ7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsSUFBSSxjQUFjLENBQ3JELE9BQU8sU0FBUyxLQUFLLFdBQVcsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUM5RTtJQUNFLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyw2QkFBNkI7Q0FDN0MsQ0FDRixDQUFDO0FBRUY7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsSUFBSSxjQUFjLENBQ3pELE9BQU8sU0FBUyxLQUFLLFdBQVcsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUNuRixDQUFDO0FBRUY7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsSUFBSSxjQUFjLENBQ3ZELE9BQU8sU0FBUyxLQUFLLFdBQVcsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUNqRixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsS0FBSyxDQUFDO0FBRWxEOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sa0NBQWtDLEdBQUcsSUFBSSxjQUFjLENBQ2xFLE9BQU8sU0FBUyxLQUFLLFdBQVcsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUM1RixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge0luamVjdGlvblRva2VufSBmcm9tICcuLi9kaS9pbmplY3Rpb25fdG9rZW4nO1xuXG4vKipcbiAqIEludGVybmFsIHRva2VuIHRoYXQgc3BlY2lmaWVzIHdoZXRoZXIgRE9NIHJldXNlIGxvZ2ljXG4gKiBkdXJpbmcgaHlkcmF0aW9uIGlzIGVuYWJsZWQuXG4gKi9cbmV4cG9ydCBjb25zdCBJU19IWURSQVRJT05fRE9NX1JFVVNFX0VOQUJMRUQgPSBuZXcgSW5qZWN0aW9uVG9rZW48Ym9vbGVhbj4oXG4gIHR5cGVvZiBuZ0Rldk1vZGUgPT09ICd1bmRlZmluZWQnIHx8ICEhbmdEZXZNb2RlID8gJ0lTX0hZRFJBVElPTl9ET01fUkVVU0VfRU5BQkxFRCcgOiAnJyxcbik7XG5cbi8vIEJ5IGRlZmF1bHQgKGluIGNsaWVudCByZW5kZXJpbmcgbW9kZSksIHdlIHJlbW92ZSBhbGwgdGhlIGNvbnRlbnRzXG4vLyBvZiB0aGUgaG9zdCBlbGVtZW50IGFuZCByZW5kZXIgYW4gYXBwbGljYXRpb24gYWZ0ZXIgdGhhdC5cbmV4cG9ydCBjb25zdCBQUkVTRVJWRV9IT1NUX0NPTlRFTlRfREVGQVVMVCA9IGZhbHNlO1xuXG4vKipcbiAqIEludGVybmFsIHRva2VuIHRoYXQgaW5kaWNhdGVzIHdoZXRoZXIgaG9zdCBlbGVtZW50IGNvbnRlbnQgc2hvdWxkIGJlXG4gKiByZXRhaW5lZCBkdXJpbmcgdGhlIGJvb3RzdHJhcC5cbiAqL1xuZXhwb3J0IGNvbnN0IFBSRVNFUlZFX0hPU1RfQ09OVEVOVCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxib29sZWFuPihcbiAgdHlwZW9mIG5nRGV2TW9kZSA9PT0gJ3VuZGVmaW5lZCcgfHwgISFuZ0Rldk1vZGUgPyAnUFJFU0VSVkVfSE9TVF9DT05URU5UJyA6ICcnLFxuICB7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxuICAgIGZhY3Rvcnk6ICgpID0+IFBSRVNFUlZFX0hPU1RfQ09OVEVOVF9ERUZBVUxULFxuICB9LFxuKTtcblxuLyoqXG4gKiBJbnRlcm5hbCB0b2tlbiB0aGF0IGluZGljYXRlcyB3aGV0aGVyIGh5ZHJhdGlvbiBzdXBwb3J0IGZvciBpMThuXG4gKiBpcyBlbmFibGVkLlxuICovXG5leHBvcnQgY29uc3QgSVNfSTE4Tl9IWURSQVRJT05fRU5BQkxFRCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxib29sZWFuPihcbiAgdHlwZW9mIG5nRGV2TW9kZSA9PT0gJ3VuZGVmaW5lZCcgfHwgISFuZ0Rldk1vZGUgPyAnSVNfSTE4Tl9IWURSQVRJT05fRU5BQkxFRCcgOiAnJyxcbik7XG5cbi8qKlxuICogSW50ZXJuYWwgdG9rZW4gdGhhdCBpbmRpY2F0ZXMgd2hldGhlciBldmVudCByZXBsYXkgc3VwcG9ydCBmb3IgU1NSXG4gKiBpcyBlbmFibGVkLlxuICovXG5leHBvcnQgY29uc3QgSVNfRVZFTlRfUkVQTEFZX0VOQUJMRUQgPSBuZXcgSW5qZWN0aW9uVG9rZW48Ym9vbGVhbj4oXG4gIHR5cGVvZiBuZ0Rldk1vZGUgPT09ICd1bmRlZmluZWQnIHx8ICEhbmdEZXZNb2RlID8gJ0lTX0VWRU5UX1JFUExBWV9FTkFCTEVEJyA6ICcnLFxuKTtcblxuZXhwb3J0IGNvbnN0IEVWRU5UX1JFUExBWV9FTkFCTEVEX0RFRkFVTFQgPSBmYWxzZTtcblxuLyoqXG4gKiBJbnRlcm5hbCB0b2tlbiB0aGF0IGluZGljYXRlcyB3aGV0aGVyIGdsb2JhbCBldmVudCBkZWxlZ2F0aW9uIHN1cHBvcnQgaXMgZW5hYmxlZC5cbiAqL1xuZXhwb3J0IGNvbnN0IElTX0dMT0JBTF9FVkVOVF9ERUxFR0FUSU9OX0VOQUJMRUQgPSBuZXcgSW5qZWN0aW9uVG9rZW48Ym9vbGVhbj4oXG4gIHR5cGVvZiBuZ0Rldk1vZGUgPT09ICd1bmRlZmluZWQnIHx8ICEhbmdEZXZNb2RlID8gJ0lTX0dMT0JBTF9FVkVOVF9ERUxFR0FUSU9OX0VOQUJMRUQnIDogJycsXG4pO1xuIl19
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvaHlkcmF0aW9uL3Rva2Vucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFFSCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFFckQ7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sOEJBQThCLEdBQUcsSUFBSSxjQUFjLENBQzlELE9BQU8sU0FBUyxLQUFLLFdBQVcsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUN4RixDQUFDO0FBRUYsb0VBQW9FO0FBQ3BFLDREQUE0RDtBQUM1RCxNQUFNLENBQUMsTUFBTSw2QkFBNkIsR0FBRyxLQUFLLENBQUM7QUFFbkQ7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsSUFBSSxjQUFjLENBQ3JELE9BQU8sU0FBUyxLQUFLLFdBQVcsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUM5RTtJQUNFLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyw2QkFBNkI7Q0FDN0MsQ0FDRixDQUFDO0FBRUY7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsSUFBSSxjQUFjLENBQ3pELE9BQU8sU0FBUyxLQUFLLFdBQVcsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUNuRixDQUFDO0FBRUY7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsSUFBSSxjQUFjLENBQ3ZELE9BQU8sU0FBUyxLQUFLLFdBQVcsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUNqRixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsS0FBSyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge0luamVjdGlvblRva2VufSBmcm9tICcuLi9kaS9pbmplY3Rpb25fdG9rZW4nO1xuXG4vKipcbiAqIEludGVybmFsIHRva2VuIHRoYXQgc3BlY2lmaWVzIHdoZXRoZXIgRE9NIHJldXNlIGxvZ2ljXG4gKiBkdXJpbmcgaHlkcmF0aW9uIGlzIGVuYWJsZWQuXG4gKi9cbmV4cG9ydCBjb25zdCBJU19IWURSQVRJT05fRE9NX1JFVVNFX0VOQUJMRUQgPSBuZXcgSW5qZWN0aW9uVG9rZW48Ym9vbGVhbj4oXG4gIHR5cGVvZiBuZ0Rldk1vZGUgPT09ICd1bmRlZmluZWQnIHx8ICEhbmdEZXZNb2RlID8gJ0lTX0hZRFJBVElPTl9ET01fUkVVU0VfRU5BQkxFRCcgOiAnJyxcbik7XG5cbi8vIEJ5IGRlZmF1bHQgKGluIGNsaWVudCByZW5kZXJpbmcgbW9kZSksIHdlIHJlbW92ZSBhbGwgdGhlIGNvbnRlbnRzXG4vLyBvZiB0aGUgaG9zdCBlbGVtZW50IGFuZCByZW5kZXIgYW4gYXBwbGljYXRpb24gYWZ0ZXIgdGhhdC5cbmV4cG9ydCBjb25zdCBQUkVTRVJWRV9IT1NUX0NPTlRFTlRfREVGQVVMVCA9IGZhbHNlO1xuXG4vKipcbiAqIEludGVybmFsIHRva2VuIHRoYXQgaW5kaWNhdGVzIHdoZXRoZXIgaG9zdCBlbGVtZW50IGNvbnRlbnQgc2hvdWxkIGJlXG4gKiByZXRhaW5lZCBkdXJpbmcgdGhlIGJvb3RzdHJhcC5cbiAqL1xuZXhwb3J0IGNvbnN0IFBSRVNFUlZFX0hPU1RfQ09OVEVOVCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxib29sZWFuPihcbiAgdHlwZW9mIG5nRGV2TW9kZSA9PT0gJ3VuZGVmaW5lZCcgfHwgISFuZ0Rldk1vZGUgPyAnUFJFU0VSVkVfSE9TVF9DT05URU5UJyA6ICcnLFxuICB7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxuICAgIGZhY3Rvcnk6ICgpID0+IFBSRVNFUlZFX0hPU1RfQ09OVEVOVF9ERUZBVUxULFxuICB9LFxuKTtcblxuLyoqXG4gKiBJbnRlcm5hbCB0b2tlbiB0aGF0IGluZGljYXRlcyB3aGV0aGVyIGh5ZHJhdGlvbiBzdXBwb3J0IGZvciBpMThuXG4gKiBpcyBlbmFibGVkLlxuICovXG5leHBvcnQgY29uc3QgSVNfSTE4Tl9IWURSQVRJT05fRU5BQkxFRCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxib29sZWFuPihcbiAgdHlwZW9mIG5nRGV2TW9kZSA9PT0gJ3VuZGVmaW5lZCcgfHwgISFuZ0Rldk1vZGUgPyAnSVNfSTE4Tl9IWURSQVRJT05fRU5BQkxFRCcgOiAnJyxcbik7XG5cbi8qKlxuICogSW50ZXJuYWwgdG9rZW4gdGhhdCBpbmRpY2F0ZXMgd2hldGhlciBldmVudCByZXBsYXkgc3VwcG9ydCBmb3IgU1NSXG4gKiBpcyBlbmFibGVkLlxuICovXG5leHBvcnQgY29uc3QgSVNfRVZFTlRfUkVQTEFZX0VOQUJMRUQgPSBuZXcgSW5qZWN0aW9uVG9rZW48Ym9vbGVhbj4oXG4gIHR5cGVvZiBuZ0Rldk1vZGUgPT09ICd1bmRlZmluZWQnIHx8ICEhbmdEZXZNb2RlID8gJ0lTX0VWRU5UX1JFUExBWV9FTkFCTEVEJyA6ICcnLFxuKTtcblxuZXhwb3J0IGNvbnN0IEVWRU5UX1JFUExBWV9FTkFCTEVEX0RFRkFVTFQgPSBmYWxzZTtcbiJdfQ==
|
|
@@ -96,12 +96,10 @@ export class ImagePerformanceWarning {
|
|
|
96
96
|
let lcpElementFound, lcpElementLoadedCorrectly = false;
|
|
97
97
|
images.forEach((image) => {
|
|
98
98
|
if (!this.options?.disableImageSizeWarning) {
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
logOversizedImageWarning(image.src);
|
|
104
|
-
}
|
|
99
|
+
// Image elements using the NgOptimizedImage directive are excluded,
|
|
100
|
+
// as that directive has its own version of this check.
|
|
101
|
+
if (!image.getAttribute('ng-img') && this.isOversized(image)) {
|
|
102
|
+
logOversizedImageWarning(image.src);
|
|
105
103
|
}
|
|
106
104
|
}
|
|
107
105
|
if (!this.options?.disableImageLazyLoadWarning && this.lcpImageUrl) {
|
|
@@ -128,6 +126,24 @@ export class ImagePerformanceWarning {
|
|
|
128
126
|
if (!this.window) {
|
|
129
127
|
return false;
|
|
130
128
|
}
|
|
129
|
+
// The `isOversized` check may not be applicable or may require adjustments
|
|
130
|
+
// for several types of image formats or scenarios. Currently, we specify only
|
|
131
|
+
// `svg`, but this may also include `gif` since their quality isn’t tied to
|
|
132
|
+
// dimensions in the same way as raster images.
|
|
133
|
+
const nonOversizedImageExtentions = [
|
|
134
|
+
// SVG images are vector-based, which means they can scale
|
|
135
|
+
// to any size without losing quality.
|
|
136
|
+
'.svg',
|
|
137
|
+
];
|
|
138
|
+
// Convert it to lowercase because this may have uppercase
|
|
139
|
+
// extensions, such as `IMAGE.SVG`.
|
|
140
|
+
// We fallback to an empty string because `src` may be `undefined`
|
|
141
|
+
// if it is explicitly set to `null` by some third-party code
|
|
142
|
+
// (e.g., `image.src = null`).
|
|
143
|
+
const imageSource = (image.src || '').toLowerCase();
|
|
144
|
+
if (nonOversizedImageExtentions.some((extension) => imageSource.endsWith(extension))) {
|
|
145
|
+
return false;
|
|
146
|
+
}
|
|
131
147
|
const computedStyle = this.window.getComputedStyle(image);
|
|
132
148
|
let renderedWidth = parseFloat(computedStyle.getPropertyValue('width'));
|
|
133
149
|
let renderedHeight = parseFloat(computedStyle.getPropertyValue('height'));
|
|
@@ -139,6 +155,8 @@ export class ImagePerformanceWarning {
|
|
|
139
155
|
return false;
|
|
140
156
|
}
|
|
141
157
|
if (boxSizing === 'border-box') {
|
|
158
|
+
// If the image `box-sizing` is set to `border-box`, we adjust the rendered
|
|
159
|
+
// dimensions by subtracting padding values.
|
|
142
160
|
const paddingTop = computedStyle.getPropertyValue('padding-top');
|
|
143
161
|
const paddingRight = computedStyle.getPropertyValue('padding-right');
|
|
144
162
|
const paddingBottom = computedStyle.getPropertyValue('padding-bottom');
|
|
@@ -176,4 +194,4 @@ function logOversizedImageWarning(src) {
|
|
|
176
194
|
`For more information about addressing or disabling this warning, see ` +
|
|
177
195
|
`https://angular.dev/errors/NG0913`));
|
|
178
196
|
}
|
|
179
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2VfcGVyZm9ybWFuY2Vfd2FybmluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2ltYWdlX3BlcmZvcm1hbmNlX3dhcm5pbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUFDLFlBQVksRUFBZSxXQUFXLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUN4RixPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ2hDLE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUNuRCxPQUFPLEVBQUMsa0JBQWtCLEVBQW1CLE1BQU0sVUFBVSxDQUFDO0FBRTlELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQzs7QUFFMUQsNEVBQTRFO0FBQzVFLHlFQUF5RTtBQUN6RSxtRkFBbUY7QUFDbkYsc0RBQXNEO0FBQ3RELE1BQU0sVUFBVSxHQUFHLEdBQUcsQ0FBQztBQUV2QixNQUFNLHlCQUF5QixHQUFHLElBQUksQ0FBQztBQUd2QyxNQUFNLE9BQU8sdUJBQXVCO0lBRHBDO1FBRUUscURBQXFEO1FBQzdDLFdBQU0sR0FBa0IsSUFBSSxDQUFDO1FBQzdCLGFBQVEsR0FBK0IsSUFBSSxDQUFDO1FBQzVDLFlBQU8sR0FBZ0IsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ25DLGNBQVMsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLEtBQUssU0FBUyxDQUFDO0tBK0loRTtJQTVJUSxLQUFLO1FBQ1YsSUFDRSxDQUFDLElBQUksQ0FBQyxTQUFTO1lBQ2YsT0FBTyxtQkFBbUIsS0FBSyxXQUFXO1lBQzFDLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSx1QkFBdUIsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLDJCQUEyQixDQUFDLEVBQ3BGLENBQUM7WUFDRCxPQUFPO1FBQ1QsQ0FBQztRQUNELElB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QVksQ0FBQztRQUMxQyxNQUFNLGVBQWUsR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDO1FBRTVDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsR0FBRyxhQUFhLENBQUM7UUFDdEUsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGdCQUFnQixHQUFHLGNBQWMsQ0FBQztRQUN4RSxNQUFNLGNBQWMsR0FBRyxjQUFjLEdBQUcsZ0JBQWdCLElBQUkseUJBQXlCLENBQUM7UUFDdEYsTUFBTSxlQUFlLEdBQUcsZUFBZSxHQUFHLGlCQUFpQixJQUFJLHlCQUF5QixDQUFDO1FBQ3pGLE9BQU8sY0FBYyxJQUFJLGVBQWUsQ0FBQztJQUMzQyxDQUFDO3dIQW5KVSx1QkFBdUI7dUVBQXZCLHVCQUF1QixXQUF2Qix1QkFBdUIsbUJBRFgsTUFBTTs7Z0ZBQ2xCLHVCQUF1QjtjQURuQyxVQUFVO2VBQUMsRUFBQyxVQUFVLEVBQUUsTUFBTSxFQUFDOztBQXVKaEMsU0FBUyxpQkFBaUIsQ0FBQyxHQUFXO0lBQ3BDLE9BQU8sQ0FBQyxJQUFJLENBQ1Ysa0JBQWtCLHdEQUVoQixxQkFBcUIsR0FBRyxpREFBaUQ7UUFDdkUseUVBQXlFO1FBQ3pFLG9FQUFvRTtRQUNwRSwwRUFBMEU7UUFDMUUsa0VBQWtFO1FBQ2xFLDhEQUE4RDtRQUM5RCxtQ0FBbUMsQ0FDdEMsQ0FDRixDQUFDO0FBQ0osQ0FBQztBQUVELFNBQVMsd0JBQXdCLENBQUMsR0FBVztJQUMzQyxPQUFPLENBQUMsSUFBSSxDQUNWLGtCQUFrQix3REFFaEIscUJBQXFCLEdBQUcsc0RBQXNEO1FBQzVFLDZFQUE2RTtRQUM3RSx1RUFBdUU7UUFDdkUsbUNBQW1DLENBQ3RDLENBQ0YsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZVxuICovXG5cbmltcG9ydCB7SU1BR0VfQ09ORklHLCBJbWFnZUNvbmZpZywgUExBVEZPUk1fSUR9IGZyb20gJy4vYXBwbGljYXRpb24vYXBwbGljYXRpb25fdG9rZW5zJztcbmltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnLi9kaSc7XG5pbXBvcnQge2luamVjdH0gZnJvbSAnLi9kaS9pbmplY3Rvcl9jb21wYXRpYmlsaXR5JztcbmltcG9ydCB7Zm9ybWF0UnVudGltZUVycm9yLCBSdW50aW1lRXJyb3JDb2RlfSBmcm9tICcuL2Vycm9ycyc7XG5pbXBvcnQge09uRGVzdHJveX0gZnJvbSAnLi9pbnRlcmZhY2UvbGlmZWN5Y2xlX2hvb2tzJztcbmltcG9ydCB7Z2V0RG9jdW1lbnR9IGZyb20gJy4vcmVuZGVyMy9pbnRlcmZhY2VzL2RvY3VtZW50JztcblxuLy8gQSBkZWxheSBpbiBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSBzY2FuIGlzIHJ1biBhZnRlciBvbkxvYWQsIHRvIGF2b2lkIGFueVxuLy8gcG90ZW50aWFsIHJhY2UgY29uZGl0aW9ucyB3aXRoIG90aGVyIExDUC1yZWxhdGVkIGZ1bmN0aW9ucy4gVGhpcyBkZWxheVxuLy8gaGFwcGVucyBvdXRzaWRlIG9mIHRoZSBtYWluIEphdmFTY3JpcHQgZXhlY3V0aW9uIGFuZCB3aWxsIG9ubHkgZWZmZWN0IHRoZSB0aW1pbmdcbi8vIG9uIHdoZW4gdGhlIHdhcm5pbmcgYmVjb21lcyB2aXNpYmxlIGluIHRoZSBjb25zb2xlLlxuY29uc3QgU0NBTl9ERUxBWSA9IDIwMDtcblxuY29uc3QgT1ZFUlNJWkVEX0lNQUdFX1RPTEVSQU5DRSA9IDEyMDA7XG5cbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiAncm9vdCd9KVxuZXhwb3J0IGNsYXNzIEltYWdlUGVyZm9ybWFuY2VXYXJuaW5nIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgLy8gTWFwIG9mIGZ1bGwgaW1hZ2UgVVJMcyAtPiBvcmlnaW5hbCBgbmdTcmNgIHZhbHVlcy5cbiAgcHJpdmF0ZSB3aW5kb3c6IFdpbmRvdyB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIG9ic2VydmVyOiBQZXJmb3JtYW5jZU9ic2VydmVyIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgb3B0aW9uczogSW1hZ2VDb25maWcgPSBpbmplY3QoSU1BR0VfQ09ORklHKTtcbiAgcHJpdmF0ZSByZWFkb25seSBpc0Jyb3dzZXIgPSBpbmplY3QoUExBVEZPUk1fSUQpID09PSAnYnJvd3Nlcic7XG4gIHByaXZhdGUgbGNwSW1hZ2VVcmw/OiBzdHJpbmc7XG5cbiAgcHVibGljIHN0YXJ0KCkge1xuICAgIGlmIChcbiAgICAgICF0aGlzLmlzQnJvd3NlciB8fFxuICAgICAgdHlwZW9mIFBlcmZvcm1hbmNlT2JzZXJ2ZXIgPT09ICd1bmRlZmluZWQnIHx8XG4gICAgICAodGhpcy5vcHRpb25zPy5kaXNhYmxlSW1hZ2VTaXplV2FybmluZyAmJiB0aGlzLm9wdGlvbnM/LmRpc2FibGVJbWFnZUxhenlMb2FkV2FybmluZylcbiAgICApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5vYnNlcnZlciA9IHRoaXMuaW5pdFBlcmZvcm1hbmNlT2JzZXJ2ZXIoKTtcbiAgICBjb25zdCBkb2MgPSBnZXREb2N1bWVudCgpO1xuICAgIGNvbnN0IHdpbiA9IGRvYy5kZWZhdWx0VmlldztcbiAgICBpZiAodHlwZW9mIHdpbiAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHRoaXMud2luZG93ID0gd2luO1xuICAgICAgLy8gV2FpdCB0byBhdm9pZCByYWNlIGNvbmRpdGlvbnMgd2hlcmUgTENQIGltYWdlIHRyaWdnZXJzXG4gICAgICAvLyBsb2FkIGV2ZW50IGJlZm9yZSBpdCdzIHJlY29yZGVkIGJ5IHRoZSBwZXJmb3JtYW5jZSBvYnNlcnZlclxuICAgICAgY29uc3Qgd2FpdFRvU2NhbiA9ICgpID0+IHtcbiAgICAgICAgc2V0VGltZW91dCh0aGlzLnNjYW5JbWFnZXMuYmluZCh0aGlzKSwgU0NBTl9ERUxBWSk7XG4gICAgICB9O1xuICAgICAgY29uc3Qgc2V0dXAgPSAoKSA9PiB7XG4gICAgICAgIC8vIENvbnNpZGVyIHRoZSBjYXNlIHdoZW4gdGhlIGFwcGxpY2F0aW9uIGlzIGNyZWF0ZWQgYW5kIGRlc3Ryb3llZCBtdWx0aXBsZSB0aW1lcy5cbiAgICAgICAgLy8gVHlwaWNhbGx5LCBhcHBsaWNhdGlvbnMgYXJlIGNyZWF0ZWQgaW5zdGFudGx5IG9uY2UgdGhlIHBhZ2UgaXMgbG9hZGVkLCBhbmQgdGhlXG4gICAgICAgIC8vIGB3aW5kb3cubG9hZGAgbGlzdGVuZXIgaXMgYWx3YXlzIHRyaWdnZXJlZC4gSG93ZXZlciwgdGhlIGB3aW5kb3cubG9hZGAgZXZlbnQgd2lsbCBuZXZlclxuICAgICAgICAvLyBiZSBmaXJlZCBpZiB0aGUgcGFnZSBpcyBsb2FkZWQsIGFuZCB0aGUgYXBwbGljYXRpb24gaXMgY3JlYXRlZCBsYXRlci4gQ2hlY2tpbmcgZm9yXG4gICAgICAgIC8vIGByZWFkeVN0YXRlYCBpcyB0aGUgZWFzaWVzdCB3YXkgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGhlIHBhZ2UgaGFzIGJlZW4gbG9hZGVkIG9yIG5vdC5cbiAgICAgICAgaWYgKGRvYy5yZWFkeVN0YXRlID09PSAnY29tcGxldGUnKSB7XG4gICAgICAgICAgd2FpdFRvU2NhbigpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMud2luZG93Py5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgd2FpdFRvU2Nhbiwge29uY2U6IHRydWV9KTtcbiAgICAgICAgfVxuICAgICAgfTtcbiAgICAgIC8vIEFuZ3VsYXIgZG9lc24ndCBoYXZlIHRvIHJ1biBjaGFuZ2UgZGV0ZWN0aW9uIHdoZW5ldmVyIGFueSBhc3luY2hyb25vdXMgdGFza3MgYXJlIGludm9rZWQgaW5cbiAgICAgIC8vIHRoZSBzY29wZSBvZiB0aGlzIGZ1bmN0aW9uYWxpdHkuXG4gICAgICBpZiAodHlwZW9mIFpvbmUgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIFpvbmUucm9vdC5ydW4oKCkgPT4gc2V0dXAoKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzZXR1cCgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMub2JzZXJ2ZXI/LmRpc2Nvbm5lY3QoKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdFBlcmZvcm1hbmNlT2JzZXJ2ZXIoKTogUGVyZm9ybWFuY2VPYnNlcnZlciB8IG51bGwge1xuICAgIGlmICh0eXBlb2YgUGVyZm9ybWFuY2VPYnNlcnZlciA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBjb25zdCBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKChlbnRyeUxpc3QpID0+IHtcbiAgICAgIGNvbnN0IGVudHJpZXMgPSBlbnRyeUxpc3QuZ2V0RW50cmllcygpO1xuICAgICAgaWYgKGVudHJpZXMubGVuZ3RoID09PSAwKSByZXR1cm47XG4gICAgICAvLyBXZSB1c2UgdGhlIGxhdGVzdCBlbnRyeSBwcm9kdWNlZCBieSB0aGUgYFBlcmZvcm1hbmNlT2JzZXJ2ZXJgIGFzIHRoZSBiZXN0XG4gICAgICAvLyBzaWduYWwgb24gd2hpY2ggZWxlbWVudCBpcyBhY3R1YWxseSBhbiBMQ1Agb25lLiBBcyBhbiBleGFtcGxlLCB0aGUgZmlyc3QgaW1hZ2UgdG8gbG9hZCBvblxuICAgICAgLy8gYSBwYWdlLCBieSB2aXJ0dWUgb2YgYmVpbmcgdGhlIG9ubHkgdGhpbmcgb24gdGhlIHBhZ2Ugc28gZmFyLCBpcyBvZnRlbiBhIExDUCBjYW5kaWRhdGVcbiAgICAgIC8vIGFuZCBnZXRzIHJlcG9ydGVkIGJ5IFBlcmZvcm1hbmNlT2JzZXJ2ZXIsIGJ1dCBpc24ndCBuZWNlc3NhcmlseSB0aGUgTENQIGVsZW1lbnQuXG4gICAgICBjb25zdCBsY3BFbGVtZW50ID0gZW50cmllc1tlbnRyaWVzLmxlbmd0aCAtIDFdO1xuXG4gICAgICAvLyBDYXN0IHRvIGBhbnlgIGR1ZSB0byBtaXNzaW5nIGBlbGVtZW50YCBvbiB0aGUgYExhcmdlc3RDb250ZW50ZnVsUGFpbnRgIHR5cGUgb2YgZW50cnkuXG4gICAgICAvLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL0xhcmdlc3RDb250ZW50ZnVsUGFpbnRcbiAgICAgIGNvbnN0IGltZ1NyYyA9IChsY3BFbGVtZW50IGFzIGFueSkuZWxlbWVudD8uc3JjID8/ICcnO1xuXG4gICAgICAvLyBFeGNsdWRlIGBkYXRhOmAgYW5kIGBibG9iOmAgVVJMcywgc2luY2UgdGhleSBhcmUgZmV0Y2hlZCByZXNvdXJjZXMuXG4gICAgICBpZiAoaW1nU3JjLnN0YXJ0c1dpdGgoJ2RhdGE6JykgfHwgaW1nU3JjLnN0YXJ0c1dpdGgoJ2Jsb2I6JykpIHJldHVybjtcbiAgICAgIHRoaXMubGNwSW1hZ2VVcmwgPSBpbWdTcmM7XG4gICAgfSk7XG4gICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7dHlwZTogJ2xhcmdlc3QtY29udGVudGZ1bC1wYWludCcsIGJ1ZmZlcmVkOiB0cnVlfSk7XG4gICAgcmV0dXJuIG9ic2VydmVyO1xuICB9XG5cbiAgcHJpdmF0ZSBzY2FuSW1hZ2VzKCk6IHZvaWQge1xuICAgIGNvbnN0IGltYWdlcyA9IGdldERvY3VtZW50KCkucXVlcnlTZWxlY3RvckFsbCgnaW1nJyk7XG4gICAgbGV0IGxjcEVsZW1lbnRGb3VuZCxcbiAgICAgIGxjcEVsZW1lbnRMb2FkZWRDb3JyZWN0bHkgPSBmYWxzZTtcbiAgICBpbWFnZXMuZm9yRWFjaCgoaW1hZ2UpID0+IHtcbiAgICAgIGlmICghdGhpcy5vcHRpb25zPy5kaXNhYmxlSW1hZ2VTaXplV2FybmluZykge1xuICAgICAgICBmb3IgKGNvbnN0IGltYWdlIG9mIGltYWdlcykge1xuICAgICAgICAgIC8vIEltYWdlIGVsZW1lbnRzIHVzaW5nIHRoZSBOZ09wdGltaXplZEltYWdlIGRpcmVjdGl2ZSBhcmUgZXhjbHVkZWQsXG4gICAgICAgICAgLy8gYXMgdGhhdCBkaXJlY3RpdmUgaGFzIGl0cyBvd24gdmVyc2lvbiBvZiB0aGlzIGNoZWNrLlxuICAgICAgICAgIGlmICghaW1hZ2UuZ2V0QXR0cmlidXRlKCduZy1pbWcnKSAmJiB0aGlzLmlzT3ZlcnNpemVkKGltYWdlKSkge1xuICAgICAgICAgICAgbG9nT3ZlcnNpemVkSW1hZ2VXYXJuaW5nKGltYWdlLnNyYyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAoIXRoaXMub3B0aW9ucz8uZGlzYWJsZUltYWdlTGF6eUxvYWRXYXJuaW5nICYmIHRoaXMubGNwSW1hZ2VVcmwpIHtcbiAgICAgICAgaWYgKGltYWdlLnNyYyA9PT0gdGhpcy5sY3BJbWFnZVVybCkge1xuICAgICAgICAgIGxjcEVsZW1lbnRGb3VuZCA9IHRydWU7XG4gICAgICAgICAgaWYgKGltYWdlLmxvYWRpbmcgIT09ICdsYXp5JyB8fCBpbWFnZS5nZXRBdHRyaWJ1dGUoJ25nLWltZycpKSB7XG4gICAgICAgICAgICAvLyBUaGlzIHZhcmlhYmxlIGlzIHNldCB0byB0cnVlIGFuZCBuZXZlciBnb2VzIGJhY2sgdG8gZmFsc2UgdG8gYWNjb3VudFxuICAgICAgICAgICAgLy8gZm9yIHRoZSBjYXNlIHdoZXJlIG11bHRpcGxlIGltYWdlcyBoYXZlIHRoZSBzYW1lIHNyYyB1cmwsIGFuZCBzb21lXG4gICAgICAgICAgICAvLyBoYXZlIGxhenkgbG9hZGluZyB3aGlsZSBvdGhlcnMgZG9uJ3QuXG4gICAgICAgICAgICAvLyBBbHNvIGlnbm9yZSBOZ09wdGltaXplZEltYWdlIGJlY2F1c2UgdGhlcmUncyBhIGRpZmZlcmVudCB3YXJuaW5nIGZvciB0aGF0LlxuICAgICAgICAgICAgbGNwRWxlbWVudExvYWRlZENvcnJlY3RseSA9IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gICAgaWYgKFxuICAgICAgbGNwRWxlbWVudEZvdW5kICYmXG4gICAgICAhbGNwRWxlbWVudExvYWRlZENvcnJlY3RseSAmJlxuICAgICAgdGhpcy5sY3BJbWFnZVVybCAmJlxuICAgICAgIXRoaXMub3B0aW9ucz8uZGlzYWJsZUltYWdlTGF6eUxvYWRXYXJuaW5nXG4gICAgKSB7XG4gICAgICBsb2dMYXp5TENQV2FybmluZyh0aGlzLmxjcEltYWdlVXJsKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGlzT3ZlcnNpemVkKGltYWdlOiBIVE1MSW1hZ2VFbGVtZW50KTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLndpbmRvdykge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBjb25zdCBjb21wdXRlZFN0eWxlID0gdGhpcy53aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShpbWFnZSk7XG4gICAgbGV0IHJlbmRlcmVkV2lkdGggPSBwYXJzZUZsb2F0KGNvbXB1dGVkU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnd2lkdGgnKSk7XG4gICAgbGV0IHJlbmRlcmVkSGVpZ2h0ID0gcGFyc2VGbG9hdChjb21wdXRlZFN0eWxlLmdldFByb3BlcnR5VmFsdWUoJ2hlaWdodCcpKTtcbiAgICBjb25zdCBib3hTaXppbmcgPSBjb21wdXRlZFN0eWxlLmdldFByb3BlcnR5VmFsdWUoJ2JveC1zaXppbmcnKTtcbiAgICBjb25zdCBvYmplY3RGaXQgPSBjb21wdXRlZFN0eWxlLmdldFByb3BlcnR5VmFsdWUoJ29iamVjdC1maXQnKTtcblxuICAgIGlmIChvYmplY3RGaXQgPT09IGBjb3ZlcmApIHtcbiAgICAgIC8vIE9iamVjdCBmaXQgY292ZXIgbWF5IGluZGljYXRlIGEgdXNlIGNhc2Ugc3VjaCBhcyBhIHNwcml0ZSBzaGVldCB3aGVyZVxuICAgICAgLy8gdGhpcyB3YXJuaW5nIGRvZXMgbm90IGFwcGx5LlxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGlmIChib3hTaXppbmcgPT09ICdib3JkZXItYm94Jykge1xuICAgICAgY29uc3QgcGFkZGluZ1RvcCA9IGNvbXB1dGVkU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgncGFkZGluZy10b3AnKTtcbiAgICAgIGNvbnN0IHBhZGRpbmdSaWdodCA9IGNvbXB1dGVkU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgncGFkZGluZy1yaWdodCcpO1xuICAgICAgY29uc3QgcGFkZGluZ0JvdHRvbSA9IGNvbXB1dGVkU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgncGFkZGluZy1ib3R0b20nKTtcbiAgICAgIGNvbnN0IHBhZGRpbmdMZWZ0ID0gY29tcHV0ZWRTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCdwYWRkaW5nLWxlZnQnKTtcbiAgICAgIHJlbmRlcmVkV2lkdGggLT0gcGFyc2VGbG9hdChwYWRkaW5nUmlnaHQpICsgcGFyc2VGbG9hdChwYWRkaW5nTGVmdCk7XG4gICAgICByZW5kZXJlZEhlaWdodCAtPSBwYXJzZUZsb2F0KHBhZGRpbmdUb3ApICsgcGFyc2VGbG9hdChwYWRkaW5nQm90dG9tKTtcbiAgICB9XG5cbiAgICBjb25zdCBpbnRyaW5zaWNXaWR0aCA9IGltYWdlLm5hdHVyYWxXaWR0aDtcbiAgICBjb25zdCBpbnRyaW5zaWNIZWlnaHQgPSBpbWFnZS5uYXR1cmFsSGVpZ2h0O1xuXG4gICAgY29uc3QgcmVjb21tZW5kZWRXaWR0aCA9IHRoaXMud2luZG93LmRldmljZVBpeGVsUmF0aW8gKiByZW5kZXJlZFdpZHRoO1xuICAgIGNvbnN0IHJlY29tbWVuZGVkSGVpZ2h0ID0gdGhpcy53aW5kb3cuZGV2aWNlUGl4ZWxSYXRpbyAqIHJlbmRlcmVkSGVpZ2h0O1xuICAgIGNvbnN0IG92ZXJzaXplZFdpZHRoID0gaW50cmluc2ljV2lkdGggLSByZWNvbW1lbmRlZFdpZHRoID49IE9WRVJTSVpFRF9JTUFHRV9UT0xFUkFOQ0U7XG4gICAgY29uc3Qgb3ZlcnNpemVkSGVpZ2h0ID0gaW50cmluc2ljSGVpZ2h0IC0gcmVjb21tZW5kZWRIZWlnaHQgPj0gT1ZFUlNJWkVEX0lNQUdFX1RPTEVSQU5DRTtcbiAgICByZXR1cm4gb3ZlcnNpemVkV2lkdGggfHwgb3ZlcnNpemVkSGVpZ2h0O1xuICB9XG59XG5cbmZ1bmN0aW9uIGxvZ0xhenlMQ1BXYXJuaW5nKHNyYzogc3RyaW5nKSB7XG4gIGNvbnNvbGUud2FybihcbiAgICBmb3JtYXRSdW50aW1lRXJyb3IoXG4gICAgICBSdW50aW1lRXJyb3JDb2RlLklNQUdFX1BFUkZPUk1BTkNFX1dBUk5JTkcsXG4gICAgICBgQW4gaW1hZ2Ugd2l0aCBzcmMgJHtzcmN9IGlzIHRoZSBMYXJnZXN0IENvbnRlbnRmdWwgUGFpbnQgKExDUCkgZWxlbWVudCBgICtcbiAgICAgICAgYGJ1dCB3YXMgZ2l2ZW4gYSBcImxvYWRpbmdcIiB2YWx1ZSBvZiBcImxhenlcIiwgd2hpY2ggY2FuIG5lZ2F0aXZlbHkgaW1wYWN0IGAgK1xuICAgICAgICBgYXBwbGljYXRpb24gbG9hZGluZyBwZXJmb3JtYW5jZS4gVGhpcyB3YXJuaW5nIGNhbiBiZSBhZGRyZXNzZWQgYnkgYCArXG4gICAgICAgIGBjaGFuZ2luZyB0aGUgbG9hZGluZyB2YWx1ZSBvZiB0aGUgTENQIGltYWdlIHRvIFwiZWFnZXJcIiwgb3IgYnkgdXNpbmcgdGhlIGAgK1xuICAgICAgICBgTmdPcHRpbWl6ZWRJbWFnZSBkaXJlY3RpdmUncyBwcmlvcml0aXphdGlvbiB1dGlsaXRpZXMuIEZvciBtb3JlIGAgK1xuICAgICAgICBgaW5mb3JtYXRpb24gYWJvdXQgYWRkcmVzc2luZyBvciBkaXNhYmxpbmcgdGhpcyB3YXJuaW5nLCBzZWUgYCArXG4gICAgICAgIGBodHRwczovL2FuZ3VsYXIuZGV2L2Vycm9ycy9ORzA5MTNgLFxuICAgICksXG4gICk7XG59XG5cbmZ1bmN0aW9uIGxvZ092ZXJzaXplZEltYWdlV2FybmluZyhzcmM6IHN0cmluZykge1xuICBjb25zb2xlLndhcm4oXG4gICAgZm9ybWF0UnVudGltZUVycm9yKFxuICAgICAgUnVudGltZUVycm9yQ29kZS5JTUFHRV9QRVJGT1JNQU5DRV9XQVJOSU5HLFxuICAgICAgYEFuIGltYWdlIHdpdGggc3JjICR7c3JjfSBoYXMgaW50cmluc2ljIGZpbGUgZGltZW5zaW9ucyBtdWNoIGxhcmdlciB0aGFuIGl0cyBgICtcbiAgICAgICAgYHJlbmRlcmVkIHNpemUuIFRoaXMgY2FuIG5lZ2F0aXZlbHkgaW1wYWN0IGFwcGxpY2F0aW9uIGxvYWRpbmcgcGVyZm9ybWFuY2UuIGAgK1xuICAgICAgICBgRm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgYWRkcmVzc2luZyBvciBkaXNhYmxpbmcgdGhpcyB3YXJuaW5nLCBzZWUgYCArXG4gICAgICAgIGBodHRwczovL2FuZ3VsYXIuZGV2L2Vycm9ycy9ORzA5MTNgLFxuICAgICksXG4gICk7XG59XG4iXX0=
|
|
197
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2VfcGVyZm9ybWFuY2Vfd2FybmluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2ltYWdlX3BlcmZvcm1hbmNlX3dhcm5pbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUFDLFlBQVksRUFBZSxXQUFXLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUN4RixPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ2hDLE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUNuRCxPQUFPLEVBQUMsa0JBQWtCLEVBQW1CLE1BQU0sVUFBVSxDQUFDO0FBRTlELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQzs7QUFFMUQsNEVBQTRFO0FBQzVFLHlFQUF5RTtBQUN6RSxtRkFBbUY7QUFDbkYsc0RBQXNEO0FBQ3RELE1BQU0sVUFBVSxHQUFHLEdBQUcsQ0FBQztBQUV2QixNQUFNLHlCQUF5QixHQUFHLElBQUksQ0FBQztBQUd2QyxNQUFNLE9BQU8sdUJBQXVCO0lBRHBDO1FBRUUscURBQXFEO1FBQzdDLFdBQU0sR0FBa0IsSUFBSSxDQUFDO1FBQzdCLGFBQVEsR0FBK0IsSUFBSSxDQUFDO1FBQzVDLFlBQU8sR0FBZ0IsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ25DLGNBQVMsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLEtBQUssU0FBUyxDQUFDO0tBcUtoRTtJQWxLUSxLQUFLO1FBQ1YsSUFDRSxDQUFDLElBQUksQ0FBQyxTQUFTO1lBQ2YsT0FBTyxtQkFBbUIsS0FBSyxXQUFXO1lBQzFDLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSx1QkFBdUIsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLDJCQUEyQixDQUFDLEVBQ3BGLENBQUM7WUFDRCxPQUFPO1FBQ1QsQ0FBQztRQUNELElB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RSx5RUFBeUU7UUFDekUsb0VBQW9FO1FBQ3BFLDBFQUEwRTtRQUMxRSxrRUFBa0U7UUFDbEUsOERBQThEO1FBQzlELG1DQUFtQyxDQUN0QyxDQUNGLENBQUM7QUFDSixDQUFDO0FBRUQsU0FBUyx3QkFBd0IsQ0FBQyxHQUFXO0lBQzNDLE9BQU8sQ0FBQyxJQUFJLENBQ1Ysa0JBQWtCLHdEQUVoQixxQkFBcUIsR0FBRyxzREFBc0Q7UUFDNUUsNkVBQTZFO1FBQzdFLHVFQUF1RTtRQUN2RSxtQ0FBbUMsQ0FDdEMsQ0FDRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtJTUFHRV9DT05GSUcsIEltYWdlQ29uZmlnLCBQTEFURk9STV9JRH0gZnJvbSAnLi9hcHBsaWNhdGlvbi9hcHBsaWNhdGlvbl90b2tlbnMnO1xuaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICcuL2RpJztcbmltcG9ydCB7aW5qZWN0fSBmcm9tICcuL2RpL2luamVjdG9yX2NvbXBhdGliaWxpdHknO1xuaW1wb3J0IHtmb3JtYXRSdW50aW1lRXJyb3IsIFJ1bnRpbWVFcnJvckNvZGV9IGZyb20gJy4vZXJyb3JzJztcbmltcG9ydCB7T25EZXN0cm95fSBmcm9tICcuL2ludGVyZmFjZS9saWZlY3ljbGVfaG9va3MnO1xuaW1wb3J0IHtnZXREb2N1bWVudH0gZnJvbSAnLi9yZW5kZXIzL2ludGVyZmFjZXMvZG9jdW1lbnQnO1xuXG4vLyBBIGRlbGF5IGluIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHNjYW4gaXMgcnVuIGFmdGVyIG9uTG9hZCwgdG8gYXZvaWQgYW55XG4vLyBwb3RlbnRpYWwgcmFjZSBjb25kaXRpb25zIHdpdGggb3RoZXIgTENQLXJlbGF0ZWQgZnVuY3Rpb25zLiBUaGlzIGRlbGF5XG4vLyBoYXBwZW5zIG91dHNpZGUgb2YgdGhlIG1haW4gSmF2YVNjcmlwdCBleGVjdXRpb24gYW5kIHdpbGwgb25seSBlZmZlY3QgdGhlIHRpbWluZ1xuLy8gb24gd2hlbiB0aGUgd2FybmluZyBiZWNvbWVzIHZpc2libGUgaW4gdGhlIGNvbnNvbGUuXG5jb25zdCBTQ0FOX0RFTEFZID0gMjAwO1xuXG5jb25zdCBPVkVSU0laRURfSU1BR0VfVE9MRVJBTkNFID0gMTIwMDtcblxuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgSW1hZ2VQZXJmb3JtYW5jZVdhcm5pbmcgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAvLyBNYXAgb2YgZnVsbCBpbWFnZSBVUkxzIC0+IG9yaWdpbmFsIGBuZ1NyY2AgdmFsdWVzLlxuICBwcml2YXRlIHdpbmRvdzogV2luZG93IHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgb2JzZXJ2ZXI6IFBlcmZvcm1hbmNlT2JzZXJ2ZXIgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBvcHRpb25zOiBJbWFnZUNvbmZpZyA9IGluamVjdChJTUFHRV9DT05GSUcpO1xuICBwcml2YXRlIHJlYWRvbmx5IGlzQnJvd3NlciA9IGluamVjdChQTEFURk9STV9JRCkgPT09ICdicm93c2VyJztcbiAgcHJpdmF0ZSBsY3BJbWFnZVVybD86IHN0cmluZztcblxuICBwdWJsaWMgc3RhcnQoKSB7XG4gICAgaWYgKFxuICAgICAgIXRoaXMuaXNCcm93c2VyIHx8XG4gICAgICB0eXBlb2YgUGVyZm9ybWFuY2VPYnNlcnZlciA9PT0gJ3VuZGVmaW5lZCcgfHxcbiAgICAgICh0aGlzLm9wdGlvbnM/LmRpc2FibGVJbWFnZVNpemVXYXJuaW5nICYmIHRoaXMub3B0aW9ucz8uZGlzYWJsZUltYWdlTGF6eUxvYWRXYXJuaW5nKVxuICAgICkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLm9ic2VydmVyID0gdGhpcy5pbml0UGVyZm9ybWFuY2VPYnNlcnZlcigpO1xuICAgIGNvbnN0IGRvYyA9IGdldERvY3VtZW50KCk7XG4gICAgY29uc3Qgd2luID0gZG9jLmRlZmF1bHRWaWV3O1xuICAgIGlmICh0eXBlb2Ygd2luICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgdGhpcy53aW5kb3cgPSB3aW47XG4gICAgICAvLyBXYWl0IHRvIGF2b2lkIHJhY2UgY29uZGl0aW9ucyB3aGVyZSBMQ1AgaW1hZ2UgdHJpZ2dlcnNcbiAgICAgIC8vIGxvYWQgZXZlbnQgYmVmb3JlIGl0J3MgcmVjb3JkZWQgYnkgdGhlIHBlcmZvcm1hbmNlIG9ic2VydmVyXG4gICAgICBjb25zdCB3YWl0VG9TY2FuID0gKCkgPT4ge1xuICAgICAgICBzZXRUaW1lb3V0KHRoaXMuc2NhbkltYWdlcy5iaW5kKHRoaXMpLCBTQ0FOX0RFTEFZKTtcbiAgICAgIH07XG4gICAgICBjb25zdCBzZXR1cCA9ICgpID0+IHtcbiAgICAgICAgLy8gQ29uc2lkZXIgdGhlIGNhc2Ugd2hlbiB0aGUgYXBwbGljYXRpb24gaXMgY3JlYXRlZCBhbmQgZGVzdHJveWVkIG11bHRpcGxlIHRpbWVzLlxuICAgICAgICAvLyBUeXBpY2FsbHksIGFwcGxpY2F0aW9ucyBhcmUgY3JlYXRlZCBpbnN0YW50bHkgb25jZSB0aGUgcGFnZSBpcyBsb2FkZWQsIGFuZCB0aGVcbiAgICAgICAgLy8gYHdpbmRvdy5sb2FkYCBsaXN0ZW5lciBpcyBhbHdheXMgdHJpZ2dlcmVkLiBIb3dldmVyLCB0aGUgYHdpbmRvdy5sb2FkYCBldmVudCB3aWxsIG5ldmVyXG4gICAgICAgIC8vIGJlIGZpcmVkIGlmIHRoZSBwYWdlIGlzIGxvYWRlZCwgYW5kIHRoZSBhcHBsaWNhdGlvbiBpcyBjcmVhdGVkIGxhdGVyLiBDaGVja2luZyBmb3JcbiAgICAgICAgLy8gYHJlYWR5U3RhdGVgIGlzIHRoZSBlYXNpZXN0IHdheSB0byBkZXRlcm1pbmUgd2hldGhlciB0aGUgcGFnZSBoYXMgYmVlbiBsb2FkZWQgb3Igbm90LlxuICAgICAgICBpZiAoZG9jLnJlYWR5U3RhdGUgPT09ICdjb21wbGV0ZScpIHtcbiAgICAgICAgICB3YWl0VG9TY2FuKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy53aW5kb3c/LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCB3YWl0VG9TY2FuLCB7b25jZTogdHJ1ZX0pO1xuICAgICAgICB9XG4gICAgICB9O1xuICAgICAgLy8gQW5ndWxhciBkb2Vzbid0IGhhdmUgdG8gcnVuIGNoYW5nZSBkZXRlY3Rpb24gd2hlbmV2ZXIgYW55IGFzeW5jaHJvbm91cyB0YXNrcyBhcmUgaW52b2tlZCBpblxuICAgICAgLy8gdGhlIHNjb3BlIG9mIHRoaXMgZnVuY3Rpb25hbGl0eS5cbiAgICAgIGlmICh0eXBlb2YgWm9uZSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgWm9uZS5yb290LnJ1bigoKSA9PiBzZXR1cCgpKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHNldHVwKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5vYnNlcnZlcj8uZGlzY29ubmVjdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0UGVyZm9ybWFuY2VPYnNlcnZlcigpOiBQZXJmb3JtYW5jZU9ic2VydmVyIHwgbnVsbCB7XG4gICAgaWYgKHR5cGVvZiBQZXJmb3JtYW5jZU9ic2VydmVyID09PSAndW5kZWZpbmVkJykge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIGNvbnN0IG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoKGVudHJ5TGlzdCkgPT4ge1xuICAgICAgY29uc3QgZW50cmllcyA9IGVudHJ5TGlzdC5nZXRFbnRyaWVzKCk7XG4gICAgICBpZiAoZW50cmllcy5sZW5ndGggPT09IDApIHJldHVybjtcbiAgICAgIC8vIFdlIHVzZSB0aGUgbGF0ZXN0IGVudHJ5IHByb2R1Y2VkIGJ5IHRoZSBgUGVyZm9ybWFuY2VPYnNlcnZlcmAgYXMgdGhlIGJlc3RcbiAgICAgIC8vIHNpZ25hbCBvbiB3aGljaCBlbGVtZW50IGlzIGFjdHVhbGx5IGFuIExDUCBvbmUuIEFzIGFuIGV4YW1wbGUsIHRoZSBmaXJzdCBpbWFnZSB0byBsb2FkIG9uXG4gICAgICAvLyBhIHBhZ2UsIGJ5IHZpcnR1ZSBvZiBiZWluZyB0aGUgb25seSB0aGluZyBvbiB0aGUgcGFnZSBzbyBmYXIsIGlzIG9mdGVuIGEgTENQIGNhbmRpZGF0ZVxuICAgICAgLy8gYW5kIGdldHMgcmVwb3J0ZWQgYnkgUGVyZm9ybWFuY2VPYnNlcnZlciwgYnV0IGlzbid0IG5lY2Vzc2FyaWx5IHRoZSBMQ1AgZWxlbWVudC5cbiAgICAgIGNvbnN0IGxjcEVsZW1lbnQgPSBlbnRyaWVzW2VudHJpZXMubGVuZ3RoIC0gMV07XG5cbiAgICAgIC8vIENhc3QgdG8gYGFueWAgZHVlIHRvIG1pc3NpbmcgYGVsZW1lbnRgIG9uIHRoZSBgTGFyZ2VzdENvbnRlbnRmdWxQYWludGAgdHlwZSBvZiBlbnRyeS5cbiAgICAgIC8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BUEkvTGFyZ2VzdENvbnRlbnRmdWxQYWludFxuICAgICAgY29uc3QgaW1nU3JjID0gKGxjcEVsZW1lbnQgYXMgYW55KS5lbGVtZW50Py5zcmMgPz8gJyc7XG5cbiAgICAgIC8vIEV4Y2x1ZGUgYGRhdGE6YCBhbmQgYGJsb2I6YCBVUkxzLCBzaW5jZSB0aGV5IGFyZSBmZXRjaGVkIHJlc291cmNlcy5cbiAgICAgIGlmIChpbWdTcmMuc3RhcnRzV2l0aCgnZGF0YTonKSB8fCBpbWdTcmMuc3RhcnRzV2l0aCgnYmxvYjonKSkgcmV0dXJuO1xuICAgICAgdGhpcy5sY3BJbWFnZVVybCA9IGltZ1NyYztcbiAgICB9KTtcbiAgICBvYnNlcnZlci5vYnNlcnZlKHt0eXBlOiAnbGFyZ2VzdC1jb250ZW50ZnVsLXBhaW50JywgYnVmZmVyZWQ6IHRydWV9KTtcbiAgICByZXR1cm4gb2JzZXJ2ZXI7XG4gIH1cblxuICBwcml2YXRlIHNjYW5JbWFnZXMoKTogdm9pZCB7XG4gICAgY29uc3QgaW1hZ2VzID0gZ2V0RG9jdW1lbnQoKS5xdWVyeVNlbGVjdG9yQWxsKCdpbWcnKTtcbiAgICBsZXQgbGNwRWxlbWVudEZvdW5kLFxuICAgICAgbGNwRWxlbWVudExvYWRlZENvcnJlY3RseSA9IGZhbHNlO1xuICAgIGltYWdlcy5mb3JFYWNoKChpbWFnZSkgPT4ge1xuICAgICAgaWYgKCF0aGlzLm9wdGlvbnM/LmRpc2FibGVJbWFnZVNpemVXYXJuaW5nKSB7XG4gICAgICAgIC8vIEltYWdlIGVsZW1lbnRzIHVzaW5nIHRoZSBOZ09wdGltaXplZEltYWdlIGRpcmVjdGl2ZSBhcmUgZXhjbHVkZWQsXG4gICAgICAgIC8vIGFzIHRoYXQgZGlyZWN0aXZlIGhhcyBpdHMgb3duIHZlcnNpb24gb2YgdGhpcyBjaGVjay5cbiAgICAgICAgaWYgKCFpbWFnZS5nZXRBdHRyaWJ1dGUoJ25nLWltZycpICYmIHRoaXMuaXNPdmVyc2l6ZWQoaW1hZ2UpKSB7XG4gICAgICAgICAgbG9nT3ZlcnNpemVkSW1hZ2VXYXJuaW5nKGltYWdlLnNyYyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGlmICghdGhpcy5vcHRpb25zPy5kaXNhYmxlSW1hZ2VMYXp5TG9hZFdhcm5pbmcgJiYgdGhpcy5sY3BJbWFnZVVybCkge1xuICAgICAgICBpZiAoaW1hZ2Uuc3JjID09PSB0aGlzLmxjcEltYWdlVXJsKSB7XG4gICAgICAgICAgbGNwRWxlbWVudEZvdW5kID0gdHJ1ZTtcbiAgICAgICAgICBpZiAoaW1hZ2UubG9hZGluZyAhPT0gJ2xhenknIHx8IGltYWdlLmdldEF0dHJpYnV0ZSgnbmctaW1nJykpIHtcbiAgICAgICAgICAgIC8vIFRoaXMgdmFyaWFibGUgaXMgc2V0IHRvIHRydWUgYW5kIG5ldmVyIGdvZXMgYmFjayB0byBmYWxzZSB0byBhY2NvdW50XG4gICAgICAgICAgICAvLyBmb3IgdGhlIGNhc2Ugd2hlcmUgbXVsdGlwbGUgaW1hZ2VzIGhhdmUgdGhlIHNhbWUgc3JjIHVybCwgYW5kIHNvbWVcbiAgICAgICAgICAgIC8vIGhhdmUgbGF6eSBsb2FkaW5nIHdoaWxlIG90aGVycyBkb24ndC5cbiAgICAgICAgICAgIC8vIEFsc28gaWdub3JlIE5nT3B0aW1pemVkSW1hZ2UgYmVjYXVzZSB0aGVyZSdzIGEgZGlmZmVyZW50IHdhcm5pbmcgZm9yIHRoYXQuXG4gICAgICAgICAgICBsY3BFbGVtZW50TG9hZGVkQ29ycmVjdGx5ID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgICBpZiAoXG4gICAgICBsY3BFbGVtZW50Rm91bmQgJiZcbiAgICAgICFsY3BFbGVtZW50TG9hZGVkQ29ycmVjdGx5ICYmXG4gICAgICB0aGlzLmxjcEltYWdlVXJsICYmXG4gICAgICAhdGhpcy5vcHRpb25zPy5kaXNhYmxlSW1hZ2VMYXp5TG9hZFdhcm5pbmdcbiAgICApIHtcbiAgICAgIGxvZ0xhenlMQ1BXYXJuaW5nKHRoaXMubGNwSW1hZ2VVcmwpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaXNPdmVyc2l6ZWQoaW1hZ2U6IEhUTUxJbWFnZUVsZW1lbnQpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMud2luZG93KSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgLy8gVGhlIGBpc092ZXJzaXplZGAgY2hlY2sgbWF5IG5vdCBiZSBhcHBsaWNhYmxlIG9yIG1heSByZXF1aXJlIGFkanVzdG1lbnRzXG4gICAgLy8gZm9yIHNldmVyYWwgdHlwZXMgb2YgaW1hZ2UgZm9ybWF0cyBvciBzY2VuYXJpb3MuIEN1cnJlbnRseSwgd2Ugc3BlY2lmeSBvbmx5XG4gICAgLy8gYHN2Z2AsIGJ1dCB0aGlzIG1heSBhbHNvIGluY2x1ZGUgYGdpZmAgc2luY2UgdGhlaXIgcXVhbGl0eSBpc27igJl0IHRpZWQgdG9cbiAgICAvLyBkaW1lbnNpb25zIGluIHRoZSBzYW1lIHdheSBhcyByYXN0ZXIgaW1hZ2VzLlxuICAgIGNvbnN0IG5vbk92ZXJzaXplZEltYWdlRXh0ZW50aW9ucyA9IFtcbiAgICAgIC8vIFNWRyBpbWFnZXMgYXJlIHZlY3Rvci1iYXNlZCwgd2hpY2ggbWVhbnMgdGhleSBjYW4gc2NhbGVcbiAgICAgIC8vIHRvIGFueSBzaXplIHdpdGhvdXQgbG9zaW5nIHF1YWxpdHkuXG4gICAgICAnLnN2ZycsXG4gICAgXTtcblxuICAgIC8vIENvbnZlcnQgaXQgdG8gbG93ZXJjYXNlIGJlY2F1c2UgdGhpcyBtYXkgaGF2ZSB1cHBlcmNhc2VcbiAgICAvLyBleHRlbnNpb25zLCBzdWNoIGFzIGBJTUFHRS5TVkdgLlxuICAgIC8vIFdlIGZhbGxiYWNrIHRvIGFuIGVtcHR5IHN0cmluZyBiZWNhdXNlIGBzcmNgIG1heSBiZSBgdW5kZWZpbmVkYFxuICAgIC8vIGlmIGl0IGlzIGV4cGxpY2l0bHkgc2V0IHRvIGBudWxsYCBieSBzb21lIHRoaXJkLXBhcnR5IGNvZGVcbiAgICAvLyAoZS5nLiwgYGltYWdlLnNyYyA9IG51bGxgKS5cbiAgICBjb25zdCBpbWFnZVNvdXJjZSA9IChpbWFnZS5zcmMgfHwgJycpLnRvTG93ZXJDYXNlKCk7XG5cbiAgICBpZiAobm9uT3ZlcnNpemVkSW1hZ2VFeHRlbnRpb25zLnNvbWUoKGV4dGVuc2lvbikgPT4gaW1hZ2VTb3VyY2UuZW5kc1dpdGgoZXh0ZW5zaW9uKSkpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBjb25zdCBjb21wdXRlZFN0eWxlID0gdGhpcy53aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShpbWFnZSk7XG4gICAgbGV0IHJlbmRlcmVkV2lkdGggPSBwYXJzZUZsb2F0KGNvbXB1dGVkU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnd2lkdGgnKSk7XG4gICAgbGV0IHJlbmRlcmVkSGVpZ2h0ID0gcGFyc2VGbG9hdChjb21wdXRlZFN0eWxlLmdldFByb3BlcnR5VmFsdWUoJ2hlaWdodCcpKTtcbiAgICBjb25zdCBib3hTaXppbmcgPSBjb21wdXRlZFN0eWxlLmdldFByb3BlcnR5VmFsdWUoJ2JveC1zaXppbmcnKTtcbiAgICBjb25zdCBvYmplY3RGaXQgPSBjb21wdXRlZFN0eWxlLmdldFByb3BlcnR5VmFsdWUoJ29iamVjdC1maXQnKTtcblxuICAgIGlmIChvYmplY3RGaXQgPT09IGBjb3ZlcmApIHtcbiAgICAgIC8vIE9iamVjdCBmaXQgY292ZXIgbWF5IGluZGljYXRlIGEgdXNlIGNhc2Ugc3VjaCBhcyBhIHNwcml0ZSBzaGVldCB3aGVyZVxuICAgICAgLy8gdGhpcyB3YXJuaW5nIGRvZXMgbm90IGFwcGx5LlxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGlmIChib3hTaXppbmcgPT09ICdib3JkZXItYm94Jykge1xuICAgICAgLy8gSWYgdGhlIGltYWdlIGBib3gtc2l6aW5nYCBpcyBzZXQgdG8gYGJvcmRlci1ib3hgLCB3ZSBhZGp1c3QgdGhlIHJlbmRlcmVkXG4gICAgICAvLyBkaW1lbnNpb25zIGJ5IHN1YnRyYWN0aW5nIHBhZGRpbmcgdmFsdWVzLlxuICAgICAgY29uc3QgcGFkZGluZ1RvcCA9IGNvbXB1dGVkU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgncGFkZGluZy10b3AnKTtcbiAgICAgIGNvbnN0IHBhZGRpbmdSaWdodCA9IGNvbXB1dGVkU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgncGFkZGluZy1yaWdodCcpO1xuICAgICAgY29uc3QgcGFkZGluZ0JvdHRvbSA9IGNvbXB1dGVkU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgncGFkZGluZy1ib3R0b20nKTtcbiAgICAgIGNvbnN0IHBhZGRpbmdMZWZ0ID0gY29tcHV0ZWRTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCdwYWRkaW5nLWxlZnQnKTtcbiAgICAgIHJlbmRlcmVkV2lkdGggLT0gcGFyc2VGbG9hdChwYWRkaW5nUmlnaHQpICsgcGFyc2VGbG9hdChwYWRkaW5nTGVmdCk7XG4gICAgICByZW5kZXJlZEhlaWdodCAtPSBwYXJzZUZsb2F0KHBhZGRpbmdUb3ApICsgcGFyc2VGbG9hdChwYWRkaW5nQm90dG9tKTtcbiAgICB9XG5cbiAgICBjb25zdCBpbnRyaW5zaWNXaWR0aCA9IGltYWdlLm5hdHVyYWxXaWR0aDtcbiAgICBjb25zdCBpbnRyaW5zaWNIZWlnaHQgPSBpbWFnZS5uYXR1cmFsSGVpZ2h0O1xuXG4gICAgY29uc3QgcmVjb21tZW5kZWRXaWR0aCA9IHRoaXMud2luZG93LmRldmljZVBpeGVsUmF0aW8gKiByZW5kZXJlZFdpZHRoO1xuICAgIGNvbnN0IHJlY29tbWVuZGVkSGVpZ2h0ID0gdGhpcy53aW5kb3cuZGV2aWNlUGl4ZWxSYXRpbyAqIHJlbmRlcmVkSGVpZ2h0O1xuICAgIGNvbnN0IG92ZXJzaXplZFdpZHRoID0gaW50cmluc2ljV2lkdGggLSByZWNvbW1lbmRlZFdpZHRoID49IE9WRVJTSVpFRF9JTUFHRV9UT0xFUkFOQ0U7XG4gICAgY29uc3Qgb3ZlcnNpemVkSGVpZ2h0ID0gaW50cmluc2ljSGVpZ2h0IC0gcmVjb21tZW5kZWRIZWlnaHQgPj0gT1ZFUlNJWkVEX0lNQUdFX1RPTEVSQU5DRTtcbiAgICByZXR1cm4gb3ZlcnNpemVkV2lkdGggfHwgb3ZlcnNpemVkSGVpZ2h0O1xuICB9XG59XG5cbmZ1bmN0aW9uIGxvZ0xhenlMQ1BXYXJuaW5nKHNyYzogc3RyaW5nKSB7XG4gIGNvbnNvbGUud2FybihcbiAgICBmb3JtYXRSdW50aW1lRXJyb3IoXG4gICAgICBSdW50aW1lRXJyb3JDb2RlLklNQUdFX1BFUkZPUk1BTkNFX1dBUk5JTkcsXG4gICAgICBgQW4gaW1hZ2Ugd2l0aCBzcmMgJHtzcmN9IGlzIHRoZSBMYXJnZXN0IENvbnRlbnRmdWwgUGFpbnQgKExDUCkgZWxlbWVudCBgICtcbiAgICAgICAgYGJ1dCB3YXMgZ2l2ZW4gYSBcImxvYWRpbmdcIiB2YWx1ZSBvZiBcImxhenlcIiwgd2hpY2ggY2FuIG5lZ2F0aXZlbHkgaW1wYWN0IGAgK1xuICAgICAgICBgYXBwbGljYXRpb24gbG9hZGluZyBwZXJmb3JtYW5jZS4gVGhpcyB3YXJuaW5nIGNhbiBiZSBhZGRyZXNzZWQgYnkgYCArXG4gICAgICAgIGBjaGFuZ2luZyB0aGUgbG9hZGluZyB2YWx1ZSBvZiB0aGUgTENQIGltYWdlIHRvIFwiZWFnZXJcIiwgb3IgYnkgdXNpbmcgdGhlIGAgK1xuICAgICAgICBgTmdPcHRpbWl6ZWRJbWFnZSBkaXJlY3RpdmUncyBwcmlvcml0aXphdGlvbiB1dGlsaXRpZXMuIEZvciBtb3JlIGAgK1xuICAgICAgICBgaW5mb3JtYXRpb24gYWJvdXQgYWRkcmVzc2luZyBvciBkaXNhYmxpbmcgdGhpcyB3YXJuaW5nLCBzZWUgYCArXG4gICAgICAgIGBodHRwczovL2FuZ3VsYXIuZGV2L2Vycm9ycy9ORzA5MTNgLFxuICAgICksXG4gICk7XG59XG5cbmZ1bmN0aW9uIGxvZ092ZXJzaXplZEltYWdlV2FybmluZyhzcmM6IHN0cmluZykge1xuICBjb25zb2xlLndhcm4oXG4gICAgZm9ybWF0UnVudGltZUVycm9yKFxuICAgICAgUnVudGltZUVycm9yQ29kZS5JTUFHRV9QRVJGT1JNQU5DRV9XQVJOSU5HLFxuICAgICAgYEFuIGltYWdlIHdpdGggc3JjICR7c3JjfSBoYXMgaW50cmluc2ljIGZpbGUgZGltZW5zaW9ucyBtdWNoIGxhcmdlciB0aGFuIGl0cyBgICtcbiAgICAgICAgYHJlbmRlcmVkIHNpemUuIFRoaXMgY2FuIG5lZ2F0aXZlbHkgaW1wYWN0IGFwcGxpY2F0aW9uIGxvYWRpbmcgcGVyZm9ybWFuY2UuIGAgK1xuICAgICAgICBgRm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgYWRkcmVzc2luZyBvciBkaXNhYmxpbmcgdGhpcyB3YXJuaW5nLCBzZWUgYCArXG4gICAgICAgIGBodHRwczovL2FuZ3VsYXIuZGV2L2Vycm9ycy9ORzA5MTNgLFxuICAgICksXG4gICk7XG59XG4iXX0=
|