@hmcts/rpx-xui-common-lib 2.0.28 → 2.0.29
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/esm2022/lib/components/service-message/service-message.component.mjs +25 -14
- package/esm2022/lib/components/service-messages/service-messages.component.mjs +104 -25
- package/esm2022/lib/models/service-message.model.mjs +2 -0
- package/fesm2022/hmcts-rpx-xui-common-lib.mjs +124 -35
- package/fesm2022/hmcts-rpx-xui-common-lib.mjs.map +1 -1
- package/lib/components/service-message/service-message.component.d.ts +7 -5
- package/lib/components/service-messages/service-messages.component.d.ts +10 -5
- package/lib/models/service-message.model.d.ts +8 -0
- package/package.json +1 -1
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/
|
|
4
|
-
import * as i2 from "
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "@angular/router";
|
|
5
|
+
import * as i3 from "rpx-xui-translation";
|
|
6
|
+
function ServiceMessageComponent_h2_8_Template(rf, ctx) { if (rf & 1) {
|
|
7
|
+
i0.ɵɵelement(0, "h2", 5);
|
|
8
|
+
} if (rf & 2) {
|
|
9
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
10
|
+
i0.ɵɵproperty("innerHTML", ctx_r0.message_cy, i0.ɵɵsanitizeHtml);
|
|
11
|
+
} }
|
|
5
12
|
export class ServiceMessageComponent {
|
|
6
13
|
constructor() {
|
|
7
14
|
this.hideMessage = new EventEmitter();
|
|
@@ -10,7 +17,7 @@ export class ServiceMessageComponent {
|
|
|
10
17
|
this.hideMessage.emit(key);
|
|
11
18
|
}
|
|
12
19
|
static { this.ɵfac = function ServiceMessageComponent_Factory(t) { return new (t || ServiceMessageComponent)(); }; }
|
|
13
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ServiceMessageComponent, selectors: [["xuilib-service-message"]], inputs: {
|
|
20
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ServiceMessageComponent, selectors: [["xuilib-service-message"]], inputs: { message_en: "message_en", message_cy: "message_cy", key: "key" }, outputs: { hideMessage: "hideMessage" }, decls: 12, vars: 8, consts: [[1, "hmcts-banner", "hmcts-banner--warning"], ["fill", "currentColor", "role", "presentation", "focusable", "false", "xmlns", "http://www.w3.org/2000/svg", "viewBox", "0 0 25 25", "height", "25", "width", "25", 1, "hmcts-banner__icon"], ["d", "M13.6,15.4h-2.3v-4.5h2.3V15.4z M13.6,19.8h-2.3v-2.2h2.3V19.8z M0,23.2h25L12.5,2L0,23.2z"], [1, "hmcts-banner__message"], [1, "hmcts-banner__assistive"], [1, "govuk-heading-s", 3, "innerHTML"], ["class", "govuk-heading-s", 3, "innerHTML", 4, "ngIf"], [1, "govuk-link--no-visited-state", 3, "click", "routerLink"]], template: function ServiceMessageComponent_Template(rf, ctx) { if (rf & 1) {
|
|
14
21
|
i0.ɵɵelementStart(0, "div", 0);
|
|
15
22
|
i0.ɵɵnamespaceSVG();
|
|
16
23
|
i0.ɵɵelementStart(1, "svg", 1);
|
|
@@ -22,30 +29,34 @@ export class ServiceMessageComponent {
|
|
|
22
29
|
i0.ɵɵpipe(6, "rpxTranslate");
|
|
23
30
|
i0.ɵɵelementEnd();
|
|
24
31
|
i0.ɵɵelement(7, "h2", 5);
|
|
25
|
-
i0.ɵɵ
|
|
26
|
-
i0.ɵɵelementStart(9, "a",
|
|
32
|
+
i0.ɵɵtemplate(8, ServiceMessageComponent_h2_8_Template, 1, 1, "h2", 6);
|
|
33
|
+
i0.ɵɵelementStart(9, "a", 7);
|
|
27
34
|
i0.ɵɵlistener("click", function ServiceMessageComponent_Template_a_click_9_listener() { return ctx.onHideMessageEvent(ctx.key); });
|
|
28
35
|
i0.ɵɵtext(10);
|
|
29
36
|
i0.ɵɵpipe(11, "rpxTranslate");
|
|
30
37
|
i0.ɵɵelementEnd()()();
|
|
31
38
|
} if (rf & 2) {
|
|
32
39
|
i0.ɵɵadvance(5);
|
|
33
|
-
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(6,
|
|
40
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(6, 4, "Warning"));
|
|
34
41
|
i0.ɵɵadvance(2);
|
|
35
|
-
i0.ɵɵproperty("innerHTML",
|
|
36
|
-
i0.ɵɵadvance(
|
|
37
|
-
i0.ɵɵ
|
|
38
|
-
|
|
42
|
+
i0.ɵɵproperty("innerHTML", ctx.message_en, i0.ɵɵsanitizeHtml);
|
|
43
|
+
i0.ɵɵadvance();
|
|
44
|
+
i0.ɵɵproperty("ngIf", ctx.message_cy);
|
|
45
|
+
i0.ɵɵadvance(2);
|
|
46
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(11, 6, "Hide message"));
|
|
47
|
+
} }, dependencies: [i1.NgIf, i2.RouterLink, i3.RpxTranslatePipe], styles: [".govuk-link--no-visited-state[_ngcontent-%COMP%]{cursor:pointer}"] }); }
|
|
39
48
|
}
|
|
40
49
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ServiceMessageComponent, [{
|
|
41
50
|
type: Component,
|
|
42
|
-
args: [{ selector: 'xuilib-service-message', template: "<div class=\"hmcts-banner hmcts-banner--warning\">\n\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=\"25\" width=\"25\">\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\" />\n </svg>\n\n <div class=\"hmcts-banner__message\">\n <span class=\"hmcts-banner__assistive\">{{'Warning' | rpxTranslate}}</span>\n <h2 class=\"govuk-heading-s\" [innerHTML]=\"
|
|
43
|
-
}], () => [], {
|
|
51
|
+
args: [{ selector: 'xuilib-service-message', template: "<div class=\"hmcts-banner hmcts-banner--warning\">\n\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=\"25\" width=\"25\">\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\" />\n </svg>\n\n <div class=\"hmcts-banner__message\">\n <span class=\"hmcts-banner__assistive\">{{'Warning' | rpxTranslate}}</span>\n <h2 class=\"govuk-heading-s\" [innerHTML]=\"message_en\"></h2>\n <h2 *ngIf=\"message_cy\" class=\"govuk-heading-s\" [innerHTML]=\"message_cy\"></h2>\n <a [routerLink]=\"\" class=\"govuk-link--no-visited-state\" (click)=\"onHideMessageEvent(key)\">{{'Hide message' | rpxTranslate}}</a>\n </div>\n\n</div>", styles: [".govuk-link--no-visited-state{cursor:pointer}\n"] }]
|
|
52
|
+
}], () => [], { message_en: [{
|
|
53
|
+
type: Input
|
|
54
|
+
}], message_cy: [{
|
|
44
55
|
type: Input
|
|
45
56
|
}], key: [{
|
|
46
57
|
type: Input
|
|
47
58
|
}], hideMessage: [{
|
|
48
59
|
type: Output
|
|
49
60
|
}] }); })();
|
|
50
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ServiceMessageComponent, { className: "ServiceMessageComponent", filePath: "lib/components/service-message/service-message.component.ts", lineNumber:
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
61
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ServiceMessageComponent, { className: "ServiceMessageComponent", filePath: "lib/components/service-message/service-message.component.ts", lineNumber: 9 }); })();
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1tZXNzYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V4dWktY29tbW9uLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvc2VydmljZS1tZXNzYWdlL3NlcnZpY2UtbWVzc2FnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9leHVpLWNvbW1vbi1saWIvc3JjL2xpYi9jb21wb25lbnRzL3NlcnZpY2UtbWVzc2FnZS9zZXJ2aWNlLW1lc3NhZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0lDVS9ELHdCQUE2RTs7O0lBQTlCLGdFQUF3Qjs7QURGL0UsTUFBTSxPQUFPLHVCQUF1QjtJQUtsQztRQURpQixnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFtQixDQUFDO0lBQ25ELENBQUM7SUFFVixrQkFBa0IsQ0FBQyxHQUFvQjtRQUM1QyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM3QixDQUFDO3dGQVRVLHVCQUF1QjtvRUFBdkIsdUJBQXVCO1lDUnBDLDhCQUFnRDs7WUFFNUMsOEJBQ2tGO1lBQzlFLDBCQUFvRztZQUN4RyxpQkFBTTs7WUFHRixBQURKLDhCQUFtQyxjQUNPO1lBQUEsWUFBNEI7O1lBQUEsaUJBQU87WUFDekUsd0JBQTBEO1lBQzFELHNFQUF3RTtZQUN4RSw0QkFBMEY7WUFBbEMsK0ZBQVMsK0JBQXVCLElBQUM7WUFBQyxhQUFpQzs7WUFHbkksQUFGSSxBQUQrSCxpQkFBSSxFQUM3SCxFQUVKOztZQU53QyxlQUE0QjtZQUE1QixxREFBNEI7WUFDdEMsZUFBd0I7WUFBeEIsNkRBQXdCO1lBQy9DLGNBQWdCO1lBQWhCLHFDQUFnQjtZQUNxRSxlQUFpQztZQUFqQywyREFBaUM7OztpRkRIdEgsdUJBQXVCO2NBTG5DLFNBQVM7MkJBQ0Usd0JBQXdCO29CQUtsQixVQUFVO2tCQUF6QixLQUFLO1lBQ1UsVUFBVTtrQkFBekIsS0FBSztZQUNVLEdBQUc7a0JBQWxCLEtBQUs7WUFDVyxXQUFXO2tCQUEzQixNQUFNOztrRkFKSSx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2VydmljZU1lc3NhZ2VzIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3NlcnZpY2UtbWVzc2FnZS5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3h1aWxpYi1zZXJ2aWNlLW1lc3NhZ2UnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VydmljZS1tZXNzYWdlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2VydmljZS1tZXNzYWdlLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgU2VydmljZU1lc3NhZ2VDb21wb25lbnQge1xuICBASW5wdXQoKSBwdWJsaWMgbWVzc2FnZV9lbjogc3RyaW5nO1xuICBASW5wdXQoKSBwdWJsaWMgbWVzc2FnZV9jeT86IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIGtleTogU2VydmljZU1lc3NhZ2VzO1xuICBAT3V0cHV0KCkgcHVibGljIGhpZGVNZXNzYWdlID0gbmV3IEV2ZW50RW1pdHRlcjxTZXJ2aWNlTWVzc2FnZXM+KCk7XG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgcHVibGljIG9uSGlkZU1lc3NhZ2VFdmVudChrZXk6IFNlcnZpY2VNZXNzYWdlcykge1xuICAgIHRoaXMuaGlkZU1lc3NhZ2UuZW1pdChrZXkpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiaG1jdHMtYmFubmVyIGhtY3RzLWJhbm5lci0td2FybmluZ1wiPlxuXG4gICAgPHN2ZyBjbGFzcz1cImhtY3RzLWJhbm5lcl9faWNvblwiIGZpbGw9XCJjdXJyZW50Q29sb3JcIiByb2xlPVwicHJlc2VudGF0aW9uXCIgZm9jdXNhYmxlPVwiZmFsc2VcIlxuICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNSAyNVwiIGhlaWdodD1cIjI1XCIgd2lkdGg9XCIyNVwiPlxuICAgICAgICA8cGF0aCBkPVwiTTEzLjYsMTUuNGgtMi4zdi00LjVoMi4zVjE1LjR6IE0xMy42LDE5LjhoLTIuM3YtMi4yaDIuM1YxOS44eiBNMCwyMy4yaDI1TDEyLjUsMkwwLDIzLjJ6XCIgLz5cbiAgICA8L3N2Zz5cblxuICAgIDxkaXYgY2xhc3M9XCJobWN0cy1iYW5uZXJfX21lc3NhZ2VcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJobWN0cy1iYW5uZXJfX2Fzc2lzdGl2ZVwiPnt7J1dhcm5pbmcnIHwgcnB4VHJhbnNsYXRlfX08L3NwYW4+XG4gICAgICAgIDxoMiBjbGFzcz1cImdvdnVrLWhlYWRpbmctc1wiIFtpbm5lckhUTUxdPVwibWVzc2FnZV9lblwiPjwvaDI+XG4gICAgICAgIDxoMiAqbmdJZj1cIm1lc3NhZ2VfY3lcIiBjbGFzcz1cImdvdnVrLWhlYWRpbmctc1wiIFtpbm5lckhUTUxdPVwibWVzc2FnZV9jeVwiPjwvaDI+XG4gICAgICAgIDxhIFtyb3V0ZXJMaW5rXT1cIlwiIGNsYXNzPVwiZ292dWstbGluay0tbm8tdmlzaXRlZC1zdGF0ZVwiIChjbGljayk9XCJvbkhpZGVNZXNzYWdlRXZlbnQoa2V5KVwiPnt7J0hpZGUgbWVzc2FnZScgfCBycHhUcmFuc2xhdGV9fTwvYT5cbiAgICA8L2Rpdj5cblxuPC9kaXY+Il19
|
|
@@ -5,30 +5,64 @@ import * as i1 from "../../services/feature-toggle/feature-toggle.service";
|
|
|
5
5
|
import * as i2 from "@angular/common";
|
|
6
6
|
import * as i3 from "../service-message/service-message.component";
|
|
7
7
|
import * as i4 from "rpx-xui-translation";
|
|
8
|
-
function
|
|
9
|
-
|
|
10
|
-
i0.ɵɵ
|
|
11
|
-
i0.ɵɵ
|
|
12
|
-
i0.ɵɵ
|
|
8
|
+
function ServiceMessagesComponent_div_0_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
9
|
+
i0.ɵɵelementStart(0, "div", 3);
|
|
10
|
+
i0.ɵɵnamespaceSVG();
|
|
11
|
+
i0.ɵɵelementStart(1, "svg", 4);
|
|
12
|
+
i0.ɵɵelement(2, "path", 5);
|
|
13
|
+
i0.ɵɵelementEnd();
|
|
14
|
+
i0.ɵɵnamespaceHTML();
|
|
15
|
+
i0.ɵɵelementStart(3, "div", 6)(4, "span", 7);
|
|
16
|
+
i0.ɵɵtext(5);
|
|
17
|
+
i0.ɵɵpipe(6, "rpxTranslate");
|
|
18
|
+
i0.ɵɵelementEnd();
|
|
19
|
+
i0.ɵɵelementStart(7, "h2", 8);
|
|
20
|
+
i0.ɵɵtext(8, "Error:");
|
|
13
21
|
i0.ɵɵelementEnd();
|
|
22
|
+
i0.ɵɵelement(9, "p", 9);
|
|
23
|
+
i0.ɵɵelementEnd()();
|
|
14
24
|
} if (rf & 2) {
|
|
15
|
-
const
|
|
16
|
-
i0.ɵɵ
|
|
25
|
+
const errMsg_r1 = ctx.$implicit;
|
|
26
|
+
i0.ɵɵadvance(5);
|
|
27
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(6, 2, "Warning"));
|
|
28
|
+
i0.ɵɵadvance(4);
|
|
29
|
+
i0.ɵɵproperty("innerHTML", errMsg_r1.message, i0.ɵɵsanitizeHtml);
|
|
17
30
|
} }
|
|
18
31
|
function ServiceMessagesComponent_div_0_Template(rf, ctx) { if (rf & 1) {
|
|
19
32
|
i0.ɵɵelementStart(0, "div", 1);
|
|
20
|
-
i0.ɵɵtemplate(1,
|
|
21
|
-
i0.ɵɵ
|
|
33
|
+
i0.ɵɵtemplate(1, ServiceMessagesComponent_div_0_div_1_Template, 10, 4, "div", 2);
|
|
34
|
+
i0.ɵɵelementEnd();
|
|
35
|
+
} if (rf & 2) {
|
|
36
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
37
|
+
i0.ɵɵadvance();
|
|
38
|
+
i0.ɵɵproperty("ngForOf", ctx_r1.bannerErrorMsgs);
|
|
39
|
+
} }
|
|
40
|
+
function ServiceMessagesComponent_div_1_xuilib_service_message_1_Template(rf, ctx) { if (rf & 1) {
|
|
41
|
+
const _r3 = i0.ɵɵgetCurrentView();
|
|
42
|
+
i0.ɵɵelementStart(0, "xuilib-service-message", 11);
|
|
43
|
+
i0.ɵɵpipe(1, "rpxTranslate");
|
|
44
|
+
i0.ɵɵpipe(2, "rpxTranslate");
|
|
45
|
+
i0.ɵɵlistener("hideMessage", function ServiceMessagesComponent_div_1_xuilib_service_message_1_Template_xuilib_service_message_hideMessage_0_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.hideMessage($event)); });
|
|
46
|
+
i0.ɵɵelementEnd();
|
|
47
|
+
} if (rf & 2) {
|
|
48
|
+
const message_r4 = ctx.$implicit;
|
|
49
|
+
i0.ɵɵproperty("key", message_r4)("message_en", i0.ɵɵpipeBind1(1, 3, message_r4 == null ? null : message_r4.message_en))("message_cy", i0.ɵɵpipeBind1(2, 5, message_r4 == null ? null : message_r4.message_cy));
|
|
50
|
+
} }
|
|
51
|
+
function ServiceMessagesComponent_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
52
|
+
i0.ɵɵelementStart(0, "div", 1);
|
|
53
|
+
i0.ɵɵtemplate(1, ServiceMessagesComponent_div_1_xuilib_service_message_1_Template, 3, 7, "xuilib-service-message", 10);
|
|
22
54
|
i0.ɵɵelementEnd();
|
|
23
55
|
} if (rf & 2) {
|
|
24
56
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
25
57
|
i0.ɵɵadvance();
|
|
26
|
-
i0.ɵɵproperty("ngForOf",
|
|
58
|
+
i0.ɵɵproperty("ngForOf", ctx_r1.filteredMessages);
|
|
27
59
|
} }
|
|
28
60
|
export class ServiceMessagesComponent {
|
|
29
61
|
constructor(featureToggleService) {
|
|
30
62
|
this.featureToggleService = featureToggleService;
|
|
31
|
-
this.filteredMessages =
|
|
63
|
+
this.filteredMessages = [];
|
|
64
|
+
this.bannerErrorMsgs = [];
|
|
65
|
+
this.originalMessages = [];
|
|
32
66
|
}
|
|
33
67
|
ngOnInit() {
|
|
34
68
|
this.getServiceMessages();
|
|
@@ -36,6 +70,7 @@ export class ServiceMessagesComponent {
|
|
|
36
70
|
getServiceMessages() {
|
|
37
71
|
this.featureToggleService.getValue(this.featureToggleKey, null)
|
|
38
72
|
.subscribe(messages => {
|
|
73
|
+
this.originalMessages = messages;
|
|
39
74
|
if (!!messages) {
|
|
40
75
|
this.createFilteredMessages(messages);
|
|
41
76
|
}
|
|
@@ -43,28 +78,72 @@ export class ServiceMessagesComponent {
|
|
|
43
78
|
}
|
|
44
79
|
createFilteredMessages(messages) {
|
|
45
80
|
this.hiddenBanners = JSON.parse(window.sessionStorage.getItem(this.serviceMessageCookie)) || [];
|
|
46
|
-
|
|
47
|
-
const regEx = new RegExp(key);
|
|
48
|
-
if (this.userRoles.some(e => regEx.test(e))
|
|
49
|
-
this.filteredMessages.
|
|
81
|
+
messages.forEach(key => {
|
|
82
|
+
const regEx = new RegExp(key.roles);
|
|
83
|
+
if (this.userRoles.some(e => regEx.test(e))) {
|
|
84
|
+
this.filteredMessages = messages.filter(msg => !this.hiddenBanners.includes(msg.message_en)
|
|
85
|
+
&& this.compareDates(msg));
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
compareDates(msg) {
|
|
90
|
+
let currentDateTime = new Date();
|
|
91
|
+
let beginDate = null;
|
|
92
|
+
let endDate = null;
|
|
93
|
+
this.bannerErrorMsgs = [];
|
|
94
|
+
// Parse beginDate if msg.begin is present and valid
|
|
95
|
+
if (msg.begin && !isNaN(Date.parse(msg.begin))) {
|
|
96
|
+
beginDate = new Date(msg.begin);
|
|
97
|
+
}
|
|
98
|
+
if (msg.end && !isNaN(Date.parse(msg.end))) {
|
|
99
|
+
endDate = new Date(msg.end);
|
|
100
|
+
}
|
|
101
|
+
this.originalMessages.forEach(msg => {
|
|
102
|
+
// Only check for errors if both beginDate and endDate are present and valid
|
|
103
|
+
if ((msg.begin && !isNaN(Date.parse(msg.end))) && (msg.end && !isNaN(Date.parse(msg.end))) && new Date(msg.begin) > new Date(msg.end)) {
|
|
104
|
+
this.isBannerError = true;
|
|
105
|
+
this.bannerErrorMsgs.push({
|
|
106
|
+
message: `The start date is greater than the end date. Message index: ${msg.index}`,
|
|
107
|
+
index: msg.index
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
// Check for invalid beginDate or endDate separately, if they are present
|
|
111
|
+
if (msg.begin && isNaN(Date.parse(msg.begin))) {
|
|
112
|
+
this.isBannerError = true;
|
|
113
|
+
this.bannerErrorMsgs.push({
|
|
114
|
+
message: `Invalid start date. Message index: ${msg.index}`,
|
|
115
|
+
index: msg.index
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
if (msg.end && isNaN(Date.parse(msg.end))) {
|
|
119
|
+
this.isBannerError = true;
|
|
120
|
+
this.bannerErrorMsgs.push({
|
|
121
|
+
message: `Invalid end date. Message index: ${msg.index}`,
|
|
122
|
+
index: msg.index
|
|
123
|
+
});
|
|
50
124
|
}
|
|
51
125
|
});
|
|
126
|
+
const beginDateOK = !msg.begin || (beginDate && beginDate < currentDateTime);
|
|
127
|
+
const endDateOK = !msg.end || (endDate && endDate >= currentDateTime);
|
|
128
|
+
return beginDateOK && endDateOK;
|
|
52
129
|
}
|
|
53
|
-
hideMessage(
|
|
54
|
-
this.filteredMessages.
|
|
55
|
-
this.hiddenBanners.push(
|
|
130
|
+
hideMessage(msg) {
|
|
131
|
+
this.filteredMessages = this.filteredMessages.filter(f => f.index !== msg.index);
|
|
132
|
+
this.hiddenBanners.push(msg.message_en);
|
|
56
133
|
window.sessionStorage.setItem(this.serviceMessageCookie, JSON.stringify(this.hiddenBanners));
|
|
57
134
|
}
|
|
58
135
|
static { this.ɵfac = function ServiceMessagesComponent_Factory(t) { return new (t || ServiceMessagesComponent)(i0.ɵɵdirectiveInject(i1.FeatureToggleService)); }; }
|
|
59
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ServiceMessagesComponent, selectors: [["xuilib-service-messages"]], inputs: { userRoles: "userRoles", featureToggleKey: "featureToggleKey", serviceMessageCookie: "serviceMessageCookie" }, decls:
|
|
60
|
-
i0.ɵɵtemplate(0, ServiceMessagesComponent_div_0_Template,
|
|
136
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ServiceMessagesComponent, selectors: [["xuilib-service-messages"]], inputs: { userRoles: "userRoles", featureToggleKey: "featureToggleKey", serviceMessageCookie: "serviceMessageCookie" }, decls: 2, vars: 2, consts: [["class", "govuk-width-container govuk-!-margin-top-6", 4, "ngIf"], [1, "govuk-width-container", "govuk-!-margin-top-6"], ["class", "hmcts-banner hmcts-banner--warning", 4, "ngFor", "ngForOf"], [1, "hmcts-banner", "hmcts-banner--warning"], ["fill", "currentColor", "role", "presentation", "focusable", "false", "xmlns", "http://www.w3.org/2000/svg", "viewBox", "0 0 25 25", "height", "25", "width", "25", 1, "hmcts-banner__icon"], ["d", "M13.6,15.4h-2.3v-4.5h2.3V15.4z M13.6,19.8h-2.3v-2.2h2.3V19.8z M0,23.2h25L12.5,2L0,23.2z"], [1, "hmcts-banner__message"], [1, "hmcts-banner__assistive"], [1, "govuk-heading-s"], [3, "innerHTML"], [3, "key", "message_en", "message_cy", "hideMessage", 4, "ngFor", "ngForOf"], [3, "hideMessage", "key", "message_en", "message_cy"]], template: function ServiceMessagesComponent_Template(rf, ctx) { if (rf & 1) {
|
|
137
|
+
i0.ɵɵtemplate(0, ServiceMessagesComponent_div_0_Template, 2, 1, "div", 0)(1, ServiceMessagesComponent_div_1_Template, 2, 1, "div", 0);
|
|
61
138
|
} if (rf & 2) {
|
|
62
|
-
i0.ɵɵproperty("ngIf",
|
|
63
|
-
|
|
139
|
+
i0.ɵɵproperty("ngIf", ctx.isBannerError);
|
|
140
|
+
i0.ɵɵadvance();
|
|
141
|
+
i0.ɵɵproperty("ngIf", (ctx.filteredMessages == null ? null : ctx.filteredMessages.length) > 0);
|
|
142
|
+
} }, dependencies: [i2.NgForOf, i2.NgIf, i3.ServiceMessageComponent, i4.RpxTranslatePipe], encapsulation: 2 }); }
|
|
64
143
|
}
|
|
65
144
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ServiceMessagesComponent, [{
|
|
66
145
|
type: Component,
|
|
67
|
-
args: [{ selector: 'xuilib-service-messages', template: "<div *ngIf=\"filteredMessages?.
|
|
146
|
+
args: [{ selector: 'xuilib-service-messages', template: "<div *ngIf=\"isBannerError\" class=\"govuk-width-container govuk-!-margin-top-6\">\n <div class=\"hmcts-banner hmcts-banner--warning\" *ngFor=\"let errMsg of bannerErrorMsgs\">\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=\"25\" width=\"25\">\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\" />\n </svg>\n <div class=\"hmcts-banner__message\">\n <span class=\"hmcts-banner__assistive\">{{'Warning' | rpxTranslate}}</span>\n <h2 class=\"govuk-heading-s\">Error:</h2>\n <p [innerHTML]=\"errMsg.message\"></p>\n </div>\n </div>\n</div>\n<div *ngIf=\"filteredMessages?.length > 0\" class=\"govuk-width-container govuk-!-margin-top-6\">\n <xuilib-service-message *ngFor=\"let message of filteredMessages\" [key]=\"message\"\n [message_en]=\"message?.message_en | rpxTranslate\" \n [message_cy]=\"message?.message_cy | rpxTranslate\"\n (hideMessage)=\"hideMessage($event)\">\n </xuilib-service-message>\n</div>" }]
|
|
68
147
|
}], () => [{ type: i1.FeatureToggleService }], { userRoles: [{
|
|
69
148
|
type: Input
|
|
70
149
|
}], featureToggleKey: [{
|
|
@@ -72,5 +151,5 @@ export class ServiceMessagesComponent {
|
|
|
72
151
|
}], serviceMessageCookie: [{
|
|
73
152
|
type: Input
|
|
74
153
|
}] }); })();
|
|
75
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ServiceMessagesComponent, { className: "ServiceMessagesComponent", filePath: "lib/components/service-messages/service-messages.component.ts", lineNumber:
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1tZXNzYWdlcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9leHVpLWNvbW1vbi1saWIvc3JjL2xpYi9jb21wb25lbnRzL3NlcnZpY2UtbWVzc2FnZXMvc2VydmljZS1tZXNzYWdlcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9leHVpLWNvbW1vbi1saWIvc3JjL2xpYi9jb21wb25lbnRzL3NlcnZpY2UtbWVzc2FnZXMvc2VydmljZS1tZXNzYWdlcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzREFBc0QsQ0FBQzs7Ozs7Ozs7SUNBeEYsaURBQ2lGOztJQUFwQyxnUEFBZSwwQkFBbUIsS0FBQztJQUFDLGlCQUF5Qjs7O0lBQXRHLEFBRHdFLG9DQUFtQixtREFDbkQ7OztJQUZoRCw4QkFBMkY7SUFDdkYscUhBQ2lGOztJQUNyRixpQkFBTTs7O0lBRjBDLGNBQThCO0lBQTlCLHVFQUE4Qjs7QURVOUUsTUFBTSxPQUFPLHdCQUF3QjtJQVFuQyxZQUE2QixvQkFBMEM7UUFBMUMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQU5oRSxxQkFBZ0IsR0FBRyxJQUFJLEdBQUcsRUFBa0IsQ0FBQztJQU11QixDQUFDO0lBRXJFLFFBQVE7UUFDYixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRU0sa0JBQWtCO1FBQ3ZCLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLENBQWtCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUM7YUFDN0UsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ3BCLElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNmLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN4QyxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8sc0JBQXNCLENBQUMsUUFBeUI7UUFDdEQsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2hHLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ2xDLE1BQU0sS0FBSyxHQUFHLElBQUksTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzlCLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDdEYsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDaEQsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLFdBQVcsQ0FBQyxHQUFXO1FBQzVCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDN0IsTUFBTSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7SUFDL0YsQ0FBQzt5RkFyQ1Usd0JBQXdCO29FQUF4Qix3QkFBd0I7WUNYckMseUVBQTJGOztZQUFyRiw0RkFBZ0M7OztpRkRXekIsd0JBQXdCO2NBSnBDLFNBQVM7MkJBQ0UseUJBQXlCO3FEQU9uQixTQUFTO2tCQUF4QixLQUFLO1lBQ1UsZ0JBQWdCO2tCQUEvQixLQUFLO1lBQ1Usb0JBQW9CO2tCQUFuQyxLQUFLOztrRkFOSyx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZlYXR1cmVUb2dnbGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZmVhdHVyZS10b2dnbGUvZmVhdHVyZS10b2dnbGUuc2VydmljZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VydmljZU1lc3NhZ2VzIHtcbiAgW2tleTogc3RyaW5nXTogc3RyaW5nO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd4dWlsaWItc2VydmljZS1tZXNzYWdlcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9zZXJ2aWNlLW1lc3NhZ2VzLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBTZXJ2aWNlTWVzc2FnZXNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBwdWJsaWMgaGlkZGVuQmFubmVyczogc3RyaW5nW107XG4gIHB1YmxpYyBmaWx0ZXJlZE1lc3NhZ2VzID0gbmV3IE1hcDxzdHJpbmcsIHN0cmluZz4oKTtcblxuICBASW5wdXQoKSBwdWJsaWMgdXNlclJvbGVzOiBzdHJpbmdbXTtcbiAgQElucHV0KCkgcHVibGljIGZlYXR1cmVUb2dnbGVLZXk6IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIHNlcnZpY2VNZXNzYWdlQ29va2llOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBmZWF0dXJlVG9nZ2xlU2VydmljZTogRmVhdHVyZVRvZ2dsZVNlcnZpY2UpIHsgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmdldFNlcnZpY2VNZXNzYWdlcygpO1xuICB9XG5cbiAgcHVibGljIGdldFNlcnZpY2VNZXNzYWdlcygpOiB2b2lkIHtcbiAgICB0aGlzLmZlYXR1cmVUb2dnbGVTZXJ2aWNlLmdldFZhbHVlPFNlcnZpY2VNZXNzYWdlcz4odGhpcy5mZWF0dXJlVG9nZ2xlS2V5LCBudWxsKVxuICAgICAgLnN1YnNjcmliZShtZXNzYWdlcyA9PiB7XG4gICAgICAgIGlmICghIW1lc3NhZ2VzKSB7XG4gICAgICAgICAgdGhpcy5jcmVhdGVGaWx0ZXJlZE1lc3NhZ2VzKG1lc3NhZ2VzKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUZpbHRlcmVkTWVzc2FnZXMobWVzc2FnZXM6IFNlcnZpY2VNZXNzYWdlcyk6IHZvaWQge1xuICAgIHRoaXMuaGlkZGVuQmFubmVycyA9IEpTT04ucGFyc2Uod2luZG93LnNlc3Npb25TdG9yYWdlLmdldEl0ZW0odGhpcy5zZXJ2aWNlTWVzc2FnZUNvb2tpZSkpIHx8IFtdO1xuICAgIE9iamVjdC5rZXlzKG1lc3NhZ2VzKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICBjb25zdCByZWdFeCA9IG5ldyBSZWdFeHAoa2V5KTtcbiAgICAgIGlmICh0aGlzLnVzZXJSb2xlcy5zb21lKGUgPT4gcmVnRXgudGVzdChlKSkgJiYgdGhpcy5oaWRkZW5CYW5uZXJzLmluZGV4T2Yoa2V5KSA9PT0gLTEpIHtcbiAgICAgICAgdGhpcy5maWx0ZXJlZE1lc3NhZ2VzLnNldChrZXksIG1lc3NhZ2VzW2tleV0pO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGhpZGVNZXNzYWdlKGtleTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5maWx0ZXJlZE1lc3NhZ2VzLmRlbGV0ZShrZXkpO1xuICAgIHRoaXMuaGlkZGVuQmFubmVycy5wdXNoKGtleSk7XG4gICAgd2luZG93LnNlc3Npb25TdG9yYWdlLnNldEl0ZW0odGhpcy5zZXJ2aWNlTWVzc2FnZUNvb2tpZSwgSlNPTi5zdHJpbmdpZnkodGhpcy5oaWRkZW5CYW5uZXJzKSk7XG4gIH1cbn1cbiIsIjxkaXYgKm5nSWY9XCJmaWx0ZXJlZE1lc3NhZ2VzPy5zaXplID4gMFwiIGNsYXNzPVwiZ292dWstd2lkdGgtY29udGFpbmVyIGdvdnVrLSEtbWFyZ2luLXRvcC02XCI+XG4gICAgPHh1aWxpYi1zZXJ2aWNlLW1lc3NhZ2UgKm5nRm9yPVwibGV0IG1lc3NhZ2Ugb2YgZmlsdGVyZWRNZXNzYWdlcyB8IGtleXZhbHVlXCIgW2tleV09XCJtZXNzYWdlLmtleVwiXG4gICAgICAgIFttZXNzYWdlXT1cIm1lc3NhZ2UudmFsdWUgfCBycHhUcmFuc2xhdGVcIiAoaGlkZU1lc3NhZ2UpPVwiaGlkZU1lc3NhZ2UoJGV2ZW50KVwiPjwveHVpbGliLXNlcnZpY2UtbWVzc2FnZT5cbjwvZGl2PiJdfQ==
|
|
154
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ServiceMessagesComponent, { className: "ServiceMessagesComponent", filePath: "lib/components/service-messages/service-messages.component.ts", lineNumber: 10 }); })();
|
|
155
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1tZXNzYWdlcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9leHVpLWNvbW1vbi1saWIvc3JjL2xpYi9jb21wb25lbnRzL3NlcnZpY2UtbWVzc2FnZXMvc2VydmljZS1tZXNzYWdlcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9leHVpLWNvbW1vbi1saWIvc3JjL2xpYi9jb21wb25lbnRzL3NlcnZpY2UtbWVzc2FnZXMvc2VydmljZS1tZXNzYWdlcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzREFBc0QsQ0FBQzs7Ozs7OztJQ0F4Riw4QkFBdUY7O0lBQ25GLDhCQUM4RTtJQUM5RSwwQkFBb0c7SUFDeEcsaUJBQU07O0lBRUUsQUFESiw4QkFBbUMsY0FDTztJQUFBLFlBQTRCOztJQUFBLGlCQUFPO0lBQ3pFLDZCQUE0QjtJQUFBLHNCQUFNO0lBQUEsaUJBQUs7SUFDdkMsdUJBQW9DO0lBRTVDLEFBREksaUJBQU0sRUFDSjs7O0lBSndDLGVBQTRCO0lBQTVCLHFEQUE0QjtJQUUvRCxlQUE0QjtJQUE1QixnRUFBNEI7OztJQVQzQyw4QkFBOEU7SUFDMUUsZ0ZBQXVGO0lBVzNGLGlCQUFNOzs7SUFYaUUsY0FBa0I7SUFBbEIsZ0RBQWtCOzs7O0lBYXJGLGtEQUd3Qzs7O0lBQXBDLGdQQUFlLDBCQUFtQixLQUFDO0lBQ3ZDLGlCQUF5Qjs7O0lBRnJCLEFBREEsQUFENkQsZ0NBQWUsdUZBQzNCLHVGQUNBOzs7SUFIekQsOEJBQTZGO0lBQ3pGLHNIQUd3QztJQUU1QyxpQkFBTTs7O0lBTDBDLGNBQW1CO0lBQW5CLGlEQUFtQjs7QURMbkUsTUFBTSxPQUFPLHdCQUF3QjtJ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QUFTLElBQUksU0FBUyxHQUFHLGVBQWUsQ0FBQyxDQUFDO1FBQzdFLE1BQU0sU0FBUyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxPQUFPLElBQUksZUFBZSxDQUFDLENBQUM7UUFFdEUsT0FBTyxXQUFXLElBQUksU0FBUyxDQUFDO0lBQ2xDLENBQUM7SUFFTSxXQUFXLENBQUMsR0FBb0I7UUFDckMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxLQUFLLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUNoRixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDeEMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7SUFDL0YsQ0FBQzt5RkExRlUsd0JBQXdCO29FQUF4Qix3QkFBd0I7WUNJckMsQUFiQSx5RUFBOEUsNERBYWU7O1lBYnZGLHdDQUFtQjtZQWFuQixjQUFrQztZQUFsQyw4RkFBa0M7OztpRkRKM0Isd0JBQXdCO2NBSnBDLFNBQVM7MkJBQ0UseUJBQXlCO3FEQVVuQixTQUFTO2tCQUF4QixLQUFLO1lBQ1UsZ0JBQWdCO2tCQUEvQixLQUFLO1lBQ1Usb0JBQW9CO2tCQUFuQyxLQUFLOztrRkFUSyx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZlYXR1cmVUb2dnbGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZmVhdHVyZS10b2dnbGUvZmVhdHVyZS10b2dnbGUuc2VydmljZSc7XG5pbXBvcnQgeyBTZXJ2aWNlTWVzc2FnZXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvc2VydmljZS1tZXNzYWdlLm1vZGVsJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd4dWlsaWItc2VydmljZS1tZXNzYWdlcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9zZXJ2aWNlLW1lc3NhZ2VzLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBTZXJ2aWNlTWVzc2FnZXNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBwdWJsaWMgaGlkZGVuQmFubmVyczogc3RyaW5nW107XG4gIHB1YmxpYyBmaWx0ZXJlZE1lc3NhZ2VzOiBTZXJ2aWNlTWVzc2FnZXNbXSA9IFtdO1xuICBwdWJsaWMgaXNCYW5uZXJFcnJvcjogYm9vbGVhbjtcbiAgcHVibGljIGJhbm5lckVycm9yTXNnczogeyBtZXNzYWdlOiBzdHJpbmcsIGluZGV4OiBudW1iZXIgfVtdID0gW107XG4gIHB1YmxpYyBvcmlnaW5hbE1lc3NhZ2VzOiBTZXJ2aWNlTWVzc2FnZXNbXSA9IFtdO1xuXG4gIEBJbnB1dCgpIHB1YmxpYyB1c2VyUm9sZXM6IHN0cmluZ1tdO1xuICBASW5wdXQoKSBwdWJsaWMgZmVhdHVyZVRvZ2dsZUtleTogc3RyaW5nO1xuICBASW5wdXQoKSBwdWJsaWMgc2VydmljZU1lc3NhZ2VDb29raWU6IHN0cmluZztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGZlYXR1cmVUb2dnbGVTZXJ2aWNlOiBGZWF0dXJlVG9nZ2xlU2VydmljZSkgeyB9XG5cbiAgcHVibGljIG5nT25Jbml0KCkge1xuICAgIHRoaXMuZ2V0U2VydmljZU1lc3NhZ2VzKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0U2VydmljZU1lc3NhZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuZmVhdHVyZVRvZ2dsZVNlcnZpY2UuZ2V0VmFsdWU8U2VydmljZU1lc3NhZ2VzW10+KHRoaXMuZmVhdHVyZVRvZ2dsZUtleSwgbnVsbClcbiAgICAgIC5zdWJzY3JpYmUobWVzc2FnZXMgPT4ge1xuICAgICAgICB0aGlzLm9yaWdpbmFsTWVzc2FnZXMgPSBtZXNzYWdlcztcbiAgICAgICAgaWYgKCEhbWVzc2FnZXMpIHtcbiAgICAgICAgICB0aGlzLmNyZWF0ZUZpbHRlcmVkTWVzc2FnZXMobWVzc2FnZXMpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlRmlsdGVyZWRNZXNzYWdlcyhtZXNzYWdlczogU2VydmljZU1lc3NhZ2VzW10pOiB2b2lkIHtcbiAgICB0aGlzLmhpZGRlbkJhbm5lcnMgPSBKU09OLnBhcnNlKHdpbmRvdy5zZXNzaW9uU3RvcmFnZS5nZXRJdGVtKHRoaXMuc2VydmljZU1lc3NhZ2VDb29raWUpKSB8fCBbXTtcblxuICAgIG1lc3NhZ2VzLmZvckVhY2goa2V5ID0+IHtcbiAgICAgIGNvbnN0IHJlZ0V4ID0gbmV3IFJlZ0V4cChrZXkucm9sZXMpO1xuICAgICAgaWYgKHRoaXMudXNlclJvbGVzLnNvbWUoZSA9PiByZWdFeC50ZXN0KGUpKSkge1xuICAgICAgICB0aGlzLmZpbHRlcmVkTWVzc2FnZXMgPSBtZXNzYWdlcy5maWx0ZXIobXNnID0+ICF0aGlzLmhpZGRlbkJhbm5lcnMuaW5jbHVkZXMobXNnLm1lc3NhZ2VfZW4pXG4gICAgICAgICAgJiYgdGhpcy5jb21wYXJlRGF0ZXMobXNnKSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGNvbXBhcmVEYXRlcyhtc2c6IFNlcnZpY2VNZXNzYWdlcyk6IGJvb2xlYW4ge1xuICAgIGxldCBjdXJyZW50RGF0ZVRpbWUgPSBuZXcgRGF0ZSgpO1xuICAgIGxldCBiZWdpbkRhdGU6IERhdGUgfCBudWxsID0gbnVsbDtcbiAgICBsZXQgZW5kRGF0ZTogRGF0ZSB8IG51bGwgPSBudWxsO1xuICAgIHRoaXMuYmFubmVyRXJyb3JNc2dzID0gW107XG5cbiAgICAvLyBQYXJzZSBiZWdpbkRhdGUgaWYgbXNnLmJlZ2luIGlzIHByZXNlbnQgYW5kIHZhbGlkXG4gICAgaWYgKG1zZy5iZWdpbiAmJiAhaXNOYU4oRGF0ZS5wYXJzZShtc2cuYmVnaW4pKSkge1xuICAgICAgYmVnaW5EYXRlID0gbmV3IERhdGUobXNnLmJlZ2luKTtcbiAgICB9XG5cbiAgICBpZiAobXNnLmVuZCAmJiAhaXNOYU4oRGF0ZS5wYXJzZShtc2cuZW5kKSkpIHtcbiAgICAgIGVuZERhdGUgPSBuZXcgRGF0ZShtc2cuZW5kKTtcbiAgICB9XG4gICAgdGhpcy5vcmlnaW5hbE1lc3NhZ2VzLmZvckVhY2gobXNnID0+IHtcbiAgICAgIC8vIE9ubHkgY2hlY2sgZm9yIGVycm9ycyBpZiBib3RoIGJlZ2luRGF0ZSBhbmQgZW5kRGF0ZSBhcmUgcHJlc2VudCBhbmQgdmFsaWRcbiAgICAgIGlmICgobXNnLmJlZ2luICYmICFpc05hTihEYXRlLnBhcnNlKG1zZy5lbmQpKSkgJiYgKG1zZy5lbmQgJiYgIWlzTmFOKERhdGUucGFyc2UobXNnLmVuZCkpKSAmJiBuZXcgRGF0ZShtc2cuYmVnaW4pID4gbmV3IERhdGUobXNnLmVuZCkpIHtcbiAgICAgICAgdGhpcy5pc0Jhbm5lckVycm9yID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5iYW5uZXJFcnJvck1zZ3MucHVzaCh7XG4gICAgICAgICAgbWVzc2FnZTogYFRoZSBzdGFydCBkYXRlIGlzIGdyZWF0ZXIgdGhhbiB0aGUgZW5kIGRhdGUuIE1lc3NhZ2UgaW5kZXg6ICR7bXNnLmluZGV4fWAsXG4gICAgICAgICAgaW5kZXg6IG1zZy5pbmRleFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLy8gQ2hlY2sgZm9yIGludmFsaWQgYmVnaW5EYXRlIG9yIGVuZERhdGUgc2VwYXJhdGVseSwgaWYgdGhleSBhcmUgcHJlc2VudFxuICAgICAgaWYgKG1zZy5iZWdpbiAmJiBpc05hTihEYXRlLnBhcnNlKG1zZy5iZWdpbikpKSB7XG4gICAgICAgIHRoaXMuaXNCYW5uZXJFcnJvciA9IHRydWU7XG4gICAgICAgIHRoaXMuYmFubmVyRXJyb3JNc2dzLnB1c2goe1xuICAgICAgICAgIG1lc3NhZ2U6IGBJbnZhbGlkIHN0YXJ0IGRhdGUuIE1lc3NhZ2UgaW5kZXg6ICR7bXNnLmluZGV4fWAsXG4gICAgICAgICAgaW5kZXg6IG1zZy5pbmRleFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIGlmIChtc2cuZW5kICYmIGlzTmFOKERhdGUucGFyc2UobXNnLmVuZCkpKSB7XG4gICAgICAgIHRoaXMuaXNCYW5uZXJFcnJvciA9IHRydWU7XG4gICAgICAgIHRoaXMuYmFubmVyRXJyb3JNc2dzLnB1c2goe1xuICAgICAgICAgIG1lc3NhZ2U6IGBJbnZhbGlkIGVuZCBkYXRlLiBNZXNzYWdlIGluZGV4OiAke21zZy5pbmRleH1gLFxuICAgICAgICAgIGluZGV4OiBtc2cuaW5kZXhcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBjb25zdCBiZWdpbkRhdGVPSyA9ICFtc2cuYmVnaW4gfHwgKGJlZ2luRGF0ZSAmJiBiZWdpbkRhdGUgPCBjdXJyZW50RGF0ZVRpbWUpO1xuICAgIGNvbnN0IGVuZERhdGVPSyA9ICFtc2cuZW5kIHx8IChlbmREYXRlICYmIGVuZERhdGUgPj0gY3VycmVudERhdGVUaW1lKTtcblxuICAgIHJldHVybiBiZWdpbkRhdGVPSyAmJiBlbmREYXRlT0s7XG4gIH1cblxuICBwdWJsaWMgaGlkZU1lc3NhZ2UobXNnOiBTZXJ2aWNlTWVzc2FnZXMpOiB2b2lkIHtcbiAgICB0aGlzLmZpbHRlcmVkTWVzc2FnZXMgPSB0aGlzLmZpbHRlcmVkTWVzc2FnZXMuZmlsdGVyKGYgPT4gZi5pbmRleCAhPT0gbXNnLmluZGV4KVxuICAgIHRoaXMuaGlkZGVuQmFubmVycy5wdXNoKG1zZy5tZXNzYWdlX2VuKTtcbiAgICB3aW5kb3cuc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbSh0aGlzLnNlcnZpY2VNZXNzYWdlQ29va2llLCBKU09OLnN0cmluZ2lmeSh0aGlzLmhpZGRlbkJhbm5lcnMpKTtcbiAgfVxufVxuIiwiPGRpdiAqbmdJZj1cImlzQmFubmVyRXJyb3JcIiBjbGFzcz1cImdvdnVrLXdpZHRoLWNvbnRhaW5lciBnb3Z1ay0hLW1hcmdpbi10b3AtNlwiPlxuICAgIDxkaXYgY2xhc3M9XCJobWN0cy1iYW5uZXIgaG1jdHMtYmFubmVyLS13YXJuaW5nXCIgKm5nRm9yPVwibGV0IGVyck1zZyBvZiBiYW5uZXJFcnJvck1zZ3NcIj5cbiAgICAgICAgPHN2ZyBjbGFzcz1cImhtY3RzLWJhbm5lcl9faWNvblwiIGZpbGw9XCJjdXJyZW50Q29sb3JcIiByb2xlPVwicHJlc2VudGF0aW9uXCIgZm9jdXNhYmxlPVwiZmFsc2VcIlxuICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNSAyNVwiIGhlaWdodD1cIjI1XCIgd2lkdGg9XCIyNVwiPlxuICAgICAgICA8cGF0aCBkPVwiTTEzLjYsMTUuNGgtMi4zdi00LjVoMi4zVjE1LjR6IE0xMy42LDE5LjhoLTIuM3YtMi4yaDIuM1YxOS44eiBNMCwyMy4yaDI1TDEyLjUsMkwwLDIzLjJ6XCIgLz5cbiAgICA8L3N2Zz5cbiAgICAgICAgPGRpdiBjbGFzcz1cImhtY3RzLWJhbm5lcl9fbWVzc2FnZVwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJobWN0cy1iYW5uZXJfX2Fzc2lzdGl2ZVwiPnt7J1dhcm5pbmcnIHwgcnB4VHJhbnNsYXRlfX08L3NwYW4+XG4gICAgICAgICAgICA8aDIgY2xhc3M9XCJnb3Z1ay1oZWFkaW5nLXNcIj5FcnJvcjo8L2gyPlxuICAgICAgICAgICAgPHAgW2lubmVySFRNTF09XCJlcnJNc2cubWVzc2FnZVwiPjwvcD5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgKm5nSWY9XCJmaWx0ZXJlZE1lc3NhZ2VzPy5sZW5ndGggPiAwXCIgY2xhc3M9XCJnb3Z1ay13aWR0aC1jb250YWluZXIgZ292dWstIS1tYXJnaW4tdG9wLTZcIj5cbiAgICA8eHVpbGliLXNlcnZpY2UtbWVzc2FnZSAqbmdGb3I9XCJsZXQgbWVzc2FnZSBvZiBmaWx0ZXJlZE1lc3NhZ2VzXCIgW2tleV09XCJtZXNzYWdlXCJcbiAgICAgICAgW21lc3NhZ2VfZW5dPVwibWVzc2FnZT8ubWVzc2FnZV9lbiB8IHJweFRyYW5zbGF0ZVwiIFxuICAgICAgICBbbWVzc2FnZV9jeV09XCJtZXNzYWdlPy5tZXNzYWdlX2N5IHwgcnB4VHJhbnNsYXRlXCJcbiAgICAgICAgKGhpZGVNZXNzYWdlKT1cImhpZGVNZXNzYWdlKCRldmVudClcIj5cbiAgICA8L3h1aWxpYi1zZXJ2aWNlLW1lc3NhZ2U+XG48L2Rpdj4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1tZXNzYWdlLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh1aS1jb21tb24tbGliL3NyYy9saWIvbW9kZWxzL3NlcnZpY2UtbWVzc2FnZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBTZXJ2aWNlTWVzc2FnZXMge1xuICAgIGluZGV4OiBudW1iZXI7XG4gICAgcm9sZXM6IHN0cmluZztcbiAgICBtZXNzYWdlX2VuOiBzdHJpbmc7XG4gICAgbWVzc2FnZV9jeTogc3RyaW5nO1xuICAgIGJlZ2luPzogc3RyaW5nO1xuICAgIGVuZD86IHN0cmluZztcbiAgfSJdfQ==
|
|
@@ -5947,6 +5947,12 @@ class SelectedCaseListComponent {
|
|
|
5947
5947
|
}] }); })();
|
|
5948
5948
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SelectedCaseListComponent, { className: "SelectedCaseListComponent", filePath: "lib/components/selected-case-list/selected-case-list.component.ts", lineNumber: 11 }); })();
|
|
5949
5949
|
|
|
5950
|
+
function ServiceMessageComponent_h2_8_Template(rf, ctx) { if (rf & 1) {
|
|
5951
|
+
i0.ɵɵelement(0, "h2", 5);
|
|
5952
|
+
} if (rf & 2) {
|
|
5953
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
5954
|
+
i0.ɵɵproperty("innerHTML", ctx_r0.message_cy, i0.ɵɵsanitizeHtml);
|
|
5955
|
+
} }
|
|
5950
5956
|
class ServiceMessageComponent {
|
|
5951
5957
|
constructor() {
|
|
5952
5958
|
this.hideMessage = new EventEmitter();
|
|
@@ -5955,7 +5961,7 @@ class ServiceMessageComponent {
|
|
|
5955
5961
|
this.hideMessage.emit(key);
|
|
5956
5962
|
}
|
|
5957
5963
|
static { this.ɵfac = function ServiceMessageComponent_Factory(t) { return new (t || ServiceMessageComponent)(); }; }
|
|
5958
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ServiceMessageComponent, selectors: [["xuilib-service-message"]], inputs: {
|
|
5964
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ServiceMessageComponent, selectors: [["xuilib-service-message"]], inputs: { message_en: "message_en", message_cy: "message_cy", key: "key" }, outputs: { hideMessage: "hideMessage" }, decls: 12, vars: 8, consts: [[1, "hmcts-banner", "hmcts-banner--warning"], ["fill", "currentColor", "role", "presentation", "focusable", "false", "xmlns", "http://www.w3.org/2000/svg", "viewBox", "0 0 25 25", "height", "25", "width", "25", 1, "hmcts-banner__icon"], ["d", "M13.6,15.4h-2.3v-4.5h2.3V15.4z M13.6,19.8h-2.3v-2.2h2.3V19.8z M0,23.2h25L12.5,2L0,23.2z"], [1, "hmcts-banner__message"], [1, "hmcts-banner__assistive"], [1, "govuk-heading-s", 3, "innerHTML"], ["class", "govuk-heading-s", 3, "innerHTML", 4, "ngIf"], [1, "govuk-link--no-visited-state", 3, "click", "routerLink"]], template: function ServiceMessageComponent_Template(rf, ctx) { if (rf & 1) {
|
|
5959
5965
|
i0.ɵɵelementStart(0, "div", 0);
|
|
5960
5966
|
i0.ɵɵnamespaceSVG();
|
|
5961
5967
|
i0.ɵɵelementStart(1, "svg", 1);
|
|
@@ -5967,57 +5973,95 @@ class ServiceMessageComponent {
|
|
|
5967
5973
|
i0.ɵɵpipe(6, "rpxTranslate");
|
|
5968
5974
|
i0.ɵɵelementEnd();
|
|
5969
5975
|
i0.ɵɵelement(7, "h2", 5);
|
|
5970
|
-
i0.ɵɵ
|
|
5971
|
-
i0.ɵɵelementStart(9, "a",
|
|
5976
|
+
i0.ɵɵtemplate(8, ServiceMessageComponent_h2_8_Template, 1, 1, "h2", 6);
|
|
5977
|
+
i0.ɵɵelementStart(9, "a", 7);
|
|
5972
5978
|
i0.ɵɵlistener("click", function ServiceMessageComponent_Template_a_click_9_listener() { return ctx.onHideMessageEvent(ctx.key); });
|
|
5973
5979
|
i0.ɵɵtext(10);
|
|
5974
5980
|
i0.ɵɵpipe(11, "rpxTranslate");
|
|
5975
5981
|
i0.ɵɵelementEnd()()();
|
|
5976
5982
|
} if (rf & 2) {
|
|
5977
5983
|
i0.ɵɵadvance(5);
|
|
5978
|
-
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(6,
|
|
5984
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(6, 4, "Warning"));
|
|
5979
5985
|
i0.ɵɵadvance(2);
|
|
5980
|
-
i0.ɵɵproperty("innerHTML",
|
|
5981
|
-
i0.ɵɵadvance(
|
|
5982
|
-
i0.ɵɵ
|
|
5983
|
-
|
|
5986
|
+
i0.ɵɵproperty("innerHTML", ctx.message_en, i0.ɵɵsanitizeHtml);
|
|
5987
|
+
i0.ɵɵadvance();
|
|
5988
|
+
i0.ɵɵproperty("ngIf", ctx.message_cy);
|
|
5989
|
+
i0.ɵɵadvance(2);
|
|
5990
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(11, 6, "Hide message"));
|
|
5991
|
+
} }, dependencies: [i1.NgIf, i2$1.RouterLink, i2.RpxTranslatePipe], styles: [".govuk-link--no-visited-state[_ngcontent-%COMP%]{cursor:pointer}"] }); }
|
|
5984
5992
|
}
|
|
5985
5993
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ServiceMessageComponent, [{
|
|
5986
5994
|
type: Component,
|
|
5987
|
-
args: [{ selector: 'xuilib-service-message', template: "<div class=\"hmcts-banner hmcts-banner--warning\">\n\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=\"25\" width=\"25\">\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\" />\n </svg>\n\n <div class=\"hmcts-banner__message\">\n <span class=\"hmcts-banner__assistive\">{{'Warning' | rpxTranslate}}</span>\n <h2 class=\"govuk-heading-s\" [innerHTML]=\"
|
|
5988
|
-
}], () => [], {
|
|
5995
|
+
args: [{ selector: 'xuilib-service-message', template: "<div class=\"hmcts-banner hmcts-banner--warning\">\n\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=\"25\" width=\"25\">\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\" />\n </svg>\n\n <div class=\"hmcts-banner__message\">\n <span class=\"hmcts-banner__assistive\">{{'Warning' | rpxTranslate}}</span>\n <h2 class=\"govuk-heading-s\" [innerHTML]=\"message_en\"></h2>\n <h2 *ngIf=\"message_cy\" class=\"govuk-heading-s\" [innerHTML]=\"message_cy\"></h2>\n <a [routerLink]=\"\" class=\"govuk-link--no-visited-state\" (click)=\"onHideMessageEvent(key)\">{{'Hide message' | rpxTranslate}}</a>\n </div>\n\n</div>", styles: [".govuk-link--no-visited-state{cursor:pointer}\n"] }]
|
|
5996
|
+
}], () => [], { message_en: [{
|
|
5997
|
+
type: Input
|
|
5998
|
+
}], message_cy: [{
|
|
5989
5999
|
type: Input
|
|
5990
6000
|
}], key: [{
|
|
5991
6001
|
type: Input
|
|
5992
6002
|
}], hideMessage: [{
|
|
5993
6003
|
type: Output
|
|
5994
6004
|
}] }); })();
|
|
5995
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ServiceMessageComponent, { className: "ServiceMessageComponent", filePath: "lib/components/service-message/service-message.component.ts", lineNumber:
|
|
6005
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ServiceMessageComponent, { className: "ServiceMessageComponent", filePath: "lib/components/service-message/service-message.component.ts", lineNumber: 9 }); })();
|
|
5996
6006
|
|
|
5997
|
-
function
|
|
5998
|
-
|
|
5999
|
-
i0.ɵɵ
|
|
6000
|
-
i0.ɵɵ
|
|
6001
|
-
i0.ɵɵ
|
|
6007
|
+
function ServiceMessagesComponent_div_0_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
6008
|
+
i0.ɵɵelementStart(0, "div", 3);
|
|
6009
|
+
i0.ɵɵnamespaceSVG();
|
|
6010
|
+
i0.ɵɵelementStart(1, "svg", 4);
|
|
6011
|
+
i0.ɵɵelement(2, "path", 5);
|
|
6002
6012
|
i0.ɵɵelementEnd();
|
|
6013
|
+
i0.ɵɵnamespaceHTML();
|
|
6014
|
+
i0.ɵɵelementStart(3, "div", 6)(4, "span", 7);
|
|
6015
|
+
i0.ɵɵtext(5);
|
|
6016
|
+
i0.ɵɵpipe(6, "rpxTranslate");
|
|
6017
|
+
i0.ɵɵelementEnd();
|
|
6018
|
+
i0.ɵɵelementStart(7, "h2", 8);
|
|
6019
|
+
i0.ɵɵtext(8, "Error:");
|
|
6020
|
+
i0.ɵɵelementEnd();
|
|
6021
|
+
i0.ɵɵelement(9, "p", 9);
|
|
6022
|
+
i0.ɵɵelementEnd()();
|
|
6003
6023
|
} if (rf & 2) {
|
|
6004
|
-
const
|
|
6005
|
-
i0.ɵɵ
|
|
6024
|
+
const errMsg_r1 = ctx.$implicit;
|
|
6025
|
+
i0.ɵɵadvance(5);
|
|
6026
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(6, 2, "Warning"));
|
|
6027
|
+
i0.ɵɵadvance(4);
|
|
6028
|
+
i0.ɵɵproperty("innerHTML", errMsg_r1.message, i0.ɵɵsanitizeHtml);
|
|
6006
6029
|
} }
|
|
6007
6030
|
function ServiceMessagesComponent_div_0_Template(rf, ctx) { if (rf & 1) {
|
|
6008
6031
|
i0.ɵɵelementStart(0, "div", 1);
|
|
6009
|
-
i0.ɵɵtemplate(1,
|
|
6010
|
-
i0.ɵɵ
|
|
6032
|
+
i0.ɵɵtemplate(1, ServiceMessagesComponent_div_0_div_1_Template, 10, 4, "div", 2);
|
|
6033
|
+
i0.ɵɵelementEnd();
|
|
6034
|
+
} if (rf & 2) {
|
|
6035
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
6036
|
+
i0.ɵɵadvance();
|
|
6037
|
+
i0.ɵɵproperty("ngForOf", ctx_r1.bannerErrorMsgs);
|
|
6038
|
+
} }
|
|
6039
|
+
function ServiceMessagesComponent_div_1_xuilib_service_message_1_Template(rf, ctx) { if (rf & 1) {
|
|
6040
|
+
const _r3 = i0.ɵɵgetCurrentView();
|
|
6041
|
+
i0.ɵɵelementStart(0, "xuilib-service-message", 11);
|
|
6042
|
+
i0.ɵɵpipe(1, "rpxTranslate");
|
|
6043
|
+
i0.ɵɵpipe(2, "rpxTranslate");
|
|
6044
|
+
i0.ɵɵlistener("hideMessage", function ServiceMessagesComponent_div_1_xuilib_service_message_1_Template_xuilib_service_message_hideMessage_0_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.hideMessage($event)); });
|
|
6045
|
+
i0.ɵɵelementEnd();
|
|
6046
|
+
} if (rf & 2) {
|
|
6047
|
+
const message_r4 = ctx.$implicit;
|
|
6048
|
+
i0.ɵɵproperty("key", message_r4)("message_en", i0.ɵɵpipeBind1(1, 3, message_r4 == null ? null : message_r4.message_en))("message_cy", i0.ɵɵpipeBind1(2, 5, message_r4 == null ? null : message_r4.message_cy));
|
|
6049
|
+
} }
|
|
6050
|
+
function ServiceMessagesComponent_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
6051
|
+
i0.ɵɵelementStart(0, "div", 1);
|
|
6052
|
+
i0.ɵɵtemplate(1, ServiceMessagesComponent_div_1_xuilib_service_message_1_Template, 3, 7, "xuilib-service-message", 10);
|
|
6011
6053
|
i0.ɵɵelementEnd();
|
|
6012
6054
|
} if (rf & 2) {
|
|
6013
6055
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
6014
6056
|
i0.ɵɵadvance();
|
|
6015
|
-
i0.ɵɵproperty("ngForOf",
|
|
6057
|
+
i0.ɵɵproperty("ngForOf", ctx_r1.filteredMessages);
|
|
6016
6058
|
} }
|
|
6017
6059
|
class ServiceMessagesComponent {
|
|
6018
6060
|
constructor(featureToggleService) {
|
|
6019
6061
|
this.featureToggleService = featureToggleService;
|
|
6020
|
-
this.filteredMessages =
|
|
6062
|
+
this.filteredMessages = [];
|
|
6063
|
+
this.bannerErrorMsgs = [];
|
|
6064
|
+
this.originalMessages = [];
|
|
6021
6065
|
}
|
|
6022
6066
|
ngOnInit() {
|
|
6023
6067
|
this.getServiceMessages();
|
|
@@ -6025,6 +6069,7 @@ class ServiceMessagesComponent {
|
|
|
6025
6069
|
getServiceMessages() {
|
|
6026
6070
|
this.featureToggleService.getValue(this.featureToggleKey, null)
|
|
6027
6071
|
.subscribe(messages => {
|
|
6072
|
+
this.originalMessages = messages;
|
|
6028
6073
|
if (!!messages) {
|
|
6029
6074
|
this.createFilteredMessages(messages);
|
|
6030
6075
|
}
|
|
@@ -6032,28 +6077,72 @@ class ServiceMessagesComponent {
|
|
|
6032
6077
|
}
|
|
6033
6078
|
createFilteredMessages(messages) {
|
|
6034
6079
|
this.hiddenBanners = JSON.parse(window.sessionStorage.getItem(this.serviceMessageCookie)) || [];
|
|
6035
|
-
|
|
6036
|
-
const regEx = new RegExp(key);
|
|
6037
|
-
if (this.userRoles.some(e => regEx.test(e))
|
|
6038
|
-
this.filteredMessages.
|
|
6080
|
+
messages.forEach(key => {
|
|
6081
|
+
const regEx = new RegExp(key.roles);
|
|
6082
|
+
if (this.userRoles.some(e => regEx.test(e))) {
|
|
6083
|
+
this.filteredMessages = messages.filter(msg => !this.hiddenBanners.includes(msg.message_en)
|
|
6084
|
+
&& this.compareDates(msg));
|
|
6085
|
+
}
|
|
6086
|
+
});
|
|
6087
|
+
}
|
|
6088
|
+
compareDates(msg) {
|
|
6089
|
+
let currentDateTime = new Date();
|
|
6090
|
+
let beginDate = null;
|
|
6091
|
+
let endDate = null;
|
|
6092
|
+
this.bannerErrorMsgs = [];
|
|
6093
|
+
// Parse beginDate if msg.begin is present and valid
|
|
6094
|
+
if (msg.begin && !isNaN(Date.parse(msg.begin))) {
|
|
6095
|
+
beginDate = new Date(msg.begin);
|
|
6096
|
+
}
|
|
6097
|
+
if (msg.end && !isNaN(Date.parse(msg.end))) {
|
|
6098
|
+
endDate = new Date(msg.end);
|
|
6099
|
+
}
|
|
6100
|
+
this.originalMessages.forEach(msg => {
|
|
6101
|
+
// Only check for errors if both beginDate and endDate are present and valid
|
|
6102
|
+
if ((msg.begin && !isNaN(Date.parse(msg.end))) && (msg.end && !isNaN(Date.parse(msg.end))) && new Date(msg.begin) > new Date(msg.end)) {
|
|
6103
|
+
this.isBannerError = true;
|
|
6104
|
+
this.bannerErrorMsgs.push({
|
|
6105
|
+
message: `The start date is greater than the end date. Message index: ${msg.index}`,
|
|
6106
|
+
index: msg.index
|
|
6107
|
+
});
|
|
6108
|
+
}
|
|
6109
|
+
// Check for invalid beginDate or endDate separately, if they are present
|
|
6110
|
+
if (msg.begin && isNaN(Date.parse(msg.begin))) {
|
|
6111
|
+
this.isBannerError = true;
|
|
6112
|
+
this.bannerErrorMsgs.push({
|
|
6113
|
+
message: `Invalid start date. Message index: ${msg.index}`,
|
|
6114
|
+
index: msg.index
|
|
6115
|
+
});
|
|
6116
|
+
}
|
|
6117
|
+
if (msg.end && isNaN(Date.parse(msg.end))) {
|
|
6118
|
+
this.isBannerError = true;
|
|
6119
|
+
this.bannerErrorMsgs.push({
|
|
6120
|
+
message: `Invalid end date. Message index: ${msg.index}`,
|
|
6121
|
+
index: msg.index
|
|
6122
|
+
});
|
|
6039
6123
|
}
|
|
6040
6124
|
});
|
|
6125
|
+
const beginDateOK = !msg.begin || (beginDate && beginDate < currentDateTime);
|
|
6126
|
+
const endDateOK = !msg.end || (endDate && endDate >= currentDateTime);
|
|
6127
|
+
return beginDateOK && endDateOK;
|
|
6041
6128
|
}
|
|
6042
|
-
hideMessage(
|
|
6043
|
-
this.filteredMessages.
|
|
6044
|
-
this.hiddenBanners.push(
|
|
6129
|
+
hideMessage(msg) {
|
|
6130
|
+
this.filteredMessages = this.filteredMessages.filter(f => f.index !== msg.index);
|
|
6131
|
+
this.hiddenBanners.push(msg.message_en);
|
|
6045
6132
|
window.sessionStorage.setItem(this.serviceMessageCookie, JSON.stringify(this.hiddenBanners));
|
|
6046
6133
|
}
|
|
6047
6134
|
static { this.ɵfac = function ServiceMessagesComponent_Factory(t) { return new (t || ServiceMessagesComponent)(i0.ɵɵdirectiveInject(FeatureToggleService)); }; }
|
|
6048
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ServiceMessagesComponent, selectors: [["xuilib-service-messages"]], inputs: { userRoles: "userRoles", featureToggleKey: "featureToggleKey", serviceMessageCookie: "serviceMessageCookie" }, decls:
|
|
6049
|
-
i0.ɵɵtemplate(0, ServiceMessagesComponent_div_0_Template,
|
|
6135
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ServiceMessagesComponent, selectors: [["xuilib-service-messages"]], inputs: { userRoles: "userRoles", featureToggleKey: "featureToggleKey", serviceMessageCookie: "serviceMessageCookie" }, decls: 2, vars: 2, consts: [["class", "govuk-width-container govuk-!-margin-top-6", 4, "ngIf"], [1, "govuk-width-container", "govuk-!-margin-top-6"], ["class", "hmcts-banner hmcts-banner--warning", 4, "ngFor", "ngForOf"], [1, "hmcts-banner", "hmcts-banner--warning"], ["fill", "currentColor", "role", "presentation", "focusable", "false", "xmlns", "http://www.w3.org/2000/svg", "viewBox", "0 0 25 25", "height", "25", "width", "25", 1, "hmcts-banner__icon"], ["d", "M13.6,15.4h-2.3v-4.5h2.3V15.4z M13.6,19.8h-2.3v-2.2h2.3V19.8z M0,23.2h25L12.5,2L0,23.2z"], [1, "hmcts-banner__message"], [1, "hmcts-banner__assistive"], [1, "govuk-heading-s"], [3, "innerHTML"], [3, "key", "message_en", "message_cy", "hideMessage", 4, "ngFor", "ngForOf"], [3, "hideMessage", "key", "message_en", "message_cy"]], template: function ServiceMessagesComponent_Template(rf, ctx) { if (rf & 1) {
|
|
6136
|
+
i0.ɵɵtemplate(0, ServiceMessagesComponent_div_0_Template, 2, 1, "div", 0)(1, ServiceMessagesComponent_div_1_Template, 2, 1, "div", 0);
|
|
6050
6137
|
} if (rf & 2) {
|
|
6051
|
-
i0.ɵɵproperty("ngIf",
|
|
6052
|
-
|
|
6138
|
+
i0.ɵɵproperty("ngIf", ctx.isBannerError);
|
|
6139
|
+
i0.ɵɵadvance();
|
|
6140
|
+
i0.ɵɵproperty("ngIf", (ctx.filteredMessages == null ? null : ctx.filteredMessages.length) > 0);
|
|
6141
|
+
} }, dependencies: [i1.NgForOf, i1.NgIf, ServiceMessageComponent, i2.RpxTranslatePipe], encapsulation: 2 }); }
|
|
6053
6142
|
}
|
|
6054
6143
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ServiceMessagesComponent, [{
|
|
6055
6144
|
type: Component,
|
|
6056
|
-
args: [{ selector: 'xuilib-service-messages', template: "<div *ngIf=\"filteredMessages?.
|
|
6145
|
+
args: [{ selector: 'xuilib-service-messages', template: "<div *ngIf=\"isBannerError\" class=\"govuk-width-container govuk-!-margin-top-6\">\n <div class=\"hmcts-banner hmcts-banner--warning\" *ngFor=\"let errMsg of bannerErrorMsgs\">\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=\"25\" width=\"25\">\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\" />\n </svg>\n <div class=\"hmcts-banner__message\">\n <span class=\"hmcts-banner__assistive\">{{'Warning' | rpxTranslate}}</span>\n <h2 class=\"govuk-heading-s\">Error:</h2>\n <p [innerHTML]=\"errMsg.message\"></p>\n </div>\n </div>\n</div>\n<div *ngIf=\"filteredMessages?.length > 0\" class=\"govuk-width-container govuk-!-margin-top-6\">\n <xuilib-service-message *ngFor=\"let message of filteredMessages\" [key]=\"message\"\n [message_en]=\"message?.message_en | rpxTranslate\" \n [message_cy]=\"message?.message_cy | rpxTranslate\"\n (hideMessage)=\"hideMessage($event)\">\n </xuilib-service-message>\n</div>" }]
|
|
6057
6146
|
}], () => [{ type: FeatureToggleService }], { userRoles: [{
|
|
6058
6147
|
type: Input
|
|
6059
6148
|
}], featureToggleKey: [{
|
|
@@ -6061,7 +6150,7 @@ class ServiceMessagesComponent {
|
|
|
6061
6150
|
}], serviceMessageCookie: [{
|
|
6062
6151
|
type: Input
|
|
6063
6152
|
}] }); })();
|
|
6064
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ServiceMessagesComponent, { className: "ServiceMessagesComponent", filePath: "lib/components/service-messages/service-messages.component.ts", lineNumber:
|
|
6153
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ServiceMessagesComponent, { className: "ServiceMessagesComponent", filePath: "lib/components/service-messages/service-messages.component.ts", lineNumber: 10 }); })();
|
|
6065
6154
|
|
|
6066
6155
|
function ShareCaseConfirmComponent_div_4_Template(rf, ctx) { if (rf & 1) {
|
|
6067
6156
|
i0.ɵɵelementStart(0, "div", 5);
|