@hmcts/ccd-case-ui-toolkit 7.3.79-govuk5-v2 → 7.3.79-govuk5-v3

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.
@@ -18,16 +18,13 @@ import { __decorate, __metadata } from 'tslib';
18
18
  import * as _ from 'underscore';
19
19
  import 'reflect-metadata';
20
20
  import { StateMachine } from '@edium/fsm';
21
- import * as i1$3 from '@angular/material/legacy-dialog';
22
- import { MAT_LEGACY_DIALOG_DATA, MatLegacyDialogModule } from '@angular/material/legacy-dialog';
23
- import { MatDialogConfig } from '@angular/material/dialog';
21
+ import * as i1$3 from '@angular/material/dialog';
22
+ import { MatDialogConfig, MAT_DIALOG_DATA, MatDialogModule } from '@angular/material/dialog';
24
23
  import * as marked from 'marked';
25
24
  import * as i1$4 from 'ngx-markdown';
26
25
  import { MarkdownModule } from 'ngx-markdown';
27
- import * as i6 from '@angular/material/legacy-autocomplete';
28
- import { MatLegacyAutocompleteModule } from '@angular/material/legacy-autocomplete';
29
- import * as i7 from '@angular/material/legacy-core';
30
- import { MAT_LEGACY_DATE_LOCALE } from '@angular/material/legacy-core';
26
+ import * as i6 from '@angular/material/autocomplete';
27
+ import { MatAutocompleteModule } from '@angular/material/autocomplete';
31
28
  import * as i3 from '@hmcts/ccpay-web-component';
32
29
  import { PaymentLibModule } from '@hmcts/ccpay-web-component';
33
30
  import { v4 } from 'uuid';
@@ -45,22 +42,22 @@ import { OverlayModule } from '@angular/cdk/overlay';
45
42
  import * as i6$1 from '@angular/cdk/tree';
46
43
  import { NestedTreeControl, CdkTreeModule } from '@angular/cdk/tree';
47
44
  import { cloneDeep } from 'lodash';
48
- import * as i4$2 from '@angular-material-components/datetime-picker';
49
- import { NGX_MAT_DATE_FORMATS, NgxMatDateAdapter, NgxMatDatetimePickerModule, NgxMatTimepickerModule, NgxMatNativeDateModule } from '@angular-material-components/datetime-picker';
50
- import { NGX_MAT_MOMENT_DATE_ADAPTER_OPTIONS, NgxMatMomentAdapter } from '@angular-material-components/moment-adapter';
51
- import * as i5$1 from '@angular/material/legacy-form-field';
52
- import { MatLegacyFormFieldModule } from '@angular/material/legacy-form-field';
53
- import * as i6$2 from '@angular/material/datepicker';
45
+ import * as i4$2 from '@ngxmc/datetime-picker';
46
+ import { NgxMatDatetimepicker, NgxMatDatepickerToggle, NgxMatDatepickerActions, NgxMatDatepickerInput, NgxMatDatepickerApply } from '@ngxmc/datetime-picker';
47
+ import { MAT_MOMENT_DATE_ADAPTER_OPTIONS, MomentDateAdapter } from '@angular/material-moment-adapter';
48
+ import { MAT_DATE_FORMATS, MAT_DATE_LOCALE, DateAdapter } from '@angular/material/core';
49
+ import * as i5$1 from '@angular/material/form-field';
50
+ import { MatFormFieldModule } from '@angular/material/form-field';
54
51
  import { MatDatepickerModule } from '@angular/material/datepicker';
55
- import * as i15 from '@angular/material/legacy-input';
56
- import { MatLegacyInputModule } from '@angular/material/legacy-input';
52
+ import * as i15 from '@angular/material/input';
53
+ import { MatInputModule } from '@angular/material/input';
57
54
  import * as i14 from '@hmcts/media-viewer';
58
55
  import { MediaViewerModule } from '@hmcts/media-viewer';
59
56
  import { PortalModule } from '@angular/cdk/portal';
60
57
  import * as i2$1 from 'ngx-pagination';
61
58
  import { NgxPaginationModule, PaginatePipe } from 'ngx-pagination';
62
- import * as i10 from '@angular/material/legacy-tabs';
63
- import { MatLegacyTabsModule } from '@angular/material/legacy-tabs';
59
+ import * as i10 from '@angular/material/tabs';
60
+ import { MatTabsModule } from '@angular/material/tabs';
64
61
  import { compressToUTF16, decompressFromUTF16 } from 'lz-string';
65
62
 
66
63
  const _c0$1a = [[["", "footerSolsNavLinks", ""]], [["", "footerCaseWorkerNavLinks", ""]]];
@@ -12126,7 +12123,7 @@ class SaveOrDiscardDialogComponent {
12126
12123
  this.result = 'Discard';
12127
12124
  this.matDialogRef.close(this.result);
12128
12125
  }
12129
- static ɵfac = function SaveOrDiscardDialogComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SaveOrDiscardDialogComponent)(i0.ɵɵdirectiveInject(i1$3.MatLegacyDialogRef)); };
12126
+ static ɵfac = function SaveOrDiscardDialogComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SaveOrDiscardDialogComponent)(i0.ɵɵdirectiveInject(i1$3.MatDialogRef)); };
12130
12127
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SaveOrDiscardDialogComponent, selectors: [["ccd-save-or-discard-dialog"]], standalone: false, decls: 19, vars: 12, consts: [[1, "dialog-header"], [1, "heading-h2", "x", 3, "click"], [1, "heading-h2", "dialog-title"], [1, "dialog-info"], [1, "text-info"], ["type", "button", "title", "Save", 1, "button", "action-button", 3, "click"], ["type", "button", "title", "Discard", 1, "button", "button-secondary", 3, "click"]], template: function SaveOrDiscardDialogComponent_Template(rf, ctx) { if (rf & 1) {
12131
12128
  i0.ɵɵelementStart(0, "div")(1, "div", 0)(2, "h2", 1);
12132
12129
  i0.ɵɵlistener("click", function SaveOrDiscardDialogComponent_Template_h2_click_2_listener() { return ctx.cancel(); });
@@ -12164,7 +12161,7 @@ class SaveOrDiscardDialogComponent {
12164
12161
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SaveOrDiscardDialogComponent, [{
12165
12162
  type: Component,
12166
12163
  args: [{ selector: 'ccd-save-or-discard-dialog', standalone: false, template: "<div>\n <div class=\"dialog-header\">\n <h2 (click)=\"cancel()\" class=\"heading-h2 x\">X</h2>\n </div>\n <div>\n <h2 class=\"heading-h2 dialog-title\">{{'Would you like to save changes to this page?' | rpxTranslate}}</h2>\n </div>\n <div class=\"dialog-info\">\n <span class=\"text-info\">{{'You will be taken back to your case list.' | rpxTranslate}}</span>\n </div>\n <div>\n <button type=\"button\" title=\"Save\" class=\"button action-button\" (click)=\"save()\">{{'Save' | rpxTranslate}}</button>\n <button type=\"button\" title=\"Discard\" class=\"button button-secondary\" (click)=\"discard()\">{{'Discard' | rpxTranslate}}</button>\n </div>\n</div>\n", styles: [".x{margin:0;padding:9px 9px 0 0;font-size:24px;font-weight:700;font-style:normal;font-stretch:normal;cursor:pointer;color:#6e7071}@media(prefers-color-scheme:dark){.dialog-title,.dialog-info{color:#000}}.dialog-header{text-align:right}.dialog-title,.dialog-info{margin:0 0 21px 25px}.action-button{margin:0 15px 0 25px}\n"] }]
12167
- }], () => [{ type: i1$3.MatLegacyDialogRef }], null); })();
12164
+ }], () => [{ type: i1$3.MatDialogRef }], null); })();
12168
12165
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SaveOrDiscardDialogComponent, { className: "SaveOrDiscardDialogComponent", filePath: "lib/shared/components/dialogs/save-or-discard-dialog/save-or-discard-dialog.component.ts", lineNumber: 10 }); })();
12169
12166
 
12170
12167
  function initDialog() {
@@ -13270,7 +13267,7 @@ class CaseEditPageComponent {
13270
13267
  }
13271
13268
  return caseField.id;
13272
13269
  }
13273
- static ɵfac = function CaseEditPageComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CaseEditPageComponent)(i0.ɵɵdirectiveInject(CaseEditComponent), i0.ɵɵdirectiveInject(i1$1.ActivatedRoute), i0.ɵɵdirectiveInject(FormValueService), i0.ɵɵdirectiveInject(FormErrorService), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(PageValidationService), i0.ɵɵdirectiveInject(i1$3.MatLegacyDialog), i0.ɵɵdirectiveInject(CaseFieldService), i0.ɵɵdirectiveInject(CaseEditDataService), i0.ɵɵdirectiveInject(LoadingService), i0.ɵɵdirectiveInject(ValidPageListCaseFieldsService), i0.ɵɵdirectiveInject(MultipageComponentStateService), i0.ɵɵdirectiveInject(AddressesService), i0.ɵɵdirectiveInject(LinkedCasesService), i0.ɵɵdirectiveInject(CaseFlagStateService), i0.ɵɵdirectiveInject(FocusService)); };
13270
+ static ɵfac = function CaseEditPageComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CaseEditPageComponent)(i0.ɵɵdirectiveInject(CaseEditComponent), i0.ɵɵdirectiveInject(i1$1.ActivatedRoute), i0.ɵɵdirectiveInject(FormValueService), i0.ɵɵdirectiveInject(FormErrorService), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(PageValidationService), i0.ɵɵdirectiveInject(i1$3.MatDialog), i0.ɵɵdirectiveInject(CaseFieldService), i0.ɵɵdirectiveInject(CaseEditDataService), i0.ɵɵdirectiveInject(LoadingService), i0.ɵɵdirectiveInject(ValidPageListCaseFieldsService), i0.ɵɵdirectiveInject(MultipageComponentStateService), i0.ɵɵdirectiveInject(AddressesService), i0.ɵɵdirectiveInject(LinkedCasesService), i0.ɵɵdirectiveInject(CaseFlagStateService), i0.ɵɵdirectiveInject(FocusService)); };
13274
13271
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CaseEditPageComponent, selectors: [["ccd-case-edit-page"]], viewQuery: function CaseEditPageComponent_Query(rf, ctx) { if (rf & 1) {
13275
13272
  i0.ɵɵviewQuery(CaseEditFormComponent, 5);
13276
13273
  } if (rf & 2) {
@@ -13308,7 +13305,7 @@ class CaseEditPageComponent {
13308
13305
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseEditPageComponent, [{
13309
13306
  type: Component,
13310
13307
  args: [{ selector: 'ccd-case-edit-page', standalone: false, template: "<ng-container *ngIf=\"eventTrigger\">\n <h1 *ngIf=\"!currentPage?.label\" class=\"govuk-heading-l\">{{eventTrigger.name | rpxTranslate}}</h1>\n <ng-container *ngIf=\"currentPage?.label\">\n <span class=\"govuk-caption-l\">{{ eventTrigger.name | rpxTranslate}}</span>\n <h1 class=\"govuk-heading-l\">{{currentPage.label | rpxTranslate}}</h1>\n </ng-container>\n</ng-container>\n\n<!--Case ID or Title -->\n<div *ngIf=\"getCaseTitle(); then titleBlock; else idBlock\"></div>\n<ng-template #titleBlock>\n <ccd-markdown [content]=\"demoteCaseTitleHeadingLevel(getCaseTitle() | ccdCaseTitle: caseFields : editForm.controls['data'] | rpxTranslate)\"></ccd-markdown>\n</ng-template>\n<ng-template #idBlock>\n <h2 *ngIf=\"getCaseId()\" class=\"heading-h2\">#{{ getCaseId() | ccdCaseReference }}</h2>\n</ng-template>\n\n<!-- Error message summary -->\n<div *ngIf=\"validationErrors.length > 0\" class=\"govuk-error-summary\" aria-labelledby=\"error-summary-title\" role=\"alert\" tabindex=\"-1\" data-module=\"govuk-error-summary\">\n <h2 class=\"govuk-error-summary__title\" id=\"error-summary-title\">\n {{'There is a problem' | rpxTranslate}}\n </h2>\n <div *ngFor=\"let validationError of validationErrors\" class=\"govuk-error-summary__body\">\n <ul class=\"govuk-list govuk-error-summary__list\">\n <li>\n <a (click)=\"navigateToErrorElement(validationError.id)\" (keyup.enter)=\"navigateToErrorElement(validationError.id)\" tabindex=\"0\" class=\"validation-error\">\n {{ validationError.message | rpxTranslate: getRpxTranslatePipeArgs(validationError.label | rpxTranslate): null }}\n </a>\n </li>\n </ul>\n </div>\n</div>\n\n<ccd-case-edit-generic-errors [error]=\"caseEdit.error\"></ccd-case-edit-generic-errors>\n\n<ccd-callback-errors\n [triggerTextContinue]=\"triggerTextStart\"\n [triggerTextIgnore]=\"triggerTextIgnoreWarnings\"\n [callbackErrorsSubject]=\"caseEdit.callbackErrorsSubject\"\n (callbackErrorsContext)=\"callbackErrorsNotify($event)\">\n</ccd-callback-errors>\n<div class=\"width-50\">\n <form *ngIf=\"currentPage\" class=\"form\" [formGroup]=\"editForm\" (submit)=\"nextStep()\">\n <div id=\"fieldset-case-data\">\n <!-- single column -->\n <ccd-case-edit-form id='caseEditForm' *ngIf=\"!currentPage.isMultiColumn()\" [fields]=\"currentPage.getCol1Fields()\"\n [formGroup]=\"editForm.controls['data']\" [caseFields]=\"caseFields\"\n [pageChangeSubject]=\"pageChangeSubject\"\n (valuesChanged)=\"applyValuesChanged($event)\"></ccd-case-edit-form>\n <!-- two columns -->\n <div *ngIf=\"currentPage.isMultiColumn()\" class=\"grid-row\">\n <div class=\"column-two-thirds rightBorderSeparator\">\n <ccd-case-edit-form id='caseEditForm1' [fields]=\"currentPage.getCol1Fields()\"\n [formGroup]=\"editForm.controls['data']\" [caseFields]=\"caseFields\"></ccd-case-edit-form>\n </div>\n <div class=\"column-one-third\">\n <ccd-case-edit-form id='caseEditForm2' [fields]=\"currentPage.getCol2Fields()\"\n [formGroup]=\"editForm.controls['data']\" [caseFields]=\"caseFields\"></ccd-case-edit-form>\n </div>\n </div>\n </div>\n\n <div class=\"form-group form-group-related\">\n <button class=\"button button-secondary\" type=\"button\" (click)=\"toPreviousPage()\" *ngIf=\"!isAtStart()\" [disabled]=\"isDisabled()\">\n {{'Previous' | rpxTranslate}}\n </button>\n <button class=\"button\" type=\"submit\" [disabled]=\"submitting()\">{{triggerText | rpxTranslate}}</button>\n </div>\n\n <p class=\"cancel\"><button type=\"button\" (click)=\"cancel()\" class=\"govuk-js-link\">{{getCancelText() | rpxTranslate}}</button></p>\n </form>\n</div>\n\n<ccd-case-event-completion *ngIf=\"caseEdit.isEventCompletionChecksRequired\"\n [eventCompletionParams]=\"caseEdit.eventCompletionParams\"\n (eventCanBeCompleted)=\"onEventCanBeCompleted($event)\">\n</ccd-case-event-completion>\n", styles: [".govuk-js-link{appearance:none;background:none;border:none;color:#005ea5;cursor:pointer;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;margin:0;padding:0;text-decoration:underline}.govuk-js-link:hover{color:#2b8cc4;text-decoration-thickness:max(3px,.1875rem,.12em)}.govuk-js-link:focus{background-color:#ffbf47;color:#000;outline:3px solid transparent;text-decoration:none;box-shadow:0 -2px #ffbf47,0 4px #000}.govuk-js-link:visited{color:#4c2c92}.rightBorderSeparator{border-right-width:4px;border-right-color:#ffcc02;border-right-style:solid}.validation-error{cursor:pointer;text-decoration:underline;color:#d4351c}\n"] }]
13311
- }], () => [{ type: CaseEditComponent }, { type: i1$1.ActivatedRoute }, { type: FormValueService }, { type: FormErrorService }, { type: i0.ChangeDetectorRef }, { type: PageValidationService }, { type: i1$3.MatLegacyDialog }, { type: CaseFieldService }, { type: CaseEditDataService }, { type: LoadingService }, { type: ValidPageListCaseFieldsService }, { type: MultipageComponentStateService }, { type: AddressesService }, { type: LinkedCasesService }, { type: CaseFlagStateService }, { type: FocusService }], { caseEditFormComponents: [{
13308
+ }], () => [{ type: CaseEditComponent }, { type: i1$1.ActivatedRoute }, { type: FormValueService }, { type: FormErrorService }, { type: i0.ChangeDetectorRef }, { type: PageValidationService }, { type: i1$3.MatDialog }, { type: CaseFieldService }, { type: CaseEditDataService }, { type: LoadingService }, { type: ValidPageListCaseFieldsService }, { type: MultipageComponentStateService }, { type: AddressesService }, { type: LinkedCasesService }, { type: CaseFlagStateService }, { type: FocusService }], { caseEditFormComponents: [{
13312
13309
  type: ViewChildren,
13313
13310
  args: [CaseEditFormComponent]
13314
13311
  }] }); })();
@@ -14134,57 +14131,67 @@ class WriteComplexFieldComponent extends AbstractFieldWriteComponent {
14134
14131
  const _c0$$ = ["writeComplexFieldComponent"];
14135
14132
  const _c1$q = a0 => ({ "form-group-error": a0 });
14136
14133
  const _c2$4 = a0 => ({ "govuk-input--error": a0 });
14137
- function WriteAddressFieldComponent_div_1_div_4_span_5_Template(rf, ctx) { if (rf & 1) {
14138
- i0.ɵɵelementStart(0, "span", 14);
14134
+ function WriteAddressFieldComponent_div_1_span_4_Template(rf, ctx) { if (rf & 1) {
14135
+ i0.ɵɵelementStart(0, "span", 9);
14136
+ i0.ɵɵelement(1, "ccd-markdown", 10);
14137
+ i0.ɵɵpipe(2, "rpxTranslate");
14138
+ i0.ɵɵelementEnd();
14139
+ } if (rf & 2) {
14140
+ const ctx_r0 = i0.ɵɵnextContext(2);
14141
+ i0.ɵɵadvance();
14142
+ i0.ɵɵproperty("content", i0.ɵɵpipeBind1(2, 1, ctx_r0.caseField.hint_text));
14143
+ } }
14144
+ function WriteAddressFieldComponent_div_1_div_5_span_5_Template(rf, ctx) { if (rf & 1) {
14145
+ i0.ɵɵelementStart(0, "span", 17);
14139
14146
  i0.ɵɵtext(1);
14140
14147
  i0.ɵɵpipe(2, "rpxTranslate");
14141
14148
  i0.ɵɵelementEnd();
14142
14149
  } if (rf & 2) {
14143
- const ctx_r1 = i0.ɵɵnextContext(3);
14150
+ const ctx_r0 = i0.ɵɵnextContext(3);
14144
14151
  i0.ɵɵadvance();
14145
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, ctx_r1.errorMessage));
14152
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, ctx_r0.errorMessage));
14146
14153
  } }
14147
- function WriteAddressFieldComponent_div_1_div_4_Template(rf, ctx) { if (rf & 1) {
14148
- const _r1 = i0.ɵɵgetCurrentView();
14149
- i0.ɵɵelementStart(0, "div", 8)(1, "label", 9)(2, "span", 10);
14154
+ function WriteAddressFieldComponent_div_1_div_5_Template(rf, ctx) { if (rf & 1) {
14155
+ const _r2 = i0.ɵɵgetCurrentView();
14156
+ i0.ɵɵelementStart(0, "div", 11)(1, "label", 12)(2, "span", 13);
14150
14157
  i0.ɵɵtext(3);
14151
14158
  i0.ɵɵpipe(4, "rpxTranslate");
14152
14159
  i0.ɵɵelementEnd()();
14153
- i0.ɵɵtemplate(5, WriteAddressFieldComponent_div_1_div_4_span_5_Template, 3, 3, "span", 11);
14154
- i0.ɵɵelement(6, "input", 12);
14155
- i0.ɵɵelementStart(7, "button", 13);
14156
- i0.ɵɵlistener("click", function WriteAddressFieldComponent_div_1_div_4_Template_button_click_7_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.findAddress()); });
14160
+ i0.ɵɵtemplate(5, WriteAddressFieldComponent_div_1_div_5_span_5_Template, 3, 3, "span", 14);
14161
+ i0.ɵɵelement(6, "input", 15);
14162
+ i0.ɵɵelementStart(7, "button", 16);
14163
+ i0.ɵɵlistener("click", function WriteAddressFieldComponent_div_1_div_5_Template_button_click_7_listener() { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.findAddress()); });
14157
14164
  i0.ɵɵtext(8);
14158
14165
  i0.ɵɵpipe(9, "rpxTranslate");
14159
14166
  i0.ɵɵelementEnd()();
14160
14167
  } if (rf & 2) {
14161
- const ctx_r1 = i0.ɵɵnextContext(2);
14162
- i0.ɵɵproperty("id", ctx_r1.createElementId("postcodeLookup"))("ngClass", i0.ɵɵpureFunction1(14, _c1$q, ctx_r1.missingPostcode));
14168
+ const ctx_r0 = i0.ɵɵnextContext(2);
14169
+ i0.ɵɵproperty("id", ctx_r0.createElementId("postcodeLookup"))("ngClass", i0.ɵɵpureFunction1(14, _c1$q, ctx_r0.missingPostcode));
14163
14170
  i0.ɵɵadvance();
14164
- i0.ɵɵproperty("for", ctx_r1.createElementId("postcodeInput"));
14171
+ i0.ɵɵproperty("for", ctx_r0.createElementId("postcodeInput"));
14165
14172
  i0.ɵɵadvance(2);
14166
14173
  i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(4, 10, "Enter a UK postcode"));
14167
14174
  i0.ɵɵadvance(2);
14168
- i0.ɵɵproperty("ngIf", ctx_r1.missingPostcode);
14175
+ i0.ɵɵproperty("ngIf", ctx_r0.missingPostcode);
14169
14176
  i0.ɵɵadvance();
14170
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(16, _c2$4, ctx_r1.missingPostcode))("id", ctx_r1.createElementId("postcodeInput"))("formControl", ctx_r1.postcode);
14177
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(16, _c2$4, ctx_r0.missingPostcode))("id", ctx_r0.createElementId("postcodeInput"))("formControl", ctx_r0.postcode);
14171
14178
  i0.ɵɵadvance();
14172
- i0.ɵɵproperty("disabled", ctx_r1.loadingAddresses);
14179
+ i0.ɵɵproperty("disabled", ctx_r0.loadingAddresses);
14173
14180
  i0.ɵɵadvance();
14174
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(9, 12, ctx_r1.loadingAddresses ? "Finding addresses..." : "Find address"), " ");
14181
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(9, 12, ctx_r0.loadingAddresses ? "Finding addresses..." : "Find address"), " ");
14175
14182
  } }
14176
- function WriteAddressFieldComponent_div_1_div_5_span_5_Template(rf, ctx) { if (rf & 1) {
14177
- i0.ɵɵelementStart(0, "span", 14);
14183
+ function WriteAddressFieldComponent_div_1_div_6_span_5_Template(rf, ctx) { if (rf & 1) {
14184
+ i0.ɵɵelementStart(0, "span", 17);
14178
14185
  i0.ɵɵtext(1);
14179
14186
  i0.ɵɵpipe(2, "rpxTranslate");
14180
14187
  i0.ɵɵelementEnd();
14181
14188
  } if (rf & 2) {
14182
- const ctx_r1 = i0.ɵɵnextContext(3);
14189
+ const ctx_r0 = i0.ɵɵnextContext(3);
14183
14190
  i0.ɵɵadvance();
14184
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, ctx_r1.errorMessage));
14191
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, ctx_r0.errorMessage));
14185
14192
  } }
14186
- function WriteAddressFieldComponent_div_1_div_5_option_7_Template(rf, ctx) { if (rf & 1) {
14187
- i0.ɵɵelementStart(0, "option", 19);
14193
+ function WriteAddressFieldComponent_div_1_div_6_option_7_Template(rf, ctx) { if (rf & 1) {
14194
+ i0.ɵɵelementStart(0, "option", 22);
14188
14195
  i0.ɵɵtext(1);
14189
14196
  i0.ɵɵpipe(2, "rpxTranslate");
14190
14197
  i0.ɵɵelementEnd();
@@ -14193,19 +14200,19 @@ function WriteAddressFieldComponent_div_1_div_5_option_7_Template(rf, ctx) { if
14193
14200
  i0.ɵɵadvance();
14194
14201
  i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 2, "No address found"), " ");
14195
14202
  } }
14196
- function WriteAddressFieldComponent_div_1_div_5_option_8_Template(rf, ctx) { if (rf & 1) {
14197
- i0.ɵɵelementStart(0, "option", 19);
14203
+ function WriteAddressFieldComponent_div_1_div_6_option_8_Template(rf, ctx) { if (rf & 1) {
14204
+ i0.ɵɵelementStart(0, "option", 22);
14198
14205
  i0.ɵɵtext(1);
14199
14206
  i0.ɵɵpipe(2, "rpxTranslate");
14200
14207
  i0.ɵɵelementEnd();
14201
14208
  } if (rf & 2) {
14202
- const ctx_r1 = i0.ɵɵnextContext(3);
14209
+ const ctx_r0 = i0.ɵɵnextContext(3);
14203
14210
  i0.ɵɵproperty("ngValue", undefined);
14204
14211
  i0.ɵɵadvance();
14205
- i0.ɵɵtextInterpolate2(" ", ctx_r1.addressOptions.length, " ", i0.ɵɵpipeBind1(2, 3, ctx_r1.addressOptions.length === 1 ? "address found" : "addresses found"), " ");
14212
+ i0.ɵɵtextInterpolate2(" ", ctx_r0.addressOptions.length, " ", i0.ɵɵpipeBind1(2, 3, ctx_r0.addressOptions.length === 1 ? "address found" : "addresses found"), " ");
14206
14213
  } }
14207
- function WriteAddressFieldComponent_div_1_div_5_option_9_Template(rf, ctx) { if (rf & 1) {
14208
- i0.ɵɵelementStart(0, "option", 19);
14214
+ function WriteAddressFieldComponent_div_1_div_6_option_9_Template(rf, ctx) { if (rf & 1) {
14215
+ i0.ɵɵelementStart(0, "option", 22);
14209
14216
  i0.ɵɵtext(1);
14210
14217
  i0.ɵɵelementEnd();
14211
14218
  } if (rf & 2) {
@@ -14214,39 +14221,39 @@ function WriteAddressFieldComponent_div_1_div_5_option_9_Template(rf, ctx) { if
14214
14221
  i0.ɵɵadvance();
14215
14222
  i0.ɵɵtextInterpolate1(" ", addressOption_r4.description, " ");
14216
14223
  } }
14217
- function WriteAddressFieldComponent_div_1_div_5_Template(rf, ctx) { if (rf & 1) {
14224
+ function WriteAddressFieldComponent_div_1_div_6_Template(rf, ctx) { if (rf & 1) {
14218
14225
  const _r3 = i0.ɵɵgetCurrentView();
14219
- i0.ɵɵelementStart(0, "div", 15)(1, "label", 9)(2, "span", 10);
14226
+ i0.ɵɵelementStart(0, "div", 18)(1, "label", 12)(2, "span", 13);
14220
14227
  i0.ɵɵtext(3);
14221
14228
  i0.ɵɵpipe(4, "rpxTranslate");
14222
14229
  i0.ɵɵelementEnd()();
14223
- i0.ɵɵtemplate(5, WriteAddressFieldComponent_div_1_div_5_span_5_Template, 3, 3, "span", 11);
14224
- i0.ɵɵelementStart(6, "select", 16);
14225
- i0.ɵɵlistener("change", function WriteAddressFieldComponent_div_1_div_5_Template_select_change_6_listener() { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.addressSelected()); });
14226
- i0.ɵɵtemplate(7, WriteAddressFieldComponent_div_1_div_5_option_7_Template, 3, 4, "option", 17)(8, WriteAddressFieldComponent_div_1_div_5_option_8_Template, 3, 5, "option", 17)(9, WriteAddressFieldComponent_div_1_div_5_option_9_Template, 2, 2, "option", 18);
14230
+ i0.ɵɵtemplate(5, WriteAddressFieldComponent_div_1_div_6_span_5_Template, 3, 3, "span", 14);
14231
+ i0.ɵɵelementStart(6, "select", 19);
14232
+ i0.ɵɵlistener("change", function WriteAddressFieldComponent_div_1_div_6_Template_select_change_6_listener() { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.addressSelected()); });
14233
+ i0.ɵɵtemplate(7, WriteAddressFieldComponent_div_1_div_6_option_7_Template, 3, 4, "option", 20)(8, WriteAddressFieldComponent_div_1_div_6_option_8_Template, 3, 5, "option", 20)(9, WriteAddressFieldComponent_div_1_div_6_option_9_Template, 2, 2, "option", 21);
14227
14234
  i0.ɵɵelementEnd()();
14228
14235
  } if (rf & 2) {
14229
- const ctx_r1 = i0.ɵɵnextContext(2);
14230
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(11, _c1$q, ctx_r1.noAddressSelected));
14236
+ const ctx_r0 = i0.ɵɵnextContext(2);
14237
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(11, _c1$q, ctx_r0.noAddressSelected));
14231
14238
  i0.ɵɵadvance();
14232
- i0.ɵɵproperty("for", ctx_r1.createElementId("addressList"));
14239
+ i0.ɵɵproperty("for", ctx_r0.createElementId("addressList"));
14233
14240
  i0.ɵɵadvance(2);
14234
14241
  i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(4, 9, "Select an address"));
14235
14242
  i0.ɵɵadvance(2);
14236
- i0.ɵɵproperty("ngIf", ctx_r1.noAddressSelected);
14243
+ i0.ɵɵproperty("ngIf", ctx_r0.noAddressSelected);
14237
14244
  i0.ɵɵadvance();
14238
- i0.ɵɵproperty("id", ctx_r1.createElementId("addressList"))("formControl", ctx_r1.addressList);
14245
+ i0.ɵɵproperty("id", ctx_r0.createElementId("addressList"))("formControl", ctx_r0.addressList);
14239
14246
  i0.ɵɵadvance();
14240
- i0.ɵɵproperty("ngIf", ctx_r1.addressOptions.length === 0);
14247
+ i0.ɵɵproperty("ngIf", ctx_r0.addressOptions.length === 0);
14241
14248
  i0.ɵɵadvance();
14242
- i0.ɵɵproperty("ngIf", ctx_r1.addressOptions.length > 0);
14249
+ i0.ɵɵproperty("ngIf", ctx_r0.addressOptions.length > 0);
14243
14250
  i0.ɵɵadvance();
14244
- i0.ɵɵproperty("ngForOf", ctx_r1.addressOptions);
14251
+ i0.ɵɵproperty("ngForOf", ctx_r0.addressOptions);
14245
14252
  } }
14246
- function WriteAddressFieldComponent_div_1_a_6_Template(rf, ctx) { if (rf & 1) {
14253
+ function WriteAddressFieldComponent_div_1_a_7_Template(rf, ctx) { if (rf & 1) {
14247
14254
  const _r5 = i0.ɵɵgetCurrentView();
14248
- i0.ɵɵelementStart(0, "a", 20);
14249
- i0.ɵɵlistener("click", function WriteAddressFieldComponent_div_1_a_6_Template_a_click_0_listener($event) { i0.ɵɵrestoreView(_r5); const ctx_r1 = i0.ɵɵnextContext(2); ctx_r1.blankAddress(); return i0.ɵɵresetView($event.preventDefault()); });
14255
+ i0.ɵɵelementStart(0, "a", 23);
14256
+ i0.ɵɵlistener("click", function WriteAddressFieldComponent_div_1_a_7_Template_a_click_0_listener($event) { i0.ɵɵrestoreView(_r5); const ctx_r0 = i0.ɵɵnextContext(2); ctx_r0.blankAddress(); return i0.ɵɵresetView($event.preventDefault()); });
14250
14257
  i0.ɵɵtext(1);
14251
14258
  i0.ɵɵpipe(2, "rpxTranslate");
14252
14259
  i0.ɵɵelementEnd();
@@ -14259,18 +14266,20 @@ function WriteAddressFieldComponent_div_1_Template(rf, ctx) { if (rf & 1) {
14259
14266
  i0.ɵɵtext(2);
14260
14267
  i0.ɵɵpipe(3, "ccdFieldLabel");
14261
14268
  i0.ɵɵelementEnd();
14262
- i0.ɵɵtemplate(4, WriteAddressFieldComponent_div_1_div_4_Template, 10, 18, "div", 5)(5, WriteAddressFieldComponent_div_1_div_5_Template, 10, 13, "div", 6)(6, WriteAddressFieldComponent_div_1_a_6_Template, 3, 3, "a", 7);
14269
+ i0.ɵɵtemplate(4, WriteAddressFieldComponent_div_1_span_4_Template, 3, 3, "span", 5)(5, WriteAddressFieldComponent_div_1_div_5_Template, 10, 18, "div", 6)(6, WriteAddressFieldComponent_div_1_div_6_Template, 10, 13, "div", 7)(7, WriteAddressFieldComponent_div_1_a_7_Template, 3, 3, "a", 8);
14263
14270
  i0.ɵɵelementEnd();
14264
14271
  } if (rf & 2) {
14265
- const ctx_r1 = i0.ɵɵnextContext();
14272
+ const ctx_r0 = i0.ɵɵnextContext();
14266
14273
  i0.ɵɵadvance(2);
14267
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 4, ctx_r1.caseField));
14274
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 5, ctx_r0.caseField));
14268
14275
  i0.ɵɵadvance(2);
14269
- i0.ɵɵproperty("ngIf", !ctx_r1.isExpanded);
14276
+ i0.ɵɵproperty("ngIf", ctx_r0.caseField.hint_text);
14277
+ i0.ɵɵadvance();
14278
+ i0.ɵɵproperty("ngIf", !ctx_r0.isExpanded);
14270
14279
  i0.ɵɵadvance();
14271
- i0.ɵɵproperty("ngIf", ctx_r1.addressOptions);
14280
+ i0.ɵɵproperty("ngIf", ctx_r0.addressOptions);
14272
14281
  i0.ɵɵadvance();
14273
- i0.ɵɵproperty("ngIf", !ctx_r1.shouldShowDetailFields());
14282
+ i0.ɵɵproperty("ngIf", !ctx_r0.shouldShowDetailFields());
14274
14283
  } }
14275
14284
  class WriteAddressFieldComponent extends AbstractFieldWriteComponent {
14276
14285
  isCompoundPipe;
@@ -14404,9 +14413,9 @@ class WriteAddressFieldComponent extends AbstractFieldWriteComponent {
14404
14413
  let _t;
14405
14414
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.writeComplexFieldComponent = _t.first);
14406
14415
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.focusElementDirectives = _t);
14407
- } }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature, i0.ɵɵNgOnChangesFeature], decls: 4, vars: 9, consts: [["writeComplexFieldComponent", ""], [1, "form-group", 3, "id"], [4, "ngIf"], [3, "hidden", "caseField", "renderLabel", "parent", "formGroup", "ignoreMandatory", "idPrefix"], [1, "heading-h2"], ["class", "form-group bottom-30 postcodeLookup", 3, "id", "ngClass", 4, "ngIf"], ["class", "form-group", "id", "selectAddress", 3, "ngClass", 4, "ngIf"], ["class", "manual-link bottom-30", "href", "#", 3, "click", 4, "ngIf"], [1, "form-group", "bottom-30", "postcodeLookup", 3, "id", "ngClass"], [3, "for"], [1, "form-label"], ["class", "error-message", 4, "ngIf"], ["type", "text", "name", "postcode", 1, "form-control", "postcodeinput", "inline-block", 3, "ngClass", "id", "formControl"], ["type", "button", 1, "button", "button-30", 3, "click", "disabled"], [1, "error-message"], ["id", "selectAddress", 1, "form-group", 3, "ngClass"], ["name", "address", "focusElement", "", 1, "form-control", "ccd-dropdown", "addressList", 3, "change", "id", "formControl"], [3, "ngValue", 4, "ngIf"], [3, "ngValue", 4, "ngFor", "ngForOf"], [3, "ngValue"], ["href", "#", 1, "manual-link", "bottom-30", 3, "click"]], template: function WriteAddressFieldComponent_Template(rf, ctx) { if (rf & 1) {
14416
+ } }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature, i0.ɵɵNgOnChangesFeature], decls: 4, vars: 9, consts: [["writeComplexFieldComponent", ""], [1, "form-group", 3, "id"], [4, "ngIf"], [3, "hidden", "caseField", "renderLabel", "parent", "formGroup", "ignoreMandatory", "idPrefix"], [1, "heading-h2"], ["class", "form-hint", 4, "ngIf"], ["class", "form-group bottom-30 postcodeLookup", 3, "id", "ngClass", 4, "ngIf"], ["class", "form-group", "id", "selectAddress", 3, "ngClass", 4, "ngIf"], ["class", "manual-link bottom-30", "href", "#", 3, "click", 4, "ngIf"], [1, "form-hint"], [3, "content"], [1, "form-group", "bottom-30", "postcodeLookup", 3, "id", "ngClass"], [3, "for"], [1, "form-label"], ["class", "error-message", 4, "ngIf"], ["type", "text", "name", "postcode", 1, "form-control", "postcodeinput", "inline-block", 3, "ngClass", "id", "formControl"], ["type", "button", 1, "button", "button-30", 3, "click", "disabled"], [1, "error-message"], ["id", "selectAddress", 1, "form-group", 3, "ngClass"], ["name", "address", "focusElement", "", 1, "form-control", "ccd-dropdown", "addressList", 3, "change", "id", "formControl"], [3, "ngValue", 4, "ngIf"], [3, "ngValue", 4, "ngFor", "ngForOf"], [3, "ngValue"], ["href", "#", 1, "manual-link", "bottom-30", 3, "click"]], template: function WriteAddressFieldComponent_Template(rf, ctx) { if (rf & 1) {
14408
14417
  i0.ɵɵelementStart(0, "div", 1);
14409
- i0.ɵɵtemplate(1, WriteAddressFieldComponent_div_1_Template, 7, 6, "div", 2);
14418
+ i0.ɵɵtemplate(1, WriteAddressFieldComponent_div_1_Template, 8, 7, "div", 2);
14410
14419
  i0.ɵɵelement(2, "ccd-write-complex-type-field", 3, 0);
14411
14420
  i0.ɵɵelementEnd();
14412
14421
  } if (rf & 2) {
@@ -14419,7 +14428,7 @@ class WriteAddressFieldComponent extends AbstractFieldWriteComponent {
14419
14428
  }
14420
14429
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WriteAddressFieldComponent, [{
14421
14430
  type: Component,
14422
- args: [{ selector: 'ccd-write-address-field', standalone: false, template: "<div class=\"form-group\" [id]=\"id()\">\n <div *ngIf=\"!isComplexWithHiddenFields()\">\n <h2 class=\"heading-h2\">{{caseField | ccdFieldLabel}}</h2>\n\n <div class=\"form-group bottom-30 postcodeLookup\" [id]=\"createElementId('postcodeLookup')\" [ngClass]=\"{'form-group-error': missingPostcode}\" *ngIf=\"!isExpanded\">\n <label [for]=\"createElementId('postcodeInput')\">\n <span class=\"form-label\">{{'Enter a UK postcode' | rpxTranslate}}</span>\n </label>\n <span class=\"error-message\" *ngIf=\"missingPostcode\">{{errorMessage | rpxTranslate}}</span>\n <input type=\"text\" [ngClass]=\"{'govuk-input--error': missingPostcode}\"\n [id]=\"createElementId('postcodeInput')\" name=\"postcode\" class=\"form-control postcodeinput inline-block\" [formControl]=\"postcode\">\n <button type=\"button\" class=\"button button-30\" (click)=\"findAddress()\" [disabled]=\"loadingAddresses\">\n {{(loadingAddresses ? 'Finding addresses...' : 'Find address') | rpxTranslate}}\n </button>\n </div>\n\n <div class=\"form-group\" *ngIf=\"addressOptions\" id=\"selectAddress\" [ngClass]=\"{'form-group-error': noAddressSelected}\">\n <label [for]=\"createElementId('addressList')\">\n <span class=\"form-label\">{{'Select an address' | rpxTranslate}}</span>\n </label>\n <span class=\"error-message\" *ngIf=\"noAddressSelected\">{{errorMessage | rpxTranslate}}</span>\n <select class=\"form-control ccd-dropdown addressList\" [id]=\"createElementId('addressList')\" name=\"address\" [formControl]=\"addressList\" (change)=\"addressSelected()\" focusElement>\n <option *ngIf=\"addressOptions.length === 0\" [ngValue]=\"undefined\">\n {{'No address found' | rpxTranslate}}\n </option>\n <option *ngIf=\"addressOptions.length > 0\" [ngValue]=\"undefined\">\n {{addressOptions.length}} {{(addressOptions.length === 1 ? 'address found' : 'addresses found') | rpxTranslate}}\n </option>\n <option *ngFor=\"let addressOption of addressOptions\" [ngValue]=\"addressOption.value\">\n {{addressOption.description}}\n </option>\n </select>\n </div>\n\n <a class=\"manual-link bottom-30\" *ngIf=\"!shouldShowDetailFields()\" (click)=\"blankAddress(); $event.preventDefault()\" href=\"#\">\n {{\"I can't enter a UK postcode\" | rpxTranslate}}\n </a>\n </div>\n\n <ccd-write-complex-type-field\n [hidden]=\"!shouldShowDetailFields()\"\n [caseField]=\"caseField\"\n [renderLabel]=\"false\"\n [parent]=\"parent\"\n [formGroup]=\"formGroup\"\n [ignoreMandatory]=\"true\"\n [idPrefix]=\"buildIdPrefix('detail')\"\n #writeComplexFieldComponent>\n </ccd-write-complex-type-field>\n</div>\n", styles: [".govuk-js-link{appearance:none;background:none;border:none;color:#005ea5;cursor:pointer;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;margin:0;padding:0;text-decoration:underline}.govuk-js-link:hover{color:#2b8cc4;text-decoration-thickness:max(3px,.1875rem,.12em)}.govuk-js-link:focus{background-color:#ffbf47;color:#000;outline:3px solid transparent;text-decoration:none;box-shadow:0 -2px #ffbf47,0 4px #000}.govuk-js-link:visited{color:#4c2c92}.manual-link{cursor:pointer;display:block;text-decoration:underline}\n"] }]
14431
+ args: [{ selector: 'ccd-write-address-field', standalone: false, template: "<div class=\"form-group\" [id]=\"id()\">\n <div *ngIf=\"!isComplexWithHiddenFields()\">\n <h2 class=\"heading-h2\">{{caseField | ccdFieldLabel}}</h2>\n <span class=\"form-hint\" *ngIf=\"caseField.hint_text\">\n <ccd-markdown [content]=\"caseField.hint_text | rpxTranslate\"></ccd-markdown>\n </span>\n\n <div class=\"form-group bottom-30 postcodeLookup\" [id]=\"createElementId('postcodeLookup')\" [ngClass]=\"{'form-group-error': missingPostcode}\" *ngIf=\"!isExpanded\">\n <label [for]=\"createElementId('postcodeInput')\">\n <span class=\"form-label\">{{'Enter a UK postcode' | rpxTranslate}}</span>\n </label>\n <span class=\"error-message\" *ngIf=\"missingPostcode\">{{errorMessage | rpxTranslate}}</span>\n <input type=\"text\" [ngClass]=\"{'govuk-input--error': missingPostcode}\"\n [id]=\"createElementId('postcodeInput')\" name=\"postcode\" class=\"form-control postcodeinput inline-block\" [formControl]=\"postcode\">\n <button type=\"button\" class=\"button button-30\" (click)=\"findAddress()\" [disabled]=\"loadingAddresses\">\n {{(loadingAddresses ? 'Finding addresses...' : 'Find address') | rpxTranslate}}\n </button>\n </div>\n\n <div class=\"form-group\" *ngIf=\"addressOptions\" id=\"selectAddress\" [ngClass]=\"{'form-group-error': noAddressSelected}\">\n <label [for]=\"createElementId('addressList')\">\n <span class=\"form-label\">{{'Select an address' | rpxTranslate}}</span>\n </label>\n <span class=\"error-message\" *ngIf=\"noAddressSelected\">{{errorMessage | rpxTranslate}}</span>\n <select class=\"form-control ccd-dropdown addressList\" [id]=\"createElementId('addressList')\" name=\"address\" [formControl]=\"addressList\" (change)=\"addressSelected()\" focusElement>\n <option *ngIf=\"addressOptions.length === 0\" [ngValue]=\"undefined\">\n {{'No address found' | rpxTranslate}}\n </option>\n <option *ngIf=\"addressOptions.length > 0\" [ngValue]=\"undefined\">\n {{addressOptions.length}} {{(addressOptions.length === 1 ? 'address found' : 'addresses found') | rpxTranslate}}\n </option>\n <option *ngFor=\"let addressOption of addressOptions\" [ngValue]=\"addressOption.value\">\n {{addressOption.description}}\n </option>\n </select>\n </div>\n\n <a class=\"manual-link bottom-30\" *ngIf=\"!shouldShowDetailFields()\" (click)=\"blankAddress(); $event.preventDefault()\" href=\"#\">\n {{\"I can't enter a UK postcode\" | rpxTranslate}}\n </a>\n </div>\n\n <ccd-write-complex-type-field\n [hidden]=\"!shouldShowDetailFields()\"\n [caseField]=\"caseField\"\n [renderLabel]=\"false\"\n [parent]=\"parent\"\n [formGroup]=\"formGroup\"\n [ignoreMandatory]=\"true\"\n [idPrefix]=\"buildIdPrefix('detail')\"\n #writeComplexFieldComponent>\n </ccd-write-complex-type-field>\n</div>\n", styles: [".govuk-js-link{appearance:none;background:none;border:none;color:#005ea5;cursor:pointer;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;margin:0;padding:0;text-decoration:underline}.govuk-js-link:hover{color:#2b8cc4;text-decoration-thickness:max(3px,.1875rem,.12em)}.govuk-js-link:focus{background-color:#ffbf47;color:#000;outline:3px solid transparent;text-decoration:none;box-shadow:0 -2px #ffbf47,0 4px #000}.govuk-js-link:visited{color:#4c2c92}.manual-link{cursor:pointer;display:block;text-decoration:underline}\n"] }]
14423
14432
  }], () => [{ type: AddressesService }, { type: IsCompoundPipe }], { writeComplexFieldComponent: [{
14424
14433
  type: ViewChild,
14425
14434
  args: ['writeComplexFieldComponent', { static: false }]
@@ -14756,6 +14765,9 @@ class CaseFileViewFieldComponent {
14756
14765
  ngAfterViewInit() {
14757
14766
  const slider = this.elementRef.nativeElement.querySelector('.slider');
14758
14767
  const documentTreeContainer = this.elementRef.nativeElement.querySelector('.document-tree-container');
14768
+ if (!slider || !documentTreeContainer) {
14769
+ return;
14770
+ }
14759
14771
  const mousedown$ = fromEvent(slider, 'mousedown');
14760
14772
  const mousemove$ = fromEvent(document, 'mousemove');
14761
14773
  const mouseup$ = fromEvent(document, 'mouseup');
@@ -16302,7 +16314,7 @@ class RemoveDialogComponent {
16302
16314
  this.result = 'Cancel';
16303
16315
  this.matDialogRef.close(this.result);
16304
16316
  }
16305
- static ɵfac = function RemoveDialogComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || RemoveDialogComponent)(i0.ɵɵdirectiveInject(i1$3.MatLegacyDialogRef)); };
16317
+ static ɵfac = function RemoveDialogComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || RemoveDialogComponent)(i0.ɵɵdirectiveInject(i1$3.MatDialogRef)); };
16306
16318
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: RemoveDialogComponent, selectors: [["ccd-remove-dialog"]], standalone: false, decls: 19, vars: 12, consts: [[1, "dialog-header"], [1, "heading-h2", "x", 3, "click"], [1, "heading-h2", "dialog-title"], [1, "dialog-info"], [1, "text-info"], ["type", "button", "title", "Remove", 1, "button", "action-button", 3, "click"], ["type", "button", "title", "Cancel", 1, "button", "button-secondary", 3, "click"]], template: function RemoveDialogComponent_Template(rf, ctx) { if (rf & 1) {
16307
16319
  i0.ɵɵelementStart(0, "div")(1, "div", 0)(2, "h2", 1);
16308
16320
  i0.ɵɵlistener("click", function RemoveDialogComponent_Template_h2_click_2_listener() { return ctx.cancel(); });
@@ -16340,7 +16352,7 @@ class RemoveDialogComponent {
16340
16352
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(RemoveDialogComponent, [{
16341
16353
  type: Component,
16342
16354
  args: [{ selector: 'ccd-remove-dialog', standalone: false, template: "<div>\n <div class=\"dialog-header\">\n <h2 (click)=\"cancel()\" class=\"heading-h2 x\">X</h2>\n </div>\n <div>\n <h2 class=\"heading-h2 dialog-title\">{{'Are you sure you want to remove the item?' | rpxTranslate}}</h2>\n </div>\n <div class=\"dialog-info\">\n <span class=\"text-info\">\n {{'You are about to permanently remove an item, are you sure you want to remove this item?' | rpxTranslate}}\n </span>\n </div>\n <div>\n <button type=\"button\" title=\"Remove\" class=\"button action-button\" (click)=\"remove()\">{{'Remove' | rpxTranslate}}</button>\n <button type=\"button\" title=\"Cancel\" class=\"button button-secondary\" (click)=\"cancel()\">{{'Cancel' | rpxTranslate}}</button>\n </div>\n</div>\n", styles: [".x{margin:0;padding:9px 9px 0 0;font-size:24px;font-weight:700;font-style:normal;font-stretch:normal;cursor:pointer;color:#6e7071}@media(prefers-color-scheme:dark){.dialog-title,.dialog-info{color:#000}}.dialog-header{text-align:right}.dialog-title,.dialog-info{margin:0 0 21px 25px}.action-button{margin:0 15px 0 25px}\n"] }]
16343
- }], () => [{ type: i1$3.MatLegacyDialogRef }], null); })();
16355
+ }], () => [{ type: i1$3.MatDialogRef }], null); })();
16344
16356
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(RemoveDialogComponent, { className: "RemoveDialogComponent", filePath: "lib/shared/components/dialogs/remove-dialog/remove-dialog.component.ts", lineNumber: 10 }); })();
16345
16357
 
16346
16358
  const _c0$W = ["collectionItem"];
@@ -16762,7 +16774,7 @@ class WriteCollectionFieldComponent extends AbstractFieldWriteComponent {
16762
16774
  const notSimple = ['Collection', 'Complex'];
16763
16775
  return notSimple.indexOf(caseField.field_type.collection_field_type.type) < 0;
16764
16776
  }
16765
- static ɵfac = function WriteCollectionFieldComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || WriteCollectionFieldComponent)(i0.ɵɵdirectiveInject(i1$3.MatLegacyDialog), i0.ɵɵdirectiveInject(ProfileNotifier), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
16777
+ static ɵfac = function WriteCollectionFieldComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || WriteCollectionFieldComponent)(i0.ɵɵdirectiveInject(i1$3.MatDialog), i0.ɵɵdirectiveInject(ProfileNotifier), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
16766
16778
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: WriteCollectionFieldComponent, selectors: [["ccd-write-collection-field"]], viewQuery: function WriteCollectionFieldComponent_Query(rf, ctx) { if (rf & 1) {
16767
16779
  i0.ɵɵviewQuery(_c0$W, 5);
16768
16780
  } if (rf & 2) {
@@ -16797,13 +16809,13 @@ class WriteCollectionFieldComponent extends AbstractFieldWriteComponent {
16797
16809
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WriteCollectionFieldComponent, [{
16798
16810
  type: Component,
16799
16811
  args: [{ selector: 'ccd-write-collection-field', standalone: false, template: "<div class=\"form-group\" [id]=\"id()\">\n\n <div class=\"panel collection-indicator\">\n\n <h2 class=\"heading-h2 error-spacing\" *ngIf=\"!caseField.hidden\">\n {{(caseField | ccdFieldLabel)}}\n </h2>\n <button class=\"button write-collection-add-item__top\" type=\"button\" (click)=\"addItem(true)\" [disabled]=\"isNotAuthorisedToCreate() || isSearchFilter()\">{{'Add new' | rpxTranslate}}</button>\n <h2 class=\"heading-h2 error-spacing\" *ngIf=\"caseField.hint_text || formArray.errors\">\n <span *ngIf=\"caseField.hint_text\" class=\"form-hint\">\n <ccd-markdown [content]=\"caseField.hint_text | rpxTranslate\"></ccd-markdown>\n </span>\n <span *ngIf=\"formArray.errors\" class=\"error-message\">\n {{(formArray.errors | ccdFirstError:caseField.label)}}\n </span>\n </h2>\n\n <div class=\"form-group\" [hidden]=\"caseField.hidden\" *ngIf=\"caseField.value && caseField.value.length\">\n <fieldset class=\"govuk-fieldset\">\n <div *ngFor=\"let item of collItems; let i = index; trackBy: trackByCollectionItem\" #collectionItem\n [id]=\"this.buildIdPrefix(i) + i\" class=\"form-group\">\n <div class=\"collection-title\">\n <div class=\"float-left\">\n <legend class=\"govuk-fieldset__legend\">\n <label [for]=\"item.prefix + i\"><h3 class=\"heading-h3\">{{itemLabel(i) | rpxTranslate}}</h3></label>\n </legend>\n </div>\n <div class=\"float-right\">\n <button class=\"button button-secondary\" type=\"button\" (click)=\"openModal(i)\"\n [disabled]=\"isNotAuthorisedToDelete(i)\"\n attr.aria-label=\"Remove {{ itemLabel(i) }}\">{{'Remove' | rpxTranslate}}</button>\n </div>\n </div>\n <ccd-field-write [caseField]=\"item.caseField\"\n [caseFields]=\"caseFields\"\n [formGroup]=\"formGroup\"\n [parent]=\"item.container\"\n [idPrefix]=\"item.prefix\"\n [hidden]=\"item.caseField.hidden\"\n [isExpanded]=\"isExpanded\"\n [isInSearchBlock]=\"isInSearchBlock\">\n </ccd-field-write>\n </div>\n </fieldset>\n </div>\n\n <button class=\"button write-collection-add-item__bottom\" type=\"button\" (click)=\"addItem(false)\" [disabled]=\"isNotAuthorisedToCreate() || isSearchFilter()\" *ngIf=\"caseField.value && caseField.value.length\">{{'Add new' | rpxTranslate }}</button>\n\n </div>\n\n</div>\n", styles: [".govuk-js-link{appearance:none;background:none;border:none;color:#005ea5;cursor:pointer;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;margin:0;padding:0;text-decoration:underline}.govuk-js-link:hover{color:#2b8cc4;text-decoration-thickness:max(3px,.1875rem,.12em)}.govuk-js-link:focus{background-color:#ffbf47;color:#000;outline:3px solid transparent;text-decoration:none;box-shadow:0 -2px #ffbf47,0 4px #000}.govuk-js-link:visited{color:#4c2c92}.collection-field-table tr:first-child>td{padding-top:0}.collection-field-table tr:last-child>td{border-bottom:none}.collection-field-table td.collection-actions{width:1px;white-space:nowrap}.error-spacing{margin-top:10px}.collection-title{height:51px}.float-left{float:left;padding-top:8px}.float-right{float:right}.complex-panel{margin:13px 0;border:1px solid #bfc1c3}.complex-panel .complex-panel-title{background-color:#dee0e2;padding:5px 5px 2px;border-bottom:1px solid #bfc1c3;display:block;color:#0b0c0c;font-family:nta,Arial,sans-serif;font-weight:700;text-transform:none;font-size:16px;line-height:1.25}@media(min-width:641px){.complex-panel .complex-panel-title{font-size:19px;line-height:1.3157894737}}@media print{.complex-panel .complex-panel-title{font-size:14pt}}.complex-panel .complex-panel-table>tbody>tr>th{vertical-align:top}.complex-panel .complex-panel-table>tbody>tr:last-child>th,.complex-panel .complex-panel-table>tbody>tr:last-child>td{border-bottom:none}.complex-panel .complex-panel-simple-field th{padding-left:5px;width:295px}.complex-panel .complex-panel-compound-field td{padding:5px}.collection-indicator{border-left:solid 5px #b1b4b6}\n"] }]
16800
- }], () => [{ type: i1$3.MatLegacyDialog }, { type: ProfileNotifier }, { type: i0.ChangeDetectorRef }], { caseFields: [{
16812
+ }], () => [{ type: i1$3.MatDialog }, { type: ProfileNotifier }, { type: i0.ChangeDetectorRef }], { caseFields: [{
16801
16813
  type: Input
16802
16814
  }], items: [{
16803
16815
  type: ViewChildren,
16804
16816
  args: ['collectionItem']
16805
16817
  }] }); })();
16806
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(WriteCollectionFieldComponent, { className: "WriteCollectionFieldComponent", filePath: "lib/shared/components/palette/collection/write-collection-field.component.ts", lineNumber: 32 }); })();
16818
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(WriteCollectionFieldComponent, { className: "WriteCollectionFieldComponent", filePath: "lib/shared/components/palette/collection/write-collection-field.component.ts", lineNumber: 31 }); })();
16807
16819
 
16808
16820
  function ReadComplexFieldComponent_ccd_read_complex_field_raw_1_Template(rf, ctx) { if (rf & 1) {
16809
16821
  i0.ɵɵelement(0, "ccd-read-complex-field-raw", 4);
@@ -17027,7 +17039,7 @@ class DocumentDialogComponent {
17027
17039
  this.result = 'Cancel';
17028
17040
  this.matDialogRef.close(this.result);
17029
17041
  }
17030
- static ɵfac = function DocumentDialogComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || DocumentDialogComponent)(i0.ɵɵdirectiveInject(i1$3.MatLegacyDialogRef)); };
17042
+ static ɵfac = function DocumentDialogComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || DocumentDialogComponent)(i0.ɵɵdirectiveInject(i1$3.MatDialogRef)); };
17031
17043
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: DocumentDialogComponent, selectors: [["ccd-document-dialog"]], standalone: false, decls: 19, vars: 12, consts: [[1, "dialog-header"], [1, "heading-h2", "x", 3, "click"], [1, "heading-h2", "dialog-title"], [1, "dialog-info"], [1, "text-info"], ["type", "button", "title", "Replace", 1, "button", "action-button", 3, "click"], ["type", "button", "title", "Cancel", 1, "button", "button-secondary", 3, "click"]], template: function DocumentDialogComponent_Template(rf, ctx) { if (rf & 1) {
17032
17044
  i0.ɵɵelementStart(0, "div")(1, "div", 0)(2, "h2", 1);
17033
17045
  i0.ɵɵlistener("click", function DocumentDialogComponent_Template_h2_click_2_listener() { return ctx.cancel(); });
@@ -17065,7 +17077,7 @@ class DocumentDialogComponent {
17065
17077
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DocumentDialogComponent, [{
17066
17078
  type: Component,
17067
17079
  args: [{ selector: 'ccd-document-dialog', standalone: false, template: "<div>\n <div class=\"dialog-header\">\n <h2 (click)=\"cancel()\" class=\"heading-h2 x\">X</h2>\n </div>\n <div>\n <h2 class=\"heading-h2 dialog-title\">{{'Are you sure you want to replace the existing file?' | rpxTranslate}}</h2>\n </div>\n <div class=\"dialog-info\">\n <span class=\"text-info\">{{'You are about to delete the original file uploaded. Are you sure you want to proceed?' | rpxTranslate}}</span>\n </div>\n <div>\n <button type=\"button\" title=\"Replace\" class=\"button action-button\" (click)=\"replace()\">{{'Replace file' | rpxTranslate}}</button>\n <button type=\"button\" title=\"Cancel\" class=\"button button-secondary\" (click)=\"cancel()\">{{'Cancel' | rpxTranslate}}</button>\n </div>\n</div>\n", styles: [".x{margin:0;padding:9px 9px 0 0;font-size:24px;font-weight:700;font-style:normal;font-stretch:normal;cursor:pointer;color:#6e7071}@media(prefers-color-scheme:dark){.dialog-title,.dialog-info{color:#000}}.dialog-header{text-align:right}.dialog-title,.dialog-info{margin:0 0 21px 25px}.action-button{margin:0 15px 0 25px}\n"] }]
17068
- }], () => [{ type: i1$3.MatLegacyDialogRef }], null); })();
17080
+ }], () => [{ type: i1$3.MatDialogRef }], null); })();
17069
17081
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(DocumentDialogComponent, { className: "DocumentDialogComponent", filePath: "lib/shared/components/dialogs/document-dialog/document-dialog.component.ts", lineNumber: 10 }); })();
17070
17082
 
17071
17083
  class FileUploadStateService {
@@ -17460,7 +17472,7 @@ class WriteDocumentFieldComponent extends AbstractFieldWriteComponent {
17460
17472
  this.valid = false;
17461
17473
  this.fileUploadStateService.setUploadInProgress(false);
17462
17474
  }
17463
- static ɵfac = function WriteDocumentFieldComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || WriteDocumentFieldComponent)(i0.ɵɵdirectiveInject(AbstractAppConfig), i0.ɵɵdirectiveInject(CaseNotifier), i0.ɵɵdirectiveInject(DocumentManagementService), i0.ɵɵdirectiveInject(i1$3.MatLegacyDialog), i0.ɵɵdirectiveInject(FileUploadStateService), i0.ɵɵdirectiveInject(JurisdictionService), i0.ɵɵdirectiveInject(SessionStorageService)); };
17475
+ static ɵfac = function WriteDocumentFieldComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || WriteDocumentFieldComponent)(i0.ɵɵdirectiveInject(AbstractAppConfig), i0.ɵɵdirectiveInject(CaseNotifier), i0.ɵɵdirectiveInject(DocumentManagementService), i0.ɵɵdirectiveInject(i1$3.MatDialog), i0.ɵɵdirectiveInject(FileUploadStateService), i0.ɵɵdirectiveInject(JurisdictionService), i0.ɵɵdirectiveInject(SessionStorageService)); };
17464
17476
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: WriteDocumentFieldComponent, selectors: [["ccd-write-document-field"]], viewQuery: function WriteDocumentFieldComponent_Query(rf, ctx) { if (rf & 1) {
17465
17477
  i0.ɵɵviewQuery(_c0$V, 5);
17466
17478
  } if (rf & 2) {
@@ -17521,11 +17533,11 @@ class WriteDocumentFieldComponent extends AbstractFieldWriteComponent {
17521
17533
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WriteDocumentFieldComponent, [{
17522
17534
  type: Component,
17523
17535
  args: [{ selector: 'ccd-write-document-field', standalone: false, template: "<div class=\"form-group\" [ngClass]=\"{'form-group-error bottom-30': !valid}\">\n <label [for]=\"id()\">\n <span class=\"form-label\" attr.aria-label=\"{{caseField | ccdFieldLabel}}\">{{(caseField | ccdFieldLabel)}}</span>\n </label>\n <span class=\"form-hint\" *ngIf=\"caseField.hint_text\">\n <markdown [data]=\"caseField.hint_text | rpxTranslate\"></markdown>\n </span>\n <span class=\"error-message\"\n role=\"alert\"\n tabindex=\"0\"\n [hidden]=\"!(fileUploadMessages && !valid)\">\n {{ fileUploadMessages | rpxTranslate }}\n </span>\n <div>\n <!--<span *ngIf=\"getUploadedFileName()\" class=\"text-16\">File name: {{getUploadedFileName()}}</span>-->\n <ccd-read-document-field *ngIf=\"caseField\" [caseField]=\"caseField\"></ccd-read-document-field>\n </div>\n\n <div style='position:relative'>\n <div [id]=\"createElementId('fileInputWrapper')\" (click)=\"fileSelectEvent()\" (keyup)=\"fileSelectEvent()\"></div>\n <input class=\"form-control bottom-30\" [id]=\"id()\" type=\"file\" (keydown.Tab)=\"fileValidationsOnTab()\" (change)=\"fileChangeEvent($event, caseField.field_type.regular_expression)\"\n accept=\"{{caseField.field_type.regular_expression}}\" #fileInput/>\n </div>\n</div>\n<div class=\"form-group bottom-30\">\n <button class=\"button button-secondary\" type=\"button\" aria-label=\"Cancel upload\" (click)=\"cancelUpload()\" [disabled]=\"!isUploadInProgress()\">{{'Cancel upload' | rpxTranslate}}</button>\n</div>\n" }]
17524
- }], () => [{ type: AbstractAppConfig }, { type: CaseNotifier }, { type: DocumentManagementService }, { type: i1$3.MatLegacyDialog }, { type: FileUploadStateService }, { type: JurisdictionService }, { type: SessionStorageService }], { fileInput: [{
17536
+ }], () => [{ type: AbstractAppConfig }, { type: CaseNotifier }, { type: DocumentManagementService }, { type: i1$3.MatDialog }, { type: FileUploadStateService }, { type: JurisdictionService }, { type: SessionStorageService }], { fileInput: [{
17525
17537
  type: ViewChild,
17526
17538
  args: ['fileInput', { static: false }]
17527
17539
  }] }); })();
17528
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(WriteDocumentFieldComponent, { className: "WriteDocumentFieldComponent", filePath: "lib/shared/components/palette/document/write-document-field.component.ts", lineNumber: 26 }); })();
17540
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(WriteDocumentFieldComponent, { className: "WriteDocumentFieldComponent", filePath: "lib/shared/components/palette/document/write-document-field.component.ts", lineNumber: 25 }); })();
17529
17541
 
17530
17542
  class DynamicListPipe {
17531
17543
  static EMPTY = '';
@@ -18804,7 +18816,7 @@ class WriteJudicialUserFieldComponent extends WriteComplexFieldComponent {
18804
18816
  i0.ɵɵproperty("ngIf", ctx.noResults && ctx.searchTerm && ctx.searchTerm.length > ctx.minSearchCharacters && ctx.showAutocomplete);
18805
18817
  i0.ɵɵadvance();
18806
18818
  i0.ɵɵproperty("ngIf", ctx.invalidSearchTerm);
18807
- } }, dependencies: [i5.NgClass, i5.NgForOf, i5.NgIf, i4.DefaultValueAccessor, i4.NgControlStatus, i4.NgControlStatusGroup, i4.FormControlDirective, i4.FormGroupDirective, i6.MatLegacyAutocomplete, i6.MatLegacyAutocompleteTrigger, i7.MatLegacyOption, i5.AsyncPipe, FieldLabelPipe, FirstErrorPipe], styles: [".mat-option[_ngcontent-%COMP%]:hover{background:#2596be}.mat-option.select-option[_ngcontent-%COMP%]:hover{background:#1d70b8;color:#fff}.hide-autocomplete[_ngcontent-%COMP%]{display:none}"] });
18819
+ } }, dependencies: [i5.NgClass, i5.NgForOf, i5.NgIf, i4.DefaultValueAccessor, i4.NgControlStatus, i4.NgControlStatusGroup, i4.FormControlDirective, i4.FormGroupDirective, i6.MatAutocomplete, i6.MatOption, i6.MatAutocompleteTrigger, i5.AsyncPipe, FieldLabelPipe, FirstErrorPipe], styles: [".mat-option[_ngcontent-%COMP%]:hover{background:#2596be}.mat-option.select-option[_ngcontent-%COMP%]:hover{background:#1d70b8;color:#fff}.hide-autocomplete[_ngcontent-%COMP%]{display:none}"] });
18808
18820
  }
18809
18821
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WriteJudicialUserFieldComponent, [{
18810
18822
  type: Component,
@@ -19122,7 +19134,7 @@ class WriteStaffUserFieldComponent extends WriteComplexFieldComponent {
19122
19134
  i0.ɵɵproperty("ngIf", ctx.noResults && ctx.searchTerm && ctx.searchTerm.length > ctx.minSearchCharacters && ctx.showAutocomplete);
19123
19135
  i0.ɵɵadvance();
19124
19136
  i0.ɵɵproperty("ngIf", ctx.invalidSearchTerm);
19125
- } }, dependencies: [i5.NgClass, i5.NgForOf, i5.NgIf, i4.DefaultValueAccessor, i4.NgControlStatus, i4.NgControlStatusGroup, i4.FormControlDirective, i4.FormGroupDirective, i6.MatLegacyAutocomplete, i6.MatLegacyAutocompleteTrigger, i7.MatLegacyOption, i5.AsyncPipe], encapsulation: 2 });
19137
+ } }, dependencies: [i5.NgClass, i5.NgForOf, i5.NgIf, i4.DefaultValueAccessor, i4.NgControlStatus, i4.NgControlStatusGroup, i4.FormControlDirective, i4.FormGroupDirective, i6.MatAutocomplete, i6.MatOption, i6.MatAutocompleteTrigger, i5.AsyncPipe], encapsulation: 2 });
19126
19138
  }
19127
19139
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WriteStaffUserFieldComponent, [{
19128
19140
  type: Component,
@@ -27401,8 +27413,12 @@ class WriteRichTextAreaFieldComponent extends AbstractFieldWriteComponent {
27401
27413
  this.removeUnsupportedMarkup(documentElement);
27402
27414
  this.normaliseDateRangeSpacing(documentElement);
27403
27415
  this.removeUnsupportedAttributes(documentElement);
27416
+ const hasMeaningfulContent = this.hasMeaningfulRichTextContent(documentElement);
27417
+ if (hasMeaningfulContent) {
27418
+ this.preserveDocmosisBlankParagraphs(documentElement);
27419
+ }
27404
27420
  const sanitisedValue = sanitiseRichTextDocument(documentElement);
27405
- return this.hasMeaningfulRichTextContent(documentElement)
27421
+ return hasMeaningfulContent
27406
27422
  ? this.normalisePlainTextValue(sanitisedValue)
27407
27423
  : '';
27408
27424
  }
@@ -27422,11 +27438,22 @@ class WriteRichTextAreaFieldComponent extends AbstractFieldWriteComponent {
27422
27438
  this.removeUnsupportedMarkup(documentElement);
27423
27439
  this.normaliseDateRangeSpacing(documentElement);
27424
27440
  this.removeUnsupportedAttributes(documentElement);
27441
+ const hasMeaningfulContent = this.hasMeaningfulRichTextContent(documentElement);
27442
+ if (hasMeaningfulContent) {
27443
+ this.preserveDocmosisBlankParagraphs(documentElement);
27444
+ }
27425
27445
  const sanitisedValue = sanitiseRichTextDocument(documentElement);
27426
- return this.hasMeaningfulRichTextContent(documentElement)
27446
+ return hasMeaningfulContent
27427
27447
  ? this.normalisePlainTextValue(sanitisedValue)
27428
27448
  : '';
27429
27449
  }
27450
+ /**
27451
+ * Gives intentionally blank paragraphs content so Docmosis preserves them as blank lines.
27452
+ * This runs only when the document has meaningful content, so a completely empty field remains empty.
27453
+ */
27454
+ preserveDocmosisBlankParagraphs(documentElement) {
27455
+ this.replaceBlankParagraphContent(documentElement, '\u00a0');
27456
+ }
27430
27457
  hasMeaningfulRichTextContent(documentElement) {
27431
27458
  const visibleText = (documentElement.body.textContent || '')
27432
27459
  .replace(/[\s\u00a0\u200b-\u200d\ufeff]/g, '');
@@ -27547,7 +27574,8 @@ class WriteRichTextAreaFieldComponent extends AbstractFieldWriteComponent {
27547
27574
  emitEvent: false,
27548
27575
  emitModelToViewChange: false
27549
27576
  });
27550
- if (normalisedValue || this.editorHasMeaningfulRichTextContent()) {
27577
+ if ((normalisedValue || this.editorHasMeaningfulRichTextContent())
27578
+ && !this.differsOnlyByDocmosisBlankParagraphs(value, normalisedValue)) {
27551
27579
  this.editor.setContent(normalisedValue || '');
27552
27580
  }
27553
27581
  }
@@ -27555,6 +27583,34 @@ class WriteRichTextAreaFieldComponent extends AbstractFieldWriteComponent {
27555
27583
  this.isNormalisingValue = false;
27556
27584
  }
27557
27585
  }
27586
+ differsOnlyByDocmosisBlankParagraphs(value, normalisedValue) {
27587
+ if (!value || !normalisedValue) {
27588
+ return false;
27589
+ }
27590
+ const originalDocument = new DOMParser().parseFromString(value, 'text/html');
27591
+ const normalisedDocument = new DOMParser().parseFromString(normalisedValue, 'text/html');
27592
+ this.clearBlankParagraphs(originalDocument);
27593
+ this.clearBlankParagraphs(normalisedDocument);
27594
+ return originalDocument.body.innerHTML === normalisedDocument.body.innerHTML;
27595
+ }
27596
+ /**
27597
+ * Canonicalises visually blank paragraphs to <p></p> before comparing two HTML values.
27598
+ * This lets the editor avoid reloading when only the Docmosis blank-line representation changed.
27599
+ */
27600
+ clearBlankParagraphs(documentElement) {
27601
+ this.replaceBlankParagraphContent(documentElement, '');
27602
+ }
27603
+ replaceBlankParagraphContent(documentElement, replacement) {
27604
+ const paragraphs = Array.prototype.slice.call(documentElement.body.querySelectorAll('p'));
27605
+ paragraphs.forEach((paragraph) => {
27606
+ // Ignore standard whitespace (\s), non-breaking spaces (U+00A0), zero-width characters
27607
+ // (U+200B–U+200D), and the byte-order mark (U+FEFF) when checking for visible text.
27608
+ const visibleText = (paragraph.textContent || '').replace(/[\s\u00a0\u200b-\u200d\ufeff]/g, '');
27609
+ if (!visibleText && !paragraph.querySelector('hr')) {
27610
+ paragraph.textContent = replacement;
27611
+ }
27612
+ });
27613
+ }
27558
27614
  editorHasMeaningfulRichTextContent() {
27559
27615
  const documentNode = this.editor.view.state.doc;
27560
27616
  const visibleText = documentNode.textContent.replace(/[\s\u00a0\u200b-\u200d\ufeff]/g, '');
@@ -29996,7 +30052,7 @@ class CaseFileViewFolderSelectorComponent {
29996
30052
  }
29997
30053
  return null;
29998
30054
  }
29999
- static ɵfac = function CaseFileViewFolderSelectorComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CaseFileViewFolderSelectorComponent)(i0.ɵɵdirectiveInject(i1$3.MatLegacyDialogRef), i0.ɵɵdirectiveInject(MAT_LEGACY_DIALOG_DATA)); };
30055
+ static ɵfac = function CaseFileViewFolderSelectorComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CaseFileViewFolderSelectorComponent)(i0.ɵɵdirectiveInject(i1$3.MatDialogRef), i0.ɵɵdirectiveInject(MAT_DIALOG_DATA)); };
30000
30056
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CaseFileViewFolderSelectorComponent, selectors: [["xui-case-file-view-folder-selector"]], standalone: false, decls: 14, vars: 2, consts: [["folder", ""], ["tabindex", "0", "aria-label", "close", 1, "close", 3, "click", "keyup"], [1, "govuk-heading-l"], [1, "folders", "govuk-radios", "govuk-radios--conditional"], [4, "ngFor", "ngForOf"], [1, "govuk-button-group"], ["type", "button", 1, "button", "button-primary", 3, "click"], ["href", "#", 1, "cancel", 3, "click"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], [1, "folder", "govuk-radios__item"], ["type", "radio", 1, "govuk-radios__input", 3, "click", "keyup", "name", "id"], [1, "govuk-label", "govuk-radios__label", 3, "for"], ["src", "/assets/images/folder.png", "alt", "Folder icon", 1, "iconImg"]], template: function CaseFileViewFolderSelectorComponent_Template(rf, ctx) { if (rf & 1) {
30001
30057
  const _r1 = i0.ɵɵgetCurrentView();
30002
30058
  i0.ɵɵelementStart(0, "span", 1);
@@ -30030,9 +30086,9 @@ class CaseFileViewFolderSelectorComponent {
30030
30086
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseFileViewFolderSelectorComponent, [{
30031
30087
  type: Component,
30032
30088
  args: [{ selector: 'xui-case-file-view-folder-selector', encapsulation: ViewEncapsulation.None, standalone: false, template: "<span tabindex=\"0\" aria-label=\"close\" class=\"close\" (click)=\"cancel()\" (keyup)=\"$event.key === 'Enter' ? cancel() : null\"></span>\n<h2 class=\"govuk-heading-l\">Move File</h2>\n<p>Where do you want to move \"{{ data.document.document_filename }}\" file?</p>\n<div class=\"folders govuk-radios govuk-radios--conditional\">\n <ng-container *ngFor=\"let cat of currentCategories\">\n <ng-container *ngTemplateOutlet=\"folder;context:{cat:cat,level:1}\"></ng-container>\n </ng-container>\n</div>\n<div class=\"govuk-button-group\">\n <button class=\"button button-primary\" type=\"button\" (click)=\"save()\">Save</button>\n <a (click)=\"cancel(); $event.preventDefault()\" class=\"cancel\" href=\"#\">Cancel</a>\n</div>\n\n<ng-template #folder let-cat=\"cat\" let-level=\"level\">\n <div class=\"folder govuk-radios__item\">\n <input class=\"govuk-radios__input\" type=\"radio\" name=\"level-{{level}}\" [id]=\"cat.category_id\" (click)=\"handleChange($event)\" (keyup)=\"$event.key === 'Enter' ? handleChange($event) : null\" />\n <label class=\"govuk-label govuk-radios__label\" [for]=\"cat.category_id\">\n <img class=\"iconImg\" src=\"/assets/images/folder.png\" alt=\"Folder icon\" />\n {{ cat.category_name }}\n </label>\n <ng-container *ngFor=\"let subcat of cat.sub_categories\">\n <ng-container *ngTemplateOutlet=\"folder;context:{cat:subcat,level:level+1}\"></ng-container>\n </ng-container>\n </div>\n</ng-template>", styles: [":host{position:relative;display:block}.folders{margin-bottom:20px}.folder{display:none;border-top:1px solid #CCC;margin:0 0 -1px}.folder:last-child{border-bottom:1px solid #CCC}.folders>.folder{display:block}input:checked~.folder{display:block}.iconImg{position:relative;display:inline-block;height:28px}.folder>.folder{margin-left:20px}.folder label:before{top:3px}.folder label:after{top:13px}p{font-weight:700}button{margin-right:20px}.close{float:right;width:30px;height:30px;background:url(/assets/img/x.PNG) no-repeat center center;cursor:pointer}.cancel{cursor:pointer}.cdk-overlay-pane{overflow:auto;background:#fff}.cdk-overlay-pane::-webkit-scrollbar{width:7px}.cdk-overlay-pane::-webkit-scrollbar-thumb{border:4px solid rgba(0,0,0,0);background-clip:padding-box;border-radius:9999px;background-color:#aaa}.cdk-overlay-pane::-webkit-scrollbar-button{display:none}.cdk-overlay-pane::-webkit-scrollbar-track-piece{background:#eee}.cdk-overlay-pane::-webkit-scrollbar-thumb{background:#ccc}\n"] }]
30033
- }], () => [{ type: i1$3.MatLegacyDialogRef }, { type: undefined, decorators: [{
30089
+ }], () => [{ type: i1$3.MatDialogRef }, { type: undefined, decorators: [{
30034
30090
  type: Inject,
30035
- args: [MAT_LEGACY_DIALOG_DATA]
30091
+ args: [MAT_DIALOG_DATA]
30036
30092
  }] }], null); })();
30037
30093
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CaseFileViewFolderSelectorComponent, { className: "CaseFileViewFolderSelectorComponent", filePath: "lib/shared/components/palette/case-file-view/components/case-file-view-folder-selector/case-file-view-folder-selector.component.ts", lineNumber: 13 }); })();
30038
30094
 
@@ -30766,7 +30822,7 @@ class CaseFileViewFolderComponent {
30766
30822
  a.click();
30767
30823
  a.remove();
30768
30824
  }
30769
- static ɵfac = function CaseFileViewFolderComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CaseFileViewFolderComponent)(i0.ɵɵdirectiveInject(WindowService), i0.ɵɵdirectiveInject(i1$1.Router), i0.ɵɵdirectiveInject(DocumentManagementService), i0.ɵɵdirectiveInject(i1$3.MatLegacyDialog)); };
30825
+ static ɵfac = function CaseFileViewFolderComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CaseFileViewFolderComponent)(i0.ɵɵdirectiveInject(WindowService), i0.ɵɵdirectiveInject(i1$1.Router), i0.ɵɵdirectiveInject(DocumentManagementService), i0.ɵɵdirectiveInject(i1$3.MatDialog)); };
30770
30826
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CaseFileViewFolderComponent, selectors: [["ccd-case-file-view-folder"]], inputs: { categoriesAndDocuments: "categoriesAndDocuments", allowMoving: "allowMoving" }, outputs: { clickedDocument: "clickedDocument", moveDocument: "moveDocument" }, standalone: false, decls: 12, vars: 3, consts: [["role", "search", 1, "document-filter-container"], [1, "form-group", "document-filter", 3, "formGroup"], ["for", "document-search", 1, "govuk-visually-hidden"], ["type", "search", "id", "document-search", "name", "documentSearchFormControl", "formControlName", "documentSearchFormControl", "placeholder", "Search by document name", 1, "form-control", "document-search"], [1, "document-folders-header"], ["id", "document-folders-header-title", "aria-hidden", "true", 1, "document-folders-header__title"], ["role", "toolbar", "aria-label", "Document list actions", "aria-labelledby", "document-folders-header-title", 1, "document-folders-header__flex"], [3, "expandAll", "collapseAll"], [3, "sortAscending", "sortDescending"], ["class", "document-tree-container", 4, "ngIf"], [1, "document-tree-container"], [4, "ngIf"], ["role", "tree", "aria-label", "Case documents", 3, "dataSource", "treeControl"], ["class", "document-tree-container__node document-tree-container__node--document", 4, "cdkTreeNodeDef"], ["class", "document-tree-container__node document-tree-container__folder", 4, "cdkTreeNodeDef", "cdkTreeNodeDefWhen"], [1, "document-tree-container__node", "document-tree-container__node--document"], ["type", "button", 1, "node", "case-file__node", 3, "click"], ["disabled", "", "aria-hidden", "true", 1, "node__icon"], ["src", "/assets/img/case-file-view/case-file-view-document.svg", "alt", "Document icon", "aria-hidden", "true", 1, "node__iconImg"], [1, "node__name", "node-name-document"], [1, "node__document-upload-timestamp"], [1, "node__document-options", "case-file__action"], [3, "changeFolderAction", "openInANewTabAction", "downloadAction", "printAction", "allowMoving"], [1, "document-tree-container__node", "document-tree-container__folder"], ["type", "button", "cdkTreeNodeToggle", "", 1, "node"], ["aria-hidden", "true", 1, "node__icon"], ["alt", "Folder icon", "aria-hidden", "true", 1, "node__iconImg", 3, "src"], [1, "node__count"], [1, "node__name", "node__name--folder"], ["role", "group"], ["cdkTreeNodeOutlet", ""]], template: function CaseFileViewFolderComponent_Template(rf, ctx) { if (rf & 1) {
30771
30827
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "label", 2);
30772
30828
  i0.ɵɵtext(3, " Search by document name ");
@@ -30795,7 +30851,7 @@ class CaseFileViewFolderComponent {
30795
30851
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseFileViewFolderComponent, [{
30796
30852
  type: Component,
30797
30853
  args: [{ selector: 'ccd-case-file-view-folder', standalone: false, template: "<div class=\"document-filter-container\" role=\"search\">\n <div class=\"form-group document-filter\" [formGroup]=\"documentFilterFormGroup\">\n <label\n class=\"govuk-visually-hidden\"\n for=\"document-search\">\n Search by document name\n </label>\n <input\n class=\"form-control document-search\"\n type=\"search\"\n id=\"document-search\"\n name=\"documentSearchFormControl\"\n formControlName=\"documentSearchFormControl\"\n placeholder=\"Search by document name\"/>\n </div>\n</div>\n\n<div class=\"document-folders-header\">\n <div class=\"document-folders-header__title\" id=\"document-folders-header-title\" aria-hidden=\"true\">\n Documents ({{ documentCount }})\n </div>\n <div\n class=\"document-folders-header__flex\"\n role=\"toolbar\"\n aria-label=\"Document list actions\"\n aria-labelledby=\"document-folders-header-title\">\n <ccd-case-file-view-folder-toggle\n (expandAll)=\"expandAll($event)\"\n (collapseAll)=\"collapseAll($event)\">\n </ccd-case-file-view-folder-toggle>\n <ccd-case-file-view-folder-sort\n (sortAscending)=\"sortDataSourceAscending($event)\"\n (sortDescending)=\"sortDataSourceDescending($event)\">\n </ccd-case-file-view-folder-sort>\n </div>\n</div>\n\n<div class=\"document-tree-container\" *ngIf=\"documentTreeData\">\n <div *ngIf=\"!nestedDataSource || nestedDataSource.length === 0\">\n No results found\n </div>\n <div>\n <cdk-tree\n [dataSource]=\"nestedDataSource\"\n [treeControl]=\"nestedTreeControl\"\n role=\"tree\"\n aria-label=\"Case documents\">\n <!-- document -->\n <cdk-nested-tree-node class=\"document-tree-container__node document-tree-container__node--document\" *cdkTreeNodeDef=\"let node\">\n <button\n type=\"button\"\n class=\"node case-file__node\"\n [attr.aria-label]=\"node.name\"\n (click)=\"selectedNodeItem = node; clickedDocument.emit(node)\"\n [class.node--selected]=\"selectedNodeItem?.name === node.name\">\n <div class=\"node__icon\" disabled aria-hidden=\"true\">\n <img src=\"/assets/img/case-file-view/case-file-view-document.svg\"\n class=\"node__iconImg\"\n alt=\"Document icon\"\n aria-hidden=\"true\"\n />\n </div>\n <span class=\"node__name node-name-document\" [attr.title]=\"node.name\">\n {{ node.name }}\n <br />\n <span class=\"node__document-upload-timestamp\">{{\n node.upload_timestamp | ccdDate: \"local\":\"dd MMM yyyy HH:mm\"\n }}</span>\n </span>\n </button>\n <div class=\"node__document-options case-file__action\">\n <ccd-case-file-view-folder-document-actions\n (changeFolderAction)=\"triggerDocumentAction('changeFolder', node)\"\n (openInANewTabAction)=\"triggerDocumentAction('openInANewTab', node)\"\n (downloadAction)=\"triggerDocumentAction('download', node)\"\n (printAction)=\"triggerDocumentAction('print', node)\"\n [allowMoving]=\"allowMoving\"\n >\n </ccd-case-file-view-folder-document-actions>\n </div>\n </cdk-nested-tree-node>\n <!-- folder-->\n <cdk-nested-tree-node class=\"document-tree-container__node document-tree-container__folder\" *cdkTreeNodeDef=\"let node; when: nestedChildren\">\n <button\n type=\"button\"\n class=\"node\"\n cdkTreeNodeToggle\n [attr.aria-expanded]=\"nestedTreeControl.isExpanded(node)\"\n [attr.aria-label]=\"node.name + ' folder, ' + node.childDocumentCount + ' documents'\">\n <div class=\"node__icon\" aria-hidden=\"true\">\n <img class=\"node__iconImg\"\n [src]=\"nestedTreeControl.isExpanded(node)\n ? '/assets/images/folder-open.png'\n : '/assets/images/folder.png'\n \"\n alt=\"Folder icon\"\n aria-hidden=\"true\" />\n <span class=\"node__count\">{{ node.childDocumentCount }}</span>\n </div>\n <span class=\"node__name node__name--folder\">{{ node.name }}</span>\n </button>\n <div\n role=\"group\"\n [class.document-tree-invisible]=\"!nestedTreeControl.isExpanded(node)\">\n <ng-container cdkTreeNodeOutlet></ng-container>\n </div>\n </cdk-nested-tree-node>\n </cdk-tree>\n </div>\n</div>\n", styles: [":host{display:flex;height:100%;flex-direction:column}:host .document-tree-container{flex:1 0}.document-filter-container{border-bottom:2px solid #C9C9C9}.document-filter-container .document-filter{padding:10px}.document-filter-container .document-filter .document-search{background:url(/assets/images/icon-search-black.svg) no-repeat right #fff;background-position-x:calc(100% - 4px);padding-right:30px;width:100%}.document-filter-container .documents-title{height:30%;margin-left:8px;font-weight:700}.document-folders-header__flex{display:flex;flex-direction:row}.document-tree-container{padding:4px;overflow-x:hidden;overflow-y:scroll}.document-tree-container__node{display:block}.document-tree-container__node .document-tree-container__node{padding-left:40px}.document-tree-container .document-tree-invisible{display:none}.document-tree-container::-webkit-scrollbar{width:7px}.document-tree-container::-webkit-scrollbar-thumb{border:4px solid rgba(0,0,0,0);background-clip:padding-box;border-radius:9999px;background-color:#aaa}.document-tree-container::-webkit-scrollbar-button{display:none}.document-tree-container::-webkit-scrollbar-track-piece{background:#eee}.document-tree-container::-webkit-scrollbar-thumb{background:#ccc}.document-folders-header{display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid #C9C9C9;padding:10px}.document-folders-header__title{font-weight:700}.node{display:flex;align-items:center;width:100%;padding:10px;background:none;border:0;cursor:pointer;white-space:nowrap}.node--selected{background:#fff2cc}.node__icon{position:relative;display:inline-block}.node__count{color:#fff;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.875rem;padding-top:4px}.node__iconImg{display:block;height:30px;width:30px}.node__name{margin-left:6px;font-size:1rem;overflow:hidden;text-overflow:ellipsis}.node__document-options{margin-left:auto;margin-right:0}.node__document-upload-timestamp{font-size:.8rem;float:left;padding-left:10px}.node.case-file__node{width:80%;float:left}.node__document-options.case-file__action{width:15%;float:left;box-sizing:border-box;padding:12px}\n"] }]
30798
- }], () => [{ type: WindowService }, { type: i1$1.Router }, { type: DocumentManagementService }, { type: i1$3.MatLegacyDialog }], { categoriesAndDocuments: [{
30854
+ }], () => [{ type: WindowService }, { type: i1$1.Router }, { type: DocumentManagementService }, { type: i1$3.MatDialog }], { categoriesAndDocuments: [{
30799
30855
  type: Input
30800
30856
  }], allowMoving: [{
30801
30857
  type: Input
@@ -34912,7 +34968,7 @@ class DatetimePickerComponent extends AbstractFormFieldComponent {
34912
34968
  this.dateControl.setValue('');
34913
34969
  }
34914
34970
  }
34915
- static ɵfac = function DatetimePickerComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || DatetimePickerComponent)(i0.ɵɵdirectiveInject(FormatTranslatorService), i0.ɵɵdirectiveInject(NGX_MAT_DATE_FORMATS)); };
34971
+ static ɵfac = function DatetimePickerComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || DatetimePickerComponent)(i0.ɵɵdirectiveInject(FormatTranslatorService), i0.ɵɵdirectiveInject(MAT_DATE_FORMATS)); };
34916
34972
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: DatetimePickerComponent, selectors: [["ccd-datetime-picker"]], viewQuery: function DatetimePickerComponent_Query(rf, ctx) { if (rf & 1) {
34917
34973
  i0.ɵɵviewQuery(_c0$i, 5);
34918
34974
  i0.ɵɵviewQuery(_c1$6, 5);
@@ -34921,13 +34977,13 @@ class DatetimePickerComponent extends AbstractFormFieldComponent {
34921
34977
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.datetimePicker = _t.first);
34922
34978
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.inputElement = _t.first);
34923
34979
  } }, inputs: { dateControl: "dateControl" }, standalone: false, features: [i0.ɵɵProvidersFeature([
34924
- { provide: NGX_MAT_DATE_FORMATS, useValue: CUSTOM_MOMENT_FORMATS },
34980
+ { provide: MAT_DATE_FORMATS, useValue: CUSTOM_MOMENT_FORMATS },
34925
34981
  {
34926
- provide: NgxMatDateAdapter,
34927
- useClass: NgxMatMomentAdapter,
34928
- deps: [MAT_LEGACY_DATE_LOCALE, NGX_MAT_MOMENT_DATE_ADAPTER_OPTIONS]
34982
+ provide: DateAdapter,
34983
+ useClass: MomentDateAdapter,
34984
+ deps: [MAT_DATE_LOCALE, MAT_MOMENT_DATE_ADAPTER_OPTIONS]
34929
34985
  },
34930
- { provide: NGX_MAT_MOMENT_DATE_ADAPTER_OPTIONS, useValue: { useUtc: true } }
34986
+ { provide: MAT_MOMENT_DATE_ADAPTER_OPTIONS, useValue: { useUtc: true } }
34931
34987
  ]), i0.ɵɵInheritDefinitionFeature], decls: 17, vars: 27, consts: [["input", ""], ["picker", ""], [1, "govuk-form-group", "bottom-30", 3, "id", "ngClass"], ["class", "form-label", 4, "ngIf"], ["class", "form-hint", 4, "ngIf"], ["class", "error-message", 4, "ngIf"], [1, "datepicker-container"], ["ng-model-options", "{timezone:'utc'}", 1, "govuk-input", 3, "focusin", "focusout", "dateChange", "min", "max", "formControl", "ngxMatDatetimePicker"], ["matSuffix", "", "id", "pickerOpener", 3, "for"], [3, "yearSelected", "monthSelected", "opened", "color", "touchUi", "hideTime", "startView", "stepHour", "stepSecond", "stepMinute", "showSeconds", "showSpinners", "disableMinute", "enableMeridian"], ["mat-raised-button", "", "color", "primary", "ngxMatDatepickerApply", ""], [1, "form-label"], [1, "form-hint"], [1, "error-message"]], template: function DatetimePickerComponent_Template(rf, ctx) { if (rf & 1) {
34932
34988
  const _r1 = i0.ɵɵgetCurrentView();
34933
34989
  i0.ɵɵelementStart(0, "div", 2)(1, "fieldset")(2, "legend");
@@ -34936,7 +34992,7 @@ class DatetimePickerComponent extends AbstractFormFieldComponent {
34936
34992
  i0.ɵɵelementStart(8, "div", 6)(9, "input", 7, 0);
34937
34993
  i0.ɵɵlistener("focusin", function DatetimePickerComponent_Template_input_focusin_9_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.focusIn()); })("focusout", function DatetimePickerComponent_Template_input_focusout_9_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.focusOut()); })("dateChange", function DatetimePickerComponent_Template_input_dateChange_9_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.valueChanged()); });
34938
34994
  i0.ɵɵelementEnd();
34939
- i0.ɵɵelement(11, "mat-datepicker-toggle", 8);
34995
+ i0.ɵɵelement(11, "ngx-mat-datepicker-toggle", 8);
34940
34996
  i0.ɵɵelementStart(12, "ngx-mat-datetime-picker", 9, 1);
34941
34997
  i0.ɵɵlistener("yearSelected", function DatetimePickerComponent_Template_ngx_mat_datetime_picker_yearSelected_12_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.yearSelected($event)); })("monthSelected", function DatetimePickerComponent_Template_ngx_mat_datetime_picker_monthSelected_12_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.monthSelected($event)); })("opened", function DatetimePickerComponent_Template_ngx_mat_datetime_picker_opened_12_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.toggleClick()); });
34942
34998
  i0.ɵɵelementStart(14, "ngx-mat-datepicker-actions")(15, "button", 10);
@@ -34962,22 +35018,22 @@ class DatetimePickerComponent extends AbstractFormFieldComponent {
34962
35018
  i0.ɵɵproperty("for", picker_r3);
34963
35019
  i0.ɵɵadvance();
34964
35020
  i0.ɵɵproperty("color", ctx.color)("touchUi", ctx.touchUi)("hideTime", ctx.hideTime)("startView", ctx.startView)("stepHour", ctx.stepHour)("stepSecond", ctx.stepSecond)("stepMinute", ctx.stepMinute)("showSeconds", ctx.showSeconds)("showSpinners", ctx.showSpinners)("disableMinute", ctx.disableMinute)("enableMeridian", ctx.enableMeridian);
34965
- } }, dependencies: [i5.NgClass, i5.NgIf, i4.DefaultValueAccessor, i4.NgControlStatus, i4.FormControlDirective, i4$2.NgxMatDatetimepicker, i4$2.NgxMatDatepickerInput, i4$2.NgxMatDatepickerActions, i4$2.NgxMatDatepickerApply, i5$1.MatLegacySuffix, i6$2.MatDatepickerToggle, FieldLabelPipe, FirstErrorPipe, i1.RpxTranslatePipe], styles: [".govuk-js-link{appearance:none;background:none;border:none;color:#005ea5;cursor:pointer;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;margin:0;padding:0;text-decoration:underline}.govuk-js-link:hover{color:#2b8cc4;text-decoration-thickness:max(3px,.1875rem,.12em)}.govuk-js-link:focus{background-color:#ffbf47;color:#000;outline:3px solid transparent;text-decoration:none;box-shadow:0 -2px #ffbf47,0 4px #000}.govuk-js-link:visited{color:#4c2c92}.datepicker-container{display:inline-block;position:relative;min-width:298px}.datepicker-container .govuk-input{height:35px;min-width:298px;width:auto;padding-right:40px;border:1px solid #000}.datepicker-container .govuk-input:focus{outline:1px solid #ffdd00;border:1px solid black}.datepicker-container .govuk-input::-ms-clear{display:none}.datepicker-container .datepicker-wrapper-input{position:relative;display:inline-block;top:-20%;border:0}.datepicker-container .datepicker-wrapper-input:focus{border:0;outline:none}.datepicker-container .mat-icon-button{height:32px;width:32px}.datepicker-container .mat-icon-button:focus{outline:1px solid #ffdd00}.datepicker-container .mat-icon-button .mat-datepicker-toggle-default-icon{position:relative;top:-5px}.datepicker-container .mat-datepicker-toggle{position:absolute;right:0}.datepicker-container .mat-mdc-icon-button.mat-mdc-button-base{width:32px;height:32px;padding:5px 0 0}.datepicker-container .mat-mdc-icon-button.mat-mdc-button-base:focus{outline:1px solid #fd0}.cdk-overlay-container .mat-datepicker-content{border:1px solid black;border-radius:0;max-width:295px;background:#fff}.cdk-overlay-container .mat-datepicker-content .mat-calendar-table{width:calc(100% - 1px);table-layout:fixed}.cdk-overlay-container .mat-datepicker-content .mat-calendar-header{height:34px;border-bottom:1px ridge #bfc1c3}.cdk-overlay-container .mat-datepicker-content .mat-calendar-period-button{left:14%;min-width:125px;border-right:1px ridge #bfc1c3;border-left:1px ridge #bfc1c3;border-radius:0;top:-20px;width:200%}.cdk-overlay-container .mat-datepicker-content .mat-calendar-period-button .mat-button-wrapper{text-align:center;font-weight:700}.cdk-overlay-container .mat-datepicker-content .mat-calendar-period-button:focus{border:2px solid black}.cdk-overlay-container .mat-datepicker-content .mat-calendar-previous-button{left:-73%;top:-20px;border:2px solid transparent;border-radius:0}.cdk-overlay-container .mat-datepicker-content .mat-calendar-previous-button:focus{border-color:#000}.cdk-overlay-container .mat-datepicker-content .mat-calendar-previous-button:after{border-left-width:5px;border-top-width:5px;color:#000;padding:4px;top:-2px;left:-2px}.cdk-overlay-container .mat-datepicker-content .mat-calendar-next-button{top:-20px;left:1%;border:2px solid transparent;border-radius:0}.cdk-overlay-container .mat-datepicker-content .mat-calendar-next-button:focus{border-color:#000}.cdk-overlay-container .mat-datepicker-content .mat-calendar-next-button:after{border-right-width:5px;border-top-width:5px;color:#000;padding:4px;top:-2px;left:-2px}.cdk-overlay-container .mat-datepicker-content .mat-button-wrapper{text-transform:capitalize!important}.cdk-overlay-container .mat-datepicker-content .mat-calendar{border-bottom:1px solid black}.cdk-overlay-container .mat-datepicker-content .mat-calendar-table-header-divider{padding:0;border-bottom:none}.cdk-overlay-container .mat-datepicker-content .mat-calendar-table-header-divider:after{height:0px}.cdk-overlay-container .mat-datepicker-content .mat-calendar-content{padding:0}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header{color:#000}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header th{font-weight:700;font-size:15px;padding-top:2%;padding-bottom:2%;column-width:20px;text-transform:uppercase}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-label{font-weight:700;font-size:large;color:#000}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-selected{border:none;background-color:transparent;color:#fff}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-active{background-color:#5694ca}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-active .mat-calendar-body-today{border:none;box-shadow:none}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-cell{border:1px ridge #bfc1c3}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-cell[aria-selected=true],.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-cell[aria-pressed=true]{background-color:#1d70b8;outline:3px solid #ffdd00;border:2px solid black;outline-offset:1px;z-index:1}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table{border-collapse:separate;border-spacing:10px}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-active{background-color:#5694ca}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-cell-content{border:none}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-selected{border:none;box-shadow:none;background-color:transparent}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell{border:1px solid #bfc1c3}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell[aria-selected=true]{background-color:#1d70b8;outline:2px solid #ffdd00}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table{border-collapse:separate;border-spacing:20px}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table tr:nth-of-type(1){visibility:collapse}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-active{background-color:#5694ca}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-cell-content{border:none}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-selected{border:none;box-shadow:none;background-color:transparent}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell{border:1px solid #bfc1c3}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell[aria-selected=true]{background-color:#1d70b8;outline:3px solid #ffdd00;border:2px solid black;outline-offset:1px}.cdk-overlay-container .mat-datepicker-content .time-container{padding-top:0;justify-content:flex-start;padding-left:15px}.cdk-overlay-container .mat-datepicker-content .actions{padding-bottom:20px;margin-top:20px;justify-content:flex-start}.cdk-overlay-container .mat-datepicker-content .actions .mat-button{background-color:#00823b;position:relative;display:inline-flex;align-items:center;justify-content:center;padding:.526315em 1em .263157em;border:none;border-radius:0;outline:1px solid transparent;outline-offset:-1px;-webkit-appearance:none;box-shadow:0 2px #003618;font-size:1em;line-height:1.25;text-decoration:none;-webkit-font-smoothing:antialiased;color:#fff;box-sizing:border-box;vertical-align:top;width:auto;min-width:96px;white-space:nowrap;overflow:visible;cursor:pointer}.cdk-overlay-container .mat-datepicker-content .actions .mat-button:focus{outline:2px solid #ffdd00}.cdk-overlay-container .mat-datepicker-content .actions .mat-button:hover{background-color:#006400}.cdk-overlay-container .mat-datepicker-content .actions .mat-button .mat-icon{visibility:hidden}.cdk-overlay-container .mat-datepicker-content .actions .mat-button .mat-button-wrapper:before{color:#fff;content:\"Confirm\";position:relative;font-size:15px;left:-3px}.cdk-overlay-container .mat-datepicker-content .mat-datepicker-actions{margin-top:16px;padding:8px 8px 28px;justify-content:flex-start}.cdk-overlay-container .mat-datepicker-content .mat-datepicker-actions button{background-color:#00823b;position:relative;display:inline-flex;align-items:center;justify-content:center;padding:.526315em 1em .263157em;border:none;border-radius:0;outline:1px solid transparent;outline-offset:-1px;-webkit-appearance:none;box-shadow:0 2px #003618;font-size:1em;line-height:1.25;text-decoration:none;-webkit-font-smoothing:antialiased;color:#fff;box-sizing:border-box;vertical-align:top;width:auto;min-width:96px;white-space:nowrap;overflow:visible;cursor:pointer}\n"], encapsulation: 2 });
35021
+ } }, dependencies: [i5.NgClass, i5.NgIf, i4.DefaultValueAccessor, i4.NgControlStatus, i4.FormControlDirective, i4$2.NgxMatDatetimepicker, i4$2.NgxMatDatepickerInput, i4$2.NgxMatDatepickerToggle, i4$2.NgxMatDatepickerActions, i4$2.NgxMatDatepickerApply, i5$1.MatSuffix, FieldLabelPipe, FirstErrorPipe, i1.RpxTranslatePipe], styles: [".govuk-js-link{appearance:none;background:none;border:none;color:#005ea5;cursor:pointer;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;margin:0;padding:0;text-decoration:underline}.govuk-js-link:hover{color:#2b8cc4;text-decoration-thickness:max(3px,.1875rem,.12em)}.govuk-js-link:focus{background-color:#ffbf47;color:#000;outline:3px solid transparent;text-decoration:none;box-shadow:0 -2px #ffbf47,0 4px #000}.govuk-js-link:visited{color:#4c2c92}.datepicker-container{display:inline-block;position:relative;min-width:298px}.datepicker-container .govuk-input{height:35px;min-width:298px;width:auto;padding-right:40px;border:1px solid #000}.datepicker-container .govuk-input:focus{outline:1px solid #ffdd00;border:1px solid black}.datepicker-container .govuk-input::-ms-clear{display:none}.datepicker-container .datepicker-wrapper-input{position:relative;display:inline-block;top:-20%;border:0}.datepicker-container .datepicker-wrapper-input:focus{border:0;outline:none}.datepicker-container .mat-icon-button{height:32px;width:32px}.datepicker-container .mat-icon-button:focus{outline:1px solid #ffdd00}.datepicker-container .mat-icon-button .mat-datepicker-toggle-default-icon{position:relative;top:-5px}.datepicker-container .mat-datepicker-toggle{position:absolute;right:0}.datepicker-container .mat-mdc-icon-button.mat-mdc-button-base{width:32px;height:32px;padding:5px 0 0}.datepicker-container .mat-mdc-icon-button.mat-mdc-button-base:focus{outline:1px solid #fd0}.cdk-overlay-container .mat-datepicker-content{border:1px solid black;border-radius:0;max-width:295px;background:#fff}.cdk-overlay-container .mat-datepicker-content .mat-calendar-table{width:calc(100% - 1px);table-layout:fixed}.cdk-overlay-container .mat-datepicker-content .mat-calendar-header{height:34px;border-bottom:1px ridge #bfc1c3}.cdk-overlay-container .mat-datepicker-content .mat-calendar-period-button{left:14%;min-width:125px;border-right:1px ridge #bfc1c3;border-left:1px ridge #bfc1c3;border-radius:0;top:-20px;width:200%}.cdk-overlay-container .mat-datepicker-content .mat-calendar-period-button .mat-button-wrapper{text-align:center;font-weight:700}.cdk-overlay-container .mat-datepicker-content .mat-calendar-period-button:focus{border:2px solid black}.cdk-overlay-container .mat-datepicker-content .mat-calendar-previous-button{left:-73%;top:-20px;border:2px solid transparent;border-radius:0}.cdk-overlay-container .mat-datepicker-content .mat-calendar-previous-button:focus{border-color:#000}.cdk-overlay-container .mat-datepicker-content .mat-calendar-previous-button:after{border-left-width:5px;border-top-width:5px;color:#000;padding:4px;top:-2px;left:-2px}.cdk-overlay-container .mat-datepicker-content .mat-calendar-next-button{top:-20px;left:1%;border:2px solid transparent;border-radius:0}.cdk-overlay-container .mat-datepicker-content .mat-calendar-next-button:focus{border-color:#000}.cdk-overlay-container .mat-datepicker-content .mat-calendar-next-button:after{border-right-width:5px;border-top-width:5px;color:#000;padding:4px;top:-2px;left:-2px}.cdk-overlay-container .mat-datepicker-content .mat-button-wrapper{text-transform:capitalize!important}.cdk-overlay-container .mat-datepicker-content .mat-calendar{border-bottom:1px solid black}.cdk-overlay-container .mat-datepicker-content .mat-calendar-table-header-divider{padding:0;border-bottom:none}.cdk-overlay-container .mat-datepicker-content .mat-calendar-table-header-divider:after{height:0px}.cdk-overlay-container .mat-datepicker-content .mat-calendar-content{padding:0}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header{color:#000}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header th{font-weight:700;font-size:15px;padding-top:2%;padding-bottom:2%;column-width:20px;text-transform:uppercase}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-label{font-weight:700;font-size:large;color:#000}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-selected{border:none;background-color:transparent;color:#fff}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-active{background-color:#5694ca}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-active .mat-calendar-body-today{border:none;box-shadow:none}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-cell{border:1px ridge #bfc1c3}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-cell[aria-selected=true],.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-cell[aria-pressed=true]{background-color:#1d70b8;outline:3px solid #ffdd00;border:2px solid black;outline-offset:1px;z-index:1}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table{border-collapse:separate;border-spacing:10px}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-active{background-color:#5694ca}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-cell-content{border:none}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-selected{border:none;box-shadow:none;background-color:transparent}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell{border:1px solid #bfc1c3}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell[aria-selected=true]{background-color:#1d70b8;outline:2px solid #ffdd00}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table{border-collapse:separate;border-spacing:20px}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table tr:nth-of-type(1){visibility:collapse}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-active{background-color:#5694ca}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-cell-content{border:none}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-selected{border:none;box-shadow:none;background-color:transparent}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell{border:1px solid #bfc1c3}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell[aria-selected=true]{background-color:#1d70b8;outline:3px solid #ffdd00;border:2px solid black;outline-offset:1px}.cdk-overlay-container .mat-datepicker-content .time-container{padding-top:0;justify-content:flex-start;padding-left:15px}.cdk-overlay-container .mat-datepicker-content .actions{padding-bottom:20px;margin-top:20px;justify-content:flex-start}.cdk-overlay-container .mat-datepicker-content .actions .mat-button{background-color:#00823b;position:relative;display:inline-flex;align-items:center;justify-content:center;padding:.526315em 1em .263157em;border:none;border-radius:0;outline:1px solid transparent;outline-offset:-1px;-webkit-appearance:none;box-shadow:0 2px #003618;font-size:1em;line-height:1.25;text-decoration:none;-webkit-font-smoothing:antialiased;color:#fff;box-sizing:border-box;vertical-align:top;width:auto;min-width:96px;white-space:nowrap;overflow:visible;cursor:pointer}.cdk-overlay-container .mat-datepicker-content .actions .mat-button:focus{outline:2px solid #ffdd00}.cdk-overlay-container .mat-datepicker-content .actions .mat-button:hover{background-color:#006400}.cdk-overlay-container .mat-datepicker-content .actions .mat-button .mat-icon{visibility:hidden}.cdk-overlay-container .mat-datepicker-content .actions .mat-button .mat-button-wrapper:before{color:#fff;content:\"Confirm\";position:relative;font-size:15px;left:-3px}.cdk-overlay-container .mat-datepicker-content .mat-datepicker-actions{margin-top:16px;padding:8px 8px 28px;justify-content:flex-start}.cdk-overlay-container .mat-datepicker-content .mat-datepicker-actions button{background-color:#00823b;position:relative;display:inline-flex;align-items:center;justify-content:center;padding:.526315em 1em .263157em;border:none;border-radius:0;outline:1px solid transparent;outline-offset:-1px;-webkit-appearance:none;box-shadow:0 2px #003618;font-size:1em;line-height:1.25;text-decoration:none;-webkit-font-smoothing:antialiased;color:#fff;box-sizing:border-box;vertical-align:top;width:auto;min-width:96px;white-space:nowrap;overflow:visible;cursor:pointer}\n"], encapsulation: 2 });
34966
35022
  }
34967
35023
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DatetimePickerComponent, [{
34968
35024
  type: Component,
34969
35025
  args: [{ selector: 'ccd-datetime-picker', encapsulation: ViewEncapsulation.None, providers: [
34970
- { provide: NGX_MAT_DATE_FORMATS, useValue: CUSTOM_MOMENT_FORMATS },
35026
+ { provide: MAT_DATE_FORMATS, useValue: CUSTOM_MOMENT_FORMATS },
34971
35027
  {
34972
- provide: NgxMatDateAdapter,
34973
- useClass: NgxMatMomentAdapter,
34974
- deps: [MAT_LEGACY_DATE_LOCALE, NGX_MAT_MOMENT_DATE_ADAPTER_OPTIONS]
35028
+ provide: DateAdapter,
35029
+ useClass: MomentDateAdapter,
35030
+ deps: [MAT_DATE_LOCALE, MAT_MOMENT_DATE_ADAPTER_OPTIONS]
34975
35031
  },
34976
- { provide: NGX_MAT_MOMENT_DATE_ADAPTER_OPTIONS, useValue: { useUtc: true } }
34977
- ], standalone: false, template: "<div class=\"govuk-form-group bottom-30\" [id]=\"caseField.id\"\n [ngClass]=\"{'form-group-error': dateControl && !dateControl.valid && dateControl.dirty}\">\n <fieldset>\n <legend>\n <span class=\"form-label\" *ngIf=\"caseField.label\">{{(caseField | ccdFieldLabel)}}</span>\n <span class=\"form-hint\" *ngIf=\"caseField.hint_text\">{{caseField.hint_text | rpxTranslate}}</span>\n <span class=\"error-message\"\n *ngIf=\"dateControl && dateControl.errors && dateControl.dirty && !(minError || maxError)\">{{(dateControl.errors | ccdFirstError:caseField.label)}}</span>\n <span class=\"error-message\"\n *ngIf=\"dateControl && dateControl.dirty && minError\">{{'This date is older than the minimum date allowed' | rpxTranslate}}</span>\n <span class=\"error-message\"\n *ngIf=\"dateControl && dateControl.dirty && maxError\">{{'This date is later than the maximum date allowed' | rpxTranslate}}</span>\n </legend>\n <div class=\"datepicker-container\">\n <input class=\"govuk-input\"\n #input\n attr.aria-label=\"Please enter a date and time in the format | rpxTranslate {{dateTimeEntryFormat}}\"\n [min]=\"minDate(caseField)\"\n [max]=\"maxDate(caseField)\"\n [formControl]=\"dateControl\"\n [ngxMatDatetimePicker]=\"picker\"\n (focusin)=\"focusIn()\"\n (focusout)=\"focusOut()\"\n (dateChange)=\"valueChanged()\"\n ng-model-options=\"{timezone:'utc'}\"\n >\n <mat-datepicker-toggle matSuffix [for]=\"picker\" id=\"pickerOpener\"></mat-datepicker-toggle>\n <ngx-mat-datetime-picker #picker\n [color]=\"color\"\n [touchUi]=\"touchUi\"\n [hideTime]=\"hideTime\"\n [startView]=\"startView\"\n [stepHour]=\"stepHour\"\n [stepSecond]=\"stepSecond\"\n [stepMinute]=\"stepMinute\"\n [showSeconds]=\"showSeconds\"\n [showSpinners]=\"showSpinners\"\n [disableMinute]=\"disableMinute\"\n [enableMeridian]=\"enableMeridian\"\n (yearSelected)=\"yearSelected($event)\"\n (monthSelected)=\"monthSelected($event)\"\n (opened)=\"toggleClick()\"\n >\n <ngx-mat-datepicker-actions>\n <button mat-raised-button color=\"primary\" ngxMatDatepickerApply>Confirm</button>\n </ngx-mat-datepicker-actions>\n </ngx-mat-datetime-picker>\n </div>\n </fieldset>\n</div>\n", styles: [".govuk-js-link{appearance:none;background:none;border:none;color:#005ea5;cursor:pointer;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;margin:0;padding:0;text-decoration:underline}.govuk-js-link:hover{color:#2b8cc4;text-decoration-thickness:max(3px,.1875rem,.12em)}.govuk-js-link:focus{background-color:#ffbf47;color:#000;outline:3px solid transparent;text-decoration:none;box-shadow:0 -2px #ffbf47,0 4px #000}.govuk-js-link:visited{color:#4c2c92}.datepicker-container{display:inline-block;position:relative;min-width:298px}.datepicker-container .govuk-input{height:35px;min-width:298px;width:auto;padding-right:40px;border:1px solid #000}.datepicker-container .govuk-input:focus{outline:1px solid #ffdd00;border:1px solid black}.datepicker-container .govuk-input::-ms-clear{display:none}.datepicker-container .datepicker-wrapper-input{position:relative;display:inline-block;top:-20%;border:0}.datepicker-container .datepicker-wrapper-input:focus{border:0;outline:none}.datepicker-container .mat-icon-button{height:32px;width:32px}.datepicker-container .mat-icon-button:focus{outline:1px solid #ffdd00}.datepicker-container .mat-icon-button .mat-datepicker-toggle-default-icon{position:relative;top:-5px}.datepicker-container .mat-datepicker-toggle{position:absolute;right:0}.datepicker-container .mat-mdc-icon-button.mat-mdc-button-base{width:32px;height:32px;padding:5px 0 0}.datepicker-container .mat-mdc-icon-button.mat-mdc-button-base:focus{outline:1px solid #fd0}.cdk-overlay-container .mat-datepicker-content{border:1px solid black;border-radius:0;max-width:295px;background:#fff}.cdk-overlay-container .mat-datepicker-content .mat-calendar-table{width:calc(100% - 1px);table-layout:fixed}.cdk-overlay-container .mat-datepicker-content .mat-calendar-header{height:34px;border-bottom:1px ridge #bfc1c3}.cdk-overlay-container .mat-datepicker-content .mat-calendar-period-button{left:14%;min-width:125px;border-right:1px ridge #bfc1c3;border-left:1px ridge #bfc1c3;border-radius:0;top:-20px;width:200%}.cdk-overlay-container .mat-datepicker-content .mat-calendar-period-button .mat-button-wrapper{text-align:center;font-weight:700}.cdk-overlay-container .mat-datepicker-content .mat-calendar-period-button:focus{border:2px solid black}.cdk-overlay-container .mat-datepicker-content .mat-calendar-previous-button{left:-73%;top:-20px;border:2px solid transparent;border-radius:0}.cdk-overlay-container .mat-datepicker-content .mat-calendar-previous-button:focus{border-color:#000}.cdk-overlay-container .mat-datepicker-content .mat-calendar-previous-button:after{border-left-width:5px;border-top-width:5px;color:#000;padding:4px;top:-2px;left:-2px}.cdk-overlay-container .mat-datepicker-content .mat-calendar-next-button{top:-20px;left:1%;border:2px solid transparent;border-radius:0}.cdk-overlay-container .mat-datepicker-content .mat-calendar-next-button:focus{border-color:#000}.cdk-overlay-container .mat-datepicker-content .mat-calendar-next-button:after{border-right-width:5px;border-top-width:5px;color:#000;padding:4px;top:-2px;left:-2px}.cdk-overlay-container .mat-datepicker-content .mat-button-wrapper{text-transform:capitalize!important}.cdk-overlay-container .mat-datepicker-content .mat-calendar{border-bottom:1px solid black}.cdk-overlay-container .mat-datepicker-content .mat-calendar-table-header-divider{padding:0;border-bottom:none}.cdk-overlay-container .mat-datepicker-content .mat-calendar-table-header-divider:after{height:0px}.cdk-overlay-container .mat-datepicker-content .mat-calendar-content{padding:0}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header{color:#000}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header th{font-weight:700;font-size:15px;padding-top:2%;padding-bottom:2%;column-width:20px;text-transform:uppercase}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-label{font-weight:700;font-size:large;color:#000}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-selected{border:none;background-color:transparent;color:#fff}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-active{background-color:#5694ca}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-active .mat-calendar-body-today{border:none;box-shadow:none}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-cell{border:1px ridge #bfc1c3}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-cell[aria-selected=true],.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-cell[aria-pressed=true]{background-color:#1d70b8;outline:3px solid #ffdd00;border:2px solid black;outline-offset:1px;z-index:1}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table{border-collapse:separate;border-spacing:10px}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-active{background-color:#5694ca}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-cell-content{border:none}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-selected{border:none;box-shadow:none;background-color:transparent}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell{border:1px solid #bfc1c3}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell[aria-selected=true]{background-color:#1d70b8;outline:2px solid #ffdd00}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table{border-collapse:separate;border-spacing:20px}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table tr:nth-of-type(1){visibility:collapse}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-active{background-color:#5694ca}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-cell-content{border:none}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-selected{border:none;box-shadow:none;background-color:transparent}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell{border:1px solid #bfc1c3}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell[aria-selected=true]{background-color:#1d70b8;outline:3px solid #ffdd00;border:2px solid black;outline-offset:1px}.cdk-overlay-container .mat-datepicker-content .time-container{padding-top:0;justify-content:flex-start;padding-left:15px}.cdk-overlay-container .mat-datepicker-content .actions{padding-bottom:20px;margin-top:20px;justify-content:flex-start}.cdk-overlay-container .mat-datepicker-content .actions .mat-button{background-color:#00823b;position:relative;display:inline-flex;align-items:center;justify-content:center;padding:.526315em 1em .263157em;border:none;border-radius:0;outline:1px solid transparent;outline-offset:-1px;-webkit-appearance:none;box-shadow:0 2px #003618;font-size:1em;line-height:1.25;text-decoration:none;-webkit-font-smoothing:antialiased;color:#fff;box-sizing:border-box;vertical-align:top;width:auto;min-width:96px;white-space:nowrap;overflow:visible;cursor:pointer}.cdk-overlay-container .mat-datepicker-content .actions .mat-button:focus{outline:2px solid #ffdd00}.cdk-overlay-container .mat-datepicker-content .actions .mat-button:hover{background-color:#006400}.cdk-overlay-container .mat-datepicker-content .actions .mat-button .mat-icon{visibility:hidden}.cdk-overlay-container .mat-datepicker-content .actions .mat-button .mat-button-wrapper:before{color:#fff;content:\"Confirm\";position:relative;font-size:15px;left:-3px}.cdk-overlay-container .mat-datepicker-content .mat-datepicker-actions{margin-top:16px;padding:8px 8px 28px;justify-content:flex-start}.cdk-overlay-container .mat-datepicker-content .mat-datepicker-actions button{background-color:#00823b;position:relative;display:inline-flex;align-items:center;justify-content:center;padding:.526315em 1em .263157em;border:none;border-radius:0;outline:1px solid transparent;outline-offset:-1px;-webkit-appearance:none;box-shadow:0 2px #003618;font-size:1em;line-height:1.25;text-decoration:none;-webkit-font-smoothing:antialiased;color:#fff;box-sizing:border-box;vertical-align:top;width:auto;min-width:96px;white-space:nowrap;overflow:visible;cursor:pointer}\n"] }]
35032
+ { provide: MAT_MOMENT_DATE_ADAPTER_OPTIONS, useValue: { useUtc: true } }
35033
+ ], standalone: false, template: "<div class=\"govuk-form-group bottom-30\" [id]=\"caseField.id\"\n [ngClass]=\"{'form-group-error': dateControl && !dateControl.valid && dateControl.dirty}\">\n <fieldset>\n <legend>\n <span class=\"form-label\" *ngIf=\"caseField.label\">{{(caseField | ccdFieldLabel)}}</span>\n <span class=\"form-hint\" *ngIf=\"caseField.hint_text\">{{caseField.hint_text | rpxTranslate}}</span>\n <span class=\"error-message\"\n *ngIf=\"dateControl && dateControl.errors && dateControl.dirty && !(minError || maxError)\">{{(dateControl.errors | ccdFirstError:caseField.label)}}</span>\n <span class=\"error-message\"\n *ngIf=\"dateControl && dateControl.dirty && minError\">{{'This date is older than the minimum date allowed' | rpxTranslate}}</span>\n <span class=\"error-message\"\n *ngIf=\"dateControl && dateControl.dirty && maxError\">{{'This date is later than the maximum date allowed' | rpxTranslate}}</span>\n </legend>\n <div class=\"datepicker-container\">\n <input class=\"govuk-input\"\n #input\n attr.aria-label=\"Please enter a date and time in the format | rpxTranslate {{dateTimeEntryFormat}}\"\n [min]=\"minDate(caseField)\"\n [max]=\"maxDate(caseField)\"\n [formControl]=\"dateControl\"\n [ngxMatDatetimePicker]=\"picker\"\n (focusin)=\"focusIn()\"\n (focusout)=\"focusOut()\"\n (dateChange)=\"valueChanged()\"\n ng-model-options=\"{timezone:'utc'}\"\n >\n <ngx-mat-datepicker-toggle matSuffix [for]=\"picker\" id=\"pickerOpener\"></ngx-mat-datepicker-toggle>\n <ngx-mat-datetime-picker #picker\n [color]=\"color\"\n [touchUi]=\"touchUi\"\n [hideTime]=\"hideTime\"\n [startView]=\"startView\"\n [stepHour]=\"stepHour\"\n [stepSecond]=\"stepSecond\"\n [stepMinute]=\"stepMinute\"\n [showSeconds]=\"showSeconds\"\n [showSpinners]=\"showSpinners\"\n [disableMinute]=\"disableMinute\"\n [enableMeridian]=\"enableMeridian\"\n (yearSelected)=\"yearSelected($event)\"\n (monthSelected)=\"monthSelected($event)\"\n (opened)=\"toggleClick()\"\n >\n <ngx-mat-datepicker-actions>\n <button mat-raised-button color=\"primary\" ngxMatDatepickerApply>Confirm</button>\n </ngx-mat-datepicker-actions>\n </ngx-mat-datetime-picker>\n </div>\n </fieldset>\n</div>\n", styles: [".govuk-js-link{appearance:none;background:none;border:none;color:#005ea5;cursor:pointer;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;margin:0;padding:0;text-decoration:underline}.govuk-js-link:hover{color:#2b8cc4;text-decoration-thickness:max(3px,.1875rem,.12em)}.govuk-js-link:focus{background-color:#ffbf47;color:#000;outline:3px solid transparent;text-decoration:none;box-shadow:0 -2px #ffbf47,0 4px #000}.govuk-js-link:visited{color:#4c2c92}.datepicker-container{display:inline-block;position:relative;min-width:298px}.datepicker-container .govuk-input{height:35px;min-width:298px;width:auto;padding-right:40px;border:1px solid #000}.datepicker-container .govuk-input:focus{outline:1px solid #ffdd00;border:1px solid black}.datepicker-container .govuk-input::-ms-clear{display:none}.datepicker-container .datepicker-wrapper-input{position:relative;display:inline-block;top:-20%;border:0}.datepicker-container .datepicker-wrapper-input:focus{border:0;outline:none}.datepicker-container .mat-icon-button{height:32px;width:32px}.datepicker-container .mat-icon-button:focus{outline:1px solid #ffdd00}.datepicker-container .mat-icon-button .mat-datepicker-toggle-default-icon{position:relative;top:-5px}.datepicker-container .mat-datepicker-toggle{position:absolute;right:0}.datepicker-container .mat-mdc-icon-button.mat-mdc-button-base{width:32px;height:32px;padding:5px 0 0}.datepicker-container .mat-mdc-icon-button.mat-mdc-button-base:focus{outline:1px solid #fd0}.cdk-overlay-container .mat-datepicker-content{border:1px solid black;border-radius:0;max-width:295px;background:#fff}.cdk-overlay-container .mat-datepicker-content .mat-calendar-table{width:calc(100% - 1px);table-layout:fixed}.cdk-overlay-container .mat-datepicker-content .mat-calendar-header{height:34px;border-bottom:1px ridge #bfc1c3}.cdk-overlay-container .mat-datepicker-content .mat-calendar-period-button{left:14%;min-width:125px;border-right:1px ridge #bfc1c3;border-left:1px ridge #bfc1c3;border-radius:0;top:-20px;width:200%}.cdk-overlay-container .mat-datepicker-content .mat-calendar-period-button .mat-button-wrapper{text-align:center;font-weight:700}.cdk-overlay-container .mat-datepicker-content .mat-calendar-period-button:focus{border:2px solid black}.cdk-overlay-container .mat-datepicker-content .mat-calendar-previous-button{left:-73%;top:-20px;border:2px solid transparent;border-radius:0}.cdk-overlay-container .mat-datepicker-content .mat-calendar-previous-button:focus{border-color:#000}.cdk-overlay-container .mat-datepicker-content .mat-calendar-previous-button:after{border-left-width:5px;border-top-width:5px;color:#000;padding:4px;top:-2px;left:-2px}.cdk-overlay-container .mat-datepicker-content .mat-calendar-next-button{top:-20px;left:1%;border:2px solid transparent;border-radius:0}.cdk-overlay-container .mat-datepicker-content .mat-calendar-next-button:focus{border-color:#000}.cdk-overlay-container .mat-datepicker-content .mat-calendar-next-button:after{border-right-width:5px;border-top-width:5px;color:#000;padding:4px;top:-2px;left:-2px}.cdk-overlay-container .mat-datepicker-content .mat-button-wrapper{text-transform:capitalize!important}.cdk-overlay-container .mat-datepicker-content .mat-calendar{border-bottom:1px solid black}.cdk-overlay-container .mat-datepicker-content .mat-calendar-table-header-divider{padding:0;border-bottom:none}.cdk-overlay-container .mat-datepicker-content .mat-calendar-table-header-divider:after{height:0px}.cdk-overlay-container .mat-datepicker-content .mat-calendar-content{padding:0}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header{color:#000}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header th{font-weight:700;font-size:15px;padding-top:2%;padding-bottom:2%;column-width:20px;text-transform:uppercase}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-label{font-weight:700;font-size:large;color:#000}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-selected{border:none;background-color:transparent;color:#fff}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-active{background-color:#5694ca}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-active .mat-calendar-body-today{border:none;box-shadow:none}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-cell{border:1px ridge #bfc1c3}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-cell[aria-selected=true],.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-cell[aria-pressed=true]{background-color:#1d70b8;outline:3px solid #ffdd00;border:2px solid black;outline-offset:1px;z-index:1}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table{border-collapse:separate;border-spacing:10px}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-active{background-color:#5694ca}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-cell-content{border:none}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-selected{border:none;box-shadow:none;background-color:transparent}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell{border:1px solid #bfc1c3}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell[aria-selected=true]{background-color:#1d70b8;outline:2px solid #ffdd00}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table{border-collapse:separate;border-spacing:20px}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table tr:nth-of-type(1){visibility:collapse}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-active{background-color:#5694ca}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-cell-content{border:none}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-selected{border:none;box-shadow:none;background-color:transparent}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell{border:1px solid #bfc1c3}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell[aria-selected=true]{background-color:#1d70b8;outline:3px solid #ffdd00;border:2px solid black;outline-offset:1px}.cdk-overlay-container .mat-datepicker-content .time-container{padding-top:0;justify-content:flex-start;padding-left:15px}.cdk-overlay-container .mat-datepicker-content .actions{padding-bottom:20px;margin-top:20px;justify-content:flex-start}.cdk-overlay-container .mat-datepicker-content .actions .mat-button{background-color:#00823b;position:relative;display:inline-flex;align-items:center;justify-content:center;padding:.526315em 1em .263157em;border:none;border-radius:0;outline:1px solid transparent;outline-offset:-1px;-webkit-appearance:none;box-shadow:0 2px #003618;font-size:1em;line-height:1.25;text-decoration:none;-webkit-font-smoothing:antialiased;color:#fff;box-sizing:border-box;vertical-align:top;width:auto;min-width:96px;white-space:nowrap;overflow:visible;cursor:pointer}.cdk-overlay-container .mat-datepicker-content .actions .mat-button:focus{outline:2px solid #ffdd00}.cdk-overlay-container .mat-datepicker-content .actions .mat-button:hover{background-color:#006400}.cdk-overlay-container .mat-datepicker-content .actions .mat-button .mat-icon{visibility:hidden}.cdk-overlay-container .mat-datepicker-content .actions .mat-button .mat-button-wrapper:before{color:#fff;content:\"Confirm\";position:relative;font-size:15px;left:-3px}.cdk-overlay-container .mat-datepicker-content .mat-datepicker-actions{margin-top:16px;padding:8px 8px 28px;justify-content:flex-start}.cdk-overlay-container .mat-datepicker-content .mat-datepicker-actions button{background-color:#00823b;position:relative;display:inline-flex;align-items:center;justify-content:center;padding:.526315em 1em .263157em;border:none;border-radius:0;outline:1px solid transparent;outline-offset:-1px;-webkit-appearance:none;box-shadow:0 2px #003618;font-size:1em;line-height:1.25;text-decoration:none;-webkit-font-smoothing:antialiased;color:#fff;box-sizing:border-box;vertical-align:top;width:auto;min-width:96px;white-space:nowrap;overflow:visible;cursor:pointer}\n"] }]
34978
35034
  }], () => [{ type: FormatTranslatorService }, { type: undefined, decorators: [{
34979
35035
  type: Inject,
34980
- args: [NGX_MAT_DATE_FORMATS]
35036
+ args: [MAT_DATE_FORMATS]
34981
35037
  }] }], { datetimePicker: [{
34982
35038
  type: ViewChild,
34983
35039
  args: ['picker', { static: false }]
@@ -34987,7 +35043,7 @@ class DatetimePickerComponent extends AbstractFormFieldComponent {
34987
35043
  }], dateControl: [{
34988
35044
  type: Input
34989
35045
  }] }); })();
34990
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(DatetimePickerComponent, { className: "DatetimePickerComponent", filePath: "lib/shared/components/palette/datetime-picker/datetime-picker.component.ts", lineNumber: 36 }); })();
35046
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(DatetimePickerComponent, { className: "DatetimePickerComponent", filePath: "lib/shared/components/palette/datetime-picker/datetime-picker.component.ts", lineNumber: 33 }); })();
34991
35047
 
34992
35048
  class DocumentUrlPipe {
34993
35049
  appConfig;
@@ -36586,7 +36642,7 @@ class PaletteModule {
36586
36642
  QualifyingQuestionService,
36587
36643
  QueryManagementUtils,
36588
36644
  QueryManagementService,
36589
- { provide: MAT_LEGACY_DATE_LOCALE, useValue: 'en-GB' }
36645
+ { provide: MAT_DATE_LOCALE, useValue: 'en-GB' }
36590
36646
  ], imports: [CommonModule,
36591
36647
  RouterModule,
36592
36648
  FormsModule,
@@ -36603,20 +36659,20 @@ class PaletteModule {
36603
36659
  LabelSubstitutorModule,
36604
36660
  TranslatedMarkdownModule,
36605
36661
  MarkdownModule.forChild(),
36606
- NgxMatDatetimePickerModule,
36607
- NgxMatTimepickerModule,
36608
- NgxMatNativeDateModule,
36609
- MatLegacyFormFieldModule,
36610
- MatLegacyInputModule,
36662
+ NgxMatDatetimepicker,
36663
+ NgxMatDatepickerToggle,
36664
+ NgxMatDatepickerActions,
36665
+ MatFormFieldModule,
36666
+ MatInputModule,
36611
36667
  MatDatepickerModule,
36612
- MatLegacyAutocompleteModule,
36668
+ MatAutocompleteModule,
36613
36669
  CdkTreeModule,
36614
36670
  OverlayModule,
36615
36671
  PaymentLibModule,
36616
36672
  RpxTranslationModule.forChild(),
36617
36673
  CdkTreeModule,
36618
36674
  OverlayModule,
36619
- MatLegacyDialogModule,
36675
+ MatDialogModule,
36620
36676
  MediaViewerModule,
36621
36677
  LoadingModule,
36622
36678
  MarkdownComponentModule,
@@ -36633,10 +36689,7 @@ class PaletteModule {
36633
36689
  undo: 'Undo',
36634
36690
  redo: 'Redo'
36635
36691
  }
36636
- }), NgxMatDatetimePickerModule,
36637
- NgxMatNativeDateModule,
36638
- NgxMatTimepickerModule,
36639
- TabsModule,
36692
+ }), TabsModule,
36640
36693
  PaletteUtilsModule,
36641
36694
  PipesModule,
36642
36695
  MarkdownComponentModule] });
@@ -36661,20 +36714,22 @@ class PaletteModule {
36661
36714
  LabelSubstitutorModule,
36662
36715
  TranslatedMarkdownModule,
36663
36716
  MarkdownModule.forChild(),
36664
- NgxMatDatetimePickerModule,
36665
- NgxMatTimepickerModule,
36666
- NgxMatNativeDateModule,
36667
- MatLegacyFormFieldModule,
36668
- MatLegacyInputModule,
36717
+ NgxMatDatetimepicker,
36718
+ NgxMatDatepickerInput,
36719
+ NgxMatDatepickerToggle,
36720
+ NgxMatDatepickerActions,
36721
+ NgxMatDatepickerApply,
36722
+ MatFormFieldModule,
36723
+ MatInputModule,
36669
36724
  MatDatepickerModule,
36670
- MatLegacyAutocompleteModule,
36725
+ MatAutocompleteModule,
36671
36726
  CdkTreeModule,
36672
36727
  OverlayModule,
36673
36728
  PaymentLibModule,
36674
36729
  RpxTranslationModule.forChild(),
36675
36730
  CdkTreeModule,
36676
36731
  OverlayModule,
36677
- MatLegacyDialogModule,
36732
+ MatDialogModule,
36678
36733
  MediaViewerModule,
36679
36734
  LoadingModule,
36680
36735
  MarkdownComponentModule,
@@ -36706,9 +36761,11 @@ class PaletteModule {
36706
36761
  ...PALETTE_COMPONENTS
36707
36762
  ],
36708
36763
  exports: [
36709
- NgxMatDatetimePickerModule,
36710
- NgxMatNativeDateModule,
36711
- NgxMatTimepickerModule,
36764
+ NgxMatDatetimepicker,
36765
+ NgxMatDatepickerInput,
36766
+ NgxMatDatepickerToggle,
36767
+ NgxMatDatepickerActions,
36768
+ NgxMatDatepickerApply,
36712
36769
  TabsModule,
36713
36770
  PaletteUtilsModule,
36714
36771
  PipesModule,
@@ -36731,7 +36788,7 @@ class PaletteModule {
36731
36788
  QualifyingQuestionService,
36732
36789
  QueryManagementUtils,
36733
36790
  QueryManagementService,
36734
- { provide: MAT_LEGACY_DATE_LOCALE, useValue: 'en-GB' }
36791
+ { provide: MAT_DATE_LOCALE, useValue: 'en-GB' }
36735
36792
  ],
36736
36793
  schemas: [CUSTOM_ELEMENTS_SCHEMA]
36737
36794
  }]
@@ -36887,24 +36944,28 @@ class PaletteModule {
36887
36944
  FormModule,
36888
36945
  TabsModule,
36889
36946
  LabelSubstitutorModule,
36890
- TranslatedMarkdownModule, i1$4.MarkdownModule, NgxMatDatetimePickerModule,
36891
- NgxMatTimepickerModule,
36892
- NgxMatNativeDateModule,
36893
- MatLegacyFormFieldModule,
36894
- MatLegacyInputModule,
36947
+ TranslatedMarkdownModule, i1$4.MarkdownModule, NgxMatDatetimepicker,
36948
+ NgxMatDatepickerInput,
36949
+ NgxMatDatepickerToggle,
36950
+ NgxMatDatepickerActions,
36951
+ NgxMatDatepickerApply,
36952
+ MatFormFieldModule,
36953
+ MatInputModule,
36895
36954
  MatDatepickerModule,
36896
- MatLegacyAutocompleteModule,
36955
+ MatAutocompleteModule,
36897
36956
  CdkTreeModule,
36898
36957
  OverlayModule,
36899
36958
  PaymentLibModule, i1.RpxTranslationModule, CdkTreeModule,
36900
36959
  OverlayModule,
36901
- MatLegacyDialogModule,
36960
+ MatDialogModule,
36902
36961
  MediaViewerModule,
36903
36962
  LoadingModule,
36904
36963
  MarkdownComponentModule,
36905
- ErrorsModule, i3$1.NgxEditorModule], exports: [NgxMatDatetimePickerModule,
36906
- NgxMatNativeDateModule,
36907
- NgxMatTimepickerModule,
36964
+ ErrorsModule, i3$1.NgxEditorModule], exports: [NgxMatDatetimepicker,
36965
+ NgxMatDatepickerInput,
36966
+ NgxMatDatepickerToggle,
36967
+ NgxMatDatepickerActions,
36968
+ NgxMatDatepickerApply,
36908
36969
  TabsModule,
36909
36970
  PaletteUtilsModule,
36910
36971
  PipesModule,
@@ -37064,7 +37125,7 @@ i0.ɵɵsetComponentScope(ReadLinkedCasesFieldComponent, function () { return [i5
37064
37125
  // Components for linked cases
37065
37126
  LinkedCasesToTableComponent,
37066
37127
  LinkedCasesFromTableComponent]; }, []);
37067
- i0.ɵɵsetComponentScope(WriteAddressFieldComponent, function () { return [i5.NgClass, i5.NgForOf, i5.NgIf, i4.NgSelectOption, i4.ɵNgSelectMultipleOption, i4.DefaultValueAccessor, i4.SelectControlValueAccessor, i4.NgControlStatus, i4.NgControlStatusGroup, i4.FormControlDirective, i4.FormGroupDirective, WriteComplexFieldComponent]; }, function () { return [FieldLabelPipe, i1.RpxTranslatePipe]; });
37128
+ i0.ɵɵsetComponentScope(WriteAddressFieldComponent, function () { return [i5.NgClass, i5.NgForOf, i5.NgIf, i4.NgSelectOption, i4.ɵNgSelectMultipleOption, i4.DefaultValueAccessor, i4.SelectControlValueAccessor, i4.NgControlStatus, i4.NgControlStatusGroup, i4.FormControlDirective, i4.FormGroupDirective, MarkdownComponent, WriteComplexFieldComponent]; }, function () { return [FieldLabelPipe, i1.RpxTranslatePipe]; });
37068
37129
  i0.ɵɵsetComponentScope(WriteComplexFieldComponent, function () { return [i5.NgForOf, i5.NgIf, i5.NgSwitch, i5.NgSwitchCase, i4.NgControlStatusGroup, i4.FormGroupDirective, LabelSubstitutorDirective, FieldReadComponent,
37069
37130
  FieldWriteComponent]; }, function () { return [FieldLabelPipe, IsReadOnlyPipe]; });
37070
37131
  i0.ɵɵsetComponentScope(WriteDocumentFieldComponent, function () { return [i5.NgClass, i5.NgIf, i1$4.MarkdownComponent, ReadDocumentFieldComponent]; }, function () { return [FieldLabelPipe, i1.RpxTranslatePipe]; });
@@ -37095,7 +37156,7 @@ i0.ɵɵsetComponentScope(
37095
37156
  // Components for case flags
37096
37157
  CaseFlagTableComponent, function () { return [i5.NgClass, i5.NgForOf, i5.NgIf]; }, function () { return [i5.DatePipe, i1.RpxTranslatePipe, FlagFieldDisplayPipe]; });
37097
37158
  i0.ɵɵsetComponentScope(SelectFlagTypeComponent, function () { return [i5.NgClass, i5.NgForOf, i5.NgIf, i4.DefaultValueAccessor, i4.CheckboxControlValueAccessor, i4.RadioControlValueAccessor, i4.NgControlStatus, i4.NgControlStatusGroup, i4.FormGroupDirective, i4.FormControlName]; }, function () { return [i1.RpxTranslatePipe, FlagFieldDisplayPipe]; });
37098
- i0.ɵɵsetComponentScope(SearchLanguageInterpreterComponent, function () { return [i5.NgClass, i5.NgForOf, i5.NgIf, i4.DefaultValueAccessor, i4.NgControlStatus, i4.NgControlStatusGroup, i4.FormGroupDirective, i4.FormControlName, i15.MatLegacyInput, i6.MatLegacyAutocomplete, i6.MatLegacyAutocompleteTrigger, i7.MatLegacyOption]; }, function () { return [i5.AsyncPipe, i1.RpxTranslatePipe, FlagFieldDisplayPipe,
37159
+ i0.ɵɵsetComponentScope(SearchLanguageInterpreterComponent, function () { return [i5.NgClass, i5.NgForOf, i5.NgIf, i4.DefaultValueAccessor, i4.NgControlStatus, i4.NgControlStatusGroup, i4.FormGroupDirective, i4.FormControlName, i15.MatInput, i6.MatAutocomplete, i6.MatOption, i6.MatAutocompleteTrigger]; }, function () { return [i5.AsyncPipe, i1.RpxTranslatePipe, FlagFieldDisplayPipe,
37099
37160
  LanguageInterpreterDisplayPipe]; });
37100
37161
  i0.ɵɵsetComponentScope(ManageCaseFlagsComponent, function () { return [i5.NgClass, i5.NgForOf, i5.NgIf, i4.NgControlStatusGroup, i4.FormGroupDirective]; }, function () { return [i1.RpxTranslatePipe, ManageCaseFlagsLabelDisplayPipe]; });
37101
37162
  i0.ɵɵsetComponentScope(UpdateFlagComponent, function () { return [i5.NgClass, i5.NgForOf, i5.NgIf, i5.NgTemplateOutlet, i4.DefaultValueAccessor, i4.CheckboxControlValueAccessor, i4.RadioControlValueAccessor, i4.NgControlStatus, i4.NgControlStatusGroup, i4.FormGroupDirective, i4.FormControlName]; }, function () { return [i1.RpxTranslatePipe, UpdateFlagTitleDisplayPipe]; });
@@ -40886,7 +40947,7 @@ class DeleteOrCancelDialogComponent {
40886
40947
  this.result = 'Cancel';
40887
40948
  this.matDialogRef.close(this.result);
40888
40949
  }
40889
- static ɵfac = function DeleteOrCancelDialogComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || DeleteOrCancelDialogComponent)(i0.ɵɵdirectiveInject(i1$3.MatLegacyDialogRef)); };
40950
+ static ɵfac = function DeleteOrCancelDialogComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || DeleteOrCancelDialogComponent)(i0.ɵɵdirectiveInject(i1$3.MatDialogRef)); };
40890
40951
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: DeleteOrCancelDialogComponent, selectors: [["ccd-delete-or-cancel-dialog"]], standalone: false, decls: 19, vars: 12, consts: [[1, "dialog-header"], [1, "heading-h2", "x", 3, "click"], [1, "heading-h2", "dialog-title"], [1, "dialog-info"], [1, "text-info"], ["type", "button", "title", "Delete", 1, "button", "action-button", 3, "click"], ["type", "button", "title", "Cancel", 1, "button", "button-secondary", 3, "click"]], template: function DeleteOrCancelDialogComponent_Template(rf, ctx) { if (rf & 1) {
40891
40952
  i0.ɵɵelementStart(0, "div")(1, "div", 0)(2, "h2", 1);
40892
40953
  i0.ɵɵlistener("click", function DeleteOrCancelDialogComponent_Template_h2_click_2_listener() { return ctx.cancel(); });
@@ -40924,7 +40985,7 @@ class DeleteOrCancelDialogComponent {
40924
40985
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DeleteOrCancelDialogComponent, [{
40925
40986
  type: Component,
40926
40987
  args: [{ selector: 'ccd-delete-or-cancel-dialog', standalone: false, template: "<div>\n <div class=\"dialog-header\">\n <h2 (click)=\"cancel()\" class=\"heading-h2 x\">X</h2>\n </div>\n <div>\n <h2 class=\"heading-h2 dialog-title\">{{'Are you sure you want to delete this draft?' | rpxTranslate}}</h2>\n </div>\n <div class=\"dialog-info\">\n <span class=\"text-info\">{{'You are about to delete this draft. Are you sure you want to proceed?' | rpxTranslate}}</span>\n </div>\n <div>\n <button type=\"button\" title=\"Delete\" class=\"button action-button\" (click)=\"delete()\">{{'Delete draft' | rpxTranslate}}</button>\n <button type=\"button\" title=\"Cancel\" class=\"button button-secondary\" (click)=\"cancel()\">{{'Cancel' | rpxTranslate}}</button>\n </div>\n</div>\n", styles: [".x{margin:0;padding:9px 9px 0 0;font-size:24px;font-weight:700;font-style:normal;font-stretch:normal;cursor:pointer;color:#6e7071}@media(prefers-color-scheme:dark){.dialog-title,.dialog-info{color:#000}}.dialog-header{text-align:right}.dialog-title,.dialog-info{margin:0 0 21px 25px}.action-button{margin:0 15px 0 25px}\n"] }]
40927
- }], () => [{ type: i1$3.MatLegacyDialogRef }], null); })();
40988
+ }], () => [{ type: i1$3.MatDialogRef }], null); })();
40928
40989
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(DeleteOrCancelDialogComponent, { className: "DeleteOrCancelDialogComponent", filePath: "lib/shared/components/dialogs/delete-or-cancel-dialog/delete-or-cancel-dialog.component.ts", lineNumber: 10 }); })();
40929
40990
 
40930
40991
  class DialogsModule {
@@ -41675,7 +41736,7 @@ class CaseFullAccessViewComponent {
41675
41736
  this.errorNotifierService.announceError(null);
41676
41737
  this.alertService.clear();
41677
41738
  }
41678
- static ɵfac = function CaseFullAccessViewComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || 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(i5.Location), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(SessionStorageService), i0.ɵɵdirectiveInject(i1.RpxTranslatePipe), i0.ɵɵdirectiveInject(LoadingService), i0.ɵɵdirectiveInject(LinkedCasesService), i0.ɵɵdirectiveInject(CaseFlagStateService), i0.ɵɵdirectiveInject(i0.NgZone)); };
41739
+ static ɵfac = function CaseFullAccessViewComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || 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.MatDialog), i0.ɵɵdirectiveInject(AlertService), i0.ɵɵdirectiveInject(DraftService), i0.ɵɵdirectiveInject(ErrorNotifierService), i0.ɵɵdirectiveInject(ConvertHrefToRouterService), i0.ɵɵdirectiveInject(i5.Location), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(SessionStorageService), i0.ɵɵdirectiveInject(i1.RpxTranslatePipe), i0.ɵɵdirectiveInject(LoadingService), i0.ɵɵdirectiveInject(LinkedCasesService), i0.ɵɵdirectiveInject(CaseFlagStateService), i0.ɵɵdirectiveInject(i0.NgZone)); };
41679
41740
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CaseFullAccessViewComponent, selectors: [["ccd-case-full-access-view"]], viewQuery: function CaseFullAccessViewComponent_Query(rf, ctx) { if (rf & 1) {
41680
41741
  i0.ɵɵviewQuery(_c0$c, 5);
41681
41742
  } if (rf & 2) {
@@ -41720,7 +41781,7 @@ class CaseFullAccessViewComponent {
41720
41781
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseFullAccessViewComponent, [{
41721
41782
  type: Component,
41722
41783
  args: [{ selector: 'ccd-case-full-access-view', standalone: false, 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\"\n [eventId]=\"eventId\"\n (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\" [(selectedIndex)]=\"selectedTabIndex\"\n [selectedIndex]=\"selectedTabIndex\">\n <mat-tab *ngFor=\"let tab of prependedTabs\" [id]=\"tab.id\" [label]=\"tab.label | rpxTranslate\">\n <ng-template matTabContent>\n <ng-container *ngIf=\"tab.id === 'tasks'\">\n <exui-tasks-ce></exui-tasks-ce>\n </ng-container>\n <ng-container *ngIf=\"tab.id === 'roles-and-access'\">\n <exui-roles-and-access-ce></exui-roles-and-access-ce>\n </ng-container>\n </ng-template>\n </mat-tab>\n <mat-tab *ngFor=\"let tab of sortedTabs; let curIdx=index\" [id]=\"tab.id\" [label]=\"tab.label | rpxTranslate\" [aria-label]=\"curIdx === 0 ? tab.label + ', Please use left and right arrow keys to navigate case tabs' : '' | rpxTranslate\">\n <ng-template matTabContent>\n <table [class]=\"tab.id\" [attr.aria-label]=\"'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--' + field.id\" scope=\"row\" *ngIf=\"!isFieldToHaveNoLabel(field) && field.label\">\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']\" [caseFields]=\"caseFields\"\n [caseField]=\"field\" [caseReference]=\"caseDetails.case_id\">\n </ccd-field-read>\n </span>\n </td>\n </tr>\n <tr *ngSwitchCase=\"false\" class=\"compound-field\">\n <td role=\"rowheader\" [attr.aria-label]=\"(field.label || field.id) | rpxTranslate\" [id]=\"'case-viewer-field-read--' + field.id\">\n <span class=\"text-16\">\n <ccd-field-read [topLevelFormGroup]=\"formGroup.controls['data']\" [caseFields]=\"caseFields\"\n [caseField]=\"field\" [caseReference]=\"caseDetails.case_id\">\n </ccd-field-read>\n </span>\n </td>\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 <ng-template matTabContent>\n <ng-container *ngIf=\"tab.id === 'hearings'\">\n <exui-case-hearings-ce></exui-case-hearings-ce>\n </ng-container>\n </ng-template>\n </mat-tab>\n </mat-tab-group>\n </ng-container>\n </div>\n</div>\n", styles: ["th,.compound-field>td{width:1%;white-space:nowrap;vertical-align:top}.compound-field th{padding:0}.compound-field>td{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}.hide-table-capion{position:absolute;visibility:hidden}\n"] }]
41723
- }], () => [{ 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: i5.Location }, { type: i0.ChangeDetectorRef }, { type: SessionStorageService }, { type: i1.RpxTranslatePipe }, { type: LoadingService }, { type: LinkedCasesService }, { type: CaseFlagStateService }, { type: i0.NgZone }], { hasPrint: [{
41784
+ }], () => [{ type: i0.NgZone }, { type: i1$1.ActivatedRoute }, { type: i1$1.Router }, { type: NavigationNotifierService }, { type: OrderService }, { type: ActivityPollingService }, { type: i1$3.MatDialog }, { type: AlertService }, { type: DraftService }, { type: ErrorNotifierService }, { type: ConvertHrefToRouterService }, { type: i5.Location }, { type: i0.ChangeDetectorRef }, { type: SessionStorageService }, { type: i1.RpxTranslatePipe }, { type: LoadingService }, { type: LinkedCasesService }, { type: CaseFlagStateService }, { type: i0.NgZone }], { hasPrint: [{
41724
41785
  type: Input
41725
41786
  }], hasEventSelector: [{
41726
41787
  type: Input
@@ -44287,7 +44348,7 @@ class CaseViewerModule {
44287
44348
  CaseEditorModule,
44288
44349
  ConditionalShowModule,
44289
44350
  CaseHistoryModule,
44290
- MatLegacyTabsModule,
44351
+ MatTabsModule,
44291
44352
  ReactiveFormsModule,
44292
44353
  AlertModule,
44293
44354
  LabelSubstitutorModule,
@@ -44312,7 +44373,7 @@ class CaseViewerModule {
44312
44373
  CaseEditorModule,
44313
44374
  ConditionalShowModule,
44314
44375
  CaseHistoryModule,
44315
- MatLegacyTabsModule,
44376
+ MatTabsModule,
44316
44377
  ReactiveFormsModule,
44317
44378
  AlertModule,
44318
44379
  LabelSubstitutorModule,
@@ -44381,7 +44442,7 @@ class CaseViewerModule {
44381
44442
  CaseEditorModule,
44382
44443
  ConditionalShowModule,
44383
44444
  CaseHistoryModule,
44384
- MatLegacyTabsModule,
44445
+ MatTabsModule,
44385
44446
  ReactiveFormsModule,
44386
44447
  AlertModule,
44387
44448
  LabelSubstitutorModule, i1.RpxTranslationModule, BannersModule,
@@ -44393,7 +44454,7 @@ i0.ɵɵsetComponentScope(CaseEventTriggerComponent, function () { return [i5.NgI
44393
44454
  i0.ɵɵsetComponentScope(CasePrinterComponent, function () { return [i5.NgForOf, i5.NgIf, CaseHeaderComponent]; }, function () { return [i1.RpxTranslatePipe, PrintUrlPipe]; });
44394
44455
  i0.ɵɵsetComponentScope(CaseViewerComponent, function () { return [i5.NgIf, CaseFullAccessViewComponent,
44395
44456
  CaseBasicAccessViewComponent]; }, []);
44396
- i0.ɵɵsetComponentScope(CaseFullAccessViewComponent, function () { return [i5.NgForOf, i5.NgIf, i5.NgSwitch, i5.NgSwitchCase, i1$1.RouterLink, CallbackErrorsComponent, ActivityComponent, CaseHeaderComponent, EventTriggerComponent, FieldReadComponent, i10.MatLegacyTabGroup, i10.MatLegacyTab, i10.MatLegacyTabContent, LabelSubstitutorDirective, NotificationBannerComponent]; }, function () { return [IsCompoundPipe, ReadFieldsFilterPipe, CcdTabFieldsPipe, i1.RpxTranslatePipe]; });
44457
+ i0.ɵɵsetComponentScope(CaseFullAccessViewComponent, function () { return [i5.NgForOf, i5.NgIf, i5.NgSwitch, i5.NgSwitchCase, i1$1.RouterLink, CallbackErrorsComponent, ActivityComponent, CaseHeaderComponent, EventTriggerComponent, FieldReadComponent, i10.MatTabContent, i10.MatTab, i10.MatTabGroup, LabelSubstitutorDirective, NotificationBannerComponent]; }, function () { return [IsCompoundPipe, ReadFieldsFilterPipe, CcdTabFieldsPipe, i1.RpxTranslatePipe]; });
44397
44458
  i0.ɵɵsetComponentScope(CaseViewComponent, function () { return [i5.NgIf, CaseViewerComponent]; }, []);
44398
44459
  i0.ɵɵsetComponentScope(CaseChallengedAccessRequestComponent, function () { return [i5.NgClass, i5.NgIf, i4.ɵNgNoValidate, i4.DefaultValueAccessor, i4.RadioControlValueAccessor, i4.NgControlStatus, i4.NgControlStatusGroup, i4.FormGroupDirective, i4.FormControlName, AlertComponent, ErrorMessageComponent]; }, function () { return [i1.RpxTranslatePipe]; });
44399
44460
  i0.ɵɵsetComponentScope(CaseSpecificAccessRequestComponent, function () { return [i5.NgClass, i5.NgIf, i4.ɵNgNoValidate, i4.DefaultValueAccessor, i4.NgControlStatus, i4.NgControlStatusGroup, i4.FormGroupDirective, i4.FormControlName, AlertComponent, ErrorMessageComponent]; }, function () { return [i1.RpxTranslatePipe]; });