@hmcts/ccd-case-ui-toolkit 7.1.57-civil-multiple-client → 7.1.58

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.
Files changed (57) hide show
  1. package/esm2022/lib/app.config.mjs +2 -1
  2. package/esm2022/lib/components/header/header-bar/header-bar.component.mjs +4 -5
  3. package/esm2022/lib/shared/components/case-history/case-history.component.mjs +3 -3
  4. package/esm2022/lib/shared/components/case-viewer/case-basic-access-view/case-basic-access-view.component.mjs +5 -6
  5. package/esm2022/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.mjs +6 -8
  6. package/esm2022/lib/shared/components/case-viewer/printer/case-printer.component.mjs +9 -10
  7. package/esm2022/lib/shared/components/case-viewer/services/event-trigger.resolver.mjs +8 -4
  8. package/esm2022/lib/shared/components/error/callback-errors.component.mjs +7 -9
  9. package/esm2022/lib/shared/components/palette/base-field/abstract-form-field.component.mjs +4 -1
  10. package/esm2022/lib/shared/components/palette/base-field/field-read-label.component.mjs +2 -5
  11. package/esm2022/lib/shared/components/palette/base-field/field-read.component.mjs +4 -8
  12. package/esm2022/lib/shared/components/palette/case-flag/components/case-flag-summary-list/case-flag-summary-list.component.mjs +48 -49
  13. package/esm2022/lib/shared/components/palette/complex/read-complex-field-collection-table.component.mjs +3 -3
  14. package/esm2022/lib/shared/components/palette/complex/read-complex-field-raw.component.mjs +3 -3
  15. package/esm2022/lib/shared/components/palette/label/label-field.component.mjs +16 -11
  16. package/esm2022/lib/shared/components/palette/markdown/markdown.component.mjs +36 -26
  17. package/esm2022/lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.mjs +19 -16
  18. package/esm2022/lib/shared/components/palette/text/read-text-field.component.mjs +5 -7
  19. package/esm2022/lib/shared/components/palette/text-area/read-text-area-field.component.mjs +5 -7
  20. package/esm2022/lib/shared/components/search-result/search-result.component.mjs +8 -5
  21. package/esm2022/lib/shared/directives/substitutor/label-substitutor.directive.mjs +25 -5
  22. package/esm2022/lib/shared/directives/substitutor/services/placeholder.service.mjs +2 -1
  23. package/esm2022/lib/shared/domain/definition/case-field.model.mjs +8 -1
  24. package/esm2022/lib/shared/services/document-management/document-management.service.mjs +17 -5
  25. package/esm2022/lib/shared/services/fields/fields.utils.mjs +6 -1
  26. package/fesm2022/hmcts-ccd-case-ui-toolkit.mjs +271 -218
  27. package/fesm2022/hmcts-ccd-case-ui-toolkit.mjs.map +1 -1
  28. package/lib/app.config.d.ts +2 -0
  29. package/lib/app.config.d.ts.map +1 -1
  30. package/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.d.ts +0 -1
  31. package/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.d.ts.map +1 -1
  32. package/lib/shared/components/case-viewer/services/event-trigger.resolver.d.ts.map +1 -1
  33. package/lib/shared/components/palette/base-field/abstract-form-field.component.d.ts +1 -0
  34. package/lib/shared/components/palette/base-field/abstract-form-field.component.d.ts.map +1 -1
  35. package/lib/shared/components/palette/base-field/field-read-label.component.d.ts +1 -2
  36. package/lib/shared/components/palette/base-field/field-read-label.component.d.ts.map +1 -1
  37. package/lib/shared/components/palette/base-field/field-read.component.d.ts +1 -2
  38. package/lib/shared/components/palette/base-field/field-read.component.d.ts.map +1 -1
  39. package/lib/shared/components/palette/complex/read-complex-field-raw.component.d.ts.map +1 -1
  40. package/lib/shared/components/palette/label/label-field.component.d.ts +1 -2
  41. package/lib/shared/components/palette/label/label-field.component.d.ts.map +1 -1
  42. package/lib/shared/components/palette/markdown/markdown.component.d.ts +5 -5
  43. package/lib/shared/components/palette/markdown/markdown.component.d.ts.map +1 -1
  44. package/lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.d.ts +1 -1
  45. package/lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.d.ts.map +1 -1
  46. package/lib/shared/components/search-result/search-result.component.d.ts +1 -0
  47. package/lib/shared/components/search-result/search-result.component.d.ts.map +1 -1
  48. package/lib/shared/directives/substitutor/label-substitutor.directive.d.ts +3 -1
  49. package/lib/shared/directives/substitutor/label-substitutor.directive.d.ts.map +1 -1
  50. package/lib/shared/directives/substitutor/services/placeholder.service.d.ts.map +1 -1
  51. package/lib/shared/domain/definition/case-field.model.d.ts +3 -0
  52. package/lib/shared/domain/definition/case-field.model.d.ts.map +1 -1
  53. package/lib/shared/services/document-management/document-management.service.d.ts +3 -1
  54. package/lib/shared/services/document-management/document-management.service.d.ts.map +1 -1
  55. package/lib/shared/services/fields/fields.utils.d.ts +1 -0
  56. package/lib/shared/services/fields/fields.utils.d.ts.map +1 -1
  57. package/package.json +1 -1
@@ -4,7 +4,7 @@ import { CaseFlagCheckYourAnswersPageStep, CaseFlagDisplayContextParameter, Case
4
4
  import * as i0 from "@angular/core";
5
5
  import * as i1 from "rpx-xui-translation";
6
6
  import * as i2 from "@angular/common";
7
- function CaseFlagSummaryListComponent_dl_0_div_28_Template(rf, ctx) { if (rf & 1) {
7
+ function CaseFlagSummaryListComponent_dl_0_div_27_Template(rf, ctx) { if (rf & 1) {
8
8
  const _r3 = i0.ɵɵgetCurrentView();
9
9
  i0.ɵɵelementStart(0, "div", 2)(1, "dt", 3);
10
10
  i0.ɵɵtext(2);
@@ -14,7 +14,7 @@ function CaseFlagSummaryListComponent_dl_0_div_28_Template(rf, ctx) { if (rf & 1
14
14
  i0.ɵɵtext(5);
15
15
  i0.ɵɵelementEnd();
16
16
  i0.ɵɵelementStart(6, "dd", 5)(7, "a", 6);
17
- i0.ɵɵlistener("click", function CaseFlagSummaryListComponent_dl_0_div_28_Template_a_click_7_listener() { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.changeButtonEmitter.emit(ctx_r1.summaryListDisplayMode === ctx_r1.displayMode.MANAGE ? ctx_r1.caseFlagFieldState.FLAG_UPDATE_WELSH_TRANSLATION : ctx_r1.caseFlagFieldState.FLAG_TYPE)); });
17
+ i0.ɵɵlistener("click", function CaseFlagSummaryListComponent_dl_0_div_27_Template_a_click_7_listener() { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.changeButtonEmitter.emit(ctx_r1.summaryListDisplayMode === ctx_r1.displayMode.MANAGE ? ctx_r1.caseFlagFieldState.FLAG_UPDATE_WELSH_TRANSLATION : ctx_r1.caseFlagFieldState.FLAG_TYPE)); });
18
18
  i0.ɵɵtext(8);
19
19
  i0.ɵɵpipe(9, "rpxTranslate");
20
20
  i0.ɵɵelementStart(10, "span", 7);
@@ -32,7 +32,7 @@ function CaseFlagSummaryListComponent_dl_0_div_28_Template(rf, ctx) { if (rf & 1
32
32
  i0.ɵɵadvance(3);
33
33
  i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(12, 8, "other description (Welsh)"), "");
34
34
  } }
35
- function CaseFlagSummaryListComponent_dl_0_div_29_Template(rf, ctx) { if (rf & 1) {
35
+ function CaseFlagSummaryListComponent_dl_0_div_28_Template(rf, ctx) { if (rf & 1) {
36
36
  const _r4 = i0.ɵɵgetCurrentView();
37
37
  i0.ɵɵelementStart(0, "div", 2)(1, "dt", 3);
38
38
  i0.ɵɵtext(2);
@@ -42,7 +42,7 @@ function CaseFlagSummaryListComponent_dl_0_div_29_Template(rf, ctx) { if (rf & 1
42
42
  i0.ɵɵtext(5);
43
43
  i0.ɵɵelementEnd();
44
44
  i0.ɵɵelementStart(6, "dd", 5)(7, "a", 6);
45
- i0.ɵɵlistener("click", function CaseFlagSummaryListComponent_dl_0_div_29_Template_a_click_7_listener() { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.changeButtonEmitter.emit(ctx_r1.summaryListDisplayMode === ctx_r1.displayMode.MANAGE ? ctx_r1.caseFlagFieldState.FLAG_UPDATE : ctx_r1.caseFlagFieldState.FLAG_COMMENTS)); });
45
+ i0.ɵɵlistener("click", function CaseFlagSummaryListComponent_dl_0_div_28_Template_a_click_7_listener() { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.changeButtonEmitter.emit(ctx_r1.summaryListDisplayMode === ctx_r1.displayMode.MANAGE ? ctx_r1.caseFlagFieldState.FLAG_UPDATE : ctx_r1.caseFlagFieldState.FLAG_COMMENTS)); });
46
46
  i0.ɵɵtext(8);
47
47
  i0.ɵɵpipe(9, "rpxTranslate");
48
48
  i0.ɵɵelementStart(10, "span", 7);
@@ -60,7 +60,7 @@ function CaseFlagSummaryListComponent_dl_0_div_29_Template(rf, ctx) { if (rf & 1
60
60
  i0.ɵɵadvance(3);
61
61
  i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(12, 8, "comments"), "");
62
62
  } }
63
- function CaseFlagSummaryListComponent_dl_0_div_30_Template(rf, ctx) { if (rf & 1) {
63
+ function CaseFlagSummaryListComponent_dl_0_div_29_Template(rf, ctx) { if (rf & 1) {
64
64
  const _r5 = i0.ɵɵgetCurrentView();
65
65
  i0.ɵɵelementStart(0, "div", 2)(1, "dt", 3);
66
66
  i0.ɵɵtext(2);
@@ -70,7 +70,7 @@ function CaseFlagSummaryListComponent_dl_0_div_30_Template(rf, ctx) { if (rf & 1
70
70
  i0.ɵɵtext(5);
71
71
  i0.ɵɵelementEnd();
72
72
  i0.ɵɵelementStart(6, "dd", 5)(7, "a", 6);
73
- i0.ɵɵlistener("click", function CaseFlagSummaryListComponent_dl_0_div_30_Template_a_click_7_listener() { i0.ɵɵrestoreView(_r5); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.changeButtonEmitter.emit(ctx_r1.summaryListDisplayMode === ctx_r1.displayMode.MANAGE ? ctx_r1.caseFlagFieldState.FLAG_UPDATE_WELSH_TRANSLATION : ctx_r1.caseFlagFieldState.FLAG_COMMENTS)); });
73
+ i0.ɵɵlistener("click", function CaseFlagSummaryListComponent_dl_0_div_29_Template_a_click_7_listener() { i0.ɵɵrestoreView(_r5); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.changeButtonEmitter.emit(ctx_r1.summaryListDisplayMode === ctx_r1.displayMode.MANAGE ? ctx_r1.caseFlagFieldState.FLAG_UPDATE_WELSH_TRANSLATION : ctx_r1.caseFlagFieldState.FLAG_COMMENTS)); });
74
74
  i0.ɵɵtext(8);
75
75
  i0.ɵɵpipe(9, "rpxTranslate");
76
76
  i0.ɵɵelementStart(10, "span", 7);
@@ -88,10 +88,10 @@ function CaseFlagSummaryListComponent_dl_0_div_30_Template(rf, ctx) { if (rf & 1
88
88
  i0.ɵɵadvance(3);
89
89
  i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(12, 8, "comments (Welsh)"), "");
90
90
  } }
91
- function CaseFlagSummaryListComponent_dl_0_a_39_Template(rf, ctx) { if (rf & 1) {
91
+ function CaseFlagSummaryListComponent_dl_0_a_38_Template(rf, ctx) { if (rf & 1) {
92
92
  const _r6 = i0.ɵɵgetCurrentView();
93
93
  i0.ɵɵelementStart(0, "a", 6);
94
- i0.ɵɵlistener("click", function CaseFlagSummaryListComponent_dl_0_a_39_Template_a_click_0_listener() { i0.ɵɵrestoreView(_r6); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.changeButtonEmitter.emit(ctx_r1.summaryListDisplayMode === ctx_r1.displayMode.MANAGE ? ctx_r1.caseFlagFieldState.FLAG_UPDATE : ctx_r1.caseFlagFieldState.FLAG_STATUS)); });
94
+ i0.ɵɵlistener("click", function CaseFlagSummaryListComponent_dl_0_a_38_Template_a_click_0_listener() { i0.ɵɵrestoreView(_r6); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.changeButtonEmitter.emit(ctx_r1.summaryListDisplayMode === ctx_r1.displayMode.MANAGE ? ctx_r1.caseFlagFieldState.FLAG_UPDATE : ctx_r1.caseFlagFieldState.FLAG_STATUS)); });
95
95
  i0.ɵɵtext(1);
96
96
  i0.ɵɵpipe(2, "rpxTranslate");
97
97
  i0.ɵɵelementStart(3, "span", 7);
@@ -112,61 +112,60 @@ function CaseFlagSummaryListComponent_dl_0_Template(rf, ctx) { if (rf & 1) {
112
112
  i0.ɵɵelementEnd();
113
113
  i0.ɵɵelementStart(5, "dd", 4);
114
114
  i0.ɵɵtext(6);
115
- i0.ɵɵpipe(7, "rpxTranslate");
116
115
  i0.ɵɵelementEnd();
117
- i0.ɵɵelementStart(8, "dd", 5)(9, "a", 6);
118
- i0.ɵɵlistener("click", function CaseFlagSummaryListComponent_dl_0_Template_a_click_9_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.changeButtonEmitter.emit(ctx_r1.summaryListDisplayMode === ctx_r1.displayMode.MANAGE ? ctx_r1.caseFlagFieldState.FLAG_MANAGE_CASE_FLAGS : ctx_r1.caseFlagFieldState.FLAG_LOCATION)); });
119
- i0.ɵɵtext(10);
120
- i0.ɵɵpipe(11, "rpxTranslate");
121
- i0.ɵɵelementStart(12, "span", 7);
122
- i0.ɵɵtext(13);
123
- i0.ɵɵpipe(14, "rpxTranslate");
116
+ i0.ɵɵelementStart(7, "dd", 5)(8, "a", 6);
117
+ i0.ɵɵlistener("click", function CaseFlagSummaryListComponent_dl_0_Template_a_click_8_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.changeButtonEmitter.emit(ctx_r1.summaryListDisplayMode === ctx_r1.displayMode.MANAGE ? ctx_r1.caseFlagFieldState.FLAG_MANAGE_CASE_FLAGS : ctx_r1.caseFlagFieldState.FLAG_LOCATION)); });
118
+ i0.ɵɵtext(9);
119
+ i0.ɵɵpipe(10, "rpxTranslate");
120
+ i0.ɵɵelementStart(11, "span", 7);
121
+ i0.ɵɵtext(12);
122
+ i0.ɵɵpipe(13, "rpxTranslate");
124
123
  i0.ɵɵelementEnd()()()();
125
- i0.ɵɵelementStart(15, "div", 2)(16, "dt", 3);
126
- i0.ɵɵtext(17);
127
- i0.ɵɵpipe(18, "rpxTranslate");
124
+ i0.ɵɵelementStart(14, "div", 2)(15, "dt", 3);
125
+ i0.ɵɵtext(16);
126
+ i0.ɵɵpipe(17, "rpxTranslate");
128
127
  i0.ɵɵelementEnd();
129
- i0.ɵɵelementStart(19, "dd", 4);
130
- i0.ɵɵtext(20);
128
+ i0.ɵɵelementStart(18, "dd", 4);
129
+ i0.ɵɵtext(19);
131
130
  i0.ɵɵelementEnd();
132
- i0.ɵɵelementStart(21, "dd", 5)(22, "a", 6);
133
- i0.ɵɵlistener("click", function CaseFlagSummaryListComponent_dl_0_Template_a_click_22_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.changeButtonEmitter.emit(ctx_r1.summaryListDisplayMode === ctx_r1.displayMode.MANAGE ? ctx_r1.caseFlagFieldState.FLAG_UPDATE : ctx_r1.caseFlagFieldState.FLAG_TYPE)); });
134
- i0.ɵɵtext(23);
135
- i0.ɵɵpipe(24, "rpxTranslate");
136
- i0.ɵɵelementStart(25, "span", 7);
137
- i0.ɵɵtext(26);
138
- i0.ɵɵpipe(27, "rpxTranslate");
131
+ i0.ɵɵelementStart(20, "dd", 5)(21, "a", 6);
132
+ i0.ɵɵlistener("click", function CaseFlagSummaryListComponent_dl_0_Template_a_click_21_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.changeButtonEmitter.emit(ctx_r1.summaryListDisplayMode === ctx_r1.displayMode.MANAGE ? ctx_r1.caseFlagFieldState.FLAG_UPDATE : ctx_r1.caseFlagFieldState.FLAG_TYPE)); });
133
+ i0.ɵɵtext(22);
134
+ i0.ɵɵpipe(23, "rpxTranslate");
135
+ i0.ɵɵelementStart(24, "span", 7);
136
+ i0.ɵɵtext(25);
137
+ i0.ɵɵpipe(26, "rpxTranslate");
139
138
  i0.ɵɵelementEnd()()()();
140
- i0.ɵɵtemplate(28, CaseFlagSummaryListComponent_dl_0_div_28_Template, 13, 10, "div", 8)(29, CaseFlagSummaryListComponent_dl_0_div_29_Template, 13, 10, "div", 8)(30, CaseFlagSummaryListComponent_dl_0_div_30_Template, 13, 10, "div", 8);
141
- i0.ɵɵelementStart(31, "div", 2)(32, "dt", 3);
142
- i0.ɵɵtext(33);
143
- i0.ɵɵpipe(34, "rpxTranslate");
139
+ i0.ɵɵtemplate(27, CaseFlagSummaryListComponent_dl_0_div_27_Template, 13, 10, "div", 8)(28, CaseFlagSummaryListComponent_dl_0_div_28_Template, 13, 10, "div", 8)(29, CaseFlagSummaryListComponent_dl_0_div_29_Template, 13, 10, "div", 8);
140
+ i0.ɵɵelementStart(30, "div", 2)(31, "dt", 3);
141
+ i0.ɵɵtext(32);
142
+ i0.ɵɵpipe(33, "rpxTranslate");
144
143
  i0.ɵɵelementEnd();
145
- i0.ɵɵelementStart(35, "dd", 4);
146
- i0.ɵɵtext(36);
147
- i0.ɵɵpipe(37, "rpxTranslate");
144
+ i0.ɵɵelementStart(34, "dd", 4);
145
+ i0.ɵɵtext(35);
146
+ i0.ɵɵpipe(36, "rpxTranslate");
148
147
  i0.ɵɵelementEnd();
149
- i0.ɵɵelementStart(38, "dd", 5);
150
- i0.ɵɵtemplate(39, CaseFlagSummaryListComponent_dl_0_a_39_Template, 6, 6, "a", 9);
148
+ i0.ɵɵelementStart(37, "dd", 5);
149
+ i0.ɵɵtemplate(38, CaseFlagSummaryListComponent_dl_0_a_38_Template, 6, 6, "a", 9);
151
150
  i0.ɵɵelementEnd()()();
152
151
  } if (rf & 2) {
153
152
  const ctx_r1 = i0.ɵɵnextContext();
154
153
  i0.ɵɵadvance(3);
155
154
  i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(4, 14, ctx_r1.addUpdateFlagHeaderText), " ");
156
155
  i0.ɵɵadvance(3);
157
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(7, 16, ctx_r1.flagForSummaryDisplay.partyName || ctx_r1.caseFlagCheckYourAnswersPageStep.CASE_LEVEL_LOCATION), " ");
158
- i0.ɵɵadvance(4);
159
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(11, 18, "Change"), "");
156
+ i0.ɵɵtextInterpolate1(" ", ctx_r1.flagForSummaryDisplay.partyName || ctx_r1.caseFlagCheckYourAnswersPageStep.CASE_LEVEL_LOCATION, " ");
157
+ i0.ɵɵadvance(3);
158
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(10, 16, "Change"), "");
160
159
  i0.ɵɵadvance(3);
161
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(14, 20, "party name"), "");
160
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(13, 18, "party name"), "");
162
161
  i0.ɵɵadvance(4);
163
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(18, 22, ctx_r1.flagTypeHeaderText), " ");
162
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(17, 20, ctx_r1.flagTypeHeaderText), " ");
164
163
  i0.ɵɵadvance(3);
165
164
  i0.ɵɵtextInterpolate1(" ", ctx_r1.flagDescription, " ");
166
165
  i0.ɵɵadvance(3);
167
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(24, 24, "Change"), "");
166
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(23, 22, "Change"), "");
168
167
  i0.ɵɵadvance(3);
169
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(27, 26, "flag type"), "");
168
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(26, 24, "flag type"), "");
170
169
  i0.ɵɵadvance(2);
171
170
  i0.ɵɵproperty("ngIf", (ctx_r1.flagDescriptionWelsh == null ? null : ctx_r1.flagDescriptionWelsh.length) > 0 && !ctx_r1.externalUserUpdate);
172
171
  i0.ɵɵadvance();
@@ -174,9 +173,9 @@ function CaseFlagSummaryListComponent_dl_0_Template(rf, ctx) { if (rf & 1) {
174
173
  i0.ɵɵadvance();
175
174
  i0.ɵɵproperty("ngIf", (ctx_r1.flagCommentsWelsh == null ? null : ctx_r1.flagCommentsWelsh.length) > 0 && !ctx_r1.externalUserUpdate);
176
175
  i0.ɵɵadvance(3);
177
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(34, 28, "Status"), " ");
176
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(33, 26, "Status"), " ");
178
177
  i0.ɵɵadvance(3);
179
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(37, 30, ctx_r1.flagStatus), " ");
178
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(36, 28, ctx_r1.flagStatus), " ");
180
179
  i0.ɵɵadvance(3);
181
180
  i0.ɵɵproperty("ngIf", ctx_r1.is2Point1Enabled);
182
181
  } }
@@ -282,14 +281,14 @@ export class CaseFlagSummaryListComponent {
282
281
  }
283
282
  static ɵfac = function CaseFlagSummaryListComponent_Factory(t) { return new (t || CaseFlagSummaryListComponent)(i0.ɵɵdirectiveInject(i1.RpxTranslationService)); };
284
283
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CaseFlagSummaryListComponent, selectors: [["ccd-case-flag-summary-list"]], inputs: { flagForSummaryDisplay: "flagForSummaryDisplay", displayContextParameter: "displayContextParameter" }, outputs: { changeButtonEmitter: "changeButtonEmitter" }, decls: 1, vars: 1, consts: [["class", "govuk-summary-list", 4, "ngIf"], [1, "govuk-summary-list"], [1, "govuk-summary-list__row"], [1, "govuk-summary-list__key"], [1, "govuk-summary-list__value"], [1, "govuk-summary-list__actions"], ["href", "javascript:void(0)", 1, "govuk-link", 3, "click"], [1, "govuk-visually-hidden"], ["class", "govuk-summary-list__row", 4, "ngIf"], ["class", "govuk-link", "href", "javascript:void(0)", 3, "click", 4, "ngIf"]], template: function CaseFlagSummaryListComponent_Template(rf, ctx) { if (rf & 1) {
285
- i0.ɵɵtemplate(0, CaseFlagSummaryListComponent_dl_0_Template, 40, 32, "dl", 0);
284
+ i0.ɵɵtemplate(0, CaseFlagSummaryListComponent_dl_0_Template, 39, 30, "dl", 0);
286
285
  } if (rf & 2) {
287
286
  i0.ɵɵproperty("ngIf", ctx.flagForSummaryDisplay);
288
287
  } }, dependencies: [i2.NgIf, i1.RpxTranslatePipe], encapsulation: 2 });
289
288
  }
290
289
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseFlagSummaryListComponent, [{
291
290
  type: Component,
292
- args: [{ selector: 'ccd-case-flag-summary-list', template: "<dl class=\"govuk-summary-list\" *ngIf=\"flagForSummaryDisplay\">\n <div class=\"govuk-summary-list__row\">\n <dt class=\"govuk-summary-list__key\">\n {{addUpdateFlagHeaderText | rpxTranslate}}\n </dt>\n <dd class=\"govuk-summary-list__value\">\n {{flagForSummaryDisplay.partyName || caseFlagCheckYourAnswersPageStep.CASE_LEVEL_LOCATION | rpxTranslate}}\n </dd>\n <dd class=\"govuk-summary-list__actions\">\n <a class=\"govuk-link\" href=\"javascript:void(0)\"\n (click)=\"changeButtonEmitter.emit(this.summaryListDisplayMode === displayMode.MANAGE ? caseFlagFieldState.FLAG_MANAGE_CASE_FLAGS : caseFlagFieldState.FLAG_LOCATION)\">\n {{'Change' | rpxTranslate}}<span class=\"govuk-visually-hidden\"> {{'party name' | rpxTranslate}}</span>\n </a>\n </dd>\n </div>\n <div class=\"govuk-summary-list__row\">\n <dt class=\"govuk-summary-list__key\">\n {{flagTypeHeaderText | rpxTranslate}}\n </dt>\n <dd class=\"govuk-summary-list__value\">\n {{flagDescription}}\n </dd>\n <dd class=\"govuk-summary-list__actions\">\n <a class=\"govuk-link\" href=\"javascript:void(0)\"\n (click)=\"changeButtonEmitter.emit(this.summaryListDisplayMode === displayMode.MANAGE ? caseFlagFieldState.FLAG_UPDATE : caseFlagFieldState.FLAG_TYPE)\">\n {{'Change' | rpxTranslate}}<span class=\"govuk-visually-hidden\"> {{'flag type' | rpxTranslate}}</span>\n </a>\n </dd>\n </div>\n <div class=\"govuk-summary-list__row\" *ngIf=\"flagDescriptionWelsh?.length > 0 && !externalUserUpdate\">\n <dt class=\"govuk-summary-list__key\">\n {{'Other description (Welsh)' | rpxTranslate}}\n </dt>\n <dd class=\"govuk-summary-list__value\">\n {{flagDescriptionWelsh}}\n </dd>\n <dd class=\"govuk-summary-list__actions\">\n <a class=\"govuk-link\" href=\"javascript:void(0)\"\n (click)=\"changeButtonEmitter.emit(this.summaryListDisplayMode === displayMode.MANAGE ? caseFlagFieldState.FLAG_UPDATE_WELSH_TRANSLATION : caseFlagFieldState.FLAG_TYPE)\">\n {{'Change' | rpxTranslate}}<span class=\"govuk-visually-hidden\"> {{'other description (Welsh)' | rpxTranslate}}</span>\n </a>\n </dd>\n </div>\n <div class=\"govuk-summary-list__row\" *ngIf=\"flagComments?.length > 0\">\n <dt class=\"govuk-summary-list__key\">\n {{'Comments' | rpxTranslate}}\n </dt>\n <dd class=\"govuk-summary-list__value\">\n {{externalUserUpdate ? flagUpdateComments : flagComments}}\n </dd>\n <dd class=\"govuk-summary-list__actions\">\n <a class=\"govuk-link\" href=\"javascript:void(0)\"\n (click)=\"changeButtonEmitter.emit(this.summaryListDisplayMode === displayMode.MANAGE ? caseFlagFieldState.FLAG_UPDATE : caseFlagFieldState.FLAG_COMMENTS)\">\n {{'Change' | rpxTranslate}}<span class=\"govuk-visually-hidden\"> {{'comments' | rpxTranslate}}</span>\n </a>\n </dd>\n </div>\n <div class=\"govuk-summary-list__row\" *ngIf=\"flagCommentsWelsh?.length > 0 && !externalUserUpdate\">\n <dt class=\"govuk-summary-list__key\">\n {{'Comments (Welsh)' | rpxTranslate}}\n </dt>\n <dd class=\"govuk-summary-list__value\">\n {{flagCommentsWelsh}}\n </dd>\n <dd class=\"govuk-summary-list__actions\">\n <a class=\"govuk-link\" href=\"javascript:void(0)\"\n (click)=\"changeButtonEmitter.emit(this.summaryListDisplayMode === displayMode.MANAGE ? caseFlagFieldState.FLAG_UPDATE_WELSH_TRANSLATION : caseFlagFieldState.FLAG_COMMENTS)\">\n {{'Change' | rpxTranslate}}<span class=\"govuk-visually-hidden\"> {{'comments (Welsh)' | rpxTranslate}}</span>\n </a>\n </dd>\n </div>\n <div class=\"govuk-summary-list__row\">\n <dt class=\"govuk-summary-list__key\">\n {{'Status' | rpxTranslate}}\n </dt>\n <dd class=\"govuk-summary-list__value\">\n {{flagStatus | rpxTranslate}}\n </dd>\n <dd class=\"govuk-summary-list__actions\">\n <a *ngIf=\"is2Point1Enabled\" class=\"govuk-link\" href=\"javascript:void(0)\"\n (click)=\"changeButtonEmitter.emit(this.summaryListDisplayMode === displayMode.MANAGE ? caseFlagFieldState.FLAG_UPDATE : caseFlagFieldState.FLAG_STATUS)\">\n {{'Change' | rpxTranslate}}<span class=\"govuk-visually-hidden\"> {{'status' | rpxTranslate}}</span>\n </a>\n </dd>\n </div>\n</dl>\n" }]
291
+ args: [{ selector: 'ccd-case-flag-summary-list', template: "<dl class=\"govuk-summary-list\" *ngIf=\"flagForSummaryDisplay\">\n <div class=\"govuk-summary-list__row\">\n <dt class=\"govuk-summary-list__key\">\n {{addUpdateFlagHeaderText | rpxTranslate}}\n </dt>\n <dd class=\"govuk-summary-list__value\">\n {{flagForSummaryDisplay.partyName || caseFlagCheckYourAnswersPageStep.CASE_LEVEL_LOCATION }}\n </dd>\n <dd class=\"govuk-summary-list__actions\">\n <a class=\"govuk-link\" href=\"javascript:void(0)\"\n (click)=\"changeButtonEmitter.emit(this.summaryListDisplayMode === displayMode.MANAGE ? caseFlagFieldState.FLAG_MANAGE_CASE_FLAGS : caseFlagFieldState.FLAG_LOCATION)\">\n {{'Change' | rpxTranslate}}<span class=\"govuk-visually-hidden\"> {{'party name' | rpxTranslate}}</span>\n </a>\n </dd>\n </div>\n <div class=\"govuk-summary-list__row\">\n <dt class=\"govuk-summary-list__key\">\n {{flagTypeHeaderText | rpxTranslate}}\n </dt>\n <dd class=\"govuk-summary-list__value\">\n {{flagDescription}}\n </dd>\n <dd class=\"govuk-summary-list__actions\">\n <a class=\"govuk-link\" href=\"javascript:void(0)\"\n (click)=\"changeButtonEmitter.emit(this.summaryListDisplayMode === displayMode.MANAGE ? caseFlagFieldState.FLAG_UPDATE : caseFlagFieldState.FLAG_TYPE)\">\n {{'Change' | rpxTranslate}}<span class=\"govuk-visually-hidden\"> {{'flag type' | rpxTranslate}}</span>\n </a>\n </dd>\n </div>\n <div class=\"govuk-summary-list__row\" *ngIf=\"flagDescriptionWelsh?.length > 0 && !externalUserUpdate\">\n <dt class=\"govuk-summary-list__key\">\n {{'Other description (Welsh)' | rpxTranslate}}\n </dt>\n <dd class=\"govuk-summary-list__value\">\n {{flagDescriptionWelsh}}\n </dd>\n <dd class=\"govuk-summary-list__actions\">\n <a class=\"govuk-link\" href=\"javascript:void(0)\"\n (click)=\"changeButtonEmitter.emit(this.summaryListDisplayMode === displayMode.MANAGE ? caseFlagFieldState.FLAG_UPDATE_WELSH_TRANSLATION : caseFlagFieldState.FLAG_TYPE)\">\n {{'Change' | rpxTranslate}}<span class=\"govuk-visually-hidden\"> {{'other description (Welsh)' | rpxTranslate}}</span>\n </a>\n </dd>\n </div>\n <div class=\"govuk-summary-list__row\" *ngIf=\"flagComments?.length > 0\">\n <dt class=\"govuk-summary-list__key\">\n {{'Comments' | rpxTranslate}}\n </dt>\n <dd class=\"govuk-summary-list__value\">\n {{externalUserUpdate ? flagUpdateComments : flagComments}}\n </dd>\n <dd class=\"govuk-summary-list__actions\">\n <a class=\"govuk-link\" href=\"javascript:void(0)\"\n (click)=\"changeButtonEmitter.emit(this.summaryListDisplayMode === displayMode.MANAGE ? caseFlagFieldState.FLAG_UPDATE : caseFlagFieldState.FLAG_COMMENTS)\">\n {{'Change' | rpxTranslate}}<span class=\"govuk-visually-hidden\"> {{'comments' | rpxTranslate}}</span>\n </a>\n </dd>\n </div>\n <div class=\"govuk-summary-list__row\" *ngIf=\"flagCommentsWelsh?.length > 0 && !externalUserUpdate\">\n <dt class=\"govuk-summary-list__key\">\n {{'Comments (Welsh)' | rpxTranslate}}\n </dt>\n <dd class=\"govuk-summary-list__value\">\n {{flagCommentsWelsh}}\n </dd>\n <dd class=\"govuk-summary-list__actions\">\n <a class=\"govuk-link\" href=\"javascript:void(0)\"\n (click)=\"changeButtonEmitter.emit(this.summaryListDisplayMode === displayMode.MANAGE ? caseFlagFieldState.FLAG_UPDATE_WELSH_TRANSLATION : caseFlagFieldState.FLAG_COMMENTS)\">\n {{'Change' | rpxTranslate}}<span class=\"govuk-visually-hidden\"> {{'comments (Welsh)' | rpxTranslate}}</span>\n </a>\n </dd>\n </div>\n <div class=\"govuk-summary-list__row\">\n <dt class=\"govuk-summary-list__key\">\n {{'Status' | rpxTranslate}}\n </dt>\n <dd class=\"govuk-summary-list__value\">\n {{flagStatus | rpxTranslate}}\n </dd>\n <dd class=\"govuk-summary-list__actions\">\n <a *ngIf=\"is2Point1Enabled\" class=\"govuk-link\" href=\"javascript:void(0)\"\n (click)=\"changeButtonEmitter.emit(this.summaryListDisplayMode === displayMode.MANAGE ? caseFlagFieldState.FLAG_UPDATE : caseFlagFieldState.FLAG_STATUS)\">\n {{'Change' | rpxTranslate}}<span class=\"govuk-visually-hidden\"> {{'status' | rpxTranslate}}</span>\n </a>\n </dd>\n </div>\n</dl>\n" }]
293
292
  }], () => [{ type: i1.RpxTranslationService }], { flagForSummaryDisplay: [{
294
293
  type: Input
295
294
  }], displayContextParameter: [{
@@ -298,4 +297,4 @@ export class CaseFlagSummaryListComponent {
298
297
  type: Output
299
298
  }] }); })();
300
299
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CaseFlagSummaryListComponent, { className: "CaseFlagSummaryListComponent", filePath: "lib/shared/components/palette/case-flag/components/case-flag-summary-list/case-flag-summary-list.component.ts", lineNumber: 15 }); })();
301
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1mbGFnLXN1bW1hcnktbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2NvbXBvbmVudHMvcGFsZXR0ZS9jYXNlLWZsYWcvY29tcG9uZW50cy9jYXNlLWZsYWctc3VtbWFyeS1saXN0L2Nhc2UtZmxhZy1zdW1tYXJ5LWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvY2FzZS1mbGFnL2NvbXBvbmVudHMvY2FzZS1mbGFnLXN1bW1hcnktbGlzdC9jYXNlLWZsYWctc3VtbWFyeS1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFNUQsT0FBTyxFQUNMLGdDQUFnQyxFQUNoQywrQkFBK0IsRUFDL0Isa0JBQWtCLEVBQ2xCLDhCQUE4QixFQUMvQixNQUFNLGFBQWEsQ0FBQzs7Ozs7O0lDc0JqQixBQURGLDhCQUFxRyxZQUMvRDtJQUNsQyxZQUNGOztJQUFBLGlCQUFLO0lBQ0wsNkJBQXNDO0lBQ3BDLFlBQ0Y7SUFBQSxpQkFBSztJQUVILEFBREYsNkJBQXdDLFdBRXFJO0lBQXpLLDBMQUFTLDRMQUE4SixLQUFDO0lBQ3hLLFlBQTJCOztJQUFBLGdDQUFvQztJQUFDLGFBQThDOztJQUdwSCxBQURFLEFBREUsQUFEZ0gsaUJBQU8sRUFDbkgsRUFDRCxFQUNEOzs7SUFYRixlQUNGO0lBREUsa0ZBQ0Y7SUFF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LENBQUMsdUJBQXVCLEtBQUssK0JBQStCLENBQUMsTUFBTTtZQUN2RSxJQUFJLENBQUMsdUJBQXVCLEtBQUssK0JBQStCLENBQUMsZUFBZTtZQUNoRixJQUFJLENBQUMsdUJBQXVCLEtBQUssK0JBQStCLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUN0RixPQUFPLDhCQUE4QixDQUFDLE1BQU0sQ0FBQztRQUMvQyxDQUFDO1FBQ0QsT0FBTyw4QkFBOEIsQ0FBQyxNQUFNLENBQUM7SUFDL0MsQ0FBQztJQUVPLHdDQUF3QztRQUM5QyxPQUFPLElBQUksQ0FBQyx1QkFBdUIsS0FBSywrQkFBK0IsQ0FBQyxnQkFBZ0I7WUFDdEYsSUFBSSxDQUFDLHVCQUF1QixLQUFLLCtCQUErQixDQUFDLGdCQUFnQixDQUFDO0lBQ3RGLENBQUM7c0ZBdkdVLDRCQUE0Qjs2REFBNUIsNEJBQTRCO1lDZHpDLDZFQUE2RDs7WUFBN0IsZ0RBQTJCOzs7aUZEYzlDLDRCQUE0QjtjQUp4QyxTQUFTOzJCQUNFLDRCQUE0QjtzREFJdEIscUJBQXFCO2tCQUFwQyxLQUFLO1lBQ1UsdUJBQXVCO2tCQUF0QyxLQUFLO1lBQ1csbUJBQW1CO2tCQUFuQyxNQUFNOztrRkFISSw0QkFBNEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBScHhUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICdycHgteHVpLXRyYW5zbGF0aW9uJztcbmltcG9ydCB7IEZsYWdEZXRhaWwsIEZsYWdEZXRhaWxEaXNwbGF5IH0gZnJvbSAnLi4vLi4vZG9tYWluJztcbmltcG9ydCB7XG4gIENhc2VGbGFnQ2hlY2tZb3VyQW5zd2Vyc1BhZ2VTdGVwLFxuICBDYXNlRmxhZ0Rpc3BsYXlDb250ZXh0UGFyYW1ldGVyLFxuICBDYXNlRmxhZ0ZpZWxkU3RhdGUsXG4gIENhc2VGbGFnU3VtbWFyeUxpc3REaXNwbGF5TW9kZVxufSBmcm9tICcuLi8uLi9lbnVtcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NjZC1jYXNlLWZsYWctc3VtbWFyeS1saXN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Nhc2UtZmxhZy1zdW1tYXJ5LWxpc3QuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIENhc2VGbGFnU3VtbWFyeUxpc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBwdWJsaWMgZmxhZ0ZvclN1bW1hcnlEaXNwbGF5OiBGbGFnRGV0YWlsRGlzcGxheTtcbiAgQElucHV0KCkgcHVibGljIGRpc3BsYXlDb250ZXh0UGFyYW1ldGVyOiBzdHJpbmc7XG4gIEBPdXRwdXQoKSBwdWJsaWMgY2hhbmdlQnV0dG9uRW1pdHRlciA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gIHB1YmxpYyBmbGFnRGVzY3JpcHRpb246IHN0cmluZztcbiAgcHVibGljIGZsYWdDb21tZW50czogc3RyaW5nO1xuICBwdWJsaWMgZmxhZ1N0YXR1czogc3RyaW5nO1xuICBwdWJsaWMgZmxhZ0Rlc2NyaXB0aW9uV2Vsc2g6IHN0cmluZztcbiAgcHVibGljIGZsYWdDb21tZW50c1dlbHNoOiBzdHJpbmc7XG4gIHB1YmxpYyBvdGhlckRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gIHB1YmxpYyBvdGhlckRlc2NyaXB0aW9uV2Vsc2g6IHN0cmluZztcbiAgcHVibGljIGZsYWdVcGRhdGVDb21tZW50czogc3RyaW5nO1xuICBwdWJsaWMgc3VtbWFyeUxpc3REaXNwbGF5TW9kZTogQ2FzZUZsYWdTdW1tYXJ5TGlzdERpc3BsYXlNb2RlO1xuICBwdWJsaWMgYWRkVXBkYXRlRmxhZ0hlYWRlclRleHQ6IHN0cmluZztcbiAgcHVibGljIGNhc2VGbGFnRmllbGRTdGF0ZSA9IENhc2VGbGFnRmllbGRTdGF0ZTtcbiAgcHVibGljIGRpc3BsYXlNb2RlID0gQ2FzZUZsYWdTdW1tYXJ5TGlzdERpc3BsYXlNb2RlO1xuICBwdWJsaWMgZmxhZ1R5cGVIZWFkZXJUZXh0OiBzdHJpbmc7XG4gIHB1YmxpYyBjYXNlRmxhZ0NoZWNrWW91ckFuc3dlcnNQYWdlU3RlcCA9IENhc2VGbGFnQ2hlY2tZb3VyQW5zd2Vyc1BhZ2VTdGVwO1xuICBwdWJsaWMgaXMyUG9pbnQxRW5hYmxlZCA9IGZhbHNlO1xuICBwdWJsaWMgZXh0ZXJuYWxVc2VyVXBkYXRlID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBycHhUcmFuc2xhdGlvblNlcnZpY2U6IFJweFRyYW5zbGF0aW9uU2VydmljZSkgeyB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmZsYWdGb3JTdW1tYXJ5RGlzcGxheSkge1xuICAgICAgY29uc3QgZmxhZ0RldGFpbCA9IHRoaXMuZmxhZ0ZvclN1bW1hcnlEaXNwbGF5LmZsYWdEZXRhaWw7XG4gICAgICB0aGlzLmZsYWdEZXNjcmlwdGlvbiA9IHRoaXMuZ2V0RmxhZ0Rlc2NyaXB0aW9uKGZsYWdEZXRhaWwpO1xuICAgICAgdGhpcy5mbGFnRGVzY3JpcHRpb25XZWxzaCA9IGZsYWdEZXRhaWwub3RoZXJEZXNjcmlwdGlvbl9jeTtcbiAgICAgIHRoaXMuZmxhZ0NvbW1lbnRzID0gZmxhZ0RldGFpbC5mbGFnQ29tbWVudDtcbiAgICAgIHRoaXMuZmxhZ0NvbW1lbnRzV2Vsc2ggPSBmbGFnRGV0YWlsLmZsYWdDb21tZW50X2N5O1xuICAgICAgLy8gRmxhZyB1cGRhdGUgY29tbWVudHMgd2lsbCBiZSBjb21pbmcgZnJvbSB0aGUgZmxhZ1N0YXR1c1JlYXNvbkNoYW5nZSBwcm9wZXJ0eSBpbnN0ZWFkIG9mIGZsYWdVcGRhdGVDb21tZW50XG4gICAgICAvLyBiZWNhdXNlIHRoZXNlIGhhdmVuJ3QgYmVlbiBwZXJzaXN0ZWQgeWV0XG4gICAgICB0aGlzLmZsYWdVcGRhdGVDb21tZW50cyA9IGZsYWdEZXRhaWxbJ2ZsYWdTdGF0dXNSZWFzb25DaGFuZ2UnXTtcbiAgICAgIHRoaXMuZmxhZ1N0YXR1cyA9IGZsYWdEZXRhaWwuc3RhdHVzO1xuICAgICAgdGhpcy5hZGRVcGRhdGVGbGFnSGVhZGVyVGV4dCA9IHRoaXMuZ2V0QWRkVXBkYXRlRmxhZ0hlYWRlclRleHQoKTtcbiAgICAgIHRoaXMuZmxhZ1R5cGVIZWFkZXJUZXh0ID0gdGhpcy5nZXRGbGFnVHlwZUhlYWRlclRleHQoKTtcbiAgICAgIHRoaXMuc3VtbWFyeUxpc3REaXNwbGF5TW9kZSA9IHRoaXMuZ2V0U3VtbWFyeUxpc3REaXNwbGF5TW9kZSgpO1xuICAgICAgdGhpcy5pczJQb2ludDFFbmFibGVkID0gdGhpcy5nZXREaXNwbGF5Q29udGV4dFBhcmFtZXRlcjJQb2ludDFFbmFibGVkKCk7XG4gICAgICB0aGlzLmV4dGVybmFsVXNlclVwZGF0ZSA9IHRoaXMuZGlzcGxheUNvbnRleHRQYXJhbWV0ZXIgPT09IENhc2VGbGFnRGlzcGxheUNvbnRleHRQYXJhbWV0ZXIuVVBEQVRFX0VYVEVSTkFMO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0RmxhZ0Rlc2NyaXB0aW9uKGZsYWdEZXRhaWw6IEZsYWdEZXRhaWwpOiBzdHJpbmcge1xuICAgIGxldCBmbGFnTmFtZTogc3RyaW5nO1xuICAgIGxldCBzdWJUeXBlVmFsdWU6IHN0cmluZztcbiAgICBpZiAodGhpcy5ycHhUcmFuc2xhdGlvblNlcnZpY2UubGFuZ3VhZ2UgPT09ICdjeScpIHtcbiAgICAgIGZsYWdOYW1lID0gZmxhZ0RldGFpbC5uYW1lX2N5IHx8IGZsYWdEZXRhaWwubmFtZTtcbiAgICAgIHN1YlR5cGVWYWx1ZSA9IGZsYWdEZXRhaWwuc3ViVHlwZVZhbHVlX2N5IHx8IGZsYWdEZXRhaWwuc3ViVHlwZVZhbHVlO1xuICAgIH0gZWxzZSB7XG4gICAgICBmbGFnTmFtZSA9IGZsYWdEZXRhaWwubmFtZSB8fCBmbGFnRGV0YWlsLm5hbWVfY3k7XG4gICAgICBzdWJUeXBlVmFsdWUgPSBmbGFnRGV0YWlsLnN1YlR5cGVWYWx1ZSB8fCBmbGFnRGV0YWlsLnN1YlR5cGVWYWx1ZV9jeTtcbiAgICB9XG4gICAgLy8gVGhlIG90aGVyRGVzY3JpcHRpb24gZmllbGQgc2hvdWxkIGJlIHNob3duIHZlcmJhdGltOyBvdGhlckRlc2NyaXB0aW9uIGZvciBXZWxzaCBpcyBzaG93biBzZXBhcmF0ZWx5XG4gICAgY29uc3Qgb3RoZXJEZXNjcmlwdGlvbiA9IGZsYWdEZXRhaWwub3RoZXJEZXNjcmlwdGlvbiA/IGAgLSAke2ZsYWdEZXRhaWwub3RoZXJEZXNjcmlwdGlvbn1gIDogJyc7XG4gICAgY29uc3Qgc3ViVHlwZVZhbHVlRm9yRGlzcGxheSA9IHN1YlR5cGVWYWx1ZSA/IGAgLSAke3N1YlR5cGVWYWx1ZX1gIDogJyc7XG4gICAgcmV0dXJuIGAke2ZsYWdOYW1lfSR7b3RoZXJEZXNjcmlwdGlvbn0ke3N1YlR5cGVWYWx1ZUZvckRpc3BsYXl9YDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0QWRkVXBkYXRlRmxhZ0hlYWRlclRleHQoKTogc3RyaW5nIHtcbiAgICBzd2l0Y2godGhpcy5kaXNwbGF5Q29udGV4dFBhcmFtZXRlcikge1xuICAgICAgY2FzZSBDYXNlRmxhZ0Rpc3BsYXlDb250ZXh0UGFyYW1ldGVyLkNSRUFURTpcbiAgICAgIGNhc2UgQ2FzZUZsYWdEaXNwbGF5Q29udGV4dFBhcmFtZXRlci5DUkVBVEVfMl9QT0lOVF8xOlxuICAgICAgICByZXR1cm4gQ2FzZUZsYWdDaGVja1lvdXJBbnN3ZXJzUGFnZVN0ZXAuQUREX0ZMQUdfSEVBREVSX1RFWFQ7XG4gICAgICBjYXNlIENhc2VGbGFnRGlzcGxheUNvbnRleHRQYXJhbWV0ZXIuQ1JFQVRFX0VYVEVSTkFMOlxuICAgICAgICByZXR1cm4gQ2FzZUZsYWdDaGVja1lvdXJBbnN3ZXJzUGFnZVN0ZXAuQUREX0ZMQUdfSEVBREVSX1RFWFRfRVhURVJOQUw7XG4gICAgICBjYXNlIENhc2VGbGFnRGlzcGxheUNvbnRleHRQYXJhbWV0ZXIuVVBEQVRFOlxuICAgICAgY2FzZSBDYXNlRmxhZ0Rpc3BsYXlDb250ZXh0UGFyYW1ldGVyLlVQREFURV8yX1BPSU5UXzE6XG4gICAgICAgIHJldHVybiBDYXNlRmxhZ0NoZWNrWW91ckFuc3dlcnNQYWdlU3RlcC5VUERBVEVfRkxBR19IRUFERVJfVEVYVDtcbiAgICAgIGNhc2UgQ2FzZUZsYWdEaXNwbGF5Q29udGV4dFBhcmFtZXRlci5VUERBVEVfRVhURVJOQUw6XG4gICAgICAgIHJldHVybiBDYXNlRmxhZ0NoZWNrWW91ckFuc3dlcnNQYWdlU3RlcC5VUERBVEVfRkxBR19IRUFERVJfVEVYVF9FWFRFUk5BTDtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBDYXNlRmxhZ0NoZWNrWW91ckFuc3dlcnNQYWdlU3RlcC5OT05FO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0RmxhZ1R5cGVIZWFkZXJUZXh0KCk6IHN0cmluZyB7XG4gICAgc3dpdGNoKHRoaXMuZGlzcGxheUNvbnRleHRQYXJhbWV0ZXIpIHtcbiAgICAgIGNhc2UgQ2FzZUZsYWdEaXNwbGF5Q29udGV4dFBhcmFtZXRlci5DUkVBVEU6XG4gICAgICBjYXNlIENhc2VGbGFnRGlzcGxheUNvbnRleHRQYXJhbWV0ZXIuQ1JFQVRFXzJfUE9JTlRfMTpcbiAgICAgIGNhc2UgQ2FzZUZsYWdEaXNwbGF5Q29udGV4dFBhcmFtZXRlci5VUERBVEU6XG4gICAgICBjYXNlIENhc2VGbGFnRGlzcGxheUNvbnRleHRQYXJhbWV0ZXIuVVBEQVRFXzJfUE9JTlRfMTpcbiAgICAgICAgcmV0dXJuIENhc2VGbGFnQ2hlY2tZb3VyQW5zd2Vyc1BhZ2VTdGVwLkZMQUdfVFlQRV9IRUFERVJfVEVYVDtcbiAgICAgIGNhc2UgQ2FzZUZsYWdEaXNwbGF5Q29udGV4dFBhcmFtZXRlci5DUkVBVEVfRVhURVJOQUw6XG4gICAgICBjYXNlIENhc2VGbGFnRGlzcGxheUNvbnRleHRQYXJhbWV0ZXIuVVBEQVRFX0VYVEVSTkFMOlxuICAgICAgICByZXR1cm4gQ2FzZUZsYWdDaGVja1lvdXJBbnN3ZXJzUGFnZVN0ZXAuRkxBR19UWVBFX0hFQURFUl9URVhUX0VYVEVSTkFMO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIENhc2VGbGFnQ2hlY2tZb3VyQW5zd2Vyc1BhZ2VTdGVwLk5PTkU7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRTdW1tYXJ5TGlzdERpc3BsYXlNb2RlKCk6IG51bWJlciB7XG4gICAgaWYgKHRoaXMuZGlzcGxheUNvbnRleHRQYXJhbWV0ZXIgPT09IENhc2VGbGFnRGlzcGxheUNvbnRleHRQYXJhbWV0ZXIuQ1JFQVRFIHx8XG4gICAgICAgIHRoaXMuZGlzcGxheUNvbnRleHRQYXJhbWV0ZXIgPT09IENhc2VGbGFnRGlzcGxheUNvbnRleHRQYXJhbWV0ZXIuQ1JFQVRFX0VYVEVSTkFMIHx8XG4gICAgICAgIHRoaXMuZGlzcGxheUNvbnRleHRQYXJhbWV0ZXIgPT09IENhc2VGbGFnRGlzcGxheUNvbnRleHRQYXJhbWV0ZXIuQ1JFQVRFXzJfUE9JTlRfMSkge1xuICAgICAgcmV0dXJuIENhc2VGbGFnU3VtbWFyeUxpc3REaXNwbGF5TW9kZS5DUkVBVEU7XG4gICAgfVxuICAgIHJldHVybiBDYXNlRmxhZ1N1bW1hcnlMaXN0RGlzcGxheU1vZGUuTUFOQUdFO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXREaXNwbGF5Q29udGV4dFBhcmFtZXRlcjJQb2ludDFFbmFibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmRpc3BsYXlDb250ZXh0UGFyYW1ldGVyID09PSBDYXNlRmxhZ0Rpc3BsYXlDb250ZXh0UGFyYW1ldGVyLkNSRUFURV8yX1BPSU5UXzEgfHxcbiAgICAgIHRoaXMuZGlzcGxheUNvbnRleHRQYXJhbWV0ZXIgPT09IENhc2VGbGFnRGlzcGxheUNvbnRleHRQYXJhbWV0ZXIuVVBEQVRFXzJfUE9JTlRfMTtcbiAgfVxufVxuIiwiPGRsIGNsYXNzPVwiZ292dWstc3VtbWFyeS1saXN0XCIgKm5nSWY9XCJmbGFnRm9yU3VtbWFyeURpc3BsYXlcIj5cbiAgPGRpdiBjbGFzcz1cImdvdnVrLXN1bW1hcnktbGlzdF9fcm93XCI+XG4gICAgPGR0IGNsYXNzPVwiZ292dWstc3VtbWFyeS1saXN0X19rZXlcIj5cbiAgICAgIHt7YWRkVXBkYXRlRmxhZ0hlYWRlclRleHQgfCBycHhUcmFuc2xhdGV9fVxuICAgIDwvZHQ+XG4gICAgPGRkIGNsYXNzPVwiZ292dWstc3VtbWFyeS1saXN0X192YWx1ZVwiPlxuICAgICAge3tmbGFnRm9yU3VtbWFyeURpc3BsYXkucGFydHlOYW1lIHx8IGNhc2VGbGFnQ2hlY2tZb3VyQW5zd2Vyc1BhZ2VTdGVwLkNBU0VfTEVWRUxfTE9DQVRJT04gfCBycHhUcmFuc2xhdGV9fVxuICAgIDwvZGQ+XG4gICAgPGRkIGNsYXNzPVwiZ292dWstc3VtbWFyeS1saXN0X19hY3Rpb25zXCI+XG4gICAgICA8YSBjbGFzcz1cImdvdnVrLWxpbmtcIiBocmVmPVwiamF2YXNjcmlwdDp2b2lkKDApXCJcbiAgICAgICAgKGNsaWNrKT1cImNoYW5nZUJ1dHRvbkVtaXR0ZXIuZW1pdCh0aGlzLnN1bW1hcnlMaXN0RGlzcGxheU1vZGUgPT09IGRpc3BsYXlNb2RlLk1BTkFHRSA/IGNhc2VGbGFnRmllbGRTdGF0ZS5GTEFHX01BTkFHRV9DQVNFX0ZMQUdTIDogY2FzZUZsYWdGaWVsZFN0YXRlLkZMQUdfTE9DQVRJT04pXCI+XG4gICAgICAgIHt7J0NoYW5nZScgfCBycHhUcmFuc2xhdGV9fTxzcGFuIGNsYXNzPVwiZ292dWstdmlzdWFsbHktaGlkZGVuXCI+IHt7J3BhcnR5IG5hbWUnIHwgcnB4VHJhbnNsYXRlfX08L3NwYW4+XG4gICAgICA8L2E+XG4gICAgPC9kZD5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJnb3Z1ay1zdW1tYXJ5LWxpc3RfX3Jvd1wiPlxuICAgIDxkdCBjbGFzcz1cImdvdnVrLXN1bW1hcnktbGlzdF9fa2V5XCI+XG4gICAgICB7e2ZsYWdUeXBlSGVhZGVyVGV4dCB8IHJweFRyYW5zbGF0ZX19XG4gICAgPC9kdD5cbiAgICA8ZGQgY2xhc3M9XCJnb3Z1ay1zdW1tYXJ5LWxpc3RfX3ZhbHVlXCI+XG4gICAgICB7e2ZsYWdEZXNjcmlwdGlvbn19XG4gICAgPC9kZD5cbiAgICA8ZGQgY2xhc3M9XCJnb3Z1ay1zdW1tYXJ5LWxpc3RfX2FjdGlvbnNcIj5cbiAgICAgIDxhIGNsYXNzPVwiZ292dWstbGlua1wiIGhyZWY9XCJqYXZhc2NyaXB0OnZvaWQoMClcIlxuICAgICAgICAoY2xpY2spPVwiY2hhbmdlQnV0dG9uRW1pdHRlci5lbWl0KHRoaXMuc3VtbWFyeUxpc3REaXNwbGF5TW9kZSA9PT0gZGlzcGxheU1vZGUuTUFOQUdFID8gY2FzZUZsYWdGaWVsZFN0YXRlLkZMQUdfVVBEQVRFIDogY2FzZUZsYWdGaWVsZFN0YXRlLkZMQUdfVFlQRSlcIj5cbiAgICAgICAge3snQ2hhbmdlJyB8IHJweFRyYW5zbGF0ZX19PHNwYW4gY2xhc3M9XCJnb3Z1ay12aXN1YWxseS1oaWRkZW5cIj4ge3snZmxhZyB0eXBlJyB8IHJweFRyYW5zbGF0ZX19PC9zcGFuPlxuICAgICAgPC9hPlxuICAgIDwvZGQ+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiZ292dWstc3VtbWFyeS1saXN0X19yb3dcIiAqbmdJZj1cImZsYWdEZXNjcmlwdGlvbldlbHNoPy5sZW5ndGggPiAwICYmICFleHRlcm5hbFVzZXJVcGRhdGVcIj5cbiAgICA8ZHQgY2xhc3M9XCJnb3Z1ay1zdW1tYXJ5LWxpc3RfX2tleVwiPlxuICAgICAge3snT3RoZXIgZGVzY3JpcHRpb24gKFdlbHNoKScgfCBycHhUcmFuc2xhdGV9fVxuICAgIDwvZHQ+XG4gICAgPGRkIGNsYXNzPVwiZ292dWstc3VtbWFyeS1saXN0X192YWx1ZVwiPlxuICAgICAge3tmbGFnRGVzY3JpcHRpb25XZWxzaH19XG4gICAgPC9kZD5cbiAgICA8ZGQgY2xhc3M9XCJnb3Z1ay1zdW1tYXJ5LWxpc3RfX2FjdGlvbnNcIj5cbiAgICAgIDxhIGNsYXNzPVwiZ292dWstbGlua1wiIGhyZWY9XCJqYXZhc2NyaXB0OnZvaWQoMClcIlxuICAgICAgICAoY2xpY2spPVwiY2hhbmdlQnV0dG9uRW1pdHRlci5lbWl0KHRoaXMuc3VtbWFyeUxpc3REaXNwbGF5TW9kZSA9PT0gZGlzcGxheU1vZGUuTUFOQUdFID8gY2FzZUZsYWdGaWVsZFN0YXRlLkZMQUdfVVBEQVRFX1dFTFNIX1RSQU5TTEFUSU9OIDogY2FzZUZsYWdGaWVsZFN0YXRlLkZMQUdfVFlQRSlcIj5cbiAgICAgICAge3snQ2hhbmdlJyB8IHJweFRyYW5zbGF0ZX19PHNwYW4gY2xhc3M9XCJnb3Z1ay12aXN1YWxseS1oaWRkZW5cIj4ge3snb3RoZXIgZGVzY3JpcHRpb24gKFdlbHNoKScgfCBycHhUcmFuc2xhdGV9fTwvc3Bhbj5cbiAgICAgIDwvYT5cbiAgICA8L2RkPlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImdvdnVrLXN1bW1hcnktbGlzdF9fcm93XCIgKm5nSWY9XCJmbGFnQ29tbWVudHM/Lmxlbmd0aCA+IDBcIj5cbiAgICA8ZHQgY2xhc3M9XCJnb3Z1ay1zdW1tYXJ5LWxpc3RfX2tleVwiPlxuICAgICAge3snQ29tbWVudHMnIHwgcnB4VHJhbnNsYXRlfX1cbiAgICA8L2R0PlxuICAgIDxkZCBjbGFzcz1cImdvdnVrLXN1bW1hcnktbGlzdF9fdmFsdWVcIj5cbiAgICAgIHt7ZXh0ZXJuYWxVc2VyVXBkYXRlID8gZmxhZ1VwZGF0ZUNvbW1lbnRzIDogZmxhZ0NvbW1lbnRzfX1cbiAgICA8L2RkPlxuICAgIDxkZCBjbGFzcz1cImdvdnVrLXN1bW1hcnktbGlzdF9fYWN0aW9uc1wiPlxuICAgICAgPGEgY2xhc3M9XCJnb3Z1ay1saW5rXCIgaHJlZj1cImphdmFzY3JpcHQ6dm9pZCgwKVwiXG4gICAgICAgIChjbGljayk9XCJjaGFuZ2VCdXR0b25FbWl0dGVyLmVtaXQodGhpcy5zdW1tYXJ5TGlzdERpc3BsYXlNb2RlID09PSBkaXNwbGF5TW9kZS5NQU5BR0UgPyBjYXNlRmxhZ0ZpZWxkU3RhdGUuRkxBR19VUERBVEUgOiBjYXNlRmxhZ0ZpZWxkU3RhdGUuRkxBR19DT01NRU5UUylcIj5cbiAgICAgICAge3snQ2hhbmdlJyB8IHJweFRyYW5zbGF0ZX19PHNwYW4gY2xhc3M9XCJnb3Z1ay12aXN1YWxseS1oaWRkZW5cIj4ge3snY29tbWVudHMnIHwgcnB4VHJhbnNsYXRlfX08L3NwYW4+XG4gICAgICA8L2E+XG4gICAgPC9kZD5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJnb3Z1ay1zdW1tYXJ5LWxpc3RfX3Jvd1wiICpuZ0lmPVwiZmxhZ0NvbW1lbnRzV2Vsc2g/Lmxlbmd0aCA+IDAgJiYgIWV4dGVybmFsVXNlclVwZGF0ZVwiPlxuICAgIDxkdCBjbGFzcz1cImdvdnVrLXN1bW1hcnktbGlzdF9fa2V5XCI+XG4gICAgICB7eydDb21tZW50cyAoV2Vsc2gpJyB8IHJweFRyYW5zbGF0ZX19XG4gICAgPC9kdD5cbiAgICA8ZGQgY2xhc3M9XCJnb3Z1ay1zdW1tYXJ5LWxpc3RfX3ZhbHVlXCI+XG4gICAgICB7e2ZsYWdDb21tZW50c1dlbHNofX1cbiAgICA8L2RkPlxuICAgIDxkZCBjbGFzcz1cImdvdnVrLXN1bW1hcnktbGlzdF9fYWN0aW9uc1wiPlxuICAgICAgPGEgY2xhc3M9XCJnb3Z1ay1saW5rXCIgaHJlZj1cImphdmFzY3JpcHQ6dm9pZCgwKVwiXG4gICAgICAgIChjbGljayk9XCJjaGFuZ2VCdXR0b25FbWl0dGVyLmVtaXQodGhpcy5zdW1tYXJ5TGlzdERpc3BsYXlNb2RlID09PSBkaXNwbGF5TW9kZS5NQU5BR0UgPyBjYXNlRmxhZ0ZpZWxkU3RhdGUuRkxBR19VUERBVEVfV0VMU0hfVFJBTlNMQVRJT04gOiBjYXNlRmxhZ0ZpZWxkU3RhdGUuRkxBR19DT01NRU5UUylcIj5cbiAgICAgICAge3snQ2hhbmdlJyB8IHJweFRyYW5zbGF0ZX19PHNwYW4gY2xhc3M9XCJnb3Z1ay12aXN1YWxseS1oaWRkZW5cIj4ge3snY29tbWVudHMgKFdlbHNoKScgfCBycHhUcmFuc2xhdGV9fTwvc3Bhbj5cbiAgICAgIDwvYT5cbiAgICA8L2RkPlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImdvdnVrLXN1bW1hcnktbGlzdF9fcm93XCI+XG4gICAgPGR0IGNsYXNzPVwiZ292dWstc3VtbWFyeS1saXN0X19rZXlcIj5cbiAgICAgIHt7J1N0YXR1cycgfCBycHhUcmFuc2xhdGV9fVxuICAgIDwvZHQ+XG4gICAgPGRkIGNsYXNzPVwiZ292dWstc3VtbWFyeS1saXN0X192YWx1ZVwiPlxuICAgICAge3tmbGFnU3RhdHVzIHwgcnB4VHJhbnNsYXRlfX1cbiAgICA8L2RkPlxuICAgIDxkZCBjbGFzcz1cImdvdnVrLXN1bW1hcnktbGlzdF9fYWN0aW9uc1wiPlxuICAgICAgPGEgKm5nSWY9XCJpczJQb2ludDFFbmFibGVkXCIgY2xhc3M9XCJnb3Z1ay1saW5rXCIgaHJlZj1cImphdmFzY3JpcHQ6dm9pZCgwKVwiXG4gICAgICAgIChjbGljayk9XCJjaGFuZ2VCdXR0b25FbWl0dGVyLmVtaXQodGhpcy5zdW1tYXJ5TGlzdERpc3BsYXlNb2RlID09PSBkaXNwbGF5TW9kZS5NQU5BR0UgPyBjYXNlRmxhZ0ZpZWxkU3RhdGUuRkxBR19VUERBVEUgOiBjYXNlRmxhZ0ZpZWxkU3RhdGUuRkxBR19TVEFUVVMpXCI+XG4gICAgICAgIHt7J0NoYW5nZScgfCBycHhUcmFuc2xhdGV9fTxzcGFuIGNsYXNzPVwiZ292dWstdmlzdWFsbHktaGlkZGVuXCI+IHt7J3N0YXR1cycgfCBycHhUcmFuc2xhdGV9fTwvc3Bhbj5cbiAgICAgIDwvYT5cbiAgICA8L2RkPlxuICA8L2Rpdj5cbjwvZGw+XG4iXX0=
300
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1mbGFnLXN1bW1hcnktbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2NvbXBvbmVudHMvcGFsZXR0ZS9jYXNlLWZsYWcvY29tcG9uZW50cy9jYXNlLWZsYWctc3VtbWFyeS1saXN0L2Nhc2UtZmxhZy1zdW1tYXJ5LWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvY2FzZS1mbGFnL2NvbXBvbmVudHMvY2FzZS1mbGFnLXN1bW1hcnktbGlzdC9jYXNlLWZsYWctc3VtbWFyeS1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFNUQsT0FBTyxFQUNMLGdDQUFnQyxFQUNoQywrQkFBK0IsRUFDL0Isa0JBQWtCLEVBQ2xCLDhCQUE4QixFQUMvQixNQUFNLGFBQWEsQ0FBQzs7Ozs7O0lDc0JqQixBQURGLDhCQUFxRyxZQUMvRDtJQUNsQyxZQUNGOztJQUFBLGlCQUFLO0lBQ0wsNkJBQXNDO0lBQ3BDLFlBQ0Y7SUFBQSxpQkFBSztJQUVILEFBREYsNkJBQXdDLFdBRXFJO0lBQXpLLDBMQUFTLDRMQUE4SixLQUFDO0lBQ3hLLFlBQTJCOztJQUFBLGdDQUFvQztJQUFDLGFBQThDOztJQUdwSCxBQURFLEFBREUsQUFEZ0gsaUJBQU8sRUFDbkgsRUFDRCxFQUNEOzs7SUFYRixlQUNGO0lBREUsa0ZBQ0Y7SUFF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Q0FBQyx1QkFBdUIsS0FBSywrQkFBK0IsQ0FBQyxNQUFNO1lBQ3ZFLElBQUksQ0FBQyx1QkFBdUIsS0FBSywrQkFBK0IsQ0FBQyxlQUFlO1lBQ2hGLElBQUksQ0FBQyx1QkFBdUIsS0FBSywrQkFBK0IsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQ3RGLE9BQU8sOEJBQThCLENBQUMsTUFBTSxDQUFDO1FBQy9DLENBQUM7UUFDRCxPQUFPLDhCQUE4QixDQUFDLE1BQU0sQ0FBQztJQUMvQyxDQUFDO0lBRU8sd0NBQXdDO1FBQzlDLE9BQU8sSUFBSSxDQUFDLHVCQUF1QixLQUFLLCtCQUErQixDQUFDLGdCQUFnQjtZQUN0RixJQUFJLENBQUMsdUJBQXVCLEtBQUssK0JBQStCLENBQUMsZ0JBQWdCLENBQUM7SUFDdEYsQ0FBQztzRkF2R1UsNEJBQTRCOzZEQUE1Qiw0QkFBNEI7WUNkekMsNkVBQTZEOztZQUE3QixnREFBMkI7OztpRkRjOUMsNEJBQTRCO2NBSnhDLFNBQVM7MkJBQ0UsNEJBQTRCO3NEQUl0QixxQkFBcUI7a0JBQXBDLEtBQUs7WUFDVSx1QkFBdUI7a0JBQXRDLEtBQUs7WUFDVyxtQkFBbUI7a0JBQW5DLE1BQU07O2tGQUhJLDRCQUE0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJweFRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gJ3JweC14dWktdHJhbnNsYXRpb24nO1xuaW1wb3J0IHsgRmxhZ0RldGFpbCwgRmxhZ0RldGFpbERpc3BsYXkgfSBmcm9tICcuLi8uLi9kb21haW4nO1xuaW1wb3J0IHtcbiAgQ2FzZUZsYWdDaGVja1lvdXJBbnN3ZXJzUGFnZVN0ZXAsXG4gIENhc2VGbGFnRGlzcGxheUNvbnRleHRQYXJhbWV0ZXIsXG4gIENhc2VGbGFnRmllbGRTdGF0ZSxcbiAgQ2FzZUZsYWdTdW1tYXJ5TGlzdERpc3BsYXlNb2RlXG59IGZyb20gJy4uLy4uL2VudW1zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY2NkLWNhc2UtZmxhZy1zdW1tYXJ5LWxpc3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FzZS1mbGFnLXN1bW1hcnktbGlzdC5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgQ2FzZUZsYWdTdW1tYXJ5TGlzdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIHB1YmxpYyBmbGFnRm9yU3VtbWFyeURpc3BsYXk6IEZsYWdEZXRhaWxEaXNwbGF5O1xuICBASW5wdXQoKSBwdWJsaWMgZGlzcGxheUNvbnRleHRQYXJhbWV0ZXI6IHN0cmluZztcbiAgQE91dHB1dCgpIHB1YmxpYyBjaGFuZ2VCdXR0b25FbWl0dGVyID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgcHVibGljIGZsYWdEZXNjcmlwdGlvbjogc3RyaW5nO1xuICBwdWJsaWMgZmxhZ0NvbW1lbnRzOiBzdHJpbmc7XG4gIHB1YmxpYyBmbGFnU3RhdHVzOiBzdHJpbmc7XG4gIHB1YmxpYyBmbGFnRGVzY3JpcHRpb25XZWxzaDogc3RyaW5nO1xuICBwdWJsaWMgZmxhZ0NvbW1lbnRzV2Vsc2g6IHN0cmluZztcbiAgcHVibGljIG90aGVyRGVzY3JpcHRpb246IHN0cmluZztcbiAgcHVibGljIG90aGVyRGVzY3JpcHRpb25XZWxzaDogc3RyaW5nO1xuICBwdWJsaWMgZmxhZ1VwZGF0ZUNvbW1lbnRzOiBzdHJpbmc7XG4gIHB1YmxpYyBzdW1tYXJ5TGlzdERpc3BsYXlNb2RlOiBDYXNlRmxhZ1N1bW1hcnlMaXN0RGlzcGxheU1vZGU7XG4gIHB1YmxpYyBhZGRVcGRhdGVGbGFnSGVhZGVyVGV4dDogc3RyaW5nO1xuICBwdWJsaWMgY2FzZUZsYWdGaWVsZFN0YXRlID0gQ2FzZUZsYWdGaWVsZFN0YXRlO1xuICBwdWJsaWMgZGlzcGxheU1vZGUgPSBDYXNlRmxhZ1N1bW1hcnlMaXN0RGlzcGxheU1vZGU7XG4gIHB1YmxpYyBmbGFnVHlwZUhlYWRlclRleHQ6IHN0cmluZztcbiAgcHVibGljIGNhc2VGbGFnQ2hlY2tZb3VyQW5zd2Vyc1BhZ2VTdGVwID0gQ2FzZUZsYWdDaGVja1lvdXJBbnN3ZXJzUGFnZVN0ZXA7XG4gIHB1YmxpYyBpczJQb2ludDFFbmFibGVkID0gZmFsc2U7XG4gIHB1YmxpYyBleHRlcm5hbFVzZXJVcGRhdGUgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHJweFRyYW5zbGF0aW9uU2VydmljZTogUnB4VHJhbnNsYXRpb25TZXJ2aWNlKSB7IH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZmxhZ0ZvclN1bW1hcnlEaXNwbGF5KSB7XG4gICAgICBjb25zdCBmbGFnRGV0YWlsID0gdGhpcy5mbGFnRm9yU3VtbWFyeURpc3BsYXkuZmxhZ0RldGFpbDtcbiAgICAgIHRoaXMuZmxhZ0Rlc2NyaXB0aW9uID0gdGhpcy5nZXRGbGFnRGVzY3JpcHRpb24oZmxhZ0RldGFpbCk7XG4gICAgICB0aGlzLmZsYWdEZXNjcmlwdGlvbldlbHNoID0gZmxhZ0RldGFpbC5vdGhlckRlc2NyaXB0aW9uX2N5O1xuICAgICAgdGhpcy5mbGFnQ29tbWVudHMgPSBmbGFnRGV0YWlsLmZsYWdDb21tZW50O1xuICAgICAgdGhpcy5mbGFnQ29tbWVudHNXZWxzaCA9IGZsYWdEZXRhaWwuZmxhZ0NvbW1lbnRfY3k7XG4gICAgICAvLyBGbGFnIHVwZGF0ZSBjb21tZW50cyB3aWxsIGJlIGNvbWluZyBmcm9tIHRoZSBmbGFnU3RhdHVzUmVhc29uQ2hhbmdlIHByb3BlcnR5IGluc3RlYWQgb2YgZmxhZ1VwZGF0ZUNvbW1lbnRcbiAgICAgIC8vIGJlY2F1c2UgdGhlc2UgaGF2ZW4ndCBiZWVuIHBlcnNpc3RlZCB5ZXRcbiAgICAgIHRoaXMuZmxhZ1VwZGF0ZUNvbW1lbnRzID0gZmxhZ0RldGFpbFsnZmxhZ1N0YXR1c1JlYXNvbkNoYW5nZSddO1xuICAgICAgdGhpcy5mbGFnU3RhdHVzID0gZmxhZ0RldGFpbC5zdGF0dXM7XG4gICAgICB0aGlzLmFkZFVwZGF0ZUZsYWdIZWFkZXJUZXh0ID0gdGhpcy5nZXRBZGRVcGRhdGVGbGFnSGVhZGVyVGV4dCgpO1xuICAgICAgdGhpcy5mbGFnVHlwZUhlYWRlclRleHQgPSB0aGlzLmdldEZsYWdUeXBlSGVhZGVyVGV4dCgpO1xuICAgICAgdGhpcy5zdW1tYXJ5TGlzdERpc3BsYXlNb2RlID0gdGhpcy5nZXRTdW1tYXJ5TGlzdERpc3BsYXlNb2RlKCk7XG4gICAgICB0aGlzLmlzMlBvaW50MUVuYWJsZWQgPSB0aGlzLmdldERpc3BsYXlDb250ZXh0UGFyYW1ldGVyMlBvaW50MUVuYWJsZWQoKTtcbiAgICAgIHRoaXMuZXh0ZXJuYWxVc2VyVXBkYXRlID0gdGhpcy5kaXNwbGF5Q29udGV4dFBhcmFtZXRlciA9PT0gQ2FzZUZsYWdEaXNwbGF5Q29udGV4dFBhcmFtZXRlci5VUERBVEVfRVhURVJOQUw7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRGbGFnRGVzY3JpcHRpb24oZmxhZ0RldGFpbDogRmxhZ0RldGFpbCk6IHN0cmluZyB7XG4gICAgbGV0IGZsYWdOYW1lOiBzdHJpbmc7XG4gICAgbGV0IHN1YlR5cGVWYWx1ZTogc3RyaW5nO1xuICAgIGlmICh0aGlzLnJweFRyYW5zbGF0aW9uU2VydmljZS5sYW5ndWFnZSA9PT0gJ2N5Jykge1xuICAgICAgZmxhZ05hbWUgPSBmbGFnRGV0YWlsLm5hbWVfY3kgfHwgZmxhZ0RldGFpbC5uYW1lO1xuICAgICAgc3ViVHlwZVZhbHVlID0gZmxhZ0RldGFpbC5zdWJUeXBlVmFsdWVfY3kgfHwgZmxhZ0RldGFpbC5zdWJUeXBlVmFsdWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIGZsYWdOYW1lID0gZmxhZ0RldGFpbC5uYW1lIHx8IGZsYWdEZXRhaWwubmFtZV9jeTtcbiAgICAgIHN1YlR5cGVWYWx1ZSA9IGZsYWdEZXRhaWwuc3ViVHlwZVZhbHVlIHx8IGZsYWdEZXRhaWwuc3ViVHlwZVZhbHVlX2N5O1xuICAgIH1cbiAgICAvLyBUaGUgb3RoZXJEZXNjcmlwdGlvbiBmaWVsZCBzaG91bGQgYmUgc2hvd24gdmVyYmF0aW07IG90aGVyRGVzY3JpcHRpb24gZm9yIFdlbHNoIGlzIHNob3duIHNlcGFyYXRlbHlcbiAgICBjb25zdCBvdGhlckRlc2NyaXB0aW9uID0gZmxhZ0RldGFpbC5vdGhlckRlc2NyaXB0aW9uID8gYCAtICR7ZmxhZ0RldGFpbC5vdGhlckRlc2NyaXB0aW9ufWAgOiAnJztcbiAgICBjb25zdCBzdWJUeXBlVmFsdWVGb3JEaXNwbGF5ID0gc3ViVHlwZVZhbHVlID8gYCAtICR7c3ViVHlwZVZhbHVlfWAgOiAnJztcbiAgICByZXR1cm4gYCR7ZmxhZ05hbWV9JHtvdGhlckRlc2NyaXB0aW9ufSR7c3ViVHlwZVZhbHVlRm9yRGlzcGxheX1gO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRBZGRVcGRhdGVGbGFnSGVhZGVyVGV4dCgpOiBzdHJpbmcge1xuICAgIHN3aXRjaCh0aGlzLmRpc3BsYXlDb250ZXh0UGFyYW1ldGVyKSB7XG4gICAgICBjYXNlIENhc2VGbGFnRGlzcGxheUNvbnRleHRQYXJhbWV0ZXIuQ1JFQVRFOlxuICAgICAgY2FzZSBDYXNlRmxhZ0Rpc3BsYXlDb250ZXh0UGFyYW1ldGVyLkNSRUFURV8yX1BPSU5UXzE6XG4gICAgICAgIHJldHVybiBDYXNlRmxhZ0NoZWNrWW91ckFuc3dlcnNQYWdlU3RlcC5BRERfRkxBR19IRUFERVJfVEVYVDtcbiAgICAgIGNhc2UgQ2FzZUZsYWdEaXNwbGF5Q29udGV4dFBhcmFtZXRlci5DUkVBVEVfRVhURVJOQUw6XG4gICAgICAgIHJldHVybiBDYXNlRmxhZ0NoZWNrWW91ckFuc3dlcnNQYWdlU3RlcC5BRERfRkxBR19IRUFERVJfVEVYVF9FWFRFUk5BTDtcbiAgICAgIGNhc2UgQ2FzZUZsYWdEaXNwbGF5Q29udGV4dFBhcmFtZXRlci5VUERBVEU6XG4gICAgICBjYXNlIENhc2VGbGFnRGlzcGxheUNvbnRleHRQYXJhbWV0ZXIuVVBEQVRFXzJfUE9JTlRfMTpcbiAgICAgICAgcmV0dXJuIENhc2VGbGFnQ2hlY2tZb3VyQW5zd2Vyc1BhZ2VTdGVwLlVQREFURV9GTEFHX0hFQURFUl9URVhUO1xuICAgICAgY2FzZSBDYXNlRmxhZ0Rpc3BsYXlDb250ZXh0UGFyYW1ldGVyLlVQREFURV9FWFRFUk5BTDpcbiAgICAgICAgcmV0dXJuIENhc2VGbGFnQ2hlY2tZb3VyQW5zd2Vyc1BhZ2VTdGVwLlVQREFURV9GTEFHX0hFQURFUl9URVhUX0VYVEVSTkFMO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIENhc2VGbGFnQ2hlY2tZb3VyQW5zd2Vyc1BhZ2VTdGVwLk5PTkU7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRGbGFnVHlwZUhlYWRlclRleHQoKTogc3RyaW5nIHtcbiAgICBzd2l0Y2godGhpcy5kaXNwbGF5Q29udGV4dFBhcmFtZXRlcikge1xuICAgICAgY2FzZSBDYXNlRmxhZ0Rpc3BsYXlDb250ZXh0UGFyYW1ldGVyLkNSRUFURTpcbiAgICAgIGNhc2UgQ2FzZUZsYWdEaXNwbGF5Q29udGV4dFBhcmFtZXRlci5DUkVBVEVfMl9QT0lOVF8xOlxuICAgICAgY2FzZSBDYXNlRmxhZ0Rpc3BsYXlDb250ZXh0UGFyYW1ldGVyLlVQREFURTpcbiAgICAgIGNhc2UgQ2FzZUZsYWdEaXNwbGF5Q29udGV4dFBhcmFtZXRlci5VUERBVEVfMl9QT0lOVF8xOlxuICAgICAgICByZXR1cm4gQ2FzZUZsYWdDaGVja1lvdXJBbnN3ZXJzUGFnZVN0ZXAuRkxBR19UWVBFX0hFQURFUl9URVhUO1xuICAgICAgY2FzZSBDYXNlRmxhZ0Rpc3BsYXlDb250ZXh0UGFyYW1ldGVyLkNSRUFURV9FWFRFUk5BTDpcbiAgICAgIGNhc2UgQ2FzZUZsYWdEaXNwbGF5Q29udGV4dFBhcmFtZXRlci5VUERBVEVfRVhURVJOQUw6XG4gICAgICAgIHJldHVybiBDYXNlRmxhZ0NoZWNrWW91ckFuc3dlcnNQYWdlU3RlcC5GTEFHX1RZUEVfSEVBREVSX1RFWFRfRVhURVJOQUw7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gQ2FzZUZsYWdDaGVja1lvdXJBbnN3ZXJzUGFnZVN0ZXAuTk9ORTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldFN1bW1hcnlMaXN0RGlzcGxheU1vZGUoKTogbnVtYmVyIHtcbiAgICBpZiAodGhpcy5kaXNwbGF5Q29udGV4dFBhcmFtZXRlciA9PT0gQ2FzZUZsYWdEaXNwbGF5Q29udGV4dFBhcmFtZXRlci5DUkVBVEUgfHxcbiAgICAgICAgdGhpcy5kaXNwbGF5Q29udGV4dFBhcmFtZXRlciA9PT0gQ2FzZUZsYWdEaXNwbGF5Q29udGV4dFBhcmFtZXRlci5DUkVBVEVfRVhURVJOQUwgfHxcbiAgICAgICAgdGhpcy5kaXNwbGF5Q29udGV4dFBhcmFtZXRlciA9PT0gQ2FzZUZsYWdEaXNwbGF5Q29udGV4dFBhcmFtZXRlci5DUkVBVEVfMl9QT0lOVF8xKSB7XG4gICAgICByZXR1cm4gQ2FzZUZsYWdTdW1tYXJ5TGlzdERpc3BsYXlNb2RlLkNSRUFURTtcbiAgICB9XG4gICAgcmV0dXJuIENhc2VGbGFnU3VtbWFyeUxpc3REaXNwbGF5TW9kZS5NQU5BR0U7XG4gIH1cblxuICBwcml2YXRlIGdldERpc3BsYXlDb250ZXh0UGFyYW1ldGVyMlBvaW50MUVuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZGlzcGxheUNvbnRleHRQYXJhbWV0ZXIgPT09IENhc2VGbGFnRGlzcGxheUNvbnRleHRQYXJhbWV0ZXIuQ1JFQVRFXzJfUE9JTlRfMSB8fFxuICAgICAgdGhpcy5kaXNwbGF5Q29udGV4dFBhcmFtZXRlciA9PT0gQ2FzZUZsYWdEaXNwbGF5Q29udGV4dFBhcmFtZXRlci5VUERBVEVfMl9QT0lOVF8xO1xuICB9XG59XG4iLCI8ZGwgY2xhc3M9XCJnb3Z1ay1zdW1tYXJ5LWxpc3RcIiAqbmdJZj1cImZsYWdGb3JTdW1tYXJ5RGlzcGxheVwiPlxuICA8ZGl2IGNsYXNzPVwiZ292dWstc3VtbWFyeS1saXN0X19yb3dcIj5cbiAgICA8ZHQgY2xhc3M9XCJnb3Z1ay1zdW1tYXJ5LWxpc3RfX2tleVwiPlxuICAgICAge3thZGRVcGRhdGVGbGFnSGVhZGVyVGV4dCB8IHJweFRyYW5zbGF0ZX19XG4gICAgPC9kdD5cbiAgICA8ZGQgY2xhc3M9XCJnb3Z1ay1zdW1tYXJ5LWxpc3RfX3ZhbHVlXCI+XG4gICAgICB7e2ZsYWdGb3JTdW1tYXJ5RGlzcGxheS5wYXJ0eU5hbWUgfHwgY2FzZUZsYWdDaGVja1lvdXJBbnN3ZXJzUGFnZVN0ZXAuQ0FTRV9MRVZFTF9MT0NBVElPTiB9fVxuICAgIDwvZGQ+XG4gICAgPGRkIGNsYXNzPVwiZ292dWstc3VtbWFyeS1saXN0X19hY3Rpb25zXCI+XG4gICAgICA8YSBjbGFzcz1cImdvdnVrLWxpbmtcIiBocmVmPVwiamF2YXNjcmlwdDp2b2lkKDApXCJcbiAgICAgICAgKGNsaWNrKT1cImNoYW5nZUJ1dHRvbkVtaXR0ZXIuZW1pdCh0aGlzLnN1bW1hcnlMaXN0RGlzcGxheU1vZGUgPT09IGRpc3BsYXlNb2RlLk1BTkFHRSA/IGNhc2VGbGFnRmllbGRTdGF0ZS5GTEFHX01BTkFHRV9DQVNFX0ZMQUdTIDogY2FzZUZsYWdGaWVsZFN0YXRlLkZMQUdfTE9DQVRJT04pXCI+XG4gICAgICAgIHt7J0NoYW5nZScgfCBycHhUcmFuc2xhdGV9fTxzcGFuIGNsYXNzPVwiZ292dWstdmlzdWFsbHktaGlkZGVuXCI+IHt7J3BhcnR5IG5hbWUnIHwgcnB4VHJhbnNsYXRlfX08L3NwYW4+XG4gICAgICA8L2E+XG4gICAgPC9kZD5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJnb3Z1ay1zdW1tYXJ5LWxpc3RfX3Jvd1wiPlxuICAgIDxkdCBjbGFzcz1cImdvdnVrLXN1bW1hcnktbGlzdF9fa2V5XCI+XG4gICAgICB7e2ZsYWdUeXBlSGVhZGVyVGV4dCB8IHJweFRyYW5zbGF0ZX19XG4gICAgPC9kdD5cbiAgICA8ZGQgY2xhc3M9XCJnb3Z1ay1zdW1tYXJ5LWxpc3RfX3ZhbHVlXCI+XG4gICAgICB7e2ZsYWdEZXNjcmlwdGlvbn19XG4gICAgPC9kZD5cbiAgICA8ZGQgY2xhc3M9XCJnb3Z1ay1zdW1tYXJ5LWxpc3RfX2FjdGlvbnNcIj5cbiAgICAgIDxhIGNsYXNzPVwiZ292dWstbGlua1wiIGhyZWY9XCJqYXZhc2NyaXB0OnZvaWQoMClcIlxuICAgICAgICAoY2xpY2spPVwiY2hhbmdlQnV0dG9uRW1pdHRlci5lbWl0KHRoaXMuc3VtbWFyeUxpc3REaXNwbGF5TW9kZSA9PT0gZGlzcGxheU1vZGUuTUFOQUdFID8gY2FzZUZsYWdGaWVsZFN0YXRlLkZMQUdfVVBEQVRFIDogY2FzZUZsYWdGaWVsZFN0YXRlLkZMQUdfVFlQRSlcIj5cbiAgICAgICAge3snQ2hhbmdlJyB8IHJweFRyYW5zbGF0ZX19PHNwYW4gY2xhc3M9XCJnb3Z1ay12aXN1YWxseS1oaWRkZW5cIj4ge3snZmxhZyB0eXBlJyB8IHJweFRyYW5zbGF0ZX19PC9zcGFuPlxuICAgICAgPC9hPlxuICAgIDwvZGQ+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiZ292dWstc3VtbWFyeS1saXN0X19yb3dcIiAqbmdJZj1cImZsYWdEZXNjcmlwdGlvbldlbHNoPy5sZW5ndGggPiAwICYmICFleHRlcm5hbFVzZXJVcGRhdGVcIj5cbiAgICA8ZHQgY2xhc3M9XCJnb3Z1ay1zdW1tYXJ5LWxpc3RfX2tleVwiPlxuICAgICAge3snT3RoZXIgZGVzY3JpcHRpb24gKFdlbHNoKScgfCBycHhUcmFuc2xhdGV9fVxuICAgIDwvZHQ+XG4gICAgPGRkIGNsYXNzPVwiZ292dWstc3VtbWFyeS1saXN0X192YWx1ZVwiPlxuICAgICAge3tmbGFnRGVzY3JpcHRpb25XZWxzaH19XG4gICAgPC9kZD5cbiAgICA8ZGQgY2xhc3M9XCJnb3Z1ay1zdW1tYXJ5LWxpc3RfX2FjdGlvbnNcIj5cbiAgICAgIDxhIGNsYXNzPVwiZ292dWstbGlua1wiIGhyZWY9XCJqYXZhc2NyaXB0OnZvaWQoMClcIlxuICAgICAgICAoY2xpY2spPVwiY2hhbmdlQnV0dG9uRW1pdHRlci5lbWl0KHRoaXMuc3VtbWFyeUxpc3REaXNwbGF5TW9kZSA9PT0gZGlzcGxheU1vZGUuTUFOQUdFID8gY2FzZUZsYWdGaWVsZFN0YXRlLkZMQUdfVVBEQVRFX1dFTFNIX1RSQU5TTEFUSU9OIDogY2FzZUZsYWdGaWVsZFN0YXRlLkZMQUdfVFlQRSlcIj5cbiAgICAgICAge3snQ2hhbmdlJyB8IHJweFRyYW5zbGF0ZX19PHNwYW4gY2xhc3M9XCJnb3Z1ay12aXN1YWxseS1oaWRkZW5cIj4ge3snb3RoZXIgZGVzY3JpcHRpb24gKFdlbHNoKScgfCBycHhUcmFuc2xhdGV9fTwvc3Bhbj5cbiAgICAgIDwvYT5cbiAgICA8L2RkPlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImdvdnVrLXN1bW1hcnktbGlzdF9fcm93XCIgKm5nSWY9XCJmbGFnQ29tbWVudHM/Lmxlbmd0aCA+IDBcIj5cbiAgICA8ZHQgY2xhc3M9XCJnb3Z1ay1zdW1tYXJ5LWxpc3RfX2tleVwiPlxuICAgICAge3snQ29tbWVudHMnIHwgcnB4VHJhbnNsYXRlfX1cbiAgICA8L2R0PlxuICAgIDxkZCBjbGFzcz1cImdvdnVrLXN1bW1hcnktbGlzdF9fdmFsdWVcIj5cbiAgICAgIHt7ZXh0ZXJuYWxVc2VyVXBkYXRlID8gZmxhZ1VwZGF0ZUNvbW1lbnRzIDogZmxhZ0NvbW1lbnRzfX1cbiAgICA8L2RkPlxuICAgIDxkZCBjbGFzcz1cImdvdnVrLXN1bW1hcnktbGlzdF9fYWN0aW9uc1wiPlxuICAgICAgPGEgY2xhc3M9XCJnb3Z1ay1saW5rXCIgaHJlZj1cImphdmFzY3JpcHQ6dm9pZCgwKVwiXG4gICAgICAgIChjbGljayk9XCJjaGFuZ2VCdXR0b25FbWl0dGVyLmVtaXQodGhpcy5zdW1tYXJ5TGlzdERpc3BsYXlNb2RlID09PSBkaXNwbGF5TW9kZS5NQU5BR0UgPyBjYXNlRmxhZ0ZpZWxkU3RhdGUuRkxBR19VUERBVEUgOiBjYXNlRmxhZ0ZpZWxkU3RhdGUuRkxBR19DT01NRU5UUylcIj5cbiAgICAgICAge3snQ2hhbmdlJyB8IHJweFRyYW5zbGF0ZX19PHNwYW4gY2xhc3M9XCJnb3Z1ay12aXN1YWxseS1oaWRkZW5cIj4ge3snY29tbWVudHMnIHwgcnB4VHJhbnNsYXRlfX08L3NwYW4+XG4gICAgICA8L2E+XG4gICAgPC9kZD5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJnb3Z1ay1zdW1tYXJ5LWxpc3RfX3Jvd1wiICpuZ0lmPVwiZmxhZ0NvbW1lbnRzV2Vsc2g/Lmxlbmd0aCA+IDAgJiYgIWV4dGVybmFsVXNlclVwZGF0ZVwiPlxuICAgIDxkdCBjbGFzcz1cImdvdnVrLXN1bW1hcnktbGlzdF9fa2V5XCI+XG4gICAgICB7eydDb21tZW50cyAoV2Vsc2gpJyB8IHJweFRyYW5zbGF0ZX19XG4gICAgPC9kdD5cbiAgICA8ZGQgY2xhc3M9XCJnb3Z1ay1zdW1tYXJ5LWxpc3RfX3ZhbHVlXCI+XG4gICAgICB7e2ZsYWdDb21tZW50c1dlbHNofX1cbiAgICA8L2RkPlxuICAgIDxkZCBjbGFzcz1cImdvdnVrLXN1bW1hcnktbGlzdF9fYWN0aW9uc1wiPlxuICAgICAgPGEgY2xhc3M9XCJnb3Z1ay1saW5rXCIgaHJlZj1cImphdmFzY3JpcHQ6dm9pZCgwKVwiXG4gICAgICAgIChjbGljayk9XCJjaGFuZ2VCdXR0b25FbWl0dGVyLmVtaXQodGhpcy5zdW1tYXJ5TGlzdERpc3BsYXlNb2RlID09PSBkaXNwbGF5TW9kZS5NQU5BR0UgPyBjYXNlRmxhZ0ZpZWxkU3RhdGUuRkxBR19VUERBVEVfV0VMU0hfVFJBTlNMQVRJT04gOiBjYXNlRmxhZ0ZpZWxkU3RhdGUuRkxBR19DT01NRU5UUylcIj5cbiAgICAgICAge3snQ2hhbmdlJyB8IHJweFRyYW5zbGF0ZX19PHNwYW4gY2xhc3M9XCJnb3Z1ay12aXN1YWxseS1oaWRkZW5cIj4ge3snY29tbWVudHMgKFdlbHNoKScgfCBycHhUcmFuc2xhdGV9fTwvc3Bhbj5cbiAgICAgIDwvYT5cbiAgICA8L2RkPlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImdvdnVrLXN1bW1hcnktbGlzdF9fcm93XCI+XG4gICAgPGR0IGNsYXNzPVwiZ292dWstc3VtbWFyeS1saXN0X19rZXlcIj5cbiAgICAgIHt7J1N0YXR1cycgfCBycHhUcmFuc2xhdGV9fVxuICAgIDwvZHQ+XG4gICAgPGRkIGNsYXNzPVwiZ292dWstc3VtbWFyeS1saXN0X192YWx1ZVwiPlxuICAgICAge3tmbGFnU3RhdHVzIHwgcnB4VHJhbnNsYXRlfX1cbiAgICA8L2RkPlxuICAgIDxkZCBjbGFzcz1cImdvdnVrLXN1bW1hcnktbGlzdF9fYWN0aW9uc1wiPlxuICAgICAgPGEgKm5nSWY9XCJpczJQb2ludDFFbmFibGVkXCIgY2xhc3M9XCJnb3Z1ay1saW5rXCIgaHJlZj1cImphdmFzY3JpcHQ6dm9pZCgwKVwiXG4gICAgICAgIChjbGljayk9XCJjaGFuZ2VCdXR0b25FbWl0dGVyLmVtaXQodGhpcy5zdW1tYXJ5TGlzdERpc3BsYXlNb2RlID09PSBkaXNwbGF5TW9kZS5NQU5BR0UgPyBjYXNlRmxhZ0ZpZWxkU3RhdGUuRkxBR19VUERBVEUgOiBjYXNlRmxhZ0ZpZWxkU3RhdGUuRkxBR19TVEFUVVMpXCI+XG4gICAgICAgIHt7J0NoYW5nZScgfCBycHhUcmFuc2xhdGV9fTxzcGFuIGNsYXNzPVwiZ292dWstdmlzdWFsbHktaGlkZGVuXCI+IHt7J3N0YXR1cycgfCBycHhUcmFuc2xhdGV9fTwvc3Bhbj5cbiAgICAgIDwvYT5cbiAgICA8L2RkPlxuICA8L2Rpdj5cbjwvZGw+XG4iXX0=
@@ -347,7 +347,7 @@ export class ReadComplexFieldCollectionTableComponent extends AbstractFieldReadC
347
347
  return result;
348
348
  }
349
349
  static ɵfac = /*@__PURE__*/ (() => { let ɵReadComplexFieldCollectionTableComponent_BaseFactory; return function ReadComplexFieldCollectionTableComponent_Factory(t) { return (ɵReadComplexFieldCollectionTableComponent_BaseFactory || (ɵReadComplexFieldCollectionTableComponent_BaseFactory = i0.ɵɵgetInheritedFactory(ReadComplexFieldCollectionTableComponent)))(t || ReadComplexFieldCollectionTableComponent); }; })();
350
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ReadComplexFieldCollectionTableComponent, selectors: [["ccd-read-complex-field-collection-table"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 13, vars: 6, consts: [["showEmptyTd", ""], ["SimpleRow", ""], [1, "complex-panel", 3, "hidden"], [1, "complex-panel-title"], [1, "text-16"], ["aria-describedby", "complex panel table", 1, "complex-panel-table"], ["scope", "col", 4, "ngFor", "ngForOf"], [4, "ngFor", "ngForOf"], ["scope", "col"], ["href", "javascript:void(0)", 1, "sort-widget", 3, "click", "innerHTML"], [1, "new-table-row", "accordion-heading", 3, "click"], [2, "float", "right"], ["href", "javascript:void(0)"], ["alt", "image", 1, "accordion-image", 3, "src"], [3, "hidden"], [3, "colSpan"], ["aria-describedby", "complex panel table expanded", 1, "complex-panel-table"], [4, "ngIf", "ngIfElse"], [3, "caseField", "context"], ["class", "complex-panel-simple-field accordion-body", 3, "hidden", 4, "ngIf"], [3, "hidden", 4, "ngIf"], [1, "complex-panel-simple-field", "accordion-body", 3, "hidden"], ["class", "text-16", 4, "ngIf"], ["colspan", "2"], ["class", "complex-panel-compound-field", 3, "hidden", 4, "ngIf", "ngIfElse"], [1, "complex-panel-compound-field", 3, "hidden"], [1, "complex-panel-nested-field", 3, "hidden"], [4, "ngIf"]], template: function ReadComplexFieldCollectionTableComponent_Template(rf, ctx) { if (rf & 1) {
350
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ReadComplexFieldCollectionTableComponent, selectors: [["ccd-read-complex-field-collection-table"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 13, vars: 6, consts: [["showEmptyTd", ""], ["SimpleRow", ""], [1, "complex-panel", 3, "hidden"], [1, "complex-panel-title"], [1, "text-16"], ["aria-describedby", "complex panel table", 1, "complex-panel-table"], ["scope", "col", 4, "ngFor", "ngForOf"], [4, "ngFor", "ngForOf"], ["scope", "col"], ["href", "javascript:void(0)", 1, "sort-widget", 3, "click", "innerHTML"], [1, "new-table-row", "accordion-heading", 3, "click"], [2, "float", "right"], ["href", "javascript:void(0)"], ["alt", "accordion-img", 1, "accordion-image", 3, "src"], [3, "hidden"], [3, "colSpan"], ["aria-describedby", "complex panel table expanded", 1, "complex-panel-table"], [4, "ngIf", "ngIfElse"], [3, "caseField", "context"], ["class", "complex-panel-simple-field accordion-body", 3, "hidden", 4, "ngIf"], [3, "hidden", 4, "ngIf"], [1, "complex-panel-simple-field", "accordion-body", 3, "hidden"], ["class", "text-16", 4, "ngIf"], ["colspan", "2"], ["class", "complex-panel-compound-field", 3, "hidden", 4, "ngIf", "ngIfElse"], [1, "complex-panel-compound-field", 3, "hidden"], [1, "complex-panel-nested-field", 3, "hidden"], [4, "ngIf"]], template: function ReadComplexFieldCollectionTableComponent_Template(rf, ctx) { if (rf & 1) {
351
351
  i0.ɵɵelementStart(0, "div", 2)(1, "dl", 3)(2, "dt")(3, "span", 4);
352
352
  i0.ɵɵtext(4);
353
353
  i0.ɵɵpipe(5, "rpxTranslate");
@@ -372,7 +372,7 @@ export class ReadComplexFieldCollectionTableComponent extends AbstractFieldReadC
372
372
  }
373
373
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ReadComplexFieldCollectionTableComponent, [{
374
374
  type: Component,
375
- args: [{ selector: 'ccd-read-complex-field-collection-table', template: "<div class=\"complex-panel\" [hidden]=\"caseField.hidden\">\n <dl class=\"complex-panel-title\">\n <dt><span class=\"text-16\">{{caseField.label | rpxTranslate}}</span></dt>\n <dd></dd>\n </dl>\n <table class=\"complex-panel-table\" aria-describedby=\"complex panel table\">\n <tbody>\n <!-- <COMPLEX table field header>-->\n <tr>\n <th *ngFor=\"let heading of columns\" scope=\"col\">\n <span class=\"text-16\">{{columnsAllLabels[heading].label | rpxTranslate}}</span>\n <a href=\"javascript:void(0)\"\n (click)=\"sortRowsByColumns(heading)\"\n class=\"sort-widget\"\n [innerHTML]=\"sortWidget(columnsAllLabels[heading])\"></a>\n </th>\n <th></th>\n </tr>\n <!-- </COMPLEX table field header>-->\n <ng-container *ngFor=\"let item of rows; let i = index;\">\n <!-- <COMPLEX table collapsed view>-->\n <tr class=\"new-table-row accordion-heading\" (click)=\"isHidden[i] = !isHidden[i]\"\n [class.last-accordion]=\"isHidden[i]\">\n <ng-container *ngFor=\"let heading of columns\">\n <td class=\"text-16\">\n <div *ngIf=\"item[heading]; else showEmptyTd\">\n <ccd-field-read\n [caseField]=\"toCaseField(heading, item[heading].label, columnsHorizontalLabel[heading].type, item[heading])\"\n [context]=\"context\"></ccd-field-read>\n </div>\n <ng-template #showEmptyTd>\n <div>&nbsp;</div>\n </ng-template>\n </td>\n </ng-container>\n <td>\n <div style=\"float: right;\">\n <a href=\"javascript:void(0)\"> <img src=\"{{ getImage(i) }}\" alt=\"image\" class=\"accordion-image\"/></a>\n </div>\n </td>\n </tr>\n <!-- </COMPLEX table collapsed view>-->\n <!-- <COMPLEX table expanded view>-->\n <tr [hidden]=\"isHidden[i]\">\n <td [colSpan]=\"columns.length + 1\">\n <table class=\"complex-panel-table\" aria-describedby=\"complex panel table expanded\">\n <tbody>\n <ng-container\n *ngFor=\"let vLabel of columnsVerticalLabel | keyvalue: keepOriginalOrder | ccdCollectionTableCaseFieldsFilter: caseField: rows[i] | ccdReadFieldsFilter:true :undefined :true\">\n <!-- <COMPLEX table expandable body simple field>-->\n <tr class=\"complex-panel-simple-field accordion-body\" *ngIf=\"item[vLabel.id]\" [hidden]=\"vLabel.hidden\">\n <th scope=\"col\"><span class=\"text-16\">{{vLabel.label | rpxTranslate}}</span></th>\n <td *ngIf=\"vLabel['type'] !== 'Complex'\" class=\"text-16\">\n <ccd-field-read [caseField]=\"toCaseField('', vLabel.label, vLabel.field_type, item[vLabel.id])\"\n [context]=\"context\"></ccd-field-read>\n </td>\n </tr>\n <!-- </COMPLEX table expandable body simple field>-->\n\n <!-- <COMPLEX table expandable body complex field>-->\n <tr *ngIf=\"vLabel['type'] === 'Complex' && addCaseFieldValue(vLabel, item[vLabel.id])\" [hidden]=\"vLabel.hidden\">\n <td colspan=\"2\">\n <ng-container *ngFor=\"let caseField of vLabel | ccdReadFieldsFilter:true :undefined :true\">\n <tr class=\"complex-panel-compound-field\" *ngIf=\"(caseField | ccdIsCompound); else SimpleRow\" [hidden]=\"caseField\">\n <td colspan=\"2\">\n <span class=\"text-16\"><ccd-field-read [caseField]=\"caseField\" [context]=\"context\"></ccd-field-read></span>\n </td>\n </tr>\n <ng-template #SimpleRow>\n <tr class=\"complex-panel-nested-field\" [hidden]=\"caseField.hidden\">\n <th scope=\"col\"><span class=\"text-16\">{{caseField.label | rpxTranslate}}</span></th>\n <td *ngIf=\"!item[vLabel.id]?.hasOwnProperty('CaseReference')\">\n <span class=\"text-16\"><ccd-field-read [caseField]=\"caseField\" [context]=\"context\"></ccd-field-read></span>\n </td>\n <td *ngIf=\"item[vLabel.id]?.hasOwnProperty('CaseReference')\">\n <ccd-read-case-link-field [caseField]=\"addCaseReferenceValue(caseField, item[vLabel.id].CaseReference)\" [context]=\"context\"></ccd-read-case-link-field>\n </td>\n </tr>\n </ng-template>\n </ng-container>\n </td>\n </tr>\n <!-- <COMPLEX table expandable body complex field>-->\n </ng-container>\n </tbody>\n </table>\n </td>\n </tr>\n <!-- </COMPLEX table expanded view>-->\n </ng-container>\n </tbody>\n </table>\n</div>\n", styles: [".complex-panel{margin:13px 0;border:1px solid #bfc1c3}.complex-panel .complex-panel-title{background-color:#dee0e2;padding:5px 5px 2px;border-bottom:1px solid #bfc1c3;display:block;color:#0b0c0c;font-family:nta,Arial,sans-serif;font-weight:700;text-transform:none;font-size:16px;line-height:1.25}@media (min-width: 641px){.complex-panel .complex-panel-title{font-size:19px;line-height:1.3157894737}}.complex-panel .complex-panel-table>tbody>tr>th{vertical-align:top}.complex-panel .complex-panel-table>tbody>tr:last-child>th{border-bottom:none}.complex-panel .complex-panel-table th{padding-left:5px;font-weight:700;border-bottom:none}.complex-panel .complex-panel-table td{padding-left:5px;padding-top:0;padding-bottom:0;border-bottom:none}.complex-panel .new-table-row{border-top:1px solid #bfc1c3}.complex-panel .complex-panel-simple-field th{padding-left:5px;padding-top:0;padding-bottom:0;width:295px}.complex-panel .complex-panel-nested-field th{padding-left:33px;padding-top:0;padding-bottom:0;width:200px}.complex-panel .complex-panel-compound-field td{padding:5px;border-bottom:none}.sort-widget{cursor:pointer;text-decoration:none;color:#0b0c0c}.accordion-wrapper{margin-bottom:20px}.accordion-wrapper .heading-medium{margin:0}.accordion-wrapper .accordion-heading{border-top:1px solid #bfc1c3;padding-top:20px;padding-bottom:10px;height:20px;cursor:pointer}.accordion-wrapper .accordion-heading .accordion-image{width:25px;margin-right:20px}.accordion-wrapper .accordion-body{margin-top:20px;margin-right:20px}.accordion-wrapper .last-accordion{border-bottom:1px solid #bfc1c3;padding-bottom:30px}\n"] }]
375
+ args: [{ selector: 'ccd-read-complex-field-collection-table', template: "<div class=\"complex-panel\" [hidden]=\"caseField.hidden\">\n <dl class=\"complex-panel-title\">\n <dt><span class=\"text-16\">{{caseField.label | rpxTranslate}}</span></dt>\n <dd></dd>\n </dl>\n <table class=\"complex-panel-table\" aria-describedby=\"complex panel table\">\n <tbody>\n <!-- <COMPLEX table field header>-->\n <tr>\n <th *ngFor=\"let heading of columns\" scope=\"col\">\n <span class=\"text-16\">{{columnsAllLabels[heading].label | rpxTranslate}}</span>\n <a href=\"javascript:void(0)\"\n (click)=\"sortRowsByColumns(heading)\"\n class=\"sort-widget\"\n [innerHTML]=\"sortWidget(columnsAllLabels[heading])\"></a>\n </th>\n <th></th>\n </tr>\n <!-- </COMPLEX table field header>-->\n <ng-container *ngFor=\"let item of rows; let i = index;\">\n <!-- <COMPLEX table collapsed view>-->\n <tr class=\"new-table-row accordion-heading\" (click)=\"isHidden[i] = !isHidden[i]\"\n [class.last-accordion]=\"isHidden[i]\">\n <ng-container *ngFor=\"let heading of columns\">\n <td class=\"text-16\">\n <div *ngIf=\"item[heading]; else showEmptyTd\">\n <ccd-field-read\n [caseField]=\"toCaseField(heading, item[heading].label, columnsHorizontalLabel[heading].type, item[heading])\"\n [context]=\"context\"></ccd-field-read>\n </div>\n <ng-template #showEmptyTd>\n <div>&nbsp;</div>\n </ng-template>\n </td>\n </ng-container>\n <td>\n <div style=\"float: right;\">\n <a href=\"javascript:void(0)\"> <img src=\"{{ getImage(i) }}\" alt=\"accordion-img\" class=\"accordion-image\"/></a>\n </div>\n </td>\n </tr>\n <!-- </COMPLEX table collapsed view>-->\n <!-- <COMPLEX table expanded view>-->\n <tr [hidden]=\"isHidden[i]\">\n <td [colSpan]=\"columns.length + 1\">\n <table class=\"complex-panel-table\" aria-describedby=\"complex panel table expanded\">\n <tbody>\n <ng-container\n *ngFor=\"let vLabel of columnsVerticalLabel | keyvalue: keepOriginalOrder | ccdCollectionTableCaseFieldsFilter: caseField: rows[i] | ccdReadFieldsFilter:true :undefined :true\">\n <!-- <COMPLEX table expandable body simple field>-->\n <tr class=\"complex-panel-simple-field accordion-body\" *ngIf=\"item[vLabel.id]\" [hidden]=\"vLabel.hidden\">\n <th scope=\"col\"><span class=\"text-16\">{{ vLabel.label | rpxTranslate }}</span></th>\n <td *ngIf=\"vLabel['type'] !== 'Complex'\" class=\"text-16\">\n <ccd-field-read [caseField]=\"toCaseField('', vLabel.label, vLabel.field_type, item[vLabel.id])\"\n [context]=\"context\"></ccd-field-read>\n </td>\n </tr>\n <!-- </COMPLEX table expandable body simple field>-->\n\n <!-- <COMPLEX table expandable body complex field>-->\n <tr *ngIf=\"vLabel['type'] === 'Complex' && addCaseFieldValue(vLabel, item[vLabel.id])\" [hidden]=\"vLabel.hidden\">\n <td colspan=\"2\">\n <ng-container *ngFor=\"let caseField of vLabel | ccdReadFieldsFilter:true :undefined :true\">\n <tr class=\"complex-panel-compound-field\" *ngIf=\"(caseField | ccdIsCompound); else SimpleRow\" [hidden]=\"caseField\">\n <td colspan=\"2\">\n <span class=\"text-16\"><ccd-field-read [caseField]=\"caseField\" [context]=\"context\"></ccd-field-read></span>\n </td>\n </tr>\n <ng-template #SimpleRow>\n <tr class=\"complex-panel-nested-field\" [hidden]=\"caseField.hidden\">\n <th scope=\"col\"><span class=\"text-16\">{{caseField.label | rpxTranslate}}</span></th>\n <td *ngIf=\"!item[vLabel.id]?.hasOwnProperty('CaseReference')\">\n <span class=\"text-16\"><ccd-field-read [caseField]=\"caseField\" [context]=\"context\"></ccd-field-read></span>\n </td>\n <td *ngIf=\"item[vLabel.id]?.hasOwnProperty('CaseReference')\">\n <ccd-read-case-link-field [caseField]=\"addCaseReferenceValue(caseField, item[vLabel.id].CaseReference)\" [context]=\"context\"></ccd-read-case-link-field>\n </td>\n </tr>\n </ng-template>\n </ng-container>\n </td>\n </tr>\n <!-- <COMPLEX table expandable body complex field>-->\n </ng-container>\n </tbody>\n </table>\n </td>\n </tr>\n <!-- </COMPLEX table expanded view>-->\n </ng-container>\n </tbody>\n </table>\n</div>\n", styles: [".complex-panel{margin:13px 0;border:1px solid #bfc1c3}.complex-panel .complex-panel-title{background-color:#dee0e2;padding:5px 5px 2px;border-bottom:1px solid #bfc1c3;display:block;color:#0b0c0c;font-family:nta,Arial,sans-serif;font-weight:700;text-transform:none;font-size:16px;line-height:1.25}@media (min-width: 641px){.complex-panel .complex-panel-title{font-size:19px;line-height:1.3157894737}}.complex-panel .complex-panel-table>tbody>tr>th{vertical-align:top}.complex-panel .complex-panel-table>tbody>tr:last-child>th{border-bottom:none}.complex-panel .complex-panel-table th{padding-left:5px;font-weight:700;border-bottom:none}.complex-panel .complex-panel-table td{padding-left:5px;padding-top:0;padding-bottom:0;border-bottom:none}.complex-panel .new-table-row{border-top:1px solid #bfc1c3}.complex-panel .complex-panel-simple-field th{padding-left:5px;padding-top:0;padding-bottom:0;width:295px}.complex-panel .complex-panel-nested-field th{padding-left:33px;padding-top:0;padding-bottom:0;width:200px}.complex-panel .complex-panel-compound-field td{padding:5px;border-bottom:none}.sort-widget{cursor:pointer;text-decoration:none;color:#0b0c0c}.accordion-wrapper{margin-bottom:20px}.accordion-wrapper .heading-medium{margin:0}.accordion-wrapper .accordion-heading{border-top:1px solid #bfc1c3;padding-top:20px;padding-bottom:10px;height:20px;cursor:pointer}.accordion-wrapper .accordion-heading .accordion-image{width:25px;margin-right:20px}.accordion-wrapper .accordion-body{margin-top:20px;margin-right:20px}.accordion-wrapper .last-accordion{border-bottom:1px solid #bfc1c3;padding-bottom:30px}\n"] }]
376
376
  }], null, null); })();
377
377
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ReadComplexFieldCollectionTableComponent, { className: "ReadComplexFieldCollectionTableComponent", filePath: "lib/shared/components/palette/complex/read-complex-field-collection-table.component.ts", lineNumber: 12 }); })();
378
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhZC1jb21wbGV4LWZpZWxkLWNvbGxlY3Rpb24tdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvY29tcGxleC9yZWFkLWNvbXBsZXgtZmllbGQtY29sbGVjdGlvbi10YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2NvbXBvbmVudHMvcGFsZXR0ZS9jb21wbGV4L3JlYWQtY29tcGxleC1maWVsZC1jb2xsZWN0aW9uLXRhYmxlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDNUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDOzs7O0lDTWpGLEFBREYsNkJBQWdELGNBQ3hCO0lBQUEsWUFBa0Q7O0lBQUEsaUJBQU87SUFDL0UsNEJBR3VEO0lBRnBELDROQUFTLG9DQUEwQixLQUFDO0lBR3pDLEFBRHlELGlCQUFJLEVBQ3hEOzs7O0lBTG1CLGVBQWtEO0lBQWxELHFGQUFrRDtJQUlyRSxlQUFtRDtJQUFuRCxxR0FBbUQ7OztJQVdsRCwyQkFBNkM7SUFDM0MscUNBRXVDO0lBQ3pDLGlCQUFNOzs7OztJQUZGLGNBQTRHO0lBQzVHLEFBREEsMEpBQTRHLDJCQUN6Rjs7O0lBR3JCLDJCQUFLO0lBQUEsc0JBQU07SUFBQSxpQkFB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SCxDQUFDO0lBRU8sc0JBQXNCLENBQUMsR0FBRztRQUNoQyxJQUFJLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDbkIsS0FBSyxNQUFNLEdBQUcsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztZQUM1QyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDeEIsTUFBTSxHQUFHLElBQUksQ0FBQztZQUNoQixDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7NlRBbEtVLHdDQUF3QyxTQUF4Qyx3Q0FBd0M7NkRBQXhDLHdDQUF3QztZQ1Q3QyxBQUFKLEFBREYsQUFERiw4QkFBdUQsWUFDckIsU0FDMUIsY0FBc0I7WUFBQSxZQUFrQzs7WUFBTyxBQUFQLGlCQUFPLEVBQUs7WUFDeEUscUJBQVM7WUFDWCxpQkFBSztZQUlILEFBRkEsQUFERixnQ0FBMEUsWUFDakUsU0FFSDtZQUNGLHlGQUFnRDtZQU9oRCxzQkFBUztZQUNYLGlCQUFLO1lBRUwsK0dBQXdEO1lBeUU1RCxBQURFLEFBREUsaUJBQVEsRUFDRixFQUNKOztZQTVGcUIsNkNBQTJCO1lBRXhCLGVBQWtDO1lBQWxDLCtEQUFrQztZQU9sQyxlQUFVO1lBQVYscUNBQVU7WUFVTCxlQUFTO1lBQVQsa0NBQVM7OztpRkRSL0Isd0NBQXdDO2NBTHBELFNBQVM7MkJBQ0UseUNBQXlDOztrRkFJeEMsd0NBQXdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHBsYWluVG9DbGFzc0Zyb21FeGlzdCB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IFNvcnRPcmRlciB9IGZyb20gJy4uLy4uLy4uL2RvbWFpbic7XG5pbXBvcnQgeyBDYXNlRmllbGQgfSBmcm9tICcuLi8uLi8uLi9kb21haW4vZGVmaW5pdGlvbic7XG5pbXBvcnQgeyBBYnN0cmFjdEZpZWxkUmVhZENvbXBvbmVudCB9IGZyb20gJy4uL2Jhc2UtZmllbGQvYWJzdHJhY3QtZmllbGQtcmVhZC5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjY2QtcmVhZC1jb21wbGV4LWZpZWxkLWNvbGxlY3Rpb24tdGFibGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vcmVhZC1jb21wbGV4LWZpZWxkLWNvbGxlY3Rpb24tdGFibGUuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3JlYWQtY29tcGxleC1maWVsZC1jb2xsZWN0aW9uLXRhYmxlLnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBSZWFkQ29tcGxleEZpZWxkQ29sbGVjdGlvblRhYmxlQ29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3RGaWVsZFJlYWRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBwdWJsaWMgY29sdW1uczogc3RyaW5nW107XG4gIHB1YmxpYyBjb2x1bW5zVmVydGljYWxMYWJlbDogYW55O1xuICBwdWJsaWMgY29sdW1uc0hvcml6b250YWxMYWJlbDogYW55O1xuICBwdWJsaWMgY29sdW1uc0FsbExhYmVsczogYW55O1xuICBwdWJsaWMgcm93czogYW55W10gPSBbXTtcbiAgcHVibGljIGlzSGlkZGVuOiBib29sZWFuW10gPSBbXTtcbiAgcHJpdmF0ZSBzdGF0aWMgaXNTb3J0QXNjZW5kaW5nKGNvbHVtbjogYW55KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEoY29sdW1uLnNvcnRPcmRlciA9PT0gU29ydE9yZGVyLlVOU09SVEVEIHx8IGNvbHVtbi5zb3J0T3JkZXIgPT09IFNvcnRPcmRlci5ERVNDRU5ESU5HKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIGlmICh0aGlzLmNhc2VGaWVsZC5kaXNwbGF5X2NvbnRleHRfcGFyYW1ldGVyXG4gICAgICAmJiB0aGlzLmNhc2VGaWVsZC5kaXNwbGF5X2NvbnRleHRfcGFyYW1ldGVyLnRyaW0oKS5zdGFydHNXaXRoKCcjVEFCTEUoJykpIHtcblxuICAgICAgY29uc3QgZGlzcGxheUNvbnRleHRQYXJhbWV0ZXIgPSB0aGlzLmNhc2VGaWVsZC5kaXNwbGF5X2NvbnRleHRfcGFyYW1ldGVyLnRyaW0oKTtcbiAgICAgIGNvbnN0IHJlc3VsdDogc3RyaW5nID0gZGlzcGxheUNvbnRleHRQYXJhbWV0ZXIucmVwbGFjZSgnI1RBQkxFKCcsICcnKTtcbiAgICAgIHRoaXMuY29sdW1ucyA9IHJlc3VsdC5yZXBsYWNlKCcpJywgJycpLnNwbGl0KCcsJykubWFwKChjOiBzdHJpbmcpID0+IGMudHJpbSgpKTtcblxuICAgICAgY29uc3QgbGFiZWxzVmVydGljYWw6IHsgW2s6IHN0cmluZ106IGFueSB9ID0ge307XG4gICAgICBjb25zdCBsYWJlbHNIb3Jpem9udGFsOiB7IFtrOiBzdHJpbmddOiBhbnkgfSA9IHt9O1xuICAgICAgY29uc3QgYWxsTGFiZWxzOiB7IFtrOiBzdHJpbmddOiBhbnkgfSA9IHt9O1xuICAgICAgdGhpcy5wb3B1bGF0ZUNhc2VGaWVsZFZhbHVlc0ludG9Sb3dzKCk7XG4gICAgICB0aGlzLnBvcHVsYXRlTGFiZWxzKGxhYmVsc1ZlcnRpY2FsLCBhbGxMYWJlbHMpO1xuICAgICAgdGhpcy5wb3B1bGF0ZUhvcml6b250YWxMYWJlbHMobGFiZWxzSG9yaXpvbnRhbCwgYWxsTGFiZWxzLCBsYWJlbHNWZXJ0aWNhbCk7XG5cbiAgICAgIHRoaXMuY29sdW1uc1ZlcnRpY2FsTGFiZWwgPSBsYWJlbHNWZXJ0aWNhbDtcbiAgICAgIHRoaXMuY29sdW1uc0hvcml6b250YWxMYWJlbCA9IGxhYmVsc0hvcml6b250YWw7XG4gICAgICB0aGlzLmNvbHVtbnNBbGxMYWJlbHMgPSBhbGxMYWJlbHM7XG5cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0SW1hZ2Uocm93KTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5pc0hpZGRlbltyb3ddKSB7XG4gICAgICByZXR1cm4gJ2ltZy9hY2NvcmRpb24tcGx1cy5wbmcnO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAodGhpcy5pc1ZlcnRpY2xlRGF0YU5vdEVtcHR5KHJvdykpIHtcbiAgICAgICAgcmV0dXJuICdpbWcvYWNjb3JkaW9uLW1pbnVzLnBuZyc7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmlzSGlkZGVuW3Jvd10gPSB0cnVlO1xuICAgICAgICByZXR1cm4gJ2ltZy9hY2NvcmRpb24tcGx1cy5wbmcnO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBOZWVkcyB0byBiZSBjYWxsZWQgYmVmb3JlICdjY2RGaWVsZHNGaWx0ZXInIHBpcGUgaXMgdXNlZCwgYXMgaXQgbmVlZHMgYSBjYXNlRmllbGQgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgYWRkQ2FzZUZpZWxkVmFsdWUoZmllbGQsIHZhbHVlKTogYm9vbGVhbiB7XG4gICAgZmllbGQudmFsdWUgPSB2YWx1ZTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHB1YmxpYyBpc05vdEJsYW5rKHZhbHVlOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdmFsdWUgIT09IG51bGwgJiYgdmFsdWUgIT09ICcnO1xuICB9XG5cbiAgcHVibGljIGFkZENhc2VSZWZlcmVuY2VWYWx1ZShmaWVsZCwgdmFsdWU6IGFueSk6IGFueSB7XG4gICAgZmllbGQudmFsdWUgPSB7IENhc2VSZWZlcmVuY2U6IHZhbHVlfTtcbiAgICByZXR1cm4gZmllbGQ7XG4gIH1cblxuICBwdWJsaWMgdG9DYXNlRmllbGQoaWQ6IHN0cmluZywgbGFiZWw6IHN0cmluZywgZmllbGRUeXBlOiBhbnksIHZhbHVlOiBhbnkpOiBDYXNlRmllbGQge1xuICAgIHJldHVybiBwbGFpblRvQ2xhc3NGcm9tRXhpc3QobmV3IENhc2VGaWVsZCgpLCB7XG4gICAgICBpZCxcbiAgICAgIGxhYmVsLFxuICAgICAgZGlzcGxheV9jb250ZXh0OiAnUkVBRE9OTFknLFxuICAgICAgdmFsdWUsXG4gICAgICBmaWVsZF90eXBlOiBmaWVsZFR5cGVcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBrZWVwT3JpZ2luYWxPcmRlciA9IChhLCBiKSA9PiBhLmtleTtcblxuICBwdWJsaWMgc29ydFJvd3NCeUNvbHVtbnMoY29sdW1uKTogdm9pZCB7XG4gICAgY29uc3Qgc2hvdWxkU29ydEluQXNjZW5kaW5nT3JkZXIgPSB0aGlzLmNvbHVtbnNIb3Jpem9udGFsTGFiZWxbY29sdW1uXS5zb3J0T3JkZXIgPT09IFNvcnRPcmRlci5VTlNPUlRFRFxuICAgICAgfHwgdGhpcy5jb2x1bW5zSG9yaXpvbnRhbExhYmVsW2NvbHVtbl0uc29ydE9yZGVyID09PSBTb3J0T3JkZXIuREVTQ0VORElORztcblxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpzd2l0Y2gtZGVmYXVsdFxuICAgIHN3aXRjaCAodGhpcy5jb2x1bW5zSG9yaXpvbnRhbExhYmVsW2NvbHVtbl0udHlwZS50eXBlKSB7XG4gICAgICBjYXNlICdOdW1iZXInOlxuICAgICAgY2FzZSAnTW9uZXlHQlAnOiB7XG4gICAgICAgIGlmIChzaG91bGRTb3J0SW5Bc2NlbmRpbmdPcmRlcikge1xuICAgICAgICAgIHRoaXMucm93cy5zb3J0KChhLCBiKSA9PiBhW2NvbHVtbl0gLSBiW2NvbHVtbl0pO1xuICAgICAgICAgIHRoaXMuY29sdW1uc0hvcml6b250YWxMYWJlbFtjb2x1bW5dLnNvcnRPcmRlciA9IFNvcnRPcmRlci5BU0NFTkRJTkc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5yb3dzLnNvcnQoKGEsIGIpID0+IGJbY29sdW1uXSAtIGFbY29sdW1uXSk7XG4gICAgICAgICAgdGhpcy5jb2x1bW5zSG9yaXpvbnRhbExhYmVsW2NvbHVtbl0uc29ydE9yZGVyID0gU29ydE9yZGVyLkRFU0NFTkRJTkc7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlICdUZXh0JzpcbiAgICAgIGNhc2UgJ1RleHRBcmVhJzpcbiAgICAgIGNhc2UgJ0VtYWlsJzpcbiAgICAgIGNhc2UgJ0RhdGUnOlxuICAgICAgY2FzZSAnRGF0ZVRpbWUnOlxuICAgICAgY2FzZSAnTGFiZWwnOlxuICAgICAgY2FzZSAnUG9zdGNvZGUnOlxuICAgICAgY2FzZSAnWWVzT3JObyc6XG4gICAgICBjYXNlICdQaG9uZVVLJzpcbiAgICAgIGNhc2UgJ0ZpeGVkTGlzdCc6IHtcbiAgICAgICAgaWYgKHNob3VsZFNvcnRJbkFzY2VuZGluZ09yZGVyKSB7XG4gICAgICAgICAgdGhpcy5yb3dzLnNvcnQoKGEsIGIpID0+IGFbY29sdW1uXSA8IGJbY29sdW1uXSA/IC0xIDogYVtjb2x1bW5dID4gYltjb2x1bW5dID8gMSA6IDApO1xuICAgICAgICAgIHRoaXMuY29sdW1uc0hvcml6b250YWxMYWJlbFtjb2x1bW5dLnNvcnRPcmRlciA9IFNvcnRPcmRlci5BU0NFTkRJTkc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5yb3dzLnNvcnQoKGEsIGIpID0+IGFbY29sdW1uXSA8IGJbY29sdW1uXSA/IDEgOiBhW2NvbHVtbl0gPiBiW2NvbHVtbl0gPyAtMSA6IDApO1xuICAgICAgICAgIHRoaXMuY29sdW1uc0hvcml6b250YWxMYWJlbFtjb2x1bW5dLnNvcnRPcmRlciA9IFNvcnRPcmRlci5ERVNDRU5ESU5HO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBzb3J0V2lkZ2V0KGNvbHVtbjogYW55KTogc3RyaW5nIHtcbiAgICByZXR1cm4gUmVhZENvbXBsZXhGaWVsZENvbGxlY3Rpb25UYWJsZUNvbXBvbmVudC5pc1NvcnRBc2NlbmRpbmcoY29sdW1uKSA/ICcmIzk2NjA7JyA6ICcmIzk2NTA7JztcbiAgfVxuXG4gIHByaXZhdGUgcG9wdWxhdGVIb3Jpem9udGFsTGFiZWxzKGxhYmVsc0hvcml6b250YWw6IHsgW3A6IHN0cmluZ106IGFueSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGxMYWJlbHM6IHsgW3A6IHN0cmluZ106IGFueSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbHNWZXJ0aWNhbDogeyBbcDogc3RyaW5nXTogYW55IH0pOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IGlkIG9mIHRoaXMuY29sdW1ucykge1xuICAgICAgY29uc3QgdHJpbW1lZElkID0gaWQudHJpbSgpO1xuICAgICAgbGFiZWxzSG9yaXpvbnRhbFt0cmltbWVkSWRdID0gYWxsTGFiZWxzW3RyaW1tZWRJZF07XG4gICAgICBsYWJlbHNIb3Jpem9udGFsW3RyaW1tZWRJZF0uc29ydE9yZGVyID0gU29ydE9yZGVyLlVOU09SVEVEO1xuICAgICAgZGVsZXRlIGxhYmVsc1ZlcnRpY2FsW3RyaW1tZWRJZF07XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBwb3B1bGF0ZUxhYmVscyhsYWJlbHNWZXJ0aWNhbDogeyBbcDogc3RyaW5nXTogYW55IH0sIGFsbExhYmVsczogeyBbcDogc3RyaW5nXTogYW55IH0pOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IG9iaiBvZiB0aGlzLmNhc2VGaWVsZC5maWVsZF90eXBlLmNvbXBsZXhfZmllbGRzKSB7XG4gICAgICBpZiAob2JqLmZpZWxkX3R5cGUudHlwZSA9PT0gJ0ZpeGVkTGlzdCcgfHxcbiAgICAgICAgb2JqLmZpZWxkX3R5cGUudHlwZSA9PT0gJ011bHRpU2VsZWN0TGlzdCcgfHxcbiAgICAgICAgb2JqLmZpZWxkX3R5cGUudHlwZSA9PT0gJ0ZpeGVkUmFkaW9MaXN0Jykge1xuICAgICAgICBsYWJlbHNWZXJ0aWNhbFtvYmouaWRdID0ge2xhYmVsOiBvYmoubGFiZWwsIHR5cGU6IG9iai5maWVsZF90eXBlLCBjYXNlRmllbGQ6IG9ian07XG4gICAgICAgIGFsbExhYmVsc1tvYmouaWRdID0ge2xhYmVsOiBvYmoubGFiZWwsIHR5cGU6IG9iai5maWVsZF90eXBlfTtcbiAgICAgIH0gZWxzZSBpZiAob2JqLmlzQ29tcGxleCgpKSB7XG4gICAgICAgIGxhYmVsc1ZlcnRpY2FsW29iai5pZF0gPSB7bGFiZWw6IG9iai5sYWJlbCwgdHlwZTogb2JqLmZpZWxkX3R5cGUudHlwZSwgY2FzZUZpZWxkOiBvYmp9O1xuICAgICAgICBhbGxMYWJlbHNbb2JqLmlkXSA9IHtsYWJlbDogb2JqLmxhYmVsLCB0eXBlOiBvYmouZmllbGRfdHlwZS50eXBlLCBjYXNlRmllbGQ6IG9ian07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBsYWJlbHNWZXJ0aWNhbFtvYmouaWRdID0ge2xhYmVsOiBvYmoubGFiZWwsIHR5cGU6IHt0eXBlOiBvYmouZmllbGRfdHlwZS50eXBlfSwgY2FzZUZpZWxkOiBvYmp9O1xuICAgICAgICBhbGxMYWJlbHNbb2JqLmlkXSA9IHtsYWJlbDogb2JqLmxhYmVsLCB0eXBlOiB7dHlwZTogb2JqLmZpZWxkX3R5cGUudHlwZX0sIGNhc2VGaWVsZDogb2JqfTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHBvcHVsYXRlQ2FzZUZpZWxkVmFsdWVzSW50b1Jvd3MoKTogdm9pZCB7XG4gICAgZm9yIChjb25zdCBvYmogb2YgdGhpcy5jYXNlRmllbGQudmFsdWUpIHtcbiAgICAgIHRoaXMucm93cy5wdXNoKG9iai52YWx1ZSk7XG4gICAgICB0aGlzLmlzSGlkZGVuLnB1c2godHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpc1ZlcnRpY2xlRGF0YU5vdEVtcHR5KHJvdyk6IGJvb2xlYW4ge1xuICAgIGxldCByZXN1bHQgPSBmYWxzZTtcbiAgICBmb3IgKGNvbnN0IGtleSBpbiB0aGlzLmNvbHVtbnNWZXJ0aWNhbExhYmVsKSB7XG4gICAgICBpZiAodGhpcy5yb3dzW3Jvd11ba2V5XSkge1xuICAgICAgICByZXN1bHQgPSB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiY29tcGxleC1wYW5lbFwiIFtoaWRkZW5dPVwiY2FzZUZpZWxkLmhpZGRlblwiPlxuICA8ZGwgY2xhc3M9XCJjb21wbGV4LXBhbmVsLXRpdGxlXCI+XG4gICAgPGR0PjxzcGFuIGNsYXNzPVwidGV4dC0xNlwiPnt7Y2FzZUZpZWxkLmxhYmVsIHwgcnB4VHJhbnNsYXRlfX08L3NwYW4+PC9kdD5cbiAgICA8ZGQ+PC9kZD5cbiAgPC9kbD5cbiAgPHRhYmxlIGNsYXNzPVwiY29tcGxleC1wYW5lbC10YWJsZVwiIGFyaWEtZGVzY3JpYmVkYnk9XCJjb21wbGV4IHBhbmVsIHRhYmxlXCI+XG4gICAgPHRib2R5PlxuICAgIDwhLS0gPENPTVBMRVggdGFibGUgZmllbGQgaGVhZGVyPi0tPlxuICAgIDx0cj5cbiAgICAgIDx0aCAqbmdGb3I9XCJsZXQgaGVhZGluZyBvZiBjb2x1bW5zXCIgc2NvcGU9XCJjb2xcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LTE2XCI+e3tjb2x1bW5zQWxsTGFiZWxzW2hlYWRpbmddLmxhYmVsIHwgcnB4VHJhbnNsYXRlfX08L3NwYW4+XG4gICAgICAgIDxhIGhyZWY9XCJqYXZhc2NyaXB0OnZvaWQoMClcIlxuICAgICAgICAgICAoY2xpY2spPVwic29ydFJvd3NCeUNvbHVtbnMoaGVhZGluZylcIlxuICAgICAgICAgICBjbGFzcz1cInNvcnQtd2lkZ2V0XCJcbiAgICAgICAgICAgW2lubmVySFRNTF09XCJzb3J0V2lkZ2V0KGNvbHVtbnNBbGxMYWJlbHNbaGVhZGluZ10pXCI+PC9hPlxuICAgICAgPC90aD5cbiAgICAgIDx0aD48L3RoPlxuICAgIDwvdHI+XG4gICAgPCEtLSA8L0NPTVBMRVggdGFibGUgZmllbGQgaGVhZGVyPi0tPlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2Ygcm93czsgbGV0IGkgPSBpbmRleDtcIj5cbiAgICAgIDwhLS0gPENPTVBMRVggdGFibGUgY29sbGFwc2VkIHZpZXc+LS0+XG4gICAgICA8dHIgY2xhc3M9XCJuZXctdGFibGUtcm93IGFjY29yZGlvbi1oZWFkaW5nXCIgKGNsaWNrKT1cImlzSGlkZGVuW2ldID0gIWlzSGlkZGVuW2ldXCJcbiAgICAgICAgICBbY2xhc3MubGFzdC1hY2NvcmRpb25dPVwiaXNIaWRkZW5baV1cIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaGVhZGluZyBvZiBjb2x1bW5zXCI+XG4gICAgICAgICAgPHRkIGNsYXNzPVwidGV4dC0xNlwiPlxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIml0ZW1baGVhZGluZ107IGVsc2Ugc2hvd0VtcHR5VGRcIj5cbiAgICAgICAgICAgICAgPGNjZC1maWVsZC1yZWFkXG4gICAgICAgICAgICAgICAgW2Nhc2VGaWVsZF09XCJ0b0Nhc2VGaWVsZChoZWFkaW5nLCBpdGVtW2hlYWRpbmddLmxhYmVsLCBjb2x1bW5zSG9yaXpvbnRhbExhYmVsW2hlYWRpbmddLnR5cGUsIGl0ZW1baGVhZGluZ10pXCJcbiAgICAgICAgICAgICAgICBbY29udGV4dF09XCJjb250ZXh0XCI+PC9jY2QtZmllbGQtcmVhZD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNzaG93RW1wdHlUZD5cbiAgICAgICAgICAgICAgPGRpdj4mbmJzcDs8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgPC90ZD5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDx0ZD5cbiAgICAgICAgICA8ZGl2IHN0eWxlPVwiZmxvYXQ6IHJpZ2h0O1wiPlxuICAgICAgICAgICAgPGEgaHJlZj1cImphdmFzY3JpcHQ6dm9pZCgwKVwiPiA8aW1nIHNyYz1cInt7IGdldEltYWdlKGkpIH19XCIgYWx0PVwiaW1hZ2VcIiBjbGFzcz1cImFjY29yZGlvbi1pbWFnZVwiLz48L2E+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvdGQ+XG4gICAgICA8L3RyPlxuICAgICAgPCEtLSA8L0NPTVBMRVggdGFibGUgY29sbGFwc2VkIHZpZXc+LS0+XG4gICAgICA8IS0tIDxDT01QTEVYIHRhYmxlIGV4cGFuZGVkIHZpZXc+LS0+XG4gICAgICA8dHIgW2hpZGRlbl09XCJpc0hpZGRlbltpXVwiPlxuICAgICAgICA8dGQgW2NvbFNwYW5dPVwiY29sdW1ucy5sZW5ndGggKyAxXCI+XG4gICAgICAgICAgPHRhYmxlIGNsYXNzPVwiY29tcGxleC1wYW5lbC10YWJsZVwiIGFyaWEtZGVzY3JpYmVkYnk9XCJjb21wbGV4IHBhbmVsIHRhYmxlIGV4cGFuZGVkXCI+XG4gICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICpuZ0Zvcj1cImxldCB2TGFiZWwgb2YgY29sdW1uc1ZlcnRpY2FsTGFiZWwgfCBrZXl2YWx1ZToga2VlcE9yaWdpbmFsT3JkZXIgfCBjY2RDb2xsZWN0aW9uVGFibGVDYXNlRmllbGRzRmlsdGVyOiBjYXNlRmllbGQ6IHJvd3NbaV0gfCBjY2RSZWFkRmllbGRzRmlsdGVyOnRydWUgOnVuZGVmaW5lZCA6dHJ1ZVwiPlxuICAgICAgICAgICAgICA8IS0tIDxDT01QTEVYIHRhYmxlIGV4cGFuZGFibGUgYm9keSBzaW1wbGUgZmllbGQ+LS0+XG4gICAgICAgICAgICAgIDx0ciBjbGFzcz1cImNvbXBsZXgtcGFuZWwtc2ltcGxlLWZpZWxkIGFjY29yZGlvbi1ib2R5XCIgKm5nSWY9XCJpdGVtW3ZMYWJlbC5pZF1cIiBbaGlkZGVuXT1cInZMYWJlbC5oaWRkZW5cIj5cbiAgICAgICAgICAgICAgICA8dGggc2NvcGU9XCJjb2xcIj48c3BhbiBjbGFzcz1cInRleHQtMTZcIj57e3ZMYWJlbC5sYWJlbCB8IHJweFRyYW5zbGF0ZX19PC9zcGFuPjwvdGg+XG4gICAgICAgICAgICAgICAgPHRkICpuZ0lmPVwidkxhYmVsWyd0eXBlJ10gIT09ICdDb21wbGV4J1wiIGNsYXNzPVwidGV4dC0xNlwiPlxuICAgICAgICAgICAgICAgICAgPGNjZC1maWVsZC1yZWFkIFtjYXNlRmllbGRdPVwidG9DYXNlRmllbGQoJycsIHZMYWJlbC5sYWJlbCwgdkxhYmVsLmZpZWxkX3R5cGUsIGl0ZW1bdkxhYmVsLmlkXSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb250ZXh0XT1cImNvbnRleHRcIj48L2NjZC1maWVsZC1yZWFkPlxuICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgIDwhLS0gPC9DT01QTEVYIHRhYmxlIGV4cGFuZGFibGUgYm9keSBzaW1wbGUgZmllbGQ+LS0+XG5cbiAgICAgICAgICAgICAgPCEtLSA8Q09NUExFWCB0YWJsZSBleHBhbmRhYmxlIGJvZHkgY29tcGxleCBmaWVsZD4tLT5cbiAgICAgICAgICAgICAgPHRyICpuZ0lmPVwidkxhYmVsWyd0eXBlJ10gPT09ICdDb21wbGV4JyAmJiBhZGRDYXNlRmllbGRWYWx1ZSh2TGFiZWwsIGl0ZW1bdkxhYmVsLmlkXSlcIiBbaGlkZGVuXT1cInZMYWJlbC5oaWRkZW5cIj5cbiAgICAgICAgICAgICAgICA8dGQgY29sc3Bhbj1cIjJcIj5cbiAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNhc2VGaWVsZCBvZiB2TGFiZWwgfCBjY2RSZWFkRmllbGRzRmlsdGVyOnRydWUgOnVuZGVmaW5lZCA6dHJ1ZVwiPlxuICAgICAgICAgICAgICAgICAgICAgIDx0ciBjbGFzcz1cImNvbXBsZXgtcGFuZWwtY29tcG91bmQtZmllbGRcIiAqbmdJZj1cIihjYXNlRmllbGQgfCBjY2RJc0NvbXBvdW5kKTsgZWxzZSBTaW1wbGVSb3dcIiBbaGlkZGVuXT1cImNhc2VGaWVsZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNvbHNwYW49XCIyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC0xNlwiPjxjY2QtZmllbGQtcmVhZCBbY2FzZUZpZWxkXT1cImNhc2VGaWVsZFwiIFtjb250ZXh0XT1cImNvbnRleHRcIj48L2NjZC1maWVsZC1yZWFkPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI1NpbXBsZVJvdz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBjbGFzcz1cImNvbXBsZXgtcGFuZWwtbmVzdGVkLWZpZWxkXCIgW2hpZGRlbl09XCJjYXNlRmllbGQuaGlkZGVuXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBzY29wZT1cImNvbFwiPjxzcGFuIGNsYXNzPVwidGV4dC0xNlwiPnt7Y2FzZUZpZWxkLmxhYmVsIHwgcnB4VHJhbnNsYXRlfX08L3NwYW4+PC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkICpuZ0lmPVwiIWl0ZW1bdkxhYmVsLmlkXT8uaGFzT3duUHJvcGVydHkoJ0Nhc2VSZWZlcmVuY2UnKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC0xNlwiPjxjY2QtZmllbGQtcmVhZCBbY2FzZUZpZWxkXT1cImNhc2VGaWVsZFwiIFtjb250ZXh0XT1cImNvbnRleHRcIj48L2NjZC1maWVsZC1yZWFkPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkICpuZ0lmPVwiaXRlbVt2TGFiZWwuaWRdPy5oYXNPd25Qcm9wZXJ0eSgnQ2FzZVJlZmVyZW5jZScpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNjZC1yZWFkLWNhc2UtbGluay1maWVsZCBbY2FzZUZpZWxkXT1cImFkZENhc2VSZWZlcmVuY2VWYWx1ZShjYXNlRmllbGQsIGl0ZW1bdkxhYmVsLmlkXS5DYXNlUmVmZXJlbmNlKVwiIFtjb250ZXh0XT1cImNvbnRleHRcIj48L2NjZC1yZWFkLWNhc2UtbGluay1maWVsZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgIDwhLS0gPENPTVBMRVggdGFibGUgZXhwYW5kYWJsZSBib2R5IGNvbXBsZXggZmllbGQ+LS0+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgPC90YWJsZT5cbiAgICAgICAgPC90ZD5cbiAgICAgIDwvdHI+XG4gICAgICA8IS0tIDwvQ09NUExFWCB0YWJsZSBleHBhbmRlZCB2aWV3Pi0tPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvdGJvZHk+XG4gIDwvdGFibGU+XG48L2Rpdj5cbiJdfQ==
378
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhZC1jb21wbGV4LWZpZWxkLWNvbGxlY3Rpb24tdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvY29tcGxleC9yZWFkLWNvbXBsZXgtZmllbGQtY29sbGVjdGlvbi10YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2NvbXBvbmVudHMvcGFsZXR0ZS9jb21wbGV4L3JlYWQtY29tcGxleC1maWVsZC1jb2xsZWN0aW9uLXRhYmxlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDNUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDOzs7O0lDTWpGLEFBREYsNkJBQWdELGNBQ3hCO0lBQUEsWUFBa0Q7O0lBQUEsaUJBQU87SUFDL0UsNEJBR3VEO0lBRnBELDROQUFTLG9DQUEwQixLQUFDO0lBR3pDLEFBRHlELGlCQUFJLEVBQ3hEOzs7O0lBTG1CLGVBQWtEO0lBQWxELHFGQUFrRDtJQUlyRSxlQUFtRDtJQUFuRCxxR0FBbUQ7OztJQVdsRCwyQkFBNkM7SUFDM0MscUNBRXVDO0lBQ3pDLGlCQUFNOzs7OztJQUZGLGNBQTRHO0lBQzVHLEFBREEsMEpBQTRHLDJCQUN6Rjs7O0lBR3JCLDJCQUFLO0lBQUEsc0JBQU07SUFBQSxpQkFB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SCxDQUFDO0lBRU8sc0JBQXNCLENBQUMsR0FBRztRQUNoQyxJQUFJLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDbkIsS0FBSyxNQUFNLEdBQUcsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztZQUM1QyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDeEIsTUFBTSxHQUFHLElBQUksQ0FBQztZQUNoQixDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7NlRBbEtVLHdDQUF3QyxTQUF4Qyx3Q0FBd0M7NkRBQXhDLHdDQUF3QztZQ1Q3QyxBQUFKLEFBREYsQUFERiw4QkFBdUQsWUFDckIsU0FDMUIsY0FBc0I7WUFBQSxZQUFrQzs7WUFBTyxBQUFQLGlCQUFPLEVBQUs7WUFDeEUscUJBQVM7WUFDWCxpQkFBSztZQUlILEFBRkEsQUFERixnQ0FBMEUsWUFDakUsU0FFSDtZQUNGLHlGQUFnRDtZQU9oRCxzQkFBUztZQUNYLGlCQUFLO1lBRUwsK0dBQXdEO1lBeUU1RCxBQURFLEFBREUsaUJBQVEsRUFDRixFQUNKOztZQTVGcUIsNkNBQTJCO1lBRXhCLGVBQWtDO1lBQWxDLCtEQUFrQztZQU9sQyxlQUFVO1lBQVYscUNBQVU7WUFVTCxlQUFTO1lBQVQsa0NBQVM7OztpRkRSL0Isd0NBQXdDO2NBTHBELFNBQVM7MkJBQ0UseUNBQXlDOztrRkFJeEMsd0NBQXdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHBsYWluVG9DbGFzc0Zyb21FeGlzdCB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IFNvcnRPcmRlciB9IGZyb20gJy4uLy4uLy4uL2RvbWFpbic7XG5pbXBvcnQgeyBDYXNlRmllbGQgfSBmcm9tICcuLi8uLi8uLi9kb21haW4vZGVmaW5pdGlvbic7XG5pbXBvcnQgeyBBYnN0cmFjdEZpZWxkUmVhZENvbXBvbmVudCB9IGZyb20gJy4uL2Jhc2UtZmllbGQvYWJzdHJhY3QtZmllbGQtcmVhZC5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjY2QtcmVhZC1jb21wbGV4LWZpZWxkLWNvbGxlY3Rpb24tdGFibGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vcmVhZC1jb21wbGV4LWZpZWxkLWNvbGxlY3Rpb24tdGFibGUuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3JlYWQtY29tcGxleC1maWVsZC1jb2xsZWN0aW9uLXRhYmxlLnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBSZWFkQ29tcGxleEZpZWxkQ29sbGVjdGlvblRhYmxlQ29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3RGaWVsZFJlYWRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBwdWJsaWMgY29sdW1uczogc3RyaW5nW107XG4gIHB1YmxpYyBjb2x1bW5zVmVydGljYWxMYWJlbDogYW55O1xuICBwdWJsaWMgY29sdW1uc0hvcml6b250YWxMYWJlbDogYW55O1xuICBwdWJsaWMgY29sdW1uc0FsbExhYmVsczogYW55O1xuICBwdWJsaWMgcm93czogYW55W10gPSBbXTtcbiAgcHVibGljIGlzSGlkZGVuOiBib29sZWFuW10gPSBbXTtcbiAgcHJpdmF0ZSBzdGF0aWMgaXNTb3J0QXNjZW5kaW5nKGNvbHVtbjogYW55KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEoY29sdW1uLnNvcnRPcmRlciA9PT0gU29ydE9yZGVyLlVOU09SVEVEIHx8IGNvbHVtbi5zb3J0T3JkZXIgPT09IFNvcnRPcmRlci5ERVNDRU5ESU5HKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIGlmICh0aGlzLmNhc2VGaWVsZC5kaXNwbGF5X2NvbnRleHRfcGFyYW1ldGVyXG4gICAgICAmJiB0aGlzLmNhc2VGaWVsZC5kaXNwbGF5X2NvbnRleHRfcGFyYW1ldGVyLnRyaW0oKS5zdGFydHNXaXRoKCcjVEFCTEUoJykpIHtcblxuICAgICAgY29uc3QgZGlzcGxheUNvbnRleHRQYXJhbWV0ZXIgPSB0aGlzLmNhc2VGaWVsZC5kaXNwbGF5X2NvbnRleHRfcGFyYW1ldGVyLnRyaW0oKTtcbiAgICAgIGNvbnN0IHJlc3VsdDogc3RyaW5nID0gZGlzcGxheUNvbnRleHRQYXJhbWV0ZXIucmVwbGFjZSgnI1RBQkxFKCcsICcnKTtcbiAgICAgIHRoaXMuY29sdW1ucyA9IHJlc3VsdC5yZXBsYWNlKCcpJywgJycpLnNwbGl0KCcsJykubWFwKChjOiBzdHJpbmcpID0+IGMudHJpbSgpKTtcblxuICAgICAgY29uc3QgbGFiZWxzVmVydGljYWw6IHsgW2s6IHN0cmluZ106IGFueSB9ID0ge307XG4gICAgICBjb25zdCBsYWJlbHNIb3Jpem9udGFsOiB7IFtrOiBzdHJpbmddOiBhbnkgfSA9IHt9O1xuICAgICAgY29uc3QgYWxsTGFiZWxzOiB7IFtrOiBzdHJpbmddOiBhbnkgfSA9IHt9O1xuICAgICAgdGhpcy5wb3B1bGF0ZUNhc2VGaWVsZFZhbHVlc0ludG9Sb3dzKCk7XG4gICAgICB0aGlzLnBvcHVsYXRlTGFiZWxzKGxhYmVsc1ZlcnRpY2FsLCBhbGxMYWJlbHMpO1xuICAgICAgdGhpcy5wb3B1bGF0ZUhvcml6b250YWxMYWJlbHMobGFiZWxzSG9yaXpvbnRhbCwgYWxsTGFiZWxzLCBsYWJlbHNWZXJ0aWNhbCk7XG5cbiAgICAgIHRoaXMuY29sdW1uc1ZlcnRpY2FsTGFiZWwgPSBsYWJlbHNWZXJ0aWNhbDtcbiAgICAgIHRoaXMuY29sdW1uc0hvcml6b250YWxMYWJlbCA9IGxhYmVsc0hvcml6b250YWw7XG4gICAgICB0aGlzLmNvbHVtbnNBbGxMYWJlbHMgPSBhbGxMYWJlbHM7XG5cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0SW1hZ2Uocm93KTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5pc0hpZGRlbltyb3ddKSB7XG4gICAgICByZXR1cm4gJ2ltZy9hY2NvcmRpb24tcGx1cy5wbmcnO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAodGhpcy5pc1ZlcnRpY2xlRGF0YU5vdEVtcHR5KHJvdykpIHtcbiAgICAgICAgcmV0dXJuICdpbWcvYWNjb3JkaW9uLW1pbnVzLnBuZyc7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmlzSGlkZGVuW3Jvd10gPSB0cnVlO1xuICAgICAgICByZXR1cm4gJ2ltZy9hY2NvcmRpb24tcGx1cy5wbmcnO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBOZWVkcyB0byBiZSBjYWxsZWQgYmVmb3JlICdjY2RGaWVsZHNGaWx0ZXInIHBpcGUgaXMgdXNlZCwgYXMgaXQgbmVlZHMgYSBjYXNlRmllbGQgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgYWRkQ2FzZUZpZWxkVmFsdWUoZmllbGQsIHZhbHVlKTogYm9vbGVhbiB7XG4gICAgZmllbGQudmFsdWUgPSB2YWx1ZTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHB1YmxpYyBpc05vdEJsYW5rKHZhbHVlOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdmFsdWUgIT09IG51bGwgJiYgdmFsdWUgIT09ICcnO1xuICB9XG5cbiAgcHVibGljIGFkZENhc2VSZWZlcmVuY2VWYWx1ZShmaWVsZCwgdmFsdWU6IGFueSk6IGFueSB7XG4gICAgZmllbGQudmFsdWUgPSB7IENhc2VSZWZlcmVuY2U6IHZhbHVlfTtcbiAgICByZXR1cm4gZmllbGQ7XG4gIH1cblxuICBwdWJsaWMgdG9DYXNlRmllbGQoaWQ6IHN0cmluZywgbGFiZWw6IHN0cmluZywgZmllbGRUeXBlOiBhbnksIHZhbHVlOiBhbnkpOiBDYXNlRmllbGQge1xuICAgIHJldHVybiBwbGFpblRvQ2xhc3NGcm9tRXhpc3QobmV3IENhc2VGaWVsZCgpLCB7XG4gICAgICBpZCxcbiAgICAgIGxhYmVsLFxuICAgICAgZGlzcGxheV9jb250ZXh0OiAnUkVBRE9OTFknLFxuICAgICAgdmFsdWUsXG4gICAgICBmaWVsZF90eXBlOiBmaWVsZFR5cGVcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBrZWVwT3JpZ2luYWxPcmRlciA9IChhLCBiKSA9PiBhLmtleTtcblxuICBwdWJsaWMgc29ydFJvd3NCeUNvbHVtbnMoY29sdW1uKTogdm9pZCB7XG4gICAgY29uc3Qgc2hvdWxkU29ydEluQXNjZW5kaW5nT3JkZXIgPSB0aGlzLmNvbHVtbnNIb3Jpem9udGFsTGFiZWxbY29sdW1uXS5zb3J0T3JkZXIgPT09IFNvcnRPcmRlci5VTlNPUlRFRFxuICAgICAgfHwgdGhpcy5jb2x1bW5zSG9yaXpvbnRhbExhYmVsW2NvbHVtbl0uc29ydE9yZGVyID09PSBTb3J0T3JkZXIuREVTQ0VORElORztcblxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpzd2l0Y2gtZGVmYXVsdFxuICAgIHN3aXRjaCAodGhpcy5jb2x1bW5zSG9yaXpvbnRhbExhYmVsW2NvbHVtbl0udHlwZS50eXBlKSB7XG4gICAgICBjYXNlICdOdW1iZXInOlxuICAgICAgY2FzZSAnTW9uZXlHQlAnOiB7XG4gICAgICAgIGlmIChzaG91bGRTb3J0SW5Bc2NlbmRpbmdPcmRlcikge1xuICAgICAgICAgIHRoaXMucm93cy5zb3J0KChhLCBiKSA9PiBhW2NvbHVtbl0gLSBiW2NvbHVtbl0pO1xuICAgICAgICAgIHRoaXMuY29sdW1uc0hvcml6b250YWxMYWJlbFtjb2x1bW5dLnNvcnRPcmRlciA9IFNvcnRPcmRlci5BU0NFTkRJTkc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5yb3dzLnNvcnQoKGEsIGIpID0+IGJbY29sdW1uXSAtIGFbY29sdW1uXSk7XG4gICAgICAgICAgdGhpcy5jb2x1bW5zSG9yaXpvbnRhbExhYmVsW2NvbHVtbl0uc29ydE9yZGVyID0gU29ydE9yZGVyLkRFU0NFTkRJTkc7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlICdUZXh0JzpcbiAgICAgIGNhc2UgJ1RleHRBcmVhJzpcbiAgICAgIGNhc2UgJ0VtYWlsJzpcbiAgICAgIGNhc2UgJ0RhdGUnOlxuICAgICAgY2FzZSAnRGF0ZVRpbWUnOlxuICAgICAgY2FzZSAnTGFiZWwnOlxuICAgICAgY2FzZSAnUG9zdGNvZGUnOlxuICAgICAgY2FzZSAnWWVzT3JObyc6XG4gICAgICBjYXNlICdQaG9uZVVLJzpcbiAgICAgIGNhc2UgJ0ZpeGVkTGlzdCc6IHtcbiAgICAgICAgaWYgKHNob3VsZFNvcnRJbkFzY2VuZGluZ09yZGVyKSB7XG4gICAgICAgICAgdGhpcy5yb3dzLnNvcnQoKGEsIGIpID0+IGFbY29sdW1uXSA8IGJbY29sdW1uXSA/IC0xIDogYVtjb2x1bW5dID4gYltjb2x1bW5dID8gMSA6IDApO1xuICAgICAgICAgIHRoaXMuY29sdW1uc0hvcml6b250YWxMYWJlbFtjb2x1bW5dLnNvcnRPcmRlciA9IFNvcnRPcmRlci5BU0NFTkRJTkc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5yb3dzLnNvcnQoKGEsIGIpID0+IGFbY29sdW1uXSA8IGJbY29sdW1uXSA/IDEgOiBhW2NvbHVtbl0gPiBiW2NvbHVtbl0gPyAtMSA6IDApO1xuICAgICAgICAgIHRoaXMuY29sdW1uc0hvcml6b250YWxMYWJlbFtjb2x1bW5dLnNvcnRPcmRlciA9IFNvcnRPcmRlci5ERVNDRU5ESU5HO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBzb3J0V2lkZ2V0KGNvbHVtbjogYW55KTogc3RyaW5nIHtcbiAgICByZXR1cm4gUmVhZENvbXBsZXhGaWVsZENvbGxlY3Rpb25UYWJsZUNvbXBvbmVudC5pc1NvcnRBc2NlbmRpbmcoY29sdW1uKSA/ICcmIzk2NjA7JyA6ICcmIzk2NTA7JztcbiAgfVxuXG4gIHByaXZhdGUgcG9wdWxhdGVIb3Jpem9udGFsTGFiZWxzKGxhYmVsc0hvcml6b250YWw6IHsgW3A6IHN0cmluZ106IGFueSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGxMYWJlbHM6IHsgW3A6IHN0cmluZ106IGFueSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbHNWZXJ0aWNhbDogeyBbcDogc3RyaW5nXTogYW55IH0pOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IGlkIG9mIHRoaXMuY29sdW1ucykge1xuICAgICAgY29uc3QgdHJpbW1lZElkID0gaWQudHJpbSgpO1xuICAgICAgbGFiZWxzSG9yaXpvbnRhbFt0cmltbWVkSWRdID0gYWxsTGFiZWxzW3RyaW1tZWRJZF07XG4gICAgICBsYWJlbHNIb3Jpem9udGFsW3RyaW1tZWRJZF0uc29ydE9yZGVyID0gU29ydE9yZGVyLlVOU09SVEVEO1xuICAgICAgZGVsZXRlIGxhYmVsc1ZlcnRpY2FsW3RyaW1tZWRJZF07XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBwb3B1bGF0ZUxhYmVscyhsYWJlbHNWZXJ0aWNhbDogeyBbcDogc3RyaW5nXTogYW55IH0sIGFsbExhYmVsczogeyBbcDogc3RyaW5nXTogYW55IH0pOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IG9iaiBvZiB0aGlzLmNhc2VGaWVsZC5maWVsZF90eXBlLmNvbXBsZXhfZmllbGRzKSB7XG4gICAgICBpZiAob2JqLmZpZWxkX3R5cGUudHlwZSA9PT0gJ0ZpeGVkTGlzdCcgfHxcbiAgICAgICAgb2JqLmZpZWxkX3R5cGUudHlwZSA9PT0gJ011bHRpU2VsZWN0TGlzdCcgfHxcbiAgICAgICAgb2JqLmZpZWxkX3R5cGUudHlwZSA9PT0gJ0ZpeGVkUmFkaW9MaXN0Jykge1xuICAgICAgICBsYWJlbHNWZXJ0aWNhbFtvYmouaWRdID0ge2xhYmVsOiBvYmoubGFiZWwsIHR5cGU6IG9iai5maWVsZF90eXBlLCBjYXNlRmllbGQ6IG9ian07XG4gICAgICAgIGFsbExhYmVsc1tvYmouaWRdID0ge2xhYmVsOiBvYmoubGFiZWwsIHR5cGU6IG9iai5maWVsZF90eXBlfTtcbiAgICAgIH0gZWxzZSBpZiAob2JqLmlzQ29tcGxleCgpKSB7XG4gICAgICAgIGxhYmVsc1ZlcnRpY2FsW29iai5pZF0gPSB7bGFiZWw6IG9iai5sYWJlbCwgdHlwZTogb2JqLmZpZWxkX3R5cGUudHlwZSwgY2FzZUZpZWxkOiBvYmp9O1xuICAgICAgICBhbGxMYWJlbHNbb2JqLmlkXSA9IHtsYWJlbDogb2JqLmxhYmVsLCB0eXBlOiBvYmouZmllbGRfdHlwZS50eXBlLCBjYXNlRmllbGQ6IG9ian07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBsYWJlbHNWZXJ0aWNhbFtvYmouaWRdID0ge2xhYmVsOiBvYmoubGFiZWwsIHR5cGU6IHt0eXBlOiBvYmouZmllbGRfdHlwZS50eXBlfSwgY2FzZUZpZWxkOiBvYmp9O1xuICAgICAgICBhbGxMYWJlbHNbb2JqLmlkXSA9IHtsYWJlbDogb2JqLmxhYmVsLCB0eXBlOiB7dHlwZTogb2JqLmZpZWxkX3R5cGUudHlwZX0sIGNhc2VGaWVsZDogb2JqfTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHBvcHVsYXRlQ2FzZUZpZWxkVmFsdWVzSW50b1Jvd3MoKTogdm9pZCB7XG4gICAgZm9yIChjb25zdCBvYmogb2YgdGhpcy5jYXNlRmllbGQudmFsdWUpIHtcbiAgICAgIHRoaXMucm93cy5wdXNoKG9iai52YWx1ZSk7XG4gICAgICB0aGlzLmlzSGlkZGVuLnB1c2godHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpc1ZlcnRpY2xlRGF0YU5vdEVtcHR5KHJvdyk6IGJvb2xlYW4ge1xuICAgIGxldCByZXN1bHQgPSBmYWxzZTtcbiAgICBmb3IgKGNvbnN0IGtleSBpbiB0aGlzLmNvbHVtbnNWZXJ0aWNhbExhYmVsKSB7XG4gICAgICBpZiAodGhpcy5yb3dzW3Jvd11ba2V5XSkge1xuICAgICAgICByZXN1bHQgPSB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiY29tcGxleC1wYW5lbFwiIFtoaWRkZW5dPVwiY2FzZUZpZWxkLmhpZGRlblwiPlxuICA8ZGwgY2xhc3M9XCJjb21wbGV4LXBhbmVsLXRpdGxlXCI+XG4gICAgPGR0PjxzcGFuIGNsYXNzPVwidGV4dC0xNlwiPnt7Y2FzZUZpZWxkLmxhYmVsIHwgcnB4VHJhbnNsYXRlfX08L3NwYW4+PC9kdD5cbiAgICA8ZGQ+PC9kZD5cbiAgPC9kbD5cbiAgPHRhYmxlIGNsYXNzPVwiY29tcGxleC1wYW5lbC10YWJsZVwiIGFyaWEtZGVzY3JpYmVkYnk9XCJjb21wbGV4IHBhbmVsIHRhYmxlXCI+XG4gICAgPHRib2R5PlxuICAgIDwhLS0gPENPTVBMRVggdGFibGUgZmllbGQgaGVhZGVyPi0tPlxuICAgIDx0cj5cbiAgICAgIDx0aCAqbmdGb3I9XCJsZXQgaGVhZGluZyBvZiBjb2x1bW5zXCIgc2NvcGU9XCJjb2xcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LTE2XCI+e3tjb2x1bW5zQWxsTGFiZWxzW2hlYWRpbmddLmxhYmVsIHwgcnB4VHJhbnNsYXRlfX08L3NwYW4+XG4gICAgICAgIDxhIGhyZWY9XCJqYXZhc2NyaXB0OnZvaWQoMClcIlxuICAgICAgICAgICAoY2xpY2spPVwic29ydFJvd3NCeUNvbHVtbnMoaGVhZGluZylcIlxuICAgICAgICAgICBjbGFzcz1cInNvcnQtd2lkZ2V0XCJcbiAgICAgICAgICAgW2lubmVySFRNTF09XCJzb3J0V2lkZ2V0KGNvbHVtbnNBbGxMYWJlbHNbaGVhZGluZ10pXCI+PC9hPlxuICAgICAgPC90aD5cbiAgICAgIDx0aD48L3RoPlxuICAgIDwvdHI+XG4gICAgPCEtLSA8L0NPTVBMRVggdGFibGUgZmllbGQgaGVhZGVyPi0tPlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2Ygcm93czsgbGV0IGkgPSBpbmRleDtcIj5cbiAgICAgIDwhLS0gPENPTVBMRVggdGFibGUgY29sbGFwc2VkIHZpZXc+LS0+XG4gICAgICA8dHIgY2xhc3M9XCJuZXctdGFibGUtcm93IGFjY29yZGlvbi1oZWFkaW5nXCIgKGNsaWNrKT1cImlzSGlkZGVuW2ldID0gIWlzSGlkZGVuW2ldXCJcbiAgICAgICAgICBbY2xhc3MubGFzdC1hY2NvcmRpb25dPVwiaXNIaWRkZW5baV1cIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaGVhZGluZyBvZiBjb2x1bW5zXCI+XG4gICAgICAgICAgPHRkIGNsYXNzPVwidGV4dC0xNlwiPlxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIml0ZW1baGVhZGluZ107IGVsc2Ugc2hvd0VtcHR5VGRcIj5cbiAgICAgICAgICAgICAgPGNjZC1maWVsZC1yZWFkXG4gICAgICAgICAgICAgICAgW2Nhc2VGaWVsZF09XCJ0b0Nhc2VGaWVsZChoZWFkaW5nLCBpdGVtW2hlYWRpbmddLmxhYmVsLCBjb2x1bW5zSG9yaXpvbnRhbExhYmVsW2hlYWRpbmddLnR5cGUsIGl0ZW1baGVhZGluZ10pXCJcbiAgICAgICAgICAgICAgICBbY29udGV4dF09XCJjb250ZXh0XCI+PC9jY2QtZmllbGQtcmVhZD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNzaG93RW1wdHlUZD5cbiAgICAgICAgICAgICAgPGRpdj4mbmJzcDs8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgPC90ZD5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDx0ZD5cbiAgICAgICAgICA8ZGl2IHN0eWxlPVwiZmxvYXQ6IHJpZ2h0O1wiPlxuICAgICAgICAgICAgPGEgaHJlZj1cImphdmFzY3JpcHQ6dm9pZCgwKVwiPiA8aW1nIHNyYz1cInt7IGdldEltYWdlKGkpIH19XCIgYWx0PVwiYWNjb3JkaW9uLWltZ1wiIGNsYXNzPVwiYWNjb3JkaW9uLWltYWdlXCIvPjwvYT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC90ZD5cbiAgICAgIDwvdHI+XG4gICAgICA8IS0tIDwvQ09NUExFWCB0YWJsZSBjb2xsYXBzZWQgdmlldz4tLT5cbiAgICAgIDwhLS0gPENPTVBMRVggdGFibGUgZXhwYW5kZWQgdmlldz4tLT5cbiAgICAgIDx0ciBbaGlkZGVuXT1cImlzSGlkZGVuW2ldXCI+XG4gICAgICAgIDx0ZCBbY29sU3Bhbl09XCJjb2x1bW5zLmxlbmd0aCArIDFcIj5cbiAgICAgICAgICA8dGFibGUgY2xhc3M9XCJjb21wbGV4LXBhbmVsLXRhYmxlXCIgYXJpYS1kZXNjcmliZWRieT1cImNvbXBsZXggcGFuZWwgdGFibGUgZXhwYW5kZWRcIj5cbiAgICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IHZMYWJlbCBvZiBjb2x1bW5zVmVydGljYWxMYWJlbCB8IGtleXZhbHVlOiBrZWVwT3JpZ2luYWxPcmRlciB8IGNjZENvbGxlY3Rpb25UYWJsZUNhc2VGaWVsZHNGaWx0ZXI6IGNhc2VGaWVsZDogcm93c1tpXSB8IGNjZFJlYWRGaWVsZHNGaWx0ZXI6dHJ1ZSA6dW5kZWZpbmVkIDp0cnVlXCI+XG4gICAgICAgICAgICAgIDwhLS0gPENPTVBMRVggdGFibGUgZXhwYW5kYWJsZSBib2R5IHNpbXBsZSBmaWVsZD4tLT5cbiAgICAgICAgICAgICAgPHRyIGNsYXNzPVwiY29tcGxleC1wYW5lbC1zaW1wbGUtZmllbGQgYWNjb3JkaW9uLWJvZHlcIiAqbmdJZj1cIml0ZW1bdkxhYmVsLmlkXVwiIFtoaWRkZW5dPVwidkxhYmVsLmhpZGRlblwiPlxuICAgICAgICAgICAgICAgIDx0aCBzY29wZT1cImNvbFwiPjxzcGFuIGNsYXNzPVwidGV4dC0xNlwiPnt7IHZMYWJlbC5sYWJlbCB8IHJweFRyYW5zbGF0ZSB9fTwvc3Bhbj48L3RoPlxuICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cInZMYWJlbFsndHlwZSddICE9PSAnQ29tcGxleCdcIiBjbGFzcz1cInRleHQtMTZcIj5cbiAgICAgICAgICAgICAgICAgIDxjY2QtZmllbGQtcmVhZCBbY2FzZUZpZWxkXT1cInRvQ2FzZUZpZWxkKCcnLCB2TGFiZWwubGFiZWwsIHZMYWJlbC5maWVsZF90eXBlLCBpdGVtW3ZMYWJlbC5pZF0pXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29udGV4dF09XCJjb250ZXh0XCI+PC9jY2QtZmllbGQtcmVhZD5cbiAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICA8IS0tIDwvQ09NUExFWCB0YWJsZSBleHBhbmRhYmxlIGJvZHkgc2ltcGxlIGZpZWxkPi0tPlxuXG4gICAgICAgICAgICAgIDwhLS0gPENPTVBMRVggdGFibGUgZXhwYW5kYWJsZSBib2R5IGNvbXBsZXggZmllbGQ+LS0+XG4gICAgICAgICAgICAgIDx0ciAqbmdJZj1cInZMYWJlbFsndHlwZSddID09PSAnQ29tcGxleCcgJiYgYWRkQ2FzZUZpZWxkVmFsdWUodkxhYmVsLCBpdGVtW3ZMYWJlbC5pZF0pXCIgW2hpZGRlbl09XCJ2TGFiZWwuaGlkZGVuXCI+XG4gICAgICAgICAgICAgICAgPHRkIGNvbHNwYW49XCIyXCI+XG4gICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBjYXNlRmllbGQgb2YgdkxhYmVsIHwgY2NkUmVhZEZpZWxkc0ZpbHRlcjp0cnVlIDp1bmRlZmluZWQgOnRydWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8dHIgY2xhc3M9XCJjb21wbGV4LXBhbmVsLWNvbXBvdW5kLWZpZWxkXCIgKm5nSWY9XCIoY2FzZUZpZWxkIHwgY2NkSXNDb21wb3VuZCk7IGVsc2UgU2ltcGxlUm93XCIgW2hpZGRlbl09XCJjYXNlRmllbGRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjb2xzcGFuPVwiMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtMTZcIj48Y2NkLWZpZWxkLXJlYWQgW2Nhc2VGaWVsZF09XCJjYXNlRmllbGRcIiBbY29udGV4dF09XCJjb250ZXh0XCI+PC9jY2QtZmllbGQtcmVhZD48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNTaW1wbGVSb3c+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHIgY2xhc3M9XCJjb21wbGV4LXBhbmVsLW5lc3RlZC1maWVsZFwiIFtoaWRkZW5dPVwiY2FzZUZpZWxkLmhpZGRlblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggc2NvcGU9XCJjb2xcIj48c3BhbiBjbGFzcz1cInRleHQtMTZcIj57e2Nhc2VGaWVsZC5sYWJlbCB8IHJweFRyYW5zbGF0ZX19PC9zcGFuPjwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cIiFpdGVtW3ZMYWJlbC5pZF0/Lmhhc093blByb3BlcnR5KCdDYXNlUmVmZXJlbmNlJylcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtMTZcIj48Y2NkLWZpZWxkLXJlYWQgW2Nhc2VGaWVsZF09XCJjYXNlRmllbGRcIiBbY29udGV4dF09XCJjb250ZXh0XCI+PC9jY2QtZmllbGQtcmVhZD48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cIml0ZW1bdkxhYmVsLmlkXT8uaGFzT3duUHJvcGVydHkoJ0Nhc2VSZWZlcmVuY2UnKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjY2QtcmVhZC1jYXNlLWxpbmstZmllbGQgW2Nhc2VGaWVsZF09XCJhZGRDYXNlUmVmZXJlbmNlVmFsdWUoY2FzZUZpZWxkLCBpdGVtW3ZMYWJlbC5pZF0uQ2FzZVJlZmVyZW5jZSlcIiBbY29udGV4dF09XCJjb250ZXh0XCI+PC9jY2QtcmVhZC1jYXNlLWxpbmstZmllbGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICA8IS0tIDxDT01QTEVYIHRhYmxlIGV4cGFuZGFibGUgYm9keSBjb21wbGV4IGZpZWxkPi0tPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgIDwvdGFibGU+XG4gICAgICAgIDwvdGQ+XG4gICAgICA8L3RyPlxuICAgICAgPCEtLSA8L0NPTVBMRVggdGFibGUgZXhwYW5kZWQgdmlldz4tLT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L3Rib2R5PlxuICA8L3RhYmxlPlxuPC9kaXY+XG4iXX0=
@@ -18,7 +18,7 @@ function ReadComplexFieldRawComponent_ng_container_1_Template(rf, ctx) { if (rf
18
18
  i0.ɵɵadvance();
19
19
  i0.ɵɵproperty("hidden", field_r1.hidden || field_r1.field_type.type === "Label");
20
20
  i0.ɵɵadvance(2);
21
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(4, 8, field_r1.label));
21
+ i0.ɵɵtextInterpolate(ctx_r1.isTranslatable(field_r1) ? i0.ɵɵpipeBind1(4, 8, field_r1.label) : field_r1.label);
22
22
  i0.ɵɵadvance(2);
23
23
  i0.ɵɵproperty("hidden", field_r1.hidden);
24
24
  i0.ɵɵadvance();
@@ -43,9 +43,9 @@ export class ReadComplexFieldRawComponent extends AbstractFieldReadComponent {
43
43
  }
44
44
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ReadComplexFieldRawComponent, [{
45
45
  type: Component,
46
- args: [{ selector: 'ccd-read-complex-field-raw', template: "<dl class=\"complex-raw\">\n <ng-container *ngFor=\"let field of caseField | ccdReadFieldsFilter:false :undefined :true :topLevelFormGroup :id()\">\n <dt [hidden]=\"field.hidden || field.field_type.type === 'Label'\"><span class=\"text-16\">{{field.label | rpxTranslate}}</span></dt>\n <dd [hidden]=\"field.hidden\">\n <ccd-field-read [caseField]=\"field\" [context]=\"context\" [caseFields]=\"caseFields\" [topLevelFormGroup]=\"topLevelFormGroup\" [idPrefix]=\"idPrefix\"></ccd-field-read>\n </dd>\n </ng-container>\n</dl>\n", styles: ["dl.complex-raw{list-style-type:none;margin:5px 0 10px}dl.complex-raw dl.complex-raw{padding-left:2ch}dl.complex-raw dt{font-weight:700}\n"] }]
46
+ args: [{ selector: 'ccd-read-complex-field-raw', template: "<dl class=\"complex-raw\">\n <ng-container *ngFor=\"let field of caseField | ccdReadFieldsFilter:false :undefined :true :topLevelFormGroup :id()\">\n <dt [hidden]=\"field.hidden || field.field_type.type === 'Label'\"><span class=\"text-16\">{{isTranslatable(field) ? (field.label | rpxTranslate) : field.label}}</span></dt>\n <dd [hidden]=\"field.hidden\">\n <ccd-field-read [caseField]=\"field\" [context]=\"context\" [caseFields]=\"caseFields\" [topLevelFormGroup]=\"topLevelFormGroup\" [idPrefix]=\"idPrefix\"></ccd-field-read>\n </dd>\n </ng-container>\n</dl>\n", styles: ["dl.complex-raw{list-style-type:none;margin:5px 0 10px}dl.complex-raw dl.complex-raw{padding-left:2ch}dl.complex-raw dt{font-weight:700}\n"] }]
47
47
  }], null, { caseFields: [{
48
48
  type: Input
49
49
  }] }); })();
50
50
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ReadComplexFieldRawComponent, { className: "ReadComplexFieldRawComponent", filePath: "lib/shared/components/palette/complex/read-complex-field-raw.component.ts", lineNumber: 16 }); })();
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhZC1jb21wbGV4LWZpZWxkLXJhdy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2NvbXBvbmVudHMvcGFsZXR0ZS9jb21wbGV4L3JlYWQtY29tcGxleC1maWVsZC1yYXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvY29tcGxleC9yZWFkLWNvbXBsZXgtZmllbGQtcmF3Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7Ozs7SUNEdkYsNkJBQW9IO0lBQ2pELEFBQWpFLDZCQUFpRSxjQUFzQjtJQUFBLFlBQThCOztJQUFPLEFBQVAsaUJBQU8sRUFBSztJQUNqSSw2QkFBNEI7SUFDMUIsb0NBQWlLO0lBQ25LLGlCQUFLOzs7OztJQUhELGNBQTREO0lBQTVELGdGQUE0RDtJQUF1QixlQUE4QjtJQUE5QiwwREFBOEI7SUFDakgsZUFBdUI7SUFBdkIsd0NBQXVCO0lBQ1QsY0FBbUI7SUFBdUYsQUFBeEMsQUFBMUIsQUFBcEIsQUFBcEIsb0NBQW1CLDJCQUFvQixpQ0FBMEIsK0NBQXdDLDZCQUFzQjs7QURBcko7OztHQUdHO0FBUUgsTUFBTSxPQUFPLDRCQUE2QixTQUFRLDBCQUEwQjtJQUduRSxVQUFVLEdBQWdCLEVBQUUsQ0FBQzs2UUFIekIsNEJBQTRCLFNBQTVCLDRCQUE0Qjs2REFBNUIsNEJBQTRCO1lDZnpDLDZCQUF3QjtZQUN0QixnR0FBb0g7O1lBTXRILGlCQUFLOztZQU42QixjQUFrRjtZQUFsRiwwSEFBa0Y7OztpRkRjdkcsNEJBQTRCO2NBUHhDLFNBQVM7MkJBQ0UsNEJBQTRCO2dCQVMvQixVQUFVO2tCQURoQixLQUFLOztrRkFGSyw0QkFBNEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDYXNlRmllbGQgfSBmcm9tICcuLi8uLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgQWJzdHJhY3RGaWVsZFJlYWRDb21wb25lbnQgfSBmcm9tICcuLi9iYXNlLWZpZWxkL2Fic3RyYWN0LWZpZWxkLXJlYWQuY29tcG9uZW50JztcblxuLyoqXG4gKiBEaXNwbGF5IGEgY29tcGxleCB0eXBlIGZpZWxkcyBhcyBhIGxpc3Qgb2YgdmFsdWVzIHdpdGhvdXQgbGFiZWxzLlxuICogVGhpcyBpcyBpbnRlbmRlZCBmb3IgcmVuZGVyaW5nIG9mIENoZWNrIFlvdXIgQW5zd2VyIHBhZ2UuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NjZC1yZWFkLWNvbXBsZXgtZmllbGQtcmF3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3JlYWQtY29tcGxleC1maWVsZC1yYXcuaHRtbCcsXG4gIHN0eWxlVXJsczogW1xuICAgICcuL3JlYWQtY29tcGxleC1maWVsZC1yYXcuc2NzcydcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgUmVhZENvbXBsZXhGaWVsZFJhd0NvbXBvbmVudCBleHRlbmRzIEFic3RyYWN0RmllbGRSZWFkQ29tcG9uZW50IHtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgY2FzZUZpZWxkczogQ2FzZUZpZWxkW10gPSBbXTtcbn1cbiIsIjxkbCBjbGFzcz1cImNvbXBsZXgtcmF3XCI+XG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGZpZWxkIG9mIGNhc2VGaWVsZCB8IGNjZFJlYWRGaWVsZHNGaWx0ZXI6ZmFsc2UgOnVuZGVmaW5lZCA6dHJ1ZSA6dG9wTGV2ZWxGb3JtR3JvdXAgOmlkKClcIj5cbiAgICA8ZHQgW2hpZGRlbl09XCJmaWVsZC5oaWRkZW4gfHwgZmllbGQuZmllbGRfdHlwZS50eXBlID09PSAnTGFiZWwnXCI+PHNwYW4gY2xhc3M9XCJ0ZXh0LTE2XCI+e3tmaWVsZC5sYWJlbCB8IHJweFRyYW5zbGF0ZX19PC9zcGFuPjwvZHQ+XG4gICAgPGRkIFtoaWRkZW5dPVwiZmllbGQuaGlkZGVuXCI+XG4gICAgICA8Y2NkLWZpZWxkLXJlYWQgW2Nhc2VGaWVsZF09XCJmaWVsZFwiIFtjb250ZXh0XT1cImNvbnRleHRcIiBbY2FzZUZpZWxkc109XCJjYXNlRmllbGRzXCIgW3RvcExldmVsRm9ybUdyb3VwXT1cInRvcExldmVsRm9ybUdyb3VwXCIgW2lkUHJlZml4XT1cImlkUHJlZml4XCI+PC9jY2QtZmllbGQtcmVhZD5cbiAgICA8L2RkPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGw+XG4iXX0=
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhZC1jb21wbGV4LWZpZWxkLXJhdy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2NvbXBvbmVudHMvcGFsZXR0ZS9jb21wbGV4L3JlYWQtY29tcGxleC1maWVsZC1yYXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvY29tcGxleC9yZWFkLWNvbXBsZXgtZmllbGQtcmF3Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7Ozs7SUNEdkYsNkJBQW9IO0lBQ2pELEFBQWpFLDZCQUFpRSxjQUFzQjtJQUFBLFlBQXNFOztJQUFPLEFBQVAsaUJBQU8sRUFBSztJQUN6Syw2QkFBNEI7SUFDMUIsb0NBQWlLO0lBQ25LLGlCQUFLOzs7OztJQUhELGNBQTREO0lBQTVELGdGQUE0RDtJQUF1QixlQUFzRTtJQUF0RSw2R0FBc0U7SUFDekosZUFBdUI7SUFBdkIsd0NBQXVCO0lBQ1QsY0FBbUI7SUFBdUYsQUFBeEMsQUFBMUIsQUFBcEIsQUFBcEIsb0NBQW1CLDJCQUFvQixpQ0FBMEIsK0NBQXdDLDZCQUFzQjs7QURBcko7OztHQUdHO0FBUUgsTUFBTSxPQUFPLDRCQUE2QixTQUFRLDBCQUEwQjtJQUVuRSxVQUFVLEdBQWdCLEVBQUUsQ0FBQzs2UUFGekIsNEJBQTRCLFNBQTVCLDRCQUE0Qjs2REFBNUIsNEJBQTRCO1lDZnpDLDZCQUF3QjtZQUN0QixnR0FBb0g7O1lBTXRILGlCQUFLOztZQU42QixjQUFrRjtZQUFsRiwwSEFBa0Y7OztpRkRjdkcsNEJBQTRCO2NBUHhDLFNBQVM7MkJBQ0UsNEJBQTRCO2dCQVEvQixVQUFVO2tCQURoQixLQUFLOztrRkFESyw0QkFBNEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDYXNlRmllbGQgfSBmcm9tICcuLi8uLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgQWJzdHJhY3RGaWVsZFJlYWRDb21wb25lbnQgfSBmcm9tICcuLi9iYXNlLWZpZWxkL2Fic3RyYWN0LWZpZWxkLXJlYWQuY29tcG9uZW50JztcblxuLyoqXG4gKiBEaXNwbGF5IGEgY29tcGxleCB0eXBlIGZpZWxkcyBhcyBhIGxpc3Qgb2YgdmFsdWVzIHdpdGhvdXQgbGFiZWxzLlxuICogVGhpcyBpcyBpbnRlbmRlZCBmb3IgcmVuZGVyaW5nIG9mIENoZWNrIFlvdXIgQW5zd2VyIHBhZ2UuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NjZC1yZWFkLWNvbXBsZXgtZmllbGQtcmF3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3JlYWQtY29tcGxleC1maWVsZC1yYXcuaHRtbCcsXG4gIHN0eWxlVXJsczogW1xuICAgICcuL3JlYWQtY29tcGxleC1maWVsZC1yYXcuc2NzcydcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgUmVhZENvbXBsZXhGaWVsZFJhd0NvbXBvbmVudCBleHRlbmRzIEFic3RyYWN0RmllbGRSZWFkQ29tcG9uZW50IHtcbiAgQElucHV0KClcbiAgcHVibGljIGNhc2VGaWVsZHM6IENhc2VGaWVsZFtdID0gW107XG59XG4iLCI8ZGwgY2xhc3M9XCJjb21wbGV4LXJhd1wiPlxuICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBmaWVsZCBvZiBjYXNlRmllbGQgfCBjY2RSZWFkRmllbGRzRmlsdGVyOmZhbHNlIDp1bmRlZmluZWQgOnRydWUgOnRvcExldmVsRm9ybUdyb3VwIDppZCgpXCI+XG4gICAgPGR0IFtoaWRkZW5dPVwiZmllbGQuaGlkZGVuIHx8IGZpZWxkLmZpZWxkX3R5cGUudHlwZSA9PT0gJ0xhYmVsJ1wiPjxzcGFuIGNsYXNzPVwidGV4dC0xNlwiPnt7aXNUcmFuc2xhdGFibGUoZmllbGQpID8gKGZpZWxkLmxhYmVsIHwgcnB4VHJhbnNsYXRlKSA6IGZpZWxkLmxhYmVsfX08L3NwYW4+PC9kdD5cbiAgICA8ZGQgW2hpZGRlbl09XCJmaWVsZC5oaWRkZW5cIj5cbiAgICAgIDxjY2QtZmllbGQtcmVhZCBbY2FzZUZpZWxkXT1cImZpZWxkXCIgW2NvbnRleHRdPVwiY29udGV4dFwiIFtjYXNlRmllbGRzXT1cImNhc2VGaWVsZHNcIiBbdG9wTGV2ZWxGb3JtR3JvdXBdPVwidG9wTGV2ZWxGb3JtR3JvdXBcIiBbaWRQcmVmaXhdPVwiaWRQcmVmaXhcIj48L2NjZC1maWVsZC1yZWFkPlxuICAgIDwvZGQ+XG4gIDwvbmctY29udGFpbmVyPlxuPC9kbD5cbiJdfQ==