@hmcts/ccd-case-ui-toolkit 6.13.10-eui-4157 → 6.13.10-f

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 (54) hide show
  1. package/bundles/hmcts-ccd-case-ui-toolkit.umd.js +592 -387
  2. package/bundles/hmcts-ccd-case-ui-toolkit.umd.js.map +1 -1
  3. package/bundles/hmcts-ccd-case-ui-toolkit.umd.min.js +1 -1
  4. package/bundles/hmcts-ccd-case-ui-toolkit.umd.min.js.map +1 -1
  5. package/esm2015/lib/shared/components/case-editor/services/cases.service.js +7 -4
  6. package/esm2015/lib/shared/components/palette/base-field/field-read.component.js +2 -2
  7. package/esm2015/lib/shared/components/palette/base-field/field-write.component.js +2 -2
  8. package/esm2015/lib/shared/components/palette/case-file-view/case-file-view-field.component.js +12 -5
  9. package/esm2015/lib/shared/components/palette/case-file-view/index.js +1 -2
  10. package/esm2015/lib/shared/components/palette/collection/write-collection-field.component.js +13 -2
  11. package/esm2015/lib/shared/components/palette/dynamic-multi-select-list/index.js +3 -0
  12. package/esm2015/lib/shared/components/palette/dynamic-multi-select-list/read-dynamic-multi-select-list-field.component.js +47 -0
  13. package/esm2015/lib/shared/components/palette/dynamic-multi-select-list/write-dynamic-multi-select-list-field.component.js +153 -0
  14. package/esm2015/lib/shared/components/palette/dynamic-radio-list/write-dynamic-radio-list-field.component.js +5 -6
  15. package/esm2015/lib/shared/components/palette/index.js +2 -1
  16. package/esm2015/lib/shared/components/palette/palette.module.js +29 -6
  17. package/esm2015/lib/shared/components/palette/palette.service.js +5 -3
  18. package/esm2015/lib/shared/domain/definition/case-field.model.js +6 -3
  19. package/esm2015/lib/shared/domain/definition/field-type-enum.model.js +1 -1
  20. package/esm2015/lib/shared/pipes/complex/ccd-read-fields-filter.pipe.js +14 -11
  21. package/esm2015/lib/shared/services/form/field-type-sanitiser.js +16 -1
  22. package/fesm2015/hmcts-ccd-case-ui-toolkit.js +564 -381
  23. package/fesm2015/hmcts-ccd-case-ui-toolkit.js.map +1 -1
  24. package/lib/shared/components/case-editor/services/cases.service.d.ts +3 -1
  25. package/lib/shared/components/case-editor/services/cases.service.d.ts.map +1 -1
  26. package/lib/shared/components/palette/case-file-view/case-file-view-field.component.d.ts +5 -2
  27. package/lib/shared/components/palette/case-file-view/case-file-view-field.component.d.ts.map +1 -1
  28. package/lib/shared/components/palette/case-file-view/index.d.ts +0 -1
  29. package/lib/shared/components/palette/case-file-view/index.d.ts.map +1 -1
  30. package/lib/shared/components/palette/collection/write-collection-field.component.d.ts +1 -0
  31. package/lib/shared/components/palette/collection/write-collection-field.component.d.ts.map +1 -1
  32. package/lib/shared/components/palette/dynamic-multi-select-list/index.d.ts +3 -0
  33. package/lib/shared/components/palette/dynamic-multi-select-list/index.d.ts.map +1 -0
  34. package/lib/shared/components/palette/dynamic-multi-select-list/read-dynamic-multi-select-list-field.component.d.ts +9 -0
  35. package/lib/shared/components/palette/dynamic-multi-select-list/read-dynamic-multi-select-list-field.component.d.ts.map +1 -0
  36. package/lib/shared/components/palette/dynamic-multi-select-list/write-dynamic-multi-select-list-field.component.d.ts +17 -0
  37. package/lib/shared/components/palette/dynamic-multi-select-list/write-dynamic-multi-select-list-field.component.d.ts.map +1 -0
  38. package/lib/shared/components/palette/dynamic-radio-list/write-dynamic-radio-list-field.component.d.ts +1 -1
  39. package/lib/shared/components/palette/dynamic-radio-list/write-dynamic-radio-list-field.component.d.ts.map +1 -1
  40. package/lib/shared/components/palette/index.d.ts +1 -0
  41. package/lib/shared/components/palette/index.d.ts.map +1 -1
  42. package/lib/shared/components/palette/palette.module.d.ts +60 -59
  43. package/lib/shared/components/palette/palette.module.d.ts.map +1 -1
  44. package/lib/shared/components/palette/palette.service.d.ts.map +1 -1
  45. package/lib/shared/domain/definition/case-field.model.d.ts.map +1 -1
  46. package/lib/shared/domain/definition/field-type-enum.model.d.ts +1 -1
  47. package/lib/shared/domain/definition/field-type-enum.model.d.ts.map +1 -1
  48. package/lib/shared/pipes/complex/ccd-read-fields-filter.pipe.d.ts.map +1 -1
  49. package/lib/shared/services/form/field-type-sanitiser.d.ts +2 -0
  50. package/lib/shared/services/form/field-type-sanitiser.d.ts.map +1 -1
  51. package/package.json +1 -1
  52. package/esm2015/lib/shared/components/palette/case-file-view/case-file-view-field-read.component.js +0 -72
  53. package/lib/shared/components/palette/case-file-view/case-file-view-field-read.component.d.ts +0 -8
  54. package/lib/shared/components/palette/case-file-view/case-file-view-field-read.component.d.ts.map +0 -1
@@ -118,7 +118,7 @@
118
118
  i0__namespace.ɵɵtextInterpolate(ctx_r1.workhours);
119
119
  }
120
120
  }
121
- var _c0$_ = [[["", "footerSolsNavLinks", ""]], [["", "footerCaseWorkerNavLinks", ""]]];
121
+ var _c0$$ = [[["", "footerSolsNavLinks", ""]], [["", "footerCaseWorkerNavLinks", ""]]];
122
122
  var _c1$s = ["[footerSolsNavLinks]", "[footerCaseWorkerNavLinks]"];
123
123
  var FooterComponent = /** @class */ (function () {
124
124
  function FooterComponent() {
@@ -128,7 +128,7 @@
128
128
  FooterComponent.ɵfac = function FooterComponent_Factory(t) { return new (t || FooterComponent)(); };
129
129
  FooterComponent.ɵcmp = i0__namespace.ɵɵdefineComponent({ type: FooterComponent, selectors: [["cut-footer-bar"]], inputs: { email: "email", isSolicitor: "isSolicitor", phone: "phone", workhours: "workhours" }, ngContentSelectors: _c1$s, 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) {
130
130
  if (rf & 1) {
131
- i0__namespace.ɵɵprojectionDef(_c0$_);
131
+ i0__namespace.ɵɵprojectionDef(_c0$$);
132
132
  i0__namespace.ɵɵelementStart(0, "footer", 0);
133
133
  i0__namespace.ɵɵelementStart(1, "div", 1);
134
134
  i0__namespace.ɵɵtemplate(2, FooterComponent_div_2_Template, 15, 0, "div", 2);
@@ -207,7 +207,7 @@
207
207
  i0__namespace.ɵɵtextInterpolate(ctx_r2.title);
208
208
  }
209
209
  }
210
- var _c0$Z = [[["", "headerNavigation", ""]]];
210
+ var _c0$_ = [[["", "headerNavigation", ""]]];
211
211
  var _c1$r = ["[headerNavigation]"];
212
212
  var HeaderBarComponent = /** @class */ (function () {
213
213
  function HeaderBarComponent() {
@@ -221,7 +221,7 @@
221
221
  HeaderBarComponent.ɵfac = function HeaderBarComponent_Factory(t) { return new (t || HeaderBarComponent)(); };
222
222
  HeaderBarComponent.ɵcmp = i0__namespace.ɵɵdefineComponent({ type: HeaderBarComponent, selectors: [["cut-header-bar"]], inputs: { title: "title", isSolicitor: "isSolicitor", username: "username" }, outputs: { signOutRequest: "signOutRequest" }, ngContentSelectors: _c1$r, decls: 15, vars: 8, 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) {
223
223
  if (rf & 1) {
224
- i0__namespace.ɵɵprojectionDef(_c0$Z);
224
+ i0__namespace.ɵɵprojectionDef(_c0$_);
225
225
  i0__namespace.ɵɵelementStart(0, "header", 0);
226
226
  i0__namespace.ɵɵelementStart(1, "div", 1);
227
227
  i0__namespace.ɵɵelementStart(2, "div", 2);
@@ -282,7 +282,7 @@
282
282
  }] });
283
283
  })();
284
284
 
285
- var _c0$Y = [[["", "leftNavLinks", ""]], [["", "rightNavLinks", ""]]];
285
+ var _c0$Z = [[["", "leftNavLinks", ""]], [["", "rightNavLinks", ""]]];
286
286
  var _c1$q = ["[leftNavLinks]", "[rightNavLinks]"];
287
287
  var NavigationComponent = /** @class */ (function () {
288
288
  function NavigationComponent() {
@@ -292,7 +292,7 @@
292
292
  NavigationComponent.ɵfac = function NavigationComponent_Factory(t) { return new (t || NavigationComponent)(); };
293
293
  NavigationComponent.ɵcmp = i0__namespace.ɵɵdefineComponent({ type: NavigationComponent, selectors: [["cut-nav-bar"]], inputs: { isSolicitor: "isSolicitor" }, ngContentSelectors: _c1$q, decls: 4, vars: 2, consts: [[1, "cut-nav-bar"]], template: function NavigationComponent_Template(rf, ctx) {
294
294
  if (rf & 1) {
295
- i0__namespace.ɵɵprojectionDef(_c0$Y);
295
+ i0__namespace.ɵɵprojectionDef(_c0$Z);
296
296
  i0__namespace.ɵɵelementStart(0, "div");
297
297
  i0__namespace.ɵɵelementStart(1, "nav", 0);
298
298
  i0__namespace.ɵɵprojection(2);
@@ -437,7 +437,7 @@
437
437
  }], null, null);
438
438
  })();
439
439
 
440
- var _c0$X = [[["", "topBody", ""]], [["", "leftBody", ""]], [["", "rightBody", ""]]];
440
+ var _c0$Y = [[["", "topBody", ""]], [["", "leftBody", ""]], [["", "rightBody", ""]]];
441
441
  var _c1$p = ["[topBody]", "[leftBody]", "[rightBody]"];
442
442
  var BodyComponent = /** @class */ (function () {
443
443
  function BodyComponent() {
@@ -447,7 +447,7 @@
447
447
  BodyComponent.ɵfac = function BodyComponent_Factory(t) { return new (t || BodyComponent)(); };
448
448
  BodyComponent.ɵcmp = i0__namespace.ɵɵdefineComponent({ type: BodyComponent, selectors: [["cut-body"]], ngContentSelectors: _c1$p, decls: 4, vars: 0, consts: [[1, "global-display"]], template: function BodyComponent_Template(rf, ctx) {
449
449
  if (rf & 1) {
450
- i0__namespace.ɵɵprojectionDef(_c0$X);
450
+ i0__namespace.ɵɵprojectionDef(_c0$Y);
451
451
  i0__namespace.ɵɵelementStart(0, "div", 0);
452
452
  i0__namespace.ɵɵprojection(1);
453
453
  i0__namespace.ɵɵprojection(2, 1);
@@ -852,7 +852,7 @@
852
852
  return typeof state === "function" ? receiver === state : state.has(receiver);
853
853
  }
854
854
 
855
- var _c0$W = function (a0) { return { "govuk-input--error": a0 }; };
855
+ var _c0$X = function (a0) { return { "govuk-input--error": a0 }; };
856
856
  function DateInputComponent_div_16_Template(rf, ctx) {
857
857
  if (rf & 1) {
858
858
  var _r8_1 = i0__namespace.ɵɵgetCurrentView();
@@ -870,7 +870,7 @@
870
870
  i0__namespace.ɵɵadvance(1);
871
871
  i0__namespace.ɵɵproperty("for", ctx_r3.hourId());
872
872
  i0__namespace.ɵɵadvance(2);
873
- i0__namespace.ɵɵproperty("id", ctx_r3.hourId())("name", ctx_r3.hourId())("value", ctx_r3.displayHour)("ngClass", i0__namespace.ɵɵpureFunction1(5, _c0$W, ctx_r3.isInvalid));
873
+ i0__namespace.ɵɵproperty("id", ctx_r3.hourId())("name", ctx_r3.hourId())("value", ctx_r3.displayHour)("ngClass", i0__namespace.ɵɵpureFunction1(5, _c0$X, ctx_r3.isInvalid));
874
874
  }
875
875
  }
876
876
  function DateInputComponent_div_17_Template(rf, ctx) {
@@ -890,7 +890,7 @@
890
890
  i0__namespace.ɵɵadvance(1);
891
891
  i0__namespace.ɵɵproperty("for", ctx_r4.minuteId());
892
892
  i0__namespace.ɵɵadvance(2);
893
- i0__namespace.ɵɵproperty("id", ctx_r4.minuteId())("name", ctx_r4.minuteId())("value", ctx_r4.displayMinute)("ngClass", i0__namespace.ɵɵpureFunction1(5, _c0$W, ctx_r4.isInvalid));
893
+ i0__namespace.ɵɵproperty("id", ctx_r4.minuteId())("name", ctx_r4.minuteId())("value", ctx_r4.displayMinute)("ngClass", i0__namespace.ɵɵpureFunction1(5, _c0$X, ctx_r4.isInvalid));
894
894
  }
895
895
  }
896
896
  function DateInputComponent_div_18_Template(rf, ctx) {
@@ -910,7 +910,7 @@
910
910
  i0__namespace.ɵɵadvance(1);
911
911
  i0__namespace.ɵɵproperty("for", ctx_r5.secondId());
912
912
  i0__namespace.ɵɵadvance(2);
913
- i0__namespace.ɵɵproperty("id", ctx_r5.secondId())("name", ctx_r5.secondId())("value", ctx_r5.displaySecond)("ngClass", i0__namespace.ɵɵpureFunction1(5, _c0$W, ctx_r5.isInvalid));
913
+ i0__namespace.ɵɵproperty("id", ctx_r5.secondId())("name", ctx_r5.secondId())("value", ctx_r5.displaySecond)("ngClass", i0__namespace.ɵɵpureFunction1(5, _c0$X, ctx_r5.isInvalid));
914
914
  }
915
915
  }
916
916
  var DateInputComponent = /** @class */ (function () {
@@ -1144,15 +1144,15 @@
1144
1144
  i0__namespace.ɵɵadvance(2);
1145
1145
  i0__namespace.ɵɵproperty("for", ctx.dayId());
1146
1146
  i0__namespace.ɵɵadvance(2);
1147
- i0__namespace.ɵɵproperty("id", ctx.dayId())("name", ctx.dayId())("value", ctx.displayDay)("ngClass", i0__namespace.ɵɵpureFunction1(18, _c0$W, ctx.isInvalid));
1147
+ i0__namespace.ɵɵproperty("id", ctx.dayId())("name", ctx.dayId())("value", ctx.displayDay)("ngClass", i0__namespace.ɵɵpureFunction1(18, _c0$X, ctx.isInvalid));
1148
1148
  i0__namespace.ɵɵadvance(3);
1149
1149
  i0__namespace.ɵɵproperty("for", ctx.monthId());
1150
1150
  i0__namespace.ɵɵadvance(2);
1151
- i0__namespace.ɵɵproperty("id", ctx.monthId())("name", ctx.monthId())("value", ctx.displayMonth)("ngClass", i0__namespace.ɵɵpureFunction1(20, _c0$W, ctx.isInvalid));
1151
+ i0__namespace.ɵɵproperty("id", ctx.monthId())("name", ctx.monthId())("value", ctx.displayMonth)("ngClass", i0__namespace.ɵɵpureFunction1(20, _c0$X, ctx.isInvalid));
1152
1152
  i0__namespace.ɵɵadvance(3);
1153
1153
  i0__namespace.ɵɵproperty("for", ctx.yearId());
1154
1154
  i0__namespace.ɵɵadvance(2);
1155
- i0__namespace.ɵɵproperty("id", ctx.yearId())("name", ctx.yearId())("value", ctx.displayYear)("ngClass", i0__namespace.ɵɵpureFunction1(22, _c0$W, ctx.isInvalid));
1155
+ i0__namespace.ɵɵproperty("id", ctx.yearId())("name", ctx.yearId())("value", ctx.displayYear)("ngClass", i0__namespace.ɵɵpureFunction1(22, _c0$X, ctx.isInvalid));
1156
1156
  i0__namespace.ɵɵadvance(2);
1157
1157
  i0__namespace.ɵɵproperty("ngIf", ctx.isDateTime);
1158
1158
  i0__namespace.ɵɵadvance(1);
@@ -1233,7 +1233,7 @@
1233
1233
  i0__namespace.ɵɵelementContainerEnd();
1234
1234
  }
1235
1235
  }
1236
- var _c0$V = ["*"];
1236
+ var _c0$W = ["*"];
1237
1237
  exports.AlertMessageType = void 0;
1238
1238
  (function (AlertMessageType) {
1239
1239
  AlertMessageType["WARNING"] = "warning";
@@ -1254,7 +1254,7 @@
1254
1254
  AlertComponent.TYPE_ERROR = 'error';
1255
1255
  AlertComponent.TYPE_INFORMATION = 'information';
1256
1256
  AlertComponent.ɵfac = function AlertComponent_Factory(t) { return new (t || AlertComponent)(); };
1257
- AlertComponent.ɵcmp = i0__namespace.ɵɵdefineComponent({ type: AlertComponent, selectors: [["cut-alert"]], inputs: { type: "type", showIcon: "showIcon" }, ngContentSelectors: _c0$V, decls: 10, vars: 10, consts: [[1, "hmcts-banner"], [3, "ngSwitch"], [4, "ngSwitchCase"], [1, "hmcts-banner__message"], [1, "hmcts-banner__assistive"], ["fill", "currentColor", "role", "presentation", "focusable", "false", "xmlns", "http://www.w3.org/2000/svg", "viewBox", "0 0 25 25", "height", "25", "width", "25", 1, "hmcts-banner__icon"], ["d", "M13.6,15.4h-2.3v-4.5h2.3V15.4z M13.6,19.8h-2.3v-2.2h2.3V19.8z M0,23.2h25L12.5,2L0,23.2z"], ["d", "M25,6.2L8.7,23.2L0,14.1l4-4.2l4.7,4.9L21,2L25,6.2z"], ["d", "M13.7,18.5h-2.4v-2.4h2.4V18.5z M12.5,13.7c-0.7,0-1.2-0.5-1.2-1.2V7.7c0-0.7,0.5-1.2,1.2-1.2s1.2,0.5,1.2,1.2v4.8\n C13.7,13.2,13.2,13.7,12.5,13.7z M12.5,0.5c-6.6,0-12,5.4-12,12s5.4,12,12,12s12-5.4,12-12S19.1,0.5,12.5,0.5z"]], template: function AlertComponent_Template(rf, ctx) {
1257
+ AlertComponent.ɵcmp = i0__namespace.ɵɵdefineComponent({ type: AlertComponent, selectors: [["cut-alert"]], inputs: { type: "type", showIcon: "showIcon" }, ngContentSelectors: _c0$W, decls: 10, vars: 10, consts: [[1, "hmcts-banner"], [3, "ngSwitch"], [4, "ngSwitchCase"], [1, "hmcts-banner__message"], [1, "hmcts-banner__assistive"], ["fill", "currentColor", "role", "presentation", "focusable", "false", "xmlns", "http://www.w3.org/2000/svg", "viewBox", "0 0 25 25", "height", "25", "width", "25", 1, "hmcts-banner__icon"], ["d", "M13.6,15.4h-2.3v-4.5h2.3V15.4z M13.6,19.8h-2.3v-2.2h2.3V19.8z M0,23.2h25L12.5,2L0,23.2z"], ["d", "M25,6.2L8.7,23.2L0,14.1l4-4.2l4.7,4.9L21,2L25,6.2z"], ["d", "M13.7,18.5h-2.4v-2.4h2.4V18.5z M12.5,13.7c-0.7,0-1.2-0.5-1.2-1.2V7.7c0-0.7,0.5-1.2,1.2-1.2s1.2,0.5,1.2,1.2v4.8\n C13.7,13.2,13.2,13.7,12.5,13.7z M12.5,0.5c-6.6,0-12,5.4-12,12s5.4,12,12,12s12-5.4,12-12S19.1,0.5,12.5,0.5z"]], template: function AlertComponent_Template(rf, ctx) {
1258
1258
  if (rf & 1) {
1259
1259
  i0__namespace.ɵɵprojectionDef();
1260
1260
  i0__namespace.ɵɵelementStart(0, "div", 0);
@@ -1529,7 +1529,7 @@
1529
1529
  }] });
1530
1530
  })();
1531
1531
 
1532
- var _c0$U = function (a0) { return { "js-hidden": a0 }; };
1532
+ var _c0$V = function (a0) { return { "js-hidden": a0 }; };
1533
1533
  var _c1$o = ["*"];
1534
1534
  var TabComponent = /** @class */ (function () {
1535
1535
  function TabComponent() {
@@ -1545,7 +1545,7 @@
1545
1545
  i0__namespace.ɵɵelementEnd();
1546
1546
  }
1547
1547
  if (rf & 2) {
1548
- i0__namespace.ɵɵproperty("id", ctx.id)("ngClass", i0__namespace.ɵɵpureFunction1(3, _c0$U, !ctx.selected));
1548
+ i0__namespace.ɵɵproperty("id", ctx.id)("ngClass", i0__namespace.ɵɵpureFunction1(3, _c0$V, !ctx.selected));
1549
1549
  i0__namespace.ɵɵattribute("aria-hidden", !ctx.selected);
1550
1550
  }
1551
1551
  }, directives: [i1__namespace.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:0;border-color:#bfc1c3;padding-bottom:11px;margin-bottom:0;color:#0b0c0c}}"] });
@@ -1568,7 +1568,7 @@
1568
1568
  }] });
1569
1569
  })();
1570
1570
 
1571
- var _c0$T = ["tab"];
1571
+ var _c0$U = ["tab"];
1572
1572
  var _c1$n = function () { return ["."]; };
1573
1573
  var _c2$3 = function (a0) { return { "tabs-toggle-selected": a0 }; };
1574
1574
  function TabsComponent_li_2_Template(rf, ctx) {
@@ -1622,7 +1622,7 @@
1622
1622
  }
1623
1623
  }, viewQuery: function TabsComponent_Query(rf, ctx) {
1624
1624
  if (rf & 1) {
1625
- i0__namespace.ɵɵviewQuery(_c0$T, 1);
1625
+ i0__namespace.ɵɵviewQuery(_c0$U, 1);
1626
1626
  }
1627
1627
  if (rf & 2) {
1628
1628
  var _t = void 0;
@@ -1701,7 +1701,7 @@
1701
1701
  }], null, null);
1702
1702
  })();
1703
1703
 
1704
- var _c0$S = function (a0, a1) { return { caseLocked: a0, someoneViewing: a1 }; };
1704
+ var _c0$T = function (a0, a1) { return { caseLocked: a0, someoneViewing: a1 }; };
1705
1705
  var ActivityBannerComponent = /** @class */ (function () {
1706
1706
  function ActivityBannerComponent() {
1707
1707
  }
@@ -1722,7 +1722,7 @@
1722
1722
  i0__namespace.ɵɵelementEnd();
1723
1723
  }
1724
1724
  if (rf & 2) {
1725
- i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction2(4, _c0$S, ctx.bannerType === "editor", ctx.bannerType === "viewer"));
1725
+ i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction2(4, _c0$T, ctx.bannerType === "editor", ctx.bannerType === "viewer"));
1726
1726
  i0__namespace.ɵɵadvance(2);
1727
1727
  i0__namespace.ɵɵpropertyInterpolate("alt", ctx.description);
1728
1728
  i0__namespace.ɵɵpropertyInterpolate("src", ctx.imageLink, i0__namespace.ɵɵsanitizeUrl);
@@ -3360,9 +3360,12 @@
3360
3360
  }
3361
3361
  Object.defineProperty(CaseField.prototype, "value", {
3362
3362
  get: function () {
3363
- if (this.isDynamic()) {
3363
+ if (this.field_type && (this.field_type.type === 'DynamicList' || this.field_type.type === 'DynamicRadioList')) {
3364
3364
  return this._value && this._value.value ? this._value.value.code : this._value;
3365
3365
  }
3366
+ else if (this.field_type && this.field_type.type === 'DynamicMultiSelectList') {
3367
+ return this._value && this._value.value ? this._value.value : this._value;
3368
+ }
3366
3369
  else {
3367
3370
  return this._value;
3368
3371
  }
@@ -3452,7 +3455,7 @@
3452
3455
  };
3453
3456
  CaseField.prototype.isDynamic = function () {
3454
3457
  var _this = this;
3455
- var dynamicFieldTypes = ['DynamicList', 'DynamicRadioList'];
3458
+ var dynamicFieldTypes = ['DynamicList', 'DynamicRadioList', 'DynamicMultiSelectList'];
3456
3459
  if (!this.field_type) {
3457
3460
  return false;
3458
3461
  }
@@ -5653,6 +5656,9 @@
5653
5656
  }
5654
5657
  caseFields.forEach(function (caseField) {
5655
5658
  switch (caseField.field_type.type) {
5659
+ case FieldTypeSanitiser.FIELD_TYPE_DYNAMIC_MULTISELECT_LIST:
5660
+ _this.convertArrayToDynamicListOutput(caseField, data);
5661
+ break;
5656
5662
  case FieldTypeSanitiser.FIELD_TYPE_DYNAMIC_RADIO_LIST:
5657
5663
  case FieldTypeSanitiser.FIELD_TYPE_DYNAMIC_LIST:
5658
5664
  _this.convertStringToDynamicListOutput(caseField, data);
@@ -5670,6 +5676,17 @@
5670
5676
  }
5671
5677
  });
5672
5678
  };
5679
+ FieldTypeSanitiser.prototype.convertArrayToDynamicListOutput = function (field, data) {
5680
+ var values = data[field.id];
5681
+ if (Array.isArray(values)) {
5682
+ var listItems = this.getListItems(field);
5683
+ var matches = listItems.filter(function (item) { return values.map(function (v) { return v.code; }).indexOf(item.code) !== -1; });
5684
+ data[field.id] = {
5685
+ value: matches,
5686
+ list_items: listItems
5687
+ };
5688
+ }
5689
+ };
5673
5690
  FieldTypeSanitiser.prototype.convertStringToDynamicListOutput = function (field, data) {
5674
5691
  var stringValue = data[field.id];
5675
5692
  if (typeof stringValue === 'string') {
@@ -5700,6 +5717,7 @@
5700
5717
  FieldTypeSanitiser.FIELD_TYPE_COLLECTION = 'Collection';
5701
5718
  FieldTypeSanitiser.FIELD_TYPE_DYNAMIC_LIST = 'DynamicList';
5702
5719
  FieldTypeSanitiser.FIELD_TYPE_DYNAMIC_RADIO_LIST = 'DynamicRadioList';
5720
+ FieldTypeSanitiser.FIELD_TYPE_DYNAMIC_MULTISELECT_LIST = 'DynamicMultiSelectList';
5703
5721
  FieldTypeSanitiser.ɵfac = function FieldTypeSanitiser_Factory(t) { return new (t || FieldTypeSanitiser)(); };
5704
5722
  FieldTypeSanitiser.ɵprov = i0__namespace.ɵɵdefineInjectable({ token: FieldTypeSanitiser, factory: FieldTypeSanitiser.ɵfac });
5705
5723
  (function () {
@@ -8403,13 +8421,223 @@
8403
8421
  }], null, null);
8404
8422
  })();
8405
8423
 
8424
+ var MULTIPLE_TASKS_FOUND = 'More than one task found!';
8425
+ var WorkAllocationService = /** @class */ (function () {
8426
+ function WorkAllocationService(http, appConfig, errorService, alertService, sessionStorageService) {
8427
+ this.http = http;
8428
+ this.appConfig = appConfig;
8429
+ this.errorService = errorService;
8430
+ this.alertService = alertService;
8431
+ this.sessionStorageService = sessionStorageService;
8432
+ // Check to see if work allocation is enabled
8433
+ }
8434
+ /**
8435
+ * Call the API to get tasks matching the search criteria.
8436
+ * @param searchRequest The search parameters that specify which tasks to match.
8437
+ */
8438
+ WorkAllocationService.prototype.searchTasks = function (searchRequest) {
8439
+ var _this = this;
8440
+ // Do not need to check if WA enabled as parent method will do that
8441
+ var url = this.appConfig.getWorkAllocationApiUrl() + "/searchForCompletable";
8442
+ return this.http
8443
+ .post(url, { searchRequest: searchRequest }, null, false)
8444
+ .pipe(operators.map(function (response) { return response; }), operators.catchError(function (error) {
8445
+ _this.errorService.setError(error);
8446
+ // explicitly eat away 401 error and 400 error
8447
+ if (error && error.status && (error.status === 401 || error.status === 400)) {
8448
+ // do nothing
8449
+ console.log('error status 401 or 400', error);
8450
+ }
8451
+ else {
8452
+ return rxjs.throwError(error);
8453
+ }
8454
+ }));
8455
+ };
8456
+ WorkAllocationService.prototype.isWAEnabled = function (jurisdiction, caseType) {
8457
+ this.features = this.appConfig.getWAServiceConfig();
8458
+ var enabled = false;
8459
+ if (!jurisdiction || !caseType) {
8460
+ var caseInfo = JSON.parse(this.sessionStorageService.getItem('caseInfo'));
8461
+ jurisdiction = caseInfo.jurisdiction;
8462
+ caseType = caseInfo.caseType;
8463
+ }
8464
+ if (!this.features || !this.features.configurations) {
8465
+ return false;
8466
+ }
8467
+ this.features.configurations.forEach(function (serviceConfig) {
8468
+ if (serviceConfig.serviceName === jurisdiction && (serviceConfig.caseTypes.indexOf(caseType) !== -1)) {
8469
+ enabled = true;
8470
+ }
8471
+ });
8472
+ return enabled;
8473
+ };
8474
+ /**
8475
+ * Call the API to assign a task.
8476
+ * @param taskId specifies which task should be assigned.
8477
+ * @param userId specifies the user the task should be assigned to.
8478
+ */
8479
+ WorkAllocationService.prototype.assignTask = function (taskId, userId) {
8480
+ var _this = this;
8481
+ if (!this.isWAEnabled()) {
8482
+ return rxjs.of(null);
8483
+ }
8484
+ var url = this.appConfig.getWorkAllocationApiUrl() + "/task/" + taskId + "/assign";
8485
+ return this.http
8486
+ .post(url, { userId: userId })
8487
+ .pipe(operators.catchError(function (error) {
8488
+ _this.errorService.setError(error);
8489
+ return rxjs.throwError(error);
8490
+ }));
8491
+ };
8492
+ /**
8493
+ * Call the API to complete a task.
8494
+ * @param taskId specifies which task should be completed.
8495
+ */
8496
+ WorkAllocationService.prototype.completeTask = function (taskId) {
8497
+ var _this = this;
8498
+ if (!this.isWAEnabled()) {
8499
+ return rxjs.of(null);
8500
+ }
8501
+ var url = this.appConfig.getWorkAllocationApiUrl() + "/task/" + taskId + "/complete";
8502
+ return this.http
8503
+ .post(url, {})
8504
+ .pipe(operators.catchError(function (error) {
8505
+ _this.errorService.setError(error);
8506
+ // this will subscribe to get the user details and decide whether to display an error message
8507
+ _this.http.get(_this.appConfig.getUserInfoApiUrl()).pipe(operators.map(function (response) { return response; })).subscribe(function (response) {
8508
+ _this.handleTaskCompletionError(response);
8509
+ });
8510
+ return rxjs.throwError(error);
8511
+ }));
8512
+ };
8513
+ /**
8514
+ * Call the API to assign and complete a task.
8515
+ * @param taskId specifies which task should be completed.
8516
+ */
8517
+ WorkAllocationService.prototype.assignAndCompleteTask = function (taskId) {
8518
+ var _this = this;
8519
+ if (!this.isWAEnabled()) {
8520
+ return rxjs.of(null);
8521
+ }
8522
+ var url = this.appConfig.getWorkAllocationApiUrl() + "/task/" + taskId + "/complete";
8523
+ return this.http
8524
+ .post(url, {
8525
+ completion_options: {
8526
+ assign_and_complete: true
8527
+ }
8528
+ })
8529
+ .pipe(operators.catchError(function (error) {
8530
+ _this.errorService.setError(error);
8531
+ // this will subscribe to get the user details and decide whether to display an error message
8532
+ _this.http.get(_this.appConfig.getUserInfoApiUrl()).pipe(operators.map(function (response) { return response; })).subscribe(function (response) {
8533
+ _this.handleTaskCompletionError(response);
8534
+ });
8535
+ return rxjs.throwError(error);
8536
+ }));
8537
+ };
8538
+ /**
8539
+ * Handles the response from the observable to get the user details when task is completed.
8540
+ * @param response is the response given from the observable which contains the user detaild.
8541
+ */
8542
+ WorkAllocationService.prototype.handleTaskCompletionError = function (response) {
8543
+ var userDetails = response;
8544
+ if (this.userIsCaseworker(userDetails.userInfo.roles)) {
8545
+ // when submitting the completion of task if not yet rendered cases/case confirm then preserve the alert for re-rendering
8546
+ this.alertService.setPreserveAlerts(true, ['cases/case', 'submit']);
8547
+ this.alertService.warning('A task could not be completed successfully. Please complete the task associated with the case manually.');
8548
+ }
8549
+ };
8550
+ /**
8551
+ * Returns true if the user's role is equivalent to a caseworker.
8552
+ * @param roles is the list of roles found from the current user.
8553
+ */
8554
+ WorkAllocationService.prototype.userIsCaseworker = function (roles) {
8555
+ var lowerCaseRoles = roles.map(function (role) { return role.toLowerCase(); });
8556
+ // When/if lib & target permanently change to es2016, replace indexOf with includes
8557
+ return (lowerCaseRoles.indexOf(WorkAllocationService.iACCaseOfficer) !== -1)
8558
+ || (lowerCaseRoles.indexOf(WorkAllocationService.iACAdmOfficer) !== -1);
8559
+ };
8560
+ /**
8561
+ * Look for open tasks for a case and event combination. There are 5 possible scenarios:
8562
+ * 1. No tasks found => Success.
8563
+ * 2. One task found => Mark as done => Success.
8564
+ * 3. One task found => Mark as done throws error => Failure.
8565
+ * 4. More than one task found => Failure.
8566
+ * 5. Search call throws an error => Failure.
8567
+ * @param ccdId The ID of the case to find tasks for.
8568
+ * @param eventId The ID of the event to find tasks for.
8569
+ */
8570
+ WorkAllocationService.prototype.completeAppropriateTask = function (ccdId, eventId, jurisdiction, caseTypeId) {
8571
+ var _this = this;
8572
+ if (!this.isWAEnabled(jurisdiction, caseTypeId)) {
8573
+ return rxjs.of(null);
8574
+ }
8575
+ var taskSearchParameter = {
8576
+ ccdId: ccdId,
8577
+ eventId: eventId,
8578
+ jurisdiction: jurisdiction,
8579
+ caseTypeId: caseTypeId
8580
+ };
8581
+ return this.searchTasks(taskSearchParameter)
8582
+ .pipe(operators.map(function (response) {
8583
+ var tasks = response.tasks;
8584
+ if (tasks && tasks.length > 0) {
8585
+ if (tasks.length === 1) {
8586
+ _this.completeTask(tasks[0].id).subscribe();
8587
+ }
8588
+ else {
8589
+ // This is a problem. Throw an appropriate error.
8590
+ throw new Error(MULTIPLE_TASKS_FOUND);
8591
+ }
8592
+ }
8593
+ return true; // All good. Nothing to see here.
8594
+ }), operators.catchError(function (error) {
8595
+ // Simply rethrow it.
8596
+ return rxjs.throwError(error);
8597
+ }));
8598
+ };
8599
+ /**
8600
+ * Return tasks for case and event.
8601
+ */
8602
+ WorkAllocationService.prototype.getTasksByCaseIdAndEventId = function (eventId, caseId, caseType, jurisdiction) {
8603
+ var defaultPayload = {
8604
+ task_required_for_event: false,
8605
+ tasks: []
8606
+ };
8607
+ if (!this.isWAEnabled()) {
8608
+ return rxjs.of(defaultPayload);
8609
+ }
8610
+ return this.http.get(this.appConfig.getWorkAllocationApiUrl() + "/case/tasks/" + caseId + "/event/" + eventId + "/caseType/" + caseType + "/jurisdiction/" + jurisdiction);
8611
+ };
8612
+ /**
8613
+ * Call the API to get a task
8614
+ */
8615
+ WorkAllocationService.prototype.getTask = function (taskId) {
8616
+ if (!this.isWAEnabled()) {
8617
+ return rxjs.of({ task: null });
8618
+ }
8619
+ return this.http.get(this.appConfig.getWorkAllocationApiUrl() + "/task/" + taskId);
8620
+ };
8621
+ return WorkAllocationService;
8622
+ }());
8623
+ WorkAllocationService.iACCaseOfficer = 'caseworker-ia-caseofficer';
8624
+ WorkAllocationService.iACAdmOfficer = 'caseworker-ia-admofficer';
8625
+ WorkAllocationService.ɵfac = function WorkAllocationService_Factory(t) { return new (t || WorkAllocationService)(i0__namespace.ɵɵinject(HttpService), i0__namespace.ɵɵinject(AbstractAppConfig), i0__namespace.ɵɵinject(HttpErrorService), i0__namespace.ɵɵinject(AlertService), i0__namespace.ɵɵinject(SessionStorageService)); };
8626
+ WorkAllocationService.ɵprov = i0__namespace.ɵɵdefineInjectable({ token: WorkAllocationService, factory: WorkAllocationService.ɵfac });
8627
+ (function () {
8628
+ (typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassMetadata(WorkAllocationService, [{
8629
+ type: i0.Injectable
8630
+ }], function () { return [{ type: HttpService }, { type: AbstractAppConfig }, { type: HttpErrorService }, { type: AlertService }, { type: SessionStorageService }]; }, null);
8631
+ })();
8632
+
8406
8633
  var CasesService = /** @class */ (function () {
8407
- function CasesService(http, appConfig, orderService, errorService, wizardPageFieldToCaseFieldMapper, loadingService, sessionStorageService) {
8634
+ function CasesService(http, appConfig, orderService, errorService, wizardPageFieldToCaseFieldMapper, workAllocationService, loadingService, sessionStorageService) {
8408
8635
  this.http = http;
8409
8636
  this.appConfig = appConfig;
8410
8637
  this.orderService = orderService;
8411
8638
  this.errorService = errorService;
8412
8639
  this.wizardPageFieldToCaseFieldMapper = wizardPageFieldToCaseFieldMapper;
8640
+ this.workAllocationService = workAllocationService;
8413
8641
  this.loadingService = loadingService;
8414
8642
  this.sessionStorageService = sessionStorageService;
8415
8643
  this.get = this.getCaseView;
@@ -8644,12 +8872,12 @@
8644
8872
  CasesService.V2_MEDIATYPE_CREATE_EVENT = 'application/vnd.uk.gov.hmcts.ccd-data-store-api.create-event.v2+json;charset=UTF-8';
8645
8873
  CasesService.V2_MEDIATYPE_CREATE_CASE = 'application/vnd.uk.gov.hmcts.ccd-data-store-api.create-case.v2+json;charset=UTF-8';
8646
8874
  CasesService.PUI_CASE_MANAGER = 'pui-case-manager';
8647
- CasesService.ɵfac = function CasesService_Factory(t) { return new (t || CasesService)(i0__namespace.ɵɵinject(HttpService), i0__namespace.ɵɵinject(AbstractAppConfig), i0__namespace.ɵɵinject(OrderService), i0__namespace.ɵɵinject(HttpErrorService), i0__namespace.ɵɵinject(WizardPageFieldToCaseFieldMapper), i0__namespace.ɵɵinject(LoadingService), i0__namespace.ɵɵinject(SessionStorageService)); };
8875
+ CasesService.ɵfac = function CasesService_Factory(t) { return new (t || CasesService)(i0__namespace.ɵɵinject(HttpService), i0__namespace.ɵɵinject(AbstractAppConfig), i0__namespace.ɵɵinject(OrderService), i0__namespace.ɵɵinject(HttpErrorService), i0__namespace.ɵɵinject(WizardPageFieldToCaseFieldMapper), i0__namespace.ɵɵinject(WorkAllocationService), i0__namespace.ɵɵinject(LoadingService), i0__namespace.ɵɵinject(SessionStorageService)); };
8648
8876
  CasesService.ɵprov = i0__namespace.ɵɵdefineInjectable({ token: CasesService, factory: CasesService.ɵfac });
8649
8877
  (function () {
8650
8878
  (typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassMetadata(CasesService, [{
8651
8879
  type: i0.Injectable
8652
- }], function () { return [{ type: HttpService }, { type: AbstractAppConfig }, { type: OrderService }, { type: HttpErrorService }, { type: WizardPageFieldToCaseFieldMapper }, { type: LoadingService }, { type: SessionStorageService }]; }, null);
8880
+ }], function () { return [{ type: HttpService }, { type: AbstractAppConfig }, { type: OrderService }, { type: HttpErrorService }, { type: WizardPageFieldToCaseFieldMapper }, { type: WorkAllocationService }, { type: LoadingService }, { type: SessionStorageService }]; }, null);
8653
8881
  })();
8654
8882
 
8655
8883
  var EventTriggerService = /** @class */ (function () {
@@ -9303,215 +9531,6 @@
9303
9531
  }], function () { return [{ type: CaseFieldService }]; }, null);
9304
9532
  })();
9305
9533
 
9306
- var MULTIPLE_TASKS_FOUND = 'More than one task found!';
9307
- var WorkAllocationService = /** @class */ (function () {
9308
- function WorkAllocationService(http, appConfig, errorService, alertService, sessionStorageService) {
9309
- this.http = http;
9310
- this.appConfig = appConfig;
9311
- this.errorService = errorService;
9312
- this.alertService = alertService;
9313
- this.sessionStorageService = sessionStorageService;
9314
- // Check to see if work allocation is enabled
9315
- }
9316
- /**
9317
- * Call the API to get tasks matching the search criteria.
9318
- * @param searchRequest The search parameters that specify which tasks to match.
9319
- */
9320
- WorkAllocationService.prototype.searchTasks = function (searchRequest) {
9321
- var _this = this;
9322
- // Do not need to check if WA enabled as parent method will do that
9323
- var url = this.appConfig.getWorkAllocationApiUrl() + "/searchForCompletable";
9324
- return this.http
9325
- .post(url, { searchRequest: searchRequest }, null, false)
9326
- .pipe(operators.map(function (response) { return response; }), operators.catchError(function (error) {
9327
- _this.errorService.setError(error);
9328
- // explicitly eat away 401 error and 400 error
9329
- if (error && error.status && (error.status === 401 || error.status === 400)) {
9330
- // do nothing
9331
- console.log('error status 401 or 400', error);
9332
- }
9333
- else {
9334
- return rxjs.throwError(error);
9335
- }
9336
- }));
9337
- };
9338
- WorkAllocationService.prototype.isWAEnabled = function (jurisdiction, caseType) {
9339
- this.features = this.appConfig.getWAServiceConfig();
9340
- var enabled = false;
9341
- if (!jurisdiction || !caseType) {
9342
- var caseInfo = JSON.parse(this.sessionStorageService.getItem('caseInfo'));
9343
- jurisdiction = caseInfo.jurisdiction;
9344
- caseType = caseInfo.caseType;
9345
- }
9346
- if (!this.features || !this.features.configurations) {
9347
- return false;
9348
- }
9349
- this.features.configurations.forEach(function (serviceConfig) {
9350
- if (serviceConfig.serviceName === jurisdiction && (serviceConfig.caseTypes.indexOf(caseType) !== -1)) {
9351
- enabled = true;
9352
- }
9353
- });
9354
- return enabled;
9355
- };
9356
- /**
9357
- * Call the API to assign a task.
9358
- * @param taskId specifies which task should be assigned.
9359
- * @param userId specifies the user the task should be assigned to.
9360
- */
9361
- WorkAllocationService.prototype.assignTask = function (taskId, userId) {
9362
- var _this = this;
9363
- if (!this.isWAEnabled()) {
9364
- return rxjs.of(null);
9365
- }
9366
- var url = this.appConfig.getWorkAllocationApiUrl() + "/task/" + taskId + "/assign";
9367
- return this.http
9368
- .post(url, { userId: userId })
9369
- .pipe(operators.catchError(function (error) {
9370
- _this.errorService.setError(error);
9371
- return rxjs.throwError(error);
9372
- }));
9373
- };
9374
- /**
9375
- * Call the API to complete a task.
9376
- * @param taskId specifies which task should be completed.
9377
- */
9378
- WorkAllocationService.prototype.completeTask = function (taskId) {
9379
- var _this = this;
9380
- if (!this.isWAEnabled()) {
9381
- return rxjs.of(null);
9382
- }
9383
- var url = this.appConfig.getWorkAllocationApiUrl() + "/task/" + taskId + "/complete";
9384
- return this.http
9385
- .post(url, {})
9386
- .pipe(operators.catchError(function (error) {
9387
- _this.errorService.setError(error);
9388
- // this will subscribe to get the user details and decide whether to display an error message
9389
- _this.http.get(_this.appConfig.getUserInfoApiUrl()).pipe(operators.map(function (response) { return response; })).subscribe(function (response) {
9390
- _this.handleTaskCompletionError(response);
9391
- });
9392
- return rxjs.throwError(error);
9393
- }));
9394
- };
9395
- /**
9396
- * Call the API to assign and complete a task.
9397
- * @param taskId specifies which task should be completed.
9398
- */
9399
- WorkAllocationService.prototype.assignAndCompleteTask = function (taskId) {
9400
- var _this = this;
9401
- if (!this.isWAEnabled()) {
9402
- return rxjs.of(null);
9403
- }
9404
- var url = this.appConfig.getWorkAllocationApiUrl() + "/task/" + taskId + "/complete";
9405
- return this.http
9406
- .post(url, {
9407
- completion_options: {
9408
- assign_and_complete: true
9409
- }
9410
- })
9411
- .pipe(operators.catchError(function (error) {
9412
- _this.errorService.setError(error);
9413
- // this will subscribe to get the user details and decide whether to display an error message
9414
- _this.http.get(_this.appConfig.getUserInfoApiUrl()).pipe(operators.map(function (response) { return response; })).subscribe(function (response) {
9415
- _this.handleTaskCompletionError(response);
9416
- });
9417
- return rxjs.throwError(error);
9418
- }));
9419
- };
9420
- /**
9421
- * Handles the response from the observable to get the user details when task is completed.
9422
- * @param response is the response given from the observable which contains the user detaild.
9423
- */
9424
- WorkAllocationService.prototype.handleTaskCompletionError = function (response) {
9425
- var userDetails = response;
9426
- if (this.userIsCaseworker(userDetails.userInfo.roles)) {
9427
- // when submitting the completion of task if not yet rendered cases/case confirm then preserve the alert for re-rendering
9428
- this.alertService.setPreserveAlerts(true, ['cases/case', 'submit']);
9429
- this.alertService.warning('A task could not be completed successfully. Please complete the task associated with the case manually.');
9430
- }
9431
- };
9432
- /**
9433
- * Returns true if the user's role is equivalent to a caseworker.
9434
- * @param roles is the list of roles found from the current user.
9435
- */
9436
- WorkAllocationService.prototype.userIsCaseworker = function (roles) {
9437
- var lowerCaseRoles = roles.map(function (role) { return role.toLowerCase(); });
9438
- // When/if lib & target permanently change to es2016, replace indexOf with includes
9439
- return (lowerCaseRoles.indexOf(WorkAllocationService.iACCaseOfficer) !== -1)
9440
- || (lowerCaseRoles.indexOf(WorkAllocationService.iACAdmOfficer) !== -1);
9441
- };
9442
- /**
9443
- * Look for open tasks for a case and event combination. There are 5 possible scenarios:
9444
- * 1. No tasks found => Success.
9445
- * 2. One task found => Mark as done => Success.
9446
- * 3. One task found => Mark as done throws error => Failure.
9447
- * 4. More than one task found => Failure.
9448
- * 5. Search call throws an error => Failure.
9449
- * @param ccdId The ID of the case to find tasks for.
9450
- * @param eventId The ID of the event to find tasks for.
9451
- */
9452
- WorkAllocationService.prototype.completeAppropriateTask = function (ccdId, eventId, jurisdiction, caseTypeId) {
9453
- var _this = this;
9454
- if (!this.isWAEnabled(jurisdiction, caseTypeId)) {
9455
- return rxjs.of(null);
9456
- }
9457
- var taskSearchParameter = {
9458
- ccdId: ccdId,
9459
- eventId: eventId,
9460
- jurisdiction: jurisdiction,
9461
- caseTypeId: caseTypeId
9462
- };
9463
- return this.searchTasks(taskSearchParameter)
9464
- .pipe(operators.map(function (response) {
9465
- var tasks = response.tasks;
9466
- if (tasks && tasks.length > 0) {
9467
- if (tasks.length === 1) {
9468
- _this.completeTask(tasks[0].id).subscribe();
9469
- }
9470
- else {
9471
- // This is a problem. Throw an appropriate error.
9472
- throw new Error(MULTIPLE_TASKS_FOUND);
9473
- }
9474
- }
9475
- return true; // All good. Nothing to see here.
9476
- }), operators.catchError(function (error) {
9477
- // Simply rethrow it.
9478
- return rxjs.throwError(error);
9479
- }));
9480
- };
9481
- /**
9482
- * Return tasks for case and event.
9483
- */
9484
- WorkAllocationService.prototype.getTasksByCaseIdAndEventId = function (eventId, caseId, caseType, jurisdiction) {
9485
- var defaultPayload = {
9486
- task_required_for_event: false,
9487
- tasks: []
9488
- };
9489
- if (!this.isWAEnabled()) {
9490
- return rxjs.of(defaultPayload);
9491
- }
9492
- return this.http.get(this.appConfig.getWorkAllocationApiUrl() + "/case/tasks/" + caseId + "/event/" + eventId + "/caseType/" + caseType + "/jurisdiction/" + jurisdiction);
9493
- };
9494
- /**
9495
- * Call the API to get a task
9496
- */
9497
- WorkAllocationService.prototype.getTask = function (taskId) {
9498
- if (!this.isWAEnabled()) {
9499
- return rxjs.of({ task: null });
9500
- }
9501
- return this.http.get(this.appConfig.getWorkAllocationApiUrl() + "/task/" + taskId);
9502
- };
9503
- return WorkAllocationService;
9504
- }());
9505
- WorkAllocationService.iACCaseOfficer = 'caseworker-ia-caseofficer';
9506
- WorkAllocationService.iACAdmOfficer = 'caseworker-ia-admofficer';
9507
- WorkAllocationService.ɵfac = function WorkAllocationService_Factory(t) { return new (t || WorkAllocationService)(i0__namespace.ɵɵinject(HttpService), i0__namespace.ɵɵinject(AbstractAppConfig), i0__namespace.ɵɵinject(HttpErrorService), i0__namespace.ɵɵinject(AlertService), i0__namespace.ɵɵinject(SessionStorageService)); };
9508
- WorkAllocationService.ɵprov = i0__namespace.ɵɵdefineInjectable({ token: WorkAllocationService, factory: WorkAllocationService.ɵfac });
9509
- (function () {
9510
- (typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassMetadata(WorkAllocationService, [{
9511
- type: i0.Injectable
9512
- }], function () { return [{ type: HttpService }, { type: AbstractAppConfig }, { type: HttpErrorService }, { type: AlertService }, { type: SessionStorageService }]; }, null);
9513
- })();
9514
-
9515
9534
  var CaseEditComponent = /** @class */ (function () {
9516
9535
  function CaseEditComponent(fb, router, route, fieldsUtils, fieldsPurger, registrarService, wizardFactory, sessionStorageService, windowsService) {
9517
9536
  this.fb = fb;
@@ -11011,7 +11030,7 @@
11011
11030
  return AddressOption;
11012
11031
  }());
11013
11032
 
11014
- var _c0$R = ["writeComplexFieldComponent"];
11033
+ var _c0$S = ["writeComplexFieldComponent"];
11015
11034
  function WriteAddressFieldComponent_div_1_div_4_span_4_Template(rf, ctx) {
11016
11035
  if (rf & 1) {
11017
11036
  i0__namespace.ɵɵelementStart(0, "span", 14);
@@ -11225,7 +11244,7 @@
11225
11244
  WriteAddressFieldComponent.ɵfac = function WriteAddressFieldComponent_Factory(t) { return new (t || WriteAddressFieldComponent)(i0__namespace.ɵɵdirectiveInject(AddressesService), i0__namespace.ɵɵdirectiveInject(IsCompoundPipe)); };
11226
11245
  WriteAddressFieldComponent.ɵcmp = i0__namespace.ɵɵdefineComponent({ type: WriteAddressFieldComponent, selectors: [["ccd-write-address-field"]], viewQuery: function WriteAddressFieldComponent_Query(rf, ctx) {
11227
11246
  if (rf & 1) {
11228
- i0__namespace.ɵɵviewQuery(_c0$R, 1);
11247
+ i0__namespace.ɵɵviewQuery(_c0$S, 1);
11229
11248
  i0__namespace.ɵɵviewQuery(FocusElementDirective, 1);
11230
11249
  }
11231
11250
  if (rf & 2) {
@@ -11371,12 +11390,13 @@
11371
11390
  }
11372
11391
  }
11373
11392
  var CaseFileViewFieldComponent = /** @class */ (function () {
11374
- function CaseFileViewFieldComponent(elementRef, route, caseFileViewService, documentManagementService, loadingService) {
11393
+ function CaseFileViewFieldComponent(elementRef, route, caseFileViewService, documentManagementService, loadingService, sessionStorageService) {
11375
11394
  this.elementRef = elementRef;
11376
11395
  this.route = route;
11377
11396
  this.caseFileViewService = caseFileViewService;
11378
11397
  this.documentManagementService = documentManagementService;
11379
11398
  this.loadingService = loadingService;
11399
+ this.sessionStorageService = sessionStorageService;
11380
11400
  this.allowMoving = true;
11381
11401
  this.getCategoriesAndDocumentsError = false;
11382
11402
  }
@@ -11390,6 +11410,12 @@
11390
11410
  },
11391
11411
  error: function (_) { return _this.getCategoriesAndDocumentsError = true; }
11392
11412
  });
11413
+ // EXUI-8000
11414
+ var userInfo = JSON.parse(this.sessionStorageService.getItem('userDetails'));
11415
+ // Get acls that intersects from acl roles and user roles
11416
+ var acls = this.caseField.acls.filter(function (acl) { return userInfo.roles.includes(acl.role); });
11417
+ // As there can be more than one intersecting role, if any acls are update: true
11418
+ this.allowMoving = acls.some(function (acl) { return acl.update; });
11393
11419
  };
11394
11420
  CaseFileViewFieldComponent.prototype.ngAfterViewInit = function () {
11395
11421
  var slider = this.elementRef.nativeElement.querySelector('.slider');
@@ -11437,7 +11463,7 @@
11437
11463
  return CaseFileViewFieldComponent;
11438
11464
  }());
11439
11465
  CaseFileViewFieldComponent.PARAM_CASE_ID = 'cid';
11440
- CaseFileViewFieldComponent.ɵfac = function CaseFileViewFieldComponent_Factory(t) { return new (t || CaseFileViewFieldComponent)(i0__namespace.ɵɵdirectiveInject(i0__namespace.ElementRef), i0__namespace.ɵɵdirectiveInject(i1__namespace$1.ActivatedRoute), i0__namespace.ɵɵdirectiveInject(CaseFileViewService), i0__namespace.ɵɵdirectiveInject(DocumentManagementService), i0__namespace.ɵɵdirectiveInject(LoadingService)); };
11466
+ CaseFileViewFieldComponent.ɵfac = function CaseFileViewFieldComponent_Factory(t) { return new (t || CaseFileViewFieldComponent)(i0__namespace.ɵɵdirectiveInject(i0__namespace.ElementRef), i0__namespace.ɵɵdirectiveInject(i1__namespace$1.ActivatedRoute), i0__namespace.ɵɵdirectiveInject(CaseFileViewService), i0__namespace.ɵɵdirectiveInject(DocumentManagementService), i0__namespace.ɵɵdirectiveInject(LoadingService), i0__namespace.ɵɵdirectiveInject(SessionStorageService)); };
11441
11467
  CaseFileViewFieldComponent.ɵcmp = i0__namespace.ɵɵdefineComponent({ type: CaseFileViewFieldComponent, selectors: [["ccd-case-file-view-field"]], decls: 2, vars: 2, consts: [["class", "govuk-grid-column-two-thirds", 4, "ngIf"], [4, "ngIf"], [1, "govuk-grid-column-two-thirds"], [1, "govuk-heading-xl"], [1, "govuk-body"], [1, "govuk-heading-l"], ["id", "case-file-view", 1, "govuk-form-group"], [1, "document-tree-container"], [1, "document-tree-container__tree", 3, "categoriesAndDocuments", "allowMoving", "clickedDocument", "moveDocument"], [1, "slider"], [1, "media-viewer-container"], [3, "url", "downloadFileName", "showToolbar", "contentType", "enableAnnotations", "enableRedactions", "height"]], template: function CaseFileViewFieldComponent_Template(rf, ctx) {
11442
11468
  if (rf & 1) {
11443
11469
  i0__namespace.ɵɵtemplate(0, CaseFileViewFieldComponent_div_0_Template, 5, 0, "div", 0);
@@ -11457,92 +11483,7 @@
11457
11483
  templateUrl: './case-file-view-field.component.html',
11458
11484
  styleUrls: ['./case-file-view-field.component.scss'],
11459
11485
  }]
11460
- }], function () { return [{ type: i0__namespace.ElementRef }, { type: i1__namespace$1.ActivatedRoute }, { type: CaseFileViewService }, { type: DocumentManagementService }, { type: LoadingService }]; }, null);
11461
- })();
11462
-
11463
- function CaseFileViewFieldReadComponent_div_0_Template(rf, ctx) {
11464
- if (rf & 1) {
11465
- i0__namespace.ɵɵelementStart(0, "div", 2);
11466
- i0__namespace.ɵɵelementStart(1, "h1", 3);
11467
- i0__namespace.ɵɵtext(2, "Sorry, there is a problem with the service");
11468
- i0__namespace.ɵɵelementEnd();
11469
- i0__namespace.ɵɵelementStart(3, "p", 4);
11470
- i0__namespace.ɵɵtext(4, "Try again later.");
11471
- i0__namespace.ɵɵelementEnd();
11472
- i0__namespace.ɵɵelementEnd();
11473
- }
11474
- }
11475
- function CaseFileViewFieldReadComponent_div_1_ng_container_8_Template(rf, ctx) {
11476
- if (rf & 1) {
11477
- i0__namespace.ɵɵelementContainerStart(0);
11478
- i0__namespace.ɵɵelement(1, "mv-media-viewer", 11);
11479
- i0__namespace.ɵɵelementContainerEnd();
11480
- }
11481
- if (rf & 2) {
11482
- var ctx_r2 = i0__namespace.ɵɵnextContext(2);
11483
- i0__namespace.ɵɵadvance(1);
11484
- i0__namespace.ɵɵproperty("url", ctx_r2.currentDocument.document_binary_url)("downloadFileName", ctx_r2.currentDocument.document_filename)("showToolbar", true)("contentType", ctx_r2.currentDocument.content_type)("enableAnnotations", true)("enableRedactions", true)("height", "94.5vh");
11485
- }
11486
- }
11487
- function CaseFileViewFieldReadComponent_div_1_Template(rf, ctx) {
11488
- if (rf & 1) {
11489
- var _r4_1 = i0__namespace.ɵɵgetCurrentView();
11490
- i0__namespace.ɵɵelementStart(0, "div");
11491
- i0__namespace.ɵɵelementStart(1, "h2", 5);
11492
- i0__namespace.ɵɵtext(2, "Case file");
11493
- i0__namespace.ɵɵelementEnd();
11494
- i0__namespace.ɵɵelementStart(3, "div", 6);
11495
- i0__namespace.ɵɵelementStart(4, "div", 7);
11496
- i0__namespace.ɵɵelementStart(5, "ccd-case-file-view-folder", 8);
11497
- i0__namespace.ɵɵlistener("clickedDocument", function CaseFileViewFieldReadComponent_div_1_Template_ccd_case_file_view_folder_clickedDocument_5_listener($event) { i0__namespace.ɵɵrestoreView(_r4_1); var ctx_r3 = i0__namespace.ɵɵnextContext(); return ctx_r3.setMediaViewerFile($event); })("moveDocument", function CaseFileViewFieldReadComponent_div_1_Template_ccd_case_file_view_folder_moveDocument_5_listener($event) { i0__namespace.ɵɵrestoreView(_r4_1); var ctx_r5 = i0__namespace.ɵɵnextContext(); return ctx_r5.moveDocument($event); });
11498
- i0__namespace.ɵɵelementEnd();
11499
- i0__namespace.ɵɵelementEnd();
11500
- i0__namespace.ɵɵelement(6, "div", 9);
11501
- i0__namespace.ɵɵelementStart(7, "div", 10);
11502
- i0__namespace.ɵɵtemplate(8, CaseFileViewFieldReadComponent_div_1_ng_container_8_Template, 2, 7, "ng-container", 1);
11503
- i0__namespace.ɵɵelementEnd();
11504
- i0__namespace.ɵɵelementEnd();
11505
- i0__namespace.ɵɵelementEnd();
11506
- }
11507
- if (rf & 2) {
11508
- var ctx_r1 = i0__namespace.ɵɵnextContext();
11509
- i0__namespace.ɵɵadvance(5);
11510
- i0__namespace.ɵɵproperty("categoriesAndDocuments", ctx_r1.categoriesAndDocuments$)("allowMoving", ctx_r1.allowMoving);
11511
- i0__namespace.ɵɵadvance(3);
11512
- i0__namespace.ɵɵproperty("ngIf", ctx_r1.currentDocument);
11513
- }
11514
- }
11515
- var CaseFileViewFieldReadComponent = /** @class */ (function (_super) {
11516
- __extends(CaseFileViewFieldReadComponent, _super);
11517
- function CaseFileViewFieldReadComponent() {
11518
- var _this = _super.apply(this, __spread(arguments)) || this;
11519
- _this.allowMoving = false;
11520
- return _this;
11521
- }
11522
- return CaseFileViewFieldReadComponent;
11523
- }(CaseFileViewFieldComponent));
11524
- CaseFileViewFieldReadComponent.ɵfac = function CaseFileViewFieldReadComponent_Factory(t) { return ɵCaseFileViewFieldReadComponent_BaseFactory(t || CaseFileViewFieldReadComponent); };
11525
- CaseFileViewFieldReadComponent.ɵcmp = i0__namespace.ɵɵdefineComponent({ type: CaseFileViewFieldReadComponent, selectors: [["ccd-case-file-view-field"]], features: [i0__namespace.ɵɵInheritDefinitionFeature], decls: 2, vars: 2, consts: [["class", "govuk-grid-column-two-thirds", 4, "ngIf"], [4, "ngIf"], [1, "govuk-grid-column-two-thirds"], [1, "govuk-heading-xl"], [1, "govuk-body"], [1, "govuk-heading-l"], ["id", "case-file-view", 1, "govuk-form-group"], [1, "document-tree-container"], [1, "document-tree-container__tree", 3, "categoriesAndDocuments", "allowMoving", "clickedDocument", "moveDocument"], [1, "slider"], [1, "media-viewer-container"], [3, "url", "downloadFileName", "showToolbar", "contentType", "enableAnnotations", "enableRedactions", "height"]], template: function CaseFileViewFieldReadComponent_Template(rf, ctx) {
11526
- if (rf & 1) {
11527
- i0__namespace.ɵɵtemplate(0, CaseFileViewFieldReadComponent_div_0_Template, 5, 0, "div", 0);
11528
- i0__namespace.ɵɵtemplate(1, CaseFileViewFieldReadComponent_div_1_Template, 9, 3, "div", 1);
11529
- }
11530
- if (rf & 2) {
11531
- i0__namespace.ɵɵproperty("ngIf", ctx.getCategoriesAndDocumentsError);
11532
- i0__namespace.ɵɵadvance(1);
11533
- i0__namespace.ɵɵproperty("ngIf", !ctx.getCategoriesAndDocumentsError);
11534
- }
11535
- }, styles: ["#case-file-view[_ngcontent-%COMP%]{display:flex;border:2px solid #c9c9c9;height:100vh;position:relative}#case-file-view[_ngcontent-%COMP%] .document-tree-container[_ngcontent-%COMP%]{background-color:#faf8f8;width:30%;min-height:400px;min-width:10%}#case-file-view[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]{width:.2%;background-color:#6b6b6b}#case-file-view[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]:focus, #case-file-view[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]:hover{cursor:col-resize}#case-file-view[_ngcontent-%COMP%] .media-viewer-container[_ngcontent-%COMP%]{background-color:#dee0e2;flex:1 1 0;overflow:hidden}"] });
11536
- var ɵCaseFileViewFieldReadComponent_BaseFactory = /*@__PURE__*/ i0__namespace.ɵɵgetInheritedFactory(CaseFileViewFieldReadComponent);
11537
- (function () {
11538
- (typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassMetadata(CaseFileViewFieldReadComponent, [{
11539
- type: i0.Component,
11540
- args: [{
11541
- selector: 'ccd-case-file-view-field',
11542
- templateUrl: './case-file-view-field.component.html',
11543
- styleUrls: ['./case-file-view-field.component.scss'],
11544
- }]
11545
- }], null, null);
11486
+ }], function () { return [{ type: i0__namespace.ElementRef }, { type: i1__namespace$1.ActivatedRoute }, { type: CaseFileViewService }, { type: DocumentManagementService }, { type: LoadingService }, { type: SessionStorageService }]; }, null);
11546
11487
  })();
11547
11488
 
11548
11489
  exports.AddCommentsErrorMessage = void 0;
@@ -11897,7 +11838,7 @@
11897
11838
  i0__namespace.ɵɵproperty("formGroup", ctx_r10.caseFlagParentFormGroup)("optional", ctx_r10.flagCommentsOptional);
11898
11839
  }
11899
11840
  }
11900
- var _c0$Q = function (a0) { return { "form-group-error": a0 }; };
11841
+ var _c0$R = function (a0) { return { "form-group-error": a0 }; };
11901
11842
  function WriteCaseFlagFieldComponent_div_1_Template(rf, ctx) {
11902
11843
  if (rf & 1) {
11903
11844
  i0__namespace.ɵɵelementStart(0, "div", 8);
@@ -11918,7 +11859,7 @@
11918
11859
  i0__namespace.ɵɵadvance(1);
11919
11860
  i0__namespace.ɵɵproperty("ngSwitch", ctx_r1.fieldState);
11920
11861
  i0__namespace.ɵɵadvance(1);
11921
- i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(8, _c0$Q, ctx_r1.errorMessages.length > 0));
11862
+ i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(8, _c0$R, ctx_r1.errorMessages.length > 0));
11922
11863
  i0__namespace.ɵɵadvance(1);
11923
11864
  i0__namespace.ɵɵtextInterpolate1(" ", ctx_r1.createFlagCaption, " ");
11924
11865
  i0__namespace.ɵɵadvance(1);
@@ -12394,7 +12335,7 @@
12394
12335
  }], null, null);
12395
12336
  })();
12396
12337
 
12397
- var _c0$P = ["writeComplexFieldComponent"];
12338
+ var _c0$Q = ["writeComplexFieldComponent"];
12398
12339
  function WriteCaseLinkFieldComponent_span_2_Template(rf, ctx) {
12399
12340
  if (rf & 1) {
12400
12341
  i0__namespace.ɵɵelementStart(0, "span", 6);
@@ -12499,7 +12440,7 @@
12499
12440
  WriteCaseLinkFieldComponent.ɵfac = function WriteCaseLinkFieldComponent_Factory(t) { return ɵWriteCaseLinkFieldComponent_BaseFactory(t || WriteCaseLinkFieldComponent); };
12500
12441
  WriteCaseLinkFieldComponent.ɵcmp = i0__namespace.ɵɵdefineComponent({ type: WriteCaseLinkFieldComponent, selectors: [["ccd-write-case-link-field"]], viewQuery: function WriteCaseLinkFieldComponent_Query(rf, ctx) {
12501
12442
  if (rf & 1) {
12502
- i0__namespace.ɵɵviewQuery(_c0$P, 1);
12443
+ i0__namespace.ɵɵviewQuery(_c0$Q, 1);
12503
12444
  }
12504
12445
  if (rf & 2) {
12505
12446
  var _t = void 0;
@@ -12544,7 +12485,7 @@
12544
12485
  }] });
12545
12486
  })();
12546
12487
 
12547
- var _c0$O = function (a0, a1, a2, a3, a4, a5) { return { id: a0, label: a1, field_type: a2, display_context_parameter: a3, value: a4, hidden: a5 }; };
12488
+ var _c0$P = function (a0, a1, a2, a3, a4, a5) { return { id: a0, label: a1, field_type: a2, display_context_parameter: a3, value: a4, hidden: a5 }; };
12548
12489
  function ReadCollectionFieldComponent_table_0_tbody_2_Template(rf, ctx) {
12549
12490
  if (rf & 1) {
12550
12491
  i0__namespace.ɵɵelementStart(0, "tbody");
@@ -12559,7 +12500,7 @@
12559
12500
  if (rf & 2) {
12560
12501
  var ctx_r1 = i0__namespace.ɵɵnextContext(2);
12561
12502
  i0__namespace.ɵɵadvance(4);
12562
- i0__namespace.ɵɵproperty("caseField", i0__namespace.ɵɵpureFunction6(3, _c0$O, ctx_r1.caseField.label, ctx_r1.caseField.label, ctx_r1.caseField.field_type.collection_field_type, ctx_r1.caseField.display_context_parameter, ctx_r1.caseField.value, ctx_r1.caseField.hidden))("context", ctx_r1.context)("topLevelFormGroup", ctx_r1.topLevelFormGroup);
12503
+ i0__namespace.ɵɵproperty("caseField", i0__namespace.ɵɵpureFunction6(3, _c0$P, ctx_r1.caseField.label, ctx_r1.caseField.label, ctx_r1.caseField.field_type.collection_field_type, ctx_r1.caseField.display_context_parameter, ctx_r1.caseField.value, ctx_r1.caseField.hidden))("context", ctx_r1.context)("topLevelFormGroup", ctx_r1.topLevelFormGroup);
12563
12504
  }
12564
12505
  }
12565
12506
  var _c1$k = function (a0, a1, a2, a3, a4) { return { id: a0, label: a1, field_type: a2, value: a3, hidden: a4 }; };
@@ -12710,7 +12651,7 @@
12710
12651
  }], function () { return [{ type: i1__namespace$3.MatDialogRef }]; }, null);
12711
12652
  })();
12712
12653
 
12713
- var _c0$N = ["collectionItem"];
12654
+ var _c0$O = ["collectionItem"];
12714
12655
  function WriteCollectionFieldComponent_h2_7_span_1_Template(rf, ctx) {
12715
12656
  if (rf & 1) {
12716
12657
  i0__namespace.ɵɵelementStart(0, "span", 9);
@@ -12952,6 +12893,11 @@
12952
12893
  // Manually resetting errors is required to prevent `ExpressionChangedAfterItHasBeenCheckedError`
12953
12894
  this.formArray.setErrors(null);
12954
12895
  var item = { value: null };
12896
+ if (this.isCollectionDynamic()) {
12897
+ item = Object.assign({}, this.caseField.value[this.caseField.value.length - 1]);
12898
+ var key = Number(item['id'][item['id'].length - 1]) + 1;
12899
+ item.id = item['id'].replace(/.$/, key.toString());
12900
+ }
12955
12901
  this.caseField.value.push(item);
12956
12902
  var index = this.caseField.value.length - 1;
12957
12903
  var caseField = this.buildCaseField(item, index, true);
@@ -12974,6 +12920,12 @@
12974
12920
  setTimeout(function () { return _this.focusLastItem(); });
12975
12921
  }
12976
12922
  };
12923
+ WriteCollectionFieldComponent.prototype.isCollectionDynamic = function () {
12924
+ if (!this.caseField.field_type || !this.caseField.field_type.collection_field_type) {
12925
+ return false;
12926
+ }
12927
+ return this.caseField.field_type.collection_field_type.id === 'DynamicRadioList';
12928
+ };
12977
12929
  WriteCollectionFieldComponent.prototype.newCaseField = function (id, item, index, isNew) {
12978
12930
  if (isNew === void 0) { isNew = false; }
12979
12931
  var isNotAuthorisedToUpdate = !isNew && this.isNotAuthorisedToUpdate(index);
@@ -13123,7 +13075,7 @@
13123
13075
  WriteCollectionFieldComponent.ɵfac = function WriteCollectionFieldComponent_Factory(t) { return new (t || WriteCollectionFieldComponent)(i0__namespace.ɵɵdirectiveInject(i1__namespace$3.MatDialog), i0__namespace.ɵɵdirectiveInject(i2__namespace$1.ScrollToService), i0__namespace.ɵɵdirectiveInject(ProfileNotifier)); };
13124
13076
  WriteCollectionFieldComponent.ɵcmp = i0__namespace.ɵɵdefineComponent({ type: WriteCollectionFieldComponent, selectors: [["ccd-write-collection-field"]], viewQuery: function WriteCollectionFieldComponent_Query(rf, ctx) {
13125
13077
  if (rf & 1) {
13126
- i0__namespace.ɵɵviewQuery(_c0$N, 1);
13078
+ i0__namespace.ɵɵviewQuery(_c0$O, 1);
13127
13079
  }
13128
13080
  if (rf & 2) {
13129
13081
  var _t = void 0;
@@ -13817,7 +13769,7 @@
13817
13769
  }], null, null);
13818
13770
  })();
13819
13771
 
13820
- var _c0$M = ["fileInput"];
13772
+ var _c0$N = ["fileInput"];
13821
13773
  function WriteDocumentFieldComponent_span_6_Template(rf, ctx) {
13822
13774
  if (rf & 1) {
13823
13775
  i0__namespace.ɵɵelementStart(0, "span", 12);
@@ -14111,7 +14063,7 @@
14111
14063
  WriteDocumentFieldComponent.ɵfac = function WriteDocumentFieldComponent_Factory(t) { return new (t || WriteDocumentFieldComponent)(i0__namespace.ɵɵdirectiveInject(AbstractAppConfig), i0__namespace.ɵɵdirectiveInject(CaseNotifier), i0__namespace.ɵɵdirectiveInject(DocumentManagementService), i0__namespace.ɵɵdirectiveInject(i1__namespace$3.MatDialog), i0__namespace.ɵɵdirectiveInject(FileUploadStateService)); };
14112
14064
  WriteDocumentFieldComponent.ɵcmp = i0__namespace.ɵɵdefineComponent({ type: WriteDocumentFieldComponent, selectors: [["ccd-write-document-field"]], viewQuery: function WriteDocumentFieldComponent_Query(rf, ctx) {
14113
14065
  if (rf & 1) {
14114
- i0__namespace.ɵɵviewQuery(_c0$M, 1);
14066
+ i0__namespace.ɵɵviewQuery(_c0$N, 1);
14115
14067
  }
14116
14068
  if (rf & 2) {
14117
14069
  var _t = void 0;
@@ -14311,7 +14263,7 @@
14311
14263
  i0__namespace.ɵɵtextInterpolate(type_r5.label);
14312
14264
  }
14313
14265
  }
14314
- var _c0$L = function (a0) { return { "form-group-error": a0 }; };
14266
+ var _c0$M = function (a0) { return { "form-group-error": a0 }; };
14315
14267
  var WriteDynamicListFieldComponent = /** @class */ (function (_super) {
14316
14268
  __extends(WriteDynamicListFieldComponent, _super);
14317
14269
  function WriteDynamicListFieldComponent() {
@@ -14360,7 +14312,7 @@
14360
14312
  i0__namespace.ɵɵelementEnd();
14361
14313
  }
14362
14314
  if (rf & 2) {
14363
- i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(10, _c0$L, !ctx.dynamicListFormControl.valid && (ctx.dynamicListFormControl.dirty || ctx.dynamicListFormControl.touched)));
14315
+ i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(10, _c0$M, !ctx.dynamicListFormControl.valid && (ctx.dynamicListFormControl.dirty || ctx.dynamicListFormControl.touched)));
14364
14316
  i0__namespace.ɵɵadvance(1);
14365
14317
  i0__namespace.ɵɵproperty("for", ctx.id());
14366
14318
  i0__namespace.ɵɵadvance(1);
@@ -14510,7 +14462,7 @@
14510
14462
  i0__namespace.ɵɵtextInterpolate(i0__namespace.ɵɵpipeBind1(2, 1, ctx_r3.dynamicRadioListControl.errors));
14511
14463
  }
14512
14464
  }
14513
- var _c0$K = function (a0) { return { selected: a0 }; };
14465
+ var _c0$L = function (a0) { return { selected: a0 }; };
14514
14466
  function WriteDynamicRadioListFieldComponent_div_9_Template(rf, ctx) {
14515
14467
  if (rf & 1) {
14516
14468
  i0__namespace.ɵɵelementStart(0, "div", 10);
@@ -14523,12 +14475,11 @@
14523
14475
  if (rf & 2) {
14524
14476
  var radioButton_r5 = ctx.$implicit;
14525
14477
  var ctx_r4 = i0__namespace.ɵɵnextContext();
14526
- i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(7, _c0$K, ctx_r4.dynamicRadioListControl.value === radioButton_r5.code));
14478
+ i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(7, _c0$L, ctx_r4.dynamicRadioListControl.value === radioButton_r5.code));
14527
14479
  i0__namespace.ɵɵadvance(1);
14528
- i0__namespace.ɵɵpropertyInterpolate("name", ctx_r4.id());
14529
- i0__namespace.ɵɵproperty("id", ctx_r4.buildElementId(radioButton_r5.code))("formControl", ctx_r4.dynamicRadioListControl)("value", radioButton_r5.code);
14480
+ i0__namespace.ɵɵproperty("id", ctx_r4.createElementId(radioButton_r5.code))("name", ctx_r4.createElementId(radioButton_r5.code))("formControl", ctx_r4.dynamicRadioListControl)("value", radioButton_r5.code);
14530
14481
  i0__namespace.ɵɵadvance(1);
14531
- i0__namespace.ɵɵproperty("for", ctx_r4.buildElementId(radioButton_r5.code));
14482
+ i0__namespace.ɵɵproperty("for", ctx_r4.createElementId(radioButton_r5.code));
14532
14483
  i0__namespace.ɵɵadvance(1);
14533
14484
  i0__namespace.ɵɵtextInterpolate(radioButton_r5.label);
14534
14485
  }
@@ -14557,8 +14508,8 @@
14557
14508
  this.dynamicRadioListControl = this.registerControl(new i2.FormControl(this.caseField.value));
14558
14509
  this.dynamicRadioListControl.setValue(this.caseField.value);
14559
14510
  };
14560
- WriteDynamicRadioListFieldComponent.prototype.buildElementId = function (name) {
14561
- return this.id() + "-" + name;
14511
+ WriteDynamicRadioListFieldComponent.prototype.createElementId = function (name) {
14512
+ return this.parent && this.parent.value ? this.parent.value.id + this.parent.value.value : _super.prototype.createElementId.call(this, name);
14562
14513
  };
14563
14514
  return WriteDynamicRadioListFieldComponent;
14564
14515
  }(AbstractFieldWriteComponent));
@@ -14688,7 +14639,7 @@
14688
14639
  i0__namespace.ɵɵtextInterpolate(i0__namespace.ɵɵpipeBind2(2, 1, ctx_r2.emailControl.errors, ctx_r2.caseField.label));
14689
14640
  }
14690
14641
  }
14691
- var _c0$J = function (a0) { return { "form-group-error": a0 }; };
14642
+ var _c0$K = function (a0) { return { "form-group-error": a0 }; };
14692
14643
  var _c1$h = function (a0) { return { "govuk-input--error": a0 }; };
14693
14644
  var WriteEmailFieldComponent = /** @class */ (function (_super) {
14694
14645
  __extends(WriteEmailFieldComponent, _super);
@@ -14713,7 +14664,7 @@
14713
14664
  i0__namespace.ɵɵelementEnd();
14714
14665
  }
14715
14666
  if (rf & 2) {
14716
- i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(8, _c0$J, !ctx.emailControl.valid && (ctx.emailControl.dirty || ctx.emailControl.touched)));
14667
+ i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(8, _c0$K, !ctx.emailControl.valid && (ctx.emailControl.dirty || ctx.emailControl.touched)));
14717
14668
  i0__namespace.ɵɵadvance(1);
14718
14669
  i0__namespace.ɵɵproperty("for", ctx.id());
14719
14670
  i0__namespace.ɵɵadvance(1);
@@ -14845,7 +14796,7 @@
14845
14796
  i0__namespace.ɵɵtextInterpolate(type_r4.label);
14846
14797
  }
14847
14798
  }
14848
- var _c0$I = function (a0) { return { "form-group-error": a0 }; };
14799
+ var _c0$J = function (a0) { return { "form-group-error": a0 }; };
14849
14800
  var WriteFixedListFieldComponent = /** @class */ (function (_super) {
14850
14801
  __extends(WriteFixedListFieldComponent, _super);
14851
14802
  function WriteFixedListFieldComponent() {
@@ -14894,7 +14845,7 @@
14894
14845
  i0__namespace.ɵɵelementEnd();
14895
14846
  }
14896
14847
  if (rf & 2) {
14897
- i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(9, _c0$I, !ctx.fixedListFormControl.valid && (ctx.fixedListFormControl.dirty || ctx.fixedListFormControl.touched)));
14848
+ i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(9, _c0$J, !ctx.fixedListFormControl.valid && (ctx.fixedListFormControl.dirty || ctx.fixedListFormControl.touched)));
14898
14849
  i0__namespace.ɵɵadvance(1);
14899
14850
  i0__namespace.ɵɵproperty("for", ctx.id());
14900
14851
  i0__namespace.ɵɵadvance(1);
@@ -15012,7 +14963,7 @@
15012
14963
  i0__namespace.ɵɵtextInterpolate(i0__namespace.ɵɵpipeBind2(2, 1, ctx_r2.fixedRadioListControl.errors, ctx_r2.caseField.label));
15013
14964
  }
15014
14965
  }
15015
- var _c0$H = function (a0) { return { selected: a0 }; };
14966
+ var _c0$I = function (a0) { return { selected: a0 }; };
15016
14967
  function WriteFixedRadioListFieldComponent_div_8_Template(rf, ctx) {
15017
14968
  if (rf & 1) {
15018
14969
  i0__namespace.ɵɵelementStart(0, "div", 9);
@@ -15025,7 +14976,7 @@
15025
14976
  if (rf & 2) {
15026
14977
  var radioButton_r4 = ctx.$implicit;
15027
14978
  var ctx_r3 = i0__namespace.ɵɵnextContext();
15028
- i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(7, _c0$H, ctx_r3.fixedRadioListControl.value === radioButton_r4.code));
14979
+ i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(7, _c0$I, ctx_r3.fixedRadioListControl.value === radioButton_r4.code));
15029
14980
  i0__namespace.ɵɵadvance(1);
15030
14981
  i0__namespace.ɵɵproperty("id", ctx_r3.id() + "-" + radioButton_r4.code)("name", ctx_r3.id())("formControl", ctx_r3.fixedRadioListControl)("value", radioButton_r4.code);
15031
14982
  i0__namespace.ɵɵadvance(1);
@@ -15195,7 +15146,7 @@
15195
15146
  i0__namespace.ɵɵtextInterpolate1(" ", ctx_r1.caseField.hint_text, " ");
15196
15147
  }
15197
15148
  }
15198
- var _c0$G = function (a0) { return { "hide-autocomplete": a0 }; };
15149
+ var _c0$H = function (a0) { return { "hide-autocomplete": a0 }; };
15199
15150
  function WriteJudicialUserFieldComponent_mat_option_7_Template(rf, ctx) {
15200
15151
  if (rf & 1) {
15201
15152
  var _r7_1 = i0__namespace.ɵɵgetCurrentView();
@@ -15207,7 +15158,7 @@
15207
15158
  if (rf & 2) {
15208
15159
  var judicialUser_r5 = ctx.$implicit;
15209
15160
  var ctx_r3 = i0__namespace.ɵɵnextContext();
15210
- i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(4, _c0$G, !ctx_r3.showAutocomplete))("value", judicialUser_r5.idamId);
15161
+ i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(4, _c0$H, !ctx_r3.showAutocomplete))("value", judicialUser_r5.idamId);
15211
15162
  i0__namespace.ɵɵadvance(1);
15212
15163
  i0__namespace.ɵɵtextInterpolate2(" ", judicialUser_r5.fullName, " (", judicialUser_r5.emailId, ") ");
15213
15164
  }
@@ -15997,7 +15948,7 @@
15997
15948
  i0__namespace.ɵɵtextInterpolate1(" ", ctx_r13.caseReasonCommentsError, " ");
15998
15949
  }
15999
15950
  }
16000
- var _c0$F = function (a0) { return { "govuk-form-group--error": a0 }; };
15951
+ var _c0$G = function (a0) { return { "govuk-form-group--error": a0 }; };
16001
15952
  function LinkCasesComponent_div_8_div_14_Template(rf, ctx) {
16002
15953
  if (rf & 1) {
16003
15954
  i0__namespace.ɵɵelementStart(0, "div", 35);
@@ -16015,7 +15966,7 @@
16015
15966
  }
16016
15967
  if (rf & 2) {
16017
15968
  var ctx_r7 = i0__namespace.ɵɵnextContext(2);
16018
- i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(2, _c0$F, !!ctx_r7.caseReasonCommentsError));
15969
+ i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(2, _c0$G, !!ctx_r7.caseReasonCommentsError));
16019
15970
  i0__namespace.ɵɵadvance(3);
16020
15971
  i0__namespace.ɵɵproperty("ngIf", ctx_r7.caseReasonCommentsError);
16021
15972
  }
@@ -16072,11 +16023,11 @@
16072
16023
  var ctx_r0 = i0__namespace.ɵɵnextContext();
16073
16024
  i0__namespace.ɵɵproperty("formGroup", ctx_r0.linkCaseForm);
16074
16025
  i0__namespace.ɵɵadvance(1);
16075
- i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(8, _c0$F, !!ctx_r0.caseNumberError));
16026
+ i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(8, _c0$G, !!ctx_r0.caseNumberError));
16076
16027
  i0__namespace.ɵɵadvance(3);
16077
16028
  i0__namespace.ɵɵproperty("ngIf", ctx_r0.caseNumberError);
16078
16029
  i0__namespace.ɵɵadvance(2);
16079
- i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(10, _c0$F, !!ctx_r0.caseReasonError));
16030
+ i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(10, _c0$G, !!ctx_r0.caseReasonError));
16080
16031
  i0__namespace.ɵɵadvance(5);
16081
16032
  i0__namespace.ɵɵproperty("ngIf", ctx_r0.caseReasonError);
16082
16033
  i0__namespace.ɵɵadvance(2);
@@ -16510,7 +16461,7 @@
16510
16461
  i0__namespace.ɵɵadvance(4);
16511
16462
  i0__namespace.ɵɵproperty("ngIf", ctx.linkCaseForm);
16512
16463
  i0__namespace.ɵɵadvance(4);
16513
- i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(9, _c0$F, !!ctx.noSelectedCaseError));
16464
+ i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(9, _c0$G, !!ctx.noSelectedCaseError));
16514
16465
  i0__namespace.ɵɵadvance(1);
16515
16466
  i0__namespace.ɵɵproperty("ngIf", ctx.noSelectedCaseError);
16516
16467
  i0__namespace.ɵɵadvance(18);
@@ -17194,7 +17145,7 @@
17194
17145
  i0__namespace.ɵɵtextInterpolate2(" ", case_r4.caseName, " ", i0__namespace.ɵɵpipeBind1(4, 6, case_r4.caseReference), " ");
17195
17146
  }
17196
17147
  }
17197
- var _c0$E = function (a0) { return { "govuk-form-group--error": a0 }; };
17148
+ var _c0$F = function (a0) { return { "govuk-form-group--error": a0 }; };
17198
17149
  function UnLinkCasesComponent_div_0_div_4_Template(rf, ctx) {
17199
17150
  if (rf & 1) {
17200
17151
  i0__namespace.ɵɵelementStart(0, "div", 7);
@@ -17206,7 +17157,7 @@
17206
17157
  }
17207
17158
  if (rf & 2) {
17208
17159
  var ctx_r1 = i0__namespace.ɵɵnextContext(2);
17209
- i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(4, _c0$E, ctx_r1.unlinkErrorMessage))("formGroup", ctx_r1.unlinkCaseForm);
17160
+ i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(4, _c0$F, ctx_r1.unlinkErrorMessage))("formGroup", ctx_r1.unlinkCaseForm);
17210
17161
  i0__namespace.ɵɵadvance(1);
17211
17162
  i0__namespace.ɵɵproperty("ngIf", ctx_r1.unlinkErrorMessage);
17212
17163
  i0__namespace.ɵɵadvance(2);
@@ -18148,7 +18099,7 @@
18148
18099
  i0__namespace.ɵɵtextInterpolate(i0__namespace.ɵɵpipeBind2(2, 1, ctx_r2.moneyGbpControl.errors, ctx_r2.caseField.label));
18149
18100
  }
18150
18101
  }
18151
- var _c0$D = function (a0) { return { "form-group-error": a0 }; };
18102
+ var _c0$E = function (a0) { return { "form-group-error": a0 }; };
18152
18103
  var WriteMoneyGbpFieldComponent = /** @class */ (function (_super) {
18153
18104
  __extends(WriteMoneyGbpFieldComponent, _super);
18154
18105
  function WriteMoneyGbpFieldComponent() {
@@ -18178,7 +18129,7 @@
18178
18129
  i0__namespace.ɵɵelementEnd();
18179
18130
  }
18180
18131
  if (rf & 2) {
18181
- i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(11, _c0$D, !ctx.moneyGbpControl.valid && (ctx.moneyGbpControl.dirty || ctx.moneyGbpControl.touched)));
18132
+ i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(11, _c0$E, !ctx.moneyGbpControl.valid && (ctx.moneyGbpControl.dirty || ctx.moneyGbpControl.touched)));
18182
18133
  i0__namespace.ɵɵadvance(1);
18183
18134
  i0__namespace.ɵɵproperty("for", ctx.id());
18184
18135
  i0__namespace.ɵɵadvance(1);
@@ -18326,7 +18277,7 @@
18326
18277
  i0__namespace.ɵɵtextInterpolate(checkbox_r4.label);
18327
18278
  }
18328
18279
  }
18329
- var _c0$C = function (a0) { return { "error": a0 }; };
18280
+ var _c0$D = function (a0) { return { "error": a0 }; };
18330
18281
  var WriteMultiSelectListFieldComponent = /** @class */ (function (_super) {
18331
18282
  __extends(WriteMultiSelectListFieldComponent, _super);
18332
18283
  function WriteMultiSelectListFieldComponent() {
@@ -18390,7 +18341,7 @@
18390
18341
  i0__namespace.ɵɵelementEnd();
18391
18342
  }
18392
18343
  if (rf & 2) {
18393
- i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(6, _c0$C, !ctx.checkboxes.valid && (ctx.checkboxes.dirty || ctx.checkboxes.touched)))("id", ctx.id());
18344
+ i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(6, _c0$D, !ctx.checkboxes.valid && (ctx.checkboxes.dirty || ctx.checkboxes.touched)))("id", ctx.id());
18394
18345
  i0__namespace.ɵɵadvance(3);
18395
18346
  i0__namespace.ɵɵproperty("ngIf", ctx.caseField.label);
18396
18347
  i0__namespace.ɵɵadvance(1);
@@ -18481,7 +18432,7 @@
18481
18432
  i0__namespace.ɵɵtextInterpolate(i0__namespace.ɵɵpipeBind2(2, 1, ctx_r2.numberControl.errors, ctx_r2.caseField.label));
18482
18433
  }
18483
18434
  }
18484
- var _c0$B = function (a0) { return { "form-group-error": a0 }; };
18435
+ var _c0$C = function (a0) { return { "form-group-error": a0 }; };
18485
18436
  var _c1$e = function (a0) { return { "govuk-input--error": a0 }; };
18486
18437
  var WriteNumberFieldComponent = /** @class */ (function (_super) {
18487
18438
  __extends(WriteNumberFieldComponent, _super);
@@ -18506,7 +18457,7 @@
18506
18457
  i0__namespace.ɵɵelementEnd();
18507
18458
  }
18508
18459
  if (rf & 2) {
18509
- i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(8, _c0$B, !ctx.numberControl.valid && ctx.numberControl.dirty));
18460
+ i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(8, _c0$C, !ctx.numberControl.valid && ctx.numberControl.dirty));
18510
18461
  i0__namespace.ɵɵadvance(1);
18511
18462
  i0__namespace.ɵɵproperty("for", ctx.id());
18512
18463
  i0__namespace.ɵɵadvance(1);
@@ -18807,7 +18758,7 @@
18807
18758
  i0__namespace.ɵɵelementEnd();
18808
18759
  }
18809
18760
  }
18810
- var _c0$A = function (a0) { return { "scroll-container ": a0 }; };
18761
+ var _c0$B = function (a0) { return { "scroll-container ": a0 }; };
18811
18762
  function WriteOrganisationFieldComponent_fieldset_3_div_14_Template(rf, ctx) {
18812
18763
  if (rf & 1) {
18813
18764
  i0__namespace.ɵɵelementStart(0, "div", 26);
@@ -18823,7 +18774,7 @@
18823
18774
  var ctx_r2 = i0__namespace.ɵɵnextContext(2);
18824
18775
  var tmp_0_0 = null;
18825
18776
  var tmp_2_0 = null;
18826
- i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(11, _c0$A, ((tmp_0_0 = i0__namespace.ɵɵpipeBind1(1, 3, ctx_r2.simpleOrganisations$)) == null ? null : tmp_0_0.length) > 10));
18777
+ i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(11, _c0$B, ((tmp_0_0 = i0__namespace.ɵɵpipeBind1(1, 3, ctx_r2.simpleOrganisations$)) == null ? null : tmp_0_0.length) > 10));
18827
18778
  i0__namespace.ɵɵadvance(2);
18828
18779
  i0__namespace.ɵɵproperty("ngForOf", i0__namespace.ɵɵpipeBind1(3, 5, ctx_r2.simpleOrganisations$));
18829
18780
  i0__namespace.ɵɵadvance(2);
@@ -19227,6 +19178,231 @@
19227
19178
  }], function () { return [{ type: AbstractAppConfig }, { type: SessionStorageService }]; }, null);
19228
19179
  })();
19229
19180
 
19181
+ function ReadDynamicMultiSelectListFieldComponent_div_0_Template(rf, ctx) {
19182
+ if (rf & 1) {
19183
+ i0__namespace.ɵɵelementStart(0, "div");
19184
+ i0__namespace.ɵɵtext(1);
19185
+ i0__namespace.ɵɵpipe(2, "ccdFixedList");
19186
+ i0__namespace.ɵɵelementEnd();
19187
+ }
19188
+ if (rf & 2) {
19189
+ var value_r1 = ctx.$implicit;
19190
+ var ctx_r0 = i0__namespace.ɵɵnextContext();
19191
+ i0__namespace.ɵɵadvance(1);
19192
+ i0__namespace.ɵɵtextInterpolate1(" ", i0__namespace.ɵɵpipeBind2(2, 1, value_r1.code, ctx_r0.caseField.list_items), "\n");
19193
+ }
19194
+ }
19195
+ var ReadDynamicMultiSelectListFieldComponent = /** @class */ (function (_super) {
19196
+ __extends(ReadDynamicMultiSelectListFieldComponent, _super);
19197
+ function ReadDynamicMultiSelectListFieldComponent() {
19198
+ return _super !== null && _super.apply(this, arguments) || this;
19199
+ }
19200
+ ReadDynamicMultiSelectListFieldComponent.prototype.ngOnInit = function () {
19201
+ /**
19202
+ *
19203
+ * Reassigning list_items from formatted_list when list_items is empty
19204
+ */
19205
+ if (!this.caseField.list_items && this.caseField.formatted_value && this.caseField.formatted_value.list_items) {
19206
+ this.caseField.list_items = this.caseField.formatted_value.list_items;
19207
+ }
19208
+ if (!this.caseField.value && this.caseField.formatted_value && this.caseField.formatted_value.value) {
19209
+ this.caseField.value = this.caseField.formatted_value.value;
19210
+ }
19211
+ _super.prototype.ngOnInit.call(this);
19212
+ };
19213
+ return ReadDynamicMultiSelectListFieldComponent;
19214
+ }(AbstractFieldReadComponent));
19215
+ ReadDynamicMultiSelectListFieldComponent.ɵfac = function ReadDynamicMultiSelectListFieldComponent_Factory(t) { return ɵReadDynamicMultiSelectListFieldComponent_BaseFactory(t || ReadDynamicMultiSelectListFieldComponent); };
19216
+ ReadDynamicMultiSelectListFieldComponent.ɵcmp = i0__namespace.ɵɵdefineComponent({ type: ReadDynamicMultiSelectListFieldComponent, selectors: [["ccd-read-dynamic-multi-select-list-field"]], features: [i0__namespace.ɵɵInheritDefinitionFeature], decls: 1, vars: 1, consts: [[4, "ngFor", "ngForOf"]], template: function ReadDynamicMultiSelectListFieldComponent_Template(rf, ctx) {
19217
+ if (rf & 1) {
19218
+ i0__namespace.ɵɵtemplate(0, ReadDynamicMultiSelectListFieldComponent_div_0_Template, 3, 4, "div", 0);
19219
+ }
19220
+ if (rf & 2) {
19221
+ i0__namespace.ɵɵproperty("ngForOf", ctx.caseField.value);
19222
+ }
19223
+ }, directives: [i1__namespace.NgForOf], pipes: [FixedListPipe], styles: [".multi-select-list-field-table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%] > td[_ngcontent-%COMP%]{padding:5px 0}.multi-select-list-field-table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:last-child > td[_ngcontent-%COMP%]{border-bottom:none}.multi-select-list-field-table[_ngcontent-%COMP%] td.collection-actions[_ngcontent-%COMP%]{width:1px;white-space:nowrap}"] });
19224
+ var ɵReadDynamicMultiSelectListFieldComponent_BaseFactory = /*@__PURE__*/ i0__namespace.ɵɵgetInheritedFactory(ReadDynamicMultiSelectListFieldComponent);
19225
+ (function () {
19226
+ (typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassMetadata(ReadDynamicMultiSelectListFieldComponent, [{
19227
+ type: i0.Component,
19228
+ args: [{
19229
+ selector: 'ccd-read-dynamic-multi-select-list-field',
19230
+ templateUrl: './read-dynamic-multi-select-list-field.html',
19231
+ styleUrls: ['./read-dynamic-multi-select-list-field.component.scss']
19232
+ }]
19233
+ }], null, null);
19234
+ })();
19235
+
19236
+ function WriteDynamicMultiSelectListFieldComponent_span_3_Template(rf, ctx) {
19237
+ if (rf & 1) {
19238
+ i0__namespace.ɵɵelementStart(0, "span", 5);
19239
+ i0__namespace.ɵɵtext(1);
19240
+ i0__namespace.ɵɵpipe(2, "ccdFieldLabel");
19241
+ i0__namespace.ɵɵelementEnd();
19242
+ }
19243
+ if (rf & 2) {
19244
+ var ctx_r0 = i0__namespace.ɵɵnextContext();
19245
+ i0__namespace.ɵɵadvance(1);
19246
+ i0__namespace.ɵɵtextInterpolate(i0__namespace.ɵɵpipeBind1(2, 1, ctx_r0.caseField));
19247
+ }
19248
+ }
19249
+ function WriteDynamicMultiSelectListFieldComponent_span_4_Template(rf, ctx) {
19250
+ if (rf & 1) {
19251
+ i0__namespace.ɵɵelementStart(0, "span", 6);
19252
+ i0__namespace.ɵɵtext(1);
19253
+ i0__namespace.ɵɵelementEnd();
19254
+ }
19255
+ if (rf & 2) {
19256
+ var ctx_r1 = i0__namespace.ɵɵnextContext();
19257
+ i0__namespace.ɵɵadvance(1);
19258
+ i0__namespace.ɵɵtextInterpolate(ctx_r1.caseField.hint_text);
19259
+ }
19260
+ }
19261
+ function WriteDynamicMultiSelectListFieldComponent_span_5_Template(rf, ctx) {
19262
+ if (rf & 1) {
19263
+ i0__namespace.ɵɵelementStart(0, "span", 7);
19264
+ i0__namespace.ɵɵtext(1);
19265
+ i0__namespace.ɵɵpipe(2, "ccdFirstError");
19266
+ i0__namespace.ɵɵelementEnd();
19267
+ }
19268
+ if (rf & 2) {
19269
+ var ctx_r2 = i0__namespace.ɵɵnextContext();
19270
+ i0__namespace.ɵɵadvance(1);
19271
+ i0__namespace.ɵɵtextInterpolate(i0__namespace.ɵɵpipeBind1(2, 1, ctx_r2.checkboxes.errors));
19272
+ }
19273
+ }
19274
+ function WriteDynamicMultiSelectListFieldComponent_ng_container_6_Template(rf, ctx) {
19275
+ if (rf & 1) {
19276
+ var _r6_1 = i0__namespace.ɵɵgetCurrentView();
19277
+ i0__namespace.ɵɵelementContainerStart(0);
19278
+ i0__namespace.ɵɵelementStart(1, "div", 8);
19279
+ i0__namespace.ɵɵelementStart(2, "input", 9);
19280
+ i0__namespace.ɵɵlistener("change", function WriteDynamicMultiSelectListFieldComponent_ng_container_6_Template_input_change_2_listener($event) { i0__namespace.ɵɵrestoreView(_r6_1); var ctx_r5 = i0__namespace.ɵɵnextContext(); return ctx_r5.onCheckChange($event); });
19281
+ i0__namespace.ɵɵelementEnd();
19282
+ i0__namespace.ɵɵelementStart(3, "label", 10);
19283
+ i0__namespace.ɵɵtext(4);
19284
+ i0__namespace.ɵɵelementEnd();
19285
+ i0__namespace.ɵɵelementEnd();
19286
+ i0__namespace.ɵɵelementContainerEnd();
19287
+ }
19288
+ if (rf & 2) {
19289
+ var checkbox_r4 = ctx.$implicit;
19290
+ var ctx_r3 = i0__namespace.ɵɵnextContext();
19291
+ i0__namespace.ɵɵadvance(2);
19292
+ i0__namespace.ɵɵpropertyInterpolate("id", ctx_r3.createElementId(checkbox_r4.code));
19293
+ i0__namespace.ɵɵpropertyInterpolate("name", ctx_r3.id());
19294
+ i0__namespace.ɵɵproperty("value", checkbox_r4.code)("checked", ctx_r3.isSelected(checkbox_r4.code));
19295
+ i0__namespace.ɵɵadvance(1);
19296
+ i0__namespace.ɵɵpropertyInterpolate("for", ctx_r3.createElementId(checkbox_r4.code));
19297
+ i0__namespace.ɵɵadvance(1);
19298
+ i0__namespace.ɵɵtextInterpolate(checkbox_r4.label);
19299
+ }
19300
+ }
19301
+ var _c0$A = function (a0) { return { "error": a0 }; };
19302
+ var WriteDynamicMultiSelectListFieldComponent = /** @class */ (function (_super) {
19303
+ __extends(WriteDynamicMultiSelectListFieldComponent, _super);
19304
+ function WriteDynamicMultiSelectListFieldComponent() {
19305
+ return _super !== null && _super.apply(this, arguments) || this;
19306
+ }
19307
+ WriteDynamicMultiSelectListFieldComponent.prototype.ngOnInit = function () {
19308
+ var _this = this;
19309
+ this.checkboxes = new i2.FormArray([]);
19310
+ this.setInitialCaseList();
19311
+ this.setInitialCaseFieldValue();
19312
+ // Initialise array with existing values
19313
+ if (this.caseField.value && Array.isArray(this.caseField.value)) {
19314
+ var values = this.caseField.value;
19315
+ values.forEach(function (value) {
19316
+ _this.checkboxes.push(new i2.FormControl(value));
19317
+ });
19318
+ }
19319
+ this.dynamicListFormControl = this.registerControl(new i2.FormControl(this.checkboxes.value));
19320
+ this.dynamicListFormControl.setValue(this.checkboxes.value);
19321
+ };
19322
+ WriteDynamicMultiSelectListFieldComponent.prototype.onCheckChange = function (event) {
19323
+ var _this = this;
19324
+ var target = event.target;
19325
+ if (!target || !target.value) {
19326
+ return;
19327
+ }
19328
+ var selectedListItem = this.getValueListItem(target.value);
19329
+ if (!this.isSelected(target.value)) {
19330
+ // Add a new control in the FormArray
19331
+ this.checkboxes.push(new i2.FormControl(selectedListItem));
19332
+ }
19333
+ else {
19334
+ // Remove the control from the FormArray
19335
+ this.checkboxes.controls.forEach(function (ctrl, i) {
19336
+ if (ctrl.value.code === target.value) {
19337
+ _this.checkboxes.removeAt(i);
19338
+ }
19339
+ });
19340
+ }
19341
+ this.dynamicListFormControl.setValue(this.checkboxes.value);
19342
+ };
19343
+ WriteDynamicMultiSelectListFieldComponent.prototype.isSelected = function (code) {
19344
+ if (this.checkboxes && this.checkboxes.controls) {
19345
+ return this.checkboxes.controls.find(function (control) { return control.value.code === code; });
19346
+ }
19347
+ };
19348
+ WriteDynamicMultiSelectListFieldComponent.prototype.getValueListItem = function (value) {
19349
+ return this.caseField.list_items.find(function (i) { return i.code === value; });
19350
+ };
19351
+ WriteDynamicMultiSelectListFieldComponent.prototype.setInitialCaseList = function () {
19352
+ var hasListItems = this.caseField.list_items && this.caseField.list_items.length > 0;
19353
+ var hasFormattedListItems = this.caseField.formatted_value && this.caseField.formatted_value.list_items.length > 0;
19354
+ if (!hasListItems && hasFormattedListItems) {
19355
+ this.caseField.list_items = this.caseField.formatted_value.list_items;
19356
+ }
19357
+ };
19358
+ WriteDynamicMultiSelectListFieldComponent.prototype.setInitialCaseFieldValue = function () {
19359
+ if (!this.caseField.value && this.caseField.formatted_value && this.caseField.formatted_value.value) {
19360
+ this.caseField.value = this.caseField.formatted_value.value;
19361
+ }
19362
+ var isNull = this.caseField.value === undefined || this.caseField.value === '';
19363
+ if (isNull || !Array.isArray(this.caseField.value)) {
19364
+ this.caseField.value = [];
19365
+ }
19366
+ };
19367
+ return WriteDynamicMultiSelectListFieldComponent;
19368
+ }(AbstractFieldWriteComponent));
19369
+ WriteDynamicMultiSelectListFieldComponent.ɵfac = function WriteDynamicMultiSelectListFieldComponent_Factory(t) { return ɵWriteDynamicMultiSelectListFieldComponent_BaseFactory(t || WriteDynamicMultiSelectListFieldComponent); };
19370
+ WriteDynamicMultiSelectListFieldComponent.ɵcmp = i0__namespace.ɵɵdefineComponent({ type: WriteDynamicMultiSelectListFieldComponent, selectors: [["ccd-write-dynamic-multi-select-list-field"]], features: [i0__namespace.ɵɵInheritDefinitionFeature], decls: 7, vars: 8, consts: [[1, "form-group", "bottom-30", 3, "ngClass", "id"], ["class", "form-label", 4, "ngIf"], ["class", "form-hint", 4, "ngIf"], ["class", "error-message", 4, "ngIf"], [4, "ngFor", "ngForOf"], [1, "form-label"], [1, "form-hint"], [1, "error-message"], [1, "multiple-choice"], ["type", "checkbox", 1, "form-control", 3, "id", "name", "value", "checked", "change"], [1, "form-label", 3, "for"]], template: function WriteDynamicMultiSelectListFieldComponent_Template(rf, ctx) {
19371
+ if (rf & 1) {
19372
+ i0__namespace.ɵɵelementStart(0, "div", 0);
19373
+ i0__namespace.ɵɵelementStart(1, "fieldset");
19374
+ i0__namespace.ɵɵelementStart(2, "legend");
19375
+ i0__namespace.ɵɵtemplate(3, WriteDynamicMultiSelectListFieldComponent_span_3_Template, 3, 3, "span", 1);
19376
+ i0__namespace.ɵɵtemplate(4, WriteDynamicMultiSelectListFieldComponent_span_4_Template, 2, 1, "span", 2);
19377
+ i0__namespace.ɵɵtemplate(5, WriteDynamicMultiSelectListFieldComponent_span_5_Template, 3, 3, "span", 3);
19378
+ i0__namespace.ɵɵelementEnd();
19379
+ i0__namespace.ɵɵtemplate(6, WriteDynamicMultiSelectListFieldComponent_ng_container_6_Template, 5, 6, "ng-container", 4);
19380
+ i0__namespace.ɵɵelementEnd();
19381
+ i0__namespace.ɵɵelementEnd();
19382
+ }
19383
+ if (rf & 2) {
19384
+ i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(6, _c0$A, !ctx.checkboxes.valid && ctx.checkboxes.touched))("id", ctx.id());
19385
+ i0__namespace.ɵɵadvance(3);
19386
+ i0__namespace.ɵɵproperty("ngIf", ctx.caseField.label);
19387
+ i0__namespace.ɵɵadvance(1);
19388
+ i0__namespace.ɵɵproperty("ngIf", ctx.caseField.hint_text);
19389
+ i0__namespace.ɵɵadvance(1);
19390
+ i0__namespace.ɵɵproperty("ngIf", ctx.checkboxes.errors && ctx.checkboxes.touched);
19391
+ i0__namespace.ɵɵadvance(1);
19392
+ i0__namespace.ɵɵproperty("ngForOf", ctx.caseField.list_items);
19393
+ }
19394
+ }, directives: [i1__namespace.NgClass, i1__namespace.NgIf, i1__namespace.NgForOf], pipes: [FieldLabelPipe, FirstErrorPipe], encapsulation: 2 });
19395
+ var ɵWriteDynamicMultiSelectListFieldComponent_BaseFactory = /*@__PURE__*/ i0__namespace.ɵɵgetInheritedFactory(WriteDynamicMultiSelectListFieldComponent);
19396
+ (function () {
19397
+ (typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassMetadata(WriteDynamicMultiSelectListFieldComponent, [{
19398
+ type: i0.Component,
19399
+ args: [{
19400
+ selector: 'ccd-write-dynamic-multi-select-list-field',
19401
+ templateUrl: './write-dynamic-multi-select-list-field.html'
19402
+ }]
19403
+ }], null, null);
19404
+ })();
19405
+
19230
19406
  var ReadPhoneUKFieldComponent = /** @class */ (function (_super) {
19231
19407
  __extends(ReadPhoneUKFieldComponent, _super);
19232
19408
  function ReadPhoneUKFieldComponent() {
@@ -19859,7 +20035,7 @@
19859
20035
  function PaletteService() {
19860
20036
  var _b;
19861
20037
  this.componentLauncherRegistry = (_b = {},
19862
- _b[DisplayContextCustomParameter.CaseFileView] = [CaseFileViewFieldComponent, CaseFileViewFieldReadComponent],
20038
+ _b[DisplayContextCustomParameter.CaseFileView] = [CaseFileViewFieldComponent, CaseFileViewFieldComponent],
19863
20039
  _b[DisplayContextCustomParameter.LinkedCases] = [WriteLinkedCasesFieldComponent, ReadLinkedCasesFieldComponent],
19864
20040
  _b);
19865
20041
  }
@@ -19889,6 +20065,8 @@
19889
20065
  return write ? WriteFixedListFieldComponent : ReadFixedListFieldComponent;
19890
20066
  case 'DynamicRadioList':
19891
20067
  return write ? WriteDynamicRadioListFieldComponent : ReadDynamicRadioListFieldComponent;
20068
+ case 'DynamicMultiSelectList':
20069
+ return write ? WriteDynamicMultiSelectListFieldComponent : ReadDynamicMultiSelectListFieldComponent;
19892
20070
  case 'FixedRadioList':
19893
20071
  return write ? WriteFixedRadioListFieldComponent : ReadFixedRadioListFieldComponent;
19894
20072
  case 'Complex':
@@ -19958,7 +20136,7 @@
19958
20136
  })();
19959
20137
 
19960
20138
  var _c0$v = ["fieldContainer"];
19961
- var FIX_CASEFIELD_FOR$1 = ['FixedList', 'DynamicList'];
20139
+ var FIX_CASEFIELD_FOR$1 = ['FixedList', 'DynamicList', 'DynamicMultiSelectList'];
19962
20140
  var FieldReadComponent = /** @class */ (function (_super) {
19963
20141
  __extends(FieldReadComponent, _super);
19964
20142
  function FieldReadComponent(resolver, paletteService) {
@@ -20048,7 +20226,7 @@
20048
20226
  })();
20049
20227
 
20050
20228
  var _c0$u = ["fieldContainer"];
20051
- var FIX_CASEFIELD_FOR = ['FixedList', 'DynamicList'];
20229
+ var FIX_CASEFIELD_FOR = ['FixedList', 'DynamicList', 'DynamicMultiSelectList'];
20052
20230
  var FieldWriteComponent = /** @class */ (function (_super) {
20053
20231
  __extends(FieldWriteComponent, _super);
20054
20232
  function FieldWriteComponent(resolver, paletteService) {
@@ -25008,23 +25186,26 @@
25008
25186
  || !ReadFieldsFilterPipe.isEmpty(value[field.id]);
25009
25187
  };
25010
25188
  ReadFieldsFilterPipe.getValue = function (field, values, index) {
25011
- var value;
25012
- if (index >= 0) {
25013
- value = values[index].value[field.id];
25014
- }
25015
- else {
25016
- value = values[field.id];
25189
+ if (ReadFieldsFilterPipe.isEmpty(field.value)) {
25190
+ var value = void 0;
25191
+ if (index >= 0) {
25192
+ value = values[index].value[field.id];
25193
+ }
25194
+ else {
25195
+ value = values[field.id];
25196
+ }
25197
+ return value;
25017
25198
  }
25018
- return ReadFieldsFilterPipe.isEmpty(field.value) ? value : field.value;
25199
+ return field.value;
25019
25200
  };
25020
- ReadFieldsFilterPipe.evaluateConditionalShow = function (field, formValue, path, formGroupAvaliable, fieldId) {
25201
+ ReadFieldsFilterPipe.evaluateConditionalShow = function (field, formValue, path, formGroupAvailable, fieldId) {
25021
25202
  if (field.display_context === 'HIDDEN') {
25022
25203
  field.hidden = true;
25023
25204
  }
25024
25205
  else if (field.show_condition) {
25025
25206
  var cond = void 0;
25026
- if (fieldId && field.show_condition.indexOf(fieldId) > -1 && !formGroupAvaliable && !!Object.keys(formValue).length) {
25027
- var search = fieldId + '.';
25207
+ if (fieldId && field.show_condition.indexOf(fieldId + ".") > -1 && !formGroupAvailable && !!Object.keys(formValue).length) {
25208
+ var search = fieldId + ".";
25028
25209
  var searchRegExp = new RegExp(search, 'g');
25029
25210
  var replaceWith = '';
25030
25211
  cond = ShowCondition.getInstance(field.show_condition.replace(searchRegExp, replaceWith));
@@ -25433,6 +25614,8 @@
25433
25614
  WriteDocumentFieldComponent,
25434
25615
  WriteDynamicListFieldComponent,
25435
25616
  WriteDynamicRadioListFieldComponent,
25617
+ WriteDynamicMultiSelectListFieldComponent,
25618
+ ReadDynamicMultiSelectListFieldComponent,
25436
25619
  WriteTextFieldComponent,
25437
25620
  WriteDateContainerFieldComponent,
25438
25621
  WriteTextAreaFieldComponent,
@@ -25456,12 +25639,18 @@
25456
25639
  WriteCollectionFieldComponent,
25457
25640
  // ComponentLauncher web components
25458
25641
  CaseFileViewFieldComponent,
25459
- CaseFileViewFieldReadComponent,
25460
25642
  CaseFileViewFolderComponent,
25461
25643
  CaseFileViewFolderSortComponent,
25462
25644
  CaseFileViewOverlayMenuComponent,
25463
25645
  CaseFileViewFolderDocumentActionsComponent,
25464
25646
  CaseFileViewFolderSelectorComponent,
25647
+ // component for dynamic list
25648
+ WriteDynamicMultiSelectListFieldComponent,
25649
+ WriteDynamicRadioListFieldComponent,
25650
+ WriteDynamicListFieldComponent,
25651
+ ReadDynamicMultiSelectListFieldComponent,
25652
+ ReadDynamicListFieldComponent,
25653
+ ReadDynamicRadioListFieldComponent,
25465
25654
  LinkedCasesToTableComponent,
25466
25655
  LinkedCasesFromTableComponent,
25467
25656
  BeforeYouStartComponent,
@@ -25592,6 +25781,8 @@
25592
25781
  WriteDocumentFieldComponent,
25593
25782
  WriteDynamicListFieldComponent,
25594
25783
  WriteDynamicRadioListFieldComponent,
25784
+ WriteDynamicMultiSelectListFieldComponent,
25785
+ ReadDynamicMultiSelectListFieldComponent,
25595
25786
  WriteTextFieldComponent,
25596
25787
  WriteDateContainerFieldComponent,
25597
25788
  WriteTextAreaFieldComponent,
@@ -25615,12 +25806,18 @@
25615
25806
  WriteCollectionFieldComponent,
25616
25807
  // ComponentLauncher web components
25617
25808
  CaseFileViewFieldComponent,
25618
- CaseFileViewFieldReadComponent,
25619
25809
  CaseFileViewFolderComponent,
25620
25810
  CaseFileViewFolderSortComponent,
25621
25811
  CaseFileViewOverlayMenuComponent,
25622
25812
  CaseFileViewFolderDocumentActionsComponent,
25623
25813
  CaseFileViewFolderSelectorComponent,
25814
+ // component for dynamic list
25815
+ WriteDynamicMultiSelectListFieldComponent,
25816
+ WriteDynamicRadioListFieldComponent,
25817
+ WriteDynamicListFieldComponent,
25818
+ ReadDynamicMultiSelectListFieldComponent,
25819
+ ReadDynamicListFieldComponent,
25820
+ ReadDynamicRadioListFieldComponent,
25624
25821
  LinkedCasesToTableComponent,
25625
25822
  LinkedCasesFromTableComponent,
25626
25823
  BeforeYouStartComponent,
@@ -25710,6 +25907,8 @@
25710
25907
  WriteDocumentFieldComponent,
25711
25908
  WriteDynamicListFieldComponent,
25712
25909
  WriteDynamicRadioListFieldComponent,
25910
+ WriteDynamicMultiSelectListFieldComponent,
25911
+ ReadDynamicMultiSelectListFieldComponent,
25713
25912
  WriteTextFieldComponent,
25714
25913
  WriteDateContainerFieldComponent,
25715
25914
  WriteTextAreaFieldComponent,
@@ -25733,12 +25932,18 @@
25733
25932
  WriteCollectionFieldComponent,
25734
25933
  // ComponentLauncher web components
25735
25934
  CaseFileViewFieldComponent,
25736
- CaseFileViewFieldReadComponent,
25737
25935
  CaseFileViewFolderComponent,
25738
25936
  CaseFileViewFolderSortComponent,
25739
25937
  CaseFileViewOverlayMenuComponent,
25740
25938
  CaseFileViewFolderDocumentActionsComponent,
25741
25939
  CaseFileViewFolderSelectorComponent,
25940
+ // component for dynamic list
25941
+ WriteDynamicMultiSelectListFieldComponent,
25942
+ WriteDynamicRadioListFieldComponent,
25943
+ WriteDynamicListFieldComponent,
25944
+ ReadDynamicMultiSelectListFieldComponent,
25945
+ ReadDynamicListFieldComponent,
25946
+ ReadDynamicRadioListFieldComponent,
25742
25947
  LinkedCasesToTableComponent,
25743
25948
  LinkedCasesFromTableComponent,
25744
25949
  BeforeYouStartComponent,
@@ -25865,7 +26070,6 @@
25865
26070
  i0__namespace.ɵɵsetComponentScope(
25866
26071
  // ComponentLauncher web components
25867
26072
  CaseFileViewFieldComponent, [i1__namespace.NgIf, CaseFileViewFolderComponent, i11__namespace.ɵcs], []);
25868
- i0__namespace.ɵɵsetComponentScope(CaseFileViewFieldReadComponent, [i1__namespace.NgIf, CaseFileViewFolderComponent, i11__namespace.ɵcs], []);
25869
26073
  i0__namespace.ɵɵsetComponentScope(LinkedCasesToTableComponent, [i1__namespace.NgIf, i1__namespace.NgForOf], [CaseReferencePipe, LinkCasesReasonValuePipe]);
25870
26074
  i0__namespace.ɵɵsetComponentScope(LinkedCasesFromTableComponent, [i1__namespace.NgIf, i1__namespace.NgForOf], [CaseReferencePipe, LinkCasesFromReasonValuePipe]);
25871
26075
  i0__namespace.ɵɵsetComponentScope(LinkCasesComponent, [i1__namespace.NgIf, i2__namespace.NgControlStatusGroup, i2__namespace.FormGroupDirective, i1__namespace.NgClass, i2__namespace.DefaultValueAccessor, i2__namespace.NgControlStatus, i2__namespace.FormControlName, i2__namespace.FormArrayName, i1__namespace.NgForOf, i2__namespace.FormGroupName, i2__namespace.CheckboxControlValueAccessor], [CaseReferencePipe, LinkCasesReasonValuePipe]);
@@ -35615,7 +35819,6 @@
35615
35819
  exports.CaseField = CaseField;
35616
35820
  exports.CaseFieldService = CaseFieldService;
35617
35821
  exports.CaseFileViewFieldComponent = CaseFileViewFieldComponent;
35618
- exports.CaseFileViewFieldReadComponent = CaseFileViewFieldReadComponent;
35619
35822
  exports.CaseFileViewFolderComponent = CaseFileViewFolderComponent;
35620
35823
  exports.CaseFileViewFolderDocumentActionsComponent = CaseFileViewFolderDocumentActionsComponent;
35621
35824
  exports.CaseFileViewFolderSelectorComponent = CaseFileViewFolderSelectorComponent;
@@ -35805,6 +36008,7 @@
35805
36008
  exports.ReadDateFieldComponent = ReadDateFieldComponent;
35806
36009
  exports.ReadDocumentFieldComponent = ReadDocumentFieldComponent;
35807
36010
  exports.ReadDynamicListFieldComponent = ReadDynamicListFieldComponent;
36011
+ exports.ReadDynamicMultiSelectListFieldComponent = ReadDynamicMultiSelectListFieldComponent;
35808
36012
  exports.ReadDynamicRadioListFieldComponent = ReadDynamicRadioListFieldComponent;
35809
36013
  exports.ReadEmailFieldComponent = ReadEmailFieldComponent;
35810
36014
  exports.ReadFieldsFilterPipe = ReadFieldsFilterPipe;
@@ -35881,6 +36085,7 @@
35881
36085
  exports.WriteDateFieldComponent = WriteDateFieldComponent;
35882
36086
  exports.WriteDocumentFieldComponent = WriteDocumentFieldComponent;
35883
36087
  exports.WriteDynamicListFieldComponent = WriteDynamicListFieldComponent;
36088
+ exports.WriteDynamicMultiSelectListFieldComponent = WriteDynamicMultiSelectListFieldComponent;
35884
36089
  exports.WriteDynamicRadioListFieldComponent = WriteDynamicRadioListFieldComponent;
35885
36090
  exports.WriteEmailFieldComponent = WriteEmailFieldComponent;
35886
36091
  exports.WriteFixedListFieldComponent = WriteFixedListFieldComponent;