ca-components 0.0.3 → 0.0.5
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/lib/animations/in-out.animation.mjs +73 -0
- package/esm2022/lib/animations/state-header.animation.mjs +17 -0
- package/esm2022/lib/components/ca-app-tooltip-v2/ca-app-tooltip-v2.component.mjs +1 -1
- package/esm2022/lib/components/ca-details-dropdown/ca-details-dropdown.component.mjs +14 -14
- package/esm2022/lib/components/ca-details-dropdown/models/detail-dropdown.model.mjs +1 -1
- package/esm2022/lib/components/ca-dropdown/ca-dropdown.component.mjs +6 -6
- package/esm2022/lib/components/ca-filters/ca-filter.component.mjs +119 -55
- package/esm2022/lib/components/ca-filters/components/ca-money-filter/ca-money-filter.component.mjs +127 -111
- package/esm2022/lib/components/ca-filters/components/ca-money-filter/config/ca-money-filter.config.mjs +1 -1
- package/esm2022/lib/components/ca-filters/components/ca-state-filter/ca-state-filter.component.mjs +242 -0
- package/esm2022/lib/components/ca-filters/components/ca-status-filter/ca-status-filter.component.mjs +35 -34
- package/esm2022/lib/components/ca-filters/components/ca-time-filter/ca-time-filter.component.mjs +26 -25
- package/esm2022/lib/components/ca-filters/components/ca-trailer-type-filter/ca-trailer-type-filter.component.mjs +178 -0
- package/esm2022/lib/components/ca-filters/components/ca-truck-type-filter/ca-truck-type-filter.component.mjs +178 -0
- package/esm2022/lib/components/ca-filters/components/ca-user-filter/ca-user-filter.component.mjs +247 -0
- package/esm2022/lib/components/ca-filters/components/ca-user-filter/config/ca-user-filter.config.mjs +15 -0
- package/esm2022/lib/components/ca-filters/pipes/filter-conditions-clear.pipe.mjs +39 -0
- package/esm2022/lib/components/ca-filters/pipes/filter-conditions-set.pipe.mjs +47 -0
- package/esm2022/lib/components/ca-filters/pipes/filter-trailer-color.pipe.mjs +45 -0
- package/esm2022/lib/components/ca-filters/utils/constants/directive.constants.mjs +548 -0
- package/esm2022/lib/components/ca-filters/utils/constants/filter-icons-routes.constants.mjs +7 -0
- package/esm2022/lib/components/ca-input/ca-input.component.mjs +59 -45
- package/esm2022/lib/components/ca-input/components/ca-input-clear/ca-input-clear.component.mjs +3 -3
- package/esm2022/lib/components/ca-input/components/ca-input-commands/ca-input-commands.component.mjs +45 -0
- package/esm2022/lib/components/ca-input/components/ca-input-password/ca-input-password.component.mjs +4 -4
- package/esm2022/lib/components/ca-input/components/ca-input-placeholder-icon/ca-input-placeholder-icon.component.mjs +4 -4
- package/esm2022/lib/components/ca-input/enums/input-commands-action.enum.mjs +11 -0
- package/esm2022/lib/components/ca-input/enums/input-commands-type.enum.mjs +7 -0
- package/esm2022/lib/components/ca-input/models/command-click.model.mjs +2 -0
- package/esm2022/lib/components/ca-input/models/commands-event.model.mjs +2 -0
- package/esm2022/lib/components/ca-input/pipes/input-class.pipe.mjs +1 -1
- package/esm2022/lib/components/ca-input/pipes/input-clear-class.pipe.mjs +1 -1
- package/esm2022/lib/components/ca-input/pipes/input-container-class.pipe.mjs +1 -1
- package/esm2022/lib/components/ca-input/pipes/input-password-eye-class.pipe.mjs +1 -1
- package/esm2022/lib/components/ca-input/pipes/input-placeholder-icon.class.pipe.mjs +1 -1
- package/esm2022/lib/components/ca-input/pipes/label-class.pipe.mjs +1 -1
- package/esm2022/lib/components/ca-input/pipes/show-clear.pipe.mjs +1 -1
- package/esm2022/lib/components/ca-input/pipes/show-invalid-danger-mark.pipe.mjs +1 -1
- package/esm2022/lib/components/ca-input/pipes/show-valid-check.pipe.mjs +1 -1
- package/esm2022/lib/components/ca-input/services/ca-input-state.service.mjs +225 -7
- package/esm2022/lib/components/ca-input/utils/input-svg-routes.mjs +4 -2
- package/esm2022/lib/components/ca-map/ca-map.component.mjs +6 -5
- package/esm2022/lib/components/ca-map/models/map.model.mjs +1 -1
- package/esm2022/lib/components/ca-map-dropdown/ca-map-dropdown.component.mjs +11 -13
- package/esm2022/lib/components/ca-note/ca-note.component.mjs +34 -32
- package/esm2022/lib/components/ca-note-container/ca-note-container.component.mjs +17 -17
- package/esm2022/lib/components/ca-note-container/utils/constants/note-config.constant.mjs +25 -25
- package/esm2022/lib/components/ca-payroll-list-summary-overview/ca-payroll-list-summary-overview.component.mjs +12 -12
- package/esm2022/lib/components/ca-payroll-list-summary-overview-table/ca-payroll-list-summary-overview-table.component.mjs +7 -7
- package/esm2022/lib/components/ca-pickup-delivery-block/ca-pickup-delivery-block.component.mjs +7 -7
- package/esm2022/lib/components/ca-pickup-delivery-block/components/ca-load/ca-load.component.mjs +18 -17
- package/esm2022/lib/components/ca-pickup-delivery-block/components/ca-load/components/ca-load-list/ca-load-list.component.mjs +24 -19
- package/esm2022/lib/components/ca-pickup-delivery-block/components/ca-load/components/ca-load-single/ca-load-single.component.mjs +21 -18
- package/esm2022/lib/components/ca-pickup-delivery-block/models/animation-model.mjs +1 -1
- package/esm2022/lib/components/ca-pickup-delivery-block/models/broker-short-response.mjs +1 -1
- package/esm2022/lib/components/ca-pickup-delivery-block/models/dispatch-assigned-load-list-response.mjs +1 -1
- package/esm2022/lib/components/ca-pickup-delivery-block/models/load-short-response.mjs +1 -1
- package/esm2022/lib/components/ca-pickup-delivery-block/models/load-stop-short-response.mjs +1 -1
- package/esm2022/lib/components/ca-pickup-delivery-block/models/shipper-short-response.mjs +1 -1
- package/esm2022/lib/components/ca-pickup-delivery-block/utils/constants/animation-object-default.constants.mjs +3 -3
- package/esm2022/lib/components/ca-pickup-delivery-block/utils/helpers/pickup-delivery.helper.mjs +6 -3
- package/esm2022/lib/components/ca-profile-image/ca-profile-image.component.mjs +3 -3
- package/esm2022/lib/components/ca-progress-bar/ca-progress-bar.component.mjs +31 -31
- package/esm2022/lib/components/ca-search-multiple-states/ca-search-multiple-states.component.mjs +20 -20
- package/esm2022/lib/components/ca-search-multiple-states/utils/config/input-config.mjs +1 -1
- package/esm2022/lib/components/ca-spinner/ca-spinner.component.mjs +2 -2
- package/esm2022/lib/components/ca-truck-trailer-progress-bar/ca-truck-trailer-progress-bar.component.mjs +24 -20
- package/esm2022/lib/components/ca-truck-trailer-progress-bar/models/progress-dropdown-data.model.mjs +1 -1
- package/esm2022/lib/enums/trailer-name-string.enum.mjs +18 -0
- package/esm2022/lib/models/card-models/card-table-data.model.mjs +1 -1
- package/esm2022/lib/models/table-models/all-table-animation.model.mjs +2 -0
- package/esm2022/lib/models/trailer-minimal-response.mjs +1 -1
- package/esm2022/lib/models/truck-minimal-response.mjs +1 -1
- package/esm2022/lib/models/user-selected.model.mjs +2 -0
- package/esm2022/lib/pipes/thousand-separator.pipe.mjs +2 -2
- package/esm2022/lib/pipes/thousand-to-short-format-pipe.mjs +4 -4
- package/esm2022/lib/services/truckassist-table.service.mjs +3 -1
- package/fesm2022/ca-components.mjs +6032 -527
- package/fesm2022/ca-components.mjs.map +1 -1
- package/lib/animations/state-header.animation.d.ts +1 -0
- package/lib/components/ca-app-tooltip-v2/ca-app-tooltip-v2.component.d.ts +2 -2
- package/lib/components/ca-details-dropdown/ca-details-dropdown.component.d.ts +7 -7
- package/lib/components/ca-details-dropdown/models/detail-dropdown.model.d.ts +5 -5
- package/lib/components/ca-dropdown/ca-dropdown.component.d.ts +2 -2
- package/lib/components/ca-filters/ca-filter.component.d.ts +20 -14
- package/lib/components/ca-filters/components/ca-money-filter/ca-money-filter.component.d.ts +10 -10
- package/lib/components/ca-filters/components/ca-money-filter/config/ca-money-filter.config.d.ts +1 -1
- package/lib/components/ca-filters/components/ca-state-filter/ca-state-filter.component.d.ts +52 -0
- package/lib/components/ca-filters/components/ca-status-filter/ca-status-filter.component.d.ts +9 -9
- package/lib/components/ca-filters/components/ca-time-filter/ca-time-filter.component.d.ts +6 -6
- package/lib/components/ca-filters/components/ca-trailer-type-filter/ca-trailer-type-filter.component.d.ts +35 -0
- package/lib/components/ca-filters/components/ca-truck-type-filter/ca-truck-type-filter.component.d.ts +35 -0
- package/lib/components/ca-filters/components/ca-user-filter/ca-user-filter.component.d.ts +46 -0
- package/lib/components/ca-filters/components/ca-user-filter/config/ca-user-filter.config.d.ts +4 -0
- package/lib/components/ca-filters/pipes/filter-conditions-clear.pipe.d.ts +14 -0
- package/lib/components/ca-filters/pipes/filter-conditions-set.pipe.d.ts +14 -0
- package/lib/components/ca-filters/pipes/filter-trailer-color.pipe.d.ts +7 -0
- package/lib/components/ca-filters/utils/constants/directive.constants.d.ts +8 -0
- package/lib/components/ca-filters/utils/constants/filter-icons-routes.constants.d.ts +6 -0
- package/lib/components/ca-input/ca-input.component.d.ts +16 -8
- package/lib/components/ca-input/components/ca-input-clear/ca-input-clear.component.d.ts +3 -3
- package/lib/components/ca-input/components/ca-input-commands/ca-input-commands.component.d.ts +14 -0
- package/lib/components/ca-input/components/ca-input-password/ca-input-password.component.d.ts +2 -2
- package/lib/components/ca-input/components/ca-input-placeholder-icon/ca-input-placeholder-icon.component.d.ts +2 -2
- package/lib/components/ca-input/enums/input-commands-action.enum.d.ts +9 -0
- package/lib/components/ca-input/enums/input-commands-type.enum.d.ts +5 -0
- package/lib/components/ca-input/models/command-click.model.d.ts +5 -0
- package/lib/components/ca-input/models/commands-event.model.d.ts +5 -0
- package/lib/components/ca-input/pipes/input-class.pipe.d.ts +1 -1
- package/lib/components/ca-input/pipes/input-clear-class.pipe.d.ts +1 -1
- package/lib/components/ca-input/pipes/input-container-class.pipe.d.ts +1 -1
- package/lib/components/ca-input/pipes/input-password-eye-class.pipe.d.ts +1 -1
- package/lib/components/ca-input/pipes/input-placeholder-icon.class.pipe.d.ts +2 -2
- package/lib/components/ca-input/pipes/label-class.pipe.d.ts +1 -1
- package/lib/components/ca-input/pipes/show-clear.pipe.d.ts +1 -1
- package/lib/components/ca-input/pipes/show-invalid-danger-mark.pipe.d.ts +1 -1
- package/lib/components/ca-input/pipes/show-valid-check.pipe.d.ts +1 -1
- package/lib/components/ca-input/services/ca-input-state.service.d.ts +31 -5
- package/lib/components/ca-input/utils/input-svg-routes.d.ts +2 -0
- package/lib/components/ca-map/ca-map.component.d.ts +1 -1
- package/lib/components/ca-map/models/map.model.d.ts +2 -2
- package/lib/components/ca-map-dropdown/ca-map-dropdown.component.d.ts +4 -29
- package/lib/components/ca-note/ca-note.component.d.ts +5 -5
- package/lib/components/ca-note-container/ca-note-container.component.d.ts +4 -4
- package/lib/components/ca-note-container/utils/constants/note-config.constant.d.ts +2 -2
- package/lib/components/ca-payroll-list-summary-overview/ca-payroll-list-summary-overview.component.d.ts +3 -3
- package/lib/components/ca-payroll-list-summary-overview-table/ca-payroll-list-summary-overview-table.component.d.ts +1 -1
- package/lib/components/ca-pickup-delivery-block/ca-pickup-delivery-block.component.d.ts +5 -5
- package/lib/components/ca-pickup-delivery-block/components/ca-load/ca-load.component.d.ts +4 -4
- package/lib/components/ca-pickup-delivery-block/components/ca-load/components/ca-load-list/ca-load-list.component.d.ts +6 -6
- package/lib/components/ca-pickup-delivery-block/components/ca-load/components/ca-load-single/ca-load-single.component.d.ts +5 -5
- package/lib/components/ca-pickup-delivery-block/models/animation-model.d.ts +1 -1
- package/lib/components/ca-pickup-delivery-block/models/broker-short-response.d.ts +1 -1
- package/lib/components/ca-pickup-delivery-block/models/dispatch-assigned-load-list-response.d.ts +1 -1
- package/lib/components/ca-pickup-delivery-block/models/load-short-response.d.ts +3 -3
- package/lib/components/ca-pickup-delivery-block/models/load-stop-short-response.d.ts +2 -2
- package/lib/components/ca-pickup-delivery-block/models/shipper-short-response.d.ts +1 -1
- package/lib/components/ca-pickup-delivery-block/utils/constants/animation-object-default.constants.d.ts +1 -1
- package/lib/components/ca-pickup-delivery-block/utils/helpers/pickup-delivery.helper.d.ts +3 -3
- package/lib/components/ca-progress-bar/ca-progress-bar.component.d.ts +3 -3
- package/lib/components/ca-search-multiple-states/ca-search-multiple-states.component.d.ts +3 -3
- package/lib/components/ca-search-multiple-states/utils/config/input-config.d.ts +1 -1
- package/lib/components/ca-truck-trailer-progress-bar/ca-truck-trailer-progress-bar.component.d.ts +2 -2
- package/lib/components/ca-truck-trailer-progress-bar/models/progress-dropdown-data.model.d.ts +1 -1
- package/lib/enums/trailer-name-string.enum.d.ts +16 -0
- package/lib/models/card-models/card-table-data.model.d.ts +3 -3
- package/lib/models/table-models/all-table-animation.model.d.ts +10 -0
- package/lib/models/trailer-minimal-response.d.ts +1 -1
- package/lib/models/truck-minimal-response.d.ts +2 -2
- package/lib/models/user-selected.model.d.ts +8 -0
- package/lib/pipes/thousand-to-short-format-pipe.d.ts +1 -1
- package/lib/services/truckassist-table.service.d.ts +2 -0
- package/package.json +1 -1
- package/src/assets/global_style/styles.scss +1 -0
- package/src/assets/scss/input-dropdown.scss +1876 -0
- package/src/assets/scss/popover.scss +89 -89
- package/src/assets/svg/common/trailers/ic_carhauler_stinger.svg +6 -0
- package/src/assets/svg/common/trailers/ic_trailer_carhauler.svg +1 -0
- package/src/assets/svg/common/trailers/ic_trailer_chassis.svg +1 -0
- package/src/assets/svg/common/trailers/ic_trailer_conestoga.svg +1 -0
- package/src/assets/svg/common/trailers/ic_trailer_container.svg +1 -0
- package/src/assets/svg/common/trailers/ic_trailer_dryvan.svg +1 -0
- package/src/assets/svg/common/trailers/ic_trailer_dumper.svg +1 -0
- package/src/assets/svg/common/trailers/ic_trailer_flatbed.svg +1 -0
- package/src/assets/svg/common/trailers/ic_trailer_low-boy.svg +1 -0
- package/src/assets/svg/common/trailers/ic_trailer_reefer.svg +1 -0
- package/src/assets/svg/common/trailers/ic_trailer_side-kit.svg +1 -0
- package/src/assets/svg/common/trailers/ic_trailer_step-deck.svg +1 -0
- package/src/assets/svg/common/trailers/ic_trailer_tanker.svg +6 -0
- package/src/assets/svg/common/trailers/ic_trailer_tanker_pneumatic.svg +6 -0
- package/src/assets/svg/common/trucks/ic_truck_box-truck.svg +1 -0
- package/src/assets/svg/common/trucks/ic_truck_bus.svg +7 -0
- package/src/assets/svg/common/trucks/ic_truck_car-hauler.svg +1 -0
- package/src/assets/svg/common/trucks/ic_truck_cargo-van.svg +1 -0
- package/src/assets/svg/common/trucks/ic_truck_semi-truck.svg +1 -0
- package/src/assets/svg/common/trucks/ic_truck_semi-wSleeper.svg +9 -0
- package/src/assets/svg/common/trucks/ic_truck_spotter.svg +1 -0
- package/src/assets/svg/common/trucks/ic_truck_tow-truck.svg +1 -0
- package/src/assets/svg/input/ic_dollar.svg +6 -0
- package/src/assets/svg/input/ic_pm_decrement.svg +4 -0
- package/src/assets/svg/input/ic_pm_increment.svg +4 -0
- package/esm2022/lib/animation/in-out.animation.mjs +0 -73
- /package/lib/{animation → animations}/in-out.animation.d.ts +0 -0
- /package/src/assets/svg/{common → input}/ic_search.svg +0 -0
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import { Injectable } from "@angular/core";
|
|
2
|
-
import { BehaviorSubject } from "rxjs";
|
|
2
|
+
import { BehaviorSubject, combineLatest, Subject } from "rxjs";
|
|
3
|
+
// helpers
|
|
4
|
+
import { MethodsCalculationsHelper } from "../../../utils/helpers/methods-calculations.helper";
|
|
5
|
+
// enums
|
|
6
|
+
import { InputCommandsAction } from "../enums/input-commands-action.enum";
|
|
7
|
+
import { InputCommandsType } from "../enums/input-commands-type.enum";
|
|
3
8
|
import * as i0 from "@angular/core";
|
|
4
9
|
export class InputStateService {
|
|
5
10
|
constructor() {
|
|
@@ -7,15 +12,28 @@ export class InputStateService {
|
|
|
7
12
|
this.isFocusInput$ = this.isFocusInputSubject.asObservable();
|
|
8
13
|
this.isTouchedInputSubject = new BehaviorSubject(false);
|
|
9
14
|
this.isTouchedInput$ = this.isTouchedInputSubject.asObservable();
|
|
15
|
+
this.isVisibleCommandsSubject = new BehaviorSubject(false);
|
|
16
|
+
this.isVisibleCommands$ = this.isVisibleCommandsSubject.asObservable();
|
|
17
|
+
this.commandEventSubject = new Subject();
|
|
18
|
+
this.commandEvent$ = this.commandEventSubject.asObservable();
|
|
19
|
+
this.combinedVariables$ = combineLatest([
|
|
20
|
+
this.isFocusInput$,
|
|
21
|
+
this.isTouchedInput$,
|
|
22
|
+
this.isVisibleCommands$,
|
|
23
|
+
]);
|
|
10
24
|
}
|
|
11
|
-
|
|
25
|
+
setIsFocusInput(value) {
|
|
12
26
|
this.isFocusInputSubject.next(value);
|
|
13
27
|
}
|
|
14
|
-
|
|
28
|
+
setIsTouchedInput(value) {
|
|
15
29
|
this.isTouchedInputSubject.next(value);
|
|
16
30
|
}
|
|
17
|
-
|
|
31
|
+
setIsVisibleCommands(value) {
|
|
32
|
+
this.isVisibleCommandsSubject.next(value);
|
|
33
|
+
}
|
|
34
|
+
setInputElementRef(input, cdRef) {
|
|
18
35
|
this.input = input;
|
|
36
|
+
this.cdRef = cdRef;
|
|
19
37
|
}
|
|
20
38
|
setSuperControl(superControl) {
|
|
21
39
|
this.superControl = superControl;
|
|
@@ -23,6 +41,9 @@ export class InputStateService {
|
|
|
23
41
|
setInputConfig(config) {
|
|
24
42
|
this.inputConfig = config;
|
|
25
43
|
}
|
|
44
|
+
setCommandEvent(value) {
|
|
45
|
+
this.commandEventSubject.next(value);
|
|
46
|
+
}
|
|
26
47
|
clearInput(event) {
|
|
27
48
|
event.preventDefault();
|
|
28
49
|
event.stopPropagation();
|
|
@@ -45,8 +66,8 @@ export class InputStateService {
|
|
|
45
66
|
// this.numberOfPoints = 0;
|
|
46
67
|
// this.oneSpaceOnlyCounter = 0;
|
|
47
68
|
// this.inputConfig.dropdownImageInput = null;
|
|
48
|
-
this.
|
|
49
|
-
this.
|
|
69
|
+
this.setIsTouchedInput(true);
|
|
70
|
+
this.setIsFocusInput(false);
|
|
50
71
|
// this.isTouchedInput = true;
|
|
51
72
|
// this.isFocusInput = false;
|
|
52
73
|
if (["datepicker", "timepicker", "datepickerBankCard"].includes(this.inputConfig.name)) {
|
|
@@ -80,6 +101,203 @@ export class InputStateService {
|
|
|
80
101
|
}
|
|
81
102
|
}
|
|
82
103
|
}
|
|
104
|
+
onCommands(event, type, action) {
|
|
105
|
+
event.stopPropagation();
|
|
106
|
+
event.preventDefault();
|
|
107
|
+
switch (type) {
|
|
108
|
+
case InputCommandsType.PM_INCREMENT_DECREMENT:
|
|
109
|
+
this.handlePmIncrementDecrement(action);
|
|
110
|
+
break;
|
|
111
|
+
case InputCommandsType.CONFIRM_CANCEL:
|
|
112
|
+
this.handleConfirmCancel(action);
|
|
113
|
+
break;
|
|
114
|
+
case InputCommandsType.MONTHS:
|
|
115
|
+
this.handleMonths(action);
|
|
116
|
+
break;
|
|
117
|
+
default:
|
|
118
|
+
break;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
handlePmIncrementDecrement(action) {
|
|
122
|
+
const value = MethodsCalculationsHelper.convertThousanSepInNumber(this.superControl.control?.value);
|
|
123
|
+
switch (action) {
|
|
124
|
+
case InputCommandsAction.DECREMENT:
|
|
125
|
+
this.decrementPmValue(value);
|
|
126
|
+
break;
|
|
127
|
+
case InputCommandsAction.INCREMENT:
|
|
128
|
+
this.incrementPmValue(value);
|
|
129
|
+
break;
|
|
130
|
+
case InputCommandsAction.RESET:
|
|
131
|
+
this.resetPmValue();
|
|
132
|
+
break;
|
|
133
|
+
default:
|
|
134
|
+
break;
|
|
135
|
+
}
|
|
136
|
+
this.setInputCursorAtTheEnd(this.input.nativeElement);
|
|
137
|
+
}
|
|
138
|
+
decrementPmValue(value) {
|
|
139
|
+
if (value >= 10000 && value < 20000) {
|
|
140
|
+
this.superControl.control?.patchValue(MethodsCalculationsHelper.convertNumberInThousandSep(value - 1000));
|
|
141
|
+
}
|
|
142
|
+
else if (value >= 20001 && value < 50000) {
|
|
143
|
+
this.superControl.control?.patchValue(MethodsCalculationsHelper.convertNumberInThousandSep(value - 3000));
|
|
144
|
+
}
|
|
145
|
+
else if (value >= 50001 && value < 100000) {
|
|
146
|
+
this.superControl.control?.patchValue(MethodsCalculationsHelper.convertNumberInThousandSep(value - 5000));
|
|
147
|
+
}
|
|
148
|
+
else if (value >= 10000) {
|
|
149
|
+
this.superControl.control?.patchValue(MethodsCalculationsHelper.convertNumberInThousandSep(value - 10000));
|
|
150
|
+
}
|
|
151
|
+
else if (value >= 1000) {
|
|
152
|
+
this.superControl.control?.patchValue(MethodsCalculationsHelper.convertNumberInThousandSep(value - 500));
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
incrementPmValue(value) {
|
|
156
|
+
if (value > 10000 && value < 20000) {
|
|
157
|
+
this.superControl.control?.patchValue(MethodsCalculationsHelper.convertNumberInThousandSep(value + 1000));
|
|
158
|
+
}
|
|
159
|
+
else if (value >= 20001 && value < 50000) {
|
|
160
|
+
this.superControl.control?.patchValue(MethodsCalculationsHelper.convertNumberInThousandSep(value + 3000));
|
|
161
|
+
}
|
|
162
|
+
else if (value >= 50001 && value < 100000) {
|
|
163
|
+
this.superControl.control?.patchValue(MethodsCalculationsHelper.convertNumberInThousandSep(value + 5000));
|
|
164
|
+
}
|
|
165
|
+
else if (value >= 10000) {
|
|
166
|
+
this.superControl.control?.patchValue(MethodsCalculationsHelper.convertNumberInThousandSep(value + 10000));
|
|
167
|
+
}
|
|
168
|
+
else {
|
|
169
|
+
this.superControl.control?.patchValue(MethodsCalculationsHelper.convertNumberInThousandSep(value + 500));
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
resetPmValue() {
|
|
173
|
+
if (this.inputConfig?.defaultValue) {
|
|
174
|
+
this.superControl.control?.patchValue(this.inputConfig?.defaultValue);
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
handleConfirmCancel(action) {
|
|
178
|
+
switch (action) {
|
|
179
|
+
case InputCommandsAction.CONFIRM:
|
|
180
|
+
this.confirmCommand();
|
|
181
|
+
break;
|
|
182
|
+
case InputCommandsAction.CANCEL:
|
|
183
|
+
this.cancelCommand();
|
|
184
|
+
break;
|
|
185
|
+
default:
|
|
186
|
+
break;
|
|
187
|
+
}
|
|
188
|
+
this.superControl.control?.setErrors(null);
|
|
189
|
+
this.inputConfig.dropdownLabelNew = false;
|
|
190
|
+
this.inputConfig.commands.active = false;
|
|
191
|
+
this.inputConfig.blackInput = false;
|
|
192
|
+
// TODO: this.editInputMode = false;
|
|
193
|
+
this.setIsVisibleCommands(false);
|
|
194
|
+
this.setIsFocusInput(false);
|
|
195
|
+
}
|
|
196
|
+
confirmCommand() {
|
|
197
|
+
this.setCommandEvent({
|
|
198
|
+
data: this.superControl.control?.value,
|
|
199
|
+
action: InputCommandsAction.CONFIRM,
|
|
200
|
+
mode: !this.inputConfig.dropdownLabelNew &&
|
|
201
|
+
this.inputConfig.name !== "Input Dropdown Bank Name"
|
|
202
|
+
? "edit"
|
|
203
|
+
: "new",
|
|
204
|
+
});
|
|
205
|
+
}
|
|
206
|
+
cancelCommand() {
|
|
207
|
+
this.setCommandEvent({ action: InputCommandsAction.CANCEL });
|
|
208
|
+
}
|
|
209
|
+
handleMonths(action) {
|
|
210
|
+
clearTimeout(this.inputCommandsTimeout);
|
|
211
|
+
switch (action) {
|
|
212
|
+
case InputCommandsAction.MINUS:
|
|
213
|
+
this.decrementMonth();
|
|
214
|
+
break;
|
|
215
|
+
case InputCommandsAction.PLUS:
|
|
216
|
+
this.incrementMonth();
|
|
217
|
+
break;
|
|
218
|
+
default:
|
|
219
|
+
break;
|
|
220
|
+
}
|
|
221
|
+
if (parseInt(this.superControl.control?.value) < 1 ||
|
|
222
|
+
parseInt(this.superControl.control?.value) > 12) {
|
|
223
|
+
this.superControl.control?.setErrors({ invalid: true });
|
|
224
|
+
}
|
|
225
|
+
else {
|
|
226
|
+
this.superControl.control?.setErrors(null);
|
|
227
|
+
}
|
|
228
|
+
this.setInputCursorAtTheEnd(this.input.nativeElement);
|
|
229
|
+
}
|
|
230
|
+
decrementMonth() {
|
|
231
|
+
if (parseInt(this.superControl.control?.value) === 1 ||
|
|
232
|
+
!this.superControl.control?.value) {
|
|
233
|
+
this.blurOnCommands();
|
|
234
|
+
return;
|
|
235
|
+
}
|
|
236
|
+
this.superControl.control?.patchValue((this.superControl.control?.value
|
|
237
|
+
? parseInt(this.superControl.control?.value)
|
|
238
|
+
: 0) - 1);
|
|
239
|
+
}
|
|
240
|
+
incrementMonth() {
|
|
241
|
+
if (parseInt(this.superControl.control?.value) === 12) {
|
|
242
|
+
this.blurOnCommands();
|
|
243
|
+
return;
|
|
244
|
+
}
|
|
245
|
+
this.superControl.control?.patchValue((this.superControl.control?.value
|
|
246
|
+
? parseInt(this.superControl.control?.value)
|
|
247
|
+
: 0) + 1);
|
|
248
|
+
}
|
|
249
|
+
onFocus(event) {
|
|
250
|
+
// Commands
|
|
251
|
+
if (this.inputConfig.commands && !this.inputConfig.isDisabled) {
|
|
252
|
+
if (this.inputConfig.commands.type === InputCommandsType.MONTHS) {
|
|
253
|
+
if (!this.inputConfig.blueInput)
|
|
254
|
+
this.inputConfig.blackInput = true;
|
|
255
|
+
this.inputConfig.commands.active = true;
|
|
256
|
+
this.setIsVisibleCommands(true);
|
|
257
|
+
}
|
|
258
|
+
if (this.inputConfig.commands.type ===
|
|
259
|
+
InputCommandsType.PM_INCREMENT_DECREMENT) {
|
|
260
|
+
this.inputConfig.blackInput = false;
|
|
261
|
+
this.inputConfig.commands.active = true;
|
|
262
|
+
this.setIsVisibleCommands(true);
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
this.setIsFocusInput(true);
|
|
266
|
+
}
|
|
267
|
+
onBlur(event) {
|
|
268
|
+
let selection = window.getSelection();
|
|
269
|
+
selection?.removeAllRanges();
|
|
270
|
+
// Input Commands
|
|
271
|
+
if (this.inputConfig.commands) {
|
|
272
|
+
this.blurOnCommands();
|
|
273
|
+
}
|
|
274
|
+
// Password
|
|
275
|
+
if (this.inputConfig.type === "password") {
|
|
276
|
+
// this.blurOnPassword();
|
|
277
|
+
}
|
|
278
|
+
// Normal focus out
|
|
279
|
+
else {
|
|
280
|
+
this.setIsFocusInput(false);
|
|
281
|
+
}
|
|
282
|
+
this.setIsTouchedInput(true);
|
|
283
|
+
}
|
|
284
|
+
blurOnCommands() {
|
|
285
|
+
this.inputCommandsTimeout = setTimeout(() => {
|
|
286
|
+
this.inputConfig.commands.active = false;
|
|
287
|
+
this.setIsVisibleCommands(false);
|
|
288
|
+
this.inputConfig.blackInput = false;
|
|
289
|
+
this.cdRef.detectChanges();
|
|
290
|
+
}, 200);
|
|
291
|
+
}
|
|
292
|
+
setInputCursorAtTheEnd(input, time = 120) {
|
|
293
|
+
const selectionEnd = input.selectionEnd;
|
|
294
|
+
if (input.setSelectionRange) {
|
|
295
|
+
input.setSelectionRange(selectionEnd, selectionEnd);
|
|
296
|
+
}
|
|
297
|
+
setTimeout(() => {
|
|
298
|
+
input.focus();
|
|
299
|
+
}, time);
|
|
300
|
+
}
|
|
83
301
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InputStateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
84
302
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InputStateService, providedIn: "root" }); }
|
|
85
303
|
}
|
|
@@ -89,4 +307,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
89
307
|
providedIn: "root",
|
|
90
308
|
}]
|
|
91
309
|
}], ctorParameters: function () { return []; } });
|
|
92
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtaW5wdXQtc3RhdGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLWlucHV0L3NlcnZpY2VzL2NhLWlucHV0LXN0YXRlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDOztBQU9uRCxNQUFNLE9BQU8saUJBQWlCO0lBYzVCO1FBYlEsd0JBQW1CLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDM0Qsa0JBQWEsR0FDbEIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFlBQVksRUFBRSxDQUFDO1FBRWxDLDBCQUFxQixHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQzdELG9CQUFlLEdBQ3BCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQU83QixDQUFDO0lBRVQsZUFBZSxDQUFDLEtBQWM7UUFDbkMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRU0saUJBQWlCLENBQUMsS0FBYztRQUNyQyxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFTSxrQkFBa0IsQ0FBQyxLQUFpQjtRQUN6QyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0lBRU0sZUFBZSxDQUFDLFlBQXVCO1FBQzVDLElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO0lBQ25DLENBQUM7SUFFTSxjQUFjLENBQUMsTUFBZ0I7UUFDcEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUM7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ZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBJQ2FJbnB1dCB9IGZyb20gJ0BzaGFyZWQvY29tcG9uZW50cy9jYS1pbnB1dC9jb25maWcvY2EtaW5wdXQuY29uZmlnJztcbmltcG9ydCB7IE5nQ29udHJvbCB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46IFwicm9vdFwiLFxufSlcbmV4cG9ydCBjbGFzcyBJbnB1dFN0YXRlU2VydmljZSB7XG4gIHByaXZhdGUgaXNGb2N1c0lucHV0U3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwdWJsaWMgaXNGb2N1c0lucHV0JDogT2JzZXJ2YWJsZTxib29sZWFuPiA9XG4gICAgdGhpcy5pc0ZvY3VzSW5wdXRTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xuXG4gIHByaXZhdGUgaXNUb3VjaGVkSW5wdXRTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHB1YmxpYyBpc1RvdWNoZWRJbnB1dCQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPVxuICAgIHRoaXMuaXNUb3VjaGVkSW5wdXRTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xuXG4gIHByaXZhdGUgaW5wdXRDb25maWchOiBJQ2FJbnB1dDtcblxuICBwcml2YXRlIGlucHV0ITogRWxlbWVudFJlZjtcbiAgcHJpdmF0ZSBzdXBlckNvbnRyb2whOiBOZ0NvbnRyb2w7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIHB1YmxpYyBzZXRpc0ZvY3VzSW5wdXQodmFsdWU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmlzRm9jdXNJbnB1dFN1YmplY3QubmV4dCh2YWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgc2V0aXNUb3VjaGVkSW5wdXQodmFsdWU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmlzVG91Y2hlZElucHV0U3ViamVjdC5uZXh0KHZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRJbnB1dEVsZW1lbnRSZWYoaW5wdXQ6IEVsZW1lbnRSZWYpOiB2b2lkIHtcbiAgICB0aGlzLmlucHV0ID0gaW5wdXQ7XG4gIH1cblxuICBwdWJsaWMgc2V0U3VwZXJDb250cm9sKHN1cGVyQ29udHJvbDogTmdDb250cm9sKTogdm9pZCB7XG4gICAgdGhpcy5zdXBlckNvbnRyb2wgPSBzdXBlckNvbnRyb2w7XG4gIH1cblxuICBwdWJsaWMgc2V0SW5wdXRDb25maWcoY29uZmlnOiBJQ2FJbnB1dCk6IHZvaWQge1xuICAgIHRoaXMuaW5wdXRDb25maWcgPSBjb25maWc7XG4gIH1cblxuICBwdWJsaWMgY2xlYXJJbnB1dChldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIC8vIENsZWFyIHdob2xlIGlucHV0XG4gICAgaWYgKHRoaXMuaW5wdXRDb25maWcucmVtb3ZlSW5wdXQpIHtcbiAgICAgIC8vIHRoaXMuY2xlYXJJbnB1dEV2ZW50LmVtaXQodHJ1ZSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIC8vIEluY29ycmVjdCBJbnB1dFxuICAgIGlmICh0aGlzLmlucHV0Q29uZmlnLmluY29ycmVjdElucHV0KSB7XG4gICAgICAvL3RoaXMuaW5jb3JyZWN0VmFsdWUgPSAhdGhpcy5pbmNvcnJlY3RWYWx1ZTtcbiAgICAgIC8vIHRoaXMuaW5jb3JyZWN0SW5wdXQuZW1pdCh0aGlzLmluY29ycmVjdFZhbHVlKTtcbiAgICB9XG4gICAgLy8gTmF0aXZlIGNsZWFyXG4gICAgZWxzZSB7XG4gICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSBudWxsO1xuICAgICAgdGhpcy5zdXBlckNvbnRyb2wuY29udHJvbD8uc2V0VmFsdWUobnVsbCk7XG4gICAgICAvLyB0aGlzLm51bWJlck9mQ29uc2VjdXRpdmVseVNwYWNlcyA9IDA7XG4gICAgICAvLyB0aGlzLm51bWJlck9mQ29uc2VjdXRpdmVseVBvaW50cyA9IDA7XG4gICAgICAvLyB0aGlzLm51bWJlck9mUG9pbnRzID0gMDtcbiAgICAgIC8vIHRoaXMub25lU3BhY2VPbmx5Q291bnRlciA9IDA7XG4gICAgICAvLyB0aGlzLmlucHV0Q29uZmlnLmRyb3Bkb3duSW1hZ2VJbnB1dCA9IG51bGw7XG4gICAgICB0aGlzLnNldGlzVG91Y2hlZElucHV0KHRydWUpO1xuICAgICAgdGhpcy5zZXRpc0ZvY3VzSW5wdXQoZmFsc2UpO1xuICAgICAgLy8gdGhpcy5pc1RvdWNoZWRJbnB1dCA9IHRydWU7XG4gICAgICAvLyB0aGlzLmlzRm9jdXNJbnB1dCA9IGZhbHNlO1xuICAgICAgaWYgKFxuICAgICAgICBbXCJkYXRlcGlja2VyXCIsIFwidGltZXBpY2tlclwiLCBcImRhdGVwaWNrZXJCYW5rQ2FyZFwiXS5pbmNsdWRlcyhcbiAgICAgICAgICB0aGlzLmlucHV0Q29uZmlnLm5hbWVcbiAgICAgICAgKVxuICAgICAgKSB7XG4gICAgICAgIC8vIHRoaXMucmVzZXREYXRlVGltZUlucHV0cygpO1xuICAgICAgfVxuXG4gICAgICAvLyB0aGlzLmNsZWFySW5wdXRFdmVudC5lbWl0KHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyB0cmFuc2Zvcm1UZXh0KGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IHZhbHVlID0gKGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS52YWx1ZTtcblxuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID0gdmFsdWU7XG4gICAgfVxuXG4gICAgc3dpdGNoICh0aGlzLmlucHV0Q29uZmlnLnRleHRUcmFuc2Zvcm0pIHtcbiAgICAgIGNhc2UgXCJjYXBpdGFsaXplXCI6IHtcbiAgICAgICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID1cbiAgICAgICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUuY2hhckF0KDApPy50b1VwcGVyQ2FzZSgpICtcbiAgICAgICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUuc3Vic3RyaW5nKDEpLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgIHRoaXMuc3VwZXJDb250cm9sLmNvbnRyb2w/LnBhdGNoVmFsdWUodGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlIFwidXBwZXJjYXNlXCI6IHtcbiAgICAgICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID1cbiAgICAgICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUudG9Mb2NhbGVVcHBlckNhc2UoXCJlbi1VU1wiKTtcbiAgICAgICAgdGhpcy5zdXBlckNvbnRyb2wuY29udHJvbD8ucGF0Y2hWYWx1ZSh0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUpO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgdGhpcy5zdXBlckNvbnRyb2wuY29udHJvbD8ucGF0Y2hWYWx1ZSh0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUpO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
310
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtaW5wdXQtc3RhdGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLWlucHV0L3NlcnZpY2VzL2NhLWlucHV0LXN0YXRlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQyxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBTzNFLFVBQVU7QUFDVixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUUvRixRQUFRO0FBQ1IsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDMUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7O0FBTXRFLE1BQU0sT0FBTyxpQkFBaUI7SUFnQzVCO1FBL0JRLHdCQUFtQixHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQzNELGtCQUFhLEdBQ2xCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUVsQywwQkFBcUIsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUM3RCxvQkFBZSxHQUNwQixJQUFJLENBQUMscUJBQXFCLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFcEMsNkJBQXdCLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDaEUsdUJBQWtCLEdBQ3ZCLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUV2Qyx3QkFBbUIsR0FBRyxJQUFJLE9BQU8sRUFBaUIsQ0FBQztRQUNwRCxrQkFBYSxHQUNsQixJQUFJLENBQUMsbUJBQW1CLENBQUMsWUFBWSxFQUFFLENBQUM7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LGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM3QjtRQUVELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRU8sY0FBYztRQUNwQixJQUFJLENBQUMsb0JBQW9CLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUMxQyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVMsQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1lBQzFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNqQyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7WUFDcEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUM3QixDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDVixDQUFDO0lBRU0sc0JBQXNCLENBQUMsS0FBVSxFQUFFLE9BQWUsR0FBRztRQUMxRCxNQUFNLFlBQVksR0FBRyxLQUFLLENBQUMsWUFBWSxDQUFDO1FBQ3hDLElBQUksS0FBSyxDQUFDLGlCQUFpQixFQUFFO1lBQzNCLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsWUFBWSxDQUFDLENBQUM7U0FDckQ7UUFDRCxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2hCLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNYLENBQUM7K0dBeFhVLGlCQUFpQjttSEFBakIsaUJBQWlCLGNBRmhCLE1BQU07OzRGQUVQLGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgRWxlbWVudFJlZiwgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgTmdDb250cm9sIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5cbi8vIG1vZGVsc1xuaW1wb3J0IHsgSUNhSW5wdXQgfSBmcm9tIFwiLi4vY29uZmlnL2NhLWlucHV0LmNvbmZpZ1wiO1xuaW1wb3J0IHsgQ29tbWFuZHNFdmVudCB9IGZyb20gXCIuLi9tb2RlbHMvY29tbWFuZHMtZXZlbnQubW9kZWxcIjtcblxuLy8gaGVscGVyc1xuaW1wb3J0IHsgTWV0aG9kc0NhbGN1bGF0aW9uc0hlbHBlciB9IGZyb20gXCIuLi8uLi8uLi91dGlscy9oZWxwZXJzL21ldGhvZHMtY2FsY3VsYXRpb25zLmhlbHBlclwiO1xuXG4vLyBlbnVtc1xuaW1wb3J0IHsgSW5wdXRDb21tYW5kc0FjdGlvbiB9IGZyb20gXCIuLi9lbnVtcy9pbnB1dC1jb21tYW5kcy1hY3Rpb24uZW51bVwiO1xuaW1wb3J0IHsgSW5wdXRDb21tYW5kc1R5cGUgfSBmcm9tIFwiLi4vZW51bXMvaW5wdXQtY29tbWFuZHMtdHlwZS5lbnVtXCI7XG5cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiBcInJvb3RcIixcbn0pXG5leHBvcnQgY2xhc3MgSW5wdXRTdGF0ZVNlcnZpY2Uge1xuICBwcml2YXRlIGlzRm9jdXNJbnB1dFN1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcHVibGljIGlzRm9jdXNJbnB1dCQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPVxuICAgIHRoaXMuaXNGb2N1c0lucHV0U3ViamVjdC5hc09ic2VydmFibGUoKTtcblxuICBwcml2YXRlIGlzVG91Y2hlZElucHV0U3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwdWJsaWMgaXNUb3VjaGVkSW5wdXQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID1cbiAgICB0aGlzLmlzVG91Y2hlZElucHV0U3ViamVjdC5hc09ic2VydmFibGUoKTtcblxuICBwcml2YXRlIGlzVmlzaWJsZUNvbW1hbmRzU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwdWJsaWMgaXNWaXNpYmxlQ29tbWFuZHMkOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID1cbiAgICB0aGlzLmlzVmlzaWJsZUNvbW1hbmRzU3ViamVjdC5hc09ic2VydmFibGUoKTtcblxuICBwcml2YXRlIGNvbW1hbmRFdmVudFN1YmplY3QgPSBuZXcgU3ViamVjdDxDb21tYW5kc0V2ZW50PigpO1xuICBwdWJsaWMgY29tbWFuZEV2ZW50JDogT2JzZXJ2YWJsZTxDb21tYW5kc0V2ZW50PiA9XG4gICAgdGhpcy5jb21tYW5kRXZlbnRTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xuXG4gIHB1YmxpYyBjb21iaW5lZFZhcmlhYmxlcyQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICB0aGlzLmlzRm9jdXNJbnB1dCQsXG4gICAgdGhpcy5pc1RvdWNoZWRJbnB1dCQsXG4gICAgdGhpcy5pc1Zpc2libGVDb21tYW5kcyQsXG4gIF0pO1xuXG4gIHByaXZhdGUgY2RSZWYhOiBDaGFuZ2VEZXRlY3RvclJlZjtcblxuICBwcml2YXRlIGlucHV0Q29uZmlnITogSUNhSW5wdXQ7XG5cbiAgcHJpdmF0ZSBpbnB1dCE6IEVsZW1lbnRSZWY7XG4gIHByaXZhdGUgc3VwZXJDb250cm9sITogTmdDb250cm9sO1xuXG4gIGlucHV0Q29tbWFuZHNUaW1lb3V0ITogTm9kZUpTLlRpbWVvdXQgfCBudW1iZXI7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIHB1YmxpYyBzZXRJc0ZvY3VzSW5wdXQodmFsdWU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmlzRm9jdXNJbnB1dFN1YmplY3QubmV4dCh2YWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgc2V0SXNUb3VjaGVkSW5wdXQodmFsdWU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmlzVG91Y2hlZElucHV0U3ViamVjdC5uZXh0KHZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRJc1Zpc2libGVDb21tYW5kcyh2YWx1ZTogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuaXNWaXNpYmxlQ29tbWFuZHNTdWJqZWN0Lm5leHQodmFsdWUpO1xuICB9XG5cbiAgcHVibGljIHNldElucHV0RWxlbWVudFJlZihpbnB1dDogRWxlbWVudFJlZiwgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmKTogdm9pZCB7XG4gICAgdGhpcy5pbnB1dCA9IGlucHV0O1xuICAgIHRoaXMuY2RSZWYgPSBjZFJlZjtcbiAgfVxuXG4gIHB1YmxpYyBzZXRTdXBlckNvbnRyb2woc3VwZXJDb250cm9sOiBOZ0NvbnRyb2wpOiB2b2lkIHtcbiAgICB0aGlzLnN1cGVyQ29udHJvbCA9IHN1cGVyQ29udHJvbDtcbiAgfVxuXG4gIHB1YmxpYyBzZXRJbnB1dENvbmZpZyhjb25maWc6IElDYUlucHV0KTogdm9pZCB7XG4gICAgdGhpcy5pbnB1dENvbmZpZyA9IGNvbmZpZztcbiAgfVxuXG4gIHB1YmxpYyBzZXRDb21tYW5kRXZlbnQodmFsdWU6IENvbW1hbmRzRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmNvbW1hbmRFdmVudFN1YmplY3QubmV4dCh2YWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgY2xlYXJJbnB1dChldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIC8vIENsZWFyIHdob2xlIGlucHV0XG4gICAgaWYgKHRoaXMuaW5wdXRDb25maWcucmVtb3ZlSW5wdXQpIHtcbiAgICAgIC8vIHRoaXMuY2xlYXJJbnB1dEV2ZW50LmVtaXQodHJ1ZSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIC8vIEluY29ycmVjdCBJbnB1dFxuICAgIGlmICh0aGlzLmlucHV0Q29uZmlnLmluY29ycmVjdElucHV0KSB7XG4gICAgICAvL3RoaXMuaW5jb3JyZWN0VmFsdWUgPSAhdGhpcy5pbmNvcnJlY3RWYWx1ZTtcbiAgICAgIC8vIHRoaXMuaW5jb3JyZWN0SW5wdXQuZW1pdCh0aGlzLmluY29ycmVjdFZhbHVlKTtcbiAgICB9XG4gICAgLy8gTmF0aXZlIGNsZWFyXG4gICAgZWxzZSB7XG4gICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSBudWxsO1xuICAgICAgdGhpcy5zdXBlckNvbnRyb2wuY29udHJvbD8uc2V0VmFsdWUobnVsbCk7XG4gICAgICAvLyB0aGlzLm51bWJlck9mQ29uc2VjdXRpdmVseVNwYWNlcyA9IDA7XG4gICAgICAvLyB0aGlzLm51bWJlck9mQ29uc2VjdXRpdmVseVBvaW50cyA9IDA7XG4gICAgICAvLyB0aGlzLm51bWJlck9mUG9pbnRzID0gMDtcbiAgICAgIC8vIHRoaXMub25lU3BhY2VPbmx5Q291bnRlciA9IDA7XG4gICAgICAvLyB0aGlzLmlucHV0Q29uZmlnLmRyb3Bkb3duSW1hZ2VJbnB1dCA9IG51bGw7XG4gICAgICB0aGlzLnNldElzVG91Y2hlZElucHV0KHRydWUpO1xuICAgICAgdGhpcy5zZXRJc0ZvY3VzSW5wdXQoZmFsc2UpO1xuICAgICAgLy8gdGhpcy5pc1RvdWNoZWRJbnB1dCA9IHRydWU7XG4gICAgICAvLyB0aGlzLmlzRm9jdXNJbnB1dCA9IGZhbHNlO1xuICAgICAgaWYgKFxuICAgICAgICBbXCJkYXRlcGlja2VyXCIsIFwidGltZXBpY2tlclwiLCBcImRhdGVwaWNrZXJCYW5rQ2FyZFwiXS5pbmNsdWRlcyhcbiAgICAgICAgICB0aGlzLmlucHV0Q29uZmlnLm5hbWVcbiAgICAgICAgKVxuICAgICAgKSB7XG4gICAgICAgIC8vIHRoaXMucmVzZXREYXRlVGltZUlucHV0cygpO1xuICAgICAgfVxuXG4gICAgICAvLyB0aGlzLmNsZWFySW5wdXRFdmVudC5lbWl0KHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyB0cmFuc2Zvcm1UZXh0KGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IHZhbHVlID0gKGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS52YWx1ZTtcblxuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID0gdmFsdWU7XG4gICAgfVxuXG4gICAgc3dpdGNoICh0aGlzLmlucHV0Q29uZmlnLnRleHRUcmFuc2Zvcm0pIHtcbiAgICAgIGNhc2UgXCJjYXBpdGFsaXplXCI6IHtcbiAgICAgICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID1cbiAgICAgICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUuY2hhckF0KDApPy50b1VwcGVyQ2FzZSgpICtcbiAgICAgICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUuc3Vic3RyaW5nKDEpLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgIHRoaXMuc3VwZXJDb250cm9sLmNvbnRyb2w/LnBhdGNoVmFsdWUodGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlIFwidXBwZXJjYXNlXCI6IHtcbiAgICAgICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID1cbiAgICAgICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUudG9Mb2NhbGVVcHBlckNhc2UoXCJlbi1VU1wiKTtcbiAgICAgICAgdGhpcy5zdXBlckNvbnRyb2wuY29udHJvbD8ucGF0Y2hWYWx1ZSh0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUpO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgdGhpcy5zdXBlckNvbnRyb2wuY29udHJvbD8ucGF0Y2hWYWx1ZSh0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUpO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb25Db21tYW5kcyhldmVudDogRXZlbnQsIHR5cGU6IHN0cmluZywgYWN0aW9uOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICBjYXNlIElucHV0Q29tbWFuZHNUeXBlLlBNX0lOQ1JFTUVOVF9ERUNSRU1FTlQ6XG4gICAgICAgIHRoaXMuaGFuZGxlUG1JbmNyZW1lbnREZWNyZW1lbnQoYWN0aW9uKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIElucHV0Q29tbWFuZHNUeXBlLkNPTkZJUk1fQ0FOQ0VMOlxuICAgICAgICB0aGlzLmhhbmRsZUNvbmZpcm1DYW5jZWwoYWN0aW9uKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIElucHV0Q29tbWFuZHNUeXBlLk1PTlRIUzpcbiAgICAgICAgdGhpcy5oYW5kbGVNb250aHMoYWN0aW9uKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZVBtSW5jcmVtZW50RGVjcmVtZW50KGFjdGlvbjogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgdmFsdWUgPSBNZXRob2RzQ2FsY3VsYXRpb25zSGVscGVyLmNvbnZlcnRUaG91c2FuU2VwSW5OdW1iZXIoXG4gICAgICB0aGlzLnN1cGVyQ29udHJvbC5jb250cm9sPy52YWx1ZVxuICAgICk7XG5cbiAgICBzd2l0Y2ggKGFjdGlvbikge1xuICAgICAgY2FzZSBJbnB1dENvbW1hbmRzQWN0aW9uLkRFQ1JFTUVOVDpcbiAgICAgICAgdGhpcy5kZWNyZW1lbnRQbVZhbHVlKHZhbHVlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIElucHV0Q29tbWFuZHNBY3Rpb24uSU5DUkVNRU5UOlxuICAgICAgICB0aGlzLmluY3JlbWVudFBtVmFsdWUodmFsdWUpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgSW5wdXRDb21tYW5kc0FjdGlvbi5SRVNFVDpcbiAgICAgICAgdGhpcy5yZXNldFBtVmFsdWUoKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICB0aGlzLnNldElucHV0Q3Vyc29yQXRUaGVFbmQodGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50KTtcbiAgfVxuXG4gIHByaXZhdGUgZGVjcmVtZW50UG1WYWx1ZSh2YWx1ZTogbnVtYmVyKTogdm9pZCB7XG4gICAgaWYgKHZhbHVlID49IDEwMDAwICYmIHZhbHVlIDwgMjAwMDApIHtcbiAgICAgIHRoaXMuc3VwZXJDb250cm9sLmNvbnRyb2w/LnBhdGNoVmFsdWUoXG4gICAgICAgIE1ldGhvZHNDYWxjdWxhdGlvbnNIZWxwZXIuY29udmVydE51bWJlckluVGhvdXNhbmRTZXAodmFsdWUgLSAxMDAwKVxuICAgICAgKTtcbiAgICB9IGVsc2UgaWYgKHZhbHVlID49IDIwMDAxICYmIHZhbHVlIDwgNTAwMDApIHtcbiAgICAgIHRoaXMuc3VwZXJDb250cm9sLmNvbnRyb2w/LnBhdGNoVmFsdWUoXG4gICAgICAgIE1ldGhvZHNDYWxjdWxhdGlvbnNIZWxwZXIuY29udmVydE51bWJlckluVGhvdXNhbmRTZXAodmFsdWUgLSAzMDAwKVxuICAgICAgKTtcbiAgICB9IGVsc2UgaWYgKHZhbHVlID49IDUwMDAxICYmIHZhbHVlIDwgMTAwMDAwKSB7XG4gICAgICB0aGlzLnN1cGVyQ29udHJvbC5jb250cm9sPy5wYXRjaFZhbHVlKFxuICAgICAgICBNZXRob2RzQ2FsY3VsYXRpb25zSGVscGVyLmNvbnZlcnROdW1iZXJJblRob3VzYW5kU2VwKHZhbHVlIC0gNTAwMClcbiAgICAgICk7XG4gICAgfSBlbHNlIGlmICh2YWx1ZSA+PSAxMDAwMCkge1xuICAgICAgdGhpcy5zdXBlckNvbnRyb2wuY29udHJvbD8ucGF0Y2hWYWx1ZShcbiAgICAgICAgTWV0aG9kc0NhbGN1bGF0aW9uc0hlbHBlci5jb252ZXJ0TnVtYmVySW5UaG91c2FuZFNlcCh2YWx1ZSAtIDEwMDAwKVxuICAgICAgKTtcbiAgICB9IGVsc2UgaWYgKHZhbHVlID49IDEwMDApIHtcbiAgICAgIHRoaXMuc3VwZXJDb250cm9sLmNvbnRyb2w/LnBhdGNoVmFsdWUoXG4gICAgICAgIE1ldGhvZHNDYWxjdWxhdGlvbnNIZWxwZXIuY29udmVydE51bWJlckluVGhvdXNhbmRTZXAodmFsdWUgLSA1MDApXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaW5jcmVtZW50UG1WYWx1ZSh2YWx1ZTogbnVtYmVyKTogdm9pZCB7XG4gICAgaWYgKHZhbHVlID4gMTAwMDAgJiYgdmFsdWUgPCAyMDAwMCkge1xuICAgICAgdGhpcy5zdXBlckNvbnRyb2wuY29udHJvbD8ucGF0Y2hWYWx1ZShcbiAgICAgICAgTWV0aG9kc0NhbGN1bGF0aW9uc0hlbHBlci5jb252ZXJ0TnVtYmVySW5UaG91c2FuZFNlcCh2YWx1ZSArIDEwMDApXG4gICAgICApO1xuICAgIH0gZWxzZSBpZiAodmFsdWUgPj0gMjAwMDEgJiYgdmFsdWUgPCA1MDAwMCkge1xuICAgICAgdGhpcy5zdXBlckNvbnRyb2wuY29udHJvbD8ucGF0Y2hWYWx1ZShcbiAgICAgICAgTWV0aG9kc0NhbGN1bGF0aW9uc0hlbHBlci5jb252ZXJ0TnVtYmVySW5UaG91c2FuZFNlcCh2YWx1ZSArIDMwMDApXG4gICAgICApO1xuICAgIH0gZWxzZSBpZiAodmFsdWUgPj0gNTAwMDEgJiYgdmFsdWUgPCAxMDAwMDApIHtcbiAgICAgIHRoaXMuc3VwZXJDb250cm9sLmNvbnRyb2w/LnBhdGNoVmFsdWUoXG4gICAgICAgIE1ldGhvZHNDYWxjdWxhdGlvbnNIZWxwZXIuY29udmVydE51bWJlckluVGhvdXNhbmRTZXAodmFsdWUgKyA1MDAwKVxuICAgICAgKTtcbiAgICB9IGVsc2UgaWYgKHZhbHVlID49IDEwMDAwKSB7XG4gICAgICB0aGlzLnN1cGVyQ29udHJvbC5jb250cm9sPy5wYXRjaFZhbHVlKFxuICAgICAgICBNZXRob2RzQ2FsY3VsYXRpb25zSGVscGVyLmNvbnZlcnROdW1iZXJJblRob3VzYW5kU2VwKHZhbHVlICsgMTAwMDApXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnN1cGVyQ29udHJvbC5jb250cm9sPy5wYXRjaFZhbHVlKFxuICAgICAgICBNZXRob2RzQ2FsY3VsYXRpb25zSGVscGVyLmNvbnZlcnROdW1iZXJJblRob3VzYW5kU2VwKHZhbHVlICsgNTAwKVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHJlc2V0UG1WYWx1ZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pbnB1dENvbmZpZz8uZGVmYXVsdFZhbHVlKSB7XG4gICAgICB0aGlzLnN1cGVyQ29udHJvbC5jb250cm9sPy5wYXRjaFZhbHVlKHRoaXMuaW5wdXRDb25maWc/LmRlZmF1bHRWYWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVDb25maXJtQ2FuY2VsKGFjdGlvbjogc3RyaW5nKTogdm9pZCB7XG4gICAgc3dpdGNoIChhY3Rpb24pIHtcbiAgICAgIGNhc2UgSW5wdXRDb21tYW5kc0FjdGlvbi5DT05GSVJNOlxuICAgICAgICB0aGlzLmNvbmZpcm1Db21tYW5kKCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBJbnB1dENvbW1hbmRzQWN0aW9uLkNBTkNFTDpcbiAgICAgICAgdGhpcy5jYW5jZWxDb21tYW5kKCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuXG4gICAgdGhpcy5zdXBlckNvbnRyb2wuY29udHJvbD8uc2V0RXJyb3JzKG51bGwpO1xuICAgIHRoaXMuaW5wdXRDb25maWcuZHJvcGRvd25MYWJlbE5ldyA9IGZhbHNlO1xuICAgIHRoaXMuaW5wdXRDb25maWcuY29tbWFuZHMhLmFjdGl2ZSA9IGZhbHNlO1xuICAgIHRoaXMuaW5wdXRDb25maWcuYmxhY2tJbnB1dCA9IGZhbHNlO1xuICAgIC8vIFRPRE86IHRoaXMuZWRpdElucHV0TW9kZSA9IGZhbHNlO1xuICAgIHRoaXMuc2V0SXNWaXNpYmxlQ29tbWFuZHMoZmFsc2UpO1xuICAgIHRoaXMuc2V0SXNGb2N1c0lucHV0KGZhbHNlKTtcbiAgfVxuXG4gIHByaXZhdGUgY29uZmlybUNvbW1hbmQoKTogdm9pZCB7XG4gICAgdGhpcy5zZXRDb21tYW5kRXZlbnQoe1xuICAgICAgZGF0YTogdGhpcy5zdXBlckNvbnRyb2wuY29udHJvbD8udmFsdWUsXG4gICAgICBhY3Rpb246IElucHV0Q29tbWFuZHNBY3Rpb24uQ09ORklSTSxcbiAgICAgIG1vZGU6XG4gICAgICAgICF0aGlzLmlucHV0Q29uZmlnLmRyb3Bkb3duTGFiZWxOZXcgJiZcbiAgICAgICAgdGhpcy5pbnB1dENvbmZpZy5uYW1lICE9PSBcIklucHV0IERyb3Bkb3duIEJhbmsgTmFtZVwiXG4gICAgICAgICAgPyBcImVkaXRcIlxuICAgICAgICAgIDogXCJuZXdcIixcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgY2FuY2VsQ29tbWFuZCgpOiB2b2lkIHtcbiAgICB0aGlzLnNldENvbW1hbmRFdmVudCh7IGFjdGlvbjogSW5wdXRDb21tYW5kc0FjdGlvbi5DQU5DRUwgfSk7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZU1vbnRocyhhY3Rpb246IHN0cmluZyk6IHZvaWQge1xuICAgIGNsZWFyVGltZW91dCh0aGlzLmlucHV0Q29tbWFuZHNUaW1lb3V0KTtcblxuICAgIHN3aXRjaCAoYWN0aW9uKSB7XG4gICAgICBjYXNlIElucHV0Q29tbWFuZHNBY3Rpb24uTUlOVVM6XG4gICAgICAgIHRoaXMuZGVjcmVtZW50TW9udGgoKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIElucHV0Q29tbWFuZHNBY3Rpb24uUExVUzpcbiAgICAgICAgdGhpcy5pbmNyZW1lbnRNb250aCgpO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIHBhcnNlSW50KHRoaXMuc3VwZXJDb250cm9sLmNvbnRyb2w/LnZhbHVlKSA8IDEgfHxcbiAgICAgIHBhcnNlSW50KHRoaXMuc3VwZXJDb250cm9sLmNvbnRyb2w/LnZhbHVlKSA+IDEyXG4gICAgKSB7XG4gICAgICB0aGlzLnN1cGVyQ29udHJvbC5jb250cm9sPy5zZXRFcnJvcnMoeyBpbnZhbGlkOiB0cnVlIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnN1cGVyQ29udHJvbC5jb250cm9sPy5zZXRFcnJvcnMobnVsbCk7XG4gICAgfVxuXG4gICAgdGhpcy5zZXRJbnB1dEN1cnNvckF0VGhlRW5kKHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudCk7XG4gIH1cblxuICBwcml2YXRlIGRlY3JlbWVudE1vbnRoKCk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgIHBhcnNlSW50KHRoaXMuc3VwZXJDb250cm9sLmNvbnRyb2w/LnZhbHVlKSA9PT0gMSB8fFxuICAgICAgIXRoaXMuc3VwZXJDb250cm9sLmNvbnRyb2w/LnZhbHVlXG4gICAgKSB7XG4gICAgICB0aGlzLmJsdXJPbkNvbW1hbmRzKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5zdXBlckNvbnRyb2wuY29udHJvbD8ucGF0Y2hWYWx1ZShcbiAgICAgICh0aGlzLnN1cGVyQ29udHJvbC5jb250cm9sPy52YWx1ZVxuICAgICAgICA/IHBhcnNlSW50KHRoaXMuc3VwZXJDb250cm9sLmNvbnRyb2w/LnZhbHVlKVxuICAgICAgICA6IDApIC0gMVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGluY3JlbWVudE1vbnRoKCk6IHZvaWQge1xuICAgIGlmIChwYXJzZUludCh0aGlzLnN1cGVyQ29udHJvbC5jb250cm9sPy52YWx1ZSkgPT09IDEyKSB7XG4gICAgICB0aGlzLmJsdXJPbkNvbW1hbmRzKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5zdXBlckNvbnRyb2wuY29udHJvbD8ucGF0Y2hWYWx1ZShcbiAgICAgICh0aGlzLnN1cGVyQ29udHJvbC5jb250cm9sPy52YWx1ZVxuICAgICAgICA/IHBhcnNlSW50KHRoaXMuc3VwZXJDb250cm9sLmNvbnRyb2w/LnZhbHVlKVxuICAgICAgICA6IDApICsgMVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgb25Gb2N1cyhldmVudD86IEZvY3VzRXZlbnQpIHtcbiAgICAvLyBDb21tYW5kc1xuICAgIGlmICh0aGlzLmlucHV0Q29uZmlnLmNvbW1hbmRzICYmICF0aGlzLmlucHV0Q29uZmlnLmlzRGlzYWJsZWQpIHtcbiAgICAgIGlmICh0aGlzLmlucHV0Q29uZmlnLmNvbW1hbmRzLnR5cGUgPT09IElucHV0Q29tbWFuZHNUeXBlLk1PTlRIUykge1xuICAgICAgICBpZiAoIXRoaXMuaW5wdXRDb25maWcuYmx1ZUlucHV0KSB0aGlzLmlucHV0Q29uZmlnLmJsYWNrSW5wdXQgPSB0cnVlO1xuICAgICAgICB0aGlzLmlucHV0Q29uZmlnLmNvbW1hbmRzLmFjdGl2ZSA9IHRydWU7XG4gICAgICAgIHRoaXMuc2V0SXNWaXNpYmxlQ29tbWFuZHModHJ1ZSk7XG4gICAgICB9XG5cbiAgICAgIGlmIChcbiAgICAgICAgdGhpcy5pbnB1dENvbmZpZy5jb21tYW5kcy50eXBlID09PVxuICAgICAgICBJbnB1dENvbW1hbmRzVHlwZS5QTV9JTkNSRU1FTlRfREVDUkVNRU5UXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5pbnB1dENvbmZpZy5ibGFja0lucHV0ID0gZmFsc2U7XG4gICAgICAgIHRoaXMuaW5wdXRDb25maWcuY29tbWFuZHMuYWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZXRJc1Zpc2libGVDb21tYW5kcyh0cnVlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLnNldElzRm9jdXNJbnB1dCh0cnVlKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkJsdXIoZXZlbnQ/OiBGb2N1c0V2ZW50KTogdm9pZCB7XG4gICAgbGV0IHNlbGVjdGlvbiA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKTtcbiAgICBzZWxlY3Rpb24/LnJlbW92ZUFsbFJhbmdlcygpO1xuXG4gICAgLy8gSW5wdXQgQ29tbWFuZHNcbiAgICBpZiAodGhpcy5pbnB1dENvbmZpZy5jb21tYW5kcykge1xuICAgICAgdGhpcy5ibHVyT25Db21tYW5kcygpO1xuICAgIH1cblxuICAgIC8vIFBhc3N3b3JkXG4gICAgaWYgKHRoaXMuaW5wdXRDb25maWcudHlwZSA9PT0gXCJwYXNzd29yZFwiKSB7XG4gICAgICAvLyB0aGlzLmJsdXJPblBhc3N3b3JkKCk7XG4gICAgfVxuICAgIC8vIE5vcm1hbCBmb2N1cyBvdXRcbiAgICBlbHNlIHtcbiAgICAgIHRoaXMuc2V0SXNGb2N1c0lucHV0KGZhbHNlKTtcbiAgICB9XG5cbiAgICB0aGlzLnNldElzVG91Y2hlZElucHV0KHRydWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBibHVyT25Db21tYW5kcygpIHtcbiAgICB0aGlzLmlucHV0Q29tbWFuZHNUaW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmlucHV0Q29uZmlnLmNvbW1hbmRzIS5hY3RpdmUgPSBmYWxzZTtcbiAgICAgIHRoaXMuc2V0SXNWaXNpYmxlQ29tbWFuZHMoZmFsc2UpO1xuICAgICAgdGhpcy5pbnB1dENvbmZpZy5ibGFja0lucHV0ID0gZmFsc2U7XG4gICAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9LCAyMDApO1xuICB9XG5cbiAgcHVibGljIHNldElucHV0Q3Vyc29yQXRUaGVFbmQoaW5wdXQ6IGFueSwgdGltZTogbnVtYmVyID0gMTIwKTogdm9pZCB7XG4gICAgY29uc3Qgc2VsZWN0aW9uRW5kID0gaW5wdXQuc2VsZWN0aW9uRW5kO1xuICAgIGlmIChpbnB1dC5zZXRTZWxlY3Rpb25SYW5nZSkge1xuICAgICAgaW5wdXQuc2V0U2VsZWN0aW9uUmFuZ2Uoc2VsZWN0aW9uRW5kLCBzZWxlY3Rpb25FbmQpO1xuICAgIH1cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGlucHV0LmZvY3VzKCk7XG4gICAgfSwgdGltZSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
export class InputSvgRoutes {
|
|
2
2
|
static { this.removeInputSvg = "svg/input/ic_remove_input.svg"; }
|
|
3
3
|
static { this.xClearSvg = "svg/input/ic_x.svg"; }
|
|
4
|
-
static { this.confirmSvg = "
|
|
4
|
+
static { this.confirmSvg = "svg/input/ic_confirm.svg"; }
|
|
5
5
|
static { this.dangerSvg = "svg/input/ic_danger.svg"; }
|
|
6
6
|
static { this.eyeVisibleSvg = "svg/input/ic_eye-visible.svg"; }
|
|
7
7
|
static { this.eyeHiddenSvg = "svg/input/ic_eye-hidden.svg"; }
|
|
8
|
+
static { this.decrementSvg = 'svg/input/ic_pm_decrement.svg'; }
|
|
9
|
+
static { this.incrementSvg = 'svg/input/ic_pm_increment.svg'; }
|
|
8
10
|
}
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtc3ZnLXJvdXRlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLWlucHV0L3V0aWxzL2lucHV0LXN2Zy1yb3V0ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLGNBQWM7YUFDbEIsbUJBQWMsR0FBVywrQkFBK0IsQ0FBQzthQUN6RCxjQUFTLEdBQVcsb0JBQW9CLENBQUM7YUFDekMsZUFBVSxHQUFXLDBCQUEwQixDQUFDO2FBQ2hELGNBQVMsR0FBVyx5QkFBeUIsQ0FBQzthQUM5QyxrQkFBYSxHQUFXLDhCQUE4QixDQUFDO2FBQ3ZELGlCQUFZLEdBQVcsNkJBQTZCLENBQUM7YUFDckQsaUJBQVksR0FBVywrQkFBK0IsQ0FBQzthQUN2RCxpQkFBWSxHQUFXLCtCQUErQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIElucHV0U3ZnUm91dGVzIHtcbiAgc3RhdGljIHJlbW92ZUlucHV0U3ZnOiBzdHJpbmcgPSBcInN2Zy9pbnB1dC9pY19yZW1vdmVfaW5wdXQuc3ZnXCI7XG4gIHN0YXRpYyB4Q2xlYXJTdmc6IHN0cmluZyA9IFwic3ZnL2lucHV0L2ljX3guc3ZnXCI7XG4gIHN0YXRpYyBjb25maXJtU3ZnOiBzdHJpbmcgPSBcInN2Zy9pbnB1dC9pY19jb25maXJtLnN2Z1wiO1xuICBzdGF0aWMgZGFuZ2VyU3ZnOiBzdHJpbmcgPSBcInN2Zy9pbnB1dC9pY19kYW5nZXIuc3ZnXCI7XG4gIHN0YXRpYyBleWVWaXNpYmxlU3ZnOiBzdHJpbmcgPSBcInN2Zy9pbnB1dC9pY19leWUtdmlzaWJsZS5zdmdcIjtcbiAgc3RhdGljIGV5ZUhpZGRlblN2Zzogc3RyaW5nID0gXCJzdmcvaW5wdXQvaWNfZXllLWhpZGRlbi5zdmdcIjtcbiAgc3RhdGljIGRlY3JlbWVudFN2Zzogc3RyaW5nID0gJ3N2Zy9pbnB1dC9pY19wbV9kZWNyZW1lbnQuc3ZnJztcbiAgc3RhdGljIGluY3JlbWVudFN2Zzogc3RyaW5nID0gJ3N2Zy9pbnB1dC9pY19wbV9pbmNyZW1lbnQuc3ZnJztcbn0iXX0=
|
|
@@ -5,12 +5,13 @@ import { GoogleMap, GoogleMapsModule, MapInfoWindow, } from '@angular/google-map
|
|
|
5
5
|
//icon
|
|
6
6
|
import { AngularSvgIconModule } from 'angular-svg-icon';
|
|
7
7
|
//Components
|
|
8
|
-
import { CaMapDropdownComponent } from '
|
|
8
|
+
import { CaMapDropdownComponent } from '../ca-map-dropdown/ca-map-dropdown.component';
|
|
9
9
|
//Enums
|
|
10
|
-
import { GoogleMapEnum } from '
|
|
10
|
+
import { GoogleMapEnum } from '../ca-map/enums/google-map.enum';
|
|
11
11
|
//HelperFuntion
|
|
12
|
-
import { MapHelper } from '
|
|
13
|
-
|
|
12
|
+
import { MapHelper } from '../ca-map/utils/helpers/map.helper';
|
|
13
|
+
//svg-routes
|
|
14
|
+
import { MapSvgRoutes } from '../ca-map/utils/map-svg-routes/map-svg-routes';
|
|
14
15
|
import * as i0 from "@angular/core";
|
|
15
16
|
import * as i1 from "@angular/google-maps";
|
|
16
17
|
import * as i2 from "@angular/common";
|
|
@@ -326,4 +327,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
326
327
|
type: ViewChildren,
|
|
327
328
|
args: [MapInfoWindow]
|
|
328
329
|
}] } });
|
|
329
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtbWFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLW1hcC9jYS1tYXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtbWFwL2NhLW1hcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUVILFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFHTixTQUFTLEVBQ1QsWUFBWSxHQUNmLE1BQU0sZUFBZSxDQUFDO0FBRXZCLFNBQVM7QUFDVCxPQUFPLEVBQ0gsU0FBUyxFQUNULGdCQUFnQixFQUNoQixhQUFhLEdBRWhCLE1BQU0sc0JBQXNCLENBQUM7QUFFOUIsTUFBTTtBQUNOLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRXhELFlBQVk7QUFDWixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUV0RyxPQUFPO0FBQ1AsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBTWhGLGVBQWU7QUFDZixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDL0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLCtEQUErRCxDQUFDOzs7O0FBZ0I3RixNQUFNLE9BQU8sY0FBYztJQUN2QixZQUFtQixFQUFxQjtRQUFyQixPQUFFLEdBQUYsRUFBRSxDQUFtQjtRQUU5QixnQkFBVyxHQUFHLElBQUksWUFBWSxFQUE2QixDQUFDO1FBUS9ELDZCQUF3QixHQUFrQixJQUFJLENBQUM7UUFFL0Msb0NBQStCLEdBQWtCLElB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QVMsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQ2YsTUFBTTtzQkFBN0IsWUFBWTt1QkFBQyxRQUFRO2dCQUNPLGVBQWU7c0JBQTNDLFlBQVk7dUJBQUMsYUFBYTtnQkFDSSxhQUFhO3NCQUEzQyxZQUFZO3VCQUFDLGVBQWU7Z0JBRXRCLHNCQUFzQjtzQkFENUIsWUFBWTt1QkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgUXVlcnlMaXN0LFxuICAgIFNpbXBsZUNoYW5nZXMsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdDaGlsZHJlbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8vTW9kdWxlc1xuaW1wb3J0IHtcbiAgICBHb29nbGVNYXAsXG4gICAgR29vZ2xlTWFwc01vZHVsZSxcbiAgICBNYXBJbmZvV2luZG93LFxuICAgIE1hcE1hcmtlcixcbn0gZnJvbSAnQGFuZ3VsYXIvZ29vZ2xlLW1hcHMnO1xuXG4vL2ljb25cbmltcG9ydCB7IEFuZ3VsYXJTdmdJY29uTW9kdWxlIH0gZnJvbSAnYW5ndWxhci1zdmctaWNvbic7XG5cbi8vQ29tcG9uZW50c1xuaW1wb3J0IHsgQ2FNYXBEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJ0BzaGFyZWQvY29tcG9uZW50cy9jYS1tYXAtZHJvcGRvd24vY2EtbWFwLWRyb3Bkb3duLmNvbXBvbmVudCc7XG5cbi8vRW51bXNcbmltcG9ydCB7IEdvb2dsZU1hcEVudW0gfSBmcm9tICdAc2hhcmVkL2NvbXBvbmVudHMvY2EtbWFwL2VudW1zL2dvb2dsZS1tYXAuZW51bSc7XG4vL21vZGVsc1xuaW1wb3J0IHtcbiAgICBJTWFwTWFya2VycyxcbiAgICBJUm91dGVQYXRoLFxufSBmcm9tICdAc2hhcmVkL2NvbXBvbmVudHMvY2EtbWFwL21vZGVscy9tYXAubW9kZWwnO1xuLy9IZWxwZXJGdW50aW9uXG5pbXBvcnQgeyBNYXBIZWxwZXIgfSBmcm9tICdAc2hhcmVkL2NvbXBvbmVudHMvY2EtbWFwL3V0aWxzL2hlbHBlcnMvbWFwLmhlbHBlcic7XG5pbXBvcnQgeyBNYXBTdmdSb3V0ZXMgfSBmcm9tICdAc2hhcmVkL2NvbXBvbmVudHMvY2EtbWFwL3V0aWxzL21hcC1zdmctcm91dGVzL21hcC1zdmctcm91dGVzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhcHAtY2EtbWFwJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2EtbWFwLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jYS1tYXAuY29tcG9uZW50LnNjc3MnXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgLy9Nb2R1bGVzXG4gICAgICAgIEdvb2dsZU1hcHNNb2R1bGUsXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgQW5ndWxhclN2Z0ljb25Nb2R1bGUsXG4gICAgICAgIC8vQ29tcG9uZW50c1xuICAgICAgICBDYU1hcERyb3Bkb3duQ29tcG9uZW50LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIENhTWFwQ29tcG9uZW50IHtcbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgY2Q6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuICAgIEBJbnB1dCgpIGRhdGE6IGFueTsgLy9sZWF2ZSB0aGlzIGFzIGFueSBmb3Igbm93XG4gICAgQE91dHB1dCgpIG1hcmtlckNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxnb29nbGUubWFwcy5NYXBNb3VzZUV2ZW50PigpO1xuICAgIEBWaWV3Q2hpbGQoR29vZ2xlTWFwLCB7IHN0YXRpYzogZmFsc2UgfSkgbWFwcyE6IEdvb2dsZU1hcDtcbiAgICBAVmlld0NoaWxkcmVuKCdtYXJrZXInKSBtYXJrZXIhOiBRdWVyeUxpc3Q8TWFwTWFya2VyPjtcbiAgICBAVmlld0NoaWxkcmVuKE1hcEluZm9XaW5kb3cpIGluZm9XaW5kb3dzVmlldyE6IFF1ZXJ5TGlzdDxNYXBJbmZvV2luZG93PjtcbiAgICBAVmlld0NoaWxkcmVuKCdtYXJrZXJSb3V0aW5nJykgbWFya2VyUm91dGluZyE6IFF1ZXJ5TGlzdDxNYXBNYXJrZXI+O1xuICAgIEBWaWV3Q2hpbGRyZW4oTWFwSW5mb1dpbmRvdylcbiAgICBwdWJsaWMgaW5mb1dpbmRvd3NWaWV3Um91dGluZyE6IFF1ZXJ5TGlzdDxNYXBJbmZvV2luZG93PjtcbiAgICBwdWJsaWMgY3VycmVudGx5T3BlbldpbmRvdyE6IE1hcEluZm9XaW5kb3cgfCBudWxsO1xuICAgIHB1YmxpYyBjdXJyZW50bHlPcGVuV2luZG93SW5kZXg6IG51bWJlciB8IG51bGwgPSBudWxsO1xuICAgIHB1YmxpYyBjdXJyZW50bHlPcGVuV2luZG93Um91dGluZyE6IE1hcEluZm9XaW5kb3cgfCBudWxsO1xuICAgIHB1YmxpYyBjdXJyZW50bHlPcGVuV2luZG93SW5kZXhSb3V0aW5nOiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgICBwdWJsaWMgc2hvd0xhYmVsOiBib29sZWFuID0gdHJ1ZTtcbiAgICBwdWJsaWMgcHJldmlvdXNJY29uVXJsITogc3RyaW5nO1xuICAgIHB1YmxpYyBmb2N1c2VkSWNvbiE6IG51bWJlcjtcbiAgICBwdWJsaWMgcHJldmlvdXNJY29uVXJsUm91dGluZyE6IHN0cmluZztcbiAgICBwdWJsaWMgZm9jdXNlZEljb25Sb3V0aW5nITogbnVtYmVyO1xuICAgIHByaXZhdGUgZGlyZWN0aW9uU2VydmljZSA9IG5ldyBnb29nbGUubWFwcy5EaXJlY3Rpb25zU2VydmljZSgpO1xuICAgIHB1YmxpYyBkaXJlY3Rpb25zUmVuZGVyZXJzOiBnb29nbGUubWFwcy5EaXJlY3Rpb25zUmVuZGVyZXJbXSA9IFtdO1xuICAgIHB1YmxpYyBpbml0aWFsSWNvbnM6IHtcbiAgICAgICAgdXJsOiBzdHJpbmc7XG4gICAgICAgIGxhYmVsT3JpZ2luOiBnb29nbGUubWFwcy5Qb2ludCB8IG51bGw7XG4gICAgfVtdID0gW107XG4gICAgcHVibGljIGluaXRpYWxNYXJrZXJJY29uczoge1xuICAgICAgICB1cmw6IHN0cmluZztcbiAgICAgICAgbGFiZWxPcmlnaW46IGdvb2dsZS5tYXBzLlBvaW50IHwgbnVsbDtcbiAgICB9W10gPSBbXTtcblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLnN0b3JlSW5pdGlhbEljb25Gb3JNYXJrZXIoKTtcbiAgICAgICAgdGhpcy5zdG9yZUluaXRpYWxJY29uRm9yUm91dGluZ01hcmtlcigpO1xuICAgICAgICAvLyBSZXNldCBhbGwgaWNvbnMgdG8gdGhlaXIgaW5pdGlhbCBzdGF0ZSBvbiBwYWdlIGxvYWRcbiAgICAgICAgdGhpcy5yZXNldE1hcmtlcnNJY29ucygpO1xuICAgICAgICB0aGlzLnJlc2V0Um91dGluZ01hcmtlcnMoKTtcbiAgICAgICAgLy9EaXNwbGF5IHJvdXRlcyBmb3Igcm91dGluZ01hcmtlcnNcbiAgICAgICAgdGhpcy5jYWxjdWxhdGVBbmREaXNwbGF5Um91dGUoKTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgICAgIGlmIChjaGFuZ2VzWydyb3V0aW5nTWFya2VycyddKSB7XG4gICAgICAgICAgICB0aGlzLmRhdGEucm91dGluZ01hcmtlcnMgPSBjaGFuZ2VzWydyb3V0aW5nTWFya2VycyddLmN1cnJlbnRWYWx1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzdG9yZUluaXRpYWxJY29uRm9yTWFya2VyKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRhdGEhLm1hcmtlcnM/LmZvckVhY2goXG4gICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgbWFya2VyOiB7XG4gICAgICAgICAgICAgICAgICAgIGljb246IHsgdXJsOiBzdHJpbmc7IGxhYmVsT3JpZ2luOiBnb29nbGUubWFwcy5Qb2ludCB9O1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgaW5kZXg6IG51bWJlclxuICAgICAgICAgICAgKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5pbml0aWFsTWFya2VySWNvbnNbaW5kZXhdID0ge1xuICAgICAgICAgICAgICAgICAgICB1cmw6IG1hcmtlci5pY29uIS51cmwsXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsT3JpZ2luOiBtYXJrZXIuaWNvbiEubGFiZWxPcmlnaW4gfHwgbnVsbCxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdG9yZUluaXRpYWxJY29uRm9yUm91dGluZ01hcmtlcigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kYXRhLnJvdXRpbmdNYXJrZXJzPy5mb3JFYWNoKFxuICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgIG1hcmtlcjoge1xuICAgICAgICAgICAgICAgICAgICBpY29uOiB7IHVybDogc3RyaW5nOyBsYWJlbE9yaWdpbj86IGdvb2dsZS5tYXBzLlBvaW50IH07XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBpbmRleDogbnVtYmVyXG4gICAgICAgICAgICApID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmluaXRpYWxJY29uc1tpbmRleF0gPSB7XG4gICAgICAgICAgICAgICAgICAgIHVybDogbWFya2VyLmljb24hLnVybCxcbiAgICAgICAgICAgICAgICAgICAgbGFiZWxPcmlnaW46IG1hcmtlci5pY29uIS5sYWJlbE9yaWdpbiB8fCBudWxsLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHVibGljIG9uTWFya2VyQ2xpY2soXG4gICAgICAgIGk6IG51bWJlcixcbiAgICAgICAgZXZlbnQ6IGdvb2dsZS5tYXBzLk1hcE1vdXNlRXZlbnQsXG4gICAgICAgIG1hcmtlcml0ZW06IElNYXBNYXJrZXJzXG4gICAgKTogdm9pZCB7XG4gICAgICAgIGlmIChtYXJrZXJpdGVtPy5pbmZvV2luZG93Q29udGVudCkge1xuICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudGx5T3BlbldpbmRvd0luZGV4ID09PSBpICYmXG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50bHlPcGVuV2luZG93XG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICBjb25zdCBpbmZvV2luZG93ID0gdGhpcy5pbmZvV2luZG93c1ZpZXcudG9BcnJheSgpW2ldO1xuICAgICAgICAgICAgICAgIC8vIENsb3NlIHRoZSBjdXJyZW50bHkgb3BlbiBpbmZvIHdpbmRvdyBhbmQgcmVzZXQgdGhlIGluZGV4XG4gICAgICAgICAgICAgICAgdGhpcy5kYXRhLm1hcmtlcnMubWFwKFxuICAgICAgICAgICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6IHN0cmluZztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWxPcmlnaW46IGdvb2dsZS5tYXBzLlBvaW50IHwgbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4OiBudW1iZXJcbiAgICAgICAgICAgICAgICAgICAgKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaW5kZXggPT09IGkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLmljb24gPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybDogdGhpcy5pbml0aWFsTWFya2VySWNvbnNbaW5kZXhdIS51cmwsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsT3JpZ2luOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5pbml0aWFsTWFya2VySWNvbnNbaW5kZXhdIS5sYWJlbE9yaWdpbixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgIGluZm9XaW5kb3cuY2xvc2UoKTtcbiAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRseU9wZW5XaW5kb3dJbmRleCA9IG51bGw7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1hcmtlckluZGV4ID0gdGhpcy5tYXJrZXIudG9BcnJheSgpW2ldO1xuICAgICAgICAgICAgICAgIGNvbnN0IGluZm9XaW5kb3cgPSB0aGlzLmluZm9XaW5kb3dzVmlldy50b0FycmF5KClbaV07XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuY3VycmVudGx5T3BlbldpbmRvdykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRseU9wZW5XaW5kb3cuY2xvc2UoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGluZm9XaW5kb3cpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kYXRhLm1hcmtlcnMubWFwKFxuICAgICAgICAgICAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW06IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiBzdHJpbmc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY2FsZWRTaXplPzogZ29vZ2xlLm1hcHMuU2l6ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsT3JpZ2luPzogZ29vZ2xlLm1hcHMuUG9pbnQgfCBudWxsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5kZXg6IG51bWJlclxuICAgICAgICAgICAgICAgICAgICAgICAgKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGluZGV4ID09PSBpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZm9jdXNlZEljb24gPSBpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNob3dMYWJlbCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLmljb24gPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6IHRoaXMuaW5pdGlhbE1hcmtlckljb25zW2luZGV4XSEudXJsLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NhbGVkU2l6ZTogbmV3IGdvb2dsZS5tYXBzLlNpemUoNzAsIDcwKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNob3dMYWJlbCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0uaWNvbiA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybDogdGhpcy5pbml0aWFsTWFya2VySWNvbnNbaW5kZXhdIS51cmwsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbE9yaWdpbjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmluaXRpYWxNYXJrZXJJY29uc1tpbmRleF0hXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5sYWJlbE9yaWdpbixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICAgICAgaW5mb1dpbmRvdy5vcGVuKG1hcmtlckluZGV4KTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50bHlPcGVuV2luZG93ID0gaW5mb1dpbmRvdztcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50bHlPcGVuV2luZG93SW5kZXggPSBpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm1hcmtlckNsaWNrLmVtaXQoZXZlbnQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzZXREaXJlY3Rpb25zT25NYXAoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLm1hcHM/Lmdvb2dsZU1hcCkge1xuICAgICAgICAgICAgdGhpcy5kaXJlY3Rpb25zUmVuZGVyZXJzLmZvckVhY2goKHJlbmRlcmVyKSA9PlxuICAgICAgICAgICAgICAgIHJlbmRlcmVyLnNldE1hcCh0aGlzLm1hcHM/Lmdvb2dsZU1hcCEpXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGNhbGN1bGF0ZUFuZERpc3BsYXlSb3V0ZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGF0YS5yb3V0ZVBhdGhzKSB7XG4gICAgICAgICAgICAvLyBDbGVhciBhbnkgcHJldmlvdXMgZGlyZWN0aW9ucyByZW5kZXJlcnNcbiAgICAgICAgICAgIHRoaXMuZGlyZWN0aW9uc1JlbmRlcmVycy5mb3JFYWNoKChyZW5kZXJlcikgPT5cbiAgICAgICAgICAgICAgICByZW5kZXJlci5zZXRNYXAobnVsbClcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICB0aGlzLmRpcmVjdGlvbnNSZW5kZXJlcnMgPSBbXTtcblxuICAgICAgICAgICAgdGhpcy5kYXRhLnJvdXRlUGF0aHMhLmZvckVhY2goXG4gICAgICAgICAgICAgICAgKHJvdXRlOiB7XG4gICAgICAgICAgICAgICAgICAgIHBhdGg6IElSb3V0ZVBhdGhbXTtcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlQ29sb3I6IHN0cmluZztcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlT3BhY2l0eTogbnVtYmVyO1xuICAgICAgICAgICAgICAgIH0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVxdWVzdDogZ29vZ2xlLm1hcHMuRGlyZWN0aW9uc1JlcXVlc3QgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcmlnaW46IHJvdXRlLnBhdGhbMF0sXG4gICAgICAgICAgICAgICAgICAgICAgICBkZXN0aW5hdGlvbjogcm91dGUucGF0aFtyb3V0ZS5wYXRoLmxlbmd0aCAtIDFdLFxuICAgICAgICAgICAgICAgICAgICAgICAgd2F5cG9pbnRzOiByb3V0ZS5wYXRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnNsaWNlKDEsIHJvdXRlLnBhdGgubGVuZ3RoIC0gMSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWFwKChwb3NpdGlvbikgPT4gKHsgbG9jYXRpb246IHBvc2l0aW9uIH0pKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYXZlbE1vZGU6IGdvb2dsZS5tYXBzLlRyYXZlbE1vZGUuQklDWUNMSU5HLFxuICAgICAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGlyZWN0aW9uU2VydmljZS5yb3V0ZShyZXF1ZXN0LCAocmVzdWx0LCBzdGF0dXMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0dXMgPT09IGdvb2dsZS5tYXBzLkRpcmVjdGlvbnNTdGF0dXMuT0sgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQ/LnJvdXRlc1swXVxuICAgICAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZGlyZWN0aW9uc1JlbmRlcmVyID1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3IGdvb2dsZS5tYXBzLkRpcmVjdGlvbnNSZW5kZXJlcih7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXBwcmVzc0luZm9XaW5kb3dzOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VwcHJlc3NNYXJrZXJzOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJlc2VydmVWaWV3cG9ydDogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvbHlsaW5lT3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZUNvbG9yOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3V0ZS5zdHJva2VDb2xvciB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHb29nbGVNYXBFbnVtLlNUUk9LRV9DT0xPUixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2VPcGFjaXR5OlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3V0ZS5zdHJva2VPcGFjaXR5IHx8XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdvb2dsZU1hcEVudW0uU1RST0tFX09QQUNJVFksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3Rpb25zUmVuZGVyZXIuc2V0RGlyZWN0aW9ucyhyZXN1bHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGlyZWN0aW9uc1JlbmRlcmVycy5wdXNoKGRpcmVjdGlvbnNSZW5kZXJlcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXREaXJlY3Rpb25zT25NYXAoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBvblJvdXRpbmdNYXJrZXJDbGljayhcbiAgICAgICAgaTogbnVtYmVyLFxuICAgICAgICBldmVudDogZ29vZ2xlLm1hcHMuTWFwTW91c2VFdmVudCxcbiAgICAgICAgbWFya2VyaXRlbTogSU1hcE1hcmtlcnNcbiAgICApOiB2b2lkIHtcbiAgICAgICAgaWYgKG1hcmtlcml0ZW0/LmluZm9XaW5kb3dDb250ZW50KSB7XG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50bHlPcGVuV2luZG93SW5kZXhSb3V0aW5nID09PSBpICYmXG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50bHlPcGVuV2luZG93Um91dGluZ1xuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgaW5mb1dpbmRvdyA9IHRoaXMuaW5mb1dpbmRvd3NWaWV3Um91dGluZy50b0FycmF5KClbaV07XG4gICAgICAgICAgICAgICAgLy8gQ2xvc2UgdGhlIGN1cnJlbnRseSBvcGVuIGluZm8gd2luZG93IGFuZCByZXNldCB0aGUgaW5kZXhcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGEucm91dGluZ01hcmtlcnMubWFwKFxuICAgICAgICAgICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6IHN0cmluZztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWxPcmlnaW4/OiBnb29nbGUubWFwcy5Qb2ludCB8IG51bGw7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBpbmRleDogbnVtYmVyXG4gICAgICAgICAgICAgICAgICAgICkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGluZGV4ID09PSBpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5pY29uID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6IHRoaXMuaW5pdGlhbEljb25zW2luZGV4XSEudXJsLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbE9yaWdpbjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaW5pdGlhbEljb25zW2luZGV4XSEubGFiZWxPcmlnaW4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICBpbmZvV2luZG93LmNsb3NlKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50bHlPcGVuV2luZG93SW5kZXhSb3V0aW5nID0gbnVsbDtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWFya2VySW5kZXggPSB0aGlzLm1hcmtlclJvdXRpbmcudG9BcnJheSgpW2ldO1xuICAgICAgICAgICAgICAgIGNvbnN0IGluZm9XaW5kb3cgPSB0aGlzLmluZm9XaW5kb3dzVmlld1JvdXRpbmcudG9BcnJheSgpW2ldO1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmN1cnJlbnRseU9wZW5XaW5kb3dSb3V0aW5nKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudGx5T3BlbldpbmRvd1JvdXRpbmcuY2xvc2UoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGluZm9XaW5kb3cpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gUmVzdG9yZSB0aGUgcHJldmlvdXMgaWNvbiBmb3IgdGhlIHByZXZpb3VzbHkgZm9jdXNlZCByb3V0aW5nIG1hcmtlclxuICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvY3VzZWRJY29uUm91dGluZyAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvY3VzZWRJY29uUm91dGluZyAhPT0gaVxuICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHByZXZpb3VzRm9jdXNlZEl0ZW0gPVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0YS5yb3V0aW5nTWFya2Vyc1t0aGlzLmZvY3VzZWRJY29uUm91dGluZ107XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAocHJldmlvdXNGb2N1c2VkSXRlbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZXZpb3VzRm9jdXNlZEl0ZW0uaWNvbiA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiB0aGlzLmluaXRpYWxJY29uc1t0aGlzLmZvY3VzZWRJY29uUm91dGluZ11cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC51cmwsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsT3JpZ2luOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5pbml0aWFsSWNvbnNbdGhpcy5mb2N1c2VkSWNvblJvdXRpbmddXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxhYmVsT3JpZ2luLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAvLyBVcGRhdGUgdGhlIGN1cnJlbnQgbWFya2VyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0YS5yb3V0aW5nTWFya2Vycy5tYXAoXG4gICAgICAgICAgICAgICAgICAgICAgICAoaXRlbTogeyBpY29uOiB7IHVybDogc3RyaW5nIH0gfSwgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpbmRleCA9PT0gaSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnByZXZpb3VzSWNvblVybFJvdXRpbmcgPSBpdGVtLmljb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gaXRlbS5pY29uLnVybFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAnJztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5mb2N1c2VkSWNvblJvdXRpbmcgPSBpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNob3dMYWJlbCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLmljb24gPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kYXRhLmlzVW5pdFZpZXdTdG9wcyB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0YS5pc0RyaXZlck1pbGVzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gaXRlbS5pY29uLnVybFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IE1hcFN2Z1JvdXRlcy5tYXJrZXJTdmdSb3V0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNob3dMYWJlbCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgICAgICAgIGluZm9XaW5kb3cub3BlbihtYXJrZXJJbmRleCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudGx5T3BlbldpbmRvd1JvdXRpbmcgPSBpbmZvV2luZG93O1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRseU9wZW5XaW5kb3dJbmRleFJvdXRpbmcgPSBpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm1hcmtlckNsaWNrLmVtaXQoZXZlbnQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgdGhpcy5tYXBzLmdvb2dsZU1hcD8uYWRkTGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5pbmZvV2luZG93c1ZpZXcuZm9yRWFjaCgod2luZG93OiBNYXBJbmZvV2luZG93KSA9PiB7XG4gICAgICAgICAgICAgICAgd2luZG93LmNsb3NlKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50bHlPcGVuV2luZG93ID0gbnVsbDtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgdGhpcy5pbmZvV2luZG93c1ZpZXdSb3V0aW5nLmZvckVhY2goKHdpbmRvdzogTWFwSW5mb1dpbmRvdykgPT4ge1xuICAgICAgICAgICAgICAgIHdpbmRvdy5jbG9zZSgpO1xuICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudGx5T3BlbldpbmRvd1JvdXRpbmcgPSBudWxsO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aGlzLmRhdGEubWFya2Vycz8ubWFwKFxuICAgICAgICAgICAgICAgIChpdGVtOiB7IGljb246IHsgdXJsOiBzdHJpbmcgfSB9LCBpOiBudW1iZXIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGkgPT09IHRoaXMuZm9jdXNlZEljb24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0uaWNvbiA9IHsgdXJsOiBpdGVtLmljb24gPyBpdGVtLmljb24udXJsIDogJycgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgdGhpcy5kYXRhLnJvdXRpbmdNYXJrZXJzPy5tYXAoXG4gICAgICAgICAgICAgICAgKGl0ZW06IHsgaWNvbjogeyB1cmw6IHN0cmluZyB9IH0sIGk6IG51bWJlcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoaSA9PT0gdGhpcy5mb2N1c2VkSWNvblJvdXRpbmcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0uaWNvbiA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6IHRoaXMuaW5pdGlhbEljb25zW2ldLnVybCxcbiAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyByZXNldE1hcmtlcnNJY29ucygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kYXRhLm1hcmtlcnM/LmZvckVhY2goXG4gICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgbWFya2VyOiB7XG4gICAgICAgICAgICAgICAgICAgIGljb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHVybDogc3RyaW5nO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWxPcmlnaW46IGdvb2dsZS5tYXBzLlBvaW50IHwgbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIGluZGV4OiBudW1iZXJcbiAgICAgICAgICAgICkgPT4ge1xuICAgICAgICAgICAgICAgIG1hcmtlci5pY29uID0ge1xuICAgICAgICAgICAgICAgICAgICB1cmw6IHRoaXMuaW5pdGlhbE1hcmtlckljb25zW2luZGV4XS51cmwsXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsT3JpZ2luOiB0aGlzLmluaXRpYWxNYXJrZXJJY29uc1tpbmRleF0ubGFiZWxPcmlnaW4sXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHJlc2V0Um91dGluZ01hcmtlcnMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGF0YS5yb3V0aW5nTWFya2Vycz8uZm9yRWFjaChcbiAgICAgICAgICAgIChcbiAgICAgICAgICAgICAgICBtYXJrZXI6IHtcbiAgICAgICAgICAgICAgICAgICAgaWNvbjogeyB1cmw6IHN0cmluZzsgbGFiZWxPcmlnaW4/OiBnb29nbGUubWFwcy5Qb2ludCB9O1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgaW5kZXg6IG51bWJlclxuICAgICAgICAgICAgKSA9PiB7XG4gICAgICAgICAgICAgICAgbWFya2VyLmljb24gPSB7XG4gICAgICAgICAgICAgICAgICAgIHVybDogbWFya2VyLmljb24hLnVybCxcbiAgICAgICAgICAgICAgICAgICAgbGFiZWxPcmlnaW46IG1hcmtlci5pY29uIS5sYWJlbE9yaWdpbixcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBvbk1hcFJlYWR5KCk6IHtcbiAgICAgICAgZmlsbENvbG9yPzogc3RyaW5nO1xuICAgICAgICBzdHJva2VDb2xvcj86IHN0cmluZztcbiAgICAgICAgc3Ryb2tlV2VpZ2h0PzogbnVtYmVyO1xuICAgICAgICBmaWxsT3BhY2l0eT86IG51bWJlcjtcbiAgICB9IHwgdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRhdGEuc3RhdGVCb3VuZGFyaWVzVXJsKSB7XG4gICAgICAgICAgICBjb25zdCBzdGF0ZUJvdW5kYXJpZXNVcmwgPSB0aGlzLmRhdGEuc3RhdGVCb3VuZGFyaWVzVXJsLnVybDtcbiAgICAgICAgICAgIHRoaXMubWFwcy5nb29nbGVNYXA/LmRhdGEubG9hZEdlb0pzb24oc3RhdGVCb3VuZGFyaWVzVXJsKTtcblxuICAgICAgICAgICAgdGhpcy5tYXBzLmdvb2dsZU1hcD8uZGF0YS5zZXRTdHlsZSgoZmVhdHVyZSkgPT4ge1xuICAgICAgICAgICAgICAgIC8vbGVhdmUgdGhpcyBhcyBhbnkgZm9yIG5vd1xuICAgICAgICAgICAgICAgIGNvbnN0IHN0YXRlRGVuc2l0eSA9IGZlYXR1cmUuZ2V0UHJvcGVydHkoJ2RlbnNpdHknKTtcbiAgICAgICAgICAgICAgICBjb25zdCB7IGZpbGxDb2xvciwgZmlsbE9wYWNpdHkgfSA9XG4gICAgICAgICAgICAgICAgICAgIE1hcEhlbHBlci5nZXRGaWxsQ29sb3JGb3JTdGF0ZShcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRlRGVuc2l0eSBhcyBudW1iZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRhdGEudmlld1xuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGxDb2xvcjogZmlsbENvbG9yLFxuICAgICAgICAgICAgICAgICAgICBzdHJva2VDb2xvcjogJyNFRUVFRUUnLFxuICAgICAgICAgICAgICAgICAgICBzdHJva2VXZWlnaHQ6IDAuNixcbiAgICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IGZpbGxPcGFjaXR5LFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBpZGVudGl0eShpbmRleDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIGluZGV4O1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLmRpcmVjdGlvbnNSZW5kZXJlcnMuZm9yRWFjaCgocmVuZGVyZXIpID0+IHJlbmRlcmVyLnNldE1hcChudWxsKSk7XG4gICAgfVxufVxuIiwiPGdvb2dsZS1tYXBcbiAgaGVpZ2h0PVwiNTAwcHhcIlxuICB3aWR0aD1cIjEwMCVcIlxuICBbem9vbV09XCJkYXRhLm1hcFpvb21cIlxuICBbY2VudGVyXT1cImRhdGEuY2VudGVyXCJcbiAgW29wdGlvbnNdPVwiZGF0YS5tYXBPcHRpb25zXCJcbiAgKGlkbGUpPVwib25NYXBSZWFkeSgpXCJcbj5cbiAgPG1hcC1tYXJrZXJcbiAgICAjbWFya2VyPVwibWFwTWFya2VyXCJcbiAgICAqbmdGb3I9XCJsZXQgbWFya2VyaXRlbSBvZiBkYXRhLm1hcmtlcnM7IGxldCBpID0gaW5kZXg7IHRyYWNrQnk6IGlkZW50aXR5XCJcbiAgICBbcG9zaXRpb25dPVwibWFya2VyaXRlbS5wb3NpdGlvblwiXG4gICAgW2ljb25dPVwibWFya2VyaXRlbS5pY29uIVwiXG4gICAgW2xhYmVsXT1cImZvY3VzZWRJY29uICE9PSBpID8gbWFya2VyaXRlbS5sYWJlbCEgOiAnJ1wiXG4gICAgW3RpdGxlXT1cIm1hcmtlcml0ZW0udGl0bGUhXCJcbiAgICBbb3B0aW9uc109XCJtYXJrZXJpdGVtLm9wdGlvbnMhXCJcbiAgICAobWFwQ2xpY2spPVwib25NYXJrZXJDbGljayhpLCAkZXZlbnQsIG1hcmtlcml0ZW0pXCJcbiAgPlxuICAgIDxtYXAtaW5mby13aW5kb3cgI2luZm9XaW5kb3dzVmlldz1cIm1hcEluZm9XaW5kb3dcIj5cbiAgICAgIDxhcHAtY2EtbWFwLWRyb3Bkb3duXG4gICAgICAgIFtpc0FjY2lkZW50TWFwXT1cImRhdGEuaXNBY2NpZGVudE1hcCA/PyBmYWxzZVwiXG4gICAgICA+PC9hcHAtY2EtbWFwLWRyb3Bkb3duPlxuICAgIDwvbWFwLWluZm8td2luZG93PlxuICA8L21hcC1tYXJrZXI+XG4gIDxtYXAtbWFya2VyXG4gICAgKm5nRm9yPVwibGV0IG1hcmtlciBvZiBkYXRhLmNsdXN0ZXJtYXJrZXJzOyBsZXQgaSA9IGluZGV4OyB0cmFja0J5OiBpZGVudGl0eVwiXG4gICAgW3Bvc2l0aW9uXT1cIm1hcmtlci5wb3NpdGlvblwiXG4gICAgW2ljb25dPVwibWFya2VyLmljb25cIlxuICAgIFtsYWJlbF09XCJtYXJrZXIubGFiZWwhXCJcbiAgICBbdGl0bGVdPVwibWFya2VyLnRpdGxlIVwiXG4gID5cbiAgPC9tYXAtbWFya2VyPlxuXG4gIDxtYXAtbWFya2VyXG4gICAgI21hcmtlclJvdXRpbmc9XCJtYXBNYXJrZXJcIlxuICAgICpuZ0Zvcj1cIlxuICAgICAgbGV0IG1hcmtlcml0ZW0gb2YgZGF0YS5yb3V0aW5nTWFya2VycztcbiAgICAgIGxldCBpID0gaW5kZXg7XG4gICAgICB0cmFja0J5OiBpZGVudGl0eVxuICAgIFwiXG4gICAgW3Bvc2l0aW9uXT1cIm1hcmtlcml0ZW0ucG9zaXRpb25cIlxuICAgIFtpY29uXT1cIm1hcmtlcml0ZW0uaWNvbiFcIlxuICAgIFtsYWJlbF09XCJmb2N1c2VkSWNvblJvdXRpbmcgIT09IGkgPyBtYXJrZXJpdGVtLmxhYmVsISA6ICcnXCJcbiAgICBbdGl0bGVdPVwibWFya2VyaXRlbS50aXRsZSFcIlxuICAgIFtvcHRpb25zXT1cIm1hcmtlcml0ZW0ub3B0aW9ucyFcIlxuICAgIChtYXBDbGljayk9XCJvblJvdXRpbmdNYXJrZXJDbGljayhpLCAkZXZlbnQsIG1hcmtlcml0ZW0pXCJcbiAgPlxuICAgIDxtYXAtaW5mby13aW5kb3cgI2luZm9XaW5kb3dzVmlld1JvdXRpbmc9XCJtYXBJbmZvV2luZG93XCI+XG4gICAgICA8YXBwLWNhLW1hcC1kcm9wZG93biBbaXNBY2NpZGVudE1hcF09XCJmYWxzZVwiPjwvYXBwLWNhLW1hcC1kcm9wZG93bj5cbiAgICA8L21hcC1pbmZvLXdpbmRvdz5cbiAgPC9tYXAtbWFya2VyPlxuPC9nb29nbGUtbWFwPlxuIl19
|
|
330
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtbWFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLW1hcC9jYS1tYXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtbWFwL2NhLW1hcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUVILFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFHTixTQUFTLEVBQ1QsWUFBWSxHQUNmLE1BQU0sZUFBZSxDQUFDO0FBRXZCLFNBQVM7QUFDVCxPQUFPLEVBQ0gsU0FBUyxFQUNULGdCQUFnQixFQUNoQixhQUFhLEdBRWhCLE1BQU0sc0JBQXNCLENBQUM7QUFFOUIsTUFBTTtBQUNOLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRXhELFlBQVk7QUFDWixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUV0RixPQUFPO0FBQ1AsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBR2hFLGVBQWU7QUFDZixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDL0QsWUFBWTtBQUNaLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQzs7OztBQWdCN0UsTUFBTSxPQUFPLGNBQWM7SUFDdkIsWUFBbUIsRUFBcUI7UUFBckIsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7UUFFOUIsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBNkIsQ0FBQztRQVEvRCw2QkFBd0IsR0FBa0IsSUFBSSxDQUFDO1FBRS9DLG9DQUEr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Uzt1QkFBQyxTQUFTLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUNmLE1BQU07c0JBQTdCLFlBQVk7dUJBQUMsUUFBUTtnQkFDTyxlQUFlO3NCQUEzQyxZQUFZO3VCQUFDLGFBQWE7Z0JBQ0ksYUFBYTtzQkFBM0MsWUFBWTt1QkFBQyxlQUFlO2dCQUV0QixzQkFBc0I7c0JBRDVCLFlBQVk7dUJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFZpZXdDaGlsZCxcbiAgICBWaWV3Q2hpbGRyZW4sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vL01vZHVsZXNcbmltcG9ydCB7XG4gICAgR29vZ2xlTWFwLFxuICAgIEdvb2dsZU1hcHNNb2R1bGUsXG4gICAgTWFwSW5mb1dpbmRvdyxcbiAgICBNYXBNYXJrZXIsXG59IGZyb20gJ0Bhbmd1bGFyL2dvb2dsZS1tYXBzJztcblxuLy9pY29uXG5pbXBvcnQgeyBBbmd1bGFyU3ZnSWNvbk1vZHVsZSB9IGZyb20gJ2FuZ3VsYXItc3ZnLWljb24nO1xuXG4vL0NvbXBvbmVudHNcbmltcG9ydCB7IENhTWFwRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuLi9jYS1tYXAtZHJvcGRvd24vY2EtbWFwLWRyb3Bkb3duLmNvbXBvbmVudCc7XG5cbi8vRW51bXNcbmltcG9ydCB7IEdvb2dsZU1hcEVudW0gfSBmcm9tICcuLi9jYS1tYXAvZW51bXMvZ29vZ2xlLW1hcC5lbnVtJztcbi8vbW9kZWxzXG5pbXBvcnQgeyBJTWFwTWFya2VycywgSVJvdXRlUGF0aCB9IGZyb20gJy4uL2NhLW1hcC9tb2RlbHMvbWFwLm1vZGVsJztcbi8vSGVscGVyRnVudGlvblxuaW1wb3J0IHsgTWFwSGVscGVyIH0gZnJvbSAnLi4vY2EtbWFwL3V0aWxzL2hlbHBlcnMvbWFwLmhlbHBlcic7XG4vL3N2Zy1yb3V0ZXNcbmltcG9ydCB7IE1hcFN2Z1JvdXRlcyB9IGZyb20gJy4uL2NhLW1hcC91dGlscy9tYXAtc3ZnLXJvdXRlcy9tYXAtc3ZnLXJvdXRlcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYXBwLWNhLW1hcCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NhLW1hcC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vY2EtbWFwLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIC8vTW9kdWxlc1xuICAgICAgICBHb29nbGVNYXBzTW9kdWxlLFxuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIEFuZ3VsYXJTdmdJY29uTW9kdWxlLFxuICAgICAgICAvL0NvbXBvbmVudHNcbiAgICAgICAgQ2FNYXBEcm9wZG93bkNvbXBvbmVudCxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBDYU1hcENvbXBvbmVudCB7XG4gICAgY29uc3RydWN0b3IocHVibGljIGNkOiBDaGFuZ2VEZXRlY3RvclJlZikge31cbiAgICBASW5wdXQoKSBkYXRhOiBhbnk7IC8vbGVhdmUgdGhpcyBhcyBhbnkgZm9yIG5vd1xuICAgIEBPdXRwdXQoKSBtYXJrZXJDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8Z29vZ2xlLm1hcHMuTWFwTW91c2VFdmVudD4oKTtcbiAgICBAVmlld0NoaWxkKEdvb2dsZU1hcCwgeyBzdGF0aWM6IGZhbHNlIH0pIG1hcHMhOiBHb29nbGVNYXA7XG4gICAgQFZpZXdDaGlsZHJlbignbWFya2VyJykgbWFya2VyITogUXVlcnlMaXN0PE1hcE1hcmtlcj47XG4gICAgQFZpZXdDaGlsZHJlbihNYXBJbmZvV2luZG93KSBpbmZvV2luZG93c1ZpZXchOiBRdWVyeUxpc3Q8TWFwSW5mb1dpbmRvdz47XG4gICAgQFZpZXdDaGlsZHJlbignbWFya2VyUm91dGluZycpIG1hcmtlclJvdXRpbmchOiBRdWVyeUxpc3Q8TWFwTWFya2VyPjtcbiAgICBAVmlld0NoaWxkcmVuKE1hcEluZm9XaW5kb3cpXG4gICAgcHVibGljIGluZm9XaW5kb3dzVmlld1JvdXRpbmchOiBRdWVyeUxpc3Q8TWFwSW5mb1dpbmRvdz47XG4gICAgcHVibGljIGN1cnJlbnRseU9wZW5XaW5kb3chOiBNYXBJbmZvV2luZG93IHwgbnVsbDtcbiAgICBwdWJsaWMgY3VycmVudGx5T3BlbldpbmRvd0luZGV4OiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgICBwdWJsaWMgY3VycmVudGx5T3BlbldpbmRvd1JvdXRpbmchOiBNYXBJbmZvV2luZG93IHwgbnVsbDtcbiAgICBwdWJsaWMgY3VycmVudGx5T3BlbldpbmRvd0luZGV4Um91dGluZzogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG4gICAgcHVibGljIHNob3dMYWJlbDogYm9vbGVhbiA9IHRydWU7XG4gICAgcHVibGljIHByZXZpb3VzSWNvblVybCE6IHN0cmluZztcbiAgICBwdWJsaWMgZm9jdXNlZEljb24hOiBudW1iZXI7XG4gICAgcHVibGljIHByZXZpb3VzSWNvblVybFJvdXRpbmchOiBzdHJpbmc7XG4gICAgcHVibGljIGZvY3VzZWRJY29uUm91dGluZyE6IG51bWJlcjtcbiAgICBwcml2YXRlIGRpcmVjdGlvblNlcnZpY2UgPSBuZXcgZ29vZ2xlLm1hcHMuRGlyZWN0aW9uc1NlcnZpY2UoKTtcbiAgICBwdWJsaWMgZGlyZWN0aW9uc1JlbmRlcmVyczogZ29vZ2xlLm1hcHMuRGlyZWN0aW9uc1JlbmRlcmVyW10gPSBbXTtcbiAgICBwdWJsaWMgaW5pdGlhbEljb25zOiB7XG4gICAgICAgIHVybDogc3RyaW5nO1xuICAgICAgICBsYWJlbE9yaWdpbjogZ29vZ2xlLm1hcHMuUG9pbnQgfCBudWxsO1xuICAgIH1bXSA9IFtdO1xuICAgIHB1YmxpYyBpbml0aWFsTWFya2VySWNvbnM6IHtcbiAgICAgICAgdXJsOiBzdHJpbmc7XG4gICAgICAgIGxhYmVsT3JpZ2luOiBnb29nbGUubWFwcy5Qb2ludCB8IG51bGw7XG4gICAgfVtdID0gW107XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5zdG9yZUluaXRpYWxJY29uRm9yTWFya2VyKCk7XG4gICAgICAgIHRoaXMuc3RvcmVJbml0aWFsSWNvbkZvclJvdXRpbmdNYXJrZXIoKTtcbiAgICAgICAgLy8gUmVzZXQgYWxsIGljb25zIHRvIHRoZWlyIGluaXRpYWwgc3RhdGUgb24gcGFnZSBsb2FkXG4gICAgICAgIHRoaXMucmVzZXRNYXJrZXJzSWNvbnMoKTtcbiAgICAgICAgdGhpcy5yZXNldFJvdXRpbmdNYXJrZXJzKCk7XG4gICAgICAgIC8vRGlzcGxheSByb3V0ZXMgZm9yIHJvdXRpbmdNYXJrZXJzXG4gICAgICAgIHRoaXMuY2FsY3VsYXRlQW5kRGlzcGxheVJvdXRlKCk7XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgICAgICBpZiAoY2hhbmdlc1sncm91dGluZ01hcmtlcnMnXSkge1xuICAgICAgICAgICAgdGhpcy5kYXRhLnJvdXRpbmdNYXJrZXJzID0gY2hhbmdlc1sncm91dGluZ01hcmtlcnMnXS5jdXJyZW50VmFsdWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc3RvcmVJbml0aWFsSWNvbkZvck1hcmtlcigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kYXRhIS5tYXJrZXJzPy5mb3JFYWNoKFxuICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgIG1hcmtlcjoge1xuICAgICAgICAgICAgICAgICAgICBpY29uOiB7IHVybDogc3RyaW5nOyBsYWJlbE9yaWdpbjogZ29vZ2xlLm1hcHMuUG9pbnQgfTtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIGluZGV4OiBudW1iZXJcbiAgICAgICAgICAgICkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuaW5pdGlhbE1hcmtlckljb25zW2luZGV4XSA9IHtcbiAgICAgICAgICAgICAgICAgICAgdXJsOiBtYXJrZXIuaWNvbiEudXJsLFxuICAgICAgICAgICAgICAgICAgICBsYWJlbE9yaWdpbjogbWFya2VyLmljb24hLmxhYmVsT3JpZ2luIHx8IG51bGwsXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RvcmVJbml0aWFsSWNvbkZvclJvdXRpbmdNYXJrZXIoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGF0YS5yb3V0aW5nTWFya2Vycz8uZm9yRWFjaChcbiAgICAgICAgICAgIChcbiAgICAgICAgICAgICAgICBtYXJrZXI6IHtcbiAgICAgICAgICAgICAgICAgICAgaWNvbjogeyB1cmw6IHN0cmluZzsgbGFiZWxPcmlnaW4/OiBnb29nbGUubWFwcy5Qb2ludCB9O1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgaW5kZXg6IG51bWJlclxuICAgICAgICAgICAgKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5pbml0aWFsSWNvbnNbaW5kZXhdID0ge1xuICAgICAgICAgICAgICAgICAgICB1cmw6IG1hcmtlci5pY29uIS51cmwsXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsT3JpZ2luOiBtYXJrZXIuaWNvbiEubGFiZWxPcmlnaW4gfHwgbnVsbCxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBvbk1hcmtlckNsaWNrKFxuICAgICAgICBpOiBudW1iZXIsXG4gICAgICAgIGV2ZW50OiBnb29nbGUubWFwcy5NYXBNb3VzZUV2ZW50LFxuICAgICAgICBtYXJrZXJpdGVtOiBJTWFwTWFya2Vyc1xuICAgICk6IHZvaWQge1xuICAgICAgICBpZiAobWFya2VyaXRlbT8uaW5mb1dpbmRvd0NvbnRlbnQpIHtcbiAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRseU9wZW5XaW5kb3dJbmRleCA9PT0gaSAmJlxuICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudGx5T3BlbldpbmRvd1xuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgaW5mb1dpbmRvdyA9IHRoaXMuaW5mb1dpbmRvd3NWaWV3LnRvQXJyYXkoKVtpXTtcbiAgICAgICAgICAgICAgICAvLyBDbG9zZSB0aGUgY3VycmVudGx5IG9wZW4gaW5mbyB3aW5kb3cgYW5kIHJlc2V0IHRoZSBpbmRleFxuICAgICAgICAgICAgICAgIHRoaXMuZGF0YS5tYXJrZXJzLm1hcChcbiAgICAgICAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbToge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiBzdHJpbmc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsT3JpZ2luOiBnb29nbGUubWFwcy5Qb2ludCB8IG51bGw7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBpbmRleDogbnVtYmVyXG4gICAgICAgICAgICAgICAgICAgICkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGluZGV4ID09PSBpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5pY29uID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6IHRoaXMuaW5pdGlhbE1hcmtlckljb25zW2luZGV4XSEudXJsLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbE9yaWdpbjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaW5pdGlhbE1hcmtlckljb25zW2luZGV4XSEubGFiZWxPcmlnaW4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICBpbmZvV2luZG93LmNsb3NlKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50bHlPcGVuV2luZG93SW5kZXggPSBudWxsO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zdCBtYXJrZXJJbmRleCA9IHRoaXMubWFya2VyLnRvQXJyYXkoKVtpXTtcbiAgICAgICAgICAgICAgICBjb25zdCBpbmZvV2luZG93ID0gdGhpcy5pbmZvV2luZG93c1ZpZXcudG9BcnJheSgpW2ldO1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmN1cnJlbnRseU9wZW5XaW5kb3cpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50bHlPcGVuV2luZG93LmNsb3NlKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChpbmZvV2luZG93KSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0YS5tYXJrZXJzLm1hcChcbiAgICAgICAgICAgICAgICAgICAgICAgIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybDogc3RyaW5nO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NhbGVkU2l6ZT86IGdvb2dsZS5tYXBzLlNpemU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbE9yaWdpbj86IGdvb2dsZS5tYXBzLlBvaW50IHwgbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4OiBudW1iZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpbmRleCA9PT0gaSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvY3VzZWRJY29uID0gaTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zaG93TGFiZWwgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5pY29uID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiB0aGlzLmluaXRpYWxNYXJrZXJJY29uc1tpbmRleF0hLnVybCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNjYWxlZFNpemU6IG5ldyBnb29nbGUubWFwcy5TaXplKDcwLCA3MCksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zaG93TGFiZWwgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLmljb24gPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6IHRoaXMuaW5pdGlhbE1hcmtlckljb25zW2luZGV4XSEudXJsLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWxPcmlnaW46XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5pbml0aWFsTWFya2VySWNvbnNbaW5kZXhdIVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubGFiZWxPcmlnaW4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgICAgICAgIGluZm9XaW5kb3cub3BlbihtYXJrZXJJbmRleCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudGx5T3BlbldpbmRvdyA9IGluZm9XaW5kb3c7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudGx5T3BlbldpbmRvd0luZGV4ID0gaTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5tYXJrZXJDbGljay5lbWl0KGV2ZW50KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0RGlyZWN0aW9uc09uTWFwKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5tYXBzPy5nb29nbGVNYXApIHtcbiAgICAgICAgICAgIHRoaXMuZGlyZWN0aW9uc1JlbmRlcmVycy5mb3JFYWNoKChyZW5kZXJlcikgPT5cbiAgICAgICAgICAgICAgICByZW5kZXJlci5zZXRNYXAodGhpcy5tYXBzPy5nb29nbGVNYXAhKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBjYWxjdWxhdGVBbmREaXNwbGF5Um91dGUoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRhdGEucm91dGVQYXRocykge1xuICAgICAgICAgICAgLy8gQ2xlYXIgYW55IHByZXZpb3VzIGRpcmVjdGlvbnMgcmVuZGVyZXJzXG4gICAgICAgICAgICB0aGlzLmRpcmVjdGlvbnNSZW5kZXJlcnMuZm9yRWFjaCgocmVuZGVyZXIpID0+XG4gICAgICAgICAgICAgICAgcmVuZGVyZXIuc2V0TWFwKG51bGwpXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgdGhpcy5kaXJlY3Rpb25zUmVuZGVyZXJzID0gW107XG5cbiAgICAgICAgICAgIHRoaXMuZGF0YS5yb3V0ZVBhdGhzIS5mb3JFYWNoKFxuICAgICAgICAgICAgICAgIChyb3V0ZToge1xuICAgICAgICAgICAgICAgICAgICBwYXRoOiBJUm91dGVQYXRoW107XG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZUNvbG9yOiBzdHJpbmc7XG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZU9wYWNpdHk6IG51bWJlcjtcbiAgICAgICAgICAgICAgICB9KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlcXVlc3Q6IGdvb2dsZS5tYXBzLkRpcmVjdGlvbnNSZXF1ZXN0ID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3JpZ2luOiByb3V0ZS5wYXRoWzBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGVzdGluYXRpb246IHJvdXRlLnBhdGhbcm91dGUucGF0aC5sZW5ndGggLSAxXSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHdheXBvaW50czogcm91dGUucGF0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zbGljZSgxLCByb3V0ZS5wYXRoLmxlbmd0aCAtIDEpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1hcCgocG9zaXRpb24pID0+ICh7IGxvY2F0aW9uOiBwb3NpdGlvbiB9KSksXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmF2ZWxNb2RlOiBnb29nbGUubWFwcy5UcmF2ZWxNb2RlLkJJQ1lDTElORyxcbiAgICAgICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRpcmVjdGlvblNlcnZpY2Uucm91dGUocmVxdWVzdCwgKHJlc3VsdCwgc3RhdHVzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdHVzID09PSBnb29nbGUubWFwcy5EaXJlY3Rpb25zU3RhdHVzLk9LICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0Py5yb3V0ZXNbMF1cbiAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGRpcmVjdGlvbnNSZW5kZXJlciA9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBnb29nbGUubWFwcy5EaXJlY3Rpb25zUmVuZGVyZXIoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VwcHJlc3NJbmZvV2luZG93czogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1cHByZXNzTWFya2VyczogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZXNlcnZlVmlld3BvcnQ6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb2x5bGluZU9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2VDb2xvcjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm91dGUuc3Ryb2tlQ29sb3IgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR29vZ2xlTWFwRW51bS5TVFJPS0VfQ09MT1IsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlT3BhY2l0eTpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm91dGUuc3Ryb2tlT3BhY2l0eSB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHb29nbGVNYXBFbnVtLlNUUk9LRV9PUEFDSVRZLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uc1JlbmRlcmVyLnNldERpcmVjdGlvbnMocmVzdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRpcmVjdGlvbnNSZW5kZXJlcnMucHVzaChkaXJlY3Rpb25zUmVuZGVyZXIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0RGlyZWN0aW9uc09uTWFwKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgb25Sb3V0aW5nTWFya2VyQ2xpY2soXG4gICAgICAgIGk6IG51bWJlcixcbiAgICAgICAgZXZlbnQ6IGdvb2dsZS5tYXBzLk1hcE1vdXNlRXZlbnQsXG4gICAgICAgIG1hcmtlcml0ZW06IElNYXBNYXJrZXJzXG4gICAgKTogdm9pZCB7XG4gICAgICAgIGlmIChtYXJrZXJpdGVtPy5pbmZvV2luZG93Q29udGVudCkge1xuICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudGx5T3BlbldpbmRvd0luZGV4Um91dGluZyA9PT0gaSAmJlxuICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudGx5T3BlbldpbmRvd1JvdXRpbmdcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGluZm9XaW5kb3cgPSB0aGlzLmluZm9XaW5kb3dzVmlld1JvdXRpbmcudG9BcnJheSgpW2ldO1xuICAgICAgICAgICAgICAgIC8vIENsb3NlIHRoZSBjdXJyZW50bHkgb3BlbiBpbmZvIHdpbmRvdyBhbmQgcmVzZXQgdGhlIGluZGV4XG4gICAgICAgICAgICAgICAgdGhpcy5kYXRhLnJvdXRpbmdNYXJrZXJzLm1hcChcbiAgICAgICAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbToge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiBzdHJpbmc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsT3JpZ2luPzogZ29vZ2xlLm1hcHMuUG9pbnQgfCBudWxsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgaW5kZXg6IG51bWJlclxuICAgICAgICAgICAgICAgICAgICApID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpbmRleCA9PT0gaSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0uaWNvbiA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiB0aGlzLmluaXRpYWxJY29uc1tpbmRleF0hLnVybCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWxPcmlnaW46XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmluaXRpYWxJY29uc1tpbmRleF0hLmxhYmVsT3JpZ2luLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgICAgaW5mb1dpbmRvdy5jbG9zZSgpO1xuICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudGx5T3BlbldpbmRvd0luZGV4Um91dGluZyA9IG51bGw7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1hcmtlckluZGV4ID0gdGhpcy5tYXJrZXJSb3V0aW5nLnRvQXJyYXkoKVtpXTtcbiAgICAgICAgICAgICAgICBjb25zdCBpbmZvV2luZG93ID0gdGhpcy5pbmZvV2luZG93c1ZpZXdSb3V0aW5nLnRvQXJyYXkoKVtpXTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5jdXJyZW50bHlPcGVuV2luZG93Um91dGluZykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRseU9wZW5XaW5kb3dSb3V0aW5nLmNsb3NlKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChpbmZvV2luZG93KSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIFJlc3RvcmUgdGhlIHByZXZpb3VzIGljb24gZm9yIHRoZSBwcmV2aW91c2x5IGZvY3VzZWQgcm91dGluZyBtYXJrZXJcbiAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5mb2N1c2VkSWNvblJvdXRpbmcgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5mb2N1c2VkSWNvblJvdXRpbmcgIT09IGlcbiAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBwcmV2aW91c0ZvY3VzZWRJdGVtID1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRhdGEucm91dGluZ01hcmtlcnNbdGhpcy5mb2N1c2VkSWNvblJvdXRpbmddO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHByZXZpb3VzRm9jdXNlZEl0ZW0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmV2aW91c0ZvY3VzZWRJdGVtLmljb24gPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybDogdGhpcy5pbml0aWFsSWNvbnNbdGhpcy5mb2N1c2VkSWNvblJvdXRpbmddXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudXJsLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbE9yaWdpbjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaW5pdGlhbEljb25zW3RoaXMuZm9jdXNlZEljb25Sb3V0aW5nXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5sYWJlbE9yaWdpbixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLy8gVXBkYXRlIHRoZSBjdXJyZW50IG1hcmtlclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRhdGEucm91dGluZ01hcmtlcnMubWFwKFxuICAgICAgICAgICAgICAgICAgICAgICAgKGl0ZW06IHsgaWNvbjogeyB1cmw6IHN0cmluZyB9IH0sIGluZGV4OiBudW1iZXIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoaW5kZXggPT09IGkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5wcmV2aW91c0ljb25VcmxSb3V0aW5nID0gaXRlbS5pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGl0ZW0uaWNvbi51cmxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJyc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZm9jdXNlZEljb25Sb3V0aW5nID0gaTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zaG93TGFiZWwgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5pY29uID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0YS5pc1VuaXRWaWV3U3RvcHMgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRhdGEuaXNEcml2ZXJNaWxlc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGl0ZW0uaWNvbi51cmxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBNYXBTdmdSb3V0ZXMubWFya2VyU3ZnUm91dGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zaG93TGFiZWwgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgICAgICBpbmZvV2luZG93Lm9wZW4obWFya2VySW5kZXgpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRseU9wZW5XaW5kb3dSb3V0aW5nID0gaW5mb1dpbmRvdztcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50bHlPcGVuV2luZG93SW5kZXhSb3V0aW5nID0gaTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5tYXJrZXJDbGljay5lbWl0KGV2ZW50KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgICAgIHRoaXMubWFwcy5nb29nbGVNYXA/LmFkZExpc3RlbmVyKCdjbGljaycsICgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaW5mb1dpbmRvd3NWaWV3LmZvckVhY2goKHdpbmRvdzogTWFwSW5mb1dpbmRvdykgPT4ge1xuICAgICAgICAgICAgICAgIHdpbmRvdy5jbG9zZSgpO1xuICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudGx5T3BlbldpbmRvdyA9IG51bGw7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMuaW5mb1dpbmRvd3NWaWV3Um91dGluZy5mb3JFYWNoKCh3aW5kb3c6IE1hcEluZm9XaW5kb3cpID0+IHtcbiAgICAgICAgICAgICAgICB3aW5kb3cuY2xvc2UoKTtcbiAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRseU9wZW5XaW5kb3dSb3V0aW5nID0gbnVsbDtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgdGhpcy5kYXRhLm1hcmtlcnM/Lm1hcChcbiAgICAgICAgICAgICAgICAoaXRlbTogeyBpY29uOiB7IHVybDogc3RyaW5nIH0gfSwgaTogbnVtYmVyKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChpID09PSB0aGlzLmZvY3VzZWRJY29uKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtLmljb24gPSB7IHVybDogaXRlbS5pY29uID8gaXRlbS5pY29uLnVybCA6ICcnIH07XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgIHRoaXMuZGF0YS5yb3V0aW5nTWFya2Vycz8ubWFwKFxuICAgICAgICAgICAgICAgIChpdGVtOiB7IGljb246IHsgdXJsOiBzdHJpbmcgfSB9LCBpOiBudW1iZXIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGkgPT09IHRoaXMuZm9jdXNlZEljb25Sb3V0aW5nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtLmljb24gPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiB0aGlzLmluaXRpYWxJY29uc1tpXS51cmwsXG4gICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICApO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVzZXRNYXJrZXJzSWNvbnMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGF0YS5tYXJrZXJzPy5mb3JFYWNoKFxuICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgIG1hcmtlcjoge1xuICAgICAgICAgICAgICAgICAgICBpY29uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB1cmw6IHN0cmluZztcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsT3JpZ2luOiBnb29nbGUubWFwcy5Qb2ludCB8IG51bGw7XG4gICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBpbmRleDogbnVtYmVyXG4gICAgICAgICAgICApID0+IHtcbiAgICAgICAgICAgICAgICBtYXJrZXIuaWNvbiA9IHtcbiAgICAgICAgICAgICAgICAgICAgdXJsOiB0aGlzLmluaXRpYWxNYXJrZXJJY29uc1tpbmRleF0udXJsLFxuICAgICAgICAgICAgICAgICAgICBsYWJlbE9yaWdpbjogdGhpcy5pbml0aWFsTWFya2VySWNvbnNbaW5kZXhdLmxhYmVsT3JpZ2luLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIHB1YmxpYyByZXNldFJvdXRpbmdNYXJrZXJzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRhdGEucm91dGluZ01hcmtlcnM/LmZvckVhY2goXG4gICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgbWFya2VyOiB7XG4gICAgICAgICAgICAgICAgICAgIGljb246IHsgdXJsOiBzdHJpbmc7IGxhYmVsT3JpZ2luPzogZ29vZ2xlLm1hcHMuUG9pbnQgfTtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIGluZGV4OiBudW1iZXJcbiAgICAgICAgICAgICkgPT4ge1xuICAgICAgICAgICAgICAgIG1hcmtlci5pY29uID0ge1xuICAgICAgICAgICAgICAgICAgICB1cmw6IG1hcmtlci5pY29uIS51cmwsXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsT3JpZ2luOiBtYXJrZXIuaWNvbiEubGFiZWxPcmlnaW4sXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25NYXBSZWFkeSgpOiB7XG4gICAgICAgIGZpbGxDb2xvcj86IHN0cmluZztcbiAgICAgICAgc3Ryb2tlQ29sb3I/OiBzdHJpbmc7XG4gICAgICAgIHN0cm9rZVdlaWdodD86IG51bWJlcjtcbiAgICAgICAgZmlsbE9wYWNpdHk/OiBudW1iZXI7XG4gICAgfSB8IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5kYXRhLnN0YXRlQm91bmRhcmllc1VybCkge1xuICAgICAgICAgICAgY29uc3Qgc3RhdGVCb3VuZGFyaWVzVXJsID0gdGhpcy5kYXRhLnN0YXRlQm91bmRhcmllc1VybC51cmw7XG4gICAgICAgICAgICB0aGlzLm1hcHMuZ29vZ2xlTWFwPy5kYXRhLmxvYWRHZW9Kc29uKHN0YXRlQm91bmRhcmllc1VybCk7XG5cbiAgICAgICAgICAgIHRoaXMubWFwcy5nb29nbGVNYXA/LmRhdGEuc2V0U3R5bGUoKGZlYXR1cmUpID0+IHtcbiAgICAgICAgICAgICAgICAvL2xlYXZlIHRoaXMgYXMgYW55IGZvciBub3dcbiAgICAgICAgICAgICAgICBjb25zdCBzdGF0ZURlbnNpdHkgPSBmZWF0dXJlLmdldFByb3BlcnR5KCdkZW5zaXR5Jyk7XG4gICAgICAgICAgICAgICAgY29uc3QgeyBmaWxsQ29sb3IsIGZpbGxPcGFjaXR5IH0gPVxuICAgICAgICAgICAgICAgICAgICBNYXBIZWxwZXIuZ2V0RmlsbENvbG9yRm9yU3RhdGUoXG4gICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZURlbnNpdHkgYXMgbnVtYmVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kYXRhLnZpZXdcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICBmaWxsQ29sb3I6IGZpbGxDb2xvcixcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlQ29sb3I6ICcjRUVFRUVFJyxcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlV2VpZ2h0OiAwLjYsXG4gICAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiBmaWxsT3BhY2l0eSxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgaWRlbnRpdHkoaW5kZXg6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIHJldHVybiBpbmRleDtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy5kaXJlY3Rpb25zUmVuZGVyZXJzLmZvckVhY2goKHJlbmRlcmVyKSA9PiByZW5kZXJlci5zZXRNYXAobnVsbCkpO1xuICAgIH1cbn1cbiIsIjxnb29nbGUtbWFwXG4gIGhlaWdodD1cIjUwMHB4XCJcbiAgd2lkdGg9XCIxMDAlXCJcbiAgW3pvb21dPVwiZGF0YS5tYXBab29tXCJcbiAgW2NlbnRlcl09XCJkYXRhLmNlbnRlclwiXG4gIFtvcHRpb25zXT1cImRhdGEubWFwT3B0aW9uc1wiXG4gIChpZGxlKT1cIm9uTWFwUmVhZHkoKVwiXG4+XG4gIDxtYXAtbWFya2VyXG4gICAgI21hcmtlcj1cIm1hcE1hcmtlclwiXG4gICAgKm5nRm9yPVwibGV0IG1hcmtlcml0ZW0gb2YgZGF0YS5tYXJrZXJzOyBsZXQgaSA9IGluZGV4OyB0cmFja0J5OiBpZGVudGl0eVwiXG4gICAgW3Bvc2l0aW9uXT1cIm1hcmtlcml0ZW0ucG9zaXRpb25cIlxuICAgIFtpY29uXT1cIm1hcmtlcml0ZW0uaWNvbiFcIlxuICAgIFtsYWJlbF09XCJmb2N1c2VkSWNvbiAhPT0gaSA/IG1hcmtlcml0ZW0ubGFiZWwhIDogJydcIlxuICAgIFt0aXRsZV09XCJtYXJrZXJpdGVtLnRpdGxlIVwiXG4gICAgW29wdGlvbnNdPVwibWFya2VyaXRlbS5vcHRpb25zIVwiXG4gICAgKG1hcENsaWNrKT1cIm9uTWFya2VyQ2xpY2soaSwgJGV2ZW50LCBtYXJrZXJpdGVtKVwiXG4gID5cbiAgICA8bWFwLWluZm8td2luZG93ICNpbmZvV2luZG93c1ZpZXc9XCJtYXBJbmZvV2luZG93XCI+XG4gICAgICA8YXBwLWNhLW1hcC1kcm9wZG93blxuICAgICAgICBbaXNBY2NpZGVudE1hcF09XCJkYXRhLmlzQWNjaWRlbnRNYXAgPz8gZmFsc2VcIlxuICAgICAgPjwvYXBwLWNhLW1hcC1kcm9wZG93bj5cbiAgICA8L21hcC1pbmZvLXdpbmRvdz5cbiAgPC9tYXAtbWFya2VyPlxuICA8bWFwLW1hcmtlclxuICAgICpuZ0Zvcj1cImxldCBtYXJrZXIgb2YgZGF0YS5jbHVzdGVybWFya2VyczsgbGV0IGkgPSBpbmRleDsgdHJhY2tCeTogaWRlbnRpdHlcIlxuICAgIFtwb3NpdGlvbl09XCJtYXJrZXIucG9zaXRpb25cIlxuICAgIFtpY29uXT1cIm1hcmtlci5pY29uXCJcbiAgICBbbGFiZWxdPVwibWFya2VyLmxhYmVsIVwiXG4gICAgW3RpdGxlXT1cIm1hcmtlci50aXRsZSFcIlxuICA+XG4gIDwvbWFwLW1hcmtlcj5cblxuICA8bWFwLW1hcmtlclxuICAgICNtYXJrZXJSb3V0aW5nPVwibWFwTWFya2VyXCJcbiAgICAqbmdGb3I9XCJcbiAgICAgIGxldCBtYXJrZXJpdGVtIG9mIGRhdGEucm91dGluZ01hcmtlcnM7XG4gICAgICBsZXQgaSA9IGluZGV4O1xuICAgICAgdHJhY2tCeTogaWRlbnRpdHlcbiAgICBcIlxuICAgIFtwb3NpdGlvbl09XCJtYXJrZXJpdGVtLnBvc2l0aW9uXCJcbiAgICBbaWNvbl09XCJtYXJrZXJpdGVtLmljb24hXCJcbiAgICBbbGFiZWxdPVwiZm9jdXNlZEljb25Sb3V0aW5nICE9PSBpID8gbWFya2VyaXRlbS5sYWJlbCEgOiAnJ1wiXG4gICAgW3RpdGxlXT1cIm1hcmtlcml0ZW0udGl0bGUhXCJcbiAgICBbb3B0aW9uc109XCJtYXJrZXJpdGVtLm9wdGlvbnMhXCJcbiAgICAobWFwQ2xpY2spPVwib25Sb3V0aW5nTWFya2VyQ2xpY2soaSwgJGV2ZW50LCBtYXJrZXJpdGVtKVwiXG4gID5cbiAgICA8bWFwLWluZm8td2luZG93ICNpbmZvV2luZG93c1ZpZXdSb3V0aW5nPVwibWFwSW5mb1dpbmRvd1wiPlxuICAgICAgPGFwcC1jYS1tYXAtZHJvcGRvd24gW2lzQWNjaWRlbnRNYXBdPVwiZmFsc2VcIj48L2FwcC1jYS1tYXAtZHJvcGRvd24+XG4gICAgPC9tYXAtaW5mby13aW5kb3c+XG4gIDwvbWFwLW1hcmtlcj5cbjwvZ29vZ2xlLW1hcD5cbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtbWFwL21vZGVscy9tYXAubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgSVJvdXRlUGF0aCB7XG4gIGxhdDogbnVtYmVyO1xuICBsbmc6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJTWFwU3RvcmllcyB7XG4gIGRhdGE6IHtcbiAgICBjZW50ZXI6IElSb3V0ZVBhdGg7XG4gICAgbWFwWm9vbTogbnVtYmVyO1xuICAgIG1hcE9wdGlvbnM6IElNYXBPcHRpb25zO1xuICAgIGNsdXN0ZXJtYXJrZXJzPzogSU1hcE1hcmtlcnNbXTtcbiAgICByb3V0aW5nTWFya2Vycz86IElNYXBNYXJrZXJzW107XG4gICAgcm91dGVQYXRoPzogSU1hcFJvdXRlUGF0aFtdO1xuICAgIGlzQWNjaWRlbnRNYXA/OiBib29sZWFuO1xuICAgIHN0YXRlQm91bmRhcmllc1VybD86IHsgdXJsOiBzdHJpbmcgfTtcbiAgICBtYXJrZXJzPzogSU1hcE1hcmtlcnNbXTtcbiAgICB2aWV3Pzogc3RyaW5nO1xuICAgIGlzVW5pdFZpZXdTdG9wcz86IGJvb2xlYW47XG4gICAgaXNEcml2ZXJNaWxlcz86IGJvb2xlYW47XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSU1hcE9wdGlvbnMge1xuICBtYXBPcHRpb25zOiB7XG4gICAgcmVzdHJpY3Rpb246IHtcbiAgICAgIGxhdExuZ0JvdW5kczoge1xuICAgICAgICBub3J0aDogbnVtYmVyO1xuICAgICAgICBzb3V0aDogbnVtYmVyO1xuICAgICAgICBlYXN0OiBudW1iZXI7XG4gICAgICAgIHdlc3Q6IG51bWJlcjtcbiAgICAgIH07XG4gICAgICBzdHJpY3RCb3VuZHM6IGJvb2xlYW47XG4gICAgfTtcbiAgICBzdHJlZXRWaWV3Q29udHJvbDogYm9vbGVhbjtcbiAgICBzdHlsZXM6IElNYXBTdHlsZXNbXTtcbiAgICBrZXlib2FyZFNob3J0Y3V0czogYm9vbGVhbjtcbiAgICBwYW5Db250cm9sOiBib29sZWFuO1xuICAgIGdlc3R1cmVIYW5kbGluZzogc3RyaW5nO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElNYXBTdHlsZXMge1xuICBlbGVtZW50VHlwZTogc3RyaW5nO1xuICBzdHlsZXJzOiBJTWFwQ29sb3JbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJTWFwQ29sb3Ige1xuICBjb2xvcjogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElNYXBNYXJrZXJzIHtcbiAgcG9zaXRpb246IElSb3V0ZVBhdGg7XG4gIGljb24/OiBJTWFwTWFya2Vyc0ljb247XG4gIGluZm9XaW5kb3dDb250ZW50Pzogc3RyaW5nO1xuICBsYWJlbD86IElNYXJrZXJMYWJlbDtcbiAgbGFiZWxPcmlnaW4/OiB7IHg6IG51bWJlcjsgeTogbnVtYmVyIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSU1hcE1hcmtlcnNJY29uIHtcbiAgdXJsOiBzdHJpbmc7XG4gIGxhYmVsT3JpZ2luPzogeyB4OiBudW1iZXI7IHk6IG51bWJlciB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElNYXJrZXJMYWJlbCB7XG4gIHRleHQ6IHN0cmluZztcbiAgZm9udFNpemU/OiBzdHJpbmc7XG4gIGNvbG9yPzogc3RyaW5nO1xuICBmb250V2VpZ2h0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElNYXBSb3V0ZVBhdGgge1xuICBwYXRoOiBJUm91dGVQYXRoW107XG4gIHN0cm9rZUNvbG9yOiBzdHJpbmc7XG59XG4iXX0=
|