@hmcts/ccd-case-ui-toolkit 7.0.9 → 7.0.10-welsh-translation-fixes

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 (26) hide show
  1. package/esm2020/lib/components/banners/notification-banner/domain/notification-banner-config.model.mjs +1 -1
  2. package/esm2020/lib/components/banners/notification-banner/notification-banner.component.mjs +41 -30
  3. package/esm2020/lib/shared/components/case-editor/case-edit-submit/case-edit-submit.component.mjs +21 -19
  4. package/esm2020/lib/shared/components/case-editor/services/event-completion-state-machine.service.mjs +1 -1
  5. package/esm2020/lib/shared/components/case-editor/services/work-allocation.service.mjs +1 -1
  6. package/esm2020/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.mjs +19 -17
  7. package/esm2020/lib/shared/components/palette/yes-no/write-yes-no-field.component.mjs +3 -3
  8. package/esm2020/lib/shared/components/search-filters/search-filters.component.mjs +24 -4
  9. package/esm2020/lib/shared/domain/work-allocation/task-response.model.mjs +1 -1
  10. package/esm2020/lib/shared/services/alert/alert.service.mjs +1 -1
  11. package/fesm2015/hmcts-ccd-case-ui-toolkit.mjs +121 -84
  12. package/fesm2015/hmcts-ccd-case-ui-toolkit.mjs.map +1 -1
  13. package/fesm2020/hmcts-ccd-case-ui-toolkit.mjs +102 -67
  14. package/fesm2020/hmcts-ccd-case-ui-toolkit.mjs.map +1 -1
  15. package/lib/components/banners/notification-banner/domain/notification-banner-config.model.d.ts +6 -5
  16. package/lib/components/banners/notification-banner/domain/notification-banner-config.model.d.ts.map +1 -1
  17. package/lib/shared/components/case-editor/case-edit-submit/case-edit-submit.component.d.ts.map +1 -1
  18. package/lib/shared/components/case-editor/services/work-allocation.service.d.ts +2 -2
  19. package/lib/shared/components/case-editor/services/work-allocation.service.d.ts.map +1 -1
  20. package/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.d.ts +4 -4
  21. package/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.d.ts.map +1 -1
  22. package/lib/shared/components/search-filters/search-filters.component.d.ts.map +1 -1
  23. package/lib/shared/domain/work-allocation/task-response.model.d.ts +1 -1
  24. package/lib/shared/domain/work-allocation/task-response.model.d.ts.map +1 -1
  25. package/lib/shared/services/alert/alert.service.d.ts.map +1 -1
  26. package/package.json +1 -1
@@ -8,7 +8,7 @@ import * as i1$1 from '@angular/router';
8
8
  import { RouterModule, NavigationStart, NavigationEnd } from '@angular/router';
9
9
  import * as i3 from '@angular/forms';
10
10
  import { NG_VALUE_ACCESSOR, NG_VALIDATORS, FormArray, FormGroup, FormControl, Validators, ReactiveFormsModule, FormsModule } from '@angular/forms';
11
- import { throwError, Subject, EMPTY, Observable, of, BehaviorSubject, timer, fromEvent, forkJoin, Subscription, combineLatest } from 'rxjs';
11
+ import { throwError, Subject, EMPTY, Observable, of, BehaviorSubject, timer, fromEvent, forkJoin, Subscription, combineLatest, firstValueFrom } from 'rxjs';
12
12
  import * as i1$2 from '@angular/common/http';
13
13
  import { HttpErrorResponse, HttpHeaders, HttpParams } from '@angular/common/http';
14
14
  import { catchError, map, publish, refCount, switchMap, debounceTime, delay, distinctUntilChanged, finalize, timeout, mergeMap, retryWhen, tap, delayWhen, publishReplay, take, first, takeUntil, filter } from 'rxjs/operators';
@@ -55,6 +55,7 @@ import * as i2$2 from 'ngx-pagination';
55
55
  import { NgxPaginationModule, PaginatePipe } from 'ngx-pagination';
56
56
  import * as i10 from '@angular/material/legacy-tabs';
57
57
  import { MatLegacyTabsModule } from '@angular/material/legacy-tabs';
58
+ import { decompressFromUTF16, compressToUTF16 } from 'lz-string';
58
59
 
59
60
  function FooterComponent_div_2_Template(rf, ctx) { if (rf & 1) {
60
61
  i0.ɵɵelementStart(0, "div", 3)(1, "div", 4);
@@ -863,7 +864,7 @@ var NotificationBannerType;
863
864
  NotificationBannerType["INFORMATION"] = "information";
864
865
  })(NotificationBannerType || (NotificationBannerType = {}));
865
866
 
866
- function NotificationBannerComponent_div_0_ng_container_7_Template(rf, ctx) { if (rf & 1) {
867
+ function NotificationBannerComponent_div_0_ng_container_8_Template(rf, ctx) { if (rf & 1) {
867
868
  i0.ɵɵelementContainerStart(0);
868
869
  i0.ɵɵnamespaceSVG();
869
870
  i0.ɵɵelementStart(1, "svg", 10);
@@ -871,7 +872,7 @@ function NotificationBannerComponent_div_0_ng_container_7_Template(rf, ctx) { if
871
872
  i0.ɵɵelementEnd();
872
873
  i0.ɵɵelementContainerEnd();
873
874
  } }
874
- function NotificationBannerComponent_div_0_ng_container_8_Template(rf, ctx) { if (rf & 1) {
875
+ function NotificationBannerComponent_div_0_ng_container_9_Template(rf, ctx) { if (rf & 1) {
875
876
  i0.ɵɵelementContainerStart(0);
876
877
  i0.ɵɵnamespaceSVG();
877
878
  i0.ɵɵelementStart(1, "svg", 10);
@@ -879,7 +880,7 @@ function NotificationBannerComponent_div_0_ng_container_8_Template(rf, ctx) { if
879
880
  i0.ɵɵelementEnd();
880
881
  i0.ɵɵelementContainerEnd();
881
882
  } }
882
- function NotificationBannerComponent_div_0_ng_container_9_Template(rf, ctx) { if (rf & 1) {
883
+ function NotificationBannerComponent_div_0_ng_container_10_Template(rf, ctx) { if (rf & 1) {
883
884
  i0.ɵɵelementContainerStart(0);
884
885
  i0.ɵɵnamespaceSVG();
885
886
  i0.ɵɵelementStart(1, "svg", 10);
@@ -887,7 +888,7 @@ function NotificationBannerComponent_div_0_ng_container_9_Template(rf, ctx) { if
887
888
  i0.ɵɵelementEnd();
888
889
  i0.ɵɵelementContainerEnd();
889
890
  } }
890
- function NotificationBannerComponent_div_0_ng_container_10_Template(rf, ctx) { if (rf & 1) {
891
+ function NotificationBannerComponent_div_0_ng_container_11_Template(rf, ctx) { if (rf & 1) {
891
892
  i0.ɵɵelementContainerStart(0);
892
893
  i0.ɵɵnamespaceSVG();
893
894
  i0.ɵɵelementStart(1, "svg", 10);
@@ -895,48 +896,59 @@ function NotificationBannerComponent_div_0_ng_container_10_Template(rf, ctx) { i
895
896
  i0.ɵɵelementEnd();
896
897
  i0.ɵɵelementContainerEnd();
897
898
  } }
898
- function NotificationBannerComponent_div_0_a_12_Template(rf, ctx) { if (rf & 1) {
899
+ function NotificationBannerComponent_div_0_a_14_Template(rf, ctx) { if (rf & 1) {
899
900
  i0.ɵɵelementStart(0, "a", 14);
900
- i0.ɵɵtext(1);
901
+ i0.ɵɵpipe(1, "async");
902
+ i0.ɵɵtext(2);
903
+ i0.ɵɵpipe(3, "async");
901
904
  i0.ɵɵelementEnd();
902
905
  } if (rf & 2) {
903
906
  const ctx_r5 = i0.ɵɵnextContext(2);
904
- i0.ɵɵpropertyInterpolate("href", ctx_r5.notificationBannerConfig.linkUrl, i0.ɵɵsanitizeUrl);
905
- i0.ɵɵadvance(1);
906
- i0.ɵɵtextInterpolate(ctx_r5.notificationBannerConfig.linkText);
907
+ i0.ɵɵpropertyInterpolate("href", i0.ɵɵpipeBind1(1, 2, ctx_r5.notificationBannerConfig.linkUrl), i0.ɵɵsanitizeUrl);
908
+ i0.ɵɵadvance(2);
909
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 4, ctx_r5.notificationBannerConfig.linkText));
907
910
  } }
908
- function NotificationBannerComponent_div_0_a_13_Template(rf, ctx) { if (rf & 1) {
909
- const _r8 = i0.ɵɵgetCurrentView();
910
- i0.ɵɵelementStart(0, "a", 15);
911
- i0.ɵɵlistener("click", function NotificationBannerComponent_div_0_a_13_Template_a_click_0_listener() { i0.ɵɵrestoreView(_r8); const ctx_r7 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r7.onLinkClick(ctx_r7.notificationBannerConfig.triggerOutputEventText)); });
912
- i0.ɵɵtext(1);
911
+ function NotificationBannerComponent_div_0_ng_container_15_Template(rf, ctx) { if (rf & 1) {
912
+ const _r9 = i0.ɵɵgetCurrentView();
913
+ i0.ɵɵelementContainerStart(0);
914
+ i0.ɵɵelement(1, "input", 15, 16);
915
+ i0.ɵɵpipe(3, "async");
916
+ i0.ɵɵelementStart(4, "a", 17);
917
+ i0.ɵɵlistener("click", function NotificationBannerComponent_div_0_ng_container_15_Template_a_click_4_listener() { i0.ɵɵrestoreView(_r9); const _r7 = i0.ɵɵreference(2); const ctx_r8 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r8.onLinkClick(_r7.value)); });
918
+ i0.ɵɵtext(5);
919
+ i0.ɵɵpipe(6, "async");
913
920
  i0.ɵɵelementEnd();
921
+ i0.ɵɵelementContainerEnd();
914
922
  } if (rf & 2) {
915
923
  const ctx_r6 = i0.ɵɵnextContext(2);
916
924
  i0.ɵɵadvance(1);
917
- i0.ɵɵtextInterpolate(ctx_r6.notificationBannerConfig.linkText);
925
+ i0.ɵɵpropertyInterpolate("value", i0.ɵɵpipeBind1(3, 2, ctx_r6.notificationBannerConfig.triggerOutputEventText));
926
+ i0.ɵɵadvance(4);
927
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(6, 4, ctx_r6.notificationBannerConfig.linkText));
918
928
  } }
919
929
  function NotificationBannerComponent_div_0_Template(rf, ctx) { if (rf & 1) {
920
930
  i0.ɵɵelementStart(0, "div", 1)(1, "div", 2)(2, "h2", 3);
921
931
  i0.ɵɵtext(3);
932
+ i0.ɵɵpipe(4, "async");
922
933
  i0.ɵɵelementEnd()();
923
- i0.ɵɵelementStart(4, "div", 4)(5, "p", 5);
924
- i0.ɵɵelementContainerStart(6, 6);
925
- i0.ɵɵtemplate(7, NotificationBannerComponent_div_0_ng_container_7_Template, 3, 0, "ng-container", 7);
934
+ i0.ɵɵelementStart(5, "div", 4)(6, "p", 5);
935
+ i0.ɵɵelementContainerStart(7, 6);
926
936
  i0.ɵɵtemplate(8, NotificationBannerComponent_div_0_ng_container_8_Template, 3, 0, "ng-container", 7);
927
937
  i0.ɵɵtemplate(9, NotificationBannerComponent_div_0_ng_container_9_Template, 3, 0, "ng-container", 7);
928
938
  i0.ɵɵtemplate(10, NotificationBannerComponent_div_0_ng_container_10_Template, 3, 0, "ng-container", 7);
939
+ i0.ɵɵtemplate(11, NotificationBannerComponent_div_0_ng_container_11_Template, 3, 0, "ng-container", 7);
929
940
  i0.ɵɵelementContainerEnd();
930
- i0.ɵɵtext(11);
931
- i0.ɵɵtemplate(12, NotificationBannerComponent_div_0_a_12_Template, 2, 2, "a", 8);
932
- i0.ɵɵtemplate(13, NotificationBannerComponent_div_0_a_13_Template, 2, 1, "a", 9);
941
+ i0.ɵɵtext(12);
942
+ i0.ɵɵpipe(13, "async");
943
+ i0.ɵɵtemplate(14, NotificationBannerComponent_div_0_a_14_Template, 4, 6, "a", 8);
944
+ i0.ɵɵtemplate(15, NotificationBannerComponent_div_0_ng_container_15_Template, 7, 6, "ng-container", 9);
933
945
  i0.ɵɵelementEnd()()();
934
946
  } if (rf & 2) {
935
947
  const ctx_r0 = i0.ɵɵnextContext();
936
948
  i0.ɵɵproperty("ngClass", ctx_r0.notificationBannerConfig.headerClass);
937
949
  i0.ɵɵadvance(3);
938
- i0.ɵɵtextInterpolate1(" ", ctx_r0.notificationBannerConfig.headingText, " ");
939
- i0.ɵɵadvance(3);
950
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(4, 10, ctx_r0.notificationBannerConfig.headingText), " ");
951
+ i0.ɵɵadvance(4);
940
952
  i0.ɵɵproperty("ngSwitch", ctx_r0.notificationBannerConfig.bannerType);
941
953
  i0.ɵɵadvance(1);
942
954
  i0.ɵɵproperty("ngSwitchCase", ctx_r0.notificationBannerType.WARNING);
@@ -947,8 +959,8 @@ function NotificationBannerComponent_div_0_Template(rf, ctx) { if (rf & 1) {
947
959
  i0.ɵɵadvance(1);
948
960
  i0.ɵɵproperty("ngSwitchCase", ctx_r0.notificationBannerType.INFORMATION);
949
961
  i0.ɵɵadvance(1);
950
- i0.ɵɵtextInterpolate1(" ", ctx_r0.notificationBannerConfig.description, " ");
951
- i0.ɵɵadvance(1);
962
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(13, 12, ctx_r0.notificationBannerConfig.description), " ");
963
+ i0.ɵɵadvance(2);
952
964
  i0.ɵɵproperty("ngIf", ctx_r0.notificationBannerConfig.showLink && !ctx_r0.notificationBannerConfig.triggerOutputEvent);
953
965
  i0.ɵɵadvance(1);
954
966
  i0.ɵɵproperty("ngIf", ctx_r0.notificationBannerConfig.showLink && ctx_r0.notificationBannerConfig.triggerOutputEvent);
@@ -965,14 +977,14 @@ class NotificationBannerComponent {
965
977
  }
966
978
  }
967
979
  NotificationBannerComponent.ɵfac = function NotificationBannerComponent_Factory(t) { return new (t || NotificationBannerComponent)(); };
968
- NotificationBannerComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: NotificationBannerComponent, selectors: [["ccd-notification-banner"]], inputs: { notificationBannerConfig: "notificationBannerConfig" }, outputs: { linkClicked: "linkClicked" }, decls: 1, vars: 1, consts: [["class", "govuk-notification-banner", "role", "region", "aria-labelledby", "govuk-notification-banner-title", "data-module", "govuk-notification-banner", 3, "ngClass", 4, "ngIf"], ["role", "region", "aria-labelledby", "govuk-notification-banner-title", "data-module", "govuk-notification-banner", 1, "govuk-notification-banner", 3, "ngClass"], [1, "govuk-notification-banner__header"], ["id", "govuk-notification-banner-title", 1, "govuk-notification-banner__title"], [1, "govuk-notification-banner__content"], [1, "govuk-notification-banner__heading"], [3, "ngSwitch"], [4, "ngSwitchCase"], ["class", "govuk-notification-banner__link", 3, "href", 4, "ngIf"], ["class", "govuk-notification-banner__link", "href", "javascript:void(0)", 3, "click", 4, "ngIf"], ["fill", "currentColor", "role", "presentation", "focusable", "false", "xmlns", "http://www.w3.org/2000/svg", "viewBox", "0 0 25 25", "height", "36", "width", "36", 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"], [1, "govuk-notification-banner__link", 3, "href"], ["href", "javascript:void(0)", 1, "govuk-notification-banner__link", 3, "click"]], template: function NotificationBannerComponent_Template(rf, ctx) { if (rf & 1) {
969
- i0.ɵɵtemplate(0, NotificationBannerComponent_div_0_Template, 14, 10, "div", 0);
980
+ NotificationBannerComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: NotificationBannerComponent, selectors: [["ccd-notification-banner"]], inputs: { notificationBannerConfig: "notificationBannerConfig" }, outputs: { linkClicked: "linkClicked" }, decls: 1, vars: 1, consts: [["class", "govuk-notification-banner", "role", "region", "aria-labelledby", "govuk-notification-banner-title", "data-module", "govuk-notification-banner", 3, "ngClass", 4, "ngIf"], ["role", "region", "aria-labelledby", "govuk-notification-banner-title", "data-module", "govuk-notification-banner", 1, "govuk-notification-banner", 3, "ngClass"], [1, "govuk-notification-banner__header"], ["id", "govuk-notification-banner-title", 1, "govuk-notification-banner__title"], [1, "govuk-notification-banner__content"], [1, "govuk-notification-banner__heading"], [3, "ngSwitch"], [4, "ngSwitchCase"], ["class", "govuk-notification-banner__link", 3, "href", 4, "ngIf"], [4, "ngIf"], ["fill", "currentColor", "role", "presentation", "focusable", "false", "xmlns", "http://www.w3.org/2000/svg", "viewBox", "0 0 25 25", "height", "36", "width", "36", 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"], [1, "govuk-notification-banner__link", 3, "href"], ["type", "text", 2, "display", "none", 3, "value"], ["triggerOutputEventText", ""], ["href", "javascript:void(0)", 1, "govuk-notification-banner__link", 3, "click"]], template: function NotificationBannerComponent_Template(rf, ctx) { if (rf & 1) {
981
+ i0.ɵɵtemplate(0, NotificationBannerComponent_div_0_Template, 16, 14, "div", 0);
970
982
  } if (rf & 2) {
971
983
  i0.ɵɵproperty("ngIf", ctx.notificationBannerConfig);
972
- } }, dependencies: [i4.NgClass, i4.NgIf, i4.NgSwitch, i4.NgSwitchCase], styles: [".govuk-notification-banner[_ngcontent-%COMP%] .govuk-notification-banner__content[_ngcontent-%COMP%] .govuk-notification-banner__heading[_ngcontent-%COMP%]{margin-left:0;max-width:900px}.govuk-notification-banner[_ngcontent-%COMP%] .govuk-notification-banner__content[_ngcontent-%COMP%] .govuk-notification-banner__heading[_ngcontent-%COMP%] .govuk-notification-banner__link[_ngcontent-%COMP%]{margin-left:10px}.notification-banner-information[_ngcontent-%COMP%], .notification-banner-error[_ngcontent-%COMP%]{background-color:#d4351c;border:5px solid #d4351c}.notification-banner-warning[_ngcontent-%COMP%]{background-color:#912b88;border:5px solid #912b88}.notification-banner-success[_ngcontent-%COMP%]{background-color:#006435;border:5px solid #006435}"] });
984
+ } }, dependencies: [i4.NgClass, i4.NgIf, i4.NgSwitch, i4.NgSwitchCase, i4.AsyncPipe], styles: [".govuk-notification-banner[_ngcontent-%COMP%] .govuk-notification-banner__content[_ngcontent-%COMP%] .govuk-notification-banner__heading[_ngcontent-%COMP%]{margin-left:0;max-width:900px}.govuk-notification-banner[_ngcontent-%COMP%] .govuk-notification-banner__content[_ngcontent-%COMP%] .govuk-notification-banner__heading[_ngcontent-%COMP%] .govuk-notification-banner__link[_ngcontent-%COMP%]{margin-left:10px}.notification-banner-information[_ngcontent-%COMP%], .notification-banner-error[_ngcontent-%COMP%]{background-color:#d4351c;border:5px solid #d4351c}.notification-banner-warning[_ngcontent-%COMP%]{background-color:#912b88;border:5px solid #912b88}.notification-banner-success[_ngcontent-%COMP%]{background-color:#006435;border:5px solid #006435}"] });
973
985
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(NotificationBannerComponent, [{
974
986
  type: Component,
975
- args: [{ selector: 'ccd-notification-banner', template: "<div *ngIf=\"notificationBannerConfig\"\n class=\"govuk-notification-banner\"\n [ngClass]=\"notificationBannerConfig.headerClass\"\n role=\"region\"\n aria-labelledby=\"govuk-notification-banner-title\"\n data-module=\"govuk-notification-banner\">\n\n <div class=\"govuk-notification-banner__header\">\n <h2 class=\"govuk-notification-banner__title\" id=\"govuk-notification-banner-title\">\n {{notificationBannerConfig.headingText}}\n </h2>\n </div>\n <div class=\"govuk-notification-banner__content\">\n <p class=\"govuk-notification-banner__heading\">\n <ng-container [ngSwitch]=\"notificationBannerConfig.bannerType\">\n <ng-container *ngSwitchCase=\"notificationBannerType.WARNING\">\n <svg class=\"hmcts-banner__icon\" fill=\"currentColor\" role=\"presentation\" focusable=\"false\"\n xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 25 25\" height=\"36\" width=\"36\">\n <path 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\"></path>\n </svg>\n </ng-container>\n <ng-container *ngSwitchCase=\"notificationBannerType.ERROR\">\n <svg class=\"hmcts-banner__icon\" fill=\"currentColor\" role=\"presentation\" focusable=\"false\"\n xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 25 25\" height=\"36\" width=\"36\">\n <path 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\"></path>\n </svg>\n </ng-container>\n <ng-container *ngSwitchCase=\"notificationBannerType.SUCCESS\">\n <svg class=\"hmcts-banner__icon\" fill=\"currentColor\" role=\"presentation\" focusable=\"false\"\n xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 25 25\" height=\"36\" width=\"36\">\n <path d=\"M25,6.2L8.7,23.2L0,14.1l4-4.2l4.7,4.9L21,2L25,6.2z\"></path>\n </svg>\n </ng-container>\n <ng-container *ngSwitchCase=\"notificationBannerType.INFORMATION\">\n <svg class=\"hmcts-banner__icon\" fill=\"currentColor\" role=\"presentation\" focusable=\"false\"\n xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 25 25\" height=\"36\" width=\"36\">\n <path 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\"></path>\n </svg>\n </ng-container>\n </ng-container>\n {{notificationBannerConfig.description}}\n <a *ngIf=\"notificationBannerConfig.showLink && !notificationBannerConfig.triggerOutputEvent\"\n class=\"govuk-notification-banner__link\"\n href=\"{{notificationBannerConfig.linkUrl}}\">{{notificationBannerConfig.linkText}}</a>\n <a *ngIf=\"notificationBannerConfig.showLink && notificationBannerConfig.triggerOutputEvent\"\n class=\"govuk-notification-banner__link\"\n href=\"javascript:void(0)\"\n (click)=\"onLinkClick(notificationBannerConfig.triggerOutputEventText)\">{{notificationBannerConfig.linkText}}</a>\n </p>\n </div>\n</div>\n", styles: [".govuk-notification-banner .govuk-notification-banner__content .govuk-notification-banner__heading{margin-left:0;max-width:900px}.govuk-notification-banner .govuk-notification-banner__content .govuk-notification-banner__heading .govuk-notification-banner__link{margin-left:10px}.notification-banner-information,.notification-banner-error{background-color:#d4351c;border:5px solid #d4351c}.notification-banner-warning{background-color:#912b88;border:5px solid #912b88}.notification-banner-success{background-color:#006435;border:5px solid #006435}\n"] }]
987
+ args: [{ selector: 'ccd-notification-banner', template: "<div *ngIf=\"notificationBannerConfig\"\n class=\"govuk-notification-banner\"\n [ngClass]=\"notificationBannerConfig.headerClass\"\n role=\"region\"\n aria-labelledby=\"govuk-notification-banner-title\"\n data-module=\"govuk-notification-banner\">\n\n <div class=\"govuk-notification-banner__header\">\n <h2 class=\"govuk-notification-banner__title\" id=\"govuk-notification-banner-title\">\n {{notificationBannerConfig.headingText | async}}\n </h2>\n </div>\n <div class=\"govuk-notification-banner__content\">\n <p class=\"govuk-notification-banner__heading\">\n <ng-container [ngSwitch]=\"notificationBannerConfig.bannerType\">\n <ng-container *ngSwitchCase=\"notificationBannerType.WARNING\">\n <svg class=\"hmcts-banner__icon\" fill=\"currentColor\" role=\"presentation\" focusable=\"false\"\n xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 25 25\" height=\"36\" width=\"36\">\n <path 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\"></path>\n </svg>\n </ng-container>\n <ng-container *ngSwitchCase=\"notificationBannerType.ERROR\">\n <svg class=\"hmcts-banner__icon\" fill=\"currentColor\" role=\"presentation\" focusable=\"false\"\n xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 25 25\" height=\"36\" width=\"36\">\n <path 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\"></path>\n </svg>\n </ng-container>\n <ng-container *ngSwitchCase=\"notificationBannerType.SUCCESS\">\n <svg class=\"hmcts-banner__icon\" fill=\"currentColor\" role=\"presentation\" focusable=\"false\"\n xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 25 25\" height=\"36\" width=\"36\">\n <path d=\"M25,6.2L8.7,23.2L0,14.1l4-4.2l4.7,4.9L21,2L25,6.2z\"></path>\n </svg>\n </ng-container>\n <ng-container *ngSwitchCase=\"notificationBannerType.INFORMATION\">\n <svg class=\"hmcts-banner__icon\" fill=\"currentColor\" role=\"presentation\" focusable=\"false\"\n xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 25 25\" height=\"36\" width=\"36\">\n <path 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\"></path>\n </svg>\n </ng-container>\n </ng-container>\n {{notificationBannerConfig.description | async}}\n <a *ngIf=\"notificationBannerConfig.showLink && !notificationBannerConfig.triggerOutputEvent\"\n class=\"govuk-notification-banner__link\"\n href=\"{{notificationBannerConfig.linkUrl | async}}\">{{notificationBannerConfig.linkText | async}}</a>\n <ng-container *ngIf=\"notificationBannerConfig.showLink && notificationBannerConfig.triggerOutputEvent\">\n <input #triggerOutputEventText style=\"display: none\" type=\"text\" value=\"{{notificationBannerConfig.triggerOutputEventText | async}}\">\n <a class=\"govuk-notification-banner__link\"\n href=\"javascript:void(0)\"\n (click)=\"onLinkClick(triggerOutputEventText.value)\">{{notificationBannerConfig.linkText | async}}</a>\n </ng-container>\n </p>\n </div>\n</div>\n", styles: [".govuk-notification-banner .govuk-notification-banner__content .govuk-notification-banner__heading{margin-left:0;max-width:900px}.govuk-notification-banner .govuk-notification-banner__content .govuk-notification-banner__heading .govuk-notification-banner__link{margin-left:10px}.notification-banner-information,.notification-banner-error{background-color:#d4351c;border:5px solid #d4351c}.notification-banner-warning{background-color:#912b88;border:5px solid #912b88}.notification-banner-success{background-color:#006435;border:5px solid #006435}\n"] }]
976
988
  }], null, { notificationBannerConfig: [{
977
989
  type: Input
978
990
  }], linkClicked: [{
@@ -20358,7 +20370,7 @@ function WriteYesNoFieldComponent_div_7_Template(rf, ctx) { if (rf & 1) {
20358
20370
  i0.ɵɵadvance(1);
20359
20371
  i0.ɵɵproperty("for", ctx_r3.createElementId(value_r4));
20360
20372
  i0.ɵɵadvance(1);
20361
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind3(4, 8, ctx_r3.caseField.label, null, value_r4));
20373
+ i0.ɵɵtextInterpolate(ctx_r3.caseField.label ? i0.ɵɵpipeBind3(4, 8, ctx_r3.caseField.label, null, value_r4) : value_r4);
20362
20374
  } }
20363
20375
  const _c1$a = function (a0) { return { "form-group-error": a0 }; };
20364
20376
  class WriteYesNoFieldComponent extends AbstractFieldWriteComponent {
@@ -20396,7 +20408,7 @@ WriteYesNoFieldComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: Wr
20396
20408
  } }, dependencies: [i4.NgClass, i4.NgForOf, i4.NgIf, i3.DefaultValueAccessor, i3.RadioControlValueAccessor, i3.NgControlStatus, i3.FormControlDirective, FieldLabelPipe, FirstErrorPipe, i1.RpxTranslatePipe], encapsulation: 2 });
20397
20409
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WriteYesNoFieldComponent, [{
20398
20410
  type: Component,
20399
- args: [{ selector: 'ccd-write-yes-no-field', template: "<div [id]=\"id()\" class=\"form-group bottom-30\" [ngClass]=\"{'form-group-error': !yesNoControl.valid && (yesNoControl.dirty || yesNoControl.touched)}\">\n\t<fieldset class=\"inline\">\n <legend>\n <span class=\"form-label\" *ngIf=\"caseField.label\">{{caseField | ccdFieldLabel}}</span>\n </legend>\n <span class=\"form-hint\" *ngIf=\"caseField.hint_text\">{{caseField.hint_text | rpxTranslate}}</span>\n <span class=\"error-message\" *ngIf=\"yesNoControl.errors && (yesNoControl.dirty || yesNoControl.touched)\">\n {{yesNoControl.errors | ccdFirstError:caseField.label}}\n </span>\n\n <div [id]=\"createElementId('radio')\">\n \t <div class=\"multiple-choice\" *ngFor=\"let value of yesNoValues\" [ngClass]=\"{selected: yesNoControl.value === value}\">\n \t <input class=\"form-control\" [id]=\"createElementId(value)\" [attr.name]=\"id()\" [name]=\"id()\" type=\"radio\" [formControl]=\"yesNoControl\" [value]=\"value\">\n \t <label class=\"form-label\" [for]=\"createElementId(value)\">{{caseField.label | rpxTranslate : null : value}}</label>\n \t </div>\n </div>\n\t</fieldset>\n</div>\n" }]
20411
+ args: [{ selector: 'ccd-write-yes-no-field', template: "<div [id]=\"id()\" class=\"form-group bottom-30\" [ngClass]=\"{'form-group-error': !yesNoControl.valid && (yesNoControl.dirty || yesNoControl.touched)}\">\n\t<fieldset class=\"inline\">\n <legend>\n <span class=\"form-label\" *ngIf=\"caseField.label\">{{caseField | ccdFieldLabel}}</span>\n </legend>\n <span class=\"form-hint\" *ngIf=\"caseField.hint_text\">{{caseField.hint_text | rpxTranslate}}</span>\n <span class=\"error-message\" *ngIf=\"yesNoControl.errors && (yesNoControl.dirty || yesNoControl.touched)\">\n {{yesNoControl.errors | ccdFirstError:caseField.label}}\n </span>\n\n <div [id]=\"createElementId('radio')\">\n \t <div class=\"multiple-choice\" *ngFor=\"let value of yesNoValues\" [ngClass]=\"{selected: yesNoControl.value === value}\">\n \t <input class=\"form-control\" [id]=\"createElementId(value)\" [attr.name]=\"id()\" [name]=\"id()\" type=\"radio\" [formControl]=\"yesNoControl\" [value]=\"value\">\n <label class=\"form-label\" [for]=\"createElementId(value)\">{{caseField.label ? (caseField.label | rpxTranslate:null:value) : value}}</label>\n \t </div>\n </div>\n\t</fieldset>\n</div>\n" }]
20400
20412
  }], function () { return [{ type: YesNoService }]; }, null); })();
20401
20413
 
20402
20414
  class PaletteService {
@@ -27385,18 +27397,28 @@ function CaseEditSubmitComponent_div_0_ng_container_14_Template(rf, ctx) { if (r
27385
27397
  i0.ɵɵelementStart(1, "fieldset", 39);
27386
27398
  i0.ɵɵelement(2, "legend", 40);
27387
27399
  i0.ɵɵelementStart(3, "div", 41)(4, "label", 42);
27388
- i0.ɵɵtext(5, " Event summary (optional) ");
27389
- i0.ɵɵelementStart(6, "span", 43);
27390
- i0.ɵɵtext(7, "A few words describing the purpose of the event.");
27400
+ i0.ɵɵtext(5);
27401
+ i0.ɵɵpipe(6, "rpxTranslate");
27402
+ i0.ɵɵelementStart(7, "span", 43);
27403
+ i0.ɵɵtext(8);
27404
+ i0.ɵɵpipe(9, "rpxTranslate");
27391
27405
  i0.ɵɵelementEnd()();
27392
- i0.ɵɵelement(8, "input", 44);
27406
+ i0.ɵɵelement(10, "input", 44);
27393
27407
  i0.ɵɵelementEnd();
27394
- i0.ɵɵelementStart(9, "div", 41)(10, "label", 45);
27395
- i0.ɵɵtext(11, "Event description (optional)");
27408
+ i0.ɵɵelementStart(11, "div", 41)(12, "label", 45);
27409
+ i0.ɵɵtext(13);
27410
+ i0.ɵɵpipe(14, "rpxTranslate");
27396
27411
  i0.ɵɵelementEnd();
27397
- i0.ɵɵelement(12, "textarea", 46);
27412
+ i0.ɵɵelement(15, "textarea", 46);
27398
27413
  i0.ɵɵelementEnd()();
27399
27414
  i0.ɵɵelementContainerEnd();
27415
+ } if (rf & 2) {
27416
+ i0.ɵɵadvance(5);
27417
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(6, 3, "Event summary (optional)"), " ");
27418
+ i0.ɵɵadvance(3);
27419
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(9, 5, "A few words describing the purpose of the event."));
27420
+ i0.ɵɵadvance(5);
27421
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(14, 7, "Event description (optional)"));
27400
27422
  } }
27401
27423
  function CaseEditSubmitComponent_div_0_button_16_Template(rf, ctx) { if (rf & 1) {
27402
27424
  const _r37 = i0.ɵɵgetCurrentView();
@@ -27428,7 +27450,7 @@ function CaseEditSubmitComponent_div_0_Template(rf, ctx) { if (rf & 1) {
27428
27450
  i0.ɵɵlistener("submit", function CaseEditSubmitComponent_div_0_Template_form_submit_11_listener() { i0.ɵɵrestoreView(_r39); const ctx_r40 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r40.submit()); });
27429
27451
  i0.ɵɵtemplate(12, CaseEditSubmitComponent_div_0_ng_container_12_Template, 8, 5, "ng-container", 0);
27430
27452
  i0.ɵɵtemplate(13, CaseEditSubmitComponent_div_0_ng_container_13_Template, 4, 1, "ng-container", 0);
27431
- i0.ɵɵtemplate(14, CaseEditSubmitComponent_div_0_ng_container_14_Template, 13, 0, "ng-container", 0);
27453
+ i0.ɵɵtemplate(14, CaseEditSubmitComponent_div_0_ng_container_14_Template, 16, 9, "ng-container", 0);
27432
27454
  i0.ɵɵelementStart(15, "div", 9);
27433
27455
  i0.ɵɵtemplate(16, CaseEditSubmitComponent_div_0_button_16_Template, 3, 4, "button", 10);
27434
27456
  i0.ɵɵelementStart(17, "button", 11);
@@ -27616,15 +27638,7 @@ class CaseEditSubmitComponent {
27616
27638
  return this.eventTrigger.case_fields.some(field => field.show_summary_content_option >= 0);
27617
27639
  }
27618
27640
  showEventNotes() {
27619
- // Display event notes related controls only if the following conditions are met
27620
- // 1. show_event_notes flag is set to true
27621
- // 2. profile is not a solicitor
27622
- // 3. is not a case flags journey, as it uses a custom check your answers component
27623
- if (this.eventTrigger.show_event_notes) {
27624
- return !this.profile?.isSolicitor()
27625
- && !this.caseEdit.isCaseFlagSubmission;
27626
- }
27627
- return false;
27641
+ return !!this.eventTrigger.show_event_notes;
27628
27642
  }
27629
27643
  getLastPageShown() {
27630
27644
  let lastPage;
@@ -27702,7 +27716,7 @@ CaseEditSubmitComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: Cas
27702
27716
  } }, styles: ["#fieldset-case-data[_ngcontent-%COMP%]{margin-bottom:30px}#fieldset-case-data[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{width:1%;white-space:nowrap;vertical-align:top}.compound-field[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{padding:0}#confirmation-header[_ngcontent-%COMP%]{width:630px;background-color:#17958b;border:solid 1px #979797;color:#fff;text-align:center}#confirmation-body[_ngcontent-%COMP%]{width:630px;background-color:#fff}.valign-top[_ngcontent-%COMP%]{vertical-align:top}.summary-fields[_ngcontent-%COMP%]{margin-bottom:30px}.summary-fields[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%] th[_ngcontent-%COMP%], .summary-fields[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{border-bottom:0px}a.disabled[_ngcontent-%COMP%]{pointer-events:none;cursor:default}.case-field-label[_ngcontent-%COMP%]{width:45%}.case-field-content[_ngcontent-%COMP%]{width:50%}.no-bottom-border[_ngcontent-%COMP%]{border-bottom:none}.case-field-change[_ngcontent-%COMP%]{width:5%}"] });
27703
27717
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseEditSubmitComponent, [{
27704
27718
  type: Component,
27705
- args: [{ selector: 'ccd-case-edit-submit', template: "<div *ngIf=\"!caseEdit.isEventCompletionChecksRequired\">\n <!-- Event trigger name -->\n <h1 class=\"govuk-heading-l\">{{eventTrigger.name | rpxTranslate}}</h1>\n\n <!--Case ID or Title -->\n <div *ngIf=\"getCaseTitle(); then titleBlock; else idBlock\"></div>\n <ng-template #titleBlock>\n <ccd-markdown [content]=\"getCaseTitle() | ccdCaseTitle: contextFields : editForm.controls['data']\"></ccd-markdown>\n </ng-template>\n <ng-template #idBlock>\n <h2 *ngIf=\"getCaseId()\" class=\"heading-h2\">#{{ getCaseId() | ccdCaseReference }}</h2>\n </ng-template>\n\n <ccd-case-edit-generic-errors [error]=\"caseEdit.error\"></ccd-case-edit-generic-errors>\n\n <ccd-callback-errors [callbackErrorsSubject]=\"caseEdit.callbackErrorsSubject\"\n (callbackErrorsContext)=\"callbackErrorsNotify($event)\"></ccd-callback-errors>\n\n <form class=\"check-your-answers\" [formGroup]=\"editForm\" (submit)=\"submit()\">\n <ng-container *ngIf=\"checkYourAnswerFieldsToDisplayExists()\">\n\n <h2 class=\"heading-h2\">{{pageTitle | rpxTranslate }}</h2>\n <span class=\"text-16\" *ngIf=\"!caseEdit.isCaseFlagSubmission\">{{'Check the information below carefully.' | rpxTranslate}}</span>\n\n <table class=\"form-table\" aria-describedby=\"check your answers table\">\n <tbody>\n <ng-container *ngFor=\"let page of wizard.pages\">\n <ng-container *ngIf=\"isShown(page)\">\n <ng-container *ngFor=\"let field of page\n | ccdPageFields: editForm\n | ccdReadFieldsFilter: false :undefined :true :allFieldsValues\n | ccdCYAPageLabelFilter\">\n <ng-container *ngIf=\"canShowFieldInCYA(field)\">\n <tr ccdLabelSubstitutor [caseField]=\"field\" [hidden]=\"field.hidden\"\n [formGroup]=\"editForm.controls['data']\" [contextFields]=\"contextFields\">\n <th *ngIf=\"!isLabel(field) && !caseEdit.isCaseFlagSubmission\" class=\"valign-top case-field-label\">\n <span class=\"text-16\">{{field.label | rpxTranslate}}</span>\n </th>\n <td class=\"form-cell case-field-content\" [attr.colspan]=\"isLabel(field) ? '2' : '1'\">\n <ccd-field-read\n [formGroup]=\"editForm.controls['data']\" [topLevelFormGroup]=\"editForm.controls['data']\"\n [caseField]=\"summaryCaseField(field)\" [context]=\"paletteContext\" [caseFields]=\"contextFields\"></ccd-field-read>\n </td>\n <ng-container *ngIf=\"!caseEdit.isCaseFlagSubmission\">\n <td class=\"valign-top check-your-answers__change case-field-change\">\n <a *ngIf=\"isChangeAllowed(field)\" (click)=\"navigateToPage(page.id)\"\n href=\"javascript:void(0)\">\n <span class=\"text-16\" attr.aria-label=\"{{'Change' | rpxTranslate}} {{ field.label | rpxTranslate }}\">\n {{'Change' | rpxTranslate}}\n </span>\n </a>\n </td>\n </ng-container>\n </tr>\n </ng-container>\n </ng-container>\n </ng-container>\n </ng-container>\n </tbody>\n </table>\n </ng-container>\n <ng-container *ngIf=\"readOnlySummaryFieldsToDisplayExists()\">\n\n <table class=\"summary-fields\" aria-describedby=\"summary fields table\">\n <tbody>\n <ng-container *ngFor=\"let field of showSummaryFields\">\n <ng-container [ngSwitch]=\"!(field | ccdIsCompound)\">\n <tr *ngSwitchCase=\"true\" ccdLabelSubstitutor [caseField]=\"field\" [formGroup]=\"editForm.controls['data']\" [contextFields]=\"contextFields\">\n <th id=\"summary-field-label\">{{field.label}}</th>\n <td class=\"form-cell\">\n <ccd-field-read [formGroup]=\"editForm.controls['data']\" [caseField]=\"summaryCaseField(field)\"></ccd-field-read>\n </td>\n </tr>\n <tr *ngSwitchCase=\"false\" class=\"compound-field\" ccdLabelSubstitutor [caseField]=\"field\" [formGroup]=\"editForm.controls['data']\" [contextFields]=\"contextFields\">\n <td colspan=\"2\">\n <ccd-field-read [formGroup]=\"editForm.controls['data']\" [caseField]=\"summaryCaseField(field)\" [caseFields]=\"contextFields\"></ccd-field-read>\n </td>\n </tr>\n </ng-container>\n </ng-container>\n </tbody>\n </table>\n </ng-container>\n <ng-container *ngIf=\"showEventNotes()\">\n <fieldset id=\"fieldset-event\" formGroupName=\"event\">\n <legend style=\"display: none;\"></legend>\n <div class=\"form-group\">\n <label for=\"field-trigger-summary\" class=\"form-label\">\n Event summary (optional)\n <span class=\"form-hint\">A few words describing the purpose of the event.</span>\n </label>\n <input type=\"text\" id=\"field-trigger-summary\" class=\"form-control bottom-30 width-50\" formControlName=\"summary\" maxlength=\"1024\">\n </div>\n <div class=\"form-group\">\n <label for=\"field-trigger-description\" class=\"form-label\">Event description (optional)</label>\n <textarea id=\"field-trigger-description\" class=\"form-control bottom-30 width-50\" formControlName=\"description\"\n maxlength=\"65536\"></textarea>\n </div>\n </fieldset>\n </ng-container>\n <div class=\"form-group form-group-related\">\n <button *ngIf=\"!caseEdit.isCaseFlagSubmission\" class=\"button button-secondary\" type=\"button\" [disabled]=\"!hasPrevious() || caseEdit.isSubmitting\" (click)=\"previous()\">\n {{'Previous' | rpxTranslate}}\n </button>\n <button type=\"submit\" [disabled]=\"isDisabled\" class=\"button\">\n {{triggerText | rpxTranslate}}\n </button>\n </div>\n <p class=\"cancel\">\n <a (click)=\"cancel()\" href=\"javascript:void(0)\" [class.disabled]=\"caseEdit.isSubmitting\">{{getCancelText() | rpxTranslate}}</a>\n </p>\n </form>\n</div>\n<ccd-case-event-completion *ngIf=\"caseEdit.isEventCompletionChecksRequired\"\n [eventCompletionParams]=\"caseEdit.eventCompletionParams\"\n (eventCanBeCompleted)=\"onEventCanBeCompleted($event)\">\n</ccd-case-event-completion>\n", styles: ["#fieldset-case-data{margin-bottom:30px}#fieldset-case-data th{width:1%;white-space:nowrap;vertical-align:top}.compound-field td{padding:0}#confirmation-header{width:630px;background-color:#17958b;border:solid 1px #979797;color:#fff;text-align:center}#confirmation-body{width:630px;background-color:#fff}.valign-top{vertical-align:top}.summary-fields{margin-bottom:30px}.summary-fields tbody tr th,.summary-fields tbody tr td{border-bottom:0px}a.disabled{pointer-events:none;cursor:default}.case-field-label{width:45%}.case-field-content{width:50%}.no-bottom-border{border-bottom:none}.case-field-change{width:5%}\n"] }]
27719
+ args: [{ selector: 'ccd-case-edit-submit', template: "<div *ngIf=\"!caseEdit.isEventCompletionChecksRequired\">\n <!-- Event trigger name -->\n <h1 class=\"govuk-heading-l\">{{eventTrigger.name | rpxTranslate}}</h1>\n\n <!--Case ID or Title -->\n <div *ngIf=\"getCaseTitle(); then titleBlock; else idBlock\"></div>\n <ng-template #titleBlock>\n <ccd-markdown [content]=\"getCaseTitle() | ccdCaseTitle: contextFields : editForm.controls['data']\"></ccd-markdown>\n </ng-template>\n <ng-template #idBlock>\n <h2 *ngIf=\"getCaseId()\" class=\"heading-h2\">#{{ getCaseId() | ccdCaseReference }}</h2>\n </ng-template>\n\n <ccd-case-edit-generic-errors [error]=\"caseEdit.error\"></ccd-case-edit-generic-errors>\n\n <ccd-callback-errors [callbackErrorsSubject]=\"caseEdit.callbackErrorsSubject\"\n (callbackErrorsContext)=\"callbackErrorsNotify($event)\"></ccd-callback-errors>\n\n <form class=\"check-your-answers\" [formGroup]=\"editForm\" (submit)=\"submit()\">\n <ng-container *ngIf=\"checkYourAnswerFieldsToDisplayExists()\">\n\n <h2 class=\"heading-h2\">{{pageTitle | rpxTranslate}}</h2>\n <span class=\"text-16\" *ngIf=\"!caseEdit.isCaseFlagSubmission\">{{'Check the information below carefully.' | rpxTranslate}}</span>\n\n <table class=\"form-table\" aria-describedby=\"check your answers table\">\n <tbody>\n <ng-container *ngFor=\"let page of wizard.pages\">\n <ng-container *ngIf=\"isShown(page)\">\n <ng-container *ngFor=\"let field of page\n | ccdPageFields: editForm\n | ccdReadFieldsFilter: false :undefined :true :allFieldsValues\n | ccdCYAPageLabelFilter\">\n <ng-container *ngIf=\"canShowFieldInCYA(field)\">\n <tr ccdLabelSubstitutor [caseField]=\"field\" [hidden]=\"field.hidden\"\n [formGroup]=\"editForm.controls['data']\" [contextFields]=\"contextFields\">\n <th *ngIf=\"!isLabel(field) && !caseEdit.isCaseFlagSubmission\" class=\"valign-top case-field-label\">\n <span class=\"text-16\">{{field.label | rpxTranslate}}</span>\n </th>\n <td class=\"form-cell case-field-content\" [attr.colspan]=\"isLabel(field) ? '2' : '1'\">\n <ccd-field-read\n [formGroup]=\"editForm.controls['data']\" [topLevelFormGroup]=\"editForm.controls['data']\"\n [caseField]=\"summaryCaseField(field)\" [context]=\"paletteContext\" [caseFields]=\"contextFields\"></ccd-field-read>\n </td>\n <ng-container *ngIf=\"!caseEdit.isCaseFlagSubmission\">\n <td class=\"valign-top check-your-answers__change case-field-change\">\n <a *ngIf=\"isChangeAllowed(field)\" (click)=\"navigateToPage(page.id)\"\n href=\"javascript:void(0)\">\n <span class=\"text-16\" attr.aria-label=\"{{'Change' | rpxTranslate}} {{ field.label | rpxTranslate }}\">\n {{'Change' | rpxTranslate}}\n </span>\n </a>\n </td>\n </ng-container>\n </tr>\n </ng-container>\n </ng-container>\n </ng-container>\n </ng-container>\n </tbody>\n </table>\n </ng-container>\n <ng-container *ngIf=\"readOnlySummaryFieldsToDisplayExists()\">\n\n <table class=\"summary-fields\" aria-describedby=\"summary fields table\">\n <tbody>\n <ng-container *ngFor=\"let field of showSummaryFields\">\n <ng-container [ngSwitch]=\"!(field | ccdIsCompound)\">\n <tr *ngSwitchCase=\"true\" ccdLabelSubstitutor [caseField]=\"field\" [formGroup]=\"editForm.controls['data']\" [contextFields]=\"contextFields\">\n <th id=\"summary-field-label\">{{field.label}}</th>\n <td class=\"form-cell\">\n <ccd-field-read [formGroup]=\"editForm.controls['data']\" [caseField]=\"summaryCaseField(field)\"></ccd-field-read>\n </td>\n </tr>\n <tr *ngSwitchCase=\"false\" class=\"compound-field\" ccdLabelSubstitutor [caseField]=\"field\" [formGroup]=\"editForm.controls['data']\" [contextFields]=\"contextFields\">\n <td colspan=\"2\">\n <ccd-field-read [formGroup]=\"editForm.controls['data']\" [caseField]=\"summaryCaseField(field)\" [caseFields]=\"contextFields\"></ccd-field-read>\n </td>\n </tr>\n </ng-container>\n </ng-container>\n </tbody>\n </table>\n </ng-container>\n <ng-container *ngIf=\"showEventNotes()\">\n <fieldset id=\"fieldset-event\" formGroupName=\"event\">\n <legend style=\"display: none;\"></legend>\n <div class=\"form-group\">\n <label for=\"field-trigger-summary\" class=\"form-label\">\n {{'Event summary (optional)' | rpxTranslate}}\n <span class=\"form-hint\">{{'A few words describing the purpose of the event.' | rpxTranslate}}</span>\n </label>\n <input type=\"text\" id=\"field-trigger-summary\" class=\"form-control bottom-30 width-50\" formControlName=\"summary\" maxlength=\"1024\">\n </div>\n <div class=\"form-group\">\n <label for=\"field-trigger-description\" class=\"form-label\">{{'Event description (optional)' | rpxTranslate}}</label>\n <textarea id=\"field-trigger-description\" class=\"form-control bottom-30 width-50\" formControlName=\"description\"\n maxlength=\"65536\"></textarea>\n </div>\n </fieldset>\n </ng-container>\n <div class=\"form-group form-group-related\">\n <button *ngIf=\"!caseEdit.isCaseFlagSubmission\" class=\"button button-secondary\" type=\"button\" [disabled]=\"!hasPrevious() || caseEdit.isSubmitting\" (click)=\"previous()\">\n {{'Previous' | rpxTranslate}}\n </button>\n <button type=\"submit\" [disabled]=\"isDisabled\" class=\"button\">\n {{triggerText | rpxTranslate}}\n </button>\n </div>\n <p class=\"cancel\">\n <a (click)=\"cancel()\" href=\"javascript:void(0)\" [class.disabled]=\"caseEdit.isSubmitting\">{{getCancelText() | rpxTranslate}}</a>\n </p>\n </form>\n</div>\n<ccd-case-event-completion *ngIf=\"caseEdit.isEventCompletionChecksRequired\"\n [eventCompletionParams]=\"caseEdit.eventCompletionParams\"\n (eventCanBeCompleted)=\"onEventCanBeCompleted($event)\">\n</ccd-case-event-completion>\n", styles: ["#fieldset-case-data{margin-bottom:30px}#fieldset-case-data th{width:1%;white-space:nowrap;vertical-align:top}.compound-field td{padding:0}#confirmation-header{width:630px;background-color:#17958b;border:solid 1px #979797;color:#fff;text-align:center}#confirmation-body{width:630px;background-color:#fff}.valign-top{vertical-align:top}.summary-fields{margin-bottom:30px}.summary-fields tbody tr th,.summary-fields tbody tr td{border-bottom:0px}a.disabled{pointer-events:none;cursor:default}.case-field-label{width:45%}.case-field-content{width:50%}.no-bottom-border{border-bottom:none}.case-field-change{width:5%}\n"] }]
27706
27720
  }], function () { return [{ type: CaseEditComponent }, { type: FieldsUtils }, { type: CaseFieldService }, { type: i1$1.ActivatedRoute }, { type: OrderService }, { type: ProfileNotifier }]; }, null); })();
27707
27721
 
27708
27722
  function CaseProgressComponent_div_0_Template(rf, ctx) { if (rf & 1) {
@@ -30837,7 +30851,7 @@ function CaseFullAccessViewComponent_ng_container_12_Template(rf, ctx) { if (rf
30837
30851
  i0.ɵɵproperty("ngIf", ctx_r5.prependedTabs && ctx_r5.prependedTabs.length || ctx_r5.appendedTabs && ctx_r5.appendedTabs.length);
30838
30852
  } }
30839
30853
  class CaseFullAccessViewComponent {
30840
- constructor(ngZone, route, router, navigationNotifierService, orderService, activityPollingService, dialog, alertService, draftService, errorNotifierService, convertHrefToRouterService, location, crf, sessionStorageService, rpxTranslationPipe) {
30854
+ constructor(ngZone, route, router, navigationNotifierService, orderService, activityPollingService, dialog, alertService, draftService, errorNotifierService, convertHrefToRouterService, location, crf, sessionStorageService, rpxTranslationService) {
30841
30855
  this.ngZone = ngZone;
30842
30856
  this.route = route;
30843
30857
  this.router = router;
@@ -30852,7 +30866,7 @@ class CaseFullAccessViewComponent {
30852
30866
  this.location = location;
30853
30867
  this.crf = crf;
30854
30868
  this.sessionStorageService = sessionStorageService;
30855
- this.rpxTranslationPipe = rpxTranslationPipe;
30869
+ this.rpxTranslationService = rpxTranslationService;
30856
30870
  this.HEARINGS_TAB_LABEL = 'Hearings';
30857
30871
  this.hasPrint = true;
30858
30872
  this.hasEventSelector = true;
@@ -31077,14 +31091,15 @@ class CaseFullAccessViewComponent {
31077
31091
  }
31078
31092
  }
31079
31093
  // Refactored under EXUI-110 to address infinite tab loop to use tabIndexChanged instead
31080
- tabChanged(tabIndexChanged) {
31094
+ async tabChanged(tabIndexChanged) {
31095
+ const hearingsInWelsh = await firstValueFrom(this.rpxTranslationService.getTranslation$(this.HEARINGS_TAB_LABEL));
31081
31096
  const matTab = this.tabGroup._tabs.find(tab => tab.isActive);
31082
31097
  const tabLabel = matTab.textLabel;
31083
31098
  // sortedTabs are fragments
31084
- // appended/prepepended tabs use router navigation
31099
+ // appended/prepended tabs use router navigation
31085
31100
  if ((tabIndexChanged <= 1 && this.prependedTabs && this.prependedTabs.length) ||
31086
31101
  (this.appendedTabs?.length && (tabLabel === this.HEARINGS_TAB_LABEL
31087
- || tabLabel === this.rpxTranslationPipe.transform(this.HEARINGS_TAB_LABEL)))) {
31102
+ || tabLabel === hearingsInWelsh))) {
31088
31103
  // Hack to get ID from tab as it's not easily achieved through Angular Material Tabs
31089
31104
  const tab = matTab['_viewContainerRef'];
31090
31105
  const id = tab.element.nativeElement.id;
@@ -31110,33 +31125,34 @@ class CaseFullAccessViewComponent {
31110
31125
  hasActiveCaseFlags() {
31111
31126
  // Determine which tab contains the FlagLauncher CaseField type, from the CaseView object in the snapshot data
31112
31127
  const caseFlagsTab = this.caseDetails.tabs
31113
- ? (this.caseDetails.tabs).filter(tab => tab.fields && tab.fields.some(caseField => FieldsUtils.isFlagLauncherCaseField(caseField)))[0]
31128
+ ? (this.caseDetails.tabs).filter(tab => tab.fields && tab.fields.some(caseField => FieldsUtils.isCaseFieldOfType(caseField, ['FlagLauncher'])))[0]
31114
31129
  : null;
31115
31130
  if (caseFlagsTab) {
31116
31131
  // Check whether the FlagLauncher CaseField is in external mode or not; the notification banner should not be
31117
31132
  // displayed for external users
31118
- this.caseFlagsExternalUser = caseFlagsTab.fields.find(caseField => FieldsUtils.isFlagLauncherCaseField(caseField)).display_context_parameter === this.caseFlagsReadExternalMode;
31133
+ this.caseFlagsExternalUser = caseFlagsTab.fields.find(caseField => FieldsUtils.isCaseFieldOfType(caseField, ['FlagLauncher'])).display_context_parameter === this.caseFlagsReadExternalMode;
31119
31134
  // Get the active case flags count
31120
31135
  // Cannot filter out anything other than to remove the FlagLauncher CaseField because Flags fields may be
31121
31136
  // contained in other CaseField instances, either as a sub-field of a Complex field, or fields in a collection
31122
31137
  // (or sub-fields of Complex fields in a collection)
31123
31138
  const activeCaseFlags = caseFlagsTab.fields
31124
- .filter(caseField => !FieldsUtils.isFlagLauncherCaseField(caseField) && caseField.value)
31139
+ .filter(caseField => !FieldsUtils.isCaseFieldOfType(caseField, ['FlagLauncher']) && caseField.value)
31125
31140
  .reduce((active, caseFlag) => {
31126
31141
  return FieldsUtils.countActiveFlagsInCaseField(active, caseFlag);
31127
31142
  }, 0);
31128
31143
  if (activeCaseFlags > 0) {
31129
31144
  const description = activeCaseFlags > 1
31130
- ? `There are ${activeCaseFlags} active flags on this case.` : 'There is 1 active flag on this case.';
31145
+ ? this.rpxTranslationService.getTranslationWithReplacements$(`There are %activeCaseFlags% active flags on this case.`, { activeCaseFlags: '' + activeCaseFlags })
31146
+ : this.rpxTranslationService.getTranslation$('There is 1 active flag on this case.');
31131
31147
  // Initialise and display notification banner
31132
31148
  this.notificationBannerConfig = {
31133
31149
  bannerType: NotificationBannerType.INFORMATION,
31134
- headingText: 'Important',
31150
+ headingText: this.rpxTranslationService.getTranslation$('Important'),
31135
31151
  description,
31136
31152
  showLink: true,
31137
- linkText: 'View case flags',
31153
+ linkText: this.rpxTranslationService.getTranslation$('View case flags'),
31138
31154
  triggerOutputEvent: true,
31139
- triggerOutputEventText: caseFlagsTab.label,
31155
+ triggerOutputEventText: this.rpxTranslationService.getTranslation$(caseFlagsTab.label),
31140
31156
  headerClass: NotificationBannerHeaderClass.INFORMATION
31141
31157
  };
31142
31158
  return true;
@@ -31210,7 +31226,7 @@ CaseFullAccessViewComponent.TRIGGER_TEXT_START = 'Go';
31210
31226
  CaseFullAccessViewComponent.TRIGGER_TEXT_CONTINUE = 'Ignore Warning and Go';
31211
31227
  CaseFullAccessViewComponent.UNICODE_SPACE = '%20';
31212
31228
  CaseFullAccessViewComponent.EMPTY_SPACE = ' ';
31213
- CaseFullAccessViewComponent.ɵfac = function CaseFullAccessViewComponent_Factory(t) { return new (t || CaseFullAccessViewComponent)(i0.ɵɵdirectiveInject(i0.NgZone), i0.ɵɵdirectiveInject(i1$1.ActivatedRoute), i0.ɵɵdirectiveInject(i1$1.Router), i0.ɵɵdirectiveInject(NavigationNotifierService), i0.ɵɵdirectiveInject(OrderService), i0.ɵɵdirectiveInject(ActivityPollingService), i0.ɵɵdirectiveInject(i1$3.MatLegacyDialog), i0.ɵɵdirectiveInject(AlertService), i0.ɵɵdirectiveInject(DraftService), i0.ɵɵdirectiveInject(ErrorNotifierService), i0.ɵɵdirectiveInject(ConvertHrefToRouterService), i0.ɵɵdirectiveInject(i4.Location), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(SessionStorageService), i0.ɵɵdirectiveInject(i1.RpxTranslatePipe)); };
31229
+ CaseFullAccessViewComponent.ɵfac = function CaseFullAccessViewComponent_Factory(t) { return new (t || CaseFullAccessViewComponent)(i0.ɵɵdirectiveInject(i0.NgZone), i0.ɵɵdirectiveInject(i1$1.ActivatedRoute), i0.ɵɵdirectiveInject(i1$1.Router), i0.ɵɵdirectiveInject(NavigationNotifierService), i0.ɵɵdirectiveInject(OrderService), i0.ɵɵdirectiveInject(ActivityPollingService), i0.ɵɵdirectiveInject(i1$3.MatLegacyDialog), i0.ɵɵdirectiveInject(AlertService), i0.ɵɵdirectiveInject(DraftService), i0.ɵɵdirectiveInject(ErrorNotifierService), i0.ɵɵdirectiveInject(ConvertHrefToRouterService), i0.ɵɵdirectiveInject(i4.Location), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(SessionStorageService), i0.ɵɵdirectiveInject(i1.RpxTranslationService)); };
31214
31230
  CaseFullAccessViewComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CaseFullAccessViewComponent, selectors: [["ccd-case-full-access-view"]], viewQuery: function CaseFullAccessViewComponent_Query(rf, ctx) { if (rf & 1) {
31215
31231
  i0.ɵɵviewQuery(_c0$b, 5);
31216
31232
  } if (rf & 2) {
@@ -31255,7 +31271,7 @@ CaseFullAccessViewComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type:
31255
31271
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseFullAccessViewComponent, [{
31256
31272
  type: Component,
31257
31273
  args: [{ selector: 'ccd-case-full-access-view', template: "<!-- Generic error heading and error message to be displayed only if there are no specific callback errors or warnings, or no error details -->\n<div *ngIf=\"error && !(error.callbackErrors || error.callbackWarnings || error.details)\" class=\"error-summary\"\n role=\"group\" aria-labelledby=\"edit-case-event_error-summary-heading\" tabindex=\"-1\">\n <h1 class=\"heading-h1 error-summary-heading\" id=\"edit-case-event_error-summary-heading\">\n {{'Something went wrong' | rpxTranslate}}\n </h1>\n <div class=\"govuk-error-summary__body\" id=\"edit-case-event_error-summary-body\">\n <p>{{\"We're working to fix the problem. Try again shortly.\" | rpxTranslate}}</p>\n <p>\n <a href=\"get-help\" target=\"_blank\">\n {{\"Contact us\" | rpxTranslate}}</a> {{\"if you're still having problems.\" | rpxTranslate}}\n </p>\n </div>\n</div>\n<!-- Callback error heading and error message to be displayed if there are specific error details -->\n<div *ngIf=\"error && error.details\" class=\"error-summary\" role=\"group\"\n aria-labelledby=\"edit-case-event_error-summary-heading\" tabindex=\"-1\">\n <h2 class=\"heading-h2 error-summary-heading\" id=\"edit-case-event_error-summary-heading\">\n {{'The callback data failed validation' | rpxTranslate}}\n </h2>\n <p>{{error.message | rpxTranslate}}</p>\n <ul *ngIf=\"error.details?.field_errors\" class=\"error-summary-list\">\n <li *ngFor=\"let fieldError of error.details.field_errors\">\n {{fieldError.message | rpxTranslate}}\n </li>\n </ul>\n</div>\n<ccd-callback-errors\n [triggerTextContinue]=\"triggerTextStart\"\n [triggerTextIgnore]=\"triggerTextIgnoreWarnings\"\n [callbackErrorsSubject]=\"callbackErrorsSubject\"\n (callbackErrorsContext)=\"callbackErrorsNotify($event)\">\n</ccd-callback-errors>\n<ccd-activity [caseId]=\"caseDetails.case_id\" [displayMode]=\"BANNER\"></ccd-activity>\n<div class=\"grid-row\">\n <div class=\"column-one-half\">\n <ccd-case-header [caseDetails]=\"caseDetails\"></ccd-case-header>\n <div class=\"case-viewer-controls\" *ngIf=\"hasPrint && !isDraft() && isPrintEnabled()\">\n <a id=\"case-viewer-control-print\" routerLink=\"print\" class=\"button button-secondary\">{{'Print' | rpxTranslate}}</a>\n </div>\n </div>\n <div *ngIf=\"hasEventSelector\" class=\"column-one-half\">\n <ccd-event-trigger [isDisabled]=\"isTriggerButtonDisabled()\" [triggers]=\"caseDetails.triggers\"\n [triggerText]=\"triggerText\" (onTriggerChange)=\"clearErrorsAndWarnings()\"\n (onTriggerSubmit)=\"applyTrigger($event)\"></ccd-event-trigger>\n </div>\n</div>\n<div class=\"grid-row\" *ngIf=\"activeCaseFlags && !caseFlagsExternalUser\">\n <div class=\"column-full\">\n <ccd-notification-banner [notificationBannerConfig]=\"notificationBannerConfig\" (linkClicked)=\"onLinkClicked($event)\">\n </ccd-notification-banner>\n </div>\n</div>\n<div class=\"grid-row\">\n <div class=\"column-full\">\n <ng-container *ngIf=\"hasTabsPresent()\">\n <mat-tab-group #tabGroup animationDuration=\"0ms\" (selectedIndexChange)=\"tabChanged($event)\" [disableRipple]=\"true\"\n [selectedIndex]=\"selectedTabIndex\">\n <mat-tab *ngFor=\"let tab of prependedTabs\" [id]=\"tab.id\" [label]=\"tab.label | rpxTranslate\">\n </mat-tab>\n <mat-tab *ngFor=\"let tab of sortedTabs; let curIdx=index\" [id]=\"tab.id\" [label]=\"tab.label | rpxTranslate\">\n <ng-template matTabContent>\n <table [class]=\"tab.id\" [attr.aria-describedby]=\"'case viewer table' | rpxTranslate\">\n <tbody>\n <ng-container *ngFor=\"let field of tab | ccdTabFields | ccdReadFieldsFilter:false :undefined :true : formGroup.controls['data']\">\n <div ccdLabelSubstitutor [caseField]=\"field\" [contextFields]=\"caseFields\" [hidden]=\"field.hidden\">\n <ng-container [ngSwitch]=\"!(field | ccdIsCompound)\">\n <tr *ngSwitchCase=\"true\">\n <th id=\"case-viewer-field-label\" *ngIf=\"!isFieldToHaveNoLabel(field)\">\n <div class=\"case-viewer-label text-16\">\n {{field.label | rpxTranslate}}</div>\n </th>\n <td [id]=\"'case-viewer-field-read--' + field.id\" scope=\"col\">\n <span class=\"text-16\">\n <ccd-field-read [topLevelFormGroup]=\"formGroup.controls['data']\"\n [caseField]=\"field\" [caseReference]=\"caseDetails.case_id\"\n [markdownUseHrefAsRouterLink]=\"markdownUseHrefAsRouterLink\">\n </ccd-field-read>\n </span>\n </td>\n </tr>\n <tr *ngSwitchCase=\"false\" class=\"compound-field\">\n <th [id]=\"'case-viewer-field-read--' + field.id\" scope=\"col\">\n <span class=\"text-16\">\n <ccd-field-read [topLevelFormGroup]=\"formGroup.controls['data']\"\n [caseField]=\"field\" [caseReference]=\"caseDetails.case_id\"\n [markdownUseHrefAsRouterLink]=\"markdownUseHrefAsRouterLink\">\n </ccd-field-read>\n </span>\n </th>\n </tr>\n </ng-container>\n </div>\n </ng-container>\n </tbody>\n </table>\n </ng-template>\n </mat-tab>\n <mat-tab *ngFor=\"let tab of appendedTabs\" [id]=\"tab.id\" [label]=\"tab.label | rpxTranslate\">\n </mat-tab>\n </mat-tab-group>\n <router-outlet *ngIf=\"(prependedTabs && prependedTabs.length) || (appendedTabs && appendedTabs.length)\"></router-outlet>\n </ng-container>\n </div>\n</div>\n", styles: ["th{width:1%;white-space:nowrap;vertical-align:top}.compound-field th{padding:0}.case-viewer-controls{margin-top:47px;margin-bottom:20px}ccd-case-header{float:left;margin-right:10px}ccd-event-trigger{float:right}.case-viewer-label{min-width:300px;white-space:normal}.markdown h3{margin-bottom:0}\n"] }]
31258
- }], function () { return [{ type: i0.NgZone }, { type: i1$1.ActivatedRoute }, { type: i1$1.Router }, { type: NavigationNotifierService }, { type: OrderService }, { type: ActivityPollingService }, { type: i1$3.MatLegacyDialog }, { type: AlertService }, { type: DraftService }, { type: ErrorNotifierService }, { type: ConvertHrefToRouterService }, { type: i4.Location }, { type: i0.ChangeDetectorRef }, { type: SessionStorageService }, { type: i1.RpxTranslatePipe }]; }, { hasPrint: [{
31274
+ }], function () { return [{ type: i0.NgZone }, { type: i1$1.ActivatedRoute }, { type: i1$1.Router }, { type: NavigationNotifierService }, { type: OrderService }, { type: ActivityPollingService }, { type: i1$3.MatLegacyDialog }, { type: AlertService }, { type: DraftService }, { type: ErrorNotifierService }, { type: ConvertHrefToRouterService }, { type: i4.Location }, { type: i0.ChangeDetectorRef }, { type: SessionStorageService }, { type: i1.RpxTranslationService }]; }, { hasPrint: [{
31259
31275
  type: Input
31260
31276
  }], hasEventSelector: [{
31261
31277
  type: Input
@@ -34041,8 +34057,18 @@ class SearchFiltersComponent {
34041
34057
  if (this.jurisdictions.length === 1 || jurisdiction) {
34042
34058
  this.selected.jurisdiction = this.jurisdictions[0];
34043
34059
  if (jurisdiction) {
34044
- const localStorageJurisdiction = JSON.parse(jurisdiction);
34045
- this.selected.jurisdiction = this.jurisdictions.filter(j => j.id === localStorageJurisdiction.id)[0];
34060
+ try {
34061
+ console.log('jurisdiction retrieved from local storage len = ' + jurisdiction.length);
34062
+ const localStorageJurisdiction = JSON.parse(decompressFromUTF16(jurisdiction));
34063
+ if (localStorageJurisdiction) {
34064
+ this.selected.jurisdiction = this.jurisdictions
34065
+ .filter(j => j.id === localStorageJurisdiction.id)[0];
34066
+ }
34067
+ }
34068
+ catch (e) {
34069
+ console.log("Failed to retrieve jurisdiction from local storage");
34070
+ this.windowService.setLocalStorage(JURISDICTION_LOC_STORAGE, null);
34071
+ }
34046
34072
  }
34047
34073
  this.onJurisdictionIdChange();
34048
34074
  }
@@ -34067,6 +34093,7 @@ class SearchFiltersComponent {
34067
34093
  this.onReset.emit();
34068
34094
  }
34069
34095
  apply() {
34096
+ console.log("Search filters apply");
34070
34097
  this.selected.formGroup = this.formGroup;
34071
34098
  this.selected.page = 1;
34072
34099
  this.selected.metadataFields = this.getMetadataFields();
@@ -34080,7 +34107,15 @@ class SearchFiltersComponent {
34080
34107
  populateValuesInLocalStorage() {
34081
34108
  this.windowService.setLocalStorage(FORM_GROUP_VALUE_LOC_STORAGE, JSON.stringify(this.selected.formGroup.value));
34082
34109
  this.windowService.setLocalStorage(META_FIELDS_LOC_STORAGE, JSON.stringify(this.selected.metadataFields));
34083
- this.windowService.setLocalStorage(JURISDICTION_LOC_STORAGE, JSON.stringify(this.selected.jurisdiction));
34110
+ try {
34111
+ const compJurisd = compressToUTF16(JSON.stringify(this.selected.jurisdiction));
34112
+ this.windowService.setLocalStorage(JURISDICTION_LOC_STORAGE, compJurisd);
34113
+ console.log('jurisdiction compressed into local storage, length = ' + compJurisd.length);
34114
+ }
34115
+ catch (e) {
34116
+ console.log('Could not store jurisdiction in local storage');
34117
+ this.windowService.setLocalStorage(JURISDICTION_LOC_STORAGE, null);
34118
+ }
34084
34119
  if (this.selected.caseType) {
34085
34120
  this.windowService.setLocalStorage(CASE_TYPE_LOC_STORAGE, JSON.stringify(this.selected.caseType));
34086
34121
  }