@fundamental-ngx/platform 0.44.0-rc.6 → 0.44.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/action-bar/action-bar.component.mjs +3 -3
- package/esm2022/button/button.component.mjs +4 -3
- package/esm2022/dynamic-page/dynamic-page-header/header/dynamic-page-header.component.mjs +3 -2
- package/esm2022/feed-input/feed-input.component.mjs +3 -2
- package/esm2022/form/checkbox/checkbox.component.mjs +6 -5
- package/esm2022/form/checkbox-group/checkbox-group.component.mjs +3 -3
- package/esm2022/form/date-picker/date-picker.component.mjs +7 -6
- package/esm2022/form/datetime-picker/datetime-picker.component.mjs +6 -5
- package/esm2022/form/form-generator/form-generator/form-generator.component.mjs +3 -2
- package/esm2022/form/form-group/form-field/form-field.component.mjs +4 -3
- package/esm2022/form/form-group/form-group.component.mjs +3 -3
- package/esm2022/form/multi-combobox/multi-combobox/multi-combobox.component.mjs +3 -3
- package/esm2022/form/platform-file-uploader/platform-file-uploader.component.mjs +4 -3
- package/esm2022/form/radio-group/radio/radio.component.mjs +4 -3
- package/esm2022/form/select/commons/base-select.mjs +3 -3
- package/esm2022/form/select/select/select.component.mjs +4 -4
- package/esm2022/form/text-area/text-area.component.mjs +4 -4
- package/esm2022/form/time-picker/time-picker.component.mjs +3 -2
- package/esm2022/list/base-list-item.mjs +5 -5
- package/esm2022/page-footer/page-footer.component.mjs +3 -2
- package/esm2022/search-field/search-field.component.mjs +4 -4
- package/esm2022/smart-filter-bar/smart-filter-bar.component.mjs +7 -6
- package/esm2022/thumbnail/thumbnail-details/thumbnail-details.component.mjs +3 -2
- package/esm2022/thumbnail/thumbnail-image/thumbnail-image.component.mjs +3 -3
- package/esm2022/thumbnail/thumbnail.component.mjs +3 -3
- package/esm2022/upload-collection/upload-collection/upload-collection.component.mjs +5 -5
- package/esm2022/value-help-dialog/components/define-tab/define-tab.component.mjs +4 -3
- package/esm2022/value-help-dialog/components/select-tab/select-tab.component.mjs +3 -2
- package/esm2022/value-help-dialog/components/value-help-dialog-search/value-help-dialog-search.component.mjs +3 -2
- package/esm2022/value-help-dialog/value-help-dialog/value-help-dialog.component.mjs +5 -5
- package/fesm2022/fundamental-ngx-platform-action-bar.mjs +2 -2
- package/fesm2022/fundamental-ngx-platform-action-bar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-button.mjs +3 -3
- package/fesm2022/fundamental-ngx-platform-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-dynamic-page.mjs +2 -1
- package/fesm2022/fundamental-ngx-platform-dynamic-page.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-feed-input.mjs +2 -1
- package/fesm2022/fundamental-ngx-platform-feed-input.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-form.mjs +31 -30
- package/fesm2022/fundamental-ngx-platform-form.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-list.mjs +4 -4
- package/fesm2022/fundamental-ngx-platform-list.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-page-footer.mjs +2 -1
- package/fesm2022/fundamental-ngx-platform-page-footer.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-search-field.mjs +3 -3
- package/fesm2022/fundamental-ngx-platform-search-field.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-smart-filter-bar.mjs +7 -7
- package/fesm2022/fundamental-ngx-platform-smart-filter-bar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-thumbnail.mjs +4 -4
- package/fesm2022/fundamental-ngx-platform-thumbnail.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-upload-collection.mjs +11 -10
- package/fesm2022/fundamental-ngx-platform-upload-collection.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-value-help-dialog.mjs +9 -8
- package/fesm2022/fundamental-ngx-platform-value-help-dialog.mjs.map +1 -1
- package/fundamental-ngx-platform-v0.44.0.tgz +0 -0
- package/package.json +4 -4
- package/schematics/ng-add/index.js +1 -1
- package/fundamental-ngx-platform-v0.44.0-rc.6.tgz +0 -0
|
@@ -3,6 +3,7 @@ import { ControlContainer, NgControl, NgForm } from '@angular/forms';
|
|
|
3
3
|
import { FD_FORM_FIELD, FD_FORM_FIELD_CONTROL } from '@fundamental-ngx/cdk/forms';
|
|
4
4
|
import { TimePickerComponent } from '@fundamental-ngx/core/time-picker';
|
|
5
5
|
import { BaseInput, PlatformFormFieldControl, PlatformFormField } from '@fundamental-ngx/platform/shared';
|
|
6
|
+
import { warnOnce } from '@fundamental-ngx/cdk/utils';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
7
8
|
import * as i1 from "@angular/forms";
|
|
8
9
|
import * as i2 from "@fundamental-ngx/core/time-picker";
|
|
@@ -25,7 +26,7 @@ export class PlatformTimePickerComponent extends BaseInput {
|
|
|
25
26
|
*/
|
|
26
27
|
set meridian(value) {
|
|
27
28
|
// eslint-disable-next-line max-len
|
|
28
|
-
|
|
29
|
+
warnOnce('Property meridian is deprecated.' +
|
|
29
30
|
' Use Meridian is deprecated.' +
|
|
30
31
|
' Use displayFormat and parseFormat inputs or DateTimeFormats.display.timeInput and DateTimeFormats.parse.timeInput instead. instead.');
|
|
31
32
|
this._meridian = value;
|
|
@@ -181,4 +182,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImpor
|
|
|
181
182
|
type: ViewChild,
|
|
182
183
|
args: [TimePickerComponent]
|
|
183
184
|
}] } });
|
|
184
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9zcmMvbGliL2Zvcm0vdGltZS1waWNrZXIvdGltZS1waWNrZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9zcmMvbGliL2Zvcm0vdGltZS1waWNrZXIvdGltZS1waWNrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osSUFBSSxFQUNKLE1BQU0sRUFDTixLQUFLLEVBR0wsUUFBUSxFQUNSLE1BQU0sRUFDTixJQUFJLEVBQ0osUUFBUSxFQUNSLFNBQVMsRUFDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxhQUFhLEVBQUUscUJBQXFCLEVBQWMsTUFBTSw0QkFBNEIsQ0FBQztBQUU5RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUV4RSxPQUFPLEVBQUUsU0FBUyxFQUFFLHdCQUF3QixFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7O0FBUTFHLE1BQU0sT0FBTywyQkFBK0IsU0FBUSxTQUFTO0lBQ3pEOztPQUVHO0lBQ0gsSUFDSSxLQUFLLENBQUMsS0FBZTtRQUNyQixLQUFLLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFDRCxJQUFJLEtBQUs7UUFDTCxPQUFPLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBWUQ7Ozs7O09BS0c7SUFDSCxJQUNJLFFBQVEsQ0FBQyxLQUFjO1FBQ3ZCLG1D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Q3BDLENBQUMsRUFBRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsV0FBVyw2QkFBNkIsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUM7OzBCQTRKakcsUUFBUTs7MEJBQUksSUFBSTs7MEJBQ2hCLFFBQVE7OzBCQUFJLFFBQVE7OzBCQUNwQixRQUFROzswQkFBSSxRQUFROzswQkFDcEIsUUFBUTs7MEJBQUksUUFBUTs7MEJBQUksSUFBSTs7MEJBQUksTUFBTTsyQkFBQyxhQUFhOzswQkFDcEQsUUFBUTs7MEJBQUksUUFBUTs7MEJBQUksSUFBSTs7MEJBQUksTUFBTTsyQkFBQyxxQkFBcUI7NENBeko3RCxLQUFLO3NCQURSLEtBQUs7Z0JBWU4sSUFBSTtzQkFESCxLQUFLO2dCQUtOLGNBQWM7c0JBRGIsS0FBSztnQkFVRixRQUFRO3NCQURYLEtBQUs7Z0JBb0JOLGNBQWM7c0JBRGIsS0FBSztnQkFRTixjQUFjO3NCQURiLEtBQUs7Z0JBUU4sWUFBWTtzQkFEWCxLQUFLO2dCQU9OLFdBQVc7c0JBRFYsS0FBSztnQkFLTixvQkFBb0I7c0JBRG5CLEtBQUs7Z0JBS04sU0FBUztzQkFEUixLQUFLO2dCQUtOLE1BQU07c0JBREwsS0FBSztnQkFRTixTQUFTO3NCQURSLEtBQUs7Z0JBUUYsS0FBSztzQkFEUixLQUFLO2dCQWtCTixlQUFlO3NCQURkLEtBQUs7Z0JBS04sYUFBYTtzQkFEWixLQUFLO2dCQVNOLGlCQUFpQjtzQkFEaEIsS0FBSztnQkFRTixhQUFhO3NCQURaLEtBQUs7Z0JBUU4sV0FBVztzQkFEVixLQUFLO2dCQUtHLFlBQVk7c0JBRHBCLE1BQU07Z0JBS1AsbUJBQW1CO3NCQURsQixTQUFTO3VCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdCxcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBPcHRpb25hbCxcbiAgICBPdXRwdXQsXG4gICAgU2VsZixcbiAgICBTa2lwU2VsZixcbiAgICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sQ29udGFpbmVyLCBOZ0NvbnRyb2wsIE5nRm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZEX0ZPUk1fRklFTEQsIEZEX0ZPUk1fRklFTERfQ09OVFJPTCwgRm9ybVN0YXRlcyB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL2Zvcm1zJztcblxuaW1wb3J0IHsgVGltZVBpY2tlckNvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS90aW1lLXBpY2tlcic7XG5pbXBvcnQgeyBQbGFjZW1lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvc2hhcmVkJztcbmltcG9ydCB7IEJhc2VJbnB1dCwgUGxhdGZvcm1Gb3JtRmllbGRDb250cm9sLCBQbGF0Zm9ybUZvcm1GaWVsZCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vc2hhcmVkJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdmZHAtdGltZS1waWNrZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi90aW1lLXBpY2tlci5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBGRF9GT1JNX0ZJRUxEX0NPTlRST0wsIHVzZUV4aXN0aW5nOiBQbGF0Zm9ybVRpbWVQaWNrZXJDb21wb25lbnQsIG11bHRpOiB0cnVlIH1dXG59KVxuZXhwb3J0IGNsYXNzIFBsYXRmb3JtVGltZVBpY2tlckNvbXBvbmVudDxEPiBleHRlbmRzIEJhc2VJbnB1dCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgICAvKipcbiAgICAgKiBASW5wdXQgZGF0ZSB0aW1lIG9iamVjdCByZXByZXNlbnRhdGlvblxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHZhbHVlKHZhbHVlOiBEIHwgbnVsbCkge1xuICAgICAgICBzdXBlci5zZXRWYWx1ZSh2YWx1ZSk7XG4gICAgfVxuICAgIGdldCB2YWx1ZSgpOiBEIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiBzdXBlci5nZXRWYWx1ZSgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBJbnB1dCBkYXRlIHRpbWUgb2JqZWN0IHJlcHJlc2VudGF0aW9uXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICB0aW1lOiBEO1xuXG4gICAgLyoqIEBJbnB1dCBXaGV0aGVyIHRvIHNob3cgc3Bpbm5lciBidXR0b25zICovXG4gICAgQElucHV0KClcbiAgICBzcGlubmVyQnV0dG9ucyA9IHRydWU7XG5cbiAgICAvKiogQGRlcHJlY2F0ZWRcbiAgICAgKiBNZXJpZGlhbiBpcyBkZXByZWNhdGVkLiBVc2UgZGlzcGxheUZvcm1hdCBhbmQgcGFyc2VGb3JtYXQgaW5wdXRzIG9yXG4gICAgICogRGF0ZVRpbWVGb3JtYXRzLmRpc3BsYXkudGltZUlucHV0IGFuZCBEYXRlVGltZUZvcm1hdHMucGFyc2UudGltZUlucHV0IGluc3RlYWQuXG4gICAgICogQElucHV0IFdoZW4gc2V0IHRvIGZhbHNlLCB1c2VzIHRoZSAyNCBob3VyIGNsb2NrIChob3VycyByYW5naW5nIGZyb20gMCB0byAyMykuXG4gICAgICogRGVmYXVsdCB2YWx1ZSBiYXNlZCBvbiB0aGUgY3VycmVudCBsb2NhbGUgZm9ybWF0IG9wdGlvblxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IG1lcmlkaWFuKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBtYXgtbGVuXG4gICAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgICAgICdQcm9wZXJ0eSBtZXJpZGlhbiBpcyBkZXByZWNhdGVkLicgK1xuICAgICAgICAgICAgICAgICcgVXNlIE1lcmlkaWFuIGlzIGRlcHJlY2F0ZWQuJyArXG4gICAgICAgICAgICAgICAgJyBVc2UgZGlzcGxheUZvcm1hdCBhbmQgcGFyc2VGb3JtYXQgaW5wdXRzIG9yIERhdGVUaW1lRm9ybWF0cy5kaXNwbGF5LnRpbWVJbnB1dCBhbmQgRGF0ZVRpbWVGb3JtYXRzLnBhcnNlLnRpbWVJbnB1dCBpbnN0ZWFkLiBpbnN0ZWFkLidcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5fbWVyaWRpYW4gPSB2YWx1ZTtcbiAgICB9XG5cbiAgICBnZXQgbWVyaWRpYW4oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9tZXJpZGlhbjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBASW5wdXQgV2hlbiBzZXQgdG8gZmFsc2UsIGhpZGVzIHRoZSBpbnB1dCBmb3Igc2Vjb25kcy5cbiAgICAgKiBEZWZhdWx0IHZhbHVlIGJhc2VkIG9uIHRoZSBjdXJyZW50IGxvY2FsZSBmb3JtYXQgb3B0aW9uXG4gICAgICogKi9cbiAgICBASW5wdXQoKVxuICAgIGRpc3BsYXlTZWNvbmRzOiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogQElucHV0IFdoZW4gc2V0IHRvIGZhbHNlLCBoaWRlcyB0aGUgaW5wdXQgZm9yIG1pbnV0ZXMuXG4gICAgICogRGVmYXVsdCB2YWx1ZSBiYXNlZCBvbiB0aGUgY3VycmVudCBsb2NhbGUgZm9ybWF0IG9wdGlvblxuICAgICAqICovXG4gICAgQElucHV0KClcbiAgICBkaXNwbGF5TWludXRlczogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIEBJbnB1dCBXaGVuIHNldCB0byBmYWxzZSwgaGlkZXMgdGhlIGlucHV0IGZvciBob3Vycy5cbiAgICAgKiBEZWZhdWx0IHZhbHVlIGJhc2VkIG9uIHRoZSBjdXJyZW50IGxvY2FsZSBmb3JtYXQgb3B0aW9uXG4gICAgICogKi9cbiAgICBASW5wdXQoKVxuICAgIGRpc3BsYXlIb3VyczogYm9vbGVhbjtcblxuICAgIC8qKiBASW5wdXQgRGVmYXVsdCB0aW1lIHBpY2tlciBwbGFjZWhvbGRlciB3aGljaCBpcyBzZXQgZGVwZW5kYW50IG9uIHRoZSBob3VycywgbWludXRlcyBhbmQgc2Vjb25kcy5cbiAgICAgKiBPdGhlcndpc2UgSXQgY2FuIGJlIHNldCB0byBhIGRlZmF1bHQgdmFsdWVcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG5cbiAgICAvKiogQXJpYSBsYWJlbCBmb3IgdGhlIHRpbWUgcGlja2VyIGlucHV0LiAqL1xuICAgIEBJbnB1dCgpXG4gICAgdGltZVBpY2tlcklucHV0TGFiZWw6IHN0cmluZztcblxuICAgIC8qKiBXaGV0aGVyIGEgbnVsbCBpbnB1dCBpcyBjb25zaWRlcmVkIHZhbGlkKHN1Y2Nlc3MpLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgYWxsb3dOdWxsID0gdHJ1ZTtcblxuICAgIC8qKiBEZWZpbmVzIGlmIHRpbWUgY29tcG9uZW50IHNob3VsZCBiZSB1c2VkIHdpdGggdGFibGV0IG1vZGUgKi9cbiAgICBASW5wdXQoKVxuICAgIHRhYmxldCA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogIFRoZSBwbGFjZW1lbnQgb2YgdGhlIHBvcG92ZXIuIEl0IGNhbiBiZSBvbmUgb2Y6IHRvcCwgdG9wLXN0YXJ0LCB0b3AtZW5kLCBib3R0b20sXG4gICAgICogIGJvdHRvbS1zdGFydCwgYm90dG9tLWVuZCwgcmlnaHQsIHJpZ2h0LXN0YXJ0LCByaWdodC1lbmQsIGxlZnQsIGxlZnQtc3RhcnQsIGxlZnQtZW5kLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcGxhY2VtZW50OiBQbGFjZW1lbnQgPSAnYm90dG9tLXN0YXJ0JztcblxuICAgIC8qKlxuICAgICAqICBUaGUgc3RhdGUgb2YgdGhlIGZvcm0gY29udHJvbCAtIGFwcGxpZXMgY3NzIGNsYXNzZXMuXG4gICAgICogIENhbiBiZSBgc3VjY2Vzc2AsIGBlcnJvcmAsIGB3YXJuaW5nYCwgYGluZm9ybWF0aW9uYCBvciBibGFuayBmb3IgZGVmYXVsdC5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBzdGF0ZShzdGF0ZTogRm9ybVN0YXRlcyB8IHVuZGVmaW5lZCkge1xuICAgICAgICBzdXBlci5zdGF0ZSA9IHN0YXRlO1xuICAgIH1cblxuICAgIGdldCBzdGF0ZSgpOiBGb3JtU3RhdGVzIHtcbiAgICAgICAgaWYgKHRoaXMudGltZVBpY2tlckNvbXBvbmVudCAmJiB0aGlzLnRpbWVQaWNrZXJDb21wb25lbnQuX2lzSW52YWxpZFRpbWVJbnB1dCkge1xuICAgICAgICAgICAgLy8gaWYgYW55IG90aGVyIGVycm9yIGZyb20gY29yZSB0aW1lUGlja2VyXG4gICAgICAgICAgICByZXR1cm4gJ2Vycm9yJztcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gc3VwZXIuc3RhdGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogV2hldGhlciBBZGRPbiBCdXR0b24gc2hvdWxkIGJlIGZvY3VzYWJsZVxuICAgICAqIEBkZWZhdWx0IHRydWVcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGJ1dHRvbkZvY3VzYWJsZSA9IHRydWU7XG5cbiAgICAvKiogV2hldGhlciB0byB2YWxpZGF0ZSB0aGUgdGltZSBwaWNrZXIgaW5wdXQuICovXG4gICAgQElucHV0KClcbiAgICB1c2VWYWxpZGF0aW9uID0gdHJ1ZTtcblxuICAgIC8qKlxuICAgICAqIEBJbnB1dCB3aGVuIHNldCB0byB0cnVlLCB0aW1lIGlucHV0cyB3b24ndCBhbGxvdyB0byBoYXZlIDEgZGlnaXRcbiAgICAgKiBmb3IgZXhhbXBsZSA5IHdpbGwgYmVjb21lIDA5XG4gICAgICogYnV0IDEyIHdpbGwgYmUga2VwdCBhcyAxMi5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGtlZXBUd29EaWdpdHNUaW1lID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBEaXNwbGF5IGZvcm1hdCBvcHRpb24gdG8gY3VzdG9taXplIHRpbWUgZm9ybWF0IGluIGlucHV0IGNvbnRyb2wuXG4gICAgICogTXVzdCBiZSBhIGZvcm1hdCBvcHRpb24gdGhhdCBpcyB1bmRlcnN0YW5kYWJsZSBieSBEYXRldGltZUFkYXB0ZXIuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBkaXNwbGF5Rm9ybWF0OiB1bmtub3duO1xuXG4gICAgLyoqXG4gICAgICogUGFyc2UgZm9ybWF0IG9wdGlvbiB0byBjdXN0b21pemUgdGltZSBmb3JtYXQgaW4gaW5wdXQgY29udHJvbC5cbiAgICAgKiBNdXN0IGJlIGEgZm9ybWF0IG9wdGlvbiB0aGF0IGlzIHVuZGVyc3RhbmRhYmxlIGJ5IERhdGV0aW1lQWRhcHRlci5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHBhcnNlRm9ybWF0OiB1bmtub3duO1xuXG4gICAgLyoqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgc3RhdGUgb2YgdGhlIGlzT3BlbiBwcm9wZXJ0eSBjaGFuZ2VzLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHJlYWRvbmx5IGlzT3BlbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQFZpZXdDaGlsZChUaW1lUGlja2VyQ29tcG9uZW50KVxuICAgIHRpbWVQaWNrZXJDb21wb25lbnQ6IFRpbWVQaWNrZXJDb21wb25lbnQ8RD47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX21lcmlkaWFuOiBib29sZWFuO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgY2Q6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgICAgICBAT3B0aW9uYWwoKSBAU2VsZigpIG5nQ29udHJvbDogTmdDb250cm9sLFxuICAgICAgICBAT3B0aW9uYWwoKSBAU2tpcFNlbGYoKSBjb250cm9sQ29udGFpbmVyOiBDb250cm9sQ29udGFpbmVyLFxuICAgICAgICBAT3B0aW9uYWwoKSBAU2tpcFNlbGYoKSBuZ0Zvcm06IE5nRm9ybSxcbiAgICAgICAgQE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgQEhvc3QoKSBASW5qZWN0KEZEX0ZPUk1fRklFTEQpIGZvcm1GaWVsZDogUGxhdGZvcm1Gb3JtRmllbGQsXG4gICAgICAgIEBPcHRpb25hbCgpIEBTa2lwU2VsZigpIEBIb3N0KCkgQEluamVjdChGRF9GT1JNX0ZJRUxEX0NPTlRST0wpIGZvcm1Db250cm9sOiBQbGF0Zm9ybUZvcm1GaWVsZENvbnRyb2xcbiAgICApIHtcbiAgICAgICAgc3VwZXIoY2QsIGVsZW1lbnRSZWYsIG5nQ29udHJvbCwgY29udHJvbENvbnRhaW5lciwgbmdGb3JtLCBmb3JtRmllbGQsIGZvcm1Db250cm9sKTtcbiAgICAgICAgaWYgKHRoaXMubmdDb250cm9sKSB7XG4gICAgICAgICAgICB0aGlzLm5nQ29udHJvbC52YWx1ZUFjY2Vzc29yID0gdGhpcztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIE1ldGhvZCB0aGF0IGhhbmRsZXMgY2hhbmdlcyB3aGVuIHBvcG92ZXIgaXMgb3BlbmVkIG9yIGNsb3NlZC5cbiAgICAgKi9cbiAgICBoYW5kbGVPcGVuQ2hhbmdlKG9wZW46IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pc09wZW5DaGFuZ2UuZW1pdChvcGVuKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBsb2dpYyB0byBoYW5kbGUgdmFsaWRhdGlvbiBmcm9tIGJvdGggcGxhdGZvcm0gZm9ybXMgYW5kIGNvcmUgZGF0ZXRpaW1lcGlja2VyXG4gICAgICogQHBhcmFtIHZhbHVlIGlucHV0dGVkXG4gICAgICovXG4gICAgaGFuZGxlVGltZUNoYW5nZSh2YWx1ZTogRCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy50aW1lUGlja2VyQ29tcG9uZW50KSB7XG4gICAgICAgICAgICBpZiAodGhpcy50aW1lUGlja2VyQ29tcG9uZW50Ll9pc0ludmFsaWRUaW1lSW5wdXQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnN0YXRlID0gJ2Vycm9yJztcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdGF0ZSA9ICF0aGlzLnRpbWVQaWNrZXJDb21wb25lbnQudGltZSAmJiAhdGhpcy5hbGxvd051bGwgPyAnZXJyb3InIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgICAgICAgICAgdGhpcy5zdGF0ZUNoYW5nZXMubmV4dCgndGltZSBwaWNrZXI6IGhhbmRsZVRpbWVJbnB1dENoYW5nZScpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gICAgfVxufVxuIiwiPGZkLXRpbWUtcGlja2VyXG4gICAgW2F0dHIuYXJpYS1sYWJlbF09XCJhcmlhTGFiZWxcIlxuICAgIFthdHRyLmFyaWFMYWJlbGxlZEJ5XT1cImFyaWFMYWJlbGxlZEJ5XCJcbiAgICBbYXR0ci5hcmlhRGVzY3JpYmVkQnldPVwiYXJpYURlc2NyaWJlZEJ5XCJcbiAgICBbaW5wdXRJZF09XCJpZFwiXG4gICAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICBbdGltZV09XCJ0aW1lXCJcbiAgICBbbWVyaWRpYW5dPVwibWVyaWRpYW5cIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgW2Rpc3BsYXlGb3JtYXRdPVwiZGlzcGxheUZvcm1hdFwiXG4gICAgW3NwaW5uZXJCdXR0b25zXT1cInNwaW5uZXJCdXR0b25zXCJcbiAgICBbZGlzcGxheVNlY29uZHNdPVwiZGlzcGxheVNlY29uZHNcIlxuICAgIFtkaXNwbGF5TWludXRlc109XCJkaXNwbGF5TWludXRlc1wiXG4gICAgW2Rpc3BsYXlIb3Vyc109XCJkaXNwbGF5SG91cnNcIlxuICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgW3RpbWVQaWNrZXJJbnB1dExhYmVsXT1cInRpbWVQaWNrZXJJbnB1dExhYmVsXCJcbiAgICBbYWxsb3dOdWxsXT1cImFsbG93TnVsbFwiXG4gICAgW3RhYmxldF09XCJ0YWJsZXRcIlxuICAgIFtwbGFjZW1lbnRdPVwicGxhY2VtZW50XCJcbiAgICBbcGFyc2VGb3JtYXRdPVwicGFyc2VGb3JtYXRcIlxuICAgIFtzdGF0ZV09XCJzdGF0ZVwiXG4gICAgW2J1dHRvbkZvY3VzYWJsZV09XCJidXR0b25Gb2N1c2FibGVcIlxuICAgIFt1c2VWYWxpZGF0aW9uXT1cInVzZVZhbGlkYXRpb25cIlxuICAgIFtrZWVwVHdvRGlnaXRzVGltZV09XCJrZWVwVHdvRGlnaXRzVGltZVwiXG4gICAgKGlzT3BlbkNoYW5nZSk9XCJoYW5kbGVPcGVuQ2hhbmdlKCRldmVudClcIlxuICAgIChuZ01vZGVsQ2hhbmdlKT1cImhhbmRsZVRpbWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiXG4+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9mZC10aW1lLXBpY2tlcj5cbiJdfQ==
|
|
185
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9zcmMvbGliL2Zvcm0vdGltZS1waWNrZXIvdGltZS1waWNrZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9zcmMvbGliL2Zvcm0vdGltZS1waWNrZXIvdGltZS1waWNrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osSUFBSSxFQUNKLE1BQU0sRUFDTixLQUFLLEVBR0wsUUFBUSxFQUNSLE1BQU0sRUFDTixJQUFJLEVBQ0osUUFBUSxFQUNSLFNBQVMsRUFDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxhQUFhLEVBQUUscUJBQXFCLEVBQWMsTUFBTSw0QkFBNEIsQ0FBQztBQUU5RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUV4RSxPQUFPLEVBQUUsU0FBUyxFQUFFLHdCQUF3QixFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDMUcsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7OztBQVF0RCxNQUFNLE9BQU8sMkJBQStCLFNBQVEsU0FBUztJQUN6RDs7T0FFRztJQUNILElBQ0ksS0FBSyxDQUFDLEtBQWU7UUFDckIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBQ0QsSUFBSSxLQUFLO1FBQ0wsT0FBTyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQVlE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LGlCQUFpQixtQkFFVix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDLENBQUMsRUFBRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsV0FBVyw2QkFBNkIsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUM7OzBCQTRKakcsUUFBUTs7MEJBQUksSUFBSTs7MEJBQ2hCLFFBQVE7OzBCQUFJLFFBQVE7OzBCQUNwQixRQUFROzswQkFBSSxRQUFROzswQkFDcEIsUUFBUTs7MEJBQUksUUFBUTs7MEJBQUksSUFBSTs7MEJBQUksTUFBTTsyQkFBQyxhQUFhOzswQkFDcEQsUUFBUTs7MEJBQUksUUFBUTs7MEJBQUksSUFBSTs7MEJBQUksTUFBTTsyQkFBQyxxQkFBcUI7NENBeko3RCxLQUFLO3NCQURSLEtBQUs7Z0JBWU4sSUFBSTtzQkFESCxLQUFLO2dCQUtOLGNBQWM7c0JBRGIsS0FBSztnQkFVRixRQUFRO3NCQURYLEtBQUs7Z0JBb0JOLGNBQWM7c0JBRGIsS0FBSztnQkFRTixjQUFjO3NCQURiLEtBQUs7Z0JBUU4sWUFBWTtzQkFEWCxLQUFLO2dCQU9OLFdBQVc7c0JBRFYsS0FBSztnQkFLTixvQkFBb0I7c0JBRG5CLEtBQUs7Z0JBS04sU0FBUztzQkFEUixLQUFLO2dCQUtOLE1BQU07c0JBREwsS0FBSztnQkFRTixTQUFTO3NCQURSLEtBQUs7Z0JBUUYsS0FBSztzQkFEUixLQUFLO2dCQWtCTixlQUFlO3NCQURkLEtBQUs7Z0JBS04sYUFBYTtzQkFEWixLQUFLO2dCQVNOLGlCQUFpQjtzQkFEaEIsS0FBSztnQkFRTixhQUFhO3NCQURaLEtBQUs7Z0JBUU4sV0FBVztzQkFEVixLQUFLO2dCQUtHLFlBQVk7c0JBRHBCLE1BQU07Z0JBS1AsbUJBQW1CO3NCQURsQixTQUFTO3VCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdCxcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBPcHRpb25hbCxcbiAgICBPdXRwdXQsXG4gICAgU2VsZixcbiAgICBTa2lwU2VsZixcbiAgICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sQ29udGFpbmVyLCBOZ0NvbnRyb2wsIE5nRm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZEX0ZPUk1fRklFTEQsIEZEX0ZPUk1fRklFTERfQ09OVFJPTCwgRm9ybVN0YXRlcyB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL2Zvcm1zJztcblxuaW1wb3J0IHsgVGltZVBpY2tlckNvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS90aW1lLXBpY2tlcic7XG5pbXBvcnQgeyBQbGFjZW1lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvc2hhcmVkJztcbmltcG9ydCB7IEJhc2VJbnB1dCwgUGxhdGZvcm1Gb3JtRmllbGRDb250cm9sLCBQbGF0Zm9ybUZvcm1GaWVsZCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vc2hhcmVkJztcbmltcG9ydCB7IHdhcm5PbmNlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZkcC10aW1lLXBpY2tlcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RpbWUtcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IEZEX0ZPUk1fRklFTERfQ09OVFJPTCwgdXNlRXhpc3Rpbmc6IFBsYXRmb3JtVGltZVBpY2tlckNvbXBvbmVudCwgbXVsdGk6IHRydWUgfV1cbn0pXG5leHBvcnQgY2xhc3MgUGxhdGZvcm1UaW1lUGlja2VyQ29tcG9uZW50PEQ+IGV4dGVuZHMgQmFzZUlucHV0IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICAgIC8qKlxuICAgICAqIEBJbnB1dCBkYXRlIHRpbWUgb2JqZWN0IHJlcHJlc2VudGF0aW9uXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgdmFsdWUodmFsdWU6IEQgfCBudWxsKSB7XG4gICAgICAgIHN1cGVyLnNldFZhbHVlKHZhbHVlKTtcbiAgICB9XG4gICAgZ2V0IHZhbHVlKCk6IEQgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHN1cGVyLmdldFZhbHVlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQElucHV0IGRhdGUgdGltZSBvYmplY3QgcmVwcmVzZW50YXRpb25cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHRpbWU6IEQ7XG5cbiAgICAvKiogQElucHV0IFdoZXRoZXIgdG8gc2hvdyBzcGlubmVyIGJ1dHRvbnMgKi9cbiAgICBASW5wdXQoKVxuICAgIHNwaW5uZXJCdXR0b25zID0gdHJ1ZTtcblxuICAgIC8qKiBAZGVwcmVjYXRlZFxuICAgICAqIE1lcmlkaWFuIGlzIGRlcHJlY2F0ZWQuIFVzZSBkaXNwbGF5Rm9ybWF0IGFuZCBwYXJzZUZvcm1hdCBpbnB1dHMgb3JcbiAgICAgKiBEYXRlVGltZUZvcm1hdHMuZGlzcGxheS50aW1lSW5wdXQgYW5kIERhdGVUaW1lRm9ybWF0cy5wYXJzZS50aW1lSW5wdXQgaW5zdGVhZC5cbiAgICAgKiBASW5wdXQgV2hlbiBzZXQgdG8gZmFsc2UsIHVzZXMgdGhlIDI0IGhvdXIgY2xvY2sgKGhvdXJzIHJhbmdpbmcgZnJvbSAwIHRvIDIzKS5cbiAgICAgKiBEZWZhdWx0IHZhbHVlIGJhc2VkIG9uIHRoZSBjdXJyZW50IGxvY2FsZSBmb3JtYXQgb3B0aW9uXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgbWVyaWRpYW4odmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG1heC1sZW5cbiAgICAgICAgd2Fybk9uY2UoXG4gICAgICAgICAgICAnUHJvcGVydHkgbWVyaWRpYW4gaXMgZGVwcmVjYXRlZC4nICtcbiAgICAgICAgICAgICAgICAnIFVzZSBNZXJpZGlhbiBpcyBkZXByZWNhdGVkLicgK1xuICAgICAgICAgICAgICAgICcgVXNlIGRpc3BsYXlGb3JtYXQgYW5kIHBhcnNlRm9ybWF0IGlucHV0cyBvciBEYXRlVGltZUZvcm1hdHMuZGlzcGxheS50aW1lSW5wdXQgYW5kIERhdGVUaW1lRm9ybWF0cy5wYXJzZS50aW1lSW5wdXQgaW5zdGVhZC4gaW5zdGVhZC4nXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuX21lcmlkaWFuID0gdmFsdWU7XG4gICAgfVxuXG4gICAgZ2V0IG1lcmlkaWFuKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fbWVyaWRpYW47XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQElucHV0IFdoZW4gc2V0IHRvIGZhbHNlLCBoaWRlcyB0aGUgaW5wdXQgZm9yIHNlY29uZHMuXG4gICAgICogRGVmYXVsdCB2YWx1ZSBiYXNlZCBvbiB0aGUgY3VycmVudCBsb2NhbGUgZm9ybWF0IG9wdGlvblxuICAgICAqICovXG4gICAgQElucHV0KClcbiAgICBkaXNwbGF5U2Vjb25kczogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIEBJbnB1dCBXaGVuIHNldCB0byBmYWxzZSwgaGlkZXMgdGhlIGlucHV0IGZvciBtaW51dGVzLlxuICAgICAqIERlZmF1bHQgdmFsdWUgYmFzZWQgb24gdGhlIGN1cnJlbnQgbG9jYWxlIGZvcm1hdCBvcHRpb25cbiAgICAgKiAqL1xuICAgIEBJbnB1dCgpXG4gICAgZGlzcGxheU1pbnV0ZXM6IGJvb2xlYW47XG5cbiAgICAvKipcbiAgICAgKiBASW5wdXQgV2hlbiBzZXQgdG8gZmFsc2UsIGhpZGVzIHRoZSBpbnB1dCBmb3IgaG91cnMuXG4gICAgICogRGVmYXVsdCB2YWx1ZSBiYXNlZCBvbiB0aGUgY3VycmVudCBsb2NhbGUgZm9ybWF0IG9wdGlvblxuICAgICAqICovXG4gICAgQElucHV0KClcbiAgICBkaXNwbGF5SG91cnM6IGJvb2xlYW47XG5cbiAgICAvKiogQElucHV0IERlZmF1bHQgdGltZSBwaWNrZXIgcGxhY2Vob2xkZXIgd2hpY2ggaXMgc2V0IGRlcGVuZGFudCBvbiB0aGUgaG91cnMsIG1pbnV0ZXMgYW5kIHNlY29uZHMuXG4gICAgICogT3RoZXJ3aXNlIEl0IGNhbiBiZSBzZXQgdG8gYSBkZWZhdWx0IHZhbHVlXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwbGFjZWhvbGRlcjogc3RyaW5nO1xuXG4gICAgLyoqIEFyaWEgbGFiZWwgZm9yIHRoZSB0aW1lIHBpY2tlciBpbnB1dC4gKi9cbiAgICBASW5wdXQoKVxuICAgIHRpbWVQaWNrZXJJbnB1dExhYmVsOiBzdHJpbmc7XG5cbiAgICAvKiogV2hldGhlciBhIG51bGwgaW5wdXQgaXMgY29uc2lkZXJlZCB2YWxpZChzdWNjZXNzKS4gKi9cbiAgICBASW5wdXQoKVxuICAgIGFsbG93TnVsbCA9IHRydWU7XG5cbiAgICAvKiogRGVmaW5lcyBpZiB0aW1lIGNvbXBvbmVudCBzaG91bGQgYmUgdXNlZCB3aXRoIHRhYmxldCBtb2RlICovXG4gICAgQElucHV0KClcbiAgICB0YWJsZXQgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqICBUaGUgcGxhY2VtZW50IG9mIHRoZSBwb3BvdmVyLiBJdCBjYW4gYmUgb25lIG9mOiB0b3AsIHRvcC1zdGFydCwgdG9wLWVuZCwgYm90dG9tLFxuICAgICAqICBib3R0b20tc3RhcnQsIGJvdHRvbS1lbmQsIHJpZ2h0LCByaWdodC1zdGFydCwgcmlnaHQtZW5kLCBsZWZ0LCBsZWZ0LXN0YXJ0LCBsZWZ0LWVuZC5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHBsYWNlbWVudDogUGxhY2VtZW50ID0gJ2JvdHRvbS1zdGFydCc7XG5cbiAgICAvKipcbiAgICAgKiAgVGhlIHN0YXRlIG9mIHRoZSBmb3JtIGNvbnRyb2wgLSBhcHBsaWVzIGNzcyBjbGFzc2VzLlxuICAgICAqICBDYW4gYmUgYHN1Y2Nlc3NgLCBgZXJyb3JgLCBgd2FybmluZ2AsIGBpbmZvcm1hdGlvbmAgb3IgYmxhbmsgZm9yIGRlZmF1bHQuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgc3RhdGUoc3RhdGU6IEZvcm1TdGF0ZXMgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgc3VwZXIuc3RhdGUgPSBzdGF0ZTtcbiAgICB9XG5cbiAgICBnZXQgc3RhdGUoKTogRm9ybVN0YXRlcyB7XG4gICAgICAgIGlmICh0aGlzLnRpbWVQaWNrZXJDb21wb25lbnQgJiYgdGhpcy50aW1lUGlja2VyQ29tcG9uZW50Ll9pc0ludmFsaWRUaW1lSW5wdXQpIHtcbiAgICAgICAgICAgIC8vIGlmIGFueSBvdGhlciBlcnJvciBmcm9tIGNvcmUgdGltZVBpY2tlclxuICAgICAgICAgICAgcmV0dXJuICdlcnJvcic7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHN1cGVyLnN0YXRlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgQWRkT24gQnV0dG9uIHNob3VsZCBiZSBmb2N1c2FibGVcbiAgICAgKiBAZGVmYXVsdCB0cnVlXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBidXR0b25Gb2N1c2FibGUgPSB0cnVlO1xuXG4gICAgLyoqIFdoZXRoZXIgdG8gdmFsaWRhdGUgdGhlIHRpbWUgcGlja2VyIGlucHV0LiAqL1xuICAgIEBJbnB1dCgpXG4gICAgdXNlVmFsaWRhdGlvbiA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiBASW5wdXQgd2hlbiBzZXQgdG8gdHJ1ZSwgdGltZSBpbnB1dHMgd29uJ3QgYWxsb3cgdG8gaGF2ZSAxIGRpZ2l0XG4gICAgICogZm9yIGV4YW1wbGUgOSB3aWxsIGJlY29tZSAwOVxuICAgICAqIGJ1dCAxMiB3aWxsIGJlIGtlcHQgYXMgMTIuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBrZWVwVHdvRGlnaXRzVGltZSA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogRGlzcGxheSBmb3JtYXQgb3B0aW9uIHRvIGN1c3RvbWl6ZSB0aW1lIGZvcm1hdCBpbiBpbnB1dCBjb250cm9sLlxuICAgICAqIE11c3QgYmUgYSBmb3JtYXQgb3B0aW9uIHRoYXQgaXMgdW5kZXJzdGFuZGFibGUgYnkgRGF0ZXRpbWVBZGFwdGVyLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZGlzcGxheUZvcm1hdDogdW5rbm93bjtcblxuICAgIC8qKlxuICAgICAqIFBhcnNlIGZvcm1hdCBvcHRpb24gdG8gY3VzdG9taXplIHRpbWUgZm9ybWF0IGluIGlucHV0IGNvbnRyb2wuXG4gICAgICogTXVzdCBiZSBhIGZvcm1hdCBvcHRpb24gdGhhdCBpcyB1bmRlcnN0YW5kYWJsZSBieSBEYXRldGltZUFkYXB0ZXIuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwYXJzZUZvcm1hdDogdW5rbm93bjtcblxuICAgIC8qKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIHN0YXRlIG9mIHRoZSBpc09wZW4gcHJvcGVydHkgY2hhbmdlcy4gKi9cbiAgICBAT3V0cHV0KClcbiAgICByZWFkb25seSBpc09wZW5DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoVGltZVBpY2tlckNvbXBvbmVudClcbiAgICB0aW1lUGlja2VyQ29tcG9uZW50OiBUaW1lUGlja2VyQ29tcG9uZW50PEQ+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9tZXJpZGlhbjogYm9vbGVhbjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIGNkOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICAgICAgQE9wdGlvbmFsKCkgQFNlbGYoKSBuZ0NvbnRyb2w6IE5nQ29udHJvbCxcbiAgICAgICAgQE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgY29udHJvbENvbnRhaW5lcjogQ29udHJvbENvbnRhaW5lcixcbiAgICAgICAgQE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgbmdGb3JtOiBOZ0Zvcm0sXG4gICAgICAgIEBPcHRpb25hbCgpIEBTa2lwU2VsZigpIEBIb3N0KCkgQEluamVjdChGRF9GT1JNX0ZJRUxEKSBmb3JtRmllbGQ6IFBsYXRmb3JtRm9ybUZpZWxkLFxuICAgICAgICBAT3B0aW9uYWwoKSBAU2tpcFNlbGYoKSBASG9zdCgpIEBJbmplY3QoRkRfRk9STV9GSUVMRF9DT05UUk9MKSBmb3JtQ29udHJvbDogUGxhdGZvcm1Gb3JtRmllbGRDb250cm9sXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGNkLCBlbGVtZW50UmVmLCBuZ0NvbnRyb2wsIGNvbnRyb2xDb250YWluZXIsIG5nRm9ybSwgZm9ybUZpZWxkLCBmb3JtQ29udHJvbCk7XG4gICAgICAgIGlmICh0aGlzLm5nQ29udHJvbCkge1xuICAgICAgICAgICAgdGhpcy5uZ0NvbnRyb2wudmFsdWVBY2Nlc3NvciA9IHRoaXM7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBNZXRob2QgdGhhdCBoYW5kbGVzIGNoYW5nZXMgd2hlbiBwb3BvdmVyIGlzIG9wZW5lZCBvciBjbG9zZWQuXG4gICAgICovXG4gICAgaGFuZGxlT3BlbkNoYW5nZShvcGVuOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNPcGVuQ2hhbmdlLmVtaXQob3Blbik7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogbG9naWMgdG8gaGFuZGxlIHZhbGlkYXRpb24gZnJvbSBib3RoIHBsYXRmb3JtIGZvcm1zIGFuZCBjb3JlIGRhdGV0aWltZXBpY2tlclxuICAgICAqIEBwYXJhbSB2YWx1ZSBpbnB1dHRlZFxuICAgICAqL1xuICAgIGhhbmRsZVRpbWVDaGFuZ2UodmFsdWU6IEQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMudGltZVBpY2tlckNvbXBvbmVudCkge1xuICAgICAgICAgICAgaWYgKHRoaXMudGltZVBpY2tlckNvbXBvbmVudC5faXNJbnZhbGlkVGltZUlucHV0KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdGF0ZSA9ICdlcnJvcic7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuc3RhdGUgPSAhdGhpcy50aW1lUGlja2VyQ29tcG9uZW50LnRpbWUgJiYgIXRoaXMuYWxsb3dOdWxsID8gJ2Vycm9yJyA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgICAgIHRoaXMuc3RhdGVDaGFuZ2VzLm5leHQoJ3RpbWUgcGlja2VyOiBoYW5kbGVUaW1lSW5wdXRDaGFuZ2UnKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgIH1cbn1cbiIsIjxmZC10aW1lLXBpY2tlclxuICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsXCJcbiAgICBbYXR0ci5hcmlhTGFiZWxsZWRCeV09XCJhcmlhTGFiZWxsZWRCeVwiXG4gICAgW2F0dHIuYXJpYURlc2NyaWJlZEJ5XT1cImFyaWFEZXNjcmliZWRCeVwiXG4gICAgW2lucHV0SWRdPVwiaWRcIlxuICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgW3RpbWVdPVwidGltZVwiXG4gICAgW21lcmlkaWFuXT1cIm1lcmlkaWFuXCJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgIFtkaXNwbGF5Rm9ybWF0XT1cImRpc3BsYXlGb3JtYXRcIlxuICAgIFtzcGlubmVyQnV0dG9uc109XCJzcGlubmVyQnV0dG9uc1wiXG4gICAgW2Rpc3BsYXlTZWNvbmRzXT1cImRpc3BsYXlTZWNvbmRzXCJcbiAgICBbZGlzcGxheU1pbnV0ZXNdPVwiZGlzcGxheU1pbnV0ZXNcIlxuICAgIFtkaXNwbGF5SG91cnNdPVwiZGlzcGxheUhvdXJzXCJcbiAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgIFt0aW1lUGlja2VySW5wdXRMYWJlbF09XCJ0aW1lUGlja2VySW5wdXRMYWJlbFwiXG4gICAgW2FsbG93TnVsbF09XCJhbGxvd051bGxcIlxuICAgIFt0YWJsZXRdPVwidGFibGV0XCJcbiAgICBbcGxhY2VtZW50XT1cInBsYWNlbWVudFwiXG4gICAgW3BhcnNlRm9ybWF0XT1cInBhcnNlRm9ybWF0XCJcbiAgICBbc3RhdGVdPVwic3RhdGVcIlxuICAgIFtidXR0b25Gb2N1c2FibGVdPVwiYnV0dG9uRm9jdXNhYmxlXCJcbiAgICBbdXNlVmFsaWRhdGlvbl09XCJ1c2VWYWxpZGF0aW9uXCJcbiAgICBba2VlcFR3b0RpZ2l0c1RpbWVdPVwia2VlcFR3b0RpZ2l0c1RpbWVcIlxuICAgIChpc09wZW5DaGFuZ2UpPVwiaGFuZGxlT3BlbkNoYW5nZSgkZXZlbnQpXCJcbiAgICAobmdNb2RlbENoYW5nZSk9XCJoYW5kbGVUaW1lQ2hhbmdlKCRldmVudClcIlxuICAgIFsobmdNb2RlbCldPVwidmFsdWVcIlxuPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZmQtdGltZS1waWNrZXI+XG4iXX0=
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ChangeDetectorRef, Directive, ElementRef, EventEmitter, HostListener, Inject, inject, Input, Optional, Output, TemplateRef, ViewChild } from '@angular/core';
|
|
2
2
|
import { ENTER, SPACE } from '@angular/cdk/keycodes';
|
|
3
|
-
import { KeyUtil } from '@fundamental-ngx/cdk/utils';
|
|
3
|
+
import { KeyUtil, warnOnce } from '@fundamental-ngx/cdk/utils';
|
|
4
4
|
import { CheckboxComponent } from '@fundamental-ngx/core/checkbox';
|
|
5
5
|
import { RadioButtonComponent } from '@fundamental-ngx/core/radio';
|
|
6
6
|
import { BaseComponent, isPresent } from '@fundamental-ngx/platform/shared';
|
|
@@ -101,7 +101,7 @@ export class BaseListItem extends BaseComponent {
|
|
|
101
101
|
* Attribute to hold avatar path
|
|
102
102
|
*/
|
|
103
103
|
set avatarSrc(value) {
|
|
104
|
-
|
|
104
|
+
warnOnce('`avatarSrc` is deprecated. Use `avatar` property for more flexible configuration.');
|
|
105
105
|
this._avatarConfig = merge(this._avatarConfig, { image: value });
|
|
106
106
|
}
|
|
107
107
|
get avatarSrc() {
|
|
@@ -115,7 +115,7 @@ export class BaseListItem extends BaseComponent {
|
|
|
115
115
|
* Attribute to hold avatar title for a11y
|
|
116
116
|
*/
|
|
117
117
|
set avatarTitle(value) {
|
|
118
|
-
|
|
118
|
+
warnOnce('`avatarTitle` is deprecated. Use `avatar` property for more flexible configuration.');
|
|
119
119
|
this._avatarConfig = merge(this._avatarConfig, { ariaLabel: value });
|
|
120
120
|
}
|
|
121
121
|
get avatarTitle() {
|
|
@@ -127,7 +127,7 @@ export class BaseListItem extends BaseComponent {
|
|
|
127
127
|
* attribute to hold primary/title icon
|
|
128
128
|
*/
|
|
129
129
|
set titleIcon(value) {
|
|
130
|
-
|
|
130
|
+
warnOnce('`titleIcon` is deprecated. See `icon` input property for more flexible icon configuration.');
|
|
131
131
|
this._iconConfig = merge(new ListIconConfig(), { glyph: value, ariaLabel: value });
|
|
132
132
|
}
|
|
133
133
|
get titleIcon() {
|
|
@@ -486,4 +486,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImpor
|
|
|
486
486
|
type: HostListener,
|
|
487
487
|
args: ['focusout', ['$event']]
|
|
488
488
|
}] } });
|
|
489
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1saXN0LWl0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3NyYy9saWIvbGlzdC9iYXNlLWxpc3QtaXRlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0gsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFlBQVksRUFDWixNQUFNLEVBQ04sTUFBTSxFQUNOLEtBQUssRUFHTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFdBQVcsRUFDWCxTQUFTLEVBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVyRCxPQUFPLEVBQWUsT0FBTyxFQUFRLE1BQU0sNEJBQTRCLENBQUM7QUFFeEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzVELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFHbEMsT0FBTyxFQUFFLHdCQUF3QixFQUF1QixNQUFNLDRCQUE0QixDQUFDOzs7QUFFM0YsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLFdBQVcsQ0FBQztBQUMzQyxJQUFJLGNBQWMsR0FBRyxDQUFDLENBQUM7QUFHdkIsTUFBTSxPQUFPLGNBQWM7SUFBM0I7UUFLSSw0QkFBNEI7UUFDNUIsVUFBSyxHQUEyQixFQUFFLENBQUM7UUFDbkM7OztXQUdHO1FBQ0gsU0FBSSxHQUEwQixXQUFXLENBQUM7SUFH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QjtzQkFEbkIsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBMkJuQyxRQUFRO3NCQURQLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQXVCakMsT0FBTztzQkFETixZQUFZO3VCQUFDLFVBQVUsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3Q2hlY2tlZCxcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgSW5qZWN0LFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0LFxuICAgIE9wdGlvbmFsLFxuICAgIE91dHB1dCxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFTlRFUiwgU1BBQ0UgfSBmcm9tICdAYW5ndWxhci9jZGsva2V5Y29kZXMnO1xuXG5pbXBvcnQgeyBDb2xvckFjY2VudCwgS2V5VXRpbCwgU2l6ZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IE51bGxhYmxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHsgQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvY2hlY2tib3gnO1xuaW1wb3J0IHsgUmFkaW9CdXR0b25Db21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvcmFkaW8nO1xuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCwgaXNQcmVzZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9wbGF0Zm9ybS9zaGFyZWQnO1xuaW1wb3J0IHsgTGlzdENvbmZpZyB9IGZyb20gJy4vbGlzdC5jb25maWcnO1xuaW1wb3J0IHsgRmRwTGlzdENvbXBvbmVudCB9IGZyb20gJy4vZmRwTGlzdENvbXBvbmVudC50b2tlbic7XG5pbXBvcnQgeyBtZXJnZSB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBJY29uQ29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2ljb24nO1xuaW1wb3J0IHsgRmRwTGlzdCwgTGlzdFR5cGUsIFNlbGVjdGlvblR5cGUgfSBmcm9tICcuL21vZGVscy9saXN0JztcbmltcG9ydCB7IEZEX0xJU1RfVU5SRUFEX0lORElDQVRPUiwgTGlzdFVucmVhZEluZGljYXRvciB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9saXN0JztcblxuZXhwb3J0IGNvbnN0IElTX0FDVElWRV9DTEFTUyA9ICdpcy1hY3RpdmUnO1xubGV0IG5leHRMaXN0SXRlbUlkID0gMDtcbmV4cG9ydCB0eXBlIFN0YXR1c1R5cGUgPSAnbmVnYXRpdmUnIHwgJ2NyaXRpY2FsJyB8ICdwb3NpdGl2ZScgfCAnaW5mb3JtYXRpdmUnO1xuXG5leHBvcnQgY2xhc3MgTGlzdEljb25Db25maWcge1xuICAgIC8qKiBUaGUgaWNvbiBuYW1lIHRvIGRpc3BsYXkuIFNlZSB0aGUgaWNvbiBwYWdlIGZvciB0aGUgbGlzdCBvZiBpY29uc1xuICAgICAqIGhlcmU6IGh0dHBzOi8vc2FwLmdpdGh1Yi5pby9mdW5kYW1lbnRhbC1uZ3gvaWNvblxuICAgICAqICovXG4gICAgZ2x5cGg6IEljb25Db21wb25lbnRbJ2dseXBoJ107XG4gICAgLyoqIHVzZXIncyBjdXN0b20gY2xhc3NlcyAqL1xuICAgIGNsYXNzOiBJY29uQ29tcG9uZW50WydjbGFzcyddID0gJyc7XG4gICAgLyoqXG4gICAgICogVGhlIGljb24gZm9udFxuICAgICAqIE9wdGlvbnMgaW5jbHVkZTogJ1NBUC1pY29ucycsICdCdXNpbmVzc1N1aXRlSW5BcHBTeW1ib2xzJyBhbmQgJ1NBUC1pY29ucy1UTlQnXG4gICAgICovXG4gICAgZm9udDogSWNvbkNvbXBvbmVudFsnZm9udCddID0gJ1NBUC1pY29ucyc7XG4gICAgLyoqIEFyaWEtbGFiZWwgZm9yIEljb24uICovXG4gICAgYXJpYUxhYmVsOiBJY29uQ29tcG9uZW50WydhcmlhTGFiZWwnXTtcbn1cblxuZXhwb3J0IGNsYXNzIExpc3RBdmF0YXJDb25maWcge1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY2xhc3MgPSAnJztcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGFyaWFMYWJlbDogTnVsbGFibGU8c3RyaW5nPiA9IG51bGw7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBhcmlhTGFiZWxsZWRieTogTnVsbGFibGU8c3RyaW5nPiA9IG51bGw7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBsYWJlbDogTnVsbGFibGU8c3RyaW5nPiA9IG51bGw7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBzaXplOiBTaXplID0gJ3MnO1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZ2x5cGg6IE51bGxhYmxlPHN0cmluZz4gPSBudWxsO1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgem9vbUdseXBoOiBOdWxsYWJsZTxzdHJpbmc+ID0gbnVsbDtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNpcmNsZSA9IGZhbHNlO1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgdHJhbnNwYXJlbnQgPSBmYWxzZTtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnRhaW4gPSBmYWxzZTtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHBsYWNlaG9sZGVyID0gZmFsc2U7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICB0aWxlID0gZmFsc2U7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBib3JkZXIgPSBmYWxzZTtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbG9yQWNjZW50OiBOdWxsYWJsZTxDb2xvckFjY2VudD4gPSBudWxsO1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcmFuZG9tID0gZmFsc2U7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjbGlja2FibGUgPSBmYWxzZTtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGltYWdlOiBOdWxsYWJsZTxzdHJpbmc+ID0gbnVsbDtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGFsdGVySWNvbjogTnVsbGFibGU8c3RyaW5nPiA9IG51bGw7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBiYWNrdXBJbWFnZTogTnVsbGFibGU8c3RyaW5nPiA9IG51bGw7XG59XG5cbi8qKlxuICogQmFzZSBpbnRlcmZhY2UgZm9yIGEgbGlzdCB2YXJpYW50IGRlZmluaXRpb24uXG4gKiBDYXB0dXJlcyBhIGxpc3QgaXRlbSB0ZW1wbGF0ZSBkZWZpbml0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEl0ZW1EZWYge1xuICAgIHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpc3RBZHZhbmNlZERlc2NyaXB0aW9uIHtcbiAgICB0ZXh0OiBzdHJpbmc7XG4gICAgYXJpYUxhYmVsPzogc3RyaW5nO1xuICAgIHRpdGxlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBMaXN0RGVzY3JpcHRpb24gPSBzdHJpbmcgfCBMaXN0QWR2YW5jZWREZXNjcmlwdGlvbjtcblxuZXhwb3J0IGNsYXNzIE1vZGlmeUl0ZW1FdmVudCB7XG4gICAgLyoqIExpc3QgSXRlbSBjb21wb25lbnQgKi9cbiAgICBzb3VyY2U6IEJhc2VMaXN0SXRlbTtcbiAgICAvKiogQWN0aW9uICovXG4gICAgYWN0aW9uOiAnZGVsZXRlJyB8ICdlZGl0Jztcbn1cblxuQERpcmVjdGl2ZSh7IHNlbGVjdG9yOiAnW2ZkcEl0ZW1EZWZdJyB9KVxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtY2xhc3Mtc3VmZml4XG5leHBvcnQgY2xhc3MgTGlzdEl0ZW1EZWYgaW1wbGVtZW50cyBJdGVtRGVmIHtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKC8qKiBAZG9jcy1wcml2YXRlICovIHB1YmxpYyB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55Pikge31cbn1cblxuLyoqXG4gKiBUaGlzIGNsYXNzIGNvbnRhaW5zIGNvbW1vbiBwcm9wZXJ0aWVzIHVzZWQgYWNyb3NzIGxpc3QgSXRlbSBjb21wb25lbnRzLlxuICogdGhpcyBjYW4gYmUgZXh0ZW5kZWQgdG8gcmVkdWNlIHRoZSBjb2RlIGR1cGxpY2F0aW9uIGFjcm9zcyBsaXN0IEl0ZW0gY29tcG9uZW50cy5cbiAqL1xuQERpcmVjdGl2ZSgpXG5leHBvcnQgY2xhc3MgQmFzZUxpc3RJdGVtIGV4dGVuZHMgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgQWZ0ZXJWaWV3Q2hlY2tlZCwgT25EZXN0cm95IHtcbiAgICAvKiogZGVmaW5lIGxhYmVsIGZvciBzY3JlZW4gcmVhZGVyICovXG4gICAgQElucHV0KClcbiAgICBhcmlhTGFiZWxsZWRCeTogc3RyaW5nO1xuXG4gICAgLyoqIGRlZmluZSBsZXZlbCBvZiBpdGVtIGZvciBzY3JlZW4gcmVhZGVyICovXG4gICAgQElucHV0KClcbiAgICBhcmlhTGV2ZWw6IG51bWJlcjtcblxuICAgIC8qKiBkZWZpbmUgcG9zaXRpb24gb2YgaXRlbSBmb3Igc2NyZWVuIHJlYWRlciAqL1xuICAgIEBJbnB1dCgpXG4gICAgYXJpYVBvc2luZXQ6IG51bWJlcjtcblxuICAgIC8qKiBBdmF0YXIgY29tcG9uZW50IHByb3BlcnRpZXMuIEBzZWUgQXZhdGFyQ29tcG9uZW50IGZvciBtb3JlIGRldGFpbHMgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBhdmF0YXIodmFsdWU6IFBhcnRpYWw8TGlzdEF2YXRhckNvbmZpZz4gfCBzdHJpbmcpIHtcbiAgICAgICAgdmFsdWUgPSB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnID8geyBpbWFnZTogdmFsdWUgfSA6IHZhbHVlO1xuICAgICAgICB0aGlzLl9hdmF0YXJDb25maWcgPSBtZXJnZShuZXcgTGlzdEF2YXRhckNvbmZpZygpLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgZ2V0IGF2YXRhcigpOiBMaXN0QXZhdGFyQ29uZmlnIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2F2YXRhckNvbmZpZztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAZGVwcmVjYXRlZFxuICAgICAqIFVzZSBgYXZhdGFyYCBwcm9wZXJ0eSBmb3IgbW9yZSBmbGV4aWJsZSBjb25maWd1cmF0aW9uLlxuICAgICAqXG4gICAgICogQGRlc2NyaXB0aW9uXG4gICAgICogQXR0cmlidXRlIHRvIGhvbGQgYXZhdGFyIHBhdGhcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBhdmF0YXJTcmModmFsdWU6IE51bGxhYmxlPHN0cmluZz4pIHtcbiAgICAgICAgY29uc29sZS53YXJuKCdgYXZhdGFyU3JjYCBpcyBkZXByZWNhdGVkLiBVc2UgYGF2YXRhcmAgcHJvcGVydHkgZm9yIG1vcmUgZmxleGlibGUgY29uZmlndXJhdGlvbi4nKTtcbiAgICAgICAgdGhpcy5fYXZhdGFyQ29uZmlnID0gbWVyZ2UodGhpcy5fYXZhdGFyQ29uZmlnLCB7IGltYWdlOiB2YWx1ZSB9KTtcbiAgICB9XG5cbiAgICBnZXQgYXZhdGFyU3JjKCk6IE51bGxhYmxlPHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5hdmF0YXI/LmltYWdlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBkZXByZWNhdGVkXG4gICAgICogVXNlIGBhdmF0YXJgIHByb3BlcnR5IGZvciBtb3JlIGZsZXhpYmxlIGNvbmZpZ3VyYXRpb24uXG4gICAgICpcbiAgICAgKiBAZGVzY3JpcHRpb25cbiAgICAgKiBBdHRyaWJ1dGUgdG8gaG9sZCBhdmF0YXIgdGl0bGUgZm9yIGExMXlcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBhdmF0YXJUaXRsZSh2YWx1ZTogTnVsbGFibGU8c3RyaW5nPikge1xuICAgICAgICBjb25zb2xlLndhcm4oJ2BhdmF0YXJUaXRsZWAgaXMgZGVwcmVjYXRlZC4gVXNlIGBhdmF0YXJgIHByb3BlcnR5IGZvciBtb3JlIGZsZXhpYmxlIGNvbmZpZ3VyYXRpb24uJyk7XG4gICAgICAgIHRoaXMuX2F2YXRhckNvbmZpZyA9IG1lcmdlKHRoaXMuX2F2YXRhckNvbmZpZywgeyBhcmlhTGFiZWw6IHZhbHVlIH0pO1xuICAgIH1cblxuICAgIGdldCBhdmF0YXJUaXRsZSgpOiBOdWxsYWJsZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXZhdGFyPy5hcmlhTGFiZWw7XG4gICAgfVxuXG4gICAgLyoqIGF0dHJpYnV0ZSB0byBob2xkIGNvdW50ZXIgdmFsdWUgKi9cbiAgICBASW5wdXQoKVxuICAgIGNvdW50ZXI/OiBzdHJpbmc7XG5cbiAgICAvKiogRGVzY3JpcHRpb24gb2YgdGhlIHRpdGxlICovXG4gICAgQElucHV0KClcbiAgICBkZXNjcmlwdGlvbjogTnVsbGFibGU8TGlzdERlc2NyaXB0aW9uPjtcblxuICAgIC8qKiBUbyBpbnZlcnQgdGhlIHN0YXR1cyBvZiBzZWNvbmRhcnkgdGV4dCAqL1xuICAgIEBJbnB1dCgpXG4gICAgaW52ZXJ0ZWQgPSBmYWxzZTtcblxuICAgIC8qKiBXaGV0aGVyIHRoZXJlIGlzIG5vIGRhdGEgaW5zaWRlIGxpc3QgaXRlbSAqL1xuICAgIEBJbnB1dCgpXG4gICAgbm9EYXRhVGV4dDogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHR5cGUgb2YgdGhlIHNlY29uZGFyeSB0ZXh0LmZkLWxpc3RfX2J5bGluZS1yaWdodC0tKlxuICAgICAqIENhbiBiZSBvbmUgb2YgKnBvc2l0aXZlKiwgKm5lZ2F0aXZlKiwgKmluZm9ybWF0aXZlKiwgKmNyaXRpY2FsKiwgKm5ldXRyYWxcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHN0YXR1c1R5cGU/OiBTdGF0dXNUeXBlO1xuXG4gICAgLyoqIGF0dHJpYnV0ZSB0byBob2xkIHNlY29uZGFyeSB0ZXh0Ki9cbiAgICBASW5wdXQoKVxuICAgIHNlY29uZGFyeTogTnVsbGFibGU8TGlzdERlc2NyaXB0aW9uPjtcblxuICAgIC8qKlxuICAgICAqIEVuYWJsaW5nIHRoaXMgZmxhZyBjYXVzZXMgZm9yY2luZyBzZWNvbmRhcnkgaXRlbSBkaXJlY3RpdmUgdG8gbm90IHdyYXAgdGV4dCxcbiAgICAgKiBpbnN0ZWFkIG9mIHdyYXBwaW5nIHRoZXJlIHdpbGwgYmUgdGV4dCB0cnVuY2F0aW9uXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZWNvbmRhcnlXcmFwPzogYm9vbGVhbjtcblxuICAgIC8qKiBUb29sdGlwIHRleHQgdG8gc2hvdyB3aGVuIGZvY3VzZWQgZm9yIG1vcmUgdGhhbiB0aW1lb3V0IHZhbHVlKi9cbiAgICBASW5wdXQoKVxuICAgIHRpdGxlPzogc3RyaW5nO1xuXG4gICAgLyoqIFVzZWQgZm9yIHBsYWNlaW5nIG5hdmlnYXRpb24gTGluayAqL1xuICAgIEBJbnB1dCgpXG4gICAgbGluazogTnVsbGFibGU8c3RyaW5nPjtcblxuICAgIC8qKlxuICAgICAqIEVuYWJsaW5nIHRoaXMgZmxhZyBjYXVzZXMgZm9yY2luZyB0aXRsZSBkaXJlY3RpdmUgdG8gbm90IHdyYXAgdGV4dCxcbiAgICAgKiBpbnN0ZWFkIG9mIHdyYXBwaW5nIHRoZXJlIHdpbGwgYmUgdGV4dCB0cnVuY2F0aW9uXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICB0aXRsZVdyYXA/OiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgU2VlIGBpY29uYCBpbnB1dCBwcm9wZXJ0eSBmb3IgbW9yZSBmbGV4aWJsZSBpY29uIGNvbmZpZ3VyYXRpb24uXG4gICAgICogQGRlc2NyaXB0aW9uXG4gICAgICogYXR0cmlidXRlIHRvIGhvbGQgcHJpbWFyeS90aXRsZSBpY29uXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgdGl0bGVJY29uKHZhbHVlOiBOdWxsYWJsZTxzdHJpbmc+KSB7XG4gICAgICAgIGNvbnNvbGUud2FybignYHRpdGxlSWNvbmAgaXMgZGVwcmVjYXRlZC4gU2VlIGBpY29uYCBpbnB1dCBwcm9wZXJ0eSBmb3IgbW9yZSBmbGV4aWJsZSBpY29uIGNvbmZpZ3VyYXRpb24uJyk7XG4gICAgICAgIHRoaXMuX2ljb25Db25maWcgPSBtZXJnZShuZXcgTGlzdEljb25Db25maWcoKSwgeyBnbHlwaDogdmFsdWUsIGFyaWFMYWJlbDogdmFsdWUgfSk7XG4gICAgfVxuXG4gICAgZ2V0IHRpdGxlSWNvbigpOiBOdWxsYWJsZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ljb25Db25maWcuZ2x5cGg7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogTGlzdCBpdGVtIGljb24gY29uZmlndXJhdGlvbi5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBpY29uKHZhbHVlOiBQYXJ0aWFsPExpc3RJY29uQ29uZmlnPikge1xuICAgICAgICB0aGlzLl9pY29uQ29uZmlnID0gbWVyZ2UobmV3IExpc3RJY29uQ29uZmlnKCksIHZhbHVlKTtcbiAgICB9XG5cbiAgICBnZXQgaWNvbigpOiBMaXN0SWNvbkNvbmZpZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pY29uQ29uZmlnO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIHNldHMgdGhlIGxpc3QgaXRlbSBpbiBib2xkIHRleHRcbiAgICAgKiB3aGljaCByZXNwcmVzZW50cyB1bnJlYWQgZGF0YVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgdW5SZWFkOiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogV2hldGhlciB0byBkaXNwbGF5IHVucmVhZCBub3RpZmljYXRpb24gY2lyY2xlLlxuICAgICAqL1xuICAgIGdldCBkaXNwbGF5VW5yZWFkTm90aWZpY2F0aW9uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLl9saXN0Py51bnJlYWRJbmRpY2F0b3I7XG4gICAgfVxuXG4gICAgLyoqIHJhZGlvIGJ1dHRvbiB2YWx1ZSAqL1xuICAgIEBJbnB1dCgpXG4gICAgdmFsdWU6IHN0cmluZztcblxuICAgIC8qKiBCeSBkZWZhdWx0IHNlbGVjdGlvbiBtb2RlIGlzICdub25lJyAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2VsZWN0aW9uTW9kZTogU2VsZWN0aW9uVHlwZSA9ICdub25lJztcblxuICAgIC8qKiBCeSBkZWZhdWx0IHNlbGVjdGlvbiBtb2RlIGlzICdhY3RpdmUnICovXG4gICAgQElucHV0KClcbiAgICBsaXN0VHlwZTogTGlzdFR5cGUgPSAnYWN0aXZlJztcblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgTmF2aWdhdGlvbiBtb2RlIGlzIGluY2x1ZGVkIHRvIGxpc3QgY29tcG9uZW50XG4gICAgICogZm9yIGFsbCB0aGUgaXRlbXNcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIG5hdmlnYXRlZCA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogV2hldGhlciBOYXZpZ2F0aW9uIG1vZGUgaXMgaW5jbHVkZWQgdG8gbGlzdCBjb21wb25lbnRcbiAgICAgKiBvbmx5IGEgc3Vic2V0IG9mIHRoZSBsaXN0IGl0ZW1zIGFyZSBuYXZpZ2FibGVcbiAgICAgKiB5b3Ugc2hvdWxkIGluZGljYXRlIHRob3NlIGJ5IGRpc3BsYXlpbmcgYSBuYXZpZ2F0aW9uIGFycm93XG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBuYXZpZ2F0aW9uSW5kaWNhdG9yID0gZmFsc2U7XG5cbiAgICAvKiogcm9sZSAqL1xuICAgIEBJbnB1dCgpXG4gICAgcm9sZSA9ICdvcHRpb24nO1xuXG4gICAgLyoqXG4gICAgICogZXZlbnQgZW1pdHRlciBmb3Igc2VsZWN0ZWQgaXRlbVxuICAgICAqIHNlcHJhdGUgUFIgZm9yIGN1c3RvbSBldmVudFxuICAgICAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGl0ZW1TZWxlY3RlZCA9IG5ldyBFdmVudEVtaXR0ZXI8TW9kaWZ5SXRlbUV2ZW50PigpO1xuXG4gICAgLyoqXG4gICAgICogRXZlbnQgZW1pdHRlZCBmb3Igc2VsZWN0ZWQgaXRlbSB0aHJvdWdoIHRoZSBjaGVja2JveC5cbiAgICAgKi9cbiAgICBAT3V0cHV0KClcbiAgICBpdGVtQ2hlY2tib3hTZWxlY3RlZCA9IG5ldyBFdmVudEVtaXR0ZXI8TW9kaWZ5SXRlbUV2ZW50PigpO1xuXG4gICAgLyoqIEV2ZW50IHNlbnQgd2hlbiBkZWxldGUsIGRldGFpbHMgb3IgYW55IG90aGVyIGFjdGlvbiBidXR0b25zIGFyZSBjbGlja2VkICovXG4gICAgQE91dHB1dCgpXG4gICAgYnV0dG9uQ2xpY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXI8TW9kaWZ5SXRlbUV2ZW50PigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAVmlld0NoaWxkKCdsaXN0SXRlbScsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICAgIGxpc3RJdGVtOiBFbGVtZW50UmVmPEhUTUxMSUVsZW1lbnQ+O1xuXG4gICAgLyoqIEFjY2VzcyBjaGlsZCBlbGVtZW50LCBmb3IgY2hlY2tpbmcgbGluayBjb250ZW50Ki9cbiAgICBAVmlld0NoaWxkKCdsaW5rRWxlbWVudCcsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICAgIGFuY2hvcjogRWxlbWVudFJlZjxIVE1MTGlua0VsZW1lbnQ+O1xuXG4gICAgLyoqIEFjY2VzcyBlZGl0IGJ1dHRvbiovXG4gICAgQFZpZXdDaGlsZCgnZWRpdCcsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICAgIGVkaXQ6IEVsZW1lbnRSZWY8SFRNTEJ1dHRvbkVsZW1lbnQ+O1xuXG4gICAgLyoqIEFjY2VzcyBkZWxldGUgYnV0dG9uKi9cbiAgICBAVmlld0NoaWxkKCdkZWxldGUnLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSlcbiAgICBkZWxldGU6IEVsZW1lbnRSZWY8SFRNTEJ1dHRvbkVsZW1lbnQ+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAVmlld0NoaWxkKENoZWNrYm94Q29tcG9uZW50KVxuICAgIGNoZWNrYm94Q29tcG9uZW50OiBDaGVja2JveENvbXBvbmVudDtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQFZpZXdDaGlsZChSYWRpb0J1dHRvbkNvbXBvbmVudClcbiAgICByYWRpb0J1dHRvbkNvbXBvbmVudDogUmFkaW9CdXR0b25Db21wb25lbnQ7XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogV2hldGhlciBCeSBsaW5lIG1vZGUgaXMgaW5jbHVkZWQgdG8gbGlzdCBjb21wb25lbnQsIGJ5IHdoaWNoXG4gICAgICogbGlzdCBpdGVtIHdpbGwgYWNjb21kYXRlIHRoZSBkYXRhIGluIDIgY29sdW1uXG4gICAgICovXG4gICAgX2hhc0J5TGluZSA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIFdoZXRoZXIgbGlzdGl0ZW0gaGFzIHJvdyBsZXZlbCBzZWxlY3Rpb24gZW5hYmxlZFxuICAgICAqL1xuICAgIHJvd1NlbGVjdGlvbjogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBXaGV0aGVyIGxpc3RpdGVtIGlzIHNlbGVjdGVkIGJpbmRlZCB0byB0ZW1wbGF0ZVxuICAgICAqL1xuICAgIF9zZWxlY3RlZCA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIGdldCB0aGUgZm9jdXNlZCBlbGVtZW50IGZvciBrZXkgbWFuYWdlclxuICAgICAqL1xuICAgIF9mb2N1c2VkOiBib29sZWFuO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9saXN0Q29tcG9uZW50ID0gaW5qZWN0PEZkcExpc3Q+KEZkcExpc3RDb21wb25lbnQpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9hdmF0YXJDb25maWc6IExpc3RBdmF0YXJDb25maWcgPSBuZXcgTGlzdEF2YXRhckNvbmZpZygpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9pY29uQ29uZmlnOiBMaXN0SWNvbkNvbmZpZyA9IG5ldyBMaXN0SWNvbkNvbmZpZygpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJvdGVjdGVkIF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHB1YmxpYyBpdGVtRWw6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICBwcm90ZWN0ZWQgX2xpc3RDb25maWc6IExpc3RDb25maWcsXG4gICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoRkRfTElTVF9VTlJFQURfSU5ESUNBVE9SKSBwcml2YXRlIHJlYWRvbmx5IF9saXN0OiBMaXN0VW5yZWFkSW5kaWNhdG9yXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKF9jaGFuZ2VEZXRlY3RvclJlZik7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIHJhZGlvIGJ1dHRvbiBzZWxlY3RlZCB2YWx1ZSBiaW5kZWQgdG8gdGVtcGxhdGVcbiAgICAgKi9cbiAgICBwcml2YXRlIF9zZWxlY3Rpb25WYWx1ZTogTnVsbGFibGU8c3RyaW5nPjtcblxuICAgIC8qKiBTZWxlY3Rpb24gdmFsdWUgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBzZWxlY3Rpb25WYWx1ZSh2YWx1ZTogTnVsbGFibGU8c3RyaW5nPikge1xuICAgICAgICB0aGlzLl9zZWxlY3RlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLl9zZWxlY3Rpb25WYWx1ZSA9IHZhbHVlO1xuICAgICAgICBpZiAodGhpcy5fc2VsZWN0aW9uVmFsdWUgIT09IHVuZGVmaW5lZCAmJiB0aGlzLnNlbGVjdGlvblZhbHVlICE9PSBudWxsKSB7XG4gICAgICAgICAgICB0aGlzLl9zZWxlY3RlZCA9IHRoaXMudmFsdWUgPT09IHRoaXMuX3NlbGVjdGlvblZhbHVlO1xuICAgICAgICB9XG4gICAgfVxuICAgIGdldCBzZWxlY3Rpb25WYWx1ZSgpOiBOdWxsYWJsZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3NlbGVjdGlvblZhbHVlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBTaG93IG5hdmlnYXRpb24gZm9yIHNpbmdsZSBsaXN0XG4gICAgICovXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaWQgPSBgZmRwLWxpc3QtaXRlbS0ke25leHRMaXN0SXRlbUlkKyt9YDtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgICAgICB0aGlzLml0ZW1TZWxlY3RlZC5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9saXN0Q29tcG9uZW50Ll9zZXR1cExpc3RJdGVtKHRoaXMpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBUbyBkZXRlY3QgY2hhbmdlcyBmcm9tIHBhcmVudC1saXN0Ym94IHRvIGxpc3QgaXRlbVxuICAgICAqIGZvciBleGFtcGxlIHNpbmdsZSwgbXVsdGkgb3B0aW9uIHNlbGVjdGlvbiB0aG9zZSBkZXRhaWxzXG4gICAgICogd2lsbCBiZSBkZWR1Y3RlZCBpbiBsaXN0IGl0ZW1cbiAgICAgKi9cbiAgICBuZ0FmdGVyVmlld0NoZWNrZWQoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRJdGVtOiBOdWxsYWJsZTxIVE1MTElFbGVtZW50PiA9IHRoaXMuaXRlbUVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignbGknKTtcbiAgICAgICAgaWYgKCFjdXJyZW50SXRlbSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY3VycmVudEl0ZW0uc2V0QXR0cmlidXRlKCdyb2xlJywgJ29wdGlvbicpO1xuICAgICAgICBjb25zdCBwYXJlbnROb2RlID0gY3VycmVudEl0ZW0ucGFyZW50Tm9kZSBpbnN0YW5jZW9mIEhUTUxFbGVtZW50ICYmIGN1cnJlbnRJdGVtLnBhcmVudE5vZGU7XG4gICAgICAgIGlmIChwYXJlbnROb2RlKSB7XG4gICAgICAgICAgICBwYXJlbnROb2RlLnJlbW92ZUF0dHJpYnV0ZSgndGl0bGUnKTtcbiAgICAgICAgICAgIHBhcmVudE5vZGUucmVtb3ZlQXR0cmlidXRlKCdhcmlhLWxhYmVsJyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5yb3dTZWxlY3Rpb24gfHwgdGhpcy5zZWxlY3Rpb25Nb2RlID09PSAnbXVsdGknIHx8IHRoaXMuc2VsZWN0aW9uTW9kZSA9PT0gJ3NpbmdsZScpIHtcbiAgICAgICAgICAgIGN1cnJlbnRJdGVtLnNldEF0dHJpYnV0ZSgnYXJpYS1zZWxlY3RlZCcsIGAkeyEhdGhpcy5fc2VsZWN0ZWR9YCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIENyZWF0ZWQgZm9jdXMgb24gbGlzdCBpdGVtIG9uIG1vdXNlY2xpY2ssXG4gICAgICogVXAsZG93biBhcnJvdyBwcmVzc1xuICAgICAqL1xuICAgIGZvY3VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmxpc3RJdGVtLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQcm9ncmFtbWF0aWNhbGx5IHNldCBzZWxlY3RlZCBzdGF0ZSBvZiB0aGUgbGlzdCBpdGVtLlxuICAgICAqIEBwYXJhbSBzZWxlY3RlZCBXaGV0aGVyIHRoZSBsaXN0IGl0ZW0gaXMgc2VsZWN0ZWRcbiAgICAgKi9cbiAgICBzZXRTZWxlY3RlZChzZWxlY3RlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBpZiAoc2VsZWN0ZWQgPT09IHRoaXMuX3NlbGVjdGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZXZlbnQgPSBuZXcgTW9kaWZ5SXRlbUV2ZW50KCk7XG4gICAgICAgIGV2ZW50LnNvdXJjZSA9IHRoaXM7XG4gICAgICAgIHRoaXMuX3NlbGVjdGVkID0gc2VsZWN0ZWQ7XG4gICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogT24gaXRlbSBjbGljayBldmVudCB3aWxsIGJlIGVtaXR0ZWRcbiAgICAgKi9cbiAgICBASG9zdExpc3RlbmVyKCdjbGljaycpXG4gICAgX29uSXRlbUNsaWNrKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5yb3dTZWxlY3Rpb24gJiYgdGhpcy5zZWxlY3Rpb25Nb2RlID09PSAnbXVsdGknKSB7XG4gICAgICAgICAgICB0aGlzLl9zZWxlY3RlZCA9ICF0aGlzLl9zZWxlY3RlZDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGV2ZW50ID0gbmV3IE1vZGlmeUl0ZW1FdmVudCgpO1xuICAgICAgICBldmVudC5zb3VyY2UgPSB0aGlzO1xuICAgICAgICB0aGlzLl9mb2N1c2VkID0gIXRoaXMuX2ZvY3VzZWQ7XG4gICAgICAgIHRoaXMuaXRlbVNlbGVjdGVkLmVtaXQoZXZlbnQpO1xuICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nLCBbJyRldmVudCddKVxuICAgIF9oYW5kbGVLZXlib2FyZEV2ZW50KGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICghS2V5VXRpbC5pc0tleUNvZGUoZXZlbnQsIFtFTlRFUiwgU1BBQ0VdKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuY2hlY2tib3hDb21wb25lbnQgfHwgdGhpcy5yYWRpb0J1dHRvbkNvbXBvbmVudCkge1xuICAgICAgICAgICAgdGhpcy5fb25LZXlib2FyZENsaWNrKGV2ZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuYW5jaG9yPy5uYXRpdmVFbGVtZW50LmNsaWNrKCk7XG5cbiAgICAgICAgaWYgKHRoaXMucm93U2VsZWN0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLl9zZWxlY3RlZCA9ICF0aGlzLl9zZWxlY3RlZDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0ICRldmVudCA9IG5ldyBNb2RpZnlJdGVtRXZlbnQoKTtcbiAgICAgICAgJGV2ZW50LnNvdXJjZSA9IHRoaXM7XG4gICAgICAgIHRoaXMuaXRlbVNlbGVjdGVkLmVtaXQoJGV2ZW50KTtcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEhhbmRsZXIgZm9yIG1vdXNlIGV2ZW50c1xuICAgICAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcbiAgICBfb25DbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5jaGVja2JveENvbXBvbmVudCAmJiAhdGhpcy5hbmNob3IpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5jaGVja2JveENvbXBvbmVudC5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0IGFzIE5vZGUpKSB7XG4gICAgICAgICAgICAgICAgLy8gY2xpY2tpbmcgb24gdGhlIGNoZWNrYm94IGlzIG5vdCBzdXBwcmVzc2VkXG4gICAgICAgICAgICAgICAgLy8gc28gd2Ugc2hvdWxkIG9ubHkgcHJvY2VzcyBjbGlja3MgaWYgY2xpY2tlZCBvbiB0aGUgbGlzdC1pdGVtLCBub3QgY2hlY2tib3ggaXRzZWxmXG4gICAgICAgICAgICAgICAgdGhpcy5jaGVja2JveENvbXBvbmVudC5uZXh0VmFsdWUoKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5yYWRpb0J1dHRvbkNvbXBvbmVudD8udmFsdWVDaGFuZ2UoZXZlbnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIGNvbnN0ICRldmVudCA9IG5ldyBNb2RpZnlJdGVtRXZlbnQoKTtcbiAgICAgICAgJGV2ZW50LnNvdXJjZSA9IHRoaXM7XG4gICAgICAgIHRoaXMuaXRlbVNlbGVjdGVkLmVtaXQoJGV2ZW50KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogaGVscHMgdG8gYXZvaWQgbXVsdGkgcm93cyBhY3RpdmUgY2xhc3Mgd2l0aCBuYXZpZ2F0aW9uXG4gICAgICovXG4gICAgQEhvc3RMaXN0ZW5lcignZm9jdXNvdXQnLCBbJyRldmVudCddKVxuICAgIF9vbkJsdXIoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKGlzUHJlc2VudCh0aGlzLmFuY2hvcikgJiYgIUtleVV0aWwuaXNLZXlDb2RlKGV2ZW50LCBbRU5URVIsIFNQQUNFXSkpIHtcbiAgICAgICAgICAgIHRoaXMuYW5jaG9yLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShJU19BQ1RJVkVfQ0xBU1MpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIG9uIGtleWRvd24gYXBwZW5kIGFjdGl2ZSBzdHlsZXMgb24gYWN0aW9uYWJsZSBpdGVtXG4gICAgICovXG4gICAgX29uS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoaXNQcmVzZW50KHRoaXMuYW5jaG9yKSAmJiBLZXlVdGlsLmlzS2V5Q29kZShldmVudCwgW0VOVEVSLCBTUEFDRV0pKSB7XG4gICAgICAgICAgICB0aGlzLmFuY2hvci5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5hZGQoSVNfQUNUSVZFX0NMQVNTKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBvbiBrZXl1cCByZW1vdmUgYWN0aXZlIHN0eWxlcyBmcm9tIGFjdGlvbmFibGUgaXRlbVxuICAgICAqL1xuICAgIF9vbktleVVwKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmIChpc1ByZXNlbnQodGhpcy5hbmNob3IpICYmIEtleVV0aWwuaXNLZXlDb2RlKGV2ZW50LCBbRU5URVIsIFNQQUNFXSkpIHtcbiAgICAgICAgICAgIHRoaXMuYW5jaG9yLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShJU19BQ1RJVkVfQ0xBU1MpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfb25DaGVja2JveE1vZGVsQ2hhbmdlKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBldmVudCA9IG5ldyBNb2RpZnlJdGVtRXZlbnQoKTtcbiAgICAgICAgZXZlbnQuc291cmNlID0gdGhpcztcbiAgICAgICAgdGhpcy5pdGVtQ2hlY2tib3hTZWxlY3RlZC5lbWl0KGV2ZW50KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogSGFuZGxlcyBhY3Rpb24gYnV0dG9uIGNsaWNrXG4gICAgICovXG4gICAgX29uQWN0aW9uQnV0dG9uQ2xpY2soYWN0aW9uOiAnZGVsZXRlJyB8ICdlZGl0Jyk6IHZvaWQge1xuICAgICAgICBjb25zdCBldmVudCA9IG5ldyBNb2RpZnlJdGVtRXZlbnQoKTtcbiAgICAgICAgZXZlbnQuc291cmNlID0gdGhpcztcbiAgICAgICAgZXZlbnQuYWN0aW9uID0gYWN0aW9uO1xuICAgICAgICB0aGlzLmJ1dHRvbkNsaWNrZWQuZW1pdChldmVudCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEhhbmRsZXMgYWN0aW9uIGJ1dHRvbiBjbGljayBvbiBrZXkgcHJlc3NcbiAgICAgKi9cbiAgICBfb25LZXlCdXR0b25DbGljayhldmVudDogS2V5Ym9hcmRFdmVudCwgYWN0aW9uOiAnZGVsZXRlJyB8ICdlZGl0Jyk6IHZvaWQge1xuICAgICAgICBpZiAoS2V5VXRpbC5pc0tleUNvZGUoZXZlbnQsIFtFTlRFUiwgU1BBQ0VdKSkge1xuICAgICAgICAgICAgdGhpcy5fb25BY3Rpb25CdXR0b25DbGljayhhY3Rpb24pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfaXNBZHZhbmNlZFRleHQodGV4dDogTGlzdERlc2NyaXB0aW9uKTogdGV4dCBpcyBMaXN0QWR2YW5jZWREZXNjcmlwdGlvbiB7XG4gICAgICAgIHJldHVybiB0eXBlb2YgdGV4dCAhPT0gJ3N0cmluZycgJiYgISF0ZXh0LnRleHQ7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9vbktleWJvYXJkQ2xpY2soZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jaGVja2JveENvbXBvbmVudD8ubmV4dFZhbHVlKCk7XG4gICAgICAgIHRoaXMucmFkaW9CdXR0b25Db21wb25lbnQ/LnZhbHVlQ2hhbmdlKGV2ZW50KTtcblxuICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgY29uc3QgJGV2ZW50ID0gbmV3IE1vZGlmeUl0ZW1FdmVudCgpO1xuICAgICAgICAkZXZlbnQuc291cmNlID0gdGhpcztcbiAgICAgICAgdGhpcy5pdGVtU2VsZWN0ZWQuZW1pdCgkZXZlbnQpO1xuICAgIH1cbn1cbiJdfQ==
|
|
489
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1saXN0LWl0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3NyYy9saWIvbGlzdC9iYXNlLWxpc3QtaXRlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0gsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFlBQVksRUFDWixNQUFNLEVBQ04sTUFBTSxFQUNOLEtBQUssRUFHTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFdBQVcsRUFDWCxTQUFTLEVBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVyRCxPQUFPLEVBQWUsT0FBTyxFQUFRLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRWxGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxhQUFhLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDNUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBR2xDLE9BQU8sRUFBRSx3QkFBd0IsRUFBdUIsTUFBTSw0QkFBNEIsQ0FBQzs7O0FBRTNGLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxXQUFXLENBQUM7QUFDM0MsSUFBSSxjQUFjLEdBQUcsQ0FBQyxDQUFDO0FBR3ZCLE1BQU0sT0FBTyxjQUFjO0lBQTNCO1FBS0ksNEJBQTRCO1FBQzVCLFVBQUssR0FBMkIsRUFBRSxDQUFDO1FBQ25DOzs7V0FHRztRQUNILFNBQUksR0FBMEIsV0FBVyxDQUFDO0lBRzlDLENBQUM7Q0FBQTtBQUVELE1BQU0sT0FBTyxnQkFBZ0I7SUFBN0I7UUFDSSxjQUFjO1FBQ2QsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUNYLGNBQWM7UUFDZCxjQUFTLEdBQXFCLElBQUksQ0FBQztRQUNuQyxjQUFjO1FBQ2QsbUJBQWMsR0FBcUIsSUFBSSxDQUFDO1FBQ3hDLGNBQWM7UUFDZCxVQUFLLEdBQXFCLElBQUksQ0FBQztRQUMvQixjQUFjO1FBQ2QsU0FBSSxHQUFTLEdBQUcsQ0FBQztRQUNqQixjQUFjO1FBQ2QsVUFBSyxHQUFxQixJQUFJLENBQUM7UUFDL0IsY0FBYztRQUNkLGNBQVMsR0FBcUIsSUFBSSxDQUFDO1FBQ25DLGNBQWM7UUFDZCxXQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ2YsY0FBYztRQUNkLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLGNBQWM7UUFDZCxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2hCLGNBQWM7UUFDZCxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUNwQixjQUFjO1FBQ2QsU0FBSSxHQUFHLEtBQUssQ0FBQztRQUNiLGNBQWM7UUFDZCxXQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ2YsY0FBYztRQUNkLGdCQUFXLEdBQTBCLElBQUksQ0FBQztRQUMxQyxjQUFjO1FBQ2QsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUNmLGNBQWM7UUFDZCxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLGNBQWM7UUFDZCxVQUFLLEdBQXFCLElBQUksQ0FBQztRQUMvQixjQUFjO1FBQ2QsY0FBUyxHQUFxQixJQUFJLENBQUM7UUFDbkMsY0FBYztRQUNkLGdCQUFXLEdBQXFCLElBQUksQ0FBQztJQUN6QyxDQUFDO0NBQUE7QUFrQkQsTUFBTSxPQUFPLGVBQWU7Q0FLM0I7QUFHRCxrRUFBa0U7QUFDbEUsTUFBTSxPQUFPLFdBQVc7SUFDcEIsY0FBYztJQUNkLFlBQVksb0JBQW9CLENBQVEsV0FBNkI7UUFBN0IsZ0JBQVcsR0FBWCxXQUFXLENBQWtCO0lBQUcsQ0FBQzs4R0FGaEUsV0FBVztrR0FBWCxXQUFXOzsyRkFBWCxXQUFXO2tCQUZ2QixTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLGNBQWMsRUFBRTs7QUFPdkM7OztHQUdHO0FBRUgsTUFBTSxPQUFPLFlBQWEsU0FBUSxhQUFhO0lBYTNDLHlFQUF5RTtJQUN6RSxJQUNJLE1BQU0sQ0FBQyxLQUF5QztRQUNoRCxLQUFLLEdBQUcsT0FBTyxLQUFLLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQzdELElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDLElBQUksZ0JBQWdCLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ04sT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzlCLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxJQUNJLFNBQVMsQ0FBQyxLQUF1QjtRQUNqQyxRQUFRLENBQUMsbUZBQW1GLENBQUMsQ0FBQztRQUM5RixJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDckUsQ0FBQztJQUVELElBQUksU0FBUztRQUNULE9BQU8sSUFBSSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUM7SUFDOUIsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILElBQ0ksV0FBVyxDQUFDLEtBQXVCO1FBQ25DLFFBQVEsQ0FBQyxxRkFBcUYsQ0FBQyxDQUFDO1FBQ2hHLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ1gsT0FBTyxJQUFJLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQztJQUNsQyxDQUFDO0lBbUREOzs7O09BSUc7SUFDSCxJQUNJLFNBQVMsQ0FBQyxLQUF1QjtRQUNqQyxRQUFRLENBQUMsNEZBQTRGLENBQUMsQ0FBQztRQUN2RyxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQyxJQUFJLGNBQWMsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUN2RixDQUFDO0lBRUQsSUFBSSxTQUFTO1FBQ1QsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztJQUNsQyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUNJLElBQUksQ0FBQyxLQUE4QjtRQUNuQyxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQyxJQUFJLGNBQWMsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRCxJQUFJLElBQUk7UUFDSixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUIsQ0FBQztJQVNEOztPQUVHO0lBQ0gsSUFBSSx5QkFBeUI7UUFDekIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxlQUFlLENBQUM7SUFDekMsQ0FBQztJQTRHRCxjQUFjO0lBQ2QsWUFDYyxrQkFBcUMsRUFDeEMsTUFBK0IsRUFDNUIsV0FBdUIsRUFDOEIsS0FBMEI7UUFFekYsS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFMaEIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQUN4QyxXQUFNLEdBQU4sTUFBTSxDQUF5QjtRQUM1QixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQUM4QixVQUFLLEdBQUwsS0FBSyxDQUFxQjtRQWpNN0YsNkNBQTZDO1FBRTdDLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFvRmpCLDBDQUEwQztRQUUxQyxrQkFBYSxHQUFrQixNQUFNLENBQUM7UUFFdEMsNENBQTRDO1FBRTVDLGFBQVEsR0FBYSxRQUFRLENBQUM7UUFFOUI7OztXQUdHO1FBRUgsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUVsQjs7OztXQUlHO1FBRUgsd0JBQW1CLEdBQUcsS0FBSyxDQUFDO1FBRTVCLFdBQVc7UUFFWCxTQUFJLEdBQUcsUUFBUSxDQUFDO1FBRWhCOzs7V0FHRztRQUVILGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQW1CLENBQUM7UUFFbkQ7O1dBRUc7UUFFSCx5QkFBb0IsR0FBRyxJQUFJLFlBQVksRUFBbUIsQ0FBQztRQUUzRCw4RUFBOEU7UUFFOUUsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBbUIsQ0FBQztRQTBCcEQ7Ozs7V0FJRztRQUNILGVBQVUsR0FBRyxLQUFLLENBQUM7UUFRbkI7OztXQUdHO1FBQ0gsY0FBUyxHQUFHLEtBQUssQ0FBQztRQVFsQixjQUFjO1FBQ04sbUJBQWMsR0FBRyxNQUFNLENBQVUsZ0JBQWdCLENBQUMsQ0FBQztRQUUzRCxjQUFjO1FBQ04sa0JBQWEsR0FBcUIsSUFBSSxnQkFBZ0IsRUFBRSxDQUFDO1FBRWpFLGNBQWM7UUFDTixnQkFBVyxHQUFtQixJQUFJLGNBQWMsRUFBRSxDQUFDO0lBVTNELENBQUM7SUFRRCxzQkFBc0I7SUFDdEIsSUFDSSxjQUFjLENBQUMsS0FBdUI7UUFDdEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDdkIsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7UUFDN0IsSUFBSSxJQUFJLENBQUMsZUFBZSxLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsY0FBYyxLQUFLLElBQUksRUFBRTtZQUNwRSxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLGVBQWUsQ0FBQztTQUN4RDtJQUNMLENBQUM7SUFDRCxJQUFJLGNBQWM7UUFDZCxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDaEMsQ0FBQztJQUVEOzs7T0FHRztJQUNILFFBQVE7UUFDSixJQUFJLENBQUMsRUFBRSxHQUFHLGlCQUFpQixjQUFjLEVBQUUsRUFBRSxDQUFDO0lBQ2xELENBQUM7SUFFRCxjQUFjO0lBQ2QsV0FBVztRQUNQLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxjQUFjO0lBQ2QsZUFBZTtRQUNYLElBQUksQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGtCQUFrQjtRQUNkLE1BQU0sV0FBVyxHQUE0QixJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0YsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNkLE9BQU87U0FDVjtRQUVELFdBQVcsQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzNDLE1BQU0sVUFBVSxHQUFHLFdBQVcsQ0FBQyxVQUFVLFlBQVksV0FBVyxJQUFJLFdBQVcsQ0FBQyxVQUFVLENBQUM7UUFDM0YsSUFBSSxVQUFVLEVBQUU7WUFDWixVQUFVLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3BDLFVBQVUsQ0FBQyxlQUFlLENBQUMsWUFBWSxDQUFDLENBQUM7U0FDNUM7UUFFRCxJQUFJLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLGFBQWEsS0FBSyxPQUFPLElBQUksSUFBSSxDQUFDLGFBQWEsS0FBSyxRQUFRLEVBQUU7WUFDeEYsV0FBVyxDQUFDLFlBQVksQ0FBQyxlQUFlLEVBQUUsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7U0FDcEU7UUFFRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDNUMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxLQUFLO1FBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUVEOzs7T0FHRztJQUNILFdBQVcsQ0FBQyxRQUFpQjtRQUN6QixJQUFJLFFBQVEsS0FBSyxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQzdCLE9BQU87U0FDVjtRQUNELE1BQU0sS0FBSyxHQUFHLElBQUksZUFBZSxFQUFFLENBQUM7UUFDcEMsS0FBSyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDcEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUM7UUFDMUIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFFRDs7O09BR0c7SUFFSCxZQUFZO1FBQ1IsSUFBSSxJQUFJLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQyxhQUFhLEtBQUssT0FBTyxFQUFFO1lBQ3JELElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1NBQ3BDO1FBRUQsTUFBTSxLQUFLLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQztRQUNwQyxLQUFLLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUNwQixJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUMvQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QixJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDM0MsQ0FBQztJQUVELGNBQWM7SUFFZCxvQkFBb0IsQ0FBQyxLQUFvQjtRQUNyQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUMsRUFBRTtZQUMzQyxPQUFPO1NBQ1Y7UUFFRCxJQUFJLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUU7WUFDckQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ2hDO1FBRUQsSUFBSSxDQUFDLE1BQU0sRUFBRSxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFbkMsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ25CLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1NBQ3BDO1FBRUQsTUFBTSxNQUFNLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQztRQUNyQyxNQUFNLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUNyQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMvQixJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDM0MsQ0FBQztJQUVEOzs7T0FHRztJQUVILFFBQVEsQ0FBQyxLQUFpQjtRQUN0QixJQUFJLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDeEMsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBYyxDQUFDLEVBQUU7Z0JBQ2pGLDZDQUE2QztnQkFDN0Msb0ZBQW9GO2dCQUNwRixJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxFQUFFLENBQUM7YUFDdEM7WUFFRCxJQUFJLENBQUMsb0JBQW9CLEVBQUUsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ2pEO1FBRUQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3ZDLE1BQU0sTUFBTSxHQUFHLElBQUksZUFBZSxFQUFFLENBQUM7UUFDckMsTUFBTSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDckIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVEOzs7T0FHRztJQUVILE9BQU8sQ0FBQyxLQUFvQjtRQUN4QixJQUFJLFNBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUFFO1lBQ3JFLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDL0Q7SUFDTCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsVUFBVSxDQUFDLEtBQW9CO1FBQzNCLElBQUksU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUFFO1lBQ3BFLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDNUQ7SUFDTCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsUUFBUSxDQUFDLEtBQW9CO1FBQ3pCLElBQUksU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUFFO1lBQ3BFLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDL0Q7SUFDTCxDQUFDO0lBRUQsY0FBYztJQUNkLHNCQUFzQjtRQUNsQixNQUFNLEtBQUssR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO1FBQ3BDLEtBQUssQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVEOzs7T0FHRztJQUNILG9CQUFvQixDQUFDLE1BQXlCO1FBQzFDLE1BQU0sS0FBSyxHQUFHLElBQUksZUFBZSxFQUFFLENBQUM7UUFDcEMsS0FBSyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDcEIsS0FBSyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDdEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVEOzs7T0FHRztJQUNILGlCQUFpQixDQUFDLEtBQW9CLEVBQUUsTUFBeUI7UUFDN0QsSUFBSSxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUFFO1lBQzFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUNyQztJQUNMLENBQUM7SUFFRCxjQUFjO0lBQ2QsZUFBZSxDQUFDLElBQXFCO1FBQ2pDLE9BQU8sT0FBTyxJQUFJLEtBQUssUUFBUSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ25ELENBQUM7SUFFRCxjQUFjO0lBQ04sZ0JBQWdCLENBQUMsS0FBb0I7UUFDekMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFOUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3ZDLE1BQU0sTUFBTSxHQUFHLElBQUksZUFBZSxFQUFFLENBQUM7UUFDckMsTUFBTSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDckIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbkMsQ0FBQzs4R0F0ZVEsWUFBWSx1R0FtUUcsd0JBQXdCO2tHQW5RdkMsWUFBWSxzK0JBcU1VLFVBQVUsZ0dBSVAsVUFBVSx1RkFJakIsVUFBVSwyRkFJUixVQUFVLGlFQUk1QixpQkFBaUIsdUZBSWpCLG9CQUFvQjs7MkZBek50QixZQUFZO2tCQUR4QixTQUFTOzswQkFvUUQsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyx3QkFBd0I7NENBaFFoRCxjQUFjO3NCQURiLEtBQUs7Z0JBS04sU0FBUztzQkFEUixLQUFLO2dCQUtOLFdBQVc7c0JBRFYsS0FBSztnQkFLRixNQUFNO3NCQURULEtBQUs7Z0JBa0JGLFNBQVM7c0JBRFosS0FBSztnQkFrQkYsV0FBVztzQkFEZCxLQUFLO2dCQVlOLE9BQU87c0JBRE4sS0FBSztnQkFLTixXQUFXO3NCQURWLEtBQUs7Z0JBS04sUUFBUTtzQkFEUCxLQUFLO2dCQUtOLFVBQVU7c0JBRFQsS0FBSztnQkFRTixVQUFVO3NCQURULEtBQUs7Z0JBS04sU0FBUztzQkFEUixLQUFLO2dCQVFOLGFBQWE7c0JBRFosS0FBSztnQkFLTixLQUFLO3NCQURKLEtBQUs7Z0JBS04sSUFBSTtzQkFESCxLQUFLO2dCQVFOLFNBQVM7c0JBRFIsS0FBSztnQkFTRixTQUFTO3NCQURaLEtBQUs7Z0JBY0YsSUFBSTtzQkFEUCxLQUFLO2dCQWNOLE1BQU07c0JBREwsS0FBSztnQkFZTixLQUFLO3NCQURKLEtBQUs7Z0JBS04sYUFBYTtzQkFEWixLQUFLO2dCQUtOLFFBQVE7c0JBRFAsS0FBSztnQkFRTixTQUFTO3NCQURSLEtBQUs7Z0JBU04sbUJBQW1CO3NCQURsQixLQUFLO2dCQUtOLElBQUk7c0JBREgsS0FBSztnQkFRTixZQUFZO3NCQURYLE1BQU07Z0JBT1Asb0JBQW9CO3NCQURuQixNQUFNO2dCQUtQLGFBQWE7c0JBRFosTUFBTTtnQkFLUCxRQUFRO3NCQURQLFNBQVM7dUJBQUMsVUFBVSxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFLM0MsTUFBTTtzQkFETCxTQUFTO3VCQUFDLGFBQWEsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUU7Z0JBSzlDLElBQUk7c0JBREgsU0FBUzt1QkFBQyxNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFO2dCQUt2QyxNQUFNO3NCQURMLFNBQVM7dUJBQUMsUUFBUSxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFLekMsaUJBQWlCO3NCQURoQixTQUFTO3VCQUFDLGlCQUFpQjtnQkFLNUIsb0JBQW9CO3NCQURuQixTQUFTO3VCQUFDLG9CQUFvQjtnQkF1RDNCLGNBQWM7c0JBRGpCLEtBQUs7Z0JBcUZOLFlBQVk7c0JBRFgsWUFBWTt1QkFBQyxPQUFPO2dCQWVyQixvQkFBb0I7c0JBRG5CLFlBQVk7dUJBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQTJCbkMsUUFBUTtzQkFEUCxZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkF1QmpDLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxVQUFVLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyVmlld0NoZWNrZWQsXG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIEluamVjdCxcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBPcHRpb25hbCxcbiAgICBPdXRwdXQsXG4gICAgVGVtcGxhdGVSZWYsXG4gICAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRU5URVIsIFNQQUNFIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2tleWNvZGVzJztcblxuaW1wb3J0IHsgQ29sb3JBY2NlbnQsIEtleVV0aWwsIFNpemUsIHdhcm5PbmNlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHsgTnVsbGFibGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBDaGVja2JveENvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9jaGVja2JveCc7XG5pbXBvcnQgeyBSYWRpb0J1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9yYWRpbyc7XG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50LCBpc1ByZXNlbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L3BsYXRmb3JtL3NoYXJlZCc7XG5pbXBvcnQgeyBMaXN0Q29uZmlnIH0gZnJvbSAnLi9saXN0LmNvbmZpZyc7XG5pbXBvcnQgeyBGZHBMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9mZHBMaXN0Q29tcG9uZW50LnRva2VuJztcbmltcG9ydCB7IG1lcmdlIH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7IEljb25Db21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvaWNvbic7XG5pbXBvcnQgeyBGZHBMaXN0LCBMaXN0VHlwZSwgU2VsZWN0aW9uVHlwZSB9IGZyb20gJy4vbW9kZWxzL2xpc3QnO1xuaW1wb3J0IHsgRkRfTElTVF9VTlJFQURfSU5ESUNBVE9SLCBMaXN0VW5yZWFkSW5kaWNhdG9yIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2xpc3QnO1xuXG5leHBvcnQgY29uc3QgSVNfQUNUSVZFX0NMQVNTID0gJ2lzLWFjdGl2ZSc7XG5sZXQgbmV4dExpc3RJdGVtSWQgPSAwO1xuZXhwb3J0IHR5cGUgU3RhdHVzVHlwZSA9ICduZWdhdGl2ZScgfCAnY3JpdGljYWwnIHwgJ3Bvc2l0aXZlJyB8ICdpbmZvcm1hdGl2ZSc7XG5cbmV4cG9ydCBjbGFzcyBMaXN0SWNvbkNvbmZpZyB7XG4gICAgLyoqIFRoZSBpY29uIG5hbWUgdG8gZGlzcGxheS4gU2VlIHRoZSBpY29uIHBhZ2UgZm9yIHRoZSBsaXN0IG9mIGljb25zXG4gICAgICogaGVyZTogaHR0cHM6Ly9zYXAuZ2l0aHViLmlvL2Z1bmRhbWVudGFsLW5neC9pY29uXG4gICAgICogKi9cbiAgICBnbHlwaDogSWNvbkNvbXBvbmVudFsnZ2x5cGgnXTtcbiAgICAvKiogdXNlcidzIGN1c3RvbSBjbGFzc2VzICovXG4gICAgY2xhc3M6IEljb25Db21wb25lbnRbJ2NsYXNzJ10gPSAnJztcbiAgICAvKipcbiAgICAgKiBUaGUgaWNvbiBmb250XG4gICAgICogT3B0aW9ucyBpbmNsdWRlOiAnU0FQLWljb25zJywgJ0J1c2luZXNzU3VpdGVJbkFwcFN5bWJvbHMnIGFuZCAnU0FQLWljb25zLVROVCdcbiAgICAgKi9cbiAgICBmb250OiBJY29uQ29tcG9uZW50Wydmb250J10gPSAnU0FQLWljb25zJztcbiAgICAvKiogQXJpYS1sYWJlbCBmb3IgSWNvbi4gKi9cbiAgICBhcmlhTGFiZWw6IEljb25Db21wb25lbnRbJ2FyaWFMYWJlbCddO1xufVxuXG5leHBvcnQgY2xhc3MgTGlzdEF2YXRhckNvbmZpZyB7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjbGFzcyA9ICcnO1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgYXJpYUxhYmVsOiBOdWxsYWJsZTxzdHJpbmc+ID0gbnVsbDtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGFyaWFMYWJlbGxlZGJ5OiBOdWxsYWJsZTxzdHJpbmc+ID0gbnVsbDtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGxhYmVsOiBOdWxsYWJsZTxzdHJpbmc+ID0gbnVsbDtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHNpemU6IFNpemUgPSAncyc7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBnbHlwaDogTnVsbGFibGU8c3RyaW5nPiA9IG51bGw7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICB6b29tR2x5cGg6IE51bGxhYmxlPHN0cmluZz4gPSBudWxsO1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY2lyY2xlID0gZmFsc2U7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICB0cmFuc3BhcmVudCA9IGZhbHNlO1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29udGFpbiA9IGZhbHNlO1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcGxhY2Vob2xkZXIgPSBmYWxzZTtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHRpbGUgPSBmYWxzZTtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGJvcmRlciA9IGZhbHNlO1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29sb3JBY2NlbnQ6IE51bGxhYmxlPENvbG9yQWNjZW50PiA9IG51bGw7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICByYW5kb20gPSBmYWxzZTtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNsaWNrYWJsZSA9IGZhbHNlO1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgaW1hZ2U6IE51bGxhYmxlPHN0cmluZz4gPSBudWxsO1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgYWx0ZXJJY29uOiBOdWxsYWJsZTxzdHJpbmc+ID0gbnVsbDtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGJhY2t1cEltYWdlOiBOdWxsYWJsZTxzdHJpbmc+ID0gbnVsbDtcbn1cblxuLyoqXG4gKiBCYXNlIGludGVyZmFjZSBmb3IgYSBsaXN0IHZhcmlhbnQgZGVmaW5pdGlvbi5cbiAqIENhcHR1cmVzIGEgbGlzdCBpdGVtIHRlbXBsYXRlIGRlZmluaXRpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSXRlbURlZiB7XG4gICAgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGlzdEFkdmFuY2VkRGVzY3JpcHRpb24ge1xuICAgIHRleHQ6IHN0cmluZztcbiAgICBhcmlhTGFiZWw/OiBzdHJpbmc7XG4gICAgdGl0bGU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIExpc3REZXNjcmlwdGlvbiA9IHN0cmluZyB8IExpc3RBZHZhbmNlZERlc2NyaXB0aW9uO1xuXG5leHBvcnQgY2xhc3MgTW9kaWZ5SXRlbUV2ZW50IHtcbiAgICAvKiogTGlzdCBJdGVtIGNvbXBvbmVudCAqL1xuICAgIHNvdXJjZTogQmFzZUxpc3RJdGVtO1xuICAgIC8qKiBBY3Rpb24gKi9cbiAgICBhY3Rpb246ICdkZWxldGUnIHwgJ2VkaXQnO1xufVxuXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICdbZmRwSXRlbURlZl0nIH0pXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1jbGFzcy1zdWZmaXhcbmV4cG9ydCBjbGFzcyBMaXN0SXRlbURlZiBpbXBsZW1lbnRzIEl0ZW1EZWYge1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IoLyoqIEBkb2NzLXByaXZhdGUgKi8gcHVibGljIHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+KSB7fVxufVxuXG4vKipcbiAqIFRoaXMgY2xhc3MgY29udGFpbnMgY29tbW9uIHByb3BlcnRpZXMgdXNlZCBhY3Jvc3MgbGlzdCBJdGVtIGNvbXBvbmVudHMuXG4gKiB0aGlzIGNhbiBiZSBleHRlbmRlZCB0byByZWR1Y2UgdGhlIGNvZGUgZHVwbGljYXRpb24gYWNyb3NzIGxpc3QgSXRlbSBjb21wb25lbnRzLlxuICovXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBjbGFzcyBCYXNlTGlzdEl0ZW0gZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBBZnRlclZpZXdDaGVja2VkLCBPbkRlc3Ryb3kge1xuICAgIC8qKiBkZWZpbmUgbGFiZWwgZm9yIHNjcmVlbiByZWFkZXIgKi9cbiAgICBASW5wdXQoKVxuICAgIGFyaWFMYWJlbGxlZEJ5OiBzdHJpbmc7XG5cbiAgICAvKiogZGVmaW5lIGxldmVsIG9mIGl0ZW0gZm9yIHNjcmVlbiByZWFkZXIgKi9cbiAgICBASW5wdXQoKVxuICAgIGFyaWFMZXZlbDogbnVtYmVyO1xuXG4gICAgLyoqIGRlZmluZSBwb3NpdGlvbiBvZiBpdGVtIGZvciBzY3JlZW4gcmVhZGVyICovXG4gICAgQElucHV0KClcbiAgICBhcmlhUG9zaW5ldDogbnVtYmVyO1xuXG4gICAgLyoqIEF2YXRhciBjb21wb25lbnQgcHJvcGVydGllcy4gQHNlZSBBdmF0YXJDb21wb25lbnQgZm9yIG1vcmUgZGV0YWlscyAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IGF2YXRhcih2YWx1ZTogUGFydGlhbDxMaXN0QXZhdGFyQ29uZmlnPiB8IHN0cmluZykge1xuICAgICAgICB2YWx1ZSA9IHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgPyB7IGltYWdlOiB2YWx1ZSB9IDogdmFsdWU7XG4gICAgICAgIHRoaXMuX2F2YXRhckNvbmZpZyA9IG1lcmdlKG5ldyBMaXN0QXZhdGFyQ29uZmlnKCksIHZhbHVlKTtcbiAgICB9XG5cbiAgICBnZXQgYXZhdGFyKCk6IExpc3RBdmF0YXJDb25maWcge1xuICAgICAgICByZXR1cm4gdGhpcy5fYXZhdGFyQ29uZmlnO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBkZXByZWNhdGVkXG4gICAgICogVXNlIGBhdmF0YXJgIHByb3BlcnR5IGZvciBtb3JlIGZsZXhpYmxlIGNvbmZpZ3VyYXRpb24uXG4gICAgICpcbiAgICAgKiBAZGVzY3JpcHRpb25cbiAgICAgKiBBdHRyaWJ1dGUgdG8gaG9sZCBhdmF0YXIgcGF0aFxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IGF2YXRhclNyYyh2YWx1ZTogTnVsbGFibGU8c3RyaW5nPikge1xuICAgICAgICB3YXJuT25jZSgnYGF2YXRhclNyY2AgaXMgZGVwcmVjYXRlZC4gVXNlIGBhdmF0YXJgIHByb3BlcnR5IGZvciBtb3JlIGZsZXhpYmxlIGNvbmZpZ3VyYXRpb24uJyk7XG4gICAgICAgIHRoaXMuX2F2YXRhckNvbmZpZyA9IG1lcmdlKHRoaXMuX2F2YXRhckNvbmZpZywgeyBpbWFnZTogdmFsdWUgfSk7XG4gICAgfVxuXG4gICAgZ2V0IGF2YXRhclNyYygpOiBOdWxsYWJsZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXZhdGFyPy5pbWFnZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAZGVwcmVjYXRlZFxuICAgICAqIFVzZSBgYXZhdGFyYCBwcm9wZXJ0eSBmb3IgbW9yZSBmbGV4aWJsZSBjb25maWd1cmF0aW9uLlxuICAgICAqXG4gICAgICogQGRlc2NyaXB0aW9uXG4gICAgICogQXR0cmlidXRlIHRvIGhvbGQgYXZhdGFyIHRpdGxlIGZvciBhMTF5XG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgYXZhdGFyVGl0bGUodmFsdWU6IE51bGxhYmxlPHN0cmluZz4pIHtcbiAgICAgICAgd2Fybk9uY2UoJ2BhdmF0YXJUaXRsZWAgaXMgZGVwcmVjYXRlZC4gVXNlIGBhdmF0YXJgIHByb3BlcnR5IGZvciBtb3JlIGZsZXhpYmxlIGNvbmZpZ3VyYXRpb24uJyk7XG4gICAgICAgIHRoaXMuX2F2YXRhckNvbmZpZyA9IG1lcmdlKHRoaXMuX2F2YXRhckNvbmZpZywgeyBhcmlhTGFiZWw6IHZhbHVlIH0pO1xuICAgIH1cblxuICAgIGdldCBhdmF0YXJUaXRsZSgpOiBOdWxsYWJsZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXZhdGFyPy5hcmlhTGFiZWw7XG4gICAgfVxuXG4gICAgLyoqIGF0dHJpYnV0ZSB0byBob2xkIGNvdW50ZXIgdmFsdWUgKi9cbiAgICBASW5wdXQoKVxuICAgIGNvdW50ZXI/OiBzdHJpbmc7XG5cbiAgICAvKiogRGVzY3JpcHRpb24gb2YgdGhlIHRpdGxlICovXG4gICAgQElucHV0KClcbiAgICBkZXNjcmlwdGlvbjogTnVsbGFibGU8TGlzdERlc2NyaXB0aW9uPjtcblxuICAgIC8qKiBUbyBpbnZlcnQgdGhlIHN0YXR1cyBvZiBzZWNvbmRhcnkgdGV4dCAqL1xuICAgIEBJbnB1dCgpXG4gICAgaW52ZXJ0ZWQgPSBmYWxzZTtcblxuICAgIC8qKiBXaGV0aGVyIHRoZXJlIGlzIG5vIGRhdGEgaW5zaWRlIGxpc3QgaXRlbSAqL1xuICAgIEBJbnB1dCgpXG4gICAgbm9EYXRhVGV4dDogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHR5cGUgb2YgdGhlIHNlY29uZGFyeSB0ZXh0LmZkLWxpc3RfX2J5bGluZS1yaWdodC0tKlxuICAgICAqIENhbiBiZSBvbmUgb2YgKnBvc2l0aXZlKiwgKm5lZ2F0aXZlKiwgKmluZm9ybWF0aXZlKiwgKmNyaXRpY2FsKiwgKm5ldXRyYWxcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHN0YXR1c1R5cGU/OiBTdGF0dXNUeXBlO1xuXG4gICAgLyoqIGF0dHJpYnV0ZSB0byBob2xkIHNlY29uZGFyeSB0ZXh0Ki9cbiAgICBASW5wdXQoKVxuICAgIHNlY29uZGFyeTogTnVsbGFibGU8TGlzdERlc2NyaXB0aW9uPjtcblxuICAgIC8qKlxuICAgICAqIEVuYWJsaW5nIHRoaXMgZmxhZyBjYXVzZXMgZm9yY2luZyBzZWNvbmRhcnkgaXRlbSBkaXJlY3RpdmUgdG8gbm90IHdyYXAgdGV4dCxcbiAgICAgKiBpbnN0ZWFkIG9mIHdyYXBwaW5nIHRoZXJlIHdpbGwgYmUgdGV4dCB0cnVuY2F0aW9uXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZWNvbmRhcnlXcmFwPzogYm9vbGVhbjtcblxuICAgIC8qKiBUb29sdGlwIHRleHQgdG8gc2hvdyB3aGVuIGZvY3VzZWQgZm9yIG1vcmUgdGhhbiB0aW1lb3V0IHZhbHVlKi9cbiAgICBASW5wdXQoKVxuICAgIHRpdGxlPzogc3RyaW5nO1xuXG4gICAgLyoqIFVzZWQgZm9yIHBsYWNlaW5nIG5hdmlnYXRpb24gTGluayAqL1xuICAgIEBJbnB1dCgpXG4gICAgbGluazogTnVsbGFibGU8c3RyaW5nPjtcblxuICAgIC8qKlxuICAgICAqIEVuYWJsaW5nIHRoaXMgZmxhZyBjYXVzZXMgZm9yY2luZyB0aXRsZSBkaXJlY3RpdmUgdG8gbm90IHdyYXAgdGV4dCxcbiAgICAgKiBpbnN0ZWFkIG9mIHdyYXBwaW5nIHRoZXJlIHdpbGwgYmUgdGV4dCB0cnVuY2F0aW9uXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICB0aXRsZVdyYXA/OiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgU2VlIGBpY29uYCBpbnB1dCBwcm9wZXJ0eSBmb3IgbW9yZSBmbGV4aWJsZSBpY29uIGNvbmZpZ3VyYXRpb24uXG4gICAgICogQGRlc2NyaXB0aW9uXG4gICAgICogYXR0cmlidXRlIHRvIGhvbGQgcHJpbWFyeS90aXRsZSBpY29uXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgdGl0bGVJY29uKHZhbHVlOiBOdWxsYWJsZTxzdHJpbmc+KSB7XG4gICAgICAgIHdhcm5PbmNlKCdgdGl0bGVJY29uYCBpcyBkZXByZWNhdGVkLiBTZWUgYGljb25gIGlucHV0IHByb3BlcnR5IGZvciBtb3JlIGZsZXhpYmxlIGljb24gY29uZmlndXJhdGlvbi4nKTtcbiAgICAgICAgdGhpcy5faWNvbkNvbmZpZyA9IG1lcmdlKG5ldyBMaXN0SWNvbkNvbmZpZygpLCB7IGdseXBoOiB2YWx1ZSwgYXJpYUxhYmVsOiB2YWx1ZSB9KTtcbiAgICB9XG5cbiAgICBnZXQgdGl0bGVJY29uKCk6IE51bGxhYmxlPHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faWNvbkNvbmZpZy5nbHlwaDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBMaXN0IGl0ZW0gaWNvbiBjb25maWd1cmF0aW9uLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IGljb24odmFsdWU6IFBhcnRpYWw8TGlzdEljb25Db25maWc+KSB7XG4gICAgICAgIHRoaXMuX2ljb25Db25maWcgPSBtZXJnZShuZXcgTGlzdEljb25Db25maWcoKSwgdmFsdWUpO1xuICAgIH1cblxuICAgIGdldCBpY29uKCk6IExpc3RJY29uQ29uZmlnIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ljb25Db25maWc7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogc2V0cyB0aGUgbGlzdCBpdGVtIGluIGJvbGQgdGV4dFxuICAgICAqIHdoaWNoIHJlc3ByZXNlbnRzIHVucmVhZCBkYXRhXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICB1blJlYWQ6IGJvb2xlYW47XG5cbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIHRvIGRpc3BsYXkgdW5yZWFkIG5vdGlmaWNhdGlvbiBjaXJjbGUuXG4gICAgICovXG4gICAgZ2V0IGRpc3BsYXlVbnJlYWROb3RpZmljYXRpb24oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuX2xpc3Q/LnVucmVhZEluZGljYXRvcjtcbiAgICB9XG5cbiAgICAvKiogcmFkaW8gYnV0dG9uIHZhbHVlICovXG4gICAgQElucHV0KClcbiAgICB2YWx1ZTogc3RyaW5nO1xuXG4gICAgLyoqIEJ5IGRlZmF1bHQgc2VsZWN0aW9uIG1vZGUgaXMgJ25vbmUnICovXG4gICAgQElucHV0KClcbiAgICBzZWxlY3Rpb25Nb2RlOiBTZWxlY3Rpb25UeXBlID0gJ25vbmUnO1xuXG4gICAgLyoqIEJ5IGRlZmF1bHQgc2VsZWN0aW9uIG1vZGUgaXMgJ2FjdGl2ZScgKi9cbiAgICBASW5wdXQoKVxuICAgIGxpc3RUeXBlOiBMaXN0VHlwZSA9ICdhY3RpdmUnO1xuXG4gICAgLyoqXG4gICAgICogV2hldGhlciBOYXZpZ2F0aW9uIG1vZGUgaXMgaW5jbHVkZWQgdG8gbGlzdCBjb21wb25lbnRcbiAgICAgKiBmb3IgYWxsIHRoZSBpdGVtc1xuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgbmF2aWdhdGVkID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIE5hdmlnYXRpb24gbW9kZSBpcyBpbmNsdWRlZCB0byBsaXN0IGNvbXBvbmVudFxuICAgICAqIG9ubHkgYSBzdWJzZXQgb2YgdGhlIGxpc3QgaXRlbXMgYXJlIG5hdmlnYWJsZVxuICAgICAqIHlvdSBzaG91bGQgaW5kaWNhdGUgdGhvc2UgYnkgZGlzcGxheWluZyBhIG5hdmlnYXRpb24gYXJyb3dcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIG5hdmlnYXRpb25JbmRpY2F0b3IgPSBmYWxzZTtcblxuICAgIC8qKiByb2xlICovXG4gICAgQElucHV0KClcbiAgICByb2xlID0gJ29wdGlvbic7XG5cbiAgICAvKipcbiAgICAgKiBldmVudCBlbWl0dGVyIGZvciBzZWxlY3RlZCBpdGVtXG4gICAgICogc2VwcmF0ZSBQUiBmb3IgY3VzdG9tIGV2ZW50XG4gICAgICovXG4gICAgQE91dHB1dCgpXG4gICAgaXRlbVNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxNb2RpZnlJdGVtRXZlbnQ+KCk7XG5cbiAgICAvKipcbiAgICAgKiBFdmVudCBlbWl0dGVkIGZvciBzZWxlY3RlZCBpdGVtIHRocm91Z2ggdGhlIGNoZWNrYm94LlxuICAgICAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGl0ZW1DaGVja2JveFNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxNb2RpZnlJdGVtRXZlbnQ+KCk7XG5cbiAgICAvKiogRXZlbnQgc2VudCB3aGVuIGRlbGV0ZSwgZGV0YWlscyBvciBhbnkgb3RoZXIgYWN0aW9uIGJ1dHRvbnMgYXJlIGNsaWNrZWQgKi9cbiAgICBAT3V0cHV0KClcbiAgICBidXR0b25DbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcjxNb2RpZnlJdGVtRXZlbnQ+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoJ2xpc3RJdGVtJywgeyByZWFkOiBFbGVtZW50UmVmIH0pXG4gICAgbGlzdEl0ZW06IEVsZW1lbnRSZWY8SFRNTExJRWxlbWVudD47XG5cbiAgICAvKiogQWNjZXNzIGNoaWxkIGVsZW1lbnQsIGZvciBjaGVja2luZyBsaW5rIGNvbnRlbnQqL1xuICAgIEBWaWV3Q2hpbGQoJ2xpbmtFbGVtZW50JywgeyByZWFkOiBFbGVtZW50UmVmIH0pXG4gICAgYW5jaG9yOiBFbGVtZW50UmVmPEhUTUxMaW5rRWxlbWVudD47XG5cbiAgICAvKiogQWNjZXNzIGVkaXQgYnV0dG9uKi9cbiAgICBAVmlld0NoaWxkKCdlZGl0JywgeyByZWFkOiBFbGVtZW50UmVmIH0pXG4gICAgZWRpdDogRWxlbWVudFJlZjxIVE1MQnV0dG9uRWxlbWVudD47XG5cbiAgICAvKiogQWNjZXNzIGRlbGV0ZSBidXR0b24qL1xuICAgIEBWaWV3Q2hpbGQoJ2RlbGV0ZScsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICAgIGRlbGV0ZTogRWxlbWVudFJlZjxIVE1MQnV0dG9uRWxlbWVudD47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoQ2hlY2tib3hDb21wb25lbnQpXG4gICAgY2hlY2tib3hDb21wb25lbnQ6IENoZWNrYm94Q29tcG9uZW50O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAVmlld0NoaWxkKFJhZGlvQnV0dG9uQ29tcG9uZW50KVxuICAgIHJhZGlvQnV0dG9uQ29tcG9uZW50OiBSYWRpb0J1dHRvbkNvbXBvbmVudDtcblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBXaGV0aGVyIEJ5IGxpbmUgbW9kZSBpcyBpbmNsdWRlZCB0byBsaXN0IGNvbXBvbmVudCwgYnkgd2hpY2hcbiAgICAgKiBsaXN0IGl0ZW0gd2lsbCBhY2NvbWRhdGUgdGhlIGRhdGEgaW4gMiBjb2x1bW5cbiAgICAgKi9cbiAgICBfaGFzQnlMaW5lID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogV2hldGhlciBsaXN0aXRlbSBoYXMgcm93IGxldmVsIHNlbGVjdGlvbiBlbmFibGVkXG4gICAgICovXG4gICAgcm93U2VsZWN0aW9uOiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIFdoZXRoZXIgbGlzdGl0ZW0gaXMgc2VsZWN0ZWQgYmluZGVkIHRvIHRlbXBsYXRlXG4gICAgICovXG4gICAgX3NlbGVjdGVkID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogZ2V0IHRoZSBmb2N1c2VkIGVsZW1lbnQgZm9yIGtleSBtYW5hZ2VyXG4gICAgICovXG4gICAgX2ZvY3VzZWQ6IGJvb2xlYW47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2xpc3RDb21wb25lbnQgPSBpbmplY3Q8RmRwTGlzdD4oRmRwTGlzdENvbXBvbmVudCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2F2YXRhckNvbmZpZzogTGlzdEF2YXRhckNvbmZpZyA9IG5ldyBMaXN0QXZhdGFyQ29uZmlnKCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2ljb25Db25maWc6IExpc3RJY29uQ29uZmlnID0gbmV3IExpc3RJY29uQ29uZmlnKCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcm90ZWN0ZWQgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHVibGljIGl0ZW1FbDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIHByb3RlY3RlZCBfbGlzdENvbmZpZzogTGlzdENvbmZpZyxcbiAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChGRF9MSVNUX1VOUkVBRF9JTkRJQ0FUT1IpIHByaXZhdGUgcmVhZG9ubHkgX2xpc3Q6IExpc3RVbnJlYWRJbmRpY2F0b3JcbiAgICApIHtcbiAgICAgICAgc3VwZXIoX2NoYW5nZURldGVjdG9yUmVmKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogcmFkaW8gYnV0dG9uIHNlbGVjdGVkIHZhbHVlIGJpbmRlZCB0byB0ZW1wbGF0ZVxuICAgICAqL1xuICAgIHByaXZhdGUgX3NlbGVjdGlvblZhbHVlOiBOdWxsYWJsZTxzdHJpbmc+O1xuXG4gICAgLyoqIFNlbGVjdGlvbiB2YWx1ZSAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHNlbGVjdGlvblZhbHVlKHZhbHVlOiBOdWxsYWJsZTxzdHJpbmc+KSB7XG4gICAgICAgIHRoaXMuX3NlbGVjdGVkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuX3NlbGVjdGlvblZhbHVlID0gdmFsdWU7XG4gICAgICAgIGlmICh0aGlzLl9zZWxlY3Rpb25WYWx1ZSAhPT0gdW5kZWZpbmVkICYmIHRoaXMuc2VsZWN0aW9uVmFsdWUgIT09IG51bGwpIHtcbiAgICAgICAgICAgIHRoaXMuX3NlbGVjdGVkID0gdGhpcy52YWx1ZSA9PT0gdGhpcy5fc2VsZWN0aW9uVmFsdWU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZ2V0IHNlbGVjdGlvblZhbHVlKCk6IE51bGxhYmxlPHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fc2VsZWN0aW9uVmFsdWU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIFNob3cgbmF2aWdhdGlvbiBmb3Igc2luZ2xlIGxpc3RcbiAgICAgKi9cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pZCA9IGBmZHAtbGlzdC1pdGVtLSR7bmV4dExpc3RJdGVtSWQrK31gO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgICAgIHRoaXMuaXRlbVNlbGVjdGVkLmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2xpc3RDb21wb25lbnQuX3NldHVwTGlzdEl0ZW0odGhpcyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIFRvIGRldGVjdCBjaGFuZ2VzIGZyb20gcGFyZW50LWxpc3Rib3ggdG8gbGlzdCBpdGVtXG4gICAgICogZm9yIGV4YW1wbGUgc2luZ2xlLCBtdWx0aSBvcHRpb24gc2VsZWN0aW9uIHRob3NlIGRldGFpbHNcbiAgICAgKiB3aWxsIGJlIGRlZHVjdGVkIGluIGxpc3QgaXRlbVxuICAgICAqL1xuICAgIG5nQWZ0ZXJWaWV3Q2hlY2tlZCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY3VycmVudEl0ZW06IE51bGxhYmxlPEhUTUxMSUVsZW1lbnQ+ID0gdGhpcy5pdGVtRWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCdsaScpO1xuICAgICAgICBpZiAoIWN1cnJlbnRJdGVtKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjdXJyZW50SXRlbS5zZXRBdHRyaWJ1dGUoJ3JvbGUnLCAnb3B0aW9uJyk7XG4gICAgICAgIGNvbnN0IHBhcmVudE5vZGUgPSBjdXJyZW50SXRlbS5wYXJlbnROb2RlIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQgJiYgY3VycmVudEl0ZW0ucGFyZW50Tm9kZTtcbiAgICAgICAgaWYgKHBhcmVudE5vZGUpIHtcbiAgICAgICAgICAgIHBhcmVudE5vZGUucmVtb3ZlQXR0cmlidXRlKCd0aXRsZScpO1xuICAgICAgICAgICAgcGFyZW50Tm9kZS5yZW1vdmVBdHRyaWJ1dGUoJ2FyaWEtbGFiZWwnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLnJvd1NlbGVjdGlvbiB8fCB0aGlzLnNlbGVjdGlvbk1vZGUgPT09ICdtdWx0aScgfHwgdGhpcy5zZWxlY3Rpb25Nb2RlID09PSAnc2luZ2xlJykge1xuICAgICAgICAgICAgY3VycmVudEl0ZW0uc2V0QXR0cmlidXRlKCdhcmlhLXNlbGVjdGVkJywgYCR7ISF0aGlzLl9zZWxlY3RlZH1gKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQ3JlYXRlZCBmb2N1cyBvbiBsaXN0IGl0ZW0gb24gbW91c2VjbGljayxcbiAgICAgKiBVcCxkb3duIGFycm93IHByZXNzXG4gICAgICovXG4gICAgZm9jdXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubGlzdEl0ZW0ubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFByb2dyYW1tYXRpY2FsbHkgc2V0IHNlbGVjdGVkIHN0YXRlIG9mIHRoZSBsaXN0IGl0ZW0uXG4gICAgICogQHBhcmFtIHNlbGVjdGVkIFdoZXRoZXIgdGhlIGxpc3QgaXRlbSBpcyBzZWxlY3RlZFxuICAgICAqL1xuICAgIHNldFNlbGVjdGVkKHNlbGVjdGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmIChzZWxlY3RlZCA9PT0gdGhpcy5fc2VsZWN0ZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBldmVudCA9IG5ldyBNb2RpZnlJdGVtRXZlbnQoKTtcbiAgICAgICAgZXZlbnQuc291cmNlID0gdGhpcztcbiAgICAgICAgdGhpcy5fc2VsZWN0ZWQgPSBzZWxlY3RlZDtcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBPbiBpdGVtIGNsaWNrIGV2ZW50IHdpbGwgYmUgZW1pdHRlZFxuICAgICAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgICBfb25JdGVtQ2xpY2soKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnJvd1NlbGVjdGlvbiAmJiB0aGlzLnNlbGVjdGlvbk1vZGUgPT09ICdtdWx0aScpIHtcbiAgICAgICAgICAgIHRoaXMuX3NlbGVjdGVkID0gIXRoaXMuX3NlbGVjdGVkO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZXZlbnQgPSBuZXcgTW9kaWZ5SXRlbUV2ZW50KCk7XG4gICAgICAgIGV2ZW50LnNvdXJjZSA9IHRoaXM7XG4gICAgICAgIHRoaXMuX2ZvY3VzZWQgPSAhdGhpcy5fZm9jdXNlZDtcbiAgICAgICAgdGhpcy5pdGVtU2VsZWN0ZWQuZW1pdChldmVudCk7XG4gICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bicsIFsnJGV2ZW50J10pXG4gICAgX2hhbmRsZUtleWJvYXJkRXZlbnQoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCFLZXlVdGlsLmlzS2V5Q29kZShldmVudCwgW0VOVEVSLCBTUEFDRV0pKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5jaGVja2JveENvbXBvbmVudCB8fCB0aGlzLnJhZGlvQnV0dG9uQ29tcG9uZW50KSB7XG4gICAgICAgICAgICB0aGlzLl9vbktleWJvYXJkQ2xpY2soZXZlbnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5hbmNob3I/Lm5hdGl2ZUVsZW1lbnQuY2xpY2soKTtcblxuICAgICAgICBpZiAodGhpcy5yb3dTZWxlY3Rpb24pIHtcbiAgICAgICAgICAgIHRoaXMuX3NlbGVjdGVkID0gIXRoaXMuX3NlbGVjdGVkO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgJGV2ZW50ID0gbmV3IE1vZGlmeUl0ZW1FdmVudCgpO1xuICAgICAgICAkZXZlbnQuc291cmNlID0gdGhpcztcbiAgICAgICAgdGhpcy5pdGVtU2VsZWN0ZWQuZW1pdCgkZXZlbnQpO1xuICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogSGFuZGxlciBmb3IgbW91c2UgZXZlbnRzXG4gICAgICovXG4gICAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKVxuICAgIF9vbkNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmNoZWNrYm94Q29tcG9uZW50ICYmICF0aGlzLmFuY2hvcikge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmNoZWNrYm94Q29tcG9uZW50LmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jb250YWlucyhldmVudC50YXJnZXQgYXMgTm9kZSkpIHtcbiAgICAgICAgICAgICAgICAvLyBjbGlja2luZyBvbiB0aGUgY2hlY2tib3ggaXMgbm90IHN1cHByZXNzZWRcbiAgICAgICAgICAgICAgICAvLyBzbyB3ZSBzaG91bGQgb25seSBwcm9jZXNzIGNsaWNrcyBpZiBjbGlja2VkIG9uIHRoZSBsaXN0LWl0ZW0sIG5vdCBjaGVja2JveCBpdHNlbGZcbiAgICAgICAgICAgICAgICB0aGlzLmNoZWNrYm94Q29tcG9uZW50Lm5leHRWYWx1ZSgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLnJhZGlvQnV0dG9uQ29tcG9uZW50Py52YWx1ZUNoYW5nZShldmVudCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgY29uc3QgJGV2ZW50ID0gbmV3IE1vZGlmeUl0ZW1FdmVudCgpO1xuICAgICAgICAkZXZlbnQuc291cmNlID0gdGhpcztcbiAgICAgICAgdGhpcy5pdGVtU2VsZWN0ZWQuZW1pdCgkZXZlbnQpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBoZWxwcyB0byBhdm9pZCBtdWx0aSByb3dzIGFjdGl2ZSBjbGFzcyB3aXRoIG5hdmlnYXRpb25cbiAgICAgKi9cbiAgICBASG9zdExpc3RlbmVyKCdmb2N1c291dCcsIFsnJGV2ZW50J10pXG4gICAgX29uQmx1cihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoaXNQcmVzZW50KHRoaXMuYW5jaG9yKSAmJiAhS2V5VXRpbC5pc0tleUNvZGUoZXZlbnQsIFtFTlRFUiwgU1BBQ0VdKSkge1xuICAgICAgICAgICAgdGhpcy5hbmNob3IubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKElTX0FDVElWRV9DTEFTUyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogb24ga2V5ZG93biBhcHBlbmQgYWN0aXZlIHN0eWxlcyBvbiBhY3Rpb25hYmxlIGl0ZW1cbiAgICAgKi9cbiAgICBfb25LZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmIChpc1ByZXNlbnQodGhpcy5hbmNob3IpICYmIEtleVV0aWwuaXNLZXlDb2RlKGV2ZW50LCBbRU5URVIsIFNQQUNFXSkpIHtcbiAgICAgICAgICAgIHRoaXMuYW5jaG9yLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmFkZChJU19BQ1RJVkVfQ0xBU1MpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIG9uIGtleXVwIHJlbW92ZSBhY3RpdmUgc3R5bGVzIGZyb20gYWN0aW9uYWJsZSBpdGVtXG4gICAgICovXG4gICAgX29uS2V5VXAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKGlzUHJlc2VudCh0aGlzLmFuY2hvcikgJiYgS2V5VXRpbC5pc0tleUNvZGUoZXZlbnQsIFtFTlRFUiwgU1BBQ0VdKSkge1xuICAgICAgICAgICAgdGhpcy5hbmNob3IubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKElTX0FDVElWRV9DTEFTUyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9vbkNoZWNrYm94TW9kZWxDaGFuZ2UoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGV2ZW50ID0gbmV3IE1vZGlmeUl0ZW1FdmVudCgpO1xuICAgICAgICBldmVudC5zb3VyY2UgPSB0aGlzO1xuICAgICAgICB0aGlzLml0ZW1DaGVja2JveFNlbGVjdGVkLmVtaXQoZXZlbnQpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBIYW5kbGVzIGFjdGlvbiBidXR0b24gY2xpY2tcbiAgICAgKi9cbiAgICBfb25BY3Rpb25CdXR0b25DbGljayhhY3Rpb246ICdkZWxldGUnIHwgJ2VkaXQnKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGV2ZW50ID0gbmV3IE1vZGlmeUl0ZW1FdmVudCgpO1xuICAgICAgICBldmVudC5zb3VyY2UgPSB0aGlzO1xuICAgICAgICBldmVudC5hY3Rpb24gPSBhY3Rpb247XG4gICAgICAgIHRoaXMuYnV0dG9uQ2xpY2tlZC5lbWl0KGV2ZW50KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogSGFuZGxlcyBhY3Rpb24gYnV0dG9uIGNsaWNrIG9uIGtleSBwcmVzc1xuICAgICAqL1xuICAgIF9vbktleUJ1dHRvbkNsaWNrKGV2ZW50OiBLZXlib2FyZEV2ZW50LCBhY3Rpb246ICdkZWxldGUnIHwgJ2VkaXQnKTogdm9pZCB7XG4gICAgICAgIGlmIChLZXlVdGlsLmlzS2V5Q29kZShldmVudCwgW0VOVEVSLCBTUEFDRV0pKSB7XG4gICAgICAgICAgICB0aGlzLl9vbkFjdGlvbkJ1dHRvbkNsaWNrKGFjdGlvbik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9pc0FkdmFuY2VkVGV4dCh0ZXh0OiBMaXN0RGVzY3JpcHRpb24pOiB0ZXh0IGlzIExpc3RBZHZhbmNlZERlc2NyaXB0aW9uIHtcbiAgICAgICAgcmV0dXJuIHR5cGVvZiB0ZXh0ICE9PSAnc3RyaW5nJyAmJiAhIXRleHQudGV4dDtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX29uS2V5Ym9hcmRDbGljayhldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNoZWNrYm94Q29tcG9uZW50Py5uZXh0VmFsdWUoKTtcbiAgICAgICAgdGhpcy5yYWRpb0J1dHRvbkNvbXBvbmVudD8udmFsdWVDaGFuZ2UoZXZlbnQpO1xuXG4gICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICBjb25zdCAkZXZlbnQgPSBuZXcgTW9kaWZ5SXRlbUV2ZW50KCk7XG4gICAgICAgICRldmVudC5zb3VyY2UgPSB0aGlzO1xuICAgICAgICB0aGlzLml0ZW1TZWxlY3RlZC5lbWl0KCRldmVudCk7XG4gICAgfVxufVxuIl19
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { ChangeDetectorRef, Component, ElementRef, HostListener, Input, TemplateRef, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import { warnOnce } from '@fundamental-ngx/core/utils';
|
|
2
3
|
import * as i0 from "@angular/core";
|
|
3
4
|
import * as i1 from "@angular/common";
|
|
4
5
|
/**
|
|
@@ -12,7 +13,7 @@ export class PlatformFooterComponent {
|
|
|
12
13
|
this._cdRef = _cdRef;
|
|
13
14
|
/** defines the padding and size of the footer based on screen */
|
|
14
15
|
this.size = 'xl';
|
|
15
|
-
|
|
16
|
+
warnOnce('PlatformFooterComponent component is deprecated since version 0.40.0');
|
|
16
17
|
}
|
|
17
18
|
/** @hidden */
|
|
18
19
|
onResize() {
|
|
@@ -44,4 +45,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImpor
|
|
|
44
45
|
type: HostListener,
|
|
45
46
|
args: ['window:resize', ['$event']]
|
|
46
47
|
}] } });
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1mb290ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9zcmMvbGliL3BhZ2UtZm9vdGVyL3BhZ2UtZm9vdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vc3JjL2xpYi9wYWdlLWZvb3Rlci9wYWdlLWZvb3Rlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLEtBQUssRUFDTCxXQUFXLEVBQ1gsaUJBQWlCLEVBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7O0FBSXZEOzs7R0FHRztBQU9ILE1BQU0sT0FBTyx1QkFBdUI7SUFnQmhDLGNBQWM7SUFDZCxZQUFvQixNQUFrQixFQUFtQixNQUF5QjtRQUE5RCxXQUFNLEdBQU4sTUFBTSxDQUFZO1FBQW1CLFdBQU0sR0FBTixNQUFNLENBQW1CO1FBVGxGLGlFQUFpRTtRQUNqRSxTQUFJLEdBQWUsSUFBSSxDQUFDO1FBU3BCLFFBQVEsQ0FBQyxzRUFBc0UsQ0FBQyxDQUFDO0lBQ3JGLENBQUM7SUFFRCxjQUFjO0lBRWQsUUFBUTtRQUNKLElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQztRQUNyQyxJQUFJLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQyxXQUFXLElBQUksR0FBRyxFQUFFO1lBQ2pELElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1NBQ3BCO2FBQU0sSUFBSSxJQUFJLENBQUMsV0FBVyxHQUFHLEdBQUcsSUFBSSxJQUFJLENBQUMsV0FBVyxJQUFJLEdBQUcsRUFBRTtZQUMxRCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztTQUNwQjthQUFNLElBQUksSUFBSSxDQUFDLFdBQVcsR0FBRyxHQUFHLElBQUksSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLEVBQUU7WUFDM0QsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7U0FDcEI7YUFBTTtZQUNILElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1NBQ3BCO0lBQ0wsQ0FBQzs4R0FsQ1EsdUJBQXVCO2tHQUF2Qix1QkFBdUIsbUtDdkJwQyx5ZUFjQTs7MkZEU2EsdUJBQXVCO2tCQU5uQyxTQUFTOytCQUNJLGlCQUFpQixpQkFHWixpQkFBaUIsQ0FBQyxJQUFJO2lJQUtyQyxJQUFJO3NCQURILEtBQUs7Z0JBSU4sT0FBTztzQkFETixLQUFLO2dCQWtCTixRQUFRO3NCQURQLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgSW5wdXQsXG4gICAgVGVtcGxhdGVSZWYsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB3YXJuT25jZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS91dGlscyc7XG5cbmV4cG9ydCB0eXBlIGZvb3RlclNpemUgPSAnc20nIHwgJ21kJyB8ICdsZycgfCAneGwnO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkXG4gKiBQbGF0Zm9ybUZvb3RlciBjb21wb25lbnQgaXMgZGVwcmVjYXRlZCBzaW5jZSB2ZXJzaW9uIDAuNDAuMFxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZkcC1wYWdlLWZvb3RlcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3BhZ2UtZm9vdGVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9wYWdlLWZvb3Rlci5jb21wb25lbnQuc2NzcyddLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgUGxhdGZvcm1Gb290ZXJDb21wb25lbnQge1xuICAgIC8qKiBsb2dvIHRlbXBsYXRlIGFjY3BldHMgdGhlIGdlbmVyaWMgaHRtbCAqL1xuICAgIEBJbnB1dCgpXG4gICAgbG9nbzogVGVtcGxhdGVSZWY8YW55PjtcbiAgICAvKiogY29udGVudCB0ZW1wbGF0ZSBhY2NwZXRzIHRoZSBnZW5lcmljIGh0bWwgKi9cbiAgICBASW5wdXQoKVxuICAgIGNvbnRlbnQ6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICAvKiogZGVmaW5lcyB0aGUgcGFkZGluZyBhbmQgc2l6ZSBvZiB0aGUgZm9vdGVyIGJhc2VkIG9uIHNjcmVlbiAqL1xuICAgIHNpemU6IGZvb3RlclNpemUgPSAneGwnO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwdWJsaWMgc2NyZWVuV2lkdGg6IGFueTtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHB1YmxpYyBzY3JlZW5IZWlnaHQ6IGFueTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfZWxSZWY6IEVsZW1lbnRSZWYsIHByaXZhdGUgcmVhZG9ubHkgX2NkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgICAgICB3YXJuT25jZSgnUGxhdGZvcm1Gb290ZXJDb21wb25lbnQgY29tcG9uZW50IGlzIGRlcHJlY2F0ZWQgc2luY2UgdmVyc2lvbiAwLjQwLjAnKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxuICAgIG9uUmVzaXplKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNjcmVlbldpZHRoID0gd2luZG93LmlubmVyV2lkdGg7XG4gICAgICAgIGlmICh0aGlzLnNjcmVlbldpZHRoID4gMCAmJiB0aGlzLnNjcmVlbldpZHRoIDw9IDM2MCkge1xuICAgICAgICAgICAgdGhpcy5zaXplID0gJ3NtJztcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLnNjcmVlbldpZHRoID4gMzYxICYmIHRoaXMuc2NyZWVuV2lkdGggPD0gNzY4KSB7XG4gICAgICAgICAgICB0aGlzLnNpemUgPSAnbWQnO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuc2NyZWVuV2lkdGggPiA3NjkgJiYgdGhpcy5zY3JlZW5XaWR0aCA8PSAxMDI0KSB7XG4gICAgICAgICAgICB0aGlzLnNpemUgPSAnbGcnO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5zaXplID0gJ3hsJztcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxkaXZcbiAgICBjbGFzcz1cImZkLXBhZ2UtZm9vdGVyXCJcbiAgICBbY2xhc3MuZmQtcGFnZS1mb290ZXItLXhsXT1cInNpemUgPT09ICd4bCdcIlxuICAgIFtjbGFzcy5mZC1wYWdlLWZvb3Rlci0tbGddPVwic2l6ZSA9PT0gJ2xnJ1wiXG4gICAgW2NsYXNzLmZkLXBhZ2UtZm9vdGVyLS1tZF09XCJzaXplID09PSAnbWQnXCJcbiAgICBbY2xhc3MuZmQtcGFnZS1mb290ZXItLXNtXT1cInNpemUgPT09ICdzbSdcIlxuPlxuICAgIDxkaXYgY2xhc3M9XCJmZC1wYWdlLWZvb3Rlcl9fbG9nb1wiPlxuICAgICAgICA8bmctY29udGVudCAqbmdUZW1wbGF0ZU91dGxldD1cImxvZ29cIj48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZkLXBhZ2UtZm9vdGVyX19jb250YWluZXJcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50XCI+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|