@ngx-formly/core 6.0.0-rc.0 → 6.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +11 -11
- package/esm2020/lib/components/formly.field.mjs +5 -2
- package/esm2020/lib/components/formly.form.mjs +11 -1
- package/esm2020/lib/extensions/field-form/field-form.mjs +10 -2
- package/esm2020/lib/models/config.mjs +1 -1
- package/esm2020/lib/models/fieldconfig.mjs +1 -1
- package/esm2020/lib/services/formly.config.mjs +12 -3
- package/esm2020/lib/templates/field-template.type.mjs +2 -1
- package/esm2020/lib/templates/formly.attributes.mjs +6 -3
- package/esm2020/lib/templates/formly.group.mjs +2 -1
- package/esm2020/lib/templates/formly.validation-message.mjs +4 -1
- package/fesm2015/ngx-formly-core.mjs +43 -5
- package/fesm2015/ngx-formly-core.mjs.map +1 -1
- package/fesm2020/ngx-formly-core.mjs +43 -5
- package/fesm2020/ngx-formly-core.mjs.map +1 -1
- package/lib/components/formly.field.d.ts +4 -0
- package/lib/components/formly.form.d.ts +10 -0
- package/lib/models/config.d.ts +6 -4
- package/lib/models/fieldconfig.d.ts +15 -15
- package/lib/services/formly.config.d.ts +11 -2
- package/lib/templates/field-template.type.d.ts +1 -0
- package/lib/templates/formly.attributes.d.ts +4 -0
- package/lib/templates/formly.group.d.ts +1 -0
- package/lib/templates/formly.validation-message.d.ts +4 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
<a href="https://formly.dev">
|
|
3
|
-
<img width="200" src="https://raw.githubusercontent.com/ngx-formly/ngx-formly/v5/logo.svg?sanitize=true"
|
|
3
|
+
<img width="200" src="https://raw.githubusercontent.com/ngx-formly/ngx-formly/v5/logo.svg?sanitize=true" />
|
|
4
4
|
</a>
|
|
5
5
|
<br />
|
|
6
6
|
JSON powered / Dynamic forms in Angular
|
|
7
7
|
<br /><br />
|
|
8
8
|
|
|
9
9
|
[](https://npmjs.org/package/@ngx-formly/core)
|
|
10
|
-
[](https://npmjs.org/package/@ngx-formly/core)
|
|
11
11
|
[](https://gitter.im/formly-js/ng2-formly)
|
|
12
12
|
[](https://github.com/ngx-formly/ngx-formly/actions/workflows/ci.yml/badge.svg?branch=main)
|
|
13
13
|
[](https://twitter.com/formlydev)
|
|
@@ -111,21 +111,21 @@ Formly is a dynamic (JSON powered) form library for Angular that brings unmatche
|
|
|
111
111
|
Thanks goes to these wonderful people:
|
|
112
112
|
|
|
113
113
|
<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
|
|
114
|
-
[<img alt="aitboudad" src="https://avatars.githubusercontent.com/u/1753742?v=4&s=80" width="80"
|
|
114
|
+
[<img alt="aitboudad" src="https://avatars.githubusercontent.com/u/1753742?v=4&s=80" width="80" />](https://github.com/aitboudad)[<img alt="mohammedzamakhan" src="https://avatars.githubusercontent.com/u/2327532?v=4&s=80" width="80" />](https://github.com/mohammedzamakhan)[<img alt="divyakumarjain" src="https://avatars.githubusercontent.com/u/2039134?v=4&s=80" width="80" />](https://github.com/divyakumarjain)[<img alt="couzic" src="https://avatars.githubusercontent.com/u/1380322?v=4&s=80" width="80" />](https://github.com/couzic)[<img alt="juristr" src="https://avatars.githubusercontent.com/u/542458?v=4&s=80" width="80" />](https://github.com/juristr)[<img alt="franzeal" src="https://avatars.githubusercontent.com/u/7455769?v=4&s=80" width="80" />](https://github.com/franzeal)[<img alt="beeman" src="https://avatars.githubusercontent.com/u/36491?v=4&s=80" width="80" />](https://github.com/beeman)[<img alt="MaxKless" src="https://avatars.githubusercontent.com/u/34165455?v=4&s=80" width="80" />](https://github.com/MaxKless)
|
|
115
115
|
|
|
116
|
-
[<img alt="klemenoslaj" src="https://avatars.githubusercontent.com/u/7548247?v=4&s=80" width="80"
|
|
116
|
+
[<img alt="klemenoslaj" src="https://avatars.githubusercontent.com/u/7548247?v=4&s=80" width="80" />](https://github.com/klemenoslaj)[<img alt="samtsai" src="https://avatars.githubusercontent.com/u/225526?v=4&s=80" width="80" />](https://github.com/samtsai)[<img alt="thorgod" src="https://avatars.githubusercontent.com/u/13910170?v=4&s=80" width="80" />](https://github.com/thorgod)[<img alt="kenisteward" src="https://avatars.githubusercontent.com/u/12831669?v=4&s=80" width="80" />](https://github.com/kenisteward)[<img alt="dwaldrum" src="https://avatars.githubusercontent.com/u/386721?v=4&s=80" width="80" />](https://github.com/dwaldrum)[<img alt="skrtheboss" src="https://avatars.githubusercontent.com/u/10209728?v=4&s=80" width="80" />](https://github.com/skrtheboss)[<img alt="intellix" src="https://avatars.githubusercontent.com/u/1162531?v=4&s=80" width="80" />](https://github.com/intellix)[<img alt="Krustie101" src="https://avatars.githubusercontent.com/u/1636728?v=4&s=80" width="80" />](https://github.com/Krustie101)
|
|
117
117
|
|
|
118
|
-
[<img alt="manuelmeister" src="https://avatars.githubusercontent.com/u/3001985?v=4&s=80" width="80"
|
|
118
|
+
[<img alt="manuelmeister" src="https://avatars.githubusercontent.com/u/3001985?v=4&s=80" width="80" />](https://github.com/manuelmeister)[<img alt="MarcosEllys" src="https://avatars.githubusercontent.com/u/6751242?v=4&s=80" width="80" />](https://github.com/MarcosEllys)[<img alt="rehleinBo" src="https://avatars.githubusercontent.com/u/7338819?v=4&s=80" width="80" />](https://github.com/rehleinBo)[<img alt="ryanjerskine" src="https://avatars.githubusercontent.com/u/5464778?v=4&s=80" width="80" />](https://github.com/ryanjerskine)[<img alt="Devqon" src="https://avatars.githubusercontent.com/u/9316480?v=4&s=80" width="80" />](https://github.com/Devqon)[<img alt="vstiebe" src="https://avatars.githubusercontent.com/u/13326475?v=4&s=80" width="80" />](https://github.com/vstiebe)[<img alt="AlexTalcura" src="https://avatars.githubusercontent.com/u/20095773?v=4&s=80" width="80" />](https://github.com/AlexTalcura)[<img alt="alex-novikov-1990" src="https://avatars.githubusercontent.com/u/6377930?v=4&s=80" width="80" />](https://github.com/alex-novikov-1990)
|
|
119
119
|
|
|
120
|
-
[<img alt="andmoredev" src="https://avatars.githubusercontent.com/u/33256364?v=4&s=80" width="80"
|
|
120
|
+
[<img alt="andmoredev" src="https://avatars.githubusercontent.com/u/33256364?v=4&s=80" width="80" />](https://github.com/andmoredev)[<img alt="bhaidar" src="https://avatars.githubusercontent.com/u/1163421?v=4&s=80" width="80" />](https://github.com/bhaidar)[<img alt="cyrilletuzi" src="https://avatars.githubusercontent.com/u/555867?v=4&s=80" width="80" />](https://github.com/cyrilletuzi)[<img alt="Dayvisson" src="https://avatars.githubusercontent.com/u/12189515?v=4&s=80" width="80" />](https://github.com/Dayvisson)[<img alt="eduardoRoth" src="https://avatars.githubusercontent.com/u/5419161?v=4&s=80" width="80" />](https://github.com/eduardoRoth)[<img alt="enricouniurb" src="https://avatars.githubusercontent.com/u/38656571?v=4&s=80" width="80" />](https://github.com/enricouniurb)[<img alt="FritzHerbers" src="https://avatars.githubusercontent.com/u/10029682?v=4&s=80" width="80" />](https://github.com/FritzHerbers)[<img alt="fynnfeldpausch" src="https://avatars.githubusercontent.com/u/1246913?v=4&s=80" width="80" />](https://github.com/fynnfeldpausch)
|
|
121
121
|
|
|
122
|
-
[<img alt="internalsystemerror" src="https://avatars.githubusercontent.com/u/1626298?v=4&s=80" width="80"
|
|
122
|
+
[<img alt="internalsystemerror" src="https://avatars.githubusercontent.com/u/1626298?v=4&s=80" width="80" />](https://github.com/internalsystemerror)[<img alt="jrgleason" src="https://avatars.githubusercontent.com/u/1319151?v=4&s=80" width="80" />](https://github.com/jrgleason)[<img alt="johannesjo" src="https://avatars.githubusercontent.com/u/1456265?v=4&s=80" width="80" />](https://github.com/johannesjo)[<img alt="jdpnielsen" src="https://avatars.githubusercontent.com/u/8746698?v=4&s=80" width="80" />](https://github.com/jdpnielsen)[<img alt="TheMcMurder" src="https://avatars.githubusercontent.com/u/3059715?v=4&s=80" width="80" />](https://github.com/TheMcMurder)[<img alt="kentcdodds" src="https://avatars.githubusercontent.com/u/1500684?v=4&s=80" width="80" />](https://github.com/kentcdodds)[<img alt="Lehoczky" src="https://avatars.githubusercontent.com/u/31937175?v=4&s=80" width="80" />](https://github.com/Lehoczky)[<img alt="LennardWesterveld" src="https://avatars.githubusercontent.com/u/1076589?v=4&s=80" width="80" />](https://github.com/LennardWesterveld)
|
|
123
123
|
|
|
124
|
-
[<img alt="logvinoleg89" src="https://avatars.githubusercontent.com/u/12018303?v=4&s=80" width="80"
|
|
124
|
+
[<img alt="logvinoleg89" src="https://avatars.githubusercontent.com/u/12018303?v=4&s=80" width="80" />](https://github.com/logvinoleg89)[<img alt="LucasJAlba" src="https://avatars.githubusercontent.com/u/2780076?v=4&s=80" width="80" />](https://github.com/LucasJAlba)[<img alt="lucienbertin" src="https://avatars.githubusercontent.com/u/10089239?v=4&s=80" width="80" />](https://github.com/lucienbertin)[<img alt="waffle-iron" src="https://avatars.githubusercontent.com/u/6912981?v=4&s=80" width="80" />](https://github.com/waffle-iron)[<img alt="mathijshoogland" src="https://avatars.githubusercontent.com/u/7372934?v=4&s=80" width="80" />](https://github.com/mathijshoogland)[<img alt="mrbusche" src="https://avatars.githubusercontent.com/u/792378?v=4&s=80" width="80" />](https://github.com/mrbusche)[<img alt="NanFengCheong" src="https://avatars.githubusercontent.com/u/7321833?v=4&s=80" width="80" />](https://github.com/NanFengCheong)[<img alt="Pouja" src="https://avatars.githubusercontent.com/u/2385144?v=4&s=80" width="80" />](https://github.com/Pouja)
|
|
125
125
|
|
|
126
|
-
[<img alt="rafaelss95" src="https://avatars.githubusercontent.com/u/11965907?v=4&s=80" width="80"
|
|
126
|
+
[<img alt="rafaelss95" src="https://avatars.githubusercontent.com/u/11965907?v=4&s=80" width="80" />](https://github.com/rafaelss95)[<img alt="Riron" src="https://avatars.githubusercontent.com/u/5145523?v=4&s=80" width="80" />](https://github.com/Riron)[<img alt="milasevicius" src="https://avatars.githubusercontent.com/u/1790265?v=4&s=80" width="80" />](https://github.com/milasevicius)[<img alt="rternavskyi" src="https://avatars.githubusercontent.com/u/26190424?v=4&s=80" width="80" />](https://github.com/rternavskyi)[<img alt="blowsie" src="https://avatars.githubusercontent.com/u/308572?v=4&s=80" width="80" />](https://github.com/blowsie)[<img alt="ThomasBower" src="https://avatars.githubusercontent.com/u/295527?v=4&s=80" width="80" />](https://github.com/ThomasBower)[<img alt="thm1118" src="https://avatars.githubusercontent.com/u/3632180?v=4&s=80" width="80" />](https://github.com/thm1118)[<img alt="Tom-V" src="https://avatars.githubusercontent.com/u/322654?v=4&s=80" width="80" />](https://github.com/Tom-V)
|
|
127
127
|
|
|
128
|
-
[<img alt="VyacheslavPritykin" src="https://avatars.githubusercontent.com/u/819457?v=4&s=80" width="80"
|
|
128
|
+
[<img alt="VyacheslavPritykin" src="https://avatars.githubusercontent.com/u/819457?v=4&s=80" width="80" />](https://github.com/VyacheslavPritykin)[<img alt="akamyshanov" src="https://avatars.githubusercontent.com/u/1358330?v=4&s=80" width="80" />](https://github.com/akamyshanov)[<img alt="danielcrisp" src="https://avatars.githubusercontent.com/u/1104814?v=4&s=80" width="80" />](https://github.com/danielcrisp)[<img alt="francisco-sanchez-molina" src="https://avatars.githubusercontent.com/u/9049706?v=4&s=80" width="80" />](https://github.com/francisco-sanchez-molina)[<img alt="marfer" src="https://avatars.githubusercontent.com/u/1127166?v=4&s=80" width="80" />](https://github.com/marfer)[<img alt="mburger81" src="https://avatars.githubusercontent.com/u/3778892?v=4&s=80" width="80" />](https://github.com/mburger81)[<img alt="n3xus" src="https://avatars.githubusercontent.com/u/510213?v=4&s=80" width="80" />](https://github.com/n3xus)[<img alt="neminovno" src="https://avatars.githubusercontent.com/u/1468887?v=4&s=80" width="80" />](https://github.com/neminovno)
|
|
129
129
|
|
|
130
|
-
[<img alt="wenqi73" src="https://avatars.githubusercontent.com/u/23337087?v=4&s=80" width="80"
|
|
130
|
+
[<img alt="wenqi73" src="https://avatars.githubusercontent.com/u/23337087?v=4&s=80" width="80" />](https://github.com/wenqi73)
|
|
131
131
|
<!-- ALL-CONTRIBUTORS-LIST:END -->
|
|
@@ -6,6 +6,9 @@ import { debounceTime, distinctUntilChanged, startWith } from 'rxjs/operators';
|
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
import * as i1 from "../services/formly.config";
|
|
8
8
|
import * as i2 from "./formly.template";
|
|
9
|
+
/**
|
|
10
|
+
* The `<formly-field>` component is used to render the UI widget (layout + type) of a given `field`.
|
|
11
|
+
*/
|
|
9
12
|
export class FormlyField {
|
|
10
13
|
constructor(config, renderer, _elementRef, hostContainerRef, form) {
|
|
11
14
|
this.config = config;
|
|
@@ -184,7 +187,7 @@ export class FormlyField {
|
|
|
184
187
|
}
|
|
185
188
|
const subscribes = [
|
|
186
189
|
observeDeep(field, ['props'], () => field.options.detectChanges(field)),
|
|
187
|
-
observeDeep(field, ['
|
|
190
|
+
observeDeep(field.options, ['formState'], () => field.options.detectChanges(field)),
|
|
188
191
|
];
|
|
189
192
|
for (const path of [['template'], ['fieldGroupClassName'], ['validation', 'show']]) {
|
|
190
193
|
const fieldObserver = observe(field, path, ({ firstChange }) => !firstChange && field.options.detectChanges(field));
|
|
@@ -241,4 +244,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
241
244
|
type: ViewChild,
|
|
242
245
|
args: ['container', { read: ViewContainerRef, static: true }]
|
|
243
246
|
}] } });
|
|
244
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWx5LmZpZWxkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2NvcmUvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm1seS5maWVsZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFDTCxnQkFBZ0IsRUFDaEIsU0FBUyxFQUNULFlBQVksRUFXWixRQUFRLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzdDLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsT0FBTyxFQUNQLFdBQVcsRUFDWCxhQUFhLEVBQ2IsZ0JBQWdCLEVBQ2hCLFFBQVEsRUFDUixpQkFBaUIsRUFDakIsTUFBTSxHQUVQLE1BQU0sVUFBVSxDQUFDO0FBR2xCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEMsT0FBTyxFQUFFLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQU8vRSxNQUFNLE9BQU8sV0FBVztJQTBCdEIsWUFDVSxNQUFvQixFQUNwQixRQUFtQixFQUNuQixXQUF1QixFQUN2QixnQkFBa0MsRUFDdEIsSUFBMEI7UUFKdEMsV0FBTSxHQUFOLE1BQU0sQ0FBYztRQUNwQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ3ZCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDdEIsU0FBSSxHQUFKLElBQUksQ0FBc0I7UUEzQnhDLGtCQUFhLEdBQXFCLEVBQUUsQ0FBQztRQUNyQyxrQkFBYSxHQUE2RCxFQUFFLENBQUM7UUFDN0UsbUJBQWMsR0FBZSxFQUFFLENBQUM7UUFDaEMscUJBQWdCLEdBQUcsS0FBSyxDQUFDO1FBaUJqQyw0QkFBdUIsR0FBRyxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7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QUFLLENBQUMsQ0FBQztvQkFDbEMsT0FBTztpQkFDUjtnQkFFRCxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRTtvQkFDakIsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO2lCQUNoQztnQkFDRCxLQUFLLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsQ0FBQyxDQUFDO1lBQzFFLENBQUMsQ0FBQyxDQUFDO1lBRUgsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztTQUMxQztRQUVELE9BQU8sR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUM5RCxDQUFDOzt5R0F0UlUsV0FBVzs2RkFBWCxXQUFXLDBLQUVVLGdCQUFnQixnRUFKdEMsd0NBQXdDOzRGQUV2QyxXQUFXO2tCQUp2QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxjQUFjO29CQUN4QixRQUFRLEVBQUUsd0NBQXdDO2lCQUNuRDs7MEJBZ0NJLFFBQVE7NENBOUJGLEtBQUs7c0JBQWIsS0FBSztnQkFDNEQsZ0JBQWdCO3NCQUFqRixTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgVmlld0NvbnRhaW5lclJlZixcbiAgVmlld0NoaWxkLFxuICBDb21wb25lbnRSZWYsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIERvQ2hlY2ssXG4gIE9uSW5pdCxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIEFmdGVyQ29udGVudEluaXQsXG4gIEFmdGVyVmlld0luaXQsXG4gIFJlbmRlcmVyMixcbiAgRWxlbWVudFJlZixcbiAgRW1iZWRkZWRWaWV3UmVmLFxuICBPcHRpb25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZvcm1seUNvbmZpZyB9IGZyb20gJy4uL3NlcnZpY2VzL2Zvcm1seS5jb25maWcnO1xuaW1wb3J0IHsgRm9ybWx5RmllbGRDb25maWcsIEZvcm1seUZpZWxkQ29uZmlnQ2FjaGUsIEZvcm1seUhvb2tDb25maWcgfSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IHtcbiAgZGVmaW5lSGlkZGVuUHJvcCxcbiAgb2JzZXJ2ZSxcbiAgb2JzZXJ2ZURlZXAsXG4gIGdldEZpZWxkVmFsdWUsXG4gIGFzc2lnbkZpZWxkVmFsdWUsXG4gIGlzT2JqZWN0LFxuICBtYXJrRmllbGRGb3JDaGVjayxcbiAgaGFzS2V5LFxuICBJT2JzZXJ2ZXIsXG59IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IEZpZWxkV3JhcHBlciB9IGZyb20gJy4uL3RlbXBsYXRlcy9maWVsZC53cmFwcGVyJztcbmltcG9ydCB7IEZpZWxkVHlwZSB9IGZyb20gJy4uL3RlbXBsYXRlcy9maWVsZC50eXBlJztcbmltcG9ydCB7IGlzT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgc3RhcnRXaXRoIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRm9ybWx5RmllbGRUZW1wbGF0ZXMgfSBmcm9tICcuL2Zvcm1seS50ZW1wbGF0ZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Zvcm1seS1maWVsZCcsXG4gIHRlbXBsYXRlOiAnPG5nLXRlbXBsYXRlICNjb250YWluZXI+PC9uZy10ZW1wbGF0ZT4nLFxufSlcbmV4cG9ydCBjbGFzcyBGb3JtbHlGaWVsZCBpbXBsZW1lbnRzIERvQ2hlY2ssIE9uSW5pdCwgT25DaGFuZ2VzLCBBZnRlckNvbnRlbnRJbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSBmaWVsZDogRm9ybWx5RmllbGRDb25maWc7XG4gIEBWaWV3Q2hpbGQoJ2NvbnRhaW5lcicsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiwgc3RhdGljOiB0cnVlIH0pIHZpZXdDb250YWluZXJSZWYhOiBWaWV3Q29udGFpbmVyUmVmO1xuXG4gIHByaXZhdGUgaG9zdE9ic2VydmVyczogSU9ic2VydmVyPGFueT5bXSA9IFtdO1xuICBwcml2YXRlIGNvbXBvbmVudFJlZnM6IChDb21wb25lbnRSZWY8RmllbGRUeXBlPiB8IEVtYmVkZGVkVmlld1JlZjxGaWVsZFR5cGU+KVtdID0gW107XG4gIHByaXZhdGUgaG9va3NPYnNlcnZlcnM6IEZ1bmN0aW9uW10gPSBbXTtcbiAgcHJpdmF0ZSBkZXRlY3RGaWVsZEJ1aWxkID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBnZXQgY29udGFpbmVyUmVmKCkge1xuICAgIHJldHVybiB0aGlzLmNvbmZpZy5leHRyYXMucmVuZGVyRm9ybWx5RmllbGRFbGVtZW50ID8gdGhpcy52aWV3Q29udGFpbmVyUmVmIDogdGhpcy5ob3N0Q29udGFpbmVyUmVmO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgZWxlbWVudFJlZigpIHtcbiAgICBpZiAodGhpcy5jb25maWcuZXh0cmFzLnJlbmRlckZvcm1seUZpZWxkRWxlbWVudCkge1xuICAgICAgcmV0dXJuIHRoaXMuX2VsZW1lbnRSZWY7XG4gICAgfVxuICAgIGlmICh0aGlzLmNvbXBvbmVudFJlZnM/LlswXSBpbnN0YW5jZW9mIENvbXBvbmVudFJlZikge1xuICAgICAgcmV0dXJuIHRoaXMuY29tcG9uZW50UmVmc1swXS5sb2NhdGlvbjtcbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHZhbHVlQ2hhbmdlc1Vuc3Vic2NyaWJlID0gKCkgPT4ge307XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjb25maWc6IEZvcm1seUNvbmZpZyxcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIGhvc3RDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBmb3JtOiBGb3JtbHlGaWVsZFRlbXBsYXRlcyxcbiAgKSB7fVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICB0aGlzLnRyaWdnZXJIb29rKCdhZnRlckNvbnRlbnRJbml0Jyk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy50cmlnZ2VySG9vaygnYWZ0ZXJWaWV3SW5pdCcpO1xuICB9XG5cbiAgbmdEb0NoZWNrKCkge1xuICAgIGlmICh0aGlzLmRldGVjdEZpZWxkQnVpbGQgJiYgdGhpcy5maWVsZCAmJiB0aGlzLmZpZWxkLm9wdGlvbnMpIHtcbiAgICAgIHRoaXMucmVuZGVyKCk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy50cmlnZ2VySG9vaygnb25Jbml0Jyk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgdGhpcy50cmlnZ2VySG9vaygnb25DaGFuZ2VzJywgY2hhbmdlcyk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnJlc2V0UmVmcyh0aGlzLmZpZWxkKTtcbiAgICB0aGlzLmhvc3RPYnNlcnZlcnMuZm9yRWFjaCgoaG9zdE9ic2VydmVyKSA9PiBob3N0T2JzZXJ2ZXIudW5zdWJzY3JpYmUoKSk7XG4gICAgdGhpcy5ob29rc09ic2VydmVycy5mb3JFYWNoKCh1bnN1YnNjcmliZSkgPT4gdW5zdWJzY3JpYmUoKSk7XG4gICAgdGhpcy52YWx1ZUNoYW5nZXNVbnN1YnNjcmliZSgpO1xuICAgIHRoaXMudHJpZ2dlckhvb2soJ29uRGVzdHJveScpO1xuICB9XG5cbiAgcHJpdmF0ZSByZW5kZXJGaWVsZChcbiAgICBjb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgZjogRm9ybWx5RmllbGRDb25maWdDYWNoZSxcbiAgICB3cmFwcGVyczogRm9ybWx5RmllbGRDb25maWdbJ3dyYXBwZXJzJ10gPSBbXSxcbiAgKSB7XG4gICAgaWYgKHRoaXMuY29udGFpbmVyUmVmID09PSBjb250YWluZXJSZWYpIHtcbiAgICAgIHRoaXMucmVzZXRSZWZzKHRoaXMuZmllbGQpO1xuICAgICAgdGhpcy5jb250YWluZXJSZWYuY2xlYXIoKTtcbiAgICAgIHdyYXBwZXJzID0gdGhpcy5maWVsZD8ud3JhcHBlcnM7XG4gICAgfVxuXG4gICAgaWYgKHdyYXBwZXJzPy5sZW5ndGggPiAwKSB7XG4gICAgICBjb25zdCBbd3JhcHBlciwgLi4ud3BzXSA9IHdyYXBwZXJzO1xuICAgICAgY29uc3QgeyBjb21wb25lbnQgfSA9IHRoaXMuY29uZmlnLmdldFdyYXBwZXIod3JhcHBlcik7XG5cbiAgICAgIGNvbnN0IHJlZiA9IGNvbnRhaW5lclJlZi5jcmVhdGVDb21wb25lbnQ8RmllbGRXcmFwcGVyPihjb21wb25lbnQpO1xuICAgICAgdGhpcy5hdHRhY2hDb21wb25lbnRSZWYocmVmLCBmKTtcbiAgICAgIG9ic2VydmU8Vmlld0NvbnRhaW5lclJlZiAmIHsgX2xDb250YWluZXI6IGFueSB9PihcbiAgICAgICAgcmVmLmluc3RhbmNlLFxuICAgICAgICBbJ2ZpZWxkQ29tcG9uZW50J10sXG4gICAgICAgICh7IGN1cnJlbnRWYWx1ZSwgcHJldmlvdXNWYWx1ZSwgZmlyc3RDaGFuZ2UgfSkgPT4ge1xuICAgICAgICAgIGlmIChjdXJyZW50VmFsdWUpIHtcbiAgICAgICAgICAgIGlmIChwcmV2aW91c1ZhbHVlICYmIHByZXZpb3VzVmFsdWUuX2xDb250YWluZXIgPT09IGN1cnJlbnRWYWx1ZS5fbENvbnRhaW5lcikge1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IHZpZXdSZWYgPSBwcmV2aW91c1ZhbHVlID8gcHJldmlvdXNWYWx1ZS5kZXRhY2goKSA6IG51bGw7XG4gICAgICAgICAgICBpZiAodmlld1JlZiAmJiAhdmlld1JlZi5kZXN0cm95ZWQpIHtcbiAgICAgICAgICAgICAgY3VycmVudFZhbHVlLmluc2VydCh2aWV3UmVmKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHRoaXMucmVuZGVyRmllbGQoY3VycmVudFZhbHVlLCBmLCB3cHMpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAhZmlyc3RDaGFuZ2UgJiYgcmVmLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICApO1xuICAgIH0gZWxzZSBpZiAoZj8udHlwZSkge1xuICAgICAgY29uc3QgaW5saW5lVHlwZSA9IHRoaXMuZm9ybT8udGVtcGxhdGVzPy5maW5kKChyZWYpID0+IHJlZi5uYW1lID09PSBmLnR5cGUpO1xuICAgICAgbGV0IHJlZjogQ29tcG9uZW50UmVmPGFueT4gfCBFbWJlZGRlZFZpZXdSZWY8YW55PjtcbiAgICAgIGlmIChpbmxpbmVUeXBlKSB7XG4gICAgICAgIHJlZiA9IGNvbnRhaW5lclJlZi5jcmVhdGVFbWJlZGRlZFZpZXcoaW5saW5lVHlwZS5yZWYsIHsgJGltcGxpY2l0OiBmIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgeyBjb21wb25lbnQgfSA9IHRoaXMuY29uZmlnLmdldFR5cGUoZi50eXBlLCB0cnVlKTtcbiAgICAgICAgcmVmID0gY29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudDxGaWVsZFdyYXBwZXI+KGNvbXBvbmVudCk7XG4gICAgICB9XG4gICAgICB0aGlzLmF0dGFjaENvbXBvbmVudFJlZihyZWYsIGYpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgdHJpZ2dlckhvb2sobmFtZToga2V5b2YgRm9ybWx5SG9va0NvbmZpZywgY2hhbmdlcz86IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAobmFtZSA9PT0gJ29uSW5pdCcgfHwgKG5hbWUgPT09ICdvbkNoYW5nZXMnICYmIGNoYW5nZXMuZmllbGQgJiYgIWNoYW5nZXMuZmllbGQuZmlyc3RDaGFuZ2UpKSB7XG4gICAgICB0aGlzLnZhbHVlQ2hhbmdlc1Vuc3Vic2NyaWJlID0gdGhpcy5maWVsZENoYW5nZXModGhpcy5maWVsZCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZmllbGQ/Lmhvb2tzPy5bbmFtZV0pIHtcbiAgICAgIGlmICghY2hhbmdlcyB8fCBjaGFuZ2VzLmZpZWxkKSB7XG4gICAgICAgIGNvbnN0IHIgPSB0aGlzLmZpZWxkLmhvb2tzW25hbWVdKHRoaXMuZmllbGQpO1xuICAgICAgICBpZiAoaXNPYnNlcnZhYmxlKHIpICYmIFsnb25Jbml0JywgJ2FmdGVyQ29udGVudEluaXQnLCAnYWZ0ZXJWaWV3SW5pdCddLmluZGV4T2YobmFtZSkgIT09IC0xKSB7XG4gICAgICAgICAgY29uc3Qgc3ViID0gci5zdWJzY3JpYmUoKTtcbiAgICAgICAgICB0aGlzLmhvb2tzT2JzZXJ2ZXJzLnB1c2goKCkgPT4gc3ViLnVuc3Vic2NyaWJlKCkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKG5hbWUgPT09ICdvbkNoYW5nZXMnICYmIGNoYW5nZXMuZmllbGQpIHtcbiAgICAgIHRoaXMucmVzZXRSZWZzKGNoYW5nZXMuZmllbGQucHJldmlvdXNWYWx1ZSk7XG4gICAgICB0aGlzLnJlbmRlcigpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXR0YWNoQ29tcG9uZW50UmVmPFQgZXh0ZW5kcyBGaWVsZFR5cGU+KFxuICAgIHJlZjogQ29tcG9uZW50UmVmPFQ+IHwgRW1iZWRkZWRWaWV3UmVmPFQ+LFxuICAgIGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZ0NhY2hlLFxuICApIHtcbiAgICB0aGlzLmNvbXBvbmVudFJlZnMucHVzaChyZWYpO1xuICAgIGZpZWxkLl9jb21wb25lbnRSZWZzLnB1c2gocmVmKTtcbiAgICBpZiAocmVmIGluc3RhbmNlb2YgQ29tcG9uZW50UmVmKSB7XG4gICAgICBPYmplY3QuYXNzaWduKHJlZi5pbnN0YW5jZSwgeyBmaWVsZCB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHJlbmRlcigpIHtcbiAgICBpZiAoIXRoaXMuZmllbGQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyByZXF1aXJlIEZvcm1seSBidWlsZFxuICAgIGlmICghdGhpcy5maWVsZC5vcHRpb25zKSB7XG4gICAgICB0aGlzLmRldGVjdEZpZWxkQnVpbGQgPSB0cnVlO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5kZXRlY3RGaWVsZEJ1aWxkID0gZmFsc2U7XG4gICAgdGhpcy5ob3N0T2JzZXJ2ZXJzLmZvckVhY2goKGhvc3RPYnNlcnZlcikgPT4gaG9zdE9ic2VydmVyLnVuc3Vic2NyaWJlKCkpO1xuICAgIHRoaXMuaG9zdE9ic2VydmVycyA9IFtcbiAgICAgIG9ic2VydmU8Ym9vbGVhbj4odGhpcy5maWVsZCwgWydoaWRlJ10sICh7IGZpcnN0Q2hhbmdlLCBjdXJyZW50VmFsdWUgfSkgPT4ge1xuICAgICAgICBjb25zdCBjb250YWluZXJSZWYgPSB0aGlzLmNvbnRhaW5lclJlZjtcbiAgICAgICAgaWYgKHRoaXMuY29uZmlnLmV4dHJhcy5sYXp5UmVuZGVyID09PSBmYWxzZSkge1xuICAgICAgICAgIGZpcnN0Q2hhbmdlICYmIHRoaXMucmVuZGVyRmllbGQoY29udGFpbmVyUmVmLCB0aGlzLmZpZWxkKTtcbiAgICAgICAgICBpZiAoIWZpcnN0Q2hhbmdlIHx8IChmaXJzdENoYW5nZSAmJiBjdXJyZW50VmFsdWUpKSB7XG4gICAgICAgICAgICB0aGlzLmVsZW1lbnRSZWYgJiZcbiAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2Rpc3BsYXknLCBjdXJyZW50VmFsdWUgPyAnbm9uZScgOiAnJyk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGlmIChjdXJyZW50VmFsdWUpIHtcbiAgICAgICAgICAgIGNvbnRhaW5lclJlZi5jbGVhcigpO1xuICAgICAgICAgICAgaWYgKHRoaXMuZmllbGQuY2xhc3NOYW1lKSB7XG4gICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQXR0cmlidXRlKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnY2xhc3MnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJGaWVsZChjb250YWluZXJSZWYsIHRoaXMuZmllbGQpO1xuICAgICAgICAgICAgaWYgKHRoaXMuZmllbGQuY2xhc3NOYW1lKSB7XG4gICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnY2xhc3MnLCB0aGlzLmZpZWxkLmNsYXNzTmFtZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgIWZpcnN0Q2hhbmdlICYmIHRoaXMuZmllbGQub3B0aW9ucy5kZXRlY3RDaGFuZ2VzKHRoaXMuZmllbGQpO1xuICAgICAgfSksXG4gICAgICBvYnNlcnZlPHN0cmluZz4odGhpcy5maWVsZCwgWydjbGFzc05hbWUnXSwgKHsgZmlyc3RDaGFuZ2UsIGN1cnJlbnRWYWx1ZSB9KSA9PiB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAoIWZpcnN0Q2hhbmdlIHx8IChmaXJzdENoYW5nZSAmJiBjdXJyZW50VmFsdWUpKSAmJlxuICAgICAgICAgICghdGhpcy5jb25maWcuZXh0cmFzLmxhenlSZW5kZXIgfHwgdGhpcy5maWVsZC5oaWRlICE9PSB0cnVlKVxuICAgICAgICApIHtcbiAgICAgICAgICB0aGlzLmVsZW1lbnRSZWYgJiYgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjbGFzcycsIGN1cnJlbnRWYWx1ZSk7XG4gICAgICAgIH1cbiAgICAgIH0pLFxuICAgICAgLi4uWyd0b3VjaGVkJywgJ3ByaXN0aW5lJywgJ3N0YXR1cyddLm1hcCgocHJvcCkgPT5cbiAgICAgICAgb2JzZXJ2ZTxzdHJpbmc+KFxuICAgICAgICAgIHRoaXMuZmllbGQsXG4gICAgICAgICAgWydmb3JtQ29udHJvbCcsIHByb3BdLFxuICAgICAgICAgICh7IGZpcnN0Q2hhbmdlIH0pID0+ICFmaXJzdENoYW5nZSAmJiBtYXJrRmllbGRGb3JDaGVjayh0aGlzLmZpZWxkKSxcbiAgICAgICAgKSxcbiAgICAgICksXG4gICAgXTtcbiAgfVxuXG4gIHByaXZhdGUgcmVzZXRSZWZzKGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZ0NhY2hlKSB7XG4gICAgaWYgKGZpZWxkKSB7XG4gICAgICBpZiAoZmllbGQuX2NvbXBvbmVudFJlZnMpIHtcbiAgICAgICAgZmllbGQuX2NvbXBvbmVudFJlZnMgPSBmaWVsZC5fY29tcG9uZW50UmVmcy5maWx0ZXIoKHJlZikgPT4gdGhpcy5jb21wb25lbnRSZWZzLmluZGV4T2YocmVmKSA9PT0gLTEpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZGVmaW5lSGlkZGVuUHJvcCh0aGlzLmZpZWxkLCAnX2NvbXBvbmVudFJlZnMnLCBbXSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5jb21wb25lbnRSZWZzID0gW107XG4gIH1cblxuICBwcml2YXRlIGZpZWxkQ2hhbmdlcyhmaWVsZDogRm9ybWx5RmllbGRDb25maWdDYWNoZSkge1xuICAgIHRoaXMudmFsdWVDaGFuZ2VzVW5zdWJzY3JpYmUoKTtcbiAgICBpZiAoIWZpZWxkKSB7XG4gICAgICByZXR1cm4gKCkgPT4ge307XG4gICAgfVxuXG4gICAgY29uc3Qgc3Vic2NyaWJlcyA9IFtcbiAgICAgIG9ic2VydmVEZWVwKGZpZWxkLCBbJ3Byb3BzJ10sICgpID0+IGZpZWxkLm9wdGlvbnMuZGV0ZWN0Q2hhbmdlcyhmaWVsZCkpLFxuICAgICAgb2JzZXJ2ZURlZXAoZmllbGQsIFsnb3B0aW9ucycsICdmb3JtU3RhdGUnXSwgKCkgPT4gZmllbGQub3B0aW9ucy5kZXRlY3RDaGFuZ2VzKGZpZWxkKSksXG4gICAgXTtcblxuICAgIGZvciAoY29uc3QgcGF0aCBvZiBbWyd0ZW1wbGF0ZSddLCBbJ2ZpZWxkR3JvdXBDbGFzc05hbWUnXSwgWyd2YWxpZGF0aW9uJywgJ3Nob3cnXV0pIHtcbiAgICAgIGNvbnN0IGZpZWxkT2JzZXJ2ZXIgPSBvYnNlcnZlKFxuICAgICAgICBmaWVsZCxcbiAgICAgICAgcGF0aCxcbiAgICAgICAgKHsgZmlyc3RDaGFuZ2UgfSkgPT4gIWZpcnN0Q2hhbmdlICYmIGZpZWxkLm9wdGlvbnMuZGV0ZWN0Q2hhbmdlcyhmaWVsZCksXG4gICAgICApO1xuICAgICAgc3Vic2NyaWJlcy5wdXNoKCgpID0+IGZpZWxkT2JzZXJ2ZXIudW5zdWJzY3JpYmUoKSk7XG4gICAgfVxuXG4gICAgaWYgKGZpZWxkLmZvcm1Db250cm9sICYmICFmaWVsZC5maWVsZEdyb3VwKSB7XG4gICAgICBjb25zdCBjb250cm9sID0gZmllbGQuZm9ybUNvbnRyb2w7XG4gICAgICBsZXQgdmFsdWVDaGFuZ2VzID0gY29udHJvbC52YWx1ZUNoYW5nZXMucGlwZShcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKHgsIHkpID0+IHtcbiAgICAgICAgICBpZiAoeCAhPT0geSB8fCBBcnJheS5pc0FycmF5KHgpIHx8IGlzT2JqZWN0KHgpKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH0pLFxuICAgICAgKTtcblxuICAgICAgaWYgKGNvbnRyb2wudmFsdWUgIT09IGdldEZpZWxkVmFsdWUoZmllbGQpKSB7XG4gICAgICAgIHZhbHVlQ2hhbmdlcyA9IHZhbHVlQ2hhbmdlcy5waXBlKHN0YXJ0V2l0aChjb250cm9sLnZhbHVlKSk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHsgdXBkYXRlT24sIGRlYm91bmNlIH0gPSBmaWVsZC5tb2RlbE9wdGlvbnM7XG4gICAgICBpZiAoKCF1cGRhdGVPbiB8fCB1cGRhdGVPbiA9PT0gJ2NoYW5nZScpICYmIGRlYm91bmNlPy5kZWZhdWx0ID4gMCkge1xuICAgICAgICB2YWx1ZUNoYW5nZXMgPSBjb250cm9sLnZhbHVlQ2hhbmdlcy5waXBlKGRlYm91bmNlVGltZShkZWJvdW5jZS5kZWZhdWx0KSk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHN1YiA9IHZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICAgIC8vIHdvcmthcm91bmQgZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIvaXNzdWVzLzEzNzkyXG4gICAgICAgIGlmIChjb250cm9sLl9maWVsZHM/Lmxlbmd0aCA+IDEgJiYgY29udHJvbCBpbnN0YW5jZW9mIEZvcm1Db250cm9sKSB7XG4gICAgICAgICAgY29udHJvbC5wYXRjaFZhbHVlKHZhbHVlLCB7IGVtaXRFdmVudDogZmFsc2UsIG9ubHlTZWxmOiB0cnVlIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgZmllbGQucGFyc2Vycz8uZm9yRWFjaCgocGFyc2VyRm4pID0+ICh2YWx1ZSA9IHBhcnNlckZuKHZhbHVlKSkpO1xuICAgICAgICBpZiAodmFsdWUgIT09IGZpZWxkLmZvcm1Db250cm9sLnZhbHVlKSB7XG4gICAgICAgICAgZmllbGQuZm9ybUNvbnRyb2wuc2V0VmFsdWUodmFsdWUpO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChoYXNLZXkoZmllbGQpKSB7XG4gICAgICAgICAgYXNzaWduRmllbGRWYWx1ZShmaWVsZCwgdmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIGZpZWxkLm9wdGlvbnMuZmllbGRDaGFuZ2VzLm5leHQoeyB2YWx1ZSwgZmllbGQsIHR5cGU6ICd2YWx1ZUNoYW5nZXMnIH0pO1xuICAgICAgfSk7XG5cbiAgICAgIHN1YnNjcmliZXMucHVzaCgoKSA9PiBzdWIudW5zdWJzY3JpYmUoKSk7XG4gICAgfVxuXG4gICAgcmV0dXJuICgpID0+IHN1YnNjcmliZXMuZm9yRWFjaCgoc3Vic2NyaWJlKSA9PiBzdWJzY3JpYmUoKSk7XG4gIH1cbn1cbiJdfQ==
|
|
247
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWx5LmZpZWxkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2NvcmUvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm1seS5maWVsZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFDTCxnQkFBZ0IsRUFDaEIsU0FBUyxFQUNULFlBQVksRUFXWixRQUFRLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzdDLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsT0FBTyxFQUNQLFdBQVcsRUFDWCxhQUFhLEVBQ2IsZ0JBQWdCLEVBQ2hCLFFBQVEsRUFDUixpQkFBaUIsRUFDakIsTUFBTSxHQUVQLE1BQU0sVUFBVSxDQUFDO0FBR2xCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEMsT0FBTyxFQUFFLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQUcvRTs7R0FFRztBQUtILE1BQU0sT0FBTyxXQUFXO0lBMkJ0QixZQUNVLE1BQW9CLEVBQ3BCLFFBQW1CLEVBQ25CLFdBQXVCLEVBQ3ZCLGdCQUFrQyxFQUN0QixJQUEwQjtRQUp0QyxXQUFNLEdBQU4sTUFBTSxDQUFjO1FBQ3BCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDdkIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUN0QixTQUFJLEdBQUosSUFBSSxDQUFzQjtRQTNCeEMsa0JBQWEsR0FBcUIsRUFBRSxDQUFDO1FBQ3JDLGtCQUFhLEdBQTZELEVBQUUsQ0FBQztRQUM3RSxtQkFBYyxHQUFlLEVBQUUsQ0FBQztRQUNoQyxxQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFpQmpDLDRCQUF1QixHQUFHLEdBQUcsRUFBRSxHQUFF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LFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDbEMsT0FBTztpQkFDUjtnQkFFRCxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRTtvQkFDakIsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO2lCQUNoQztnQkFDRCxLQUFLLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsQ0FBQyxDQUFDO1lBQzFFLENBQUMsQ0FBQyxDQUFDO1lBRUgsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztTQUMxQztRQUVELE9BQU8sR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUM5RCxDQUFDOzt5R0F2UlUsV0FBVzs2RkFBWCxXQUFXLDBLQUdVLGdCQUFnQixnRUFMdEMsd0NBQXdDOzRGQUV2QyxXQUFXO2tCQUp2QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxjQUFjO29CQUN4QixRQUFRLEVBQUUsd0NBQXdDO2lCQUNuRDs7MEJBaUNJLFFBQVE7NENBOUJGLEtBQUs7c0JBQWIsS0FBSztnQkFDNEQsZ0JBQWdCO3NCQUFqRixTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgVmlld0NvbnRhaW5lclJlZixcbiAgVmlld0NoaWxkLFxuICBDb21wb25lbnRSZWYsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIERvQ2hlY2ssXG4gIE9uSW5pdCxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIEFmdGVyQ29udGVudEluaXQsXG4gIEFmdGVyVmlld0luaXQsXG4gIFJlbmRlcmVyMixcbiAgRWxlbWVudFJlZixcbiAgRW1iZWRkZWRWaWV3UmVmLFxuICBPcHRpb25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZvcm1seUNvbmZpZyB9IGZyb20gJy4uL3NlcnZpY2VzL2Zvcm1seS5jb25maWcnO1xuaW1wb3J0IHsgRm9ybWx5RmllbGRDb25maWcsIEZvcm1seUZpZWxkQ29uZmlnQ2FjaGUsIEZvcm1seUhvb2tDb25maWcgfSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IHtcbiAgZGVmaW5lSGlkZGVuUHJvcCxcbiAgb2JzZXJ2ZSxcbiAgb2JzZXJ2ZURlZXAsXG4gIGdldEZpZWxkVmFsdWUsXG4gIGFzc2lnbkZpZWxkVmFsdWUsXG4gIGlzT2JqZWN0LFxuICBtYXJrRmllbGRGb3JDaGVjayxcbiAgaGFzS2V5LFxuICBJT2JzZXJ2ZXIsXG59IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IEZpZWxkV3JhcHBlciB9IGZyb20gJy4uL3RlbXBsYXRlcy9maWVsZC53cmFwcGVyJztcbmltcG9ydCB7IEZpZWxkVHlwZSB9IGZyb20gJy4uL3RlbXBsYXRlcy9maWVsZC50eXBlJztcbmltcG9ydCB7IGlzT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgc3RhcnRXaXRoIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRm9ybWx5RmllbGRUZW1wbGF0ZXMgfSBmcm9tICcuL2Zvcm1seS50ZW1wbGF0ZSc7XG5cbi8qKlxuICogVGhlIGA8Zm9ybWx5LWZpZWxkPmAgY29tcG9uZW50IGlzIHVzZWQgdG8gcmVuZGVyIHRoZSBVSSB3aWRnZXQgKGxheW91dCArIHR5cGUpIG9mIGEgZ2l2ZW4gYGZpZWxkYC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZm9ybWx5LWZpZWxkJyxcbiAgdGVtcGxhdGU6ICc8bmctdGVtcGxhdGUgI2NvbnRhaW5lcj48L25nLXRlbXBsYXRlPicsXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1seUZpZWxkIGltcGxlbWVudHMgRG9DaGVjaywgT25Jbml0LCBPbkNoYW5nZXMsIEFmdGVyQ29udGVudEluaXQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIC8qKiBUaGUgZmllbGQgY29uZmlnLiAqL1xuICBASW5wdXQoKSBmaWVsZDogRm9ybWx5RmllbGRDb25maWc7XG4gIEBWaWV3Q2hpbGQoJ2NvbnRhaW5lcicsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiwgc3RhdGljOiB0cnVlIH0pIHZpZXdDb250YWluZXJSZWYhOiBWaWV3Q29udGFpbmVyUmVmO1xuXG4gIHByaXZhdGUgaG9zdE9ic2VydmVyczogSU9ic2VydmVyPGFueT5bXSA9IFtdO1xuICBwcml2YXRlIGNvbXBvbmVudFJlZnM6IChDb21wb25lbnRSZWY8RmllbGRUeXBlPiB8IEVtYmVkZGVkVmlld1JlZjxGaWVsZFR5cGU+KVtdID0gW107XG4gIHByaXZhdGUgaG9va3NPYnNlcnZlcnM6IEZ1bmN0aW9uW10gPSBbXTtcbiAgcHJpdmF0ZSBkZXRlY3RGaWVsZEJ1aWxkID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBnZXQgY29udGFpbmVyUmVmKCkge1xuICAgIHJldHVybiB0aGlzLmNvbmZpZy5leHRyYXMucmVuZGVyRm9ybWx5RmllbGRFbGVtZW50ID8gdGhpcy52aWV3Q29udGFpbmVyUmVmIDogdGhpcy5ob3N0Q29udGFpbmVyUmVmO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgZWxlbWVudFJlZigpIHtcbiAgICBpZiAodGhpcy5jb25maWcuZXh0cmFzLnJlbmRlckZvcm1seUZpZWxkRWxlbWVudCkge1xuICAgICAgcmV0dXJuIHRoaXMuX2VsZW1lbnRSZWY7XG4gICAgfVxuICAgIGlmICh0aGlzLmNvbXBvbmVudFJlZnM/LlswXSBpbnN0YW5jZW9mIENvbXBvbmVudFJlZikge1xuICAgICAgcmV0dXJuIHRoaXMuY29tcG9uZW50UmVmc1swXS5sb2NhdGlvbjtcbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHZhbHVlQ2hhbmdlc1Vuc3Vic2NyaWJlID0gKCkgPT4ge307XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjb25maWc6IEZvcm1seUNvbmZpZyxcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIGhvc3RDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBmb3JtOiBGb3JtbHlGaWVsZFRlbXBsYXRlcyxcbiAgKSB7fVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICB0aGlzLnRyaWdnZXJIb29rKCdhZnRlckNvbnRlbnRJbml0Jyk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy50cmlnZ2VySG9vaygnYWZ0ZXJWaWV3SW5pdCcpO1xuICB9XG5cbiAgbmdEb0NoZWNrKCkge1xuICAgIGlmICh0aGlzLmRldGVjdEZpZWxkQnVpbGQgJiYgdGhpcy5maWVsZCAmJiB0aGlzLmZpZWxkLm9wdGlvbnMpIHtcbiAgICAgIHRoaXMucmVuZGVyKCk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy50cmlnZ2VySG9vaygnb25Jbml0Jyk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgdGhpcy50cmlnZ2VySG9vaygnb25DaGFuZ2VzJywgY2hhbmdlcyk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnJlc2V0UmVmcyh0aGlzLmZpZWxkKTtcbiAgICB0aGlzLmhvc3RPYnNlcnZlcnMuZm9yRWFjaCgoaG9zdE9ic2VydmVyKSA9PiBob3N0T2JzZXJ2ZXIudW5zdWJzY3JpYmUoKSk7XG4gICAgdGhpcy5ob29rc09ic2VydmVycy5mb3JFYWNoKCh1bnN1YnNjcmliZSkgPT4gdW5zdWJzY3JpYmUoKSk7XG4gICAgdGhpcy52YWx1ZUNoYW5nZXNVbnN1YnNjcmliZSgpO1xuICAgIHRoaXMudHJpZ2dlckhvb2soJ29uRGVzdHJveScpO1xuICB9XG5cbiAgcHJpdmF0ZSByZW5kZXJGaWVsZChcbiAgICBjb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgZjogRm9ybWx5RmllbGRDb25maWdDYWNoZSxcbiAgICB3cmFwcGVyczogRm9ybWx5RmllbGRDb25maWdbJ3dyYXBwZXJzJ10gPSBbXSxcbiAgKSB7XG4gICAgaWYgKHRoaXMuY29udGFpbmVyUmVmID09PSBjb250YWluZXJSZWYpIHtcbiAgICAgIHRoaXMucmVzZXRSZWZzKHRoaXMuZmllbGQpO1xuICAgICAgdGhpcy5jb250YWluZXJSZWYuY2xlYXIoKTtcbiAgICAgIHdyYXBwZXJzID0gdGhpcy5maWVsZD8ud3JhcHBlcnM7XG4gICAgfVxuXG4gICAgaWYgKHdyYXBwZXJzPy5sZW5ndGggPiAwKSB7XG4gICAgICBjb25zdCBbd3JhcHBlciwgLi4ud3BzXSA9IHdyYXBwZXJzO1xuICAgICAgY29uc3QgeyBjb21wb25lbnQgfSA9IHRoaXMuY29uZmlnLmdldFdyYXBwZXIod3JhcHBlcik7XG5cbiAgICAgIGNvbnN0IHJlZiA9IGNvbnRhaW5lclJlZi5jcmVhdGVDb21wb25lbnQ8RmllbGRXcmFwcGVyPihjb21wb25lbnQpO1xuICAgICAgdGhpcy5hdHRhY2hDb21wb25lbnRSZWYocmVmLCBmKTtcbiAgICAgIG9ic2VydmU8Vmlld0NvbnRhaW5lclJlZiAmIHsgX2xDb250YWluZXI6IGFueSB9PihcbiAgICAgICAgcmVmLmluc3RhbmNlLFxuICAgICAgICBbJ2ZpZWxkQ29tcG9uZW50J10sXG4gICAgICAgICh7IGN1cnJlbnRWYWx1ZSwgcHJldmlvdXNWYWx1ZSwgZmlyc3RDaGFuZ2UgfSkgPT4ge1xuICAgICAgICAgIGlmIChjdXJyZW50VmFsdWUpIHtcbiAgICAgICAgICAgIGlmIChwcmV2aW91c1ZhbHVlICYmIHByZXZpb3VzVmFsdWUuX2xDb250YWluZXIgPT09IGN1cnJlbnRWYWx1ZS5fbENvbnRhaW5lcikge1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IHZpZXdSZWYgPSBwcmV2aW91c1ZhbHVlID8gcHJldmlvdXNWYWx1ZS5kZXRhY2goKSA6IG51bGw7XG4gICAgICAgICAgICBpZiAodmlld1JlZiAmJiAhdmlld1JlZi5kZXN0cm95ZWQpIHtcbiAgICAgICAgICAgICAgY3VycmVudFZhbHVlLmluc2VydCh2aWV3UmVmKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHRoaXMucmVuZGVyRmllbGQoY3VycmVudFZhbHVlLCBmLCB3cHMpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAhZmlyc3RDaGFuZ2UgJiYgcmVmLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICApO1xuICAgIH0gZWxzZSBpZiAoZj8udHlwZSkge1xuICAgICAgY29uc3QgaW5saW5lVHlwZSA9IHRoaXMuZm9ybT8udGVtcGxhdGVzPy5maW5kKChyZWYpID0+IHJlZi5uYW1lID09PSBmLnR5cGUpO1xuICAgICAgbGV0IHJlZjogQ29tcG9uZW50UmVmPGFueT4gfCBFbWJlZGRlZFZpZXdSZWY8YW55PjtcbiAgICAgIGlmIChpbmxpbmVUeXBlKSB7XG4gICAgICAgIHJlZiA9IGNvbnRhaW5lclJlZi5jcmVhdGVFbWJlZGRlZFZpZXcoaW5saW5lVHlwZS5yZWYsIHsgJGltcGxpY2l0OiBmIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgeyBjb21wb25lbnQgfSA9IHRoaXMuY29uZmlnLmdldFR5cGUoZi50eXBlLCB0cnVlKTtcbiAgICAgICAgcmVmID0gY29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudDxGaWVsZFdyYXBwZXI+KGNvbXBvbmVudCBhcyBhbnkpO1xuICAgICAgfVxuICAgICAgdGhpcy5hdHRhY2hDb21wb25lbnRSZWYocmVmLCBmKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHRyaWdnZXJIb29rKG5hbWU6IGtleW9mIEZvcm1seUhvb2tDb25maWcsIGNoYW5nZXM/OiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKG5hbWUgPT09ICdvbkluaXQnIHx8IChuYW1lID09PSAnb25DaGFuZ2VzJyAmJiBjaGFuZ2VzLmZpZWxkICYmICFjaGFuZ2VzLmZpZWxkLmZpcnN0Q2hhbmdlKSkge1xuICAgICAgdGhpcy52YWx1ZUNoYW5nZXNVbnN1YnNjcmliZSA9IHRoaXMuZmllbGRDaGFuZ2VzKHRoaXMuZmllbGQpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmZpZWxkPy5ob29rcz8uW25hbWVdKSB7XG4gICAgICBpZiAoIWNoYW5nZXMgfHwgY2hhbmdlcy5maWVsZCkge1xuICAgICAgICBjb25zdCByID0gdGhpcy5maWVsZC5ob29rc1tuYW1lXSh0aGlzLmZpZWxkKTtcbiAgICAgICAgaWYgKGlzT2JzZXJ2YWJsZShyKSAmJiBbJ29uSW5pdCcsICdhZnRlckNvbnRlbnRJbml0JywgJ2FmdGVyVmlld0luaXQnXS5pbmRleE9mKG5hbWUpICE9PSAtMSkge1xuICAgICAgICAgIGNvbnN0IHN1YiA9IHIuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgdGhpcy5ob29rc09ic2VydmVycy5wdXNoKCgpID0+IHN1Yi51bnN1YnNjcmliZSgpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChuYW1lID09PSAnb25DaGFuZ2VzJyAmJiBjaGFuZ2VzLmZpZWxkKSB7XG4gICAgICB0aGlzLnJlc2V0UmVmcyhjaGFuZ2VzLmZpZWxkLnByZXZpb3VzVmFsdWUpO1xuICAgICAgdGhpcy5yZW5kZXIoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGF0dGFjaENvbXBvbmVudFJlZjxUIGV4dGVuZHMgRmllbGRUeXBlPihcbiAgICByZWY6IENvbXBvbmVudFJlZjxUPiB8IEVtYmVkZGVkVmlld1JlZjxUPixcbiAgICBmaWVsZDogRm9ybWx5RmllbGRDb25maWdDYWNoZSxcbiAgKSB7XG4gICAgdGhpcy5jb21wb25lbnRSZWZzLnB1c2gocmVmKTtcbiAgICBmaWVsZC5fY29tcG9uZW50UmVmcy5wdXNoKHJlZik7XG4gICAgaWYgKHJlZiBpbnN0YW5jZW9mIENvbXBvbmVudFJlZikge1xuICAgICAgT2JqZWN0LmFzc2lnbihyZWYuaW5zdGFuY2UsIHsgZmllbGQgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSByZW5kZXIoKSB7XG4gICAgaWYgKCF0aGlzLmZpZWxkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gcmVxdWlyZSBGb3JtbHkgYnVpbGRcbiAgICBpZiAoIXRoaXMuZmllbGQub3B0aW9ucykge1xuICAgICAgdGhpcy5kZXRlY3RGaWVsZEJ1aWxkID0gdHJ1ZTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuZGV0ZWN0RmllbGRCdWlsZCA9IGZhbHNlO1xuICAgIHRoaXMuaG9zdE9ic2VydmVycy5mb3JFYWNoKChob3N0T2JzZXJ2ZXIpID0+IGhvc3RPYnNlcnZlci51bnN1YnNjcmliZSgpKTtcbiAgICB0aGlzLmhvc3RPYnNlcnZlcnMgPSBbXG4gICAgICBvYnNlcnZlPGJvb2xlYW4+KHRoaXMuZmllbGQsIFsnaGlkZSddLCAoeyBmaXJzdENoYW5nZSwgY3VycmVudFZhbHVlIH0pID0+IHtcbiAgICAgICAgY29uc3QgY29udGFpbmVyUmVmID0gdGhpcy5jb250YWluZXJSZWY7XG4gICAgICAgIGlmICh0aGlzLmNvbmZpZy5leHRyYXMubGF6eVJlbmRlciA9PT0gZmFsc2UpIHtcbiAgICAgICAgICBmaXJzdENoYW5nZSAmJiB0aGlzLnJlbmRlckZpZWxkKGNvbnRhaW5lclJlZiwgdGhpcy5maWVsZCk7XG4gICAgICAgICAgaWYgKCFmaXJzdENoYW5nZSB8fCAoZmlyc3RDaGFuZ2UgJiYgY3VycmVudFZhbHVlKSkge1xuICAgICAgICAgICAgdGhpcy5lbGVtZW50UmVmICYmXG4gICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdkaXNwbGF5JywgY3VycmVudFZhbHVlID8gJ25vbmUnIDogJycpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpZiAoY3VycmVudFZhbHVlKSB7XG4gICAgICAgICAgICBjb250YWluZXJSZWYuY2xlYXIoKTtcbiAgICAgICAgICAgIGlmICh0aGlzLmZpZWxkLmNsYXNzTmFtZSkge1xuICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUF0dHJpYnV0ZSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2NsYXNzJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyRmllbGQoY29udGFpbmVyUmVmLCB0aGlzLmZpZWxkKTtcbiAgICAgICAgICAgIGlmICh0aGlzLmZpZWxkLmNsYXNzTmFtZSkge1xuICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2NsYXNzJywgdGhpcy5maWVsZC5jbGFzc05hbWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICFmaXJzdENoYW5nZSAmJiB0aGlzLmZpZWxkLm9wdGlvbnMuZGV0ZWN0Q2hhbmdlcyh0aGlzLmZpZWxkKTtcbiAgICAgIH0pLFxuICAgICAgb2JzZXJ2ZTxzdHJpbmc+KHRoaXMuZmllbGQsIFsnY2xhc3NOYW1lJ10sICh7IGZpcnN0Q2hhbmdlLCBjdXJyZW50VmFsdWUgfSkgPT4ge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgKCFmaXJzdENoYW5nZSB8fCAoZmlyc3RDaGFuZ2UgJiYgY3VycmVudFZhbHVlKSkgJiZcbiAgICAgICAgICAoIXRoaXMuY29uZmlnLmV4dHJhcy5sYXp5UmVuZGVyIHx8IHRoaXMuZmllbGQuaGlkZSAhPT0gdHJ1ZSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgdGhpcy5lbGVtZW50UmVmICYmIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnY2xhc3MnLCBjdXJyZW50VmFsdWUpO1xuICAgICAgICB9XG4gICAgICB9KSxcbiAgICAgIC4uLlsndG91Y2hlZCcsICdwcmlzdGluZScsICdzdGF0dXMnXS5tYXAoKHByb3ApID0+XG4gICAgICAgIG9ic2VydmU8c3RyaW5nPihcbiAgICAgICAgICB0aGlzLmZpZWxkLFxuICAgICAgICAgIFsnZm9ybUNvbnRyb2wnLCBwcm9wXSxcbiAgICAgICAgICAoeyBmaXJzdENoYW5nZSB9KSA9PiAhZmlyc3RDaGFuZ2UgJiYgbWFya0ZpZWxkRm9yQ2hlY2sodGhpcy5maWVsZCksXG4gICAgICAgICksXG4gICAgICApLFxuICAgIF07XG4gIH1cblxuICBwcml2YXRlIHJlc2V0UmVmcyhmaWVsZDogRm9ybWx5RmllbGRDb25maWdDYWNoZSkge1xuICAgIGlmIChmaWVsZCkge1xuICAgICAgaWYgKGZpZWxkLl9jb21wb25lbnRSZWZzKSB7XG4gICAgICAgIGZpZWxkLl9jb21wb25lbnRSZWZzID0gZmllbGQuX2NvbXBvbmVudFJlZnMuZmlsdGVyKChyZWYpID0+IHRoaXMuY29tcG9uZW50UmVmcy5pbmRleE9mKHJlZikgPT09IC0xKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGRlZmluZUhpZGRlblByb3AodGhpcy5maWVsZCwgJ19jb21wb25lbnRSZWZzJywgW10pO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuY29tcG9uZW50UmVmcyA9IFtdO1xuICB9XG5cbiAgcHJpdmF0ZSBmaWVsZENoYW5nZXMoZmllbGQ6IEZvcm1seUZpZWxkQ29uZmlnQ2FjaGUpIHtcbiAgICB0aGlzLnZhbHVlQ2hhbmdlc1Vuc3Vic2NyaWJlKCk7XG4gICAgaWYgKCFmaWVsZCkge1xuICAgICAgcmV0dXJuICgpID0+IHt9O1xuICAgIH1cblxuICAgIGNvbnN0IHN1YnNjcmliZXMgPSBbXG4gICAgICBvYnNlcnZlRGVlcChmaWVsZCwgWydwcm9wcyddLCAoKSA9PiBmaWVsZC5vcHRpb25zLmRldGVjdENoYW5nZXMoZmllbGQpKSxcbiAgICAgIG9ic2VydmVEZWVwKGZpZWxkLm9wdGlvbnMsIFsnZm9ybVN0YXRlJ10sICgpID0+IGZpZWxkLm9wdGlvbnMuZGV0ZWN0Q2hhbmdlcyhmaWVsZCkpLFxuICAgIF07XG5cbiAgICBmb3IgKGNvbnN0IHBhdGggb2YgW1sndGVtcGxhdGUnXSwgWydmaWVsZEdyb3VwQ2xhc3NOYW1lJ10sIFsndmFsaWRhdGlvbicsICdzaG93J11dKSB7XG4gICAgICBjb25zdCBmaWVsZE9ic2VydmVyID0gb2JzZXJ2ZShcbiAgICAgICAgZmllbGQsXG4gICAgICAgIHBhdGgsXG4gICAgICAgICh7IGZpcnN0Q2hhbmdlIH0pID0+ICFmaXJzdENoYW5nZSAmJiBmaWVsZC5vcHRpb25zLmRldGVjdENoYW5nZXMoZmllbGQpLFxuICAgICAgKTtcbiAgICAgIHN1YnNjcmliZXMucHVzaCgoKSA9PiBmaWVsZE9ic2VydmVyLnVuc3Vic2NyaWJlKCkpO1xuICAgIH1cblxuICAgIGlmIChmaWVsZC5mb3JtQ29udHJvbCAmJiAhZmllbGQuZmllbGRHcm91cCkge1xuICAgICAgY29uc3QgY29udHJvbCA9IGZpZWxkLmZvcm1Db250cm9sO1xuICAgICAgbGV0IHZhbHVlQ2hhbmdlcyA9IGNvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCh4LCB5KSA9PiB7XG4gICAgICAgICAgaWYgKHggIT09IHkgfHwgQXJyYXkuaXNBcnJheSh4KSB8fCBpc09iamVjdCh4KSkge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9KSxcbiAgICAgICk7XG5cbiAgICAgIGlmIChjb250cm9sLnZhbHVlICE9PSBnZXRGaWVsZFZhbHVlKGZpZWxkKSkge1xuICAgICAgICB2YWx1ZUNoYW5nZXMgPSB2YWx1ZUNoYW5nZXMucGlwZShzdGFydFdpdGgoY29udHJvbC52YWx1ZSkpO1xuICAgICAgfVxuXG4gICAgICBjb25zdCB7IHVwZGF0ZU9uLCBkZWJvdW5jZSB9ID0gZmllbGQubW9kZWxPcHRpb25zO1xuICAgICAgaWYgKCghdXBkYXRlT24gfHwgdXBkYXRlT24gPT09ICdjaGFuZ2UnKSAmJiBkZWJvdW5jZT8uZGVmYXVsdCA+IDApIHtcbiAgICAgICAgdmFsdWVDaGFuZ2VzID0gY29udHJvbC52YWx1ZUNoYW5nZXMucGlwZShkZWJvdW5jZVRpbWUoZGVib3VuY2UuZGVmYXVsdCkpO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBzdWIgPSB2YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuICAgICAgICAvLyB3b3JrYXJvdW5kIGZvciBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy8xMzc5MlxuICAgICAgICBpZiAoY29udHJvbC5fZmllbGRzPy5sZW5ndGggPiAxICYmIGNvbnRyb2wgaW5zdGFuY2VvZiBGb3JtQ29udHJvbCkge1xuICAgICAgICAgIGNvbnRyb2wucGF0Y2hWYWx1ZSh2YWx1ZSwgeyBlbWl0RXZlbnQ6IGZhbHNlLCBvbmx5U2VsZjogdHJ1ZSB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZpZWxkLnBhcnNlcnM/LmZvckVhY2goKHBhcnNlckZuKSA9PiAodmFsdWUgPSBwYXJzZXJGbih2YWx1ZSkpKTtcbiAgICAgICAgaWYgKHZhbHVlICE9PSBmaWVsZC5mb3JtQ29udHJvbC52YWx1ZSkge1xuICAgICAgICAgIGZpZWxkLmZvcm1Db250cm9sLnNldFZhbHVlKHZhbHVlKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaGFzS2V5KGZpZWxkKSkge1xuICAgICAgICAgIGFzc2lnbkZpZWxkVmFsdWUoZmllbGQsIHZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgICBmaWVsZC5vcHRpb25zLmZpZWxkQ2hhbmdlcy5uZXh0KHsgdmFsdWUsIGZpZWxkLCB0eXBlOiAndmFsdWVDaGFuZ2VzJyB9KTtcbiAgICAgIH0pO1xuXG4gICAgICBzdWJzY3JpYmVzLnB1c2goKCkgPT4gc3ViLnVuc3Vic2NyaWJlKCkpO1xuICAgIH1cblxuICAgIHJldHVybiAoKSA9PiBzdWJzY3JpYmVzLmZvckVhY2goKHN1YnNjcmliZSkgPT4gc3Vic2NyaWJlKCkpO1xuICB9XG59XG4iXX0=
|
|
@@ -9,35 +9,45 @@ import * as i1 from "../services/formly.builder";
|
|
|
9
9
|
import * as i2 from "../services/formly.config";
|
|
10
10
|
import * as i3 from "./formly.template";
|
|
11
11
|
import * as i4 from "./formly.field";
|
|
12
|
+
/**
|
|
13
|
+
* The `<form-form>` component is the main container of the form,
|
|
14
|
+
* which takes care of managing the form state
|
|
15
|
+
* and delegates the rendering of each field to `<formly-field>` component.
|
|
16
|
+
*/
|
|
12
17
|
export class FormlyForm {
|
|
13
18
|
constructor(builder, config, ngZone, fieldTemplates) {
|
|
14
19
|
this.builder = builder;
|
|
15
20
|
this.config = config;
|
|
16
21
|
this.ngZone = ngZone;
|
|
17
22
|
this.fieldTemplates = fieldTemplates;
|
|
23
|
+
/** Event that is emitted when the model value is changed */
|
|
18
24
|
this.modelChange = new EventEmitter();
|
|
19
25
|
this.field = { type: 'formly-group' };
|
|
20
26
|
this._modelChangeValue = {};
|
|
21
27
|
this.valueChangesUnsubscribe = () => { };
|
|
22
28
|
}
|
|
29
|
+
/** The form instance which allow to track model value and validation status. */
|
|
23
30
|
set form(form) {
|
|
24
31
|
this.field.form = form;
|
|
25
32
|
}
|
|
26
33
|
get form() {
|
|
27
34
|
return this.field.form;
|
|
28
35
|
}
|
|
36
|
+
/** The model to be represented by the form. */
|
|
29
37
|
set model(model) {
|
|
30
38
|
this.setField({ model });
|
|
31
39
|
}
|
|
32
40
|
get model() {
|
|
33
41
|
return this.field.model;
|
|
34
42
|
}
|
|
43
|
+
/** The field configurations for building the form. */
|
|
35
44
|
set fields(fieldGroup) {
|
|
36
45
|
this.setField({ fieldGroup });
|
|
37
46
|
}
|
|
38
47
|
get fields() {
|
|
39
48
|
return this.field.fieldGroup;
|
|
40
49
|
}
|
|
50
|
+
/** Options for the form. */
|
|
41
51
|
set options(options) {
|
|
42
52
|
this.setField({ options });
|
|
43
53
|
}
|
|
@@ -113,4 +123,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
113
123
|
type: ContentChildren,
|
|
114
124
|
args: [FormlyTemplate]
|
|
115
125
|
}] } });
|
|
116
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWx5LmZvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY29yZS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybWx5LmZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCx1QkFBdUIsRUFHdkIsS0FBSyxFQUVMLFlBQVksRUFDWixNQUFNLEVBR04sZUFBZSxHQUVoQixNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUUvRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDOUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7Ozs7QUFRekUsTUFBTSxPQUFPLFVBQVU7SUEwQ3JCLFlBQ1UsT0FBMEIsRUFDMUIsTUFBb0IsRUFDcEIsTUFBYyxFQUNkLGNBQW9DO1FBSHBDLFlBQU8sR0FBUCxPQUFPLENBQW1CO1FBQzFCLFdBQU0sR0FBTixNQUFNLENBQWM7UUFDcEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLG1CQUFjLEdBQWQsY0FBYyxDQUFzQjtRQWJwQyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFLaEQsVUFBSyxHQUEyQixFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsQ0FBQztRQUNqRCxzQkFBaUIsR0FBUSxFQUFFLENBQUM7UUFDNUIsNEJBQXVCLEdBQUcsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO0lBT3hDLENBQUM7SUE5Q0osSUFDSSxJQUFJLENBQUMsSUFBMkI7UUFDbEMsSUFBSSxDQUFDLEtBQUss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Z0JBQzhCLFNBQVM7c0JBQTdDLGVBQWU7dUJBQUMsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIERvQ2hlY2ssXG4gIE9uQ2hhbmdlcyxcbiAgSW5wdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIEV2ZW50RW1pdHRlcixcbiAgT3V0cHV0LFxuICBPbkRlc3Ryb3ksXG4gIE5nWm9uZSxcbiAgQ29udGVudENoaWxkcmVuLFxuICBRdWVyeUxpc3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwLCBGb3JtQXJyYXkgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGb3JtbHlGaWVsZENvbmZpZywgRm9ybWx5Rm9ybU9wdGlvbnMsIEZvcm1seUZpZWxkQ29uZmlnQ2FjaGUgfSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IHsgRm9ybWx5Rm9ybUJ1aWxkZXIgfSBmcm9tICcuLi9zZXJ2aWNlcy9mb3JtbHkuYnVpbGRlcic7XG5pbXBvcnQgeyBGb3JtbHlDb25maWcgfSBmcm9tICcuLi9zZXJ2aWNlcy9mb3JtbHkuY29uZmlnJztcbmltcG9ydCB7IGNsb25lLCBoYXNLZXkgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBzd2l0Y2hNYXAsIGZpbHRlciwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IGNsZWFyQ29udHJvbCB9IGZyb20gJy4uL2V4dGVuc2lvbnMvZmllbGQtZm9ybS91dGlscyc7XG5pbXBvcnQgeyBGb3JtbHlGaWVsZFRlbXBsYXRlcywgRm9ybWx5VGVtcGxhdGUgfSBmcm9tICcuL2Zvcm1seS50ZW1wbGF0ZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Zvcm1seS1mb3JtJyxcbiAgdGVtcGxhdGU6ICc8Zm9ybWx5LWZpZWxkIFtmaWVsZF09XCJmaWVsZFwiPjwvZm9ybWx5LWZpZWxkPicsXG4gIHByb3ZpZGVyczogW0Zvcm1seUZvcm1CdWlsZGVyLCBGb3JtbHlGaWVsZFRlbXBsYXRlc10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBGb3JtbHlGb3JtIGltcGxlbWVudHMgRG9DaGVjaywgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKVxuICBzZXQgZm9ybShmb3JtOiBGb3JtR3JvdXAgfCBGb3JtQXJyYXkpIHtcbiAgICB0aGlzLmZpZWxkLmZvcm0gPSBmb3JtO1xuICB9XG4gIGdldCBmb3JtKCkge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLmZvcm0gYXMgRm9ybUdyb3VwIHwgRm9ybUFycmF5O1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IG1vZGVsKG1vZGVsOiBhbnkpIHtcbiAgICB0aGlzLnNldEZpZWxkKHsgbW9kZWwgfSk7XG4gIH1cbiAgZ2V0IG1vZGVsKCkge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLm1vZGVsO1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IGZpZWxkcyhmaWVsZEdyb3VwOiBGb3JtbHlGaWVsZENvbmZpZ1tdKSB7XG4gICAgdGhpcy5zZXRGaWVsZCh7IGZpZWxkR3JvdXAgfSk7XG4gIH1cbiAgZ2V0IGZpZWxkcygpIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZC5maWVsZEdyb3VwO1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IG9wdGlvbnMob3B0aW9uczogRm9ybWx5Rm9ybU9wdGlvbnMpIHtcbiAgICB0aGlzLnNldEZpZWxkKHsgb3B0aW9ucyB9KTtcbiAgfVxuICBnZXQgb3B0aW9ucygpIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZC5vcHRpb25zO1xuICB9XG5cbiAgQE91dHB1dCgpIG1vZGVsQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBDb250ZW50Q2hpbGRyZW4oRm9ybWx5VGVtcGxhdGUpIHNldCB0ZW1wbGF0ZXModGVtcGxhdGVzOiBRdWVyeUxpc3Q8Rm9ybWx5VGVtcGxhdGU+KSB7XG4gICAgdGhpcy5maWVsZFRlbXBsYXRlcy50ZW1wbGF0ZXMgPSB0ZW1wbGF0ZXM7XG4gIH1cblxuICBmaWVsZDogRm9ybWx5RmllbGRDb25maWdDYWNoZSA9IHsgdHlwZTogJ2Zvcm1seS1ncm91cCcgfTtcbiAgcHJpdmF0ZSBfbW9kZWxDaGFuZ2VWYWx1ZTogYW55ID0ge307XG4gIHByaXZhdGUgdmFsdWVDaGFuZ2VzVW5zdWJzY3JpYmUgPSAoKSA9PiB7fTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGJ1aWxkZXI6IEZvcm1seUZvcm1CdWlsZGVyLFxuICAgIHByaXZhdGUgY29uZmlnOiBGb3JtbHlDb25maWcsXG4gICAgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSxcbiAgICBwcml2YXRlIGZpZWxkVGVtcGxhdGVzOiBGb3JtbHlGaWVsZFRlbXBsYXRlcyxcbiAgKSB7fVxuXG4gIG5nRG9DaGVjaygpIHtcbiAgICBpZiAodGhpcy5jb25maWcuZXh0cmFzLmNoZWNrRXhwcmVzc2lvbk9uID09PSAnY2hhbmdlRGV0ZWN0aW9uQ2hlY2snKSB7XG4gICAgICB0aGlzLmNoZWNrRXhwcmVzc2lvbkNoYW5nZSgpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlcy5maWVsZHMgJiYgdGhpcy5mb3JtKSB7XG4gICAgICBjbGVhckNvbnRyb2wodGhpcy5mb3JtKTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlcy5maWVsZHMgfHwgY2hhbmdlcy5mb3JtIHx8IChjaGFuZ2VzLm1vZGVsICYmIHRoaXMuX21vZGVsQ2hhbmdlVmFsdWUgIT09IGNoYW5nZXMubW9kZWwuY3VycmVudFZhbHVlKSkge1xuICAgICAgdGhpcy52YWx1ZUNoYW5nZXNVbnN1YnNjcmliZSgpO1xuICAgICAgdGhpcy5idWlsZGVyLmJ1aWxkKHRoaXMuZmllbGQpO1xuICAgICAgdGhpcy52YWx1ZUNoYW5nZXNVbnN1YnNjcmliZSA9IHRoaXMudmFsdWVDaGFuZ2VzKCk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy52YWx1ZUNoYW5nZXNVbnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBjaGVja0V4cHJlc3Npb25DaGFuZ2UoKSB7XG4gICAgdGhpcy5maWVsZC5vcHRpb25zLmNoZWNrRXhwcmVzc2lvbnM/Lih0aGlzLmZpZWxkKTtcbiAgfVxuXG4gIHByaXZhdGUgdmFsdWVDaGFuZ2VzKCkge1xuICAgIHRoaXMudmFsdWVDaGFuZ2VzVW5zdWJzY3JpYmUoKTtcblxuICAgIGNvbnN0IHN1YiA9IHRoaXMuZmllbGQub3B0aW9ucy5maWVsZENoYW5nZXNcbiAgICAgIC5waXBlKFxuICAgICAgICBmaWx0ZXIoKHsgZmllbGQsIHR5cGUgfSkgPT4gaGFzS2V5KGZpZWxkKSAmJiB0eXBlID09PSAndmFsdWVDaGFuZ2VzJyksXG4gICAgICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLm5nWm9uZS5vblN0YWJsZS5hc09ic2VydmFibGUoKS5waXBlKHRha2UoMSkpKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT5cbiAgICAgICAgdGhpcy5uZ1pvbmUucnVuR3VhcmRlZCgoKSA9PiB7XG4gICAgICAgICAgLy8gcnVuR3VhcmRlZCBpcyB1c2VkIHRvIGtlZXAgaW4gc3luYyB0aGUgZXhwcmVzc2lvbiBjaGFuZ2VzXG4gICAgICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL25neC1mb3JtbHkvbmd4LWZvcm1seS9pc3N1ZXMvMjA5NVxuICAgICAgICAgIHRoaXMuY2hlY2tFeHByZXNzaW9uQ2hhbmdlKCk7XG4gICAgICAgICAgdGhpcy5tb2RlbENoYW5nZS5lbWl0KCh0aGlzLl9tb2RlbENoYW5nZVZhbHVlID0gY2xvbmUodGhpcy5tb2RlbCkpKTtcbiAgICAgICAgfSksXG4gICAgICApO1xuXG4gICAgcmV0dXJuICgpID0+IHN1Yi51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRGaWVsZChmaWVsZDogRm9ybWx5RmllbGRDb25maWdDYWNoZSkge1xuICAgIGlmICh0aGlzLmNvbmZpZy5leHRyYXMuaW1tdXRhYmxlKSB7XG4gICAgICB0aGlzLmZpZWxkID0geyAuLi50aGlzLmZpZWxkLCAuLi5jbG9uZShmaWVsZCkgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgT2JqZWN0LmtleXMoZmllbGQpLmZvckVhY2goKHApID0+ICgodGhpcy5maWVsZCBhcyBhbnkpW3BdID0gKGZpZWxkIGFzIGFueSlbcF0pKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
126
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWx5LmZvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY29yZS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybWx5LmZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCx1QkFBdUIsRUFHdkIsS0FBSyxFQUVMLFlBQVksRUFDWixNQUFNLEVBR04sZUFBZSxHQUVoQixNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUUvRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDOUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7Ozs7QUFFekU7Ozs7R0FJRztBQU9ILE1BQU0sT0FBTyxVQUFVO0lBK0NyQixZQUNVLE9BQTBCLEVBQzFCLE1BQW9CLEVBQ3BCLE1BQWMsRUFDZCxjQUFvQztRQUhwQyxZQUFPLEdBQVAsT0FBTyxDQUFtQjtRQUMxQixXQUFNLEdBQU4sTUFBTSxDQUFjO1FBQ3BCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxtQkFBYyxHQUFkLGNBQWMsQ0FBc0I7UUFkOUMsNERBQTREO1FBQ2xELGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUtoRCxVQUFLLEdBQTJCLEVBQUUsSUFBSSxFQUFFLGNBQWMsRUFBRSxDQUFDO1FBQ2pELHNCQUFpQixHQUFRLEVBQUUsQ0FBQztRQUM1Qiw0QkFBdUIsR0FBRyxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7SUFPeEMsQ0FBQztJQW5ESixnRkFBZ0Y7SUFDaEYsSUFD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QkFEUixLQUFLO2dCQVVGLE1BQU07c0JBRFQsS0FBSztnQkFVRixPQUFPO3NCQURWLEtBQUs7Z0JBU0ksV0FBVztzQkFBcEIsTUFBTTtnQkFDOEIsU0FBUztzQkFBN0MsZUFBZTt1QkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgRG9DaGVjayxcbiAgT25DaGFuZ2VzLFxuICBJbnB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgRXZlbnRFbWl0dGVyLFxuICBPdXRwdXQsXG4gIE9uRGVzdHJveSxcbiAgTmdab25lLFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIFF1ZXJ5TGlzdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtR3JvdXAsIEZvcm1BcnJheSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZvcm1seUZpZWxkQ29uZmlnLCBGb3JtbHlGb3JtT3B0aW9ucywgRm9ybWx5RmllbGRDb25maWdDYWNoZSB9IGZyb20gJy4uL21vZGVscyc7XG5pbXBvcnQgeyBGb3JtbHlGb3JtQnVpbGRlciB9IGZyb20gJy4uL3NlcnZpY2VzL2Zvcm1seS5idWlsZGVyJztcbmltcG9ydCB7IEZvcm1seUNvbmZpZyB9IGZyb20gJy4uL3NlcnZpY2VzL2Zvcm1seS5jb25maWcnO1xuaW1wb3J0IHsgY2xvbmUsIGhhc0tleSB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IHN3aXRjaE1hcCwgZmlsdGVyLCB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgY2xlYXJDb250cm9sIH0gZnJvbSAnLi4vZXh0ZW5zaW9ucy9maWVsZC1mb3JtL3V0aWxzJztcbmltcG9ydCB7IEZvcm1seUZpZWxkVGVtcGxhdGVzLCBGb3JtbHlUZW1wbGF0ZSB9IGZyb20gJy4vZm9ybWx5LnRlbXBsYXRlJztcblxuLyoqXG4gKiBUaGUgYDxmb3JtLWZvcm0+YCBjb21wb25lbnQgaXMgdGhlIG1haW4gY29udGFpbmVyIG9mIHRoZSBmb3JtLFxuICogd2hpY2ggdGFrZXMgY2FyZSBvZiBtYW5hZ2luZyB0aGUgZm9ybSBzdGF0ZVxuICogYW5kIGRlbGVnYXRlcyB0aGUgcmVuZGVyaW5nIG9mIGVhY2ggZmllbGQgdG8gYDxmb3JtbHktZmllbGQ+YCBjb21wb25lbnQuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Zvcm1seS1mb3JtJyxcbiAgdGVtcGxhdGU6ICc8Zm9ybWx5LWZpZWxkIFtmaWVsZF09XCJmaWVsZFwiPjwvZm9ybWx5LWZpZWxkPicsXG4gIHByb3ZpZGVyczogW0Zvcm1seUZvcm1CdWlsZGVyLCBGb3JtbHlGaWVsZFRlbXBsYXRlc10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBGb3JtbHlGb3JtIGltcGxlbWVudHMgRG9DaGVjaywgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICAvKiogVGhlIGZvcm0gaW5zdGFuY2Ugd2hpY2ggYWxsb3cgdG8gdHJhY2sgbW9kZWwgdmFsdWUgYW5kIHZhbGlkYXRpb24gc3RhdHVzLiAqL1xuICBASW5wdXQoKVxuICBzZXQgZm9ybShmb3JtOiBGb3JtR3JvdXAgfCBGb3JtQXJyYXkpIHtcbiAgICB0aGlzLmZpZWxkLmZvcm0gPSBmb3JtO1xuICB9XG4gIGdldCBmb3JtKCk6IEZvcm1Hcm91cCB8IEZvcm1BcnJheSB7XG4gICAgcmV0dXJuIHRoaXMuZmllbGQuZm9ybTtcbiAgfVxuXG4gIC8qKiBUaGUgbW9kZWwgdG8gYmUgcmVwcmVzZW50ZWQgYnkgdGhlIGZvcm0uICovXG4gIEBJbnB1dCgpXG4gIHNldCBtb2RlbChtb2RlbDogYW55KSB7XG4gICAgdGhpcy5zZXRGaWVsZCh7IG1vZGVsIH0pO1xuICB9XG4gIGdldCBtb2RlbCgpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLm1vZGVsO1xuICB9XG5cbiAgLyoqIFRoZSBmaWVsZCBjb25maWd1cmF0aW9ucyBmb3IgYnVpbGRpbmcgdGhlIGZvcm0uICovXG4gIEBJbnB1dCgpXG4gIHNldCBmaWVsZHMoZmllbGRHcm91cDogRm9ybWx5RmllbGRDb25maWdbXSkge1xuICAgIHRoaXMuc2V0RmllbGQoeyBmaWVsZEdyb3VwIH0pO1xuICB9XG4gIGdldCBmaWVsZHMoKTogRm9ybWx5RmllbGRDb25maWdbXSB7XG4gICAgcmV0dXJuIHRoaXMuZmllbGQuZmllbGRHcm91cDtcbiAgfVxuXG4gIC8qKiBPcHRpb25zIGZvciB0aGUgZm9ybS4gKi9cbiAgQElucHV0KClcbiAgc2V0IG9wdGlvbnMob3B0aW9uczogRm9ybWx5Rm9ybU9wdGlvbnMpIHtcbiAgICB0aGlzLnNldEZpZWxkKHsgb3B0aW9ucyB9KTtcbiAgfVxuICBnZXQgb3B0aW9ucygpOiBGb3JtbHlGb3JtT3B0aW9ucyB7XG4gICAgcmV0dXJuIHRoaXMuZmllbGQub3B0aW9ucztcbiAgfVxuXG4gIC8qKiBFdmVudCB0aGF0IGlzIGVtaXR0ZWQgd2hlbiB0aGUgbW9kZWwgdmFsdWUgaXMgY2hhbmdlZCAqL1xuICBAT3V0cHV0KCkgbW9kZWxDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgQENvbnRlbnRDaGlsZHJlbihGb3JtbHlUZW1wbGF0ZSkgc2V0IHRlbXBsYXRlcyh0ZW1wbGF0ZXM6IFF1ZXJ5TGlzdDxGb3JtbHlUZW1wbGF0ZT4pIHtcbiAgICB0aGlzLmZpZWxkVGVtcGxhdGVzLnRlbXBsYXRlcyA9IHRlbXBsYXRlcztcbiAgfVxuXG4gIGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZ0NhY2hlID0geyB0eXBlOiAnZm9ybWx5LWdyb3VwJyB9O1xuICBwcml2YXRlIF9tb2RlbENoYW5nZVZhbHVlOiBhbnkgPSB7fTtcbiAgcHJpdmF0ZSB2YWx1ZUNoYW5nZXNVbnN1YnNjcmliZSA9ICgpID0+IHt9O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYnVpbGRlcjogRm9ybWx5Rm9ybUJ1aWxkZXIsXG4gICAgcHJpdmF0ZSBjb25maWc6IEZvcm1seUNvbmZpZyxcbiAgICBwcml2YXRlIG5nWm9uZTogTmdab25lLFxuICAgIHByaXZhdGUgZmllbGRUZW1wbGF0ZXM6IEZvcm1seUZpZWxkVGVtcGxhdGVzLFxuICApIHt9XG5cbiAgbmdEb0NoZWNrKCkge1xuICAgIGlmICh0aGlzLmNvbmZpZy5leHRyYXMuY2hlY2tFeHByZXNzaW9uT24gPT09ICdjaGFuZ2VEZXRlY3Rpb25DaGVjaycpIHtcbiAgICAgIHRoaXMuY2hlY2tFeHByZXNzaW9uQ2hhbmdlKCk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzLmZpZWxkcyAmJiB0aGlzLmZvcm0pIHtcbiAgICAgIGNsZWFyQ29udHJvbCh0aGlzLmZvcm0pO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VzLmZpZWxkcyB8fCBjaGFuZ2VzLmZvcm0gfHwgKGNoYW5nZXMubW9kZWwgJiYgdGhpcy5fbW9kZWxDaGFuZ2VWYWx1ZSAhPT0gY2hhbmdlcy5tb2RlbC5jdXJyZW50VmFsdWUpKSB7XG4gICAgICB0aGlzLnZhbHVlQ2hhbmdlc1Vuc3Vic2NyaWJlKCk7XG4gICAgICB0aGlzLmJ1aWxkZXIuYnVpbGQodGhpcy5maWVsZCk7XG4gICAgICB0aGlzLnZhbHVlQ2hhbmdlc1Vuc3Vic2NyaWJlID0gdGhpcy52YWx1ZUNoYW5nZXMoKTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnZhbHVlQ2hhbmdlc1Vuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIGNoZWNrRXhwcmVzc2lvbkNoYW5nZSgpIHtcbiAgICB0aGlzLmZpZWxkLm9wdGlvbnMuY2hlY2tFeHByZXNzaW9ucz8uKHRoaXMuZmllbGQpO1xuICB9XG5cbiAgcHJpdmF0ZSB2YWx1ZUNoYW5nZXMoKSB7XG4gICAgdGhpcy52YWx1ZUNoYW5nZXNVbnN1YnNjcmliZSgpO1xuXG4gICAgY29uc3Qgc3ViID0gdGhpcy5maWVsZC5vcHRpb25zLmZpZWxkQ2hhbmdlc1xuICAgICAgLnBpcGUoXG4gICAgICAgIGZpbHRlcigoeyBmaWVsZCwgdHlwZSB9KSA9PiBoYXNLZXkoZmllbGQpICYmIHR5cGUgPT09ICd2YWx1ZUNoYW5nZXMnKSxcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+IHRoaXMubmdab25lLm9uU3RhYmxlLmFzT2JzZXJ2YWJsZSgpLnBpcGUodGFrZSgxKSkpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PlxuICAgICAgICB0aGlzLm5nWm9uZS5ydW5HdWFyZGVkKCgpID0+IHtcbiAgICAgICAgICAvLyBydW5HdWFyZGVkIGlzIHVzZWQgdG8ga2VlcCBpbiBzeW5jIHRoZSBleHByZXNzaW9uIGNoYW5nZXNcbiAgICAgICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vbmd4LWZvcm1seS9uZ3gtZm9ybWx5L2lzc3Vlcy8yMDk1XG4gICAgICAgICAgdGhpcy5jaGVja0V4cHJlc3Npb25DaGFuZ2UoKTtcbiAgICAgICAgICB0aGlzLm1vZGVsQ2hhbmdlLmVtaXQoKHRoaXMuX21vZGVsQ2hhbmdlVmFsdWUgPSBjbG9uZSh0aGlzLm1vZGVsKSkpO1xuICAgICAgICB9KSxcbiAgICAgICk7XG5cbiAgICByZXR1cm4gKCkgPT4gc3ViLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIHNldEZpZWxkKGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZ0NhY2hlKSB7XG4gICAgaWYgKHRoaXMuY29uZmlnLmV4dHJhcy5pbW11dGFibGUpIHtcbiAgICAgIHRoaXMuZmllbGQgPSB7IC4uLnRoaXMuZmllbGQsIC4uLmNsb25lKGZpZWxkKSB9O1xuICAgIH0gZWxzZSB7XG4gICAgICBPYmplY3Qua2V5cyhmaWVsZCkuZm9yRWFjaCgocCkgPT4gKCh0aGlzLmZpZWxkIGFzIGFueSlbcF0gPSAoZmllbGQgYXMgYW55KVtwXSkpO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { FormGroup, FormControl, Validators, } from '@angular/forms';
|
|
2
|
-
import { getFieldValue, defineHiddenProp, hasKey } from '../../utils';
|
|
2
|
+
import { getFieldValue, defineHiddenProp, hasKey, getKeyPath } from '../../utils';
|
|
3
3
|
import { registerControl, findControl, updateValidity } from './utils';
|
|
4
4
|
import { of } from 'rxjs';
|
|
5
5
|
export class FieldFormExtension {
|
|
@@ -84,6 +84,14 @@ export class FieldFormExtension {
|
|
|
84
84
|
}
|
|
85
85
|
if (markForCheck) {
|
|
86
86
|
updateValidity(c, true);
|
|
87
|
+
// update validity of `FormGroup` instance created by field with nested key.
|
|
88
|
+
let parent = c.parent;
|
|
89
|
+
for (let i = 1; i < getKeyPath(field).length; i++) {
|
|
90
|
+
if (parent) {
|
|
91
|
+
updateValidity(parent, true);
|
|
92
|
+
parent = parent.parent;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
87
95
|
}
|
|
88
96
|
}
|
|
89
97
|
}
|
|
@@ -108,4 +116,4 @@ export class FieldFormExtension {
|
|
|
108
116
|
return validators;
|
|
109
117
|
}
|
|
110
118
|
}
|
|
111
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jb3JlL3NyYy9saWIvZXh0ZW5zaW9ucy9maWVsZC1mb3JtL2ZpZWxkLWZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNMLFNBQVMsRUFDVCxXQUFXLEVBRVgsVUFBVSxHQUdYLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDdEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFMUIsTUFBTSxPQUFPLGtCQUFrQjtJQUU3QixXQUFXLENBQUMsS0FBNkI7UUFDdkMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDZCxJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztTQUNuQjtRQUVELElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRTtZQUNoQixNQUFNLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUU7Z0JBQ25DLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsTUFBTyxDQUFDLFdBQVc7Z0JBQ3BDLFlBQVksRUFBRSxJQUFJO2FBQ25CLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQztJQUVELFVBQVUsQ0FBQyxLQUE2QjtRQUN0QyxJQUFJLEtBQUssQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDeEQsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLGFBQWEsRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDcEQ7YUFBTTtZQUNMLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDNUI7SUFDSCxDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQTZCO1FBQ3hDLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxLQUFLLEVBQUU7WUFDdkIsT0FBTztTQUNSO1FBRUQsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMvQyxJQUFJLFlBQVksSUFBSSxLQUFLLENBQUMsTUFBTSxFQUFFO1lBQ2hDLElBQUksTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7WUFDMUIsT0FBTyxNQUFNLEVBQUU7Z0JBQ2IsSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO29CQUNwQyxjQUFjLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQztpQkFDMUM7Z0JBQ0QsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7YUFDeEI7U0FDRjtJQUNILENBQUM7SUFFTyxjQUFjLENBQUMsS0FBNkI7UUFDbEQsSUFBSSxPQUFPLEdBQUcsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDWixNQUFNLGNBQWMsR0FBMkIsRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUV6RixJQUFJLEtBQUssQ0FBQyxVQUFVLEVBQUU7Z0JBQ3BCLE9BQU8sR0FBRyxJQUFJLFNBQVMsQ0FBQyxFQUFFLEVBQUUsY0FBYyxDQUFDLENBQUM7YUFDN0M7aUJBQU07Z0JBQ0wsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUM7Z0JBQ3hFLE9BQU8sR0FBRyxJQUFJLFdBQVcsQ0FBQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxHQUFHLGNBQWMsRUFBRSxxQkFBcUIsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO2FBQzNHO1NBQ0Y7UUFFRCxlQUFlLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFTyxhQUFhLENBQUMsS0FBNkIsRUFBRSxRQUFRLEdBQUcsS0FBSztRQUNuRSxJQUFJLFFBQVEsS0FBSyxLQUFLLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFO1lBQ2hFLFFBQVEsR0FBRyxJQUFJLENBQUM7U0FDakI7UUFFRCxJQUFJLFlBQVksR0FBRyxLQUFLLENBQUM7UUFDekIsS0FBSyxDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ2hHLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQzNFLE1BQU0sRUFBRSxXQUFXLEVBQUUsQ0FBQyxFQUFFLEdBQUcsS0FBSyxDQUFDO1lBQ2pDLElBQUksQ0FBQyxFQUFFO2dCQUNMLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBWSxXQUFXLEVBQUU7b0JBQzdDLElBQUksUUFBUSxJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUU7d0JBQ3pCLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO3dCQUNoRCxZQUFZLEdBQUcsSUFBSSxDQUFDO3FCQUNyQjtvQkFFRCxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUU7d0JBQzNCLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO3dCQUMvQyxZQUFZLEdBQUcsSUFBSSxDQUFDO3FCQUNyQjtpQkFDRjtnQkFFRCxJQUFJLElBQUksS0FBSyxDQUFDLENBQUMsU0FBUyxJQUFJLElBQUksS0FBSyxDQUFDLENBQUMsY0FBYyxFQUFFO29CQUNyRCxDQUFDLENBQUMsYUFBYSxDQUFDLEdBQUcsRUFBRTt3QkFDbkIsTUFBTSxDQUFDLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFjLEtBQUssRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDO3dCQUV0RixPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7b0JBQ3pCLENBQUMsQ0FBQyxDQUFDO29CQUNILENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLEVBQUU7d0JBQ3hCLE1BQU0sQ0FBQyxHQUFHLFVBQVUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBbUIsS0FBSyxFQUFFLGtCQUFrQixDQUFDLENBQUMsQ0FBQzt3QkFFckcsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUM3QixDQUFDLENBQUMsQ0FBQztvQkFFSCxZQUFZLEdBQUcsSUFBSSxDQUFDO2lCQUNyQjtnQkFFRCxJQUFJLFlBQVksRUFBRTtvQkFDaEIsY0FBYyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztpQkFDekI7YUFDRjtTQUNGO1FBRUQsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQztJQUVPLGVBQWUsQ0FBSSxLQUE2QixFQUFFLElBQXdDO1FBQ2hHLE1BQU0sVUFBVSxHQUFRLEVBQUUsQ0FBQztRQUMzQixNQUFNLENBQUMsR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDO1FBQzVCLElBQUksQ0FBQyxFQUFFLE9BQU8sRUFBRSxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQzFCLENBQUMsQ0FBQyxPQUFPO2lCQUNOLE1BQU0sQ0FBQyxDQUFDLENBQXlCLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztpQkFDL0MsT0FBTyxDQUFDLENBQUMsQ0FBeUIsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDeEU7YUFBTSxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN0QixVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7U0FDakM7UUFFRCxJQUFJLEtBQUssQ0FBQyxVQUFVLEVBQUU7WUFDcEIsS0FBSyxDQUFDLFVBQVU7aUJBQ2IsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsVUFBVSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO2lCQUMxQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDdEU7UUFFRCxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb3JtbHlFeHRlbnNpb24sIEZvcm1seUZpZWxkQ29uZmlnQ2FjaGUgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHtcbiAgRm9ybUdyb3VwLFxuICBGb3JtQ29udHJvbCxcbiAgQWJzdHJhY3RDb250cm9sT3B0aW9ucyxcbiAgVmFsaWRhdG9ycyxcbiAgVmFsaWRhdG9yRm4sXG4gIEFzeW5jVmFsaWRhdG9yRm4sXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGdldEZpZWxkVmFsdWUsIGRlZmluZUhpZGRlblByb3AsIGhhc0tleSB9IGZyb20gJy4uLy4uL3V0aWxzJztcbmltcG9ydCB7IHJlZ2lzdGVyQ29udHJvbCwgZmluZENvbnRyb2wsIHVwZGF0ZVZhbGlkaXR5IH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBvZiB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgY2xhc3MgRmllbGRGb3JtRXh0ZW5zaW9uIGltcGxlbWVudHMgRm9ybWx5RXh0ZW5zaW9uIHtcbiAgcHJpdmF0ZSByb290OiBGb3JtbHlGaWVsZENvbmZpZ0NhY2hlO1xuICBwcmVQb3B1bGF0ZShmaWVsZDogRm9ybWx5RmllbGRDb25maWdDYWNoZSkge1xuICAgIGlmICghdGhpcy5yb290KSB7XG4gICAgICB0aGlzLnJvb3QgPSBmaWVsZDtcbiAgICB9XG5cbiAgICBpZiAoZmllbGQucGFyZW50KSB7XG4gICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZmllbGQsICdmb3JtJywge1xuICAgICAgICBnZXQ6ICgpID0+IGZpZWxkLnBhcmVudCEuZm9ybUNvbnRyb2wsXG4gICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIG9uUG9wdWxhdGUoZmllbGQ6IEZvcm1seUZpZWxkQ29uZmlnQ2FjaGUpIHtcbiAgICBpZiAoZmllbGQuaGFzT3duUHJvcGVydHkoJ2ZpZWxkR3JvdXAnKSAmJiAhaGFzS2V5KGZpZWxkKSkge1xuICAgICAgZGVmaW5lSGlkZGVuUHJvcChmaWVsZCwgJ2Zvcm1Db250cm9sJywgZmllbGQuZm9ybSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuYWRkRm9ybUNvbnRyb2woZmllbGQpO1xuICAgIH1cbiAgfVxuXG4gIHBvc3RQb3B1bGF0ZShmaWVsZDogRm9ybWx5RmllbGRDb25maWdDYWNoZSkge1xuICAgIGlmICh0aGlzLnJvb3QgIT09IGZpZWxkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5yb290ID0gbnVsbDtcbiAgICBjb25zdCBtYXJrRm9yQ2hlY2sgPSB0aGlzLnNldFZhbGlkYXRvcnMoZmllbGQpO1xuICAgIGlmIChtYXJrRm9yQ2hlY2sgJiYgZmllbGQucGFyZW50KSB7XG4gICAgICBsZXQgcGFyZW50ID0gZmllbGQucGFyZW50O1xuICAgICAgd2hpbGUgKHBhcmVudCkge1xuICAgICAgICBpZiAoaGFzS2V5KHBhcmVudCkgfHwgIXBhcmVudC5wYXJlbnQpIHtcbiAgICAgICAgICB1cGRhdGVWYWxpZGl0eShwYXJlbnQuZm9ybUNvbnRyb2wsIHRydWUpO1xuICAgICAgICB9XG4gICAgICAgIHBhcmVudCA9IHBhcmVudC5wYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhZGRGb3JtQ29udHJvbChmaWVsZDogRm9ybWx5RmllbGRDb25maWdDYWNoZSkge1xuICAgIGxldCBjb250cm9sID0gZmluZENvbnRyb2woZmllbGQpO1xuICAgIGlmICghY29udHJvbCkge1xuICAgICAgY29uc3QgY29udHJvbE9wdGlvbnM6IEFic3RyYWN0Q29udHJvbE9wdGlvbnMgPSB7IHVwZGF0ZU9uOiBmaWVsZC5tb2RlbE9wdGlvbnMudXBkYXRlT24gfTtcblxuICAgICAgaWYgKGZpZWxkLmZpZWxkR3JvdXApIHtcbiAgICAgICAgY29udHJvbCA9IG5ldyBGb3JtR3JvdXAoe30sIGNvbnRyb2xPcHRpb25zKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHZhbHVlID0gaGFzS2V5KGZpZWxkKSA/IGdldEZpZWxkVmFsdWUoZmllbGQpIDogZmllbGQuZGVmYXVsdFZhbHVlO1xuICAgICAgICBjb250cm9sID0gbmV3IEZvcm1Db250cm9sKHsgdmFsdWUsIGRpc2FibGVkOiBmYWxzZSB9LCB7IC4uLmNvbnRyb2xPcHRpb25zLCBpbml0aWFsVmFsdWVJc0RlZmF1bHQ6IHRydWUgfSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJDb250cm9sKGZpZWxkLCBjb250cm9sKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0VmFsaWRhdG9ycyhmaWVsZDogRm9ybWx5RmllbGRDb25maWdDYWNoZSwgZGlzYWJsZWQgPSBmYWxzZSkge1xuICAgIGlmIChkaXNhYmxlZCA9PT0gZmFsc2UgJiYgaGFzS2V5KGZpZWxkKSAmJiBmaWVsZC5wcm9wcz8uZGlzYWJsZWQpIHtcbiAgICAgIGRpc2FibGVkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBsZXQgbWFya0ZvckNoZWNrID0gZmFsc2U7XG4gICAgZmllbGQuZmllbGRHcm91cD8uZm9yRWFjaCgoZikgPT4gZiAmJiB0aGlzLnNldFZhbGlkYXRvcnMoZiwgZGlzYWJsZWQpICYmIChtYXJrRm9yQ2hlY2sgPSB0cnVlKSk7XG4gICAgaWYgKGhhc0tleShmaWVsZCkgfHwgIWZpZWxkLnBhcmVudCB8fCAoIWhhc0tleShmaWVsZCkgJiYgIWZpZWxkLmZpZWxkR3JvdXApKSB7XG4gICAgICBjb25zdCB7IGZvcm1Db250cm9sOiBjIH0gPSBmaWVsZDtcbiAgICAgIGlmIChjKSB7XG4gICAgICAgIGlmIChoYXNLZXkoZmllbGQpICYmIGMgaW5zdGFuY2VvZiBGb3JtQ29udHJvbCkge1xuICAgICAgICAgIGlmIChkaXNhYmxlZCAmJiBjLmVuYWJsZWQpIHtcbiAgICAgICAgICAgIGMuZGlzYWJsZSh7IGVtaXRFdmVudDogZmFsc2UsIG9ubHlTZWxmOiB0cnVlIH0pO1xuICAgICAgICAgICAgbWFya0ZvckNoZWNrID0gdHJ1ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoIWRpc2FibGVkICYmIGMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIGMuZW5hYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSwgb25seVNlbGY6IHRydWUgfSk7XG4gICAgICAgICAgICBtYXJrRm9yQ2hlY2sgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChudWxsID09PSBjLnZhbGlkYXRvciB8fCBudWxsID09PSBjLmFzeW5jVmFsaWRhdG9yKSB7XG4gICAgICAgICAgYy5zZXRWYWxpZGF0b3JzKCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHYgPSBWYWxpZGF0b3JzLmNvbXBvc2UodGhpcy5tZXJnZVZhbGlkYXRvcnM8VmFsaWRhdG9yRm4+KGZpZWxkLCAnX3ZhbGlkYXRvcnMnKSk7XG5cbiAgICAgICAgICAgIHJldHVybiB2ID8gdihjKSA6IG51bGw7XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgYy5zZXRBc3luY1ZhbGlkYXRvcnMoKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdiA9IFZhbGlkYXRvcnMuY29tcG9zZUFzeW5jKHRoaXMubWVyZ2VWYWxpZGF0b3JzPEFzeW5jVmFsaWRhdG9yRm4+KGZpZWxkLCAnX2FzeW5jVmFsaWRhdG9ycycpKTtcblxuICAgICAgICAgICAgcmV0dXJuIHYgPyB2KGMpIDogb2YobnVsbCk7XG4gICAgICAgICAgfSk7XG5cbiAgICAgICAgICBtYXJrRm9yQ2hlY2sgPSB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG1hcmtGb3JDaGVjaykge1xuICAgICAgICAgIHVwZGF0ZVZhbGlkaXR5KGMsIHRydWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG1hcmtGb3JDaGVjaztcbiAgfVxuXG4gIHByaXZhdGUgbWVyZ2VWYWxpZGF0b3JzPFQ+KGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZ0NhY2hlLCB0eXBlOiAnX3ZhbGlkYXRvcnMnIHwgJ19hc3luY1ZhbGlkYXRvcnMnKTogVFtdIHtcbiAgICBjb25zdCB2YWxpZGF0b3JzOiBhbnkgPSBbXTtcbiAgICBjb25zdCBjID0gZmllbGQuZm9ybUNvbnRyb2w7XG4gICAgaWYgKGM/Ll9maWVsZHM/Lmxlbmd0aCA+IDEpIHtcbiAgICAgIGMuX2ZpZWxkc1xuICAgICAgICAuZmlsdGVyKChmOiBGb3JtbHlGaWVsZENvbmZpZ0NhY2hlKSA9PiAhZi5faGlkZSlcbiAgICAgICAgLmZvckVhY2goKGY6IEZvcm1seUZpZWxkQ29uZmlnQ2FjaGUpID0+IHZhbGlkYXRvcnMucHVzaCguLi5mW3R5cGVdKSk7XG4gICAgfSBlbHNlIGlmIChmaWVsZFt0eXBlXSkge1xuICAgICAgdmFsaWRhdG9ycy5wdXNoKC4uLmZpZWxkW3R5cGVdKTtcbiAgICB9XG5cbiAgICBpZiAoZmllbGQuZmllbGRHcm91cCkge1xuICAgICAgZmllbGQuZmllbGRHcm91cFxuICAgICAgICAuZmlsdGVyKChmKSA9PiBmPy5maWVsZEdyb3VwICYmICFoYXNLZXkoZikpXG4gICAgICAgIC5mb3JFYWNoKChmKSA9PiB2YWxpZGF0b3JzLnB1c2goLi4udGhpcy5tZXJnZVZhbGlkYXRvcnMoZiwgdHlwZSkpKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdmFsaWRhdG9ycztcbiAgfVxufVxuIl19
|
|
119
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jb3JlL3NyYy9saWIvZXh0ZW5zaW9ucy9maWVsZC1mb3JtL2ZpZWxkLWZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNMLFNBQVMsRUFDVCxXQUFXLEVBRVgsVUFBVSxHQUdYLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLGNBQWMsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFCLE1BQU0sT0FBTyxrQkFBa0I7SUFFN0IsV0FBVyxDQUFDLEtBQTZCO1FBQ3ZDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ2QsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7U0FDbkI7UUFFRCxJQUFJLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDaEIsTUFBTSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFO2dCQUNuQyxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLE1BQU8sQ0FBQyxXQUFXO2dCQUNwQyxZQUFZLEVBQUUsSUFBSTthQUNuQixDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFRCxVQUFVLENBQUMsS0FBNkI7UUFDdEMsSUFBSSxLQUFLLENBQUMsY0FBYyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3hELGdCQUFnQixDQUFDLEtBQUssRUFBRSxhQUFhLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3BEO2FBQU07WUFDTCxJQUFJLENBQUMsY0FBYyxD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QUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUN0RTtRQUVELE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZvcm1seUV4dGVuc2lvbiwgRm9ybWx5RmllbGRDb25maWdDYWNoZSB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQge1xuICBGb3JtR3JvdXAsXG4gIEZvcm1Db250cm9sLFxuICBBYnN0cmFjdENvbnRyb2xPcHRpb25zLFxuICBWYWxpZGF0b3JzLFxuICBWYWxpZGF0b3JGbixcbiAgQXN5bmNWYWxpZGF0b3JGbixcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgZ2V0RmllbGRWYWx1ZSwgZGVmaW5lSGlkZGVuUHJvcCwgaGFzS2V5LCBnZXRLZXlQYXRoIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgcmVnaXN0ZXJDb250cm9sLCBmaW5kQ29udHJvbCwgdXBkYXRlVmFsaWRpdHkgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IG9mIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBjbGFzcyBGaWVsZEZvcm1FeHRlbnNpb24gaW1wbGVtZW50cyBGb3JtbHlFeHRlbnNpb24ge1xuICBwcml2YXRlIHJvb3Q6IEZvcm1seUZpZWxkQ29uZmlnQ2FjaGU7XG4gIHByZVBvcHVsYXRlKGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZ0NhY2hlKSB7XG4gICAgaWYgKCF0aGlzLnJvb3QpIHtcbiAgICAgIHRoaXMucm9vdCA9IGZpZWxkO1xuICAgIH1cblxuICAgIGlmIChmaWVsZC5wYXJlbnQpIHtcbiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShmaWVsZCwgJ2Zvcm0nLCB7XG4gICAgICAgIGdldDogKCkgPT4gZmllbGQucGFyZW50IS5mb3JtQ29udHJvbCxcbiAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgb25Qb3B1bGF0ZShmaWVsZDogRm9ybWx5RmllbGRDb25maWdDYWNoZSkge1xuICAgIGlmIChmaWVsZC5oYXNPd25Qcm9wZXJ0eSgnZmllbGRHcm91cCcpICYmICFoYXNLZXkoZmllbGQpKSB7XG4gICAgICBkZWZpbmVIaWRkZW5Qcm9wKGZpZWxkLCAnZm9ybUNvbnRyb2wnLCBmaWVsZC5mb3JtKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5hZGRGb3JtQ29udHJvbChmaWVsZCk7XG4gICAgfVxuICB9XG5cbiAgcG9zdFBvcHVsYXRlKGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZ0NhY2hlKSB7XG4gICAgaWYgKHRoaXMucm9vdCAhPT0gZmllbGQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnJvb3QgPSBudWxsO1xuICAgIGNvbnN0IG1hcmtGb3JDaGVjayA9IHRoaXMuc2V0VmFsaWRhdG9ycyhmaWVsZCk7XG4gICAgaWYgKG1hcmtGb3JDaGVjayAmJiBmaWVsZC5wYXJlbnQpIHtcbiAgICAgIGxldCBwYXJlbnQgPSBmaWVsZC5wYXJlbnQ7XG4gICAgICB3aGlsZSAocGFyZW50KSB7XG4gICAgICAgIGlmIChoYXNLZXkocGFyZW50KSB8fCAhcGFyZW50LnBhcmVudCkge1xuICAgICAgICAgIHVwZGF0ZVZhbGlkaXR5KHBhcmVudC5mb3JtQ29udHJvbCwgdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgcGFyZW50ID0gcGFyZW50LnBhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFkZEZvcm1Db250cm9sKGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZ0NhY2hlKSB7XG4gICAgbGV0IGNvbnRyb2wgPSBmaW5kQ29udHJvbChmaWVsZCk7XG4gICAgaWYgKCFjb250cm9sKSB7XG4gICAgICBjb25zdCBjb250cm9sT3B0aW9uczogQWJzdHJhY3RDb250cm9sT3B0aW9ucyA9IHsgdXBkYXRlT246IGZpZWxkLm1vZGVsT3B0aW9ucy51cGRhdGVPbiB9O1xuXG4gICAgICBpZiAoZmllbGQuZmllbGRHcm91cCkge1xuICAgICAgICBjb250cm9sID0gbmV3IEZvcm1Hcm91cCh7fSwgY29udHJvbE9wdGlvbnMpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSBoYXNLZXkoZmllbGQpID8gZ2V0RmllbGRWYWx1ZShmaWVsZCkgOiBmaWVsZC5kZWZhdWx0VmFsdWU7XG4gICAgICAgIGNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woeyB2YWx1ZSwgZGlzYWJsZWQ6IGZhbHNlIH0sIHsgLi4uY29udHJvbE9wdGlvbnMsIGluaXRpYWxWYWx1ZUlzRGVmYXVsdDogdHJ1ZSB9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZWdpc3RlckNvbnRyb2woZmllbGQsIGNvbnRyb2wpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRWYWxpZGF0b3JzKGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZ0NhY2hlLCBkaXNhYmxlZCA9IGZhbHNlKSB7XG4gICAgaWYgKGRpc2FibGVkID09PSBmYWxzZSAmJiBoYXNLZXkoZmllbGQpICYmIGZpZWxkLnByb3BzPy5kaXNhYmxlZCkge1xuICAgICAgZGlzYWJsZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIGxldCBtYXJrRm9yQ2hlY2sgPSBmYWxzZTtcbiAgICBmaWVsZC5maWVsZEdyb3VwPy5mb3JFYWNoKChmKSA9PiBmICYmIHRoaXMuc2V0VmFsaWRhdG9ycyhmLCBkaXNhYmxlZCkgJiYgKG1hcmtGb3JDaGVjayA9IHRydWUpKTtcbiAgICBpZiAoaGFzS2V5KGZpZWxkKSB8fCAhZmllbGQucGFyZW50IHx8ICghaGFzS2V5KGZpZWxkKSAmJiAhZmllbGQuZmllbGRHcm91cCkpIHtcbiAgICAgIGNvbnN0IHsgZm9ybUNvbnRyb2w6IGMgfSA9IGZpZWxkO1xuICAgICAgaWYgKGMpIHtcbiAgICAgICAgaWYgKGhhc0tleShmaWVsZCkgJiYgYyBpbnN0YW5jZW9mIEZvcm1Db250cm9sKSB7XG4gICAgICAgICAgaWYgKGRpc2FibGVkICYmIGMuZW5hYmxlZCkge1xuICAgICAgICAgICAgYy5kaXNhYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSwgb25seVNlbGY6IHRydWUgfSk7XG4gICAgICAgICAgICBtYXJrRm9yQ2hlY2sgPSB0cnVlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICghZGlzYWJsZWQgJiYgYy5kaXNhYmxlZCkge1xuICAgICAgICAgICAgYy5lbmFibGUoeyBlbWl0RXZlbnQ6IGZhbHNlLCBvbmx5U2VsZjogdHJ1ZSB9KTtcbiAgICAgICAgICAgIG1hcmtGb3JDaGVjayA9IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG51bGwgPT09IGMudmFsaWRhdG9yIHx8IG51bGwgPT09IGMuYXN5bmNWYWxpZGF0b3IpIHtcbiAgICAgICAgICBjLnNldFZhbGlkYXRvcnMoKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdiA9IFZhbGlkYXRvcnMuY29tcG9zZSh0aGlzLm1lcmdlVmFsaWRhdG9yczxWYWxpZGF0b3JGbj4oZmllbGQsICdfdmFsaWRhdG9ycycpKTtcblxuICAgICAgICAgICAgcmV0dXJuIHYgPyB2KGMpIDogbnVsbDtcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBjLnNldEFzeW5jVmFsaWRhdG9ycygoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB2ID0gVmFsaWRhdG9ycy5jb21wb3NlQXN5bmModGhpcy5tZXJnZVZhbGlkYXRvcnM8QXN5bmNWYWxpZGF0b3JGbj4oZmllbGQsICdfYXN5bmNWYWxpZGF0b3JzJykpO1xuXG4gICAgICAgICAgICByZXR1cm4gdiA/IHYoYykgOiBvZihudWxsKTtcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIG1hcmtGb3JDaGVjayA9IHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAobWFya0ZvckNoZWNrKSB7XG4gICAgICAgICAgdXBkYXRlVmFsaWRpdHkoYywgdHJ1ZSk7XG5cbiAgICAgICAgICAvLyB1cGRhdGUgdmFsaWRpdHkgb2YgYEZvcm1Hcm91cGAgaW5zdGFuY2UgY3JlYXRlZCBieSBmaWVsZCB3aXRoIG5lc3RlZCBrZXkuXG4gICAgICAgICAgbGV0IHBhcmVudCA9IGMucGFyZW50O1xuICAgICAgICAgIGZvciAobGV0IGkgPSAxOyBpIDwgZ2V0S2V5UGF0aChmaWVsZCkubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChwYXJlbnQpIHtcbiAgICAgICAgICAgICAgdXBkYXRlVmFsaWRpdHkocGFyZW50LCB0cnVlKTtcbiAgICAgICAgICAgICAgcGFyZW50ID0gcGFyZW50LnBhcmVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbWFya0ZvckNoZWNrO1xuICB9XG5cbiAgcHJpdmF0ZSBtZXJnZVZhbGlkYXRvcnM8VD4oZmllbGQ6IEZvcm1seUZpZWxkQ29uZmlnQ2FjaGUsIHR5cGU6ICdfdmFsaWRhdG9ycycgfCAnX2FzeW5jVmFsaWRhdG9ycycpOiBUW10ge1xuICAgIGNvbnN0IHZhbGlkYXRvcnM6IGFueSA9IFtdO1xuICAgIGNvbnN0IGMgPSBmaWVsZC5mb3JtQ29udHJvbDtcbiAgICBpZiAoYz8uX2ZpZWxkcz8ubGVuZ3RoID4gMSkge1xuICAgICAgYy5fZmllbGRzXG4gICAgICAgIC5maWx0ZXIoKGY6IEZvcm1seUZpZWxkQ29uZmlnQ2FjaGUpID0+ICFmLl9oaWRlKVxuICAgICAgICAuZm9yRWFjaCgoZjogRm9ybWx5RmllbGRDb25maWdDYWNoZSkgPT4gdmFsaWRhdG9ycy5wdXNoKC4uLmZbdHlwZV0pKTtcbiAgICB9IGVsc2UgaWYgKGZpZWxkW3R5cGVdKSB7XG4gICAgICB2YWxpZGF0b3JzLnB1c2goLi4uZmllbGRbdHlwZV0pO1xuICAgIH1cblxuICAgIGlmIChmaWVsZC5maWVsZEdyb3VwKSB7XG4gICAgICBmaWVsZC5maWVsZEdyb3VwXG4gICAgICAgIC5maWx0ZXIoKGYpID0+IGY/LmZpZWxkR3JvdXAgJiYgIWhhc0tleShmKSlcbiAgICAgICAgLmZvckVhY2goKGYpID0+IHZhbGlkYXRvcnMucHVzaCguLi50aGlzLm1lcmdlVmFsaWRhdG9ycyhmLCB0eXBlKSkpO1xuICAgIH1cblxuICAgIHJldHVybiB2YWxpZGF0b3JzO1xuICB9XG59XG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2NvcmUvc3JjL2xpYi9tb2RlbHMvY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBWYWxpZGF0aW9uRXJyb3JzLCBBYnN0cmFjdENvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBGb3JtbHlGaWVsZENvbmZpZyB9IGZyb20gJy4vZmllbGRjb25maWcnO1xuaW1wb3J0IHsgRmllbGRUeXBlIH0gZnJvbSAnLi8uLi90ZW1wbGF0ZXMvZmllbGQudHlwZSc7XG5pbXBvcnQgeyBGaWVsZFdyYXBwZXIgfSBmcm9tICcuLi90ZW1wbGF0ZXMvZmllbGQud3JhcHBlcic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRm9ybWx5RXh0ZW5zaW9uPEYgZXh0ZW5kcyBGb3JtbHlGaWVsZENvbmZpZyA9IEZvcm1seUZpZWxkQ29uZmlnPiB7XG4gIHByaW9yaXR5PzogbnVtYmVyO1xuXG4gIHByZVBvcHVsYXRlPyhmaWVsZDogRik6IHZvaWQ7XG4gIG9uUG9wdWxhdGU/KGZpZWxkOiBGKTogdm9pZDtcbiAgcG9zdFBvcHVsYXRlPyhmaWVsZDogRik6IHZvaWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHlwZU9wdGlvbiB7XG4gIG5hbWU6IHN0cmluZztcbiAgY29tcG9uZW50PzogVHlwZTxGaWVsZFR5cGU+O1xuICB3cmFwcGVycz86IHN0cmluZ1tdO1xuICBleHRlbmRzPzogc3RyaW5nO1xuICBkZWZhdWx0T3B0aW9ucz86IEZvcm1seUZpZWxkQ29uZmlnO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFdyYXBwZXJPcHRpb24ge1xuICBuYW1lOiBzdHJpbmc7XG4gIGNvbXBvbmVudDogVHlwZTxGaWVsZFdyYXBwZXI+O1xuICB0eXBlcz86IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgdHlwZSBGaWVsZFZhbGlkYXRvckZuID0gKFxuICBjOiBBYnN0cmFjdENvbnRyb2wsXG4gIGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZyxcbiAgb3B0aW9ucz86IHsgW2lkOiBzdHJpbmddOiBhbnkgfSxcbikgPT4gVmFsaWRhdGlvbkVycm9ycyB8IG51bGw7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVmFsaWRhdG9yT3B0aW9uIHtcbiAgbmFtZTogc3RyaW5nO1xuICB2YWxpZGF0aW9uOiBGaWVsZFZhbGlkYXRvckZuO1xuICBvcHRpb25zPzogeyBbaWQ6IHN0cmluZ106IGFueSB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV4dGVuc2lvbk9wdGlvbiB7XG4gIG5hbWU6IHN0cmluZztcbiAgZXh0ZW5zaW9uOiBGb3JtbHlFeHRlbnNpb247XG4gIHByaW9yaXR5PzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFZhbGlkYXRpb25NZXNzYWdlT3B0aW9uIHtcbiAgbmFtZTogc3RyaW5nO1xuICBtZXNzYWdlOiBzdHJpbmcgfCAoKGVycm9yOiBhbnksIGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZykgPT4gc3RyaW5nIHwgT2JzZXJ2YWJsZTxzdHJpbmc+KTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcmVzZXRPcHRpb24ge1xuICBuYW1lOiBzdHJpbmc7XG4gIGNvbmZpZzogRm9ybWx5RmllbGRDb25maWcgfCBGb3JtbHlGaWVsZENvbmZpZ1ByZXNldFByb3ZpZGVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZvcm1seUZpZWxkQ29uZmlnUHJlc2V0UHJvdmlkZXIge1xuICBnZXRDb25maWd1cmF0aW9uOiAoKSA9PiBGb3JtbHlGaWVsZENvbmZpZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdPcHRpb24ge1xuICB0eXBlcz86IFR5cGVPcHRpb25bXTtcbiAgd3JhcHBlcnM/OiBXcmFwcGVyT3B0aW9uW107XG4gIHZhbGlkYXRvcnM/OiBWYWxpZGF0b3JPcHRpb25bXTtcbiAgZXh0ZW5zaW9ucz86IEV4dGVuc2lvbk9wdGlvbltdO1xuICB2YWxpZGF0aW9uTWVzc2FnZXM/OiBWYWxpZGF0aW9uTWVzc2FnZU9wdGlvbltdO1xuICBleHRyYXM/OiB7XG4gICAgaW1tdXRhYmxlPzogYm9vbGVhbjtcbiAgICBzaG93RXJyb3I/OiAoZmllbGQ6IEZpZWxkVHlwZSkgPT4gYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIERlZmluZXMgdGhlIG9wdGlvbiB3aGljaCBmb3JtbHkgcmVseSBvbiB0byBjaGVjayBmaWVsZCBleHByZXNzaW9uIHByb3BlcnRpZXMuXG4gICAgICogLSBgbW9kZWxDaGFuZ2VgOiBwZXJmb3JtIGEgY2hlY2sgd2hlbiB0aGUgdmFsdWUgb2YgdGhlIGZvcm0gY29udHJvbCBjaGFuZ2VzLlxuICAgICAqIC0gYGNoYW5nZURldGVjdGlvbkNoZWNrYDogdHJpZ2dlcnMgYW4gaW1tZWRpYXRlIGNoZWNrIHdoZW4gYG5nRG9DaGVja2AgaXMgY2FsbGVkLlxuICAgICAqXG4gICAgICogRGVmYXVsdHMgdG8gYG1vZGVsQ2hhbmdlYC5cbiAgICAgKi9cbiAgICBjaGVja0V4cHJlc3Npb25Pbj86ICdtb2RlbENoYW5nZScgfCAnY2hhbmdlRGV0ZWN0aW9uQ2hlY2snO1xuXG4gICAgLyoqXG4gICAgICogV2hldGhlciB0byBsYXppbHkgcmVuZGVyIGZpZWxkIGNvbXBvbmVudHMgb3Igbm90IHdoZW4gbWFya2VkIGFzIGhpZGRlbi5cbiAgICAgKiAtIGB0cnVlYDogbGF6aWx5IHJlbmRlciBmaWVsZCBjb21wb25lbnRzLlxuICAgICAqIC0gYGZhbHNlYDogcmVuZGVyIGZpZWxkIGNvbXBvbmVudHMgYW5kIHVzZSBDU1MgdG8gY29udHJvbCB0aGVpciB2aXNpYmlsaXR5LlxuICAgICAqXG4gICAgICogRGVmYXVsdHMgdG8gYHRydWVgLlxuICAgICAqL1xuICAgIGxhenlSZW5kZXI/OiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogV2hlbiBgdHJ1ZWAsIHJlc2V0IHRoZSB2YWx1ZSBvZiBhIGhpZGRlbiBmaWVsZC5cbiAgICAgKlxuICAgICAqIERlZmF1bHRzIHRvIGB0cnVlYC5cbiAgICAgKi9cbiAgICByZXNldEZpZWxkT25IaWRlPzogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdG8gcmVuZGVyIGZpZWxkcyBpbnNpZGUgPGZvcm1seS1maWVsZD4gY29tcG9uZW50IG9yIG5vdC5cbiAgICAgKlxuICAgICAqIERlZmF1bHRzIHRvIGB0cnVlYC5cbiAgICAgKi9cbiAgICByZW5kZXJGb3JtbHlGaWVsZEVsZW1lbnQ/OiBib29sZWFuO1xuICB9O1xuICBwcmVzZXRzPzogUHJlc2V0T3B0aW9uW107XG59XG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGRjb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY29yZS9zcmMvbGliL21vZGVscy9maWVsZGNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9ybUdyb3VwLCBGb3JtQXJyYXksIEFic3RyYWN0Q29udHJvbCwgRm9ybUdyb3VwRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRmllbGRUeXBlIH0gZnJvbSAnLi4vdGVtcGxhdGVzL2ZpZWxkLnR5cGUnO1xuaW1wb3J0IHsgRmllbGRXcmFwcGVyIH0gZnJvbSAnLi4vdGVtcGxhdGVzL2ZpZWxkLndyYXBwZXInO1xuaW1wb3J0IHsgVmFsaWRhdGlvbk1lc3NhZ2VPcHRpb24gfSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IHsgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZvcm1seUZpZWxkQ29uZmlnPFByb3BzID0gRm9ybWx5RmllbGRQcm9wcyAmIHsgW2FkZGl0aW9uYWxQcm9wZXJ0aWVzOiBzdHJpbmddOiBhbnkgfT4ge1xuICAvKipcbiAgICogVGhlIGtleSB0aGF0IHJlbGF0ZXMgdG8gdGhlIG1vZGVsLiBUaGlzIHdpbGwgbGluayB0aGUgZmllbGQgdmFsdWUgdG8gdGhlIG1vZGVsXG4gICAqL1xuICBrZXk/OiBzdHJpbmcgfCBudW1iZXIgfCAoc3RyaW5nIHwgbnVtYmVyKVtdO1xuXG4gIC8qKlxuICAgKiBUaGlzIHNob3VsZCBiZSBhIGZvcm1seS1maWVsZCB0eXBlIGFkZGVkIGVpdGhlciBieSB5b3Ugb3IgYSBwbHVnaW4uIE1vcmUgaW5mb3JtYXRpb24gb3ZlciBhdCBDcmVhdGluZyBGb3JtbHkgRmllbGRzLlxuICAgKi9cbiAgdHlwZT86IHN0cmluZyB8IFR5cGU8RmllbGRUeXBlPjtcblxuICAvKipcbiAgICogVXNlIGBkZWZhdWx0VmFsdWVgIHRvIGluaXRpYWxpemUgaXQgdGhlIG1vZGVsLiBJZiB0aGlzIGlzIHByb3ZpZGVkIGFuZCB0aGUgdmFsdWUgb2YgdGhlIG1vZGVsIGF0IGNvbXBpbGUtdGltZSBpcyB1bmRlZmluZWQsIHRoZW4gdGhlIHZhbHVlIG9mIHRoZSBtb2RlbCB3aWxsIGJlIGFzc2lnbmVkIHRvIGBkZWZhdWx0VmFsdWVgLlxuICAgKi9cbiAgZGVmYXVsdFZhbHVlPzogYW55O1xuXG4gIC8qKlxuICAgKiBUaGlzIGFsbG93cyB5b3UgdG8gc3BlY2lmeSB0aGUgYGlkYCBvZiB5b3VyIGZpZWxkLiBOb3RlLCB0aGUgYGlkYCBpcyBnZW5lcmF0ZWQgaWYgbm90IHNldC5cbiAgICovXG4gIGlkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZiB5b3Ugd2lzaCwgeW91IGNhbiBzcGVjaWZ5IGEgc3BlY2lmaWMgYG5hbWVgIGZvciB5b3VyIGZpZWxkLiBUaGlzIGlzIHVzZWZ1bCBpZiB5b3UncmUgcG9zdGluZyB0aGUgZm9ybSB0byBhIHNlcnZlciB1c2luZyB0ZWNobmlxdWVzIG9mIHllc3Rlci15ZWFyLlxuICAgKi9cbiAgbmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogVGhpcyBpcyByZXNlcnZlZCBmb3IgdGhlIHRlbXBsYXRlcy4gQW55IHRlbXBsYXRlLXNwZWNpZmljIG9wdGlvbnMgZ28gaW4gaGVyZS4gTG9vayBhdCB5b3VyIHNwZWNpZmljIHRlbXBsYXRlIGltcGxlbWVudGF0aW9uIHRvIGtub3cgdGhlIG9wdGlvbnMgcmVxdWlyZWQgZm9yIHRoaXMuXG4gICAqL1xuICBwcm9wcz86IFByb3BzO1xuXG4gIC8qKiBAZGVwcmVjYXRlZCBVc2UgYHByb3BzYCBpbnN0ZWFkLiAqL1xuICB0ZW1wbGF0ZU9wdGlvbnM/OiBGb3JtbHlUZW1wbGF0ZU9wdGlvbnM7XG5cbiAgLyoqXG4gICAqIEFuIG9iamVjdCB3aXRoIGEgZmV3IHVzZWZ1bCBwcm9wZXJ0aWVzXG4gICAqIC0gYHZhbGlkYXRpb24ubWVzc2FnZXNgOiBBIG1hcCBvZiBtZXNzYWdlIG5hbWVzIHRoYXQgd2lsbCBiZSBkaXNwbGF5ZWQgd2hlbiB0aGUgZmllbGQgaGFzIGVycm9ycy5cbiAgICogLSBgdmFsaWRhdGlvbi5zaG93YDogQSBib29sZWFuIHlvdSBhcyB0aGUgZGV2ZWxvcGVyIGNhbiBzZXQgdG8gZm9yY2UgZGlzcGxheWluZyBlcnJvcnMgd2hhdGV2ZXIgdGhlIHN0YXRlIG9mIGZpZWxkLiBUaGlzIGlzIHVzZWZ1bCB3aGVuIHlvdSdyZSB0cnlpbmcgdG8gY2FsbCB0aGUgdXNlcidzIGF0dGVudGlvbiB0byBzb21lIGZpZWxkcyBmb3Igc29tZSByZWFzb24uXG4gICAqL1xuICB2YWxpZGF0aW9uPzoge1xuICAgIG1lc3NhZ2VzPzogeyBbbWVzc2FnZVByb3BlcnRpZXM6IHN0cmluZ106IFZhbGlkYXRpb25NZXNzYWdlT3B0aW9uWydtZXNzYWdlJ10gfSAmIHtcbiAgICAgIC8qKiBAZGVwcmVjYXRlZCB1c2UgYG1pbkxlbmd0aGAgKi9cbiAgICAgIG1pbmxlbmd0aD86IFZhbGlkYXRpb25NZXNzYWdlT3B0aW9uWydtZXNzYWdlJ107XG5cbiAgICAgIC8qKiBAZGVwcmVjYXRlZCB1c2UgYG1heExlbmd0aGAgKi9cbiAgICAgIG1heGxlbmd0aD86IFZhbGlkYXRpb25NZXNzYWdlT3B0aW9uWydtZXNzYWdlJ107XG4gICAgfTtcbiAgICBzaG93PzogYm9vbGVhbjtcbiAgICBbYWRkaXRpb25hbFByb3BlcnRpZXM6IHN0cmluZ106IGFueTtcbiAgfTtcblxuICAvKipcbiAgICogVXNlZCB0byBzZXQgdmFsaWRhdGlvbiBydWxlcyBmb3IgYSBwYXJ0aWN1bGFyIGZpZWxkLlxuICAgKiBTaG91bGQgYmUgYW4gb2JqZWN0IG9mIGtleSAtIHZhbHVlIHBhaXJzLiBUaGUgdmFsdWUgY2FuIGVpdGhlciBiZSBhbiBleHByZXNzaW9uIHRvIGV2YWx1YXRlIG9yIGEgZnVuY3Rpb24gdG8gcnVuLlxuICAgKiBFYWNoIHNob3VsZCByZXR1cm4gYSBib29sZWFuIHZhbHVlLCByZXR1cm5pbmcgdHJ1ZSB3aGVuIHRoZSBmaWVsZCBpcyB2YWxpZC4gU2VlIFZhbGlkYXRpb24gZm9yIG1vcmUgaW5mb3JtYXRpb24uXG4gICAqXG4gICAqIHtcbiAgICogICB2YWxpZGF0aW9uPzogKHN0cmluZyB8IFZhbGlkYXRvckZuKVtdO1xuICAgKiAgIFtrZXk6IHN0cmluZ106ICgoY29udHJvbDogQWJzdHJhY3RDb250cm9sLCBmaWVsZDogRm9ybWx5RmllbGRDb25maWcpID0+IGJvb2xlYW4pIHwgKHsgZXhwcmVzc2lvbjogKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCwgZmllbGQ6IEZvcm1seUZpZWxkQ29uZmlnKSA9PiBib29sZWFuLCBtZXNzYWdlOiBWYWxpZGF0aW9uTWVzc2FnZU9wdGlvblsnbWVzc2FnZSddIH0pO1xuICAgKiB9XG4gICAqL1xuICB2YWxpZGF0b3JzPzogYW55O1xuXG4gIC8qKlxuICAgKiBVc2UgdGhpcyBvbmUgZm9yIGFueXRoaW5nIHRoYXQgbmVlZHMgdG8gdmFsaWRhdGUgYXN5bmNocm9ub3VzbHkuXG4gICAqIFByZXR0eSBtdWNoIGV4YWN0bHkgdGhlIHNhbWUgYXMgdGhlIHZhbGlkYXRvcnMgYXBpLCBleGNlcHQgaXQgbXVzdCBiZSBhIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBhIHByb21pc2UuXG4gICAqXG4gICAqIHtcbiAgICogICB2YWxpZGF0aW9uPzogKHN0cmluZyB8IEFzeW5jVmFsaWRhdG9yRm4pW107XG4gICAqICAgW2tleTogc3RyaW5nXTogKChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wsIGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZykgPT4gUHJvbWlzZTxib29sZWFuPiB8IE9ic2VydmFibGU8Ym9vbGVhbj4pIHwgKHsgZXhwcmVzc2lvbjogKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCwgZmllbGQ6IEZvcm1seUZpZWxkQ29uZmlnKSA9PiBQcm9taXNlPGJvb2xlYW4+IHwgT2JzZXJ2YWJsZTxib29sZWFuPiwgbWVzc2FnZTogc3RyaW5nIH0pO1xuICAgKiB9XG4gICAqL1xuICBhc3luY1ZhbGlkYXRvcnM/OiBhbnk7XG5cbiAgLyoqXG4gICAqIENhbiBiZSBzZXQgaW5zdGVhZCBvZiBgdHlwZWAgdG8gcmVuZGVyIGN1c3RvbSBodG1sIGNvbnRlbnQuXG4gICAqL1xuICB0ZW1wbGF0ZT86IHN0cmluZztcblxuICAvKipcbiAgICogIEl0IGlzIGV4cGVjdGVkIHRvIGJlIHRoZSBuYW1lIG9mIHRoZSB3cmFwcGVycy5cbiAgICogIFRoZSBmb3JtbHkgZmllbGQgdGVtcGxhdGUgd2lsbCBiZSB3cmFwcGVkIGJ5IHRoZSBmaXJzdCB3cmFwcGVyLCB0aGVuIHRoZSBzZWNvbmQsIHRoZW4gdGhlIHRoaXJkLCBldGMuXG4gICAqICBZb3UgY2FuIGFsc28gc3BlY2lmeSB0aGVzZSBhcyBwYXJ0IG9mIGEgdHlwZSAod2hpY2ggaXMgdGhlIHJlY29tbWVuZGVkIGFwcHJvYWNoKS5cbiAgICovXG4gIHdyYXBwZXJzPzogKHN0cmluZyB8IFR5cGU8RmllbGRXcmFwcGVyPilbXTtcblxuICAvKipcbiAgICogV2hldGhlciB0byBoaWRlIHRoZSBmaWVsZC4gRGVmYXVsdHMgdG8gZmFsc2UuIElmIHlvdSB3aXNoIHRoaXMgdG8gYmUgY29uZGl0aW9uYWwgdXNlIGBleHByZXNzaW9uczogeyBoaWRlOiAuLi4gfWBcbiAgICovXG4gIGhpZGU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIHJlc2V0IHRoZSB2YWx1ZSBvbiBoaWRlIG9yIG5vdC4gRGVmYXVsdHMgdG8gYHRydWVgLlxuICAgKi9cbiAgcmVzZXRPbkhpZGU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBDb25kaXRpb25hbGx5IGhpZGluZyBGaWVsZCBiYXNlZCBvbiB2YWx1ZXMgZnJvbSBvdGhlciBGaWVsZHNcbiAgICogQGRlcHJlY2F0ZWQgdXNlIGBleHByZXNzaW9uczogeyBoaWRlOiAuLi4gfWBcbiAgICovXG4gIGhpZGVFeHByZXNzaW9uPzogYm9vbGVhbiB8IHN0cmluZyB8ICgobW9kZWw6IGFueSwgZm9ybVN0YXRlOiBhbnksIGZpZWxkPzogRm9ybWx5RmllbGRDb25maWcpID0+IGJvb2xlYW4pO1xuXG4gIC8qKlxuICAgKiBBbiBvYmplY3Qgd2hlcmUgdGhlIGtleSBpcyBhIHByb3BlcnR5IHRvIGJlIHNldCBvbiB0aGUgbWFpbiBmaWVsZCBjb25maWcgYW5kIHRoZSB2YWx1ZSBpcyBhbiBleHByZXNzaW9uIHVzZWQgdG8gYXNzaWduIHRoYXQgcHJvcGVydHkuXG4gICAqIEBkZXByZWNhdGVkIHVzZSBgZXhwcmVzc2lvbnNgXG4gICAqL1xuICBleHByZXNzaW9uUHJvcGVydGllcz86IHtcbiAgICBbcHJvcGVydHk6IHN0cmluZ106IHN0cmluZyB8ICgobW9kZWw6IGFueSwgZm9ybVN0YXRlOiBhbnksIGZpZWxkPzogRm9ybWx5RmllbGRDb25maWcpID0+IGFueSkgfCBPYnNlcnZhYmxlPGFueT47XG4gIH07XG5cbiAgLyoqXG4gICAqIEFuIG9iamVjdCB3aGVyZSB0aGUga2V5IGlzIGEgcHJvcGVydHkgdG8gYmUgc2V0IG9uIHRoZSBtYWluIGZpZWxkIGNvbmZpZyBhbmQgdGhlIHZhbHVlIGlzIGFuIGV4cHJlc3Npb24gdXNlZCB0byBhc3NpZ24gdGhhdCBwcm9wZXJ0eS5cbiAgICovXG4gIGV4cHJlc3Npb25zPzoge1xuICAgIFtwcm9wZXJ0eTogc3RyaW5nXTogc3RyaW5nIHwgKChmaWVsZD86IEZvcm1seUZpZWxkQ29uZmlnKSA9PiBhbnkpIHwgT2JzZXJ2YWJsZTxhbnk+O1xuICB9O1xuXG4gIC8qKlxuICAgKiBZb3UgY2FuIHNwZWNpZnkgeW91ciBvd24gY2xhc3MgdGhhdCB3aWxsIGJlIGFwcGxpZWQgdG8gdGhlIGBmb3JtbHktZmllbGRgIGNvbXBvbmVudC5cbiAgICovXG4gIGNsYXNzTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogU3BlY2lmeSB5b3VyIG93biBjbGFzcyB0aGF0IHdpbGwgYmUgYXBwbGllZCB0byB0aGUgYGZvcm1seS1ncm91cGAgY29tcG9uZW50LlxuICAgKi9cbiAgZmllbGRHcm91cENsYXNzTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogQSBmaWVsZCBncm91cCBpcyBhIHdheSB0byBncm91cCBmaWVsZHMgdG9nZXRoZXIsIG1ha2luZyBhZHZhbmNlZCBsYXlvdXQgdmVyeSBzaW1wbGUuXG4gICAqIEl0IGNhbiBhbHNvIGJlIHVzZWQgdG8gZ3JvdXAgZmllbGRzIHRoYXQgYXJlIGFzc29jaWF0ZWQgd2l0aCB0aGUgc2FtZSBtb2RlbCAodXNlZnVsIGlmIGl0J3MgZGlmZmVyZW50IHRoYW4gdGhlIG1vZGVsIGZvciB0aGUgcmVzdCBvZiB0aGUgZmllbGRzKS5cbiAgICovXG4gIGZpZWxkR3JvdXA/OiBGb3JtbHlGaWVsZENvbmZpZ1tdO1xuXG4gIGZpZWxkQXJyYXk/OiBGb3JtbHlGaWVsZENvbmZpZyB8ICgoZmllbGQ6IEZvcm1seUZpZWxkQ29uZmlnKSA9PiBGb3JtbHlGaWVsZENvbmZpZyk7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gZm9jdXMgb3IgYmx1ciB0aGUgZWxlbWVudCBmaWVsZC4gRGVmYXVsdHMgdG8gZmFsc2UuIElmIHlvdSB3aXNoIHRoaXMgdG8gYmUgY29uZGl0aW9uYWwgdXNlIGBleHByZXNzaW9uc2BcbiAgICovXG4gIGZvY3VzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQW4gb2JqZWN0IHdpdGggYSBmZXcgdXNlZnVsIHByb3BlcnRpZXMgdG8gY29udHJvbCB0aGUgbW9kZWwgY2hhbmdlc1xuICAgKiAtIGBkZWJvdW5jZWA6IGludGVnZXIgdmFsdWUgd2hpY2ggY29udGFpbnMgdGhlIGRlYm91bmNlIG1vZGVsIHVwZGF0ZSB2YWx1ZSBpbiBtaWxsaXNlY29uZHMuIEEgdmFsdWUgb2YgMCB0cmlnZ2VycyBhbiBpbW1lZGlhdGUgdXBkYXRlLlxuICAgKiAtIGB1cGRhdGVPbmA6IHN0cmluZyBldmVudCB2YWx1ZSB0aGF0IGluc3RydWN0cyB3aGVuIHRoZSBjb250cm9sIHNob3VsZCBiZSB1cGRhdGVkXG4gICAqL1xuICBtb2RlbE9wdGlvbnM/OiB7XG4gICAgZGVib3VuY2U/OiB7XG4gICAgICBkZWZhdWx0OiBudW1iZXI7XG4gICAgfTtcbiAgICAvLyBAc2VlIGh0dHBzOi8vYW5ndWxhci5pby9hcGkvZm9ybXMvQWJzdHJhY3RDb250cm9sI3VwZGF0ZU9uXG4gICAgdXBkYXRlT24/OiAnY2hhbmdlJyB8ICdibHVyJyB8ICdzdWJtaXQnO1xuICB9O1xuXG4gIGhvb2tzPzogRm9ybWx5SG9va0NvbmZpZztcblxuICAvKipcbiAgICogQXJyYXkgb2YgZnVuY3Rpb25zIHRvIGV4ZWN1dGUsIGFzIGEgcGlwZWxpbmUsIHdoZW5ldmVyIHRoZSBtb2RlbCB1cGRhdGVzLCB1c3VhbGx5IHZpYSB1c2VyIGlucHV0LlxuICAgKi9cbiAgcGFyc2Vycz86ICgodmFsdWU6IGFueSkgPT4gYW55KVtdO1xuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGNoaWxkIGZpZWxkIGJ5IGtleSBuYW1lXG4gICAqL1xuICBnZXQ/OiAoa2V5OiBGb3JtbHlGaWVsZENvbmZpZ1sna2V5J10pID0+IEZvcm1seUZpZWxkQ29uZmlnO1xuXG4gIC8qKlxuICAgKiBUaGUgbW9kZWwgdGhhdCBzdG9yZXMgYWxsIHRoZSBkYXRhLCB3aGVyZSB0aGUgbW9kZWxba2V5XSBpcyB0aGUgdmFsdWUgb2YgdGhlIGZpZWxkXG4gICAqL1xuICByZWFkb25seSBtb2RlbD86IGFueTtcblxuICAvKipcbiAgICogVGhlIHBhcmVudCBmaWVsZC5cbiAgICovXG4gIHJlYWRvbmx5IHBhcmVudD86IEZvcm1seUZpZWxkQ29uZmlnO1xuXG4gIC8qKlxuICAgKiBUaGUgZm9ybSBvcHRpb25zLlxuICAgKi9cbiAgcmVhZG9ubHkgb3B0aW9ucz86IEZvcm1seUZvcm1PcHRpb25zO1xuXG4gIC8qKlxuICAgKiBUaGUgcGFyZW50IGZvcm0uXG4gICAqL1xuICByZWFkb25seSBmb3JtPzogRm9ybUdyb3VwIHwgRm9ybUFycmF5O1xuXG4gIC8qKlxuICAgKiBUaGlzIGlzIHRoZSBbRm9ybUNvbnRyb2xdKGh0dHBzOi8vYW5ndWxhci5pby9hcGkvZm9ybXMvRm9ybUNvbnRyb2wpIGZvciB0aGUgZmllbGQuXG4gICAqIEl0IHByb3ZpZGVzIHlvdSBtb3JlIGNvbnRyb2wgbGlrZSBydW5uaW5nIHZhbGlkYXRvcnMsIGNhbGN1bGF0aW5nIHN0YXR1cywgYW5kIHJlc2V0dGluZyBzdGF0ZS5cbiAgICovXG4gIHJlYWRvbmx5IGZvcm1Db250cm9sPzogQWJzdHJhY3RDb250cm9sO1xuXG4gIC8qKiBAZGVwcmVjYXRlZCAqL1xuICBvcHRpb25zVHlwZXM/OiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IHR5cGUgRm9ybWx5QXR0cmlidXRlRXZlbnQgPSAoZmllbGQ6IEZvcm1seUZpZWxkQ29uZmlnLCBldmVudD86IGFueSkgPT4gdm9pZDtcblxuLyoqICBAZGVwcmVjYXRlZCAqL1xuZXhwb3J0IGludGVyZmFjZSBGb3JtbHlUZW1wbGF0ZU9wdGlvbnMgZXh0ZW5kcyBGb3JtbHlGaWVsZFByb3BzIHtcbiAgW2FkZGl0aW9uYWxQcm9wZXJ0aWVzOiBzdHJpbmddOiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRm9ybWx5RmllbGRQcm9wcyB7XG4gIHR5cGU/OiBzdHJpbmc7XG4gIGxhYmVsPzogc3RyaW5nO1xuICBwbGFjZWhvbGRlcj86IHN0cmluZztcbiAgZGlzYWJsZWQ/OiBib29sZWFuO1xuICBvcHRpb25zPzogYW55W10gfCBPYnNlcnZhYmxlPGFueVtdPjtcbiAgcm93cz86IG51bWJlcjtcbiAgY29scz86IG51bWJlcjtcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIGhpZGRlbj86IGJvb2xlYW47XG4gIG1heD86IG51bWJlcjtcbiAgbWluPzogbnVtYmVyO1xuXG4gIG1pbkxlbmd0aD86IG51bWJlcjtcbiAgLyoqIEBkZXByZWNhdGVkIHVzZSBgbWluTGVuZ3RoYCAqL1xuICBtaW5sZW5ndGg/OiBudW1iZXI7XG5cbiAgbWF4TGVuZ3RoPzogbnVtYmVyO1xuICAvKiogQGRlcHJlY2F0ZWQgdXNlIGBtaW5MZW5ndGhgICovXG4gIG1heGxlbmd0aD86IG51bWJlcjtcblxuICBwYXR0ZXJuPzogc3RyaW5nIHwgUmVnRXhwO1xuICByZXF1aXJlZD86IGJvb2xlYW47XG4gIHRhYmluZGV4PzogbnVtYmVyO1xuICByZWFkb25seT86IGJvb2xlYW47XG4gIGF0dHJpYnV0ZXM/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB8IG51bWJlciB9O1xuICBzdGVwPzogbnVtYmVyO1xuICBmb2N1cz86IEZvcm1seUF0dHJpYnV0ZUV2ZW50O1xuICBibHVyPzogRm9ybWx5QXR0cmlidXRlRXZlbnQ7XG4gIGtleXVwPzogRm9ybWx5QXR0cmlidXRlRXZlbnQ7XG4gIGtleWRvd24/OiBGb3JtbHlBdHRyaWJ1dGVFdmVudDtcbiAgY2xpY2s/OiBGb3JtbHlBdHRyaWJ1dGVFdmVudDtcbiAgY2hhbmdlPzogRm9ybWx5QXR0cmlidXRlRXZlbnQ7XG4gIGtleXByZXNzPzogRm9ybWx5QXR0cmlidXRlRXZlbnQ7XG59XG5cbmV4cG9ydCB0eXBlIEZvcm1seUhvb2tGbiA9IChmaWVsZDogRm9ybWx5RmllbGRDb25maWcpID0+IHZvaWQ7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRm9ybWx5SG9va0NvbmZpZyB7XG4gIG9uSW5pdD86IEZvcm1seUhvb2tGbjtcbiAgb25DaGFuZ2VzPzogRm9ybWx5SG9va0ZuO1xuICBhZnRlckNvbnRlbnRJbml0PzogRm9ybWx5SG9va0ZuO1xuICBhZnRlclZpZXdJbml0PzogRm9ybWx5SG9va0ZuO1xuICBvbkRlc3Ryb3k/OiBGb3JtbHlIb29rRm47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRm9ybWx5Rm9ybU9wdGlvbnMge1xuICB1cGRhdGVJbml0aWFsVmFsdWU/OiAobW9kZWw/OiBhbnkpID0+IHZvaWQ7XG4gIHJlc2V0TW9kZWw/OiAobW9kZWw/OiBhbnkpID0+IHZvaWQ7XG4gIGZvcm1TdGF0ZT86IGFueTtcbiAgZmllbGRDaGFuZ2VzPzogU3ViamVjdDxGb3JtbHlWYWx1ZUNoYW5nZUV2ZW50PjtcbiAgc2hvd0Vycm9yPzogKGZpZWxkOiBGaWVsZFR5cGUpID0+IGJvb2xlYW47XG4gIGJ1aWxkPzogKGZpZWxkPzogRm9ybWx5RmllbGRDb25maWcpID0+IEZvcm1seUZpZWxkQ29uZmlnO1xuICBjaGVja0V4cHJlc3Npb25zPzogKGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZykgPT4gdm9pZDtcbiAgZGV0ZWN0Q2hhbmdlcz86IChmaWVsZDogRm9ybWx5RmllbGRDb25maWcpID0+IHZvaWQ7XG4gIHBhcmVudEZvcm0/OiBGb3JtR3JvdXBEaXJlY3RpdmUgfCBudWxsO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZvcm1seVZhbHVlQ2hhbmdlRXZlbnQge1xuICBmaWVsZDogRm9ybWx5RmllbGRDb25maWc7XG4gIHR5cGU6IHN0cmluZztcbiAgdmFsdWU6IGFueTtcbiAgW21ldGE6IHN0cmluZ106IGFueTtcbn1cbiJdfQ==
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGRjb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY29yZS9zcmMvbGliL21vZGVscy9maWVsZGNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRm9ybUdyb3VwLFxuICBGb3JtQXJyYXksXG4gIEFic3RyYWN0Q29udHJvbCxcbiAgRm9ybUdyb3VwRGlyZWN0aXZlLFxuICBWYWxpZGF0b3JGbixcbiAgQXN5bmNWYWxpZGF0b3JGbixcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRmllbGRUeXBlIH0gZnJvbSAnLi4vdGVtcGxhdGVzL2ZpZWxkLnR5cGUnO1xuaW1wb3J0IHsgRmllbGRXcmFwcGVyIH0gZnJvbSAnLi4vdGVtcGxhdGVzL2ZpZWxkLndyYXBwZXInO1xuaW1wb3J0IHsgVmFsaWRhdGlvbk1lc3NhZ2VPcHRpb24gfSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IHsgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZvcm1seUZpZWxkQ29uZmlnPFByb3BzID0gRm9ybWx5RmllbGRQcm9wcyAmIHsgW2FkZGl0aW9uYWxQcm9wZXJ0aWVzOiBzdHJpbmddOiBhbnkgfT4ge1xuICAvKipcbiAgICogVGhlIGtleSB0aGF0IHJlbGF0ZXMgdG8gdGhlIG1vZGVsLiBUaGlzIHdpbGwgbGluayB0aGUgZmllbGQgdmFsdWUgdG8gdGhlIG1vZGVsXG4gICAqL1xuICBrZXk/OiBzdHJpbmcgfCBudW1iZXIgfCAoc3RyaW5nIHwgbnVtYmVyKVtdO1xuXG4gIC8qKlxuICAgKiBUaGlzIHNob3VsZCBiZSBhIGZvcm1seS1maWVsZCB0eXBlIGFkZGVkIGVpdGhlciBieSB5b3Ugb3IgYSBwbHVnaW4uIE1vcmUgaW5mb3JtYXRpb24gb3ZlciBhdCBDcmVhdGluZyBGb3JtbHkgRmllbGRzLlxuICAgKi9cbiAgdHlwZT86IHN0cmluZyB8IFR5cGU8RmllbGRUeXBlPjtcblxuICAvKipcbiAgICogVXNlIGBkZWZhdWx0VmFsdWVgIHRvIGluaXRpYWxpemUgaXQgdGhlIG1vZGVsLiBJZiB0aGlzIGlzIHByb3ZpZGVkIGFuZCB0aGUgdmFsdWUgb2YgdGhlIG1vZGVsIGF0IGNvbXBpbGUtdGltZSBpcyB1bmRlZmluZWQsIHRoZW4gdGhlIHZhbHVlIG9mIHRoZSBtb2RlbCB3aWxsIGJlIGFzc2lnbmVkIHRvIGBkZWZhdWx0VmFsdWVgLlxuICAgKi9cbiAgZGVmYXVsdFZhbHVlPzogYW55O1xuXG4gIC8qKlxuICAgKiBUaGlzIGFsbG93cyB5b3UgdG8gc3BlY2lmeSB0aGUgYGlkYCBvZiB5b3VyIGZpZWxkLiBOb3RlLCB0aGUgYGlkYCBpcyBnZW5lcmF0ZWQgaWYgbm90IHNldC5cbiAgICovXG4gIGlkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZiB5b3Ugd2lzaCwgeW91IGNhbiBzcGVjaWZ5IGEgc3BlY2lmaWMgYG5hbWVgIGZvciB5b3VyIGZpZWxkLiBUaGlzIGlzIHVzZWZ1bCBpZiB5b3UncmUgcG9zdGluZyB0aGUgZm9ybSB0byBhIHNlcnZlciB1c2luZyB0ZWNobmlxdWVzIG9mIHllc3Rlci15ZWFyLlxuICAgKi9cbiAgbmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogVGhpcyBpcyByZXNlcnZlZCBmb3IgdGhlIHRlbXBsYXRlcy4gQW55IHRlbXBsYXRlLXNwZWNpZmljIG9wdGlvbnMgZ28gaW4gaGVyZS4gTG9vayBhdCB5b3VyIHNwZWNpZmljIHRlbXBsYXRlIGltcGxlbWVudGF0aW9uIHRvIGtub3cgdGhlIG9wdGlvbnMgcmVxdWlyZWQgZm9yIHRoaXMuXG4gICAqL1xuICBwcm9wcz86IFByb3BzO1xuXG4gIC8qKiBAZGVwcmVjYXRlZCBVc2UgYHByb3BzYCBpbnN0ZWFkLiAqL1xuICB0ZW1wbGF0ZU9wdGlvbnM/OiBGb3JtbHlUZW1wbGF0ZU9wdGlvbnM7XG5cbiAgLyoqXG4gICAqIEFuIG9iamVjdCB3aXRoIGEgZmV3IHVzZWZ1bCBwcm9wZXJ0aWVzXG4gICAqIC0gYHZhbGlkYXRpb24ubWVzc2FnZXNgOiBBIG1hcCBvZiBtZXNzYWdlIG5hbWVzIHRoYXQgd2lsbCBiZSBkaXNwbGF5ZWQgd2hlbiB0aGUgZmllbGQgaGFzIGVycm9ycy5cbiAgICogLSBgdmFsaWRhdGlvbi5zaG93YDogQSBib29sZWFuIHlvdSBhcyB0aGUgZGV2ZWxvcGVyIGNhbiBzZXQgdG8gZm9yY2UgZGlzcGxheWluZyBlcnJvcnMgd2hhdGV2ZXIgdGhlIHN0YXRlIG9mIGZpZWxkLiBUaGlzIGlzIHVzZWZ1bCB3aGVuIHlvdSdyZSB0cnlpbmcgdG8gY2FsbCB0aGUgdXNlcidzIGF0dGVudGlvbiB0byBzb21lIGZpZWxkcyBmb3Igc29tZSByZWFzb24uXG4gICAqL1xuICB2YWxpZGF0aW9uPzoge1xuICAgIG1lc3NhZ2VzPzogeyBbbWVzc2FnZVByb3BlcnRpZXM6IHN0cmluZ106IFZhbGlkYXRpb25NZXNzYWdlT3B0aW9uWydtZXNzYWdlJ10gfSAmIHtcbiAgICAgIC8qKiBAZGVwcmVjYXRlZCB1c2UgYG1pbkxlbmd0aGAgKi9cbiAgICAgIG1pbmxlbmd0aD86IFZhbGlkYXRpb25NZXNzYWdlT3B0aW9uWydtZXNzYWdlJ107XG5cbiAgICAgIC8qKiBAZGVwcmVjYXRlZCB1c2UgYG1heExlbmd0aGAgKi9cbiAgICAgIG1heGxlbmd0aD86IFZhbGlkYXRpb25NZXNzYWdlT3B0aW9uWydtZXNzYWdlJ107XG4gICAgfTtcbiAgICBzaG93PzogYm9vbGVhbjtcbiAgICBbYWRkaXRpb25hbFByb3BlcnRpZXM6IHN0cmluZ106IGFueTtcbiAgfTtcblxuICAvKipcbiAgICogVXNlZCB0byBzZXQgdmFsaWRhdGlvbiBydWxlcyBmb3IgYSBwYXJ0aWN1bGFyIGZpZWxkLlxuICAgKiBTaG91bGQgYmUgYW4gb2JqZWN0IG9mIGtleSAtIHZhbHVlIHBhaXJzLiBUaGUgdmFsdWUgY2FuIGVpdGhlciBiZSBhbiBleHByZXNzaW9uIHRvIGV2YWx1YXRlIG9yIGEgZnVuY3Rpb24gdG8gcnVuLlxuICAgKiBFYWNoIHNob3VsZCByZXR1cm4gYSBib29sZWFuIHZhbHVlLCByZXR1cm5pbmcgdHJ1ZSB3aGVuIHRoZSBmaWVsZCBpcyB2YWxpZC4gU2VlIFZhbGlkYXRpb24gZm9yIG1vcmUgaW5mb3JtYXRpb24uXG4gICAqL1xuICB2YWxpZGF0b3JzPzogRm9ybWx5VmFsaWRhdGlvbjxWYWxpZGF0b3JGbiwgYm9vbGVhbj47XG5cbiAgLyoqXG4gICAqIFVzZSB0aGlzIG9uZSBmb3IgYW55dGhpbmcgdGhhdCBuZWVkcyB0byB2YWxpZGF0ZSBhc3luY2hyb25vdXNseS5cbiAgICogUHJldHR5IG11Y2ggZXhhY3RseSB0aGUgc2FtZSBhcyB0aGUgdmFsaWRhdG9ycyBhcGksIGV4Y2VwdCBpdCBtdXN0IGJlIGEgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGEgcHJvbWlzZS5cbiAgICovXG4gIGFzeW5jVmFsaWRhdG9ycz86IEZvcm1seVZhbGlkYXRpb248QXN5bmNWYWxpZGF0b3JGbiwgUHJvbWlzZTxib29sZWFuPiB8IE9ic2VydmFibGU8Ym9vbGVhbj4+O1xuXG4gIC8qKlxuICAgKiBDYW4gYmUgc2V0IGluc3RlYWQgb2YgYHR5cGVgIHRvIHJlbmRlciBjdXN0b20gaHRtbCBjb250ZW50LlxuICAgKi9cbiAgdGVtcGxhdGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqICBJdCBpcyBleHBlY3RlZCB0byBiZSB0aGUgbmFtZSBvZiB0aGUgd3JhcHBlcnMuXG4gICAqICBUaGUgZm9ybWx5IGZpZWxkIHRlbXBsYXRlIHdpbGwgYmUgd3JhcHBlZCBieSB0aGUgZmlyc3Qgd3JhcHBlciwgdGhlbiB0aGUgc2Vjb25kLCB0aGVuIHRoZSB0aGlyZCwgZXRjLlxuICAgKiAgWW91IGNhbiBhbHNvIHNwZWNpZnkgdGhlc2UgYXMgcGFydCBvZiBhIHR5cGUgKHdoaWNoIGlzIHRoZSByZWNvbW1lbmRlZCBhcHByb2FjaCkuXG4gICAqL1xuICB3cmFwcGVycz86IChzdHJpbmcgfCBUeXBlPEZpZWxkV3JhcHBlcj4pW107XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gaGlkZSB0aGUgZmllbGQuIERlZmF1bHRzIHRvIGZhbHNlLiBJZiB5b3Ugd2lzaCB0aGlzIHRvIGJlIGNvbmRpdGlvbmFsIHVzZSBgZXhwcmVzc2lvbnM6IHsgaGlkZTogLi4uIH1gXG4gICAqL1xuICBoaWRlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciB0byByZXNldCB0aGUgdmFsdWUgb24gaGlkZSBvciBub3QuIERlZmF1bHRzIHRvIGB0cnVlYC5cbiAgICovXG4gIHJlc2V0T25IaWRlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQ29uZGl0aW9uYWxseSBoaWRpbmcgRmllbGQgYmFzZWQgb24gdmFsdWVzIGZyb20gb3RoZXIgRmllbGRzXG4gICAqIEBkZXByZWNhdGVkIHVzZSBgZXhwcmVzc2lvbnM6IHsgaGlkZTogLi4uIH1gXG4gICAqL1xuICBoaWRlRXhwcmVzc2lvbj86IGJvb2xlYW4gfCBzdHJpbmcgfCAoKG1vZGVsOiBhbnksIGZvcm1TdGF0ZTogYW55LCBmaWVsZD86IEZvcm1seUZpZWxkQ29uZmlnKSA9PiBib29sZWFuKTtcblxuICAvKipcbiAgICogQW4gb2JqZWN0IHdoZXJlIHRoZSBrZXkgaXMgYSBwcm9wZXJ0eSB0byBiZSBzZXQgb24gdGhlIG1haW4gZmllbGQgY29uZmlnIGFuZCB0aGUgdmFsdWUgaXMgYW4gZXhwcmVzc2lvbiB1c2VkIHRvIGFzc2lnbiB0aGF0IHByb3BlcnR5LlxuICAgKiBAZGVwcmVjYXRlZCB1c2UgYGV4cHJlc3Npb25zYFxuICAgKi9cbiAgZXhwcmVzc2lvblByb3BlcnRpZXM/OiB7XG4gICAgW3Byb3BlcnR5OiBzdHJpbmddOiBzdHJpbmcgfCAoKG1vZGVsOiBhbnksIGZvcm1TdGF0ZTogYW55LCBmaWVsZD86IEZvcm1seUZpZWxkQ29uZmlnKSA9PiBhbnkpIHwgT2JzZXJ2YWJsZTxhbnk+O1xuICB9O1xuXG4gIC8qKlxuICAgKiBBbiBvYmplY3Qgd2hlcmUgdGhlIGtleSBpcyBhIHByb3BlcnR5IHRvIGJlIHNldCBvbiB0aGUgbWFpbiBmaWVsZCBjb25maWcgYW5kIHRoZSB2YWx1ZSBpcyBhbiBleHByZXNzaW9uIHVzZWQgdG8gYXNzaWduIHRoYXQgcHJvcGVydHkuXG4gICAqL1xuICBleHByZXNzaW9ucz86IHtcbiAgICBbcHJvcGVydHk6IHN0cmluZ106IHN0cmluZyB8ICgoZmllbGQ6IEZvcm1seUZpZWxkQ29uZmlnKSA9PiBhbnkpIHwgT2JzZXJ2YWJsZTxhbnk+O1xuICB9O1xuXG4gIC8qKlxuICAgKiBZb3UgY2FuIHNwZWNpZnkgeW91ciBvd24gY2xhc3MgdGhhdCB3aWxsIGJlIGFwcGxpZWQgdG8gdGhlIGBmb3JtbHktZmllbGRgIGNvbXBvbmVudC5cbiAgICovXG4gIGNsYXNzTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogU3BlY2lmeSB5b3VyIG93biBjbGFzcyB0aGF0IHdpbGwgYmUgYXBwbGllZCB0byB0aGUgYGZvcm1seS1ncm91cGAgY29tcG9uZW50LlxuICAgKi9cbiAgZmllbGRHcm91cENsYXNzTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogQSBmaWVsZCBncm91cCBpcyBhIHdheSB0byBncm91cCBmaWVsZHMgdG9nZXRoZXIsIG1ha2luZyBhZHZhbmNlZCBsYXlvdXQgdmVyeSBzaW1wbGUuXG4gICAqIEl0IGNhbiBhbHNvIGJlIHVzZWQgdG8gZ3JvdXAgZmllbGRzIHRoYXQgYXJlIGFzc29jaWF0ZWQgd2l0aCB0aGUgc2FtZSBtb2RlbCAodXNlZnVsIGlmIGl0J3MgZGlmZmVyZW50IHRoYW4gdGhlIG1vZGVsIGZvciB0aGUgcmVzdCBvZiB0aGUgZmllbGRzKS5cbiAgICovXG4gIGZpZWxkR3JvdXA/OiBGb3JtbHlGaWVsZENvbmZpZ1tdO1xuXG4gIGZpZWxkQXJyYXk/OiBGb3JtbHlGaWVsZENvbmZpZyB8ICgoZmllbGQ6IEZvcm1seUZpZWxkQ29uZmlnKSA9PiBGb3JtbHlGaWVsZENvbmZpZyk7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gZm9jdXMgb3IgYmx1ciB0aGUgZWxlbWVudCBmaWVsZC4gRGVmYXVsdHMgdG8gZmFsc2UuIElmIHlvdSB3aXNoIHRoaXMgdG8gYmUgY29uZGl0aW9uYWwgdXNlIGBleHByZXNzaW9uc2BcbiAgICovXG4gIGZvY3VzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQW4gb2JqZWN0IHdpdGggYSBmZXcgdXNlZnVsIHByb3BlcnRpZXMgdG8gY29udHJvbCB0aGUgbW9kZWwgY2hhbmdlc1xuICAgKiAtIGBkZWJvdW5jZWA6IGludGVnZXIgdmFsdWUgd2hpY2ggY29udGFpbnMgdGhlIGRlYm91bmNlIG1vZGVsIHVwZGF0ZSB2YWx1ZSBpbiBtaWxsaXNlY29uZHMuIEEgdmFsdWUgb2YgMCB0cmlnZ2VycyBhbiBpbW1lZGlhdGUgdXBkYXRlLlxuICAgKiAtIGB1cGRhdGVPbmA6IHN0cmluZyBldmVudCB2YWx1ZSB0aGF0IGluc3RydWN0cyB3aGVuIHRoZSBjb250cm9sIHNob3VsZCBiZSB1cGRhdGVkXG4gICAqL1xuICBtb2RlbE9wdGlvbnM/OiB7XG4gICAgZGVib3VuY2U/OiB7XG4gICAgICBkZWZhdWx0OiBudW1iZXI7XG4gICAgfTtcbiAgICAvLyBAc2VlIGh0dHBzOi8vYW5ndWxhci5pby9hcGkvZm9ybXMvQWJzdHJhY3RDb250cm9sI3VwZGF0ZU9uXG4gICAgdXBkYXRlT24/OiAnY2hhbmdlJyB8ICdibHVyJyB8ICdzdWJtaXQnO1xuICB9O1xuXG4gIGhvb2tzPzogRm9ybWx5SG9va0NvbmZpZztcblxuICAvKipcbiAgICogQXJyYXkgb2YgZnVuY3Rpb25zIHRvIGV4ZWN1dGUsIGFzIGEgcGlwZWxpbmUsIHdoZW5ldmVyIHRoZSBtb2RlbCB1cGRhdGVzLCB1c3VhbGx5IHZpYSB1c2VyIGlucHV0LlxuICAgKi9cbiAgcGFyc2Vycz86ICgodmFsdWU6IGFueSkgPT4gYW55KVtdO1xuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGNoaWxkIGZpZWxkIGJ5IGtleSBuYW1lXG4gICAqL1xuICBnZXQ/OiAoa2V5OiBGb3JtbHlGaWVsZENvbmZpZ1sna2V5J10pID0+IEZvcm1seUZpZWxkQ29uZmlnO1xuXG4gIC8qKlxuICAgKiBUaGUgbW9kZWwgdGhhdCBzdG9yZXMgYWxsIHRoZSBkYXRhLCB3aGVyZSB0aGUgbW9kZWxba2V5XSBpcyB0aGUgdmFsdWUgb2YgdGhlIGZpZWxkXG4gICAqL1xuICByZWFkb25seSBtb2RlbD86IGFueTtcblxuICAvKipcbiAgICogVGhlIHBhcmVudCBmaWVsZC5cbiAgICovXG4gIHJlYWRvbmx5IHBhcmVudD86IEZvcm1seUZpZWxkQ29uZmlnO1xuXG4gIC8qKlxuICAgKiBUaGUgZm9ybSBvcHRpb25zLlxuICAgKi9cbiAgcmVhZG9ubHkgb3B0aW9ucz86IEZvcm1seUZvcm1PcHRpb25zO1xuXG4gIC8qKlxuICAgKiBUaGUgcGFyZW50IGZvcm0uXG4gICAqL1xuICByZWFkb25seSBmb3JtPzogRm9ybUdyb3VwIHwgRm9ybUFycmF5O1xuXG4gIC8qKlxuICAgKiBUaGlzIGlzIHRoZSBbRm9ybUNvbnRyb2xdKGh0dHBzOi8vYW5ndWxhci5pby9hcGkvZm9ybXMvRm9ybUNvbnRyb2wpIGZvciB0aGUgZmllbGQuXG4gICAqIEl0IHByb3ZpZGVzIHlvdSBtb3JlIGNvbnRyb2wgbGlrZSBydW5uaW5nIHZhbGlkYXRvcnMsIGNhbGN1bGF0aW5nIHN0YXR1cywgYW5kIHJlc2V0dGluZyBzdGF0ZS5cbiAgICovXG4gIHJlYWRvbmx5IGZvcm1Db250cm9sPzogQWJzdHJhY3RDb250cm9sO1xuXG4gIC8qKiBAZGVwcmVjYXRlZCAqL1xuICBvcHRpb25zVHlwZXM/OiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IHR5cGUgRm9ybWx5QXR0cmlidXRlRXZlbnQgPSAoZmllbGQ6IEZvcm1seUZpZWxkQ29uZmlnLCBldmVudD86IGFueSkgPT4gdm9pZDtcblxuLyoqICBAZGVwcmVjYXRlZCAqL1xuZXhwb3J0IGludGVyZmFjZSBGb3JtbHlUZW1wbGF0ZU9wdGlvbnMgZXh0ZW5kcyBGb3JtbHlGaWVsZFByb3BzIHtcbiAgW2FkZGl0aW9uYWxQcm9wZXJ0aWVzOiBzdHJpbmddOiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRm9ybWx5RmllbGRQcm9wcyB7XG4gIHR5cGU/OiBzdHJpbmc7XG4gIGxhYmVsPzogc3RyaW5nO1xuICBwbGFjZWhvbGRlcj86IHN0cmluZztcbiAgZGlzYWJsZWQ/OiBib29sZWFuO1xuICBvcHRpb25zPzogYW55W10gfCBPYnNlcnZhYmxlPGFueVtdPjtcbiAgcm93cz86IG51bWJlcjtcbiAgY29scz86IG51bWJlcjtcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIGhpZGRlbj86IGJvb2xlYW47XG4gIG1heD86IG51bWJlcjtcbiAgbWluPzogbnVtYmVyO1xuXG4gIG1pbkxlbmd0aD86IG51bWJlcjtcbiAgLyoqIEBkZXByZWNhdGVkIHVzZSBgbWluTGVuZ3RoYCAqL1xuICBtaW5sZW5ndGg/OiBudW1iZXI7XG5cbiAgbWF4TGVuZ3RoPzogbnVtYmVyO1xuICAvKiogQGRlcHJlY2F0ZWQgdXNlIGBtYXhMZW5ndGhgICovXG4gIG1heGxlbmd0aD86IG51bWJlcjtcblxuICBwYXR0ZXJuPzogc3RyaW5nIHwgUmVnRXhwO1xuICByZXF1aXJlZD86IGJvb2xlYW47XG4gIHRhYmluZGV4PzogbnVtYmVyO1xuICByZWFkb25seT86IGJvb2xlYW47XG4gIGF0dHJpYnV0ZXM/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB8IG51bWJlciB9O1xuICBzdGVwPzogbnVtYmVyO1xuICBmb2N1cz86IEZvcm1seUF0dHJpYnV0ZUV2ZW50O1xuICBibHVyPzogRm9ybWx5QXR0cmlidXRlRXZlbnQ7XG4gIGtleXVwPzogRm9ybWx5QXR0cmlidXRlRXZlbnQ7XG4gIGtleWRvd24/OiBGb3JtbHlBdHRyaWJ1dGVFdmVudDtcbiAgY2xpY2s/OiBGb3JtbHlBdHRyaWJ1dGVFdmVudDtcbiAgY2hhbmdlPzogRm9ybWx5QXR0cmlidXRlRXZlbnQ7XG4gIGtleXByZXNzPzogRm9ybWx5QXR0cmlidXRlRXZlbnQ7XG59XG5cbmV4cG9ydCB0eXBlIEZvcm1seUhvb2tGbiA9IChmaWVsZDogRm9ybWx5RmllbGRDb25maWcpID0+IHZvaWQ7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRm9ybWx5SG9va0NvbmZpZyB7XG4gIG9uSW5pdD86IEZvcm1seUhvb2tGbjtcbiAgb25DaGFuZ2VzPzogRm9ybWx5SG9va0ZuO1xuICBhZnRlckNvbnRlbnRJbml0PzogRm9ybWx5SG9va0ZuO1xuICBhZnRlclZpZXdJbml0PzogRm9ybWx5SG9va0ZuO1xuICBvbkRlc3Ryb3k/OiBGb3JtbHlIb29rRm47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRm9ybWx5Rm9ybU9wdGlvbnMge1xuICB1cGRhdGVJbml0aWFsVmFsdWU/OiAobW9kZWw/OiBhbnkpID0+IHZvaWQ7XG4gIHJlc2V0TW9kZWw/OiAobW9kZWw/OiBhbnkpID0+IHZvaWQ7XG4gIGZvcm1TdGF0ZT86IGFueTtcbiAgZmllbGRDaGFuZ2VzPzogU3ViamVjdDxGb3JtbHlWYWx1ZUNoYW5nZUV2ZW50PjtcbiAgc2hvd0Vycm9yPzogKGZpZWxkOiBGaWVsZFR5cGUpID0+IGJvb2xlYW47XG4gIGJ1aWxkPzogKGZpZWxkPzogRm9ybWx5RmllbGRDb25maWcpID0+IEZvcm1seUZpZWxkQ29uZmlnO1xuICBjaGVja0V4cHJlc3Npb25zPzogKGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZykgPT4gdm9pZDtcbiAgZGV0ZWN0Q2hhbmdlcz86IChmaWVsZDogRm9ybWx5RmllbGRDb25maWcpID0+IHZvaWQ7XG4gIHBhcmVudEZvcm0/OiBGb3JtR3JvdXBEaXJlY3RpdmUgfCBudWxsO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZvcm1seVZhbHVlQ2hhbmdlRXZlbnQge1xuICBmaWVsZDogRm9ybWx5RmllbGRDb25maWc7XG4gIHR5cGU6IHN0cmluZztcbiAgdmFsdWU6IGFueTtcbiAgW21ldGE6IHN0cmluZ106IGFueTtcbn1cblxuaW50ZXJmYWNlIEZvcm1seVZhbGlkYXRpb248VCwgUj4ge1xuICB2YWxpZGF0aW9uPzogKHN0cmluZyB8IFQpW10gfCBhbnk7XG4gIFtrZXk6IHN0cmluZ106IEZvcm1seVZhbGlkYXRvckZuPFI+IHwgRm9ybWx5VmFsaWRhdG9yRXhwcmVzc2lvbkZuPFI+IHwgYW55O1xufVxudHlwZSBGb3JtbHlWYWxpZGF0b3JGbjxUPiA9IChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wsIGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZykgPT4gVDtcblxuaW50ZXJmYWNlIEZvcm1seVZhbGlkYXRvckV4cHJlc3Npb25GbjxUPiB7XG4gIGV4cHJlc3Npb246IEZvcm1seVZhbGlkYXRvckZuPFQ+O1xuICBtZXNzYWdlOiBzdHJpbmcgfCAoKGVycm9yOiBhbnksIGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZykgPT4gc3RyaW5nKTtcbn1cbiJdfQ==
|