@hmcts/ccd-case-ui-toolkit 7.2.21 → 7.2.23-mid-event-callback
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/shared/components/palette/palette.module.mjs +7 -2
- package/esm2022/lib/shared/components/palette/query-management/components/query-case-details-header/query-case-details-header.component.mjs +3 -3
- package/esm2022/lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.mjs +56 -199
- package/esm2022/lib/shared/components/palette/query-management/components/query-write/query-write-raise-query/query-write-raise-query.component.mjs +121 -62
- package/esm2022/lib/shared/components/palette/query-management/components/query-write/query-write-respond-to-query/query-write-respond-to-query.component.mjs +56 -17
- package/esm2022/lib/shared/components/palette/query-management/constants/query-management.constants.mjs +7 -0
- package/esm2022/lib/shared/components/palette/query-management/read-query-management-field.component.mjs +18 -9
- package/esm2022/lib/shared/components/palette/query-management/services/index.mjs +2 -1
- package/esm2022/lib/shared/components/palette/query-management/services/query-management.service.mjs +179 -0
- package/fesm2022/hmcts-ccd-case-ui-toolkit.mjs +667 -533
- package/fesm2022/hmcts-ccd-case-ui-toolkit.mjs.map +1 -1
- package/lib/shared/components/palette/palette.module.d.ts.map +1 -1
- package/lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.d.ts +15 -13
- package/lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.d.ts.map +1 -1
- package/lib/shared/components/palette/query-management/components/query-write/query-write-raise-query/query-write-raise-query.component.d.ts +24 -3
- package/lib/shared/components/palette/query-management/components/query-write/query-write-raise-query/query-write-raise-query.component.d.ts.map +1 -1
- package/lib/shared/components/palette/query-management/components/query-write/query-write-respond-to-query/query-write-respond-to-query.component.d.ts +12 -3
- package/lib/shared/components/palette/query-management/components/query-write/query-write-respond-to-query/query-write-respond-to-query.component.d.ts.map +1 -1
- package/lib/shared/components/palette/query-management/constants/query-management.constants.d.ts +7 -0
- package/lib/shared/components/palette/query-management/constants/query-management.constants.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/services/index.d.ts +1 -0
- package/lib/shared/components/palette/query-management/services/index.d.ts.map +1 -1
- package/lib/shared/components/palette/query-management/services/query-management.service.d.ts +21 -0
- package/lib/shared/components/palette/query-management/services/query-management.service.d.ts.map +1 -0
- package/package.json +1 -1
|
@@ -1,10 +1,22 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
2
|
import { FormGroup } from '@angular/forms';
|
|
3
3
|
import { RaiseQueryErrorMessage } from '../../../enums';
|
|
4
|
+
import { CaseEventTrigger, CaseView } from '../../../../../../../../lib/shared/domain';
|
|
5
|
+
import { QueryCreateContext, QueryListItem } from '../../../models';
|
|
6
|
+
import { QueryManagementService } from '../../../services';
|
|
7
|
+
import { ActivatedRoute } from '@angular/router';
|
|
4
8
|
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "../../../services";
|
|
10
|
+
import * as i2 from "@angular/router";
|
|
5
11
|
const _c0 = a0 => ({ "govuk-form-group--error": a0 });
|
|
12
|
+
function QueryWriteRaiseQueryComponent_ccd_query_case_details_header_9_Template(rf, ctx) { if (rf & 1) {
|
|
13
|
+
i0.ɵɵelement(0, "ccd-query-case-details-header", 5);
|
|
14
|
+
} if (rf & 2) {
|
|
15
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
16
|
+
i0.ɵɵproperty("caseDetails", ctx_r0.caseDetails);
|
|
17
|
+
} }
|
|
6
18
|
function QueryWriteRaiseQueryComponent_div_11_p_19_Template(rf, ctx) { if (rf & 1) {
|
|
7
|
-
i0.ɵɵelementStart(0, "p",
|
|
19
|
+
i0.ɵɵelementStart(0, "p", 33)(1, "span", 11);
|
|
8
20
|
i0.ɵɵtext(2);
|
|
9
21
|
i0.ɵɵpipe(3, "rpxTranslate");
|
|
10
22
|
i0.ɵɵelementEnd();
|
|
@@ -12,14 +24,14 @@ function QueryWriteRaiseQueryComponent_div_11_p_19_Template(rf, ctx) { if (rf &
|
|
|
12
24
|
i0.ɵɵpipe(5, "rpxTranslate");
|
|
13
25
|
i0.ɵɵelementEnd();
|
|
14
26
|
} if (rf & 2) {
|
|
15
|
-
const
|
|
27
|
+
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
16
28
|
i0.ɵɵadvance(2);
|
|
17
29
|
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 2, "Error:"));
|
|
18
30
|
i0.ɵɵadvance(2);
|
|
19
|
-
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(5, 4,
|
|
31
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(5, 4, ctx_r0.getSubjectErrorMessage()), " ");
|
|
20
32
|
} }
|
|
21
33
|
function QueryWriteRaiseQueryComponent_div_11_p_29_Template(rf, ctx) { if (rf & 1) {
|
|
22
|
-
i0.ɵɵelementStart(0, "p",
|
|
34
|
+
i0.ɵɵelementStart(0, "p", 34)(1, "span", 11);
|
|
23
35
|
i0.ɵɵtext(2);
|
|
24
36
|
i0.ɵɵpipe(3, "rpxTranslate");
|
|
25
37
|
i0.ɵɵelementEnd();
|
|
@@ -27,14 +39,14 @@ function QueryWriteRaiseQueryComponent_div_11_p_29_Template(rf, ctx) { if (rf &
|
|
|
27
39
|
i0.ɵɵpipe(5, "rpxTranslate");
|
|
28
40
|
i0.ɵɵelementEnd();
|
|
29
41
|
} if (rf & 2) {
|
|
30
|
-
const
|
|
42
|
+
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
31
43
|
i0.ɵɵadvance(2);
|
|
32
44
|
i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(3, 2, "Error:"), " ");
|
|
33
45
|
i0.ɵɵadvance(2);
|
|
34
|
-
i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(5, 4,
|
|
46
|
+
i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(5, 4, ctx_r0.raiseQueryErrorMessage.QUERY_BODY), " ");
|
|
35
47
|
} }
|
|
36
48
|
function QueryWriteRaiseQueryComponent_div_11_p_38_Template(rf, ctx) { if (rf & 1) {
|
|
37
|
-
i0.ɵɵelementStart(0, "p",
|
|
49
|
+
i0.ɵɵelementStart(0, "p", 35)(1, "span", 11);
|
|
38
50
|
i0.ɵɵtext(2);
|
|
39
51
|
i0.ɵɵpipe(3, "rpxTranslate");
|
|
40
52
|
i0.ɵɵelementEnd();
|
|
@@ -42,14 +54,14 @@ function QueryWriteRaiseQueryComponent_div_11_p_38_Template(rf, ctx) { if (rf &
|
|
|
42
54
|
i0.ɵɵpipe(5, "rpxTranslate");
|
|
43
55
|
i0.ɵɵelementEnd();
|
|
44
56
|
} if (rf & 2) {
|
|
45
|
-
const
|
|
57
|
+
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
46
58
|
i0.ɵɵadvance(2);
|
|
47
59
|
i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(3, 2, "Error:"), " ");
|
|
48
60
|
i0.ɵɵadvance(2);
|
|
49
|
-
i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(5, 4,
|
|
61
|
+
i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(5, 4, ctx_r0.raiseQueryErrorMessage.QUERY_HEARING_RELATED), " ");
|
|
50
62
|
} }
|
|
51
63
|
function QueryWriteRaiseQueryComponent_div_11_ng_container_50_p_7_Template(rf, ctx) { if (rf & 1) {
|
|
52
|
-
i0.ɵɵelementStart(0, "p",
|
|
64
|
+
i0.ɵɵelementStart(0, "p", 41)(1, "span", 11);
|
|
53
65
|
i0.ɵɵtext(2);
|
|
54
66
|
i0.ɵɵpipe(3, "rpxTranslate");
|
|
55
67
|
i0.ɵɵelementEnd();
|
|
@@ -57,134 +69,158 @@ function QueryWriteRaiseQueryComponent_div_11_ng_container_50_p_7_Template(rf, c
|
|
|
57
69
|
i0.ɵɵpipe(5, "rpxTranslate");
|
|
58
70
|
i0.ɵɵelementEnd();
|
|
59
71
|
} if (rf & 2) {
|
|
60
|
-
const
|
|
72
|
+
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
61
73
|
i0.ɵɵadvance(2);
|
|
62
74
|
i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(3, 2, "Error:"), " ");
|
|
63
75
|
i0.ɵɵadvance(2);
|
|
64
|
-
i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(5, 4,
|
|
76
|
+
i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(5, 4, ctx_r0.raiseQueryErrorMessage.QUERY_HEARING_DATE), " ");
|
|
65
77
|
} }
|
|
66
78
|
function QueryWriteRaiseQueryComponent_div_11_ng_container_50_Template(rf, ctx) { if (rf & 1) {
|
|
67
79
|
i0.ɵɵelementContainerStart(0);
|
|
68
|
-
i0.ɵɵelementStart(1, "div",
|
|
80
|
+
i0.ɵɵelementStart(1, "div", 36)(2, "fieldset", 37)(3, "legend")(4, "label", 38);
|
|
69
81
|
i0.ɵɵtext(5);
|
|
70
82
|
i0.ɵɵpipe(6, "rpxTranslate");
|
|
71
83
|
i0.ɵɵelementEnd()();
|
|
72
|
-
i0.ɵɵtemplate(7, QueryWriteRaiseQueryComponent_div_11_ng_container_50_p_7_Template, 6, 6, "p",
|
|
73
|
-
i0.ɵɵelement(8, "ccd-query-write-date-input",
|
|
84
|
+
i0.ɵɵtemplate(7, QueryWriteRaiseQueryComponent_div_11_ng_container_50_p_7_Template, 6, 6, "p", 39);
|
|
85
|
+
i0.ɵɵelement(8, "ccd-query-write-date-input", 40);
|
|
74
86
|
i0.ɵɵelementEnd()();
|
|
75
87
|
i0.ɵɵelementContainerEnd();
|
|
76
88
|
} if (rf & 2) {
|
|
77
|
-
const
|
|
89
|
+
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
78
90
|
i0.ɵɵadvance();
|
|
79
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(5, _c0,
|
|
91
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(5, _c0, ctx_r0.submitted && ctx_r0.formGroup.get("isHearingRelated").value === true && ctx_r0.formGroup.get("hearingDate").value === null));
|
|
80
92
|
i0.ɵɵadvance(4);
|
|
81
93
|
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(6, 3, "What is the date of the hearing?"), " ");
|
|
82
94
|
i0.ɵɵadvance(2);
|
|
83
|
-
i0.ɵɵproperty("ngIf",
|
|
95
|
+
i0.ɵɵproperty("ngIf", ctx_r0.submitted && ctx_r0.formGroup.get("isHearingRelated").value === true && ctx_r0.formGroup.get("hearingDate").value === null);
|
|
84
96
|
} }
|
|
85
97
|
function QueryWriteRaiseQueryComponent_div_11_Template(rf, ctx) { if (rf & 1) {
|
|
86
|
-
const
|
|
87
|
-
i0.ɵɵelementStart(0, "div",
|
|
98
|
+
const _r2 = i0.ɵɵgetCurrentView();
|
|
99
|
+
i0.ɵɵelementStart(0, "div", 6)(1, "div", 7)(2, "div")(3, "div", 8)(4, "span", 9);
|
|
88
100
|
i0.ɵɵtext(5, "!");
|
|
89
101
|
i0.ɵɵelementEnd();
|
|
90
|
-
i0.ɵɵelementStart(6, "strong",
|
|
102
|
+
i0.ɵɵelementStart(6, "strong", 10)(7, "span", 11);
|
|
91
103
|
i0.ɵɵtext(8, "Warning");
|
|
92
104
|
i0.ɵɵelementEnd();
|
|
93
|
-
i0.ɵɵelement(9, "ccd-markdown",
|
|
105
|
+
i0.ɵɵelement(9, "ccd-markdown", 12);
|
|
94
106
|
i0.ɵɵpipe(10, "rpxTranslate");
|
|
95
107
|
i0.ɵɵelementEnd()();
|
|
96
|
-
i0.ɵɵelementStart(11, "div",
|
|
108
|
+
i0.ɵɵelementStart(11, "div", 13)(12, "div", 14)(13, "label", 15);
|
|
97
109
|
i0.ɵɵtext(14);
|
|
98
110
|
i0.ɵɵpipe(15, "rpxTranslate");
|
|
99
111
|
i0.ɵɵelementEnd()();
|
|
100
|
-
i0.ɵɵelementStart(16, "div",
|
|
112
|
+
i0.ɵɵelementStart(16, "div", 16);
|
|
101
113
|
i0.ɵɵtext(17);
|
|
102
114
|
i0.ɵɵpipe(18, "rpxTranslate");
|
|
103
115
|
i0.ɵɵelementEnd();
|
|
104
|
-
i0.ɵɵtemplate(19, QueryWriteRaiseQueryComponent_div_11_p_19_Template, 6, 6, "p",
|
|
105
|
-
i0.ɵɵelementStart(20, "input",
|
|
106
|
-
i0.ɵɵlistener("input", function QueryWriteRaiseQueryComponent_div_11_Template_input_input_20_listener() { i0.ɵɵrestoreView(
|
|
116
|
+
i0.ɵɵtemplate(19, QueryWriteRaiseQueryComponent_div_11_p_19_Template, 6, 6, "p", 17);
|
|
117
|
+
i0.ɵɵelementStart(20, "input", 18);
|
|
118
|
+
i0.ɵɵlistener("input", function QueryWriteRaiseQueryComponent_div_11_Template_input_input_20_listener() { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.onSubjectInput()); });
|
|
107
119
|
i0.ɵɵelementEnd()();
|
|
108
|
-
i0.ɵɵelementStart(21, "div",
|
|
120
|
+
i0.ɵɵelementStart(21, "div", 13)(22, "div", 14)(23, "label", 19);
|
|
109
121
|
i0.ɵɵtext(24);
|
|
110
122
|
i0.ɵɵpipe(25, "rpxTranslate");
|
|
111
123
|
i0.ɵɵelementEnd()();
|
|
112
|
-
i0.ɵɵelementStart(26, "div",
|
|
124
|
+
i0.ɵɵelementStart(26, "div", 20);
|
|
113
125
|
i0.ɵɵtext(27);
|
|
114
126
|
i0.ɵɵpipe(28, "rpxTranslate");
|
|
115
127
|
i0.ɵɵelementEnd();
|
|
116
|
-
i0.ɵɵtemplate(29, QueryWriteRaiseQueryComponent_div_11_p_29_Template, 6, 6, "p",
|
|
117
|
-
i0.ɵɵelementStart(30, "textarea",
|
|
128
|
+
i0.ɵɵtemplate(29, QueryWriteRaiseQueryComponent_div_11_p_29_Template, 6, 6, "p", 21);
|
|
129
|
+
i0.ɵɵelementStart(30, "textarea", 22);
|
|
118
130
|
i0.ɵɵtext(31, " ");
|
|
119
131
|
i0.ɵɵelementEnd()();
|
|
120
|
-
i0.ɵɵelementStart(32, "div",
|
|
132
|
+
i0.ɵɵelementStart(32, "div", 13)(33, "fieldset", 23)(34, "legend")(35, "label", 24);
|
|
121
133
|
i0.ɵɵtext(36);
|
|
122
134
|
i0.ɵɵpipe(37, "rpxTranslate");
|
|
123
135
|
i0.ɵɵelementEnd()();
|
|
124
|
-
i0.ɵɵtemplate(38, QueryWriteRaiseQueryComponent_div_11_p_38_Template, 6, 6, "p",
|
|
125
|
-
i0.ɵɵelementStart(39, "div",
|
|
126
|
-
i0.ɵɵelement(41, "input",
|
|
127
|
-
i0.ɵɵelementStart(42, "label",
|
|
136
|
+
i0.ɵɵtemplate(38, QueryWriteRaiseQueryComponent_div_11_p_38_Template, 6, 6, "p", 25);
|
|
137
|
+
i0.ɵɵelementStart(39, "div", 26)(40, "div", 27);
|
|
138
|
+
i0.ɵɵelement(41, "input", 28);
|
|
139
|
+
i0.ɵɵelementStart(42, "label", 29);
|
|
128
140
|
i0.ɵɵtext(43);
|
|
129
141
|
i0.ɵɵpipe(44, "rpxTranslate");
|
|
130
142
|
i0.ɵɵelementEnd()();
|
|
131
|
-
i0.ɵɵelementStart(45, "div",
|
|
132
|
-
i0.ɵɵelement(46, "input",
|
|
133
|
-
i0.ɵɵelementStart(47, "label",
|
|
143
|
+
i0.ɵɵelementStart(45, "div", 27);
|
|
144
|
+
i0.ɵɵelement(46, "input", 30);
|
|
145
|
+
i0.ɵɵelementStart(47, "label", 31);
|
|
134
146
|
i0.ɵɵtext(48);
|
|
135
147
|
i0.ɵɵpipe(49, "rpxTranslate");
|
|
136
148
|
i0.ɵɵelementEnd()()()();
|
|
137
|
-
i0.ɵɵtemplate(50, QueryWriteRaiseQueryComponent_div_11_ng_container_50_Template, 9, 7, "ng-container",
|
|
149
|
+
i0.ɵɵtemplate(50, QueryWriteRaiseQueryComponent_div_11_ng_container_50_Template, 9, 7, "ng-container", 32);
|
|
138
150
|
i0.ɵɵelementEnd()()()();
|
|
139
151
|
} if (rf & 2) {
|
|
140
|
-
const
|
|
152
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
141
153
|
i0.ɵɵadvance();
|
|
142
|
-
i0.ɵɵproperty("formGroup",
|
|
154
|
+
i0.ɵɵproperty("formGroup", ctx_r0.formGroup);
|
|
143
155
|
i0.ɵɵadvance(8);
|
|
144
|
-
i0.ɵɵproperty("content", i0.ɵɵpipeBind1(10, 23,
|
|
156
|
+
i0.ɵɵproperty("content", i0.ɵɵpipeBind1(10, 23, ctx_r0.serviceMessage));
|
|
145
157
|
i0.ɵɵadvance(2);
|
|
146
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(43, _c0,
|
|
158
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(43, _c0, ctx_r0.submitted && ctx_r0.formGroup.get("subject").hasError("required")));
|
|
147
159
|
i0.ɵɵadvance(3);
|
|
148
160
|
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(15, 25, "Query subject"), " ");
|
|
149
161
|
i0.ɵɵadvance(3);
|
|
150
162
|
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(18, 27, "The subject should be a summary of your query"), " ");
|
|
151
163
|
i0.ɵɵadvance(2);
|
|
152
|
-
i0.ɵɵproperty("ngIf",
|
|
164
|
+
i0.ɵɵproperty("ngIf", ctx_r0.submitted && (ctx_r0.formGroup.get("subject").hasError("required") || ctx_r0.formGroup.get("subject").hasError("maxlength")));
|
|
153
165
|
i0.ɵɵadvance(2);
|
|
154
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(45, _c0,
|
|
166
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(45, _c0, ctx_r0.submitted && ctx_r0.formGroup.get("body").hasError("required")));
|
|
155
167
|
i0.ɵɵadvance(3);
|
|
156
168
|
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(25, 29, "Query detail"), " ");
|
|
157
169
|
i0.ɵɵadvance(3);
|
|
158
170
|
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(28, 31, "Include as many details as possible so case workers can respond to your query"), " ");
|
|
159
171
|
i0.ɵɵadvance(2);
|
|
160
|
-
i0.ɵɵproperty("ngIf",
|
|
172
|
+
i0.ɵɵproperty("ngIf", ctx_r0.submitted && ctx_r0.formGroup.get("body").hasError("required"));
|
|
161
173
|
i0.ɵɵadvance();
|
|
162
|
-
i0.ɵɵclassProp("govuk-textarea--error",
|
|
174
|
+
i0.ɵɵclassProp("govuk-textarea--error", ctx_r0.submitted && ctx_r0.formGroup.get("body").hasError("required"));
|
|
163
175
|
i0.ɵɵproperty("formControlName", "body");
|
|
164
176
|
i0.ɵɵadvance(2);
|
|
165
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(47, _c0,
|
|
177
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(47, _c0, ctx_r0.submitted && ctx_r0.formGroup.get("isHearingRelated").hasError("required")));
|
|
166
178
|
i0.ɵɵadvance(4);
|
|
167
179
|
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(37, 33, "Is the query hearing related?"), " ");
|
|
168
180
|
i0.ɵɵadvance(2);
|
|
169
|
-
i0.ɵɵproperty("ngIf",
|
|
181
|
+
i0.ɵɵproperty("ngIf", ctx_r0.submitted && ctx_r0.formGroup.get("isHearingRelated").hasError("required"));
|
|
170
182
|
i0.ɵɵadvance(3);
|
|
171
|
-
i0.ɵɵproperty("checked",
|
|
183
|
+
i0.ɵɵproperty("checked", ctx_r0.formGroup.get("isHearingRelated").value === true)("value", true);
|
|
172
184
|
i0.ɵɵadvance(2);
|
|
173
185
|
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind3(44, 35, "Is the query hearing related?", null, "Yes"), " ");
|
|
174
186
|
i0.ɵɵadvance(3);
|
|
175
|
-
i0.ɵɵproperty("checked",
|
|
187
|
+
i0.ɵɵproperty("checked", ctx_r0.formGroup.get("isHearingRelated").value === false)("value", false);
|
|
176
188
|
i0.ɵɵadvance(2);
|
|
177
189
|
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind3(49, 39, "Is the query hearing related?", null, "No"), " ");
|
|
178
190
|
i0.ɵɵadvance(2);
|
|
179
|
-
i0.ɵɵproperty("ngIf",
|
|
191
|
+
i0.ɵɵproperty("ngIf", ctx_r0.formGroup.get("isHearingRelated").value);
|
|
180
192
|
} }
|
|
181
193
|
export class QueryWriteRaiseQueryComponent {
|
|
194
|
+
queryManagementService;
|
|
195
|
+
route;
|
|
182
196
|
formGroup;
|
|
183
197
|
submitted;
|
|
184
198
|
caseDetails;
|
|
185
199
|
showForm;
|
|
186
200
|
serviceMessage;
|
|
201
|
+
queryCreateContext;
|
|
202
|
+
eventData = null;
|
|
203
|
+
queryItem;
|
|
204
|
+
validate;
|
|
205
|
+
triggerSubmission;
|
|
206
|
+
queryDataCreated = new EventEmitter();
|
|
187
207
|
raiseQueryErrorMessage = RaiseQueryErrorMessage;
|
|
208
|
+
eventCompletionParams;
|
|
209
|
+
messgaeId;
|
|
210
|
+
constructor(queryManagementService, route) {
|
|
211
|
+
this.queryManagementService = queryManagementService;
|
|
212
|
+
this.route = route;
|
|
213
|
+
}
|
|
214
|
+
ngOnChanges() {
|
|
215
|
+
this.messgaeId = this.route.snapshot.params.dataid;
|
|
216
|
+
const isCollectionDataSet = this.setCaseQueriesCollectionData();
|
|
217
|
+
if (isCollectionDataSet) {
|
|
218
|
+
if (this.triggerSubmission) {
|
|
219
|
+
const data = this.generateCaseQueriesCollectionData();
|
|
220
|
+
this.queryDataCreated.emit(data);
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
}
|
|
188
224
|
onSubjectInput() {
|
|
189
225
|
const control = this.formGroup.get('subject');
|
|
190
226
|
const value = control?.value;
|
|
@@ -202,8 +238,19 @@ export class QueryWriteRaiseQueryComponent {
|
|
|
202
238
|
}
|
|
203
239
|
return '';
|
|
204
240
|
}
|
|
205
|
-
|
|
206
|
-
|
|
241
|
+
setCaseQueriesCollectionData() {
|
|
242
|
+
if (!this.eventData) {
|
|
243
|
+
console.warn('Event data not available; skipping collection setup.');
|
|
244
|
+
return false;
|
|
245
|
+
}
|
|
246
|
+
this.queryManagementService.setCaseQueriesCollectionData(this.eventData, this.queryCreateContext, this.caseDetails, this.messgaeId);
|
|
247
|
+
return true;
|
|
248
|
+
}
|
|
249
|
+
generateCaseQueriesCollectionData() {
|
|
250
|
+
return this.queryManagementService.generateCaseQueriesCollectionData(this.formGroup, this.queryCreateContext, this.queryItem, this.messgaeId);
|
|
251
|
+
}
|
|
252
|
+
static ɵfac = function QueryWriteRaiseQueryComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || QueryWriteRaiseQueryComponent)(i0.ɵɵdirectiveInject(i1.QueryManagementService), i0.ɵɵdirectiveInject(i2.ActivatedRoute)); };
|
|
253
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: QueryWriteRaiseQueryComponent, selectors: [["ccd-query-write-raise-query"]], inputs: { formGroup: "formGroup", submitted: "submitted", caseDetails: "caseDetails", showForm: "showForm", serviceMessage: "serviceMessage", queryCreateContext: "queryCreateContext", eventData: "eventData", queryItem: "queryItem", validate: "validate", triggerSubmission: "triggerSubmission" }, outputs: { queryDataCreated: "queryDataCreated" }, features: [i0.ɵɵNgOnChangesFeature], decls: 12, vars: 8, consts: [[1, "govuk-!-margin-bottom-6"], [1, "govuk-caption-l"], [1, "govuk-heading-l", "govuk-!-margin-bottom-4"], [3, "caseDetails", 4, "ngIf"], ["class", "govuk-!-margin-bottom-4", 4, "ngIf"], [3, "caseDetails"], [1, "govuk-!-margin-bottom-4"], [3, "formGroup"], [1, "govuk-warning-text"], ["aria-hidden", "true", 1, "govuk-warning-text__icon"], [1, "govuk-warning-text__text"], [1, "govuk-visually-hidden"], [3, "content"], [1, "govuk-form-group", 3, "ngClass"], [1, "govuk-label-wrapper"], ["for", "subject", 1, "govuk-label", "govuk-label--m", "govuk-!-font-weight-bold"], ["id", "subject-hint", 1, "govuk-hint"], ["id", "subject-error", "class", "govuk-error-message", 4, "ngIf"], ["type", "text", "id", "subject", "formControlName", "subject", "maxlength", "200", "aria-describedby", "subject-error", 1, "govuk-input", 3, "input"], ["for", "body", 1, "govuk-label", "govuk-label--m", "govuk-!-font-weight-bold"], ["id", "body-hint", 1, "govuk-hint"], ["id", "body-error", "class", "govuk-error-message", 4, "ngIf"], ["id", "body", "name", "body", "rows", "5", "aria-describedby", "body-hint body-error", 1, "govuk-textarea", 3, "formControlName"], [1, "govuk-fieldset"], [1, "govuk-label", "govuk-label--m", "govuk-!-font-weight-bold"], ["id", "isHearingRelated-error", "class", "govuk-error-message", 4, "ngIf"], ["data-module", "govuk-radios", 1, "govuk-radios", "govuk-radios--inline"], [1, "govuk-radios__item"], ["id", "isHearingRelated-yes", "name", "isHearingRelated", "type", "radio", "formControlName", "isHearingRelated", 1, "govuk-radios__input", 3, "checked", "value"], ["for", "isHearingRelated-yes", 1, "govuk-label", "govuk-radios__label"], ["id", "isHearingRelated-no", "name", "isHearingRelated", "type", "radio", "formControlName", "isHearingRelated", 1, "govuk-radios__input", 3, "checked", "value"], ["for", "isHearingRelated-no", 1, "govuk-label", "govuk-radios__label"], [4, "ngIf"], ["id", "subject-error", 1, "govuk-error-message"], ["id", "body-error", 1, "govuk-error-message"], ["id", "isHearingRelated-error", 1, "govuk-error-message"], [1, "govuk-radios__conditional", "govuk-!-margin-top-1", 3, "ngClass"], ["role", "group", 1, "govuk-fieldset"], [1, "govuk-label", "govuk-label--s"], ["id", "hearingDate-error", "class", "govuk-error-message", 4, "ngIf"], ["formControlName", "hearingDate"], ["id", "hearingDate-error", 1, "govuk-error-message"]], template: function QueryWriteRaiseQueryComponent_Template(rf, ctx) { if (rf & 1) {
|
|
207
254
|
i0.ɵɵelementStart(0, "div")(1, "div", 0)(2, "div", 1);
|
|
208
255
|
i0.ɵɵtext(3);
|
|
209
256
|
i0.ɵɵpipe(4, "rpxTranslate");
|
|
@@ -213,7 +260,7 @@ export class QueryWriteRaiseQueryComponent {
|
|
|
213
260
|
i0.ɵɵpipe(7, "rpxTranslate");
|
|
214
261
|
i0.ɵɵelementEnd()();
|
|
215
262
|
i0.ɵɵelementStart(8, "div");
|
|
216
|
-
i0.ɵɵ
|
|
263
|
+
i0.ɵɵtemplate(9, QueryWriteRaiseQueryComponent_ccd_query_case_details_header_9_Template, 1, 1, "ccd-query-case-details-header", 3);
|
|
217
264
|
i0.ɵɵelementEnd();
|
|
218
265
|
i0.ɵɵelement(10, "hr");
|
|
219
266
|
i0.ɵɵtemplate(11, QueryWriteRaiseQueryComponent_div_11_Template, 51, 49, "div", 4);
|
|
@@ -224,15 +271,15 @@ export class QueryWriteRaiseQueryComponent {
|
|
|
224
271
|
i0.ɵɵadvance(3);
|
|
225
272
|
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(7, 6, "Enter query details"));
|
|
226
273
|
i0.ɵɵadvance(3);
|
|
227
|
-
i0.ɵɵproperty("
|
|
274
|
+
i0.ɵɵproperty("ngIf", ctx.caseDetails);
|
|
228
275
|
i0.ɵɵadvance(2);
|
|
229
276
|
i0.ɵɵproperty("ngIf", ctx.showForm);
|
|
230
277
|
} }, encapsulation: 2 });
|
|
231
278
|
}
|
|
232
279
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(QueryWriteRaiseQueryComponent, [{
|
|
233
280
|
type: Component,
|
|
234
|
-
args: [{ selector: 'ccd-query-write-raise-query', template: "<div>\n <div class=\"govuk-!-margin-bottom-6\">\n <div class=\"govuk-caption-l\">{{ 'Raise a query' | rpxTranslate }}</div>\n <h1 class=\"govuk-heading-l govuk-!-margin-bottom-4\">{{ 'Enter query details' | rpxTranslate }}</h1>\n </div>\n\n <div>\n <ccd-query-case-details-header [caseDetails]=\"caseDetails\"></ccd-query-case-details-header>\n </div>\n\n <hr>\n\n <div class=\"govuk-!-margin-bottom-4\" *ngIf=\"showForm\">\n <div [formGroup]=\"formGroup\">\n <div>\n <div class=\"govuk-warning-text\">\n <span class=\"govuk-warning-text__icon\" aria-hidden=\"true\">!</span>\n <strong class=\"govuk-warning-text__text\">\n <span class=\"govuk-visually-hidden\">Warning</span>\n <ccd-markdown\n [content]=\"serviceMessage | rpxTranslate\">\n </ccd-markdown>\n </strong>\n </div>\n <div class=\"govuk-form-group\" [ngClass]=\"{'govuk-form-group--error': submitted && formGroup.get('subject').hasError('required')}\">\n <div class=\"govuk-label-wrapper\">\n <label class=\"govuk-label govuk-label--m govuk-!-font-weight-bold\" for=\"subject\">\n {{ 'Query subject' | rpxTranslate }}\n </label>\n </div>\n <div id=\"subject-hint\" class=\"govuk-hint\">\n {{ 'The subject should be a summary of your query' | rpxTranslate }}\n </div>\n <p id=\"subject-error\" class=\"govuk-error-message\"\n *ngIf=\"submitted && (formGroup.get('subject').hasError('required') || formGroup.get('subject').hasError('maxlength'))\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }}</span>\n {{ getSubjectErrorMessage() | rpxTranslate }}\n </p>\n\n <input type=\"text\"\n id=\"subject\"\n class=\"govuk-input\"\n formControlName=\"subject\"\n maxlength=\"200\"\n (input)=\"onSubjectInput()\"\n aria-describedby=\"subject-error\" />\n </div>\n\n <div class=\"govuk-form-group\"\n [ngClass]=\"{'govuk-form-group--error': submitted && formGroup.get('body').hasError('required')}\">\n <div class=\"govuk-label-wrapper\">\n <label class=\"govuk-label govuk-label--m govuk-!-font-weight-bold\" for=\"body\">\n {{ 'Query detail' | rpxTranslate }}\n </label>\n </div>\n <div id=\"body-hint\" class=\"govuk-hint\">\n {{ 'Include as many details as possible so case workers can respond to your query' | rpxTranslate }}\n </div>\n <p id=\"body-error\" class=\"govuk-error-message\"\n *ngIf=\"submitted && formGroup.get('body').hasError('required')\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }} </span>{{ raiseQueryErrorMessage.QUERY_BODY | rpxTranslate }}\n </p>\n <textarea [formControlName]=\"'body'\"\n id=\"body\" name=\"body\" rows=\"5\"\n aria-describedby=\"body-hint body-error\"\n class=\"govuk-textarea\"\n [class.govuk-textarea--error]=\"submitted && formGroup.get('body').hasError('required')\"\n >\n </textarea>\n </div>\n\n <div class=\"govuk-form-group\"\n [ngClass]=\"{'govuk-form-group--error': submitted && formGroup.get('isHearingRelated').hasError('required')}\">\n <fieldset class=\"govuk-fieldset\">\n <legend>\n <label class=\"govuk-label govuk-label--m govuk-!-font-weight-bold\">\n {{ 'Is the query hearing related?' | rpxTranslate }}\n </label>\n </legend>\n <p id=\"isHearingRelated-error\" class=\"govuk-error-message\"\n *ngIf=\"submitted && formGroup.get('isHearingRelated').hasError('required')\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }} </span>{{ raiseQueryErrorMessage.QUERY_HEARING_RELATED | rpxTranslate }}\n </p>\n <div class=\"govuk-radios govuk-radios--inline\" data-module=\"govuk-radios\">\n <div class=\"govuk-radios__item\">\n <input class=\"govuk-radios__input\" id=\"isHearingRelated-yes\" name=\"isHearingRelated\"\n type=\"radio\"\n formControlName=\"isHearingRelated\"\n [checked]=\"formGroup.get('isHearingRelated').value === true\" [value]=\"true\"\n >\n <label class=\"govuk-label govuk-radios__label\" for=\"isHearingRelated-yes\">\n {{ 'Is the query hearing related?' | rpxTranslate: null : 'Yes' }}\n </label>\n </div>\n <div class=\"govuk-radios__item\">\n <input class=\"govuk-radios__input\" id=\"isHearingRelated-no\" name=\"isHearingRelated\"\n type=\"radio\"\n formControlName=\"isHearingRelated\"\n [checked]=\"formGroup.get('isHearingRelated').value === false\" [value]=\"false\"\n >\n <label class=\"govuk-label govuk-radios__label\" for=\"isHearingRelated-no\">\n {{ 'Is the query hearing related?' | rpxTranslate: null : 'No' }}\n </label>\n </div>\n </div>\n </fieldset>\n\n <ng-container *ngIf=\"formGroup.get('isHearingRelated').value\">\n <div class=\"govuk-radios__conditional govuk-!-margin-top-1\"\n [ngClass]=\"{'govuk-form-group--error': submitted &&\n formGroup.get('isHearingRelated').value === true &&\n formGroup.get('hearingDate').value === null}\">\n <fieldset class=\"govuk-fieldset\" role=\"group\">\n <legend>\n <label class=\"govuk-label govuk-label--s\">\n {{ 'What is the date of the hearing?' | rpxTranslate }}\n </label>\n </legend>\n <p id=\"hearingDate-error\" class=\"govuk-error-message\"\n *ngIf=\"submitted && formGroup.get('isHearingRelated').value === true && formGroup.get('hearingDate').value === null\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }} </span>{{ raiseQueryErrorMessage.QUERY_HEARING_DATE | rpxTranslate }}\n </p>\n <ccd-query-write-date-input formControlName=\"hearingDate\"></ccd-query-write-date-input>\n </fieldset>\n </div>\n </ng-container>\n </div>\n </div>\n </div>\n</div>\n" }]
|
|
235
|
-
}],
|
|
281
|
+
args: [{ selector: 'ccd-query-write-raise-query', template: "<div>\n <div class=\"govuk-!-margin-bottom-6\">\n <div class=\"govuk-caption-l\">{{ 'Raise a query' | rpxTranslate }}</div>\n <h1 class=\"govuk-heading-l govuk-!-margin-bottom-4\">{{ 'Enter query details' | rpxTranslate }}</h1>\n </div>\n\n <div>\n <ccd-query-case-details-header [caseDetails]=\"caseDetails\" *ngIf=\"caseDetails\"></ccd-query-case-details-header>\n </div>\n\n <hr>\n\n <div class=\"govuk-!-margin-bottom-4\" *ngIf=\"showForm\">\n <div [formGroup]=\"formGroup\">\n <div>\n <div class=\"govuk-warning-text\">\n <span class=\"govuk-warning-text__icon\" aria-hidden=\"true\">!</span>\n <strong class=\"govuk-warning-text__text\">\n <span class=\"govuk-visually-hidden\">Warning</span>\n <ccd-markdown\n [content]=\"serviceMessage | rpxTranslate\">\n </ccd-markdown>\n </strong>\n </div>\n <div class=\"govuk-form-group\" [ngClass]=\"{'govuk-form-group--error': submitted && formGroup.get('subject').hasError('required')}\">\n <div class=\"govuk-label-wrapper\">\n <label class=\"govuk-label govuk-label--m govuk-!-font-weight-bold\" for=\"subject\">\n {{ 'Query subject' | rpxTranslate }}\n </label>\n </div>\n <div id=\"subject-hint\" class=\"govuk-hint\">\n {{ 'The subject should be a summary of your query' | rpxTranslate }}\n </div>\n <p id=\"subject-error\" class=\"govuk-error-message\"\n *ngIf=\"submitted && (formGroup.get('subject').hasError('required') || formGroup.get('subject').hasError('maxlength'))\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }}</span>\n {{ getSubjectErrorMessage() | rpxTranslate }}\n </p>\n\n <input type=\"text\"\n id=\"subject\"\n class=\"govuk-input\"\n formControlName=\"subject\"\n maxlength=\"200\"\n (input)=\"onSubjectInput()\"\n aria-describedby=\"subject-error\" />\n </div>\n\n <div class=\"govuk-form-group\"\n [ngClass]=\"{'govuk-form-group--error': submitted && formGroup.get('body').hasError('required')}\">\n <div class=\"govuk-label-wrapper\">\n <label class=\"govuk-label govuk-label--m govuk-!-font-weight-bold\" for=\"body\">\n {{ 'Query detail' | rpxTranslate }}\n </label>\n </div>\n <div id=\"body-hint\" class=\"govuk-hint\">\n {{ 'Include as many details as possible so case workers can respond to your query' | rpxTranslate }}\n </div>\n <p id=\"body-error\" class=\"govuk-error-message\"\n *ngIf=\"submitted && formGroup.get('body').hasError('required')\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }} </span>{{ raiseQueryErrorMessage.QUERY_BODY | rpxTranslate }}\n </p>\n <textarea [formControlName]=\"'body'\"\n id=\"body\" name=\"body\" rows=\"5\"\n aria-describedby=\"body-hint body-error\"\n class=\"govuk-textarea\"\n [class.govuk-textarea--error]=\"submitted && formGroup.get('body').hasError('required')\"\n >\n </textarea>\n </div>\n\n <div class=\"govuk-form-group\"\n [ngClass]=\"{'govuk-form-group--error': submitted && formGroup.get('isHearingRelated').hasError('required')}\">\n <fieldset class=\"govuk-fieldset\">\n <legend>\n <label class=\"govuk-label govuk-label--m govuk-!-font-weight-bold\">\n {{ 'Is the query hearing related?' | rpxTranslate }}\n </label>\n </legend>\n <p id=\"isHearingRelated-error\" class=\"govuk-error-message\"\n *ngIf=\"submitted && formGroup.get('isHearingRelated').hasError('required')\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }} </span>{{ raiseQueryErrorMessage.QUERY_HEARING_RELATED | rpxTranslate }}\n </p>\n <div class=\"govuk-radios govuk-radios--inline\" data-module=\"govuk-radios\">\n <div class=\"govuk-radios__item\">\n <input class=\"govuk-radios__input\" id=\"isHearingRelated-yes\" name=\"isHearingRelated\"\n type=\"radio\"\n formControlName=\"isHearingRelated\"\n [checked]=\"formGroup.get('isHearingRelated').value === true\" [value]=\"true\"\n >\n <label class=\"govuk-label govuk-radios__label\" for=\"isHearingRelated-yes\">\n {{ 'Is the query hearing related?' | rpxTranslate: null : 'Yes' }}\n </label>\n </div>\n <div class=\"govuk-radios__item\">\n <input class=\"govuk-radios__input\" id=\"isHearingRelated-no\" name=\"isHearingRelated\"\n type=\"radio\"\n formControlName=\"isHearingRelated\"\n [checked]=\"formGroup.get('isHearingRelated').value === false\" [value]=\"false\"\n >\n <label class=\"govuk-label govuk-radios__label\" for=\"isHearingRelated-no\">\n {{ 'Is the query hearing related?' | rpxTranslate: null : 'No' }}\n </label>\n </div>\n </div>\n </fieldset>\n\n <ng-container *ngIf=\"formGroup.get('isHearingRelated').value\">\n <div class=\"govuk-radios__conditional govuk-!-margin-top-1\"\n [ngClass]=\"{'govuk-form-group--error': submitted &&\n formGroup.get('isHearingRelated').value === true &&\n formGroup.get('hearingDate').value === null}\">\n <fieldset class=\"govuk-fieldset\" role=\"group\">\n <legend>\n <label class=\"govuk-label govuk-label--s\">\n {{ 'What is the date of the hearing?' | rpxTranslate }}\n </label>\n </legend>\n <p id=\"hearingDate-error\" class=\"govuk-error-message\"\n *ngIf=\"submitted && formGroup.get('isHearingRelated').value === true && formGroup.get('hearingDate').value === null\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }} </span>{{ raiseQueryErrorMessage.QUERY_HEARING_DATE | rpxTranslate }}\n </p>\n <ccd-query-write-date-input formControlName=\"hearingDate\"></ccd-query-write-date-input>\n </fieldset>\n </div>\n </ng-container>\n </div>\n </div>\n </div>\n</div>\n" }]
|
|
282
|
+
}], () => [{ type: i1.QueryManagementService }, { type: i2.ActivatedRoute }], { formGroup: [{
|
|
236
283
|
type: Input
|
|
237
284
|
}], submitted: [{
|
|
238
285
|
type: Input
|
|
@@ -242,6 +289,18 @@ export class QueryWriteRaiseQueryComponent {
|
|
|
242
289
|
type: Input
|
|
243
290
|
}], serviceMessage: [{
|
|
244
291
|
type: Input
|
|
292
|
+
}], queryCreateContext: [{
|
|
293
|
+
type: Input
|
|
294
|
+
}], eventData: [{
|
|
295
|
+
type: Input
|
|
296
|
+
}], queryItem: [{
|
|
297
|
+
type: Input
|
|
298
|
+
}], validate: [{
|
|
299
|
+
type: Input
|
|
300
|
+
}], triggerSubmission: [{
|
|
301
|
+
type: Input
|
|
302
|
+
}], queryDataCreated: [{
|
|
303
|
+
type: Output
|
|
245
304
|
}] }); })();
|
|
246
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(QueryWriteRaiseQueryComponent, { className: "QueryWriteRaiseQueryComponent", filePath: "lib/shared/components/palette/query-management/components/query-write/query-write-raise-query/query-write-raise-query.component.ts", lineNumber:
|
|
247
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktd3JpdGUtcmFpc2UtcXVlcnkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvcXVlcnktbWFuYWdlbWVudC9jb21wb25lbnRzL3F1ZXJ5LXdyaXRlL3F1ZXJ5LXdyaXRlLXJhaXNlLXF1ZXJ5L3F1ZXJ5LXdyaXRlLXJhaXNlLXF1ZXJ5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9wYWxldHRlL3F1ZXJ5LW1hbmFnZW1lbnQvY29tcG9uZW50cy9xdWVyeS13cml0ZS9xdWVyeS13cml0ZS1yYWlzZS1xdWVyeS9xdWVyeS13cml0ZS1yYWlzZS1xdWVyeS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7SUNpQzVDLEFBRkYsNkJBQ3lILGVBQ25GO0lBQUEsWUFBNkI7O0lBQUEsaUJBQU87SUFDeEUsWUFDRjs7SUFBQSxpQkFBSTs7O0lBRmtDLGVBQTZCO0lBQTdCLG9EQUE2QjtJQUNqRSxlQUNGO0lBREUsc0ZBQ0Y7OztJQXVCRSxBQUZGLDZCQUNvRSxlQUM5QjtJQUFBLFlBQThCOztJQUFBLGlCQUFPO0lBQUEsWUFDM0U7O0lBQUEsaUJBQUk7OztJQURrQyxlQUE4QjtJQUE5Qiw4REFBOEI7SUFBTyxlQUMzRTtJQUQyRSw4RkFDM0U7OztJQW9C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REFBb0M7WUFDYixlQUEwQztZQUExQyxpRUFBMEM7WUFJL0QsZUFBMkI7WUFBM0IsNkNBQTJCO1lBS3RCLGVBQWM7WUFBZCxtQ0FBYzs7O2lGREx6Qyw2QkFBNkI7Y0FKekMsU0FBUzsyQkFDRSw2QkFBNkI7Z0JBSXZCLFNBQVM7a0JBQXhCLEtBQUs7WUFDVSxTQUFTO2tCQUF4QixLQUFLO1lBQ1UsV0FBVztrQkFBMUIsS0FBSztZQUNVLFFBQVE7a0JBQXZCLEtBQUs7WUFDVSxjQUFjO2tCQUE3QixLQUFLOztrRkFMSyw2QkFBNkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBSYWlzZVF1ZXJ5RXJyb3JNZXNzYWdlIH0gZnJvbSAnLi4vLi4vLi4vZW51bXMnO1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY2NkLXF1ZXJ5LXdyaXRlLXJhaXNlLXF1ZXJ5JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3F1ZXJ5LXdyaXRlLXJhaXNlLXF1ZXJ5LmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBRdWVyeVdyaXRlUmFpc2VRdWVyeUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHB1YmxpYyBmb3JtR3JvdXA6IEZvcm1Hcm91cDtcbiAgQElucHV0KCkgcHVibGljIHN1Ym1pdHRlZDogYm9vbGVhbjtcbiAgQElucHV0KCkgcHVibGljIGNhc2VEZXRhaWxzO1xuICBASW5wdXQoKSBwdWJsaWMgc2hvd0Zvcm06IGJvb2xlYW47XG4gIEBJbnB1dCgpIHB1YmxpYyBzZXJ2aWNlTWVzc2FnZTogc3RyaW5nIHwgbnVsbDtcblxuICBwdWJsaWMgcmFpc2VRdWVyeUVycm9yTWVzc2FnZSA9IFJhaXNlUXVlcnlFcnJvck1lc3NhZ2U7XG5cbiAgb25TdWJqZWN0SW5wdXQoKTogdm9pZCB7XG4gICAgY29uc3QgY29udHJvbCA9IHRoaXMuZm9ybUdyb3VwLmdldCgnc3ViamVjdCcpO1xuICAgIGNvbnN0IHZhbHVlID0gY29udHJvbD8udmFsdWU7XG4gICAgaWYgKHZhbHVlICYmIHZhbHVlLmxlbmd0aCA+IDIwMCkge1xuICAgICAgY29udHJvbD8uc2V0VmFsdWUodmFsdWUuc3Vic3RyaW5nKDAsIDIwMCkpO1xuICAgIH1cbiAgfVxuXG4gIGdldFN1YmplY3RFcnJvck1lc3NhZ2UoKTogc3RyaW5nIHtcbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5mb3JtR3JvdXAuZ2V0KCdzdWJqZWN0Jyk7XG4gICAgaWYgKGNvbnRyb2wuaGFzRXJyb3IoJ3JlcXVpcmVkJykpIHtcbiAgICAgIHJldHVybiB0aGlzLnJhaXNlUXVlcnlFcnJvck1lc3NhZ2UuUVVFUllfU1VCSkVDVDtcbiAgICB9XG4gICAgaWYgKGNvbnRyb2wuaGFzRXJyb3IoJ21heGxlbmd0aCcpKSB7XG4gICAgICByZXR1cm4gdGhpcy5yYWlzZVF1ZXJ5RXJyb3JNZXNzYWdlLlFVRVJZX1NVQkpFQ1RfTUFYX0xFTkdUSDtcbiAgICB9XG4gICAgcmV0dXJuICcnO1xuICB9XG59XG4iLCI8ZGl2PlxuICA8ZGl2IGNsYXNzPVwiZ292dWstIS1tYXJnaW4tYm90dG9tLTZcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZ292dWstY2FwdGlvbi1sXCI+e3sgJ1JhaXNlIGEgcXVlcnknIHwgcnB4VHJhbnNsYXRlIH19PC9kaXY+XG4gICAgPGgxIGNsYXNzPVwiZ292dWstaGVhZGluZy1sIGdvdnVrLSEtbWFyZ2luLWJvdHRvbS00XCI+e3sgJ0VudGVyIHF1ZXJ5IGRldGFpbHMnIHwgcnB4VHJhbnNsYXRlIH19PC9oMT5cbiAgPC9kaXY+XG5cbiAgPGRpdj5cbiAgICA8Y2NkLXF1ZXJ5LWNhc2UtZGV0YWlscy1oZWFkZXIgW2Nhc2VEZXRhaWxzXT1cImNhc2VEZXRhaWxzXCI+PC9jY2QtcXVlcnktY2FzZS1kZXRhaWxzLWhlYWRlcj5cbiAgPC9kaXY+XG5cbiAgPGhyPlxuXG4gIDxkaXYgY2xhc3M9XCJnb3Z1ay0hLW1hcmdpbi1ib3R0b20tNFwiICpuZ0lmPVwic2hvd0Zvcm1cIj5cbiAgICA8ZGl2IFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCI+XG4gICAgICA8ZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZ292dWstd2FybmluZy10ZXh0XCI+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJnb3Z1ay13YXJuaW5nLXRleHRfX2ljb25cIiBhcmlhLWhpZGRlbj1cInRydWVcIj4hPC9zcGFuPlxuICAgICAgICAgIDxzdHJvbmcgY2xhc3M9XCJnb3Z1ay13YXJuaW5nLXRleHRfX3RleHRcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ292dWstdmlzdWFsbHktaGlkZGVuXCI+V2FybmluZzwvc3Bhbj5cbiAgICAgICAgICAgIDxjY2QtbWFya2Rvd25cbiAgICAgICAgICAgICAgW2NvbnRlbnRdPVwic2VydmljZU1lc3NhZ2UgfCBycHhUcmFuc2xhdGVcIj5cbiAgICAgICAgICAgIDwvY2NkLW1hcmtkb3duPlxuICAgICAgICAgIDwvc3Ryb25nPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLWZvcm0tZ3JvdXBcIiBbbmdDbGFzc109XCJ7J2dvdnVrLWZvcm0tZ3JvdXAtLWVycm9yJzogc3VibWl0dGVkICYmIGZvcm1Hcm91cC5nZXQoJ3N1YmplY3QnKS5oYXNFcnJvcigncmVxdWlyZWQnKX1cIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ292dWstbGFiZWwtd3JhcHBlclwiPlxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZ292dWstbGFiZWwgZ292dWstbGFiZWwtLW0gZ292dWstIS1mb250LXdlaWdodC1ib2xkXCIgZm9yPVwic3ViamVjdFwiPlxuICAgICAgICAgICAgICB7eyAnUXVlcnkgc3ViamVjdCcgfCBycHhUcmFuc2xhdGUgfX1cbiAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBpZD1cInN1YmplY3QtaGludFwiIGNsYXNzPVwiZ292dWstaGludFwiPlxuICAgICAgICAgICAge3sgJ1RoZSBzdWJqZWN0IHNob3VsZCBiZSBhIHN1bW1hcnkgb2YgeW91ciBxdWVyeScgfCBycHhUcmFuc2xhdGUgfX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8cCBpZD1cInN1YmplY3QtZXJyb3JcIiBjbGFzcz1cImdvdnVrLWVycm9yLW1lc3NhZ2VcIlxuICAgICAgICAgICAgKm5nSWY9XCJzdWJtaXR0ZWQgJiYgKGZvcm1Hcm91cC5nZXQoJ3N1YmplY3QnKS5oYXNFcnJvcigncmVxdWlyZWQnKSB8fCBmb3JtR3JvdXAuZ2V0KCdzdWJqZWN0JykuaGFzRXJyb3IoJ21heGxlbmd0aCcpKVwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJnb3Z1ay12aXN1YWxseS1oaWRkZW5cIj57eyAnRXJyb3I6JyB8IHJweFRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIHt7IGdldFN1YmplY3RFcnJvck1lc3NhZ2UoKSB8IHJweFRyYW5zbGF0ZSB9fVxuICAgICAgICAgIDwvcD5cblxuICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICBpZD1cInN1YmplY3RcIlxuICAgICAgICAgICAgY2xhc3M9XCJnb3Z1ay1pbnB1dFwiXG4gICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJzdWJqZWN0XCJcbiAgICAgICAgICAgIG1heGxlbmd0aD1cIjIwMFwiXG4gICAgICAgICAgICAoaW5wdXQpPVwib25TdWJqZWN0SW5wdXQoKVwiXG4gICAgICAgICAgICBhcmlhLWRlc2NyaWJlZGJ5PVwic3ViamVjdC1lcnJvclwiIC8+XG4gICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiZ292dWstZm9ybS1ncm91cFwiXG4gICAgICAgICAgICAgW25nQ2xhc3NdPVwieydnb3Z1ay1mb3JtLWdyb3VwLS1lcnJvcic6IHN1Ym1pdHRlZCAmJiBmb3JtR3JvdXAuZ2V0KCdib2R5JykuaGFzRXJyb3IoJ3JlcXVpcmVkJyl9XCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLWxhYmVsLXdyYXBwZXJcIj5cbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImdvdnVrLWxhYmVsIGdvdnVrLWxhYmVsLS1tIGdvdnVrLSEtZm9udC13ZWlnaHQtYm9sZFwiIGZvcj1cImJvZHlcIj5cbiAgICAgICAgICAgICAge3sgJ1F1ZXJ5IGRldGFpbCcgfCBycHhUcmFuc2xhdGUgfX1cbiAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBpZD1cImJvZHktaGludFwiIGNsYXNzPVwiZ292dWstaGludFwiPlxuICAgICAgICAgICAge3sgJ0luY2x1ZGUgYXMgbWFueSBkZXRhaWxzIGFzIHBvc3NpYmxlIHNvIGNhc2Ugd29ya2VycyBjYW4gcmVzcG9uZCB0byB5b3VyIHF1ZXJ5JyB8IHJweFRyYW5zbGF0ZSB9fVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxwIGlkPVwiYm9keS1lcnJvclwiIGNsYXNzPVwiZ292dWstZXJyb3ItbWVzc2FnZVwiXG4gICAgICAgICAgICAgICpuZ0lmPVwic3VibWl0dGVkICYmIGZvcm1Hcm91cC5nZXQoJ2JvZHknKS5oYXNFcnJvcigncmVxdWlyZWQnKVwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJnb3Z1ay12aXN1YWxseS1oaWRkZW5cIj57eyAnRXJyb3I6JyB8IHJweFRyYW5zbGF0ZSB9fSA8L3NwYW4+e3sgcmFpc2VRdWVyeUVycm9yTWVzc2FnZS5RVUVSWV9CT0RZIHwgcnB4VHJhbnNsYXRlIH19XG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDx0ZXh0YXJlYSBbZm9ybUNvbnRyb2xOYW1lXT1cIidib2R5J1wiXG4gICAgICAgICAgICAgICAgICAgIGlkPVwiYm9keVwiIG5hbWU9XCJib2R5XCIgcm93cz1cIjVcIlxuICAgICAgICAgICAgICAgICAgICBhcmlhLWRlc2NyaWJlZGJ5PVwiYm9keS1oaW50IGJvZHktZXJyb3JcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImdvdnVrLXRleHRhcmVhXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmdvdnVrLXRleHRhcmVhLS1lcnJvcl09XCJzdWJtaXR0ZWQgJiYgZm9ybUdyb3VwLmdldCgnYm9keScpLmhhc0Vycm9yKCdyZXF1aXJlZCcpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgPC90ZXh0YXJlYT5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiZ292dWstZm9ybS1ncm91cFwiXG4gICAgICAgICAgIFtuZ0NsYXNzXT1cInsnZ292dWstZm9ybS1ncm91cC0tZXJyb3InOiBzdWJtaXR0ZWQgJiYgZm9ybUdyb3VwLmdldCgnaXNIZWFyaW5nUmVsYXRlZCcpLmhhc0Vycm9yKCdyZXF1aXJlZCcpfVwiPlxuICAgICAgICA8ZmllbGRzZXQgY2xhc3M9XCJnb3Z1ay1maWVsZHNldFwiPlxuICAgICAgICAgIDxsZWdlbmQ+XG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJnb3Z1ay1sYWJlbCBnb3Z1ay1sYWJlbC0tbSBnb3Z1ay0hLWZvbnQtd2VpZ2h0LWJvbGRcIj5cbiAgICAgICAgICAgICAge3sgJ0lzIHRoZSBxdWVyeSBoZWFyaW5nIHJlbGF0ZWQ/JyB8IHJweFRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICA8L2xlZ2VuZD5cbiAgICAgICAgICA8cCBpZD1cImlzSGVhcmluZ1JlbGF0ZWQtZXJyb3JcIiBjbGFzcz1cImdvdnVrLWVycm9yLW1lc3NhZ2VcIlxuICAgICAgICAgICAgICAqbmdJZj1cInN1Ym1pdHRlZCAmJiBmb3JtR3JvdXAuZ2V0KCdpc0hlYXJpbmdSZWxhdGVkJykuaGFzRXJyb3IoJ3JlcXVpcmVkJylcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ292dWstdmlzdWFsbHktaGlkZGVuXCI+e3sgJ0Vycm9yOicgfCBycHhUcmFuc2xhdGUgfX0gPC9zcGFuPnt7IHJhaXNlUXVlcnlFcnJvck1lc3NhZ2UuUVVFUllfSEVBUklOR19SRUxBVEVEIHwgcnB4VHJhbnNsYXRlIH19XG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1yYWRpb3MgZ292dWstcmFkaW9zLS1pbmxpbmVcIiBkYXRhLW1vZHVsZT1cImdvdnVrLXJhZGlvc1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLXJhZGlvc19faXRlbVwiPlxuICAgICAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJnb3Z1ay1yYWRpb3NfX2lucHV0XCIgaWQ9XCJpc0hlYXJpbmdSZWxhdGVkLXllc1wiIG5hbWU9XCJpc0hlYXJpbmdSZWxhdGVkXCJcbiAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJyYWRpb1wiXG4gICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJpc0hlYXJpbmdSZWxhdGVkXCJcbiAgICAgICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cImZvcm1Hcm91cC5nZXQoJ2lzSGVhcmluZ1JlbGF0ZWQnKS52YWx1ZSA9PT0gdHJ1ZVwiIFt2YWx1ZV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJnb3Z1ay1sYWJlbCBnb3Z1ay1yYWRpb3NfX2xhYmVsXCIgZm9yPVwiaXNIZWFyaW5nUmVsYXRlZC15ZXNcIj5cbiAgICAgICAgICAgICAgICB7eyAnSXMgdGhlIHF1ZXJ5IGhlYXJpbmcgcmVsYXRlZD8nIHwgcnB4VHJhbnNsYXRlOiBudWxsIDogJ1llcycgfX1cbiAgICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLXJhZGlvc19faXRlbVwiPlxuICAgICAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJnb3Z1ay1yYWRpb3NfX2lucHV0XCIgaWQ9XCJpc0hlYXJpbmdSZWxhdGVkLW5vXCIgbmFtZT1cImlzSGVhcmluZ1JlbGF0ZWRcIlxuICAgICAgICAgICAgICAgICAgICAgdHlwZT1cInJhZGlvXCJcbiAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImlzSGVhcmluZ1JlbGF0ZWRcIlxuICAgICAgICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwiZm9ybUdyb3VwLmdldCgnaXNIZWFyaW5nUmVsYXRlZCcpLnZhbHVlID09PSBmYWxzZVwiIFt2YWx1ZV09XCJmYWxzZVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZ292dWstbGFiZWwgZ292dWstcmFkaW9zX19sYWJlbFwiIGZvcj1cImlzSGVhcmluZ1JlbGF0ZWQtbm9cIj5cbiAgICAgICAgICAgICAgICB7eyAnSXMgdGhlIHF1ZXJ5IGhlYXJpbmcgcmVsYXRlZD8nIHwgcnB4VHJhbnNsYXRlOiBudWxsIDogJ05vJyB9fVxuICAgICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZmllbGRzZXQ+XG5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImZvcm1Hcm91cC5nZXQoJ2lzSGVhcmluZ1JlbGF0ZWQnKS52YWx1ZVwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1yYWRpb3NfX2NvbmRpdGlvbmFsIGdvdnVrLSEtbWFyZ2luLXRvcC0xXCJcbiAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnZ292dWstZm9ybS1ncm91cC0tZXJyb3InOiBzdWJtaXR0ZWQgJiZcbiAgICAgICAgICAgICAgIGZvcm1Hcm91cC5nZXQoJ2lzSGVhcmluZ1JlbGF0ZWQnKS52YWx1ZSA9PT0gdHJ1ZSAmJlxuICAgICAgICAgICAgICAgZm9ybUdyb3VwLmdldCgnaGVhcmluZ0RhdGUnKS52YWx1ZSA9PT0gbnVsbH1cIj5cbiAgICAgICAgICAgIDxmaWVsZHNldCBjbGFzcz1cImdvdnVrLWZpZWxkc2V0XCIgcm9sZT1cImdyb3VwXCI+XG4gICAgICAgICAgICAgIDxsZWdlbmQ+XG4gICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZ292dWstbGFiZWwgZ292dWstbGFiZWwtLXNcIj5cbiAgICAgICAgICAgICAgICAgIHt7ICdXaGF0IGlzIHRoZSBkYXRlIG9mIHRoZSBoZWFyaW5nPycgfCBycHhUcmFuc2xhdGUgfX1cbiAgICAgICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgICA8L2xlZ2VuZD5cbiAgICAgICAgICAgICAgPHAgaWQ9XCJoZWFyaW5nRGF0ZS1lcnJvclwiIGNsYXNzPVwiZ292dWstZXJyb3ItbWVzc2FnZVwiXG4gICAgICAgICAgICAgICAgICAqbmdJZj1cInN1Ym1pdHRlZCAmJiBmb3JtR3JvdXAuZ2V0KCdpc0hlYXJpbmdSZWxhdGVkJykudmFsdWUgPT09IHRydWUgJiYgZm9ybUdyb3VwLmdldCgnaGVhcmluZ0RhdGUnKS52YWx1ZSA9PT0gbnVsbFwiPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ292dWstdmlzdWFsbHktaGlkZGVuXCI+e3sgJ0Vycm9yOicgfCBycHhUcmFuc2xhdGUgfX0gPC9zcGFuPnt7IHJhaXNlUXVlcnlFcnJvck1lc3NhZ2UuUVVFUllfSEVBUklOR19EQVRFIHwgcnB4VHJhbnNsYXRlIH19XG4gICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgPGNjZC1xdWVyeS13cml0ZS1kYXRlLWlucHV0IGZvcm1Db250cm9sTmFtZT1cImhlYXJpbmdEYXRlXCI+PC9jY2QtcXVlcnktd3JpdGUtZGF0ZS1pbnB1dD5cbiAgICAgICAgICAgIDwvZmllbGRzZXQ+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
305
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(QueryWriteRaiseQueryComponent, { className: "QueryWriteRaiseQueryComponent", filePath: "lib/shared/components/palette/query-management/components/query-write/query-write-raise-query/query-write-raise-query.component.ts", lineNumber: 19 }); })();
|
|
306
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktd3JpdGUtcmFpc2UtcXVlcnkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvcXVlcnktbWFuYWdlbWVudC9jb21wb25lbnRzL3F1ZXJ5LXdyaXRlL3F1ZXJ5LXdyaXRlLXJhaXNlLXF1ZXJ5L3F1ZXJ5LXdyaXRlLXJhaXNlLXF1ZXJ5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9wYWxldHRlL3F1ZXJ5LW1hbmFnZW1lbnQvY29tcG9uZW50cy9xdWVyeS13cml0ZS9xdWVyeS13cml0ZS1yYWlzZS1xdWVyeS9xdWVyeS13cml0ZS1yYWlzZS1xdWVyeS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RCxPQUFPLEVBRUwsZ0JBQWdCLEVBQ2hCLFFBQVEsRUFDVCxNQUFNLDJDQUEyQyxDQUFDO0FBRW5ELE9BQU8sRUFBMkIsa0JBQWtCLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFN0YsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDM0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7SUNMN0MsbURBQStHOzs7SUFBaEYsZ0RBQTJC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Q0FBQztRQUVGLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVPLGlDQUFpQztRQUN2QyxPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxpQ0FBaUMsQ0FDbEUsSUFBSSxDQUFDLFNBQVMsRUFDZCxJQUFJLENBQUMsa0JBQWtCLEVBQ3ZCLElBQUksQ0FBQyxTQUFTLEVBQ2QsSUFBSSxDQUFDLFNBQVMsQ0FDZixDQUFDO0lBQ0osQ0FBQzt1SEE1RVUsNkJBQTZCOzZEQUE3Qiw2QkFBNkI7WUNoQnRDLEFBREYsQUFERiwyQkFBSyxhQUNrQyxhQUNOO1lBQUEsWUFBb0M7O1lBQUEsaUJBQU07WUFDdkUsNkJBQW9EO1lBQUEsWUFBMEM7O1lBQ2hHLEFBRGdHLGlCQUFLLEVBQy9GO1lBRU4sMkJBQUs7WUFDSCxrSUFBK0U7WUFDakYsaUJBQU07WUFFTixzQkFBSTtZQUVKLGtGQUFzRDtZQVp4RCxpQkFBSzs7WUFFNEIsZUFBb0M7WUFBcEMsMkRBQW9DO1lBQ2IsZUFBMEM7WUFBMUMsaUVBQTBDO1lBSWxDLGVBQWlCO1lBQWpCLHNDQUFpQjtZQUt6QyxlQUFjO1lBQWQsbUNBQWM7OztpRkRNekMsNkJBQTZCO2NBSnpDLFNBQVM7MkJBQ0UsNkJBQTZCO29GQUl2QixTQUFTO2tCQUF4QixLQUFLO1lBQ1UsU0FBUztrQkFBeEIsS0FBSztZQUNVLFdBQVc7a0JBQTFCLEtBQUs7WUFDVSxRQUFRO2tCQUF2QixLQUFLO1lBQ1UsY0FBYztrQkFBN0IsS0FBSztZQUNVLGtCQUFrQjtrQkFBakMsS0FBSztZQUNVLFNBQVM7a0JBQXhCLEtBQUs7WUFDVSxTQUFTO2tCQUF4QixLQUFLO1lBQ1UsUUFBUTtrQkFBdkIsS0FBSztZQUNVLGlCQUFpQjtrQkFBaEMsS0FBSztZQUVXLGdCQUFnQjtrQkFBaEMsTUFBTTs7a0ZBWkksNkJBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUmFpc2VRdWVyeUVycm9yTWVzc2FnZSB9IGZyb20gJy4uLy4uLy4uL2VudW1zJztcbmltcG9ydCB7XG4gIENhc2VFdmVudERhdGEsXG4gIENhc2VFdmVudFRyaWdnZXIsXG4gIENhc2VWaWV3XG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9zaGFyZWQvZG9tYWluJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFFtQ2FzZVF1ZXJpZXNDb2xsZWN0aW9uLCBRdWVyeUNyZWF0ZUNvbnRleHQsIFF1ZXJ5TGlzdEl0ZW0gfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgRXZlbnRDb21wbGV0aW9uUGFyYW1zIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vY2FzZS1lZGl0b3IvZG9tYWluL2V2ZW50LWNvbXBsZXRpb24tcGFyYW1zLm1vZGVsJztcbmltcG9ydCB7IFF1ZXJ5TWFuYWdlbWVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NjZC1xdWVyeS13cml0ZS1yYWlzZS1xdWVyeScsXG4gIHRlbXBsYXRlVXJsOiAnLi9xdWVyeS13cml0ZS1yYWlzZS1xdWVyeS5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgUXVlcnlXcml0ZVJhaXNlUXVlcnlDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBwdWJsaWMgZm9ybUdyb3VwOiBGb3JtR3JvdXA7XG4gIEBJbnB1dCgpIHB1YmxpYyBzdWJtaXR0ZWQ6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHB1YmxpYyBjYXNlRGV0YWlsczogQ2FzZVZpZXc7XG4gIEBJbnB1dCgpIHB1YmxpYyBzaG93Rm9ybTogYm9vbGVhbjtcbiAgQElucHV0KCkgcHVibGljIHNlcnZpY2VNZXNzYWdlOiBzdHJpbmcgfCBudWxsO1xuICBASW5wdXQoKSBwdWJsaWMgcXVlcnlDcmVhdGVDb250ZXh0OiBRdWVyeUNyZWF0ZUNvbnRleHQ7XG4gIEBJbnB1dCgpIHB1YmxpYyBldmVudERhdGE6IENhc2VFdmVudFRyaWdnZXIgfCBudWxsID0gbnVsbDtcbiAgQElucHV0KCkgcHVibGljIHF1ZXJ5SXRlbTogUXVlcnlMaXN0SXRlbTtcbiAgQElucHV0KCkgcHVibGljIHZhbGlkYXRlOiAoY2FzZUV2ZW50RGF0YTogQ2FzZUV2ZW50RGF0YSwgcGFnZUlkOiBzdHJpbmcpID0+IE9ic2VydmFibGU8b2JqZWN0PjtcbiAgQElucHV0KCkgcHVibGljIHRyaWdnZXJTdWJtaXNzaW9uOiBib29sZWFuO1xuXG4gIEBPdXRwdXQoKSBwdWJsaWMgcXVlcnlEYXRhQ3JlYXRlZCA9IG5ldyBFdmVudEVtaXR0ZXIgPFFtQ2FzZVF1ZXJpZXNDb2xsZWN0aW9uPigpO1xuXG4gIHB1YmxpYyByYWlzZVF1ZXJ5RXJyb3JNZXNzYWdlID0gUmFpc2VRdWVyeUVycm9yTWVzc2FnZTtcbiAgcHVibGljIGV2ZW50Q29tcGxldGlvblBhcmFtczogRXZlbnRDb21wbGV0aW9uUGFyYW1zO1xuICBwdWJsaWMgbWVzc2dhZUlkOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBxdWVyeU1hbmFnZW1lbnRTZXJ2aWNlOiBRdWVyeU1hbmFnZW1lbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICApIHt9XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMubWVzc2dhZUlkID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5wYXJhbXMuZGF0YWlkO1xuICAgIGNvbnN0IGlzQ29sbGVjdGlvbkRhdGFTZXQgPSB0aGlzLnNldENhc2VRdWVyaWVzQ29sbGVjdGlvbkRhdGEoKTtcbiAgICBpZiAoaXNDb2xsZWN0aW9uRGF0YVNldCkge1xuICAgICAgaWYgKHRoaXMudHJpZ2dlclN1Ym1pc3Npb24pIHtcbiAgICAgICAgY29uc3QgZGF0YSA9IHRoaXMuZ2VuZXJhdGVDYXNlUXVlcmllc0NvbGxlY3Rpb25EYXRhKCk7XG4gICAgICAgIHRoaXMucXVlcnlEYXRhQ3JlYXRlZC5lbWl0KGRhdGEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG9uU3ViamVjdElucHV0KCk6IHZvaWQge1xuICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmZvcm1Hcm91cC5nZXQoJ3N1YmplY3QnKTtcbiAgICBjb25zdCB2YWx1ZSA9IGNvbnRyb2w/LnZhbHVlO1xuICAgIGlmICh2YWx1ZSAmJiB2YWx1ZS5sZW5ndGggPiAyMDApIHtcbiAgICAgIGNvbnRyb2w/LnNldFZhbHVlKHZhbHVlLnN1YnN0cmluZygwLCAyMDApKTtcbiAgICB9XG4gIH1cblxuICBnZXRTdWJqZWN0RXJyb3JNZXNzYWdlKCk6IHN0cmluZyB7XG4gICAgY29uc3QgY29udHJvbCA9IHRoaXMuZm9ybUdyb3VwLmdldCgnc3ViamVjdCcpO1xuICAgIGlmIChjb250cm9sLmhhc0Vycm9yKCdyZXF1aXJlZCcpKSB7XG4gICAgICByZXR1cm4gdGhpcy5yYWlzZVF1ZXJ5RXJyb3JNZXNzYWdlLlFVRVJZX1NVQkpFQ1Q7XG4gICAgfVxuICAgIGlmIChjb250cm9sLmhhc0Vycm9yKCdtYXhsZW5ndGgnKSkge1xuICAgICAgcmV0dXJuIHRoaXMucmFpc2VRdWVyeUVycm9yTWVzc2FnZS5RVUVSWV9TVUJKRUNUX01BWF9MRU5HVEg7XG4gICAgfVxuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIHB1YmxpYyBzZXRDYXNlUXVlcmllc0NvbGxlY3Rpb25EYXRhKCk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5ldmVudERhdGEpIHtcbiAgICAgIGNvbnNvbGUud2FybignRXZlbnQgZGF0YSBub3QgYXZhaWxhYmxlOyBza2lwcGluZyBjb2xsZWN0aW9uIHNldHVwLicpO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHRoaXMucXVlcnlNYW5hZ2VtZW50U2VydmljZS5zZXRDYXNlUXVlcmllc0NvbGxlY3Rpb25EYXRhKFxuICAgICAgdGhpcy5ldmVudERhdGEsXG4gICAgICB0aGlzLnF1ZXJ5Q3JlYXRlQ29udGV4dCxcbiAgICAgIHRoaXMuY2FzZURldGFpbHMsXG4gICAgICB0aGlzLm1lc3NnYWVJZFxuICAgICk7XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHByaXZhdGUgZ2VuZXJhdGVDYXNlUXVlcmllc0NvbGxlY3Rpb25EYXRhKCk6IFFtQ2FzZVF1ZXJpZXNDb2xsZWN0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5xdWVyeU1hbmFnZW1lbnRTZXJ2aWNlLmdlbmVyYXRlQ2FzZVF1ZXJpZXNDb2xsZWN0aW9uRGF0YShcbiAgICAgIHRoaXMuZm9ybUdyb3VwLFxuICAgICAgdGhpcy5xdWVyeUNyZWF0ZUNvbnRleHQsXG4gICAgICB0aGlzLnF1ZXJ5SXRlbSxcbiAgICAgIHRoaXMubWVzc2dhZUlkXG4gICAgKTtcbiAgfVxufVxuIiwiPGRpdj5cbiAgPGRpdiBjbGFzcz1cImdvdnVrLSEtbWFyZ2luLWJvdHRvbS02XCI+XG4gICAgPGRpdiBjbGFzcz1cImdvdnVrLWNhcHRpb24tbFwiPnt7ICdSYWlzZSBhIHF1ZXJ5JyB8IHJweFRyYW5zbGF0ZSB9fTwvZGl2PlxuICAgIDxoMSBjbGFzcz1cImdvdnVrLWhlYWRpbmctbCBnb3Z1ay0hLW1hcmdpbi1ib3R0b20tNFwiPnt7ICdFbnRlciBxdWVyeSBkZXRhaWxzJyB8IHJweFRyYW5zbGF0ZSB9fTwvaDE+XG4gIDwvZGl2PlxuXG4gIDxkaXY+XG4gICAgPGNjZC1xdWVyeS1jYXNlLWRldGFpbHMtaGVhZGVyIFtjYXNlRGV0YWlsc109XCJjYXNlRGV0YWlsc1wiICpuZ0lmPVwiY2FzZURldGFpbHNcIj48L2NjZC1xdWVyeS1jYXNlLWRldGFpbHMtaGVhZGVyPlxuICA8L2Rpdj5cblxuICA8aHI+XG5cbiAgPGRpdiBjbGFzcz1cImdvdnVrLSEtbWFyZ2luLWJvdHRvbS00XCIgKm5nSWY9XCJzaG93Rm9ybVwiPlxuICAgIDxkaXYgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIj5cbiAgICAgIDxkaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay13YXJuaW5nLXRleHRcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImdvdnVrLXdhcm5pbmctdGV4dF9faWNvblwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPiE8L3NwYW4+XG4gICAgICAgICAgPHN0cm9uZyBjbGFzcz1cImdvdnVrLXdhcm5pbmctdGV4dF9fdGV4dFwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJnb3Z1ay12aXN1YWxseS1oaWRkZW5cIj5XYXJuaW5nPC9zcGFuPlxuICAgICAgICAgICAgPGNjZC1tYXJrZG93blxuICAgICAgICAgICAgICBbY29udGVudF09XCJzZXJ2aWNlTWVzc2FnZSB8IHJweFRyYW5zbGF0ZVwiPlxuICAgICAgICAgICAgPC9jY2QtbWFya2Rvd24+XG4gICAgICAgICAgPC9zdHJvbmc+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZ292dWstZm9ybS1ncm91cFwiIFtuZ0NsYXNzXT1cInsnZ292dWstZm9ybS1ncm91cC0tZXJyb3InOiBzdWJtaXR0ZWQgJiYgZm9ybUdyb3VwLmdldCgnc3ViamVjdCcpLmhhc0Vycm9yKCdyZXF1aXJlZCcpfVwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1sYWJlbC13cmFwcGVyXCI+XG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJnb3Z1ay1sYWJlbCBnb3Z1ay1sYWJlbC0tbSBnb3Z1ay0hLWZvbnQtd2VpZ2h0LWJvbGRcIiBmb3I9XCJzdWJqZWN0XCI+XG4gICAgICAgICAgICAgIHt7ICdRdWVyeSBzdWJqZWN0JyB8IHJweFRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGlkPVwic3ViamVjdC1oaW50XCIgY2xhc3M9XCJnb3Z1ay1oaW50XCI+XG4gICAgICAgICAgICB7eyAnVGhlIHN1YmplY3Qgc2hvdWxkIGJlIGEgc3VtbWFyeSBvZiB5b3VyIHF1ZXJ5JyB8IHJweFRyYW5zbGF0ZSB9fVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxwIGlkPVwic3ViamVjdC1lcnJvclwiIGNsYXNzPVwiZ292dWstZXJyb3ItbWVzc2FnZVwiXG4gICAgICAgICAgICAqbmdJZj1cInN1Ym1pdHRlZCAmJiAoZm9ybUdyb3VwLmdldCgnc3ViamVjdCcpLmhhc0Vycm9yKCdyZXF1aXJlZCcpIHx8IGZvcm1Hcm91cC5nZXQoJ3N1YmplY3QnKS5oYXNFcnJvcignbWF4bGVuZ3RoJykpXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImdvdnVrLXZpc3VhbGx5LWhpZGRlblwiPnt7ICdFcnJvcjonIHwgcnB4VHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICAgICAge3sgZ2V0U3ViamVjdEVycm9yTWVzc2FnZSgpIHwgcnB4VHJhbnNsYXRlIH19XG4gICAgICAgICAgPC9wPlxuXG4gICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgIGlkPVwic3ViamVjdFwiXG4gICAgICAgICAgICBjbGFzcz1cImdvdnVrLWlucHV0XCJcbiAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInN1YmplY3RcIlxuICAgICAgICAgICAgbWF4bGVuZ3RoPVwiMjAwXCJcbiAgICAgICAgICAgIChpbnB1dCk9XCJvblN1YmplY3RJbnB1dCgpXCJcbiAgICAgICAgICAgIGFyaWEtZGVzY3JpYmVkYnk9XCJzdWJqZWN0LWVycm9yXCIgLz5cbiAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1mb3JtLWdyb3VwXCJcbiAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2dvdnVrLWZvcm0tZ3JvdXAtLWVycm9yJzogc3VibWl0dGVkICYmIGZvcm1Hcm91cC5nZXQoJ2JvZHknKS5oYXNFcnJvcigncmVxdWlyZWQnKX1cIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ292dWstbGFiZWwtd3JhcHBlclwiPlxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZ292dWstbGFiZWwgZ292dWstbGFiZWwtLW0gZ292dWstIS1mb250LXdlaWdodC1ib2xkXCIgZm9yPVwiYm9keVwiPlxuICAgICAgICAgICAgICB7eyAnUXVlcnkgZGV0YWlsJyB8IHJweFRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGlkPVwiYm9keS1oaW50XCIgY2xhc3M9XCJnb3Z1ay1oaW50XCI+XG4gICAgICAgICAgICB7eyAnSW5jbHVkZSBhcyBtYW55IGRldGFpbHMgYXMgcG9zc2libGUgc28gY2FzZSB3b3JrZXJzIGNhbiByZXNwb25kIHRvIHlvdXIgcXVlcnknIHwgcnB4VHJhbnNsYXRlIH19XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPHAgaWQ9XCJib2R5LWVycm9yXCIgY2xhc3M9XCJnb3Z1ay1lcnJvci1tZXNzYWdlXCJcbiAgICAgICAgICAgICAgKm5nSWY9XCJzdWJtaXR0ZWQgJiYgZm9ybUdyb3VwLmdldCgnYm9keScpLmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImdvdnVrLXZpc3VhbGx5LWhpZGRlblwiPnt7ICdFcnJvcjonIHwgcnB4VHJhbnNsYXRlIH19IDwvc3Bhbj57eyByYWlzZVF1ZXJ5RXJyb3JNZXNzYWdlLlFVRVJZX0JPRFkgfCBycHhUcmFuc2xhdGUgfX1cbiAgICAgICAgICA8L3A+XG4gICAgICAgICAgPHRleHRhcmVhIFtmb3JtQ29udHJvbE5hbWVdPVwiJ2JvZHknXCJcbiAgICAgICAgICAgICAgICAgICAgaWQ9XCJib2R5XCIgbmFtZT1cImJvZHlcIiByb3dzPVwiNVwiXG4gICAgICAgICAgICAgICAgICAgIGFyaWEtZGVzY3JpYmVkYnk9XCJib2R5LWhpbnQgYm9keS1lcnJvclwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZ292dWstdGV4dGFyZWFcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MuZ292dWstdGV4dGFyZWEtLWVycm9yXT1cInN1Ym1pdHRlZCAmJiBmb3JtR3JvdXAuZ2V0KCdib2R5JykuaGFzRXJyb3IoJ3JlcXVpcmVkJylcIlxuICAgICAgICAgID5cbiAgICAgICAgICA8L3RleHRhcmVhPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1mb3JtLWdyb3VwXCJcbiAgICAgICAgICAgW25nQ2xhc3NdPVwieydnb3Z1ay1mb3JtLWdyb3VwLS1lcnJvcic6IHN1Ym1pdHRlZCAmJiBmb3JtR3JvdXAuZ2V0KCdpc0hlYXJpbmdSZWxhdGVkJykuaGFzRXJyb3IoJ3JlcXVpcmVkJyl9XCI+XG4gICAgICAgIDxmaWVsZHNldCBjbGFzcz1cImdvdnVrLWZpZWxkc2V0XCI+XG4gICAgICAgICAgPGxlZ2VuZD5cbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImdvdnVrLWxhYmVsIGdvdnVrLWxhYmVsLS1tIGdvdnVrLSEtZm9udC13ZWlnaHQtYm9sZFwiPlxuICAgICAgICAgICAgICB7eyAnSXMgdGhlIHF1ZXJ5IGhlYXJpbmcgcmVsYXRlZD8nIHwgcnB4VHJhbnNsYXRlIH19XG4gICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgIDwvbGVnZW5kPlxuICAgICAgICAgIDxwIGlkPVwiaXNIZWFyaW5nUmVsYXRlZC1lcnJvclwiIGNsYXNzPVwiZ292dWstZXJyb3ItbWVzc2FnZVwiXG4gICAgICAgICAgICAgICpuZ0lmPVwic3VibWl0dGVkICYmIGZvcm1Hcm91cC5nZXQoJ2lzSGVhcmluZ1JlbGF0ZWQnKS5oYXNFcnJvcigncmVxdWlyZWQnKVwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJnb3Z1ay12aXN1YWxseS1oaWRkZW5cIj57eyAnRXJyb3I6JyB8IHJweFRyYW5zbGF0ZSB9fSA8L3NwYW4+e3sgcmFpc2VRdWVyeUVycm9yTWVzc2FnZS5RVUVSWV9IRUFSSU5HX1JFTEFURUQgfCBycHhUcmFuc2xhdGUgfX1cbiAgICAgICAgICA8L3A+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLXJhZGlvcyBnb3Z1ay1yYWRpb3MtLWlubGluZVwiIGRhdGEtbW9kdWxlPVwiZ292dWstcmFkaW9zXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ292dWstcmFkaW9zX19pdGVtXCI+XG4gICAgICAgICAgICAgIDxpbnB1dCBjbGFzcz1cImdvdnVrLXJhZGlvc19faW5wdXRcIiBpZD1cImlzSGVhcmluZ1JlbGF0ZWQteWVzXCIgbmFtZT1cImlzSGVhcmluZ1JlbGF0ZWRcIlxuICAgICAgICAgICAgICAgICAgICAgdHlwZT1cInJhZGlvXCJcbiAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImlzSGVhcmluZ1JlbGF0ZWRcIlxuICAgICAgICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwiZm9ybUdyb3VwLmdldCgnaXNIZWFyaW5nUmVsYXRlZCcpLnZhbHVlID09PSB0cnVlXCIgW3ZhbHVlXT1cInRydWVcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImdvdnVrLWxhYmVsIGdvdnVrLXJhZGlvc19fbGFiZWxcIiBmb3I9XCJpc0hlYXJpbmdSZWxhdGVkLXllc1wiPlxuICAgICAgICAgICAgICAgIHt7ICdJcyB0aGUgcXVlcnkgaGVhcmluZyByZWxhdGVkPycgfCBycHhUcmFuc2xhdGU6IG51bGwgOiAnWWVzJyB9fVxuICAgICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ292dWstcmFkaW9zX19pdGVtXCI+XG4gICAgICAgICAgICAgIDxpbnB1dCBjbGFzcz1cImdvdnVrLXJhZGlvc19faW5wdXRcIiBpZD1cImlzSGVhcmluZ1JlbGF0ZWQtbm9cIiBuYW1lPVwiaXNIZWFyaW5nUmVsYXRlZFwiXG4gICAgICAgICAgICAgICAgICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiaXNIZWFyaW5nUmVsYXRlZFwiXG4gICAgICAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJmb3JtR3JvdXAuZ2V0KCdpc0hlYXJpbmdSZWxhdGVkJykudmFsdWUgPT09IGZhbHNlXCIgW3ZhbHVlXT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJnb3Z1ay1sYWJlbCBnb3Z1ay1yYWRpb3NfX2xhYmVsXCIgZm9yPVwiaXNIZWFyaW5nUmVsYXRlZC1ub1wiPlxuICAgICAgICAgICAgICAgIHt7ICdJcyB0aGUgcXVlcnkgaGVhcmluZyByZWxhdGVkPycgfCBycHhUcmFuc2xhdGU6IG51bGwgOiAnTm8nIH19XG4gICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9maWVsZHNldD5cblxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZm9ybUdyb3VwLmdldCgnaXNIZWFyaW5nUmVsYXRlZCcpLnZhbHVlXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLXJhZGlvc19fY29uZGl0aW9uYWwgZ292dWstIS1tYXJnaW4tdG9wLTFcIlxuICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieydnb3Z1ay1mb3JtLWdyb3VwLS1lcnJvcic6IHN1Ym1pdHRlZCAmJlxuICAgICAgICAgICAgICAgZm9ybUdyb3VwLmdldCgnaXNIZWFyaW5nUmVsYXRlZCcpLnZhbHVlID09PSB0cnVlICYmXG4gICAgICAgICAgICAgICBmb3JtR3JvdXAuZ2V0KCdoZWFyaW5nRGF0ZScpLnZhbHVlID09PSBudWxsfVwiPlxuICAgICAgICAgICAgPGZpZWxkc2V0IGNsYXNzPVwiZ292dWstZmllbGRzZXRcIiByb2xlPVwiZ3JvdXBcIj5cbiAgICAgICAgICAgICAgPGxlZ2VuZD5cbiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJnb3Z1ay1sYWJlbCBnb3Z1ay1sYWJlbC0tc1wiPlxuICAgICAgICAgICAgICAgICAge3sgJ1doYXQgaXMgdGhlIGRhdGUgb2YgdGhlIGhlYXJpbmc/JyB8IHJweFRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICAgIDwvbGVnZW5kPlxuICAgICAgICAgICAgICA8cCBpZD1cImhlYXJpbmdEYXRlLWVycm9yXCIgY2xhc3M9XCJnb3Z1ay1lcnJvci1tZXNzYWdlXCJcbiAgICAgICAgICAgICAgICAgICpuZ0lmPVwic3VibWl0dGVkICYmIGZvcm1Hcm91cC5nZXQoJ2lzSGVhcmluZ1JlbGF0ZWQnKS52YWx1ZSA9PT0gdHJ1ZSAmJiBmb3JtR3JvdXAuZ2V0KCdoZWFyaW5nRGF0ZScpLnZhbHVlID09PSBudWxsXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJnb3Z1ay12aXN1YWxseS1oaWRkZW5cIj57eyAnRXJyb3I6JyB8IHJweFRyYW5zbGF0ZSB9fSA8L3NwYW4+e3sgcmFpc2VRdWVyeUVycm9yTWVzc2FnZS5RVUVSWV9IRUFSSU5HX0RBVEUgfCBycHhUcmFuc2xhdGUgfX1cbiAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICA8Y2NkLXF1ZXJ5LXdyaXRlLWRhdGUtaW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwiaGVhcmluZ0RhdGVcIj48L2NjZC1xdWVyeS13cml0ZS1kYXRlLWlucHV0PlxuICAgICAgICAgICAgPC9maWVsZHNldD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|