survery-lib 2.1.3 → 2.1.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/assets/style.css +398 -398
- package/esm2022/lib/components/question-boolean-template/question-boolean-template.component.mjs +11 -1
- package/esm2022/lib/components/question-cascade-template/question-cascade-template.component.mjs +5 -5
- package/esm2022/lib/components/question-check-box-template/question-check-box-template.component.mjs +10 -1
- package/esm2022/lib/components/question-dropdown-multi-template/question-dropdown-multi-template.component.mjs +10 -1
- package/esm2022/lib/components/question-dropdown-template/question-dropdown-template.component.mjs +13 -3
- package/esm2022/lib/components/question-feedback-template/question-feedback-template.component.mjs +10 -1
- package/esm2022/lib/components/question-matrix-template/question-matrix-template.component.mjs +13 -1
- package/esm2022/lib/components/question-radio-button-template/question-radio-button-template.component.mjs +12 -3
- package/esm2022/lib/components/question-text-template/question-text-template.component.mjs +10 -1
- package/esm2022/lib/core/states/survey-store/survey.effect.mjs +121 -0
- package/esm2022/lib/survery-lib.component.mjs +8 -5
- package/esm2022/lib/survery-lib.module.mjs +4 -3
- package/fesm2022/survery-lib.mjs +215 -17
- package/fesm2022/survery-lib.mjs.map +1 -1
- package/lib/components/question-boolean-template/question-boolean-template.component.d.ts +1 -0
- package/lib/components/question-cascade-template/question-cascade-template.component.d.ts +1 -1
- package/lib/components/question-check-box-template/question-check-box-template.component.d.ts +1 -0
- package/lib/components/question-dropdown-multi-template/question-dropdown-multi-template.component.d.ts +1 -0
- package/lib/components/question-dropdown-template/question-dropdown-template.component.d.ts +6 -2
- package/lib/components/question-feedback-template/question-feedback-template.component.d.ts +1 -0
- package/lib/components/question-matrix-template/question-matrix-template.component.d.ts +1 -0
- package/lib/components/question-radio-button-template/question-radio-button-template.component.d.ts +1 -0
- package/lib/components/question-text-template/question-text-template.component.d.ts +1 -0
- package/lib/core/states/survey-store/survey.effect.d.ts +13 -0
- package/lib/survery-lib.component.d.ts +4 -2
- package/package.json +3 -2
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { Injectable } from "@angular/core";
|
|
2
|
+
import { createEffect, ofType } from "@ngrx/effects";
|
|
3
|
+
import { withLatestFrom, switchMap, of } from "rxjs";
|
|
4
|
+
import { surveyActions } from "./survey.action";
|
|
5
|
+
import { surveySelectors } from "./survey.selector";
|
|
6
|
+
import { questionSelectors } from "./question.selector";
|
|
7
|
+
import { LogicActionEnum } from "../../../../shared/enums/logic-action.enum";
|
|
8
|
+
import { QuestionTypeEnum } from "../../../../shared/enums/question-type.enum";
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
import * as i1 from "@ngrx/effects";
|
|
11
|
+
import * as i2 from "@ngrx/store";
|
|
12
|
+
import * as i3 from "../../../usecases/check-rule-exps.usecase";
|
|
13
|
+
export class SurveyEffects {
|
|
14
|
+
constructor(_actions, _store, _checkRuleExpsUsecase) {
|
|
15
|
+
this._actions = _actions;
|
|
16
|
+
this._store = _store;
|
|
17
|
+
this._checkRuleExpsUsecase = _checkRuleExpsUsecase;
|
|
18
|
+
this.updateQuestionAnswer$ = createEffect(() => this._actions.pipe(ofType(surveyActions.updateQuestionAnswer), withLatestFrom(this._store.select(surveySelectors.ruleArr), this._store.select(questionSelectors.allQuestions)), switchMap(([action, ruleArr, questionArr]) => {
|
|
19
|
+
var formatedRuleArr = [];
|
|
20
|
+
ruleArr.forEach(rule => {
|
|
21
|
+
rule.ruleExps.forEach(ruleQuestion => {
|
|
22
|
+
formatedRuleArr.push({
|
|
23
|
+
ruleId: rule.ruleId,
|
|
24
|
+
questionId: ruleQuestion.questionId
|
|
25
|
+
});
|
|
26
|
+
});
|
|
27
|
+
});
|
|
28
|
+
var selectedRuleIdArr = formatedRuleArr.filter(x => x.questionId == action.questionId).map(x => Number(x.ruleId));
|
|
29
|
+
var arr = ruleArr.filter(x => selectedRuleIdArr.find(c => c == x.ruleId) != null);
|
|
30
|
+
arr.forEach(rule => {
|
|
31
|
+
this._checkRuleExpsUsecase.execute({
|
|
32
|
+
ruleExps: rule.ruleExps,
|
|
33
|
+
questions: questionArr,
|
|
34
|
+
}).subscribe(result => {
|
|
35
|
+
var isPassed = result.exprestionResultArr.filter(x => x == false).length == 0;
|
|
36
|
+
if (isPassed) {
|
|
37
|
+
rule.ruleResultQuestions.forEach(resultQuestion => {
|
|
38
|
+
if (rule.logicActionId == LogicActionEnum.Show) {
|
|
39
|
+
this._store.dispatch(surveyActions.updateQuestionShow({
|
|
40
|
+
questionId: resultQuestion.questionId,
|
|
41
|
+
isShow: true
|
|
42
|
+
}));
|
|
43
|
+
}
|
|
44
|
+
else if (rule.logicActionId == LogicActionEnum.Hide) {
|
|
45
|
+
this._store.dispatch(surveyActions.updateQuestionShow({
|
|
46
|
+
questionId: resultQuestion.questionId,
|
|
47
|
+
isShow: false
|
|
48
|
+
}));
|
|
49
|
+
}
|
|
50
|
+
else if (rule.logicActionId == LogicActionEnum.Enable) {
|
|
51
|
+
this._store.dispatch(surveyActions.updateQuestionDisable({
|
|
52
|
+
questionId: resultQuestion.questionId,
|
|
53
|
+
isDisabled: false
|
|
54
|
+
}));
|
|
55
|
+
}
|
|
56
|
+
else if (rule.logicActionId == LogicActionEnum.Disable) {
|
|
57
|
+
this._store.dispatch(surveyActions.updateQuestionDisable({
|
|
58
|
+
questionId: resultQuestion.questionId,
|
|
59
|
+
isDisabled: true
|
|
60
|
+
}));
|
|
61
|
+
}
|
|
62
|
+
else if (rule.logicActionId == LogicActionEnum.SetAnswer) {
|
|
63
|
+
}
|
|
64
|
+
const question = questionArr.find(x => x.questionId == resultQuestion.questionId);
|
|
65
|
+
//update matrix sub questions
|
|
66
|
+
if (question.questionType == QuestionTypeEnum.Matrix && question.isMatrixGroup == true) {
|
|
67
|
+
var subQuestions = questionArr.filter(x => x.parentQuestionId == question.questionId);
|
|
68
|
+
subQuestions.forEach(subQuestion => {
|
|
69
|
+
if (rule.logicActionId == LogicActionEnum.Show) {
|
|
70
|
+
this._store.dispatch(surveyActions.updateQuestionShow({
|
|
71
|
+
questionId: subQuestion.questionId,
|
|
72
|
+
isShow: true
|
|
73
|
+
}));
|
|
74
|
+
}
|
|
75
|
+
else if (rule.logicActionId == LogicActionEnum.Hide) {
|
|
76
|
+
this._store.dispatch(surveyActions.updateQuestionShow({
|
|
77
|
+
questionId: subQuestion.questionId,
|
|
78
|
+
isShow: false
|
|
79
|
+
}));
|
|
80
|
+
}
|
|
81
|
+
else if (rule.logicActionId == LogicActionEnum.Enable) {
|
|
82
|
+
this._store.dispatch(surveyActions.updateQuestionDisable({
|
|
83
|
+
questionId: subQuestion.questionId,
|
|
84
|
+
isDisabled: false
|
|
85
|
+
}));
|
|
86
|
+
}
|
|
87
|
+
else if (rule.logicActionId == LogicActionEnum.Disable) {
|
|
88
|
+
this._store.dispatch(surveyActions.updateQuestionDisable({
|
|
89
|
+
questionId: subQuestion.questionId,
|
|
90
|
+
isDisabled: true
|
|
91
|
+
}));
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
else {
|
|
98
|
+
rule.ruleResultQuestions.forEach(resultQuestion => {
|
|
99
|
+
const question = questionArr.find(x => x.questionId == resultQuestion.questionId);
|
|
100
|
+
this._store.dispatch(surveyActions.updateQuestionShow({
|
|
101
|
+
questionId: resultQuestion.questionId,
|
|
102
|
+
isShow: question.isShow_default
|
|
103
|
+
}));
|
|
104
|
+
this._store.dispatch(surveyActions.updateQuestionDisable({
|
|
105
|
+
questionId: resultQuestion.questionId,
|
|
106
|
+
isDisabled: question.isDisabled_default
|
|
107
|
+
}));
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
});
|
|
111
|
+
});
|
|
112
|
+
return of([]);
|
|
113
|
+
})), { dispatch: false });
|
|
114
|
+
}
|
|
115
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SurveyEffects, deps: [{ token: i1.Actions }, { token: i2.Store }, { token: i3.CheckRuleExpsUsecase }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
116
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SurveyEffects }); }
|
|
117
|
+
}
|
|
118
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SurveyEffects, decorators: [{
|
|
119
|
+
type: Injectable
|
|
120
|
+
}], ctorParameters: function () { return [{ type: i1.Actions }, { type: i2.Store }, { type: i3.CheckRuleExpsUsecase }]; } });
|
|
121
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VydmV5LmVmZmVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N1cnZlcnktbGliL3NyYy9saWIvY29yZS9zdGF0ZXMvc3VydmV5LXN0b3JlL3N1cnZleS5lZmZlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQVcsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RCxPQUFPLEVBQUUsY0FBYyxFQUFVLFNBQVMsRUFBbUIsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVoRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDOzs7OztBQUcvRSxNQUFNLE9BQU8sYUFBYTtJQUN0QixZQUFvQixRQUFpQixFQUFVLE1BQWEsRUFDaEQscUJBQTJDO1FBRG5DLGFBQVEsR0FBUixRQUFRLENBQVM7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFPO1FBQ2hELDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBc0I7UUFHdkQsMEJBQXFCLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUN0QyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLG9CQUFvQixDQUFDLEVBQUUsY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsRUFDbkgsSUFBSSxDQUFDLE1BQU0sQ0FB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Q0FBQztZQUNILE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFBO1FBQ2pCLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQXhHbEMsQ0FBQzs4R0FIUSxhQUFhO2tIQUFiLGFBQWE7OzJGQUFiLGFBQWE7a0JBRHpCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQWN0aW9ucywgY3JlYXRlRWZmZWN0LCBvZlR5cGUgfSBmcm9tIFwiQG5ncngvZWZmZWN0c1wiO1xyXG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gXCJAbmdyeC9zdG9yZVwiO1xyXG5pbXBvcnQgeyB3aXRoTGF0ZXN0RnJvbSwgZmlsdGVyLCBzd2l0Y2hNYXAsIG1hcCwgY2F0Y2hFcnJvciwgb2YgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBzdXJ2ZXlBY3Rpb25zIH0gZnJvbSBcIi4vc3VydmV5LmFjdGlvblwiO1xyXG5pbXBvcnQgeyBDaGVja1J1bGVFeHBzVXNlY2FzZSB9IGZyb20gXCIuLi8uLi8uLi91c2VjYXNlcy9jaGVjay1ydWxlLWV4cHMudXNlY2FzZVwiO1xyXG5pbXBvcnQgeyBzdXJ2ZXlTZWxlY3RvcnMgfSBmcm9tIFwiLi9zdXJ2ZXkuc2VsZWN0b3JcIjtcclxuaW1wb3J0IHsgcXVlc3Rpb25TZWxlY3RvcnMgfSBmcm9tIFwiLi9xdWVzdGlvbi5zZWxlY3RvclwiO1xyXG5pbXBvcnQgeyBMb2dpY0FjdGlvbkVudW0gfSBmcm9tIFwiLi4vLi4vLi4vLi4vc2hhcmVkL2VudW1zL2xvZ2ljLWFjdGlvbi5lbnVtXCI7XHJcbmltcG9ydCB7IFF1ZXN0aW9uVHlwZUVudW0gfSBmcm9tIFwiLi4vLi4vLi4vLi4vc2hhcmVkL2VudW1zL3F1ZXN0aW9uLXR5cGUuZW51bVwiO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgU3VydmV5RWZmZWN0cyB7XHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9hY3Rpb25zOiBBY3Rpb25zLCBwcml2YXRlIF9zdG9yZTogU3RvcmUsXHJcbiAgICAgICAgcHJpdmF0ZSBfY2hlY2tSdWxlRXhwc1VzZWNhc2U6IENoZWNrUnVsZUV4cHNVc2VjYXNlKSB7XHJcbiAgICB9XHJcblxyXG4gICAgdXBkYXRlUXVlc3Rpb25BbnN3ZXIkID0gY3JlYXRlRWZmZWN0KCgpID0+XHJcbiAgICAgICAgdGhpcy5fYWN0aW9ucy5waXBlKG9mVHlwZShzdXJ2ZXlBY3Rpb25zLnVwZGF0ZVF1ZXN0aW9uQW5zd2VyKSwgd2l0aExhdGVzdEZyb20odGhpcy5fc3RvcmUuc2VsZWN0KHN1cnZleVNlbGVjdG9ycy5ydWxlQXJyKVxyXG4gICAgICAgICAgICAsIHRoaXMuX3N0b3JlLnNlbGVjdChxdWVzdGlvblNlbGVjdG9ycy5hbGxRdWVzdGlvbnMpKSwgc3dpdGNoTWFwKChbYWN0aW9uLCBydWxlQXJyLCBxdWVzdGlvbkFycl0pID0+IHtcclxuICAgICAgICAgICAgICAgIHZhciBmb3JtYXRlZFJ1bGVBcnI6IHsgcnVsZUlkOiBhbnksIHF1ZXN0aW9uSWQ6IGFueSB9W10gPSBbXTtcclxuICAgICAgICAgICAgICAgIHJ1bGVBcnIuZm9yRWFjaChydWxlID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBydWxlLnJ1bGVFeHBzLmZvckVhY2gocnVsZVF1ZXN0aW9uID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0ZWRSdWxlQXJyLnB1c2goe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcnVsZUlkOiBydWxlLnJ1bGVJZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHF1ZXN0aW9uSWQ6IHJ1bGVRdWVzdGlvbi5xdWVzdGlvbklkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgIH0pXHJcblxyXG4gICAgICAgICAgICAgICAgdmFyIHNlbGVjdGVkUnVsZUlkQXJyID0gZm9ybWF0ZWRSdWxlQXJyLmZpbHRlcih4ID0+IHgucXVlc3Rpb25JZCA9PSBhY3Rpb24ucXVlc3Rpb25JZCkubWFwKHggPT4gTnVtYmVyKHgucnVsZUlkKSk7XHJcbiAgICAgICAgICAgICAgICB2YXIgYXJyID0gcnVsZUFyci5maWx0ZXIoeCA9PiBzZWxlY3RlZFJ1bGVJZEFyci5maW5kKGMgPT4gYyA9PSB4LnJ1bGVJZCkgIT0gbnVsbCk7XHJcbiAgICAgICAgICAgICAgICBhcnIuZm9yRWFjaChydWxlID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9jaGVja1J1bGVFeHBzVXNlY2FzZS5leGVjdXRlKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcnVsZUV4cHM6IHJ1bGUucnVsZUV4cHMsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHF1ZXN0aW9uczogcXVlc3Rpb25BcnIsXHJcbiAgICAgICAgICAgICAgICAgICAgfSkuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICB2YXIgaXNQYXNzZWQgPSByZXN1bHQuZXhwcmVzdGlvblJlc3VsdEFyci5maWx0ZXIoeCA9PiB4ID09IGZhbHNlKS5sZW5ndGggPT0gMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGlzUGFzc2VkKSB7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcnVsZS5ydWxlUmVzdWx0UXVlc3Rpb25zLmZvckVhY2gocmVzdWx0UXVlc3Rpb24gPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChydWxlLmxvZ2ljQWN0aW9uSWQgPT0gTG9naWNBY3Rpb25FbnVtLlNob3cpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fc3RvcmUuZGlzcGF0Y2goc3VydmV5QWN0aW9ucy51cGRhdGVRdWVzdGlvblNob3coe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcXVlc3Rpb25JZDogcmVzdWx0UXVlc3Rpb24ucXVlc3Rpb25JZCAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc1Nob3c6IHRydWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocnVsZS5sb2dpY0FjdGlvbklkID09IExvZ2ljQWN0aW9uRW51bS5IaWRlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX3N0b3JlLmRpc3BhdGNoKHN1cnZleUFjdGlvbnMudXBkYXRlUXVlc3Rpb25TaG93KHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHF1ZXN0aW9uSWQ6IHJlc3VsdFF1ZXN0aW9uLnF1ZXN0aW9uSWQgLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNTaG93OiBmYWxzZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChydWxlLmxvZ2ljQWN0aW9uSWQgPT0gTG9naWNBY3Rpb25FbnVtLkVuYWJsZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9zdG9yZS5kaXNwYXRjaChzdXJ2ZXlBY3Rpb25zLnVwZGF0ZVF1ZXN0aW9uRGlzYWJsZSh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBxdWVzdGlvbklkOiByZXN1bHRRdWVzdGlvbi5xdWVzdGlvbklkICxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzRGlzYWJsZWQ6IGZhbHNlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHJ1bGUubG9naWNBY3Rpb25JZCA9PSBMb2dpY0FjdGlvbkVudW0uRGlzYWJsZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9zdG9yZS5kaXNwYXRjaChzdXJ2ZXlBY3Rpb25zLnVwZGF0ZVF1ZXN0aW9uRGlzYWJsZSh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBxdWVzdGlvbklkOiByZXN1bHRRdWVzdGlvbi5xdWVzdGlvbklkICxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzRGlzYWJsZWQ6IHRydWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocnVsZS5sb2dpY0FjdGlvbklkID09IExvZ2ljQWN0aW9uRW51bS5TZXRBbnN3ZXIpIHtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBxdWVzdGlvbiA9IHF1ZXN0aW9uQXJyLmZpbmQoeD0+eC5xdWVzdGlvbklkID09IHJlc3VsdFF1ZXN0aW9uLnF1ZXN0aW9uSWQpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL3VwZGF0ZSBtYXRyaXggc3ViIHF1ZXN0aW9uc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChxdWVzdGlvbi5xdWVzdGlvblR5cGUgPT0gUXVlc3Rpb25UeXBlRW51bS5NYXRyaXggJiYgcXVlc3Rpb24uaXNNYXRyaXhHcm91cCA9PSB0cnVlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBzdWJRdWVzdGlvbnMgPSBxdWVzdGlvbkFyci5maWx0ZXIoeD0+eC5wYXJlbnRRdWVzdGlvbklkID09IHF1ZXN0aW9uLnF1ZXN0aW9uSWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdWJRdWVzdGlvbnMuZm9yRWFjaChzdWJRdWVzdGlvbiA9PiB7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJ1bGUubG9naWNBY3Rpb25JZCA9PSBMb2dpY0FjdGlvbkVudW0uU2hvdykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX3N0b3JlLmRpc3BhdGNoKHN1cnZleUFjdGlvbnMudXBkYXRlUXVlc3Rpb25TaG93KHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcXVlc3Rpb25JZDogc3ViUXVlc3Rpb24ucXVlc3Rpb25JZCAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzU2hvdzogdHJ1ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocnVsZS5sb2dpY0FjdGlvbklkID09IExvZ2ljQWN0aW9uRW51bS5IaWRlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fc3RvcmUuZGlzcGF0Y2goc3VydmV5QWN0aW9ucy51cGRhdGVRdWVzdGlvblNob3coe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBxdWVzdGlvbklkOiBzdWJRdWVzdGlvbi5xdWVzdGlvbklkICxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNTaG93OiBmYWxzZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKHJ1bGUubG9naWNBY3Rpb25JZCA9PSBMb2dpY0FjdGlvbkVudW0uRW5hYmxlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fc3RvcmUuZGlzcGF0Y2goc3VydmV5QWN0aW9ucy51cGRhdGVRdWVzdGlvbkRpc2FibGUoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBxdWVzdGlvbklkOiBzdWJRdWVzdGlvbi5xdWVzdGlvbklkICxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNEaXNhYmxlZDogZmFsc2VcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHJ1bGUubG9naWNBY3Rpb25JZCA9PSBMb2dpY0FjdGlvbkVudW0uRGlzYWJsZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX3N0b3JlLmRpc3BhdGNoKHN1cnZleUFjdGlvbnMudXBkYXRlUXVlc3Rpb25EaXNhYmxlKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcXVlc3Rpb25JZDogc3ViUXVlc3Rpb24ucXVlc3Rpb25JZCAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzRGlzYWJsZWQ6IHRydWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBydWxlLnJ1bGVSZXN1bHRRdWVzdGlvbnMuZm9yRWFjaChyZXN1bHRRdWVzdGlvbiA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcXVlc3Rpb24gPSBxdWVzdGlvbkFyci5maW5kKHg9PngucXVlc3Rpb25JZCA9PSByZXN1bHRRdWVzdGlvbi5xdWVzdGlvbklkKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fc3RvcmUuZGlzcGF0Y2goc3VydmV5QWN0aW9ucy51cGRhdGVRdWVzdGlvblNob3coe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBxdWVzdGlvbklkOiByZXN1bHRRdWVzdGlvbi5xdWVzdGlvbklkICxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNTaG93OiBxdWVzdGlvbi5pc1Nob3dfZGVmYXVsdFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fc3RvcmUuZGlzcGF0Y2goc3VydmV5QWN0aW9ucy51cGRhdGVRdWVzdGlvbkRpc2FibGUoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBxdWVzdGlvbklkOiByZXN1bHRRdWVzdGlvbi5xdWVzdGlvbklkICxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNEaXNhYmxlZDogcXVlc3Rpb24uaXNEaXNhYmxlZF9kZWZhdWx0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIHJldHVybiBvZihbXSlcclxuICAgICAgICAgICAgfSkpLCB7IGRpc3BhdGNoOiBmYWxzZSB9KTtcclxufVxyXG5cclxuIl19
|
|
@@ -49,8 +49,8 @@ export class SurveryLibComponent {
|
|
|
49
49
|
this.surveryLibraryDivId = guidGenerator();
|
|
50
50
|
this.reloadDefaultAnswerId = guidGenerator();
|
|
51
51
|
this.questionAnswerArr = [];
|
|
52
|
-
this.pageQuestionGroups$ = this._Store.
|
|
53
|
-
this.pageQuestions$ = this._Store.
|
|
52
|
+
this.pageQuestionGroups$ = this._Store.selectSignal(questionGroupSelectors.pageQuestionGroups);
|
|
53
|
+
this.pageQuestions$ = this._Store.selectSignal(questionSelectors.pageQuestions);
|
|
54
54
|
this.isFirstPage$ = this._Store.select(surveySelectors.isFirstPage);
|
|
55
55
|
this.isLastPage$ = this._Store.select(surveySelectors.isLastPage);
|
|
56
56
|
this.curruntShowedSurveyPages$ = this._Store.select(surveySelectors.selectedPageIndex).pipe(map(x => x + 1));
|
|
@@ -73,6 +73,9 @@ export class SurveryLibComponent {
|
|
|
73
73
|
questionIdentify(index, item) {
|
|
74
74
|
return item.questionId;
|
|
75
75
|
}
|
|
76
|
+
questionGroupIdentify(index, item) {
|
|
77
|
+
return item.questionGroupId;
|
|
78
|
+
}
|
|
76
79
|
ngOnInit() {
|
|
77
80
|
this._Store.select(surveySelectors.selectedPageId).subscribe(value => {
|
|
78
81
|
this.fCtrls.currentPageId.setValue(value);
|
|
@@ -153,11 +156,11 @@ export class SurveryLibComponent {
|
|
|
153
156
|
return null;
|
|
154
157
|
}
|
|
155
158
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SurveryLibComponent, deps: [{ token: i1.SurveyLibService }, { token: i2.Store }, { token: i3.FormBuilder }, { token: i4.CheckRuleExpsUsecase }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
156
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: SurveryLibComponent, selector: "lib-survery-lib", inputs: { isPre: "isPre", surveyLanguageId: "surveyLanguageId", applicantKey: "applicantKey", isArabicLang: "isArabicLang" }, outputs: { surveyResultEmit: "surveyResultEmit", selectLanguageEmit: "selectLanguageEmit" }, ngImport: i0, template: "<div id=\"survery-card-{{surveryLibraryDivId}}\" class=\"survay-card\">\r\n <div [attr.id]=\"'survey-page_'+fCtrls.currentPageId.value\">\r\n <ng-container *ngFor=\"let item of
|
|
159
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: SurveryLibComponent, selector: "lib-survery-lib", inputs: { isPre: "isPre", surveyLanguageId: "surveyLanguageId", applicantKey: "applicantKey", isArabicLang: "isArabicLang" }, outputs: { surveyResultEmit: "surveyResultEmit", selectLanguageEmit: "selectLanguageEmit" }, ngImport: i0, template: "<div id=\"survery-card-{{surveryLibraryDivId}}\" class=\"survay-card\">\r\n <div [attr.id]=\"'survey-page_'+fCtrls.currentPageId.value\">\r\n <ng-container *ngFor=\"let item of pageQuestionGroups$(); trackBy:questionGroupIdentify\">\r\n <div class=\"survay-card\">\r\n <div class=\"survay-card-body\">\r\n <div class=\"survay-group\">\r\n <div class=\"title\">\r\n <h2 class=\"group-title\" [innerHTML]=\"item.questionGroupName\">\r\n </h2>\r\n <span class=\"group-sub-title \" [innerHTML]=\"item.questionGroupDescription\">\r\n </span>\r\n </div>\r\n <ng-container\r\n *ngFor=\"let question of (pageQuestions$() |filterQuestion : item.questionGroupId); trackBy:questionIdentify\">\r\n <lib-question-boolean-template #questionBooleanTemplate [setQuestion]=\"question\"\r\n *ngIf=\"question.questionType == questionTypeEnum.Boolean\">\r\n </lib-question-boolean-template>\r\n\r\n <lib-question-text-template #questionTextTemplate [setQuestion]=\"question\"\r\n *ngIf=\"question.questionType == questionTypeEnum.TextInput\"\r\n [isArabicLang]=\"isArabicLang\"></lib-question-text-template>\r\n\r\n <lib-question-feedback-template #questionFeedTemplate [setQuestion]=\"question\"\r\n *ngIf=\"question.questionType == questionTypeEnum.FeedBack\"\r\n [isArabicLang]=\"isArabicLang\"></lib-question-feedback-template>\r\n\r\n <lib-question-radio-button-template #questionRadioButtonTemplate [setQuestion]=\"question\"\r\n *ngIf=\"question.questionType == questionTypeEnum.RadioButton\">\r\n </lib-question-radio-button-template>\r\n\r\n <lib-question-dropdown-template #questionDropdownTemplate [setQuestion]=\"question\"\r\n *ngIf=\"question.questionType == questionTypeEnum.DropDown\"></lib-question-dropdown-template>\r\n\r\n <lib-question-dropdown-multi-template [setQuestion]=\"question\"\r\n *ngIf=\"question.questionType == questionTypeEnum.DropDownMulti\">\r\n </lib-question-dropdown-multi-template>\r\n\r\n <lib-question-check-box-template #questionCheckBoxTemplate [setQuestion]=\"question\"\r\n *ngIf=\"question.questionType == questionTypeEnum.CheckBox\">\r\n </lib-question-check-box-template>\r\n\r\n <lib-question-matrix-template #questionMatrixTemplate [setQuestion]=\"question\"\r\n *ngIf=\"question.questionType == questionTypeEnum.Matrix\">\r\n </lib-question-matrix-template>\r\n\r\n <lib-question-cascade-template #questionCascadeTemplate [setQuestion]=\"question\"\r\n *ngIf=\"question.questionType == questionTypeEnum.Cascade\"\r\n [applicantKey]=\"applicantKey\" [isPre]=\"isPre\" [surveyLanguageId]=\"surveyLanguageId\"\r\n [pageId]=\"question.surveyPageId\" [questionGroupId]=\"question.questionGroupId\"></lib-question-cascade-template>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"survay-card-footr\" *ngIf=\"fCtrls.showedSurveyPages.value.length > 0\">\r\n <div class=\"container\" style=\" justify-content: start;\">\r\n <div class=\"survay-pagination fw-bold\">\r\n <span>{{ curruntShowedSurveyPages$ | async}}</span>\r\n <span class=\"ms-2 me-2\">{{isArabicLang ? '\u0645\u0646' : 'of'}} </span>\r\n <span>{{fCtrls.showedSurveyPages.value.length}}</span>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: [".disable__btn{background-color:gray!important;cursor:not-allowed}.quastion{padding:10px}.quastion .quastion-title{color:var(--dark-100, #363636);text-align:right;font-family:Almarai;font-size:18px;font-style:normal;font-weight:700;line-height:20.6px}\n"], dependencies: [{ kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.QuestionTextTemplateComponent, selector: "lib-question-text-template", inputs: ["isArabicLang", "setQuestion", "isDisabled"] }, { kind: "component", type: i7.QuestionRadioButtonTemplateComponent, selector: "lib-question-radio-button-template", inputs: ["setQuestion"] }, { kind: "component", type: i8.QuestionCheckBoxTemplateComponent, selector: "lib-question-check-box-template", inputs: ["setQuestion"] }, { kind: "component", type: i9.QuestionDropdownTemplateComponent, selector: "lib-question-dropdown-template", inputs: ["setQuestion"], outputs: ["emitter"] }, { kind: "component", type: i10.QuestionMatrixTemplateComponent, selector: "lib-question-matrix-template", inputs: ["setQuestion"] }, { kind: "component", type: i11.QuestionBooleanTemplateComponent, selector: "lib-question-boolean-template", inputs: ["setQuestion"] }, { kind: "component", type: i12.QuestionDropdownMultiTemplateComponent, selector: "lib-question-dropdown-multi-template", inputs: ["setQuestion"] }, { kind: "component", type: i13.QuestionCascadeTemplateComponent, selector: "lib-question-cascade-template", inputs: ["pageId", "questionGroupId", "isPre", "surveyLanguageId", "applicantKey", "setQuestion"] }, { kind: "component", type: i14.QuestionFeedbackTemplateComponent, selector: "lib-question-feedback-template", inputs: ["isArabicLang", "setQuestion", "isDisabled"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "pipe", type: i15.FilterQuestionPipe, name: "filterQuestion" }] }); }
|
|
157
160
|
}
|
|
158
161
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SurveryLibComponent, decorators: [{
|
|
159
162
|
type: Component,
|
|
160
|
-
args: [{ selector: 'lib-survery-lib', template: "<div id=\"survery-card-{{surveryLibraryDivId}}\" class=\"survay-card\">\r\n <div [attr.id]=\"'survey-page_'+fCtrls.currentPageId.value\">\r\n <ng-container *ngFor=\"let item of
|
|
163
|
+
args: [{ selector: 'lib-survery-lib', template: "<div id=\"survery-card-{{surveryLibraryDivId}}\" class=\"survay-card\">\r\n <div [attr.id]=\"'survey-page_'+fCtrls.currentPageId.value\">\r\n <ng-container *ngFor=\"let item of pageQuestionGroups$(); trackBy:questionGroupIdentify\">\r\n <div class=\"survay-card\">\r\n <div class=\"survay-card-body\">\r\n <div class=\"survay-group\">\r\n <div class=\"title\">\r\n <h2 class=\"group-title\" [innerHTML]=\"item.questionGroupName\">\r\n </h2>\r\n <span class=\"group-sub-title \" [innerHTML]=\"item.questionGroupDescription\">\r\n </span>\r\n </div>\r\n <ng-container\r\n *ngFor=\"let question of (pageQuestions$() |filterQuestion : item.questionGroupId); trackBy:questionIdentify\">\r\n <lib-question-boolean-template #questionBooleanTemplate [setQuestion]=\"question\"\r\n *ngIf=\"question.questionType == questionTypeEnum.Boolean\">\r\n </lib-question-boolean-template>\r\n\r\n <lib-question-text-template #questionTextTemplate [setQuestion]=\"question\"\r\n *ngIf=\"question.questionType == questionTypeEnum.TextInput\"\r\n [isArabicLang]=\"isArabicLang\"></lib-question-text-template>\r\n\r\n <lib-question-feedback-template #questionFeedTemplate [setQuestion]=\"question\"\r\n *ngIf=\"question.questionType == questionTypeEnum.FeedBack\"\r\n [isArabicLang]=\"isArabicLang\"></lib-question-feedback-template>\r\n\r\n <lib-question-radio-button-template #questionRadioButtonTemplate [setQuestion]=\"question\"\r\n *ngIf=\"question.questionType == questionTypeEnum.RadioButton\">\r\n </lib-question-radio-button-template>\r\n\r\n <lib-question-dropdown-template #questionDropdownTemplate [setQuestion]=\"question\"\r\n *ngIf=\"question.questionType == questionTypeEnum.DropDown\"></lib-question-dropdown-template>\r\n\r\n <lib-question-dropdown-multi-template [setQuestion]=\"question\"\r\n *ngIf=\"question.questionType == questionTypeEnum.DropDownMulti\">\r\n </lib-question-dropdown-multi-template>\r\n\r\n <lib-question-check-box-template #questionCheckBoxTemplate [setQuestion]=\"question\"\r\n *ngIf=\"question.questionType == questionTypeEnum.CheckBox\">\r\n </lib-question-check-box-template>\r\n\r\n <lib-question-matrix-template #questionMatrixTemplate [setQuestion]=\"question\"\r\n *ngIf=\"question.questionType == questionTypeEnum.Matrix\">\r\n </lib-question-matrix-template>\r\n\r\n <lib-question-cascade-template #questionCascadeTemplate [setQuestion]=\"question\"\r\n *ngIf=\"question.questionType == questionTypeEnum.Cascade\"\r\n [applicantKey]=\"applicantKey\" [isPre]=\"isPre\" [surveyLanguageId]=\"surveyLanguageId\"\r\n [pageId]=\"question.surveyPageId\" [questionGroupId]=\"question.questionGroupId\"></lib-question-cascade-template>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"survay-card-footr\" *ngIf=\"fCtrls.showedSurveyPages.value.length > 0\">\r\n <div class=\"container\" style=\" justify-content: start;\">\r\n <div class=\"survay-pagination fw-bold\">\r\n <span>{{ curruntShowedSurveyPages$ | async}}</span>\r\n <span class=\"ms-2 me-2\">{{isArabicLang ? '\u0645\u0646' : 'of'}} </span>\r\n <span>{{fCtrls.showedSurveyPages.value.length}}</span>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: [".disable__btn{background-color:gray!important;cursor:not-allowed}.quastion{padding:10px}.quastion .quastion-title{color:var(--dark-100, #363636);text-align:right;font-family:Almarai;font-size:18px;font-style:normal;font-weight:700;line-height:20.6px}\n"] }]
|
|
161
164
|
}], ctorParameters: function () { return [{ type: i1.SurveyLibService }, { type: i2.Store }, { type: i3.FormBuilder }, { type: i4.CheckRuleExpsUsecase }]; }, propDecorators: { isPre: [{
|
|
162
165
|
type: Input
|
|
163
166
|
}], surveyLanguageId: [{
|
|
@@ -171,4 +174,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
|
|
|
171
174
|
}], selectLanguageEmit: [{
|
|
172
175
|
type: Output
|
|
173
176
|
}] } });
|
|
174
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VydmVyeS1saWIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvc3VydmVyeS1saWIvc3JjL2xpYi9zdXJ2ZXJ5LWxpYi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9zdXJ2ZXJ5LWxpYi9zcmMvbGliL3N1cnZleS1saWIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQTJCLE1BQU0sZUFBZSxDQUFDO0FBSXZILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxFQUFFLElBQUksYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTNDLE9BQU8sRUFBa0QsR0FBRyxFQUFNLElBQUksRUFBa0IsTUFBTSxNQUFNLENBQUM7QUFnQnJHLE9BQU8sRUFBZSxXQUFXLEVBQXlCLE1BQU0sZ0JBQWdCLENBQUM7QUFFakYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRWhFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUM1RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUVqRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMENBQTBDLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBUXpFLE1BQU0sT0FBTyxtQkFBbUI7SUFjOUIsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ2IsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFDbkMsT0FB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UUFDM0UsSUFBSSxlQUFlLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUM5QixPQUFPLGVBQWUsQ0FBQyxlQUFlLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQ3BEO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDOzhHQXpKVSxtQkFBbUI7a0dBQW5CLG1CQUFtQixrUkN2Q2hDLCtwSEFnRU07OzJGRHpCTyxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0UsaUJBQWlCO3dMQXVDbEIsS0FBSztzQkFBYixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBRUksZ0JBQWdCO3NCQUF6QixNQUFNO2dCQUNHLGtCQUFrQjtzQkFBM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFF1ZXJ5TGlzdCwgVmlld0NoaWxkcmVuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN1cnZleUxpYlNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3N1cnZleS1saWIuc2VydmljZSc7XHJcbmltcG9ydCB7IFN1cnZleUR0byB9IGZyb20gJy4uL3NoYXJlZC9kdG9zL3N1cnZleS5kdG8nO1xyXG5pbXBvcnQgeyBRdWVzdGlvbkNoaWxkT2ZTdXJ2ZXJ5TGliRm9ybUludGVyZmFjZSwgUnVsZVF1ZXN0aW9uQ2hpbGRPZlN1cnZlcnlMaWJGb3JtSW50ZXJmYWNlLCBTdXJ2ZXJ5TGliRm9ybUludGVyZmFjZSB9IGZyb20gJy4uL3NoYXJlZC9mb3JtLWludGVyZmFjZXMvc3VydmVyeS1saWIuZm9ybS1pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBRdWVzdGlvblR5cGVFbnVtIH0gZnJvbSAnLi4vc2hhcmVkL2VudW1zL3F1ZXN0aW9uLXR5cGUuZW51bSc7XHJcbmltcG9ydCB7IHY0IGFzIGd1aWRHZW5lcmF0b3IgfSBmcm9tICd1dWlkJztcclxuaW1wb3J0IHsgUXVlc3Rpb25BbnN3ZXJNb2RlbCB9IGZyb20gJy4uL3NoYXJlZC9tb2RlbHMvcXVlc3Rpb24tYW5zd2VyLm1vZGVsJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZGVib3VuY2VUaW1lLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBvZiwgdGFrZSwgd2l0aExhdGVzdEZyb20gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgTG9naWNQcm9wZXJ0eUVudW0gfSBmcm9tICcuLi9zaGFyZWQvZW51bXMvTG9naWMtUHJvcGVydHkuZW51bSc7XHJcbmltcG9ydCB7IFJ1bGVFeHBEdG8gfSBmcm9tICcuLi9zaGFyZWQvZHRvcy9ydWxlLWV4cC5kdG8nO1xyXG5pbXBvcnQgeyBPcGVyYXRvckVudW0gfSBmcm9tICcuLi9zaGFyZWQvZW51bXMvb3BlcmF0b3IuZW51bSc7XHJcbmltcG9ydCB7IExvZ2ljQWN0aW9uRW51bSB9IGZyb20gJy4uL3NoYXJlZC9lbnVtcy9sb2dpYy1hY3Rpb24uZW51bSc7XHJcbmltcG9ydCB7IENoZWNrUnVsZUV4cHNVc2VjYXNlIH0gZnJvbSAnLi91c2VjYXNlcy9jaGVjay1ydWxlLWV4cHMudXNlY2FzZSc7XHJcbmltcG9ydCB7IFN1cnZleVF1ZXN0aW9uUmVzdWx0IH0gZnJvbSAnLi4vc2hhcmVkL21vZGVscy9zdXJ2ZXJ5LXF1ZXN0aW9uLXJlc3VsdC5tb2RlbCc7XHJcbmltcG9ydCB7IERlZmF1bHRRdWVzdGlvbkFuc3dlckR0byB9IGZyb20gJy4uL3NoYXJlZC9kdG9zL2RlZmF1bHQtcXVlc3Rpb24tYW5zd2Vycy5kdG8nO1xyXG5pbXBvcnQgeyBRdWVzdGlvbkJvb2xlYW5UZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9xdWVzdGlvbi1ib29sZWFuLXRlbXBsYXRlL3F1ZXN0aW9uLWJvb2xlYW4tdGVtcGxhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUXVlc3Rpb25UZXh0VGVtcGxhdGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcXVlc3Rpb24tdGV4dC10ZW1wbGF0ZS9xdWVzdGlvbi10ZXh0LXRlbXBsYXRlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFF1ZXN0aW9uUmFkaW9CdXR0b25UZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9xdWVzdGlvbi1yYWRpby1idXR0b24tdGVtcGxhdGUvcXVlc3Rpb24tcmFkaW8tYnV0dG9uLXRlbXBsYXRlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFF1ZXN0aW9uRHJvcGRvd25UZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9xdWVzdGlvbi1kcm9wZG93bi10ZW1wbGF0ZS9xdWVzdGlvbi1kcm9wZG93bi10ZW1wbGF0ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBRdWVzdGlvbkNoZWNrQm94VGVtcGxhdGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcXVlc3Rpb24tY2hlY2stYm94LXRlbXBsYXRlL3F1ZXN0aW9uLWNoZWNrLWJveC10ZW1wbGF0ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBRdWVzdGlvbk1hdHJpeFRlbXBsYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3F1ZXN0aW9uLW1hdHJpeC10ZW1wbGF0ZS9xdWVzdGlvbi1tYXRyaXgtdGVtcGxhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3VydmV5TGFuZ3VhZ2VEdG8gfSBmcm9tICcuLi9zaGFyZWQvZHRvcy9zdXJ2ZXktbGFuZ3VhZ2UuZHRvJztcclxuaW1wb3J0IHsgU3VydmV5U2VjdGlvbkVudW0gfSBmcm9tICcuLi9zaGFyZWQvZW51bXMvc3VydmV5LXNlY3Rpb24uZW51bSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTdXJ2ZXlRdWVzdGlvbkR0byB9IGZyb20gJy4uL3NoYXJlZC9kdG9zL3N1cnZleS1xdWVzdGlvbi5kdG8nO1xyXG5pbXBvcnQgeyBJbnB1dFR5cGVFbnVtIH0gZnJvbSAnLi4vc2hhcmVkL2VudW1zL2lucHV0LXR5cGUuZW51bSc7XHJcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xyXG5pbXBvcnQgeyBzdXJ2ZXlTZWxlY3RvcnMgfSBmcm9tICcuL2NvcmUvc3RhdGVzL3N1cnZleS1zdG9yZS9zdXJ2ZXkuc2VsZWN0b3InO1xyXG5pbXBvcnQgeyBxdWVzdGlvbkdyb3VwU2VsZWN0b3JzIH0gZnJvbSAnLi9jb3JlL3N0YXRlcy9zdXJ2ZXktc3RvcmUvcXVlc3Rpb24tZ3JvdXAuc2VsZWN0b3InO1xyXG5pbXBvcnQgeyBxdWVzdGlvblNlbGVjdG9ycyB9IGZyb20gJy4vY29yZS9zdGF0ZXMvc3VydmV5LXN0b3JlL3F1ZXN0aW9uLnNlbGVjdG9yJztcclxuaW1wb3J0IHsgUXVlc3Rpb25OZ3J4TW9kZWwgfSBmcm9tICcuL2NvcmUvc3RhdGVzL2VudGl0ZXMvcXVlc3Rpb24uZW50aXR5JztcclxuaW1wb3J0IHsgc3VydmV5QWN0aW9ucyB9IGZyb20gJy4vY29yZS9zdGF0ZXMvc3VydmV5LXN0b3JlL3N1cnZleS5hY3Rpb24nO1xyXG5kZWNsYXJlIHZhciAkOiBhbnk7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1zdXJ2ZXJ5LWxpYicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3N1cnZleS1saWIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3N1cnZleS1saWIuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3VydmVyeUxpYkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XHJcblxyXG4gIHN1cnZlcnlMaWJyYXJ5RGl2SWQgPSBndWlkR2VuZXJhdG9yKCkgYXMgc3RyaW5nO1xyXG4gIHJlbG9hZERlZmF1bHRBbnN3ZXJJZCA9IGd1aWRHZW5lcmF0b3IoKSBhcyBzdHJpbmc7XHJcbiAgckZvcm06IEZvcm1Hcm91cDxTdXJ2ZXJ5TGliRm9ybUludGVyZmFjZT47XHJcbiAgcXVlc3Rpb25BbnN3ZXJBcnI6IFN1cnZleVF1ZXN0aW9uUmVzdWx0W10gPSBbXTtcclxuXHJcbiAgcGFnZVF1ZXN0aW9uR3JvdXBzJCA9IHRoaXMuX1N0b3JlLnNlbGVjdChxdWVzdGlvbkdyb3VwU2VsZWN0b3JzLnBhZ2VRdWVzdGlvbkdyb3Vwcyk7XHJcbiAgcGFnZVF1ZXN0aW9ucyQgPSB0aGlzLl9TdG9yZS5zZWxlY3QocXVlc3Rpb25TZWxlY3RvcnMucGFnZVF1ZXN0aW9ucyk7XHJcblxyXG4gIGlzRmlyc3RQYWdlJCA9IHRoaXMuX1N0b3JlLnNlbGVjdChzdXJ2ZXlTZWxlY3RvcnMuaXNGaXJzdFBhZ2UpO1xyXG4gIGlzTGFzdFBhZ2UkID0gdGhpcy5fU3RvcmUuc2VsZWN0KHN1cnZleVNlbGVjdG9ycy5pc0xhc3RQYWdlKTtcclxuICBjdXJydW50U2hvd2VkU3VydmV5UGFnZXMkID0gdGhpcy5fU3RvcmUuc2VsZWN0KHN1cnZleVNlbGVjdG9ycy5zZWxlY3RlZFBhZ2VJbmRleCkucGlwZShtYXAoeCA9PiB4ICsgMSkpO1xyXG5cclxuICBnZXQgZkN0cmxzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuckZvcm0uY29udHJvbHM7XHJcbiAgfVxyXG5cclxuICBnZXQgaXNGaXJzdFBhZ2UoKSB7XHJcbiAgICBjb25zdCBmb3JtVmFsdWUgPSB0aGlzLnJGb3JtLnZhbHVlO1xyXG4gICAgcmV0dXJuIGZvcm1WYWx1ZS5zaG93ZWRTdXJ2ZXlQYWdlcy5maW5kSW5kZXgoeCA9PiB4ID09IGZvcm1WYWx1ZS5jdXJyZW50UGFnZUlkKSA9PSAwO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHF1ZXN0aW9uVHlwZUVudW0oKSB7XHJcbiAgICByZXR1cm4gUXVlc3Rpb25UeXBlRW51bTtcclxuICB9XHJcblxyXG5cclxuICBnZXQgc3VydmV5UmVzdWx0KCk6IHsgYW5zd2VyczogU3VydmV5UXVlc3Rpb25SZXN1bHRbXSwgY3VycmVudFBhZ2VJbmRleDogbnVtYmVyIH0ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgY3VycmVudFBhZ2VJbmRleDogdGhpcy5mQ3RybHMuY3VycmVudFBhZ2VJZC52YWx1ZSxcclxuICAgICAgYW5zd2VyczogdGhpcy5xdWVzdGlvbkFuc3dlckFyclxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQElucHV0KCkgaXNQcmU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBzdXJ2ZXlMYW5ndWFnZUlkOiBudW1iZXIgPSBudWxsO1xyXG4gIEBJbnB1dCgpIGFwcGxpY2FudEtleTogc3RyaW5nID0gbnVsbDtcclxuICBASW5wdXQoKSBpc0FyYWJpY0xhbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQE91dHB1dCgpIHN1cnZleVJlc3VsdEVtaXQgPSBuZXcgRXZlbnRFbWl0dGVyPFN1cnZleVF1ZXN0aW9uUmVzdWx0W10+KCk7XHJcbiAgQE91dHB1dCgpIHNlbGVjdExhbmd1YWdlRW1pdCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9zdXJ2ZXlMaWJTZXJ2aWNlOiBTdXJ2ZXlMaWJTZXJ2aWNlLCBwcml2YXRlIF9TdG9yZTogU3RvcmVcclxuICAgICwgcHJpdmF0ZSBfZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLCBwcml2YXRlIF9jaGVja1J1bGVFeHBzVXNlY2FzZTogQ2hlY2tSdWxlRXhwc1VzZWNhc2UpIHtcclxuXHJcbiAgICB0aGlzLnJGb3JtID0gdGhpcy5fZm9ybUJ1aWxkZXIuZ3JvdXA8U3VydmVyeUxpYkZvcm1JbnRlcmZhY2U+KHtcclxuICAgICAgY3VycmVudFBhZ2VJZDogbmV3IEZvcm1Db250cm9sKG51bGwpLFxyXG4gICAgICBzaG93ZWRTdXJ2ZXlQYWdlczogbmV3IEZvcm1Db250cm9sKFtdKVxyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5fU3RvcmUuc2VsZWN0KHF1ZXN0aW9uU2VsZWN0b3JzLnF1ZXN0aW9uQW5zd2Vycykuc3Vic2NyaWJlKGFyciA9PiB7XHJcbiAgICAgIHRoaXMucXVlc3Rpb25BbnN3ZXJBcnIgPSBhcnI7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gIH1cclxuXHJcbiAgcXVlc3Rpb25JZGVudGlmeShpbmRleCwgaXRlbTogUXVlc3Rpb25OZ3J4TW9kZWwpIHtcclxuICAgIHJldHVybiBpdGVtLnF1ZXN0aW9uSWQ7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuX1N0b3JlLnNlbGVjdChzdXJ2ZXlTZWxlY3RvcnMuc2VsZWN0ZWRQYWdlSWQpLnN1YnNjcmliZSh2YWx1ZSA9PiB7XHJcbiAgICAgIHRoaXMuZkN0cmxzLmN1cnJlbnRQYWdlSWQuc2V0VmFsdWUodmFsdWUpO1xyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5fU3RvcmUuc2VsZWN0KHN1cnZleVNlbGVjdG9ycy5zaG93ZWRTdXJ2ZXlQYWdlcykuc3Vic2NyaWJlKHZhbHVlID0+IHtcclxuICAgICAgdGhpcy5mQ3RybHMuc2hvd2VkU3VydmV5UGFnZXMuc2V0VmFsdWUodmFsdWUpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBvblBhZ2dpbmdOZXh0KCkge1xyXG4gICAgdGhpcy5fU3RvcmUuc2VsZWN0KHF1ZXN0aW9uU2VsZWN0b3JzLnBhZ2VRdWVzdGlvbnMpLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKGFyciA9PiB7XHJcbiAgICAgIHZhciBpbnZhbGlkUmVjb3JkcyA9IHRoaXMuaGF2ZUluVmFsaWRhdGVRdWVzdGlvbnMoYXJyKTtcclxuXHJcbiAgICAgIGlmIChpbnZhbGlkUmVjb3Jkcy5sZW5ndGggPT0gMCkge1xyXG5cclxuICAgICAgICBjb25zdCBuZXh0UGFnZUlkID0gdGhpcy5nZXROZXh0U2hvd2VkUGFnZSgpO1xyXG5cclxuICAgICAgICBpZiAobmV4dFBhZ2VJZCAhPSBudWxsKSB7XHJcbiAgICAgICAgICB0aGlzLl9TdG9yZS5kaXNwYXRjaChzdXJ2ZXlBY3Rpb25zLnVwZGF0ZVBhZ2VJZCh7IHBhZ2VJZDogbmV4dFBhZ2VJZCB9KSk7XHJcblxyXG4gICAgICAgICAgJCgnaHRtbCwgYm9keScpLmFuaW1hdGUoe1xyXG4gICAgICAgICAgICBzY3JvbGxUb3A6ICQoYCNzdXJ2ZXJ5LWNhcmQtJHt0aGlzLnN1cnZlcnlMaWJyYXJ5RGl2SWR9YCkub2Zmc2V0KCkudG9wIC0gMzBcclxuICAgICAgICAgIH0sIDMwMCk7XHJcblxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLnN1cnZleVJlc3VsdEVtaXQuZW1pdCh0aGlzLnF1ZXN0aW9uQW5zd2VyQXJyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdmFyIGZpcnN0UXVlc3Rpb24gPSAkKCcuaW52YWxpZC1xdWVzdGlvbicpWzBdO1xyXG4gICAgICAgICQoJ2h0bWwsIGJvZHknKS5hbmltYXRlKHtcclxuICAgICAgICAgIHNjcm9sbFRvcDogJChmaXJzdFF1ZXN0aW9uKS5vZmZzZXQoKS50b3AgLSAyNTBcclxuICAgICAgICB9LCAzMDApO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9uUGFnZ2luZ0JhY2soKSB7XHJcbiAgICBjb25zdCBwcmV2UGFnZUlkID0gdGhpcy5nZXRQcmV2U2hvd2VkUGFnZSgpO1xyXG4gICAgaWYgKHByZXZQYWdlSWQgIT0gbnVsbCkge1xyXG4gICAgICB0aGlzLl9TdG9yZS5kaXNwYXRjaChzdXJ2ZXlBY3Rpb25zLnVwZGF0ZVBhZ2VJZCh7IHBhZ2VJZDogcHJldlBhZ2VJZCB9KSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGhhdmVJblZhbGlkYXRlUXVlc3Rpb25zKHF1ZXN0aW9uQXJyOiBRdWVzdGlvbk5ncnhNb2RlbFtdKSB7XHJcbiAgICBjb25zdCBmb3JtVmFsdWUgPSB0aGlzLnJGb3JtLnZhbHVlO1xyXG4gICAgdmFyIGludmFsaWRSZWNvcmRzID0gW107XHJcblxyXG4gICAgdmFyIGFyciA9IHF1ZXN0aW9uQXJyLmZpbHRlcih4ID0+IHguaXNEaXNhYmxlZCA9PSBmYWxzZSAmJiB4LmlzU2hvdyA9PSB0cnVlKTtcclxuICAgIGFyci5tYXAoeCA9PiB7XHJcbiAgICAgIGlmICh4LmlzUmVxdWlyZWQgPT0gdHJ1ZSAmJiB4LmlzVmFsaWQgIT0gdHJ1ZSAmJiB4LmlzTWF0cml4R3JvdXAgIT0gdHJ1ZSkge1xyXG4gICAgICAgIGludmFsaWRSZWNvcmRzLnB1c2goeCk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgaWYgKHgucXVlc3Rpb25UeXBlID09IFF1ZXN0aW9uVHlwZUVudW0uVGV4dElucHV0ICYmIHguaW5wdXRUeXBlSWQgPT0gSW5wdXRUeXBlRW51bS5FbWFpbCkge1xyXG4gICAgICAgICAgaWYgKHguYW5zd2VyVGV4dD8udHJpbSgpICYmIHguaXNWYWxpZCAhPSB0cnVlKSB7XHJcbiAgICAgICAgICAgIGludmFsaWRSZWNvcmRzLnB1c2goeCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICBpZiAoaW52YWxpZFJlY29yZHMubGVuZ3RoID4gMCkge1xyXG4gICAgICAkKGAjc3VydmV5LXBhZ2VfJHtmb3JtVmFsdWUuY3VycmVudFBhZ2VJZH1gKS5hZGRDbGFzcygnc3VydmV5LXBhZ2Vfc3VibWl0dGVkJyk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAkKGAjc3VydmV5LXBhZ2VfJHtmb3JtVmFsdWUuY3VycmVudFBhZ2VJZH1gKS5yZW1vdmVDbGFzcygnc3VydmV5LXBhZ2Vfc3VibWl0dGVkJyk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGludmFsaWRSZWNvcmRzO1xyXG4gIH1cclxuXHJcblxyXG4gIHByaXZhdGUgZ2V0TmV4dFNob3dlZFBhZ2UoKSB7XHJcbiAgICBjb25zdCBmb3JtVmFsdWUgPSB0aGlzLnJGb3JtLnZhbHVlO1xyXG4gICAgdmFyIHNob3dlZFBhZ2VzID0gZm9ybVZhbHVlLnNob3dlZFN1cnZleVBhZ2VzO1xyXG4gICAgdmFyIG5leHRTaG93ZWRQYWdlcyA9IHNob3dlZFBhZ2VzLmZpbHRlcih4ID0+IHggPiBmb3JtVmFsdWUuY3VycmVudFBhZ2VJZCk7XHJcbiAgICBpZiAobmV4dFNob3dlZFBhZ2VzLmxlbmd0aCA+IDApIHtcclxuICAgICAgcmV0dXJuIG5leHRTaG93ZWRQYWdlc1swXTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRQcmV2U2hvd2VkUGFnZSgpIHtcclxuICAgIGNvbnN0IGZvcm1WYWx1ZSA9IHRoaXMuckZvcm0udmFsdWU7XHJcbiAgICB2YXIgc2hvd2VkUGFnZXMgPSBmb3JtVmFsdWUuc2hvd2VkU3VydmV5UGFnZXM7XHJcbiAgICB2YXIgcHJldlNob3dlZFBhZ2VzID0gc2hvd2VkUGFnZXMuZmlsdGVyKHggPT4geCA8IGZvcm1WYWx1ZS5jdXJyZW50UGFnZUlkKTtcclxuICAgIGlmIChwcmV2U2hvd2VkUGFnZXMubGVuZ3RoID4gMCkge1xyXG4gICAgICByZXR1cm4gcHJldlNob3dlZFBhZ2VzW3ByZXZTaG93ZWRQYWdlcy5sZW5ndGggLSAxXTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGlkPVwic3VydmVyeS1jYXJkLXt7c3VydmVyeUxpYnJhcnlEaXZJZH19XCIgY2xhc3M9XCJzdXJ2YXktY2FyZFwiPlxyXG4gIDxkaXYgW2F0dHIuaWRdPVwiJ3N1cnZleS1wYWdlXycrZkN0cmxzLmN1cnJlbnRQYWdlSWQudmFsdWVcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgKHBhZ2VRdWVzdGlvbkdyb3VwcyQgfCBhc3luYylcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cInN1cnZheS1jYXJkXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInN1cnZheS1jYXJkLWJvZHlcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdXJ2YXktZ3JvdXBcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRpdGxlXCI+XHJcbiAgICAgICAgICAgICAgPGgyIGNsYXNzPVwiZ3JvdXAtdGl0bGVcIiBbaW5uZXJIVE1MXT1cIml0ZW0ucXVlc3Rpb25Hcm91cE5hbWVcIj5cclxuICAgICAgICAgICAgICA8L2gyPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ3JvdXAtc3ViLXRpdGxlIFwiIFtpbm5lckhUTUxdPVwiaXRlbS5xdWVzdGlvbkdyb3VwRGVzY3JpcHRpb25cIj5cclxuICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IHF1ZXN0aW9uIG9mICgocGFnZVF1ZXN0aW9ucyR8YXN5bmMpIHxmaWx0ZXJRdWVzdGlvbiA6IGl0ZW0ucXVlc3Rpb25Hcm91cElkKTsgdHJhY2tCeTpxdWVzdGlvbklkZW50aWZ5XCI+XHJcbiAgICAgICAgICAgICAgPGxpYi1xdWVzdGlvbi1ib29sZWFuLXRlbXBsYXRlICNxdWVzdGlvbkJvb2xlYW5UZW1wbGF0ZSBbc2V0UXVlc3Rpb25dPVwicXVlc3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJxdWVzdGlvbi5xdWVzdGlvblR5cGUgPT0gcXVlc3Rpb25UeXBlRW51bS5Cb29sZWFuXCI+XHJcbiAgICAgICAgICAgICAgPC9saWItcXVlc3Rpb24tYm9vbGVhbi10ZW1wbGF0ZT5cclxuXHJcbiAgICAgICAgICAgICAgPGxpYi1xdWVzdGlvbi10ZXh0LXRlbXBsYXRlICNxdWVzdGlvblRleHRUZW1wbGF0ZSBbc2V0UXVlc3Rpb25dPVwicXVlc3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJxdWVzdGlvbi5xdWVzdGlvblR5cGUgPT0gcXVlc3Rpb25UeXBlRW51bS5UZXh0SW5wdXRcIlxyXG4gICAgICAgICAgICAgICAgW2lzQXJhYmljTGFuZ109XCJpc0FyYWJpY0xhbmdcIj48L2xpYi1xdWVzdGlvbi10ZXh0LXRlbXBsYXRlPlxyXG5cclxuICAgICAgICAgICAgICAgIDxsaWItcXVlc3Rpb24tZmVlZGJhY2stdGVtcGxhdGUgI3F1ZXN0aW9uRmVlZFRlbXBsYXRlIFtzZXRRdWVzdGlvbl09XCJxdWVzdGlvblwiXHJcbiAgICAgICAgICAgICAgICAqbmdJZj1cInF1ZXN0aW9uLnF1ZXN0aW9uVHlwZSA9PSBxdWVzdGlvblR5cGVFbnVtLkZlZWRCYWNrXCJcclxuICAgICAgICAgICAgICAgIFtpc0FyYWJpY0xhbmddPVwiaXNBcmFiaWNMYW5nXCI+PC9saWItcXVlc3Rpb24tZmVlZGJhY2stdGVtcGxhdGU+XHJcblxyXG4gICAgICAgICAgICAgIDxsaWItcXVlc3Rpb24tcmFkaW8tYnV0dG9uLXRlbXBsYXRlICNxdWVzdGlvblJhZGlvQnV0dG9uVGVtcGxhdGUgW3NldFF1ZXN0aW9uXT1cInF1ZXN0aW9uXCJcclxuICAgICAgICAgICAgICAgICpuZ0lmPVwicXVlc3Rpb24ucXVlc3Rpb25UeXBlID09IHF1ZXN0aW9uVHlwZUVudW0uUmFkaW9CdXR0b25cIj5cclxuICAgICAgICAgICAgICA8L2xpYi1xdWVzdGlvbi1yYWRpby1idXR0b24tdGVtcGxhdGU+XHJcblxyXG4gICAgICAgICAgICAgIDxsaWItcXVlc3Rpb24tZHJvcGRvd24tdGVtcGxhdGUgI3F1ZXN0aW9uRHJvcGRvd25UZW1wbGF0ZSBbc2V0UXVlc3Rpb25dPVwicXVlc3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJxdWVzdGlvbi5xdWVzdGlvblR5cGUgPT0gcXVlc3Rpb25UeXBlRW51bS5Ecm9wRG93blwiPjwvbGliLXF1ZXN0aW9uLWRyb3Bkb3duLXRlbXBsYXRlPlxyXG5cclxuICAgICAgICAgICAgICA8bGliLXF1ZXN0aW9uLWRyb3Bkb3duLW11bHRpLXRlbXBsYXRlIFtzZXRRdWVzdGlvbl09XCJxdWVzdGlvblwiXHJcbiAgICAgICAgICAgICAgICAqbmdJZj1cInF1ZXN0aW9uLnF1ZXN0aW9uVHlwZSA9PSBxdWVzdGlvblR5cGVFbnVtLkRyb3BEb3duTXVsdGlcIj5cclxuICAgICAgICAgICAgICA8L2xpYi1xdWVzdGlvbi1kcm9wZG93bi1tdWx0aS10ZW1wbGF0ZT5cclxuXHJcbiAgICAgICAgICAgICAgPGxpYi1xdWVzdGlvbi1jaGVjay1ib3gtdGVtcGxhdGUgI3F1ZXN0aW9uQ2hlY2tCb3hUZW1wbGF0ZSBbc2V0UXVlc3Rpb25dPVwicXVlc3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJxdWVzdGlvbi5xdWVzdGlvblR5cGUgPT0gcXVlc3Rpb25UeXBlRW51bS5DaGVja0JveFwiPlxyXG4gICAgICAgICAgICAgIDwvbGliLXF1ZXN0aW9uLWNoZWNrLWJveC10ZW1wbGF0ZT5cclxuXHJcbiAgICAgICAgICAgICAgPGxpYi1xdWVzdGlvbi1tYXRyaXgtdGVtcGxhdGUgI3F1ZXN0aW9uTWF0cml4VGVtcGxhdGUgW3NldFF1ZXN0aW9uXT1cInF1ZXN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAqbmdJZj1cInF1ZXN0aW9uLnF1ZXN0aW9uVHlwZSA9PSBxdWVzdGlvblR5cGVFbnVtLk1hdHJpeFwiPlxyXG4gICAgICAgICAgICAgIDwvbGliLXF1ZXN0aW9uLW1hdHJpeC10ZW1wbGF0ZT5cclxuXHJcbiAgICAgICAgICAgICAgIDxsaWItcXVlc3Rpb24tY2FzY2FkZS10ZW1wbGF0ZSAjcXVlc3Rpb25DYXNjYWRlVGVtcGxhdGUgW3NldFF1ZXN0aW9uXT1cInF1ZXN0aW9uXCJcclxuICAgICAgICAgICAgICAgKm5nSWY9XCJxdWVzdGlvbi5xdWVzdGlvblR5cGUgPT0gcXVlc3Rpb25UeXBlRW51bS5DYXNjYWRlXCJcclxuICAgICAgICAgICAgICAgIFthcHBsaWNhbnRLZXldPVwiYXBwbGljYW50S2V5XCIgW2lzUHJlXT1cImlzUHJlXCIgW3N1cnZleUxhbmd1YWdlSWRdPVwic3VydmV5TGFuZ3VhZ2VJZFwiXHJcbiAgICAgICAgICAgICAgICBbcGFnZUlkXT1cInF1ZXN0aW9uLnN1cnZleVBhZ2VJZFwiIFtxdWVzdGlvbkdyb3VwSWRdPVwicXVlc3Rpb24ucXVlc3Rpb25Hcm91cElkXCI+PC9saWItcXVlc3Rpb24tY2FzY2FkZS10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwic3VydmF5LWNhcmQtZm9vdHJcIiAqbmdJZj1cImZDdHJscy5zaG93ZWRTdXJ2ZXlQYWdlcy52YWx1ZS5sZW5ndGggPiAwXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCIgc3R5bGU9XCIganVzdGlmeS1jb250ZW50OiBzdGFydDtcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cInN1cnZheS1wYWdpbmF0aW9uIGZ3LWJvbGRcIj5cclxuICAgICAgICA8c3Bhbj57eyBjdXJydW50U2hvd2VkU3VydmV5UGFnZXMkIHwgYXN5bmN9fTwvc3Bhbj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cIm1zLTIgbWUtMlwiPnt7aXNBcmFiaWNMYW5nID8gJ9mF2YYnIDogJ29mJ319IDwvc3Bhbj5cclxuICAgICAgICA8c3Bhbj57e2ZDdHJscy5zaG93ZWRTdXJ2ZXlQYWdlcy52YWx1ZS5sZW5ndGh9fTwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+Il19
|
|
177
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VydmVyeS1saWIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvc3VydmVyeS1saWIvc3JjL2xpYi9zdXJ2ZXJ5LWxpYi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9zdXJ2ZXJ5LWxpYi9zcmMvbGliL3N1cnZleS1saWIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQTJCLE1BQU0sZUFBZSxDQUFDO0FBSXZILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxFQUFFLElBQUksYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTNDLE9BQU8sRUFBa0QsR0FBRyxFQUFNLElBQUksRUFBa0IsTUFBTSxNQUFNLENBQUM7QUFnQnJHLE9BQU8sRUFBZSxXQUFXLEVBQXlCLE1BQU0sZ0JBQWdCLENBQUM7QUFFakYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRWhFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUM1RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUVqRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMENBQTBDLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBU3pFLE1BQU0sT0FBTyxtQkFBbUI7SUFjOUIsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ2IsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFDbkMsT0FB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V0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDM0UsSUFBSSxlQUFlLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUM5QixPQUFPLGVBQWUsQ0FBQyxlQUFlLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQ3BEO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDOzhHQTdKVSxtQkFBbUI7a0dBQW5CLG1CQUFtQixrUkN4Q2hDLGdySEFnRU07OzJGRHhCTyxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0UsaUJBQWlCO3dMQXVDbEIsS0FBSztzQkFBYixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBRUksZ0JBQWdCO3NCQUF6QixNQUFNO2dCQUNHLGtCQUFrQjtzQkFBM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFF1ZXJ5TGlzdCwgVmlld0NoaWxkcmVuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN1cnZleUxpYlNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3N1cnZleS1saWIuc2VydmljZSc7XHJcbmltcG9ydCB7IFN1cnZleUR0byB9IGZyb20gJy4uL3NoYXJlZC9kdG9zL3N1cnZleS5kdG8nO1xyXG5pbXBvcnQgeyBRdWVzdGlvbkNoaWxkT2ZTdXJ2ZXJ5TGliRm9ybUludGVyZmFjZSwgUnVsZVF1ZXN0aW9uQ2hpbGRPZlN1cnZlcnlMaWJGb3JtSW50ZXJmYWNlLCBTdXJ2ZXJ5TGliRm9ybUludGVyZmFjZSB9IGZyb20gJy4uL3NoYXJlZC9mb3JtLWludGVyZmFjZXMvc3VydmVyeS1saWIuZm9ybS1pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBRdWVzdGlvblR5cGVFbnVtIH0gZnJvbSAnLi4vc2hhcmVkL2VudW1zL3F1ZXN0aW9uLXR5cGUuZW51bSc7XHJcbmltcG9ydCB7IHY0IGFzIGd1aWRHZW5lcmF0b3IgfSBmcm9tICd1dWlkJztcclxuaW1wb3J0IHsgUXVlc3Rpb25BbnN3ZXJNb2RlbCB9IGZyb20gJy4uL3NoYXJlZC9tb2RlbHMvcXVlc3Rpb24tYW5zd2VyLm1vZGVsJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZGVib3VuY2VUaW1lLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBvZiwgdGFrZSwgd2l0aExhdGVzdEZyb20gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgTG9naWNQcm9wZXJ0eUVudW0gfSBmcm9tICcuLi9zaGFyZWQvZW51bXMvTG9naWMtUHJvcGVydHkuZW51bSc7XHJcbmltcG9ydCB7IFJ1bGVFeHBEdG8gfSBmcm9tICcuLi9zaGFyZWQvZHRvcy9ydWxlLWV4cC5kdG8nO1xyXG5pbXBvcnQgeyBPcGVyYXRvckVudW0gfSBmcm9tICcuLi9zaGFyZWQvZW51bXMvb3BlcmF0b3IuZW51bSc7XHJcbmltcG9ydCB7IExvZ2ljQWN0aW9uRW51bSB9IGZyb20gJy4uL3NoYXJlZC9lbnVtcy9sb2dpYy1hY3Rpb24uZW51bSc7XHJcbmltcG9ydCB7IENoZWNrUnVsZUV4cHNVc2VjYXNlIH0gZnJvbSAnLi91c2VjYXNlcy9jaGVjay1ydWxlLWV4cHMudXNlY2FzZSc7XHJcbmltcG9ydCB7IFN1cnZleVF1ZXN0aW9uUmVzdWx0IH0gZnJvbSAnLi4vc2hhcmVkL21vZGVscy9zdXJ2ZXJ5LXF1ZXN0aW9uLXJlc3VsdC5tb2RlbCc7XHJcbmltcG9ydCB7IERlZmF1bHRRdWVzdGlvbkFuc3dlckR0byB9IGZyb20gJy4uL3NoYXJlZC9kdG9zL2RlZmF1bHQtcXVlc3Rpb24tYW5zd2Vycy5kdG8nO1xyXG5pbXBvcnQgeyBRdWVzdGlvbkJvb2xlYW5UZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9xdWVzdGlvbi1ib29sZWFuLXRlbXBsYXRlL3F1ZXN0aW9uLWJvb2xlYW4tdGVtcGxhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUXVlc3Rpb25UZXh0VGVtcGxhdGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcXVlc3Rpb24tdGV4dC10ZW1wbGF0ZS9xdWVzdGlvbi10ZXh0LXRlbXBsYXRlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFF1ZXN0aW9uUmFkaW9CdXR0b25UZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9xdWVzdGlvbi1yYWRpby1idXR0b24tdGVtcGxhdGUvcXVlc3Rpb24tcmFkaW8tYnV0dG9uLXRlbXBsYXRlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFF1ZXN0aW9uRHJvcGRvd25UZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9xdWVzdGlvbi1kcm9wZG93bi10ZW1wbGF0ZS9xdWVzdGlvbi1kcm9wZG93bi10ZW1wbGF0ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBRdWVzdGlvbkNoZWNrQm94VGVtcGxhdGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcXVlc3Rpb24tY2hlY2stYm94LXRlbXBsYXRlL3F1ZXN0aW9uLWNoZWNrLWJveC10ZW1wbGF0ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBRdWVzdGlvbk1hdHJpeFRlbXBsYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3F1ZXN0aW9uLW1hdHJpeC10ZW1wbGF0ZS9xdWVzdGlvbi1tYXRyaXgtdGVtcGxhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3VydmV5TGFuZ3VhZ2VEdG8gfSBmcm9tICcuLi9zaGFyZWQvZHRvcy9zdXJ2ZXktbGFuZ3VhZ2UuZHRvJztcclxuaW1wb3J0IHsgU3VydmV5U2VjdGlvbkVudW0gfSBmcm9tICcuLi9zaGFyZWQvZW51bXMvc3VydmV5LXNlY3Rpb24uZW51bSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTdXJ2ZXlRdWVzdGlvbkR0byB9IGZyb20gJy4uL3NoYXJlZC9kdG9zL3N1cnZleS1xdWVzdGlvbi5kdG8nO1xyXG5pbXBvcnQgeyBJbnB1dFR5cGVFbnVtIH0gZnJvbSAnLi4vc2hhcmVkL2VudW1zL2lucHV0LXR5cGUuZW51bSc7XHJcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xyXG5pbXBvcnQgeyBzdXJ2ZXlTZWxlY3RvcnMgfSBmcm9tICcuL2NvcmUvc3RhdGVzL3N1cnZleS1zdG9yZS9zdXJ2ZXkuc2VsZWN0b3InO1xyXG5pbXBvcnQgeyBxdWVzdGlvbkdyb3VwU2VsZWN0b3JzIH0gZnJvbSAnLi9jb3JlL3N0YXRlcy9zdXJ2ZXktc3RvcmUvcXVlc3Rpb24tZ3JvdXAuc2VsZWN0b3InO1xyXG5pbXBvcnQgeyBxdWVzdGlvblNlbGVjdG9ycyB9IGZyb20gJy4vY29yZS9zdGF0ZXMvc3VydmV5LXN0b3JlL3F1ZXN0aW9uLnNlbGVjdG9yJztcclxuaW1wb3J0IHsgUXVlc3Rpb25OZ3J4TW9kZWwgfSBmcm9tICcuL2NvcmUvc3RhdGVzL2VudGl0ZXMvcXVlc3Rpb24uZW50aXR5JztcclxuaW1wb3J0IHsgc3VydmV5QWN0aW9ucyB9IGZyb20gJy4vY29yZS9zdGF0ZXMvc3VydmV5LXN0b3JlL3N1cnZleS5hY3Rpb24nO1xyXG5pbXBvcnQgeyBRdWVzdGlvbkdyb3VwTmdyeE1vZGVsIH0gZnJvbSAnLi9jb3JlL3N0YXRlcy9lbnRpdGVzL3F1ZXN0aW9uLWdyb3VwLmVudGl0eSc7XHJcbmRlY2xhcmUgdmFyICQ6IGFueTtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXN1cnZlcnktbGliJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc3VydmV5LWxpYi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vc3VydmV5LWxpYi5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTdXJ2ZXJ5TGliQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcclxuXHJcbiAgc3VydmVyeUxpYnJhcnlEaXZJZCA9IGd1aWRHZW5lcmF0b3IoKSBhcyBzdHJpbmc7XHJcbiAgcmVsb2FkRGVmYXVsdEFuc3dlcklkID0gZ3VpZEdlbmVyYXRvcigpIGFzIHN0cmluZztcclxuICByRm9ybTogRm9ybUdyb3VwPFN1cnZlcnlMaWJGb3JtSW50ZXJmYWNlPjtcclxuICBxdWVzdGlvbkFuc3dlckFycjogU3VydmV5UXVlc3Rpb25SZXN1bHRbXSA9IFtdO1xyXG5cclxuICBwYWdlUXVlc3Rpb25Hcm91cHMkID0gdGhpcy5fU3RvcmUuc2VsZWN0U2lnbmFsKHF1ZXN0aW9uR3JvdXBTZWxlY3RvcnMucGFnZVF1ZXN0aW9uR3JvdXBzKTtcclxuICBwYWdlUXVlc3Rpb25zJCA9IHRoaXMuX1N0b3JlLnNlbGVjdFNpZ25hbChxdWVzdGlvblNlbGVjdG9ycy5wYWdlUXVlc3Rpb25zKTtcclxuXHJcbiAgaXNGaXJzdFBhZ2UkID0gdGhpcy5fU3RvcmUuc2VsZWN0KHN1cnZleVNlbGVjdG9ycy5pc0ZpcnN0UGFnZSk7XHJcbiAgaXNMYXN0UGFnZSQgPSB0aGlzLl9TdG9yZS5zZWxlY3Qoc3VydmV5U2VsZWN0b3JzLmlzTGFzdFBhZ2UpO1xyXG4gIGN1cnJ1bnRTaG93ZWRTdXJ2ZXlQYWdlcyQgPSB0aGlzLl9TdG9yZS5zZWxlY3Qoc3VydmV5U2VsZWN0b3JzLnNlbGVjdGVkUGFnZUluZGV4KS5waXBlKG1hcCh4ID0+IHggKyAxKSk7XHJcblxyXG4gIGdldCBmQ3RybHMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5yRm9ybS5jb250cm9scztcclxuICB9XHJcblxyXG4gIGdldCBpc0ZpcnN0UGFnZSgpIHtcclxuICAgIGNvbnN0IGZvcm1WYWx1ZSA9IHRoaXMuckZvcm0udmFsdWU7XHJcbiAgICByZXR1cm4gZm9ybVZhbHVlLnNob3dlZFN1cnZleVBhZ2VzLmZpbmRJbmRleCh4ID0+IHggPT0gZm9ybVZhbHVlLmN1cnJlbnRQYWdlSWQpID09IDA7XHJcbiAgfVxyXG5cclxuICBnZXQgcXVlc3Rpb25UeXBlRW51bSgpIHtcclxuICAgIHJldHVybiBRdWVzdGlvblR5cGVFbnVtO1xyXG4gIH1cclxuXHJcblxyXG4gIGdldCBzdXJ2ZXlSZXN1bHQoKTogeyBhbnN3ZXJzOiBTdXJ2ZXlRdWVzdGlvblJlc3VsdFtdLCBjdXJyZW50UGFnZUluZGV4OiBudW1iZXIgfSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBjdXJyZW50UGFnZUluZGV4OiB0aGlzLmZDdHJscy5jdXJyZW50UGFnZUlkLnZhbHVlLFxyXG4gICAgICBhbnN3ZXJzOiB0aGlzLnF1ZXN0aW9uQW5zd2VyQXJyXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKSBpc1ByZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHN1cnZleUxhbmd1YWdlSWQ6IG51bWJlciA9IG51bGw7XHJcbiAgQElucHV0KCkgYXBwbGljYW50S2V5OiBzdHJpbmcgPSBudWxsO1xyXG4gIEBJbnB1dCgpIGlzQXJhYmljTGFuZzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBAT3V0cHV0KCkgc3VydmV5UmVzdWx0RW1pdCA9IG5ldyBFdmVudEVtaXR0ZXI8U3VydmV5UXVlc3Rpb25SZXN1bHRbXT4oKTtcclxuICBAT3V0cHV0KCkgc2VsZWN0TGFuZ3VhZ2VFbWl0ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX3N1cnZleUxpYlNlcnZpY2U6IFN1cnZleUxpYlNlcnZpY2UsIHByaXZhdGUgX1N0b3JlOiBTdG9yZVxyXG4gICAgLCBwcml2YXRlIF9mb3JtQnVpbGRlcjogRm9ybUJ1aWxkZXIsIHByaXZhdGUgX2NoZWNrUnVsZUV4cHNVc2VjYXNlOiBDaGVja1J1bGVFeHBzVXNlY2FzZSkge1xyXG5cclxuICAgIHRoaXMuckZvcm0gPSB0aGlzLl9mb3JtQnVpbGRlci5ncm91cDxTdXJ2ZXJ5TGliRm9ybUludGVyZmFjZT4oe1xyXG4gICAgICBjdXJyZW50UGFnZUlkOiBuZXcgRm9ybUNvbnRyb2wobnVsbCksXHJcbiAgICAgIHNob3dlZFN1cnZleVBhZ2VzOiBuZXcgRm9ybUNvbnRyb2woW10pXHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLl9TdG9yZS5zZWxlY3QocXVlc3Rpb25TZWxlY3RvcnMucXVlc3Rpb25BbnN3ZXJzKS5zdWJzY3JpYmUoYXJyID0+IHtcclxuICAgICAgdGhpcy5xdWVzdGlvbkFuc3dlckFyciA9IGFycjtcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgfVxyXG5cclxuICBxdWVzdGlvbklkZW50aWZ5KGluZGV4LCBpdGVtOiBRdWVzdGlvbk5ncnhNb2RlbCkge1xyXG4gICAgcmV0dXJuIGl0ZW0ucXVlc3Rpb25JZDtcclxuICB9XHJcblxyXG4gIHF1ZXN0aW9uR3JvdXBJZGVudGlmeShpbmRleCwgaXRlbTogUXVlc3Rpb25Hcm91cE5ncnhNb2RlbCkge1xyXG4gICAgcmV0dXJuIGl0ZW0ucXVlc3Rpb25Hcm91cElkO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9TdG9yZS5zZWxlY3Qoc3VydmV5U2VsZWN0b3JzLnNlbGVjdGVkUGFnZUlkKS5zdWJzY3JpYmUodmFsdWUgPT4ge1xyXG4gICAgICB0aGlzLmZDdHJscy5jdXJyZW50UGFnZUlkLnNldFZhbHVlKHZhbHVlKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuX1N0b3JlLnNlbGVjdChzdXJ2ZXlTZWxlY3RvcnMuc2hvd2VkU3VydmV5UGFnZXMpLnN1YnNjcmliZSh2YWx1ZSA9PiB7XHJcbiAgICAgIHRoaXMuZkN0cmxzLnNob3dlZFN1cnZleVBhZ2VzLnNldFZhbHVlKHZhbHVlKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb25QYWdnaW5nTmV4dCgpIHtcclxuICAgIHRoaXMuX1N0b3JlLnNlbGVjdChxdWVzdGlvblNlbGVjdG9ycy5wYWdlUXVlc3Rpb25zKS5waXBlKHRha2UoMSkpLnN1YnNjcmliZShhcnIgPT4ge1xyXG4gICAgICB2YXIgaW52YWxpZFJlY29yZHMgPSB0aGlzLmhhdmVJblZhbGlkYXRlUXVlc3Rpb25zKGFycik7XHJcblxyXG4gICAgICBpZiAoaW52YWxpZFJlY29yZHMubGVuZ3RoID09IDApIHtcclxuXHJcbiAgICAgICAgY29uc3QgbmV4dFBhZ2VJZCA9IHRoaXMuZ2V0TmV4dFNob3dlZFBhZ2UoKTtcclxuXHJcbiAgICAgICAgaWYgKG5leHRQYWdlSWQgIT0gbnVsbCkge1xyXG4gICAgICAgICAgdGhpcy5fU3RvcmUuZGlzcGF0Y2goc3VydmV5QWN0aW9ucy51cGRhdGVQYWdlSWQoeyBwYWdlSWQ6IG5leHRQYWdlSWQgfSkpO1xyXG5cclxuICAgICAgICAgICQoJ2h0bWwsIGJvZHknKS5hbmltYXRlKHtcclxuICAgICAgICAgICAgc2Nyb2xsVG9wOiAkKGAjc3VydmVyeS1jYXJkLSR7dGhpcy5zdXJ2ZXJ5TGlicmFyeURpdklkfWApLm9mZnNldCgpLnRvcCAtIDMwXHJcbiAgICAgICAgICB9LCAzMDApO1xyXG5cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5zdXJ2ZXlSZXN1bHRFbWl0LmVtaXQodGhpcy5xdWVzdGlvbkFuc3dlckFycik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHZhciBmaXJzdFF1ZXN0aW9uID0gJCgnLmludmFsaWQtcXVlc3Rpb24nKVswXTtcclxuICAgICAgICAkKCdodG1sLCBib2R5JykuYW5pbWF0ZSh7XHJcbiAgICAgICAgICBzY3JvbGxUb3A6ICQoZmlyc3RRdWVzdGlvbikub2Zmc2V0KCkudG9wIC0gMjUwXHJcbiAgICAgICAgfSwgMzAwKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBvblBhZ2dpbmdCYWNrKCkge1xyXG4gICAgY29uc3QgcHJldlBhZ2VJZCA9IHRoaXMuZ2V0UHJldlNob3dlZFBhZ2UoKTtcclxuICAgIGlmIChwcmV2UGFnZUlkICE9IG51bGwpIHtcclxuICAgICAgdGhpcy5fU3RvcmUuZGlzcGF0Y2goc3VydmV5QWN0aW9ucy51cGRhdGVQYWdlSWQoeyBwYWdlSWQ6IHByZXZQYWdlSWQgfSkpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBoYXZlSW5WYWxpZGF0ZVF1ZXN0aW9ucyhxdWVzdGlvbkFycjogUXVlc3Rpb25OZ3J4TW9kZWxbXSkge1xyXG4gICAgY29uc3QgZm9ybVZhbHVlID0gdGhpcy5yRm9ybS52YWx1ZTtcclxuICAgIHZhciBpbnZhbGlkUmVjb3JkcyA9IFtdO1xyXG5cclxuICAgIHZhciBhcnIgPSBxdWVzdGlvbkFyci5maWx0ZXIoeCA9PiB4LmlzRGlzYWJsZWQgPT0gZmFsc2UgJiYgeC5pc1Nob3cgPT0gdHJ1ZSk7XHJcbiAgICBhcnIubWFwKHggPT4ge1xyXG4gICAgICBpZiAoeC5pc1JlcXVpcmVkID09IHRydWUgJiYgeC5pc1ZhbGlkICE9IHRydWUgJiYgeC5pc01hdHJpeEdyb3VwICE9IHRydWUpIHtcclxuICAgICAgICBpbnZhbGlkUmVjb3Jkcy5wdXNoKHgpO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIGlmICh4LnF1ZXN0aW9uVHlwZSA9PSBRdWVzdGlvblR5cGVFbnVtLlRleHRJbnB1dCAmJiB4LmlucHV0VHlwZUlkID09IElucHV0VHlwZUVudW0uRW1haWwpIHtcclxuICAgICAgICAgIGlmICh4LmFuc3dlclRleHQ/LnRyaW0oKSAmJiB4LmlzVmFsaWQgIT0gdHJ1ZSkge1xyXG4gICAgICAgICAgICBpbnZhbGlkUmVjb3Jkcy5wdXNoKHgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgaWYgKGludmFsaWRSZWNvcmRzLmxlbmd0aCA+IDApIHtcclxuICAgICAgJChgI3N1cnZleS1wYWdlXyR7Zm9ybVZhbHVlLmN1cnJlbnRQYWdlSWR9YCkuYWRkQ2xhc3MoJ3N1cnZleS1wYWdlX3N1Ym1pdHRlZCcpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgJChgI3N1cnZleS1wYWdlXyR7Zm9ybVZhbHVlLmN1cnJlbnRQYWdlSWR9YCkucmVtb3ZlQ2xhc3MoJ3N1cnZleS1wYWdlX3N1Ym1pdHRlZCcpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBpbnZhbGlkUmVjb3JkcztcclxuICB9XHJcblxyXG5cclxuICBwcml2YXRlIGdldE5leHRTaG93ZWRQYWdlKCkge1xyXG4gICAgY29uc3QgZm9ybVZhbHVlID0gdGhpcy5yRm9ybS52YWx1ZTtcclxuICAgIHZhciBzaG93ZWRQYWdlcyA9IGZvcm1WYWx1ZS5zaG93ZWRTdXJ2ZXlQYWdlcztcclxuICAgIHZhciBuZXh0U2hvd2VkUGFnZXMgPSBzaG93ZWRQYWdlcy5maWx0ZXIoeCA9PiB4ID4gZm9ybVZhbHVlLmN1cnJlbnRQYWdlSWQpO1xyXG4gICAgaWYgKG5leHRTaG93ZWRQYWdlcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIHJldHVybiBuZXh0U2hvd2VkUGFnZXNbMF07XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0UHJldlNob3dlZFBhZ2UoKSB7XHJcbiAgICBjb25zdCBmb3JtVmFsdWUgPSB0aGlzLnJGb3JtLnZhbHVlO1xyXG4gICAgdmFyIHNob3dlZFBhZ2VzID0gZm9ybVZhbHVlLnNob3dlZFN1cnZleVBhZ2VzO1xyXG4gICAgdmFyIHByZXZTaG93ZWRQYWdlcyA9IHNob3dlZFBhZ2VzLmZpbHRlcih4ID0+IHggPCBmb3JtVmFsdWUuY3VycmVudFBhZ2VJZCk7XHJcbiAgICBpZiAocHJldlNob3dlZFBhZ2VzLmxlbmd0aCA+IDApIHtcclxuICAgICAgcmV0dXJuIHByZXZTaG93ZWRQYWdlc1twcmV2U2hvd2VkUGFnZXMubGVuZ3RoIC0gMV07XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBpZD1cInN1cnZlcnktY2FyZC17e3N1cnZlcnlMaWJyYXJ5RGl2SWR9fVwiIGNsYXNzPVwic3VydmF5LWNhcmRcIj5cclxuICA8ZGl2IFthdHRyLmlkXT1cIidzdXJ2ZXktcGFnZV8nK2ZDdHJscy5jdXJyZW50UGFnZUlkLnZhbHVlXCI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIHBhZ2VRdWVzdGlvbkdyb3VwcyQoKTsgdHJhY2tCeTpxdWVzdGlvbkdyb3VwSWRlbnRpZnlcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cInN1cnZheS1jYXJkXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInN1cnZheS1jYXJkLWJvZHlcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdXJ2YXktZ3JvdXBcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRpdGxlXCI+XHJcbiAgICAgICAgICAgICAgPGgyIGNsYXNzPVwiZ3JvdXAtdGl0bGVcIiBbaW5uZXJIVE1MXT1cIml0ZW0ucXVlc3Rpb25Hcm91cE5hbWVcIj5cclxuICAgICAgICAgICAgICA8L2gyPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ3JvdXAtc3ViLXRpdGxlIFwiIFtpbm5lckhUTUxdPVwiaXRlbS5xdWVzdGlvbkdyb3VwRGVzY3JpcHRpb25cIj5cclxuICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IHF1ZXN0aW9uIG9mIChwYWdlUXVlc3Rpb25zJCgpIHxmaWx0ZXJRdWVzdGlvbiA6IGl0ZW0ucXVlc3Rpb25Hcm91cElkKTsgdHJhY2tCeTpxdWVzdGlvbklkZW50aWZ5XCI+XHJcbiAgICAgICAgICAgICAgPGxpYi1xdWVzdGlvbi1ib29sZWFuLXRlbXBsYXRlICNxdWVzdGlvbkJvb2xlYW5UZW1wbGF0ZSBbc2V0UXVlc3Rpb25dPVwicXVlc3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJxdWVzdGlvbi5xdWVzdGlvblR5cGUgPT0gcXVlc3Rpb25UeXBlRW51bS5Cb29sZWFuXCI+XHJcbiAgICAgICAgICAgICAgPC9saWItcXVlc3Rpb24tYm9vbGVhbi10ZW1wbGF0ZT5cclxuXHJcbiAgICAgICAgICAgICAgPGxpYi1xdWVzdGlvbi10ZXh0LXRlbXBsYXRlICNxdWVzdGlvblRleHRUZW1wbGF0ZSBbc2V0UXVlc3Rpb25dPVwicXVlc3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJxdWVzdGlvbi5xdWVzdGlvblR5cGUgPT0gcXVlc3Rpb25UeXBlRW51bS5UZXh0SW5wdXRcIlxyXG4gICAgICAgICAgICAgICAgW2lzQXJhYmljTGFuZ109XCJpc0FyYWJpY0xhbmdcIj48L2xpYi1xdWVzdGlvbi10ZXh0LXRlbXBsYXRlPlxyXG5cclxuICAgICAgICAgICAgICAgIDxsaWItcXVlc3Rpb24tZmVlZGJhY2stdGVtcGxhdGUgI3F1ZXN0aW9uRmVlZFRlbXBsYXRlIFtzZXRRdWVzdGlvbl09XCJxdWVzdGlvblwiXHJcbiAgICAgICAgICAgICAgICAqbmdJZj1cInF1ZXN0aW9uLnF1ZXN0aW9uVHlwZSA9PSBxdWVzdGlvblR5cGVFbnVtLkZlZWRCYWNrXCJcclxuICAgICAgICAgICAgICAgIFtpc0FyYWJpY0xhbmddPVwiaXNBcmFiaWNMYW5nXCI+PC9saWItcXVlc3Rpb24tZmVlZGJhY2stdGVtcGxhdGU+XHJcblxyXG4gICAgICAgICAgICAgIDxsaWItcXVlc3Rpb24tcmFkaW8tYnV0dG9uLXRlbXBsYXRlICNxdWVzdGlvblJhZGlvQnV0dG9uVGVtcGxhdGUgW3NldFF1ZXN0aW9uXT1cInF1ZXN0aW9uXCJcclxuICAgICAgICAgICAgICAgICpuZ0lmPVwicXVlc3Rpb24ucXVlc3Rpb25UeXBlID09IHF1ZXN0aW9uVHlwZUVudW0uUmFkaW9CdXR0b25cIj5cclxuICAgICAgICAgICAgICA8L2xpYi1xdWVzdGlvbi1yYWRpby1idXR0b24tdGVtcGxhdGU+XHJcblxyXG4gICAgICAgICAgICAgIDxsaWItcXVlc3Rpb24tZHJvcGRvd24tdGVtcGxhdGUgI3F1ZXN0aW9uRHJvcGRvd25UZW1wbGF0ZSBbc2V0UXVlc3Rpb25dPVwicXVlc3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJxdWVzdGlvbi5xdWVzdGlvblR5cGUgPT0gcXVlc3Rpb25UeXBlRW51bS5Ecm9wRG93blwiPjwvbGliLXF1ZXN0aW9uLWRyb3Bkb3duLXRlbXBsYXRlPlxyXG5cclxuICAgICAgICAgICAgICA8bGliLXF1ZXN0aW9uLWRyb3Bkb3duLW11bHRpLXRlbXBsYXRlIFtzZXRRdWVzdGlvbl09XCJxdWVzdGlvblwiXHJcbiAgICAgICAgICAgICAgICAqbmdJZj1cInF1ZXN0aW9uLnF1ZXN0aW9uVHlwZSA9PSBxdWVzdGlvblR5cGVFbnVtLkRyb3BEb3duTXVsdGlcIj5cclxuICAgICAgICAgICAgICA8L2xpYi1xdWVzdGlvbi1kcm9wZG93bi1tdWx0aS10ZW1wbGF0ZT5cclxuXHJcbiAgICAgICAgICAgICAgPGxpYi1xdWVzdGlvbi1jaGVjay1ib3gtdGVtcGxhdGUgI3F1ZXN0aW9uQ2hlY2tCb3hUZW1wbGF0ZSBbc2V0UXVlc3Rpb25dPVwicXVlc3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJxdWVzdGlvbi5xdWVzdGlvblR5cGUgPT0gcXVlc3Rpb25UeXBlRW51bS5DaGVja0JveFwiPlxyXG4gICAgICAgICAgICAgIDwvbGliLXF1ZXN0aW9uLWNoZWNrLWJveC10ZW1wbGF0ZT5cclxuXHJcbiAgICAgICAgICAgICAgPGxpYi1xdWVzdGlvbi1tYXRyaXgtdGVtcGxhdGUgI3F1ZXN0aW9uTWF0cml4VGVtcGxhdGUgW3NldFF1ZXN0aW9uXT1cInF1ZXN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAqbmdJZj1cInF1ZXN0aW9uLnF1ZXN0aW9uVHlwZSA9PSBxdWVzdGlvblR5cGVFbnVtLk1hdHJpeFwiPlxyXG4gICAgICAgICAgICAgIDwvbGliLXF1ZXN0aW9uLW1hdHJpeC10ZW1wbGF0ZT5cclxuXHJcbiAgICAgICAgICAgICAgIDxsaWItcXVlc3Rpb24tY2FzY2FkZS10ZW1wbGF0ZSAjcXVlc3Rpb25DYXNjYWRlVGVtcGxhdGUgW3NldFF1ZXN0aW9uXT1cInF1ZXN0aW9uXCJcclxuICAgICAgICAgICAgICAgKm5nSWY9XCJxdWVzdGlvbi5xdWVzdGlvblR5cGUgPT0gcXVlc3Rpb25UeXBlRW51bS5DYXNjYWRlXCJcclxuICAgICAgICAgICAgICAgIFthcHBsaWNhbnRLZXldPVwiYXBwbGljYW50S2V5XCIgW2lzUHJlXT1cImlzUHJlXCIgW3N1cnZleUxhbmd1YWdlSWRdPVwic3VydmV5TGFuZ3VhZ2VJZFwiXHJcbiAgICAgICAgICAgICAgICBbcGFnZUlkXT1cInF1ZXN0aW9uLnN1cnZleVBhZ2VJZFwiIFtxdWVzdGlvbkdyb3VwSWRdPVwicXVlc3Rpb24ucXVlc3Rpb25Hcm91cElkXCI+PC9saWItcXVlc3Rpb24tY2FzY2FkZS10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwic3VydmF5LWNhcmQtZm9vdHJcIiAqbmdJZj1cImZDdHJscy5zaG93ZWRTdXJ2ZXlQYWdlcy52YWx1ZS5sZW5ndGggPiAwXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCIgc3R5bGU9XCIganVzdGlmeS1jb250ZW50OiBzdGFydDtcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cInN1cnZheS1wYWdpbmF0aW9uIGZ3LWJvbGRcIj5cclxuICAgICAgICA8c3Bhbj57eyBjdXJydW50U2hvd2VkU3VydmV5UGFnZXMkIHwgYXN5bmN9fTwvc3Bhbj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cIm1zLTIgbWUtMlwiPnt7aXNBcmFiaWNMYW5nID8gJ9mF2YYnIDogJ29mJ319IDwvc3Bhbj5cclxuICAgICAgICA8c3Bhbj57e2ZDdHJscy5zaG93ZWRTdXJ2ZXlQYWdlcy52YWx1ZS5sZW5ndGh9fTwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+Il19
|
|
@@ -26,6 +26,7 @@ import { QuestionFeedbackTemplateComponent } from './components/question-feedbac
|
|
|
26
26
|
import { RatingModule } from 'ngx-bootstrap/rating';
|
|
27
27
|
import { PaginationModule } from 'ngx-bootstrap/pagination';
|
|
28
28
|
import { MaskedForMaxLengthDirective } from './directives/masked-for-max-length.directive';
|
|
29
|
+
import { SurveyEffects } from './core/states/survey-store/survey.effect';
|
|
29
30
|
import * as i0 from "@angular/core";
|
|
30
31
|
import * as i1 from "@ngrx/store";
|
|
31
32
|
import * as i2 from "@ngrx/effects";
|
|
@@ -64,7 +65,7 @@ export class SurveryLibModule {
|
|
|
64
65
|
StoreModule] }); }
|
|
65
66
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SurveryLibModule, imports: [CommonModule, HttpClientModule, ReactiveFormsModule, FormsModule, NgSelectModule,
|
|
66
67
|
StoreModule.forFeature('survey-lib', surveyReducer),
|
|
67
|
-
EffectsModule.forFeature([]), RatingModule, PaginationModule, StoreModule] }); }
|
|
68
|
+
EffectsModule.forFeature([SurveyEffects]), RatingModule, PaginationModule, StoreModule] }); }
|
|
68
69
|
}
|
|
69
70
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SurveryLibModule, decorators: [{
|
|
70
71
|
type: NgModule,
|
|
@@ -91,7 +92,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
|
|
|
91
92
|
imports: [
|
|
92
93
|
CommonModule, HttpClientModule, ReactiveFormsModule, FormsModule, NgSelectModule,
|
|
93
94
|
StoreModule.forFeature('survey-lib', surveyReducer),
|
|
94
|
-
EffectsModule.forFeature([]), RatingModule, PaginationModule
|
|
95
|
+
EffectsModule.forFeature([SurveyEffects]), RatingModule, PaginationModule
|
|
95
96
|
],
|
|
96
97
|
exports: [
|
|
97
98
|
SurveryLibComponent,
|
|
@@ -99,4 +100,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
|
|
|
99
100
|
]
|
|
100
101
|
}]
|
|
101
102
|
}] });
|
|
102
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
103
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VydmVyeS1saWIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvc3VydmVyeS1saWIvc3JjL2xpYi9zdXJ2ZXJ5LWxpYi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxzRUFBc0UsQ0FBQztBQUNySCxPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSxzRkFBc0YsQ0FBQztBQUM1SSxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxnRkFBZ0YsQ0FBQztBQUNuSSxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSw4RUFBOEUsQ0FBQztBQUNqSSxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSwwRUFBMEUsQ0FBQztBQUMzSCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSw0RUFBNEUsQ0FBQztBQUM5SCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNqRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNuRixPQUFPLEVBQUUsc0NBQXNDLEVBQUUsTUFBTSwwRkFBMEYsQ0FBQztBQUNsSixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdEQsT0FBTyxFQUFFLG1C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QUFDLGFBQWEsQ0FBQyxDQUFDLEVBQUMsWUFBWSxFQUFFLGdCQUFnQjtxQkFDekU7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG1CQUFtQjt3QkFDbkIsV0FBVztxQkFDWjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN1cnZlcnlMaWJDb21wb25lbnQgfSBmcm9tICcuL3N1cnZlcnktbGliLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEh0dHBDbGllbnRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IFJlYWN0aXZlRm9ybXNNb2R1bGUsIEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBRdWVzdGlvblRleHRUZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9xdWVzdGlvbi10ZXh0LXRlbXBsYXRlL3F1ZXN0aW9uLXRleHQtdGVtcGxhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUXVlc3Rpb25SYWRpb0J1dHRvblRlbXBsYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3F1ZXN0aW9uLXJhZGlvLWJ1dHRvbi10ZW1wbGF0ZS9xdWVzdGlvbi1yYWRpby1idXR0b24tdGVtcGxhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUXVlc3Rpb25DaGVja0JveFRlbXBsYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3F1ZXN0aW9uLWNoZWNrLWJveC10ZW1wbGF0ZS9xdWVzdGlvbi1jaGVjay1ib3gtdGVtcGxhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUXVlc3Rpb25Ecm9wZG93blRlbXBsYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3F1ZXN0aW9uLWRyb3Bkb3duLXRlbXBsYXRlL3F1ZXN0aW9uLWRyb3Bkb3duLXRlbXBsYXRlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFF1ZXN0aW9uTWF0cml4VGVtcGxhdGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcXVlc3Rpb24tbWF0cml4LXRlbXBsYXRlL3F1ZXN0aW9uLW1hdHJpeC10ZW1wbGF0ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBRdWVzdGlvbkJvb2xlYW5UZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9xdWVzdGlvbi1ib29sZWFuLXRlbXBsYXRlL3F1ZXN0aW9uLWJvb2xlYW4tdGVtcGxhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRmlsdGVyUXVlc3Rpb25QaXBlIH0gZnJvbSAnLi9waXBlcy9maWx0ZXItcXVlc3Rpb24ucGlwZSc7XHJcbmltcG9ydCB7IERlZmF1bHRRdWVzdGlvbkFuc3dlclBpcGUgfSBmcm9tICcuL3BpcGVzL2RlZmF1bHQtcXVlc3Rpb24tYW5zd2VyLnBpcGUnO1xyXG5pbXBvcnQgeyBEZWZhdWx0UXVlc3Rpb25BbnN3ZXJzUGlwZSB9IGZyb20gJy4vcGlwZXMvZGVmYXVsdC1xdWVzdGlvbi1hbnN3ZXJzLnBpcGUnO1xyXG5pbXBvcnQgeyBRdWVzdGlvbkRyb3Bkb3duTXVsdGlUZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9xdWVzdGlvbi1kcm9wZG93bi1tdWx0aS10ZW1wbGF0ZS9xdWVzdGlvbi1kcm9wZG93bi1tdWx0aS10ZW1wbGF0ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBOZ1NlbGVjdE1vZHVsZSB9IGZyb20gJ0BuZy1zZWxlY3Qvbmctc2VsZWN0JztcclxuaW1wb3J0IHsgVGV4dEJveFR5cGVBdHRyUGlwZSB9IGZyb20gJy4vcGlwZXMvdGV4dC1ib3gtdHlwZS1hdHRyLnBpcGUnO1xyXG5pbXBvcnQgeyBRdWVzdGlvbkNhc2NhZGVUZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9xdWVzdGlvbi1jYXNjYWRlLXRlbXBsYXRlL3F1ZXN0aW9uLWNhc2NhZGUtdGVtcGxhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTGliQ29uZmlnTW9kZWwsIExpYkNvbmZpZ1NlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2xpYi1jb25maWcuc2VydmljZSc7XHJcbmltcG9ydCB7IE1hc2tlZEZvck1pbk1heERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9tYXNrZWQtZm9yLW1pbi1tYXguZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgU3RvcmUsIFN0b3JlTW9kdWxlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xyXG5pbXBvcnQgeyBzdXJ2ZXlSZWR1Y2VyIH0gZnJvbSAnLi9jb3JlL3N0YXRlcy9zdXJ2ZXktc3RvcmUvc3VydmV5LnJlZHVjZXInO1xyXG5pbXBvcnQgeyBFZmZlY3RzTW9kdWxlIH0gZnJvbSAnQG5ncngvZWZmZWN0cyc7XHJcbmltcG9ydCB7IEZpbmRRdWVzdGlvblBpcGUgfSBmcm9tICcuL3BpcGVzL2ZpbmQtcXVlc3Rpb24ucGlwZSc7XHJcbmltcG9ydCB7IFF1ZXN0aW9uRmVlZGJhY2tUZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9xdWVzdGlvbi1mZWVkYmFjay10ZW1wbGF0ZS9xdWVzdGlvbi1mZWVkYmFjay10ZW1wbGF0ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSYXRpbmdNb2R1bGUgfSBmcm9tICduZ3gtYm9vdHN0cmFwL3JhdGluZyc7XHJcbmltcG9ydCB7IFBhZ2luYXRpb25Nb2R1bGUgfSBmcm9tICduZ3gtYm9vdHN0cmFwL3BhZ2luYXRpb24nO1xyXG5pbXBvcnQgeyBNYXNrZWRGb3JNYXhMZW5ndGhEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvbWFza2VkLWZvci1tYXgtbGVuZ3RoLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFN1cnZleUVmZmVjdHMgfSBmcm9tICcuL2NvcmUvc3RhdGVzL3N1cnZleS1zdG9yZS9zdXJ2ZXkuZWZmZWN0JztcclxuXHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgU3VydmVyeUxpYkNvbXBvbmVudCxcclxuICAgIFF1ZXN0aW9uVGV4dFRlbXBsYXRlQ29tcG9uZW50LFxyXG4gICAgUXVlc3Rpb25SYWRpb0J1dHRvblRlbXBsYXRlQ29tcG9uZW50LFxyXG4gICAgUXVlc3Rpb25DaGVja0JveFRlbXBsYXRlQ29tcG9uZW50LFxyXG4gICAgUXVlc3Rpb25Ecm9wZG93blRlbXBsYXRlQ29tcG9uZW50LFxyXG4gICAgUXVlc3Rpb25NYXRyaXhUZW1wbGF0ZUNvbXBvbmVudCxcclxuICAgIFF1ZXN0aW9uQm9vbGVhblRlbXBsYXRlQ29tcG9uZW50LFxyXG4gICAgUXVlc3Rpb25Ecm9wZG93bk11bHRpVGVtcGxhdGVDb21wb25lbnQsXHJcbiAgICBGaWx0ZXJRdWVzdGlvblBpcGUsXHJcbiAgICBEZWZhdWx0UXVlc3Rpb25BbnN3ZXJQaXBlLFxyXG4gICAgRGVmYXVsdFF1ZXN0aW9uQW5zd2Vyc1BpcGUsXHJcbiAgICBUZXh0Qm94VHlwZUF0dHJQaXBlLFxyXG4gICAgUXVlc3Rpb25DYXNjYWRlVGVtcGxhdGVDb21wb25lbnQsXHJcbiAgICBNYXNrZWRGb3JNaW5NYXhEaXJlY3RpdmUsXHJcbiAgICBGaW5kUXVlc3Rpb25QaXBlLFxyXG4gICAgUXVlc3Rpb25GZWVkYmFja1RlbXBsYXRlQ29tcG9uZW50LFxyXG4gICAgTWFza2VkRm9yTWF4TGVuZ3RoRGlyZWN0aXZlXHJcbiAgXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsIEh0dHBDbGllbnRNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIEZvcm1zTW9kdWxlLCBOZ1NlbGVjdE1vZHVsZSxcclxuICAgIFN0b3JlTW9kdWxlLmZvckZlYXR1cmUoJ3N1cnZleS1saWInLHN1cnZleVJlZHVjZXIpLFxyXG4gICAgRWZmZWN0c01vZHVsZS5mb3JGZWF0dXJlKFtTdXJ2ZXlFZmZlY3RzXSksUmF0aW5nTW9kdWxlICxQYWdpbmF0aW9uTW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBTdXJ2ZXJ5TGliQ29tcG9uZW50ICxcclxuICAgIFN0b3JlTW9kdWxlXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3VydmVyeUxpYk1vZHVsZSB7XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgZm9yUm9vdChjb25maWc6IExpYkNvbmZpZ01vZGVsKTogTW9kdWxlV2l0aFByb3ZpZGVyczxTdXJ2ZXJ5TGliTW9kdWxlPiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuZ01vZHVsZTogU3VydmVyeUxpYk1vZHVsZSxcclxuICAgICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAgeyBwcm92aWRlOiBMaWJDb25maWdTZXJ2aWNlLCB1c2VWYWx1ZTogY29uZmlnIH1cclxuICAgICAgXSxcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgZm9yQ2hpbGQoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxTdXJ2ZXJ5TGliTW9kdWxlPiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuZ01vZHVsZTogU3VydmVyeUxpYk1vZHVsZVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|