@clr/angular 12.0.13 → 12.0.14

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.
@@ -3,15 +3,60 @@
3
3
  * This software is released under MIT license.
4
4
  * The full license information can be found in LICENSE in the root directory of this project.
5
5
  */
6
- import { Directive, ElementRef, HostListener, Input } from '@angular/core';
6
+ import { DOCUMENT, isPlatformBrowser } from '@angular/common';
7
+ import { Directive, ElementRef, HostListener, Inject, Injector, Input, PLATFORM_ID, Renderer2, } from '@angular/core';
8
+ import { filter } from 'rxjs/operators';
7
9
  import { ResponsiveNavigationService } from './providers/responsive-navigation.service';
8
10
  import { ResponsiveNavCodes } from './responsive-nav-codes';
9
- export class ClrNavLevel {
10
- constructor(responsiveNavService, elementRef) {
11
+ import { LARGE_BREAKPOINT } from '../../utils/breakpoints/breakpoints';
12
+ import { FocusTrap } from '../../utils/focus-trap/focus-trap';
13
+ import { commonStringsDefault } from '../../utils';
14
+ import '@cds/core/internal-components/close-button/register.js';
15
+ const createCdsCloseButton = (document, ariaLabel) => {
16
+ const cdsCloseButton = document.createElement('cds-internal-close-button');
17
+ cdsCloseButton.setAttribute('icon-size', '32');
18
+ console.log(ariaLabel);
19
+ cdsCloseButton.setAttribute('aria-label', ariaLabel);
20
+ cdsCloseButton.setAttribute('aria-hidden', 'true');
21
+ cdsCloseButton.setAttribute('type', 'button');
22
+ /**
23
+ * The button is hidden by default based on our Desktop-first approach.
24
+ */
25
+ cdsCloseButton.setAttribute('hidden', 'true');
26
+ cdsCloseButton.className = 'clr-nav-close';
27
+ return cdsCloseButton;
28
+ };
29
+ const ɵ0 = createCdsCloseButton;
30
+ export class ClrNavLevel extends FocusTrap {
31
+ constructor(platformId, responsiveNavService, elementRef, renderer, injector) {
32
+ super(renderer, injector, platformId, elementRef.nativeElement);
11
33
  this.responsiveNavService = responsiveNavService;
12
34
  this.elementRef = elementRef;
35
+ this._isOpen = false;
36
+ if (isPlatformBrowser(platformId)) {
37
+ this._document = injector.get(DOCUMENT);
38
+ }
39
+ this._subscription = responsiveNavService.navControl
40
+ .pipe(filter(x => x.navLevel === this.level), filter(({ controlCode }) => (controlCode === ResponsiveNavCodes.NAV_OPEN && !this.isOpen) ||
41
+ (controlCode === ResponsiveNavCodes.NAV_CLOSE && this.isOpen)))
42
+ .subscribe(({ controlCode }) => {
43
+ if (controlCode === ResponsiveNavCodes.NAV_OPEN) {
44
+ this.open();
45
+ return;
46
+ }
47
+ this.close();
48
+ });
49
+ this._subscription.add(responsiveNavService.navControl
50
+ .pipe(filter(({ controlCode }) => controlCode === ResponsiveNavCodes.NAV_CLOSE_ALL))
51
+ .subscribe(() => this.close()));
13
52
  }
14
53
  ngOnInit() {
54
+ if (!this.closeButtonAriaLabel) {
55
+ this.closeButtonAriaLabel =
56
+ this._level === ResponsiveNavCodes.NAV_LEVEL_1
57
+ ? commonStringsDefault.responsiveNavToggleClose
58
+ : commonStringsDefault.responsiveNavOverflowClose;
59
+ }
15
60
  if (this.level !== ResponsiveNavCodes.NAV_LEVEL_1 && this.level !== ResponsiveNavCodes.NAV_LEVEL_2) {
16
61
  console.error('Nav Level can only be 1 or 2');
17
62
  return;
@@ -19,6 +64,20 @@ export class ClrNavLevel {
19
64
  this.responsiveNavService.registerNav(this.level);
20
65
  this.addNavClass(this.level);
21
66
  }
67
+ ngAfterViewInit() {
68
+ const closeButton = createCdsCloseButton(this._document, this.closeButtonAriaLabel);
69
+ this.renderer.listen(closeButton, 'click', this.close.bind(this));
70
+ this.renderer.insertBefore(this.elementRef.nativeElement, closeButton, this.elementRef.nativeElement.firstChild); // Adding the button at the top of the nav
71
+ if (this._document.body.clientWidth < LARGE_BREAKPOINT) {
72
+ /**
73
+ * Close if the document body is smaller than the large breakpoint for example:
74
+ * - Refreshing the page
75
+ * - Browser window size is changed when opening the applicaiton
76
+ * - Browser zoom is turned on and zoomed to a size that makes the document smaller than the large breakpoint
77
+ */
78
+ this.close();
79
+ }
80
+ }
22
81
  addNavClass(level) {
23
82
  const navHostClassList = this.elementRef.nativeElement.classList;
24
83
  if (level === ResponsiveNavCodes.NAV_LEVEL_1) {
@@ -35,10 +94,29 @@ export class ClrNavLevel {
35
94
  get responsiveNavCodes() {
36
95
  return ResponsiveNavCodes;
37
96
  }
97
+ get isOpen() {
98
+ return this._isOpen;
99
+ }
100
+ onResize(event) {
101
+ const target = event.target;
102
+ if (target.innerWidth < LARGE_BREAKPOINT && this.isOpen) {
103
+ this.close();
104
+ return;
105
+ }
106
+ this.showNavigation();
107
+ }
38
108
  open() {
109
+ this._isOpen = true;
110
+ this.showNavigation();
111
+ this.enableFocusTrap();
112
+ this.showCloseButton();
39
113
  this.responsiveNavService.sendControlMessage(ResponsiveNavCodes.NAV_OPEN, this.level);
40
114
  }
41
115
  close() {
116
+ this._isOpen = false;
117
+ this.hideNavigation();
118
+ this.removeFocusTrap();
119
+ this.hideCloseButton();
42
120
  this.responsiveNavService.sendControlMessage(ResponsiveNavCodes.NAV_CLOSE, this.level);
43
121
  }
44
122
  // TODO: Figure out whats the best way to do this. Possible methods
@@ -61,19 +139,42 @@ export class ClrNavLevel {
61
139
  current = current.parentNode;
62
140
  }
63
141
  }
142
+ hideNavigation() {
143
+ this.renderer.setAttribute(this.elementRef.nativeElement, 'aria-hidden', 'true');
144
+ this.renderer.setAttribute(this.elementRef.nativeElement, 'hidden', 'true');
145
+ }
146
+ showNavigation() {
147
+ this.renderer.setAttribute(this.elementRef.nativeElement, 'aria-hidden', 'false');
148
+ this.renderer.removeAttribute(this.elementRef.nativeElement, 'hidden');
149
+ }
150
+ hideCloseButton() {
151
+ this.renderer.setAttribute(this.elementRef.nativeElement, 'aria-hidden', 'true');
152
+ this.renderer.setAttribute(this.elementRef.nativeElement.querySelector('.clr-nav-close'), 'hidden', 'true');
153
+ }
154
+ showCloseButton() {
155
+ this.renderer.setAttribute(this.elementRef.nativeElement.querySelector('.clr-nav-close'), 'aria-hidden', 'false');
156
+ this.renderer.removeAttribute(this.elementRef.nativeElement.querySelector('.clr-nav-close'), 'hidden');
157
+ }
64
158
  ngOnDestroy() {
65
159
  this.responsiveNavService.unregisterNav(this.level);
160
+ this._subscription.unsubscribe();
66
161
  }
67
162
  }
68
163
  ClrNavLevel.decorators = [
69
164
  { type: Directive, args: [{ selector: '[clr-nav-level]' },] }
70
165
  ];
71
166
  ClrNavLevel.ctorParameters = () => [
167
+ { type: undefined, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] },
72
168
  { type: ResponsiveNavigationService },
73
- { type: ElementRef }
169
+ { type: ElementRef },
170
+ { type: Renderer2 },
171
+ { type: Injector }
74
172
  ];
75
173
  ClrNavLevel.propDecorators = {
76
174
  _level: [{ type: Input, args: ['clr-nav-level',] }],
175
+ closeButtonAriaLabel: [{ type: Input, args: ['closeAriaLabel',] }],
176
+ onResize: [{ type: HostListener, args: ['window:resize', ['$event'],] }],
77
177
  onMouseClick: [{ type: HostListener, args: ['click', ['$event.target'],] }]
78
178
  };
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2LWxldmVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci9zcmMvbGF5b3V0L25hdi9uYXYtbGV2ZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUVILE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFbkYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDeEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFHNUQsTUFBTSxPQUFPLFdBQVc7SUFHdEIsWUFBb0Isb0JBQWlELEVBQVUsVUFBc0I7UUFBakYseUJBQW9CLEdBQXBCLG9CQUFvQixDQUE2QjtRQUFVLGVBQVUsR0FBVixVQUFVLENBQVk7SUFBRyxDQUFDO0lBRXpHLFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssa0JBQWtCLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssa0JBQWtCLENBQUMsV0FBVyxFQUFFO1lBQ2xHLE9BQU8sQ0FBQyxLQUFLLENBQUMsOEJBQThCLENBQUMsQ0FBQztZQUM5QyxPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsb0JBQW9CLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsRCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQWE7UUFDdkIsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUM7UUFDakUsSUFBSSxLQUFLLEtBQUssa0JBQWtCLENBQUMsV0FBVyxFQUFFO1lBQzVDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1NBQzVEO2FBQU0sSUFBSSxLQUFLLEtBQUssa0JBQWtCLENBQUMsV0FBVyxFQUFFO1lBQ25ELGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1NBQzVEO0lBQ0gsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQscUVBQXFFO0lBQ3JFLElBQUksa0JBQWtCO1FBQ3BCLE9BQU8sa0JBQWtCLENBQUM7SUFDNUIsQ0FBQztJQUVELElBQUk7UUFDRixJQUFJLENBQUMsb0JBQW9CLENBQUMsa0JBQWtCLENBQUMsa0JBQWtCLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN4RixDQUFDO0lBRUQsS0FBSztRQUNILElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxrQkFBa0IsQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pGLENBQUM7SUFFRCxtRUFBbUU7SUFDbkUscUNBQXFDO0lBQ3JDLGlIQUFpSDtJQUNqSCxNQUFNO0lBRU4sWUFBWSxDQUFDLE1BQVc7UUFDdEIsSUFBSSxPQUFPLEdBQVEsTUFBTSxDQUFDLENBQUMsNERBQTREO1FBQ3ZGLE1BQU0sT0FBTyxHQUFRLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLENBQUMsMENBQTBDO1FBRTlGLG1EQUFtRDtRQUNuRCxxREFBcUQ7UUFDckQsT0FBTyxPQUFPLEVBQUU7WUFDZCxJQUFJLE9BQU8sS0FBSyxPQUFPLEVBQUU7Z0JBQ3ZCLE9BQU87YUFDUjtpQkFBTSxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxFQUFFO2dCQUNqRCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ2IsT0FBTzthQUNSO1lBQ0QsT0FBTyxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUM7U0FDOUI7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RELENBQUM7OztZQWpFRixTQUFTLFNBQUMsRUFBRSxRQUFRLEVBQUUsaUJBQWlCLEVBQUU7OztZQUhqQywyQkFBMkI7WUFGaEIsVUFBVTs7O3FCQU8zQixLQUFLLFNBQUMsZUFBZTsyQkEyQ3JCLFlBQVksU0FBQyxPQUFPLEVBQUUsQ0FBQyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMjIgVk13YXJlLCBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICogVGhlIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gTElDRU5TRSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBwcm9qZWN0LlxuICovXG5cbmltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFJlc3BvbnNpdmVOYXZpZ2F0aW9uU2VydmljZSB9IGZyb20gJy4vcHJvdmlkZXJzL3Jlc3BvbnNpdmUtbmF2aWdhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFJlc3BvbnNpdmVOYXZDb2RlcyB9IGZyb20gJy4vcmVzcG9uc2l2ZS1uYXYtY29kZXMnO1xuXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICdbY2xyLW5hdi1sZXZlbF0nIH0pXG5leHBvcnQgY2xhc3MgQ2xyTmF2TGV2ZWwgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoJ2Nsci1uYXYtbGV2ZWwnKSBfbGV2ZWw6IG51bWJlcjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlc3BvbnNpdmVOYXZTZXJ2aWNlOiBSZXNwb25zaXZlTmF2aWdhdGlvblNlcnZpY2UsIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZikge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAodGhpcy5sZXZlbCAhPT0gUmVzcG9uc2l2ZU5hdkNvZGVzLk5BVl9MRVZFTF8xICYmIHRoaXMubGV2ZWwgIT09IFJlc3BvbnNpdmVOYXZDb2Rlcy5OQVZfTEVWRUxfMikge1xuICAgICAgY29uc29sZS5lcnJvcignTmF2IExldmVsIGNhbiBvbmx5IGJlIDEgb3IgMicpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnJlc3BvbnNpdmVOYXZTZXJ2aWNlLnJlZ2lzdGVyTmF2KHRoaXMubGV2ZWwpO1xuICAgIHRoaXMuYWRkTmF2Q2xhc3ModGhpcy5sZXZlbCk7XG4gIH1cblxuICBhZGROYXZDbGFzcyhsZXZlbDogbnVtYmVyKSB7XG4gICAgY29uc3QgbmF2SG9zdENsYXNzTGlzdCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdDtcbiAgICBpZiAobGV2ZWwgPT09IFJlc3BvbnNpdmVOYXZDb2Rlcy5OQVZfTEVWRUxfMSkge1xuICAgICAgbmF2SG9zdENsYXNzTGlzdC5hZGQoUmVzcG9uc2l2ZU5hdkNvZGVzLk5BVl9DTEFTU19MRVZFTF8xKTtcbiAgICB9IGVsc2UgaWYgKGxldmVsID09PSBSZXNwb25zaXZlTmF2Q29kZXMuTkFWX0xFVkVMXzIpIHtcbiAgICAgIG5hdkhvc3RDbGFzc0xpc3QuYWRkKFJlc3BvbnNpdmVOYXZDb2Rlcy5OQVZfQ0xBU1NfTEVWRUxfMik7XG4gICAgfVxuICB9XG5cbiAgZ2V0IGxldmVsKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2xldmVsO1xuICB9XG5cbiAgLy8gZ2V0dGVyIHRvIGFjY2VzcyB0aGUgcmVzcG9uc2l2ZSBuYXZpZ2F0aW9uIGNvZGVzIGZyb20gdGhlIHRlbXBsYXRlXG4gIGdldCByZXNwb25zaXZlTmF2Q29kZXMoKTogUmVzcG9uc2l2ZU5hdkNvZGVzIHtcbiAgICByZXR1cm4gUmVzcG9uc2l2ZU5hdkNvZGVzO1xuICB9XG5cbiAgb3BlbigpOiB2b2lkIHtcbiAgICB0aGlzLnJlc3BvbnNpdmVOYXZTZXJ2aWNlLnNlbmRDb250cm9sTWVzc2FnZShSZXNwb25zaXZlTmF2Q29kZXMuTkFWX09QRU4sIHRoaXMubGV2ZWwpO1xuICB9XG5cbiAgY2xvc2UoKTogdm9pZCB7XG4gICAgdGhpcy5yZXNwb25zaXZlTmF2U2VydmljZS5zZW5kQ29udHJvbE1lc3NhZ2UoUmVzcG9uc2l2ZU5hdkNvZGVzLk5BVl9DTE9TRSwgdGhpcy5sZXZlbCk7XG4gIH1cblxuICAvLyBUT0RPOiBGaWd1cmUgb3V0IHdoYXRzIHRoZSBiZXN0IHdheSB0byBkbyB0aGlzLiBQb3NzaWJsZSBtZXRob2RzXG4gIC8vIDEuIEhvc3RMaXN0ZW5lciAoY3VycmVudCBzb2x1dGlvbilcbiAgLy8gMi4gRGlyZWN0aXZlcyBvbiB0aGUgLm5hdi1saW5rIGNsYXNzLiBXZSBkaXNjdXNzZWQgb24gbW92aW5nIGF3YXkgZnJvbSBjbGFzcyBzZWxlY3RvcnMgYnV0IEkgZm9yZ2V0IHRoZSByZWFzb25cbiAgLy8gd2h5XG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQudGFyZ2V0J10pXG4gIG9uTW91c2VDbGljayh0YXJnZXQ6IGFueSkge1xuICAgIGxldCBjdXJyZW50OiBhbnkgPSB0YXJnZXQ7IC8vIEdldCB0aGUgZWxlbWVudCBpbiB0aGUgRE9NIG9uIHdoaWNoIHRoZSBtb3VzZSB3YXMgY2xpY2tlZFxuICAgIGNvbnN0IG5hdkhvc3Q6IGFueSA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50OyAvLyBHZXQgdGhlIGN1cnJlbnQgbmF2IG5hdGl2ZSBIVE1MIGVsZW1lbnRcblxuICAgIC8vIFN0YXJ0IGNoZWNraW5nIGlmIGN1cnJlbnQgYW5kIG5hdkhvc3QgYXJlIGVxdWFsLlxuICAgIC8vIElmIG5vdCB0cmF2ZXJzZSB0byB0aGUgcGFyZW50Tm9kZSBhbmQgY2hlY2sgYWdhaW4uXG4gICAgd2hpbGUgKGN1cnJlbnQpIHtcbiAgICAgIGlmIChjdXJyZW50ID09PSBuYXZIb3N0KSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH0gZWxzZSBpZiAoY3VycmVudC5jbGFzc0xpc3QuY29udGFpbnMoJ25hdi1saW5rJykpIHtcbiAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBjdXJyZW50ID0gY3VycmVudC5wYXJlbnROb2RlO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMucmVzcG9uc2l2ZU5hdlNlcnZpY2UudW5yZWdpc3Rlck5hdih0aGlzLmxldmVsKTtcbiAgfVxufVxuIl19
179
+ export { ɵ0 };
180
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2LWxldmVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci9zcmMvbGF5b3V0L25hdi9uYXYtbGV2ZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUVILE9BQU8sRUFBRSxRQUFRLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM5RCxPQUFPLEVBQ0wsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLFFBQVEsRUFDUixLQUFLLEVBRUwsV0FBVyxFQUNYLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEMsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDeEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFNUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDdkUsT0FBTyxFQUFFLFNBQVMsRUFBb0IsTUFBTSxtQ0FBbUMsQ0FBQztBQUNoRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbkQsT0FBTyx3REFBd0QsQ0FBQztBQUVoRSxNQUFNLG9CQUFvQixHQUFHLENBQUMsUUFBa0IsRUFBRSxTQUFpQixFQUFFLEVBQUU7SUFDckUsTUFBTSxjQUFjLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO0lBQzNFLGNBQWMsQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQy9DLE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdkIsY0FBYyxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDckQsY0FBYyxDQUFDLFlBQVksQ0FBQyxhQUFh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YUFBYSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLGFBQWEsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNsSCxJQUFJLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUN6RyxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDbkMsQ0FBQzs7O1lBL0tGLFNBQVMsU0FBQyxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRTs7OzRDQVdyQyxNQUFNLFNBQUMsV0FBVztZQWxDZCwyQkFBMkI7WUFYbEMsVUFBVTtZQU9WLFNBQVM7WUFKVCxRQUFROzs7cUJBaUNQLEtBQUssU0FBQyxlQUFlO21DQUNyQixLQUFLLFNBQUMsZ0JBQWdCO3VCQW1HdEIsWUFBWSxTQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQzsyQkFnQ3hDLFlBQVksU0FBQyxPQUFPLEVBQUUsQ0FBQyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMjIgVk13YXJlLCBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICogVGhlIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gTElDRU5TRSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBwcm9qZWN0LlxuICovXG5cbmltcG9ydCB7IERPQ1VNRU5ULCBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5qZWN0LFxuICBJbmplY3RvcixcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgUExBVEZPUk1fSUQsXG4gIFJlbmRlcmVyMixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFJlc3BvbnNpdmVOYXZpZ2F0aW9uU2VydmljZSB9IGZyb20gJy4vcHJvdmlkZXJzL3Jlc3BvbnNpdmUtbmF2aWdhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFJlc3BvbnNpdmVOYXZDb2RlcyB9IGZyb20gJy4vcmVzcG9uc2l2ZS1uYXYtY29kZXMnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBMQVJHRV9CUkVBS1BPSU5UIH0gZnJvbSAnLi4vLi4vdXRpbHMvYnJlYWtwb2ludHMvYnJlYWtwb2ludHMnO1xuaW1wb3J0IHsgRm9jdXNUcmFwLCBGb2N1c1RyYXBFbGVtZW50IH0gZnJvbSAnLi4vLi4vdXRpbHMvZm9jdXMtdHJhcC9mb2N1cy10cmFwJztcbmltcG9ydCB7IGNvbW1vblN0cmluZ3NEZWZhdWx0IH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0ICdAY2RzL2NvcmUvaW50ZXJuYWwtY29tcG9uZW50cy9jbG9zZS1idXR0b24vcmVnaXN0ZXIuanMnO1xuXG5jb25zdCBjcmVhdGVDZHNDbG9zZUJ1dHRvbiA9IChkb2N1bWVudDogRG9jdW1lbnQsIGFyaWFMYWJlbDogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IGNkc0Nsb3NlQnV0dG9uID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2RzLWludGVybmFsLWNsb3NlLWJ1dHRvbicpO1xuICBjZHNDbG9zZUJ1dHRvbi5zZXRBdHRyaWJ1dGUoJ2ljb24tc2l6ZScsICczMicpO1xuICBjb25zb2xlLmxvZyhhcmlhTGFiZWwpO1xuICBjZHNDbG9zZUJ1dHRvbi5zZXRBdHRyaWJ1dGUoJ2FyaWEtbGFiZWwnLCBhcmlhTGFiZWwpO1xuICBjZHNDbG9zZUJ1dHRvbi5zZXRBdHRyaWJ1dGUoJ2FyaWEtaGlkZGVuJywgJ3RydWUnKTtcbiAgY2RzQ2xvc2VCdXR0b24uc2V0QXR0cmlidXRlKCd0eXBlJywgJ2J1dHRvbicpO1xuICAvKipcbiAgICogVGhlIGJ1dHRvbiBpcyBoaWRkZW4gYnkgZGVmYXVsdCBiYXNlZCBvbiBvdXIgRGVza3RvcC1maXJzdCBhcHByb2FjaC5cbiAgICovXG4gIGNkc0Nsb3NlQnV0dG9uLnNldEF0dHJpYnV0ZSgnaGlkZGVuJywgJ3RydWUnKTtcbiAgY2RzQ2xvc2VCdXR0b24uY2xhc3NOYW1lID0gJ2Nsci1uYXYtY2xvc2UnO1xuICByZXR1cm4gY2RzQ2xvc2VCdXR0b247XG59O1xuXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICdbY2xyLW5hdi1sZXZlbF0nIH0pXG5leHBvcnQgY2xhc3MgQ2xyTmF2TGV2ZWwgZXh0ZW5kcyBGb2N1c1RyYXAgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoJ2Nsci1uYXYtbGV2ZWwnKSBfbGV2ZWw6IG51bWJlcjtcbiAgQElucHV0KCdjbG9zZUFyaWFMYWJlbCcpXG4gIGNsb3NlQnV0dG9uQXJpYUxhYmVsOiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBfc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG5cbiAgcHJpdmF0ZSBfaXNPcGVuID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChQTEFURk9STV9JRCkgcGxhdGZvcm1JZDogYW55LFxuICAgIHByaXZhdGUgcmVzcG9uc2l2ZU5hdlNlcnZpY2U6IFJlc3BvbnNpdmVOYXZpZ2F0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8Rm9jdXNUcmFwRWxlbWVudD4sXG4gICAgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBpbmplY3RvcjogSW5qZWN0b3JcbiAgKSB7XG4gICAgc3VwZXIocmVuZGVyZXIsIGluamVjdG9yLCBwbGF0Zm9ybUlkLCBlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpO1xuXG4gICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHBsYXRmb3JtSWQpKSB7XG4gICAgICB0aGlzLl9kb2N1bWVudCA9IGluamVjdG9yLmdldChET0NVTUVOVCk7XG4gICAgfVxuXG4gICAgdGhpcy5fc3Vic2NyaXB0aW9uID0gcmVzcG9uc2l2ZU5hdlNlcnZpY2UubmF2Q29udHJvbFxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpbHRlcih4ID0+IHgubmF2TGV2ZWwgPT09IHRoaXMubGV2ZWwpLFxuICAgICAgICBmaWx0ZXIoXG4gICAgICAgICAgKHsgY29udHJvbENvZGUgfSkgPT5cbiAgICAgICAgICAgIChjb250cm9sQ29kZSA9PT0gUmVzcG9uc2l2ZU5hdkNvZGVzLk5BVl9PUEVOICYmICF0aGlzLmlzT3BlbikgfHxcbiAgICAgICAgICAgIChjb250cm9sQ29kZSA9PT0gUmVzcG9uc2l2ZU5hdkNvZGVzLk5BVl9DTE9TRSAmJiB0aGlzLmlzT3BlbilcbiAgICAgICAgKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoeyBjb250cm9sQ29kZSB9KSA9PiB7XG4gICAgICAgIGlmIChjb250cm9sQ29kZSA9PT0gUmVzcG9uc2l2ZU5hdkNvZGVzLk5BVl9PUEVOKSB7XG4gICAgICAgICAgdGhpcy5vcGVuKCk7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLl9zdWJzY3JpcHRpb24uYWRkKFxuICAgICAgcmVzcG9uc2l2ZU5hdlNlcnZpY2UubmF2Q29udHJvbFxuICAgICAgICAucGlwZShmaWx0ZXIoKHsgY29udHJvbENvZGUgfSkgPT4gY29udHJvbENvZGUgPT09IFJlc3BvbnNpdmVOYXZDb2Rlcy5OQVZfQ0xPU0VfQUxMKSlcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLmNsb3NlKCkpXG4gICAgKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGlmICghdGhpcy5jbG9zZUJ1dHRvbkFyaWFMYWJlbCkge1xuICAgICAgdGhpcy5jbG9zZUJ1dHRvbkFyaWFMYWJlbCA9XG4gICAgICAgIHRoaXMuX2xldmVsID09PSBSZXNwb25zaXZlTmF2Q29kZXMuTkFWX0xFVkVMXzFcbiAgICAgICAgICA/IGNvbW1vblN0cmluZ3NEZWZhdWx0LnJlc3BvbnNpdmVOYXZUb2dnbGVDbG9zZVxuICAgICAgICAgIDogY29tbW9uU3RyaW5nc0RlZmF1bHQucmVzcG9uc2l2ZU5hdk92ZXJmbG93Q2xvc2U7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMubGV2ZWwgIT09IFJlc3BvbnNpdmVOYXZDb2Rlcy5OQVZfTEVWRUxfMSAmJiB0aGlzLmxldmVsICE9PSBSZXNwb25zaXZlTmF2Q29kZXMuTkFWX0xFVkVMXzIpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ05hdiBMZXZlbCBjYW4gb25seSBiZSAxIG9yIDInKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5yZXNwb25zaXZlTmF2U2VydmljZS5yZWdpc3Rlck5hdih0aGlzLmxldmVsKTtcbiAgICB0aGlzLmFkZE5hdkNsYXNzKHRoaXMubGV2ZWwpO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGNvbnN0IGNsb3NlQnV0dG9uID0gY3JlYXRlQ2RzQ2xvc2VCdXR0b24odGhpcy5fZG9jdW1lbnQsIHRoaXMuY2xvc2VCdXR0b25BcmlhTGFiZWwpO1xuICAgIHRoaXMucmVuZGVyZXIubGlzdGVuKGNsb3NlQnV0dG9uLCAnY2xpY2snLCB0aGlzLmNsb3NlLmJpbmQodGhpcykpO1xuICAgIHRoaXMucmVuZGVyZXIuaW5zZXJ0QmVmb3JlKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCBjbG9zZUJ1dHRvbiwgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZmlyc3RDaGlsZCk7IC8vIEFkZGluZyB0aGUgYnV0dG9uIGF0IHRoZSB0b3Agb2YgdGhlIG5hdlxuXG4gICAgaWYgKHRoaXMuX2RvY3VtZW50LmJvZHkuY2xpZW50V2lkdGggPCBMQVJHRV9CUkVBS1BPSU5UKSB7XG4gICAgICAvKipcbiAgICAgICAqIENsb3NlIGlmIHRoZSBkb2N1bWVudCBib2R5IGlzIHNtYWxsZXIgdGhhbiB0aGUgbGFyZ2UgYnJlYWtwb2ludCBmb3IgZXhhbXBsZTpcbiAgICAgICAqIC0gUmVmcmVzaGluZyB0aGUgcGFnZVxuICAgICAgICogLSBCcm93c2VyIHdpbmRvdyBzaXplIGlzIGNoYW5nZWQgd2hlbiBvcGVuaW5nIHRoZSBhcHBsaWNhaXRvblxuICAgICAgICogLSBCcm93c2VyIHpvb20gaXMgdHVybmVkIG9uIGFuZCB6b29tZWQgdG8gYSBzaXplIHRoYXQgbWFrZXMgdGhlIGRvY3VtZW50IHNtYWxsZXIgdGhhbiB0aGUgbGFyZ2UgYnJlYWtwb2ludFxuICAgICAgICovXG4gICAgICB0aGlzLmNsb3NlKCk7XG4gICAgfVxuICB9XG5cbiAgYWRkTmF2Q2xhc3MobGV2ZWw6IG51bWJlcikge1xuICAgIGNvbnN0IG5hdkhvc3RDbGFzc0xpc3QgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jbGFzc0xpc3Q7XG4gICAgaWYgKGxldmVsID09PSBSZXNwb25zaXZlTmF2Q29kZXMuTkFWX0xFVkVMXzEpIHtcbiAgICAgIG5hdkhvc3RDbGFzc0xpc3QuYWRkKFJlc3BvbnNpdmVOYXZDb2Rlcy5OQVZfQ0xBU1NfTEVWRUxfMSk7XG4gICAgfSBlbHNlIGlmIChsZXZlbCA9PT0gUmVzcG9uc2l2ZU5hdkNvZGVzLk5BVl9MRVZFTF8yKSB7XG4gICAgICBuYXZIb3N0Q2xhc3NMaXN0LmFkZChSZXNwb25zaXZlTmF2Q29kZXMuTkFWX0NMQVNTX0xFVkVMXzIpO1xuICAgIH1cbiAgfVxuXG4gIGdldCBsZXZlbCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9sZXZlbDtcbiAgfVxuXG4gIC8vIGdldHRlciB0byBhY2Nlc3MgdGhlIHJlc3BvbnNpdmUgbmF2aWdhdGlvbiBjb2RlcyBmcm9tIHRoZSB0ZW1wbGF0ZVxuICBnZXQgcmVzcG9uc2l2ZU5hdkNvZGVzKCk6IFJlc3BvbnNpdmVOYXZDb2RlcyB7XG4gICAgcmV0dXJuIFJlc3BvbnNpdmVOYXZDb2RlcztcbiAgfVxuXG4gIGdldCBpc09wZW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2lzT3BlbjtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxuICBvblJlc2l6ZShldmVudDogRXZlbnQpIHtcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgV2luZG93O1xuXG4gICAgaWYgKHRhcmdldC5pbm5lcldpZHRoIDwgTEFSR0VfQlJFQUtQT0lOVCAmJiB0aGlzLmlzT3Blbikge1xuICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuc2hvd05hdmlnYXRpb24oKTtcbiAgfVxuXG4gIG9wZW4oKTogdm9pZCB7XG4gICAgdGhpcy5faXNPcGVuID0gdHJ1ZTtcbiAgICB0aGlzLnNob3dOYXZpZ2F0aW9uKCk7XG4gICAgdGhpcy5lbmFibGVGb2N1c1RyYXAoKTtcbiAgICB0aGlzLnNob3dDbG9zZUJ1dHRvbigpO1xuICAgIHRoaXMucmVzcG9uc2l2ZU5hdlNlcnZpY2Uuc2VuZENvbnRyb2xNZXNzYWdlKFJlc3BvbnNpdmVOYXZDb2Rlcy5OQVZfT1BFTiwgdGhpcy5sZXZlbCk7XG4gIH1cblxuICBjbG9zZSgpOiB2b2lkIHtcbiAgICB0aGlzLl9pc09wZW4gPSBmYWxzZTtcbiAgICB0aGlzLmhpZGVOYXZpZ2F0aW9uKCk7XG4gICAgdGhpcy5yZW1vdmVGb2N1c1RyYXAoKTtcbiAgICB0aGlzLmhpZGVDbG9zZUJ1dHRvbigpO1xuICAgIHRoaXMucmVzcG9uc2l2ZU5hdlNlcnZpY2Uuc2VuZENvbnRyb2xNZXNzYWdlKFJlc3BvbnNpdmVOYXZDb2Rlcy5OQVZfQ0xPU0UsIHRoaXMubGV2ZWwpO1xuICB9XG5cbiAgLy8gVE9ETzogRmlndXJlIG91dCB3aGF0cyB0aGUgYmVzdCB3YXkgdG8gZG8gdGhpcy4gUG9zc2libGUgbWV0aG9kc1xuICAvLyAxLiBIb3N0TGlzdGVuZXIgKGN1cnJlbnQgc29sdXRpb24pXG4gIC8vIDIuIERpcmVjdGl2ZXMgb24gdGhlIC5uYXYtbGluayBjbGFzcy4gV2UgZGlzY3Vzc2VkIG9uIG1vdmluZyBhd2F5IGZyb20gY2xhc3Mgc2VsZWN0b3JzIGJ1dCBJIGZvcmdldCB0aGUgcmVhc29uXG4gIC8vIHdoeVxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50LnRhcmdldCddKVxuICBvbk1vdXNlQ2xpY2sodGFyZ2V0OiBhbnkpIHtcbiAgICBsZXQgY3VycmVudDogYW55ID0gdGFyZ2V0OyAvLyBHZXQgdGhlIGVsZW1lbnQgaW4gdGhlIERPTSBvbiB3aGljaCB0aGUgbW91c2Ugd2FzIGNsaWNrZWRcbiAgICBjb25zdCBuYXZIb3N0OiBhbnkgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDsgLy8gR2V0IHRoZSBjdXJyZW50IG5hdiBuYXRpdmUgSFRNTCBlbGVtZW50XG5cbiAgICAvLyBTdGFydCBjaGVja2luZyBpZiBjdXJyZW50IGFuZCBuYXZIb3N0IGFyZSBlcXVhbC5cbiAgICAvLyBJZiBub3QgdHJhdmVyc2UgdG8gdGhlIHBhcmVudE5vZGUgYW5kIGNoZWNrIGFnYWluLlxuICAgIHdoaWxlIChjdXJyZW50KSB7XG4gICAgICBpZiAoY3VycmVudCA9PT0gbmF2SG9zdCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9IGVsc2UgaWYgKGN1cnJlbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCduYXYtbGluaycpKSB7XG4gICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY3VycmVudCA9IGN1cnJlbnQucGFyZW50Tm9kZTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgaGlkZU5hdmlnYXRpb24oKSB7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdhcmlhLWhpZGRlbicsICd0cnVlJyk7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdoaWRkZW4nLCAndHJ1ZScpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHNob3dOYXZpZ2F0aW9uKCkge1xuICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnYXJpYS1oaWRkZW4nLCAnZmFsc2UnKTtcbiAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUF0dHJpYnV0ZSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2hpZGRlbicpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGhpZGVDbG9zZUJ1dHRvbigpIHtcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2FyaWEtaGlkZGVuJywgJ3RydWUnKTtcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcuY2xyLW5hdi1jbG9zZScpLCAnaGlkZGVuJywgJ3RydWUnKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzaG93Q2xvc2VCdXR0b24oKSB7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignLmNsci1uYXYtY2xvc2UnKSwgJ2FyaWEtaGlkZGVuJywgJ2ZhbHNlJyk7XG4gICAgdGhpcy5yZW5kZXJlci5yZW1vdmVBdHRyaWJ1dGUodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignLmNsci1uYXYtY2xvc2UnKSwgJ2hpZGRlbicpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5yZXNwb25zaXZlTmF2U2VydmljZS51bnJlZ2lzdGVyTmF2KHRoaXMubGV2ZWwpO1xuICAgIHRoaXMuX3N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iXX0=
@@ -3,7 +3,21 @@
3
3
  * This software is released under MIT license.
4
4
  * The full license information can be found in LICENSE in the root directory of this project.
5
5
  */
6
+ /**
7
+ * TODO:
8
+ * Using core functions like:
9
+ * - pluckPixelValue
10
+ * - getCssPropertyValue
11
+ *
12
+ * to get the value of the design token.
13
+ *
14
+ * Note: Memoization/Cache usage possible.
15
+ */
6
16
  // iPad mini screen width
7
17
  // http://stephen.io/mediaqueries/#iPadMini
8
18
  export const DATEPICKER_ENABLE_BREAKPOINT = 768;
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWtwb2ludHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyL3NyYy91dGlscy9icmVha3BvaW50cy9icmVha3BvaW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBRUgseUJBQXlCO0FBQ3pCLDJDQUEyQztBQUMzQyxNQUFNLENBQUMsTUFBTSw0QkFBNEIsR0FBRyxHQUFHLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMjIgVk13YXJlLCBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICogVGhlIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gTElDRU5TRSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBwcm9qZWN0LlxuICovXG5cbi8vIGlQYWQgbWluaSBzY3JlZW4gd2lkdGhcbi8vIGh0dHA6Ly9zdGVwaGVuLmlvL21lZGlhcXVlcmllcy8jaVBhZE1pbmlcbmV4cG9ydCBjb25zdCBEQVRFUElDS0VSX0VOQUJMRV9CUkVBS1BPSU5UID0gNzY4O1xuIl19
19
+ export const SMALL_BREAKPOINT = 576;
20
+ export const MEDIUM_BREAKPOINT = 768;
21
+ export const LARGE_BREAKPOINT = 992;
22
+ export const EXTRA_LARGE_BREAKPOINT = 1200;
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWtwb2ludHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyL3NyYy91dGlscy9icmVha3BvaW50cy9icmVha3BvaW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBRUg7Ozs7Ozs7OztHQVNHO0FBRUgseUJBQXlCO0FBQ3pCLDJDQUEyQztBQUMzQyxNQUFNLENBQUMsTUFBTSw0QkFBNEIsR0FBRyxHQUFHLENBQUM7QUFDaEQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsR0FBRyxDQUFDO0FBQ3BDLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLEdBQUcsQ0FBQztBQUNyQyxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxHQUFHLENBQUM7QUFDcEMsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsSUFBSSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxNi0yMDIyIFZNd2FyZSwgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICogVGhpcyBzb2Z0d2FyZSBpcyByZWxlYXNlZCB1bmRlciBNSVQgbGljZW5zZS5cbiAqIFRoZSBmdWxsIGxpY2Vuc2UgaW5mb3JtYXRpb24gY2FuIGJlIGZvdW5kIGluIExJQ0VOU0UgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgcHJvamVjdC5cbiAqL1xuXG4vKipcbiAqIFRPRE86XG4gKiBVc2luZyBjb3JlIGZ1bmN0aW9ucyBsaWtlOlxuICogLSBwbHVja1BpeGVsVmFsdWVcbiAqIC0gZ2V0Q3NzUHJvcGVydHlWYWx1ZVxuICpcbiAqIHRvIGdldCB0aGUgdmFsdWUgb2YgdGhlIGRlc2lnbiB0b2tlbi5cbiAqXG4gKiBOb3RlOiBNZW1vaXphdGlvbi9DYWNoZSB1c2FnZSBwb3NzaWJsZS5cbiAqL1xuXG4vLyBpUGFkIG1pbmkgc2NyZWVuIHdpZHRoXG4vLyBodHRwOi8vc3RlcGhlbi5pby9tZWRpYXF1ZXJpZXMvI2lQYWRNaW5pXG5leHBvcnQgY29uc3QgREFURVBJQ0tFUl9FTkFCTEVfQlJFQUtQT0lOVCA9IDc2ODtcbmV4cG9ydCBjb25zdCBTTUFMTF9CUkVBS1BPSU5UID0gNTc2O1xuZXhwb3J0IGNvbnN0IE1FRElVTV9CUkVBS1BPSU5UID0gNzY4O1xuZXhwb3J0IGNvbnN0IExBUkdFX0JSRUFLUE9JTlQgPSA5OTI7XG5leHBvcnQgY29uc3QgRVhUUkFfTEFSR0VfQlJFQUtQT0lOVCA9IDEyMDA7XG4iXX0=
@@ -0,0 +1,144 @@
1
+ /*
2
+ * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
3
+ * This software is released under MIT license.
4
+ * The full license information can be found in LICENSE in the root directory of this project.
5
+ */
6
+ import { createId, FocusTrapTrackerService, isFocusable, isHTMLElement } from '@cds/core/internal';
7
+ import { DOCUMENT, isPlatformBrowser } from '@angular/common';
8
+ import { Injectable, Injector, Renderer2 } from '@angular/core';
9
+ export function refocusIfOutsideFocusTrapElement(focusedElement, focusTrapElement, elementToRefocus) {
10
+ const focusTrapIsCurrent = FocusTrapTrackerService.getCurrent() === focusTrapElement;
11
+ const elementToFocusIsOutsideFocusTrap = elementIsOutsideFocusTrapElement(focusedElement, focusTrapElement);
12
+ if (focusTrapIsCurrent && elementToFocusIsOutsideFocusTrap) {
13
+ elementToRefocus = elementToRefocus || focusTrapElement;
14
+ elementToRefocus.focus();
15
+ }
16
+ else {
17
+ focusedElement.focus();
18
+ }
19
+ }
20
+ export function elementIsOutsideFocusTrapElement(focusedElement, focusTrapElement) {
21
+ if (focusedElement === focusTrapElement.topReboundElement ||
22
+ focusedElement === focusTrapElement.bottomReboundElement) {
23
+ return true;
24
+ }
25
+ const elementIsInFocusTrapLightDom = focusTrapElement.contains(focusedElement);
26
+ if (elementIsInFocusTrapLightDom) {
27
+ return false;
28
+ }
29
+ if (focusTrapElement !== null && focusTrapElement.contains(focusedElement)) {
30
+ return false;
31
+ }
32
+ return true;
33
+ }
34
+ export function createFocusTrapReboundElement(document) {
35
+ const offScreenSpan = document.createElement('span');
36
+ offScreenSpan.setAttribute('tabindex', '0');
37
+ offScreenSpan.classList.add('offscreen-focus-rebounder');
38
+ return offScreenSpan;
39
+ }
40
+ export function addReboundElementsToFocusTrapElement(document, focusTrapElement) {
41
+ if (focusTrapElement && !focusTrapElement.topReboundElement && !focusTrapElement.bottomReboundElement) {
42
+ focusTrapElement.topReboundElement = createFocusTrapReboundElement(document);
43
+ focusTrapElement.bottomReboundElement = createFocusTrapReboundElement(document);
44
+ const parent = focusTrapElement.parentElement;
45
+ const sibling = focusTrapElement.nextSibling;
46
+ if (parent) {
47
+ parent.insertBefore(focusTrapElement.topReboundElement, focusTrapElement);
48
+ if (sibling) {
49
+ parent.insertBefore(focusTrapElement.bottomReboundElement, sibling);
50
+ }
51
+ else {
52
+ parent.appendChild(focusTrapElement.bottomReboundElement);
53
+ }
54
+ }
55
+ }
56
+ }
57
+ export function removeReboundElementsFromFocusTrapElement(focusTrapElement) {
58
+ if (focusTrapElement) {
59
+ const parent = focusTrapElement.parentElement;
60
+ if (parent) {
61
+ const topRebound = focusTrapElement.topReboundElement;
62
+ const bottomRebound = focusTrapElement.bottomReboundElement;
63
+ if (topRebound) {
64
+ parent.removeChild(topRebound);
65
+ }
66
+ if (bottomRebound) {
67
+ parent.removeChild(bottomRebound);
68
+ }
69
+ }
70
+ // These are here to to make sure that we completely delete all traces of the removed DOM objects.
71
+ delete focusTrapElement.topReboundElement;
72
+ delete focusTrapElement.bottomReboundElement;
73
+ }
74
+ }
75
+ // this helper exists to enable the focus trap class to handle vanilla html elements
76
+ // it's primary concern is to keep TS happy.
77
+ export function castHtmlElementToFocusTrapElement(el) {
78
+ return el;
79
+ }
80
+ export class FocusTrap {
81
+ constructor(renderer, injector, platformId, hostElement) {
82
+ this.renderer = renderer;
83
+ this.active = false;
84
+ if (isPlatformBrowser(platformId)) {
85
+ this._document = injector.get(DOCUMENT);
86
+ }
87
+ hostElement = castHtmlElementToFocusTrapElement(hostElement);
88
+ if (!hostElement.focusTrapId) {
89
+ hostElement.focusTrapId = createId();
90
+ }
91
+ this.focusTrapElement = hostElement;
92
+ }
93
+ enableFocusTrap() {
94
+ const fte = this.focusTrapElement;
95
+ const firstFocusElement = fte.querySelector('[cds-first-focus]');
96
+ const activeEl = this._document.activeElement;
97
+ if (FocusTrapTrackerService.getCurrent() === fte) {
98
+ throw new Error('Focus trap is already enabled for this instance.');
99
+ }
100
+ this.firstFocusElement = firstFocusElement || this.focusTrapElement;
101
+ addReboundElementsToFocusTrapElement(this._document, fte);
102
+ if (!isFocusable(fte)) {
103
+ fte.setAttribute('tabindex', '-1');
104
+ }
105
+ if (activeEl && isHTMLElement(activeEl)) {
106
+ this.previousFocus = activeEl;
107
+ }
108
+ FocusTrapTrackerService.setCurrent(fte);
109
+ // setTimeout here is required for Safari which may try to set focus on
110
+ // element before it is visible...
111
+ const focusTimer = setTimeout(() => {
112
+ this.firstFocusElement.focus();
113
+ clearTimeout(focusTimer);
114
+ }, 10);
115
+ this.onFocusInEvent = this.onFocusIn.bind(this);
116
+ this.unlisten = this.renderer.listen(this._document, 'focusin', this.onFocusInEvent);
117
+ this.active = true;
118
+ }
119
+ removeFocusTrap() {
120
+ if (this.unlisten) {
121
+ this.unlisten();
122
+ }
123
+ removeReboundElementsFromFocusTrapElement(this.focusTrapElement);
124
+ this.renderer.removeAttribute(this.focusTrapElement, 'tabindex');
125
+ FocusTrapTrackerService.activatePreviousCurrent();
126
+ this.active = false;
127
+ if (this.previousFocus) {
128
+ this.previousFocus.focus();
129
+ }
130
+ }
131
+ onFocusIn(event) {
132
+ refocusIfOutsideFocusTrapElement(event.composedPath()[0], this.focusTrapElement, this.firstFocusElement);
133
+ }
134
+ }
135
+ FocusTrap.decorators = [
136
+ { type: Injectable }
137
+ ];
138
+ FocusTrap.ctorParameters = () => [
139
+ { type: Renderer2 },
140
+ { type: Injector },
141
+ { type: undefined },
142
+ { type: undefined }
143
+ ];
144
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9jdXMtdHJhcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXIvc3JjL3V0aWxzL2ZvY3VzLXRyYXAvZm9jdXMtdHJhcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBRUgsT0FBTyxFQUFFLFFBQVEsRUFBRSx1QkFBdUIsRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbkcsT0FBTyxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlELE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVFoRSxNQUFNLFVBQVUsZ0NBQWdDLENBQzlDLGNBQTJCLEVBQzNCLGdCQUFrQyxFQUNsQyxnQkFBOEI7SUFFOUIsTUFBTSxrQkFBa0IsR0FBRyx1QkFBdUIsQ0FBQyxVQUFVLEVBQUUsS0FBSyxnQkFBZ0IsQ0FBQztJQUNyRixNQUFNLGdDQUFnQyxHQUFHLGdDQUFnQyxDQUFDLGNBQWMsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO0lBRTVHLElBQUksa0JBQWtCLElBQUksZ0NBQWdDLEVBQUU7UUFDMUQsZ0JBQWdCLEdBQUcsZ0JBQWdCLElBQUksZ0JBQWdCLENBQUM7UUFDeEQsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLENBQUM7S0FDMUI7U0FBTTtRQUNMLGNBQWMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztLQUN4QjtBQUNILENBQUM7QUFFRCxNQUFNLFVBQVUsZ0NBQWdDLENBQzlDLGNBQTJCLEVBQzNCLGdCQUFrQztJQUVsQyxJQUNFLGNBQWMsS0FBSyxnQkFBZ0IsQ0FBQyxpQkFBaUI7UUFDckQsY0FBYyxLQUFLLGdCQUFnQixDQUFDLG9CQUFvQixFQUN4RDtRQUNBLE9BQU8sSUFBSSxDQUFDO0tBQ2I7SUFFRCxNQUFNLDRCQUE0QixHQUFHLGdCQUFnQixDQUFDLFFB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QixDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFUCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3JGLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUNqQjtRQUVELHlDQUF5QyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ2pFLElBQUksQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUNqRSx1QkFBdUIsQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO1FBQ2xELElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN0QixJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQzVCO0lBQ0gsQ0FBQztJQUVPLFNBQVMsQ0FBQyxLQUFpQjtRQUNqQyxnQ0FBZ0MsQ0FDOUIsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBZ0IsRUFDdEMsSUFBSSxDQUFDLGdCQUFnQixFQUNyQixJQUFJLENBQUMsaUJBQWlCLENBQ3ZCLENBQUM7SUFDSixDQUFDOzs7WUFsRkYsVUFBVTs7O1lBcEdvQixTQUFTO1lBQW5CLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMjIgVk13YXJlLCBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICogVGhlIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gTElDRU5TRSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBwcm9qZWN0LlxuICovXG5cbmltcG9ydCB7IGNyZWF0ZUlkLCBGb2N1c1RyYXBUcmFja2VyU2VydmljZSwgaXNGb2N1c2FibGUsIGlzSFRNTEVsZW1lbnQgfSBmcm9tICdAY2RzL2NvcmUvaW50ZXJuYWwnO1xuaW1wb3J0IHsgRE9DVU1FTlQsIGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yLCBSZW5kZXJlcjIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGludGVyZmFjZSBGb2N1c1RyYXBFbGVtZW50IGV4dGVuZHMgSFRNTEVsZW1lbnQge1xuICB0b3BSZWJvdW5kRWxlbWVudDogSFRNTEVsZW1lbnQgfCB1bmRlZmluZWQ7XG4gIGJvdHRvbVJlYm91bmRFbGVtZW50OiBIVE1MRWxlbWVudCB8IHVuZGVmaW5lZDtcbiAgZm9jdXNUcmFwSWQ6IHN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlZm9jdXNJZk91dHNpZGVGb2N1c1RyYXBFbGVtZW50KFxuICBmb2N1c2VkRWxlbWVudDogSFRNTEVsZW1lbnQsXG4gIGZvY3VzVHJhcEVsZW1lbnQ6IEZvY3VzVHJhcEVsZW1lbnQsXG4gIGVsZW1lbnRUb1JlZm9jdXM/OiBIVE1MRWxlbWVudFxuKSB7XG4gIGNvbnN0IGZvY3VzVHJhcElzQ3VycmVudCA9IEZvY3VzVHJhcFRyYWNrZXJTZXJ2aWNlLmdldEN1cnJlbnQoKSA9PT0gZm9jdXNUcmFwRWxlbWVudDtcbiAgY29uc3QgZWxlbWVudFRvRm9jdXNJc091dHNpZGVGb2N1c1RyYXAgPSBlbGVtZW50SXNPdXRzaWRlRm9jdXNUcmFwRWxlbWVudChmb2N1c2VkRWxlbWVudCwgZm9jdXNUcmFwRWxlbWVudCk7XG5cbiAgaWYgKGZvY3VzVHJhcElzQ3VycmVudCAmJiBlbGVtZW50VG9Gb2N1c0lzT3V0c2lkZUZvY3VzVHJhcCkge1xuICAgIGVsZW1lbnRUb1JlZm9jdXMgPSBlbGVtZW50VG9SZWZvY3VzIHx8IGZvY3VzVHJhcEVsZW1lbnQ7XG4gICAgZWxlbWVudFRvUmVmb2N1cy5mb2N1cygpO1xuICB9IGVsc2Uge1xuICAgIGZvY3VzZWRFbGVtZW50LmZvY3VzKCk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGVsZW1lbnRJc091dHNpZGVGb2N1c1RyYXBFbGVtZW50KFxuICBmb2N1c2VkRWxlbWVudDogSFRNTEVsZW1lbnQsXG4gIGZvY3VzVHJhcEVsZW1lbnQ6IEZvY3VzVHJhcEVsZW1lbnRcbik6IGJvb2xlYW4ge1xuICBpZiAoXG4gICAgZm9jdXNlZEVsZW1lbnQgPT09IGZvY3VzVHJhcEVsZW1lbnQudG9wUmVib3VuZEVsZW1lbnQgfHxcbiAgICBmb2N1c2VkRWxlbWVudCA9PT0gZm9jdXNUcmFwRWxlbWVudC5ib3R0b21SZWJvdW5kRWxlbWVudFxuICApIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIGNvbnN0IGVsZW1lbnRJc0luRm9jdXNUcmFwTGlnaHREb20gPSBmb2N1c1RyYXBFbGVtZW50LmNvbnRhaW5zKGZvY3VzZWRFbGVtZW50KTtcblxuICBpZiAoZWxlbWVudElzSW5Gb2N1c1RyYXBMaWdodERvbSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGlmIChmb2N1c1RyYXBFbGVtZW50ICE9PSBudWxsICYmIGZvY3VzVHJhcEVsZW1lbnQuY29udGFpbnMoZm9jdXNlZEVsZW1lbnQpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcmV0dXJuIHRydWU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVGb2N1c1RyYXBSZWJvdW5kRWxlbWVudChkb2N1bWVudDogRG9jdW1lbnQpIHtcbiAgY29uc3Qgb2ZmU2NyZWVuU3BhbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NwYW4nKTtcbiAgb2ZmU2NyZWVuU3Bhbi5zZXRBdHRyaWJ1dGUoJ3RhYmluZGV4JywgJzAnKTtcbiAgb2ZmU2NyZWVuU3Bhbi5jbGFzc0xpc3QuYWRkKCdvZmZzY3JlZW4tZm9jdXMtcmVib3VuZGVyJyk7XG4gIHJldHVybiBvZmZTY3JlZW5TcGFuO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYWRkUmVib3VuZEVsZW1lbnRzVG9Gb2N1c1RyYXBFbGVtZW50KGRvY3VtZW50OiBEb2N1bWVudCwgZm9jdXNUcmFwRWxlbWVudDogRm9jdXNUcmFwRWxlbWVudCkge1xuICBpZiAoZm9jdXNUcmFwRWxlbWVudCAmJiAhZm9jdXNUcmFwRWxlbWVudC50b3BSZWJvdW5kRWxlbWVudCAmJiAhZm9jdXNUcmFwRWxlbWVudC5ib3R0b21SZWJvdW5kRWxlbWVudCkge1xuICAgIGZvY3VzVHJhcEVsZW1lbnQudG9wUmVib3VuZEVsZW1lbnQgPSBjcmVhdGVGb2N1c1RyYXBSZWJvdW5kRWxlbWVudChkb2N1bWVudCk7XG4gICAgZm9jdXNUcmFwRWxlbWVudC5ib3R0b21SZWJvdW5kRWxlbWVudCA9IGNyZWF0ZUZvY3VzVHJhcFJlYm91bmRFbGVtZW50KGRvY3VtZW50KTtcblxuICAgIGNvbnN0IHBhcmVudCA9IGZvY3VzVHJhcEVsZW1lbnQucGFyZW50RWxlbWVudDtcbiAgICBjb25zdCBzaWJsaW5nID0gZm9jdXNUcmFwRWxlbWVudC5uZXh0U2libGluZztcblxuICAgIGlmIChwYXJlbnQpIHtcbiAgICAgIHBhcmVudC5pbnNlcnRCZWZvcmUoZm9jdXNUcmFwRWxlbWVudC50b3BSZWJvdW5kRWxlbWVudCwgZm9jdXNUcmFwRWxlbWVudCk7XG4gICAgICBpZiAoc2libGluZykge1xuICAgICAgICBwYXJlbnQuaW5zZXJ0QmVmb3JlKGZvY3VzVHJhcEVsZW1lbnQuYm90dG9tUmVib3VuZEVsZW1lbnQsIHNpYmxpbmcpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcGFyZW50LmFwcGVuZENoaWxkKGZvY3VzVHJhcEVsZW1lbnQuYm90dG9tUmVib3VuZEVsZW1lbnQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlUmVib3VuZEVsZW1lbnRzRnJvbUZvY3VzVHJhcEVsZW1lbnQoZm9jdXNUcmFwRWxlbWVudDogRm9jdXNUcmFwRWxlbWVudCkge1xuICBpZiAoZm9jdXNUcmFwRWxlbWVudCkge1xuICAgIGNvbnN0IHBhcmVudCA9IGZvY3VzVHJhcEVsZW1lbnQucGFyZW50RWxlbWVudDtcblxuICAgIGlmIChwYXJlbnQpIHtcbiAgICAgIGNvbnN0IHRvcFJlYm91bmQgPSBmb2N1c1RyYXBFbGVtZW50LnRvcFJlYm91bmRFbGVtZW50O1xuICAgICAgY29uc3QgYm90dG9tUmVib3VuZCA9IGZvY3VzVHJhcEVsZW1lbnQuYm90dG9tUmVib3VuZEVsZW1lbnQ7XG4gICAgICBpZiAodG9wUmVib3VuZCkge1xuICAgICAgICBwYXJlbnQucmVtb3ZlQ2hpbGQodG9wUmVib3VuZCk7XG4gICAgICB9XG4gICAgICBpZiAoYm90dG9tUmVib3VuZCkge1xuICAgICAgICBwYXJlbnQucmVtb3ZlQ2hpbGQoYm90dG9tUmVib3VuZCk7XG4gICAgICB9XG4gICAgfVxuICAgIC8vIFRoZXNlIGFyZSBoZXJlIHRvIHRvIG1ha2Ugc3VyZSB0aGF0IHdlIGNvbXBsZXRlbHkgZGVsZXRlIGFsbCB0cmFjZXMgb2YgdGhlIHJlbW92ZWQgRE9NIG9iamVjdHMuXG4gICAgZGVsZXRlIGZvY3VzVHJhcEVsZW1lbnQudG9wUmVib3VuZEVsZW1lbnQ7XG4gICAgZGVsZXRlIGZvY3VzVHJhcEVsZW1lbnQuYm90dG9tUmVib3VuZEVsZW1lbnQ7XG4gIH1cbn1cblxuLy8gdGhpcyBoZWxwZXIgZXhpc3RzIHRvIGVuYWJsZSB0aGUgZm9jdXMgdHJhcCBjbGFzcyB0byBoYW5kbGUgdmFuaWxsYSBodG1sIGVsZW1lbnRzXG4vLyBpdCdzIHByaW1hcnkgY29uY2VybiBpcyB0byBrZWVwIFRTIGhhcHB5LlxuZXhwb3J0IGZ1bmN0aW9uIGNhc3RIdG1sRWxlbWVudFRvRm9jdXNUcmFwRWxlbWVudChlbDogSFRNTEVsZW1lbnQpOiBGb2N1c1RyYXBFbGVtZW50IHtcbiAgcmV0dXJuIGVsIGFzIEZvY3VzVHJhcEVsZW1lbnQ7XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBGb2N1c1RyYXAge1xuICBmb2N1c1RyYXBFbGVtZW50OiBGb2N1c1RyYXBFbGVtZW50O1xuICBwcml2YXRlIHByZXZpb3VzRm9jdXM6IEhUTUxFbGVtZW50O1xuICBwcml2YXRlIG9uRm9jdXNJbkV2ZW50OiAoKSA9PiB2b2lkO1xuICBwcml2YXRlIHVubGlzdGVuOiAoKSA9PiB2b2lkO1xuXG4gIHByb3RlY3RlZCBfZG9jdW1lbnQ6IERvY3VtZW50O1xuXG4gIGZpcnN0Rm9jdXNFbGVtZW50OiBIVE1MRWxlbWVudCB8IEZvY3VzVHJhcEVsZW1lbnQ7XG5cbiAgYWN0aXZlID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIHJlbmRlcmVyOiBSZW5kZXJlcjIsIGluamVjdG9yOiBJbmplY3RvciwgcGxhdGZvcm1JZDogYW55LCBob3N0RWxlbWVudDogRm9jdXNUcmFwRWxlbWVudCkge1xuICAgIGlmIChpc1BsYXRmb3JtQnJvd3NlcihwbGF0Zm9ybUlkKSkge1xuICAgICAgdGhpcy5fZG9jdW1lbnQgPSBpbmplY3Rvci5nZXQoRE9DVU1FTlQpO1xuICAgIH1cblxuICAgIGhvc3RFbGVtZW50ID0gY2FzdEh0bWxFbGVtZW50VG9Gb2N1c1RyYXBFbGVtZW50KGhvc3RFbGVtZW50KTtcblxuICAgIGlmICghaG9zdEVsZW1lbnQuZm9jdXNUcmFwSWQpIHtcbiAgICAgIGhvc3RFbGVtZW50LmZvY3VzVHJhcElkID0gY3JlYXRlSWQoKTtcbiAgICB9XG5cbiAgICB0aGlzLmZvY3VzVHJhcEVsZW1lbnQgPSBob3N0RWxlbWVudDtcbiAgfVxuXG4gIGVuYWJsZUZvY3VzVHJhcCgpIHtcbiAgICBjb25zdCBmdGUgPSB0aGlzLmZvY3VzVHJhcEVsZW1lbnQ7XG4gICAgY29uc3QgZmlyc3RGb2N1c0VsZW1lbnQgPSBmdGUucXVlcnlTZWxlY3RvcignW2Nkcy1maXJzdC1mb2N1c10nKTtcbiAgICBjb25zdCBhY3RpdmVFbCA9IHRoaXMuX2RvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7XG5cbiAgICBpZiAoRm9jdXNUcmFwVHJhY2tlclNlcnZpY2UuZ2V0Q3VycmVudCgpID09PSBmdGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRm9jdXMgdHJhcCBpcyBhbHJlYWR5IGVuYWJsZWQgZm9yIHRoaXMgaW5zdGFuY2UuJyk7XG4gICAgfVxuXG4gICAgdGhpcy5maXJzdEZvY3VzRWxlbWVudCA9IChmaXJzdEZvY3VzRWxlbWVudCBhcyBIVE1MRWxlbWVudCkgfHwgdGhpcy5mb2N1c1RyYXBFbGVtZW50O1xuXG4gICAgYWRkUmVib3VuZEVsZW1lbnRzVG9Gb2N1c1RyYXBFbGVtZW50KHRoaXMuX2RvY3VtZW50LCBmdGUpO1xuXG4gICAgaWYgKCFpc0ZvY3VzYWJsZShmdGUpKSB7XG4gICAgICBmdGUuc2V0QXR0cmlidXRlKCd0YWJpbmRleCcsICctMScpO1xuICAgIH1cblxuICAgIGlmIChhY3RpdmVFbCAmJiBpc0hUTUxFbGVtZW50KGFjdGl2ZUVsKSkge1xuICAgICAgdGhpcy5wcmV2aW91c0ZvY3VzID0gYWN0aXZlRWwgYXMgSFRNTEVsZW1lbnQ7XG4gICAgfVxuXG4gICAgRm9jdXNUcmFwVHJhY2tlclNlcnZpY2Uuc2V0Q3VycmVudChmdGUpO1xuXG4gICAgLy8gc2V0VGltZW91dCBoZXJlIGlzIHJlcXVpcmVkIGZvciBTYWZhcmkgd2hpY2ggbWF5IHRyeSB0byBzZXQgZm9jdXMgb25cbiAgICAvLyBlbGVtZW50IGJlZm9yZSBpdCBpcyB2aXNpYmxlLi4uXG4gICAgY29uc3QgZm9jdXNUaW1lciA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5maXJzdEZvY3VzRWxlbWVudC5mb2N1cygpO1xuICAgICAgY2xlYXJUaW1lb3V0KGZvY3VzVGltZXIpO1xuICAgIH0sIDEwKTtcblxuICAgIHRoaXMub25Gb2N1c0luRXZlbnQgPSB0aGlzLm9uRm9jdXNJbi5iaW5kKHRoaXMpO1xuICAgIHRoaXMudW5saXN0ZW4gPSB0aGlzLnJlbmRlcmVyLmxpc3Rlbih0aGlzLl9kb2N1bWVudCwgJ2ZvY3VzaW4nLCB0aGlzLm9uRm9jdXNJbkV2ZW50KTtcbiAgICB0aGlzLmFjdGl2ZSA9IHRydWU7XG4gIH1cblxuICByZW1vdmVGb2N1c1RyYXAoKSB7XG4gICAgaWYgKHRoaXMudW5saXN0ZW4pIHtcbiAgICAgIHRoaXMudW5saXN0ZW4oKTtcbiAgICB9XG5cbiAgICByZW1vdmVSZWJvdW5kRWxlbWVudHNGcm9tRm9jdXNUcmFwRWxlbWVudCh0aGlzLmZvY3VzVHJhcEVsZW1lbnQpO1xuICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQXR0cmlidXRlKHRoaXMuZm9jdXNUcmFwRWxlbWVudCwgJ3RhYmluZGV4Jyk7XG4gICAgRm9jdXNUcmFwVHJhY2tlclNlcnZpY2UuYWN0aXZhdGVQcmV2aW91c0N1cnJlbnQoKTtcbiAgICB0aGlzLmFjdGl2ZSA9IGZhbHNlO1xuICAgIGlmICh0aGlzLnByZXZpb3VzRm9jdXMpIHtcbiAgICAgIHRoaXMucHJldmlvdXNGb2N1cy5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgb25Gb2N1c0luKGV2ZW50OiBGb2N1c0V2ZW50KSB7XG4gICAgcmVmb2N1c0lmT3V0c2lkZUZvY3VzVHJhcEVsZW1lbnQoXG4gICAgICBldmVudC5jb21wb3NlZFBhdGgoKVswXSBhcyBIVE1MRWxlbWVudCxcbiAgICAgIHRoaXMuZm9jdXNUcmFwRWxlbWVudCxcbiAgICAgIHRoaXMuZmlyc3RGb2N1c0VsZW1lbnRcbiAgICApO1xuICB9XG59XG4iXX0=
@@ -88,5 +88,18 @@ export const commonStringsDefault = {
88
88
  datagridExpandableEndOf: 'End of',
89
89
  datagridExpandableRowContent: 'Expandable row content',
90
90
  datagridExpandableRowsHelperText: `Screen reader table commands may not work for viewing expanded content, please use your screen reader's browse mode to read the content exposed by this button`,
91
+ responsiveNavToggleOpen: 'Navigation menu',
92
+ responsiveNavToggleClose: 'Navigation menu',
93
+ responsiveNavOverflowOpen: 'Navigation overflow menu',
94
+ responsiveNavOverflowClose: 'Navigation overflow menu',
95
+ // Wizard
96
+ wizardStepSuccess: 'Completed',
97
+ wizardStepError: 'Error',
98
+ /**
99
+ * Password Input
100
+ * Screen-reader text for the hide/show password field button
101
+ */
102
+ passwordHide: 'Hide password',
103
+ passwordShow: 'Show password',
91
104
  };
92
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLXN0cmluZ3MuZGVmYXVsdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXIvc3JjL3V0aWxzL2kxOG4vY29tbW9uLXN0cmluZ3MuZGVmYXVsdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBSUgsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQXFCO0lBQ3BELElBQUksRUFBRSxNQUFNO0lBQ1osS0FBSyxFQUFFLE9BQU87SUFDZCxJQUFJLEVBQUUsTUFBTTtJQUNaLElBQUksRUFBRSxNQUFNO0lBQ1osTUFBTSxFQUFFLFFBQVE7SUFDaEIsUUFBUSxFQUFFLFVBQVU7SUFDcEIsSUFBSSxFQUFFLE1BQU07SUFDWixNQUFNLEVBQUUsUUFBUTtJQUNoQixTQUFTLEVBQUUsWUFBWTtJQUN2QixRQUFRLEVBQUUsVUFBVTtJQUNwQixJQUFJLEVBQUUsTUFBTTtJQUNaLE9BQU8sRUFBRSxpQkFBaUI7SUFDMUIsSUFBSSxFQUFFLE1BQU07SUFDWixPQUFPLEVBQUUsU0FBUztJQUNsQixPQUFPLEVBQUUsU0FBUztJQUNsQixNQUFNLEVBQUUsT0FBTztJQUNmLFVBQVUsRUFBRSxtQkFBbUI7SUFDL0IsV0FBVyxFQUFFLHNCQUFzQjtJQUNuQyxXQUFXLEVBQUUsY0FBYztJQUMzQixVQUFVLEVBQUUsYUFBYTtJQUN6QixTQUFTLEVBQUUsWUFBWTtJQUN2QixRQUFRLEVBQUUsV0FBVztJQUNyQixRQUFRLEVBQUUsV0FBVztJQUNyQixZQUFZLEVBQUUsZUFBZTtJQUM3QixXQUFXLEVBQUUsY0FBYztJQUMzQixVQUFVLEVBQUUsYUFBYTtJQUN6QixXQUFXLEVBQUUsY0FBYztJQUMzQixRQUFRLEVBQUUsV0FBVztJQUNyQixRQUFRLEVBQUUsV0FBVztJQUNyQixpQkFBaUIsRUFBRSw0QkFBNEI7SUFDL0MsZUFBZSxFQUFFLHNCQUFzQjtJQUN2QywwQkFBMEIsRUFBRSwyQkFBMkI7SUFDdkQsa0JBQWtCLEVBQUUsc0JBQXNCO0lBQzFDLGNBQWMsRUFBRSxpQkFBaUI7SUFDakMsYUFBYSxFQUFFLGdCQUFnQjtJQUMvQixPQUFPLEVBQUUsU0FBUztJQUNsQixXQUFXO0lBQ1gsZUFBZSxFQUFFLHNCQUFzQjtJQUN2QyxhQUFhLEVBQUUsb0JBQW9CO0lBQ25DLHdCQUF3QixFQUFFLHlCQUF5QjtJQUNuRCx5QkFBeUIsRUFBRSwwQkFBMEI7SUFDckQseUJBQXlCLEVBQUUseUJBQXlCO0lBQ3BELHVCQUF1QixFQUFFLGVBQWU7SUFDeEMsNkJBQTZCLEVBQUUsc0JBQXNCO0lBQ3JELHdCQUF3QixFQUFFLHNCQUFzQjtJQUNoRCwwQkFBMEIsRUFBRSxrQ0FBa0M7SUFDOUQsUUFBUTtJQUNSLHlCQUF5QixFQUFFLGFBQWE7SUFDeEMsY0FBYztJQUNkLHFCQUFxQixFQUFFLGFBQWE7SUFDcEMsZ0JBQWdCLEVBQUUsbUJBQW1CO0lBQ3JDLCtCQUErQixFQUFFLGFBQWE7SUFDOUMsK0JBQStCLEVBQUUsOEJBQThCO0lBQy9ELHVCQUF1QixFQUFFLGdCQUFnQjtJQUN6QyxzQkFBc0IsRUFBRSxlQUFlO0lBQ3ZDLG1CQUFtQixFQUFFLFlBQVk7SUFDakMsd0JBQXdCLEVBQUUsaUJBQWlCO0lBQzNDLG9CQUFvQixFQUFFLGFBQWE7SUFDbkMsdUJBQXVCLEVBQUUsZ0JBQWdCO0lBQ3pDLHlCQUF5QixFQUFFLHFEQUFxRDtJQUNoRix3QkFBd0IsRUFBRSxrREFBa0Q7SUFDNUUsYUFBYTtJQUNiLGdCQUFnQixFQUFFLGdCQUFnQjtJQUNsQyxjQUFjO0lBQ2Qsc0JBQXNCLEVBQUUsa0NBQWtDO0lBQzFELGlCQUFpQixFQUFFLDRCQUE0QjtJQUMvQyxpQkFBaUI7SUFDakIsc0JBQXNCLEVBQUUsYUFBYTtJQUNyQyxtQkFBbUIsRUFBRSxTQUFTO0lBQzlCLG1CQUFtQixFQUFFLFdBQVc7SUFDaEMsaUJBQWlCLEVBQUUsT0FBTztJQUMxQixzQkFBc0IsRUFBRSxhQUFhO0lBQ3JDLFdBQVc7SUFDWCxjQUFjLEVBQUUsd0JBQXdCO0lBQ3hDLGlCQUFpQixFQUFFLHFDQUFxQztJQUN4RCxpQkFBaUIsRUFBRSxXQUFXO0lBQzlCLGdCQUFnQixFQUFFLFVBQVU7SUFDNUIsaUJBQWlCLEVBQUUsWUFBWTtJQUMvQixZQUFZLEVBQUUsY0FBYztJQUM1QiwyQkFBMkI7SUFDM0IsNkJBQTZCLEVBQUUsY0FBYztJQUM3Qyx1QkFBdUIsRUFBRSxRQUFRO0lBQ2pDLDRCQUE0QixFQUFFLHdCQUF3QjtJQUN0RCxnQ0FBZ0MsRUFBRSxnS0FBZ0s7Q0FDbk0sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyMiBWTXdhcmUsIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqIFRoaXMgc29mdHdhcmUgaXMgcmVsZWFzZWQgdW5kZXIgTUlUIGxpY2Vuc2UuXG4gKiBUaGUgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uIGNhbiBiZSBmb3VuZCBpbiBMSUNFTlNFIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHByb2plY3QuXG4gKi9cblxuaW1wb3J0IHsgQ2xyQ29tbW9uU3RyaW5ncyB9IGZyb20gJy4vY29tbW9uLXN0cmluZ3MuaW50ZXJmYWNlJztcblxuZXhwb3J0IGNvbnN0IGNvbW1vblN0cmluZ3NEZWZhdWx0OiBDbHJDb21tb25TdHJpbmdzID0ge1xuICBvcGVuOiAnT3BlbicsXG4gIGNsb3NlOiAnQ2xvc2UnLFxuICBzaG93OiAnU2hvdycsXG4gIGhpZGU6ICdIaWRlJyxcbiAgZXhwYW5kOiAnRXhwYW5kJyxcbiAgY29sbGFwc2U6ICdDb2xsYXBzZScsXG4gIG1vcmU6ICdNb3JlJyxcbiAgc2VsZWN0OiAnU2VsZWN0JyxcbiAgc2VsZWN0QWxsOiAnU2VsZWN0IEFsbCcsXG4gIHByZXZpb3VzOiAnUHJldmlvdXMnLFxuICBuZXh0OiAnTmV4dCcsXG4gIGN1cnJlbnQ6ICdKdW1wIHRvIGN1cnJlbnQnLFxuICBpbmZvOiAnSW5mbycsXG4gIHN1Y2Nlc3M6ICdTdWNjZXNzJyxcbiAgd2FybmluZzogJ1dhcm5pbmcnLFxuICBkYW5nZXI6ICdFcnJvcicsXG4gIHJvd0FjdGlvbnM6ICdBdmFpbGFibGUgYWN0aW9ucycsXG4gIHBpY2tDb2x1bW5zOiAnU2hvdyBvciBoaWRlIGNvbHVtbnMnLFxuICBzaG93Q29sdW1uczogJ1Nob3cgQ29sdW1ucycsXG4gIHNvcnRDb2x1bW46ICdTb3J0IENvbHVtbicsXG4gIGZpcnN0UGFnZTogJ0ZpcnN0IFBhZ2UnLFxuICBsYXN0UGFnZTogJ0xhc3QgUGFnZScsXG4gIG5leHRQYWdlOiAnTmV4dCBQYWdlJyxcbiAgcHJldmlvdXNQYWdlOiAnUHJldmlvdXMgUGFnZScsXG4gIGN1cnJlbnRQYWdlOiAnQ3VycmVudCBQYWdlJyxcbiAgdG90YWxQYWdlczogJ1RvdGFsIFBhZ2VzJyxcbiAgZmlsdGVySXRlbXM6ICdGaWx0ZXIgaXRlbXMnLFxuICBtaW5WYWx1ZTogJ01pbiB2YWx1ZScsXG4gIG1heFZhbHVlOiAnTWF4IHZhbHVlJyxcbiAgbW9kYWxDb250ZW50U3RhcnQ6ICdCZWdpbm5pbmcgb2YgTW9kYWwgQ29udGVudCcsXG4gIG1vZGFsQ29udGVudEVuZDogJ0VuZCBvZiBNb2RhbCBDb250ZW50JyxcbiAgc2hvd0NvbHVtbnNNZW51RGVzY3JpcHRpb246ICdTaG93IG9yIGhpZGUgY29sdW1ucyBtZW51JyxcbiAgYWxsQ29sdW1uc1NlbGVjdGVkOiAnQWxsIGNvbHVtbnMgc2VsZWN0ZWQnLFxuICBzaWducG9zdFRvZ2dsZTogJ1NpZ25wb3N0IFRvZ2dsZScsXG4gIHNpZ25wb3N0Q2xvc2U6ICdTaWducG9zdCBDbG9zZScsXG4gIGxvYWRpbmc6ICdMb2FkaW5nJyxcbiAgLy8gRGF0YWdyaWRcbiAgZGV0YWlsUGFuZVN0YXJ0OiAnU3RhcnQgb2Ygcm93IGRldGFpbHMnLFxuICBkZXRhaWxQYW5lRW5kOiAnRW5kIG9mIHJvdyBkZXRhaWxzJyxcbiAgc2luZ2xlU2VsZWN0aW9uQXJpYUxhYmVsOiAnU2luZ2xlIHNlbGVjdGlvbiBoZWFkZXInLFxuICBzaW5nbGVBY3Rpb25hYmxlQXJpYUxhYmVsOiAnU2luZ2xlIGFjdGlvbmFibGUgaGVhZGVyJyxcbiAgZGV0YWlsRXhwYW5kYWJsZUFyaWFMYWJlbDogJ1RvZ2dsZSBtb3JlIHJvdyBjb250ZW50JyxcbiAgZGF0YWdyaWRGaWx0ZXJBcmlhTGFiZWw6ICdGaWx0ZXIgZGlhbG9nJyxcbiAgZGF0YWdyaWRGaWx0ZXJEaWFsb2dBcmlhTGFiZWw6ICdUb2dnbGUgY29sdW1uIGZpbHRlcicsXG4gIGNvbHVtblNlcGFyYXRvckFyaWFMYWJlbDogJ0NvbHVtbiByZXNpemUgaGFuZGxlJyxcbiAgY29sdW1uU2VwYXJhdG9yRGVzY3JpcHRpb246ICdOb3QgbmVjZXNzYXJ5IHRvIHVzZSB0aGlzIGJ1dHRvbicsXG4gIC8vIEFsZXJ0XG4gIGFsZXJ0Q2xvc2VCdXR0b25BcmlhTGFiZWw6ICdDbG9zZSBhbGVydCcsXG4gIC8vIERhdGUgUGlja2VyXG4gIGRhdGVwaWNrZXJEaWFsb2dMYWJlbDogJ0Nob29zZSBkYXRlJyxcbiAgZGF0ZXBpY2tlclRvZ2dsZTogJ1RvZ2dsZSBkYXRlcGlja2VyJyxcbiAgZGF0ZXBpY2tlclRvZ2dsZUNob29zZURhdGVMYWJlbDogJ0Nob29zZSBkYXRlJyxcbiAgZGF0ZXBpY2tlclRvZ2dsZUNoYW5nZURhdGVMYWJlbDogJ0NoYW5nZSBkYXRlLCB7U0VMRUNURURfREFURX0nLFxuICBkYXRlcGlja2VyUHJldmlvdXNNb250aDogJ1ByZXZpb3VzIG1vbnRoJyxcbiAgZGF0ZXBpY2tlckN1cnJlbnRNb250aDogJ0N1cnJlbnQgbW9udGgnLFxuICBkYXRlcGlja2VyTmV4dE1vbnRoOiAnTmV4dCBtb250aCcsXG4gIGRhdGVwaWNrZXJQcmV2aW91c0RlY2FkZTogJ1ByZXZpb3VzIGRlY2FkZScsXG4gIGRhdGVwaWNrZXJOZXh0RGVjYWRlOiAnTmV4dCBkZWNhZGUnLFxuICBkYXRlcGlja2VyQ3VycmVudERlY2FkZTogJ0N1cnJlbnQgZGVjYWRlJyxcbiAgZGF0ZXBpY2tlclNlbGVjdE1vbnRoVGV4dDogJ1NlbGVjdCBtb250aCwgdGhlIGN1cnJlbnQgbW9udGggaXMge0NBTEVOREFSX01PTlRIfScsXG4gIGRhdGVwaWNrZXJTZWxlY3RZZWFyVGV4dDogJ1NlbGVjdCB5ZWFyLCB0aGUgY3VycmVudCB5ZWFyIGlzIHtDQUxFTkRBUl9ZRUFSfScsXG4gIC8vIFN0YWNrIFZpZXdcbiAgc3RhY2tWaWV3Q2hhbmdlZDogJ1ZhbHVlIGNoYW5nZWQuJyxcbiAgLy9WZXJ0aWNhbCBOYXZcbiAgdmVydGljYWxOYXZHcm91cFRvZ2dsZTogJ1RvZ2dsZSB2ZXJ0aWNhbCBuYXZpZ2F0aW9uIGdyb3VwJyxcbiAgdmVydGljYWxOYXZUb2dnbGU6ICdUb2dnbGUgdmVydGljYWwgbmF2aWdhdGlvbicsXG4gIC8vIFRpbWVsaW5lIHN0ZXBzXG4gIHRpbWVsaW5lU3RlcE5vdFN0YXJ0ZWQ6ICdOb3Qgc3RhcnRlZCcsXG4gIHRpbWVsaW5lU3RlcEN1cnJlbnQ6ICdDdXJyZW50JyxcbiAgdGltZWxpbmVTdGVwU3VjY2VzczogJ0NvbXBsZXRlZCcsXG4gIHRpbWVsaW5lU3RlcEVycm9yOiAnRXJyb3InLFxuICB0aW1lbGluZVN0ZXBQcm9jZXNzaW5nOiAnSW4gcHJvZ3Jlc3MnLFxuICAvLyBDb21ib2JveFxuICBjb21ib2JveERlbGV0ZTogJ0RlbGV0ZSBzZWxlY3RlZCBvcHRpb24nLFxuICBjb21ib2JveFNlYXJjaGluZzogJ1NlYXJjaGluZyBmb3IgbWF0Y2hlcyBmb3IgXCJ7SU5QVVR9XCInLFxuICBjb21ib2JveFNlbGVjdGlvbjogJ1NlbGVjdGlvbicsXG4gIGNvbWJvYm94U2VsZWN0ZWQ6ICdTZWxlY3RlZCcsXG4gIGNvbWJvYm94Tm9SZXN1bHRzOiAnTm8gcmVzdWx0cycsXG4gIGNvbWJvYm94T3BlbjogJ1Nob3cgb3B0aW9ucycsXG4gIC8vIERhdGFncmlkIGV4cGFuZGFibGUgcm93c1xuICBkYXRhZ3JpZEV4cGFuZGFibGVCZWdpbm5pbmdPZjogJ0JlZ2lubmluZyBvZicsXG4gIGRhdGFncmlkRXhwYW5kYWJsZUVuZE9mOiAnRW5kIG9mJyxcbiAgZGF0YWdyaWRFeHBhbmRhYmxlUm93Q29udGVudDogJ0V4cGFuZGFibGUgcm93IGNvbnRlbnQnLFxuICBkYXRhZ3JpZEV4cGFuZGFibGVSb3dzSGVscGVyVGV4dDogYFNjcmVlbiByZWFkZXIgdGFibGUgY29tbWFuZHMgbWF5IG5vdCB3b3JrIGZvciB2aWV3aW5nIGV4cGFuZGVkIGNvbnRlbnQsIHBsZWFzZSB1c2UgeW91ciBzY3JlZW4gcmVhZGVyJ3MgYnJvd3NlIG1vZGUgdG8gcmVhZCB0aGUgY29udGVudCBleHBvc2VkIGJ5IHRoaXMgYnV0dG9uYCxcbn07XG4iXX0=
105
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLXN0cmluZ3MuZGVmYXVsdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXIvc3JjL3V0aWxzL2kxOG4vY29tbW9uLXN0cmluZ3MuZGVmYXVsdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBSUgsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQXFCO0lBQ3BELElBQUksRUFBRSxNQUFNO0lBQ1osS0FBSyxFQUFFLE9BQU87SUFDZCxJQUFJLEVBQUUsTUFBTTtJQUNaLElBQUksRUFBRSxNQUFNO0lBQ1osTUFBTSxFQUFFLFFBQVE7SUFDaEIsUUFBUSxFQUFFLFVBQVU7SUFDcEIsSUFBSSxFQUFFLE1BQU07SUFDWixNQUFNLEVBQUUsUUFBUTtJQUNoQixTQUFTLEVBQUUsWUFBWTtJQUN2QixRQUFRLEVBQUUsVUFBVTtJQUNwQixJQUFJLEVBQUUsTUFBTTtJQUNaLE9BQU8sRUFBRSxpQkFBaUI7SUFDMUIsSUFBSSxFQUFFLE1BQU07SUFDWixPQUFPLEVBQUUsU0FBUztJQUNsQixPQUFPLEVBQUUsU0FBUztJQUNsQixNQUFNLEVBQUUsT0FBTztJQUNmLFVBQVUsRUFBRSxtQkFBbUI7SUFDL0IsV0FBVyxFQUFFLHNCQUFzQjtJQUNuQyxXQUFXLEVBQUUsY0FBYztJQUMzQixVQUFVLEVBQUUsYUFBYTtJQUN6QixTQUFTLEVBQUUsWUFBWTtJQUN2QixRQUFRLEVBQUUsV0FBVztJQUNyQixRQUFRLEVBQUUsV0FBVztJQUNyQixZQUFZLEVBQUUsZUFBZTtJQUM3QixXQUFXLEVBQUUsY0FBYztJQUMzQixVQUFVLEVBQUUsYUFBYTtJQUN6QixXQUFXLEVBQUUsY0FBYztJQUMzQixRQUFRLEVBQUUsV0FBVztJQUNyQixRQUFRLEVBQUUsV0FBVztJQUNyQixpQkFBaUIsRUFBRSw0QkFBNEI7SUFDL0MsZUFBZSxFQUFFLHNCQUFzQjtJQUN2QywwQkFBMEIsRUFBRSwyQkFBMkI7SUFDdkQsa0JBQWtCLEVBQUUsc0JBQXNCO0lBQzFDLGNBQWMsRUFBRSxpQkFBaUI7SUFDakMsYUFBYSxFQUFFLGdCQUFnQjtJQUMvQixPQUFPLEVBQUUsU0FBUztJQUNsQixXQUFXO0lBQ1gsZUFBZSxFQUFFLHNCQUFzQjtJQUN2QyxhQUFhLEVBQUUsb0JBQW9CO0lBQ25DLHdCQUF3QixFQUFFLHlCQUF5QjtJQUNuRCx5QkFBeUIsRUFBRSwwQkFBMEI7SUFDckQseUJBQXlCLEVBQUUseUJBQXlCO0lBQ3BELHVCQUF1QixFQUFFLGVBQWU7SUFDeEMsNkJBQTZCLEVBQUUsc0JBQXNCO0lBQ3JELHdCQUF3QixFQUFFLHNCQUFzQjtJQUNoRCwwQkFBMEIsRUFBRSxrQ0FBa0M7SUFDOUQsUUFBUTtJQUNSLHlCQUF5QixFQUFFLGFBQWE7SUFDeEMsY0FBYztJQUNkLHFCQUFxQixFQUFFLGFBQWE7SUFDcEMsZ0JBQWdCLEVBQUUsbUJBQW1CO0lBQ3JDLCtCQUErQixFQUFFLGFBQWE7SUFDOUMsK0JBQStCLEVBQUUsOEJBQThCO0lBQy9ELHVCQUF1QixFQUFFLGdCQUFnQjtJQUN6QyxzQkFBc0IsRUFBRSxlQUFlO0lBQ3ZDLG1CQUFtQixFQUFFLFlBQVk7SUFDakMsd0JBQXdCLEVBQUUsaUJBQWlCO0lBQzNDLG9CQUFvQixFQUFFLGFBQWE7SUFDbkMsdUJBQXVCLEVBQUUsZ0JBQWdCO0lBQ3pDLHlCQUF5QixFQUFFLHFEQUFxRDtJQUNoRix3QkFBd0IsRUFBRSxrREFBa0Q7SUFDNUUsYUFBYTtJQUNiLGdCQUFnQixFQUFFLGdCQUFnQjtJQUNsQyxjQUFjO0lBQ2Qsc0JBQXNCLEVBQUUsa0NBQWtDO0lBQzFELGlCQUFpQixFQUFFLDRCQUE0QjtJQUMvQyxpQkFBaUI7SUFDakIsc0JBQXNCLEVBQUUsYUFBYTtJQUNyQyxtQkFBbUIsRUFBRSxTQUFTO0lBQzlCLG1CQUFtQixFQUFFLFdBQVc7SUFDaEMsaUJBQWlCLEVBQUUsT0FBTztJQUMxQixzQkFBc0IsRUFBRSxhQUFhO0lBQ3JDLFdBQVc7SUFDWCxjQUFjLEVBQUUsd0JBQXdCO0lBQ3hDLGlCQUFpQixFQUFFLHFDQUFxQztJQUN4RCxpQkFBaUIsRUFBRSxXQUFXO0lBQzlCLGdCQUFnQixFQUFFLFVBQVU7SUFDNUIsaUJBQWlCLEVBQUUsWUFBWTtJQUMvQixZQUFZLEVBQUUsY0FBYztJQUM1QiwyQkFBMkI7SUFDM0IsNkJBQTZCLEVBQUUsY0FBYztJQUM3Qyx1QkFBdUIsRUFBRSxRQUFRO0lBQ2pDLDRCQUE0QixFQUFFLHdCQUF3QjtJQUN0RCxnQ0FBZ0MsRUFBRSxnS0FBZ0s7SUFDbE0sdUJBQXVCLEVBQUUsaUJBQWlCO0lBQzFDLHdCQUF3QixFQUFFLGlCQUFpQjtJQUMzQyx5QkFBeUIsRUFBRSwwQkFBMEI7SUFDckQsMEJBQTBCLEVBQUUsMEJBQTBCO0lBQ3RELFNBQVM7SUFDVCxpQkFBaUIsRUFBRSxXQUFXO0lBQzlCLGVBQWUsRUFBRSxPQUFPO0lBRXhCOzs7T0FHRztJQUNILFlBQVksRUFBRSxlQUFlO0lBQzdCLFlBQVksRUFBRSxlQUFlO0NBQzlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMjIgVk13YXJlLCBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICogVGhlIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gTElDRU5TRSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBwcm9qZWN0LlxuICovXG5cbmltcG9ydCB7IENsckNvbW1vblN0cmluZ3MgfSBmcm9tICcuL2NvbW1vbi1zdHJpbmdzLmludGVyZmFjZSc7XG5cbmV4cG9ydCBjb25zdCBjb21tb25TdHJpbmdzRGVmYXVsdDogQ2xyQ29tbW9uU3RyaW5ncyA9IHtcbiAgb3BlbjogJ09wZW4nLFxuICBjbG9zZTogJ0Nsb3NlJyxcbiAgc2hvdzogJ1Nob3cnLFxuICBoaWRlOiAnSGlkZScsXG4gIGV4cGFuZDogJ0V4cGFuZCcsXG4gIGNvbGxhcHNlOiAnQ29sbGFwc2UnLFxuICBtb3JlOiAnTW9yZScsXG4gIHNlbGVjdDogJ1NlbGVjdCcsXG4gIHNlbGVjdEFsbDogJ1NlbGVjdCBBbGwnLFxuICBwcmV2aW91czogJ1ByZXZpb3VzJyxcbiAgbmV4dDogJ05leHQnLFxuICBjdXJyZW50OiAnSnVtcCB0byBjdXJyZW50JyxcbiAgaW5mbzogJ0luZm8nLFxuICBzdWNjZXNzOiAnU3VjY2VzcycsXG4gIHdhcm5pbmc6ICdXYXJuaW5nJyxcbiAgZGFuZ2VyOiAnRXJyb3InLFxuICByb3dBY3Rpb25zOiAnQXZhaWxhYmxlIGFjdGlvbnMnLFxuICBwaWNrQ29sdW1uczogJ1Nob3cgb3IgaGlkZSBjb2x1bW5zJyxcbiAgc2hvd0NvbHVtbnM6ICdTaG93IENvbHVtbnMnLFxuICBzb3J0Q29sdW1uOiAnU29ydCBDb2x1bW4nLFxuICBmaXJzdFBhZ2U6ICdGaXJzdCBQYWdlJyxcbiAgbGFzdFBhZ2U6ICdMYXN0IFBhZ2UnLFxuICBuZXh0UGFnZTogJ05leHQgUGFnZScsXG4gIHByZXZpb3VzUGFnZTogJ1ByZXZpb3VzIFBhZ2UnLFxuICBjdXJyZW50UGFnZTogJ0N1cnJlbnQgUGFnZScsXG4gIHRvdGFsUGFnZXM6ICdUb3RhbCBQYWdlcycsXG4gIGZpbHRlckl0ZW1zOiAnRmlsdGVyIGl0ZW1zJyxcbiAgbWluVmFsdWU6ICdNaW4gdmFsdWUnLFxuICBtYXhWYWx1ZTogJ01heCB2YWx1ZScsXG4gIG1vZGFsQ29udGVudFN0YXJ0OiAnQmVnaW5uaW5nIG9mIE1vZGFsIENvbnRlbnQnLFxuICBtb2RhbENvbnRlbnRFbmQ6ICdFbmQgb2YgTW9kYWwgQ29udGVudCcsXG4gIHNob3dDb2x1bW5zTWVudURlc2NyaXB0aW9uOiAnU2hvdyBvciBoaWRlIGNvbHVtbnMgbWVudScsXG4gIGFsbENvbHVtbnNTZWxlY3RlZDogJ0FsbCBjb2x1bW5zIHNlbGVjdGVkJyxcbiAgc2lnbnBvc3RUb2dnbGU6ICdTaWducG9zdCBUb2dnbGUnLFxuICBzaWducG9zdENsb3NlOiAnU2lnbnBvc3QgQ2xvc2UnLFxuICBsb2FkaW5nOiAnTG9hZGluZycsXG4gIC8vIERhdGFncmlkXG4gIGRldGFpbFBhbmVTdGFydDogJ1N0YXJ0IG9mIHJvdyBkZXRhaWxzJyxcbiAgZGV0YWlsUGFuZUVuZDogJ0VuZCBvZiByb3cgZGV0YWlscycsXG4gIHNpbmdsZVNlbGVjdGlvbkFyaWFMYWJlbDogJ1NpbmdsZSBzZWxlY3Rpb24gaGVhZGVyJyxcbiAgc2luZ2xlQWN0aW9uYWJsZUFyaWFMYWJlbDogJ1NpbmdsZSBhY3Rpb25hYmxlIGhlYWRlcicsXG4gIGRldGFpbEV4cGFuZGFibGVBcmlhTGFiZWw6ICdUb2dnbGUgbW9yZSByb3cgY29udGVudCcsXG4gIGRhdGFncmlkRmlsdGVyQXJpYUxhYmVsOiAnRmlsdGVyIGRpYWxvZycsXG4gIGRhdGFncmlkRmlsdGVyRGlhbG9nQXJpYUxhYmVsOiAnVG9nZ2xlIGNvbHVtbiBmaWx0ZXInLFxuICBjb2x1bW5TZXBhcmF0b3JBcmlhTGFiZWw6ICdDb2x1bW4gcmVzaXplIGhhbmRsZScsXG4gIGNvbHVtblNlcGFyYXRvckRlc2NyaXB0aW9uOiAnTm90IG5lY2Vzc2FyeSB0byB1c2UgdGhpcyBidXR0b24nLFxuICAvLyBBbGVydFxuICBhbGVydENsb3NlQnV0dG9uQXJpYUxhYmVsOiAnQ2xvc2UgYWxlcnQnLFxuICAvLyBEYXRlIFBpY2tlclxuICBkYXRlcGlja2VyRGlhbG9nTGFiZWw6ICdDaG9vc2UgZGF0ZScsXG4gIGRhdGVwaWNrZXJUb2dnbGU6ICdUb2dnbGUgZGF0ZXBpY2tlcicsXG4gIGRhdGVwaWNrZXJUb2dnbGVDaG9vc2VEYXRlTGFiZWw6ICdDaG9vc2UgZGF0ZScsXG4gIGRhdGVwaWNrZXJUb2dnbGVDaGFuZ2VEYXRlTGFiZWw6ICdDaGFuZ2UgZGF0ZSwge1NFTEVDVEVEX0RBVEV9JyxcbiAgZGF0ZXBpY2tlclByZXZpb3VzTW9udGg6ICdQcmV2aW91cyBtb250aCcsXG4gIGRhdGVwaWNrZXJDdXJyZW50TW9udGg6ICdDdXJyZW50IG1vbnRoJyxcbiAgZGF0ZXBpY2tlck5leHRNb250aDogJ05leHQgbW9udGgnLFxuICBkYXRlcGlja2VyUHJldmlvdXNEZWNhZGU6ICdQcmV2aW91cyBkZWNhZGUnLFxuICBkYXRlcGlja2VyTmV4dERlY2FkZTogJ05leHQgZGVjYWRlJyxcbiAgZGF0ZXBpY2tlckN1cnJlbnREZWNhZGU6ICdDdXJyZW50IGRlY2FkZScsXG4gIGRhdGVwaWNrZXJTZWxlY3RNb250aFRleHQ6ICdTZWxlY3QgbW9udGgsIHRoZSBjdXJyZW50IG1vbnRoIGlzIHtDQUxFTkRBUl9NT05USH0nLFxuICBkYXRlcGlja2VyU2VsZWN0WWVhclRleHQ6ICdTZWxlY3QgeWVhciwgdGhlIGN1cnJlbnQgeWVhciBpcyB7Q0FMRU5EQVJfWUVBUn0nLFxuICAvLyBTdGFjayBWaWV3XG4gIHN0YWNrVmlld0NoYW5nZWQ6ICdWYWx1ZSBjaGFuZ2VkLicsXG4gIC8vVmVydGljYWwgTmF2XG4gIHZlcnRpY2FsTmF2R3JvdXBUb2dnbGU6ICdUb2dnbGUgdmVydGljYWwgbmF2aWdhdGlvbiBncm91cCcsXG4gIHZlcnRpY2FsTmF2VG9nZ2xlOiAnVG9nZ2xlIHZlcnRpY2FsIG5hdmlnYXRpb24nLFxuICAvLyBUaW1lbGluZSBzdGVwc1xuICB0aW1lbGluZVN0ZXBOb3RTdGFydGVkOiAnTm90IHN0YXJ0ZWQnLFxuICB0aW1lbGluZVN0ZXBDdXJyZW50OiAnQ3VycmVudCcsXG4gIHRpbWVsaW5lU3RlcFN1Y2Nlc3M6ICdDb21wbGV0ZWQnLFxuICB0aW1lbGluZVN0ZXBFcnJvcjogJ0Vycm9yJyxcbiAgdGltZWxpbmVTdGVwUHJvY2Vzc2luZzogJ0luIHByb2dyZXNzJyxcbiAgLy8gQ29tYm9ib3hcbiAgY29tYm9ib3hEZWxldGU6ICdEZWxldGUgc2VsZWN0ZWQgb3B0aW9uJyxcbiAgY29tYm9ib3hTZWFyY2hpbmc6ICdTZWFyY2hpbmcgZm9yIG1hdGNoZXMgZm9yIFwie0lOUFVUfVwiJyxcbiAgY29tYm9ib3hTZWxlY3Rpb246ICdTZWxlY3Rpb24nLFxuICBjb21ib2JveFNlbGVjdGVkOiAnU2VsZWN0ZWQnLFxuICBjb21ib2JveE5vUmVzdWx0czogJ05vIHJlc3VsdHMnLFxuICBjb21ib2JveE9wZW46ICdTaG93IG9wdGlvbnMnLFxuICAvLyBEYXRhZ3JpZCBleHBhbmRhYmxlIHJvd3NcbiAgZGF0YWdyaWRFeHBhbmRhYmxlQmVnaW5uaW5nT2Y6ICdCZWdpbm5pbmcgb2YnLFxuICBkYXRhZ3JpZEV4cGFuZGFibGVFbmRPZjogJ0VuZCBvZicsXG4gIGRhdGFncmlkRXhwYW5kYWJsZVJvd0NvbnRlbnQ6ICdFeHBhbmRhYmxlIHJvdyBjb250ZW50JyxcbiAgZGF0YWdyaWRFeHBhbmRhYmxlUm93c0hlbHBlclRleHQ6IGBTY3JlZW4gcmVhZGVyIHRhYmxlIGNvbW1hbmRzIG1heSBub3Qgd29yayBmb3Igdmlld2luZyBleHBhbmRlZCBjb250ZW50LCBwbGVhc2UgdXNlIHlvdXIgc2NyZWVuIHJlYWRlcidzIGJyb3dzZSBtb2RlIHRvIHJlYWQgdGhlIGNvbnRlbnQgZXhwb3NlZCBieSB0aGlzIGJ1dHRvbmAsXG4gIHJlc3BvbnNpdmVOYXZUb2dnbGVPcGVuOiAnTmF2aWdhdGlvbiBtZW51JyxcbiAgcmVzcG9uc2l2ZU5hdlRvZ2dsZUNsb3NlOiAnTmF2aWdhdGlvbiBtZW51JyxcbiAgcmVzcG9uc2l2ZU5hdk92ZXJmbG93T3BlbjogJ05hdmlnYXRpb24gb3ZlcmZsb3cgbWVudScsXG4gIHJlc3BvbnNpdmVOYXZPdmVyZmxvd0Nsb3NlOiAnTmF2aWdhdGlvbiBvdmVyZmxvdyBtZW51JyxcbiAgLy8gV2l6YXJkXG4gIHdpemFyZFN0ZXBTdWNjZXNzOiAnQ29tcGxldGVkJyxcbiAgd2l6YXJkU3RlcEVycm9yOiAnRXJyb3InLFxuXG4gIC8qKlxuICAgKiBQYXNzd29yZCBJbnB1dFxuICAgKiBTY3JlZW4tcmVhZGVyIHRleHQgZm9yIHRoZSBoaWRlL3Nob3cgcGFzc3dvcmQgZmllbGQgYnV0dG9uXG4gICAqL1xuICBwYXNzd29yZEhpZGU6ICdIaWRlIHBhc3N3b3JkJyxcbiAgcGFzc3dvcmRTaG93OiAnU2hvdyBwYXNzd29yZCcsXG59O1xuIl19
@@ -4,4 +4,4 @@
4
4
  * The full license information can be found in LICENSE in the root directory of this project.
5
5
  */
6
6
  export {};
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLXN0cmluZ3MuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci9zcmMvdXRpbHMvaTE4bi9jb21tb24tc3RyaW5ncy5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyMiBWTXdhcmUsIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqIFRoaXMgc29mdHdhcmUgaXMgcmVsZWFzZWQgdW5kZXIgTUlUIGxpY2Vuc2UuXG4gKiBUaGUgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uIGNhbiBiZSBmb3VuZCBpbiBMSUNFTlNFIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHByb2plY3QuXG4gKi9cblxuZXhwb3J0IGludGVyZmFjZSBDbHJDb21tb25TdHJpbmdzIHtcbiAgLyoqXG4gICAqIE9wZW4gYnV0dG9uXG4gICAqL1xuICBvcGVuOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBDbG9zZSBidXR0b25cbiAgICovXG4gIGNsb3NlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTaG93IGJ1dHRvblxuICAgKi9cbiAgc2hvdzogc3RyaW5nO1xuICAvKipcbiAgICogSGlkZSBidXR0b25cbiAgICovXG4gIGhpZGU6IHN0cmluZztcbiAgLyoqXG4gICAqIERlbGV0ZSBidXR0b25cbiAgICovXG4gIGRlbGV0ZT86IHN0cmluZztcbiAgLyoqXG4gICAqIEV4cGFuZGFibGUgY29tcG9uZW50czogZXhwYW5kIGNhcmV0XG4gICAqL1xuICBleHBhbmQ6IHN0cmluZztcbiAgLyoqXG4gICAqIEV4cGFuZGFibGUgY29tcG9uZW50czogY29sbGFwc2UgY2FyZXRcbiAgICovXG4gIGNvbGxhcHNlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBPdmVyZmxvdyBtZW51czogZWxsaXBzaXMgYnV0dG9uXG4gICAqL1xuICBtb3JlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTZWxlY3RhYmxlIGNvbXBvbmVudHM6IGNoZWNrYm94IG9yIHJhZGlvXG4gICAqL1xuICBzZWxlY3Q6IHN0cmluZztcbiAgLyoqXG4gICAqIFNlbGVjdGFibGUgY29tcG9uZW50czogY2hlY2tib3ggdG8gc2VsZWN0IGFsbFxuICAgKi9cbiAgc2VsZWN0QWxsOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTZWxlY3RlZCBpdGVtKHMpOiBjb21ib2JveFxuICAgKi9cbiAgc2VsZWN0aW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogUGFnaW5hdGlvbjogcHJldmlvdXMgYnV0dG9uXG4gICAqL1xuICBwcmV2aW91czogc3RyaW5nO1xuICAvKipcbiAgICogUGFnaW5hdGlvbjogbmV4dCBidXR0b25cbiAgICovXG4gIG5leHQ6IHN0cmluZztcbiAgLyoqXG4gICAqIFBhZ2luYXRpb246IGdvIHRvIGN1cnJlbnRcbiAgICovXG4gIGN1cnJlbnQ6IHN0cmluZztcbiAgLyoqXG4gICAqIEFsZXJ0IGxldmVsczogaW5mb1xuICAgKi9cbiAgaW5mbzogc3RyaW5nO1xuICAvKipcbiAgICogQWxlcnQgbGV2ZWxzOiBzdWNjZXNzXG4gICAqL1xuICBzdWNjZXNzOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBbGVydCBsZXZlbHM6IHdhcm5pbmdcbiAgICovXG4gIHdhcm5pbmc6IHN0cmluZztcbiAgLyoqXG4gICAqIEFsZXJ0IGxldmVsczogZGFuZ2VyXG4gICAqL1xuICBkYW5nZXI6IHN0cmluZztcbiAgLyoqXG4gICAqIERhdGFncmlkOiByb3cgYWN0aW9uc1xuICAgKi9cbiAgcm93QWN0aW9uczogc3RyaW5nO1xuICAvKipcbiAgICogRGF0YWdyaWQ6IHBpY2sgY29sdW1uc1xuICAgKi9cbiAgcGlja0NvbHVtbnM6IHN0cmluZztcbiAgLyoqXG4gICAqIERhdGFncmlkOiBzaG93IGNvbHVtbnNcbiAgICovXG4gIHNob3dDb2x1bW5zOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBEYXRhZ3JpZDogc29ydCBvZiBjb2x1bW5zXG4gICAqL1xuICBzb3J0Q29sdW1uOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBEYXRhZ3JpZDogZmlyc3QgcGFnZVxuICAgKi9cbiAgZmlyc3RQYWdlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBEYXRhZ3JpZDogbGFzdCBwYWdlXG4gICAqL1xuICBsYXN0UGFnZTogc3RyaW5nO1xuICAvKipcbiAgICogRGF0YWdyaWQ6IG5leHQgcGFnZVxuICAgKi9cbiAgbmV4dFBhZ2U6IHN0cmluZztcbiAgLyoqXG4gICAqIERhdGFncmlkOiBwcmV2aW91cyBwYWdlXG4gICAqL1xuICBwcmV2aW91c1BhZ2U6IHN0cmluZztcbiAgLyoqXG4gICAqIERhdGFncmlkOiBwcmV2aW91cyBwYWdlXG4gICAqL1xuICBjdXJyZW50UGFnZTogc3RyaW5nO1xuICAvKipcbiAgICogRGF0YWdpcmQ6IHRvdGFsIHBhZ2VzXG4gICAqL1xuICB0b3RhbFBhZ2VzOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBEYXRhZ3JpZCBzdHJpbmcgZmlsdGVyOiBmaWx0ZXIgaXRlbXNcbiAgICovXG4gIGZpbHRlckl0ZW1zOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBEYXRhZ3JpZCBudW1lcmljIGZpbHRlcjogbWluXG4gICAqL1xuICBtaW5WYWx1ZTogc3RyaW5nO1xuICAvKipcbiAgICogRGF0YWdyaWQgbnVtZXJpYyBmaWx0ZXI6IG1heFxuICAgKi9cbiAgbWF4VmFsdWU6IHN0cmluZztcbiAgLyoqXG4gICAqIERhdGFncmlkIGZpbHRlciB0b2dnbGUgYnV0dG9uXG4gICAqL1xuICBkYXRhZ3JpZEZpbHRlckFyaWFMYWJlbD86IHN0cmluZztcbiAgLyoqXG4gICAqIERhdGFncmlkIGZpbHRlciBkaWFsb2dcbiAgICovXG4gIGRhdGFncmlkRmlsdGVyRGlhbG9nQXJpYUxhYmVsPzogc3RyaW5nO1xuICAvKipcbiAgICogRGF0YWdyaWQgY29sdW1uIGhhbmRsZXIgc3RyaW5nXG4gICAqL1xuICBjb2x1bW5TZXBhcmF0b3JBcmlhTGFiZWw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBEYXRhZ3JpZCBjb2x1bW4gcmVzaXplIGhhbmRsZXIgc3RyaW5nXG4gICAqL1xuICBjb2x1bW5TZXBhcmF0b3JEZXNjcmlwdGlvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIE1vZGFsIHN0YXJ0IG9mIGNvbnRlbnRcbiAgICovXG4gIG1vZGFsQ29udGVudFN0YXJ0OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBNb2RhbCBlbmQgb2YgY29udGVudFxuICAgKi9cbiAgbW9kYWxDb250ZW50RW5kOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIERhdGFncmlkIFNob3cgY29sdW1ucyBtZW51IGRlc2NyaXB0aW9uXG4gICAqL1xuICBzaG93Q29sdW1uc01lbnVEZXNjcmlwdGlvbjogc3RyaW5nO1xuICAvKipcbiAgICogRGF0YWdyaWQgU2hvdyBjb2x1bW5zIC8gQWxsIGNvbHVtbnMgc2VsZWN0ZWQgY29uZmlybWF0aW9uXG4gICAqL1xuICBhbGxDb2x1bW5zU2VsZWN0ZWQ6IHN0cmluZztcbiAgLyoqXG4gICAqIFNpZ25wb3N0IFRvZ2dsZSBCdXR0b25cbiAgICovXG4gIHNpZ25wb3N0VG9nZ2xlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTaWducG9zdCBDbG9zZSBCdXR0b25cbiAgICogKHVzZWQgaW5zaWRlIHNpZ25wb3N0IGNvbnRlbnQgY29tcG9uZW50cylcbiAgICovXG4gIHNpZ25wb3N0Q2xvc2U6IHN0cmluZztcbiAgLypcbiAgICogTG9hZGVycy9TcGlubmVyc1xuICAgKi9cbiAgbG9hZGluZzogc3RyaW5nO1xuICAvKipcbiAgICogRGF0YWdyaWQ6IGRldGFpbCBwYW5lIHN0YXJ0IGNvbnRlbnQgZm9yIHNjcmVlbiByZWFkZXJcbiAgICovXG4gIGRldGFpbFBhbmVTdGFydDogc3RyaW5nO1xuICAvKipcbiAgICogRGF0YWdyaWQ6IGRldGFpbCBwYW5lIGVuZCBjb250ZW50IGZvciBzY3JlZW4gcmVhZGVyXG4gICAqL1xuICBkZXRhaWxQYW5lRW5kOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBEYXRhZ3JpZDogU2luZ2xlIHNlbGVjdGlvbiBoZWFkZXJcbiAgICovXG4gIHNpbmdsZVNlbGVjdGlvbkFyaWFMYWJlbDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEYXRhZ3JpZDogU2luZ2xlIGFjdGlvbmFibGUgaGVhZGVyXG4gICAqL1xuICBzaW5nbGVBY3Rpb25hYmxlQXJpYUxhYmVsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIERhdGFncmlkOiBFeHBhbmRhYmxlIHJvd1xuICAgKi9cbiAgZGV0YWlsRXhwYW5kYWJsZUFyaWFMYWJlbDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBbGVydDogQ2xvc2UgYWxlcnQgYnV0dG9uXG4gICAqL1xuICBhbGVydENsb3NlQnV0dG9uQXJpYUxhYmVsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIERhdGVwaWNrZXIgVUkgbGFiZWxzXG4gICAqL1xuICBkYXRlcGlja2VyRGlhbG9nTGFiZWw6IHN0cmluZztcbiAgZGF0ZXBpY2tlclRvZ2dsZTogc3RyaW5nO1xuICBkYXRlcGlja2VyVG9nZ2xlQ2hvb3NlRGF0ZUxhYmVsOiBzdHJpbmc7XG4gIGRhdGVwaWNrZXJUb2dnbGVDaGFuZ2VEYXRlTGFiZWw6IHN0cmluZztcbiAgZGF0ZXBpY2tlclByZXZpb3VzTW9udGg6IHN0cmluZztcbiAgZGF0ZXBpY2tlckN1cnJlbnRNb250aDogc3RyaW5nO1xuICBkYXRlcGlja2VyTmV4dE1vbnRoOiBzdHJpbmc7XG4gIGRhdGVwaWNrZXJQcmV2aW91c0RlY2FkZTogc3RyaW5nO1xuICBkYXRlcGlja2VyTmV4dERlY2FkZTogc3RyaW5nO1xuICBkYXRlcGlja2VyQ3VycmVudERlY2FkZTogc3RyaW5nO1xuICBkYXRlcGlja2VyU2VsZWN0TW9udGhUZXh0OiBzdHJpbmc7XG4gIGRhdGVwaWNrZXJTZWxlY3RZZWFyVGV4dDogc3RyaW5nO1xuICAvKipcbiAgICogU3RhY2sgVmlldzogUmVjb3JkIGhhcyBjaGFuZ2VkXG4gICAqL1xuICBzdGFja1ZpZXdDaGFuZ2VkOiBzdHJpbmc7XG4gIC8vIFZlcnRpY2FsIE5hdlxuICB2ZXJ0aWNhbE5hdlRvZ2dsZTogc3RyaW5nO1xuICB2ZXJ0aWNhbE5hdkdyb3VwVG9nZ2xlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaW1lbGluZSBTdGVwc1xuICAgKi9cbiAgdGltZWxpbmVTdGVwTm90U3RhcnRlZDogc3RyaW5nO1xuICB0aW1lbGluZVN0ZXBDdXJyZW50OiBzdHJpbmc7XG4gIHRpbWVsaW5lU3RlcFN1Y2Nlc3M6IHN0cmluZztcbiAgdGltZWxpbmVTdGVwRXJyb3I6IHN0cmluZztcbiAgdGltZWxpbmVTdGVwUHJvY2Vzc2luZzogc3RyaW5nO1xuXG4gIC8vIERhdGFncmlkIEhlbHBlciB0ZXh0IGZvciBleHBhbmRhYmxlIHJvd3NcbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIFNob3VsZCBiZSByZW1vdmVkIGluIHYxNFxuICAgKi9cbiAgZGF0ZWdyaWRFeHBhbmRhYmxlQmVnaW5uaW5nT2Y/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCBTaG91bGQgYmUgcmVtb3ZlZCBpbiB2MTRcbiAgICovXG4gIGRhdGVncmlkRXhwYW5kYWJsZUVuZE9mPzogc3RyaW5nO1xuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgU2hvdWxkIGJlIHJlbW92ZWQgaW4gdjE0XG4gICAqL1xuICBkYXRlZ3JpZEV4cGFuZGFibGVSb3dDb250ZW50Pzogc3RyaW5nO1xuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgU2hvdWxkIGJlIHJlbW92ZWQgaW4gdjE0XG4gICAqL1xuICBkYXRlZ3JpZEV4cGFuZGFibGVSb3dzSGVscGVyVGV4dD86IHN0cmluZztcbiAgZGF0YWdyaWRFeHBhbmRhYmxlQmVnaW5uaW5nT2Y/OiBzdHJpbmc7XG4gIGRhdGFncmlkRXhwYW5kYWJsZUVuZE9mPzogc3RyaW5nO1xuICBkYXRhZ3JpZEV4cGFuZGFibGVSb3dDb250ZW50Pzogc3RyaW5nO1xuICBkYXRhZ3JpZEV4cGFuZGFibGVSb3dzSGVscGVyVGV4dD86IHN0cmluZztcblxuICAvKipcbiAgICogQ29tYm9ib3ggU2VhcmNoaW5nIFRleHRcbiAgICovXG4gIGNvbWJvYm94U2VhcmNoaW5nOiBzdHJpbmc7XG4gIGNvbWJvYm94RGVsZXRlOiBzdHJpbmc7XG4gIGNvbWJvYm94U2VsZWN0aW9uOiBzdHJpbmc7XG4gIGNvbWJvYm94U2VsZWN0ZWQ6IHN0cmluZztcbiAgY29tYm9ib3hOb1Jlc3VsdHM6IHN0cmluZztcbiAgY29tYm9ib3hPcGVuOiBzdHJpbmc7XG59XG4iXX0=
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLXN0cmluZ3MuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci9zcmMvdXRpbHMvaTE4bi9jb21tb24tc3RyaW5ncy5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyMiBWTXdhcmUsIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqIFRoaXMgc29mdHdhcmUgaXMgcmVsZWFzZWQgdW5kZXIgTUlUIGxpY2Vuc2UuXG4gKiBUaGUgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uIGNhbiBiZSBmb3VuZCBpbiBMSUNFTlNFIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHByb2plY3QuXG4gKi9cblxuZXhwb3J0IGludGVyZmFjZSBDbHJDb21tb25TdHJpbmdzIHtcbiAgLyoqXG4gICAqIE9wZW4gYnV0dG9uXG4gICAqL1xuICBvcGVuOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBDbG9zZSBidXR0b25cbiAgICovXG4gIGNsb3NlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTaG93IGJ1dHRvblxuICAgKi9cbiAgc2hvdzogc3RyaW5nO1xuICAvKipcbiAgICogSGlkZSBidXR0b25cbiAgICovXG4gIGhpZGU6IHN0cmluZztcbiAgLyoqXG4gICAqIERlbGV0ZSBidXR0b25cbiAgICovXG4gIGRlbGV0ZT86IHN0cmluZztcbiAgLyoqXG4gICAqIEV4cGFuZGFibGUgY29tcG9uZW50czogZXhwYW5kIGNhcmV0XG4gICAqL1xuICBleHBhbmQ6IHN0cmluZztcbiAgLyoqXG4gICAqIEV4cGFuZGFibGUgY29tcG9uZW50czogY29sbGFwc2UgY2FyZXRcbiAgICovXG4gIGNvbGxhcHNlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBPdmVyZmxvdyBtZW51czogZWxsaXBzaXMgYnV0dG9uXG4gICAqL1xuICBtb3JlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTZWxlY3RhYmxlIGNvbXBvbmVudHM6IGNoZWNrYm94IG9yIHJhZGlvXG4gICAqL1xuICBzZWxlY3Q6IHN0cmluZztcbiAgLyoqXG4gICAqIFNlbGVjdGFibGUgY29tcG9uZW50czogY2hlY2tib3ggdG8gc2VsZWN0IGFsbFxuICAgKi9cbiAgc2VsZWN0QWxsOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTZWxlY3RlZCBpdGVtKHMpOiBjb21ib2JveFxuICAgKi9cbiAgc2VsZWN0aW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogUGFnaW5hdGlvbjogcHJldmlvdXMgYnV0dG9uXG4gICAqL1xuICBwcmV2aW91czogc3RyaW5nO1xuICAvKipcbiAgICogUGFnaW5hdGlvbjogbmV4dCBidXR0b25cbiAgICovXG4gIG5leHQ6IHN0cmluZztcbiAgLyoqXG4gICAqIFBhZ2luYXRpb246IGdvIHRvIGN1cnJlbnRcbiAgICovXG4gIGN1cnJlbnQ6IHN0cmluZztcbiAgLyoqXG4gICAqIEFsZXJ0IGxldmVsczogaW5mb1xuICAgKi9cbiAgaW5mbzogc3RyaW5nO1xuICAvKipcbiAgICogQWxlcnQgbGV2ZWxzOiBzdWNjZXNzXG4gICAqL1xuICBzdWNjZXNzOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBbGVydCBsZXZlbHM6IHdhcm5pbmdcbiAgICovXG4gIHdhcm5pbmc6IHN0cmluZztcbiAgLyoqXG4gICAqIEFsZXJ0IGxldmVsczogZGFuZ2VyXG4gICAqL1xuICBkYW5nZXI6IHN0cmluZztcbiAgLyoqXG4gICAqIERhdGFncmlkOiByb3cgYWN0aW9uc1xuICAgKi9cbiAgcm93QWN0aW9uczogc3RyaW5nO1xuICAvKipcbiAgICogRGF0YWdyaWQ6IHBpY2sgY29sdW1uc1xuICAgKi9cbiAgcGlja0NvbHVtbnM6IHN0cmluZztcbiAgLyoqXG4gICAqIERhdGFncmlkOiBzaG93IGNvbHVtbnNcbiAgICovXG4gIHNob3dDb2x1bW5zOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBEYXRhZ3JpZDogc29ydCBvZiBjb2x1bW5zXG4gICAqL1xuICBzb3J0Q29sdW1uOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBEYXRhZ3JpZDogZmlyc3QgcGFnZVxuICAgKi9cbiAgZmlyc3RQYWdlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBEYXRhZ3JpZDogbGFzdCBwYWdlXG4gICAqL1xuICBsYXN0UGFnZTogc3RyaW5nO1xuICAvKipcbiAgICogRGF0YWdyaWQ6IG5leHQgcGFnZVxuICAgKi9cbiAgbmV4dFBhZ2U6IHN0cmluZztcbiAgLyoqXG4gICAqIERhdGFncmlkOiBwcmV2aW91cyBwYWdlXG4gICAqL1xuICBwcmV2aW91c1BhZ2U6IHN0cmluZztcbiAgLyoqXG4gICAqIERhdGFncmlkOiBwcmV2aW91cyBwYWdlXG4gICAqL1xuICBjdXJyZW50UGFnZTogc3RyaW5nO1xuICAvKipcbiAgICogRGF0YWdpcmQ6IHRvdGFsIHBhZ2VzXG4gICAqL1xuICB0b3RhbFBhZ2VzOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBEYXRhZ3JpZCBzdHJpbmcgZmlsdGVyOiBmaWx0ZXIgaXRlbXNcbiAgICovXG4gIGZpbHRlckl0ZW1zOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBEYXRhZ3JpZCBudW1lcmljIGZpbHRlcjogbWluXG4gICAqL1xuICBtaW5WYWx1ZTogc3RyaW5nO1xuICAvKipcbiAgICogRGF0YWdyaWQgbnVtZXJpYyBmaWx0ZXI6IG1heFxuICAgKi9cbiAgbWF4VmFsdWU6IHN0cmluZztcbiAgLyoqXG4gICAqIERhdGFncmlkIGZpbHRlciB0b2dnbGUgYnV0dG9uXG4gICAqL1xuICBkYXRhZ3JpZEZpbHRlckFyaWFMYWJlbD86IHN0cmluZztcbiAgLyoqXG4gICAqIERhdGFncmlkIGZpbHRlciBkaWFsb2dcbiAgICovXG4gIGRhdGFncmlkRmlsdGVyRGlhbG9nQXJpYUxhYmVsPzogc3RyaW5nO1xuICAvKipcbiAgICogRGF0YWdyaWQgY29sdW1uIGhhbmRsZXIgc3RyaW5nXG4gICAqL1xuICBjb2x1bW5TZXBhcmF0b3JBcmlhTGFiZWw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBEYXRhZ3JpZCBjb2x1bW4gcmVzaXplIGhhbmRsZXIgc3RyaW5nXG4gICAqL1xuICBjb2x1bW5TZXBhcmF0b3JEZXNjcmlwdGlvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIE1vZGFsIHN0YXJ0IG9mIGNvbnRlbnRcbiAgICovXG4gIG1vZGFsQ29udGVudFN0YXJ0OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBNb2RhbCBlbmQgb2YgY29udGVudFxuICAgKi9cbiAgbW9kYWxDb250ZW50RW5kOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIERhdGFncmlkIFNob3cgY29sdW1ucyBtZW51IGRlc2NyaXB0aW9uXG4gICAqL1xuICBzaG93Q29sdW1uc01lbnVEZXNjcmlwdGlvbjogc3RyaW5nO1xuICAvKipcbiAgICogRGF0YWdyaWQgU2hvdyBjb2x1bW5zIC8gQWxsIGNvbHVtbnMgc2VsZWN0ZWQgY29uZmlybWF0aW9uXG4gICAqL1xuICBhbGxDb2x1bW5zU2VsZWN0ZWQ6IHN0cmluZztcbiAgLyoqXG4gICAqIFNpZ25wb3N0IFRvZ2dsZSBCdXR0b25cbiAgICovXG4gIHNpZ25wb3N0VG9nZ2xlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTaWducG9zdCBDbG9zZSBCdXR0b25cbiAgICogKHVzZWQgaW5zaWRlIHNpZ25wb3N0IGNvbnRlbnQgY29tcG9uZW50cylcbiAgICovXG4gIHNpZ25wb3N0Q2xvc2U6IHN0cmluZztcbiAgLypcbiAgICogTG9hZGVycy9TcGlubmVyc1xuICAgKi9cbiAgbG9hZGluZzogc3RyaW5nO1xuICAvKipcbiAgICogRGF0YWdyaWQ6IGRldGFpbCBwYW5lIHN0YXJ0IGNvbnRlbnQgZm9yIHNjcmVlbiByZWFkZXJcbiAgICovXG4gIGRldGFpbFBhbmVTdGFydDogc3RyaW5nO1xuICAvKipcbiAgICogRGF0YWdyaWQ6IGRldGFpbCBwYW5lIGVuZCBjb250ZW50IGZvciBzY3JlZW4gcmVhZGVyXG4gICAqL1xuICBkZXRhaWxQYW5lRW5kOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBEYXRhZ3JpZDogU2luZ2xlIHNlbGVjdGlvbiBoZWFkZXJcbiAgICovXG4gIHNpbmdsZVNlbGVjdGlvbkFyaWFMYWJlbDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEYXRhZ3JpZDogU2luZ2xlIGFjdGlvbmFibGUgaGVhZGVyXG4gICAqL1xuICBzaW5nbGVBY3Rpb25hYmxlQXJpYUxhYmVsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIERhdGFncmlkOiBFeHBhbmRhYmxlIHJvd1xuICAgKi9cbiAgZGV0YWlsRXhwYW5kYWJsZUFyaWFMYWJlbDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBbGVydDogQ2xvc2UgYWxlcnQgYnV0dG9uXG4gICAqL1xuICBhbGVydENsb3NlQnV0dG9uQXJpYUxhYmVsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIERhdGVwaWNrZXIgVUkgbGFiZWxzXG4gICAqL1xuICBkYXRlcGlja2VyRGlhbG9nTGFiZWw6IHN0cmluZztcbiAgZGF0ZXBpY2tlclRvZ2dsZTogc3RyaW5nO1xuICBkYXRlcGlja2VyVG9nZ2xlQ2hvb3NlRGF0ZUxhYmVsOiBzdHJpbmc7XG4gIGRhdGVwaWNrZXJUb2dnbGVDaGFuZ2VEYXRlTGFiZWw6IHN0cmluZztcbiAgZGF0ZXBpY2tlclByZXZpb3VzTW9udGg6IHN0cmluZztcbiAgZGF0ZXBpY2tlckN1cnJlbnRNb250aDogc3RyaW5nO1xuICBkYXRlcGlja2VyTmV4dE1vbnRoOiBzdHJpbmc7XG4gIGRhdGVwaWNrZXJQcmV2aW91c0RlY2FkZTogc3RyaW5nO1xuICBkYXRlcGlja2VyTmV4dERlY2FkZTogc3RyaW5nO1xuICBkYXRlcGlja2VyQ3VycmVudERlY2FkZTogc3RyaW5nO1xuICBkYXRlcGlja2VyU2VsZWN0TW9udGhUZXh0OiBzdHJpbmc7XG4gIGRhdGVwaWNrZXJTZWxlY3RZZWFyVGV4dDogc3RyaW5nO1xuICAvKipcbiAgICogTmF2aWdhdGlvblxuICAgKi9cbiAgcmVzcG9uc2l2ZU5hdlRvZ2dsZU9wZW46IHN0cmluZztcbiAgcmVzcG9uc2l2ZU5hdlRvZ2dsZUNsb3NlOiBzdHJpbmc7XG4gIHJlc3BvbnNpdmVOYXZPdmVyZmxvd09wZW46IHN0cmluZztcbiAgcmVzcG9uc2l2ZU5hdk92ZXJmbG93Q2xvc2U6IHN0cmluZztcbiAgLyoqXG4gICAqIFN0YWNrIFZpZXc6IFJlY29yZCBoYXMgY2hhbmdlZFxuICAgKi9cbiAgc3RhY2tWaWV3Q2hhbmdlZDogc3RyaW5nO1xuICAvLyBWZXJ0aWNhbCBOYXZcbiAgdmVydGljYWxOYXZUb2dnbGU6IHN0cmluZztcbiAgdmVydGljYWxOYXZHcm91cFRvZ2dsZTogc3RyaW5nO1xuICAvKipcbiAgICogVGltZWxpbmUgU3RlcHNcbiAgICovXG4gIHRpbWVsaW5lU3RlcE5vdFN0YXJ0ZWQ6IHN0cmluZztcbiAgdGltZWxpbmVTdGVwQ3VycmVudDogc3RyaW5nO1xuICB0aW1lbGluZVN0ZXBTdWNjZXNzOiBzdHJpbmc7XG4gIHRpbWVsaW5lU3RlcEVycm9yOiBzdHJpbmc7XG4gIHRpbWVsaW5lU3RlcFByb2Nlc3Npbmc6IHN0cmluZztcblxuICAvLyBEYXRhZ3JpZCBIZWxwZXIgdGV4dCBmb3IgZXhwYW5kYWJsZSByb3dzXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCBTaG91bGQgYmUgcmVtb3ZlZCBpbiB2MTRcbiAgICovXG4gIGRhdGVncmlkRXhwYW5kYWJsZUJlZ2lubmluZ09mPzogc3RyaW5nO1xuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgU2hvdWxkIGJlIHJlbW92ZWQgaW4gdjE0XG4gICAqL1xuICBkYXRlZ3JpZEV4cGFuZGFibGVFbmRPZj86IHN0cmluZztcbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIFNob3VsZCBiZSByZW1vdmVkIGluIHYxNFxuICAgKi9cbiAgZGF0ZWdyaWRFeHBhbmRhYmxlUm93Q29udGVudD86IHN0cmluZztcbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIFNob3VsZCBiZSByZW1vdmVkIGluIHYxNFxuICAgKi9cbiAgZGF0ZWdyaWRFeHBhbmRhYmxlUm93c0hlbHBlclRleHQ/OiBzdHJpbmc7XG4gIGRhdGFncmlkRXhwYW5kYWJsZUJlZ2lubmluZ09mPzogc3RyaW5nO1xuICBkYXRhZ3JpZEV4cGFuZGFibGVFbmRPZj86IHN0cmluZztcbiAgZGF0YWdyaWRFeHBhbmRhYmxlUm93Q29udGVudD86IHN0cmluZztcbiAgZGF0YWdyaWRFeHBhbmRhYmxlUm93c0hlbHBlclRleHQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENvbWJvYm94IFNlYXJjaGluZyBUZXh0XG4gICAqL1xuICBjb21ib2JveFNlYXJjaGluZzogc3RyaW5nO1xuICBjb21ib2JveERlbGV0ZTogc3RyaW5nO1xuICBjb21ib2JveFNlbGVjdGlvbjogc3RyaW5nO1xuICBjb21ib2JveFNlbGVjdGVkOiBzdHJpbmc7XG4gIGNvbWJvYm94Tm9SZXN1bHRzOiBzdHJpbmc7XG4gIGNvbWJvYm94T3Blbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaXphcmQ6IFNjcmVlbi1yZWFkZXIgdGV4dCBmb3IgY29tcGxldGVkIHN0ZXAuXG4gICAqL1xuICB3aXphcmRTdGVwU3VjY2Vzczogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaXphcmQ6IFNjcmVlbi1yZWFkZXIgdGV4dCBmb3Igc3RlcCB3aXRoIGVycm9yLlxuICAgKi9cbiAgd2l6YXJkU3RlcEVycm9yOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFBhc3N3b3JkIElucHV0XG4gICAqIFNjcmVlbi1yZWFkZXIgdGV4dCBmb3IgdGhlIGhpZGUvc2hvdyBwYXNzd29yZCBmaWVsZCBidXR0b24uXG4gICAqL1xuICBwYXNzd29yZEhpZGU6IHN0cmluZztcbiAgcGFzc3dvcmRTaG93OiBzdHJpbmc7XG59XG4iXX0=