@hmcts/ccd-case-ui-toolkit 7.1.34 → 7.1.35-doc-upload-clear-message

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 (16) hide show
  1. package/esm2022/lib/shared/components/palette/document/write-document-field.component.mjs +2 -1
  2. package/esm2022/lib/shared/components/palette/palette.module.mjs +3 -2
  3. package/esm2022/lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.mjs +50 -29
  4. package/esm2022/lib/shared/components/palette/query-management/components/query-details/query-details.component.mjs +158 -104
  5. package/esm2022/lib/shared/components/palette/query-management/components/query-write/query-write-respond-to-query/query-write-respond-to-query.component.mjs +104 -41
  6. package/esm2022/lib/shared/components/palette/query-management/read-query-management-field.component.mjs +4 -21
  7. package/fesm2022/hmcts-ccd-case-ui-toolkit.mjs +341 -225
  8. package/fesm2022/hmcts-ccd-case-ui-toolkit.mjs.map +1 -1
  9. package/lib/shared/components/palette/document/write-document-field.component.d.ts.map +1 -1
  10. package/lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.d.ts +5 -1
  11. package/lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.d.ts.map +1 -1
  12. package/lib/shared/components/palette/query-management/components/query-details/query-details.component.d.ts +17 -5
  13. package/lib/shared/components/palette/query-management/components/query-details/query-details.component.d.ts.map +1 -1
  14. package/lib/shared/components/palette/query-management/components/query-write/query-write-respond-to-query/query-write-respond-to-query.component.d.ts +17 -5
  15. 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
  16. package/package.json +1 -1
@@ -59,7 +59,7 @@ import { MatLegacyTabsModule } from '@angular/material/legacy-tabs';
59
59
  import { decompressFromUTF16, compressToUTF16 } from 'lz-string';
60
60
 
61
61
  const _c0$14 = [[["", "footerSolsNavLinks", ""]], [["", "footerCaseWorkerNavLinks", ""]]];
62
- const _c1$v = ["[footerSolsNavLinks]", "[footerCaseWorkerNavLinks]"];
62
+ const _c1$u = ["[footerSolsNavLinks]", "[footerCaseWorkerNavLinks]"];
63
63
  function FooterComponent_div_2_Template(rf, ctx) { if (rf & 1) {
64
64
  i0.ɵɵelementStart(0, "div", 3)(1, "div", 4);
65
65
  i0.ɵɵprojection(2);
@@ -135,7 +135,7 @@ class FooterComponent {
135
135
  phone;
136
136
  workhours;
137
137
  static ɵfac = function FooterComponent_Factory(t) { return new (t || FooterComponent)(); };
138
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FooterComponent, selectors: [["cut-footer-bar"]], inputs: { email: "email", isSolicitor: "isSolicitor", phone: "phone", workhours: "workhours" }, ngContentSelectors: _c1$v, decls: 4, vars: 4, consts: [["id", "footer", "role", "footer", 1, "group", "js-footer"], [1, "footer-wrapper"], ["class", "footer-meta", 4, "ngIf"], [1, "footer-meta"], [1, "footer-meta-inner"], [1, "open-government-licence"], [1, "logo"], ["href", "https://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/", "rel", "license"], [1, "copyright"], ["href", "https://www.nationalarchives.gov.uk/information-management/re-using-public-sector-information/copyright-and-re-use/crown-copyright/"], [1, "title"], [1, "footer-text"], [1, "email"], [3, "href"], [1, "phone"], [1, "work-hours"]], template: function FooterComponent_Template(rf, ctx) { if (rf & 1) {
138
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FooterComponent, selectors: [["cut-footer-bar"]], inputs: { email: "email", isSolicitor: "isSolicitor", phone: "phone", workhours: "workhours" }, ngContentSelectors: _c1$u, decls: 4, vars: 4, consts: [["id", "footer", "role", "footer", 1, "group", "js-footer"], [1, "footer-wrapper"], ["class", "footer-meta", 4, "ngIf"], [1, "footer-meta"], [1, "footer-meta-inner"], [1, "open-government-licence"], [1, "logo"], ["href", "https://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/", "rel", "license"], [1, "copyright"], ["href", "https://www.nationalarchives.gov.uk/information-management/re-using-public-sector-information/copyright-and-re-use/crown-copyright/"], [1, "title"], [1, "footer-text"], [1, "email"], [3, "href"], [1, "phone"], [1, "work-hours"]], template: function FooterComponent_Template(rf, ctx) { if (rf & 1) {
139
139
  i0.ɵɵprojectionDef(_c0$14);
140
140
  i0.ɵɵelementStart(0, "footer", 0)(1, "div", 1);
141
141
  i0.ɵɵtemplate(2, FooterComponent_div_2_Template, 20, 15, "div", 2)(3, FooterComponent_div_3_Template, 20, 16, "div", 2);
@@ -164,7 +164,7 @@ class FooterComponent {
164
164
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FooterComponent, { className: "FooterComponent", filePath: "lib/components/footer/footer.component.ts", lineNumber: 8 }); })();
165
165
 
166
166
  const _c0$13 = [[["", "headerNavigation", ""]]];
167
- const _c1$u = ["[headerNavigation]"];
167
+ const _c1$t = ["[headerNavigation]"];
168
168
  function HeaderBarComponent_div_3_Template(rf, ctx) { if (rf & 1) {
169
169
  i0.ɵɵelementStart(0, "div")(1, "a", 12);
170
170
  i0.ɵɵelement(2, "img", 13);
@@ -206,7 +206,7 @@ class HeaderBarComponent {
206
206
  this.signOutRequest.emit();
207
207
  }
208
208
  static ɵfac = function HeaderBarComponent_Factory(t) { return new (t || HeaderBarComponent)(); };
209
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: HeaderBarComponent, selectors: [["cut-header-bar"]], inputs: { title: "title", isSolicitor: "isSolicitor", username: "username" }, outputs: { signOutRequest: "signOutRequest" }, ngContentSelectors: _c1$u, decls: 17, vars: 14, consts: [["role", "banner", "id", "global-header", 1, "with-proposition"], [1, "header-wrapper"], [1, "header-global"], [4, "ngIf"], ["class", "global-header", 4, "ngIf"], [1, "header-proposition"], [1, "content"], ["href", "#proposition-links", 1, "js-header-toggle", "menu"], ["id", "proposition-menu", 4, "ngIf"], [1, "proposition-right"], ["id", "user-name"], ["id", "sign-out", "href", "javascript:void(0)", 3, "click"], ["href", "https://www.gov.uk", "title", "Go to the GOV.UK homepage", "id", "logo", 1, "content", 2, "margin-left", "0px"], ["src", "/img/gov.uk_logotype_crown_invert_trans.png?0.23.0", "width", "36", "height", "32", "alt", ""], [1, "global-header"], [1, "title"], ["id", "proposition-menu"], [1, "title-solicitor"], ["id", "proposition-name"]], template: function HeaderBarComponent_Template(rf, ctx) { if (rf & 1) {
209
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: HeaderBarComponent, selectors: [["cut-header-bar"]], inputs: { title: "title", isSolicitor: "isSolicitor", username: "username" }, outputs: { signOutRequest: "signOutRequest" }, ngContentSelectors: _c1$t, decls: 17, vars: 14, consts: [["role", "banner", "id", "global-header", 1, "with-proposition"], [1, "header-wrapper"], [1, "header-global"], [4, "ngIf"], ["class", "global-header", 4, "ngIf"], [1, "header-proposition"], [1, "content"], ["href", "#proposition-links", 1, "js-header-toggle", "menu"], ["id", "proposition-menu", 4, "ngIf"], [1, "proposition-right"], ["id", "user-name"], ["id", "sign-out", "href", "javascript:void(0)", 3, "click"], ["href", "https://www.gov.uk", "title", "Go to the GOV.UK homepage", "id", "logo", 1, "content", 2, "margin-left", "0px"], ["src", "/img/gov.uk_logotype_crown_invert_trans.png?0.23.0", "width", "36", "height", "32", "alt", ""], [1, "global-header"], [1, "title"], ["id", "proposition-menu"], [1, "title-solicitor"], ["id", "proposition-name"]], template: function HeaderBarComponent_Template(rf, ctx) { if (rf & 1) {
210
210
  i0.ɵɵprojectionDef(_c0$13);
211
211
  i0.ɵɵelementStart(0, "header", 0)(1, "div", 1)(2, "div", 2);
212
212
  i0.ɵɵtemplate(3, HeaderBarComponent_div_3_Template, 5, 3, "div", 3)(4, HeaderBarComponent_div_4_Template, 5, 3, "div", 4);
@@ -258,11 +258,11 @@ class HeaderBarComponent {
258
258
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(HeaderBarComponent, { className: "HeaderBarComponent", filePath: "lib/components/header/header-bar/header-bar.component.ts", lineNumber: 8 }); })();
259
259
 
260
260
  const _c0$12 = [[["", "leftNavLinks", ""]], [["", "rightNavLinks", ""]]];
261
- const _c1$t = ["[leftNavLinks]", "[rightNavLinks]"];
261
+ const _c1$s = ["[leftNavLinks]", "[rightNavLinks]"];
262
262
  class NavigationComponent {
263
263
  isSolicitor;
264
264
  static ɵfac = function NavigationComponent_Factory(t) { return new (t || NavigationComponent)(); };
265
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: NavigationComponent, selectors: [["cut-nav-bar"]], inputs: { isSolicitor: "isSolicitor" }, ngContentSelectors: _c1$t, decls: 4, vars: 2, consts: [[1, "cut-nav-bar"]], template: function NavigationComponent_Template(rf, ctx) { if (rf & 1) {
265
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: NavigationComponent, selectors: [["cut-nav-bar"]], inputs: { isSolicitor: "isSolicitor" }, ngContentSelectors: _c1$s, decls: 4, vars: 2, consts: [[1, "cut-nav-bar"]], template: function NavigationComponent_Template(rf, ctx) { if (rf & 1) {
266
266
  i0.ɵɵprojectionDef(_c0$12);
267
267
  i0.ɵɵelementStart(0, "div")(1, "nav", 0);
268
268
  i0.ɵɵprojection(2);
@@ -383,10 +383,10 @@ class HeadersModule {
383
383
  (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(HeadersModule, { declarations: [PhaseComponent, HeaderBarComponent, NavigationComponent, NavigationItemComponent], imports: [CommonModule, RouterModule, i1.RpxTranslationModule], exports: [PhaseComponent, HeaderBarComponent, NavigationComponent, NavigationItemComponent] }); })();
384
384
 
385
385
  const _c0$11 = [[["", "topBody", ""]], [["", "leftBody", ""]], [["", "rightBody", ""]]];
386
- const _c1$s = ["[topBody]", "[leftBody]", "[rightBody]"];
386
+ const _c1$r = ["[topBody]", "[leftBody]", "[rightBody]"];
387
387
  class BodyComponent {
388
388
  static ɵfac = function BodyComponent_Factory(t) { return new (t || BodyComponent)(); };
389
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: BodyComponent, selectors: [["cut-body"]], ngContentSelectors: _c1$s, decls: 4, vars: 0, consts: [[1, "global-display"]], template: function BodyComponent_Template(rf, ctx) { if (rf & 1) {
389
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: BodyComponent, selectors: [["cut-body"]], ngContentSelectors: _c1$r, decls: 4, vars: 0, consts: [[1, "global-display"]], template: function BodyComponent_Template(rf, ctx) { if (rf & 1) {
390
390
  i0.ɵɵprojectionDef(_c0$11);
391
391
  i0.ɵɵelementStart(0, "div", 0);
392
392
  i0.ɵɵprojection(1);
@@ -1001,7 +1001,7 @@ class NotificationBannerComponent {
1001
1001
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(NotificationBannerComponent, { className: "NotificationBannerComponent", filePath: "lib/components/banners/notification-banner/notification-banner.component.ts", lineNumber: 10 }); })();
1002
1002
 
1003
1003
  const _c0$_ = ["*"];
1004
- const _c1$r = a0 => ({ "js-hidden": a0 });
1004
+ const _c1$q = a0 => ({ "js-hidden": a0 });
1005
1005
  class TabComponent {
1006
1006
  id;
1007
1007
  title;
@@ -1013,7 +1013,7 @@ class TabComponent {
1013
1013
  i0.ɵɵprojection(1);
1014
1014
  i0.ɵɵelementEnd();
1015
1015
  } if (rf & 2) {
1016
- i0.ɵɵproperty("id", ctx.id)("ngClass", i0.ɵɵpureFunction1(3, _c1$r, !ctx.selected));
1016
+ i0.ɵɵproperty("id", ctx.id)("ngClass", i0.ɵɵpureFunction1(3, _c1$q, !ctx.selected));
1017
1017
  i0.ɵɵattribute("aria-hidden", !ctx.selected);
1018
1018
  } }, dependencies: [i5.NgClass], styles: [".tabs-toggle[_ngcontent-%COMP%]{display:block;padding:10px 15px 3px;margin-bottom:8px}.tabs-toggle[aria-selected=true][_ngcontent-%COMP%]{color:#0b0c0c;text-decoration:none;border-bottom:none}.tabs-toggle[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:#005ea5}@media (max-width: 640px){.tabs-list[_ngcontent-%COMP%]{border-bottom:1px solid #bfc1c3;margin-left:-15px;margin-right:-15px}.tabs-toggle[_ngcontent-%COMP%]{border-top:1px solid #bfc1c3}.tabs-toggle[_ngcontent-%COMP%]:focus{color:#0b0c0c;outline:none}}@media (min-width: 641px){.tabs-panel[_ngcontent-%COMP%]{border-top:1px solid #bfc1c3;clear:both;overflow:hidden}.tabs-list[_ngcontent-%COMP%]{float:left}.tabs-list-item[_ngcontent-%COMP%]{float:left;position:relative;bottom:-1px;padding-top:10px}.tabs-toggle[_ngcontent-%COMP%]{background-color:#dee0e2;border:1px solid transparent;float:left;margin:0 6px 0 0;text-decoration:none}.tabs-toggle[_ngcontent-%COMP%]:visited{color:#005ea5}.tabs-toggle-selected[_ngcontent-%COMP%], .tabs-toggle[aria-selected=true][_ngcontent-%COMP%]{background-color:#fff;border-bottom:0px;border-color:#bfc1c3;padding-bottom:11px;margin-bottom:0;color:#0b0c0c}}"] });
1019
1019
  }
@@ -1030,7 +1030,7 @@ class TabComponent {
1030
1030
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(TabComponent, { className: "TabComponent", filePath: "lib/components/tabs/tab.component.ts", lineNumber: 10 }); })();
1031
1031
 
1032
1032
  const _c0$Z = ["tab"];
1033
- const _c1$q = ["*"];
1033
+ const _c1$p = ["*"];
1034
1034
  const _c2$4 = () => ["."];
1035
1035
  const _c3 = a0 => ({ "tabs-toggle-selected": a0 });
1036
1036
  function TabsComponent_li_2_Template(rf, ctx) { if (rf & 1) {
@@ -1080,7 +1080,7 @@ class TabsComponent {
1080
1080
  } if (rf & 2) {
1081
1081
  let _t;
1082
1082
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.tabs = _t);
1083
- } }, ngContentSelectors: _c1$q, decls: 5, vars: 1, consts: [["tab", ""], [1, "tabs"], ["role", "list", 1, "tabs-list"], ["class", "tabs-list-item", 4, "ngFor", "ngForOf"], [1, "tabs-content"], [1, "tabs-list-item"], ["role", "tab", "tabindex", "0", 1, "tabs-toggle", 3, "click", "routerLink", "fragment", "ngClass"]], template: function TabsComponent_Template(rf, ctx) { if (rf & 1) {
1083
+ } }, ngContentSelectors: _c1$p, decls: 5, vars: 1, consts: [["tab", ""], [1, "tabs"], ["role", "list", 1, "tabs-list"], ["class", "tabs-list-item", 4, "ngFor", "ngForOf"], [1, "tabs-content"], [1, "tabs-list-item"], ["role", "tab", "tabindex", "0", 1, "tabs-toggle", 3, "click", "routerLink", "fragment", "ngClass"]], template: function TabsComponent_Template(rf, ctx) { if (rf & 1) {
1084
1084
  i0.ɵɵprojectionDef();
1085
1085
  i0.ɵɵelementStart(0, "div", 1)(1, "ul", 2);
1086
1086
  i0.ɵɵtemplate(2, TabsComponent_li_2_Template, 5, 11, "li", 3);
@@ -11774,7 +11774,7 @@ class WriteComplexFieldComponent extends AbstractFieldWriteComponent {
11774
11774
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(WriteComplexFieldComponent, { className: "WriteComplexFieldComponent", filePath: "lib/shared/components/palette/complex/write-complex-field.component.ts", lineNumber: 21 }); })();
11775
11775
 
11776
11776
  const _c0$V = ["writeComplexFieldComponent"];
11777
- const _c1$p = a0 => ({ "form-group-error": a0 });
11777
+ const _c1$o = a0 => ({ "form-group-error": a0 });
11778
11778
  const _c2$3 = a0 => ({ "govuk-input--error": a0 });
11779
11779
  function WriteAddressFieldComponent_div_1_div_4_span_5_Template(rf, ctx) { if (rf & 1) {
11780
11780
  i0.ɵɵelementStart(0, "span", 14);
@@ -11801,7 +11801,7 @@ function WriteAddressFieldComponent_div_1_div_4_Template(rf, ctx) { if (rf & 1)
11801
11801
  i0.ɵɵelementEnd()();
11802
11802
  } if (rf & 2) {
11803
11803
  const ctx_r1 = i0.ɵɵnextContext(2);
11804
- i0.ɵɵproperty("id", ctx_r1.createElementId("postcodeLookup"))("ngClass", i0.ɵɵpureFunction1(13, _c1$p, ctx_r1.missingPostcode));
11804
+ i0.ɵɵproperty("id", ctx_r1.createElementId("postcodeLookup"))("ngClass", i0.ɵɵpureFunction1(13, _c1$o, ctx_r1.missingPostcode));
11805
11805
  i0.ɵɵadvance();
11806
11806
  i0.ɵɵproperty("for", ctx_r1.createElementId("postcodeInput"));
11807
11807
  i0.ɵɵadvance(2);
@@ -11847,7 +11847,7 @@ function WriteAddressFieldComponent_div_1_div_5_Template(rf, ctx) { if (rf & 1)
11847
11847
  i0.ɵɵelementEnd()();
11848
11848
  } if (rf & 2) {
11849
11849
  const ctx_r1 = i0.ɵɵnextContext(2);
11850
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(9, _c1$p, ctx_r1.noAddressSelected));
11850
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(9, _c1$o, ctx_r1.noAddressSelected));
11851
11851
  i0.ɵɵadvance();
11852
11852
  i0.ɵɵproperty("for", ctx_r1.createElementId("addressList"));
11853
11853
  i0.ɵɵadvance(2);
@@ -13280,7 +13280,7 @@ class ReadCaseLinkFieldComponent extends AbstractFieldReadComponent {
13280
13280
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ReadCaseLinkFieldComponent, { className: "ReadCaseLinkFieldComponent", filePath: "lib/shared/components/palette/case-link/read-case-link-field.component.ts", lineNumber: 8 }); })();
13281
13281
 
13282
13282
  const _c0$U = ["writeComplexFieldComponent"];
13283
- const _c1$o = a0 => ({ "form-group-error": a0 });
13283
+ const _c1$n = a0 => ({ "form-group-error": a0 });
13284
13284
  function WriteCaseLinkFieldComponent_span_2_Template(rf, ctx) { if (rf & 1) {
13285
13285
  i0.ɵɵelementStart(0, "span", 6);
13286
13286
  i0.ɵɵtext(1);
@@ -13372,7 +13372,7 @@ class WriteCaseLinkFieldComponent extends AbstractFieldWriteComponent {
13372
13372
  i0.ɵɵelement(5, "input", 5);
13373
13373
  i0.ɵɵelementEnd();
13374
13374
  } if (rf & 2) {
13375
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(7, _c1$o, !ctx.caseReferenceControl.valid && (ctx.caseReferenceControl.dirty || ctx.caseReferenceControl.touched)));
13375
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(7, _c1$n, !ctx.caseReferenceControl.valid && (ctx.caseReferenceControl.dirty || ctx.caseReferenceControl.touched)));
13376
13376
  i0.ɵɵadvance();
13377
13377
  i0.ɵɵproperty("for", ctx.id());
13378
13378
  i0.ɵɵadvance();
@@ -13395,7 +13395,7 @@ class WriteCaseLinkFieldComponent extends AbstractFieldWriteComponent {
13395
13395
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(WriteCaseLinkFieldComponent, { className: "WriteCaseLinkFieldComponent", filePath: "lib/shared/components/palette/case-link/write-case-link-field.component.ts", lineNumber: 11 }); })();
13396
13396
 
13397
13397
  const _c0$T = (a0, a1, a2, a3, a4, a5) => ({ id: a0, label: a1, field_type: a2, display_context_parameter: a3, value: a4, hidden: a5 });
13398
- const _c1$n = (a0, a1, a2, a3, a4) => ({ id: a0, label: a1, field_type: a2, value: a3, hidden: a4 });
13398
+ const _c1$m = (a0, a1, a2, a3, a4) => ({ id: a0, label: a1, field_type: a2, value: a3, hidden: a4 });
13399
13399
  function ReadCollectionFieldComponent_table_0_tbody_2_Template(rf, ctx) { if (rf & 1) {
13400
13400
  i0.ɵɵelementStart(0, "tbody")(1, "tr");
13401
13401
  i0.ɵɵelement(2, "th", 4);
@@ -13416,7 +13416,7 @@ function ReadCollectionFieldComponent_table_0_tbody_3_tr_1_Template(rf, ctx) { i
13416
13416
  const i_r3 = ctx.index;
13417
13417
  const ctx_r0 = i0.ɵɵnextContext(3);
13418
13418
  i0.ɵɵadvance(2);
13419
- i0.ɵɵproperty("caseField", i0.ɵɵpureFunction5(4, _c1$n, i_r3, ctx_r0.caseField.label + " " + (i_r3 + 1), ctx_r0.caseField.field_type.collection_field_type, item_r2.value, ctx_r0.caseField.hidden))("context", ctx_r0.context)("topLevelFormGroup", ctx_r0.topLevelFormGroup)("idPrefix", ctx_r0.buildIdPrefix(i_r3));
13419
+ i0.ɵɵproperty("caseField", i0.ɵɵpureFunction5(4, _c1$m, i_r3, ctx_r0.caseField.label + " " + (i_r3 + 1), ctx_r0.caseField.field_type.collection_field_type, item_r2.value, ctx_r0.caseField.hidden))("context", ctx_r0.context)("topLevelFormGroup", ctx_r0.topLevelFormGroup)("idPrefix", ctx_r0.buildIdPrefix(i_r3));
13420
13420
  } }
13421
13421
  function ReadCollectionFieldComponent_table_0_tbody_3_Template(rf, ctx) { if (rf & 1) {
13422
13422
  i0.ɵɵelementStart(0, "tbody");
@@ -14222,7 +14222,7 @@ class FileUploadStateService {
14222
14222
  }], null, null); })();
14223
14223
 
14224
14224
  const _c0$R = ["fileInput"];
14225
- const _c1$m = a0 => ({ "form-group-error bottom-30": a0 });
14225
+ const _c1$l = a0 => ({ "form-group-error bottom-30": a0 });
14226
14226
  function WriteDocumentFieldComponent_span_6_Template(rf, ctx) { if (rf & 1) {
14227
14227
  i0.ɵɵelementStart(0, "span", 12);
14228
14228
  i0.ɵɵtext(1);
@@ -14516,6 +14516,7 @@ class WriteDocumentFieldComponent extends AbstractFieldWriteComponent {
14516
14516
  case 502:
14517
14517
  return WriteDocumentFieldComponent.UPLOAD_ERROR_NOT_AVAILABLE;
14518
14518
  case 422:
14519
+ case 500:
14519
14520
  {
14520
14521
  let errorMsg = WriteDocumentFieldComponent.ERROR_UPLOADING_FILE;
14521
14522
  if (error?.error) {
@@ -14611,7 +14612,7 @@ class WriteDocumentFieldComponent extends AbstractFieldWriteComponent {
14611
14612
  i0.ɵɵpipe(17, "rpxTranslate");
14612
14613
  i0.ɵɵelementEnd()();
14613
14614
  } if (rf & 2) {
14614
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(18, _c1$m, !ctx.valid));
14615
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(18, _c1$l, !ctx.valid));
14615
14616
  i0.ɵɵadvance();
14616
14617
  i0.ɵɵproperty("for", ctx.id());
14617
14618
  i0.ɵɵadvance();
@@ -15139,7 +15140,7 @@ class ReadDynamicRadioListFieldComponent extends AbstractFieldReadComponent {
15139
15140
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ReadDynamicRadioListFieldComponent, { className: "ReadDynamicRadioListFieldComponent", filePath: "lib/shared/components/palette/dynamic-radio-list/read-dynamic-radio-list-field.component.ts", lineNumber: 8 }); })();
15140
15141
 
15141
15142
  const _c0$O = a0 => ({ "form-group-error": a0 });
15142
- const _c1$l = a0 => ({ selected: a0 });
15143
+ const _c1$k = a0 => ({ selected: a0 });
15143
15144
  function WriteDynamicRadioListFieldComponent_span_4_Template(rf, ctx) { if (rf & 1) {
15144
15145
  i0.ɵɵelementStart(0, "span", 7);
15145
15146
  i0.ɵɵtext(1);
@@ -15189,7 +15190,7 @@ function WriteDynamicRadioListFieldComponent_div_9_Template(rf, ctx) { if (rf &
15189
15190
  } if (rf & 2) {
15190
15191
  const radioButton_r2 = ctx.$implicit;
15191
15192
  const ctx_r0 = i0.ɵɵnextContext();
15192
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(9, _c1$l, ctx_r0.dynamicRadioListControl.value === radioButton_r2.code));
15193
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(9, _c1$k, ctx_r0.dynamicRadioListControl.value === radioButton_r2.code));
15193
15194
  i0.ɵɵadvance();
15194
15195
  i0.ɵɵproperty("id", ctx_r0.createElementId(radioButton_r2.code))("name", ctx_r0.id())("formControl", ctx_r0.dynamicRadioListControl)("value", radioButton_r2.code);
15195
15196
  i0.ɵɵadvance();
@@ -15287,7 +15288,7 @@ class ReadEmailFieldComponent extends AbstractFieldReadComponent {
15287
15288
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ReadEmailFieldComponent, { className: "ReadEmailFieldComponent", filePath: "lib/shared/components/palette/email/read-email-field.component.ts", lineNumber: 10 }); })();
15288
15289
 
15289
15290
  const _c0$N = a0 => ({ "form-group-error": a0 });
15290
- const _c1$k = a0 => ({ "govuk-input--error": a0 });
15291
+ const _c1$j = a0 => ({ "govuk-input--error": a0 });
15291
15292
  function WriteEmailFieldComponent_span_2_Template(rf, ctx) { if (rf & 1) {
15292
15293
  i0.ɵɵelementStart(0, "span", 6);
15293
15294
  i0.ɵɵtext(1);
@@ -15342,7 +15343,7 @@ class WriteEmailFieldComponent extends AbstractFieldWriteComponent {
15342
15343
  i0.ɵɵadvance();
15343
15344
  i0.ɵɵproperty("ngIf", ctx.emailControl.errors && (ctx.emailControl.dirty || ctx.emailControl.touched));
15344
15345
  i0.ɵɵadvance();
15345
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(10, _c1$k, ctx.emailControl.errors && (ctx.emailControl.dirty || ctx.emailControl.touched)))("id", ctx.id())("formControl", ctx.emailControl);
15346
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(10, _c1$j, ctx.emailControl.errors && (ctx.emailControl.dirty || ctx.emailControl.touched)))("id", ctx.id())("formControl", ctx.emailControl);
15346
15347
  } }, dependencies: [i5.NgClass, i5.NgIf, i4.DefaultValueAccessor, i4.NgControlStatus, i4.FormControlDirective, FieldLabelPipe, FirstErrorPipe, i1.RpxTranslatePipe], encapsulation: 2 });
15347
15348
  }
15348
15349
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WriteEmailFieldComponent, [{
@@ -15510,7 +15511,7 @@ class ReadFixedRadioListFieldComponent extends AbstractFieldReadComponent {
15510
15511
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ReadFixedRadioListFieldComponent, { className: "ReadFixedRadioListFieldComponent", filePath: "lib/shared/components/palette/fixed-radio-list/read-fixed-radio-list-field.component.ts", lineNumber: 8 }); })();
15511
15512
 
15512
15513
  const _c0$L = a0 => ({ "form-group-error": a0 });
15513
- const _c1$j = a0 => ({ selected: a0 });
15514
+ const _c1$i = a0 => ({ selected: a0 });
15514
15515
  function WriteFixedRadioListFieldComponent_span_4_Template(rf, ctx) { if (rf & 1) {
15515
15516
  i0.ɵɵelementStart(0, "span", 6);
15516
15517
  i0.ɵɵtext(1);
@@ -15551,7 +15552,7 @@ function WriteFixedRadioListFieldComponent_div_8_Template(rf, ctx) { if (rf & 1)
15551
15552
  } if (rf & 2) {
15552
15553
  const radioButton_r2 = ctx.$implicit;
15553
15554
  const ctx_r0 = i0.ɵɵnextContext();
15554
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(9, _c1$j, ctx_r0.fixedRadioListControl.value === radioButton_r2.code));
15555
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(9, _c1$i, ctx_r0.fixedRadioListControl.value === radioButton_r2.code));
15555
15556
  i0.ɵɵadvance();
15556
15557
  i0.ɵɵproperty("id", ctx_r0.id() + "-" + radioButton_r2.code)("name", ctx_r0.id())("formControl", ctx_r0.fixedRadioListControl)("value", radioButton_r2.code);
15557
15558
  i0.ɵɵadvance();
@@ -15654,7 +15655,7 @@ class ReadJudicialUserFieldComponent extends AbstractFieldReadComponent {
15654
15655
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ReadJudicialUserFieldComponent, { className: "ReadJudicialUserFieldComponent", filePath: "lib/shared/components/palette/judicial-user/read-judicial-user-field.component.ts", lineNumber: 11 }); })();
15655
15656
 
15656
15657
  const _c0$K = a0 => ({ "form-group-error": a0 });
15657
- const _c1$i = a0 => ({ "hide-autocomplete": a0 });
15658
+ const _c1$h = a0 => ({ "hide-autocomplete": a0 });
15658
15659
  function WriteJudicialUserFieldComponent_span_2_Template(rf, ctx) { if (rf & 1) {
15659
15660
  i0.ɵɵelementStart(0, "span", 10);
15660
15661
  i0.ɵɵtext(1);
@@ -15693,7 +15694,7 @@ function WriteJudicialUserFieldComponent_mat_option_8_Template(rf, ctx) { if (rf
15693
15694
  } if (rf & 2) {
15694
15695
  const judicialUser_r4 = ctx.$implicit;
15695
15696
  const ctx_r1 = i0.ɵɵnextContext();
15696
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(4, _c1$i, !ctx_r1.showAutocomplete))("value", judicialUser_r4);
15697
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(4, _c1$h, !ctx_r1.showAutocomplete))("value", judicialUser_r4);
15697
15698
  i0.ɵɵadvance();
15698
15699
  i0.ɵɵtextInterpolate2(" ", (judicialUser_r4 == null ? null : judicialUser_r4.fullName) ? judicialUser_r4.fullName : "", "", (judicialUser_r4 == null ? null : judicialUser_r4.emailId) ? " (" + judicialUser_r4.emailId + ")" : "", " ");
15699
15700
  } }
@@ -16419,7 +16420,7 @@ class ValidatorsUtils {
16419
16420
  }], null, null); })();
16420
16421
 
16421
16422
  const _c0$J = a0 => ({ "govuk-form-group--error": a0 });
16422
- const _c1$h = a0 => ({ "table-group-error": a0 });
16423
+ const _c1$g = a0 => ({ "table-group-error": a0 });
16423
16424
  function LinkCasesComponent_div_8_span_4_Template(rf, ctx) { if (rf & 1) {
16424
16425
  i0.ɵɵelementStart(0, "span", 30)(1, "span", 31);
16425
16426
  i0.ɵɵtext(2, "Error:");
@@ -16596,7 +16597,7 @@ function LinkCasesComponent_tr_31_Template(rf, ctx) { if (rf & 1) {
16596
16597
  const case_r9 = ctx.$implicit;
16597
16598
  const ctx_r1 = i0.ɵɵnextContext();
16598
16599
  i0.ɵɵadvance(2);
16599
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(12, _c1$h, ctx_r1.caseSelectionError && case_r9.caseReference === ctx_r1.linkCaseForm.value.caseNumber));
16600
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(12, _c1$g, ctx_r1.caseSelectionError && case_r9.caseReference === ctx_r1.linkCaseForm.value.caseNumber));
16600
16601
  i0.ɵɵadvance(2);
16601
16602
  i0.ɵɵtextInterpolate1("", case_r9.caseName, " ");
16602
16603
  i0.ɵɵadvance(2);
@@ -18626,7 +18627,7 @@ class ReadNumberFieldComponent extends AbstractFieldReadComponent {
18626
18627
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ReadNumberFieldComponent, { className: "ReadNumberFieldComponent", filePath: "lib/shared/components/palette/number/read-number-field.component.ts", lineNumber: 8 }); })();
18627
18628
 
18628
18629
  const _c0$F = a0 => ({ "form-group-error": a0 });
18629
- const _c1$g = a0 => ({ "govuk-input--error": a0 });
18630
+ const _c1$f = a0 => ({ "govuk-input--error": a0 });
18630
18631
  function WriteNumberFieldComponent_span_2_Template(rf, ctx) { if (rf & 1) {
18631
18632
  i0.ɵɵelementStart(0, "span", 6);
18632
18633
  i0.ɵɵtext(1);
@@ -18681,7 +18682,7 @@ class WriteNumberFieldComponent extends AbstractFieldWriteComponent {
18681
18682
  i0.ɵɵadvance();
18682
18683
  i0.ɵɵproperty("ngIf", ctx.numberControl.errors && ctx.numberControl.dirty);
18683
18684
  i0.ɵɵadvance();
18684
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(10, _c1$g, ctx.numberControl.errors && ctx.numberControl.dirty))("id", ctx.id())("formControl", ctx.numberControl);
18685
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(10, _c1$f, ctx.numberControl.errors && ctx.numberControl.dirty))("id", ctx.id())("formControl", ctx.numberControl);
18685
18686
  } }, dependencies: [i5.NgClass, i5.NgIf, i4.DefaultValueAccessor, i4.NumberValueAccessor, i4.NgControlStatus, i4.FormControlDirective, FieldLabelPipe, FirstErrorPipe, i1.RpxTranslatePipe], encapsulation: 2 });
18686
18687
  }
18687
18688
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WriteNumberFieldComponent, [{
@@ -19309,7 +19310,7 @@ class ReadPhoneUKFieldComponent extends AbstractFieldReadComponent {
19309
19310
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ReadPhoneUKFieldComponent, { className: "ReadPhoneUKFieldComponent", filePath: "lib/shared/components/palette/phone-uk/read-phone-uk-field.component.ts", lineNumber: 8 }); })();
19310
19311
 
19311
19312
  const _c0$D = a0 => ({ "form-group-error": a0 });
19312
- const _c1$f = a0 => ({ "govuk-input--error": a0 });
19313
+ const _c1$e = a0 => ({ "govuk-input--error": a0 });
19313
19314
  function WritePhoneUKFieldComponent_span_2_Template(rf, ctx) { if (rf & 1) {
19314
19315
  i0.ɵɵelementStart(0, "span", 6);
19315
19316
  i0.ɵɵtext(1);
@@ -19364,7 +19365,7 @@ class WritePhoneUKFieldComponent extends AbstractFieldWriteComponent {
19364
19365
  i0.ɵɵadvance();
19365
19366
  i0.ɵɵproperty("ngIf", ctx.phoneUkControl.errors && (ctx.phoneUkControl.dirty || ctx.phoneUkControl.touched));
19366
19367
  i0.ɵɵadvance();
19367
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(10, _c1$f, ctx.phoneUkControl.errors && ctx.phoneUkControl.dirty))("id", ctx.id())("formControl", ctx.phoneUkControl);
19368
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(10, _c1$e, ctx.phoneUkControl.errors && ctx.phoneUkControl.dirty))("id", ctx.id())("formControl", ctx.phoneUkControl);
19368
19369
  } }, dependencies: [i5.NgClass, i5.NgIf, i4.DefaultValueAccessor, i4.NgControlStatus, i4.FormControlDirective, FieldLabelPipe, FirstErrorPipe, i1.RpxTranslatePipe], encapsulation: 2 });
19369
19370
  }
19370
19371
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WritePhoneUKFieldComponent, [{
@@ -20281,6 +20282,7 @@ class QueryCheckYourAnswersComponent {
20281
20282
  caseViewTrigger;
20282
20283
  caseDetails;
20283
20284
  queryId;
20285
+ tid;
20284
20286
  createEventSubscription;
20285
20287
  searchTasksSubscription;
20286
20288
  queryCreateContextEnum = QueryCreateContext;
@@ -20289,6 +20291,7 @@ class QueryCheckYourAnswersComponent {
20289
20291
  fieldId;
20290
20292
  attachments;
20291
20293
  errorMessages = [];
20294
+ filteredTask = [];
20292
20295
  constructor(route, router, casesService, caseNotifier, workAllocationService, sessionStorageService, qualifyingQuestionService) {
20293
20296
  this.route = route;
20294
20297
  this.router = router;
@@ -20300,6 +20303,7 @@ class QueryCheckYourAnswersComponent {
20300
20303
  }
20301
20304
  ngOnInit() {
20302
20305
  this.queryId = this.route.snapshot.params.qid;
20306
+ this.tid = this.route.snapshot.queryParams?.tid;
20303
20307
  this.caseNotifier.caseView.pipe(take(1)).subscribe((caseDetails) => {
20304
20308
  this.caseDetails = caseDetails;
20305
20309
  // Find the appropriate event trigger based on the queryCreateContext
@@ -20312,6 +20316,23 @@ class QueryCheckYourAnswersComponent {
20312
20316
  // Get the document attachments
20313
20317
  this.getDocumentAttachments();
20314
20318
  this.setCaseQueriesCollectionData();
20319
+ if (this.queryCreateContext === QueryCreateContext.RESPOND) {
20320
+ this.searchTasksSubscription = this.workAllocationService.getTasksByCaseIdAndEventId(this.RESPOND_TO_QUERY_EVENT_TRIGGER_ID, this.caseDetails.case_id, this.caseDetails.case_type.id, this.caseDetails.case_type.jurisdiction.id)
20321
+ .subscribe({
20322
+ next: (response) => {
20323
+ // Filter task by query id
20324
+ if (response.tasks?.length > 1) {
20325
+ this.filteredTask = response.tasks?.find((task) => task.case_id === this.tid);
20326
+ }
20327
+ else {
20328
+ this.filteredTask = response.tasks;
20329
+ }
20330
+ },
20331
+ error: (error) => {
20332
+ console.error('Error in searchTasksSubscription:', error);
20333
+ }
20334
+ });
20335
+ }
20315
20336
  }
20316
20337
  ngOnDestroy() {
20317
20338
  this.createEventSubscription?.unsubscribe();
@@ -20334,7 +20355,25 @@ class QueryCheckYourAnswersComponent {
20334
20355
  return;
20335
20356
  }
20336
20357
  const data = this.generateCaseQueriesCollectionData();
20337
- this.createEventSubscription = this.casesService.createEvent(this.caseDetails, {
20358
+ const createEvent$ = this.createEvent(data);
20359
+ if (this.queryCreateContext === QueryCreateContext.RESPOND) {
20360
+ const completeTask$ = this.workAllocationService.completeTask(this.filteredTask[0].id, this.caseViewTrigger.name);
20361
+ this.createEventSubscription = forkJoin([createEvent$, completeTask$]).subscribe({
20362
+ next: ([createEventResponse, tasksResponse]) => {
20363
+ this.finaliseSubmission();
20364
+ },
20365
+ error: (error) => this.handleError(error)
20366
+ });
20367
+ }
20368
+ else {
20369
+ this.createEventSubscription = createEvent$.subscribe({
20370
+ next: () => this.finaliseSubmission(),
20371
+ error: (error) => this.handleError(error)
20372
+ });
20373
+ }
20374
+ }
20375
+ createEvent(data) {
20376
+ return this.casesService.createEvent(this.caseDetails, {
20338
20377
  data,
20339
20378
  event: {
20340
20379
  id: this.caseViewTrigger?.id,
@@ -20343,34 +20382,16 @@ class QueryCheckYourAnswersComponent {
20343
20382
  },
20344
20383
  event_token: this.eventData?.event_token,
20345
20384
  ignore_warning: false
20346
- }).subscribe(() => {
20347
- // Search and complete task
20348
- this.searchAndCompleteTask();
20349
- // Emit query submitted event
20350
- this.querySubmitted.emit(true);
20351
- this.qualifyingQuestionService.clearQualifyingQuestionSelection();
20352
- },
20353
- // Error
20354
- () => this.router.navigate(['/', 'service-down']));
20355
- }
20356
- searchAndCompleteTask() {
20357
- // Search Task
20358
- const searchParameter = { ccdId: this.caseDetails.case_id };
20359
- this.searchTasksSubscription = this.workAllocationService.searchTasks(searchParameter)
20360
- .subscribe((response) => {
20361
- // Filter task by query id
20362
- const filteredTask = response.tasks?.find((task) => Object.values(task.additional_properties).some((value) => value === this.queryId));
20363
- // Trigger event completion
20364
- this.eventCompletionParams = {
20365
- caseId: this.caseDetails.case_id,
20366
- eventId: this.RESPOND_TO_QUERY_EVENT_TRIGGER_ID,
20367
- task: filteredTask
20368
- };
20369
- }, (error) => {
20370
- console.error('Error in searchTasksSubscription:', error);
20371
- // Handle error appropriately
20372
20385
  });
20373
20386
  }
20387
+ finaliseSubmission() {
20388
+ this.querySubmitted.emit(true);
20389
+ this.qualifyingQuestionService.clearQualifyingQuestionSelection();
20390
+ }
20391
+ handleError(error) {
20392
+ console.error('Error in API calls:', error);
20393
+ this.router.navigate(['/', 'service-down']);
20394
+ }
20374
20395
  generateCaseQueriesCollectionData() {
20375
20396
  const currentUserDetails = JSON.parse(this.sessionStorageService.getItem('userDetails'));
20376
20397
  const caseMessage = this.queryCreateContext === QueryCreateContext.NEW_QUERY
@@ -20579,10 +20600,32 @@ class QueryCheckYourAnswersComponent {
20579
20600
  }], querySubmitted: [{
20580
20601
  type: Output
20581
20602
  }] }); })();
20582
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(QueryCheckYourAnswersComponent, { className: "QueryCheckYourAnswersComponent", filePath: "lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.ts", lineNumber: 27 }); })();
20603
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(QueryCheckYourAnswersComponent, { className: "QueryCheckYourAnswersComponent", filePath: "lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.ts", lineNumber: 26 }); })();
20583
20604
 
20584
- function QueryDetailsComponent_ng_container_0_tr_46_Template(rf, ctx) { if (rf & 1) {
20585
- i0.ɵɵelementStart(0, "tr", 11)(1, "th", 7);
20605
+ function QueryDetailsComponent_ng_container_0_cut_alert_1_Template(rf, ctx) { if (rf & 1) {
20606
+ i0.ɵɵelementStart(0, "cut-alert", 11);
20607
+ i0.ɵɵelementContainerStart(1);
20608
+ i0.ɵɵtext(2);
20609
+ i0.ɵɵelementContainerEnd();
20610
+ i0.ɵɵelementEnd();
20611
+ } if (rf & 2) {
20612
+ const ctx_r0 = i0.ɵɵnextContext(2);
20613
+ i0.ɵɵadvance(2);
20614
+ i0.ɵɵtextInterpolate(ctx_r0.message);
20615
+ } }
20616
+ function QueryDetailsComponent_ng_container_0_p_3_Template(rf, ctx) { if (rf & 1) {
20617
+ const _r2 = i0.ɵɵgetCurrentView();
20618
+ i0.ɵɵelementStart(0, "p")(1, "a", 12);
20619
+ i0.ɵɵlistener("click", function QueryDetailsComponent_ng_container_0_p_3_Template_a_click_1_listener() { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.onBack()); });
20620
+ i0.ɵɵtext(2);
20621
+ i0.ɵɵpipe(3, "rpxTranslate");
20622
+ i0.ɵɵelementEnd()();
20623
+ } if (rf & 2) {
20624
+ i0.ɵɵadvance(2);
20625
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 1, "Back to query list"));
20626
+ } }
20627
+ function QueryDetailsComponent_ng_container_0_tr_44_Template(rf, ctx) { if (rf & 1) {
20628
+ i0.ɵɵelementStart(0, "tr", 13)(1, "th", 7);
20586
20629
  i0.ɵɵtext(2);
20587
20630
  i0.ɵɵpipe(3, "rpxTranslate");
20588
20631
  i0.ɵɵelementEnd();
@@ -20591,34 +20634,34 @@ function QueryDetailsComponent_ng_container_0_tr_46_Template(rf, ctx) { if (rf &
20591
20634
  i0.ɵɵpipe(6, "date");
20592
20635
  i0.ɵɵelementEnd()();
20593
20636
  } if (rf & 2) {
20594
- const ctx_r1 = i0.ɵɵnextContext(2);
20637
+ const ctx_r0 = i0.ɵɵnextContext(2);
20595
20638
  i0.ɵɵadvance(2);
20596
20639
  i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 2, "What is the date of the hearing?"));
20597
20640
  i0.ɵɵadvance(3);
20598
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(6, 4, ctx_r1.query.hearingDate, "dd MMM yyyy"));
20641
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(6, 4, ctx_r0.query.hearingDate, "dd MMM yyyy"));
20599
20642
  } }
20600
- function QueryDetailsComponent_ng_container_0_tr_47_ccd_query_attachments_read_5_Template(rf, ctx) { if (rf & 1) {
20601
- i0.ɵɵelement(0, "ccd-query-attachments-read", 13);
20643
+ function QueryDetailsComponent_ng_container_0_tr_45_ccd_query_attachments_read_5_Template(rf, ctx) { if (rf & 1) {
20644
+ i0.ɵɵelement(0, "ccd-query-attachments-read", 15);
20602
20645
  } if (rf & 2) {
20603
- const ctx_r1 = i0.ɵɵnextContext(3);
20604
- i0.ɵɵproperty("attachments", ctx_r1.query.attachments);
20646
+ const ctx_r0 = i0.ɵɵnextContext(3);
20647
+ i0.ɵɵproperty("attachments", ctx_r0.query.attachments);
20605
20648
  } }
20606
- function QueryDetailsComponent_ng_container_0_tr_47_Template(rf, ctx) { if (rf & 1) {
20649
+ function QueryDetailsComponent_ng_container_0_tr_45_Template(rf, ctx) { if (rf & 1) {
20607
20650
  i0.ɵɵelementStart(0, "tr", 6)(1, "th", 7);
20608
20651
  i0.ɵɵtext(2);
20609
20652
  i0.ɵɵpipe(3, "rpxTranslate");
20610
20653
  i0.ɵɵelementEnd();
20611
20654
  i0.ɵɵelementStart(4, "td", 8);
20612
- i0.ɵɵtemplate(5, QueryDetailsComponent_ng_container_0_tr_47_ccd_query_attachments_read_5_Template, 1, 1, "ccd-query-attachments-read", 12);
20655
+ i0.ɵɵtemplate(5, QueryDetailsComponent_ng_container_0_tr_45_ccd_query_attachments_read_5_Template, 1, 1, "ccd-query-attachments-read", 14);
20613
20656
  i0.ɵɵelementEnd()();
20614
20657
  } if (rf & 2) {
20615
- const ctx_r1 = i0.ɵɵnextContext(2);
20658
+ const ctx_r0 = i0.ɵɵnextContext(2);
20616
20659
  i0.ɵɵadvance(2);
20617
20660
  i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 2, "Attachments"));
20618
20661
  i0.ɵɵadvance(3);
20619
- i0.ɵɵproperty("ngIf", ctx_r1.query.attachments);
20662
+ i0.ɵɵproperty("ngIf", ctx_r0.query.attachments);
20620
20663
  } }
20621
- function QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_ng_container_1_tr_15_Template(rf, ctx) { if (rf & 1) {
20664
+ function QueryDetailsComponent_ng_container_0_ng_container_46_ng_container_1_ng_container_1_tr_15_Template(rf, ctx) { if (rf & 1) {
20622
20665
  i0.ɵɵelementStart(0, "tr", 6)(1, "th", 7);
20623
20666
  i0.ɵɵtext(2);
20624
20667
  i0.ɵɵpipe(3, "rpxTranslate");
@@ -20633,19 +20676,19 @@ function QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_ng_
20633
20676
  i0.ɵɵadvance(3);
20634
20677
  i0.ɵɵtextInterpolate(child_r3.name);
20635
20678
  } }
20636
- function QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_ng_container_1_tr_22_ccd_query_attachments_read_5_Template(rf, ctx) { if (rf & 1) {
20637
- i0.ɵɵelement(0, "ccd-query-attachments-read", 13);
20679
+ function QueryDetailsComponent_ng_container_0_ng_container_46_ng_container_1_ng_container_1_tr_22_ccd_query_attachments_read_5_Template(rf, ctx) { if (rf & 1) {
20680
+ i0.ɵɵelement(0, "ccd-query-attachments-read", 15);
20638
20681
  } if (rf & 2) {
20639
20682
  const child_r3 = i0.ɵɵnextContext(3).$implicit;
20640
20683
  i0.ɵɵproperty("attachments", child_r3.attachments);
20641
20684
  } }
20642
- function QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_ng_container_1_tr_22_Template(rf, ctx) { if (rf & 1) {
20685
+ function QueryDetailsComponent_ng_container_0_ng_container_46_ng_container_1_ng_container_1_tr_22_Template(rf, ctx) { if (rf & 1) {
20643
20686
  i0.ɵɵelementStart(0, "tr", 6)(1, "th", 7);
20644
20687
  i0.ɵɵtext(2);
20645
20688
  i0.ɵɵpipe(3, "rpxTranslate");
20646
20689
  i0.ɵɵelementEnd();
20647
20690
  i0.ɵɵelementStart(4, "td", 8);
20648
- i0.ɵɵtemplate(5, QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_ng_container_1_tr_22_ccd_query_attachments_read_5_Template, 1, 1, "ccd-query-attachments-read", 12);
20691
+ i0.ɵɵtemplate(5, QueryDetailsComponent_ng_container_0_ng_container_46_ng_container_1_ng_container_1_tr_22_ccd_query_attachments_read_5_Template, 1, 1, "ccd-query-attachments-read", 14);
20649
20692
  i0.ɵɵelementEnd()();
20650
20693
  } if (rf & 2) {
20651
20694
  const child_r3 = i0.ɵɵnextContext(2).$implicit;
@@ -20654,7 +20697,7 @@ function QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_ng_
20654
20697
  i0.ɵɵadvance(3);
20655
20698
  i0.ɵɵproperty("ngIf", child_r3.attachments);
20656
20699
  } }
20657
- function QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_ng_container_1_Template(rf, ctx) { if (rf & 1) {
20700
+ function QueryDetailsComponent_ng_container_0_ng_container_46_ng_container_1_ng_container_1_Template(rf, ctx) { if (rf & 1) {
20658
20701
  i0.ɵɵelementContainerStart(0);
20659
20702
  i0.ɵɵelementStart(1, "table", 3);
20660
20703
  i0.ɵɵpipe(2, "rpxTranslate");
@@ -20670,7 +20713,7 @@ function QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_ng_
20670
20713
  i0.ɵɵtext(13);
20671
20714
  i0.ɵɵpipe(14, "date");
20672
20715
  i0.ɵɵelementEnd()();
20673
- i0.ɵɵtemplate(15, QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_ng_container_1_tr_15_Template, 6, 4, "tr", 10);
20716
+ i0.ɵɵtemplate(15, QueryDetailsComponent_ng_container_0_ng_container_46_ng_container_1_ng_container_1_tr_15_Template, 6, 4, "tr", 10);
20674
20717
  i0.ɵɵelementStart(16, "tr", 6)(17, "th", 7);
20675
20718
  i0.ɵɵtext(18);
20676
20719
  i0.ɵɵpipe(19, "rpxTranslate");
@@ -20678,12 +20721,12 @@ function QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_ng_
20678
20721
  i0.ɵɵelementStart(20, "td", 8);
20679
20722
  i0.ɵɵtext(21);
20680
20723
  i0.ɵɵelementEnd()();
20681
- i0.ɵɵtemplate(22, QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_ng_container_1_tr_22_Template, 6, 4, "tr", 10);
20724
+ i0.ɵɵtemplate(22, QueryDetailsComponent_ng_container_0_ng_container_46_ng_container_1_ng_container_1_tr_22_Template, 6, 4, "tr", 10);
20682
20725
  i0.ɵɵelementEnd()();
20683
20726
  i0.ɵɵelementContainerEnd();
20684
20727
  } if (rf & 2) {
20685
20728
  const child_r3 = i0.ɵɵnextContext().$implicit;
20686
- const ctx_r1 = i0.ɵɵnextContext(3);
20729
+ const ctx_r0 = i0.ɵɵnextContext(3);
20687
20730
  i0.ɵɵadvance();
20688
20731
  i0.ɵɵattribute("aria-describedby", i0.ɵɵpipeBind1(2, 8, "Response of the query"));
20689
20732
  i0.ɵɵadvance(4);
@@ -20693,7 +20736,7 @@ function QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_ng_
20693
20736
  i0.ɵɵadvance(3);
20694
20737
  i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(14, 14, child_r3.createdOn, "dd MMM yyyy"));
20695
20738
  i0.ɵɵadvance(2);
20696
- i0.ɵɵproperty("ngIf", ctx_r1.isCaseworker());
20739
+ i0.ɵɵproperty("ngIf", ctx_r0.isCaseworker());
20697
20740
  i0.ɵɵadvance(3);
20698
20741
  i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(19, 17, "Response detail"));
20699
20742
  i0.ɵɵadvance(3);
@@ -20701,19 +20744,19 @@ function QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_ng_
20701
20744
  i0.ɵɵadvance();
20702
20745
  i0.ɵɵproperty("ngIf", child_r3.attachments.length > 0);
20703
20746
  } }
20704
- function QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_ng_template_2_tr_26_ccd_query_attachments_read_5_Template(rf, ctx) { if (rf & 1) {
20705
- i0.ɵɵelement(0, "ccd-query-attachments-read", 13);
20747
+ function QueryDetailsComponent_ng_container_0_ng_container_46_ng_container_1_ng_template_2_tr_26_ccd_query_attachments_read_5_Template(rf, ctx) { if (rf & 1) {
20748
+ i0.ɵɵelement(0, "ccd-query-attachments-read", 15);
20706
20749
  } if (rf & 2) {
20707
20750
  const child_r3 = i0.ɵɵnextContext(3).$implicit;
20708
20751
  i0.ɵɵproperty("attachments", child_r3.attachments);
20709
20752
  } }
20710
- function QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_ng_template_2_tr_26_Template(rf, ctx) { if (rf & 1) {
20753
+ function QueryDetailsComponent_ng_container_0_ng_container_46_ng_container_1_ng_template_2_tr_26_Template(rf, ctx) { if (rf & 1) {
20711
20754
  i0.ɵɵelementStart(0, "tr", 6)(1, "th", 7);
20712
20755
  i0.ɵɵtext(2);
20713
20756
  i0.ɵɵpipe(3, "rpxTranslate");
20714
20757
  i0.ɵɵelementEnd();
20715
20758
  i0.ɵɵelementStart(4, "td", 8);
20716
- i0.ɵɵtemplate(5, QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_ng_template_2_tr_26_ccd_query_attachments_read_5_Template, 1, 1, "ccd-query-attachments-read", 12);
20759
+ i0.ɵɵtemplate(5, QueryDetailsComponent_ng_container_0_ng_container_46_ng_container_1_ng_template_2_tr_26_ccd_query_attachments_read_5_Template, 1, 1, "ccd-query-attachments-read", 14);
20717
20760
  i0.ɵɵelementEnd()();
20718
20761
  } if (rf & 2) {
20719
20762
  const child_r3 = i0.ɵɵnextContext(2).$implicit;
@@ -20722,7 +20765,7 @@ function QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_ng_
20722
20765
  i0.ɵɵadvance(3);
20723
20766
  i0.ɵɵproperty("ngIf", child_r3.attachments);
20724
20767
  } }
20725
- function QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_ng_template_2_Template(rf, ctx) { if (rf & 1) {
20768
+ function QueryDetailsComponent_ng_container_0_ng_container_46_ng_container_1_ng_template_2_Template(rf, ctx) { if (rf & 1) {
20726
20769
  i0.ɵɵelementStart(0, "table", 3);
20727
20770
  i0.ɵɵpipe(1, "rpxTranslate");
20728
20771
  i0.ɵɵelementStart(2, "caption", 4)(3, "div");
@@ -20751,7 +20794,7 @@ function QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_ng_
20751
20794
  i0.ɵɵelementStart(24, "td", 8);
20752
20795
  i0.ɵɵtext(25);
20753
20796
  i0.ɵɵelementEnd()();
20754
- i0.ɵɵtemplate(26, QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_ng_template_2_tr_26_Template, 6, 4, "tr", 10);
20797
+ i0.ɵɵtemplate(26, QueryDetailsComponent_ng_container_0_ng_container_46_ng_container_1_ng_template_2_tr_26_Template, 6, 4, "tr", 10);
20755
20798
  i0.ɵɵelementEnd()();
20756
20799
  } if (rf & 2) {
20757
20800
  const child_r3 = i0.ɵɵnextContext().$implicit;
@@ -20773,9 +20816,9 @@ function QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_ng_
20773
20816
  i0.ɵɵadvance();
20774
20817
  i0.ɵɵproperty("ngIf", child_r3.attachments.length > 0);
20775
20818
  } }
20776
- function QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_Template(rf, ctx) { if (rf & 1) {
20819
+ function QueryDetailsComponent_ng_container_0_ng_container_46_ng_container_1_Template(rf, ctx) { if (rf & 1) {
20777
20820
  i0.ɵɵelementContainerStart(0);
20778
- i0.ɵɵtemplate(1, QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_ng_container_1_Template, 23, 19, "ng-container", 15)(2, QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_ng_template_2_Template, 27, 22, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor);
20821
+ i0.ɵɵtemplate(1, QueryDetailsComponent_ng_container_0_ng_container_46_ng_container_1_ng_container_1_Template, 23, 19, "ng-container", 17)(2, QueryDetailsComponent_ng_container_0_ng_container_46_ng_container_1_ng_template_2_Template, 27, 22, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor);
20779
20822
  i0.ɵɵelementContainerEnd();
20780
20823
  } if (rf & 2) {
20781
20824
  const i_r4 = ctx.index;
@@ -20783,117 +20826,125 @@ function QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_Tem
20783
20826
  i0.ɵɵadvance();
20784
20827
  i0.ɵɵproperty("ngIf", i_r4 % 2 === 0)("ngIfElse", followUpMessage_r5);
20785
20828
  } }
20786
- function QueryDetailsComponent_ng_container_0_ng_container_48_Template(rf, ctx) { if (rf & 1) {
20829
+ function QueryDetailsComponent_ng_container_0_ng_container_46_Template(rf, ctx) { if (rf & 1) {
20787
20830
  i0.ɵɵelementContainerStart(0);
20788
- i0.ɵɵtemplate(1, QueryDetailsComponent_ng_container_0_ng_container_48_ng_container_1_Template, 4, 2, "ng-container", 14);
20831
+ i0.ɵɵtemplate(1, QueryDetailsComponent_ng_container_0_ng_container_46_ng_container_1_Template, 4, 2, "ng-container", 16);
20789
20832
  i0.ɵɵelementContainerEnd();
20790
20833
  } if (rf & 2) {
20791
- const ctx_r1 = i0.ɵɵnextContext(2);
20834
+ const ctx_r0 = i0.ɵɵnextContext(2);
20792
20835
  i0.ɵɵadvance();
20793
- i0.ɵɵproperty("ngForOf", ctx_r1.query.children);
20836
+ i0.ɵɵproperty("ngForOf", ctx_r0.query.children);
20794
20837
  } }
20795
20838
  function QueryDetailsComponent_ng_container_0_Template(rf, ctx) { if (rf & 1) {
20796
- const _r1 = i0.ɵɵgetCurrentView();
20797
20839
  i0.ɵɵelementContainerStart(0);
20798
- i0.ɵɵelement(1, "br");
20799
- i0.ɵɵelementStart(2, "p")(3, "a", 2);
20800
- i0.ɵɵlistener("click", function QueryDetailsComponent_ng_container_0_Template_a_click_3_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.onBack()); });
20801
- i0.ɵɵtext(4);
20802
- i0.ɵɵpipe(5, "rpxTranslate");
20803
- i0.ɵɵelementEnd()();
20804
- i0.ɵɵelementStart(6, "div")(7, "table", 3);
20805
- i0.ɵɵpipe(8, "rpxTranslate");
20806
- i0.ɵɵelementStart(9, "caption", 4)(10, "div");
20807
- i0.ɵɵtext(11);
20808
- i0.ɵɵpipe(12, "rpxTranslate");
20840
+ i0.ɵɵtemplate(1, QueryDetailsComponent_ng_container_0_cut_alert_1_Template, 3, 1, "cut-alert", 2);
20841
+ i0.ɵɵelement(2, "br");
20842
+ i0.ɵɵtemplate(3, QueryDetailsComponent_ng_container_0_p_3_Template, 4, 3, "p", 1);
20843
+ i0.ɵɵelementStart(4, "div")(5, "table", 3);
20844
+ i0.ɵɵpipe(6, "rpxTranslate");
20845
+ i0.ɵɵelementStart(7, "caption", 4)(8, "div");
20846
+ i0.ɵɵtext(9);
20847
+ i0.ɵɵpipe(10, "rpxTranslate");
20809
20848
  i0.ɵɵelementEnd()();
20810
- i0.ɵɵelementStart(13, "tbody", 5)(14, "tr", 6)(15, "th", 7);
20811
- i0.ɵɵtext(16);
20812
- i0.ɵɵpipe(17, "rpxTranslate");
20849
+ i0.ɵɵelementStart(11, "tbody", 5)(12, "tr", 6)(13, "th", 7);
20850
+ i0.ɵɵtext(14);
20851
+ i0.ɵɵpipe(15, "rpxTranslate");
20813
20852
  i0.ɵɵelementEnd();
20814
- i0.ɵɵelementStart(18, "td", 8);
20815
- i0.ɵɵtext(19);
20853
+ i0.ɵɵelementStart(16, "td", 8);
20854
+ i0.ɵɵtext(17);
20816
20855
  i0.ɵɵelementEnd()();
20817
- i0.ɵɵelementStart(20, "tr", 6)(21, "th", 7);
20818
- i0.ɵɵtext(22);
20819
- i0.ɵɵpipe(23, "rpxTranslate");
20856
+ i0.ɵɵelementStart(18, "tr", 6)(19, "th", 7);
20857
+ i0.ɵɵtext(20);
20858
+ i0.ɵɵpipe(21, "rpxTranslate");
20820
20859
  i0.ɵɵelementEnd();
20821
- i0.ɵɵelementStart(24, "td", 8);
20822
- i0.ɵɵtext(25);
20823
- i0.ɵɵpipe(26, "date");
20860
+ i0.ɵɵelementStart(22, "td", 8);
20861
+ i0.ɵɵtext(23);
20862
+ i0.ɵɵpipe(24, "date");
20824
20863
  i0.ɵɵelementEnd()();
20825
- i0.ɵɵelementStart(27, "tr", 6)(28, "th", 7);
20826
- i0.ɵɵtext(29);
20827
- i0.ɵɵpipe(30, "rpxTranslate");
20864
+ i0.ɵɵelementStart(25, "tr", 6)(26, "th", 7);
20865
+ i0.ɵɵtext(27);
20866
+ i0.ɵɵpipe(28, "rpxTranslate");
20828
20867
  i0.ɵɵelementEnd();
20829
- i0.ɵɵelementStart(31, "td", 8);
20830
- i0.ɵɵtext(32);
20868
+ i0.ɵɵelementStart(29, "td", 8);
20869
+ i0.ɵɵtext(30);
20831
20870
  i0.ɵɵelementEnd()();
20832
- i0.ɵɵelementStart(33, "tr", 6)(34, "th", 7);
20833
- i0.ɵɵtext(35);
20834
- i0.ɵɵpipe(36, "rpxTranslate");
20871
+ i0.ɵɵelementStart(31, "tr", 6)(32, "th", 7);
20872
+ i0.ɵɵtext(33);
20873
+ i0.ɵɵpipe(34, "rpxTranslate");
20835
20874
  i0.ɵɵelementEnd();
20836
- i0.ɵɵelementStart(37, "td", 8);
20837
- i0.ɵɵtext(38);
20875
+ i0.ɵɵelementStart(35, "td", 8);
20876
+ i0.ɵɵtext(36);
20838
20877
  i0.ɵɵelementEnd()();
20839
- i0.ɵɵelementStart(39, "tr", 6)(40, "th", 7);
20840
- i0.ɵɵtext(41);
20841
- i0.ɵɵpipe(42, "rpxTranslate");
20878
+ i0.ɵɵelementStart(37, "tr", 6)(38, "th", 7);
20879
+ i0.ɵɵtext(39);
20880
+ i0.ɵɵpipe(40, "rpxTranslate");
20842
20881
  i0.ɵɵelementEnd();
20843
- i0.ɵɵelementStart(43, "td", 8);
20844
- i0.ɵɵtext(44);
20845
- i0.ɵɵpipe(45, "rpxTranslate");
20882
+ i0.ɵɵelementStart(41, "td", 8);
20883
+ i0.ɵɵtext(42);
20884
+ i0.ɵɵpipe(43, "rpxTranslate");
20846
20885
  i0.ɵɵelementEnd()();
20847
- i0.ɵɵtemplate(46, QueryDetailsComponent_ng_container_0_tr_46_Template, 7, 7, "tr", 9)(47, QueryDetailsComponent_ng_container_0_tr_47_Template, 6, 4, "tr", 10);
20886
+ i0.ɵɵtemplate(44, QueryDetailsComponent_ng_container_0_tr_44_Template, 7, 7, "tr", 9)(45, QueryDetailsComponent_ng_container_0_tr_45_Template, 6, 4, "tr", 10);
20848
20887
  i0.ɵɵelementEnd()()();
20849
- i0.ɵɵtemplate(48, QueryDetailsComponent_ng_container_0_ng_container_48_Template, 2, 1, "ng-container", 1);
20888
+ i0.ɵɵtemplate(46, QueryDetailsComponent_ng_container_0_ng_container_46_Template, 2, 1, "ng-container", 1);
20850
20889
  i0.ɵɵelementContainerEnd();
20851
20890
  } if (rf & 2) {
20852
- const ctx_r1 = i0.ɵɵnextContext();
20853
- i0.ɵɵadvance(4);
20854
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(5, 20, "Back to query list"));
20855
- i0.ɵɵadvance(3);
20856
- i0.ɵɵattribute("aria-describedby", i0.ɵɵpipeBind1(8, 22, "Details of the query"));
20891
+ const ctx_r0 = i0.ɵɵnextContext();
20892
+ i0.ɵɵadvance();
20893
+ i0.ɵɵproperty("ngIf", ctx_r0.hasRespondedToQuery());
20894
+ i0.ɵɵadvance(2);
20895
+ i0.ɵɵproperty("ngIf", ctx_r0.showLink);
20896
+ i0.ɵɵadvance(2);
20897
+ i0.ɵɵattribute("aria-describedby", i0.ɵɵpipeBind1(6, 21, "Details of the query"));
20857
20898
  i0.ɵɵadvance(4);
20858
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(12, 24, "Query details"));
20899
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(10, 23, "Query details"));
20859
20900
  i0.ɵɵadvance(5);
20860
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(17, 26, "Last submitted by"));
20901
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(15, 25, "Last submitted by"));
20861
20902
  i0.ɵɵadvance(3);
20862
- i0.ɵɵtextInterpolate(ctx_r1.query.lastSubmittedBy);
20903
+ i0.ɵɵtextInterpolate(ctx_r0.query.lastSubmittedBy);
20863
20904
  i0.ɵɵadvance(3);
20864
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(23, 28, "Submission date"));
20905
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(21, 27, "Submission date"));
20865
20906
  i0.ɵɵadvance(3);
20866
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(26, 30, ctx_r1.query.createdOn, "dd MMM yyyy"));
20907
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(24, 29, ctx_r0.query.createdOn, "dd MMM yyyy"));
20867
20908
  i0.ɵɵadvance(4);
20868
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(30, 33, "Query subject"));
20909
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(28, 32, "Query subject"));
20869
20910
  i0.ɵɵadvance(3);
20870
- i0.ɵɵtextInterpolate(ctx_r1.query.subject);
20911
+ i0.ɵɵtextInterpolate(ctx_r0.query.subject);
20871
20912
  i0.ɵɵadvance(3);
20872
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(36, 35, "Query body"));
20913
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(34, 34, "Query body"));
20873
20914
  i0.ɵɵadvance(3);
20874
- i0.ɵɵtextInterpolate(ctx_r1.query.body);
20915
+ i0.ɵɵtextInterpolate(ctx_r0.query.body);
20875
20916
  i0.ɵɵadvance(2);
20876
- i0.ɵɵclassProp("govuk-table__header--no-border", ctx_r1.query.isHearingRelated);
20917
+ i0.ɵɵclassProp("govuk-table__header--no-border", ctx_r0.query.isHearingRelated);
20877
20918
  i0.ɵɵadvance();
20878
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(42, 37, "Is the query hearing related?"), " ");
20919
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(40, 36, "Is the query hearing related?"), " ");
20879
20920
  i0.ɵɵadvance(2);
20880
- i0.ɵɵclassProp("govuk-table__cell--no-border", ctx_r1.query.isHearingRelated);
20921
+ i0.ɵɵclassProp("govuk-table__cell--no-border", ctx_r0.query.isHearingRelated);
20881
20922
  i0.ɵɵadvance();
20882
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind3(45, 39, "Is the query hearing related?", null, ctx_r1.query.isHearingRelated), "");
20923
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind3(43, 38, "Is the query hearing related?", null, ctx_r0.query.isHearingRelated), "");
20883
20924
  i0.ɵɵadvance(2);
20884
- i0.ɵɵproperty("ngIf", ctx_r1.query.isHearingRelated === "Yes");
20925
+ i0.ɵɵproperty("ngIf", ctx_r0.query.isHearingRelated === "Yes");
20885
20926
  i0.ɵɵadvance();
20886
- i0.ɵɵproperty("ngIf", ctx_r1.query.attachments.length > 0);
20927
+ i0.ɵɵproperty("ngIf", ctx_r0.query.attachments.length > 0);
20887
20928
  i0.ɵɵadvance();
20888
- i0.ɵɵproperty("ngIf", (ctx_r1.query.children == null ? null : ctx_r1.query.children.length) > 0);
20929
+ i0.ɵɵproperty("ngIf", (ctx_r0.query.children == null ? null : ctx_r0.query.children.length) > 0);
20889
20930
  } }
20890
20931
  class QueryDetailsComponent {
20891
20932
  sessionStorageService;
20933
+ route;
20934
+ router;
20892
20935
  query;
20893
20936
  backClicked = new EventEmitter();
20894
20937
  caseId;
20895
- constructor(sessionStorageService) {
20938
+ hasResponded = new EventEmitter();
20939
+ totalNumberOfQueryChildren;
20940
+ showLink = true;
20941
+ message;
20942
+ static QUERY_ITEM_RESPOND = '3';
20943
+ queryItemId;
20944
+ constructor(sessionStorageService, route, router) {
20896
20945
  this.sessionStorageService = sessionStorageService;
20946
+ this.route = route;
20947
+ this.router = router;
20897
20948
  }
20898
20949
  onBack() {
20899
20950
  this.backClicked.emit(true);
@@ -20904,24 +20955,45 @@ class QueryDetailsComponent {
20904
20955
  && !(userDetails.roles.includes('pui-case-manager')
20905
20956
  || userDetails.roles.some((role) => role.toLowerCase().includes('judge')));
20906
20957
  }
20907
- static ɵfac = function QueryDetailsComponent_Factory(t) { return new (t || QueryDetailsComponent)(i0.ɵɵdirectiveInject(SessionStorageService)); };
20908
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: QueryDetailsComponent, selectors: [["ccd-query-details"]], inputs: { query: "query", caseId: "caseId" }, outputs: { backClicked: "backClicked" }, decls: 1, vars: 1, consts: [["followUpMessage", ""], [4, "ngIf"], ["href", "javascript:void(0)", 1, "govuk-link", 3, "click"], [1, "govuk-table", "query-details-table"], [1, "govuk-table__caption", "govuk-table__caption--l"], [1, "govuk-table__body"], [1, "govuk-table__row"], ["scope", "row", 1, "govuk-table__header"], [1, "govuk-table__cell"], ["class", "govuk-table__row govuk-table__row--isHearingRelated", 4, "ngIf"], ["class", "govuk-table__row", 4, "ngIf"], [1, "govuk-table__row", "govuk-table__row--isHearingRelated"], [3, "attachments", 4, "ngIf"], [3, "attachments"], [4, "ngFor", "ngForOf"], [4, "ngIf", "ngIfElse"]], template: function QueryDetailsComponent_Template(rf, ctx) { if (rf & 1) {
20909
- i0.ɵɵtemplate(0, QueryDetailsComponent_ng_container_0_Template, 49, 43, "ng-container", 1);
20958
+ ngOnChanges() {
20959
+ this.toggleLinkVisibility();
20960
+ this.hasRespondedToQuery();
20961
+ }
20962
+ toggleLinkVisibility() {
20963
+ this.queryItemId = this.route.snapshot.params.qid;
20964
+ this.showLink = this.queryItemId !== QueryDetailsComponent.QUERY_ITEM_RESPOND;
20965
+ }
20966
+ hasRespondedToQuery() {
20967
+ if (this.totalNumberOfQueryChildren >= 0 && this.isCaseworker() && this.totalNumberOfQueryChildren % 2 !== 0) {
20968
+ this.message = Constants.TASK_COMPLETION_ERROR;
20969
+ this.hasResponded.emit(true);
20970
+ return true;
20971
+ }
20972
+ this.hasResponded.emit(false);
20973
+ return false;
20974
+ }
20975
+ static ɵfac = function QueryDetailsComponent_Factory(t) { return new (t || QueryDetailsComponent)(i0.ɵɵdirectiveInject(SessionStorageService), i0.ɵɵdirectiveInject(i1$1.ActivatedRoute), i0.ɵɵdirectiveInject(i1$1.Router)); };
20976
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: QueryDetailsComponent, selectors: [["ccd-query-details"]], inputs: { query: "query", caseId: "caseId", totalNumberOfQueryChildren: "totalNumberOfQueryChildren" }, outputs: { backClicked: "backClicked", hasResponded: "hasResponded" }, features: [i0.ɵɵNgOnChangesFeature], decls: 1, vars: 1, consts: [["followUpMessage", ""], [4, "ngIf"], ["type", "error", 4, "ngIf"], [1, "govuk-table", "query-details-table"], [1, "govuk-table__caption", "govuk-table__caption--l"], [1, "govuk-table__body"], [1, "govuk-table__row"], ["scope", "row", 1, "govuk-table__header"], [1, "govuk-table__cell"], ["class", "govuk-table__row govuk-table__row--isHearingRelated", 4, "ngIf"], ["class", "govuk-table__row", 4, "ngIf"], ["type", "error"], ["href", "javascript:void(0)", 1, "govuk-link", 3, "click"], [1, "govuk-table__row", "govuk-table__row--isHearingRelated"], [3, "attachments", 4, "ngIf"], [3, "attachments"], [4, "ngFor", "ngForOf"], [4, "ngIf", "ngIfElse"]], template: function QueryDetailsComponent_Template(rf, ctx) { if (rf & 1) {
20977
+ i0.ɵɵtemplate(0, QueryDetailsComponent_ng_container_0_Template, 47, 42, "ng-container", 1);
20910
20978
  } if (rf & 2) {
20911
20979
  i0.ɵɵproperty("ngIf", ctx.query);
20912
20980
  } }, styles: [".query-details-table[_ngcontent-%COMP%] .govuk-table__header[_ngcontent-%COMP%]{width:330px}"] });
20913
20981
  }
20914
20982
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(QueryDetailsComponent, [{
20915
20983
  type: Component,
20916
- args: [{ selector: 'ccd-query-details', template: "<ng-container *ngIf=\"query\">\n <br/>\n <p>\n <a class=\"govuk-link\" href=\"javascript:void(0)\" (click)=\"onBack()\">{{ 'Back to query list' | rpxTranslate }}</a>\n </p>\n <div>\n <table class=\"govuk-table query-details-table\" [attr.aria-describedby]=\"'Details of the query' | rpxTranslate\">\n <caption class=\"govuk-table__caption govuk-table__caption--l\">\n <div>{{ 'Query details' | rpxTranslate }}</div>\n </caption>\n <tbody class=\"govuk-table__body\">\n <tr class=\"govuk-table__row\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Last submitted by' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">{{ query.lastSubmittedBy }}</td>\n </tr>\n <tr class=\"govuk-table__row\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Submission date' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">{{ query.createdOn | date: 'dd MMM yyyy' }}</td>\n </tr>\n <tr class=\"govuk-table__row\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Query subject' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">{{ query.subject }}</td>\n </tr>\n <tr class=\"govuk-table__row\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Query body' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">{{ query.body }}</td>\n </tr>\n <tr class=\"govuk-table__row\">\n <th scope=\"row\" class=\"govuk-table__header\" [class.govuk-table__header--no-border]=\"query.isHearingRelated\">\n {{ 'Is the query hearing related?' | rpxTranslate }}\n </th>\n <td class=\"govuk-table__cell\" [class.govuk-table__cell--no-border]=\"query.isHearingRelated\">\n {{ 'Is the query hearing related?' | rpxTranslate: null : (query.isHearingRelated) }}</td>\n </tr>\n <tr class=\"govuk-table__row govuk-table__row--isHearingRelated\" *ngIf=\"query.isHearingRelated === 'Yes'\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'What is the date of the hearing?' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">{{ query.hearingDate | date: 'dd MMM yyyy' }}</td>\n </tr>\n <tr class=\"govuk-table__row\" *ngIf=\"query.attachments.length > 0\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Attachments' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">\n <ccd-query-attachments-read\n *ngIf=\"query.attachments\"\n [attachments]=\"query.attachments\"\n >\n </ccd-query-attachments-read>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n <ng-container *ngIf=\"query.children?.length > 0\">\n <ng-container *ngFor=\"let child of query.children; let i = index;\">\n <ng-container *ngIf=\"i % 2 === 0; else followUpMessage\">\n <table class=\"govuk-table query-details-table\" [attr.aria-describedby]=\"'Response of the query' | rpxTranslate\">\n <caption class=\"govuk-table__caption govuk-table__caption--l\">\n <div>{{ 'Response' | rpxTranslate }}</div>\n </caption>\n <tbody class=\"govuk-table__body\">\n <tr class=\"govuk-table__row\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Last response date' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">{{ child.createdOn | date: 'dd MMM yyyy' }}</td>\n </tr>\n\n <tr *ngIf=\"isCaseworker()\" class=\"govuk-table__row\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Caseworker name' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">{{ child.name }}</td>\n </tr>\n\n <tr class=\"govuk-table__row\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Response detail' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">{{ child.body }}</td>\n </tr>\n\n <tr class=\"govuk-table__row\" *ngIf=\"child.attachments.length > 0\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Attachments' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">\n <ccd-query-attachments-read\n *ngIf=\"child.attachments\"\n [attachments]=\"child.attachments\"\n >\n </ccd-query-attachments-read>\n </td>\n </tr>\n </tbody>\n </table>\n </ng-container>\n\n <ng-template #followUpMessage>\n <!-- <div class=\"query_details_caption\">{{ 'Follow-up' | rpxTranslate }}</div> -->\n <table class=\"govuk-table query-details-table\"\n [attr.aria-describedby]=\"'Follow-up of the response' | rpxTranslate\">\n <caption class=\"govuk-table__caption govuk-table__caption--l\">\n <div>{{ 'Follow up query' | rpxTranslate }}</div>\n </caption>\n <tbody class=\"govuk-table__body\">\n <tr class=\"govuk-table__row\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Last submission date' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">{{ child.createdOn | date: 'dd MMM yyyy' }}</td>\n </tr>\n\n <tr class=\"govuk-table__row\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Last submitted by' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">{{ child.name }}</td>\n </tr>\n\n <tr class=\"govuk-table__row\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Query detail' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">{{ child.body }}</td>\n </tr>\n\n <tr class=\"govuk-table__row\" *ngIf=\"child.attachments.length > 0\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Attachments' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">\n <ccd-query-attachments-read\n *ngIf=\"child.attachments\"\n [attachments]=\"child.attachments\"\n >\n </ccd-query-attachments-read>\n </td>\n </tr>\n </tbody>\n </table>\n </ng-template>\n </ng-container>\n </ng-container>\n</ng-container>\n", styles: [".query-details-table .govuk-table__header{width:330px}\n"] }]
20917
- }], () => [{ type: SessionStorageService }], { query: [{
20984
+ args: [{ selector: 'ccd-query-details', template: "<ng-container *ngIf=\"query\">\n <cut-alert type=\"error\" *ngIf=\"hasRespondedToQuery()\">\n <ng-container>{{message}}</ng-container>\n </cut-alert>\n\n <br/>\n <p *ngIf=\"showLink\">\n <a class=\"govuk-link\" href=\"javascript:void(0)\" (click)=\"onBack()\">{{ 'Back to query list' | rpxTranslate }}</a>\n </p>\n <div>\n <table class=\"govuk-table query-details-table\" [attr.aria-describedby]=\"'Details of the query' | rpxTranslate\">\n <caption class=\"govuk-table__caption govuk-table__caption--l\">\n <div>{{ 'Query details' | rpxTranslate }}</div>\n </caption>\n <tbody class=\"govuk-table__body\">\n <tr class=\"govuk-table__row\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Last submitted by' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">{{ query.lastSubmittedBy }}</td>\n </tr>\n <tr class=\"govuk-table__row\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Submission date' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">{{ query.createdOn | date: 'dd MMM yyyy' }}</td>\n </tr>\n <tr class=\"govuk-table__row\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Query subject' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">{{ query.subject }}</td>\n </tr>\n <tr class=\"govuk-table__row\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Query body' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">{{ query.body }}</td>\n </tr>\n <tr class=\"govuk-table__row\">\n <th scope=\"row\" class=\"govuk-table__header\" [class.govuk-table__header--no-border]=\"query.isHearingRelated\">\n {{ 'Is the query hearing related?' | rpxTranslate }}\n </th>\n <td class=\"govuk-table__cell\" [class.govuk-table__cell--no-border]=\"query.isHearingRelated\">\n {{ 'Is the query hearing related?' | rpxTranslate: null : (query.isHearingRelated) }}</td>\n </tr>\n <tr class=\"govuk-table__row govuk-table__row--isHearingRelated\" *ngIf=\"query.isHearingRelated === 'Yes'\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'What is the date of the hearing?' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">{{ query.hearingDate | date: 'dd MMM yyyy' }}</td>\n </tr>\n <tr class=\"govuk-table__row\" *ngIf=\"query.attachments.length > 0\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Attachments' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">\n <ccd-query-attachments-read\n *ngIf=\"query.attachments\"\n [attachments]=\"query.attachments\"\n >\n </ccd-query-attachments-read>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n <ng-container *ngIf=\"query.children?.length > 0\">\n <ng-container *ngFor=\"let child of query.children; let i = index;\">\n <ng-container *ngIf=\"i % 2 === 0; else followUpMessage\">\n <table class=\"govuk-table query-details-table\" [attr.aria-describedby]=\"'Response of the query' | rpxTranslate\">\n <caption class=\"govuk-table__caption govuk-table__caption--l\">\n <div>{{ 'Response' | rpxTranslate }}</div>\n </caption>\n <tbody class=\"govuk-table__body\">\n <tr class=\"govuk-table__row\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Last response date' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">{{ child.createdOn | date: 'dd MMM yyyy' }}</td>\n </tr>\n\n <tr *ngIf=\"isCaseworker()\" class=\"govuk-table__row\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Caseworker name' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">{{ child.name }}</td>\n </tr>\n\n <tr class=\"govuk-table__row\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Response detail' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">{{ child.body }}</td>\n </tr>\n\n <tr class=\"govuk-table__row\" *ngIf=\"child.attachments.length > 0\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Attachments' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">\n <ccd-query-attachments-read\n *ngIf=\"child.attachments\"\n [attachments]=\"child.attachments\"\n >\n </ccd-query-attachments-read>\n </td>\n </tr>\n </tbody>\n </table>\n </ng-container>\n\n <ng-template #followUpMessage>\n <!-- <div class=\"query_details_caption\">{{ 'Follow-up' | rpxTranslate }}</div> -->\n <table class=\"govuk-table query-details-table\"\n [attr.aria-describedby]=\"'Follow-up of the response' | rpxTranslate\">\n <caption class=\"govuk-table__caption govuk-table__caption--l\">\n <div>{{ 'Follow up query' | rpxTranslate }}</div>\n </caption>\n <tbody class=\"govuk-table__body\">\n <tr class=\"govuk-table__row\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Last submission date' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">{{ child.createdOn | date: 'dd MMM yyyy' }}</td>\n </tr>\n\n <tr class=\"govuk-table__row\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Last submitted by' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">{{ child.name }}</td>\n </tr>\n\n <tr class=\"govuk-table__row\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Query detail' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">{{ child.body }}</td>\n </tr>\n\n <tr class=\"govuk-table__row\" *ngIf=\"child.attachments.length > 0\">\n <th scope=\"row\" class=\"govuk-table__header\">{{ 'Attachments' | rpxTranslate }}</th>\n <td class=\"govuk-table__cell\">\n <ccd-query-attachments-read\n *ngIf=\"child.attachments\"\n [attachments]=\"child.attachments\"\n >\n </ccd-query-attachments-read>\n </td>\n </tr>\n </tbody>\n </table>\n </ng-template>\n </ng-container>\n </ng-container>\n</ng-container>\n", styles: [".query-details-table .govuk-table__header{width:330px}\n"] }]
20985
+ }], () => [{ type: SessionStorageService }, { type: i1$1.ActivatedRoute }, { type: i1$1.Router }], { query: [{
20918
20986
  type: Input
20919
20987
  }], backClicked: [{
20920
20988
  type: Output
20921
20989
  }], caseId: [{
20922
20990
  type: Input
20991
+ }], hasResponded: [{
20992
+ type: Output
20993
+ }], totalNumberOfQueryChildren: [{
20994
+ type: Input
20923
20995
  }] }); })();
20924
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(QueryDetailsComponent, { className: "QueryDetailsComponent", filePath: "lib/shared/components/palette/query-management/components/query-details/query-details.component.ts", lineNumber: 10 }); })();
20996
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(QueryDetailsComponent, { className: "QueryDetailsComponent", filePath: "lib/shared/components/palette/query-management/components/query-details/query-details.component.ts", lineNumber: 11 }); })();
20925
20997
 
20926
20998
  class QueryEventCompletionComponent {
20927
20999
  eventCompletionParams;
@@ -21513,8 +21585,8 @@ class QueryWriteRaiseQueryComponent {
21513
21585
  }] }); })();
21514
21586
  (() => { (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 }); })();
21515
21587
 
21516
- function QueryWriteRespondToQueryComponent_div_12_p_11_Template(rf, ctx) { if (rf & 1) {
21517
- i0.ɵɵelementStart(0, "p", 15)(1, "span", 16);
21588
+ function QueryWriteRespondToQueryComponent_div_12_div_1_p_10_Template(rf, ctx) { if (rf & 1) {
21589
+ i0.ɵɵelementStart(0, "p", 16)(1, "span", 17);
21518
21590
  i0.ɵɵtext(2);
21519
21591
  i0.ɵɵpipe(3, "rpxTranslate");
21520
21592
  i0.ɵɵelementEnd();
@@ -21522,66 +21594,123 @@ function QueryWriteRespondToQueryComponent_div_12_p_11_Template(rf, ctx) { if (r
21522
21594
  i0.ɵɵpipe(5, "rpxTranslate");
21523
21595
  i0.ɵɵelementEnd();
21524
21596
  } if (rf & 2) {
21525
- const ctx_r0 = i0.ɵɵnextContext(2);
21597
+ const ctx_r0 = i0.ɵɵnextContext(3);
21526
21598
  i0.ɵɵadvance(2);
21527
21599
  i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(3, 2, "Error:"), " ");
21528
21600
  i0.ɵɵadvance(2);
21529
21601
  i0.ɵɵtextInterpolate1("", ctx_r0.queryCreateContext === ctx_r0.queryCreateContextEnum.RESPOND ? ctx_r0.raiseQueryErrorMessages.RESPOND_QUERY_BODY : i0.ɵɵpipeBind1(5, 4, ctx_r0.raiseQueryErrorMessages.QUERY_BODY), " ");
21530
21602
  } }
21531
- function QueryWriteRespondToQueryComponent_div_12_Template(rf, ctx) { if (rf & 1) {
21532
- i0.ɵɵelementStart(0, "div", 7)(1, "div")(2, "h1", 8);
21533
- i0.ɵɵtext(3);
21534
- i0.ɵɵpipe(4, "rpxTranslate");
21603
+ function QueryWriteRespondToQueryComponent_div_12_div_1_Template(rf, ctx) { if (rf & 1) {
21604
+ i0.ɵɵelementStart(0, "div")(1, "h1", 9);
21605
+ i0.ɵɵtext(2);
21606
+ i0.ɵɵpipe(3, "rpxTranslate");
21535
21607
  i0.ɵɵelementEnd();
21536
- i0.ɵɵelementStart(5, "div", 9)(6, "div", 10)(7, "div", 11)(8, "label", 12);
21537
- i0.ɵɵtext(9);
21538
- i0.ɵɵpipe(10, "rpxTranslate");
21608
+ i0.ɵɵelementStart(4, "div", 10)(5, "div", 11)(6, "div", 12)(7, "label", 13);
21609
+ i0.ɵɵtext(8);
21610
+ i0.ɵɵpipe(9, "rpxTranslate");
21539
21611
  i0.ɵɵelementEnd()();
21540
- i0.ɵɵtemplate(11, QueryWriteRespondToQueryComponent_div_12_p_11_Template, 6, 6, "p", 13);
21541
- i0.ɵɵelementStart(12, "textarea", 14);
21542
- i0.ɵɵtext(13, " ");
21543
- i0.ɵɵelementEnd()()()()();
21612
+ i0.ɵɵtemplate(10, QueryWriteRespondToQueryComponent_div_12_div_1_p_10_Template, 6, 6, "p", 14);
21613
+ i0.ɵɵelementStart(11, "textarea", 15);
21614
+ i0.ɵɵtext(12, " ");
21615
+ i0.ɵɵelementEnd()()()();
21544
21616
  } if (rf & 2) {
21545
- let tmp_3_0;
21546
- let tmp_5_0;
21617
+ let tmp_4_0;
21547
21618
  let tmp_6_0;
21548
- const ctx_r0 = i0.ɵɵnextContext();
21549
- i0.ɵɵadvance(3);
21550
- i0.ɵɵtextInterpolate1(" ", ctx_r0.queryCreateContext === ctx_r0.queryCreateContextEnum.RESPOND ? "Respond to a query" : i0.ɵɵpipeBind1(4, 9, "Ask a follow-up question"), " ");
21619
+ let tmp_7_0;
21620
+ const ctx_r0 = i0.ɵɵnextContext(2);
21621
+ i0.ɵɵadvance(2);
21622
+ i0.ɵɵtextInterpolate1(" ", ctx_r0.queryCreateContext === ctx_r0.queryCreateContextEnum.RESPOND ? "Respond to a query" : i0.ɵɵpipeBind1(3, 9, "Ask a follow-up question"), " ");
21551
21623
  i0.ɵɵadvance(2);
21552
21624
  i0.ɵɵproperty("formGroup", ctx_r0.formGroup);
21553
21625
  i0.ɵɵadvance();
21554
- i0.ɵɵclassProp("govuk-form-group--error", ctx_r0.submitted && ((tmp_3_0 = ctx_r0.formGroup.get("body")) == null ? null : tmp_3_0.hasError("required")));
21626
+ i0.ɵɵclassProp("govuk-form-group--error", ctx_r0.submitted && ((tmp_4_0 = ctx_r0.formGroup.get("body")) == null ? null : tmp_4_0.hasError("required")));
21555
21627
  i0.ɵɵadvance(3);
21556
- i0.ɵɵtextInterpolate1(" ", ctx_r0.queryCreateContext === ctx_r0.queryCreateContextEnum.RESPOND ? "Response detail" : i0.ɵɵpipeBind1(10, 11, "Query Body"), " ");
21628
+ i0.ɵɵtextInterpolate1(" ", ctx_r0.queryCreateContext === ctx_r0.queryCreateContextEnum.RESPOND ? "Response detail" : i0.ɵɵpipeBind1(9, 11, "Query Body"), " ");
21557
21629
  i0.ɵɵadvance(2);
21558
- i0.ɵɵproperty("ngIf", ctx_r0.submitted && ((tmp_5_0 = ctx_r0.formGroup.get("body")) == null ? null : tmp_5_0.hasError("required")));
21630
+ i0.ɵɵproperty("ngIf", ctx_r0.submitted && ((tmp_6_0 = ctx_r0.formGroup.get("body")) == null ? null : tmp_6_0.hasError("required")));
21559
21631
  i0.ɵɵadvance();
21560
- i0.ɵɵclassProp("govuk-textarea--error", ctx_r0.submitted && ((tmp_6_0 = ctx_r0.formGroup.get("body")) == null ? null : tmp_6_0.hasError("required")));
21632
+ i0.ɵɵclassProp("govuk-textarea--error", ctx_r0.submitted && ((tmp_7_0 = ctx_r0.formGroup.get("body")) == null ? null : tmp_7_0.hasError("required")));
21561
21633
  i0.ɵɵproperty("formControlName", "body");
21562
21634
  } }
21635
+ function QueryWriteRespondToQueryComponent_div_12_Template(rf, ctx) { if (rf & 1) {
21636
+ i0.ɵɵelementStart(0, "div", 7);
21637
+ i0.ɵɵtemplate(1, QueryWriteRespondToQueryComponent_div_12_div_1_Template, 13, 13, "div", 8);
21638
+ i0.ɵɵelementEnd();
21639
+ } if (rf & 2) {
21640
+ const ctx_r0 = i0.ɵɵnextContext();
21641
+ i0.ɵɵadvance();
21642
+ i0.ɵɵproperty("ngIf", !ctx_r0.hasRespondedToQuery);
21643
+ } }
21563
21644
  class QueryWriteRespondToQueryComponent {
21564
21645
  caseNotifier;
21646
+ route;
21565
21647
  queryItem;
21566
21648
  formGroup;
21567
21649
  queryCreateContext;
21568
21650
  submitted = false;
21651
+ caseQueriesCollections;
21569
21652
  showForm;
21653
+ hasRespondedToQueryTask = new EventEmitter();
21570
21654
  queryCreateContextEnum = QueryCreateContext;
21571
21655
  raiseQueryErrorMessages = RaiseQueryErrorMessage;
21572
21656
  caseId;
21657
+ queryItemId;
21573
21658
  caseDetails;
21574
- constructor(caseNotifier) {
21659
+ totalNumberOfQueryChildren;
21660
+ queryItemDisplay;
21661
+ hasRespondedToQuery = false;
21662
+ static QUERY_ITEM_RESPOND = '3';
21663
+ static QUERY_ITEM_FOLLOWUP = '4';
21664
+ constructor(caseNotifier, route) {
21575
21665
  this.caseNotifier = caseNotifier;
21666
+ this.route = route;
21576
21667
  }
21577
21668
  ngOnInit() {
21578
- this.caseNotifier.caseView.pipe(take(1)).subscribe(caseDetails => {
21579
- this.caseId = caseDetails.case_id;
21580
- this.caseDetails = caseDetails;
21669
+ this.queryItemId = this.route.snapshot.params.qid;
21670
+ this.caseNotifier.caseView.pipe(take(1)).subscribe({
21671
+ next: (caseDetails) => {
21672
+ this.caseId = caseDetails?.case_id ?? '';
21673
+ this.caseDetails = caseDetails;
21674
+ },
21675
+ error: (err) => {
21676
+ console.error('Error retrieving case details:', err);
21677
+ }
21581
21678
  });
21582
21679
  }
21583
- static ɵfac = function QueryWriteRespondToQueryComponent_Factory(t) { return new (t || QueryWriteRespondToQueryComponent)(i0.ɵɵdirectiveInject(CaseNotifier)); };
21584
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: QueryWriteRespondToQueryComponent, selectors: [["ccd-query-write-respond-to-query"]], inputs: { queryItem: "queryItem", formGroup: "formGroup", queryCreateContext: "queryCreateContext", submitted: "submitted", showForm: "showForm" }, decls: 13, vars: 9, 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"], [3, "query"], ["class", "query-respond", 4, "ngIf"], [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"]], template: function QueryWriteRespondToQueryComponent_Template(rf, ctx) { if (rf & 1) {
21680
+ ngOnChanges() {
21681
+ if (this.queryItemId === QueryWriteRespondToQueryComponent.QUERY_ITEM_RESPOND
21682
+ && this.caseQueriesCollections?.length > 0) {
21683
+ if (!this.caseQueriesCollections[0]) {
21684
+ console.error('caseQueriesCollections[0] is undefined!', this.caseQueriesCollections);
21685
+ return;
21686
+ }
21687
+ const numberOfQueryChildren = new QueryListData(this.caseQueriesCollections[0]);
21688
+ this.totalNumberOfQueryChildren = numberOfQueryChildren?.queries?.[0]?.children?.length || 0;
21689
+ const messageId = this.route.snapshot.params.dataid;
21690
+ if (!messageId) {
21691
+ console.warn('No messageId found in route params:', this.route.snapshot.params);
21692
+ return;
21693
+ }
21694
+ const filteredMessages = this.caseQueriesCollections
21695
+ .map((caseData) => caseData?.caseMessages || []) // Ensure caseMessages is always an array
21696
+ .flat() // Flatten into a single array of messages
21697
+ .filter((message) => message?.value?.id === messageId); // Safe access
21698
+ if (filteredMessages.length > 0) {
21699
+ const matchingMessage = filteredMessages[0]?.value;
21700
+ if (matchingMessage) {
21701
+ this.queryItemDisplay = new QueryListItem();
21702
+ Object.assign(this.queryItemDisplay, matchingMessage);
21703
+ this.queryItem = this.queryItemDisplay;
21704
+ }
21705
+ }
21706
+ }
21707
+ }
21708
+ hasResponded(value) {
21709
+ this.hasRespondedToQuery = value;
21710
+ this.hasRespondedToQueryTask.emit(value);
21711
+ }
21712
+ static ɵfac = function QueryWriteRespondToQueryComponent_Factory(t) { return new (t || QueryWriteRespondToQueryComponent)(i0.ɵɵdirectiveInject(CaseNotifier), i0.ɵɵdirectiveInject(i1$1.ActivatedRoute)); };
21713
+ 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: 13, vars: 10, 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"], [3, "hasResponded", "query", "totalNumberOfQueryChildren"], ["class", "query-respond", 4, "ngIf"], [1, "query-respond"], [4, "ngIf"], [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"]], template: function QueryWriteRespondToQueryComponent_Template(rf, ctx) { if (rf & 1) {
21585
21714
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 0)(2, "div", 1);
21586
21715
  i0.ɵɵtext(3);
21587
21716
  i0.ɵɵpipe(4, "rpxTranslate");
@@ -21593,27 +21722,27 @@ class QueryWriteRespondToQueryComponent {
21593
21722
  i0.ɵɵelementStart(8, "div", 3);
21594
21723
  i0.ɵɵelement(9, "ccd-query-case-details-header", 4);
21595
21724
  i0.ɵɵelementEnd();
21596
- i0.ɵɵelementStart(10, "div");
21597
- i0.ɵɵelement(11, "ccd-query-details", 5);
21598
- i0.ɵɵelementEnd()();
21599
- i0.ɵɵtemplate(12, QueryWriteRespondToQueryComponent_div_12_Template, 14, 13, "div", 6);
21725
+ i0.ɵɵelementStart(10, "div")(11, "ccd-query-details", 5);
21726
+ i0.ɵɵlistener("hasResponded", function QueryWriteRespondToQueryComponent_Template_ccd_query_details_hasResponded_11_listener($event) { return ctx.hasResponded($event); });
21727
+ i0.ɵɵelementEnd()()();
21728
+ i0.ɵɵtemplate(12, QueryWriteRespondToQueryComponent_div_12_Template, 2, 1, "div", 6);
21600
21729
  } if (rf & 2) {
21601
21730
  i0.ɵɵadvance(3);
21602
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(4, 5, "Respond to a query"));
21731
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(4, 6, "Respond to a query"));
21603
21732
  i0.ɵɵadvance(3);
21604
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(7, 7, "Query details"));
21733
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(7, 8, "Query details"));
21605
21734
  i0.ɵɵadvance(3);
21606
21735
  i0.ɵɵproperty("caseDetails", ctx.caseDetails);
21607
21736
  i0.ɵɵadvance(2);
21608
- i0.ɵɵproperty("query", ctx.queryItem);
21737
+ i0.ɵɵproperty("query", ctx.queryItem)("totalNumberOfQueryChildren", ctx.totalNumberOfQueryChildren);
21609
21738
  i0.ɵɵadvance();
21610
21739
  i0.ɵɵproperty("ngIf", ctx.showForm);
21611
21740
  } }, styles: [".query-respond[_ngcontent-%COMP%]{width:100%;max-width:720px}"] });
21612
21741
  }
21613
21742
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(QueryWriteRespondToQueryComponent, [{
21614
21743
  type: Component,
21615
- 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\"></ccd-query-case-details-header>\n </div>\n\n <div>\n <ccd-query-details [query]=\"queryItem\"></ccd-query-details>\n </div>\n</div>\n\n<div class=\"query-respond\" *ngIf=\"showForm\">\n <div>\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", styles: [".query-respond{width:100%;max-width:720px}\n"] }]
21616
- }], () => [{ type: CaseNotifier }], { queryItem: [{
21744
+ 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\"></ccd-query-case-details-header>\n </div>\n\n <div>\n <ccd-query-details [query]=\"queryItem\"\n [totalNumberOfQueryChildren]=\"totalNumberOfQueryChildren\"\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", styles: [".query-respond{width:100%;max-width:720px}\n"] }]
21745
+ }], () => [{ type: CaseNotifier }, { type: i1$1.ActivatedRoute }], { queryItem: [{
21617
21746
  type: Input
21618
21747
  }], formGroup: [{
21619
21748
  type: Input
@@ -21621,8 +21750,12 @@ class QueryWriteRespondToQueryComponent {
21621
21750
  type: Input
21622
21751
  }], submitted: [{
21623
21752
  type: Input
21753
+ }], caseQueriesCollections: [{
21754
+ type: Input
21624
21755
  }], showForm: [{
21625
21756
  type: Input
21757
+ }], hasRespondedToQueryTask: [{
21758
+ type: Output
21626
21759
  }] }); })();
21627
21760
  (() => { (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 }); })();
21628
21761
 
@@ -21753,7 +21886,6 @@ class QueryConfirmationComponent {
21753
21886
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(QueryConfirmationComponent, { className: "QueryConfirmationComponent", filePath: "lib/shared/components/palette/query-management/components/query-confirmation/query-confirmation.component.ts", lineNumber: 9 }); })();
21754
21887
 
21755
21888
  const _c0$B = (a0, a1) => ["/query-management", "query", a0, "4", a1];
21756
- const _c1$e = (a0, a1) => ["/query-management", "query", a0, "3", a1];
21757
21889
  function ReadQueryManagementFieldComponent_ng_container_0_ng_container_1_div_1_Template(rf, ctx) { if (rf & 1) {
21758
21890
  const _r1 = i0.ɵɵgetCurrentView();
21759
21891
  i0.ɵɵelementStart(0, "div", 5)(1, "ccd-query-list", 6);
@@ -21821,33 +21953,17 @@ function ReadQueryManagementFieldComponent_ng_template_1_ng_container_1_Template
21821
21953
  i0.ɵɵadvance();
21822
21954
  i0.ɵɵproperty("ngIf", (ctx_r1.query == null ? null : ctx_r1.query.children == null ? null : ctx_r1.query.children.length) > 0 && (ctx_r1.query == null ? null : ctx_r1.query.children == null ? null : ctx_r1.query.children.length) % 2 === 1)("ngIfElse", queryIsInReview_r5);
21823
21955
  } }
21824
- function ReadQueryManagementFieldComponent_ng_template_1_ng_container_2_Template(rf, ctx) { if (rf & 1) {
21825
- i0.ɵɵelementContainerStart(0);
21826
- i0.ɵɵelementStart(1, "button", 9);
21827
- i0.ɵɵtext(2);
21828
- i0.ɵɵpipe(3, "rpxTranslate");
21829
- i0.ɵɵelementEnd();
21830
- i0.ɵɵelementContainerEnd();
21831
- } if (rf & 2) {
21832
- const ctx_r1 = i0.ɵɵnextContext(2);
21833
- i0.ɵɵadvance();
21834
- i0.ɵɵproperty("routerLink", i0.ɵɵpureFunction2(4, _c1$e, ctx_r1.caseId, ctx_r1.query.id));
21835
- i0.ɵɵadvance();
21836
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 2, "Respond to a query"), " ");
21837
- } }
21838
21956
  function ReadQueryManagementFieldComponent_ng_template_1_Template(rf, ctx) { if (rf & 1) {
21839
21957
  const _r4 = i0.ɵɵgetCurrentView();
21840
21958
  i0.ɵɵelementStart(0, "ccd-query-details", 7);
21841
21959
  i0.ɵɵlistener("backClicked", function ReadQueryManagementFieldComponent_ng_template_1_Template_ccd_query_details_backClicked_0_listener() { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.showQueryList = true); });
21842
21960
  i0.ɵɵelementEnd();
21843
- i0.ɵɵtemplate(1, ReadQueryManagementFieldComponent_ng_template_1_ng_container_1_Template, 4, 2, "ng-container", 8)(2, ReadQueryManagementFieldComponent_ng_template_1_ng_container_2_Template, 4, 7, "ng-container", 8);
21961
+ i0.ɵɵtemplate(1, ReadQueryManagementFieldComponent_ng_template_1_ng_container_1_Template, 4, 2, "ng-container", 8);
21844
21962
  } if (rf & 2) {
21845
21963
  const ctx_r1 = i0.ɵɵnextContext();
21846
21964
  i0.ɵɵproperty("query", ctx_r1.query)("caseId", ctx_r1.caseId);
21847
21965
  i0.ɵɵadvance();
21848
21966
  i0.ɵɵproperty("ngIf", !ctx_r1.isCaseworker());
21849
- i0.ɵɵadvance();
21850
- i0.ɵɵproperty("ngIf", (ctx_r1.query == null ? null : ctx_r1.query.children == null ? null : ctx_r1.query.children.length) >= 0 && ctx_r1.isCaseworker() && (ctx_r1.query == null ? null : ctx_r1.query.children == null ? null : ctx_r1.query.children.length) % 2 === 0);
21851
21967
  } }
21852
21968
  class ReadQueryManagementFieldComponent extends AbstractFieldReadComponent {
21853
21969
  route;
@@ -21906,7 +22022,7 @@ class ReadQueryManagementFieldComponent extends AbstractFieldReadComponent {
21906
22022
  }
21907
22023
  static ɵfac = function ReadQueryManagementFieldComponent_Factory(t) { return new (t || ReadQueryManagementFieldComponent)(i0.ɵɵdirectiveInject(i1$1.ActivatedRoute), i0.ɵɵdirectiveInject(SessionStorageService), i0.ɵɵdirectiveInject(CaseNotifier)); };
21908
22024
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ReadQueryManagementFieldComponent, selectors: [["ccd-read-query-management-field"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 3, vars: 2, consts: [["singleQueryDetails", ""], ["queryIsInReview", ""], [4, "ngIf", "ngIfElse"], [4, "ngFor", "ngForOf"], ["class", "govuk-!-margin-top-8 govuk-!-margin-bottom-8", 4, "ngIf"], [1, "govuk-!-margin-top-8", "govuk-!-margin-bottom-8"], [3, "selectedQuery", "caseQueriesCollection"], [3, "backClicked", "query", "caseId"], [4, "ngIf"], ["id", "ask-follow-up-question", "data-module", "govuk-button", 1, "govuk-button", 3, "routerLink"], [1, "govuk-!-font-weight-bold"]], template: function ReadQueryManagementFieldComponent_Template(rf, ctx) { if (rf & 1) {
21909
- i0.ɵɵtemplate(0, ReadQueryManagementFieldComponent_ng_container_0_Template, 2, 1, "ng-container", 2)(1, ReadQueryManagementFieldComponent_ng_template_1_Template, 3, 4, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor);
22025
+ i0.ɵɵtemplate(0, ReadQueryManagementFieldComponent_ng_container_0_Template, 2, 1, "ng-container", 2)(1, ReadQueryManagementFieldComponent_ng_template_1_Template, 2, 3, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor);
21910
22026
  } if (rf & 2) {
21911
22027
  const singleQueryDetails_r6 = i0.ɵɵreference(2);
21912
22028
  i0.ɵɵproperty("ngIf", ctx.showQueryList)("ngIfElse", singleQueryDetails_r6);
@@ -21914,7 +22030,7 @@ class ReadQueryManagementFieldComponent extends AbstractFieldReadComponent {
21914
22030
  }
21915
22031
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ReadQueryManagementFieldComponent, [{
21916
22032
  type: Component,
21917
- args: [{ selector: 'ccd-read-query-management-field', template: "<ng-container *ngIf=\"showQueryList; else singleQueryDetails\">\n <ng-container *ngFor=\"let caseQueriesCollection of caseQueriesCollections\">\n <div *ngIf=\"showQueryList\" class=\"govuk-!-margin-top-8 govuk-!-margin-bottom-8\">\n <ccd-query-list (selectedQuery)=\"setQuery($event)\" [caseQueriesCollection]=\"caseQueriesCollection\"></ccd-query-list>\n </div>\n </ng-container>\n</ng-container>\n\n<ng-template #singleQueryDetails>\n <ccd-query-details\n [query]=\"query\"\n (backClicked)=\"showQueryList = true\"\n [caseId]=\"caseId\"\n ></ccd-query-details>\n\n <ng-container *ngIf=\"!isCaseworker()\">\n <ng-container *ngIf=\"query?.children?.length > 0 && query?.children?.length % 2 === 1; else queryIsInReview\">\n <button id=\"ask-follow-up-question\" class=\"govuk-button\" data-module=\"govuk-button\"\n [routerLink]=\"['/query-management', 'query', caseId, '4', query.id]\">\n {{ 'Ask a follow-up question' | rpxTranslate }}\n </button>\n </ng-container>\n\n <ng-template #queryIsInReview>\n <div>\n <p class=\"govuk-!-font-weight-bold\">{{ 'Your query is under review' | rpxTranslate }}</p>\n <p>{{ 'Our team will read your query and will respond. Do not submit the same query more than once.' | rpxTranslate }}</p>\n </div>\n </ng-template>\n </ng-container>\n\n <ng-container *ngIf=\"query?.children?.length >= 0 && isCaseworker() && query?.children?.length % 2 === 0\">\n <button id=\"ask-follow-up-question\" class=\"govuk-button\" data-module=\"govuk-button\"\n [routerLink]=\"['/query-management', 'query', caseId, '3', query.id]\"\n >\n {{ 'Respond to a query' | rpxTranslate }}\n </button>\n </ng-container>\n</ng-template>\n" }]
22033
+ args: [{ selector: 'ccd-read-query-management-field', template: "<ng-container *ngIf=\"showQueryList; else singleQueryDetails\">\n <ng-container *ngFor=\"let caseQueriesCollection of caseQueriesCollections\">\n <div *ngIf=\"showQueryList\" class=\"govuk-!-margin-top-8 govuk-!-margin-bottom-8\">\n <ccd-query-list (selectedQuery)=\"setQuery($event)\" [caseQueriesCollection]=\"caseQueriesCollection\"></ccd-query-list>\n </div>\n </ng-container>\n</ng-container>\n\n<ng-template #singleQueryDetails>\n <ccd-query-details\n [query]=\"query\"\n (backClicked)=\"showQueryList = true\"\n [caseId]=\"caseId\"\n ></ccd-query-details>\n\n <ng-container *ngIf=\"!isCaseworker()\">\n <ng-container *ngIf=\"query?.children?.length > 0 && query?.children?.length % 2 === 1; else queryIsInReview\">\n <button id=\"ask-follow-up-question\" class=\"govuk-button\" data-module=\"govuk-button\"\n [routerLink]=\"['/query-management', 'query', caseId, '4', query.id]\">\n {{ 'Ask a follow-up question' | rpxTranslate }}\n </button>\n </ng-container>\n\n <ng-template #queryIsInReview>\n <div>\n <p class=\"govuk-!-font-weight-bold\">{{ 'Your query is under review' | rpxTranslate }}</p>\n <p>{{ 'Our team will read your query and will respond. Do not submit the same query more than once.' | rpxTranslate }}</p>\n </div>\n </ng-template>\n </ng-container>\n</ng-template>\n" }]
21918
22034
  }], () => [{ type: i1$1.ActivatedRoute }, { type: SessionStorageService }, { type: CaseNotifier }], null); })();
21919
22035
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ReadQueryManagementFieldComponent, { className: "ReadQueryManagementFieldComponent", filePath: "lib/shared/components/palette/query-management/read-query-management-field.component.ts", lineNumber: 14 }); })();
21920
22036
 
@@ -29277,7 +29393,7 @@ i0.ɵɵsetComponentScope(
29277
29393
  // Components for Query Management
29278
29394
  ReadQueryManagementFieldComponent, function () { return [i5.NgForOf, i5.NgIf, i1$1.RouterLink, QueryDetailsComponent,
29279
29395
  QueryListComponent]; }, function () { return [i1.RpxTranslatePipe]; });
29280
- i0.ɵɵsetComponentScope(QueryDetailsComponent, function () { return [i5.NgForOf, i5.NgIf, QueryAttachmentsReadComponent]; }, function () { return [i5.DatePipe, i1.RpxTranslatePipe]; });
29396
+ i0.ɵɵsetComponentScope(QueryDetailsComponent, function () { return [i5.NgForOf, i5.NgIf, AlertComponent, QueryAttachmentsReadComponent]; }, function () { return [i5.DatePipe, i1.RpxTranslatePipe]; });
29281
29397
  i0.ɵɵsetComponentScope(QueryWriteRespondToQueryComponent, function () { return [i5.NgIf, i4.DefaultValueAccessor, i4.NgControlStatus, i4.NgControlStatusGroup, i4.FormGroupDirective, i4.FormControlName, QueryDetailsComponent,
29282
29398
  QueryCaseDetailsHeaderComponent]; }, function () { return [i1.RpxTranslatePipe]; });
29283
29399
  i0.ɵɵsetComponentScope(QueryWriteRaiseQueryComponent, function () { return [i5.NgClass, i5.NgIf, i4.DefaultValueAccessor, i4.RadioControlValueAccessor, i4.NgControlStatus, i4.NgControlStatusGroup, i4.FormGroupDirective, i4.FormControlName, QueryCaseDetailsHeaderComponent,