@tet/tet-components-angular 1.4.6-testing → 1.4.7-staging
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/tet-tet-components-angular.mjs +733 -381
- package/fesm2022/tet-tet-components-angular.mjs.map +1 -1
- package/index.d.ts +1142 -5
- package/package.json +4 -6
- package/esm2022/lib/stencil-generated/angular-component-lib/utils.mjs +0 -59
- package/esm2022/lib/stencil-generated/components.mjs +0 -1855
- package/esm2022/lib/stencil-generated/index.mjs +0 -78
- package/esm2022/lib/tet-components-angular.module.mjs +0 -30
- package/esm2022/public-api.mjs +0 -5
- package/esm2022/tet-tet-components-angular.mjs +0 -5
- package/lib/stencil-generated/angular-component-lib/utils.d.ts +0 -9
- package/lib/stencil-generated/components.d.ts +0 -1040
- package/lib/stencil-generated/index.d.ts +0 -2
- package/lib/tet-components-angular.module.d.ts +0 -9
- package/public-api.d.ts +0 -4
|
@@ -1,1855 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
/* tslint:disable */
|
|
3
|
-
/* auto-generated angular directive proxies */
|
|
4
|
-
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
5
|
-
import { ProxyCmp, proxyOutputs } from './angular-component-lib/utils';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
export let TetAccordion = class TetAccordion {
|
|
8
|
-
constructor(c, r, z) {
|
|
9
|
-
this.z = z;
|
|
10
|
-
c.detach();
|
|
11
|
-
this.el = r.nativeElement;
|
|
12
|
-
proxyOutputs(this, this.el, ['openChanged']);
|
|
13
|
-
}
|
|
14
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetAccordion, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
15
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetAccordion, selector: "tet-accordion", inputs: { breakpoint: "breakpoint", header: "header", headerImageAlt: "headerImageAlt", headerImageSrc: "headerImageSrc", headingTag: "headingTag", indicatorDirection: "indicatorDirection", isOpen: "isOpen", theme: "theme", transparentBackground: "transparentBackground", withAutoScroll: "withAutoScroll", withBorder: "withBorder" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
16
|
-
};
|
|
17
|
-
TetAccordion = __decorate([
|
|
18
|
-
ProxyCmp({
|
|
19
|
-
inputs: ['breakpoint', 'header', 'headerImageAlt', 'headerImageSrc', 'headingTag', 'indicatorDirection', 'isOpen', 'theme', 'transparentBackground', 'withAutoScroll', 'withBorder'],
|
|
20
|
-
methods: ['open', 'close', 'toggle', 'getState', 'setState']
|
|
21
|
-
})
|
|
22
|
-
], TetAccordion);
|
|
23
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetAccordion, decorators: [{
|
|
24
|
-
type: Component,
|
|
25
|
-
args: [{
|
|
26
|
-
selector: 'tet-accordion',
|
|
27
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
28
|
-
template: '<ng-content></ng-content>',
|
|
29
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
30
|
-
inputs: ['breakpoint', 'header', 'headerImageAlt', 'headerImageSrc', 'headingTag', 'indicatorDirection', 'isOpen', 'theme', 'transparentBackground', 'withAutoScroll', 'withBorder'],
|
|
31
|
-
}]
|
|
32
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
33
|
-
export let TetAddressOffersFiltersProducts = class TetAddressOffersFiltersProducts {
|
|
34
|
-
constructor(c, r, z) {
|
|
35
|
-
this.z = z;
|
|
36
|
-
c.detach();
|
|
37
|
-
this.el = r.nativeElement;
|
|
38
|
-
proxyOutputs(this, this.el, ['activeFiltersChanged', 'filteredProductsChanged']);
|
|
39
|
-
}
|
|
40
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetAddressOffersFiltersProducts, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
41
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetAddressOffersFiltersProducts, selector: "tet-address-offers-filters-products", inputs: { catalog: "catalog", category: "category", clearFilterButton: "clearFilterButton", language: "language", productCodes: "productCodes", subcategoryId: "subcategoryId", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
42
|
-
};
|
|
43
|
-
TetAddressOffersFiltersProducts = __decorate([
|
|
44
|
-
ProxyCmp({
|
|
45
|
-
inputs: ['catalog', 'category', 'clearFilterButton', 'language', 'productCodes', 'subcategoryId', 'theme']
|
|
46
|
-
})
|
|
47
|
-
], TetAddressOffersFiltersProducts);
|
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetAddressOffersFiltersProducts, decorators: [{
|
|
49
|
-
type: Component,
|
|
50
|
-
args: [{
|
|
51
|
-
selector: 'tet-address-offers-filters-products',
|
|
52
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
53
|
-
template: '<ng-content></ng-content>',
|
|
54
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
55
|
-
inputs: ['catalog', 'category', 'clearFilterButton', 'language', 'productCodes', 'subcategoryId', 'theme'],
|
|
56
|
-
}]
|
|
57
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
58
|
-
export let TetAddressSearch = class TetAddressSearch {
|
|
59
|
-
constructor(c, r, z) {
|
|
60
|
-
this.z = z;
|
|
61
|
-
c.detach();
|
|
62
|
-
this.el = r.nativeElement;
|
|
63
|
-
proxyOutputs(this, this.el, ['addressSelected', 'clearInputField', 'manualAddressInput', 'searchSubmitted']);
|
|
64
|
-
}
|
|
65
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetAddressSearch, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
66
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetAddressSearch, selector: "tet-address-search", inputs: { accessibilityLabel: "accessibilityLabel", addressKey: "addressKey", closeButtonText: "closeButtonText", inputDisabled: "inputDisabled", isInputInvalid: "isInputInvalid", label: "label", language: "language", manualAddressTriggers: "manualAddressTriggers", minSearchKeywordLength: "minSearchKeywordLength", newFormsStyle: "newFormsStyle", newStyle: "newStyle", placeholder: "placeholder", redesignedStyle: "redesignedStyle", searchButtonText: "searchButtonText", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
67
|
-
};
|
|
68
|
-
TetAddressSearch = __decorate([
|
|
69
|
-
ProxyCmp({
|
|
70
|
-
inputs: ['accessibilityLabel', 'addressKey', 'closeButtonText', 'inputDisabled', 'isInputInvalid', 'label', 'language', 'manualAddressTriggers', 'minSearchKeywordLength', 'newFormsStyle', 'newStyle', 'placeholder', 'redesignedStyle', 'searchButtonText', 'theme'],
|
|
71
|
-
methods: ['resetInputState']
|
|
72
|
-
})
|
|
73
|
-
], TetAddressSearch);
|
|
74
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetAddressSearch, decorators: [{
|
|
75
|
-
type: Component,
|
|
76
|
-
args: [{
|
|
77
|
-
selector: 'tet-address-search',
|
|
78
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
79
|
-
template: '<ng-content></ng-content>',
|
|
80
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
81
|
-
inputs: ['accessibilityLabel', 'addressKey', 'closeButtonText', 'inputDisabled', 'isInputInvalid', 'label', 'language', 'manualAddressTriggers', 'minSearchKeywordLength', 'newFormsStyle', 'newStyle', 'placeholder', 'redesignedStyle', 'searchButtonText', 'theme'],
|
|
82
|
-
}]
|
|
83
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
84
|
-
export let TetAssetAddresses = class TetAssetAddresses {
|
|
85
|
-
constructor(c, r, z) {
|
|
86
|
-
this.z = z;
|
|
87
|
-
c.detach();
|
|
88
|
-
this.el = r.nativeElement;
|
|
89
|
-
proxyOutputs(this, this.el, ['assetAddressSelected', 'addressesUpdated', 'customerNotFound']);
|
|
90
|
-
}
|
|
91
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetAssetAddresses, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
92
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetAssetAddresses, selector: "tet-asset-addresses", inputs: { accessToken: "accessToken", addressSearchLabel: "addressSearchLabel", addressSearchPlaceholder: "addressSearchPlaceholder", pid: "pid", salesforceAccountId: "salesforceAccountId", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
93
|
-
};
|
|
94
|
-
TetAssetAddresses = __decorate([
|
|
95
|
-
ProxyCmp({
|
|
96
|
-
inputs: ['accessToken', 'addressSearchLabel', 'addressSearchPlaceholder', 'pid', 'salesforceAccountId', 'theme']
|
|
97
|
-
})
|
|
98
|
-
], TetAssetAddresses);
|
|
99
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetAssetAddresses, decorators: [{
|
|
100
|
-
type: Component,
|
|
101
|
-
args: [{
|
|
102
|
-
selector: 'tet-asset-addresses',
|
|
103
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
104
|
-
template: '<ng-content></ng-content>',
|
|
105
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
106
|
-
inputs: ['accessToken', 'addressSearchLabel', 'addressSearchPlaceholder', 'pid', 'salesforceAccountId', 'theme'],
|
|
107
|
-
}]
|
|
108
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
109
|
-
export let TetAssetAvailabilityAddresses = class TetAssetAvailabilityAddresses {
|
|
110
|
-
constructor(c, r, z) {
|
|
111
|
-
this.z = z;
|
|
112
|
-
c.detach();
|
|
113
|
-
this.el = r.nativeElement;
|
|
114
|
-
proxyOutputs(this, this.el, ['assetAddressSelected', 'addressesUpdated', 'customerNotFound']);
|
|
115
|
-
}
|
|
116
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetAssetAvailabilityAddresses, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
117
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetAssetAvailabilityAddresses, selector: "tet-asset-availability-addresses", inputs: { accessToken: "accessToken", addressSearchLabel: "addressSearchLabel", addressSearchPlaceholder: "addressSearchPlaceholder", pid: "pid", salesforceAccountId: "salesforceAccountId", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
118
|
-
};
|
|
119
|
-
TetAssetAvailabilityAddresses = __decorate([
|
|
120
|
-
ProxyCmp({
|
|
121
|
-
inputs: ['accessToken', 'addressSearchLabel', 'addressSearchPlaceholder', 'pid', 'salesforceAccountId', 'theme'],
|
|
122
|
-
methods: ['unselectAssetAddresses']
|
|
123
|
-
})
|
|
124
|
-
], TetAssetAvailabilityAddresses);
|
|
125
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetAssetAvailabilityAddresses, decorators: [{
|
|
126
|
-
type: Component,
|
|
127
|
-
args: [{
|
|
128
|
-
selector: 'tet-asset-availability-addresses',
|
|
129
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
130
|
-
template: '<ng-content></ng-content>',
|
|
131
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
132
|
-
inputs: ['accessToken', 'addressSearchLabel', 'addressSearchPlaceholder', 'pid', 'salesforceAccountId', 'theme'],
|
|
133
|
-
}]
|
|
134
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
135
|
-
export let TetAutocomplete = class TetAutocomplete {
|
|
136
|
-
constructor(c, r, z) {
|
|
137
|
-
this.z = z;
|
|
138
|
-
c.detach();
|
|
139
|
-
this.el = r.nativeElement;
|
|
140
|
-
proxyOutputs(this, this.el, ['optionSelected', 'activeComponentStateChanged']);
|
|
141
|
-
}
|
|
142
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetAutocomplete, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
143
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetAutocomplete, selector: "tet-autocomplete", inputs: { clearCallback: "clearCallback", darkTheme: "darkTheme", defaultOptions: "defaultOptions", finishedLoading: "finishedLoading", highlightOptionsKeyword: "highlightOptionsKeyword", newStyle: "newStyle", noOptionsMessage: "noOptionsMessage", noOptionsRenderFunction: "noOptionsRenderFunction", optionsFilterAction: "optionsFilterAction", optionsIcon: "optionsIcon", redesignedStyle: "redesignedStyle", showOptionsOnEscapeClear: "showOptionsOnEscapeClear" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
144
|
-
};
|
|
145
|
-
TetAutocomplete = __decorate([
|
|
146
|
-
ProxyCmp({
|
|
147
|
-
inputs: ['clearCallback', 'darkTheme', 'defaultOptions', 'finishedLoading', 'highlightOptionsKeyword', 'newStyle', 'noOptionsMessage', 'noOptionsRenderFunction', 'optionsFilterAction', 'optionsIcon', 'redesignedStyle', 'showOptionsOnEscapeClear'],
|
|
148
|
-
methods: ['clear', 'focusOnNativeInput', 'selectOption']
|
|
149
|
-
})
|
|
150
|
-
], TetAutocomplete);
|
|
151
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetAutocomplete, decorators: [{
|
|
152
|
-
type: Component,
|
|
153
|
-
args: [{
|
|
154
|
-
selector: 'tet-autocomplete',
|
|
155
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
156
|
-
template: '<ng-content></ng-content>',
|
|
157
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
158
|
-
inputs: ['clearCallback', 'darkTheme', 'defaultOptions', 'finishedLoading', 'highlightOptionsKeyword', 'newStyle', 'noOptionsMessage', 'noOptionsRenderFunction', 'optionsFilterAction', 'optionsIcon', 'redesignedStyle', 'showOptionsOnEscapeClear'],
|
|
159
|
-
}]
|
|
160
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
161
|
-
export let TetAutocompleteDropdown = class TetAutocompleteDropdown {
|
|
162
|
-
constructor(c, r, z) {
|
|
163
|
-
this.z = z;
|
|
164
|
-
c.detach();
|
|
165
|
-
this.el = r.nativeElement;
|
|
166
|
-
proxyOutputs(this, this.el, ['optionSelected', 'inputValueCleared', 'inputValueChanged']);
|
|
167
|
-
}
|
|
168
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetAutocompleteDropdown, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
169
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetAutocompleteDropdown, selector: "tet-autocomplete-dropdown", inputs: { defaultOption: "defaultOption", errorMessage: "errorMessage", hasError: "hasError", label: "label", noOptionsMessage: "noOptionsMessage", options: "options", placeholder: "placeholder", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
170
|
-
};
|
|
171
|
-
TetAutocompleteDropdown = __decorate([
|
|
172
|
-
ProxyCmp({
|
|
173
|
-
inputs: ['defaultOption', 'errorMessage', 'hasError', 'label', 'noOptionsMessage', 'options', 'placeholder', 'theme'],
|
|
174
|
-
methods: ['clearInput', 'focusOnNativeInput']
|
|
175
|
-
})
|
|
176
|
-
], TetAutocompleteDropdown);
|
|
177
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetAutocompleteDropdown, decorators: [{
|
|
178
|
-
type: Component,
|
|
179
|
-
args: [{
|
|
180
|
-
selector: 'tet-autocomplete-dropdown',
|
|
181
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
182
|
-
template: '<ng-content></ng-content>',
|
|
183
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
184
|
-
inputs: ['defaultOption', 'errorMessage', 'hasError', 'label', 'noOptionsMessage', 'options', 'placeholder', 'theme'],
|
|
185
|
-
}]
|
|
186
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
187
|
-
export let TetAvailabilityContactForm = class TetAvailabilityContactForm {
|
|
188
|
-
constructor(c, r, z) {
|
|
189
|
-
this.z = z;
|
|
190
|
-
c.detach();
|
|
191
|
-
this.el = r.nativeElement;
|
|
192
|
-
proxyOutputs(this, this.el, ['taskCreationSuccess', 'taskCreationFailed']);
|
|
193
|
-
}
|
|
194
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetAvailabilityContactForm, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
195
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetAvailabilityContactForm, selector: "tet-availability-contact-form", inputs: { darkTheme: "darkTheme", language: "language", showAvailabilityContactForm: "showAvailabilityContactForm", showInputLabel: "showInputLabel", showTitle: "showTitle", submitButtonProps: "submitButtonProps", subtitle: "subtitle", success: "success", taskOptions: "taskOptions", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
196
|
-
};
|
|
197
|
-
TetAvailabilityContactForm = __decorate([
|
|
198
|
-
ProxyCmp({
|
|
199
|
-
inputs: ['darkTheme', 'language', 'showAvailabilityContactForm', 'showInputLabel', 'showTitle', 'submitButtonProps', 'subtitle', 'success', 'taskOptions', 'theme']
|
|
200
|
-
})
|
|
201
|
-
], TetAvailabilityContactForm);
|
|
202
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetAvailabilityContactForm, decorators: [{
|
|
203
|
-
type: Component,
|
|
204
|
-
args: [{
|
|
205
|
-
selector: 'tet-availability-contact-form',
|
|
206
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
207
|
-
template: '<ng-content></ng-content>',
|
|
208
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
209
|
-
inputs: ['darkTheme', 'language', 'showAvailabilityContactForm', 'showInputLabel', 'showTitle', 'submitButtonProps', 'subtitle', 'success', 'taskOptions', 'theme'],
|
|
210
|
-
}]
|
|
211
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
212
|
-
export let TetB2bCheckOutForm = class TetB2bCheckOutForm {
|
|
213
|
-
constructor(c, r, z) {
|
|
214
|
-
this.z = z;
|
|
215
|
-
c.detach();
|
|
216
|
-
this.el = r.nativeElement;
|
|
217
|
-
proxyOutputs(this, this.el, ['submit-check-out-form']);
|
|
218
|
-
}
|
|
219
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetB2bCheckOutForm, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
220
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetB2bCheckOutForm, selector: "tet-b2b-check-out-form", inputs: { language: "language", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
221
|
-
};
|
|
222
|
-
TetB2bCheckOutForm = __decorate([
|
|
223
|
-
ProxyCmp({
|
|
224
|
-
inputs: ['language', 'theme'],
|
|
225
|
-
methods: ['open', 'close']
|
|
226
|
-
})
|
|
227
|
-
], TetB2bCheckOutForm);
|
|
228
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetB2bCheckOutForm, decorators: [{
|
|
229
|
-
type: Component,
|
|
230
|
-
args: [{
|
|
231
|
-
selector: 'tet-b2b-check-out-form',
|
|
232
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
233
|
-
template: '<ng-content></ng-content>',
|
|
234
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
235
|
-
inputs: ['language', 'theme'],
|
|
236
|
-
}]
|
|
237
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
238
|
-
export let TetB2bCompareCard = class TetB2bCompareCard {
|
|
239
|
-
constructor(c, r, z) {
|
|
240
|
-
this.z = z;
|
|
241
|
-
c.detach();
|
|
242
|
-
this.el = r.nativeElement;
|
|
243
|
-
proxyOutputs(this, this.el, ['countChange', 'selectedChange']);
|
|
244
|
-
}
|
|
245
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetB2bCompareCard, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
246
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetB2bCompareCard, selector: "tet-b2b-compare-card", inputs: { count: "count", isSelected: "isSelected", options: "options", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
247
|
-
};
|
|
248
|
-
TetB2bCompareCard = __decorate([
|
|
249
|
-
ProxyCmp({
|
|
250
|
-
inputs: ['count', 'isSelected', 'options', 'theme']
|
|
251
|
-
})
|
|
252
|
-
], TetB2bCompareCard);
|
|
253
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetB2bCompareCard, decorators: [{
|
|
254
|
-
type: Component,
|
|
255
|
-
args: [{
|
|
256
|
-
selector: 'tet-b2b-compare-card',
|
|
257
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
258
|
-
template: '<ng-content></ng-content>',
|
|
259
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
260
|
-
inputs: ['count', 'isSelected', 'options', 'theme'],
|
|
261
|
-
}]
|
|
262
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
263
|
-
export let TetB2bConfigurator = class TetB2bConfigurator {
|
|
264
|
-
constructor(c, r, z) {
|
|
265
|
-
this.z = z;
|
|
266
|
-
c.detach();
|
|
267
|
-
this.el = r.nativeElement;
|
|
268
|
-
proxyOutputs(this, this.el, ['compareLinkClick', 'b2bConfiguratorSubmit', 'successCloseClick']);
|
|
269
|
-
}
|
|
270
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetB2bConfigurator, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
271
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetB2bConfigurator, selector: "tet-b2b-configurator", inputs: { stickyRefEl: "stickyRefEl", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
272
|
-
};
|
|
273
|
-
TetB2bConfigurator = __decorate([
|
|
274
|
-
ProxyCmp({
|
|
275
|
-
inputs: ['stickyRefEl', 'theme'],
|
|
276
|
-
methods: ['setSubmitFormState']
|
|
277
|
-
})
|
|
278
|
-
], TetB2bConfigurator);
|
|
279
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetB2bConfigurator, decorators: [{
|
|
280
|
-
type: Component,
|
|
281
|
-
args: [{
|
|
282
|
-
selector: 'tet-b2b-configurator',
|
|
283
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
284
|
-
template: '<ng-content></ng-content>',
|
|
285
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
286
|
-
inputs: ['stickyRefEl', 'theme'],
|
|
287
|
-
}]
|
|
288
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
289
|
-
export let TetB2bConfiguratorCart = class TetB2bConfiguratorCart {
|
|
290
|
-
constructor(c, r, z) {
|
|
291
|
-
this.z = z;
|
|
292
|
-
c.detach();
|
|
293
|
-
this.el = r.nativeElement;
|
|
294
|
-
}
|
|
295
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetB2bConfiguratorCart, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
296
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetB2bConfiguratorCart, selector: "tet-b2b-configurator-cart", inputs: { context: "context", data: "data", isCartEmpty: "isCartEmpty", isDesktopResolution: "isDesktopResolution", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
297
|
-
};
|
|
298
|
-
TetB2bConfiguratorCart = __decorate([
|
|
299
|
-
ProxyCmp({
|
|
300
|
-
inputs: ['context', 'data', 'isCartEmpty', 'isDesktopResolution', 'theme'],
|
|
301
|
-
methods: ['changeBlockState']
|
|
302
|
-
})
|
|
303
|
-
], TetB2bConfiguratorCart);
|
|
304
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetB2bConfiguratorCart, decorators: [{
|
|
305
|
-
type: Component,
|
|
306
|
-
args: [{
|
|
307
|
-
selector: 'tet-b2b-configurator-cart',
|
|
308
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
309
|
-
template: '<ng-content></ng-content>',
|
|
310
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
311
|
-
inputs: ['context', 'data', 'isCartEmpty', 'isDesktopResolution', 'theme'],
|
|
312
|
-
}]
|
|
313
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
314
|
-
export let TetBannerNav = class TetBannerNav {
|
|
315
|
-
constructor(c, r, z) {
|
|
316
|
-
this.z = z;
|
|
317
|
-
c.detach();
|
|
318
|
-
this.el = r.nativeElement;
|
|
319
|
-
proxyOutputs(this, this.el, ['slideChange', 'pauseStateChange']);
|
|
320
|
-
}
|
|
321
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetBannerNav, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
322
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetBannerNav, selector: "tet-banner-nav", inputs: { duration: "duration", language: "language", mobileLayout: "mobileLayout", paused: "paused", slides: "slides", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
323
|
-
};
|
|
324
|
-
TetBannerNav = __decorate([
|
|
325
|
-
ProxyCmp({
|
|
326
|
-
inputs: ['duration', 'language', 'mobileLayout', 'paused', 'slides', 'theme'],
|
|
327
|
-
methods: ['pause', 'play', 'goTo', 'next', 'previous', 'getCurrentSlide']
|
|
328
|
-
})
|
|
329
|
-
], TetBannerNav);
|
|
330
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetBannerNav, decorators: [{
|
|
331
|
-
type: Component,
|
|
332
|
-
args: [{
|
|
333
|
-
selector: 'tet-banner-nav',
|
|
334
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
335
|
-
template: '<ng-content></ng-content>',
|
|
336
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
337
|
-
inputs: ['duration', 'language', 'mobileLayout', 'paused', 'slides', 'theme'],
|
|
338
|
-
}]
|
|
339
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
340
|
-
export let TetBarGraph = class TetBarGraph {
|
|
341
|
-
constructor(c, r, z) {
|
|
342
|
-
this.z = z;
|
|
343
|
-
c.detach();
|
|
344
|
-
this.el = r.nativeElement;
|
|
345
|
-
}
|
|
346
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetBarGraph, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
347
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetBarGraph, selector: "tet-bar-graph", inputs: { animationDuration: "animationDuration", data: "data", dataOrder: "dataOrder", labelPosition: "labelPosition", maxValue: "maxValue", minValue: "minValue", parentContainer: "parentContainer", size: "size", theme: "theme", valuePosition: "valuePosition", valueUnit: "valueUnit", withGrid: "withGrid" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
348
|
-
};
|
|
349
|
-
TetBarGraph = __decorate([
|
|
350
|
-
ProxyCmp({
|
|
351
|
-
inputs: ['animationDuration', 'data', 'dataOrder', 'labelPosition', 'maxValue', 'minValue', 'parentContainer', 'size', 'theme', 'valuePosition', 'valueUnit', 'withGrid']
|
|
352
|
-
})
|
|
353
|
-
], TetBarGraph);
|
|
354
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetBarGraph, decorators: [{
|
|
355
|
-
type: Component,
|
|
356
|
-
args: [{
|
|
357
|
-
selector: 'tet-bar-graph',
|
|
358
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
359
|
-
template: '<ng-content></ng-content>',
|
|
360
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
361
|
-
inputs: ['animationDuration', 'data', 'dataOrder', 'labelPosition', 'maxValue', 'minValue', 'parentContainer', 'size', 'theme', 'valuePosition', 'valueUnit', 'withGrid'],
|
|
362
|
-
}]
|
|
363
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
364
|
-
export let TetBusinessLines = class TetBusinessLines {
|
|
365
|
-
constructor(c, r, z) {
|
|
366
|
-
this.z = z;
|
|
367
|
-
c.detach();
|
|
368
|
-
this.el = r.nativeElement;
|
|
369
|
-
proxyOutputs(this, this.el, ['businessLineSelected']);
|
|
370
|
-
}
|
|
371
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetBusinessLines, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
372
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetBusinessLines, selector: "tet-business-lines", inputs: { addressKey: "addressKey", language: "language", showHeadings: "showHeadings" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
373
|
-
};
|
|
374
|
-
TetBusinessLines = __decorate([
|
|
375
|
-
ProxyCmp({
|
|
376
|
-
inputs: ['addressKey', 'language', 'showHeadings']
|
|
377
|
-
})
|
|
378
|
-
], TetBusinessLines);
|
|
379
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetBusinessLines, decorators: [{
|
|
380
|
-
type: Component,
|
|
381
|
-
args: [{
|
|
382
|
-
selector: 'tet-business-lines',
|
|
383
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
384
|
-
template: '<ng-content></ng-content>',
|
|
385
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
386
|
-
inputs: ['addressKey', 'language', 'showHeadings'],
|
|
387
|
-
}]
|
|
388
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
389
|
-
export let TetBusinessNavigation = class TetBusinessNavigation {
|
|
390
|
-
constructor(c, r, z) {
|
|
391
|
-
this.z = z;
|
|
392
|
-
c.detach();
|
|
393
|
-
this.el = r.nativeElement;
|
|
394
|
-
proxyOutputs(this, this.el, ['menu-click-event']);
|
|
395
|
-
}
|
|
396
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetBusinessNavigation, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
397
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetBusinessNavigation, selector: "tet-business-navigation", inputs: { menuItems: "menuItems", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
398
|
-
};
|
|
399
|
-
TetBusinessNavigation = __decorate([
|
|
400
|
-
ProxyCmp({
|
|
401
|
-
inputs: ['menuItems', 'theme'],
|
|
402
|
-
methods: ['selectMenuItem']
|
|
403
|
-
})
|
|
404
|
-
], TetBusinessNavigation);
|
|
405
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetBusinessNavigation, decorators: [{
|
|
406
|
-
type: Component,
|
|
407
|
-
args: [{
|
|
408
|
-
selector: 'tet-business-navigation',
|
|
409
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
410
|
-
template: '<ng-content></ng-content>',
|
|
411
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
412
|
-
inputs: ['menuItems', 'theme'],
|
|
413
|
-
}]
|
|
414
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
415
|
-
export let TetBusinessRoundStepper = class TetBusinessRoundStepper {
|
|
416
|
-
constructor(c, r, z) {
|
|
417
|
-
this.z = z;
|
|
418
|
-
c.detach();
|
|
419
|
-
this.el = r.nativeElement;
|
|
420
|
-
}
|
|
421
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetBusinessRoundStepper, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
422
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetBusinessRoundStepper, selector: "tet-business-round-stepper", inputs: { layout: "layout", stepperData: "stepperData", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
423
|
-
};
|
|
424
|
-
TetBusinessRoundStepper = __decorate([
|
|
425
|
-
ProxyCmp({
|
|
426
|
-
inputs: ['layout', 'stepperData', 'theme']
|
|
427
|
-
})
|
|
428
|
-
], TetBusinessRoundStepper);
|
|
429
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetBusinessRoundStepper, decorators: [{
|
|
430
|
-
type: Component,
|
|
431
|
-
args: [{
|
|
432
|
-
selector: 'tet-business-round-stepper',
|
|
433
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
434
|
-
template: '<ng-content></ng-content>',
|
|
435
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
436
|
-
inputs: ['layout', 'stepperData', 'theme'],
|
|
437
|
-
}]
|
|
438
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
439
|
-
export let TetBusinessSummaryCard = class TetBusinessSummaryCard {
|
|
440
|
-
constructor(c, r, z) {
|
|
441
|
-
this.z = z;
|
|
442
|
-
c.detach();
|
|
443
|
-
this.el = r.nativeElement;
|
|
444
|
-
proxyOutputs(this, this.el, ['editButtonClick', 'deleteButtonClick', 'amountChange']);
|
|
445
|
-
}
|
|
446
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetBusinessSummaryCard, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
447
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetBusinessSummaryCard, selector: "tet-business-summary-card", inputs: { context: "context", contractTerm: "contractTerm", currency: "currency", discountPrice: "discountPrice", language: "language", maxValue: "maxValue", minValue: "minValue", price: "price", productDescription: "productDescription", productName: "productName", stepperLabel: "stepperLabel", theme: "theme", value: "value", withStepper: "withStepper" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
448
|
-
};
|
|
449
|
-
TetBusinessSummaryCard = __decorate([
|
|
450
|
-
ProxyCmp({
|
|
451
|
-
inputs: ['context', 'contractTerm', 'currency', 'discountPrice', 'language', 'maxValue', 'minValue', 'price', 'productDescription', 'productName', 'stepperLabel', 'theme', 'value', 'withStepper']
|
|
452
|
-
})
|
|
453
|
-
], TetBusinessSummaryCard);
|
|
454
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetBusinessSummaryCard, decorators: [{
|
|
455
|
-
type: Component,
|
|
456
|
-
args: [{
|
|
457
|
-
selector: 'tet-business-summary-card',
|
|
458
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
459
|
-
template: '<ng-content></ng-content>',
|
|
460
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
461
|
-
inputs: ['context', 'contractTerm', 'currency', 'discountPrice', 'language', 'maxValue', 'minValue', 'price', 'productDescription', 'productName', 'stepperLabel', 'theme', 'value', 'withStepper'],
|
|
462
|
-
}]
|
|
463
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
464
|
-
export let TetButton = class TetButton {
|
|
465
|
-
constructor(c, r, z) {
|
|
466
|
-
this.z = z;
|
|
467
|
-
c.detach();
|
|
468
|
-
this.el = r.nativeElement;
|
|
469
|
-
}
|
|
470
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetButton, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
471
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetButton, selector: "tet-button", inputs: { accessibilityLabel: "accessibilityLabel", clickCallback: "clickCallback", disabled: "disabled", elementId: "elementId", iconMode: "iconMode", iconName: "iconName", iconPosition: "iconPosition", size: "size", theme: "theme", type: "type", url: "url", urlTarget: "urlTarget" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
472
|
-
};
|
|
473
|
-
TetButton = __decorate([
|
|
474
|
-
ProxyCmp({
|
|
475
|
-
inputs: ['accessibilityLabel', 'clickCallback', 'disabled', 'elementId', 'iconMode', 'iconName', 'iconPosition', 'size', 'theme', 'type', 'url', 'urlTarget']
|
|
476
|
-
})
|
|
477
|
-
], TetButton);
|
|
478
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetButton, decorators: [{
|
|
479
|
-
type: Component,
|
|
480
|
-
args: [{
|
|
481
|
-
selector: 'tet-button',
|
|
482
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
483
|
-
template: '<ng-content></ng-content>',
|
|
484
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
485
|
-
inputs: ['accessibilityLabel', 'clickCallback', 'disabled', 'elementId', 'iconMode', 'iconName', 'iconPosition', 'size', 'theme', 'type', 'url', 'urlTarget'],
|
|
486
|
-
}]
|
|
487
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
488
|
-
export let TetCarousel = class TetCarousel {
|
|
489
|
-
constructor(c, r, z) {
|
|
490
|
-
this.z = z;
|
|
491
|
-
c.detach();
|
|
492
|
-
this.el = r.nativeElement;
|
|
493
|
-
}
|
|
494
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetCarousel, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
495
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetCarousel, selector: "tet-carousel", inputs: { buttonIconLeft: "buttonIconLeft", buttonIconRight: "buttonIconRight", label: "label", language: "language", maxDots: "maxDots", showButtons: "showButtons", showDots: "showDots", showGradient: "showGradient", swipeThreshold: "swipeThreshold", theme: "theme", transitionDuration: "transitionDuration", transitionTiming: "transitionTiming" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
496
|
-
};
|
|
497
|
-
TetCarousel = __decorate([
|
|
498
|
-
ProxyCmp({
|
|
499
|
-
inputs: ['buttonIconLeft', 'buttonIconRight', 'label', 'language', 'maxDots', 'showButtons', 'showDots', 'showGradient', 'swipeThreshold', 'theme', 'transitionDuration', 'transitionTiming']
|
|
500
|
-
})
|
|
501
|
-
], TetCarousel);
|
|
502
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetCarousel, decorators: [{
|
|
503
|
-
type: Component,
|
|
504
|
-
args: [{
|
|
505
|
-
selector: 'tet-carousel',
|
|
506
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
507
|
-
template: '<ng-content></ng-content>',
|
|
508
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
509
|
-
inputs: ['buttonIconLeft', 'buttonIconRight', 'label', 'language', 'maxDots', 'showButtons', 'showDots', 'showGradient', 'swipeThreshold', 'theme', 'transitionDuration', 'transitionTiming'],
|
|
510
|
-
}]
|
|
511
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
512
|
-
export let TetCheckbox = class TetCheckbox {
|
|
513
|
-
constructor(c, r, z) {
|
|
514
|
-
this.z = z;
|
|
515
|
-
c.detach();
|
|
516
|
-
this.el = r.nativeElement;
|
|
517
|
-
proxyOutputs(this, this.el, ['check']);
|
|
518
|
-
}
|
|
519
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetCheckbox, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
520
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetCheckbox, selector: "tet-checkbox", inputs: { checked: "checked", disabled: "disabled", error: "error", indeterminate: "indeterminate", label: "label", name: "name", theme: "theme", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
521
|
-
};
|
|
522
|
-
TetCheckbox = __decorate([
|
|
523
|
-
ProxyCmp({
|
|
524
|
-
inputs: ['checked', 'disabled', 'error', 'indeterminate', 'label', 'name', 'theme', 'value'],
|
|
525
|
-
methods: ['setChecked', 'setIndeterminate', 'setError']
|
|
526
|
-
})
|
|
527
|
-
], TetCheckbox);
|
|
528
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetCheckbox, decorators: [{
|
|
529
|
-
type: Component,
|
|
530
|
-
args: [{
|
|
531
|
-
selector: 'tet-checkbox',
|
|
532
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
533
|
-
template: '<ng-content></ng-content>',
|
|
534
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
535
|
-
inputs: ['checked', 'disabled', 'error', 'indeterminate', 'label', 'name', 'theme', 'value'],
|
|
536
|
-
}]
|
|
537
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
538
|
-
export let TetCloudApplicationFormDialog = class TetCloudApplicationFormDialog {
|
|
539
|
-
constructor(c, r, z) {
|
|
540
|
-
this.z = z;
|
|
541
|
-
c.detach();
|
|
542
|
-
this.el = r.nativeElement;
|
|
543
|
-
proxyOutputs(this, this.el, ['submitted', 'closeDialog', 'openDialog']);
|
|
544
|
-
}
|
|
545
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetCloudApplicationFormDialog, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
546
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetCloudApplicationFormDialog, selector: "tet-cloud-application-form-dialog", inputs: { language: "language", loading: "loading", privacyPolicyLinkUrl: "privacyPolicyLinkUrl", showOverlay: "showOverlay", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
547
|
-
};
|
|
548
|
-
TetCloudApplicationFormDialog = __decorate([
|
|
549
|
-
ProxyCmp({
|
|
550
|
-
inputs: ['language', 'loading', 'privacyPolicyLinkUrl', 'showOverlay', 'theme'],
|
|
551
|
-
methods: ['open', 'close']
|
|
552
|
-
})
|
|
553
|
-
], TetCloudApplicationFormDialog);
|
|
554
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetCloudApplicationFormDialog, decorators: [{
|
|
555
|
-
type: Component,
|
|
556
|
-
args: [{
|
|
557
|
-
selector: 'tet-cloud-application-form-dialog',
|
|
558
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
559
|
-
template: '<ng-content></ng-content>',
|
|
560
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
561
|
-
inputs: ['language', 'loading', 'privacyPolicyLinkUrl', 'showOverlay', 'theme'],
|
|
562
|
-
}]
|
|
563
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
564
|
-
export let TetCloudConfigurator = class TetCloudConfigurator {
|
|
565
|
-
constructor(c, r, z) {
|
|
566
|
-
this.z = z;
|
|
567
|
-
c.detach();
|
|
568
|
-
this.el = r.nativeElement;
|
|
569
|
-
proxyOutputs(this, this.el, ['cloudCalculatorSubmit']);
|
|
570
|
-
}
|
|
571
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetCloudConfigurator, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
572
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetCloudConfigurator, selector: "tet-cloud-configurator", inputs: { containerSelector: "containerSelector", language: "language", selectOnFocus: "selectOnFocus", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
573
|
-
};
|
|
574
|
-
TetCloudConfigurator = __decorate([
|
|
575
|
-
ProxyCmp({
|
|
576
|
-
inputs: ['containerSelector', 'language', 'selectOnFocus', 'theme']
|
|
577
|
-
})
|
|
578
|
-
], TetCloudConfigurator);
|
|
579
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetCloudConfigurator, decorators: [{
|
|
580
|
-
type: Component,
|
|
581
|
-
args: [{
|
|
582
|
-
selector: 'tet-cloud-configurator',
|
|
583
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
584
|
-
template: '<ng-content></ng-content>',
|
|
585
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
586
|
-
inputs: ['containerSelector', 'language', 'selectOnFocus', 'theme'],
|
|
587
|
-
}]
|
|
588
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
589
|
-
export let TetCompareCardV2 = class TetCompareCardV2 {
|
|
590
|
-
constructor(c, r, z) {
|
|
591
|
-
this.z = z;
|
|
592
|
-
c.detach();
|
|
593
|
-
this.el = r.nativeElement;
|
|
594
|
-
proxyOutputs(this, this.el, ['cardLoaded', 'productChanged']);
|
|
595
|
-
}
|
|
596
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetCompareCardV2, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
597
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetCompareCardV2, selector: "tet-compare-card-v2", inputs: { benefitTitle: "benefitTitle", benefits: "benefits", bestChoice: "bestChoice", bestChoiceText: "bestChoiceText", bestChoiceTextPosition: "bestChoiceTextPosition", bonuses: "bonuses", buttonTitle: "buttonTitle", cardBackgroundColor: "cardBackgroundColor", cardScript: "cardScript", cardType: "cardType", clickCallback: "clickCallback", colorIcons: "colorIcons", contractTerm: "contractTerm", currency: "currency", darkMode: "darkMode", dropdownOptions: "dropdownOptions", language: "language", linkOpenBlank: "linkOpenBlank", options: "options", secondaryLink: "secondaryLink", secondaryLinkOpenBlank: "secondaryLinkOpenBlank", secondaryLinkText: "secondaryLinkText", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
598
|
-
};
|
|
599
|
-
TetCompareCardV2 = __decorate([
|
|
600
|
-
ProxyCmp({
|
|
601
|
-
inputs: ['benefitTitle', 'benefits', 'bestChoice', 'bestChoiceText', 'bestChoiceTextPosition', 'bonuses', 'buttonTitle', 'cardBackgroundColor', 'cardScript', 'cardType', 'clickCallback', 'colorIcons', 'contractTerm', 'currency', 'darkMode', 'dropdownOptions', 'language', 'linkOpenBlank', 'options', 'secondaryLink', 'secondaryLinkOpenBlank', 'secondaryLinkText', 'theme']
|
|
602
|
-
})
|
|
603
|
-
], TetCompareCardV2);
|
|
604
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetCompareCardV2, decorators: [{
|
|
605
|
-
type: Component,
|
|
606
|
-
args: [{
|
|
607
|
-
selector: 'tet-compare-card-v2',
|
|
608
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
609
|
-
template: '<ng-content></ng-content>',
|
|
610
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
611
|
-
inputs: ['benefitTitle', 'benefits', 'bestChoice', 'bestChoiceText', 'bestChoiceTextPosition', 'bonuses', 'buttonTitle', 'cardBackgroundColor', 'cardScript', 'cardType', 'clickCallback', 'colorIcons', 'contractTerm', 'currency', 'darkMode', 'dropdownOptions', 'language', 'linkOpenBlank', 'options', 'secondaryLink', 'secondaryLinkOpenBlank', 'secondaryLinkText', 'theme'],
|
|
612
|
-
}]
|
|
613
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
614
|
-
export let TetContactForm = class TetContactForm {
|
|
615
|
-
constructor(c, r, z) {
|
|
616
|
-
this.z = z;
|
|
617
|
-
c.detach();
|
|
618
|
-
this.el = r.nativeElement;
|
|
619
|
-
proxyOutputs(this, this.el, ['taskCreationSuccess', 'taskCreationFailed']);
|
|
620
|
-
}
|
|
621
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetContactForm, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
622
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetContactForm, selector: "tet-contact-form", inputs: { darkTheme: "darkTheme", language: "language", showInputLabel: "showInputLabel", showTitle: "showTitle", submitButtonProps: "submitButtonProps", subtitle: "subtitle", taskOptions: "taskOptions", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
623
|
-
};
|
|
624
|
-
TetContactForm = __decorate([
|
|
625
|
-
ProxyCmp({
|
|
626
|
-
inputs: ['darkTheme', 'language', 'showInputLabel', 'showTitle', 'submitButtonProps', 'subtitle', 'taskOptions', 'theme']
|
|
627
|
-
})
|
|
628
|
-
], TetContactForm);
|
|
629
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetContactForm, decorators: [{
|
|
630
|
-
type: Component,
|
|
631
|
-
args: [{
|
|
632
|
-
selector: 'tet-contact-form',
|
|
633
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
634
|
-
template: '<ng-content></ng-content>',
|
|
635
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
636
|
-
inputs: ['darkTheme', 'language', 'showInputLabel', 'showTitle', 'submitButtonProps', 'subtitle', 'taskOptions', 'theme'],
|
|
637
|
-
}]
|
|
638
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
639
|
-
export let TetContactInfo = class TetContactInfo {
|
|
640
|
-
constructor(c, r, z) {
|
|
641
|
-
this.z = z;
|
|
642
|
-
c.detach();
|
|
643
|
-
this.el = r.nativeElement;
|
|
644
|
-
}
|
|
645
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetContactInfo, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
646
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetContactInfo, selector: "tet-contact-info", inputs: { contactBlocks: "contactBlocks" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
647
|
-
};
|
|
648
|
-
TetContactInfo = __decorate([
|
|
649
|
-
ProxyCmp({
|
|
650
|
-
inputs: ['contactBlocks']
|
|
651
|
-
})
|
|
652
|
-
], TetContactInfo);
|
|
653
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetContactInfo, decorators: [{
|
|
654
|
-
type: Component,
|
|
655
|
-
args: [{
|
|
656
|
-
selector: 'tet-contact-info',
|
|
657
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
658
|
-
template: '<ng-content></ng-content>',
|
|
659
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
660
|
-
inputs: ['contactBlocks'],
|
|
661
|
-
}]
|
|
662
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
663
|
-
export let TetContainer = class TetContainer {
|
|
664
|
-
constructor(c, r, z) {
|
|
665
|
-
this.z = z;
|
|
666
|
-
c.detach();
|
|
667
|
-
this.el = r.nativeElement;
|
|
668
|
-
}
|
|
669
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetContainer, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
670
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetContainer, selector: "tet-container", inputs: { highlightable: "highlightable", selected: "selected", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
671
|
-
};
|
|
672
|
-
TetContainer = __decorate([
|
|
673
|
-
ProxyCmp({
|
|
674
|
-
inputs: ['highlightable', 'selected', 'theme']
|
|
675
|
-
})
|
|
676
|
-
], TetContainer);
|
|
677
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetContainer, decorators: [{
|
|
678
|
-
type: Component,
|
|
679
|
-
args: [{
|
|
680
|
-
selector: 'tet-container',
|
|
681
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
682
|
-
template: '<ng-content></ng-content>',
|
|
683
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
684
|
-
inputs: ['highlightable', 'selected', 'theme'],
|
|
685
|
-
}]
|
|
686
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
687
|
-
export let TetCustomerAssets = class TetCustomerAssets {
|
|
688
|
-
constructor(c, r, z) {
|
|
689
|
-
this.z = z;
|
|
690
|
-
c.detach();
|
|
691
|
-
this.el = r.nativeElement;
|
|
692
|
-
proxyOutputs(this, this.el, ['assetSelected', 'assetsUpdated', 'customerNotFound']);
|
|
693
|
-
}
|
|
694
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetCustomerAssets, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
695
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetCustomerAssets, selector: "tet-customer-assets", inputs: { accessToken: "accessToken", darkTheme: "darkTheme", groupByAddress: "groupByAddress", hideAssets: "hideAssets", loaderElementsCount: "loaderElementsCount", pid: "pid", salesforceAccountId: "salesforceAccountId", singleLoader: "singleLoader" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
696
|
-
};
|
|
697
|
-
TetCustomerAssets = __decorate([
|
|
698
|
-
ProxyCmp({
|
|
699
|
-
inputs: ['accessToken', 'darkTheme', 'groupByAddress', 'hideAssets', 'loaderElementsCount', 'pid', 'salesforceAccountId', 'singleLoader']
|
|
700
|
-
})
|
|
701
|
-
], TetCustomerAssets);
|
|
702
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetCustomerAssets, decorators: [{
|
|
703
|
-
type: Component,
|
|
704
|
-
args: [{
|
|
705
|
-
selector: 'tet-customer-assets',
|
|
706
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
707
|
-
template: '<ng-content></ng-content>',
|
|
708
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
709
|
-
inputs: ['accessToken', 'darkTheme', 'groupByAddress', 'hideAssets', 'loaderElementsCount', 'pid', 'salesforceAccountId', 'singleLoader'],
|
|
710
|
-
}]
|
|
711
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
712
|
-
export let TetDatepicker = class TetDatepicker {
|
|
713
|
-
constructor(c, r, z) {
|
|
714
|
-
this.z = z;
|
|
715
|
-
c.detach();
|
|
716
|
-
this.el = r.nativeElement;
|
|
717
|
-
proxyOutputs(this, this.el, ['dateChanged', 'rangeDatesChanged']);
|
|
718
|
-
}
|
|
719
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetDatepicker, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
720
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetDatepicker, selector: "tet-datepicker", inputs: { date: "date", datepickerView: "datepickerView", isOpen: "isOpen", locale: "locale", overlayEffect: "overlayEffect", rangePickerMode: "rangePickerMode" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
721
|
-
};
|
|
722
|
-
TetDatepicker = __decorate([
|
|
723
|
-
ProxyCmp({
|
|
724
|
-
inputs: ['date', 'datepickerView', 'isOpen', 'locale', 'overlayEffect', 'rangePickerMode'],
|
|
725
|
-
methods: ['toggleIsOpen']
|
|
726
|
-
})
|
|
727
|
-
], TetDatepicker);
|
|
728
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetDatepicker, decorators: [{
|
|
729
|
-
type: Component,
|
|
730
|
-
args: [{
|
|
731
|
-
selector: 'tet-datepicker',
|
|
732
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
733
|
-
template: '<ng-content></ng-content>',
|
|
734
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
735
|
-
inputs: ['date', 'datepickerView', 'isOpen', 'locale', 'overlayEffect', 'rangePickerMode'],
|
|
736
|
-
}]
|
|
737
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
738
|
-
export let TetDatepickerHeader = class TetDatepickerHeader {
|
|
739
|
-
constructor(c, r, z) {
|
|
740
|
-
this.z = z;
|
|
741
|
-
c.detach();
|
|
742
|
-
this.el = r.nativeElement;
|
|
743
|
-
proxyOutputs(this, this.el, ['internalDateChanged', 'datepickerViewChanged']);
|
|
744
|
-
}
|
|
745
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetDatepickerHeader, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
746
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetDatepickerHeader, selector: "tet-datepicker-header", inputs: { datepickerView: "datepickerView", internalDate: "internalDate", locale: "locale", selectedDate: "selectedDate" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
747
|
-
};
|
|
748
|
-
TetDatepickerHeader = __decorate([
|
|
749
|
-
ProxyCmp({
|
|
750
|
-
inputs: ['datepickerView', 'internalDate', 'locale', 'selectedDate']
|
|
751
|
-
})
|
|
752
|
-
], TetDatepickerHeader);
|
|
753
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetDatepickerHeader, decorators: [{
|
|
754
|
-
type: Component,
|
|
755
|
-
args: [{
|
|
756
|
-
selector: 'tet-datepicker-header',
|
|
757
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
758
|
-
template: '<ng-content></ng-content>',
|
|
759
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
760
|
-
inputs: ['datepickerView', 'internalDate', 'locale', 'selectedDate'],
|
|
761
|
-
}]
|
|
762
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
763
|
-
export let TetDatepickerMonthView = class TetDatepickerMonthView {
|
|
764
|
-
constructor(c, r, z) {
|
|
765
|
-
this.z = z;
|
|
766
|
-
c.detach();
|
|
767
|
-
this.el = r.nativeElement;
|
|
768
|
-
proxyOutputs(this, this.el, ['internalDateChanged', 'dateChanged', 'datepickerClosed', 'rangeDateSet']);
|
|
769
|
-
}
|
|
770
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetDatepickerMonthView, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
771
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetDatepickerMonthView, selector: "tet-datepicker-month-view", inputs: { internalDate: "internalDate", rangeDates: "rangeDates", rangePickerMode: "rangePickerMode", selectedDate: "selectedDate" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
772
|
-
};
|
|
773
|
-
TetDatepickerMonthView = __decorate([
|
|
774
|
-
ProxyCmp({
|
|
775
|
-
inputs: ['internalDate', 'rangeDates', 'rangePickerMode', 'selectedDate']
|
|
776
|
-
})
|
|
777
|
-
], TetDatepickerMonthView);
|
|
778
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetDatepickerMonthView, decorators: [{
|
|
779
|
-
type: Component,
|
|
780
|
-
args: [{
|
|
781
|
-
selector: 'tet-datepicker-month-view',
|
|
782
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
783
|
-
template: '<ng-content></ng-content>',
|
|
784
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
785
|
-
inputs: ['internalDate', 'rangeDates', 'rangePickerMode', 'selectedDate'],
|
|
786
|
-
}]
|
|
787
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
788
|
-
export let TetDatepickerMultiYearView = class TetDatepickerMultiYearView {
|
|
789
|
-
constructor(c, r, z) {
|
|
790
|
-
this.z = z;
|
|
791
|
-
c.detach();
|
|
792
|
-
this.el = r.nativeElement;
|
|
793
|
-
proxyOutputs(this, this.el, ['internalDateChanged', 'datepickerViewChanged']);
|
|
794
|
-
}
|
|
795
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetDatepickerMultiYearView, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
796
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetDatepickerMultiYearView, selector: "tet-datepicker-multi-year-view", inputs: { internalDate: "internalDate", selectedDate: "selectedDate" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
797
|
-
};
|
|
798
|
-
TetDatepickerMultiYearView = __decorate([
|
|
799
|
-
ProxyCmp({
|
|
800
|
-
inputs: ['internalDate', 'selectedDate']
|
|
801
|
-
})
|
|
802
|
-
], TetDatepickerMultiYearView);
|
|
803
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetDatepickerMultiYearView, decorators: [{
|
|
804
|
-
type: Component,
|
|
805
|
-
args: [{
|
|
806
|
-
selector: 'tet-datepicker-multi-year-view',
|
|
807
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
808
|
-
template: '<ng-content></ng-content>',
|
|
809
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
810
|
-
inputs: ['internalDate', 'selectedDate'],
|
|
811
|
-
}]
|
|
812
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
813
|
-
export let TetDatepickerYearView = class TetDatepickerYearView {
|
|
814
|
-
constructor(c, r, z) {
|
|
815
|
-
this.z = z;
|
|
816
|
-
c.detach();
|
|
817
|
-
this.el = r.nativeElement;
|
|
818
|
-
proxyOutputs(this, this.el, ['internalDateChanged', 'datepickerViewChanged']);
|
|
819
|
-
}
|
|
820
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetDatepickerYearView, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
821
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetDatepickerYearView, selector: "tet-datepicker-year-view", inputs: { internalDate: "internalDate", selectedDate: "selectedDate" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
822
|
-
};
|
|
823
|
-
TetDatepickerYearView = __decorate([
|
|
824
|
-
ProxyCmp({
|
|
825
|
-
inputs: ['internalDate', 'selectedDate']
|
|
826
|
-
})
|
|
827
|
-
], TetDatepickerYearView);
|
|
828
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetDatepickerYearView, decorators: [{
|
|
829
|
-
type: Component,
|
|
830
|
-
args: [{
|
|
831
|
-
selector: 'tet-datepicker-year-view',
|
|
832
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
833
|
-
template: '<ng-content></ng-content>',
|
|
834
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
835
|
-
inputs: ['internalDate', 'selectedDate'],
|
|
836
|
-
}]
|
|
837
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
838
|
-
export let TetDialog = class TetDialog {
|
|
839
|
-
constructor(c, r, z) {
|
|
840
|
-
this.z = z;
|
|
841
|
-
c.detach();
|
|
842
|
-
this.el = r.nativeElement;
|
|
843
|
-
proxyOutputs(this, this.el, ['closeDialog', 'openDialog']);
|
|
844
|
-
}
|
|
845
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetDialog, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
846
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetDialog, selector: "tet-dialog", inputs: { closeOnEscape: "closeOnEscape", closeOnOverlayClick: "closeOnOverlayClick", footerDisplay: "footerDisplay", headerTitle: "headerTitle", hideCloseButton: "hideCloseButton", hideHeader: "hideHeader", isOpen: "isOpen", preventDefaultClose: "preventDefaultClose", showHeaderDivider: "showHeaderDivider", theme: "theme", titleId: "titleId" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
847
|
-
};
|
|
848
|
-
TetDialog = __decorate([
|
|
849
|
-
ProxyCmp({
|
|
850
|
-
inputs: ['closeOnEscape', 'closeOnOverlayClick', 'footerDisplay', 'headerTitle', 'hideCloseButton', 'hideHeader', 'isOpen', 'preventDefaultClose', 'showHeaderDivider', 'theme', 'titleId'],
|
|
851
|
-
methods: ['open', 'close']
|
|
852
|
-
})
|
|
853
|
-
], TetDialog);
|
|
854
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetDialog, decorators: [{
|
|
855
|
-
type: Component,
|
|
856
|
-
args: [{
|
|
857
|
-
selector: 'tet-dialog',
|
|
858
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
859
|
-
template: '<ng-content></ng-content>',
|
|
860
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
861
|
-
inputs: ['closeOnEscape', 'closeOnOverlayClick', 'footerDisplay', 'headerTitle', 'hideCloseButton', 'hideHeader', 'isOpen', 'preventDefaultClose', 'showHeaderDivider', 'theme', 'titleId'],
|
|
862
|
-
}]
|
|
863
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
864
|
-
export let TetDropdown = class TetDropdown {
|
|
865
|
-
constructor(c, r, z) {
|
|
866
|
-
this.z = z;
|
|
867
|
-
c.detach();
|
|
868
|
-
this.el = r.nativeElement;
|
|
869
|
-
proxyOutputs(this, this.el, ['optionSelected', 'optionChecked', 'optionsChanged']);
|
|
870
|
-
}
|
|
871
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetDropdown, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
872
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetDropdown, selector: "tet-dropdown", inputs: { allowMultiple: "allowMultiple", buttonLabel: "buttonLabel", closeOnSelection: "closeOnSelection", disabled: "disabled", flexLayout: "flexLayout", label: "label", labelLogo: "labelLogo", labelLogoGrayscale: "labelLogoGrayscale", labelRight: "labelRight", labelRightColor: "labelRightColor", labelSubText: "labelSubText", options: "options", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
873
|
-
};
|
|
874
|
-
TetDropdown = __decorate([
|
|
875
|
-
ProxyCmp({
|
|
876
|
-
inputs: ['allowMultiple', 'buttonLabel', 'closeOnSelection', 'disabled', 'flexLayout', 'label', 'labelLogo', 'labelLogoGrayscale', 'labelRight', 'labelRightColor', 'labelSubText', 'options', 'theme'],
|
|
877
|
-
methods: ['getSelectedOptions', 'selectOption']
|
|
878
|
-
})
|
|
879
|
-
], TetDropdown);
|
|
880
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetDropdown, decorators: [{
|
|
881
|
-
type: Component,
|
|
882
|
-
args: [{
|
|
883
|
-
selector: 'tet-dropdown',
|
|
884
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
885
|
-
template: '<ng-content></ng-content>',
|
|
886
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
887
|
-
inputs: ['allowMultiple', 'buttonLabel', 'closeOnSelection', 'disabled', 'flexLayout', 'label', 'labelLogo', 'labelLogoGrayscale', 'labelRight', 'labelRightColor', 'labelSubText', 'options', 'theme'],
|
|
888
|
-
}]
|
|
889
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
890
|
-
export let TetDynamicCard = class TetDynamicCard {
|
|
891
|
-
constructor(c, r, z) {
|
|
892
|
-
this.z = z;
|
|
893
|
-
c.detach();
|
|
894
|
-
this.el = r.nativeElement;
|
|
895
|
-
proxyOutputs(this, this.el, ['tetDynamicCardClickEvent']);
|
|
896
|
-
}
|
|
897
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetDynamicCard, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
898
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetDynamicCard, selector: "tet-dynamic-card", inputs: { cardTitle: "cardTitle", dateTag: "dateTag", dateTagColorDark: "dateTagColorDark", dateTagColorLight: "dateTagColorLight", index: "index", isInCarousel: "isInCarousel", linkHref: "linkHref", linkNewTab: "linkNewTab", linkText: "linkText", pictureLayoutShiftPosition: "pictureLayoutShiftPosition", priceTagOptions: "priceTagOptions", size: "size", sizeChangeBreakpoint: "sizeChangeBreakpoint", subtitle: "subtitle", tags: "tags", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
899
|
-
};
|
|
900
|
-
TetDynamicCard = __decorate([
|
|
901
|
-
ProxyCmp({
|
|
902
|
-
inputs: ['cardTitle', 'dateTag', 'dateTagColorDark', 'dateTagColorLight', 'index', 'isInCarousel', 'linkHref', 'linkNewTab', 'linkText', 'pictureLayoutShiftPosition', 'priceTagOptions', 'size', 'sizeChangeBreakpoint', 'subtitle', 'tags', 'theme']
|
|
903
|
-
})
|
|
904
|
-
], TetDynamicCard);
|
|
905
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetDynamicCard, decorators: [{
|
|
906
|
-
type: Component,
|
|
907
|
-
args: [{
|
|
908
|
-
selector: 'tet-dynamic-card',
|
|
909
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
910
|
-
template: '<ng-content></ng-content>',
|
|
911
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
912
|
-
inputs: ['cardTitle', 'dateTag', 'dateTagColorDark', 'dateTagColorLight', 'index', 'isInCarousel', 'linkHref', 'linkNewTab', 'linkText', 'pictureLayoutShiftPosition', 'priceTagOptions', 'size', 'sizeChangeBreakpoint', 'subtitle', 'tags', 'theme'],
|
|
913
|
-
}]
|
|
914
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
915
|
-
export let TetExpandableInput = class TetExpandableInput {
|
|
916
|
-
constructor(c, r, z) {
|
|
917
|
-
this.z = z;
|
|
918
|
-
c.detach();
|
|
919
|
-
this.el = r.nativeElement;
|
|
920
|
-
proxyOutputs(this, this.el, ['before-state-change', 'after-state-change']);
|
|
921
|
-
}
|
|
922
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetExpandableInput, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
923
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetExpandableInput, selector: "tet-expandable-input", inputs: { accessibilityLabel: "accessibilityLabel", animationDuration: "animationDuration", class: "class", closeInputText: "closeInputText", closedWidth: "closedWidth", darkMode: "darkMode", disabled: "disabled", error: "error", iconLeft: "iconLeft", iconRight: "iconRight", iconRightClickCallback: "iconRightClickCallback", manualValidation: "manualValidation", mode: "mode", placeholder: "placeholder", size: "size", theme: "theme", validators: "validators", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
924
|
-
};
|
|
925
|
-
TetExpandableInput = __decorate([
|
|
926
|
-
ProxyCmp({
|
|
927
|
-
inputs: ['accessibilityLabel', 'animationDuration', 'class', 'closeInputText', 'closedWidth', 'darkMode', 'disabled', 'error', 'iconLeft', 'iconRight', 'iconRightClickCallback', 'manualValidation', 'mode', 'placeholder', 'size', 'theme', 'validators', 'value'],
|
|
928
|
-
methods: ['getInputHtmlElement', 'getErrors', 'validateInput', 'setState', 'clear']
|
|
929
|
-
})
|
|
930
|
-
], TetExpandableInput);
|
|
931
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetExpandableInput, decorators: [{
|
|
932
|
-
type: Component,
|
|
933
|
-
args: [{
|
|
934
|
-
selector: 'tet-expandable-input',
|
|
935
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
936
|
-
template: '<ng-content></ng-content>',
|
|
937
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
938
|
-
inputs: ['accessibilityLabel', 'animationDuration', 'class', 'closeInputText', 'closedWidth', 'darkMode', 'disabled', 'error', 'iconLeft', 'iconRight', 'iconRightClickCallback', 'manualValidation', 'mode', 'placeholder', 'size', 'theme', 'validators', 'value'],
|
|
939
|
-
}]
|
|
940
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
941
|
-
export let TetExpansionPanel = class TetExpansionPanel {
|
|
942
|
-
constructor(c, r, z) {
|
|
943
|
-
this.z = z;
|
|
944
|
-
c.detach();
|
|
945
|
-
this.el = r.nativeElement;
|
|
946
|
-
}
|
|
947
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetExpansionPanel, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
948
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetExpansionPanel, selector: "tet-expansion-panel", inputs: { initialState: "initialState", toggleElement: "toggleElement" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
949
|
-
};
|
|
950
|
-
TetExpansionPanel = __decorate([
|
|
951
|
-
ProxyCmp({
|
|
952
|
-
inputs: ['initialState', 'toggleElement'],
|
|
953
|
-
methods: ['open', 'close', 'toggle', 'getState']
|
|
954
|
-
})
|
|
955
|
-
], TetExpansionPanel);
|
|
956
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetExpansionPanel, decorators: [{
|
|
957
|
-
type: Component,
|
|
958
|
-
args: [{
|
|
959
|
-
selector: 'tet-expansion-panel',
|
|
960
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
961
|
-
template: '<ng-content></ng-content>',
|
|
962
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
963
|
-
inputs: ['initialState', 'toggleElement'],
|
|
964
|
-
}]
|
|
965
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
966
|
-
export let TetFilter = class TetFilter {
|
|
967
|
-
constructor(c, r, z) {
|
|
968
|
-
this.z = z;
|
|
969
|
-
c.detach();
|
|
970
|
-
this.el = r.nativeElement;
|
|
971
|
-
proxyOutputs(this, this.el, ['filterChange']);
|
|
972
|
-
}
|
|
973
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetFilter, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
974
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetFilter, selector: "tet-filter", inputs: { clearFilterButtonTitle: "clearFilterButtonTitle", showClearFilterButton: "showClearFilterButton", tags: "tags", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
975
|
-
};
|
|
976
|
-
TetFilter = __decorate([
|
|
977
|
-
ProxyCmp({
|
|
978
|
-
inputs: ['clearFilterButtonTitle', 'showClearFilterButton', 'tags', 'theme']
|
|
979
|
-
})
|
|
980
|
-
], TetFilter);
|
|
981
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetFilter, decorators: [{
|
|
982
|
-
type: Component,
|
|
983
|
-
args: [{
|
|
984
|
-
selector: 'tet-filter',
|
|
985
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
986
|
-
template: '<ng-content></ng-content>',
|
|
987
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
988
|
-
inputs: ['clearFilterButtonTitle', 'showClearFilterButton', 'tags', 'theme'],
|
|
989
|
-
}]
|
|
990
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
991
|
-
export let TetIcon = class TetIcon {
|
|
992
|
-
constructor(c, r, z) {
|
|
993
|
-
this.z = z;
|
|
994
|
-
c.detach();
|
|
995
|
-
this.el = r.nativeElement;
|
|
996
|
-
}
|
|
997
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetIcon, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
998
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetIcon, selector: "tet-icon", inputs: { accessibilityLabel: "accessibilityLabel", focusable: "focusable", name: "name", theme: "theme", type: "type", useDefaultColor: "useDefaultColor" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
999
|
-
};
|
|
1000
|
-
TetIcon = __decorate([
|
|
1001
|
-
ProxyCmp({
|
|
1002
|
-
inputs: ['accessibilityLabel', 'focusable', 'name', 'theme', 'type', 'useDefaultColor']
|
|
1003
|
-
})
|
|
1004
|
-
], TetIcon);
|
|
1005
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetIcon, decorators: [{
|
|
1006
|
-
type: Component,
|
|
1007
|
-
args: [{
|
|
1008
|
-
selector: 'tet-icon',
|
|
1009
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1010
|
-
template: '<ng-content></ng-content>',
|
|
1011
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1012
|
-
inputs: ['accessibilityLabel', 'focusable', 'name', 'theme', 'type', 'useDefaultColor'],
|
|
1013
|
-
}]
|
|
1014
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1015
|
-
export let TetInlineMessage = class TetInlineMessage {
|
|
1016
|
-
constructor(c, r, z) {
|
|
1017
|
-
this.z = z;
|
|
1018
|
-
c.detach();
|
|
1019
|
-
this.el = r.nativeElement;
|
|
1020
|
-
}
|
|
1021
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetInlineMessage, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1022
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetInlineMessage, selector: "tet-inline-message", inputs: { theme: "theme", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1023
|
-
};
|
|
1024
|
-
TetInlineMessage = __decorate([
|
|
1025
|
-
ProxyCmp({
|
|
1026
|
-
inputs: ['theme', 'variant']
|
|
1027
|
-
})
|
|
1028
|
-
], TetInlineMessage);
|
|
1029
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetInlineMessage, decorators: [{
|
|
1030
|
-
type: Component,
|
|
1031
|
-
args: [{
|
|
1032
|
-
selector: 'tet-inline-message',
|
|
1033
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1034
|
-
template: '<ng-content></ng-content>',
|
|
1035
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1036
|
-
inputs: ['theme', 'variant'],
|
|
1037
|
-
}]
|
|
1038
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1039
|
-
export let TetInput = class TetInput {
|
|
1040
|
-
constructor(c, r, z) {
|
|
1041
|
-
this.z = z;
|
|
1042
|
-
c.detach();
|
|
1043
|
-
this.el = r.nativeElement;
|
|
1044
|
-
}
|
|
1045
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetInput, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1046
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetInput, selector: "tet-input", inputs: { accessibilityLabel: "accessibilityLabel", autocomplete: "autocomplete", class: "class", disabled: "disabled", error: "error", iconLeft: "iconLeft", iconLeftClickCallback: "iconLeftClickCallback", iconRight: "iconRight", iconRightClickCallback: "iconRightClickCallback", inputTabindex: "inputTabindex", isPhoneNumber: "isPhoneNumber", label: "label", manualValidation: "manualValidation", maxlength: "maxlength", placeholder: "placeholder", readonly: "readonly", theme: "theme", type: "type", validators: "validators", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1047
|
-
};
|
|
1048
|
-
TetInput = __decorate([
|
|
1049
|
-
ProxyCmp({
|
|
1050
|
-
inputs: ['accessibilityLabel', 'autocomplete', 'class', 'disabled', 'error', 'iconLeft', 'iconLeftClickCallback', 'iconRight', 'iconRightClickCallback', 'inputTabindex', 'isPhoneNumber', 'label', 'manualValidation', 'maxlength', 'placeholder', 'readonly', 'theme', 'type', 'validators', 'value'],
|
|
1051
|
-
methods: ['getInputHtmlElement', 'getErrors', 'clearErrors', 'validateInput']
|
|
1052
|
-
})
|
|
1053
|
-
], TetInput);
|
|
1054
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetInput, decorators: [{
|
|
1055
|
-
type: Component,
|
|
1056
|
-
args: [{
|
|
1057
|
-
selector: 'tet-input',
|
|
1058
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1059
|
-
template: '<ng-content></ng-content>',
|
|
1060
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1061
|
-
inputs: ['accessibilityLabel', 'autocomplete', 'class', 'disabled', 'error', 'iconLeft', 'iconLeftClickCallback', 'iconRight', 'iconRightClickCallback', 'inputTabindex', 'isPhoneNumber', 'label', 'manualValidation', 'maxlength', 'placeholder', 'readonly', 'theme', 'type', 'validators', 'value'],
|
|
1062
|
-
}]
|
|
1063
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1064
|
-
export let TetLabel = class TetLabel {
|
|
1065
|
-
constructor(c, r, z) {
|
|
1066
|
-
this.z = z;
|
|
1067
|
-
c.detach();
|
|
1068
|
-
this.el = r.nativeElement;
|
|
1069
|
-
}
|
|
1070
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetLabel, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1071
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetLabel, selector: "tet-label", inputs: { active: "active", labelTitle: "labelTitle", showIcon: "showIcon", theme: "theme", translateTitle: "translateTitle", type: "type" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1072
|
-
};
|
|
1073
|
-
TetLabel = __decorate([
|
|
1074
|
-
ProxyCmp({
|
|
1075
|
-
inputs: ['active', 'labelTitle', 'showIcon', 'theme', 'translateTitle', 'type']
|
|
1076
|
-
})
|
|
1077
|
-
], TetLabel);
|
|
1078
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetLabel, decorators: [{
|
|
1079
|
-
type: Component,
|
|
1080
|
-
args: [{
|
|
1081
|
-
selector: 'tet-label',
|
|
1082
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1083
|
-
template: '<ng-content></ng-content>',
|
|
1084
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1085
|
-
inputs: ['active', 'labelTitle', 'showIcon', 'theme', 'translateTitle', 'type'],
|
|
1086
|
-
}]
|
|
1087
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1088
|
-
export let TetLoader = class TetLoader {
|
|
1089
|
-
constructor(c, r, z) {
|
|
1090
|
-
this.z = z;
|
|
1091
|
-
c.detach();
|
|
1092
|
-
this.el = r.nativeElement;
|
|
1093
|
-
}
|
|
1094
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetLoader, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1095
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetLoader, selector: "tet-loader", ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1096
|
-
};
|
|
1097
|
-
TetLoader = __decorate([
|
|
1098
|
-
ProxyCmp({})
|
|
1099
|
-
], TetLoader);
|
|
1100
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetLoader, decorators: [{
|
|
1101
|
-
type: Component,
|
|
1102
|
-
args: [{
|
|
1103
|
-
selector: 'tet-loader',
|
|
1104
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1105
|
-
template: '<ng-content></ng-content>',
|
|
1106
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1107
|
-
inputs: [],
|
|
1108
|
-
}]
|
|
1109
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1110
|
-
export let TetMenu = class TetMenu {
|
|
1111
|
-
constructor(c, r, z) {
|
|
1112
|
-
this.z = z;
|
|
1113
|
-
c.detach();
|
|
1114
|
-
this.el = r.nativeElement;
|
|
1115
|
-
}
|
|
1116
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetMenu, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1117
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetMenu, selector: "tet-menu", inputs: { active: "active", clickable: "clickable", darkMode: "darkMode", firstLevelIcon: "firstLevelIcon", firstLevelId: "firstLevelId", firstLevelLink: "firstLevelLink", firstLevelTitle: "firstLevelTitle", menuItemTheme: "menuItemTheme", showMenuItemAnimation: "showMenuItemAnimation", subLevels: "subLevels", type: "type" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1118
|
-
};
|
|
1119
|
-
TetMenu = __decorate([
|
|
1120
|
-
ProxyCmp({
|
|
1121
|
-
inputs: ['active', 'clickable', 'darkMode', 'firstLevelIcon', 'firstLevelId', 'firstLevelLink', 'firstLevelTitle', 'menuItemTheme', 'showMenuItemAnimation', 'subLevels', 'type']
|
|
1122
|
-
})
|
|
1123
|
-
], TetMenu);
|
|
1124
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetMenu, decorators: [{
|
|
1125
|
-
type: Component,
|
|
1126
|
-
args: [{
|
|
1127
|
-
selector: 'tet-menu',
|
|
1128
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1129
|
-
template: '<ng-content></ng-content>',
|
|
1130
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1131
|
-
inputs: ['active', 'clickable', 'darkMode', 'firstLevelIcon', 'firstLevelId', 'firstLevelLink', 'firstLevelTitle', 'menuItemTheme', 'showMenuItemAnimation', 'subLevels', 'type'],
|
|
1132
|
-
}]
|
|
1133
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1134
|
-
export let TetMenuMobile = class TetMenuMobile {
|
|
1135
|
-
constructor(c, r, z) {
|
|
1136
|
-
this.z = z;
|
|
1137
|
-
c.detach();
|
|
1138
|
-
this.el = r.nativeElement;
|
|
1139
|
-
}
|
|
1140
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetMenuMobile, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1141
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetMenuMobile, selector: "tet-menu-mobile", inputs: { darkMode: "darkMode", firstLevelIcon: "firstLevelIcon", firstLevelId: "firstLevelId", firstLevelLink: "firstLevelLink", firstLevelTitle: "firstLevelTitle", highlightTheme: "highlightTheme", isActive: "isActive", showAnimation: "showAnimation", subLevels: "subLevels" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1142
|
-
};
|
|
1143
|
-
TetMenuMobile = __decorate([
|
|
1144
|
-
ProxyCmp({
|
|
1145
|
-
inputs: ['darkMode', 'firstLevelIcon', 'firstLevelId', 'firstLevelLink', 'firstLevelTitle', 'highlightTheme', 'isActive', 'showAnimation', 'subLevels']
|
|
1146
|
-
})
|
|
1147
|
-
], TetMenuMobile);
|
|
1148
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetMenuMobile, decorators: [{
|
|
1149
|
-
type: Component,
|
|
1150
|
-
args: [{
|
|
1151
|
-
selector: 'tet-menu-mobile',
|
|
1152
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1153
|
-
template: '<ng-content></ng-content>',
|
|
1154
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1155
|
-
inputs: ['darkMode', 'firstLevelIcon', 'firstLevelId', 'firstLevelLink', 'firstLevelTitle', 'highlightTheme', 'isActive', 'showAnimation', 'subLevels'],
|
|
1156
|
-
}]
|
|
1157
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1158
|
-
export let TetMultiStepDialog = class TetMultiStepDialog {
|
|
1159
|
-
constructor(c, r, z) {
|
|
1160
|
-
this.z = z;
|
|
1161
|
-
c.detach();
|
|
1162
|
-
this.el = r.nativeElement;
|
|
1163
|
-
proxyOutputs(this, this.el, ['closeDialog', 'openDialog']);
|
|
1164
|
-
}
|
|
1165
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetMultiStepDialog, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1166
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetMultiStepDialog, selector: "tet-multi-step-dialog", inputs: { content: "content", dialogDataScreenKey: "dialogDataScreenKey", isOpen: "isOpen", language: "language", steps: "steps", tetDialogClass: "tetDialogClass", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1167
|
-
};
|
|
1168
|
-
TetMultiStepDialog = __decorate([
|
|
1169
|
-
ProxyCmp({
|
|
1170
|
-
inputs: ['content', 'dialogDataScreenKey', 'isOpen', 'language', 'steps', 'tetDialogClass', 'theme']
|
|
1171
|
-
})
|
|
1172
|
-
], TetMultiStepDialog);
|
|
1173
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetMultiStepDialog, decorators: [{
|
|
1174
|
-
type: Component,
|
|
1175
|
-
args: [{
|
|
1176
|
-
selector: 'tet-multi-step-dialog',
|
|
1177
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1178
|
-
template: '<ng-content></ng-content>',
|
|
1179
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1180
|
-
inputs: ['content', 'dialogDataScreenKey', 'isOpen', 'language', 'steps', 'tetDialogClass', 'theme'],
|
|
1181
|
-
}]
|
|
1182
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1183
|
-
export let TetNavigationMobile = class TetNavigationMobile {
|
|
1184
|
-
constructor(c, r, z) {
|
|
1185
|
-
this.z = z;
|
|
1186
|
-
c.detach();
|
|
1187
|
-
this.el = r.nativeElement;
|
|
1188
|
-
proxyOutputs(this, this.el, ['mainDropdownToggle']);
|
|
1189
|
-
}
|
|
1190
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetNavigationMobile, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1191
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetNavigationMobile, selector: "tet-navigation-mobile", inputs: { darkMode: "darkMode" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1192
|
-
};
|
|
1193
|
-
TetNavigationMobile = __decorate([
|
|
1194
|
-
ProxyCmp({
|
|
1195
|
-
inputs: ['darkMode'],
|
|
1196
|
-
methods: ['showToggler', 'hideToggler', 'open', 'close']
|
|
1197
|
-
})
|
|
1198
|
-
], TetNavigationMobile);
|
|
1199
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetNavigationMobile, decorators: [{
|
|
1200
|
-
type: Component,
|
|
1201
|
-
args: [{
|
|
1202
|
-
selector: 'tet-navigation-mobile',
|
|
1203
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1204
|
-
template: '<ng-content></ng-content>',
|
|
1205
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1206
|
-
inputs: ['darkMode'],
|
|
1207
|
-
}]
|
|
1208
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1209
|
-
export let TetNotification = class TetNotification {
|
|
1210
|
-
constructor(c, r, z) {
|
|
1211
|
-
this.z = z;
|
|
1212
|
-
c.detach();
|
|
1213
|
-
this.el = r.nativeElement;
|
|
1214
|
-
}
|
|
1215
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetNotification, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1216
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetNotification, selector: "tet-notification", inputs: { allowClose: "allowClose", animationDuration: "animationDuration", content: "content", headerTitle: "headerTitle", icon: "icon", theme: "theme", type: "type" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1217
|
-
};
|
|
1218
|
-
TetNotification = __decorate([
|
|
1219
|
-
ProxyCmp({
|
|
1220
|
-
inputs: ['allowClose', 'animationDuration', 'content', 'headerTitle', 'icon', 'theme', 'type'],
|
|
1221
|
-
methods: ['close']
|
|
1222
|
-
})
|
|
1223
|
-
], TetNotification);
|
|
1224
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetNotification, decorators: [{
|
|
1225
|
-
type: Component,
|
|
1226
|
-
args: [{
|
|
1227
|
-
selector: 'tet-notification',
|
|
1228
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1229
|
-
template: '<ng-content></ng-content>',
|
|
1230
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1231
|
-
inputs: ['allowClose', 'animationDuration', 'content', 'headerTitle', 'icon', 'theme', 'type'],
|
|
1232
|
-
}]
|
|
1233
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1234
|
-
export let TetNumberInput = class TetNumberInput {
|
|
1235
|
-
constructor(c, r, z) {
|
|
1236
|
-
this.z = z;
|
|
1237
|
-
c.detach();
|
|
1238
|
-
this.el = r.nativeElement;
|
|
1239
|
-
proxyOutputs(this, this.el, ['inputValueChanged']);
|
|
1240
|
-
}
|
|
1241
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetNumberInput, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1242
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetNumberInput, selector: "tet-number-input", inputs: { accessibilityLabel: "accessibilityLabel", buttonAccessibilityLabel: "buttonAccessibilityLabel", completed: "completed", disabled: "disabled", error: "error", helperText: "helperText", label: "label", max: "max", min: "min", selectOnFocus: "selectOnFocus", suffixes: "suffixes", theme: "theme", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1243
|
-
};
|
|
1244
|
-
TetNumberInput = __decorate([
|
|
1245
|
-
ProxyCmp({
|
|
1246
|
-
inputs: ['accessibilityLabel', 'buttonAccessibilityLabel', 'completed', 'disabled', 'error', 'helperText', 'label', 'max', 'min', 'selectOnFocus', 'suffixes', 'theme', 'value'],
|
|
1247
|
-
methods: ['getValue', 'resetSuffix']
|
|
1248
|
-
})
|
|
1249
|
-
], TetNumberInput);
|
|
1250
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetNumberInput, decorators: [{
|
|
1251
|
-
type: Component,
|
|
1252
|
-
args: [{
|
|
1253
|
-
selector: 'tet-number-input',
|
|
1254
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1255
|
-
template: '<ng-content></ng-content>',
|
|
1256
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1257
|
-
inputs: ['accessibilityLabel', 'buttonAccessibilityLabel', 'completed', 'disabled', 'error', 'helperText', 'label', 'max', 'min', 'selectOnFocus', 'suffixes', 'theme', 'value'],
|
|
1258
|
-
}]
|
|
1259
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1260
|
-
export let TetPlaceholder = class TetPlaceholder {
|
|
1261
|
-
constructor(c, r, z) {
|
|
1262
|
-
this.z = z;
|
|
1263
|
-
c.detach();
|
|
1264
|
-
this.el = r.nativeElement;
|
|
1265
|
-
}
|
|
1266
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetPlaceholder, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1267
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetPlaceholder, selector: "tet-placeholder", inputs: { darkTheme: "darkTheme", height: "height", width: "width" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1268
|
-
};
|
|
1269
|
-
TetPlaceholder = __decorate([
|
|
1270
|
-
ProxyCmp({
|
|
1271
|
-
inputs: ['darkTheme', 'height', 'width']
|
|
1272
|
-
})
|
|
1273
|
-
], TetPlaceholder);
|
|
1274
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetPlaceholder, decorators: [{
|
|
1275
|
-
type: Component,
|
|
1276
|
-
args: [{
|
|
1277
|
-
selector: 'tet-placeholder',
|
|
1278
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1279
|
-
template: '<ng-content></ng-content>',
|
|
1280
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1281
|
-
inputs: ['darkTheme', 'height', 'width'],
|
|
1282
|
-
}]
|
|
1283
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1284
|
-
export let TetPriceView = class TetPriceView {
|
|
1285
|
-
constructor(c, r, z) {
|
|
1286
|
-
this.z = z;
|
|
1287
|
-
c.detach();
|
|
1288
|
-
this.el = r.nativeElement;
|
|
1289
|
-
}
|
|
1290
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetPriceView, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1291
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetPriceView, selector: "tet-price-view", inputs: { background: "background", centsPrice: "centsPrice", euroPrice: "euroPrice", font: "font", footerText: "footerText", footerTextType: "footerTextType", headingText: "headingText", priceType: "priceType", size: "size", staticColors: "staticColors", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1292
|
-
};
|
|
1293
|
-
TetPriceView = __decorate([
|
|
1294
|
-
ProxyCmp({
|
|
1295
|
-
inputs: ['background', 'centsPrice', 'euroPrice', 'font', 'footerText', 'footerTextType', 'headingText', 'priceType', 'size', 'staticColors', 'theme']
|
|
1296
|
-
})
|
|
1297
|
-
], TetPriceView);
|
|
1298
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetPriceView, decorators: [{
|
|
1299
|
-
type: Component,
|
|
1300
|
-
args: [{
|
|
1301
|
-
selector: 'tet-price-view',
|
|
1302
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1303
|
-
template: '<ng-content></ng-content>',
|
|
1304
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1305
|
-
inputs: ['background', 'centsPrice', 'euroPrice', 'font', 'footerText', 'footerTextType', 'headingText', 'priceType', 'size', 'staticColors', 'theme'],
|
|
1306
|
-
}]
|
|
1307
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1308
|
-
export let TetRadio = class TetRadio {
|
|
1309
|
-
constructor(c, r, z) {
|
|
1310
|
-
this.z = z;
|
|
1311
|
-
c.detach();
|
|
1312
|
-
this.el = r.nativeElement;
|
|
1313
|
-
proxyOutputs(this, this.el, ['check']);
|
|
1314
|
-
}
|
|
1315
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetRadio, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1316
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetRadio, selector: "tet-radio", inputs: { accessibilityLabel: "accessibilityLabel", checked: "checked", disabled: "disabled", inputAutofocus: "inputAutofocus", label: "label", name: "name", theme: "theme", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1317
|
-
};
|
|
1318
|
-
TetRadio = __decorate([
|
|
1319
|
-
ProxyCmp({
|
|
1320
|
-
inputs: ['accessibilityLabel', 'checked', 'disabled', 'inputAutofocus', 'label', 'name', 'theme', 'value'],
|
|
1321
|
-
methods: ['setChecked']
|
|
1322
|
-
})
|
|
1323
|
-
], TetRadio);
|
|
1324
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetRadio, decorators: [{
|
|
1325
|
-
type: Component,
|
|
1326
|
-
args: [{
|
|
1327
|
-
selector: 'tet-radio',
|
|
1328
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1329
|
-
template: '<ng-content></ng-content>',
|
|
1330
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1331
|
-
inputs: ['accessibilityLabel', 'checked', 'disabled', 'inputAutofocus', 'label', 'name', 'theme', 'value'],
|
|
1332
|
-
}]
|
|
1333
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1334
|
-
export let TetRangeSlider = class TetRangeSlider {
|
|
1335
|
-
constructor(c, r, z) {
|
|
1336
|
-
this.z = z;
|
|
1337
|
-
c.detach();
|
|
1338
|
-
this.el = r.nativeElement;
|
|
1339
|
-
proxyOutputs(this, this.el, ['slider-input', 'slider-change']);
|
|
1340
|
-
}
|
|
1341
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetRangeSlider, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1342
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetRangeSlider, selector: "tet-range-slider", inputs: { addButtonAccessibilityLabel: "addButtonAccessibilityLabel", dataPoints: "dataPoints", dataUnits: "dataUnits", defaultValue: "defaultValue", displayDataPoints: "displayDataPoints", inputMaxValue: "inputMaxValue", lockToDataPoint: "lockToDataPoint", maxValue: "maxValue", minValue: "minValue", numberInputAccessibilityLabel: "numberInputAccessibilityLabel", parentContainer: "parentContainer", reduceButtonAccessibilityLabel: "reduceButtonAccessibilityLabel", size: "size", sliderInputAccessibilityLabel: "sliderInputAccessibilityLabel", step: "step", theme: "theme", type: "type", withControls: "withControls", withCurrentStepCounter: "withCurrentStepCounter", withInput: "withInput" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1343
|
-
};
|
|
1344
|
-
TetRangeSlider = __decorate([
|
|
1345
|
-
ProxyCmp({
|
|
1346
|
-
inputs: ['addButtonAccessibilityLabel', 'dataPoints', 'dataUnits', 'defaultValue', 'displayDataPoints', 'inputMaxValue', 'lockToDataPoint', 'maxValue', 'minValue', 'numberInputAccessibilityLabel', 'parentContainer', 'reduceButtonAccessibilityLabel', 'size', 'sliderInputAccessibilityLabel', 'step', 'theme', 'type', 'withControls', 'withCurrentStepCounter', 'withInput']
|
|
1347
|
-
})
|
|
1348
|
-
], TetRangeSlider);
|
|
1349
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetRangeSlider, decorators: [{
|
|
1350
|
-
type: Component,
|
|
1351
|
-
args: [{
|
|
1352
|
-
selector: 'tet-range-slider',
|
|
1353
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1354
|
-
template: '<ng-content></ng-content>',
|
|
1355
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1356
|
-
inputs: ['addButtonAccessibilityLabel', 'dataPoints', 'dataUnits', 'defaultValue', 'displayDataPoints', 'inputMaxValue', 'lockToDataPoint', 'maxValue', 'minValue', 'numberInputAccessibilityLabel', 'parentContainer', 'reduceButtonAccessibilityLabel', 'size', 'sliderInputAccessibilityLabel', 'step', 'theme', 'type', 'withControls', 'withCurrentStepCounter', 'withInput'],
|
|
1357
|
-
}]
|
|
1358
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1359
|
-
export let TetReferral = class TetReferral {
|
|
1360
|
-
constructor(c, r, z) {
|
|
1361
|
-
this.z = z;
|
|
1362
|
-
c.detach();
|
|
1363
|
-
this.el = r.nativeElement;
|
|
1364
|
-
proxyOutputs(this, this.el, ['urlCopied']);
|
|
1365
|
-
}
|
|
1366
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetReferral, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1367
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetReferral, selector: "tet-referral", inputs: { data: "data", language: "language", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1368
|
-
};
|
|
1369
|
-
TetReferral = __decorate([
|
|
1370
|
-
ProxyCmp({
|
|
1371
|
-
inputs: ['data', 'language', 'theme']
|
|
1372
|
-
})
|
|
1373
|
-
], TetReferral);
|
|
1374
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetReferral, decorators: [{
|
|
1375
|
-
type: Component,
|
|
1376
|
-
args: [{
|
|
1377
|
-
selector: 'tet-referral',
|
|
1378
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1379
|
-
template: '<ng-content></ng-content>',
|
|
1380
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1381
|
-
inputs: ['data', 'language', 'theme'],
|
|
1382
|
-
}]
|
|
1383
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1384
|
-
export let TetRoundStepper = class TetRoundStepper {
|
|
1385
|
-
constructor(c, r, z) {
|
|
1386
|
-
this.z = z;
|
|
1387
|
-
c.detach();
|
|
1388
|
-
this.el = r.nativeElement;
|
|
1389
|
-
}
|
|
1390
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetRoundStepper, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1391
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetRoundStepper, selector: "tet-round-stepper", inputs: { forcedColumn: "forcedColumn", hideIcons: "hideIcons", stepperData: "stepperData", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1392
|
-
};
|
|
1393
|
-
TetRoundStepper = __decorate([
|
|
1394
|
-
ProxyCmp({
|
|
1395
|
-
inputs: ['forcedColumn', 'hideIcons', 'stepperData', 'theme']
|
|
1396
|
-
})
|
|
1397
|
-
], TetRoundStepper);
|
|
1398
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetRoundStepper, decorators: [{
|
|
1399
|
-
type: Component,
|
|
1400
|
-
args: [{
|
|
1401
|
-
selector: 'tet-round-stepper',
|
|
1402
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1403
|
-
template: '<ng-content></ng-content>',
|
|
1404
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1405
|
-
inputs: ['forcedColumn', 'hideIcons', 'stepperData', 'theme'],
|
|
1406
|
-
}]
|
|
1407
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1408
|
-
export let TetSelectionList = class TetSelectionList {
|
|
1409
|
-
constructor(c, r, z) {
|
|
1410
|
-
this.z = z;
|
|
1411
|
-
c.detach();
|
|
1412
|
-
this.el = r.nativeElement;
|
|
1413
|
-
proxyOutputs(this, this.el, ['itemSelected', 'selectionListRendered']);
|
|
1414
|
-
}
|
|
1415
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetSelectionList, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1416
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetSelectionList, selector: "tet-selection-list", inputs: { identifier: "identifier", itemRenderFunction: "itemRenderFunction", items: "items", multipleSelections: "multipleSelections", preSelectedItems: "preSelectedItems" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1417
|
-
};
|
|
1418
|
-
TetSelectionList = __decorate([
|
|
1419
|
-
ProxyCmp({
|
|
1420
|
-
inputs: ['identifier', 'itemRenderFunction', 'items', 'multipleSelections', 'preSelectedItems'],
|
|
1421
|
-
methods: ['unsetSelectedItems', 'getSelectedItems']
|
|
1422
|
-
})
|
|
1423
|
-
], TetSelectionList);
|
|
1424
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetSelectionList, decorators: [{
|
|
1425
|
-
type: Component,
|
|
1426
|
-
args: [{
|
|
1427
|
-
selector: 'tet-selection-list',
|
|
1428
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1429
|
-
template: '<ng-content></ng-content>',
|
|
1430
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1431
|
-
inputs: ['identifier', 'itemRenderFunction', 'items', 'multipleSelections', 'preSelectedItems'],
|
|
1432
|
-
}]
|
|
1433
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1434
|
-
export let TetSpinner = class TetSpinner {
|
|
1435
|
-
constructor(c, r, z) {
|
|
1436
|
-
this.z = z;
|
|
1437
|
-
c.detach();
|
|
1438
|
-
this.el = r.nativeElement;
|
|
1439
|
-
}
|
|
1440
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetSpinner, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1441
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetSpinner, selector: "tet-spinner", inputs: { size: "size", theme: "theme", type: "type" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1442
|
-
};
|
|
1443
|
-
TetSpinner = __decorate([
|
|
1444
|
-
ProxyCmp({
|
|
1445
|
-
inputs: ['size', 'theme', 'type'],
|
|
1446
|
-
methods: ['setProgress']
|
|
1447
|
-
})
|
|
1448
|
-
], TetSpinner);
|
|
1449
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetSpinner, decorators: [{
|
|
1450
|
-
type: Component,
|
|
1451
|
-
args: [{
|
|
1452
|
-
selector: 'tet-spinner',
|
|
1453
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1454
|
-
template: '<ng-content></ng-content>',
|
|
1455
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1456
|
-
inputs: ['size', 'theme', 'type'],
|
|
1457
|
-
}]
|
|
1458
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1459
|
-
export let TetStepper = class TetStepper {
|
|
1460
|
-
constructor(c, r, z) {
|
|
1461
|
-
this.z = z;
|
|
1462
|
-
c.detach();
|
|
1463
|
-
this.el = r.nativeElement;
|
|
1464
|
-
}
|
|
1465
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetStepper, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1466
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetStepper, selector: "tet-stepper", inputs: { stepperData: "stepperData" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1467
|
-
};
|
|
1468
|
-
TetStepper = __decorate([
|
|
1469
|
-
ProxyCmp({
|
|
1470
|
-
inputs: ['stepperData']
|
|
1471
|
-
})
|
|
1472
|
-
], TetStepper);
|
|
1473
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetStepper, decorators: [{
|
|
1474
|
-
type: Component,
|
|
1475
|
-
args: [{
|
|
1476
|
-
selector: 'tet-stepper',
|
|
1477
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1478
|
-
template: '<ng-content></ng-content>',
|
|
1479
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1480
|
-
inputs: ['stepperData'],
|
|
1481
|
-
}]
|
|
1482
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1483
|
-
export let TetStepperInput = class TetStepperInput {
|
|
1484
|
-
constructor(c, r, z) {
|
|
1485
|
-
this.z = z;
|
|
1486
|
-
c.detach();
|
|
1487
|
-
this.el = r.nativeElement;
|
|
1488
|
-
proxyOutputs(this, this.el, ['inputValueChanged']);
|
|
1489
|
-
}
|
|
1490
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetStepperInput, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1491
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetStepperInput, selector: "tet-stepper-input", inputs: { accessibilityLabel: "accessibilityLabel", language: "language", max: "max", min: "min", selectOnFocus: "selectOnFocus", step: "step", theme: "theme", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1492
|
-
};
|
|
1493
|
-
TetStepperInput = __decorate([
|
|
1494
|
-
ProxyCmp({
|
|
1495
|
-
inputs: ['accessibilityLabel', 'language', 'max', 'min', 'selectOnFocus', 'step', 'theme', 'value'],
|
|
1496
|
-
methods: ['getValue']
|
|
1497
|
-
})
|
|
1498
|
-
], TetStepperInput);
|
|
1499
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetStepperInput, decorators: [{
|
|
1500
|
-
type: Component,
|
|
1501
|
-
args: [{
|
|
1502
|
-
selector: 'tet-stepper-input',
|
|
1503
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1504
|
-
template: '<ng-content></ng-content>',
|
|
1505
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1506
|
-
inputs: ['accessibilityLabel', 'language', 'max', 'min', 'selectOnFocus', 'step', 'theme', 'value'],
|
|
1507
|
-
}]
|
|
1508
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1509
|
-
export let TetStepperV2 = class TetStepperV2 {
|
|
1510
|
-
constructor(c, r, z) {
|
|
1511
|
-
this.z = z;
|
|
1512
|
-
c.detach();
|
|
1513
|
-
this.el = r.nativeElement;
|
|
1514
|
-
}
|
|
1515
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetStepperV2, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1516
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetStepperV2, selector: "tet-stepper-v2", inputs: { stepperData: "stepperData", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1517
|
-
};
|
|
1518
|
-
TetStepperV2 = __decorate([
|
|
1519
|
-
ProxyCmp({
|
|
1520
|
-
inputs: ['stepperData', 'theme']
|
|
1521
|
-
})
|
|
1522
|
-
], TetStepperV2);
|
|
1523
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetStepperV2, decorators: [{
|
|
1524
|
-
type: Component,
|
|
1525
|
-
args: [{
|
|
1526
|
-
selector: 'tet-stepper-v2',
|
|
1527
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1528
|
-
template: '<ng-content></ng-content>',
|
|
1529
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1530
|
-
inputs: ['stepperData', 'theme'],
|
|
1531
|
-
}]
|
|
1532
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1533
|
-
export let TetStepperV3 = class TetStepperV3 {
|
|
1534
|
-
constructor(c, r, z) {
|
|
1535
|
-
this.z = z;
|
|
1536
|
-
c.detach();
|
|
1537
|
-
this.el = r.nativeElement;
|
|
1538
|
-
}
|
|
1539
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetStepperV3, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1540
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetStepperV3, selector: "tet-stepper-v3", inputs: { stepperData: "stepperData", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1541
|
-
};
|
|
1542
|
-
TetStepperV3 = __decorate([
|
|
1543
|
-
ProxyCmp({
|
|
1544
|
-
inputs: ['stepperData', 'theme']
|
|
1545
|
-
})
|
|
1546
|
-
], TetStepperV3);
|
|
1547
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetStepperV3, decorators: [{
|
|
1548
|
-
type: Component,
|
|
1549
|
-
args: [{
|
|
1550
|
-
selector: 'tet-stepper-v3',
|
|
1551
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1552
|
-
template: '<ng-content></ng-content>',
|
|
1553
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1554
|
-
inputs: ['stepperData', 'theme'],
|
|
1555
|
-
}]
|
|
1556
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1557
|
-
export let TetSwitch = class TetSwitch {
|
|
1558
|
-
constructor(c, r, z) {
|
|
1559
|
-
this.z = z;
|
|
1560
|
-
c.detach();
|
|
1561
|
-
this.el = r.nativeElement;
|
|
1562
|
-
proxyOutputs(this, this.el, ['check']);
|
|
1563
|
-
}
|
|
1564
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetSwitch, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1565
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetSwitch, selector: "tet-switch", inputs: { accessibilityLabel: "accessibilityLabel", checked: "checked", disabled: "disabled", label: "label", name: "name", theme: "theme", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1566
|
-
};
|
|
1567
|
-
TetSwitch = __decorate([
|
|
1568
|
-
ProxyCmp({
|
|
1569
|
-
inputs: ['accessibilityLabel', 'checked', 'disabled', 'label', 'name', 'theme', 'value'],
|
|
1570
|
-
methods: ['setChecked']
|
|
1571
|
-
})
|
|
1572
|
-
], TetSwitch);
|
|
1573
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetSwitch, decorators: [{
|
|
1574
|
-
type: Component,
|
|
1575
|
-
args: [{
|
|
1576
|
-
selector: 'tet-switch',
|
|
1577
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1578
|
-
template: '<ng-content></ng-content>',
|
|
1579
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1580
|
-
inputs: ['accessibilityLabel', 'checked', 'disabled', 'label', 'name', 'theme', 'value'],
|
|
1581
|
-
}]
|
|
1582
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1583
|
-
export let TetTabContent = class TetTabContent {
|
|
1584
|
-
constructor(c, r, z) {
|
|
1585
|
-
this.z = z;
|
|
1586
|
-
c.detach();
|
|
1587
|
-
this.el = r.nativeElement;
|
|
1588
|
-
proxyOutputs(this, this.el, ['tabSelected']);
|
|
1589
|
-
}
|
|
1590
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetTabContent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1591
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetTabContent, selector: "tet-tab-content", inputs: { dataName: "dataName", defaultTab: "defaultTab", parentContainer: "parentContainer", useVisibility: "useVisibility" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1592
|
-
};
|
|
1593
|
-
TetTabContent = __decorate([
|
|
1594
|
-
ProxyCmp({
|
|
1595
|
-
inputs: ['dataName', 'defaultTab', 'parentContainer', 'useVisibility'],
|
|
1596
|
-
methods: ['init', 'selectTab']
|
|
1597
|
-
})
|
|
1598
|
-
], TetTabContent);
|
|
1599
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetTabContent, decorators: [{
|
|
1600
|
-
type: Component,
|
|
1601
|
-
args: [{
|
|
1602
|
-
selector: 'tet-tab-content',
|
|
1603
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1604
|
-
template: '<ng-content></ng-content>',
|
|
1605
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1606
|
-
inputs: ['dataName', 'defaultTab', 'parentContainer', 'useVisibility'],
|
|
1607
|
-
}]
|
|
1608
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1609
|
-
export let TetTabHeader = class TetTabHeader {
|
|
1610
|
-
constructor(c, r, z) {
|
|
1611
|
-
this.z = z;
|
|
1612
|
-
c.detach();
|
|
1613
|
-
this.el = r.nativeElement;
|
|
1614
|
-
proxyOutputs(this, this.el, ['tabSelected']);
|
|
1615
|
-
}
|
|
1616
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetTabHeader, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1617
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetTabHeader, selector: "tet-tab-header", inputs: { autoplayDelay: "autoplayDelay", darkMode: "darkMode", dataName: "dataName", defaultTab: "defaultTab", hideActiveHeaderUnderline: "hideActiveHeaderUnderline", hideHeaderUnderline: "hideHeaderUnderline", position: "position", segmented: "segmented", sizing: "sizing", stopAutoplayOnContentHover: "stopAutoplayOnContentHover", stopAutoplayOnHeaderHover: "stopAutoplayOnHeaderHover", theme: "theme", type: "type" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1618
|
-
};
|
|
1619
|
-
TetTabHeader = __decorate([
|
|
1620
|
-
ProxyCmp({
|
|
1621
|
-
inputs: ['autoplayDelay', 'darkMode', 'dataName', 'defaultTab', 'hideActiveHeaderUnderline', 'hideHeaderUnderline', 'position', 'segmented', 'sizing', 'stopAutoplayOnContentHover', 'stopAutoplayOnHeaderHover', 'theme', 'type'],
|
|
1622
|
-
methods: ['toggleAutoplay', 'stopAutoplay', 'startAutoplay', 'selectTab']
|
|
1623
|
-
})
|
|
1624
|
-
], TetTabHeader);
|
|
1625
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetTabHeader, decorators: [{
|
|
1626
|
-
type: Component,
|
|
1627
|
-
args: [{
|
|
1628
|
-
selector: 'tet-tab-header',
|
|
1629
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1630
|
-
template: '<ng-content></ng-content>',
|
|
1631
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1632
|
-
inputs: ['autoplayDelay', 'darkMode', 'dataName', 'defaultTab', 'hideActiveHeaderUnderline', 'hideHeaderUnderline', 'position', 'segmented', 'sizing', 'stopAutoplayOnContentHover', 'stopAutoplayOnHeaderHover', 'theme', 'type'],
|
|
1633
|
-
}]
|
|
1634
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1635
|
-
export let TetTable = class TetTable {
|
|
1636
|
-
constructor(c, r, z) {
|
|
1637
|
-
this.z = z;
|
|
1638
|
-
c.detach();
|
|
1639
|
-
this.el = r.nativeElement;
|
|
1640
|
-
}
|
|
1641
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetTable, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1642
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetTable, selector: "tet-table", inputs: { caption: "caption", cellTextAlign: "cellTextAlign", fixedFirstColumn: "fixedFirstColumn", gappedColumnLayout: "gappedColumnLayout", tableData: "tableData", tableHeader: "tableHeader", tableHeaderColumnSpan: "tableHeaderColumnSpan", tableHeaderTextAlign: "tableHeaderTextAlign", tableHeaderWidth: "tableHeaderWidth", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1643
|
-
};
|
|
1644
|
-
TetTable = __decorate([
|
|
1645
|
-
ProxyCmp({
|
|
1646
|
-
inputs: ['caption', 'cellTextAlign', 'fixedFirstColumn', 'gappedColumnLayout', 'tableData', 'tableHeader', 'tableHeaderColumnSpan', 'tableHeaderTextAlign', 'tableHeaderWidth', 'theme']
|
|
1647
|
-
})
|
|
1648
|
-
], TetTable);
|
|
1649
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetTable, decorators: [{
|
|
1650
|
-
type: Component,
|
|
1651
|
-
args: [{
|
|
1652
|
-
selector: 'tet-table',
|
|
1653
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1654
|
-
template: '<ng-content></ng-content>',
|
|
1655
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1656
|
-
inputs: ['caption', 'cellTextAlign', 'fixedFirstColumn', 'gappedColumnLayout', 'tableData', 'tableHeader', 'tableHeaderColumnSpan', 'tableHeaderTextAlign', 'tableHeaderWidth', 'theme'],
|
|
1657
|
-
}]
|
|
1658
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1659
|
-
export let TetTag = class TetTag {
|
|
1660
|
-
constructor(c, r, z) {
|
|
1661
|
-
this.z = z;
|
|
1662
|
-
c.detach();
|
|
1663
|
-
this.el = r.nativeElement;
|
|
1664
|
-
}
|
|
1665
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetTag, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1666
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetTag, selector: "tet-tag", inputs: { active: "active", count: "count", disabled: "disabled", language: "language", showIcon: "showIcon", tagTitle: "tagTitle", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1667
|
-
};
|
|
1668
|
-
TetTag = __decorate([
|
|
1669
|
-
ProxyCmp({
|
|
1670
|
-
inputs: ['active', 'count', 'disabled', 'language', 'showIcon', 'tagTitle', 'theme']
|
|
1671
|
-
})
|
|
1672
|
-
], TetTag);
|
|
1673
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetTag, decorators: [{
|
|
1674
|
-
type: Component,
|
|
1675
|
-
args: [{
|
|
1676
|
-
selector: 'tet-tag',
|
|
1677
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1678
|
-
template: '<ng-content></ng-content>',
|
|
1679
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1680
|
-
inputs: ['active', 'count', 'disabled', 'language', 'showIcon', 'tagTitle', 'theme'],
|
|
1681
|
-
}]
|
|
1682
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1683
|
-
export let TetTagGroup = class TetTagGroup {
|
|
1684
|
-
constructor(c, r, z) {
|
|
1685
|
-
this.z = z;
|
|
1686
|
-
c.detach();
|
|
1687
|
-
this.el = r.nativeElement;
|
|
1688
|
-
}
|
|
1689
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetTagGroup, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1690
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetTagGroup, selector: "tet-tag-group", inputs: { language: "language", tags: "tags", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1691
|
-
};
|
|
1692
|
-
TetTagGroup = __decorate([
|
|
1693
|
-
ProxyCmp({
|
|
1694
|
-
inputs: ['language', 'tags', 'theme']
|
|
1695
|
-
})
|
|
1696
|
-
], TetTagGroup);
|
|
1697
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetTagGroup, decorators: [{
|
|
1698
|
-
type: Component,
|
|
1699
|
-
args: [{
|
|
1700
|
-
selector: 'tet-tag-group',
|
|
1701
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1702
|
-
template: '<ng-content></ng-content>',
|
|
1703
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1704
|
-
inputs: ['language', 'tags', 'theme'],
|
|
1705
|
-
}]
|
|
1706
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1707
|
-
export let TetTextList = class TetTextList {
|
|
1708
|
-
constructor(c, r, z) {
|
|
1709
|
-
this.z = z;
|
|
1710
|
-
c.detach();
|
|
1711
|
-
this.el = r.nativeElement;
|
|
1712
|
-
}
|
|
1713
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetTextList, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1714
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetTextList, selector: "tet-text-list", inputs: { decimalPrefix: "decimalPrefix", decimalStart: "decimalStart", listIcon: "listIcon", listType: "listType", theme: "theme", withIcon: "withIcon" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1715
|
-
};
|
|
1716
|
-
TetTextList = __decorate([
|
|
1717
|
-
ProxyCmp({
|
|
1718
|
-
inputs: ['decimalPrefix', 'decimalStart', 'listIcon', 'listType', 'theme', 'withIcon']
|
|
1719
|
-
})
|
|
1720
|
-
], TetTextList);
|
|
1721
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetTextList, decorators: [{
|
|
1722
|
-
type: Component,
|
|
1723
|
-
args: [{
|
|
1724
|
-
selector: 'tet-text-list',
|
|
1725
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1726
|
-
template: '<ng-content></ng-content>',
|
|
1727
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1728
|
-
inputs: ['decimalPrefix', 'decimalStart', 'listIcon', 'listType', 'theme', 'withIcon'],
|
|
1729
|
-
}]
|
|
1730
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1731
|
-
export let TetTextarea = class TetTextarea {
|
|
1732
|
-
constructor(c, r, z) {
|
|
1733
|
-
this.z = z;
|
|
1734
|
-
c.detach();
|
|
1735
|
-
this.el = r.nativeElement;
|
|
1736
|
-
}
|
|
1737
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetTextarea, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1738
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetTextarea, selector: "tet-textarea", inputs: { disabled: "disabled", errorMessages: "errorMessages", label: "label", placeholder: "placeholder", theme: "theme", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1739
|
-
};
|
|
1740
|
-
TetTextarea = __decorate([
|
|
1741
|
-
ProxyCmp({
|
|
1742
|
-
inputs: ['disabled', 'errorMessages', 'label', 'placeholder', 'theme', 'value']
|
|
1743
|
-
})
|
|
1744
|
-
], TetTextarea);
|
|
1745
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetTextarea, decorators: [{
|
|
1746
|
-
type: Component,
|
|
1747
|
-
args: [{
|
|
1748
|
-
selector: 'tet-textarea',
|
|
1749
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1750
|
-
template: '<ng-content></ng-content>',
|
|
1751
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1752
|
-
inputs: ['disabled', 'errorMessages', 'label', 'placeholder', 'theme', 'value'],
|
|
1753
|
-
}]
|
|
1754
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1755
|
-
export let TetThankYouView = class TetThankYouView {
|
|
1756
|
-
constructor(c, r, z) {
|
|
1757
|
-
this.z = z;
|
|
1758
|
-
c.detach();
|
|
1759
|
-
this.el = r.nativeElement;
|
|
1760
|
-
proxyOutputs(this, this.el, ['ctaButtonClick']);
|
|
1761
|
-
}
|
|
1762
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetThankYouView, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1763
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetThankYouView, selector: "tet-thank-you-view", inputs: { ctaButtonDescription: "ctaButtonDescription", ctaButtonLabel: "ctaButtonLabel", ctaButtonSize: "ctaButtonSize", ctaButtonType: "ctaButtonType", mainBlockDescription: "mainBlockDescription", mainBlockIcon: "mainBlockIcon", mainBlockTitle: "mainBlockTitle", stepperData: "stepperData", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1764
|
-
};
|
|
1765
|
-
TetThankYouView = __decorate([
|
|
1766
|
-
ProxyCmp({
|
|
1767
|
-
inputs: ['ctaButtonDescription', 'ctaButtonLabel', 'ctaButtonSize', 'ctaButtonType', 'mainBlockDescription', 'mainBlockIcon', 'mainBlockTitle', 'stepperData', 'theme']
|
|
1768
|
-
})
|
|
1769
|
-
], TetThankYouView);
|
|
1770
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetThankYouView, decorators: [{
|
|
1771
|
-
type: Component,
|
|
1772
|
-
args: [{
|
|
1773
|
-
selector: 'tet-thank-you-view',
|
|
1774
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1775
|
-
template: '<ng-content></ng-content>',
|
|
1776
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1777
|
-
inputs: ['ctaButtonDescription', 'ctaButtonLabel', 'ctaButtonSize', 'ctaButtonType', 'mainBlockDescription', 'mainBlockIcon', 'mainBlockTitle', 'stepperData', 'theme'],
|
|
1778
|
-
}]
|
|
1779
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1780
|
-
export let TetThankYouViewV2 = class TetThankYouViewV2 {
|
|
1781
|
-
constructor(c, r, z) {
|
|
1782
|
-
this.z = z;
|
|
1783
|
-
c.detach();
|
|
1784
|
-
this.el = r.nativeElement;
|
|
1785
|
-
proxyOutputs(this, this.el, ['ctaButtonClick']);
|
|
1786
|
-
}
|
|
1787
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetThankYouViewV2, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1788
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetThankYouViewV2, selector: "tet-thank-you-view-v2", inputs: { ctaButtonId: "ctaButtonId", ctaButtonLabel: "ctaButtonLabel", ctaButtonSize: "ctaButtonSize", ctaButtonTheme: "ctaButtonTheme", ctaButtonType: "ctaButtonType", icon: "icon", language: "language", mainBlockDescription: "mainBlockDescription", mainBlockTitle: "mainBlockTitle", stepperData: "stepperData", theme: "theme", translationGroup: "translationGroup" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1789
|
-
};
|
|
1790
|
-
TetThankYouViewV2 = __decorate([
|
|
1791
|
-
ProxyCmp({
|
|
1792
|
-
inputs: ['ctaButtonId', 'ctaButtonLabel', 'ctaButtonSize', 'ctaButtonTheme', 'ctaButtonType', 'icon', 'language', 'mainBlockDescription', 'mainBlockTitle', 'stepperData', 'theme', 'translationGroup']
|
|
1793
|
-
})
|
|
1794
|
-
], TetThankYouViewV2);
|
|
1795
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetThankYouViewV2, decorators: [{
|
|
1796
|
-
type: Component,
|
|
1797
|
-
args: [{
|
|
1798
|
-
selector: 'tet-thank-you-view-v2',
|
|
1799
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1800
|
-
template: '<ng-content></ng-content>',
|
|
1801
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1802
|
-
inputs: ['ctaButtonId', 'ctaButtonLabel', 'ctaButtonSize', 'ctaButtonTheme', 'ctaButtonType', 'icon', 'language', 'mainBlockDescription', 'mainBlockTitle', 'stepperData', 'theme', 'translationGroup'],
|
|
1803
|
-
}]
|
|
1804
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1805
|
-
export let TetThankYouViewV3 = class TetThankYouViewV3 {
|
|
1806
|
-
constructor(c, r, z) {
|
|
1807
|
-
this.z = z;
|
|
1808
|
-
c.detach();
|
|
1809
|
-
this.el = r.nativeElement;
|
|
1810
|
-
proxyOutputs(this, this.el, ['ctaButtonClick']);
|
|
1811
|
-
}
|
|
1812
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetThankYouViewV3, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1813
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetThankYouViewV3, selector: "tet-thank-you-view-v3", inputs: { ctaButtonId: "ctaButtonId", ctaButtonLabel: "ctaButtonLabel", ctaButtonSize: "ctaButtonSize", ctaButtonTheme: "ctaButtonTheme", ctaButtonType: "ctaButtonType", icon: "icon", language: "language", mainBlockDescription: "mainBlockDescription", mainBlockTitle: "mainBlockTitle", stepperData: "stepperData", theme: "theme", translationGroup: "translationGroup" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1814
|
-
};
|
|
1815
|
-
TetThankYouViewV3 = __decorate([
|
|
1816
|
-
ProxyCmp({
|
|
1817
|
-
inputs: ['ctaButtonId', 'ctaButtonLabel', 'ctaButtonSize', 'ctaButtonTheme', 'ctaButtonType', 'icon', 'language', 'mainBlockDescription', 'mainBlockTitle', 'stepperData', 'theme', 'translationGroup']
|
|
1818
|
-
})
|
|
1819
|
-
], TetThankYouViewV3);
|
|
1820
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetThankYouViewV3, decorators: [{
|
|
1821
|
-
type: Component,
|
|
1822
|
-
args: [{
|
|
1823
|
-
selector: 'tet-thank-you-view-v3',
|
|
1824
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1825
|
-
template: '<ng-content></ng-content>',
|
|
1826
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1827
|
-
inputs: ['ctaButtonId', 'ctaButtonLabel', 'ctaButtonSize', 'ctaButtonTheme', 'ctaButtonType', 'icon', 'language', 'mainBlockDescription', 'mainBlockTitle', 'stepperData', 'theme', 'translationGroup'],
|
|
1828
|
-
}]
|
|
1829
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1830
|
-
export let TetTooltip = class TetTooltip {
|
|
1831
|
-
constructor(c, r, z) {
|
|
1832
|
-
this.z = z;
|
|
1833
|
-
c.detach();
|
|
1834
|
-
this.el = r.nativeElement;
|
|
1835
|
-
}
|
|
1836
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetTooltip, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1837
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TetTooltip, selector: "tet-tooltip", inputs: { doNotShowOnHover: "doNotShowOnHover", hoverElement: "hoverElement", position: "position", targetElementSelector: "targetElementSelector", theme: "theme" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1838
|
-
};
|
|
1839
|
-
TetTooltip = __decorate([
|
|
1840
|
-
ProxyCmp({
|
|
1841
|
-
inputs: ['doNotShowOnHover', 'hoverElement', 'position', 'targetElementSelector', 'theme'],
|
|
1842
|
-
methods: ['show', 'hide', 'toggle']
|
|
1843
|
-
})
|
|
1844
|
-
], TetTooltip);
|
|
1845
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TetTooltip, decorators: [{
|
|
1846
|
-
type: Component,
|
|
1847
|
-
args: [{
|
|
1848
|
-
selector: 'tet-tooltip',
|
|
1849
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1850
|
-
template: '<ng-content></ng-content>',
|
|
1851
|
-
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1852
|
-
inputs: ['doNotShowOnHover', 'hoverElement', 'position', 'targetElementSelector', 'theme'],
|
|
1853
|
-
}]
|
|
1854
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1855
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RldC1jb21wb25lbnRzLWFuZ3VsYXIvc3JjL2xpYi9zdGVuY2lsLWdlbmVyYXRlZC9jb21wb25lbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxvQkFBb0I7QUFDcEIsOENBQThDO0FBQzlDLE9BQU8sRUFBRSx1QkFBdUIsRUFBcUIsU0FBUyxFQUFvQyxNQUFNLGVBQWUsQ0FBQztBQUV4SCxPQUFPLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxNQUFNLCtCQUErQixDQUFDOztBQWdCaEUsV0FBTSxZQUFZLEdBQWxCLE1BQU0sWUFBWTtJQUV2QixZQUFZLENBQW9CLEVBQUUsQ0FBYSxFQUFZLENBQVM7UUFBVCxNQUFDLEdBQUQsQ0FBQyxDQUFRO1FBQ2xFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNYLElBQUksQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLGFBQWEsQ0FBQztRQUMxQixZQUFZLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBQy9DLENBQUM7OEdBTlUsWUFBWTtrR0FBWixZQUFZLG1ZQUpiLDJCQUEyQjs7QUFJMUIsWUFBWTtJQVh4QixRQUFRLENBQUM7UUFDUixNQUFNLEVBQUUsQ0FBQyxZQUFZLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixFQUFFLGdCQUFnQixFQUFFLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGdCQUFnQixFQUFFLFlBQVksQ0FBQztRQUNwTCxPQUFPLEVBQUUsQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFDO0tBQzdELENBQUM7R0FRVyxZQUFZLENBT3hCOzJGQVBZLFlBQVk7a0JBUHhCLFNBQVM7bUJBQUM7b0JBQ1Qs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UTtRQUNsRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDWCxJQUFJLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQzs4R0FMVSxVQUFVO2tHQUFWLFVBQVUseU5BSlgsMkJBQTJCOztBQUkxQixVQUFVO0lBWHRCLFFBQVEsQ0FBQztRQUNSLE1BQU0sRUFBRSxDQUFDLGtCQUFrQixFQUFFLGNBQWMsRUFBRSxVQUFVLEVBQUUsdUJBQXVCLEVBQUUsT0FBTyxDQUFDO1FBQzFGLE9BQU8sRUFBRSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsUUFBUSxDQUFDO0tBQ3BDLENBQUM7R0FRVyxVQUFVLENBTXRCOzJGQU5ZLFVBQVU7a0JBUHRCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGFBQWE7b0JBQ3ZCLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxRQUFRLEVBQUUsMkJBQTJCO29CQUNyQyx1RUFBdUU7b0JBQ3ZFLE1BQU0sRUFBRSxDQUFDLGtCQUFrQixFQUFFLGNBQWMsRUFBRSxVQUFVLEVBQUUsdUJBQXVCLEVBQUUsT0FBTyxDQUFDO2lCQUMzRiIsInNvdXJjZXNDb250ZW50IjpbIi8qIHRzbGludDpkaXNhYmxlICovXG4vKiBhdXRvLWdlbmVyYXRlZCBhbmd1bGFyIGRpcmVjdGl2ZSBwcm94aWVzICovXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgUHJveHlDbXAsIHByb3h5T3V0cHV0cyB9IGZyb20gJy4vYW5ndWxhci1jb21wb25lbnQtbGliL3V0aWxzJztcblxuaW1wb3J0IHsgQ29tcG9uZW50cyB9IGZyb20gJ0B0ZXQvdGV0LWNvbXBvbmVudHMnO1xuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydicmVha3BvaW50JywgJ2hlYWRlcicsICdoZWFkZXJJbWFnZUFsdCcsICdoZWFkZXJJbWFnZVNyYycsICdoZWFkaW5nVGFnJywgJ2luZGljYXRvckRpcmVjdGlvbicsICdpc09wZW4nLCAndGhlbWUnLCAndHJhbnNwYXJlbnRCYWNrZ3JvdW5kJywgJ3dpdGhBdXRvU2Nyb2xsJywgJ3dpdGhCb3JkZXInXSxcbiAgbWV0aG9kczogWydvcGVuJywgJ2Nsb3NlJywgJ3RvZ2dsZScsICdnZXRTdGF0ZScsICdzZXRTdGF0ZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LWFjY29yZGlvbicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnYnJlYWtwb2ludCcsICdoZWFkZXInLCAnaGVhZGVySW1hZ2VBbHQnLCAnaGVhZGVySW1hZ2VTcmMnLCAnaGVhZGluZ1RhZycsICdpbmRpY2F0b3JEaXJlY3Rpb24nLCAnaXNPcGVuJywgJ3RoZW1lJywgJ3RyYW5zcGFyZW50QmFja2dyb3VuZCcsICd3aXRoQXV0b1Njcm9sbCcsICd3aXRoQm9yZGVyJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRldEFjY29yZGlvbiB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ29wZW5DaGFuZ2VkJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRldEFjY29yZGlvbiBleHRlbmRzIENvbXBvbmVudHMuVGV0QWNjb3JkaW9uIHtcbiAgLyoqXG4gICAqIFRoZSBldmVudCB0byBiZSBlbWl0dGVkIG9uIHRoZSBgaXNPcGVuYCB2YWx1ZSBjaGFuZ2UuXG4gICAqL1xuICBvcGVuQ2hhbmdlZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGJvb2xlYW4+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY2F0YWxvZycsICdjYXRlZ29yeScsICdjbGVhckZpbHRlckJ1dHRvbicsICdsYW5ndWFnZScsICdwcm9kdWN0Q29kZXMnLCAnc3ViY2F0ZWdvcnlJZCcsICd0aGVtZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LWFkZHJlc3Mtb2ZmZXJzLWZpbHRlcnMtcHJvZHVjdHMnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NhdGFsb2cnLCAnY2F0ZWdvcnknLCAnY2xlYXJGaWx0ZXJCdXR0b24nLCAnbGFuZ3VhZ2UnLCAncHJvZHVjdENvZGVzJywgJ3N1YmNhdGVnb3J5SWQnLCAndGhlbWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0QWRkcmVzc09mZmVyc0ZpbHRlcnNQcm9kdWN0cyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2FjdGl2ZUZpbHRlcnNDaGFuZ2VkJywgJ2ZpbHRlcmVkUHJvZHVjdHNDaGFuZ2VkJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRldEFkZHJlc3NPZmZlcnNGaWx0ZXJzUHJvZHVjdHMgZXh0ZW5kcyBDb21wb25lbnRzLlRldEFkZHJlc3NPZmZlcnNGaWx0ZXJzUHJvZHVjdHMge1xuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIGFjdGl2ZSBmaWx0ZXJzIGNoYW5nZSwgc2VuZGluZyBhcnJheSBvZiBhY3RpdmUgZmlsdGVyIElEcy5cbiAgICovXG4gIGFjdGl2ZUZpbHRlcnNDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8c3RyaW5nW10+PjtcbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiBmaWx0ZXJlZCBwcm9kdWN0cyBjaGFuZ2UsIHNlbmRpbmcgc3ViY2F0ZWdvcnkgSUQgYW5kIGFycmF5IG9mIGZpbHRlcmVkIHByb2R1Y3QgSURzLlxuICAgKi9cbiAgZmlsdGVyZWRQcm9kdWN0c0NoYW5nZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx7IHN1YmNhdGVnb3J5SWQ6IHN0cmluZzsgZmlsdGVyZWRQcm9kdWN0SWRzOiBzdHJpbmdbXSB9Pj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FjY2Vzc2liaWxpdHlMYWJlbCcsICdhZGRyZXNzS2V5JywgJ2Nsb3NlQnV0dG9uVGV4dCcsICdpbnB1dERpc2FibGVkJywgJ2lzSW5wdXRJbnZhbGlkJywgJ2xhYmVsJywgJ2xhbmd1YWdlJywgJ21hbnVhbEFkZHJlc3NUcmlnZ2VycycsICdtaW5TZWFyY2hLZXl3b3JkTGVuZ3RoJywgJ25ld0Zvcm1zU3R5bGUnLCAnbmV3U3R5bGUnLCAncGxhY2Vob2xkZXInLCAncmVkZXNpZ25lZFN0eWxlJywgJ3NlYXJjaEJ1dHRvblRleHQnLCAndGhlbWUnXSxcbiAgbWV0aG9kczogWydyZXNldElucHV0U3RhdGUnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC1hZGRyZXNzLXNlYXJjaCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnYWNjZXNzaWJpbGl0eUxhYmVsJywgJ2FkZHJlc3NLZXknLCAnY2xvc2VCdXR0b25UZXh0JywgJ2lucHV0RGlzYWJsZWQnLCAnaXNJbnB1dEludmFsaWQnLCAnbGFiZWwnLCAnbGFuZ3VhZ2UnLCAnbWFudWFsQWRkcmVzc1RyaWdnZXJzJywgJ21pblNlYXJjaEtleXdvcmRMZW5ndGgnLCAnbmV3Rm9ybXNTdHlsZScsICduZXdTdHlsZScsICdwbGFjZWhvbGRlcicsICdyZWRlc2lnbmVkU3R5bGUnLCAnc2VhcmNoQnV0dG9uVGV4dCcsICd0aGVtZSddLFxufSlcbmV4cG9ydCBjbGFzcyBUZXRBZGRyZXNzU2VhcmNoIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYWRkcmVzc1NlbGVjdGVkJywgJ2NsZWFySW5wdXRGaWVsZCcsICdtYW51YWxBZGRyZXNzSW5wdXQnLCAnc2VhcmNoU3VibWl0dGVkJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBBZGRyZXNzSW50ZXJmYWNlIGFzIElUZXRBZGRyZXNzU2VhcmNoQWRkcmVzc0ludGVyZmFjZSB9IGZyb20gJ0B0ZXQvdGV0LWNvbXBvbmVudHMnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0QWRkcmVzc1NlYXJjaCBleHRlbmRzIENvbXBvbmVudHMuVGV0QWRkcmVzc1NlYXJjaCB7XG4gIC8qKlxuICAgKiBUaGUgZXZlbnQgdGhhdCBpcyBlbWl0dGVkIHdoZW4gdGhlIHVzZXIgc2VsZWN0cyBhbiBhZGRyZXNzIHZpYSBhdXRvY29tcGxldGUuXG4gICAqL1xuICBhZGRyZXNzU2VsZWN0ZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJVGV0QWRkcmVzc1NlYXJjaEFkZHJlc3NJbnRlcmZhY2U+PjtcbiAgLyoqXG4gICAqIFRoZSBldmVudCB0aGF0IGlzIGVtaXR0ZWQgd2hlbiB0aGUgaW5wdXQgZmllbGQgaXMgY2xlYXJlZCBhdXRvbWF0aWNhbGx5LlxuICAgKi9cbiAgY2xlYXJJbnB1dEZpZWxkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8YW55Pj47XG4gIC8qKlxuICAgKiBUaGUgZXZlbnQgdGhhdCBpcyBlbWl0dGVkIHdoZW4gdGhlIHVzZXIgc2VsZWN0cyB0aGUgbWFudWFsIGFkZHJlc3MgaW5wdXQgb3B0aW9uLlxuICAgKi9cbiAgbWFudWFsQWRkcmVzc0lucHV0OiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8YW55Pj47XG4gIC8qKlxuICAgKiBUaGUgZXZlbnQgdGhhdCBpcyBlbWl0dGVkIHdoZW4gdGhlIHVzZXIgY2xpY2tzIHRoZSBzZWFyY2ggYnV0dG9uLlxuICAgKi9cbiAgc2VhcmNoU3VibWl0dGVkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8c3RyaW5nPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FjY2Vzc1Rva2VuJywgJ2FkZHJlc3NTZWFyY2hMYWJlbCcsICdhZGRyZXNzU2VhcmNoUGxhY2Vob2xkZXInLCAncGlkJywgJ3NhbGVzZm9yY2VBY2NvdW50SWQnLCAndGhlbWUnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC1hc3NldC1hZGRyZXNzZXMnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FjY2Vzc1Rva2VuJywgJ2FkZHJlc3NTZWFyY2hMYWJlbCcsICdhZGRyZXNzU2VhcmNoUGxhY2Vob2xkZXInLCAncGlkJywgJ3NhbGVzZm9yY2VBY2NvdW50SWQnLCAndGhlbWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0QXNzZXRBZGRyZXNzZXMge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydhc3NldEFkZHJlc3NTZWxlY3RlZCcsICdhZGRyZXNzZXNVcGRhdGVkJywgJ2N1c3RvbWVyTm90Rm91bmQnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFVuaXF1ZUFkZHJlc3NJbnRlcmZhY2UgYXMgSVRldEFzc2V0QWRkcmVzc2VzVW5pcXVlQWRkcmVzc0ludGVyZmFjZSB9IGZyb20gJ0B0ZXQvdGV0LWNvbXBvbmVudHMnO1xuaW1wb3J0IHR5cGUgeyBDdXN0b21lck5vdEZvdW5kIGFzIElUZXRBc3NldEFkZHJlc3Nlc0N1c3RvbWVyTm90Rm91bmQgfSBmcm9tICdAdGV0L3RldC1jb21wb25lbnRzJztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRldEFzc2V0QWRkcmVzc2VzIGV4dGVuZHMgQ29tcG9uZW50cy5UZXRBc3NldEFkZHJlc3NlcyB7XG4gIC8qKlxuICAgKiBUaGUgZXZlbnQgdGhhdCBpcyBlbWl0dGVkIHdoZW4gdXNlciBzZWxlY3RzIGFuIGFkZHJlc3MgZnJvbSB0aGUgbGlzdC5cbiAgICovXG4gIGFzc2V0QWRkcmVzc1NlbGVjdGVkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVRldEFzc2V0QWRkcmVzc2VzVW5pcXVlQWRkcmVzc0ludGVyZmFjZT4+O1xuICAvKipcbiAgICogVGhlIGV2ZW50IHRoYXQgaXMgZW1pdHRlZCB3aGVuZXZlciBhZGRyZXNzZXMgY2hhbmdlLlxuICAgKi9cbiAgYWRkcmVzc2VzVXBkYXRlZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElUZXRBc3NldEFkZHJlc3Nlc1VuaXF1ZUFkZHJlc3NJbnRlcmZhY2VbXT4+O1xuICAvKipcbiAgICogVGhlIGV2ZW50IHRoYXQgaXMgZW1pdHRlZCB3aGVuIG5vIFNhbGVzZm9yY2UgY3VzdG9tZXIgaXMgZm91bmQgZm9yIHRoZSBnaXZlbiBQSUQuXG4gICAqL1xuICBjdXN0b21lck5vdEZvdW5kOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVRldEFzc2V0QWRkcmVzc2VzQ3VzdG9tZXJOb3RGb3VuZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhY2Nlc3NUb2tlbicsICdhZGRyZXNzU2VhcmNoTGFiZWwnLCAnYWRkcmVzc1NlYXJjaFBsYWNlaG9sZGVyJywgJ3BpZCcsICdzYWxlc2ZvcmNlQWNjb3VudElkJywgJ3RoZW1lJ10sXG4gIG1ldGhvZHM6IFsndW5zZWxlY3RBc3NldEFkZHJlc3NlcyddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LWFzc2V0LWF2YWlsYWJpbGl0eS1hZGRyZXNzZXMnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FjY2Vzc1Rva2VuJywgJ2FkZHJlc3NTZWFyY2hMYWJlbCcsICdhZGRyZXNzU2VhcmNoUGxhY2Vob2xkZXInLCAncGlkJywgJ3NhbGVzZm9yY2VBY2NvdW50SWQnLCAndGhlbWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0QXNzZXRBdmFpbGFiaWxpdHlBZGRyZXNzZXMge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydhc3NldEFkZHJlc3NTZWxlY3RlZCcsICdhZGRyZXNzZXNVcGRhdGVkJywgJ2N1c3RvbWVyTm90Rm91bmQnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFVuaXF1ZUFkZHJlc3NJbnRlcmZhY2UgYXMgSVRldEFzc2V0QXZhaWxhYmlsaXR5QWRkcmVzc2VzVW5pcXVlQWRkcmVzc0ludGVyZmFjZSB9IGZyb20gJ0B0ZXQvdGV0LWNvbXBvbmVudHMnO1xuaW1wb3J0IHR5cGUgeyBDdXN0b21lck5vdEZvdW5kIGFzIElUZXRBc3NldEF2YWlsYWJpbGl0eUFkZHJlc3Nlc0N1c3RvbWVyTm90Rm91bmQgfSBmcm9tICdAdGV0L3RldC1jb21wb25lbnRzJztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRldEFzc2V0QXZhaWxhYmlsaXR5QWRkcmVzc2VzIGV4dGVuZHMgQ29tcG9uZW50cy5UZXRBc3NldEF2YWlsYWJpbGl0eUFkZHJlc3NlcyB7XG4gIC8qKlxuICAgKiBUaGUgZXZlbnQgdGhhdCBpcyBlbWl0dGVkIHdoZW4gdXNlciBzZWxlY3RzIGFuIGFkZHJlc3MgZnJvbSB0aGUgbHNpdC5cbiAgICovXG4gIGFzc2V0QWRkcmVzc1NlbGVjdGVkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVRldEFzc2V0QXZhaWxhYmlsaXR5QWRkcmVzc2VzVW5pcXVlQWRkcmVzc0ludGVyZmFjZT4+O1xuICAvKipcbiAgICogVGhlIGV2ZW50IHRoYXQgaXMgZW1pdHRlZCB3aGVuZXZlciBhZGRyZXNzZXMgY2hhbmdlLlxuICAgKi9cbiAgYWRkcmVzc2VzVXBkYXRlZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElUZXRBc3NldEF2YWlsYWJpbGl0eUFkZHJlc3Nlc1VuaXF1ZUFkZHJlc3NJbnRlcmZhY2VbXT4+O1xuICAvKipcbiAgICogVGhlIGV2ZW50IHRoYXQgaXMgZW1pdHRlZCB3aGVuIG5vIFNhbGVzZm9yY2UgY3VzdG9tZXIgaXMgZm91bmQgZm9yIHRoZSBnaXZlbiBQSUQuXG4gICAqL1xuICBjdXN0b21lck5vdEZvdW5kOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVRldEFzc2V0QXZhaWxhYmlsaXR5QWRkcmVzc2VzQ3VzdG9tZXJOb3RGb3VuZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjbGVhckNhbGxiYWNrJywgJ2RhcmtUaGVtZScsICdkZWZhdWx0T3B0aW9ucycsICdmaW5pc2hlZExvYWRpbmcnLCAnaGlnaGxpZ2h0T3B0aW9uc0tleXdvcmQnLCAnbmV3U3R5bGUnLCAnbm9PcHRpb25zTWVzc2FnZScsICdub09wdGlvbnNSZW5kZXJGdW5jdGlvbicsICdvcHRpb25zRmlsdGVyQWN0aW9uJywgJ29wdGlvbnNJY29uJywgJ3JlZGVzaWduZWRTdHlsZScsICdzaG93T3B0aW9uc09uRXNjYXBlQ2xlYXInXSxcbiAgbWV0aG9kczogWydjbGVhcicsICdmb2N1c09uTmF0aXZlSW5wdXQnLCAnc2VsZWN0T3B0aW9uJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXQtYXV0b2NvbXBsZXRlJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjbGVhckNhbGxiYWNrJywgJ2RhcmtUaGVtZScsICdkZWZhdWx0T3B0aW9ucycsICdmaW5pc2hlZExvYWRpbmcnLCAnaGlnaGxpZ2h0T3B0aW9uc0tleXdvcmQnLCAnbmV3U3R5bGUnLCAnbm9PcHRpb25zTWVzc2FnZScsICdub09wdGlvbnNSZW5kZXJGdW5jdGlvbicsICdvcHRpb25zRmlsdGVyQWN0aW9uJywgJ29wdGlvbnNJY29uJywgJ3JlZGVzaWduZWRTdHlsZScsICdzaG93T3B0aW9uc09uRXNjYXBlQ2xlYXInXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0QXV0b2NvbXBsZXRlIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnb3B0aW9uU2VsZWN0ZWQnLCAnYWN0aXZlQ29tcG9uZW50U3RhdGVDaGFuZ2VkJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBPcHRpb25JbnRlcmZhY2UgYXMgSVRldEF1dG9jb21wbGV0ZU9wdGlvbkludGVyZmFjZSB9IGZyb20gJ0B0ZXQvdGV0LWNvbXBvbmVudHMnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0QXV0b2NvbXBsZXRlIGV4dGVuZHMgQ29tcG9uZW50cy5UZXRBdXRvY29tcGxldGUge1xuICAvKipcbiAgICogVGhlIGF1dG9jb21wbGV0ZSBvcHRpb24gc2VsZWN0aW9uIGV2ZW50LlxuICAgKi9cbiAgb3B0aW9uU2VsZWN0ZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJVGV0QXV0b2NvbXBsZXRlT3B0aW9uSW50ZXJmYWNlPj47XG4gIC8qKlxuICAgKiBFbWl0cyBcInRldC1hdXRvY29tcGxldGVcIiB1bmlxdWUgaWQsIHdoZW4gYW4gYXR0ZW1wdCB0byBvcGVuIHNlbGVjdGlvbiBvcHRpb25zIGlzIGlkZW50aWZpZWQuXG4gICAqL1xuICBhY3RpdmVDb21wb25lbnRTdGF0ZUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxzdHJpbmcgfCBudWxsPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2RlZmF1bHRPcHRpb24nLCAnZXJyb3JNZXNzYWdlJywgJ2hhc0Vycm9yJywgJ2xhYmVsJywgJ25vT3B0aW9uc01lc3NhZ2UnLCAnb3B0aW9ucycsICdwbGFjZWhvbGRlcicsICd0aGVtZSddLFxuICBtZXRob2RzOiBbJ2NsZWFySW5wdXQnLCAnZm9jdXNPbk5hdGl2ZUlucHV0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXQtYXV0b2NvbXBsZXRlLWRyb3Bkb3duJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydkZWZhdWx0T3B0aW9uJywgJ2Vycm9yTWVzc2FnZScsICdoYXNFcnJvcicsICdsYWJlbCcsICdub09wdGlvbnNNZXNzYWdlJywgJ29wdGlvbnMnLCAncGxhY2Vob2xkZXInLCAndGhlbWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0QXV0b2NvbXBsZXRlRHJvcGRvd24ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydvcHRpb25TZWxlY3RlZCcsICdpbnB1dFZhbHVlQ2xlYXJlZCcsICdpbnB1dFZhbHVlQ2hhbmdlZCddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgT3B0aW9uSW50ZXJmYWNlIGFzIElUZXRBdXRvY29tcGxldGVEcm9wZG93bk9wdGlvbkludGVyZmFjZSB9IGZyb20gJ0B0ZXQvdGV0LWNvbXBvbmVudHMnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0QXV0b2NvbXBsZXRlRHJvcGRvd24gZXh0ZW5kcyBDb21wb25lbnRzLlRldEF1dG9jb21wbGV0ZURyb3Bkb3duIHtcbiAgLyoqXG4gICAqIEV2ZW50IHRoYXQgaXMgZW1pdHRlZCB3aGVuIGFuIG9wdGlvbiBpcyBzZWxlY3RlZC5cbiAgICovXG4gIG9wdGlvblNlbGVjdGVkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVRldEF1dG9jb21wbGV0ZURyb3Bkb3duT3B0aW9uSW50ZXJmYWNlPj47XG4gIC8qKlxuICAgKiBFdmVudCB0aGF0IGlzIGVtaXR0ZWQgd2hlbiB0aGUgaW5wdXQgdmFsdWUgaXMgY2xlYXJlZC5cbiAgICovXG4gIGlucHV0VmFsdWVDbGVhcmVkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8dm9pZD4+O1xuICAvKipcbiAgICogRXZlbnQgdGhhdCBpcyBlbWl0dGVkIHdoZW4gdGhlIHNlbGVjdGVkIG9wdGlvbiBpbnB1dCB2YWx1ZSBoYXMgYmVlbiBjaGFuZ2VkLlxuICAgKi9cbiAgaW5wdXRWYWx1ZUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxzdHJpbmc+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZGFya1RoZW1lJywgJ2xhbmd1YWdlJywgJ3Nob3dBdmFpbGFiaWxpdHlDb250YWN0Rm9ybScsICdzaG93SW5wdXRMYWJlbCcsICdzaG93VGl0bGUnLCAnc3VibWl0QnV0dG9uUHJvcHMnLCAnc3VidGl0bGUnLCAnc3VjY2VzcycsICd0YXNrT3B0aW9ucycsICd0aGVtZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LWF2YWlsYWJpbGl0eS1jb250YWN0LWZvcm0nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2RhcmtUaGVtZScsICdsYW5ndWFnZScsICdzaG93QXZhaWxhYmlsaXR5Q29udGFjdEZvcm0nLCAnc2hvd0lucHV0TGFiZWwnLCAnc2hvd1RpdGxlJywgJ3N1Ym1pdEJ1dHRvblByb3BzJywgJ3N1YnRpdGxlJywgJ3N1Y2Nlc3MnLCAndGFza09wdGlvbnMnLCAndGhlbWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0QXZhaWxhYmlsaXR5Q29udGFjdEZvcm0ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWyd0YXNrQ3JlYXRpb25TdWNjZXNzJywgJ3Rhc2tDcmVhdGlvbkZhaWxlZCddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXRBdmFpbGFiaWxpdHlDb250YWN0Rm9ybSBleHRlbmRzIENvbXBvbmVudHMuVGV0QXZhaWxhYmlsaXR5Q29udGFjdEZvcm0ge1xuICAvKipcbiAgICogVGhlIGV2ZW50IGVtaXR0ZWQgaWYgdGhlIHRhc2sgY3JlYXRpb24gd2FzIHN1Y2Nlc3NmdWwuXG4gICAqL1xuICB0YXNrQ3JlYXRpb25TdWNjZXNzOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8c3RyaW5nPj47XG4gIC8qKlxuICAgKiBUaGUgZXZlbnQgZW1pdHRlZCBpZiB0aGUgdGFzayBjcmVhdGlvbiBmYWlsZWQuXG4gICAqL1xuICB0YXNrQ3JlYXRpb25GYWlsZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx2b2lkPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2xhbmd1YWdlJywgJ3RoZW1lJ10sXG4gIG1ldGhvZHM6IFsnb3BlbicsICdjbG9zZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LWIyYi1jaGVjay1vdXQtZm9ybScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnbGFuZ3VhZ2UnLCAndGhlbWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0QjJiQ2hlY2tPdXRGb3JtIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc3VibWl0LWNoZWNrLW91dC1mb3JtJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRldEIyYkNoZWNrT3V0Rm9ybSBleHRlbmRzIENvbXBvbmVudHMuVGV0QjJiQ2hlY2tPdXRGb3JtIHtcbiAgLyoqXG4gICAqIEV2ZW50IGVtaXQgd2hlbiBmb3JtIGZpbGxlZCBzdWNjZXNzZnVsbHlcbiAgICovXG4gICdzdWJtaXQtY2hlY2stb3V0LWZvcm0nOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8YW55Pj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NvdW50JywgJ2lzU2VsZWN0ZWQnLCAnb3B0aW9ucycsICd0aGVtZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LWIyYi1jb21wYXJlLWNhcmQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NvdW50JywgJ2lzU2VsZWN0ZWQnLCAnb3B0aW9ucycsICd0aGVtZSddLFxufSlcbmV4cG9ydCBjbGFzcyBUZXRCMmJDb21wYXJlQ2FyZCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2NvdW50Q2hhbmdlJywgJ3NlbGVjdGVkQ2hhbmdlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBCMmJDYXJkVXBkYXRlRXZlbnQgYXMgSVRldEIyYkNvbXBhcmVDYXJkQjJiQ2FyZFVwZGF0ZUV2ZW50IH0gZnJvbSAnQHRldC90ZXQtY29tcG9uZW50cyc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXRCMmJDb21wYXJlQ2FyZCBleHRlbmRzIENvbXBvbmVudHMuVGV0QjJiQ29tcGFyZUNhcmQge1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSB1c2VyIGNoYW5nZXMgdGhlIHF1YW50aXR5IGNvdW50ZXIgdmFsdWUgYW5kIHN1Ym1pdHM7IG9yIG9uIGNhcmQgY2xvc2UgZXZlbnQuIEBldmVudCB1bmRlZmluZWRcbiAgICovXG4gIGNvdW50Q2hhbmdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVRldEIyYkNvbXBhcmVDYXJkQjJiQ2FyZFVwZGF0ZUV2ZW50Pj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGNhcmQgaXMgY2xpY2tlZCB0byBjaGFuZ2UgaXRzIHNlbGVjdGVkIHN0YXRlIEBldmVudCB1bmRlZmluZWRcbiAgICovXG4gIHNlbGVjdGVkQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8Ym9vbGVhbj4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydzdGlja3lSZWZFbCcsICd0aGVtZSddLFxuICBtZXRob2RzOiBbJ3NldFN1Ym1pdEZvcm1TdGF0ZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LWIyYi1jb25maWd1cmF0b3InLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ3N0aWNreVJlZkVsJywgJ3RoZW1lJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRldEIyYkNvbmZpZ3VyYXRvciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2NvbXBhcmVMaW5rQ2xpY2snLCAnYjJiQ29uZmlndXJhdG9yU3VibWl0JywgJ3N1Y2Nlc3NDbG9zZUNsaWNrJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBCMkJTdWJtaXQgYXMgSVRldEIyYkNvbmZpZ3VyYXRvckIyQlN1Ym1pdCB9IGZyb20gJ0B0ZXQvdGV0LWNvbXBvbmVudHMnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0QjJiQ29uZmlndXJhdG9yIGV4dGVuZHMgQ29tcG9uZW50cy5UZXRCMmJDb25maWd1cmF0b3Ige1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBjb21wYXJlIGxpbmsgZm9yIGEgY2F0ZWdvcnkgaXMgY2xpY2tlZC5cbiAgICovXG4gIGNvbXBhcmVMaW5rQ2xpY2s6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxzdHJpbmc+PjtcbiAgLyoqXG4gICAqIFRoZSBzdWJtaXQgZXZlbnQgb2YgdGhlIEIyQiBjb25maWd1cmF0b3IuXG4gICAqL1xuICBiMmJDb25maWd1cmF0b3JTdWJtaXQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJVGV0QjJiQ29uZmlndXJhdG9yQjJCU3VibWl0Pj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGNsb3NlIGJ1dHRvbiBvZiBzdWNjZXNzIG1vZGFsIGlzIGNsaWNrZWQuXG4gICAqL1xuICBzdWNjZXNzQ2xvc2VDbGljazogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGFueT4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjb250ZXh0JywgJ2RhdGEnLCAnaXNDYXJ0RW1wdHknLCAnaXNEZXNrdG9wUmVzb2x1dGlvbicsICd0aGVtZSddLFxuICBtZXRob2RzOiBbJ2NoYW5nZUJsb2NrU3RhdGUnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC1iMmItY29uZmlndXJhdG9yLWNhcnQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NvbnRleHQnLCAnZGF0YScsICdpc0NhcnRFbXB0eScsICdpc0Rlc2t0b3BSZXNvbHV0aW9uJywgJ3RoZW1lJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRldEIyYkNvbmZpZ3VyYXRvckNhcnQge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXRCMmJDb25maWd1cmF0b3JDYXJ0IGV4dGVuZHMgQ29tcG9uZW50cy5UZXRCMmJDb25maWd1cmF0b3JDYXJ0IHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2R1cmF0aW9uJywgJ2xhbmd1YWdlJywgJ21vYmlsZUxheW91dCcsICdwYXVzZWQnLCAnc2xpZGVzJywgJ3RoZW1lJ10sXG4gIG1ldGhvZHM6IFsncGF1c2UnLCAncGxheScsICdnb1RvJywgJ25leHQnLCAncHJldmlvdXMnLCAnZ2V0Q3VycmVudFNsaWRlJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXQtYmFubmVyLW5hdicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnZHVyYXRpb24nLCAnbGFuZ3VhZ2UnLCAnbW9iaWxlTGF5b3V0JywgJ3BhdXNlZCcsICdzbGlkZXMnLCAndGhlbWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0QmFubmVyTmF2IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2xpZGVDaGFuZ2UnLCAncGF1c2VTdGF0ZUNoYW5nZSddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXRCYW5uZXJOYXYgZXh0ZW5kcyBDb21wb25lbnRzLlRldEJhbm5lck5hdiB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gc2xpZGUgY2hhbmdlc1xuICAgKi9cbiAgc2xpZGVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx7IGluZGV4OiBudW1iZXI7IHByZXZpb3VzSW5kZXg6IG51bWJlcjsgc291cmNlIDogc3RyaW5nIH0+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiBwYXVzZSBzdGF0ZSBjaGFuZ2VzXG4gICAqL1xuICBwYXVzZVN0YXRlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8eyBwYXVzZWQ6IGJvb2xlYW4gfT4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhbmltYXRpb25EdXJhdGlvbicsICdkYXRhJywgJ2RhdGFPcmRlcicsICdsYWJlbFBvc2l0aW9uJywgJ21heFZhbHVlJywgJ21pblZhbHVlJywgJ3BhcmVudENvbnRhaW5lcicsICdzaXplJywgJ3RoZW1lJywgJ3ZhbHVlUG9zaXRpb24nLCAndmFsdWVVbml0JywgJ3dpdGhHcmlkJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXQtYmFyLWdyYXBoJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhbmltYXRpb25EdXJhdGlvbicsICdkYXRhJywgJ2RhdGFPcmRlcicsICdsYWJlbFBvc2l0aW9uJywgJ21heFZhbHVlJywgJ21pblZhbHVlJywgJ3BhcmVudENvbnRhaW5lcicsICdzaXplJywgJ3RoZW1lJywgJ3ZhbHVlUG9zaXRpb24nLCAndmFsdWVVbml0JywgJ3dpdGhHcmlkJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRldEJhckdyYXBoIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0QmFyR3JhcGggZXh0ZW5kcyBDb21wb25lbnRzLlRldEJhckdyYXBoIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FkZHJlc3NLZXknLCAnbGFuZ3VhZ2UnLCAnc2hvd0hlYWRpbmdzJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXQtYnVzaW5lc3MtbGluZXMnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FkZHJlc3NLZXknLCAnbGFuZ3VhZ2UnLCAnc2hvd0hlYWRpbmdzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRldEJ1c2luZXNzTGluZXMge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydidXNpbmVzc0xpbmVTZWxlY3RlZCddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgQnVzaW5lc3NMaW5lIGFzIElUZXRCdXNpbmVzc0xpbmVzQnVzaW5lc3NMaW5lIH0gZnJvbSAnQHRldC90ZXQtY29tcG9uZW50cyc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXRCdXNpbmVzc0xpbmVzIGV4dGVuZHMgQ29tcG9uZW50cy5UZXRCdXNpbmVzc0xpbmVzIHtcbiAgLyoqXG4gICAqIFRoZSBldmVudCB0aGF0IGlzIGVtaXR0ZWQgd2hlbiBidXNpbmVzcyBsaW5lIGlzIHNlbGVjdGVkLlxuICAgKi9cbiAgYnVzaW5lc3NMaW5lU2VsZWN0ZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJVGV0QnVzaW5lc3NMaW5lc0J1c2luZXNzTGluZT4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydtZW51SXRlbXMnLCAndGhlbWUnXSxcbiAgbWV0aG9kczogWydzZWxlY3RNZW51SXRlbSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LWJ1c2luZXNzLW5hdmlnYXRpb24nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ21lbnVJdGVtcycsICd0aGVtZSddLFxufSlcbmV4cG9ydCBjbGFzcyBUZXRCdXNpbmVzc05hdmlnYXRpb24ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydtZW51LWNsaWNrLWV2ZW50J10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRldEJ1c2luZXNzTmF2aWdhdGlvbiBleHRlbmRzIENvbXBvbmVudHMuVGV0QnVzaW5lc3NOYXZpZ2F0aW9uIHtcbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZXIgZm9yIG1lbnUgaXRlbSBjbGljayBwYXNzaW5nIG1lbnUgaWRcbiAgICovXG4gICdtZW51LWNsaWNrLWV2ZW50JzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHsgaWQ6IG51bWJlciB9Pj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2xheW91dCcsICdzdGVwcGVyRGF0YScsICd0aGVtZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LWJ1c2luZXNzLXJvdW5kLXN0ZXBwZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2xheW91dCcsICdzdGVwcGVyRGF0YScsICd0aGVtZSddLFxufSlcbmV4cG9ydCBjbGFzcyBUZXRCdXNpbmVzc1JvdW5kU3RlcHBlciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRldEJ1c2luZXNzUm91bmRTdGVwcGVyIGV4dGVuZHMgQ29tcG9uZW50cy5UZXRCdXNpbmVzc1JvdW5kU3RlcHBlciB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjb250ZXh0JywgJ2NvbnRyYWN0VGVybScsICdjdXJyZW5jeScsICdkaXNjb3VudFByaWNlJywgJ2xhbmd1YWdlJywgJ21heFZhbHVlJywgJ21pblZhbHVlJywgJ3ByaWNlJywgJ3Byb2R1Y3REZXNjcmlwdGlvbicsICdwcm9kdWN0TmFtZScsICdzdGVwcGVyTGFiZWwnLCAndGhlbWUnLCAndmFsdWUnLCAnd2l0aFN0ZXBwZXInXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC1idXNpbmVzcy1zdW1tYXJ5LWNhcmQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NvbnRleHQnLCAnY29udHJhY3RUZXJtJywgJ2N1cnJlbmN5JywgJ2Rpc2NvdW50UHJpY2UnLCAnbGFuZ3VhZ2UnLCAnbWF4VmFsdWUnLCAnbWluVmFsdWUnLCAncHJpY2UnLCAncHJvZHVjdERlc2NyaXB0aW9uJywgJ3Byb2R1Y3ROYW1lJywgJ3N0ZXBwZXJMYWJlbCcsICd0aGVtZScsICd2YWx1ZScsICd3aXRoU3RlcHBlciddLFxufSlcbmV4cG9ydCBjbGFzcyBUZXRCdXNpbmVzc1N1bW1hcnlDYXJkIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZWRpdEJ1dHRvbkNsaWNrJywgJ2RlbGV0ZUJ1dHRvbkNsaWNrJywgJ2Ftb3VudENoYW5nZSddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXRCdXNpbmVzc1N1bW1hcnlDYXJkIGV4dGVuZHMgQ29tcG9uZW50cy5UZXRCdXNpbmVzc1N1bW1hcnlDYXJkIHtcbiAgLyoqXG4gICAqIEVtaXQgZXZlbnQgd2hlbiBFZGl0IGJ1dHRvbiBjbGlja2VkXG4gICAqL1xuICBlZGl0QnV0dG9uQ2xpY2s6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxhbnk+PjtcbiAgLyoqXG4gICAqIEVtaXQgZXZlbnQgd2hlbiBEZWxldGUgYnV0dG9uIGNsaWNrZWRcbiAgICovXG4gIGRlbGV0ZUJ1dHRvbkNsaWNrOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8YW55Pj47XG4gIC8qKlxuICAgKiBFbWl0IGV2ZW50IHdoZW4gYW1vdW50IG9mIHByb2R1Y3RzIGNoYW5nZWRcbiAgICovXG4gIGFtb3VudENoYW5nZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PG51bWJlcj4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhY2Nlc3NpYmlsaXR5TGFiZWwnLCAnY2xpY2tDYWxsYmFjaycsICdkaXNhYmxlZCcsICdlbGVtZW50SWQnLCAnaWNvbk1vZGUnLCAnaWNvbk5hbWUnLCAnaWNvblBvc2l0aW9uJywgJ3NpemUnLCAndGhlbWUnLCAndHlwZScsICd1cmwnLCAndXJsVGFyZ2V0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXQtYnV0dG9uJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhY2Nlc3NpYmlsaXR5TGFiZWwnLCAnY2xpY2tDYWxsYmFjaycsICdkaXNhYmxlZCcsICdlbGVtZW50SWQnLCAnaWNvbk1vZGUnLCAnaWNvbk5hbWUnLCAnaWNvblBvc2l0aW9uJywgJ3NpemUnLCAndGhlbWUnLCAndHlwZScsICd1cmwnLCAndXJsVGFyZ2V0J10sXG59KVxuZXhwb3J0IGNsYXNzIFRldEJ1dHRvbiB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRldEJ1dHRvbiBleHRlbmRzIENvbXBvbmVudHMuVGV0QnV0dG9uIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2J1dHRvbkljb25MZWZ0JywgJ2J1dHRvbkljb25SaWdodCcsICdsYWJlbCcsICdsYW5ndWFnZScsICdtYXhEb3RzJywgJ3Nob3dCdXR0b25zJywgJ3Nob3dEb3RzJywgJ3Nob3dHcmFkaWVudCcsICdzd2lwZVRocmVzaG9sZCcsICd0aGVtZScsICd0cmFuc2l0aW9uRHVyYXRpb24nLCAndHJhbnNpdGlvblRpbWluZyddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LWNhcm91c2VsJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydidXR0b25JY29uTGVmdCcsICdidXR0b25JY29uUmlnaHQnLCAnbGFiZWwnLCAnbGFuZ3VhZ2UnLCAnbWF4RG90cycsICdzaG93QnV0dG9ucycsICdzaG93RG90cycsICdzaG93R3JhZGllbnQnLCAnc3dpcGVUaHJlc2hvbGQnLCAndGhlbWUnLCAndHJhbnNpdGlvbkR1cmF0aW9uJywgJ3RyYW5zaXRpb25UaW1pbmcnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0Q2Fyb3VzZWwge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXRDYXJvdXNlbCBleHRlbmRzIENvbXBvbmVudHMuVGV0Q2Fyb3VzZWwge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY2hlY2tlZCcsICdkaXNhYmxlZCcsICdlcnJvcicsICdpbmRldGVybWluYXRlJywgJ2xhYmVsJywgJ25hbWUnLCAndGhlbWUnLCAndmFsdWUnXSxcbiAgbWV0aG9kczogWydzZXRDaGVja2VkJywgJ3NldEluZGV0ZXJtaW5hdGUnLCAnc2V0RXJyb3InXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC1jaGVja2JveCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY2hlY2tlZCcsICdkaXNhYmxlZCcsICdlcnJvcicsICdpbmRldGVybWluYXRlJywgJ2xhYmVsJywgJ25hbWUnLCAndGhlbWUnLCAndmFsdWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0Q2hlY2tib3gge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydjaGVjayddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgQ2hlY2tib3hDaGVja0V2ZW50SW50ZXJmYWNlIGFzIElUZXRDaGVja2JveENoZWNrYm94Q2hlY2tFdmVudEludGVyZmFjZSB9IGZyb20gJ0B0ZXQvdGV0LWNvbXBvbmVudHMnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0Q2hlY2tib3ggZXh0ZW5kcyBDb21wb25lbnRzLlRldENoZWNrYm94IHtcbiAgLyoqXG4gICAqIFRoZSBldmVudCB0aGF0IGlzIGVtaXR0ZWQgd2hlbmV2ZXIgdGhlIGNvbnRyb2wgZWxlbWVudCBpcyBjaGVja2VkLlxuICAgKi9cbiAgY2hlY2s6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJVGV0Q2hlY2tib3hDaGVja2JveENoZWNrRXZlbnRJbnRlcmZhY2U+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnbGFuZ3VhZ2UnLCAnbG9hZGluZycsICdwcml2YWN5UG9saWN5TGlua1VybCcsICdzaG93T3ZlcmxheScsICd0aGVtZSddLFxuICBtZXRob2RzOiBbJ29wZW4nLCAnY2xvc2UnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC1jbG91ZC1hcHBsaWNhdGlvbi1mb3JtLWRpYWxvZycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnbGFuZ3VhZ2UnLCAnbG9hZGluZycsICdwcml2YWN5UG9saWN5TGlua1VybCcsICdzaG93T3ZlcmxheScsICd0aGVtZSddLFxufSlcbmV4cG9ydCBjbGFzcyBUZXRDbG91ZEFwcGxpY2F0aW9uRm9ybURpYWxvZyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3N1Ym1pdHRlZCcsICdjbG9zZURpYWxvZycsICdvcGVuRGlhbG9nJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBUZXRBcHBsaWNhdGlvbkZvcm1EaWFsb2dTdWJtaXNzaW9uRGF0YSBhcyBJVGV0Q2xvdWRBcHBsaWNhdGlvbkZvcm1EaWFsb2dUZXRBcHBsaWNhdGlvbkZvcm1EaWFsb2dTdWJtaXNzaW9uRGF0YSB9IGZyb20gJ0B0ZXQvdGV0LWNvbXBvbmVudHMnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0Q2xvdWRBcHBsaWNhdGlvbkZvcm1EaWFsb2cgZXh0ZW5kcyBDb21wb25lbnRzLlRldENsb3VkQXBwbGljYXRpb25Gb3JtRGlhbG9nIHtcbiAgLyoqXG4gICAqIFRoZSBldmVudCB0aGF0IGlzIGVtaXR0ZWQgd2hlbmV2ZXIgYXBwbGljYXRpb24gZm9ybSBpcyBzdWNjZXNzZnVsbHkgc3VibWl0dGVkLlxuICAgKi9cbiAgc3VibWl0dGVkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVRldENsb3VkQXBwbGljYXRpb25Gb3JtRGlhbG9nVGV0QXBwbGljYXRpb25Gb3JtRGlhbG9nU3VibWlzc2lvbkRhdGE+PjtcbiAgLyoqXG4gICAqIFRoZSBldmVudCB0byBiZSBlbWl0dGVkIG9uIHRoZSBgY2xvc2VgIGljb24gY2xpY2ssIG92ZXJsYXkgY2xpY2sgb3IgdGhlIGBlc2NgIGtleSBwcmVzcy5cbiAgICovXG4gIGNsb3NlRGlhbG9nOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8dm9pZD4+O1xuICAvKipcbiAgICogVGhlIGV2ZW50IHRvIGJlIGVtaXR0ZWQgd2hlbiB0aGUgZGlhbG9nIGlzIG9wZW5lZC5cbiAgICovXG4gIG9wZW5EaWFsb2c6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx2b2lkPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NvbnRhaW5lclNlbGVjdG9yJywgJ2xhbmd1YWdlJywgJ3NlbGVjdE9uRm9jdXMnLCAndGhlbWUnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC1jbG91ZC1jb25maWd1cmF0b3InLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NvbnRhaW5lclNlbGVjdG9yJywgJ2xhbmd1YWdlJywgJ3NlbGVjdE9uRm9jdXMnLCAndGhlbWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0Q2xvdWRDb25maWd1cmF0b3Ige1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydjbG91ZENhbGN1bGF0b3JTdWJtaXQnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0Q2xvdWRDb25maWd1cmF0b3IgZXh0ZW5kcyBDb21wb25lbnRzLlRldENsb3VkQ29uZmlndXJhdG9yIHtcbiAgLyoqXG4gICAqIFRoZSBzdWJtaXQgZXZlbnQgb2YgdGhlIGZvcm0uXG4gICAqL1xuICBjbG91ZENhbGN1bGF0b3JTdWJtaXQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxhbnk+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYmVuZWZpdFRpdGxlJywgJ2JlbmVmaXRzJywgJ2Jlc3RDaG9pY2UnLCAnYmVzdENob2ljZVRleHQnLCAnYmVzdENob2ljZVRleHRQb3NpdGlvbicsICdib251c2VzJywgJ2J1dHRvblRpdGxlJywgJ2NhcmRCYWNrZ3JvdW5kQ29sb3InLCAnY2FyZFNjcmlwdCcsICdjYXJkVHlwZScsICdjbGlja0NhbGxiYWNrJywgJ2NvbG9ySWNvbnMnLCAnY29udHJhY3RUZXJtJywgJ2N1cnJlbmN5JywgJ2RhcmtNb2RlJywgJ2Ryb3Bkb3duT3B0aW9ucycsICdsYW5ndWFnZScsICdsaW5rT3BlbkJsYW5rJywgJ29wdGlvbnMnLCAnc2Vjb25kYXJ5TGluaycsICdzZWNvbmRhcnlMaW5rT3BlbkJsYW5rJywgJ3NlY29uZGFyeUxpbmtUZXh0JywgJ3RoZW1lJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXQtY29tcGFyZS1jYXJkLXYyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydiZW5lZml0VGl0bGUnLCAnYmVuZWZpdHMnLCAnYmVzdENob2ljZScsICdiZXN0Q2hvaWNlVGV4dCcsICdiZXN0Q2hvaWNlVGV4dFBvc2l0aW9uJywgJ2JvbnVzZXMnLCAnYnV0dG9uVGl0bGUnLCAnY2FyZEJhY2tncm91bmRDb2xvcicsICdjYXJkU2NyaXB0JywgJ2NhcmRUeXBlJywgJ2NsaWNrQ2FsbGJhY2snLCAnY29sb3JJY29ucycsICdjb250cmFjdFRlcm0nLCAnY3VycmVuY3knLCAnZGFya01vZGUnLCAnZHJvcGRvd25PcHRpb25zJywgJ2xhbmd1YWdlJywgJ2xpbmtPcGVuQmxhbmsnLCAnb3B0aW9ucycsICdzZWNvbmRhcnlMaW5rJywgJ3NlY29uZGFyeUxpbmtPcGVuQmxhbmsnLCAnc2Vjb25kYXJ5TGlua1RleHQnLCAndGhlbWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0Q29tcGFyZUNhcmRWMiB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2NhcmRMb2FkZWQnLCAncHJvZHVjdENoYW5nZWQnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0Q29tcGFyZUNhcmRWMiBleHRlbmRzIENvbXBvbmVudHMuVGV0Q29tcGFyZUNhcmRWMiB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGNhcmQgaGFzIGxvYWRlZC5cbiAgICovXG4gIGNhcmRMb2FkZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx2b2lkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIHNlbGVjdGVkIHByb2R1Y3QgaGFzIGNoYW5nZWQuXG4gICAqL1xuICBwcm9kdWN0Q2hhbmdlZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHZvaWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZGFya1RoZW1lJywgJ2xhbmd1YWdlJywgJ3Nob3dJbnB1dExhYmVsJywgJ3Nob3dUaXRsZScsICdzdWJtaXRCdXR0b25Qcm9wcycsICdzdWJ0aXRsZScsICd0YXNrT3B0aW9ucycsICd0aGVtZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LWNvbnRhY3QtZm9ybScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnZGFya1RoZW1lJywgJ2xhbmd1YWdlJywgJ3Nob3dJbnB1dExhYmVsJywgJ3Nob3dUaXRsZScsICdzdWJtaXRCdXR0b25Qcm9wcycsICdzdWJ0aXRsZScsICd0YXNrT3B0aW9ucycsICd0aGVtZSddLFxufSlcbmV4cG9ydCBjbGFzcyBUZXRDb250YWN0Rm9ybSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3Rhc2tDcmVhdGlvblN1Y2Nlc3MnLCAndGFza0NyZWF0aW9uRmFpbGVkJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRldENvbnRhY3RGb3JtIGV4dGVuZHMgQ29tcG9uZW50cy5UZXRDb250YWN0Rm9ybSB7XG4gIC8qKlxuICAgKiBUaGUgZXZlbnQgZW1pdHRlZCBpZiB0aGUgdGFzayBjcmVhdGlvbiB3YXMgc3VjY2Vzc2Z1bC5cbiAgICovXG4gIHRhc2tDcmVhdGlvblN1Y2Nlc3M6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxzdHJpbmc+PjtcbiAgLyoqXG4gICAqIFRoZSBldmVudCBlbWl0dGVkIGlmIHRoZSB0YXNrIGNyZWF0aW9uIGZhaWxlZC5cbiAgICovXG4gIHRhc2tDcmVhdGlvbkZhaWxlZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGFueT4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjb250YWN0QmxvY2tzJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXQtY29udGFjdC1pbmZvJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjb250YWN0QmxvY2tzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRldENvbnRhY3RJbmZvIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0Q29udGFjdEluZm8gZXh0ZW5kcyBDb21wb25lbnRzLlRldENvbnRhY3RJbmZvIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2hpZ2hsaWdodGFibGUnLCAnc2VsZWN0ZWQnLCAndGhlbWUnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC1jb250YWluZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2hpZ2hsaWdodGFibGUnLCAnc2VsZWN0ZWQnLCAndGhlbWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0Q29udGFpbmVyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0Q29udGFpbmVyIGV4dGVuZHMgQ29tcG9uZW50cy5UZXRDb250YWluZXIge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYWNjZXNzVG9rZW4nLCAnZGFya1RoZW1lJywgJ2dyb3VwQnlBZGRyZXNzJywgJ2hpZGVBc3NldHMnLCAnbG9hZGVyRWxlbWVudHNDb3VudCcsICdwaWQnLCAnc2FsZXNmb3JjZUFjY291bnRJZCcsICdzaW5nbGVMb2FkZXInXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC1jdXN0b21lci1hc3NldHMnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FjY2Vzc1Rva2VuJywgJ2RhcmtUaGVtZScsICdncm91cEJ5QWRkcmVzcycsICdoaWRlQXNzZXRzJywgJ2xvYWRlckVsZW1lbnRzQ291bnQnLCAncGlkJywgJ3NhbGVzZm9yY2VBY2NvdW50SWQnLCAnc2luZ2xlTG9hZGVyJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRldEN1c3RvbWVyQXNzZXRzIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYXNzZXRTZWxlY3RlZCcsICdhc3NldHNVcGRhdGVkJywgJ2N1c3RvbWVyTm90Rm91bmQnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IEN1c3RvbWVyQXNzZXQgYXMgSVRldEN1c3RvbWVyQXNzZXRzQ3VzdG9tZXJBc3NldCB9IGZyb20gJ0B0ZXQvdGV0LWNvbXBvbmVudHMnO1xuaW1wb3J0IHR5cGUgeyBDdXN0b21lck5vdEZvdW5kIGFzIElUZXRDdXN0b21lckFzc2V0c0N1c3RvbWVyTm90Rm91bmQgfSBmcm9tICdAdGV0L3RldC1jb21wb25lbnRzJztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRldEN1c3RvbWVyQXNzZXRzIGV4dGVuZHMgQ29tcG9uZW50cy5UZXRDdXN0b21lckFzc2V0cyB7XG4gIC8qKlxuICAgKiBUaGUgZXZlbnQgdGhhdCBpcyBlbWl0dGVkIHdoZW4gdXNlciBzZWxlY3RzIGFuIGFzc2V0LlxuICAgKi9cbiAgYXNzZXRTZWxlY3RlZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElUZXRDdXN0b21lckFzc2V0c0N1c3RvbWVyQXNzZXQ+PjtcbiAgLyoqXG4gICAqIFRoZSBldmVudCB0aGF0IGlzIGVtaXR0ZWQgd2hlbmV2ZXIgYXNzZXRzIGNoYW5nZS5cbiAgICovXG4gIGFzc2V0c1VwZGF0ZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJVGV0Q3VzdG9tZXJBc3NldHNDdXN0b21lckFzc2V0W10+PjtcbiAgLyoqXG4gICAqIFRoZSBldmVudCB0aGF0IGlzIGVtaXR0ZWQgd2hlbiBubyBTYWxlc2ZvcmNlIGN1c3RvbWVyIGlzIGZvdW5kIGZvciB0aGUgZ2l2ZW4gUElELlxuICAgKi9cbiAgY3VzdG9tZXJOb3RGb3VuZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElUZXRDdXN0b21lckFzc2V0c0N1c3RvbWVyTm90Rm91bmQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZGF0ZScsICdkYXRlcGlja2VyVmlldycsICdpc09wZW4nLCAnbG9jYWxlJywgJ292ZXJsYXlFZmZlY3QnLCAncmFuZ2VQaWNrZXJNb2RlJ10sXG4gIG1ldGhvZHM6IFsndG9nZ2xlSXNPcGVuJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXQtZGF0ZXBpY2tlcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnZGF0ZScsICdkYXRlcGlja2VyVmlldycsICdpc09wZW4nLCAnbG9jYWxlJywgJ292ZXJsYXlFZmZlY3QnLCAncmFuZ2VQaWNrZXJNb2RlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRldERhdGVwaWNrZXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydkYXRlQ2hhbmdlZCcsICdyYW5nZURhdGVzQ2hhbmdlZCddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXREYXRlcGlja2VyIGV4dGVuZHMgQ29tcG9uZW50cy5UZXREYXRlcGlja2VyIHtcbiAgLyoqXG4gICAqIEV2ZW50IHRoYXQgd2lsbCBiZSBlbWl0dGVkIHdoZW4gZGF0ZSB3aWxsIGNoYW5nZS5cbiAgICovXG4gIGRhdGVDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8RGF0ZT4+O1xuICAvKipcbiAgICogRXZlbnQgdGhhdCB3aWxsIGJlIGVtaXR0ZWQgd2hlbiBhdCBsZWFzdCBvbmUgb2YgdGhlIHJhbmdlIGRhdGVzIHdpbGwgY2hhbmdlLlxuICAgKi9cbiAgcmFuZ2VEYXRlc0NoYW5nZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxEYXRlW10+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZGF0ZXBpY2tlclZpZXcnLCAnaW50ZXJuYWxEYXRlJywgJ2xvY2FsZScsICdzZWxlY3RlZERhdGUnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC1kYXRlcGlja2VyLWhlYWRlcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnZGF0ZXBpY2tlclZpZXcnLCAnaW50ZXJuYWxEYXRlJywgJ2xvY2FsZScsICdzZWxlY3RlZERhdGUnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0RGF0ZXBpY2tlckhlYWRlciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2ludGVybmFsRGF0ZUNoYW5nZWQnLCAnZGF0ZXBpY2tlclZpZXdDaGFuZ2VkJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBEYXRlcGlja2VyVmlldyBhcyBJVGV0RGF0ZXBpY2tlckhlYWRlckRhdGVwaWNrZXJWaWV3IH0gZnJvbSAnQHRldC90ZXQtY29tcG9uZW50cyc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXREYXRlcGlja2VySGVhZGVyIGV4dGVuZHMgQ29tcG9uZW50cy5UZXREYXRlcGlja2VySGVhZGVyIHtcbiAgLyoqXG4gICAqIEV2ZW50IHRoYXQgd2lsbCBiZSBlbWl0dGVkIHdoZW4gdGhlIGludGVybmFsIGRhdGUgd2lsbCBjaGFuZ2UuXG4gICAqL1xuICBpbnRlcm5hbERhdGVDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8RGF0ZT4+O1xuICAvKipcbiAgICogRXZlbnQgdGhhdCB3aWxsIGJlIGVtaXR0ZWQgd2hlbiB0aGUgZGF0ZXBpY2tlciB2aWV3IHdpbGwgY2hhbmdlLlxuICAgKi9cbiAgZGF0ZXBpY2tlclZpZXdDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVRldERhdGVwaWNrZXJIZWFkZXJEYXRlcGlja2VyVmlldz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpbnRlcm5hbERhdGUnLCAncmFuZ2VEYXRlcycsICdyYW5nZVBpY2tlck1vZGUnLCAnc2VsZWN0ZWREYXRlJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXQtZGF0ZXBpY2tlci1tb250aC12aWV3JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpbnRlcm5hbERhdGUnLCAncmFuZ2VEYXRlcycsICdyYW5nZVBpY2tlck1vZGUnLCAnc2VsZWN0ZWREYXRlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRldERhdGVwaWNrZXJNb250aFZpZXcge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydpbnRlcm5hbERhdGVDaGFuZ2VkJywgJ2RhdGVDaGFuZ2VkJywgJ2RhdGVwaWNrZXJDbG9zZWQnLCAncmFuZ2VEYXRlU2V0J10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBEYXRlcGlja2VyUmFuZ2VTZXREYXRhIGFzIElUZXREYXRlcGlja2VyTW9udGhWaWV3RGF0ZXBpY2tlclJhbmdlU2V0RGF0YSB9IGZyb20gJ0B0ZXQvdGV0LWNvbXBvbmVudHMnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0RGF0ZXBpY2tlck1vbnRoVmlldyBleHRlbmRzIENvbXBvbmVudHMuVGV0RGF0ZXBpY2tlck1vbnRoVmlldyB7XG4gIC8qKlxuICAgKiBFdmVudCB0aGF0IHdpbGwgYmUgZW1pdHRlZCB3aGVuIHRoZSBpbnRlcm5hbCBkYXRlIHdpbGwgY2hhbmdlLlxuICAgKi9cbiAgaW50ZXJuYWxEYXRlQ2hhbmdlZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PERhdGU+PjtcbiAgLyoqXG4gICAqIEV2ZW50IHRoYXQgd2lsbCBiZSBlbWl0dGVkIHdoZW4gZGF0ZSB3aWxsIGNoYW5nZS5cbiAgICovXG4gIGRhdGVDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8RGF0ZT4+O1xuICAvKipcbiAgICogRXZlbnQgdGhhdCB3aWxsIGJlIGVtaXR0ZWQgd2hlbiB0aGUgZGF0ZXBpY2tlciB3aWxsIGJlIGNsb3NlZC5cbiAgICovXG4gIGRhdGVwaWNrZXJDbG9zZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxib29sZWFuPj47XG4gIC8qKlxuICAgKiBFdmVudCB0aGF0IHdpbGwgYmUgZW1pdHRlZCB3aGVuIG9uZSBvZiB0aGUgcmFuZ2UgZGF0ZXMgd2lsbCBiZSBzZXQuXG4gICAqL1xuICByYW5nZURhdGVTZXQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJVGV0RGF0ZXBpY2tlck1vbnRoVmlld0RhdGVwaWNrZXJSYW5nZVNldERhdGE+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaW50ZXJuYWxEYXRlJywgJ3NlbGVjdGVkRGF0ZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LWRhdGVwaWNrZXItbXVsdGkteWVhci12aWV3JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpbnRlcm5hbERhdGUnLCAnc2VsZWN0ZWREYXRlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRldERhdGVwaWNrZXJNdWx0aVllYXJWaWV3IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnaW50ZXJuYWxEYXRlQ2hhbmdlZCcsICdkYXRlcGlja2VyVmlld0NoYW5nZWQnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IERhdGVwaWNrZXJWaWV3IGFzIElUZXREYXRlcGlja2VyTXVsdGlZZWFyVmlld0RhdGVwaWNrZXJWaWV3IH0gZnJvbSAnQHRldC90ZXQtY29tcG9uZW50cyc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXREYXRlcGlja2VyTXVsdGlZZWFyVmlldyBleHRlbmRzIENvbXBvbmVudHMuVGV0RGF0ZXBpY2tlck11bHRpWWVhclZpZXcge1xuICAvKipcbiAgICogSW50ZXJuYWwgZGF0ZSBjaGFuZ2VkIGV2ZW50LlxuICAgKi9cbiAgaW50ZXJuYWxEYXRlQ2hhbmdlZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PERhdGU+PjtcbiAgLyoqXG4gICAqIERhdGVwaWNrZXIgdmlldyBjaGFuZ2VkIGV2ZW50LlxuICAgKi9cbiAgZGF0ZXBpY2tlclZpZXdDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVRldERhdGVwaWNrZXJNdWx0aVllYXJWaWV3RGF0ZXBpY2tlclZpZXc+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaW50ZXJuYWxEYXRlJywgJ3NlbGVjdGVkRGF0ZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LWRhdGVwaWNrZXIteWVhci12aWV3JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpbnRlcm5hbERhdGUnLCAnc2VsZWN0ZWREYXRlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRldERhdGVwaWNrZXJZZWFyVmlldyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2ludGVybmFsRGF0ZUNoYW5nZWQnLCAnZGF0ZXBpY2tlclZpZXdDaGFuZ2VkJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBEYXRlcGlja2VyVmlldyBhcyBJVGV0RGF0ZXBpY2tlclllYXJWaWV3RGF0ZXBpY2tlclZpZXcgfSBmcm9tICdAdGV0L3RldC1jb21wb25lbnRzJztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRldERhdGVwaWNrZXJZZWFyVmlldyBleHRlbmRzIENvbXBvbmVudHMuVGV0RGF0ZXBpY2tlclllYXJWaWV3IHtcbiAgLyoqXG4gICAqIEV2ZW50IHRoYXQgd2lsbCBiZSBlbWl0dGVkIHdoZW4gdGhlIGludGVybmFsIGRhdGUgd2lsbCBjaGFuZ2UuXG4gICAqL1xuICBpbnRlcm5hbERhdGVDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8RGF0ZT4+O1xuICAvKipcbiAgICogRXZlbnQgdGhhdCB3aWxsIGJlIGVtaXR0ZWQgd2hlbiB0aGUgZGF0ZXBpY2tlciB2aWV3IHdpbGwgY2hhbmdlLlxuICAgKi9cbiAgZGF0ZXBpY2tlclZpZXdDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVRldERhdGVwaWNrZXJZZWFyVmlld0RhdGVwaWNrZXJWaWV3Pj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2Nsb3NlT25Fc2NhcGUnLCAnY2xvc2VPbk92ZXJsYXlDbGljaycsICdmb290ZXJEaXNwbGF5JywgJ2hlYWRlclRpdGxlJywgJ2hpZGVDbG9zZUJ1dHRvbicsICdoaWRlSGVhZGVyJywgJ2lzT3BlbicsICdwcmV2ZW50RGVmYXVsdENsb3NlJywgJ3Nob3dIZWFkZXJEaXZpZGVyJywgJ3RoZW1lJywgJ3RpdGxlSWQnXSxcbiAgbWV0aG9kczogWydvcGVuJywgJ2Nsb3NlJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXQtZGlhbG9nJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjbG9zZU9uRXNjYXBlJywgJ2Nsb3NlT25PdmVybGF5Q2xpY2snLCAnZm9vdGVyRGlzcGxheScsICdoZWFkZXJUaXRsZScsICdoaWRlQ2xvc2VCdXR0b24nLCAnaGlkZUhlYWRlcicsICdpc09wZW4nLCAncHJldmVudERlZmF1bHRDbG9zZScsICdzaG93SGVhZGVyRGl2aWRlcicsICd0aGVtZScsICd0aXRsZUlkJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRldERpYWxvZyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2Nsb3NlRGlhbG9nJywgJ29wZW5EaWFsb2cnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0RGlhbG9nIGV4dGVuZHMgQ29tcG9uZW50cy5UZXREaWFsb2cge1xuICAvKipcbiAgICogVGhlIGV2ZW50IHRvIGJlIGVtaXR0ZWQgb24gdGhlIGBjbG9zZWAgaWNvbiBjbGljaywgb3ZlcmxheSBjbGljayBvciB0aGUgYGVzY2Aga2V5IHByZXNzLlxuICAgKi9cbiAgY2xvc2VEaWFsb2c6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxhbnk+PjtcbiAgLyoqXG4gICAqIFRoZSBldmVudCB0byBiZSBlbWl0dGVkIHdoZW4gdGhlIGRpYWxvZyBpcyBvcGVuZWQuXG4gICAqL1xuICBvcGVuRGlhbG9nOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8eyBldmVudFR5cGU6IHN0cmluZyB9Pj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FsbG93TXVsdGlwbGUnLCAnYnV0dG9uTGFiZWwnLCAnY2xvc2VPblNlbGVjdGlvbicsICdkaXNhYmxlZCcsICdmbGV4TGF5b3V0JywgJ2xhYmVsJywgJ2xhYmVsTG9nbycsICdsYWJlbExvZ29HcmF5c2NhbGUnLCAnbGFiZWxSaWdodCcsICdsYWJlbFJpZ2h0Q29sb3InLCAnbGFiZWxTdWJUZXh0JywgJ29wdGlvbnMnLCAndGhlbWUnXSxcbiAgbWV0aG9kczogWydnZXRTZWxlY3RlZE9wdGlvbnMnLCAnc2VsZWN0T3B0aW9uJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXQtZHJvcGRvd24nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FsbG93TXVsdGlwbGUnLCAnYnV0dG9uTGFiZWwnLCAnY2xvc2VPblNlbGVjdGlvbicsICdkaXNhYmxlZCcsICdmbGV4TGF5b3V0JywgJ2xhYmVsJywgJ2xhYmVsTG9nbycsICdsYWJlbExvZ29HcmF5c2NhbGUnLCAnbGFiZWxSaWdodCcsICdsYWJlbFJpZ2h0Q29sb3InLCAnbGFiZWxTdWJUZXh0JywgJ29wdGlvbnMnLCAndGhlbWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0RHJvcGRvd24ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydvcHRpb25TZWxlY3RlZCcsICdvcHRpb25DaGVja2VkJywgJ29wdGlvbnNDaGFuZ2VkJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBEcm9wZG93bk9wdGlvbkludGVyZmFjZSBhcyBJVGV0RHJvcGRvd25Ecm9wZG93bk9wdGlvbkludGVyZmFjZSB9IGZyb20gJ0B0ZXQvdGV0LWNvbXBvbmVudHMnO1xuaW1wb3J0IHR5cGUgeyBTZWxlY3RlZE9wdGlvbkludGVyZmFjZSBhcyBJVGV0RHJvcGRvd25TZWxlY3RlZE9wdGlvbkludGVyZmFjZSB9IGZyb20gJ0B0ZXQvdGV0LWNvbXBvbmVudHMnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0RHJvcGRvd24gZXh0ZW5kcyBDb21wb25lbnRzLlRldERyb3Bkb3duIHtcbiAgLyoqXG4gICAqIFRyaWdnZXJzIHdoZW5ldmVyIGEgc2luZ2xlIG9wdGlvbiBpcyBzZWxlY3RlZCBhbmQgcmV0dXJucyB0aGUgb3B0aW9uLlxuICAgKi9cbiAgb3B0aW9uU2VsZWN0ZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJVGV0RHJvcGRvd25Ecm9wZG93bk9wdGlvbkludGVyZmFjZT4+O1xuICAvKipcbiAgICogVHJpZ2dlcnMgd2hlbmV2ZXIgYSBtdWx0aS1zZWxlY3RhYmxlIG9wdGlvbiBpcyBjaGVja2VkL3VuY2hlY2tlZC5cbiAgICovXG4gIG9wdGlvbkNoZWNrZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJVGV0RHJvcGRvd25TZWxlY3RlZE9wdGlvbkludGVyZmFjZT4+O1xuICAvKipcbiAgICogVHJpZ2dlcnMgd2hlbmV2ZXIgYW4gb3B0aW9uIGlzIGNoYW5nZWQgYW5kIHJldHVybnMgYSBsaXN0IG9mIGFsbCBzZWxlY3RlZCBvcHRpb25zLlxuICAgKi9cbiAgb3B0aW9uc0NoYW5nZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJVGV0RHJvcGRvd25Ecm9wZG93bk9wdGlvbkludGVyZmFjZVtdPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NhcmRUaXRsZScsICdkYXRlVGFnJywgJ2RhdGVUYWdDb2xvckRhcmsnLCAnZGF0ZVRhZ0NvbG9yTGlnaHQnLCAnaW5kZXgnLCAnaXNJbkNhcm91c2VsJywgJ2xpbmtIcmVmJywgJ2xpbmtOZXdUYWInLCAnbGlua1RleHQnLCAncGljdHVyZUxheW91dFNoaWZ0UG9zaXRpb24nLCAncHJpY2VUYWdPcHRpb25zJywgJ3NpemUnLCAnc2l6ZUNoYW5nZUJyZWFrcG9pbnQnLCAnc3VidGl0bGUnLCAndGFncycsICd0aGVtZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LWR5bmFtaWMtY2FyZCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY2FyZFRpdGxlJywgJ2RhdGVUYWcnLCAnZGF0ZVRhZ0NvbG9yRGFyaycsICdkYXRlVGFnQ29sb3JMaWdodCcsICdpbmRleCcsICdpc0luQ2Fyb3VzZWwnLCAnbGlua0hyZWYnLCAnbGlua05ld1RhYicsICdsaW5rVGV4dCcsICdwaWN0dXJlTGF5b3V0U2hpZnRQb3NpdGlvbicsICdwcmljZVRhZ09wdGlvbnMnLCAnc2l6ZScsICdzaXplQ2hhbmdlQnJlYWtwb2ludCcsICdzdWJ0aXRsZScsICd0YWdzJywgJ3RoZW1lJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRldER5bmFtaWNDYXJkIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsndGV0RHluYW1pY0NhcmRDbGlja0V2ZW50J10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRldER5bmFtaWNDYXJkIGV4dGVuZHMgQ29tcG9uZW50cy5UZXREeW5hbWljQ2FyZCB7XG4gIC8qKlxuICAgKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIGNhcmQgaXMgY2xpY2tlZFxuICAgKi9cbiAgdGV0RHluYW1pY0NhcmRDbGlja0V2ZW50OiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8dm9pZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhY2Nlc3NpYmlsaXR5TGFiZWwnLCAnYW5pbWF0aW9uRHVyYXRpb24nLCAnY2xhc3MnLCAnY2xvc2VJbnB1dFRleHQnLCAnY2xvc2VkV2lkdGgnLCAnZGFya01vZGUnLCAnZGlzYWJsZWQnLCAnZXJyb3InLCAnaWNvbkxlZnQnLCAnaWNvblJpZ2h0JywgJ2ljb25SaWdodENsaWNrQ2FsbGJhY2snLCAnbWFudWFsVmFsaWRhdGlvbicsICdtb2RlJywgJ3BsYWNlaG9sZGVyJywgJ3NpemUnLCAndGhlbWUnLCAndmFsaWRhdG9ycycsICd2YWx1ZSddLFxuICBtZXRob2RzOiBbJ2dldElucHV0SHRtbEVsZW1lbnQnLCAnZ2V0RXJyb3JzJywgJ3ZhbGlkYXRlSW5wdXQnLCAnc2V0U3RhdGUnLCAnY2xlYXInXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC1leHBhbmRhYmxlLWlucHV0JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhY2Nlc3NpYmlsaXR5TGFiZWwnLCAnYW5pbWF0aW9uRHVyYXRpb24nLCAnY2xhc3MnLCAnY2xvc2VJbnB1dFRleHQnLCAnY2xvc2VkV2lkdGgnLCAnZGFya01vZGUnLCAnZGlzYWJsZWQnLCAnZXJyb3InLCAnaWNvbkxlZnQnLCAnaWNvblJpZ2h0JywgJ2ljb25SaWdodENsaWNrQ2FsbGJhY2snLCAnbWFudWFsVmFsaWRhdGlvbicsICdtb2RlJywgJ3BsYWNlaG9sZGVyJywgJ3NpemUnLCAndGhlbWUnLCAndmFsaWRhdG9ycycsICd2YWx1ZSddLFxufSlcbmV4cG9ydCBjbGFzcyBUZXRFeHBhbmRhYmxlSW5wdXQge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydiZWZvcmUtc3RhdGUtY2hhbmdlJywgJ2FmdGVyLXN0YXRlLWNoYW5nZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgU3RhdGVDaGFuZ2VJbnRlcmZhY2UgYXMgSVRldEV4cGFuZGFibGVJbnB1dFN0YXRlQ2hhbmdlSW50ZXJmYWNlIH0gZnJvbSAnQHRldC90ZXQtY29tcG9uZW50cyc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXRFeHBhbmRhYmxlSW5wdXQgZXh0ZW5kcyBDb21wb25lbnRzLlRldEV4cGFuZGFibGVJbnB1dCB7XG4gIC8qKlxuICAgKiBUaGUgZXZlbnQgZW1pdHRlZCBiZWZvcmUgdGhlIHN0YXJ0IG9mIHRoZSBleHBhbmRpbmcgb3Igc2hyaW5raW5nIGFuaW1hdGlvbiBvZiB0aGUgaW5wdXQuXG4gICAqL1xuICAnYmVmb3JlLXN0YXRlLWNoYW5nZSc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJVGV0RXhwYW5kYWJsZUlucHV0U3RhdGVDaGFuZ2VJbnRlcmZhY2U+PjtcbiAgLyoqXG4gICAqIFRoZSBldmVudCBlbWl0dGVkIGFmdGVyIHRoZSBlbmQgb2YgdGhlIGV4cGFuZGluZyBvciBzaHJpbmtpbmcgYW5pbWF0aW9uIG9mIHRoZSBpbnB1dC5cbiAgICovXG4gICdhZnRlci1zdGF0ZS1jaGFuZ2UnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVRldEV4cGFuZGFibGVJbnB1dFN0YXRlQ2hhbmdlSW50ZXJmYWNlPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2luaXRpYWxTdGF0ZScsICd0b2dnbGVFbGVtZW50J10sXG4gIG1ldGhvZHM6IFsnb3BlbicsICdjbG9zZScsICd0b2dnbGUnLCAnZ2V0U3RhdGUnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC1leHBhbnNpb24tcGFuZWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2luaXRpYWxTdGF0ZScsICd0b2dnbGVFbGVtZW50J10sXG59KVxuZXhwb3J0IGNsYXNzIFRldEV4cGFuc2lvblBhbmVsIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0RXhwYW5zaW9uUGFuZWwgZXh0ZW5kcyBDb21wb25lbnRzLlRldEV4cGFuc2lvblBhbmVsIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NsZWFyRmlsdGVyQnV0dG9uVGl0bGUnLCAnc2hvd0NsZWFyRmlsdGVyQnV0dG9uJywgJ3RhZ3MnLCAndGhlbWUnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC1maWx0ZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NsZWFyRmlsdGVyQnV0dG9uVGl0bGUnLCAnc2hvd0NsZWFyRmlsdGVyQnV0dG9uJywgJ3RhZ3MnLCAndGhlbWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0RmlsdGVyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZmlsdGVyQ2hhbmdlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBGaWx0ZXJTdGF0ZSBhcyBJVGV0RmlsdGVyRmlsdGVyU3RhdGUgfSBmcm9tICdAdGV0L3RldC1jb21wb25lbnRzJztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRldEZpbHRlciBleHRlbmRzIENvbXBvbmVudHMuVGV0RmlsdGVyIHtcbiAgLyoqXG4gICAqIEVtaXRzIHdoZW4gZmlsdGVycyBjaGFuZ2VcbiAgICovXG4gIGZpbHRlckNoYW5nZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElUZXRGaWx0ZXJGaWx0ZXJTdGF0ZVtdPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FjY2Vzc2liaWxpdHlMYWJlbCcsICdmb2N1c2FibGUnLCAnbmFtZScsICd0aGVtZScsICd0eXBlJywgJ3VzZURlZmF1bHRDb2xvciddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LWljb24nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FjY2Vzc2liaWxpdHlMYWJlbCcsICdmb2N1c2FibGUnLCAnbmFtZScsICd0aGVtZScsICd0eXBlJywgJ3VzZURlZmF1bHRDb2xvciddLFxufSlcbmV4cG9ydCBjbGFzcyBUZXRJY29uIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0SWNvbiBleHRlbmRzIENvbXBvbmVudHMuVGV0SWNvbiB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWyd0aGVtZScsICd2YXJpYW50J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXQtaW5saW5lLW1lc3NhZ2UnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ3RoZW1lJywgJ3ZhcmlhbnQnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0SW5saW5lTWVzc2FnZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRldElubGluZU1lc3NhZ2UgZXh0ZW5kcyBDb21wb25lbnRzLlRldElubGluZU1lc3NhZ2Uge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYWNjZXNzaWJpbGl0eUxhYmVsJywgJ2F1dG9jb21wbGV0ZScsICdjbGFzcycsICdkaXNhYmxlZCcsICdlcnJvcicsICdpY29uTGVmdCcsICdpY29uTGVmdENsaWNrQ2FsbGJhY2snLCAnaWNvblJpZ2h0JywgJ2ljb25SaWdodENsaWNrQ2FsbGJhY2snLCAnaW5wdXRUYWJpbmRleCcsICdpc1Bob25lTnVtYmVyJywgJ2xhYmVsJywgJ21hbnVhbFZhbGlkYXRpb24nLCAnbWF4bGVuZ3RoJywgJ3BsYWNlaG9sZGVyJywgJ3JlYWRvbmx5JywgJ3RoZW1lJywgJ3R5cGUnLCAndmFsaWRhdG9ycycsICd2YWx1ZSddLFxuICBtZXRob2RzOiBbJ2dldElucHV0SHRtbEVsZW1lbnQnLCAnZ2V0RXJyb3JzJywgJ2NsZWFyRXJyb3JzJywgJ3ZhbGlkYXRlSW5wdXQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC1pbnB1dCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnYWNjZXNzaWJpbGl0eUxhYmVsJywgJ2F1dG9jb21wbGV0ZScsICdjbGFzcycsICdkaXNhYmxlZCcsICdlcnJvcicsICdpY29uTGVmdCcsICdpY29uTGVmdENsaWNrQ2FsbGJhY2snLCAnaWNvblJpZ2h0JywgJ2ljb25SaWdodENsaWNrQ2FsbGJhY2snLCAnaW5wdXRUYWJpbmRleCcsICdpc1Bob25lTnVtYmVyJywgJ2xhYmVsJywgJ21hbnVhbFZhbGlkYXRpb24nLCAnbWF4bGVuZ3RoJywgJ3BsYWNlaG9sZGVyJywgJ3JlYWRvbmx5JywgJ3RoZW1lJywgJ3R5cGUnLCAndmFsaWRhdG9ycycsICd2YWx1ZSddLFxufSlcbmV4cG9ydCBjbGFzcyBUZXRJbnB1dCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRldElucHV0IGV4dGVuZHMgQ29tcG9uZW50cy5UZXRJbnB1dCB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhY3RpdmUnLCAnbGFiZWxUaXRsZScsICdzaG93SWNvbicsICd0aGVtZScsICd0cmFuc2xhdGVUaXRsZScsICd0eXBlJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXQtbGFiZWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FjdGl2ZScsICdsYWJlbFRpdGxlJywgJ3Nob3dJY29uJywgJ3RoZW1lJywgJ3RyYW5zbGF0ZVRpdGxlJywgJ3R5cGUnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0TGFiZWwge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXRMYWJlbCBleHRlbmRzIENvbXBvbmVudHMuVGV0TGFiZWwge31cblxuXG5AUHJveHlDbXAoe1xufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC1sb2FkZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0TG9hZGVyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0TG9hZGVyIGV4dGVuZHMgQ29tcG9uZW50cy5UZXRMb2FkZXIge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYWN0aXZlJywgJ2NsaWNrYWJsZScsICdkYXJrTW9kZScsICdmaXJzdExldmVsSWNvbicsICdmaXJzdExldmVsSWQnLCAnZmlyc3RMZXZlbExpbmsnLCAnZmlyc3RMZXZlbFRpdGxlJywgJ21lbnVJdGVtVGhlbWUnLCAnc2hvd01lbnVJdGVtQW5pbWF0aW9uJywgJ3N1YkxldmVscycsICd0eXBlJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXQtbWVudScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnYWN0aXZlJywgJ2NsaWNrYWJsZScsICdkYXJrTW9kZScsICdmaXJzdExldmVsSWNvbicsICdmaXJzdExldmVsSWQnLCAnZmlyc3RMZXZlbExpbmsnLCAnZmlyc3RMZXZlbFRpdGxlJywgJ21lbnVJdGVtVGhlbWUnLCAnc2hvd01lbnVJdGVtQW5pbWF0aW9uJywgJ3N1YkxldmVscycsICd0eXBlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRldE1lbnUge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXRNZW51IGV4dGVuZHMgQ29tcG9uZW50cy5UZXRNZW51IHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2RhcmtNb2RlJywgJ2ZpcnN0TGV2ZWxJY29uJywgJ2ZpcnN0TGV2ZWxJZCcsICdmaXJzdExldmVsTGluaycsICdmaXJzdExldmVsVGl0bGUnLCAnaGlnaGxpZ2h0VGhlbWUnLCAnaXNBY3RpdmUnLCAnc2hvd0FuaW1hdGlvbicsICdzdWJMZXZlbHMnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC1tZW51LW1vYmlsZScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnZGFya01vZGUnLCAnZmlyc3RMZXZlbEljb24nLCAnZmlyc3RMZXZlbElkJywgJ2ZpcnN0TGV2ZWxMaW5rJywgJ2ZpcnN0TGV2ZWxUaXRsZScsICdoaWdobGlnaHRUaGVtZScsICdpc0FjdGl2ZScsICdzaG93QW5pbWF0aW9uJywgJ3N1YkxldmVscyddLFxufSlcbmV4cG9ydCBjbGFzcyBUZXRNZW51TW9iaWxlIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0TWVudU1vYmlsZSBleHRlbmRzIENvbXBvbmVudHMuVGV0TWVudU1vYmlsZSB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjb250ZW50JywgJ2RpYWxvZ0RhdGFTY3JlZW5LZXknLCAnaXNPcGVuJywgJ2xhbmd1YWdlJywgJ3N0ZXBzJywgJ3RldERpYWxvZ0NsYXNzJywgJ3RoZW1lJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXQtbXVsdGktc3RlcC1kaWFsb2cnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NvbnRlbnQnLCAnZGlhbG9nRGF0YVNjcmVlbktleScsICdpc09wZW4nLCAnbGFuZ3VhZ2UnLCAnc3RlcHMnLCAndGV0RGlhbG9nQ2xhc3MnLCAndGhlbWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0TXVsdGlTdGVwRGlhbG9nIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnY2xvc2VEaWFsb2cnLCAnb3BlbkRpYWxvZyddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXRNdWx0aVN0ZXBEaWFsb2cgZXh0ZW5kcyBDb21wb25lbnRzLlRldE11bHRpU3RlcERpYWxvZyB7XG4gIC8qKlxuICAgKiBUaGUgZXZlbnQgdG8gYmUgZW1pdHRlZCBvbiB0aGUgYGNsb3NlYCBpY29uIGNsaWNrLCBvdmVybGF5IGNsaWNrIG9yIHRoZSBgZXNjYCBrZXkgcHJlc3MuXG4gICAqL1xuICBjbG9zZURpYWxvZzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGFueT4+O1xuICAvKipcbiAgICogVGhlIGV2ZW50IHRvIGJlIGVtaXR0ZWQgd2hlbiB0aGUgZGlhbG9nIGlzIG9wZW5lZC5cbiAgICovXG4gIG9wZW5EaWFsb2c6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxhbnk+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZGFya01vZGUnXSxcbiAgbWV0aG9kczogWydzaG93VG9nZ2xlcicsICdoaWRlVG9nZ2xlcicsICdvcGVuJywgJ2Nsb3NlJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXQtbmF2aWdhdGlvbi1tb2JpbGUnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2RhcmtNb2RlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRldE5hdmlnYXRpb25Nb2JpbGUge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydtYWluRHJvcGRvd25Ub2dnbGUnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0TmF2aWdhdGlvbk1vYmlsZSBleHRlbmRzIENvbXBvbmVudHMuVGV0TmF2aWdhdGlvbk1vYmlsZSB7XG4gIC8qKlxuICAgKiBUaGUgZXZlbnQgdG8gYmUgZW1pdHRlZCBvbiB0aGUgYGlzVG9nZ2xlckV4cGFuZGVkYCB2YWx1ZSBjaGFuZ2UuXG4gICAqL1xuICBtYWluRHJvcGRvd25Ub2dnbGU6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxib29sZWFuPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FsbG93Q2xvc2UnLCAnYW5pbWF0aW9uRHVyYXRpb24nLCAnY29udGVudCcsICdoZWFkZXJUaXRsZScsICdpY29uJywgJ3RoZW1lJywgJ3R5cGUnXSxcbiAgbWV0aG9kczogWydjbG9zZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LW5vdGlmaWNhdGlvbicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnYWxsb3dDbG9zZScsICdhbmltYXRpb25EdXJhdGlvbicsICdjb250ZW50JywgJ2hlYWRlclRpdGxlJywgJ2ljb24nLCAndGhlbWUnLCAndHlwZSddLFxufSlcbmV4cG9ydCBjbGFzcyBUZXROb3RpZmljYXRpb24ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXROb3RpZmljYXRpb24gZXh0ZW5kcyBDb21wb25lbnRzLlRldE5vdGlmaWNhdGlvbiB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhY2Nlc3NpYmlsaXR5TGFiZWwnLCAnYnV0dG9uQWNjZXNzaWJpbGl0eUxhYmVsJywgJ2NvbXBsZXRlZCcsICdkaXNhYmxlZCcsICdlcnJvcicsICdoZWxwZXJUZXh0JywgJ2xhYmVsJywgJ21heCcsICdtaW4nLCAnc2VsZWN0T25Gb2N1cycsICdzdWZmaXhlcycsICd0aGVtZScsICd2YWx1ZSddLFxuICBtZXRob2RzOiBbJ2dldFZhbHVlJywgJ3Jlc2V0U3VmZml4J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXQtbnVtYmVyLWlucHV0JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhY2Nlc3NpYmlsaXR5TGFiZWwnLCAnYnV0dG9uQWNjZXNzaWJpbGl0eUxhYmVsJywgJ2NvbXBsZXRlZCcsICdkaXNhYmxlZCcsICdlcnJvcicsICdoZWxwZXJUZXh0JywgJ2xhYmVsJywgJ21heCcsICdtaW4nLCAnc2VsZWN0T25Gb2N1cycsICdzdWZmaXhlcycsICd0aGVtZScsICd2YWx1ZSddLFxufSlcbmV4cG9ydCBjbGFzcyBUZXROdW1iZXJJbnB1dCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2lucHV0VmFsdWVDaGFuZ2VkJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRldE51bWJlcklucHV0IGV4dGVuZHMgQ29tcG9uZW50cy5UZXROdW1iZXJJbnB1dCB7XG4gIC8qKlxuICAgKiBFbWl0cyBpbnB1dCBldmVudFxuICAgKi9cbiAgaW5wdXRWYWx1ZUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxhbnk+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZGFya1RoZW1lJywgJ2hlaWdodCcsICd3aWR0aCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LXBsYWNlaG9sZGVyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydkYXJrVGhlbWUnLCAnaGVpZ2h0JywgJ3dpZHRoJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRldFBsYWNlaG9sZGVyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0UGxhY2Vob2xkZXIgZXh0ZW5kcyBDb21wb25lbnRzLlRldFBsYWNlaG9sZGVyIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2JhY2tncm91bmQnLCAnY2VudHNQcmljZScsICdldXJvUHJpY2UnLCAnZm9udCcsICdmb290ZXJUZXh0JywgJ2Zvb3RlclRleHRUeXBlJywgJ2hlYWRpbmdUZXh0JywgJ3ByaWNlVHlwZScsICdzaXplJywgJ3N0YXRpY0NvbG9ycycsICd0aGVtZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LXByaWNlLXZpZXcnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2JhY2tncm91bmQnLCAnY2VudHNQcmljZScsICdldXJvUHJpY2UnLCAnZm9udCcsICdmb290ZXJUZXh0JywgJ2Zvb3RlclRleHRUeXBlJywgJ2hlYWRpbmdUZXh0JywgJ3ByaWNlVHlwZScsICdzaXplJywgJ3N0YXRpY0NvbG9ycycsICd0aGVtZSddLFxufSlcbmV4cG9ydCBjbGFzcyBUZXRQcmljZVZpZXcge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXRQcmljZVZpZXcgZXh0ZW5kcyBDb21wb25lbnRzLlRldFByaWNlVmlldyB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhY2Nlc3NpYmlsaXR5TGFiZWwnLCAnY2hlY2tlZCcsICdkaXNhYmxlZCcsICdpbnB1dEF1dG9mb2N1cycsICdsYWJlbCcsICduYW1lJywgJ3RoZW1lJywgJ3ZhbHVlJ10sXG4gIG1ldGhvZHM6IFsnc2V0Q2hlY2tlZCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LXJhZGlvJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhY2Nlc3NpYmlsaXR5TGFiZWwnLCAnY2hlY2tlZCcsICdkaXNhYmxlZCcsICdpbnB1dEF1dG9mb2N1cycsICdsYWJlbCcsICduYW1lJywgJ3RoZW1lJywgJ3ZhbHVlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRldFJhZGlvIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnY2hlY2snXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFJhZGlvQ2hlY2tFdmVudEludGVyZmFjZSBhcyBJVGV0UmFkaW9SYWRpb0NoZWNrRXZlbnRJbnRlcmZhY2UgfSBmcm9tICdAdGV0L3RldC1jb21wb25lbnRzJztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRldFJhZGlvIGV4dGVuZHMgQ29tcG9uZW50cy5UZXRSYWRpbyB7XG4gIC8qKlxuICAgKiBUaGUgZXZlbnQgdGhhdCBpcyBlbWl0dGVkIHdoZW5ldmVyIHRoZSBjb250cm9sIGVsZW1lbnQgaXMgY2hlY2tlZC5cbiAgICovXG4gIGNoZWNrOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVRldFJhZGlvUmFkaW9DaGVja0V2ZW50SW50ZXJmYWNlPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FkZEJ1dHRvbkFjY2Vzc2liaWxpdHlMYWJlbCcsICdkYXRhUG9pbnRzJywgJ2RhdGFVbml0cycsICdkZWZhdWx0VmFsdWUnLCAnZGlzcGxheURhdGFQb2ludHMnLCAnaW5wdXRNYXhWYWx1ZScsICdsb2NrVG9EYXRhUG9pbnQnLCAnbWF4VmFsdWUnLCAnbWluVmFsdWUnLCAnbnVtYmVySW5wdXRBY2Nlc3NpYmlsaXR5TGFiZWwnLCAncGFyZW50Q29udGFpbmVyJywgJ3JlZHVjZUJ1dHRvbkFjY2Vzc2liaWxpdHlMYWJlbCcsICdzaXplJywgJ3NsaWRlcklucHV0QWNjZXNzaWJpbGl0eUxhYmVsJywgJ3N0ZXAnLCAndGhlbWUnLCAndHlwZScsICd3aXRoQ29udHJvbHMnLCAnd2l0aEN1cnJlbnRTdGVwQ291bnRlcicsICd3aXRoSW5wdXQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC1yYW5nZS1zbGlkZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FkZEJ1dHRvbkFjY2Vzc2liaWxpdHlMYWJlbCcsICdkYXRhUG9pbnRzJywgJ2RhdGFVbml0cycsICdkZWZhdWx0VmFsdWUnLCAnZGlzcGxheURhdGFQb2ludHMnLCAnaW5wdXRNYXhWYWx1ZScsICdsb2NrVG9EYXRhUG9pbnQnLCAnbWF4VmFsdWUnLCAnbWluVmFsdWUnLCAnbnVtYmVySW5wdXRBY2Nlc3NpYmlsaXR5TGFiZWwnLCAncGFyZW50Q29udGFpbmVyJywgJ3JlZHVjZUJ1dHRvbkFjY2Vzc2liaWxpdHlMYWJlbCcsICdzaXplJywgJ3NsaWRlcklucHV0QWNjZXNzaWJpbGl0eUxhYmVsJywgJ3N0ZXAnLCAndGhlbWUnLCAndHlwZScsICd3aXRoQ29udHJvbHMnLCAnd2l0aEN1cnJlbnRTdGVwQ291bnRlcicsICd3aXRoSW5wdXQnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0UmFuZ2VTbGlkZXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzbGlkZXItaW5wdXQnLCAnc2xpZGVyLWNoYW5nZSddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXRSYW5nZVNsaWRlciBleHRlbmRzIENvbXBvbmVudHMuVGV0UmFuZ2VTbGlkZXIge1xuICAvKipcbiAgICogVGhlIGV2ZW50IHRoYXQgaXMgZW1pdHRlZCBvbiBzbGlkZXIgaW5wdXQuXG4gICAqL1xuICAnc2xpZGVyLWlucHV0JzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PG51bWJlcj4+O1xuICAvKipcbiAgICogVGhlIGV2ZW50IHRoYXQgaXMgZW1pdHRlZCBvbiBzbGlkZXIgY2hhbmdlLlxuICAgKi9cbiAgJ3NsaWRlci1jaGFuZ2UnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8bnVtYmVyPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2RhdGEnLCAnbGFuZ3VhZ2UnLCAndGhlbWUnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC1yZWZlcnJhbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnZGF0YScsICdsYW5ndWFnZScsICd0aGVtZSddLFxufSlcbmV4cG9ydCBjbGFzcyBUZXRSZWZlcnJhbCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3VybENvcGllZCddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXRSZWZlcnJhbCBleHRlbmRzIENvbXBvbmVudHMuVGV0UmVmZXJyYWwge1xuICAvKipcbiAgICogVGhlIGV2ZW50IHRvIGJlIGVtaXR0ZWQgd2hlbiB0aGUgbGluayBpcyBjb3BpZWQgdG8gdGhlIGNsaXBib2FyZC5cbiAgICovXG4gIHVybENvcGllZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGJvb2xlYW4+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZm9yY2VkQ29sdW1uJywgJ2hpZGVJY29ucycsICdzdGVwcGVyRGF0YScsICd0aGVtZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LXJvdW5kLXN0ZXBwZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ZvcmNlZENvbHVtbicsICdoaWRlSWNvbnMnLCAnc3RlcHBlckRhdGEnLCAndGhlbWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0Um91bmRTdGVwcGVyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0Um91bmRTdGVwcGVyIGV4dGVuZHMgQ29tcG9uZW50cy5UZXRSb3VuZFN0ZXBwZXIge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaWRlbnRpZmllcicsICdpdGVtUmVuZGVyRnVuY3Rpb24nLCAnaXRlbXMnLCAnbXVsdGlwbGVTZWxlY3Rpb25zJywgJ3ByZVNlbGVjdGVkSXRlbXMnXSxcbiAgbWV0aG9kczogWyd1bnNldFNlbGVjdGVkSXRlbXMnLCAnZ2V0U2VsZWN0ZWRJdGVtcyddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LXNlbGVjdGlvbi1saXN0JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpZGVudGlmaWVyJywgJ2l0ZW1SZW5kZXJGdW5jdGlvbicsICdpdGVtcycsICdtdWx0aXBsZVNlbGVjdGlvbnMnLCAncHJlU2VsZWN0ZWRJdGVtcyddLFxufSlcbmV4cG9ydCBjbGFzcyBUZXRTZWxlY3Rpb25MaXN0IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnaXRlbVNlbGVjdGVkJywgJ3NlbGVjdGlvbkxpc3RSZW5kZXJlZCddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXRTZWxlY3Rpb25MaXN0IGV4dGVuZHMgQ29tcG9uZW50cy5UZXRTZWxlY3Rpb25MaXN0IHtcbiAgLyoqXG4gICAqIFRoZSBldmVudCB0aGF0IGlzIGVtaXR0ZWQgd2hlbiBhbiBpdGVtIGlzIHNlbGVjdGVkIG9yIGRlLXNlbGVjdGVkLlxuICAgKi9cbiAgaXRlbVNlbGVjdGVkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8YW55Pj47XG4gIC8qKlxuICAgKiBUaGUgZXZlbnQgdGhhdCBpcyBlbWl0dGVkIHdoZW4gdGhlIGNvbXBvbmVudCBpcyBsb2FkZWQuXG4gICAqL1xuICBzZWxlY3Rpb25MaXN0UmVuZGVyZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxzdHJpbmc+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnc2l6ZScsICd0aGVtZScsICd0eXBlJ10sXG4gIG1ldGhvZHM6IFsnc2V0UHJvZ3Jlc3MnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC1zcGlubmVyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydzaXplJywgJ3RoZW1lJywgJ3R5cGUnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0U3Bpbm5lciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRldFNwaW5uZXIgZXh0ZW5kcyBDb21wb25lbnRzLlRldFNwaW5uZXIge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnc3RlcHBlckRhdGEnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC1zdGVwcGVyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydzdGVwcGVyRGF0YSddLFxufSlcbmV4cG9ydCBjbGFzcyBUZXRTdGVwcGVyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0U3RlcHBlciBleHRlbmRzIENvbXBvbmVudHMuVGV0U3RlcHBlciB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhY2Nlc3NpYmlsaXR5TGFiZWwnLCAnbGFuZ3VhZ2UnLCAnbWF4JywgJ21pbicsICdzZWxlY3RPbkZvY3VzJywgJ3N0ZXAnLCAndGhlbWUnLCAndmFsdWUnXSxcbiAgbWV0aG9kczogWydnZXRWYWx1ZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LXN0ZXBwZXItaW5wdXQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FjY2Vzc2liaWxpdHlMYWJlbCcsICdsYW5ndWFnZScsICdtYXgnLCAnbWluJywgJ3NlbGVjdE9uRm9jdXMnLCAnc3RlcCcsICd0aGVtZScsICd2YWx1ZSddLFxufSlcbmV4cG9ydCBjbGFzcyBUZXRTdGVwcGVySW5wdXQge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydpbnB1dFZhbHVlQ2hhbmdlZCddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXRTdGVwcGVySW5wdXQgZXh0ZW5kcyBDb21wb25lbnRzLlRldFN0ZXBwZXJJbnB1dCB7XG4gIC8qKlxuICAgKiBFbWl0cyBpbnB1dCBldmVudFxuICAgKi9cbiAgaW5wdXRWYWx1ZUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxhbnk+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnc3RlcHBlckRhdGEnLCAndGhlbWUnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC1zdGVwcGVyLXYyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydzdGVwcGVyRGF0YScsICd0aGVtZSddLFxufSlcbmV4cG9ydCBjbGFzcyBUZXRTdGVwcGVyVjIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXRTdGVwcGVyVjIgZXh0ZW5kcyBDb21wb25lbnRzLlRldFN0ZXBwZXJWMiB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydzdGVwcGVyRGF0YScsICd0aGVtZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LXN0ZXBwZXItdjMnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ3N0ZXBwZXJEYXRhJywgJ3RoZW1lJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRldFN0ZXBwZXJWMyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRldFN0ZXBwZXJWMyBleHRlbmRzIENvbXBvbmVudHMuVGV0U3RlcHBlclYzIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FjY2Vzc2liaWxpdHlMYWJlbCcsICdjaGVja2VkJywgJ2Rpc2FibGVkJywgJ2xhYmVsJywgJ25hbWUnLCAndGhlbWUnLCAndmFsdWUnXSxcbiAgbWV0aG9kczogWydzZXRDaGVja2VkJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXQtc3dpdGNoJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhY2Nlc3NpYmlsaXR5TGFiZWwnLCAnY2hlY2tlZCcsICdkaXNhYmxlZCcsICdsYWJlbCcsICduYW1lJywgJ3RoZW1lJywgJ3ZhbHVlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRldFN3aXRjaCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2NoZWNrJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBTd2l0Y2hDaGVja0V2ZW50SW50ZXJmYWNlIGFzIElUZXRTd2l0Y2hTd2l0Y2hDaGVja0V2ZW50SW50ZXJmYWNlIH0gZnJvbSAnQHRldC90ZXQtY29tcG9uZW50cyc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXRTd2l0Y2ggZXh0ZW5kcyBDb21wb25lbnRzLlRldFN3aXRjaCB7XG4gIC8qKlxuICAgKiBUaGUgZXZlbnQgdGhhdCBpcyBlbWl0dGVkIHdoZW5ldmVyIHRoZSBjb250cm9sIGVsZW1lbnQgaXMgY2hlY2tlZC5cbiAgICovXG4gIGNoZWNrOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVRldFN3aXRjaFN3aXRjaENoZWNrRXZlbnRJbnRlcmZhY2U+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZGF0YU5hbWUnLCAnZGVmYXVsdFRhYicsICdwYXJlbnRDb250YWluZXInLCAndXNlVmlzaWJpbGl0eSddLFxuICBtZXRob2RzOiBbJ2luaXQnLCAnc2VsZWN0VGFiJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXQtdGFiLWNvbnRlbnQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2RhdGFOYW1lJywgJ2RlZmF1bHRUYWInLCAncGFyZW50Q29udGFpbmVyJywgJ3VzZVZpc2liaWxpdHknXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0VGFiQ29udGVudCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3RhYlNlbGVjdGVkJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBUYWJTZWxlY3RFdmVudERhdGEgYXMgSVRldFRhYkNvbnRlbnRUYWJTZWxlY3RFdmVudERhdGEgfSBmcm9tICdAdGV0L3RldC1jb21wb25lbnRzJztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRldFRhYkNvbnRlbnQgZXh0ZW5kcyBDb21wb25lbnRzLlRldFRhYkNvbnRlbnQge1xuICAvKipcbiAgICogVGhlIGV2ZW50IHRyaWdnZXJlZCBvbiBzZWxlY3Rpb24gb2YgdGhlIHRhYi5cbiAgICovXG4gIHRhYlNlbGVjdGVkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVRldFRhYkNvbnRlbnRUYWJTZWxlY3RFdmVudERhdGE+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYXV0b3BsYXlEZWxheScsICdkYXJrTW9kZScsICdkYXRhTmFtZScsICdkZWZhdWx0VGFiJywgJ2hpZGVBY3RpdmVIZWFkZXJVbmRlcmxpbmUnLCAnaGlkZUhlYWRlclVuZGVybGluZScsICdwb3NpdGlvbicsICdzZWdtZW50ZWQnLCAnc2l6aW5nJywgJ3N0b3BBdXRvcGxheU9uQ29udGVudEhvdmVyJywgJ3N0b3BBdXRvcGxheU9uSGVhZGVySG92ZXInLCAndGhlbWUnLCAndHlwZSddLFxuICBtZXRob2RzOiBbJ3RvZ2dsZUF1dG9wbGF5JywgJ3N0b3BBdXRvcGxheScsICdzdGFydEF1dG9wbGF5JywgJ3NlbGVjdFRhYiddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LXRhYi1oZWFkZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2F1dG9wbGF5RGVsYXknLCAnZGFya01vZGUnLCAnZGF0YU5hbWUnLCAnZGVmYXVsdFRhYicsICdoaWRlQWN0aXZlSGVhZGVyVW5kZXJsaW5lJywgJ2hpZGVIZWFkZXJVbmRlcmxpbmUnLCAncG9zaXRpb24nLCAnc2VnbWVudGVkJywgJ3NpemluZycsICdzdG9wQXV0b3BsYXlPbkNvbnRlbnRIb3ZlcicsICdzdG9wQXV0b3BsYXlPbkhlYWRlckhvdmVyJywgJ3RoZW1lJywgJ3R5cGUnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0VGFiSGVhZGVyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsndGFiU2VsZWN0ZWQnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFRhYlNlbGVjdEV2ZW50RGF0YSBhcyBJVGV0VGFiSGVhZGVyVGFiU2VsZWN0RXZlbnREYXRhIH0gZnJvbSAnQHRldC90ZXQtY29tcG9uZW50cyc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXRUYWJIZWFkZXIgZXh0ZW5kcyBDb21wb25lbnRzLlRldFRhYkhlYWRlciB7XG4gIC8qKlxuICAgKiBUaGUgZXZlbnQgdHJpZ2dlcmVkIG9uIHRhYiBzZWxlY3Rpb24uXG4gICAqL1xuICB0YWJTZWxlY3RlZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElUZXRUYWJIZWFkZXJUYWJTZWxlY3RFdmVudERhdGE+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY2FwdGlvbicsICdjZWxsVGV4dEFsaWduJywgJ2ZpeGVkRmlyc3RDb2x1bW4nLCAnZ2FwcGVkQ29sdW1uTGF5b3V0JywgJ3RhYmxlRGF0YScsICd0YWJsZUhlYWRlcicsICd0YWJsZUhlYWRlckNvbHVtblNwYW4nLCAndGFibGVIZWFkZXJUZXh0QWxpZ24nLCAndGFibGVIZWFkZXJXaWR0aCcsICd0aGVtZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LXRhYmxlJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjYXB0aW9uJywgJ2NlbGxUZXh0QWxpZ24nLCAnZml4ZWRGaXJzdENvbHVtbicsICdnYXBwZWRDb2x1bW5MYXlvdXQnLCAndGFibGVEYXRhJywgJ3RhYmxlSGVhZGVyJywgJ3RhYmxlSGVhZGVyQ29sdW1uU3BhbicsICd0YWJsZUhlYWRlclRleHRBbGlnbicsICd0YWJsZUhlYWRlcldpZHRoJywgJ3RoZW1lJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRldFRhYmxlIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0VGFibGUgZXh0ZW5kcyBDb21wb25lbnRzLlRldFRhYmxlIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FjdGl2ZScsICdjb3VudCcsICdkaXNhYmxlZCcsICdsYW5ndWFnZScsICdzaG93SWNvbicsICd0YWdUaXRsZScsICd0aGVtZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LXRhZycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnYWN0aXZlJywgJ2NvdW50JywgJ2Rpc2FibGVkJywgJ2xhbmd1YWdlJywgJ3Nob3dJY29uJywgJ3RhZ1RpdGxlJywgJ3RoZW1lJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRldFRhZyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRldFRhZyBleHRlbmRzIENvbXBvbmVudHMuVGV0VGFnIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2xhbmd1YWdlJywgJ3RhZ3MnLCAndGhlbWUnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC10YWctZ3JvdXAnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2xhbmd1YWdlJywgJ3RhZ3MnLCAndGhlbWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0VGFnR3JvdXAge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXRUYWdHcm91cCBleHRlbmRzIENvbXBvbmVudHMuVGV0VGFnR3JvdXAge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZGVjaW1hbFByZWZpeCcsICdkZWNpbWFsU3RhcnQnLCAnbGlzdEljb24nLCAnbGlzdFR5cGUnLCAndGhlbWUnLCAnd2l0aEljb24nXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC10ZXh0LWxpc3QnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2RlY2ltYWxQcmVmaXgnLCAnZGVjaW1hbFN0YXJ0JywgJ2xpc3RJY29uJywgJ2xpc3RUeXBlJywgJ3RoZW1lJywgJ3dpdGhJY29uJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRldFRleHRMaXN0IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0VGV4dExpc3QgZXh0ZW5kcyBDb21wb25lbnRzLlRldFRleHRMaXN0IHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2Vycm9yTWVzc2FnZXMnLCAnbGFiZWwnLCAncGxhY2Vob2xkZXInLCAndGhlbWUnLCAndmFsdWUnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC10ZXh0YXJlYScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnZXJyb3JNZXNzYWdlcycsICdsYWJlbCcsICdwbGFjZWhvbGRlcicsICd0aGVtZScsICd2YWx1ZSddLFxufSlcbmV4cG9ydCBjbGFzcyBUZXRUZXh0YXJlYSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRldFRleHRhcmVhIGV4dGVuZHMgQ29tcG9uZW50cy5UZXRUZXh0YXJlYSB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjdGFCdXR0b25EZXNjcmlwdGlvbicsICdjdGFCdXR0b25MYWJlbCcsICdjdGFCdXR0b25TaXplJywgJ2N0YUJ1dHRvblR5cGUnLCAnbWFpbkJsb2NrRGVzY3JpcHRpb24nLCAnbWFpbkJsb2NrSWNvbicsICdtYWluQmxvY2tUaXRsZScsICdzdGVwcGVyRGF0YScsICd0aGVtZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LXRoYW5rLXlvdS12aWV3JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjdGFCdXR0b25EZXNjcmlwdGlvbicsICdjdGFCdXR0b25MYWJlbCcsICdjdGFCdXR0b25TaXplJywgJ2N0YUJ1dHRvblR5cGUnLCAnbWFpbkJsb2NrRGVzY3JpcHRpb24nLCAnbWFpbkJsb2NrSWNvbicsICdtYWluQmxvY2tUaXRsZScsICdzdGVwcGVyRGF0YScsICd0aGVtZSddLFxufSlcbmV4cG9ydCBjbGFzcyBUZXRUaGFua1lvdVZpZXcge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydjdGFCdXR0b25DbGljayddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXRUaGFua1lvdVZpZXcgZXh0ZW5kcyBDb21wb25lbnRzLlRldFRoYW5rWW91VmlldyB7XG4gIC8qKlxuICAgKiBUaGUgY2xpY2sgZXZlbnQgZW1pdHRlciBvZiB0aGUgQ1RBIGJ1dHRvbi5cbiAgICovXG4gIGN0YUJ1dHRvbkNsaWNrOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8dm9pZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjdGFCdXR0b25JZCcsICdjdGFCdXR0b25MYWJlbCcsICdjdGFCdXR0b25TaXplJywgJ2N0YUJ1dHRvblRoZW1lJywgJ2N0YUJ1dHRvblR5cGUnLCAnaWNvbicsICdsYW5ndWFnZScsICdtYWluQmxvY2tEZXNjcmlwdGlvbicsICdtYWluQmxvY2tUaXRsZScsICdzdGVwcGVyRGF0YScsICd0aGVtZScsICd0cmFuc2xhdGlvbkdyb3VwJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXQtdGhhbmsteW91LXZpZXctdjInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2N0YUJ1dHRvbklkJywgJ2N0YUJ1dHRvbkxhYmVsJywgJ2N0YUJ1dHRvblNpemUnLCAnY3RhQnV0dG9uVGhlbWUnLCAnY3RhQnV0dG9uVHlwZScsICdpY29uJywgJ2xhbmd1YWdlJywgJ21haW5CbG9ja0Rlc2NyaXB0aW9uJywgJ21haW5CbG9ja1RpdGxlJywgJ3N0ZXBwZXJEYXRhJywgJ3RoZW1lJywgJ3RyYW5zbGF0aW9uR3JvdXAnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0VGhhbmtZb3VWaWV3VjIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydjdGFCdXR0b25DbGljayddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUZXRUaGFua1lvdVZpZXdWMiBleHRlbmRzIENvbXBvbmVudHMuVGV0VGhhbmtZb3VWaWV3VjIge1xuICAvKipcbiAgICogVGhlIGNsaWNrIGV2ZW50IGVtaXR0ZXIgb2YgdGhlIENUQSBidXR0b24uXG4gICAqL1xuICBjdGFCdXR0b25DbGljazogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHZvaWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY3RhQnV0dG9uSWQnLCAnY3RhQnV0dG9uTGFiZWwnLCAnY3RhQnV0dG9uU2l6ZScsICdjdGFCdXR0b25UaGVtZScsICdjdGFCdXR0b25UeXBlJywgJ2ljb24nLCAnbGFuZ3VhZ2UnLCAnbWFpbkJsb2NrRGVzY3JpcHRpb24nLCAnbWFpbkJsb2NrVGl0bGUnLCAnc3RlcHBlckRhdGEnLCAndGhlbWUnLCAndHJhbnNsYXRpb25Hcm91cCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0LXRoYW5rLXlvdS12aWV3LXYzJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjdGFCdXR0b25JZCcsICdjdGFCdXR0b25MYWJlbCcsICdjdGFCdXR0b25TaXplJywgJ2N0YUJ1dHRvblRoZW1lJywgJ2N0YUJ1dHRvblR5cGUnLCAnaWNvbicsICdsYW5ndWFnZScsICdtYWluQmxvY2tEZXNjcmlwdGlvbicsICdtYWluQmxvY2tUaXRsZScsICdzdGVwcGVyRGF0YScsICd0aGVtZScsICd0cmFuc2xhdGlvbkdyb3VwJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRldFRoYW5rWW91Vmlld1YzIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnY3RhQnV0dG9uQ2xpY2snXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGV0VGhhbmtZb3VWaWV3VjMgZXh0ZW5kcyBDb21wb25lbnRzLlRldFRoYW5rWW91Vmlld1YzIHtcbiAgLyoqXG4gICAqIFRoZSBjbGljayBldmVudCBlbWl0dGVyIG9mIHRoZSBDVEEgYnV0dG9uLlxuICAgKi9cbiAgY3RhQnV0dG9uQ2xpY2s6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx2b2lkPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2RvTm90U2hvd09uSG92ZXInLCAnaG92ZXJFbGVtZW50JywgJ3Bvc2l0aW9uJywgJ3RhcmdldEVsZW1lbnRTZWxlY3RvcicsICd0aGVtZSddLFxuICBtZXRob2RzOiBbJ3Nob3cnLCAnaGlkZScsICd0b2dnbGUnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldC10b29sdGlwJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydkb05vdFNob3dPbkhvdmVyJywgJ2hvdmVyRWxlbWVudCcsICdwb3NpdGlvbicsICd0YXJnZXRFbGVtZW50U2VsZWN0b3InLCAndGhlbWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV0VG9vbHRpcCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRldFRvb2x0aXAgZXh0ZW5kcyBDb21wb25lbnRzLlRldFRvb2x0aXAge31cblxuXG4iXX0=
|