@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.
- package/esm2020/lib/components/banners/notification-banner/domain/notification-banner-config.model.mjs +1 -1
- package/esm2020/lib/components/banners/notification-banner/notification-banner.component.mjs +41 -30
- package/esm2020/lib/shared/components/case-editor/case-edit-submit/case-edit-submit.component.mjs +21 -19
- package/esm2020/lib/shared/components/case-editor/services/event-completion-state-machine.service.mjs +1 -1
- package/esm2020/lib/shared/components/case-editor/services/work-allocation.service.mjs +1 -1
- package/esm2020/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.mjs +19 -17
- package/esm2020/lib/shared/components/palette/yes-no/write-yes-no-field.component.mjs +3 -3
- package/esm2020/lib/shared/components/search-filters/search-filters.component.mjs +24 -4
- package/esm2020/lib/shared/domain/work-allocation/task-response.model.mjs +1 -1
- package/esm2020/lib/shared/services/alert/alert.service.mjs +1 -1
- package/fesm2015/hmcts-ccd-case-ui-toolkit.mjs +121 -84
- package/fesm2015/hmcts-ccd-case-ui-toolkit.mjs.map +1 -1
- package/fesm2020/hmcts-ccd-case-ui-toolkit.mjs +102 -67
- package/fesm2020/hmcts-ccd-case-ui-toolkit.mjs.map +1 -1
- package/lib/components/banners/notification-banner/domain/notification-banner-config.model.d.ts +6 -5
- package/lib/components/banners/notification-banner/domain/notification-banner-config.model.d.ts.map +1 -1
- package/lib/shared/components/case-editor/case-edit-submit/case-edit-submit.component.d.ts.map +1 -1
- package/lib/shared/components/case-editor/services/work-allocation.service.d.ts +2 -2
- package/lib/shared/components/case-editor/services/work-allocation.service.d.ts.map +1 -1
- package/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.d.ts +4 -4
- package/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.d.ts.map +1 -1
- package/lib/shared/components/search-filters/search-filters.component.d.ts.map +1 -1
- package/lib/shared/domain/work-allocation/task-response.model.d.ts +1 -1
- package/lib/shared/domain/work-allocation/task-response.model.d.ts.map +1 -1
- package/lib/shared/services/alert/alert.service.d.ts.map +1 -1
- 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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
899
|
+
function NotificationBannerComponent_div_0_a_14_Template(rf, ctx) { if (rf & 1) {
|
|
899
900
|
i0.ɵɵelementStart(0, "a", 14);
|
|
900
|
-
i0.ɵɵ
|
|
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(
|
|
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
|
|
909
|
-
const
|
|
910
|
-
i0.ɵɵ
|
|
911
|
-
i0.ɵɵ
|
|
912
|
-
i0.ɵɵ
|
|
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.ɵɵ
|
|
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(
|
|
924
|
-
i0.ɵɵelementContainerStart(
|
|
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(
|
|
931
|
-
i0.ɵɵ
|
|
932
|
-
i0.ɵɵtemplate(
|
|
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(
|
|
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(
|
|
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"], [
|
|
969
|
-
i0.ɵɵtemplate(0, NotificationBannerComponent_div_0_Template,
|
|
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 <
|
|
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
|
|
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
|
|
27389
|
-
i0.ɵɵ
|
|
27390
|
-
i0.ɵɵ
|
|
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(
|
|
27406
|
+
i0.ɵɵelement(10, "input", 44);
|
|
27393
27407
|
i0.ɵɵelementEnd();
|
|
27394
|
-
i0.ɵɵelementStart(
|
|
27395
|
-
i0.ɵɵtext(
|
|
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(
|
|
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,
|
|
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
|
-
|
|
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
|
|
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,
|
|
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.
|
|
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/
|
|
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 ===
|
|
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.
|
|
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.
|
|
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.
|
|
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
|
|
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.
|
|
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.
|
|
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
|
-
|
|
34045
|
-
|
|
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
|
-
|
|
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
|
}
|