@hmcts/ccd-case-ui-toolkit 7.2.23-multiple-followup → 7.2.23-srt-rc2

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 (131) hide show
  1. package/esm2022/lib/app.config.mjs +1 -2
  2. package/esm2022/lib/components/form/date-input/date-input.component.mjs +56 -19
  3. package/esm2022/lib/shared/components/case-editor/case-edit/case-edit.component.mjs +3 -3
  4. package/esm2022/lib/shared/components/case-editor/case-edit-form/case-edit-form.component.mjs +1 -1
  5. package/esm2022/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.mjs +6 -2
  6. package/esm2022/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-cancelled/case-event-completion-task-cancelled.component.mjs +9 -5
  7. package/esm2022/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-reassigned/case-event-completion-task-reassigned.component.mjs +9 -5
  8. package/esm2022/lib/shared/components/case-header/case-header.component.mjs +5 -5
  9. package/esm2022/lib/shared/components/case-viewer/case-challenged-access-success/case-challenged-access-success.component.mjs +9 -4
  10. package/esm2022/lib/shared/components/case-viewer/case-event-trigger/case-event-trigger.component.mjs +16 -3
  11. package/esm2022/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.mjs +20 -13
  12. package/esm2022/lib/shared/components/case-viewer/case-review-specific-access-reject/case-review-specific-access-reject.component.mjs +13 -9
  13. package/esm2022/lib/shared/components/case-viewer/services/event-trigger.resolver.mjs +4 -2
  14. package/esm2022/lib/shared/components/event-start/components/multiple-tasks-exist/multiple-tasks-exist.component.mjs +9 -5
  15. package/esm2022/lib/shared/components/event-start/components/no-tasks-available/no-tasks-available.component.mjs +9 -5
  16. package/esm2022/lib/shared/components/event-start/components/task-assigned/task-assigned.component.mjs +9 -5
  17. package/esm2022/lib/shared/components/event-start/components/task-unassigned/task-unassigned.component.mjs +9 -5
  18. package/esm2022/lib/shared/components/event-start/event-guard/event-start.guard.mjs +3 -3
  19. package/esm2022/lib/shared/components/event-start/services/event-start-state-machine.service.mjs +6 -6
  20. package/esm2022/lib/shared/components/palette/collection/read-collection-field.component.mjs +13 -10
  21. package/esm2022/lib/shared/components/palette/complex/read-complex-field-table.component.mjs +8 -8
  22. package/esm2022/lib/shared/components/palette/date/read-date-field.component.mjs +4 -4
  23. package/esm2022/lib/shared/components/palette/datetime-picker/datetime-picker.component.mjs +41 -10
  24. package/esm2022/lib/shared/components/palette/linked-cases/components/before-you-start/before-you-start.component.mjs +2 -2
  25. package/esm2022/lib/shared/components/palette/linked-cases/components/linked-cases-table/linked-cases-from-table.component.mjs +7 -7
  26. package/esm2022/lib/shared/components/palette/linked-cases/components/linked-cases-table/linked-cases-to-table.component.mjs +7 -7
  27. package/esm2022/lib/shared/components/palette/linked-cases/components/no-linked-cases/no-linked-cases.component.mjs +2 -2
  28. package/esm2022/lib/shared/components/palette/linked-cases/read-linked-cases-field.component.mjs +3 -3
  29. package/esm2022/lib/shared/components/palette/number/write-number-field.component.mjs +3 -3
  30. package/esm2022/lib/shared/components/palette/organisation/read-organisation-field-raw.component.mjs +21 -25
  31. package/esm2022/lib/shared/components/palette/organisation/read-organisation-field-table.component.mjs +21 -25
  32. package/esm2022/lib/shared/components/palette/palette.module.mjs +12 -3
  33. package/esm2022/lib/shared/components/palette/query-management/components/close-query/close-query.component.mjs +3 -3
  34. package/esm2022/lib/shared/components/palette/query-management/components/qualifying-questions/qualifying-question-detail/qualifying-question-detail.component.mjs +26 -15
  35. package/esm2022/lib/shared/components/palette/query-management/components/qualifying-questions/qualifying-question-options/qualifying-question-options.component.mjs +6 -2
  36. package/esm2022/lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.mjs +50 -180
  37. package/esm2022/lib/shared/components/palette/query-management/components/query-confirmation/query-confirmation.component.mjs +22 -18
  38. package/esm2022/lib/shared/components/palette/query-management/components/query-details/query-details.component.mjs +2 -2
  39. package/esm2022/lib/shared/components/palette/query-management/components/query-list/query-list.component.mjs +2 -2
  40. package/esm2022/lib/shared/components/palette/query-management/components/query-write/query-write-raise-query/query-write-raise-query.component.mjs +59 -6
  41. package/esm2022/lib/shared/components/palette/query-management/components/query-write/query-write-respond-to-query/query-write-respond-to-query.component.mjs +44 -11
  42. package/esm2022/lib/shared/components/palette/query-management/constants/query-management.constants.mjs +7 -0
  43. package/esm2022/lib/shared/components/palette/query-management/models/query-list/query-list-item/query-list-item.model.mjs +32 -14
  44. package/esm2022/lib/shared/components/palette/query-management/read-query-management-field.component.mjs +4 -4
  45. package/esm2022/lib/shared/components/palette/query-management/services/index.mjs +2 -1
  46. package/esm2022/lib/shared/components/palette/query-management/services/query-management.service.mjs +179 -0
  47. package/esm2022/lib/shared/components/palette/query-management/utils/query-management.utils.mjs +5 -5
  48. package/esm2022/lib/shared/components/palette/utils/field-label.pipe.mjs +11 -3
  49. package/esm2022/lib/shared/components/search-result/search-result.component.mjs +1 -1
  50. package/esm2022/lib/shared/directives/index.mjs +2 -1
  51. package/esm2022/lib/shared/directives/welsh-translated-markdown/index.mjs +3 -0
  52. package/esm2022/lib/shared/directives/welsh-translated-markdown/welsh-translated-markdown.directive.mjs +104 -0
  53. package/esm2022/lib/shared/directives/welsh-translated-markdown/welsh-translated-markdown.module.mjs +21 -0
  54. package/esm2022/lib/shared/pipes/search-result/sorting/sort-search-result.pipe.mjs +2 -3
  55. package/esm2022/lib/shared/services/draft/draft.service.mjs +2 -2
  56. package/esm2022/lib/shared/services/form/field-type-sanitiser.mjs +38 -3
  57. package/esm2022/lib/shared/services/form/form-value.service.mjs +24 -1
  58. package/esm2022/lib/shared/services/search-result/sorting/search-result-view-item-comparator-factory.mjs +7 -8
  59. package/fesm2022/hmcts-ccd-case-ui-toolkit.mjs +1287 -818
  60. package/fesm2022/hmcts-ccd-case-ui-toolkit.mjs.map +1 -1
  61. package/lib/app.config.d.ts +0 -1
  62. package/lib/app.config.d.ts.map +1 -1
  63. package/lib/components/form/date-input/date-input.component.d.ts +4 -0
  64. package/lib/components/form/date-input/date-input.component.d.ts.map +1 -1
  65. package/lib/shared/components/case-editor/case-edit-form/case-edit-form.component.d.ts.map +1 -1
  66. package/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.d.ts.map +1 -1
  67. package/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-cancelled/case-event-completion-task-cancelled.component.d.ts +2 -0
  68. package/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-cancelled/case-event-completion-task-cancelled.component.d.ts.map +1 -1
  69. package/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-reassigned/case-event-completion-task-reassigned.component.d.ts +2 -0
  70. package/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-reassigned/case-event-completion-task-reassigned.component.d.ts.map +1 -1
  71. package/lib/shared/components/case-viewer/case-challenged-access-success/case-challenged-access-success.component.d.ts +2 -0
  72. package/lib/shared/components/case-viewer/case-challenged-access-success/case-challenged-access-success.component.d.ts.map +1 -1
  73. package/lib/shared/components/case-viewer/case-event-trigger/case-event-trigger.component.d.ts +1 -0
  74. package/lib/shared/components/case-viewer/case-event-trigger/case-event-trigger.component.d.ts.map +1 -1
  75. package/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.d.ts.map +1 -1
  76. package/lib/shared/components/case-viewer/case-review-specific-access-reject/case-review-specific-access-reject.component.d.ts +2 -0
  77. package/lib/shared/components/case-viewer/case-review-specific-access-reject/case-review-specific-access-reject.component.d.ts.map +1 -1
  78. package/lib/shared/components/case-viewer/services/event-trigger.resolver.d.ts.map +1 -1
  79. package/lib/shared/components/event-start/components/multiple-tasks-exist/multiple-tasks-exist.component.d.ts +2 -0
  80. package/lib/shared/components/event-start/components/multiple-tasks-exist/multiple-tasks-exist.component.d.ts.map +1 -1
  81. package/lib/shared/components/event-start/components/no-tasks-available/no-tasks-available.component.d.ts +2 -0
  82. package/lib/shared/components/event-start/components/no-tasks-available/no-tasks-available.component.d.ts.map +1 -1
  83. package/lib/shared/components/event-start/components/task-assigned/task-assigned.component.d.ts +2 -0
  84. package/lib/shared/components/event-start/components/task-assigned/task-assigned.component.d.ts.map +1 -1
  85. package/lib/shared/components/event-start/components/task-unassigned/task-unassigned.component.d.ts +2 -0
  86. package/lib/shared/components/event-start/components/task-unassigned/task-unassigned.component.d.ts.map +1 -1
  87. package/lib/shared/components/event-start/event-guard/event-start.guard.d.ts +2 -2
  88. package/lib/shared/components/event-start/event-guard/event-start.guard.d.ts.map +1 -1
  89. package/lib/shared/components/event-start/services/event-start-state-machine.service.d.ts.map +1 -1
  90. package/lib/shared/components/palette/collection/read-collection-field.component.d.ts +3 -1
  91. package/lib/shared/components/palette/collection/read-collection-field.component.d.ts.map +1 -1
  92. package/lib/shared/components/palette/date/read-date-field.component.d.ts.map +1 -1
  93. package/lib/shared/components/palette/datetime-picker/datetime-picker.component.d.ts +2 -0
  94. package/lib/shared/components/palette/datetime-picker/datetime-picker.component.d.ts.map +1 -1
  95. package/lib/shared/components/palette/palette.module.d.ts +18 -17
  96. package/lib/shared/components/palette/palette.module.d.ts.map +1 -1
  97. package/lib/shared/components/palette/query-management/components/qualifying-questions/qualifying-question-options/qualifying-question-options.component.d.ts +2 -0
  98. package/lib/shared/components/palette/query-management/components/qualifying-questions/qualifying-question-options/qualifying-question-options.component.d.ts.map +1 -1
  99. package/lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.d.ts +15 -13
  100. package/lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.d.ts.map +1 -1
  101. package/lib/shared/components/palette/query-management/components/query-confirmation/query-confirmation.component.d.ts +2 -0
  102. package/lib/shared/components/palette/query-management/components/query-confirmation/query-confirmation.component.d.ts.map +1 -1
  103. package/lib/shared/components/palette/query-management/components/query-write/query-write-raise-query/query-write-raise-query.component.d.ts +24 -3
  104. package/lib/shared/components/palette/query-management/components/query-write/query-write-raise-query/query-write-raise-query.component.d.ts.map +1 -1
  105. package/lib/shared/components/palette/query-management/components/query-write/query-write-respond-to-query/query-write-respond-to-query.component.d.ts +12 -3
  106. package/lib/shared/components/palette/query-management/components/query-write/query-write-respond-to-query/query-write-respond-to-query.component.d.ts.map +1 -1
  107. package/lib/shared/components/palette/query-management/constants/query-management.constants.d.ts +7 -0
  108. package/lib/shared/components/palette/query-management/constants/query-management.constants.d.ts.map +1 -0
  109. package/lib/shared/components/palette/query-management/models/query-list/query-list-item/query-list-item.model.d.ts.map +1 -1
  110. package/lib/shared/components/palette/query-management/services/index.d.ts +1 -0
  111. package/lib/shared/components/palette/query-management/services/index.d.ts.map +1 -1
  112. package/lib/shared/components/palette/query-management/services/query-management.service.d.ts +21 -0
  113. package/lib/shared/components/palette/query-management/services/query-management.service.d.ts.map +1 -0
  114. package/lib/shared/components/palette/utils/field-label.pipe.d.ts +1 -0
  115. package/lib/shared/components/palette/utils/field-label.pipe.d.ts.map +1 -1
  116. package/lib/shared/components/search-result/search-result.component.d.ts.map +1 -1
  117. package/lib/shared/directives/index.d.ts +1 -0
  118. package/lib/shared/directives/index.d.ts.map +1 -1
  119. package/lib/shared/directives/welsh-translated-markdown/index.d.ts +3 -0
  120. package/lib/shared/directives/welsh-translated-markdown/index.d.ts.map +1 -0
  121. package/lib/shared/directives/welsh-translated-markdown/welsh-translated-markdown.directive.d.ts +76 -0
  122. package/lib/shared/directives/welsh-translated-markdown/welsh-translated-markdown.directive.d.ts.map +1 -0
  123. package/lib/shared/directives/welsh-translated-markdown/welsh-translated-markdown.module.d.ts +8 -0
  124. package/lib/shared/directives/welsh-translated-markdown/welsh-translated-markdown.module.d.ts.map +1 -0
  125. package/lib/shared/pipes/search-result/sorting/sort-search-result.pipe.d.ts.map +1 -1
  126. package/lib/shared/services/form/field-type-sanitiser.d.ts +5 -0
  127. package/lib/shared/services/form/field-type-sanitiser.d.ts.map +1 -1
  128. package/lib/shared/services/form/form-value.service.d.ts +1 -0
  129. package/lib/shared/services/form/form-value.service.d.ts.map +1 -1
  130. package/lib/shared/services/search-result/sorting/search-result-view-item-comparator-factory.d.ts.map +1 -1
  131. package/package.json +1 -1
@@ -1,7 +1,13 @@
1
- import { Component, Input } from '@angular/core';
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
2
  import { FormGroup } from '@angular/forms';
3
3
  import { RaiseQueryErrorMessage } from '../../../enums';
4
+ import { CaseEventTrigger, CaseView } from '../../../../../../../../lib/shared/domain';
5
+ import { QueryCreateContext, QueryListItem } from '../../../models';
6
+ import { QueryManagementService } from '../../../services';
7
+ import { ActivatedRoute } from '@angular/router';
4
8
  import * as i0 from "@angular/core";
9
+ import * as i1 from "../../../services";
10
+ import * as i2 from "@angular/router";
5
11
  const _c0 = a0 => ({ "govuk-form-group--error": a0 });
6
12
  function QueryWriteRaiseQueryComponent_ccd_query_case_details_header_9_Template(rf, ctx) { if (rf & 1) {
7
13
  i0.ɵɵelement(0, "ccd-query-case-details-header", 5);
@@ -185,12 +191,36 @@ function QueryWriteRaiseQueryComponent_div_11_Template(rf, ctx) { if (rf & 1) {
185
191
  i0.ɵɵproperty("ngIf", ctx_r0.formGroup.get("isHearingRelated").value);
186
192
  } }
187
193
  export class QueryWriteRaiseQueryComponent {
194
+ queryManagementService;
195
+ route;
188
196
  formGroup;
189
197
  submitted;
190
198
  caseDetails;
191
199
  showForm;
192
200
  serviceMessage;
201
+ queryCreateContext;
202
+ eventData = null;
203
+ queryItem;
204
+ validate;
205
+ triggerSubmission;
206
+ queryDataCreated = new EventEmitter();
193
207
  raiseQueryErrorMessage = RaiseQueryErrorMessage;
208
+ eventCompletionParams;
209
+ messageId;
210
+ constructor(queryManagementService, route) {
211
+ this.queryManagementService = queryManagementService;
212
+ this.route = route;
213
+ }
214
+ ngOnChanges() {
215
+ this.messageId = this.route.snapshot.params.dataid;
216
+ const isCollectionDataSet = this.setCaseQueriesCollectionData();
217
+ if (isCollectionDataSet) {
218
+ if (this.triggerSubmission) {
219
+ const data = this.generateCaseQueriesCollectionData();
220
+ this.queryDataCreated.emit(data);
221
+ }
222
+ }
223
+ }
194
224
  onSubjectInput() {
195
225
  const control = this.formGroup.get('subject');
196
226
  const value = control?.value;
@@ -208,8 +238,19 @@ export class QueryWriteRaiseQueryComponent {
208
238
  }
209
239
  return '';
210
240
  }
211
- static ɵfac = function QueryWriteRaiseQueryComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || QueryWriteRaiseQueryComponent)(); };
212
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: QueryWriteRaiseQueryComponent, selectors: [["ccd-query-write-raise-query"]], inputs: { formGroup: "formGroup", submitted: "submitted", caseDetails: "caseDetails", showForm: "showForm", serviceMessage: "serviceMessage" }, decls: 12, vars: 8, consts: [[1, "govuk-!-margin-bottom-6"], [1, "govuk-caption-l"], [1, "govuk-heading-l", "govuk-!-margin-bottom-4"], [3, "caseDetails", 4, "ngIf"], ["class", "govuk-!-margin-bottom-4", 4, "ngIf"], [3, "caseDetails"], [1, "govuk-!-margin-bottom-4"], [3, "formGroup"], [1, "govuk-warning-text"], ["aria-hidden", "true", 1, "govuk-warning-text__icon"], [1, "govuk-warning-text__text"], [1, "govuk-visually-hidden"], [3, "content"], [1, "govuk-form-group", 3, "ngClass"], [1, "govuk-label-wrapper"], ["for", "subject", 1, "govuk-label", "govuk-label--m", "govuk-!-font-weight-bold"], ["id", "subject-hint", 1, "govuk-hint"], ["id", "subject-error", "class", "govuk-error-message", 4, "ngIf"], ["type", "text", "id", "subject", "formControlName", "subject", "maxlength", "200", "aria-describedby", "subject-error", 1, "govuk-input", 3, "input"], ["for", "body", 1, "govuk-label", "govuk-label--m", "govuk-!-font-weight-bold"], ["id", "body-hint", 1, "govuk-hint"], ["id", "body-error", "class", "govuk-error-message", 4, "ngIf"], ["id", "body", "name", "body", "rows", "5", "aria-describedby", "body-hint body-error", 1, "govuk-textarea", 3, "formControlName"], [1, "govuk-fieldset"], [1, "govuk-label", "govuk-label--m", "govuk-!-font-weight-bold"], ["id", "isHearingRelated-error", "class", "govuk-error-message", 4, "ngIf"], ["data-module", "govuk-radios", 1, "govuk-radios", "govuk-radios--inline"], [1, "govuk-radios__item"], ["id", "isHearingRelated-yes", "name", "isHearingRelated", "type", "radio", "formControlName", "isHearingRelated", 1, "govuk-radios__input", 3, "checked", "value"], ["for", "isHearingRelated-yes", 1, "govuk-label", "govuk-radios__label"], ["id", "isHearingRelated-no", "name", "isHearingRelated", "type", "radio", "formControlName", "isHearingRelated", 1, "govuk-radios__input", 3, "checked", "value"], ["for", "isHearingRelated-no", 1, "govuk-label", "govuk-radios__label"], [4, "ngIf"], ["id", "subject-error", 1, "govuk-error-message"], ["id", "body-error", 1, "govuk-error-message"], ["id", "isHearingRelated-error", 1, "govuk-error-message"], [1, "govuk-radios__conditional", "govuk-!-margin-top-1", 3, "ngClass"], ["role", "group", 1, "govuk-fieldset"], [1, "govuk-label", "govuk-label--s"], ["id", "hearingDate-error", "class", "govuk-error-message", 4, "ngIf"], ["formControlName", "hearingDate"], ["id", "hearingDate-error", 1, "govuk-error-message"]], template: function QueryWriteRaiseQueryComponent_Template(rf, ctx) { if (rf & 1) {
241
+ setCaseQueriesCollectionData() {
242
+ if (!this.eventData) {
243
+ console.warn('Event data not available; skipping collection setup.');
244
+ return false;
245
+ }
246
+ this.queryManagementService.setCaseQueriesCollectionData(this.eventData, this.queryCreateContext, this.caseDetails, this.messageId);
247
+ return true;
248
+ }
249
+ generateCaseQueriesCollectionData() {
250
+ return this.queryManagementService.generateCaseQueriesCollectionData(this.formGroup, this.queryCreateContext, this.queryItem, this.messageId);
251
+ }
252
+ static ɵfac = function QueryWriteRaiseQueryComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || QueryWriteRaiseQueryComponent)(i0.ɵɵdirectiveInject(i1.QueryManagementService), i0.ɵɵdirectiveInject(i2.ActivatedRoute)); };
253
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: QueryWriteRaiseQueryComponent, selectors: [["ccd-query-write-raise-query"]], inputs: { formGroup: "formGroup", submitted: "submitted", caseDetails: "caseDetails", showForm: "showForm", serviceMessage: "serviceMessage", queryCreateContext: "queryCreateContext", eventData: "eventData", queryItem: "queryItem", validate: "validate", triggerSubmission: "triggerSubmission" }, outputs: { queryDataCreated: "queryDataCreated" }, features: [i0.ɵɵNgOnChangesFeature], decls: 12, vars: 8, consts: [[1, "govuk-!-margin-bottom-6"], [1, "govuk-caption-l"], [1, "govuk-heading-l", "govuk-!-margin-bottom-4"], [3, "caseDetails", 4, "ngIf"], ["class", "govuk-!-margin-bottom-4", 4, "ngIf"], [3, "caseDetails"], [1, "govuk-!-margin-bottom-4"], [3, "formGroup"], [1, "govuk-warning-text"], ["aria-hidden", "true", 1, "govuk-warning-text__icon"], [1, "govuk-warning-text__text"], [1, "govuk-visually-hidden"], [3, "content"], [1, "govuk-form-group", 3, "ngClass"], [1, "govuk-label-wrapper"], ["for", "subject", 1, "govuk-label", "govuk-label--m", "govuk-!-font-weight-bold"], ["id", "subject-hint", 1, "govuk-hint"], ["id", "subject-error", "class", "govuk-error-message", 4, "ngIf"], ["type", "text", "id", "subject", "formControlName", "subject", "maxlength", "200", "aria-describedby", "subject-error", 1, "govuk-input", 3, "input"], ["for", "body", 1, "govuk-label", "govuk-label--m", "govuk-!-font-weight-bold"], ["id", "body-hint", 1, "govuk-hint"], ["id", "body-error", "class", "govuk-error-message", 4, "ngIf"], ["id", "body", "name", "body", "rows", "5", "aria-describedby", "body-hint body-error", 1, "govuk-textarea", 3, "formControlName"], [1, "govuk-fieldset"], [1, "govuk-label", "govuk-label--m", "govuk-!-font-weight-bold"], ["id", "isHearingRelated-error", "class", "govuk-error-message", 4, "ngIf"], ["data-module", "govuk-radios", 1, "govuk-radios", "govuk-radios--inline"], [1, "govuk-radios__item"], ["id", "isHearingRelated-yes", "name", "isHearingRelated", "type", "radio", "formControlName", "isHearingRelated", 1, "govuk-radios__input", 3, "checked", "value"], ["for", "isHearingRelated-yes", 1, "govuk-label", "govuk-radios__label"], ["id", "isHearingRelated-no", "name", "isHearingRelated", "type", "radio", "formControlName", "isHearingRelated", 1, "govuk-radios__input", 3, "checked", "value"], ["for", "isHearingRelated-no", 1, "govuk-label", "govuk-radios__label"], [4, "ngIf"], ["id", "subject-error", 1, "govuk-error-message"], ["id", "body-error", 1, "govuk-error-message"], ["id", "isHearingRelated-error", 1, "govuk-error-message"], [1, "govuk-radios__conditional", "govuk-!-margin-top-1", 3, "ngClass"], ["role", "group", 1, "govuk-fieldset"], [1, "govuk-label", "govuk-label--s"], ["id", "hearingDate-error", "class", "govuk-error-message", 4, "ngIf"], ["formControlName", "hearingDate"], ["id", "hearingDate-error", 1, "govuk-error-message"]], template: function QueryWriteRaiseQueryComponent_Template(rf, ctx) { if (rf & 1) {
213
254
  i0.ɵɵelementStart(0, "div")(1, "div", 0)(2, "div", 1);
214
255
  i0.ɵɵtext(3);
215
256
  i0.ɵɵpipe(4, "rpxTranslate");
@@ -238,7 +279,7 @@ export class QueryWriteRaiseQueryComponent {
238
279
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(QueryWriteRaiseQueryComponent, [{
239
280
  type: Component,
240
281
  args: [{ selector: 'ccd-query-write-raise-query', template: "<div>\n <div class=\"govuk-!-margin-bottom-6\">\n <div class=\"govuk-caption-l\">{{ 'Raise a query' | rpxTranslate }}</div>\n <h1 class=\"govuk-heading-l govuk-!-margin-bottom-4\">{{ 'Enter query details' | rpxTranslate }}</h1>\n </div>\n\n <div>\n <ccd-query-case-details-header [caseDetails]=\"caseDetails\" *ngIf=\"caseDetails\"></ccd-query-case-details-header>\n </div>\n\n <hr>\n\n <div class=\"govuk-!-margin-bottom-4\" *ngIf=\"showForm\">\n <div [formGroup]=\"formGroup\">\n <div>\n <div class=\"govuk-warning-text\">\n <span class=\"govuk-warning-text__icon\" aria-hidden=\"true\">!</span>\n <strong class=\"govuk-warning-text__text\">\n <span class=\"govuk-visually-hidden\">Warning</span>\n <ccd-markdown\n [content]=\"serviceMessage | rpxTranslate\">\n </ccd-markdown>\n </strong>\n </div>\n <div class=\"govuk-form-group\" [ngClass]=\"{'govuk-form-group--error': submitted && formGroup.get('subject').hasError('required')}\">\n <div class=\"govuk-label-wrapper\">\n <label class=\"govuk-label govuk-label--m govuk-!-font-weight-bold\" for=\"subject\">\n {{ 'Query subject' | rpxTranslate }}\n </label>\n </div>\n <div id=\"subject-hint\" class=\"govuk-hint\">\n {{ 'The subject should be a summary of your query' | rpxTranslate }}\n </div>\n <p id=\"subject-error\" class=\"govuk-error-message\"\n *ngIf=\"submitted && (formGroup.get('subject').hasError('required') || formGroup.get('subject').hasError('maxlength'))\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }}</span>\n {{ getSubjectErrorMessage() | rpxTranslate }}\n </p>\n\n <input type=\"text\"\n id=\"subject\"\n class=\"govuk-input\"\n formControlName=\"subject\"\n maxlength=\"200\"\n (input)=\"onSubjectInput()\"\n aria-describedby=\"subject-error\" />\n </div>\n\n <div class=\"govuk-form-group\"\n [ngClass]=\"{'govuk-form-group--error': submitted && formGroup.get('body').hasError('required')}\">\n <div class=\"govuk-label-wrapper\">\n <label class=\"govuk-label govuk-label--m govuk-!-font-weight-bold\" for=\"body\">\n {{ 'Query detail' | rpxTranslate }}\n </label>\n </div>\n <div id=\"body-hint\" class=\"govuk-hint\">\n {{ 'Include as many details as possible so case workers can respond to your query' | rpxTranslate }}\n </div>\n <p id=\"body-error\" class=\"govuk-error-message\"\n *ngIf=\"submitted && formGroup.get('body').hasError('required')\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }} </span>{{ raiseQueryErrorMessage.QUERY_BODY | rpxTranslate }}\n </p>\n <textarea [formControlName]=\"'body'\"\n id=\"body\" name=\"body\" rows=\"5\"\n aria-describedby=\"body-hint body-error\"\n class=\"govuk-textarea\"\n [class.govuk-textarea--error]=\"submitted && formGroup.get('body').hasError('required')\"\n >\n </textarea>\n </div>\n\n <div class=\"govuk-form-group\"\n [ngClass]=\"{'govuk-form-group--error': submitted && formGroup.get('isHearingRelated').hasError('required')}\">\n <fieldset class=\"govuk-fieldset\">\n <legend>\n <label class=\"govuk-label govuk-label--m govuk-!-font-weight-bold\">\n {{ 'Is the query hearing related?' | rpxTranslate }}\n </label>\n </legend>\n <p id=\"isHearingRelated-error\" class=\"govuk-error-message\"\n *ngIf=\"submitted && formGroup.get('isHearingRelated').hasError('required')\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }} </span>{{ raiseQueryErrorMessage.QUERY_HEARING_RELATED | rpxTranslate }}\n </p>\n <div class=\"govuk-radios govuk-radios--inline\" data-module=\"govuk-radios\">\n <div class=\"govuk-radios__item\">\n <input class=\"govuk-radios__input\" id=\"isHearingRelated-yes\" name=\"isHearingRelated\"\n type=\"radio\"\n formControlName=\"isHearingRelated\"\n [checked]=\"formGroup.get('isHearingRelated').value === true\" [value]=\"true\"\n >\n <label class=\"govuk-label govuk-radios__label\" for=\"isHearingRelated-yes\">\n {{ 'Is the query hearing related?' | rpxTranslate: null : 'Yes' }}\n </label>\n </div>\n <div class=\"govuk-radios__item\">\n <input class=\"govuk-radios__input\" id=\"isHearingRelated-no\" name=\"isHearingRelated\"\n type=\"radio\"\n formControlName=\"isHearingRelated\"\n [checked]=\"formGroup.get('isHearingRelated').value === false\" [value]=\"false\"\n >\n <label class=\"govuk-label govuk-radios__label\" for=\"isHearingRelated-no\">\n {{ 'Is the query hearing related?' | rpxTranslate: null : 'No' }}\n </label>\n </div>\n </div>\n </fieldset>\n\n <ng-container *ngIf=\"formGroup.get('isHearingRelated').value\">\n <div class=\"govuk-radios__conditional govuk-!-margin-top-1\"\n [ngClass]=\"{'govuk-form-group--error': submitted &&\n formGroup.get('isHearingRelated').value === true &&\n formGroup.get('hearingDate').value === null}\">\n <fieldset class=\"govuk-fieldset\" role=\"group\">\n <legend>\n <label class=\"govuk-label govuk-label--s\">\n {{ 'What is the date of the hearing?' | rpxTranslate }}\n </label>\n </legend>\n <p id=\"hearingDate-error\" class=\"govuk-error-message\"\n *ngIf=\"submitted && formGroup.get('isHearingRelated').value === true && formGroup.get('hearingDate').value === null\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }} </span>{{ raiseQueryErrorMessage.QUERY_HEARING_DATE | rpxTranslate }}\n </p>\n <ccd-query-write-date-input formControlName=\"hearingDate\"></ccd-query-write-date-input>\n </fieldset>\n </div>\n </ng-container>\n </div>\n </div>\n </div>\n</div>\n" }]
241
- }], null, { formGroup: [{
282
+ }], () => [{ type: i1.QueryManagementService }, { type: i2.ActivatedRoute }], { formGroup: [{
242
283
  type: Input
243
284
  }], submitted: [{
244
285
  type: Input
@@ -248,6 +289,18 @@ export class QueryWriteRaiseQueryComponent {
248
289
  type: Input
249
290
  }], serviceMessage: [{
250
291
  type: Input
292
+ }], queryCreateContext: [{
293
+ type: Input
294
+ }], eventData: [{
295
+ type: Input
296
+ }], queryItem: [{
297
+ type: Input
298
+ }], validate: [{
299
+ type: Input
300
+ }], triggerSubmission: [{
301
+ type: Input
302
+ }], queryDataCreated: [{
303
+ type: Output
251
304
  }] }); })();
252
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(QueryWriteRaiseQueryComponent, { className: "QueryWriteRaiseQueryComponent", filePath: "lib/shared/components/palette/query-management/components/query-write/query-write-raise-query/query-write-raise-query.component.ts", lineNumber: 8 }); })();
253
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktd3JpdGUtcmFpc2UtcXVlcnkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvcXVlcnktbWFuYWdlbWVudC9jb21wb25lbnRzL3F1ZXJ5LXdyaXRlL3F1ZXJ5LXdyaXRlLXJhaXNlLXF1ZXJ5L3F1ZXJ5LXdyaXRlLXJhaXNlLXF1ZXJ5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9wYWxldHRlL3F1ZXJ5LW1hbmFnZW1lbnQvY29tcG9uZW50cy9xdWVyeS13cml0ZS9xdWVyeS13cml0ZS1yYWlzZS1xdWVyeS9xdWVyeS13cml0ZS1yYWlzZS1xdWVyeS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7SUNLcEQsbURBQStHOzs7SUFBaEYsZ0RBQTJCOzs7SUE0QmxELEFBRkYsNkJBQ3lILGVBQ25GO0lBQUEsWUFBNkI7O0lBQUEsaUJBQU87SUFDeEUsWUFDRjs7SUFBQSxpQkFBSTs7O0lBRmtDLGVBQTZCO0lBQTdCLG9EQUE2QjtJQUNqRSxlQUNGO0lBREUsc0ZBQ0Y7OztJQXVCRSxBQUZGLDZCQUNvRSxlQUM5QjtJQUFBLFlBQThCOztJQUFBLGlCQUFPO0lBQUEsWUFDM0U7O0lBQUEsaUJBQUk7OztJQURrQyxlQUE4QjtJQUE5Qiw4REFBOEI7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WnhELGlCQUFLOztZQUU0QixlQUFvQztZQUFwQywyREFBb0M7WUFDYixlQUEwQztZQUExQyxpRUFBMEM7WUFJbEMsZUFBaUI7WUFBakIsc0NBQWlCO1lBS3pDLGVBQWM7WUFBZCxtQ0FBYzs7O2lGREx6Qyw2QkFBNkI7Y0FKekMsU0FBUzsyQkFDRSw2QkFBNkI7Z0JBSXZCLFNBQVM7a0JBQXhCLEtBQUs7WUFDVSxTQUFTO2tCQUF4QixLQUFLO1lBQ1UsV0FBVztrQkFBMUIsS0FBSztZQUNVLFFBQVE7a0JBQXZCLEtBQUs7WUFDVSxjQUFjO2tCQUE3QixLQUFLOztrRkFMSyw2QkFBNkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBSYWlzZVF1ZXJ5RXJyb3JNZXNzYWdlIH0gZnJvbSAnLi4vLi4vLi4vZW51bXMnO1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY2NkLXF1ZXJ5LXdyaXRlLXJhaXNlLXF1ZXJ5JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3F1ZXJ5LXdyaXRlLXJhaXNlLXF1ZXJ5LmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBRdWVyeVdyaXRlUmFpc2VRdWVyeUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHB1YmxpYyBmb3JtR3JvdXA6IEZvcm1Hcm91cDtcbiAgQElucHV0KCkgcHVibGljIHN1Ym1pdHRlZDogYm9vbGVhbjtcbiAgQElucHV0KCkgcHVibGljIGNhc2VEZXRhaWxzO1xuICBASW5wdXQoKSBwdWJsaWMgc2hvd0Zvcm06IGJvb2xlYW47XG4gIEBJbnB1dCgpIHB1YmxpYyBzZXJ2aWNlTWVzc2FnZTogc3RyaW5nIHwgbnVsbDtcblxuICBwdWJsaWMgcmFpc2VRdWVyeUVycm9yTWVzc2FnZSA9IFJhaXNlUXVlcnlFcnJvck1lc3NhZ2U7XG5cbiAgb25TdWJqZWN0SW5wdXQoKTogdm9pZCB7XG4gICAgY29uc3QgY29udHJvbCA9IHRoaXMuZm9ybUdyb3VwLmdldCgnc3ViamVjdCcpO1xuICAgIGNvbnN0IHZhbHVlID0gY29udHJvbD8udmFsdWU7XG4gICAgaWYgKHZhbHVlICYmIHZhbHVlLmxlbmd0aCA+IDIwMCkge1xuICAgICAgY29udHJvbD8uc2V0VmFsdWUodmFsdWUuc3Vic3RyaW5nKDAsIDIwMCkpO1xuICAgIH1cbiAgfVxuXG4gIGdldFN1YmplY3RFcnJvck1lc3NhZ2UoKTogc3RyaW5nIHtcbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5mb3JtR3JvdXAuZ2V0KCdzdWJqZWN0Jyk7XG4gICAgaWYgKGNvbnRyb2wuaGFzRXJyb3IoJ3JlcXVpcmVkJykpIHtcbiAgICAgIHJldHVybiB0aGlzLnJhaXNlUXVlcnlFcnJvck1lc3NhZ2UuUVVFUllfU1VCSkVDVDtcbiAgICB9XG4gICAgaWYgKGNvbnRyb2wuaGFzRXJyb3IoJ21heGxlbmd0aCcpKSB7XG4gICAgICByZXR1cm4gdGhpcy5yYWlzZVF1ZXJ5RXJyb3JNZXNzYWdlLlFVRVJZX1NVQkpFQ1RfTUFYX0xFTkdUSDtcbiAgICB9XG4gICAgcmV0dXJuICcnO1xuICB9XG59XG4iLCI8ZGl2PlxuICA8ZGl2IGNsYXNzPVwiZ292dWstIS1tYXJnaW4tYm90dG9tLTZcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZ292dWstY2FwdGlvbi1sXCI+e3sgJ1JhaXNlIGEgcXVlcnknIHwgcnB4VHJhbnNsYXRlIH19PC9kaXY+XG4gICAgPGgxIGNsYXNzPVwiZ292dWstaGVhZGluZy1sIGdvdnVrLSEtbWFyZ2luLWJvdHRvbS00XCI+e3sgJ0VudGVyIHF1ZXJ5IGRldGFpbHMnIHwgcnB4VHJhbnNsYXRlIH19PC9oMT5cbiAgPC9kaXY+XG5cbiAgPGRpdj5cbiAgICA8Y2NkLXF1ZXJ5LWNhc2UtZGV0YWlscy1oZWFkZXIgW2Nhc2VEZXRhaWxzXT1cImNhc2VEZXRhaWxzXCIgKm5nSWY9XCJjYXNlRGV0YWlsc1wiPjwvY2NkLXF1ZXJ5LWNhc2UtZGV0YWlscy1oZWFkZXI+XG4gIDwvZGl2PlxuXG4gIDxocj5cblxuICA8ZGl2IGNsYXNzPVwiZ292dWstIS1tYXJnaW4tYm90dG9tLTRcIiAqbmdJZj1cInNob3dGb3JtXCI+XG4gICAgPGRpdiBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiPlxuICAgICAgPGRpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLXdhcm5pbmctdGV4dFwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ292dWstd2FybmluZy10ZXh0X19pY29uXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+ITwvc3Bhbj5cbiAgICAgICAgICA8c3Ryb25nIGNsYXNzPVwiZ292dWstd2FybmluZy10ZXh0X190ZXh0XCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImdvdnVrLXZpc3VhbGx5LWhpZGRlblwiPldhcm5pbmc8L3NwYW4+XG4gICAgICAgICAgICA8Y2NkLW1hcmtkb3duXG4gICAgICAgICAgICAgIFtjb250ZW50XT1cInNlcnZpY2VNZXNzYWdlIHwgcnB4VHJhbnNsYXRlXCI+XG4gICAgICAgICAgICA8L2NjZC1tYXJrZG93bj5cbiAgICAgICAgICA8L3N0cm9uZz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1mb3JtLWdyb3VwXCIgW25nQ2xhc3NdPVwieydnb3Z1ay1mb3JtLWdyb3VwLS1lcnJvcic6IHN1Ym1pdHRlZCAmJiBmb3JtR3JvdXAuZ2V0KCdzdWJqZWN0JykuaGFzRXJyb3IoJ3JlcXVpcmVkJyl9XCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLWxhYmVsLXdyYXBwZXJcIj5cbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImdvdnVrLWxhYmVsIGdvdnVrLWxhYmVsLS1tIGdvdnVrLSEtZm9udC13ZWlnaHQtYm9sZFwiIGZvcj1cInN1YmplY3RcIj5cbiAgICAgICAgICAgICAge3sgJ1F1ZXJ5IHN1YmplY3QnIHwgcnB4VHJhbnNsYXRlIH19XG4gICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgaWQ9XCJzdWJqZWN0LWhpbnRcIiBjbGFzcz1cImdvdnVrLWhpbnRcIj5cbiAgICAgICAgICAgIHt7ICdUaGUgc3ViamVjdCBzaG91bGQgYmUgYSBzdW1tYXJ5IG9mIHlvdXIgcXVlcnknIHwgcnB4VHJhbnNsYXRlIH19XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPHAgaWQ9XCJzdWJqZWN0LWVycm9yXCIgY2xhc3M9XCJnb3Z1ay1lcnJvci1tZXNzYWdlXCJcbiAgICAgICAgICAgICpuZ0lmPVwic3VibWl0dGVkICYmIChmb3JtR3JvdXAuZ2V0KCdzdWJqZWN0JykuaGFzRXJyb3IoJ3JlcXVpcmVkJykgfHwgZm9ybUdyb3VwLmdldCgnc3ViamVjdCcpLmhhc0Vycm9yKCdtYXhsZW5ndGgnKSlcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ292dWstdmlzdWFsbHktaGlkZGVuXCI+e3sgJ0Vycm9yOicgfCBycHhUcmFuc2xhdGUgfX08L3NwYW4+XG4gICAgICAgICAgICB7eyBnZXRTdWJqZWN0RXJyb3JNZXNzYWdlKCkgfCBycHhUcmFuc2xhdGUgfX1cbiAgICAgICAgICA8L3A+XG5cbiAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgaWQ9XCJzdWJqZWN0XCJcbiAgICAgICAgICAgIGNsYXNzPVwiZ292dWstaW5wdXRcIlxuICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwic3ViamVjdFwiXG4gICAgICAgICAgICBtYXhsZW5ndGg9XCIyMDBcIlxuICAgICAgICAgICAgKGlucHV0KT1cIm9uU3ViamVjdElucHV0KClcIlxuICAgICAgICAgICAgYXJpYS1kZXNjcmliZWRieT1cInN1YmplY3QtZXJyb3JcIiAvPlxuICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLWZvcm0tZ3JvdXBcIlxuICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnZ292dWstZm9ybS1ncm91cC0tZXJyb3InOiBzdWJtaXR0ZWQgJiYgZm9ybUdyb3VwLmdldCgnYm9keScpLmhhc0Vycm9yKCdyZXF1aXJlZCcpfVwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1sYWJlbC13cmFwcGVyXCI+XG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJnb3Z1ay1sYWJlbCBnb3Z1ay1sYWJlbC0tbSBnb3Z1ay0hLWZvbnQtd2VpZ2h0LWJvbGRcIiBmb3I9XCJib2R5XCI+XG4gICAgICAgICAgICAgIHt7ICdRdWVyeSBkZXRhaWwnIHwgcnB4VHJhbnNsYXRlIH19XG4gICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgaWQ9XCJib2R5LWhpbnRcIiBjbGFzcz1cImdvdnVrLWhpbnRcIj5cbiAgICAgICAgICAgIHt7ICdJbmNsdWRlIGFzIG1hbnkgZGV0YWlscyBhcyBwb3NzaWJsZSBzbyBjYXNlIHdvcmtlcnMgY2FuIHJlc3BvbmQgdG8geW91ciBxdWVyeScgfCBycHhUcmFuc2xhdGUgfX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8cCBpZD1cImJvZHktZXJyb3JcIiBjbGFzcz1cImdvdnVrLWVycm9yLW1lc3NhZ2VcIlxuICAgICAgICAgICAgICAqbmdJZj1cInN1Ym1pdHRlZCAmJiBmb3JtR3JvdXAuZ2V0KCdib2R5JykuaGFzRXJyb3IoJ3JlcXVpcmVkJylcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ292dWstdmlzdWFsbHktaGlkZGVuXCI+e3sgJ0Vycm9yOicgfCBycHhUcmFuc2xhdGUgfX0gPC9zcGFuPnt7IHJhaXNlUXVlcnlFcnJvck1lc3NhZ2UuUVVFUllfQk9EWSB8IHJweFRyYW5zbGF0ZSB9fVxuICAgICAgICAgIDwvcD5cbiAgICAgICAgICA8dGV4dGFyZWEgW2Zvcm1Db250cm9sTmFtZV09XCInYm9keSdcIlxuICAgICAgICAgICAgICAgICAgICBpZD1cImJvZHlcIiBuYW1lPVwiYm9keVwiIHJvd3M9XCI1XCJcbiAgICAgICAgICAgICAgICAgICAgYXJpYS1kZXNjcmliZWRieT1cImJvZHktaGludCBib2R5LWVycm9yXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJnb3Z1ay10ZXh0YXJlYVwiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy5nb3Z1ay10ZXh0YXJlYS0tZXJyb3JdPVwic3VibWl0dGVkICYmIGZvcm1Hcm91cC5nZXQoJ2JvZHknKS5oYXNFcnJvcigncmVxdWlyZWQnKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgIDwvdGV4dGFyZWE+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLWZvcm0tZ3JvdXBcIlxuICAgICAgICAgICBbbmdDbGFzc109XCJ7J2dvdnVrLWZvcm0tZ3JvdXAtLWVycm9yJzogc3VibWl0dGVkICYmIGZvcm1Hcm91cC5nZXQoJ2lzSGVhcmluZ1JlbGF0ZWQnKS5oYXNFcnJvcigncmVxdWlyZWQnKX1cIj5cbiAgICAgICAgPGZpZWxkc2V0IGNsYXNzPVwiZ292dWstZmllbGRzZXRcIj5cbiAgICAgICAgICA8bGVnZW5kPlxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZ292dWstbGFiZWwgZ292dWstbGFiZWwtLW0gZ292dWstIS1mb250LXdlaWdodC1ib2xkXCI+XG4gICAgICAgICAgICAgIHt7ICdJcyB0aGUgcXVlcnkgaGVhcmluZyByZWxhdGVkPycgfCBycHhUcmFuc2xhdGUgfX1cbiAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgPC9sZWdlbmQ+XG4gICAgICAgICAgPHAgaWQ9XCJpc0hlYXJpbmdSZWxhdGVkLWVycm9yXCIgY2xhc3M9XCJnb3Z1ay1lcnJvci1tZXNzYWdlXCJcbiAgICAgICAgICAgICAgKm5nSWY9XCJzdWJtaXR0ZWQgJiYgZm9ybUdyb3VwLmdldCgnaXNIZWFyaW5nUmVsYXRlZCcpLmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImdvdnVrLXZpc3VhbGx5LWhpZGRlblwiPnt7ICdFcnJvcjonIHwgcnB4VHJhbnNsYXRlIH19IDwvc3Bhbj57eyByYWlzZVF1ZXJ5RXJyb3JNZXNzYWdlLlFVRVJZX0hFQVJJTkdfUkVMQVRFRCB8IHJweFRyYW5zbGF0ZSB9fVxuICAgICAgICAgIDwvcD5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ292dWstcmFkaW9zIGdvdnVrLXJhZGlvcy0taW5saW5lXCIgZGF0YS1tb2R1bGU9XCJnb3Z1ay1yYWRpb3NcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1yYWRpb3NfX2l0ZW1cIj5cbiAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiZ292dWstcmFkaW9zX19pbnB1dFwiIGlkPVwiaXNIZWFyaW5nUmVsYXRlZC15ZXNcIiBuYW1lPVwiaXNIZWFyaW5nUmVsYXRlZFwiXG4gICAgICAgICAgICAgICAgICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiaXNIZWFyaW5nUmVsYXRlZFwiXG4gICAgICAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJmb3JtR3JvdXAuZ2V0KCdpc0hlYXJpbmdSZWxhdGVkJykudmFsdWUgPT09IHRydWVcIiBbdmFsdWVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZ292dWstbGFiZWwgZ292dWstcmFkaW9zX19sYWJlbFwiIGZvcj1cImlzSGVhcmluZ1JlbGF0ZWQteWVzXCI+XG4gICAgICAgICAgICAgICAge3sgJ0lzIHRoZSBxdWVyeSBoZWFyaW5nIHJlbGF0ZWQ/JyB8IHJweFRyYW5zbGF0ZTogbnVsbCA6ICdZZXMnIH19XG4gICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1yYWRpb3NfX2l0ZW1cIj5cbiAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiZ292dWstcmFkaW9zX19pbnB1dFwiIGlkPVwiaXNIZWFyaW5nUmVsYXRlZC1ub1wiIG5hbWU9XCJpc0hlYXJpbmdSZWxhdGVkXCJcbiAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJyYWRpb1wiXG4gICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJpc0hlYXJpbmdSZWxhdGVkXCJcbiAgICAgICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cImZvcm1Hcm91cC5nZXQoJ2lzSGVhcmluZ1JlbGF0ZWQnKS52YWx1ZSA9PT0gZmFsc2VcIiBbdmFsdWVdPVwiZmFsc2VcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImdvdnVrLWxhYmVsIGdvdnVrLXJhZGlvc19fbGFiZWxcIiBmb3I9XCJpc0hlYXJpbmdSZWxhdGVkLW5vXCI+XG4gICAgICAgICAgICAgICAge3sgJ0lzIHRoZSBxdWVyeSBoZWFyaW5nIHJlbGF0ZWQ/JyB8IHJweFRyYW5zbGF0ZTogbnVsbCA6ICdObycgfX1cbiAgICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2ZpZWxkc2V0PlxuXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmb3JtR3JvdXAuZ2V0KCdpc0hlYXJpbmdSZWxhdGVkJykudmFsdWVcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ292dWstcmFkaW9zX19jb25kaXRpb25hbCBnb3Z1ay0hLW1hcmdpbi10b3AtMVwiXG4gICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2dvdnVrLWZvcm0tZ3JvdXAtLWVycm9yJzogc3VibWl0dGVkICYmXG4gICAgICAgICAgICAgICBmb3JtR3JvdXAuZ2V0KCdpc0hlYXJpbmdSZWxhdGVkJykudmFsdWUgPT09IHRydWUgJiZcbiAgICAgICAgICAgICAgIGZvcm1Hcm91cC5nZXQoJ2hlYXJpbmdEYXRlJykudmFsdWUgPT09IG51bGx9XCI+XG4gICAgICAgICAgICA8ZmllbGRzZXQgY2xhc3M9XCJnb3Z1ay1maWVsZHNldFwiIHJvbGU9XCJncm91cFwiPlxuICAgICAgICAgICAgICA8bGVnZW5kPlxuICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImdvdnVrLWxhYmVsIGdvdnVrLWxhYmVsLS1zXCI+XG4gICAgICAgICAgICAgICAgICB7eyAnV2hhdCBpcyB0aGUgZGF0ZSBvZiB0aGUgaGVhcmluZz8nIHwgcnB4VHJhbnNsYXRlIH19XG4gICAgICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICAgICAgPC9sZWdlbmQ+XG4gICAgICAgICAgICAgIDxwIGlkPVwiaGVhcmluZ0RhdGUtZXJyb3JcIiBjbGFzcz1cImdvdnVrLWVycm9yLW1lc3NhZ2VcIlxuICAgICAgICAgICAgICAgICAgKm5nSWY9XCJzdWJtaXR0ZWQgJiYgZm9ybUdyb3VwLmdldCgnaXNIZWFyaW5nUmVsYXRlZCcpLnZhbHVlID09PSB0cnVlICYmIGZvcm1Hcm91cC5nZXQoJ2hlYXJpbmdEYXRlJykudmFsdWUgPT09IG51bGxcIj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImdvdnVrLXZpc3VhbGx5LWhpZGRlblwiPnt7ICdFcnJvcjonIHwgcnB4VHJhbnNsYXRlIH19IDwvc3Bhbj57eyByYWlzZVF1ZXJ5RXJyb3JNZXNzYWdlLlFVRVJZX0hFQVJJTkdfREFURSB8IHJweFRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgIDxjY2QtcXVlcnktd3JpdGUtZGF0ZS1pbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJoZWFyaW5nRGF0ZVwiPjwvY2NkLXF1ZXJ5LXdyaXRlLWRhdGUtaW5wdXQ+XG4gICAgICAgICAgICA8L2ZpZWxkc2V0PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
305
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(QueryWriteRaiseQueryComponent, { className: "QueryWriteRaiseQueryComponent", filePath: "lib/shared/components/palette/query-management/components/query-write/query-write-raise-query/query-write-raise-query.component.ts", lineNumber: 19 }); })();
306
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktd3JpdGUtcmFpc2UtcXVlcnkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvcXVlcnktbWFuYWdlbWVudC9jb21wb25lbnRzL3F1ZXJ5LXdyaXRlL3F1ZXJ5LXdyaXRlLXJhaXNlLXF1ZXJ5L3F1ZXJ5LXdyaXRlLXJhaXNlLXF1ZXJ5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9wYWxldHRlL3F1ZXJ5LW1hbmFnZW1lbnQvY29tcG9uZW50cy9xdWVyeS13cml0ZS9xdWVyeS13cml0ZS1yYWlzZS1xdWVyeS9xdWVyeS13cml0ZS1yYWlzZS1xdWVyeS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RCxPQUFPLEVBRUwsZ0JBQWdCLEVBQ2hCLFFBQVEsRUFDVCxNQUFNLDJDQUEyQyxDQUFDO0FBRW5ELE9BQU8sRUFBMkIsa0JBQWtCLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFN0YsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDM0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7SUNMN0MsbURBQStHOzs7SUFBaEYsZ0RBQTJC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Q0FBQztRQUVGLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVPLGlDQUFpQztRQUN2QyxPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxpQ0FBaUMsQ0FDbEUsSUFBSSxDQUFDLFNBQVMsRUFDZCxJQUFJLENBQUMsa0JBQWtCLEVBQ3ZCLElBQUksQ0FBQyxTQUFTLEVBQ2QsSUFBSSxDQUFDLFNBQVMsQ0FDZixDQUFDO0lBQ0osQ0FBQzt1SEE1RVUsNkJBQTZCOzZEQUE3Qiw2QkFBNkI7WUNoQnRDLEFBREYsQUFERiwyQkFBSyxhQUNrQyxhQUNOO1lBQUEsWUFBb0M7O1lBQUEsaUJBQU07WUFDdkUsNkJBQW9EO1lBQUEsWUFBMEM7O1lBQ2hHLEFBRGdHLGlCQUFLLEVBQy9GO1lBRU4sMkJBQUs7WUFDSCxrSUFBK0U7WUFDakYsaUJBQU07WUFFTixzQkFBSTtZQUVKLGtGQUFzRDtZQVp4RCxpQkFBSzs7WUFFNEIsZUFBb0M7WUFBcEMsMkRBQW9DO1lBQ2IsZUFBMEM7WUFBMUMsaUVBQTBDO1lBSWxDLGVBQWlCO1lBQWpCLHNDQUFpQjtZQUt6QyxlQUFjO1lBQWQsbUNBQWM7OztpRkRNekMsNkJBQTZCO2NBSnpDLFNBQVM7MkJBQ0UsNkJBQTZCO29GQUl2QixTQUFTO2tCQUF4QixLQUFLO1lBQ1UsU0FBUztrQkFBeEIsS0FBSztZQUNVLFdBQVc7a0JBQTFCLEtBQUs7WUFDVSxRQUFRO2tCQUF2QixLQUFLO1lBQ1UsY0FBYztrQkFBN0IsS0FBSztZQUNVLGtCQUFrQjtrQkFBakMsS0FBSztZQUNVLFNBQVM7a0JBQXhCLEtBQUs7WUFDVSxTQUFTO2tCQUF4QixLQUFLO1lBQ1UsUUFBUTtrQkFBdkIsS0FBSztZQUNVLGlCQUFpQjtrQkFBaEMsS0FBSztZQUVXLGdCQUFnQjtrQkFBaEMsTUFBTTs7a0ZBWkksNkJBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUmFpc2VRdWVyeUVycm9yTWVzc2FnZSB9IGZyb20gJy4uLy4uLy4uL2VudW1zJztcbmltcG9ydCB7XG4gIENhc2VFdmVudERhdGEsXG4gIENhc2VFdmVudFRyaWdnZXIsXG4gIENhc2VWaWV3XG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9zaGFyZWQvZG9tYWluJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFFtQ2FzZVF1ZXJpZXNDb2xsZWN0aW9uLCBRdWVyeUNyZWF0ZUNvbnRleHQsIFF1ZXJ5TGlzdEl0ZW0gfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgRXZlbnRDb21wbGV0aW9uUGFyYW1zIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vY2FzZS1lZGl0b3IvZG9tYWluL2V2ZW50LWNvbXBsZXRpb24tcGFyYW1zLm1vZGVsJztcbmltcG9ydCB7IFF1ZXJ5TWFuYWdlbWVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NjZC1xdWVyeS13cml0ZS1yYWlzZS1xdWVyeScsXG4gIHRlbXBsYXRlVXJsOiAnLi9xdWVyeS13cml0ZS1yYWlzZS1xdWVyeS5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgUXVlcnlXcml0ZVJhaXNlUXVlcnlDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBwdWJsaWMgZm9ybUdyb3VwOiBGb3JtR3JvdXA7XG4gIEBJbnB1dCgpIHB1YmxpYyBzdWJtaXR0ZWQ6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHB1YmxpYyBjYXNlRGV0YWlsczogQ2FzZVZpZXc7XG4gIEBJbnB1dCgpIHB1YmxpYyBzaG93Rm9ybTogYm9vbGVhbjtcbiAgQElucHV0KCkgcHVibGljIHNlcnZpY2VNZXNzYWdlOiBzdHJpbmcgfCBudWxsO1xuICBASW5wdXQoKSBwdWJsaWMgcXVlcnlDcmVhdGVDb250ZXh0OiBRdWVyeUNyZWF0ZUNvbnRleHQ7XG4gIEBJbnB1dCgpIHB1YmxpYyBldmVudERhdGE6IENhc2VFdmVudFRyaWdnZXIgfCBudWxsID0gbnVsbDtcbiAgQElucHV0KCkgcHVibGljIHF1ZXJ5SXRlbTogUXVlcnlMaXN0SXRlbTtcbiAgQElucHV0KCkgcHVibGljIHZhbGlkYXRlOiAoY2FzZUV2ZW50RGF0YTogQ2FzZUV2ZW50RGF0YSwgcGFnZUlkOiBzdHJpbmcpID0+IE9ic2VydmFibGU8b2JqZWN0PjtcbiAgQElucHV0KCkgcHVibGljIHRyaWdnZXJTdWJtaXNzaW9uOiBib29sZWFuO1xuXG4gIEBPdXRwdXQoKSBwdWJsaWMgcXVlcnlEYXRhQ3JlYXRlZCA9IG5ldyBFdmVudEVtaXR0ZXIgPFFtQ2FzZVF1ZXJpZXNDb2xsZWN0aW9uPigpO1xuXG4gIHB1YmxpYyByYWlzZVF1ZXJ5RXJyb3JNZXNzYWdlID0gUmFpc2VRdWVyeUVycm9yTWVzc2FnZTtcbiAgcHVibGljIGV2ZW50Q29tcGxldGlvblBhcmFtczogRXZlbnRDb21wbGV0aW9uUGFyYW1zO1xuICBwdWJsaWMgbWVzc2FnZUlkOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBxdWVyeU1hbmFnZW1lbnRTZXJ2aWNlOiBRdWVyeU1hbmFnZW1lbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICApIHt9XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMubWVzc2FnZUlkPSB0aGlzLnJvdXRlLnNuYXBzaG90LnBhcmFtcy5kYXRhaWQ7XG4gICAgY29uc3QgaXNDb2xsZWN0aW9uRGF0YVNldCA9IHRoaXMuc2V0Q2FzZVF1ZXJpZXNDb2xsZWN0aW9uRGF0YSgpO1xuICAgIGlmIChpc0NvbGxlY3Rpb25EYXRhU2V0KSB7XG4gICAgICBpZiAodGhpcy50cmlnZ2VyU3VibWlzc2lvbikge1xuICAgICAgICBjb25zdCBkYXRhID0gdGhpcy5nZW5lcmF0ZUNhc2VRdWVyaWVzQ29sbGVjdGlvbkRhdGEoKTtcbiAgICAgICAgdGhpcy5xdWVyeURhdGFDcmVhdGVkLmVtaXQoZGF0YSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgb25TdWJqZWN0SW5wdXQoKTogdm9pZCB7XG4gICAgY29uc3QgY29udHJvbCA9IHRoaXMuZm9ybUdyb3VwLmdldCgnc3ViamVjdCcpO1xuICAgIGNvbnN0IHZhbHVlID0gY29udHJvbD8udmFsdWU7XG4gICAgaWYgKHZhbHVlICYmIHZhbHVlLmxlbmd0aCA+IDIwMCkge1xuICAgICAgY29udHJvbD8uc2V0VmFsdWUodmFsdWUuc3Vic3RyaW5nKDAsIDIwMCkpO1xuICAgIH1cbiAgfVxuXG4gIGdldFN1YmplY3RFcnJvck1lc3NhZ2UoKTogc3RyaW5nIHtcbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5mb3JtR3JvdXAuZ2V0KCdzdWJqZWN0Jyk7XG4gICAgaWYgKGNvbnRyb2wuaGFzRXJyb3IoJ3JlcXVpcmVkJykpIHtcbiAgICAgIHJldHVybiB0aGlzLnJhaXNlUXVlcnlFcnJvck1lc3NhZ2UuUVVFUllfU1VCSkVDVDtcbiAgICB9XG4gICAgaWYgKGNvbnRyb2wuaGFzRXJyb3IoJ21heGxlbmd0aCcpKSB7XG4gICAgICByZXR1cm4gdGhpcy5yYWlzZVF1ZXJ5RXJyb3JNZXNzYWdlLlFVRVJZX1NVQkpFQ1RfTUFYX0xFTkdUSDtcbiAgICB9XG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgcHVibGljIHNldENhc2VRdWVyaWVzQ29sbGVjdGlvbkRhdGEoKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLmV2ZW50RGF0YSkge1xuICAgICAgY29uc29sZS53YXJuKCdFdmVudCBkYXRhIG5vdCBhdmFpbGFibGU7IHNraXBwaW5nIGNvbGxlY3Rpb24gc2V0dXAuJyk7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgdGhpcy5xdWVyeU1hbmFnZW1lbnRTZXJ2aWNlLnNldENhc2VRdWVyaWVzQ29sbGVjdGlvbkRhdGEoXG4gICAgICB0aGlzLmV2ZW50RGF0YSxcbiAgICAgIHRoaXMucXVlcnlDcmVhdGVDb250ZXh0LFxuICAgICAgdGhpcy5jYXNlRGV0YWlscyxcbiAgICAgIHRoaXMubWVzc2FnZUlkXG4gICAgKTtcblxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcHJpdmF0ZSBnZW5lcmF0ZUNhc2VRdWVyaWVzQ29sbGVjdGlvbkRhdGEoKTogUW1DYXNlUXVlcmllc0NvbGxlY3Rpb24ge1xuICAgIHJldHVybiB0aGlzLnF1ZXJ5TWFuYWdlbWVudFNlcnZpY2UuZ2VuZXJhdGVDYXNlUXVlcmllc0NvbGxlY3Rpb25EYXRhKFxuICAgICAgdGhpcy5mb3JtR3JvdXAsXG4gICAgICB0aGlzLnF1ZXJ5Q3JlYXRlQ29udGV4dCxcbiAgICAgIHRoaXMucXVlcnlJdGVtLFxuICAgICAgdGhpcy5tZXNzYWdlSWRcbiAgICApO1xuICB9XG59XG4iLCI8ZGl2PlxuICA8ZGl2IGNsYXNzPVwiZ292dWstIS1tYXJnaW4tYm90dG9tLTZcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZ292dWstY2FwdGlvbi1sXCI+e3sgJ1JhaXNlIGEgcXVlcnknIHwgcnB4VHJhbnNsYXRlIH19PC9kaXY+XG4gICAgPGgxIGNsYXNzPVwiZ292dWstaGVhZGluZy1sIGdvdnVrLSEtbWFyZ2luLWJvdHRvbS00XCI+e3sgJ0VudGVyIHF1ZXJ5IGRldGFpbHMnIHwgcnB4VHJhbnNsYXRlIH19PC9oMT5cbiAgPC9kaXY+XG5cbiAgPGRpdj5cbiAgICA8Y2NkLXF1ZXJ5LWNhc2UtZGV0YWlscy1oZWFkZXIgW2Nhc2VEZXRhaWxzXT1cImNhc2VEZXRhaWxzXCIgKm5nSWY9XCJjYXNlRGV0YWlsc1wiPjwvY2NkLXF1ZXJ5LWNhc2UtZGV0YWlscy1oZWFkZXI+XG4gIDwvZGl2PlxuXG4gIDxocj5cblxuICA8ZGl2IGNsYXNzPVwiZ292dWstIS1tYXJnaW4tYm90dG9tLTRcIiAqbmdJZj1cInNob3dGb3JtXCI+XG4gICAgPGRpdiBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiPlxuICAgICAgPGRpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLXdhcm5pbmctdGV4dFwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ292dWstd2FybmluZy10ZXh0X19pY29uXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+ITwvc3Bhbj5cbiAgICAgICAgICA8c3Ryb25nIGNsYXNzPVwiZ292dWstd2FybmluZy10ZXh0X190ZXh0XCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImdvdnVrLXZpc3VhbGx5LWhpZGRlblwiPldhcm5pbmc8L3NwYW4+XG4gICAgICAgICAgICA8Y2NkLW1hcmtkb3duXG4gICAgICAgICAgICAgIFtjb250ZW50XT1cInNlcnZpY2VNZXNzYWdlIHwgcnB4VHJhbnNsYXRlXCI+XG4gICAgICAgICAgICA8L2NjZC1tYXJrZG93bj5cbiAgICAgICAgICA8L3N0cm9uZz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1mb3JtLWdyb3VwXCIgW25nQ2xhc3NdPVwieydnb3Z1ay1mb3JtLWdyb3VwLS1lcnJvcic6IHN1Ym1pdHRlZCAmJiBmb3JtR3JvdXAuZ2V0KCdzdWJqZWN0JykuaGFzRXJyb3IoJ3JlcXVpcmVkJyl9XCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLWxhYmVsLXdyYXBwZXJcIj5cbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImdvdnVrLWxhYmVsIGdvdnVrLWxhYmVsLS1tIGdvdnVrLSEtZm9udC13ZWlnaHQtYm9sZFwiIGZvcj1cInN1YmplY3RcIj5cbiAgICAgICAgICAgICAge3sgJ1F1ZXJ5IHN1YmplY3QnIHwgcnB4VHJhbnNsYXRlIH19XG4gICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgaWQ9XCJzdWJqZWN0LWhpbnRcIiBjbGFzcz1cImdvdnVrLWhpbnRcIj5cbiAgICAgICAgICAgIHt7ICdUaGUgc3ViamVjdCBzaG91bGQgYmUgYSBzdW1tYXJ5IG9mIHlvdXIgcXVlcnknIHwgcnB4VHJhbnNsYXRlIH19XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPHAgaWQ9XCJzdWJqZWN0LWVycm9yXCIgY2xhc3M9XCJnb3Z1ay1lcnJvci1tZXNzYWdlXCJcbiAgICAgICAgICAgICpuZ0lmPVwic3VibWl0dGVkICYmIChmb3JtR3JvdXAuZ2V0KCdzdWJqZWN0JykuaGFzRXJyb3IoJ3JlcXVpcmVkJykgfHwgZm9ybUdyb3VwLmdldCgnc3ViamVjdCcpLmhhc0Vycm9yKCdtYXhsZW5ndGgnKSlcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ292dWstdmlzdWFsbHktaGlkZGVuXCI+e3sgJ0Vycm9yOicgfCBycHhUcmFuc2xhdGUgfX08L3NwYW4+XG4gICAgICAgICAgICB7eyBnZXRTdWJqZWN0RXJyb3JNZXNzYWdlKCkgfCBycHhUcmFuc2xhdGUgfX1cbiAgICAgICAgICA8L3A+XG5cbiAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgaWQ9XCJzdWJqZWN0XCJcbiAgICAgICAgICAgIGNsYXNzPVwiZ292dWstaW5wdXRcIlxuICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwic3ViamVjdFwiXG4gICAgICAgICAgICBtYXhsZW5ndGg9XCIyMDBcIlxuICAgICAgICAgICAgKGlucHV0KT1cIm9uU3ViamVjdElucHV0KClcIlxuICAgICAgICAgICAgYXJpYS1kZXNjcmliZWRieT1cInN1YmplY3QtZXJyb3JcIiAvPlxuICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLWZvcm0tZ3JvdXBcIlxuICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnZ292dWstZm9ybS1ncm91cC0tZXJyb3InOiBzdWJtaXR0ZWQgJiYgZm9ybUdyb3VwLmdldCgnYm9keScpLmhhc0Vycm9yKCdyZXF1aXJlZCcpfVwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1sYWJlbC13cmFwcGVyXCI+XG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJnb3Z1ay1sYWJlbCBnb3Z1ay1sYWJlbC0tbSBnb3Z1ay0hLWZvbnQtd2VpZ2h0LWJvbGRcIiBmb3I9XCJib2R5XCI+XG4gICAgICAgICAgICAgIHt7ICdRdWVyeSBkZXRhaWwnIHwgcnB4VHJhbnNsYXRlIH19XG4gICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgaWQ9XCJib2R5LWhpbnRcIiBjbGFzcz1cImdvdnVrLWhpbnRcIj5cbiAgICAgICAgICAgIHt7ICdJbmNsdWRlIGFzIG1hbnkgZGV0YWlscyBhcyBwb3NzaWJsZSBzbyBjYXNlIHdvcmtlcnMgY2FuIHJlc3BvbmQgdG8geW91ciBxdWVyeScgfCBycHhUcmFuc2xhdGUgfX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8cCBpZD1cImJvZHktZXJyb3JcIiBjbGFzcz1cImdvdnVrLWVycm9yLW1lc3NhZ2VcIlxuICAgICAgICAgICAgICAqbmdJZj1cInN1Ym1pdHRlZCAmJiBmb3JtR3JvdXAuZ2V0KCdib2R5JykuaGFzRXJyb3IoJ3JlcXVpcmVkJylcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ292dWstdmlzdWFsbHktaGlkZGVuXCI+e3sgJ0Vycm9yOicgfCBycHhUcmFuc2xhdGUgfX0gPC9zcGFuPnt7IHJhaXNlUXVlcnlFcnJvck1lc3NhZ2UuUVVFUllfQk9EWSB8IHJweFRyYW5zbGF0ZSB9fVxuICAgICAgICAgIDwvcD5cbiAgICAgICAgICA8dGV4dGFyZWEgW2Zvcm1Db250cm9sTmFtZV09XCInYm9keSdcIlxuICAgICAgICAgICAgICAgICAgICBpZD1cImJvZHlcIiBuYW1lPVwiYm9keVwiIHJvd3M9XCI1XCJcbiAgICAgICAgICAgICAgICAgICAgYXJpYS1kZXNjcmliZWRieT1cImJvZHktaGludCBib2R5LWVycm9yXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJnb3Z1ay10ZXh0YXJlYVwiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy5nb3Z1ay10ZXh0YXJlYS0tZXJyb3JdPVwic3VibWl0dGVkICYmIGZvcm1Hcm91cC5nZXQoJ2JvZHknKS5oYXNFcnJvcigncmVxdWlyZWQnKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgIDwvdGV4dGFyZWE+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLWZvcm0tZ3JvdXBcIlxuICAgICAgICAgICBbbmdDbGFzc109XCJ7J2dvdnVrLWZvcm0tZ3JvdXAtLWVycm9yJzogc3VibWl0dGVkICYmIGZvcm1Hcm91cC5nZXQoJ2lzSGVhcmluZ1JlbGF0ZWQnKS5oYXNFcnJvcigncmVxdWlyZWQnKX1cIj5cbiAgICAgICAgPGZpZWxkc2V0IGNsYXNzPVwiZ292dWstZmllbGRzZXRcIj5cbiAgICAgICAgICA8bGVnZW5kPlxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZ292dWstbGFiZWwgZ292dWstbGFiZWwtLW0gZ292dWstIS1mb250LXdlaWdodC1ib2xkXCI+XG4gICAgICAgICAgICAgIHt7ICdJcyB0aGUgcXVlcnkgaGVhcmluZyByZWxhdGVkPycgfCBycHhUcmFuc2xhdGUgfX1cbiAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgPC9sZWdlbmQ+XG4gICAgICAgICAgPHAgaWQ9XCJpc0hlYXJpbmdSZWxhdGVkLWVycm9yXCIgY2xhc3M9XCJnb3Z1ay1lcnJvci1tZXNzYWdlXCJcbiAgICAgICAgICAgICAgKm5nSWY9XCJzdWJtaXR0ZWQgJiYgZm9ybUdyb3VwLmdldCgnaXNIZWFyaW5nUmVsYXRlZCcpLmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImdvdnVrLXZpc3VhbGx5LWhpZGRlblwiPnt7ICdFcnJvcjonIHwgcnB4VHJhbnNsYXRlIH19IDwvc3Bhbj57eyByYWlzZVF1ZXJ5RXJyb3JNZXNzYWdlLlFVRVJZX0hFQVJJTkdfUkVMQVRFRCB8IHJweFRyYW5zbGF0ZSB9fVxuICAgICAgICAgIDwvcD5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ292dWstcmFkaW9zIGdvdnVrLXJhZGlvcy0taW5saW5lXCIgZGF0YS1tb2R1bGU9XCJnb3Z1ay1yYWRpb3NcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1yYWRpb3NfX2l0ZW1cIj5cbiAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiZ292dWstcmFkaW9zX19pbnB1dFwiIGlkPVwiaXNIZWFyaW5nUmVsYXRlZC15ZXNcIiBuYW1lPVwiaXNIZWFyaW5nUmVsYXRlZFwiXG4gICAgICAgICAgICAgICAgICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiaXNIZWFyaW5nUmVsYXRlZFwiXG4gICAgICAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJmb3JtR3JvdXAuZ2V0KCdpc0hlYXJpbmdSZWxhdGVkJykudmFsdWUgPT09IHRydWVcIiBbdmFsdWVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZ292dWstbGFiZWwgZ292dWstcmFkaW9zX19sYWJlbFwiIGZvcj1cImlzSGVhcmluZ1JlbGF0ZWQteWVzXCI+XG4gICAgICAgICAgICAgICAge3sgJ0lzIHRoZSBxdWVyeSBoZWFyaW5nIHJlbGF0ZWQ/JyB8IHJweFRyYW5zbGF0ZTogbnVsbCA6ICdZZXMnIH19XG4gICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1yYWRpb3NfX2l0ZW1cIj5cbiAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiZ292dWstcmFkaW9zX19pbnB1dFwiIGlkPVwiaXNIZWFyaW5nUmVsYXRlZC1ub1wiIG5hbWU9XCJpc0hlYXJpbmdSZWxhdGVkXCJcbiAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJyYWRpb1wiXG4gICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJpc0hlYXJpbmdSZWxhdGVkXCJcbiAgICAgICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cImZvcm1Hcm91cC5nZXQoJ2lzSGVhcmluZ1JlbGF0ZWQnKS52YWx1ZSA9PT0gZmFsc2VcIiBbdmFsdWVdPVwiZmFsc2VcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImdvdnVrLWxhYmVsIGdvdnVrLXJhZGlvc19fbGFiZWxcIiBmb3I9XCJpc0hlYXJpbmdSZWxhdGVkLW5vXCI+XG4gICAgICAgICAgICAgICAge3sgJ0lzIHRoZSBxdWVyeSBoZWFyaW5nIHJlbGF0ZWQ/JyB8IHJweFRyYW5zbGF0ZTogbnVsbCA6ICdObycgfX1cbiAgICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2ZpZWxkc2V0PlxuXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmb3JtR3JvdXAuZ2V0KCdpc0hlYXJpbmdSZWxhdGVkJykudmFsdWVcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ292dWstcmFkaW9zX19jb25kaXRpb25hbCBnb3Z1ay0hLW1hcmdpbi10b3AtMVwiXG4gICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2dvdnVrLWZvcm0tZ3JvdXAtLWVycm9yJzogc3VibWl0dGVkICYmXG4gICAgICAgICAgICAgICBmb3JtR3JvdXAuZ2V0KCdpc0hlYXJpbmdSZWxhdGVkJykudmFsdWUgPT09IHRydWUgJiZcbiAgICAgICAgICAgICAgIGZvcm1Hcm91cC5nZXQoJ2hlYXJpbmdEYXRlJykudmFsdWUgPT09IG51bGx9XCI+XG4gICAgICAgICAgICA8ZmllbGRzZXQgY2xhc3M9XCJnb3Z1ay1maWVsZHNldFwiIHJvbGU9XCJncm91cFwiPlxuICAgICAgICAgICAgICA8bGVnZW5kPlxuICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImdvdnVrLWxhYmVsIGdvdnVrLWxhYmVsLS1zXCI+XG4gICAgICAgICAgICAgICAgICB7eyAnV2hhdCBpcyB0aGUgZGF0ZSBvZiB0aGUgaGVhcmluZz8nIHwgcnB4VHJhbnNsYXRlIH19XG4gICAgICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICAgICAgPC9sZWdlbmQ+XG4gICAgICAgICAgICAgIDxwIGlkPVwiaGVhcmluZ0RhdGUtZXJyb3JcIiBjbGFzcz1cImdvdnVrLWVycm9yLW1lc3NhZ2VcIlxuICAgICAgICAgICAgICAgICAgKm5nSWY9XCJzdWJtaXR0ZWQgJiYgZm9ybUdyb3VwLmdldCgnaXNIZWFyaW5nUmVsYXRlZCcpLnZhbHVlID09PSB0cnVlICYmIGZvcm1Hcm91cC5nZXQoJ2hlYXJpbmdEYXRlJykudmFsdWUgPT09IG51bGxcIj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImdvdnVrLXZpc3VhbGx5LWhpZGRlblwiPnt7ICdFcnJvcjonIHwgcnB4VHJhbnNsYXRlIH19IDwvc3Bhbj57eyByYWlzZVF1ZXJ5RXJyb3JNZXNzYWdlLlFVRVJZX0hFQVJJTkdfREFURSB8IHJweFRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgIDxjY2QtcXVlcnktd3JpdGUtZGF0ZS1pbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJoZWFyaW5nRGF0ZVwiPjwvY2NkLXF1ZXJ5LXdyaXRlLWRhdGUtaW5wdXQ+XG4gICAgICAgICAgICA8L2ZpZWxkc2V0PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -2,12 +2,15 @@ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
2
  import { ActivatedRoute } from '@angular/router';
3
3
  import { FormGroup } from '@angular/forms';
4
4
  import { take } from 'rxjs/operators';
5
+ import { CaseEventTrigger } from '../../../../../../../../lib/shared/domain';
5
6
  import { CaseNotifier } from '../../../../../case-editor/services';
6
7
  import { RaiseQueryErrorMessage } from '../../../enums';
7
8
  import { QueryCreateContext, QueryListData, QueryListItem } from '../../../models';
9
+ import { QueryManagementService } from '../../../services';
8
10
  import * as i0 from "@angular/core";
9
11
  import * as i1 from "../../../../../case-editor/services";
10
12
  import * as i2 from "@angular/router";
13
+ import * as i3 from "../../../services";
11
14
  function QueryWriteRespondToQueryComponent_ccd_query_case_details_header_9_Template(rf, ctx) { if (rf & 1) {
12
15
  i0.ɵɵelement(0, "ccd-query-case-details-header", 8);
13
16
  } if (rf & 2) {
@@ -88,12 +91,16 @@ function QueryWriteRespondToQueryComponent_ng_container_13_Template(rf, ctx) { i
88
91
  export class QueryWriteRespondToQueryComponent {
89
92
  caseNotifier;
90
93
  route;
94
+ queryManagementService;
91
95
  queryItem;
92
96
  formGroup;
93
97
  queryCreateContext;
94
98
  submitted = false;
95
99
  caseQueriesCollections;
96
100
  showForm;
101
+ triggerSubmission;
102
+ eventData = null;
103
+ queryDataCreated = new EventEmitter();
97
104
  hasRespondedToQueryTask = new EventEmitter();
98
105
  queryCreateContextEnum = QueryCreateContext;
99
106
  raiseQueryErrorMessages = RaiseQueryErrorMessage;
@@ -103,11 +110,13 @@ export class QueryWriteRespondToQueryComponent {
103
110
  queryResponseStatus;
104
111
  queryListData;
105
112
  hasRespondedToQuery = false;
113
+ messageId;
106
114
  static QUERY_ITEM_RESPOND = '3';
107
115
  static QUERY_ITEM_FOLLOWUP = '4';
108
- constructor(caseNotifier, route) {
116
+ constructor(caseNotifier, route, queryManagementService) {
109
117
  this.caseNotifier = caseNotifier;
110
118
  this.route = route;
119
+ this.queryManagementService = queryManagementService;
111
120
  }
112
121
  ngOnInit() {
113
122
  this.queryItemId = this.route.snapshot.params.qid;
@@ -130,32 +139,50 @@ export class QueryWriteRespondToQueryComponent {
130
139
  console.error('caseQueriesCollections[0] is undefined!', this.caseQueriesCollections);
131
140
  return;
132
141
  }
133
- const messageId = this.route.snapshot.params?.dataid;
134
- if (!messageId) {
142
+ this.messageId = this.route.snapshot.params?.dataid;
143
+ if (!this.messageId) {
135
144
  console.warn('No messageId found in route params:', this.route.snapshot.params);
136
145
  return;
137
146
  }
138
147
  const allMessages = this.caseQueriesCollections
139
148
  .flatMap((caseData) => caseData?.caseMessages || []);
140
- const matchingMessage = allMessages.find((message) => message?.value?.id === messageId)?.value;
149
+ const matchingMessage = allMessages.find((message) => message?.value?.id === this.messageId)?.value;
141
150
  if (!matchingMessage) {
142
- console.warn('No matching message found for ID:', messageId);
151
+ console.warn('No matching message found for ID:', this.messageId);
143
152
  return;
144
153
  }
145
- const caseQueriesCollections = this.caseQueriesCollections.find((collection) => collection?.caseMessages.find((c) => c.value.id === messageId));
154
+ const caseQueriesCollections = this.caseQueriesCollections.find((collection) => collection?.caseMessages.find((c) => c.value.id === this.messageId));
146
155
  const queryWithChildren = new QueryListData(caseQueriesCollections);
147
156
  const targetId = this.queryItemId === QueryWriteRespondToQueryComponent.QUERY_ITEM_RESPOND
148
157
  ? (matchingMessage?.parentId || matchingMessage?.id)
149
158
  : matchingMessage?.id;
150
159
  this.queryListData = queryWithChildren?.queries.find((query) => query?.id === targetId);
151
160
  this.queryResponseStatus = this.queryListData?.responseStatus;
161
+ const isCollectionDataSet = this.setCaseQueriesCollectionData();
162
+ if (isCollectionDataSet) {
163
+ if (this.triggerSubmission) {
164
+ const data = this.generateCaseQueriesCollectionData();
165
+ this.queryDataCreated.emit(data);
166
+ }
167
+ }
152
168
  }
153
169
  hasResponded(value) {
154
170
  this.hasRespondedToQuery = value;
155
171
  this.hasRespondedToQueryTask.emit(value);
156
172
  }
157
- static ɵfac = function QueryWriteRespondToQueryComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || QueryWriteRespondToQueryComponent)(i0.ɵɵdirectiveInject(i1.CaseNotifier), i0.ɵɵdirectiveInject(i2.ActivatedRoute)); };
158
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: QueryWriteRespondToQueryComponent, selectors: [["ccd-query-write-respond-to-query"]], inputs: { queryItem: "queryItem", formGroup: "formGroup", queryCreateContext: "queryCreateContext", submitted: "submitted", caseQueriesCollections: "caseQueriesCollections", showForm: "showForm" }, outputs: { hasRespondedToQueryTask: "hasRespondedToQueryTask" }, features: [i0.ɵɵNgOnChangesFeature], decls: 14, vars: 11, consts: [[1, "govuk-!-margin-bottom-6"], [1, "govuk-caption-l"], [1, "govuk-heading-l", "govuk-!-margin-bottom-0"], [1, "govuk-!-margin-bottom-4"], [3, "caseDetails", 4, "ngIf"], [3, "hasResponded", "query", "queryResponseStatus"], ["class", "query-respond", 4, "ngIf"], [4, "ngIf"], [3, "caseDetails"], [1, "query-respond"], [1, "govuk-heading-m"], [3, "formGroup"], [1, "govuk-form-group", "body-textarea"], [1, "govuk-label-wrapper"], ["for", "body", 1, "govuk-label", "govuk-label--m", "govuk-!-font-weight-bold"], ["id", "body-error", "class", "govuk-error-message", 4, "ngIf"], ["id", "body", "name", "body", "rows", "5", "aria-describedby", "body-hint body-error", 1, "govuk-textarea", 3, "formControlName"], ["id", "body-error", 1, "govuk-error-message"], [1, "govuk-visually-hidden"], [3, "formGroup", 4, "ngIf"]], template: function QueryWriteRespondToQueryComponent_Template(rf, ctx) { if (rf & 1) {
173
+ setCaseQueriesCollectionData() {
174
+ if (!this.eventData) {
175
+ console.warn('Event data not available; skipping collection setup.');
176
+ return false;
177
+ }
178
+ this.queryManagementService.setCaseQueriesCollectionData(this.eventData, this.queryCreateContext, this.caseDetails, this.messageId);
179
+ return true;
180
+ }
181
+ generateCaseQueriesCollectionData() {
182
+ return this.queryManagementService.generateCaseQueriesCollectionData(this.formGroup, this.queryCreateContext, this.queryItem, this.messageId);
183
+ }
184
+ static ɵfac = function QueryWriteRespondToQueryComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || QueryWriteRespondToQueryComponent)(i0.ɵɵdirectiveInject(i1.CaseNotifier), i0.ɵɵdirectiveInject(i2.ActivatedRoute), i0.ɵɵdirectiveInject(i3.QueryManagementService)); };
185
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: QueryWriteRespondToQueryComponent, selectors: [["ccd-query-write-respond-to-query"]], inputs: { queryItem: "queryItem", formGroup: "formGroup", queryCreateContext: "queryCreateContext", submitted: "submitted", caseQueriesCollections: "caseQueriesCollections", showForm: "showForm", triggerSubmission: "triggerSubmission", eventData: "eventData" }, outputs: { queryDataCreated: "queryDataCreated", hasRespondedToQueryTask: "hasRespondedToQueryTask" }, features: [i0.ɵɵNgOnChangesFeature], decls: 14, vars: 11, consts: [[1, "govuk-!-margin-bottom-6"], [1, "govuk-caption-l"], [1, "govuk-heading-l", "govuk-!-margin-bottom-0"], [1, "govuk-!-margin-bottom-4"], [3, "caseDetails", 4, "ngIf"], [3, "hasResponded", "query", "queryResponseStatus"], ["class", "query-respond", 4, "ngIf"], [4, "ngIf"], [3, "caseDetails"], [1, "query-respond"], [1, "govuk-heading-m"], [3, "formGroup"], [1, "govuk-form-group", "body-textarea"], [1, "govuk-label-wrapper"], ["for", "body", 1, "govuk-label", "govuk-label--m", "govuk-!-font-weight-bold"], ["id", "body-error", "class", "govuk-error-message", 4, "ngIf"], ["id", "body", "name", "body", "rows", "5", "aria-describedby", "body-hint body-error", 1, "govuk-textarea", 3, "formControlName"], ["id", "body-error", 1, "govuk-error-message"], [1, "govuk-visually-hidden"], [3, "formGroup", 4, "ngIf"]], template: function QueryWriteRespondToQueryComponent_Template(rf, ctx) { if (rf & 1) {
159
186
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 0)(2, "div", 1);
160
187
  i0.ɵɵtext(3);
161
188
  i0.ɵɵpipe(4, "rpxTranslate");
@@ -189,7 +216,7 @@ export class QueryWriteRespondToQueryComponent {
189
216
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(QueryWriteRespondToQueryComponent, [{
190
217
  type: Component,
191
218
  args: [{ selector: 'ccd-query-write-respond-to-query', template: "<div class=\"govuk-!-margin-bottom-6\">\n <div class=\"govuk-!-margin-bottom-6\">\n <div class=\"govuk-caption-l\">{{ 'Respond to a query' | rpxTranslate }}</div>\n <h1 class=\"govuk-heading-l govuk-!-margin-bottom-0\">{{ 'Query details' | rpxTranslate }}</h1>\n </div>\n\n <div class=\"govuk-!-margin-bottom-4\">\n <ccd-query-case-details-header [caseDetails]=\"caseDetails\" *ngIf=\"caseDetails\"></ccd-query-case-details-header>\n </div>\n\n <div>\n <ccd-query-details [query]=\"queryListData\"\n [queryResponseStatus]=\"queryResponseStatus\"\n (hasResponded)=\"hasResponded($event)\"></ccd-query-details>\n </div>\n</div>\n<div class=\"query-respond\" *ngIf=\"showForm\">\n <div *ngIf=\"!hasRespondedToQuery\">\n <h1 class=\"govuk-heading-m\">\n {{ queryCreateContext === queryCreateContextEnum.RESPOND ? 'Respond to a query' : 'Ask a follow-up question' | rpxTranslate }}\n </h1>\n\n <div [formGroup]=\"formGroup\">\n <div class=\"govuk-form-group body-textarea\"\n [class.govuk-form-group--error]=\"submitted && formGroup.get('body')?.hasError('required')\">\n <div class=\"govuk-label-wrapper\">\n <label class=\"govuk-label govuk-label--m govuk-!-font-weight-bold\" for=\"body\">\n {{ queryCreateContext === queryCreateContextEnum.RESPOND ? 'Response detail' : 'Query Body' | rpxTranslate }}\n </label>\n </div>\n <p id=\"body-error\" class=\"govuk-error-message\"\n *ngIf=\"submitted && formGroup.get('body')?.hasError('required')\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }} </span>{{ queryCreateContext === queryCreateContextEnum.RESPOND ? raiseQueryErrorMessages.RESPOND_QUERY_BODY : raiseQueryErrorMessages.QUERY_BODY | rpxTranslate }}\n </p>\n <textarea [formControlName]=\"'body'\" class=\"govuk-textarea\"\n [class.govuk-textarea--error]=\"submitted && formGroup.get('body')?.hasError('required')\" id=\"body\"\n name=\"body\" rows=\"5\" aria-describedby=\"body-hint body-error\">\n </textarea>\n </div>\n </div>\n </div>\n</div>\n\n<ng-container *ngIf=\"queryCreateContext === queryCreateContextEnum.RESPOND\">\n <ccd-close-query *ngIf=\"!hasRespondedToQuery\"\n [formGroup]=\"formGroup\">\n </ccd-close-query>\n</ng-container>", styles: [".query-respond{width:100%;max-width:720px}\n"] }]
192
- }], () => [{ type: i1.CaseNotifier }, { type: i2.ActivatedRoute }], { queryItem: [{
219
+ }], () => [{ type: i1.CaseNotifier }, { type: i2.ActivatedRoute }, { type: i3.QueryManagementService }], { queryItem: [{
193
220
  type: Input
194
221
  }], formGroup: [{
195
222
  type: Input
@@ -201,8 +228,14 @@ export class QueryWriteRespondToQueryComponent {
201
228
  type: Input
202
229
  }], showForm: [{
203
230
  type: Input
231
+ }], triggerSubmission: [{
232
+ type: Input
233
+ }], eventData: [{
234
+ type: Input
235
+ }], queryDataCreated: [{
236
+ type: Output
204
237
  }], hasRespondedToQueryTask: [{
205
238
  type: Output
206
239
  }] }); })();
207
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(QueryWriteRespondToQueryComponent, { className: "QueryWriteRespondToQueryComponent", filePath: "lib/shared/components/palette/query-management/components/query-write/query-write-respond-to-query/query-write-respond-to-query.component.ts", lineNumber: 14 }); })();
208
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktd3JpdGUtcmVzcG9uZC10by1xdWVyeS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2NvbXBvbmVudHMvcGFsZXR0ZS9xdWVyeS1tYW5hZ2VtZW50L2NvbXBvbmVudHMvcXVlcnktd3JpdGUvcXVlcnktd3JpdGUtcmVzcG9uZC10by1xdWVyeS9xdWVyeS13cml0ZS1yZXNwb25kLXRvLXF1ZXJ5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9wYWxldHRlL3F1ZXJ5LW1hbmFnZW1lbnQvY29tcG9uZW50cy9xdWVyeS13cml0ZS9xdWVyeS13cml0ZS1yZXNwb25kLXRvLXF1ZXJ5L3F1ZXJ5LXdyaXRlLXJlc3BvbmQtdG8tcXVlcnkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hELE9BQU8sRUFBeUIsa0JBQWtCLEVBQUUsYUFBYSxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7OztJQ0N0Ryxt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ZCxtQ0FBYztZQTJCM0IsY0FBMkQ7WUFBM0Qsb0ZBQTJEOzs7aUZEOUI3RCxpQ0FBaUM7Y0FON0MsU0FBUzsyQkFDRSxrQ0FBa0M7MEVBTTVCLFNBQVM7a0JBQXhCLEtBQUs7WUFDVSxTQUFTO2tCQUF4QixLQUFLO1lBQ1Usa0JBQWtCO2tCQUFqQyxLQUFLO1lBQ1UsU0FBUztrQkFBeEIsS0FBSztZQUNVLHNCQUFzQjtrQkFBckMsS0FBSztZQUNVLFFBQVE7a0JBQXZCLEtBQUs7WUFDVyx1QkFBdUI7a0JBQXZDLE1BQU07O2tGQVBJLGlDQUFpQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IENhc2VOb3RpZmllciB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2Nhc2UtZWRpdG9yL3NlcnZpY2VzJztcbmltcG9ydCB7IFJhaXNlUXVlcnlFcnJvck1lc3NhZ2UgfSBmcm9tICcuLi8uLi8uLi9lbnVtcyc7XG5pbXBvcnQgeyBDYXNlUXVlcmllc0NvbGxlY3Rpb24sIFF1ZXJ5Q3JlYXRlQ29udGV4dCwgUXVlcnlMaXN0RGF0YSwgUXVlcnlMaXN0SXRlbSB9IGZyb20gJy4uLy4uLy4uL21vZGVscyc7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjY2QtcXVlcnktd3JpdGUtcmVzcG9uZC10by1xdWVyeScsXG4gIHRlbXBsYXRlVXJsOiAnLi9xdWVyeS13cml0ZS1yZXNwb25kLXRvLXF1ZXJ5LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcXVlcnktd3JpdGUtcmVzcG9uZC10by1xdWVyeS5jb21wb25lbnQuc2NzcyddXG59KVxuXG5leHBvcnQgY2xhc3MgUXVlcnlXcml0ZVJlc3BvbmRUb1F1ZXJ5Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBwdWJsaWMgcXVlcnlJdGVtOiBRdWVyeUxpc3RJdGVtO1xuICBASW5wdXQoKSBwdWJsaWMgZm9ybUdyb3VwOiBGb3JtR3JvdXA7XG4gIEBJbnB1dCgpIHB1YmxpYyBxdWVyeUNyZWF0ZUNvbnRleHQ6IFF1ZXJ5Q3JlYXRlQ29udGV4dDtcbiAgQElucHV0KCkgcHVibGljIHN1Ym1pdHRlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgY2FzZVF1ZXJpZXNDb2xsZWN0aW9uczogQ2FzZVF1ZXJpZXNDb2xsZWN0aW9uW107XG4gIEBJbnB1dCgpIHB1YmxpYyBzaG93Rm9ybTtcbiAgQE91dHB1dCgpIHB1YmxpYyBoYXNSZXNwb25kZWRUb1F1ZXJ5VGFzazogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHB1YmxpYyByZWFkb25seSBxdWVyeUNyZWF0ZUNvbnRleHRFbnVtID0gUXVlcnlDcmVhdGVDb250ZXh0O1xuICBwdWJsaWMgcmVhZG9ubHkgcmFpc2VRdWVyeUVycm9yTWVzc2FnZXMgPSBSYWlzZVF1ZXJ5RXJyb3JNZXNzYWdlO1xuICBwdWJsaWMgY2FzZUlkOiBzdHJpbmc7XG4gIHB1YmxpYyBxdWVyeUl0ZW1JZDogc3RyaW5nO1xuICBwdWJsaWMgY2FzZURldGFpbHM7XG4gIHB1YmxpYyBxdWVyeVJlc3BvbnNlU3RhdHVzOiBzdHJpbmc7XG4gIHB1YmxpYyBxdWVyeUxpc3REYXRhOiBRdWVyeUxpc3RJdGVtIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBoYXNSZXNwb25kZWRUb1F1ZXJ5OiBib29sZWFuID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBzdGF0aWMgcmVhZG9ubHkgUVVFUllfSVRFTV9SRVNQT05EID0gJzMnO1xuICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBRVUVSWV9JVEVNX0ZPTExPV1VQID0gJzQnO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgY2FzZU5vdGlmaWVyOiBDYXNlTm90aWZpZXIsXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZTogQWN0aXZhdGVkUm91dGUpIHt9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMucXVlcnlJdGVtSWQgPSB0aGlzLnJvdXRlLnNuYXBzaG90LnBhcmFtcy5xaWQ7XG4gICAgdGhpcy5jYXNlSWQgPSB0aGlzLnJvdXRlLnNuYXBzaG90LnBhcmFtcy5jaWQ7XG4gICAgdGhpcy5jYXNlTm90aWZpZXIuZmV0Y2hBbmRSZWZyZXNoKHRoaXMuY2FzZUlkKS5waXBlKHRha2UoMSkpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAoY2FzZURldGFpbHMpID0+IHtcbiAgICAgICAgdGhpcy5jYXNlRGV0YWlscyA9IGNhc2VEZXRhaWxzO1xuICAgICAgfSxcbiAgICAgIGVycm9yOiAoZXJyKSA9PiB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIHJldHJpZXZpbmcgY2FzZSBkZXRhaWxzOicsIGVycik7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmNhc2VRdWVyaWVzQ29sbGVjdGlvbnMgfHwgdGhpcy5jYXNlUXVlcmllc0NvbGxlY3Rpb25zLmxlbmd0aCA9PT0gMCkge1xuICAgIC8vIFNpbGVudCByZXR1cm4g4oCTIHRoaXMgaXMgbm90IGFuIGVycm9yLlxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5jYXNlUXVlcmllc0NvbGxlY3Rpb25zWzBdKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdjYXNlUXVlcmllc0NvbGxlY3Rpb25zWzBdIGlzIHVuZGVmaW5lZCEnLCB0aGlzLmNhc2VRdWVyaWVzQ29sbGVjdGlvbnMpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IG1lc3NhZ2VJZCA9IHRoaXMucm91dGUuc25hcHNob3QucGFyYW1zPy5kYXRhaWQ7XG4gICAgaWYgKCFtZXNzYWdlSWQpIHtcbiAgICAgIGNvbnNvbGUud2FybignTm8gbWVzc2FnZUlkIGZvdW5kIGluIHJvdXRlIHBhcmFtczonLCB0aGlzLnJvdXRlLnNuYXBzaG90LnBhcmFtcyk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgYWxsTWVzc2FnZXMgPSB0aGlzLmNhc2VRdWVyaWVzQ29sbGVjdGlvbnNcbiAgICAgIC5mbGF0TWFwKChjYXNlRGF0YSkgPT4gY2FzZURhdGE/LmNhc2VNZXNzYWdlcyB8fCBbXSk7XG5cbiAgICBjb25zdCBtYXRjaGluZ01lc3NhZ2UgPSBhbGxNZXNzYWdlcy5maW5kKFxuICAgICAgKG1lc3NhZ2UpID0+IG1lc3NhZ2U/LnZhbHVlPy5pZCA9PT0gbWVzc2FnZUlkXG4gICAgKT8udmFsdWU7XG5cbiAgICBpZiAoIW1hdGNoaW5nTWVzc2FnZSkge1xuICAgICAgY29uc29sZS53YXJuKCdObyBtYXRjaGluZyBtZXNzYWdlIGZvdW5kIGZvciBJRDonLCBtZXNzYWdlSWQpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGNhc2VRdWVyaWVzQ29sbGVjdGlvbnMgPSB0aGlzLmNhc2VRdWVyaWVzQ29sbGVjdGlvbnMuZmluZChcbiAgICAgIChjb2xsZWN0aW9uKSA9PiBjb2xsZWN0aW9uPy5jYXNlTWVzc2FnZXMuZmluZCgoYykgPT4gYy52YWx1ZS5pZCA9PT0gbWVzc2FnZUlkKVxuICAgICk7XG5cbiAgICBjb25zdCBxdWVyeVdpdGhDaGlsZHJlbiA9IG5ldyBRdWVyeUxpc3REYXRhKGNhc2VRdWVyaWVzQ29sbGVjdGlvbnMpO1xuICAgIGNvbnN0IHRhcmdldElkID0gdGhpcy5xdWVyeUl0ZW1JZCA9PT0gUXVlcnlXcml0ZVJlc3BvbmRUb1F1ZXJ5Q29tcG9uZW50LlFVRVJZX0lURU1fUkVTUE9ORFxuICAgICAgPyAobWF0Y2hpbmdNZXNzYWdlPy5wYXJlbnRJZCB8fCBtYXRjaGluZ01lc3NhZ2U/LmlkKVxuICAgICAgOiBtYXRjaGluZ01lc3NhZ2U/LmlkO1xuXG4gICAgdGhpcy5xdWVyeUxpc3REYXRhID0gcXVlcnlXaXRoQ2hpbGRyZW4/LnF1ZXJpZXMuZmluZCgocXVlcnkpID0+IHF1ZXJ5Py5pZCA9PT0gdGFyZ2V0SWQpO1xuICAgIHRoaXMucXVlcnlSZXNwb25zZVN0YXR1cyA9IHRoaXMucXVlcnlMaXN0RGF0YT8ucmVzcG9uc2VTdGF0dXM7XG4gIH1cblxuICBwdWJsaWMgaGFzUmVzcG9uZGVkKHZhbHVlOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5oYXNSZXNwb25kZWRUb1F1ZXJ5ID0gdmFsdWU7XG4gICAgdGhpcy5oYXNSZXNwb25kZWRUb1F1ZXJ5VGFzay5lbWl0KHZhbHVlKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImdvdnVrLSEtbWFyZ2luLWJvdHRvbS02XCI+XG4gIDxkaXYgY2xhc3M9XCJnb3Z1ay0hLW1hcmdpbi1ib3R0b20tNlwiPlxuICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1jYXB0aW9uLWxcIj57eyAnUmVzcG9uZCB0byBhIHF1ZXJ5JyB8IHJweFRyYW5zbGF0ZSB9fTwvZGl2PlxuICAgIDxoMSBjbGFzcz1cImdvdnVrLWhlYWRpbmctbCBnb3Z1ay0hLW1hcmdpbi1ib3R0b20tMFwiPnt7ICdRdWVyeSBkZXRhaWxzJyB8IHJweFRyYW5zbGF0ZSB9fTwvaDE+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJnb3Z1ay0hLW1hcmdpbi1ib3R0b20tNFwiPlxuICAgIDxjY2QtcXVlcnktY2FzZS1kZXRhaWxzLWhlYWRlciBbY2FzZURldGFpbHNdPVwiY2FzZURldGFpbHNcIiAqbmdJZj1cImNhc2VEZXRhaWxzXCI+PC9jY2QtcXVlcnktY2FzZS1kZXRhaWxzLWhlYWRlcj5cbiAgPC9kaXY+XG5cbiAgPGRpdj5cbiAgICA8Y2NkLXF1ZXJ5LWRldGFpbHMgW3F1ZXJ5XT1cInF1ZXJ5TGlzdERhdGFcIlxuICAgICAgW3F1ZXJ5UmVzcG9uc2VTdGF0dXNdPVwicXVlcnlSZXNwb25zZVN0YXR1c1wiXG4gICAgICAoaGFzUmVzcG9uZGVkKT1cImhhc1Jlc3BvbmRlZCgkZXZlbnQpXCI+PC9jY2QtcXVlcnktZGV0YWlscz5cbiAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJxdWVyeS1yZXNwb25kXCIgKm5nSWY9XCJzaG93Rm9ybVwiPlxuICA8ZGl2ICpuZ0lmPVwiIWhhc1Jlc3BvbmRlZFRvUXVlcnlcIj5cbiAgICA8aDEgY2xhc3M9XCJnb3Z1ay1oZWFkaW5nLW1cIj5cbiAgICAgIHt7IHF1ZXJ5Q3JlYXRlQ29udGV4dCA9PT0gcXVlcnlDcmVhdGVDb250ZXh0RW51bS5SRVNQT05EID8gJ1Jlc3BvbmQgdG8gYSBxdWVyeScgOiAnQXNrIGEgZm9sbG93LXVwIHF1ZXN0aW9uJyB8IHJweFRyYW5zbGF0ZSB9fVxuICAgIDwvaDE+XG5cbiAgICA8ZGl2IFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZ292dWstZm9ybS1ncm91cCBib2R5LXRleHRhcmVhXCJcbiAgICAgICAgICAgW2NsYXNzLmdvdnVrLWZvcm0tZ3JvdXAtLWVycm9yXT1cInN1Ym1pdHRlZCAmJiBmb3JtR3JvdXAuZ2V0KCdib2R5Jyk/Lmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1sYWJlbC13cmFwcGVyXCI+XG4gICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZ292dWstbGFiZWwgZ292dWstbGFiZWwtLW0gZ292dWstIS1mb250LXdlaWdodC1ib2xkXCIgZm9yPVwiYm9keVwiPlxuICAgICAgICAgICAge3sgcXVlcnlDcmVhdGVDb250ZXh0ID09PSBxdWVyeUNyZWF0ZUNvbnRleHRFbnVtLlJFU1BPTkQgPyAnUmVzcG9uc2UgZGV0YWlsJyA6ICdRdWVyeSBCb2R5JyB8IHJweFRyYW5zbGF0ZSB9fVxuICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8cCBpZD1cImJvZHktZXJyb3JcIiBjbGFzcz1cImdvdnVrLWVycm9yLW1lc3NhZ2VcIlxuICAgICAgICAgICAqbmdJZj1cInN1Ym1pdHRlZCAmJiBmb3JtR3JvdXAuZ2V0KCdib2R5Jyk/Lmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJnb3Z1ay12aXN1YWxseS1oaWRkZW5cIj57eyAnRXJyb3I6JyB8IHJweFRyYW5zbGF0ZSB9fSA8L3NwYW4+e3sgcXVlcnlDcmVhdGVDb250ZXh0ID09PSBxdWVyeUNyZWF0ZUNvbnRleHRFbnVtLlJFU1BPTkQgPyByYWlzZVF1ZXJ5RXJyb3JNZXNzYWdlcy5SRVNQT05EX1FVRVJZX0JPRFkgOiByYWlzZVF1ZXJ5RXJyb3JNZXNzYWdlcy5RVUVSWV9CT0RZIHwgcnB4VHJhbnNsYXRlIH19XG4gICAgICAgIDwvcD5cbiAgICAgICAgPHRleHRhcmVhIFtmb3JtQ29udHJvbE5hbWVdPVwiJ2JvZHknXCIgY2xhc3M9XCJnb3Z1ay10ZXh0YXJlYVwiXG4gICAgICAgICAgICAgICAgICBbY2xhc3MuZ292dWstdGV4dGFyZWEtLWVycm9yXT1cInN1Ym1pdHRlZCAmJiBmb3JtR3JvdXAuZ2V0KCdib2R5Jyk/Lmhhc0Vycm9yKCdyZXF1aXJlZCcpXCIgaWQ9XCJib2R5XCJcbiAgICAgICAgICAgICAgICAgIG5hbWU9XCJib2R5XCIgcm93cz1cIjVcIiBhcmlhLWRlc2NyaWJlZGJ5PVwiYm9keS1oaW50IGJvZHktZXJyb3JcIj5cbiAgICAgIDwvdGV4dGFyZWE+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cInF1ZXJ5Q3JlYXRlQ29udGV4dCA9PT0gcXVlcnlDcmVhdGVDb250ZXh0RW51bS5SRVNQT05EXCI+XG4gIDxjY2QtY2xvc2UtcXVlcnkgKm5nSWY9XCIhaGFzUmVzcG9uZGVkVG9RdWVyeVwiXG4gICAgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIj5cbiAgPC9jY2QtY2xvc2UtcXVlcnk+XG48L25nLWNvbnRhaW5lcj4iXX0=
240
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(QueryWriteRespondToQueryComponent, { className: "QueryWriteRespondToQueryComponent", filePath: "lib/shared/components/palette/query-management/components/query-write/query-write-respond-to-query/query-write-respond-to-query.component.ts", lineNumber: 18 }); })();
241
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktd3JpdGUtcmVzcG9uZC10by1xdWVyeS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2NvbXBvbmVudHMvcGFsZXR0ZS9xdWVyeS1tYW5hZ2VtZW50L2NvbXBvbmVudHMvcXVlcnktd3JpdGUvcXVlcnktd3JpdGUtcmVzcG9uZC10by1xdWVyeS9xdWVyeS13cml0ZS1yZXNwb25kLXRvLXF1ZXJ5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9wYWxldHRlL3F1ZXJ5LW1hbmFnZW1lbnQvY29tcG9uZW50cy9xdWVyeS13cml0ZS9xdWVyeS13cml0ZS1yZXNwb25kLXRvLXF1ZXJ5L3F1ZXJ5LXdyaXRlLXJlc3BvbmQtdG8tcXVlcnkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEMsT0FBTyxFQUNMLGdCQUFnQixFQUNqQixNQUFNLDJDQUEyQyxDQUFDO0FBQ25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNuRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RCxPQUFPLEVBQWtELGtCQUFrQixFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuSSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7Ozs7O0lDSHZELG1EQUErRzs7O0lBQWhGLGdEQUEyQjs7O0lBeUJwRCxBQUZGLDZCQUNvRSxlQUM5QjtJQUFBLFlBQThCOztJQUFBLGlCQUFPO0lBQUEsWUFDM0U7O0lBQUEsaUJBQUk7OztJQURrQyxlQUE4QjtJQUE5Qiw4REFBOEI7SUFBTyxlQUMzRTtJQUQyRSx5TkFDM0U7OztJQWZKLEFBREYsMkJBQWtDLGFBQ0o7SUFDMUIsWUFDRjs7SUFBQSxpQkFBSztJQU1DLEFBREYsQUFGRixBQURGLCtCQUE2QixjQUVxRSxjQUM3RCxnQkFDK0M7SUFDNUUsWUFDRjs7SUFDRixBQURFLGlCQUFRLEVBQ0o7SUFDTiw4RkFDb0U7SUFHcEUscUNBRXVFO0lBQ3pFLHVCQUFBO0lBR0osQUFERSxBQURFLEFBREEsaUJBQVcsRUFDTCxFQUNGLEVBQ0Y7Ozs7OztJQXJCRixlQUNGO0lBREUsOEtBQ0Y7SUFFSyxlQUF1QjtJQUF2Qiw0Q0FBdUI7SUFFckIsY0FBMEY7SUFBMUYsdUpBQTBGO0lBR3pGLGVBQ0Y7SUFERSw4SkFDRjtJQUdFLGVBQThEO0lBQTlELG1JQUE4RDtJQUl4RCxjQUF3RjtJQUF4RixxSkFBd0Y7SUFEeEYsd0NBQTBCOzs7SUFsQjVDLDhCQUE0QztJQUMxQywyRkFBa0M7SUF3QnBDLGlCQUFNOzs7SUF4QkUsY0FBMEI7SUFBMUIsa0RBQTBCOzs7SUEyQmhDLHNDQUVrQjs7O0lBRGhCLDRDQUF1Qjs7O0lBRjNCLDZCQUE0RTtJQUMxRSwySEFDMEI7Ozs7SUFEUixjQUEwQjtJQUExQixrREFBMEI7O0FEM0I5QyxNQUFNLE9BQU8saUNBQWlDO0lBMkJmO0lBQ1Y7SUFDVDtJQTVCTSxTQUFTLENBQWdCO0lBQ3pCLFNBQVMsQ0FBWTtJQUNyQixrQkFBa0IsQ0FBcUI7SUFDdkMsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUNsQixzQkFBc0IsQ0FBMEI7SUFDaEQsUUFBUSxDQUFDO0lBQ1QsaUJBQWlCLENBQVU7SUFDM0IsU0FBUyxHQUE0QixJQUFJLENBQUM7SUFFekMsZ0JBQWdCLEdBQUcsSUFBSSxZQUFZLEVBQTRCLENBQUM7SUFDaEUsdUJBQXVCLEdBQTBCLElBQUksWUFBWSxFQUFFLENBQUM7SUFFckUsc0JBQXNCLEdBQUcsa0JBQWtCLENBQUM7SUFDNUMsdUJBQXVCLEdBQUcsc0JBQXNCLENBQUM7SUFDMUQsTUFBTSxDQUFTO0lBQ2YsV0FBVyxDQUFTO0lBQ3BCLFdBQVcsQ0FBQztJQUNaLG1CQUFtQixDQUFTO0lBQzVCLGFBQWEsQ0FBNEI7SUFFekMsbUJBQW1CLEdBQVksS0FBSyxDQUFDO0lBQ3JDLFNBQVMsQ0FBUztJQUVqQixNQUFNLENBQVUsa0JBQWtCLEdBQUcsR0FBRyxDQUFDO0lBQ3pDLE1BQU0sQ0FBVSxtQkFBbUIsR0FBRyxHQUFHLENBQUM7SUFFbEQsWUFBNkIsWUFBMEIsRUFDcEMsS0FBcUIsRUFDOUIsc0JBQThDO1FBRjNCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQ3BDLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQzlCLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7SUFBRyxDQUFDO0lBRXJELFFBQVE7UUFDYixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUM7UUFDbEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDO1FBQzdDLElBQUksQ0FBQyxZQUFZLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQ3JFLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxFQUFFO2dCQUNwQixJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztZQUNqQyxDQUFDO1lBQ0QsS0FBSyxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBQ2IsT0FBTyxDQUFDLEtBQUssQ0FBQyxnQ0FBZ0MsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUN2RCxDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsSUFBSSxJQUFJLENBQUMsc0JBQXNCLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQy9FLHdDQUF3QztZQUN0QyxPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNwQyxPQUFPLENBQUMsS0FBSyxDQUFDLHlDQUF5QyxFQUFFLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1lBQ3RGLE9BQU87UUFDVCxDQUFDO1FBRUQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDO1FBQ3BELElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDcEIsT0FBTyxDQUFDLElBQUksQ0FBQyxxQ0FBcUMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNoRixPQUFPO1FBQ1QsQ0FBQztRQUVELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxzQkFBc0I7YUFDNUMsT0FBTyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxRQUFRLEVBQUUsWUFBWSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRXZELE1BQU0sZUFBZSxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQ3RDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQUUsS0FBSyxJQUFJLENBQUMsU0FBUyxDQUNuRCxFQUFFLEtBQUssQ0FBQztRQUVULElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUNyQixPQUFPLENBQUMsSUFBSSxDQUFDLG1DQUFtQyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNsRSxPQUFPO1FBQ1QsQ0FBQztRQUVELE1BQU0sc0JBQXNCLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FDN0QsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLFVBQVUsRUFBRSxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQ3BGLENBQUM7UUFFRixNQUFNLGlCQUFpQixHQUFHLElBQUksYUFBYSxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDcEUsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFdBQVcsS0FBSyxpQ0FBaUMsQ0FBQyxrQkFBa0I7WUFDeEYsQ0FBQyxDQUFDLENBQUMsZUFBZSxFQUFFLFFBQVEsSUFBSSxlQUFlLEVBQUUsRUFBRSxDQUFDO1lBQ3BELENBQUMsQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDO1FBRXhCLElBQUksQ0FBQyxhQUFhLEdBQUcsaUJBQWlCLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsS0FBSyxRQUFRLENBQUMsQ0FBQztRQUN4RixJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxjQUFjLENBQUM7UUFDOUQsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FBQztRQUNoRSxJQUFJLG1CQUFtQixFQUFFLENBQUM7WUFDeEIsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztnQkFDM0IsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLGlDQUFpQyxFQUFFLENBQUM7Z0JBQ3RELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDbkMsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRU0sWUFBWSxDQUFDLEtBQWM7UUFDaEMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLEtBQUssQ0FBQztRQUNqQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFTSw0QkFBNEI7UUFDakMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNwQixPQUFPLENBQUMsSUFBSSxDQUFDLHNEQUFzRCxDQUFDLENBQUM7WUFDckUsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBRUQsSUFBSSxDQUFDLHNCQUFzQixDQUFDLDRCQUE0QixDQUN0RCxJQUFJLENBQUMsU0FBUyxFQUNkLElBQUksQ0FBQyxrQkFBa0IsRUFDdkIsSUFBSSxDQUFDLFdBQVcsRUFDaEIsSUFBSSxDQUFDLFNBQVMsQ0FDZixDQUFDO1FBRUYsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU8saUNBQWlDO1FBQ3ZDLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDLGlDQUFpQyxDQUNsRSxJQUFJLENBQUMsU0FBUyxFQUNkLElBQUksQ0FBQyxrQkFBa0IsRUFDdkIsSUFBSSxDQUFDLFNBQVMsRUFDZCxJQUFJLENBQUMsU0FBUyxDQUNmLENBQUM7SUFDSixDQUFDOzJIQXpIVSxpQ0FBaUM7NkRBQWpDLGlDQUFpQztZQ2YxQyxBQURGLEFBREYsOEJBQXFDLGFBQ0UsYUFDTjtZQUFBLFlBQXlDOztZQUFBLGlCQUFNO1lBQzVFLDZCQUFvRDtZQUFBLFlBQW9DOztZQUMxRixBQUQwRixpQkFBSyxFQUN6RjtZQUVOLDhCQUFxQztZQUNuQyxzSUFBK0U7WUFDakYsaUJBQU07WUFHSixBQURGLDRCQUFLLDRCQUdxQztZQUF0Qyw4SUFBZ0Isd0JBQW9CLElBQUM7WUFFM0MsQUFERSxBQUQwQyxpQkFBb0IsRUFDeEQsRUFDRjtZQTRCTixBQTNCQSxvRkFBNEMseUZBMkJnQzs7WUF6QzNDLGVBQXlDO1lBQXpDLGdFQUF5QztZQUNsQixlQUFvQztZQUFwQywyREFBb0M7WUFJNUIsZUFBaUI7WUFBakIsc0NBQWlCO1lBSTFELGVBQXVCO1lBQ3hDLEFBRGlCLHlDQUF1QixnREFDRztZQUlyQixjQUFjO1lBQWQsbUNBQWM7WUEyQjNCLGNBQTJEO1lBQTNELG9GQUEyRDs7O2lGRDFCN0QsaUNBQWlDO2NBTjdDLFNBQVM7MkJBQ0Usa0NBQWtDOytHQU01QixTQUFTO2tCQUF4QixLQUFLO1lBQ1UsU0FBUztrQkFBeEIsS0FBSztZQUNVLGtCQUFrQjtrQkFBakMsS0FBSztZQUNVLFNBQVM7a0JBQXhCLEtBQUs7WUFDVSxzQkFBc0I7a0JBQXJDLEtBQUs7WUFDVSxRQUFRO2tCQUF2QixLQUFLO1lBQ1UsaUJBQWlCO2tCQUFoQyxLQUFLO1lBQ1UsU0FBUztrQkFBeEIsS0FBSztZQUVXLGdCQUFnQjtrQkFBaEMsTUFBTTtZQUNVLHVCQUF1QjtrQkFBdkMsTUFBTTs7a0ZBWEksaUNBQWlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtcbiAgQ2FzZUV2ZW50VHJpZ2dlclxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvc2hhcmVkL2RvbWFpbic7XG5pbXBvcnQgeyBDYXNlTm90aWZpZXIgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9jYXNlLWVkaXRvci9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBSYWlzZVF1ZXJ5RXJyb3JNZXNzYWdlIH0gZnJvbSAnLi4vLi4vLi4vZW51bXMnO1xuaW1wb3J0IHsgQ2FzZVF1ZXJpZXNDb2xsZWN0aW9uLCBRbUNhc2VRdWVyaWVzQ29sbGVjdGlvbiwgUXVlcnlDcmVhdGVDb250ZXh0LCBRdWVyeUxpc3REYXRhLCBRdWVyeUxpc3RJdGVtIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IFF1ZXJ5TWFuYWdlbWVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcyc7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjY2QtcXVlcnktd3JpdGUtcmVzcG9uZC10by1xdWVyeScsXG4gIHRlbXBsYXRlVXJsOiAnLi9xdWVyeS13cml0ZS1yZXNwb25kLXRvLXF1ZXJ5LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcXVlcnktd3JpdGUtcmVzcG9uZC10by1xdWVyeS5jb21wb25lbnQuc2NzcyddXG59KVxuXG5leHBvcnQgY2xhc3MgUXVlcnlXcml0ZVJlc3BvbmRUb1F1ZXJ5Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBwdWJsaWMgcXVlcnlJdGVtOiBRdWVyeUxpc3RJdGVtO1xuICBASW5wdXQoKSBwdWJsaWMgZm9ybUdyb3VwOiBGb3JtR3JvdXA7XG4gIEBJbnB1dCgpIHB1YmxpYyBxdWVyeUNyZWF0ZUNvbnRleHQ6IFF1ZXJ5Q3JlYXRlQ29udGV4dDtcbiAgQElucHV0KCkgcHVibGljIHN1Ym1pdHRlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgY2FzZVF1ZXJpZXNDb2xsZWN0aW9uczogQ2FzZVF1ZXJpZXNDb2xsZWN0aW9uW107XG4gIEBJbnB1dCgpIHB1YmxpYyBzaG93Rm9ybTtcbiAgQElucHV0KCkgcHVibGljIHRyaWdnZXJTdWJtaXNzaW9uOiBib29sZWFuO1xuICBASW5wdXQoKSBwdWJsaWMgZXZlbnREYXRhOiBDYXNlRXZlbnRUcmlnZ2VyIHwgbnVsbCA9IG51bGw7XG5cbiAgQE91dHB1dCgpIHB1YmxpYyBxdWVyeURhdGFDcmVhdGVkID0gbmV3IEV2ZW50RW1pdHRlciA8UW1DYXNlUXVlcmllc0NvbGxlY3Rpb24+KCk7XG4gIEBPdXRwdXQoKSBwdWJsaWMgaGFzUmVzcG9uZGVkVG9RdWVyeVRhc2s6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgcXVlcnlDcmVhdGVDb250ZXh0RW51bSA9IFF1ZXJ5Q3JlYXRlQ29udGV4dDtcbiAgcHVibGljIHJlYWRvbmx5IHJhaXNlUXVlcnlFcnJvck1lc3NhZ2VzID0gUmFpc2VRdWVyeUVycm9yTWVzc2FnZTtcbiAgcHVibGljIGNhc2VJZDogc3RyaW5nO1xuICBwdWJsaWMgcXVlcnlJdGVtSWQ6IHN0cmluZztcbiAgcHVibGljIGNhc2VEZXRhaWxzO1xuICBwdWJsaWMgcXVlcnlSZXNwb25zZVN0YXR1czogc3RyaW5nO1xuICBwdWJsaWMgcXVlcnlMaXN0RGF0YTogUXVlcnlMaXN0SXRlbSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgaGFzUmVzcG9uZGVkVG9RdWVyeTogYm9vbGVhbiA9IGZhbHNlO1xuICBwdWJsaWMgbWVzc2FnZUlkOiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBzdGF0aWMgcmVhZG9ubHkgUVVFUllfSVRFTV9SRVNQT05EID0gJzMnO1xuICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBRVUVSWV9JVEVNX0ZPTExPV1VQID0gJzQnO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgY2FzZU5vdGlmaWVyOiBDYXNlTm90aWZpZXIsXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSBxdWVyeU1hbmFnZW1lbnRTZXJ2aWNlOiBRdWVyeU1hbmFnZW1lbnRTZXJ2aWNlKSB7fVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnF1ZXJ5SXRlbUlkID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5wYXJhbXMucWlkO1xuICAgIHRoaXMuY2FzZUlkID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5wYXJhbXMuY2lkO1xuICAgIHRoaXMuY2FzZU5vdGlmaWVyLmZldGNoQW5kUmVmcmVzaCh0aGlzLmNhc2VJZCkucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKGNhc2VEZXRhaWxzKSA9PiB7XG4gICAgICAgIHRoaXMuY2FzZURldGFpbHMgPSBjYXNlRGV0YWlscztcbiAgICAgIH0sXG4gICAgICBlcnJvcjogKGVycikgPT4ge1xuICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciByZXRyaWV2aW5nIGNhc2UgZGV0YWlsczonLCBlcnIpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5jYXNlUXVlcmllc0NvbGxlY3Rpb25zIHx8IHRoaXMuY2FzZVF1ZXJpZXNDb2xsZWN0aW9ucy5sZW5ndGggPT09IDApIHtcbiAgICAvLyBTaWxlbnQgcmV0dXJuIOKAkyB0aGlzIGlzIG5vdCBhbiBlcnJvci5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuY2FzZVF1ZXJpZXNDb2xsZWN0aW9uc1swXSkge1xuICAgICAgY29uc29sZS5lcnJvcignY2FzZVF1ZXJpZXNDb2xsZWN0aW9uc1swXSBpcyB1bmRlZmluZWQhJywgdGhpcy5jYXNlUXVlcmllc0NvbGxlY3Rpb25zKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLm1lc3NhZ2VJZCA9IHRoaXMucm91dGUuc25hcHNob3QucGFyYW1zPy5kYXRhaWQ7XG4gICAgaWYgKCF0aGlzLm1lc3NhZ2VJZCkge1xuICAgICAgY29uc29sZS53YXJuKCdObyBtZXNzYWdlSWQgZm91bmQgaW4gcm91dGUgcGFyYW1zOicsIHRoaXMucm91dGUuc25hcHNob3QucGFyYW1zKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBhbGxNZXNzYWdlcyA9IHRoaXMuY2FzZVF1ZXJpZXNDb2xsZWN0aW9uc1xuICAgICAgLmZsYXRNYXAoKGNhc2VEYXRhKSA9PiBjYXNlRGF0YT8uY2FzZU1lc3NhZ2VzIHx8IFtdKTtcblxuICAgIGNvbnN0IG1hdGNoaW5nTWVzc2FnZSA9IGFsbE1lc3NhZ2VzLmZpbmQoXG4gICAgICAobWVzc2FnZSkgPT4gbWVzc2FnZT8udmFsdWU/LmlkID09PSB0aGlzLm1lc3NhZ2VJZFxuICAgICk/LnZhbHVlO1xuXG4gICAgaWYgKCFtYXRjaGluZ01lc3NhZ2UpIHtcbiAgICAgIGNvbnNvbGUud2FybignTm8gbWF0Y2hpbmcgbWVzc2FnZSBmb3VuZCBmb3IgSUQ6JywgdGhpcy5tZXNzYWdlSWQpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGNhc2VRdWVyaWVzQ29sbGVjdGlvbnMgPSB0aGlzLmNhc2VRdWVyaWVzQ29sbGVjdGlvbnMuZmluZChcbiAgICAgIChjb2xsZWN0aW9uKSA9PiBjb2xsZWN0aW9uPy5jYXNlTWVzc2FnZXMuZmluZCgoYykgPT4gYy52YWx1ZS5pZCA9PT0gdGhpcy5tZXNzYWdlSWQpXG4gICAgKTtcblxuICAgIGNvbnN0IHF1ZXJ5V2l0aENoaWxkcmVuID0gbmV3IFF1ZXJ5TGlzdERhdGEoY2FzZVF1ZXJpZXNDb2xsZWN0aW9ucyk7XG4gICAgY29uc3QgdGFyZ2V0SWQgPSB0aGlzLnF1ZXJ5SXRlbUlkID09PSBRdWVyeVdyaXRlUmVzcG9uZFRvUXVlcnlDb21wb25lbnQuUVVFUllfSVRFTV9SRVNQT05EXG4gICAgICA/IChtYXRjaGluZ01lc3NhZ2U/LnBhcmVudElkIHx8IG1hdGNoaW5nTWVzc2FnZT8uaWQpXG4gICAgICA6IG1hdGNoaW5nTWVzc2FnZT8uaWQ7XG5cbiAgICB0aGlzLnF1ZXJ5TGlzdERhdGEgPSBxdWVyeVdpdGhDaGlsZHJlbj8ucXVlcmllcy5maW5kKChxdWVyeSkgPT4gcXVlcnk/LmlkID09PSB0YXJnZXRJZCk7XG4gICAgdGhpcy5xdWVyeVJlc3BvbnNlU3RhdHVzID0gdGhpcy5xdWVyeUxpc3REYXRhPy5yZXNwb25zZVN0YXR1cztcbiAgICBjb25zdCBpc0NvbGxlY3Rpb25EYXRhU2V0ID0gdGhpcy5zZXRDYXNlUXVlcmllc0NvbGxlY3Rpb25EYXRhKCk7XG4gICAgaWYgKGlzQ29sbGVjdGlvbkRhdGFTZXQpIHtcbiAgICAgIGlmICh0aGlzLnRyaWdnZXJTdWJtaXNzaW9uKSB7XG4gICAgICAgIGNvbnN0IGRhdGEgPSB0aGlzLmdlbmVyYXRlQ2FzZVF1ZXJpZXNDb2xsZWN0aW9uRGF0YSgpO1xuICAgICAgICB0aGlzLnF1ZXJ5RGF0YUNyZWF0ZWQuZW1pdChkYXRhKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaGFzUmVzcG9uZGVkKHZhbHVlOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5oYXNSZXNwb25kZWRUb1F1ZXJ5ID0gdmFsdWU7XG4gICAgdGhpcy5oYXNSZXNwb25kZWRUb1F1ZXJ5VGFzay5lbWl0KHZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRDYXNlUXVlcmllc0NvbGxlY3Rpb25EYXRhKCk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5ldmVudERhdGEpIHtcbiAgICAgIGNvbnNvbGUud2FybignRXZlbnQgZGF0YSBub3QgYXZhaWxhYmxlOyBza2lwcGluZyBjb2xsZWN0aW9uIHNldHVwLicpO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHRoaXMucXVlcnlNYW5hZ2VtZW50U2VydmljZS5zZXRDYXNlUXVlcmllc0NvbGxlY3Rpb25EYXRhKFxuICAgICAgdGhpcy5ldmVudERhdGEsXG4gICAgICB0aGlzLnF1ZXJ5Q3JlYXRlQ29udGV4dCxcbiAgICAgIHRoaXMuY2FzZURldGFpbHMsXG4gICAgICB0aGlzLm1lc3NhZ2VJZFxuICAgICk7XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHByaXZhdGUgZ2VuZXJhdGVDYXNlUXVlcmllc0NvbGxlY3Rpb25EYXRhKCk6IFFtQ2FzZVF1ZXJpZXNDb2xsZWN0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5xdWVyeU1hbmFnZW1lbnRTZXJ2aWNlLmdlbmVyYXRlQ2FzZVF1ZXJpZXNDb2xsZWN0aW9uRGF0YShcbiAgICAgIHRoaXMuZm9ybUdyb3VwLFxuICAgICAgdGhpcy5xdWVyeUNyZWF0ZUNvbnRleHQsXG4gICAgICB0aGlzLnF1ZXJ5SXRlbSxcbiAgICAgIHRoaXMubWVzc2FnZUlkXG4gICAgKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImdvdnVrLSEtbWFyZ2luLWJvdHRvbS02XCI+XG4gIDxkaXYgY2xhc3M9XCJnb3Z1ay0hLW1hcmdpbi1ib3R0b20tNlwiPlxuICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1jYXB0aW9uLWxcIj57eyAnUmVzcG9uZCB0byBhIHF1ZXJ5JyB8IHJweFRyYW5zbGF0ZSB9fTwvZGl2PlxuICAgIDxoMSBjbGFzcz1cImdvdnVrLWhlYWRpbmctbCBnb3Z1ay0hLW1hcmdpbi1ib3R0b20tMFwiPnt7ICdRdWVyeSBkZXRhaWxzJyB8IHJweFRyYW5zbGF0ZSB9fTwvaDE+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJnb3Z1ay0hLW1hcmdpbi1ib3R0b20tNFwiPlxuICAgIDxjY2QtcXVlcnktY2FzZS1kZXRhaWxzLWhlYWRlciBbY2FzZURldGFpbHNdPVwiY2FzZURldGFpbHNcIiAqbmdJZj1cImNhc2VEZXRhaWxzXCI+PC9jY2QtcXVlcnktY2FzZS1kZXRhaWxzLWhlYWRlcj5cbiAgPC9kaXY+XG5cbiAgPGRpdj5cbiAgICA8Y2NkLXF1ZXJ5LWRldGFpbHMgW3F1ZXJ5XT1cInF1ZXJ5TGlzdERhdGFcIlxuICAgICAgW3F1ZXJ5UmVzcG9uc2VTdGF0dXNdPVwicXVlcnlSZXNwb25zZVN0YXR1c1wiXG4gICAgICAoaGFzUmVzcG9uZGVkKT1cImhhc1Jlc3BvbmRlZCgkZXZlbnQpXCI+PC9jY2QtcXVlcnktZGV0YWlscz5cbiAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJxdWVyeS1yZXNwb25kXCIgKm5nSWY9XCJzaG93Rm9ybVwiPlxuICA8ZGl2ICpuZ0lmPVwiIWhhc1Jlc3BvbmRlZFRvUXVlcnlcIj5cbiAgICA8aDEgY2xhc3M9XCJnb3Z1ay1oZWFkaW5nLW1cIj5cbiAgICAgIHt7IHF1ZXJ5Q3JlYXRlQ29udGV4dCA9PT0gcXVlcnlDcmVhdGVDb250ZXh0RW51bS5SRVNQT05EID8gJ1Jlc3BvbmQgdG8gYSBxdWVyeScgOiAnQXNrIGEgZm9sbG93LXVwIHF1ZXN0aW9uJyB8IHJweFRyYW5zbGF0ZSB9fVxuICAgIDwvaDE+XG5cbiAgICA8ZGl2IFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZ292dWstZm9ybS1ncm91cCBib2R5LXRleHRhcmVhXCJcbiAgICAgICAgICAgW2NsYXNzLmdvdnVrLWZvcm0tZ3JvdXAtLWVycm9yXT1cInN1Ym1pdHRlZCAmJiBmb3JtR3JvdXAuZ2V0KCdib2R5Jyk/Lmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1sYWJlbC13cmFwcGVyXCI+XG4gICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZ292dWstbGFiZWwgZ292dWstbGFiZWwtLW0gZ292dWstIS1mb250LXdlaWdodC1ib2xkXCIgZm9yPVwiYm9keVwiPlxuICAgICAgICAgICAge3sgcXVlcnlDcmVhdGVDb250ZXh0ID09PSBxdWVyeUNyZWF0ZUNvbnRleHRFbnVtLlJFU1BPTkQgPyAnUmVzcG9uc2UgZGV0YWlsJyA6ICdRdWVyeSBCb2R5JyB8IHJweFRyYW5zbGF0ZSB9fVxuICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8cCBpZD1cImJvZHktZXJyb3JcIiBjbGFzcz1cImdvdnVrLWVycm9yLW1lc3NhZ2VcIlxuICAgICAgICAgICAqbmdJZj1cInN1Ym1pdHRlZCAmJiBmb3JtR3JvdXAuZ2V0KCdib2R5Jyk/Lmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJnb3Z1ay12aXN1YWxseS1oaWRkZW5cIj57eyAnRXJyb3I6JyB8IHJweFRyYW5zbGF0ZSB9fSA8L3NwYW4+e3sgcXVlcnlDcmVhdGVDb250ZXh0ID09PSBxdWVyeUNyZWF0ZUNvbnRleHRFbnVtLlJFU1BPTkQgPyByYWlzZVF1ZXJ5RXJyb3JNZXNzYWdlcy5SRVNQT05EX1FVRVJZX0JPRFkgOiByYWlzZVF1ZXJ5RXJyb3JNZXNzYWdlcy5RVUVSWV9CT0RZIHwgcnB4VHJhbnNsYXRlIH19XG4gICAgICAgIDwvcD5cbiAgICAgICAgPHRleHRhcmVhIFtmb3JtQ29udHJvbE5hbWVdPVwiJ2JvZHknXCIgY2xhc3M9XCJnb3Z1ay10ZXh0YXJlYVwiXG4gICAgICAgICAgICAgICAgICBbY2xhc3MuZ292dWstdGV4dGFyZWEtLWVycm9yXT1cInN1Ym1pdHRlZCAmJiBmb3JtR3JvdXAuZ2V0KCdib2R5Jyk/Lmhhc0Vycm9yKCdyZXF1aXJlZCcpXCIgaWQ9XCJib2R5XCJcbiAgICAgICAgICAgICAgICAgIG5hbWU9XCJib2R5XCIgcm93cz1cIjVcIiBhcmlhLWRlc2NyaWJlZGJ5PVwiYm9keS1oaW50IGJvZHktZXJyb3JcIj5cbiAgICAgIDwvdGV4dGFyZWE+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cInF1ZXJ5Q3JlYXRlQ29udGV4dCA9PT0gcXVlcnlDcmVhdGVDb250ZXh0RW51bS5SRVNQT05EXCI+XG4gIDxjY2QtY2xvc2UtcXVlcnkgKm5nSWY9XCIhaGFzUmVzcG9uZGVkVG9RdWVyeVwiXG4gICAgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIj5cbiAgPC9jY2QtY2xvc2UtcXVlcnk+XG48L25nLWNvbnRhaW5lcj4iXX0=
@@ -0,0 +1,7 @@
1
+ export const CASE_QUERIES_COLLECTION_ID = 'CaseQueriesCollection';
2
+ export const FIELD_TYPE_COMPLEX = 'Complex';
3
+ export const DISPLAY_CONTEXT_READONLY = 'READONLY';
4
+ export const QM_SELECT_FIRST_COLLECTION = 'selectFirstCollection';
5
+ export const QM_COLLECTION_PROMPT = 'promptQmCollection';
6
+ export const CIVIL_JURISDICTION = 'CIVIL';
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktbWFuYWdlbWVudC5jb25zdGFudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2NvbXBvbmVudHMvcGFsZXR0ZS9xdWVyeS1tYW5hZ2VtZW50L2NvbnN0YW50cy9xdWVyeS1tYW5hZ2VtZW50LmNvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBRyx1QkFBdUIsQ0FBQztBQUNsRSxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxTQUFTLENBQUM7QUFDNUMsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsVUFBVSxDQUFDO0FBQ25ELE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLHVCQUF1QixDQUFDO0FBQ2xFLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLG9CQUFvQixDQUFDO0FBQ3pELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLE9BQU8sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBDQVNFX1FVRVJJRVNfQ09MTEVDVElPTl9JRCA9ICdDYXNlUXVlcmllc0NvbGxlY3Rpb24nO1xuZXhwb3J0IGNvbnN0IEZJRUxEX1RZUEVfQ09NUExFWCA9ICdDb21wbGV4JztcbmV4cG9ydCBjb25zdCBESVNQTEFZX0NPTlRFWFRfUkVBRE9OTFkgPSAnUkVBRE9OTFknO1xuZXhwb3J0IGNvbnN0IFFNX1NFTEVDVF9GSVJTVF9DT0xMRUNUSU9OID0gJ3NlbGVjdEZpcnN0Q29sbGVjdGlvbic7XG5leHBvcnQgY29uc3QgUU1fQ09MTEVDVElPTl9QUk9NUFQgPSAncHJvbXB0UW1Db2xsZWN0aW9uJztcbmV4cG9ydCBjb25zdCBDSVZJTF9KVVJJU0RJQ1RJT04gPSAnQ0lWSUwnO1xuXG4iXX0=
@@ -35,25 +35,38 @@ export class QueryListItem {
35
35
  if (childrenCount === 0) {
36
36
  return this.lastSubmittedMessage.name;
37
37
  }
38
- let index;
39
- if (childrenCount === 1) {
40
- index = 0;
41
- }
42
- else {
43
- index = childrenCount % 2 === 1 ? childrenCount - 1 : childrenCount - 2;
44
- }
45
- return this.children[index].name;
38
+ return this.children[childrenCount - 1].name;
46
39
  }
47
40
  get lastSubmittedDate() {
48
41
  const childrenCount = this.children.length;
49
- if (childrenCount <= 1) {
42
+ const lastChild = this.children[childrenCount - 1];
43
+ // 1. Check for legacy: <= 1 child with no messageType
44
+ const allChildrenLackMessageType = this.children.every((child) => !child.messageType);
45
+ if (childrenCount <= 1 && allChildrenLackMessageType) {
50
46
  return new Date(this.lastSubmittedMessage.createdOn);
51
47
  }
52
- let index;
53
- if (childrenCount > 1) {
54
- index = childrenCount % 2 === 0 ? childrenCount - 1 : childrenCount - 2;
48
+ // 2. Check if any RESPOND exists
49
+ const hasRespond = this.children.some((child) => child.messageType === QueryCreateContext.RESPOND);
50
+ // 3. Check if all children are FOLLOWUPs and none are RESPONDs
51
+ const onlyFollowUps = this.children.every((child) => child.messageType === QueryCreateContext.FOLLOWUP);
52
+ if (onlyFollowUps && !hasRespond) {
53
+ return new Date(lastChild.createdOn);
55
54
  }
56
- return new Date(this.children[index].createdOn);
55
+ // 4. If RESPOND exists, get latest FOLLOWUP
56
+ // If no RESPOND, but there is at least one FOLLOWUP, return the last FOLLOWUP
57
+ const lastFollowUp = [...this.children]
58
+ .reverse()
59
+ .find((child) => child.messageType === QueryCreateContext.FOLLOWUP);
60
+ if (lastFollowUp) {
61
+ return new Date(lastFollowUp.createdOn);
62
+ }
63
+ // 5. Legacy fallback: no messageType at all
64
+ if (allChildrenLackMessageType) {
65
+ const index = childrenCount % 2 === 0 ? childrenCount - 1 : childrenCount - 2;
66
+ return new Date(this.children[index]?.createdOn);
67
+ }
68
+ // 6. Final fallback: return last child's date
69
+ return new Date(this.lastSubmittedMessage.createdOn);
57
70
  }
58
71
  get lastResponseBy() {
59
72
  return this.children?.length > 0 ? this.lastSubmittedMessage.name : '';
@@ -63,6 +76,11 @@ export class QueryListItem {
63
76
  if (childrenCount === 0) {
64
77
  return null;
65
78
  }
79
+ const lastChild = this.children[childrenCount - 1];
80
+ if (lastChild?.messageType === QueryCreateContext.FOLLOWUP &&
81
+ !this.children.some((child) => child.messageType === QueryCreateContext.RESPOND)) {
82
+ return null;
83
+ }
66
84
  let index;
67
85
  if (childrenCount === 1) {
68
86
  index = 0;
@@ -106,4 +124,4 @@ export class QueryListItem {
106
124
  return QueryItemResponseStatus.AWAITING;
107
125
  }
108
126
  }
109
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktbGlzdC1pdGVtLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvcXVlcnktbWFuYWdlbWVudC9tb2RlbHMvcXVlcnktbGlzdC9xdWVyeS1saXN0LWl0ZW0vcXVlcnktbGlzdC1pdGVtLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUMzQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUd6RixNQUFNLE9BQU8sYUFBYTtJQUNqQixFQUFFLENBQVM7SUFDWCxPQUFPLENBQVU7SUFDakIsSUFBSSxDQUFTO0lBQ2IsSUFBSSxDQUFTO0lBQ2IsV0FBVyxHQUE0QixFQUFFLENBQUM7SUFDMUMsZ0JBQWdCLENBQVM7SUFDekIsV0FBVyxDQUFVO0lBQ3JCLFNBQVMsQ0FBTztJQUNoQixTQUFTLENBQVM7SUFDbEIsUUFBUSxDQUFVO0lBQ2xCLFFBQVEsQ0FBVTtJQUNsQixXQUFXLENBQVU7SUFDckIsUUFBUSxHQUFvQixFQUFFLENBQUM7SUFFL0Isb0JBQW9CLEdBQW1CLElBQUksQ0FBQztJQUVuRCxJQUFXLG9CQUFvQjtRQUM3QixNQUFNLHVCQUF1QixHQUFHLENBQUMsSUFBbUIsRUFBaUIsRUFBRTtZQUNyRSxJQUFJLG9CQUFvQixHQUFrQixJQUFJLENBQUM7WUFDL0MsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUM5QyxLQUFLLE1BQU0sS0FBSyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFDbEMsTUFBTSx5QkFBeUIsR0FBRyx1QkFBdUIsQ0FBQyxL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QztnQkFDbkMsQ0FBQyxDQUFDLHVCQUF1QixDQUFDLFNBQVM7Z0JBQ25DLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQUM7UUFDdkMsQ0FBQztRQUVELCtCQUErQjtRQUMvQixPQUFPLHVCQUF1QixDQUFDLFFBQVEsQ0FBQztJQUMxQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBRdWVyeUNyZWF0ZUNvbnRleHQgfSBmcm9tICcuLi8uLic7XG5pbXBvcnQgeyBRdWVyeUl0ZW1SZXNwb25zZVN0YXR1cyB9IGZyb20gJy4uLy4uLy4uL2VudW1zL3F1ZXJ5LWl0ZW0tcmVzcG9uc2Utc3RhdHVzLmVudW0nO1xuaW1wb3J0IHsgQ2FzZU1lc3NhZ2UsIFF1ZXJ5TWVzc2FnZURvY3VtZW50IH0gZnJvbSAnLi4vLi4vY2FzZS1xdWVyaWVzLWNvbGxlY3Rpb24ubW9kZWwnO1xuXG5leHBvcnQgY2xhc3MgUXVlcnlMaXN0SXRlbSBpbXBsZW1lbnRzIENhc2VNZXNzYWdlIHtcbiAgcHVibGljIGlkOiBzdHJpbmc7XG4gIHB1YmxpYyBzdWJqZWN0Pzogc3RyaW5nO1xuICBwdWJsaWMgbmFtZTogc3RyaW5nO1xuICBwdWJsaWMgYm9keTogc3RyaW5nO1xuICBwdWJsaWMgYXR0YWNobWVudHM/OiBRdWVyeU1lc3NhZ2VEb2N1bWVudFtdID0gW107XG4gIHB1YmxpYyBpc0hlYXJpbmdSZWxhdGVkOiBzdHJpbmc7XG4gIHB1YmxpYyBoZWFyaW5nRGF0ZT86IHN0cmluZztcbiAgcHVibGljIGNyZWF0ZWRPbjogRGF0ZTtcbiAgcHVibGljIGNyZWF0ZWRCeTogc3RyaW5nO1xuICBwdWJsaWMgcGFyZW50SWQ/OiBzdHJpbmc7XG4gIHB1YmxpYyBpc0Nsb3NlZD86IHN0cmluZztcbiAgcHVibGljIG1lc3NhZ2VUeXBlPzogc3RyaW5nO1xuICBwdWJsaWMgY2hpbGRyZW46IFF1ZXJ5TGlzdEl0ZW1bXSA9IFtdO1xuXG4gIHB1YmxpYyBtZXNzYWdlSW5kZXhJblBhcmVudD86IG51bWJlciB8IG51bGwgPSBudWxsO1xuXG4gIHB1YmxpYyBnZXQgbGFzdFN1Ym1pdHRlZE1lc3NhZ2UoKTogUXVlcnlMaXN0SXRlbSB7XG4gICAgY29uc3QgZ2V0TGFzdFN1Ym1pdHRlZE1lc3NhZ2UgPSAoaXRlbTogUXVlcnlMaXN0SXRlbSk6IFF1ZXJ5TGlzdEl0ZW0gPT4ge1xuICAgICAgbGV0IGxhc3RTdWJtaXR0ZWRNZXNzYWdlOiBRdWVyeUxpc3RJdGVtID0gaXRlbTtcbiAgICAgIGlmIChpdGVtLmNoaWxkcmVuICYmIGl0ZW0uY2hpbGRyZW4ubGVuZ3RoID4gMSkge1xuICAgICAgICBmb3IgKGNvbnN0IGNoaWxkIG9mIGl0ZW0uY2hpbGRyZW4pIHtcbiAgICAgICAgICBjb25zdCBjaGlsZExhc3RTdWJtaXR0ZWRNZXNzYWdlID0gZ2V0TGFzdFN1Ym1pdHRlZE1lc3NhZ2UoY2hpbGQpO1xuICAgICAgICAgIGlmIChjaGlsZExhc3RTdWJtaXR0ZWRNZXNzYWdlLmNyZWF0ZWRPbiA+IGxhc3RTdWJtaXR0ZWRNZXNzYWdlLmNyZWF0ZWRPbikge1xuICAgICAgICAgICAgbGFzdFN1Ym1pdHRlZE1lc3NhZ2UgPSBjaGlsZExhc3RTdWJtaXR0ZWRNZXNzYWdlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIGxhc3RTdWJtaXR0ZWRNZXNzYWdlO1xuICAgIH07XG5cbiAgICByZXR1cm4gZ2V0TGFzdFN1Ym1pdHRlZE1lc3NhZ2UodGhpcyk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGxhc3RTdWJtaXR0ZWRCeSgpOiBzdHJpbmcge1xuICAgIGNvbnN0IGNoaWxkcmVuQ291bnQgPSB0aGlzLmNoaWxkcmVuLmxlbmd0aDtcbiAgICBpZiAoY2hpbGRyZW5Db3VudCA9PT0gMCkge1xuICAgICAgcmV0dXJuIHRoaXMubGFzdFN1Ym1pdHRlZE1lc3NhZ2UubmFtZTtcbiAgICB9XG5cbiAgICBsZXQgaW5kZXg6IG51bWJlcjtcblxuICAgIGlmIChjaGlsZHJlbkNvdW50ID09PSAxKSB7XG4gICAgICBpbmRleCA9IDA7XG4gICAgfSBlbHNlIHtcbiAgICAgIGluZGV4ID0gY2hpbGRyZW5Db3VudCAlIDIgPT09IDEgPyBjaGlsZHJlbkNvdW50IC0gMSA6IGNoaWxkcmVuQ291bnQgLSAyO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmNoaWxkcmVuW2luZGV4XS5uYW1lO1xuICB9XG5cbiAgcHVibGljIGdldCBsYXN0U3VibWl0dGVkRGF0ZSgpOiBEYXRlIHtcbiAgICBjb25zdCBjaGlsZHJlbkNvdW50ID0gdGhpcy5jaGlsZHJlbi5sZW5ndGg7XG4gICAgaWYgKGNoaWxkcmVuQ291bnQgPD0gMSkge1xuICAgICAgcmV0dXJuIG5ldyBEYXRlKHRoaXMubGFzdFN1Ym1pdHRlZE1lc3NhZ2UuY3JlYXRlZE9uKTtcbiAgICB9XG5cbiAgICBsZXQgaW5kZXg6IG51bWJlcjtcblxuICAgIGlmIChjaGlsZHJlbkNvdW50ID4gMSkge1xuICAgICAgaW5kZXggPSBjaGlsZHJlbkNvdW50ICUgMiA9PT0gMCA/IGNoaWxkcmVuQ291bnQgLSAxIDogY2hpbGRyZW5Db3VudCAtIDI7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5ldyBEYXRlKHRoaXMuY2hpbGRyZW5baW5kZXhdLmNyZWF0ZWRPbik7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGxhc3RSZXNwb25zZUJ5KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuY2hpbGRyZW4/Lmxlbmd0aCA+IDAgPyB0aGlzLmxhc3RTdWJtaXR0ZWRNZXNzYWdlLm5hbWUgOiAnJztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbGFzdFJlc3BvbnNlRGF0ZSgpOiBEYXRlIHwgbnVsbCB7XG4gICAgY29uc3QgY2hpbGRyZW5Db3VudCA9IHRoaXMuY2hpbGRyZW4ubGVuZ3RoO1xuICAgIGlmIChjaGlsZHJlbkNvdW50ID09PSAwKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBsZXQgaW5kZXg6IG51bWJlcjtcblxuICAgIGlmIChjaGlsZHJlbkNvdW50ID09PSAxKSB7XG4gICAgICBpbmRleCA9IDA7XG4gICAgfSBlbHNlIHtcbiAgICAgIGluZGV4ID0gY2hpbGRyZW5Db3VudCAlIDIgPT09IDEgPyBjaGlsZHJlbkNvdW50IC0gMSA6IGNoaWxkcmVuQ291bnQgLSAyO1xuICAgIH1cblxuICAgIHJldHVybiBuZXcgRGF0ZSh0aGlzLmNoaWxkcmVuW2luZGV4XS5jcmVhdGVkT24pO1xuICB9XG5cbiAgcHVibGljIGdldCByZXNwb25zZVN0YXR1cygpOiBRdWVyeUl0ZW1SZXNwb25zZVN0YXR1cyB7XG4gICAgY29uc3QgaXNUaHJlYWRDbG9zZWQgPSAoaXRlbTogUXVlcnlMaXN0SXRlbSk6IGJvb2xlYW4gPT4ge1xuICAgICAgaWYgKGl0ZW0uaXNDbG9zZWQgPT09ICdZZXMnKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGl0ZW0uY2hpbGRyZW4/LnNvbWUoKGNoaWxkKSA9PiBpc1RocmVhZENsb3NlZChjaGlsZCkpIHx8IGZhbHNlO1xuICAgIH07XG5cbiAgICBpZiAoaXNUaHJlYWRDbG9zZWQodGhpcykpIHtcbiAgICAgIHJldHVybiBRdWVyeUl0ZW1SZXNwb25zZVN0YXR1cy5DTE9TRUQ7XG4gICAgfVxuXG4gICAgY29uc3QgbGFzdE1lc3NhZ2VUeXBlID0gdGhpcy5jaGlsZHJlbj8ubGVuZ3RoXG4gICAgICA/IHRoaXMuY2hpbGRyZW5bdGhpcy5jaGlsZHJlbi5sZW5ndGggLSAxXT8ubWVzc2FnZVR5cGVcbiAgICAgIDogdW5kZWZpbmVkO1xuXG4gICAgaWYgKGxhc3RNZXNzYWdlVHlwZSAmJiBsYXN0TWVzc2FnZVR5cGUgPT09IFF1ZXJ5Q3JlYXRlQ29udGV4dC5SRVNQT05EKSB7XG4gICAgICByZXR1cm4gUXVlcnlJdGVtUmVzcG9uc2VTdGF0dXMuUkVTUE9OREVEO1xuICAgIH0gZWxzZSBpZiAobGFzdE1lc3NhZ2VUeXBlICYmIGxhc3RNZXNzYWdlVHlwZSA9PT0gUXVlcnlDcmVhdGVDb250ZXh0LkZPTExPV1VQKSB7XG4gICAgICByZXR1cm4gUXVlcnlJdGVtUmVzcG9uc2VTdGF0dXMuQVdBSVRJTkc7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMubWVzc2FnZUluZGV4SW5QYXJlbnQgIT09IG51bGwpIHtcbiAgICAgIHJldHVybiB0aGlzLm1lc3NhZ2VJbmRleEluUGFyZW50ICUgMiA9PT0gMFxuICAgICAgICA/IFF1ZXJ5SXRlbVJlc3BvbnNlU3RhdHVzLlJFU1BPTkRFRFxuICAgICAgICA6IFF1ZXJ5SXRlbVJlc3BvbnNlU3RhdHVzLkFXQUlUSU5HO1xuICAgIH1cblxuICAgIC8vIFBhcmVudCBsb2dpYyAoY2hpbGRyZW4gY291bnQpXG4gICAgaWYgKHRoaXMuY2hpbGRyZW4gJiYgdGhpcy5jaGlsZHJlbi5sZW5ndGggPiAwKSB7XG4gICAgICByZXR1cm4gdGhpcy5jaGlsZHJlbi5sZW5ndGggJSAyID09PSAxXG4gICAgICAgID8gUXVlcnlJdGVtUmVzcG9uc2VTdGF0dXMuUkVTUE9OREVEXG4gICAgICAgIDogUXVlcnlJdGVtUmVzcG9uc2VTdGF0dXMuQVdBSVRJTkc7XG4gICAgfVxuXG4gICAgLy8gTm8gY2hpbGRyZW4g4oCUIHN0aWxsIGF3YWl0aW5nXG4gICAgcmV0dXJuIFF1ZXJ5SXRlbVJlc3BvbnNlU3RhdHVzLkFXQUlUSU5HO1xuICB9XG59XG4iXX0=
127
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktbGlzdC1pdGVtLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvcXVlcnktbWFuYWdlbWVudC9tb2RlbHMvcXVlcnktbGlzdC9xdWVyeS1saXN0LWl0ZW0vcXVlcnktbGlzdC1pdGVtLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUMzQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUd6RixNQUFNLE9BQU8sYUFBYTtJQUNqQixFQUFFLENBQVM7SUFDWCxPQUFPLENBQVU7SUFDakIsSUFBSSxDQUFTO0lBQ2IsSUFBSSxDQUFTO0lBQ2IsV0FBVyxHQUE0QixFQUFFLENBQUM7SUFDMUMsZ0JBQWdCLENBQVM7SUFDekIsV0FBVyxDQUFVO0lBQ3JCLFNBQVMsQ0FBTztJQUNoQixTQUFTLENBQVM7SUFDbEIsUUFBUSxDQUFVO0lBQ2xCLFFBQVEsQ0FBVTtJQUNsQixXQUFXLENBQVU7SUFDckIsUUFBUSxHQUFvQixFQUFFLENBQUM7SUFFL0Isb0JBQW9CLEdBQW1CLElBQUksQ0FBQztJQUVuRCxJQUFXLG9CQUFvQjtRQUM3QixNQUFNLHVCQUF1QixHQUFHLENBQUMsSUFBbUIsRUFBaUIsRUFBRTtZQUNyRSxJQUFJLG9CQUFvQixHQUFrQixJQUFJLENBQUM7WUFDL0MsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUM5QyxLQUFLLE1BQU0sS0FBSyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFDbEMsTUFBTSx5QkFBeUIsR0FBRyx1QkFBdUIsQ0FBQyxL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QUUsQ0FBQztZQUM5QyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsS0FBSyxDQUFDO2dCQUNuQyxDQUFDLENBQUMsdUJBQXVCLENBQUMsU0FBUztnQkFDbkMsQ0FBQyxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQztRQUN2QyxDQUFDO1FBRUQsK0JBQStCO1FBQy9CLE9BQU8sdUJBQXVCLENBQUMsUUFBUSxDQUFDO0lBQzFDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFF1ZXJ5Q3JlYXRlQ29udGV4dCB9IGZyb20gJy4uLy4uJztcbmltcG9ydCB7IFF1ZXJ5SXRlbVJlc3BvbnNlU3RhdHVzIH0gZnJvbSAnLi4vLi4vLi4vZW51bXMvcXVlcnktaXRlbS1yZXNwb25zZS1zdGF0dXMuZW51bSc7XG5pbXBvcnQgeyBDYXNlTWVzc2FnZSwgUXVlcnlNZXNzYWdlRG9jdW1lbnQgfSBmcm9tICcuLi8uLi9jYXNlLXF1ZXJpZXMtY29sbGVjdGlvbi5tb2RlbCc7XG5cbmV4cG9ydCBjbGFzcyBRdWVyeUxpc3RJdGVtIGltcGxlbWVudHMgQ2FzZU1lc3NhZ2Uge1xuICBwdWJsaWMgaWQ6IHN0cmluZztcbiAgcHVibGljIHN1YmplY3Q/OiBzdHJpbmc7XG4gIHB1YmxpYyBuYW1lOiBzdHJpbmc7XG4gIHB1YmxpYyBib2R5OiBzdHJpbmc7XG4gIHB1YmxpYyBhdHRhY2htZW50cz86IFF1ZXJ5TWVzc2FnZURvY3VtZW50W10gPSBbXTtcbiAgcHVibGljIGlzSGVhcmluZ1JlbGF0ZWQ6IHN0cmluZztcbiAgcHVibGljIGhlYXJpbmdEYXRlPzogc3RyaW5nO1xuICBwdWJsaWMgY3JlYXRlZE9uOiBEYXRlO1xuICBwdWJsaWMgY3JlYXRlZEJ5OiBzdHJpbmc7XG4gIHB1YmxpYyBwYXJlbnRJZD86IHN0cmluZztcbiAgcHVibGljIGlzQ2xvc2VkPzogc3RyaW5nO1xuICBwdWJsaWMgbWVzc2FnZVR5cGU/OiBzdHJpbmc7XG4gIHB1YmxpYyBjaGlsZHJlbjogUXVlcnlMaXN0SXRlbVtdID0gW107XG5cbiAgcHVibGljIG1lc3NhZ2VJbmRleEluUGFyZW50PzogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG5cbiAgcHVibGljIGdldCBsYXN0U3VibWl0dGVkTWVzc2FnZSgpOiBRdWVyeUxpc3RJdGVtIHtcbiAgICBjb25zdCBnZXRMYXN0U3VibWl0dGVkTWVzc2FnZSA9IChpdGVtOiBRdWVyeUxpc3RJdGVtKTogUXVlcnlMaXN0SXRlbSA9PiB7XG4gICAgICBsZXQgbGFzdFN1Ym1pdHRlZE1lc3NhZ2U6IFF1ZXJ5TGlzdEl0ZW0gPSBpdGVtO1xuICAgICAgaWYgKGl0ZW0uY2hpbGRyZW4gJiYgaXRlbS5jaGlsZHJlbi5sZW5ndGggPiAxKSB7XG4gICAgICAgIGZvciAoY29uc3QgY2hpbGQgb2YgaXRlbS5jaGlsZHJlbikge1xuICAgICAgICAgIGNvbnN0IGNoaWxkTGFzdFN1Ym1pdHRlZE1lc3NhZ2UgPSBnZXRMYXN0U3VibWl0dGVkTWVzc2FnZShjaGlsZCk7XG4gICAgICAgICAgaWYgKGNoaWxkTGFzdFN1Ym1pdHRlZE1lc3NhZ2UuY3JlYXRlZE9uID4gbGFzdFN1Ym1pdHRlZE1lc3NhZ2UuY3JlYXRlZE9uKSB7XG4gICAgICAgICAgICBsYXN0U3VibWl0dGVkTWVzc2FnZSA9IGNoaWxkTGFzdFN1Ym1pdHRlZE1lc3NhZ2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gbGFzdFN1Ym1pdHRlZE1lc3NhZ2U7XG4gICAgfTtcblxuICAgIHJldHVybiBnZXRMYXN0U3VibWl0dGVkTWVzc2FnZSh0aGlzKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbGFzdFN1Ym1pdHRlZEJ5KCk6IHN0cmluZyB7XG4gICAgY29uc3QgY2hpbGRyZW5Db3VudCA9IHRoaXMuY2hpbGRyZW4ubGVuZ3RoO1xuICAgIGlmIChjaGlsZHJlbkNvdW50ID09PSAwKSB7XG4gICAgICByZXR1cm4gdGhpcy5sYXN0U3VibWl0dGVkTWVzc2FnZS5uYW1lO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmNoaWxkcmVuW2NoaWxkcmVuQ291bnQgLSAxXS5uYW1lO1xuICB9XG5cbiAgcHVibGljIGdldCBsYXN0U3VibWl0dGVkRGF0ZSgpOiBEYXRlIHtcbiAgICBjb25zdCBjaGlsZHJlbkNvdW50ID0gdGhpcy5jaGlsZHJlbi5sZW5ndGg7XG4gICAgY29uc3QgbGFzdENoaWxkID0gdGhpcy5jaGlsZHJlbltjaGlsZHJlbkNvdW50IC0gMV07XG5cbiAgICAvLyAxLiBDaGVjayBmb3IgbGVnYWN5OiA8PSAxIGNoaWxkIHdpdGggbm8gbWVzc2FnZVR5cGVcbiAgICBjb25zdCBhbGxDaGlsZHJlbkxhY2tNZXNzYWdlVHlwZSA9IHRoaXMuY2hpbGRyZW4uZXZlcnkoXG4gICAgICAoY2hpbGQpID0+ICFjaGlsZC5tZXNzYWdlVHlwZVxuICAgICk7XG4gICAgaWYgKGNoaWxkcmVuQ291bnQgPD0gMSAmJiBhbGxDaGlsZHJlbkxhY2tNZXNzYWdlVHlwZSkge1xuICAgICAgcmV0dXJuIG5ldyBEYXRlKHRoaXMubGFzdFN1Ym1pdHRlZE1lc3NhZ2UuY3JlYXRlZE9uKTtcbiAgICB9XG5cbiAgICAvLyAyLiBDaGVjayBpZiBhbnkgUkVTUE9ORCBleGlzdHNcbiAgICBjb25zdCBoYXNSZXNwb25kID0gdGhpcy5jaGlsZHJlbi5zb21lKFxuICAgICAgKGNoaWxkKSA9PiBjaGlsZC5tZXNzYWdlVHlwZSA9PT0gUXVlcnlDcmVhdGVDb250ZXh0LlJFU1BPTkRcbiAgICApO1xuXG4gICAgLy8gMy4gQ2hlY2sgaWYgYWxsIGNoaWxkcmVuIGFyZSBGT0xMT1dVUHMgYW5kIG5vbmUgYXJlIFJFU1BPTkRzXG4gICAgY29uc3Qgb25seUZvbGxvd1VwcyA9IHRoaXMuY2hpbGRyZW4uZXZlcnkoXG4gICAgICAoY2hpbGQpID0+IGNoaWxkLm1lc3NhZ2VUeXBlID09PSBRdWVyeUNyZWF0ZUNvbnRleHQuRk9MTE9XVVBcbiAgICApO1xuXG4gICAgaWYgKG9ubHlGb2xsb3dVcHMgJiYgIWhhc1Jlc3BvbmQpIHtcbiAgICAgIHJldHVybiBuZXcgRGF0ZShsYXN0Q2hpbGQuY3JlYXRlZE9uKTtcbiAgICB9XG5cbiAgICAvLyA0LiBJZiBSRVNQT05EIGV4aXN0cywgZ2V0IGxhdGVzdCBGT0xMT1dVUFxuICAgIC8vIElmIG5vIFJFU1BPTkQsIGJ1dCB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgRk9MTE9XVVAsIHJldHVybiB0aGUgbGFzdCBGT0xMT1dVUFxuICAgIGNvbnN0IGxhc3RGb2xsb3dVcCA9IFsuLi50aGlzLmNoaWxkcmVuXVxuICAgICAgLnJldmVyc2UoKVxuICAgICAgLmZpbmQoKGNoaWxkKSA9PiBjaGlsZC5tZXNzYWdlVHlwZSA9PT0gUXVlcnlDcmVhdGVDb250ZXh0LkZPTExPV1VQKTtcblxuICAgIGlmIChsYXN0Rm9sbG93VXApIHtcbiAgICAgIHJldHVybiBuZXcgRGF0ZShsYXN0Rm9sbG93VXAuY3JlYXRlZE9uKTtcbiAgICB9XG5cbiAgICAvLyA1LiBMZWdhY3kgZmFsbGJhY2s6IG5vIG1lc3NhZ2VUeXBlIGF0IGFsbFxuICAgIGlmIChhbGxDaGlsZHJlbkxhY2tNZXNzYWdlVHlwZSkge1xuICAgICAgY29uc3QgaW5kZXggPSBjaGlsZHJlbkNvdW50ICUgMiA9PT0gMCA/IGNoaWxkcmVuQ291bnQgLSAxIDogY2hpbGRyZW5Db3VudCAtIDI7XG4gICAgICByZXR1cm4gbmV3IERhdGUodGhpcy5jaGlsZHJlbltpbmRleF0/LmNyZWF0ZWRPbik7XG4gICAgfVxuXG4gICAgLy8gNi4gRmluYWwgZmFsbGJhY2s6IHJldHVybiBsYXN0IGNoaWxkJ3MgZGF0ZVxuICAgIHJldHVybiBuZXcgRGF0ZSh0aGlzLmxhc3RTdWJtaXR0ZWRNZXNzYWdlLmNyZWF0ZWRPbik7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGxhc3RSZXNwb25zZUJ5KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuY2hpbGRyZW4/Lmxlbmd0aCA+IDAgPyB0aGlzLmxhc3RTdWJtaXR0ZWRNZXNzYWdlLm5hbWUgOiAnJztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbGFzdFJlc3BvbnNlRGF0ZSgpOiBEYXRlIHwgbnVsbCB7XG4gICAgY29uc3QgY2hpbGRyZW5Db3VudCA9IHRoaXMuY2hpbGRyZW4ubGVuZ3RoO1xuICAgIGlmIChjaGlsZHJlbkNvdW50ID09PSAwKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBjb25zdCBsYXN0Q2hpbGQgPSB0aGlzLmNoaWxkcmVuW2NoaWxkcmVuQ291bnQgLSAxXTtcblxuICAgIGlmIChcbiAgICAgIGxhc3RDaGlsZD8ubWVzc2FnZVR5cGUgPT09IFF1ZXJ5Q3JlYXRlQ29udGV4dC5GT0xMT1dVUCAmJlxuICAgICF0aGlzLmNoaWxkcmVuLnNvbWUoKGNoaWxkKSA9PiBjaGlsZC5tZXNzYWdlVHlwZSA9PT0gUXVlcnlDcmVhdGVDb250ZXh0LlJFU1BPTkQpXG4gICAgKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBsZXQgaW5kZXg6IG51bWJlcjtcbiAgICBpZiAoY2hpbGRyZW5Db3VudCA9PT0gMSkge1xuICAgICAgaW5kZXggPSAwO1xuICAgIH0gZWxzZSB7XG4gICAgICBpbmRleCA9IGNoaWxkcmVuQ291bnQgJSAyID09PSAxID8gY2hpbGRyZW5Db3VudCAtIDEgOiBjaGlsZHJlbkNvdW50IC0gMjtcbiAgICB9XG5cbiAgICByZXR1cm4gbmV3IERhdGUodGhpcy5jaGlsZHJlbltpbmRleF0uY3JlYXRlZE9uKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcmVzcG9uc2VTdGF0dXMoKTogUXVlcnlJdGVtUmVzcG9uc2VTdGF0dXMge1xuICAgIGNvbnN0IGlzVGhyZWFkQ2xvc2VkID0gKGl0ZW06IFF1ZXJ5TGlzdEl0ZW0pOiBib29sZWFuID0+IHtcbiAgICAgIGlmIChpdGVtLmlzQ2xvc2VkID09PSAnWWVzJykge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBpdGVtLmNoaWxkcmVuPy5zb21lKChjaGlsZCkgPT4gaXNUaHJlYWRDbG9zZWQoY2hpbGQpKSB8fCBmYWxzZTtcbiAgICB9O1xuXG4gICAgaWYgKGlzVGhyZWFkQ2xvc2VkKHRoaXMpKSB7XG4gICAgICByZXR1cm4gUXVlcnlJdGVtUmVzcG9uc2VTdGF0dXMuQ0xPU0VEO1xuICAgIH1cblxuICAgIGNvbnN0IGxhc3RNZXNzYWdlVHlwZSA9IHRoaXMuY2hpbGRyZW4/Lmxlbmd0aFxuICAgICAgPyB0aGlzLmNoaWxkcmVuW3RoaXMuY2hpbGRyZW4ubGVuZ3RoIC0gMV0/Lm1lc3NhZ2VUeXBlXG4gICAgICA6IHVuZGVmaW5lZDtcblxuICAgIGlmIChsYXN0TWVzc2FnZVR5cGUgJiYgbGFzdE1lc3NhZ2VUeXBlID09PSBRdWVyeUNyZWF0ZUNvbnRleHQuUkVTUE9ORCkge1xuICAgICAgcmV0dXJuIFF1ZXJ5SXRlbVJlc3BvbnNlU3RhdHVzLlJFU1BPTkRFRDtcbiAgICB9IGVsc2UgaWYgKGxhc3RNZXNzYWdlVHlwZSAmJiBsYXN0TWVzc2FnZVR5cGUgPT09IFF1ZXJ5Q3JlYXRlQ29udGV4dC5GT0xMT1dVUCkge1xuICAgICAgcmV0dXJuIFF1ZXJ5SXRlbVJlc3BvbnNlU3RhdHVzLkFXQUlUSU5HO1xuICAgIH1cblxuICAgIGlmICh0aGlzLm1lc3NhZ2VJbmRleEluUGFyZW50ICE9PSBudWxsKSB7XG4gICAgICByZXR1cm4gdGhpcy5tZXNzYWdlSW5kZXhJblBhcmVudCAlIDIgPT09IDBcbiAgICAgICAgPyBRdWVyeUl0ZW1SZXNwb25zZVN0YXR1cy5SRVNQT05ERURcbiAgICAgICAgOiBRdWVyeUl0ZW1SZXNwb25zZVN0YXR1cy5BV0FJVElORztcbiAgICB9XG5cbiAgICAvLyBQYXJlbnQgbG9naWMgKGNoaWxkcmVuIGNvdW50KVxuICAgIGlmICh0aGlzLmNoaWxkcmVuICYmIHRoaXMuY2hpbGRyZW4ubGVuZ3RoID4gMCkge1xuICAgICAgcmV0dXJuIHRoaXMuY2hpbGRyZW4ubGVuZ3RoICUgMiA9PT0gMVxuICAgICAgICA/IFF1ZXJ5SXRlbVJlc3BvbnNlU3RhdHVzLlJFU1BPTkRFRFxuICAgICAgICA6IFF1ZXJ5SXRlbVJlc3BvbnNlU3RhdHVzLkFXQUlUSU5HO1xuICAgIH1cblxuICAgIC8vIE5vIGNoaWxkcmVuIOKAlCBzdGlsbCBhd2FpdGluZ1xuICAgIHJldHVybiBRdWVyeUl0ZW1SZXNwb25zZVN0YXR1cy5BV0FJVElORztcbiAgfVxufVxuIl19