@hmcts/ccd-case-ui-toolkit 7.0.14-address-field-check → 7.0.14-caseview-ordering
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.mjs +6 -15
- package/esm2020/lib/shared/components/palette/address/write-address-field.component.mjs +18 -55
- package/esm2020/lib/shared/components/palette/base-field/abstract-form-field.component.mjs +1 -5
- package/esm2020/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder.component.mjs +3 -2
- package/esm2020/lib/shared/domain/case-file-view/document-tree-node/document-tree-node.model.mjs +1 -1
- package/esm2020/lib/shared/domain/http/http-error.model.mjs +2 -8
- package/esm2020/lib/shared/services/addresses/addresses.service.mjs +1 -9
- package/fesm2015/hmcts-ccd-case-ui-toolkit.mjs +24 -102
- package/fesm2015/hmcts-ccd-case-ui-toolkit.mjs.map +1 -1
- package/fesm2020/hmcts-ccd-case-ui-toolkit.mjs +24 -96
- package/fesm2020/hmcts-ccd-case-ui-toolkit.mjs.map +1 -1
- package/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.d.ts +2 -3
- package/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.d.ts.map +1 -1
- package/lib/shared/components/palette/address/write-address-field.component.d.ts +0 -5
- package/lib/shared/components/palette/address/write-address-field.component.d.ts.map +1 -1
- package/lib/shared/components/palette/base-field/abstract-form-field.component.d.ts.map +1 -1
- package/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder.component.d.ts.map +1 -1
- package/lib/shared/domain/case-file-view/document-tree-node/document-tree-node.model.d.ts +1 -0
- package/lib/shared/domain/case-file-view/document-tree-node/document-tree-node.model.d.ts.map +1 -1
- package/lib/shared/domain/http/http-error.model.d.ts +0 -1
- package/lib/shared/domain/http/http-error.model.d.ts.map +1 -1
- package/lib/shared/services/addresses/addresses.service.d.ts +0 -3
- package/lib/shared/services/addresses/addresses.service.d.ts.map +1 -1
- package/package.json +1 -1
- package/esm2020/lib/shared/commons/address-validation-constants.mjs +0 -13
- package/lib/shared/commons/address-validation-constants.d.ts +0 -7
- package/lib/shared/commons/address-validation-constants.d.ts.map +0 -1
|
@@ -8,7 +8,7 @@ import * as i1$1 from '@angular/router';
|
|
|
8
8
|
import { RouterModule, NavigationStart, NavigationEnd } from '@angular/router';
|
|
9
9
|
import * as i3 from '@angular/forms';
|
|
10
10
|
import { NG_VALUE_ACCESSOR, NG_VALIDATORS, FormArray, FormGroup, FormControl, Validators, ReactiveFormsModule, FormsModule } from '@angular/forms';
|
|
11
|
-
import { throwError, Subject, EMPTY, Observable,
|
|
11
|
+
import { throwError, Subject, EMPTY, Observable, of, BehaviorSubject, timer, fromEvent, forkJoin, Subscription, combineLatest } from 'rxjs';
|
|
12
12
|
import * as i1$2 from '@angular/common/http';
|
|
13
13
|
import { HttpErrorResponse, HttpHeaders, HttpParams } from '@angular/common/http';
|
|
14
14
|
import { catchError, map, publish, refCount, switchMap, debounceTime, delay, distinctUntilChanged, finalize, timeout, mergeMap, retryWhen, tap, delayWhen, publishReplay, take, first, takeUntil, filter } from 'rxjs/operators';
|
|
@@ -1241,14 +1241,9 @@ class HttpError {
|
|
|
1241
1241
|
}
|
|
1242
1242
|
static from(response) {
|
|
1243
1243
|
const error = new HttpError();
|
|
1244
|
-
if (response?.status === 429) {
|
|
1245
|
-
error.error = HttpError.MESSAGE_ERROR_429;
|
|
1246
|
-
error.status = response.status;
|
|
1247
|
-
error.message = response.message;
|
|
1248
|
-
}
|
|
1249
1244
|
// Check that the HttpErrorResponse contains an "error" object before mapping the error properties
|
|
1250
1245
|
if (!!(response && response.error)) {
|
|
1251
|
-
Object.keys(error).forEach(
|
|
1246
|
+
Object.keys(error).forEach(key => {
|
|
1252
1247
|
error[key] = response.error.hasOwnProperty(key) && response.error[key] ? response.error[key] : error[key];
|
|
1253
1248
|
});
|
|
1254
1249
|
}
|
|
@@ -1265,7 +1260,6 @@ class HttpError {
|
|
|
1265
1260
|
HttpError.DEFAULT_ERROR = 'Unknown error';
|
|
1266
1261
|
HttpError.DEFAULT_MESSAGE = 'Something unexpected happened, our technical staff have been automatically notified';
|
|
1267
1262
|
HttpError.DEFAULT_STATUS = 500;
|
|
1268
|
-
HttpError.MESSAGE_ERROR_429 = 'Your request was rate limited. Please wait a few seconds before retrying your document upload';
|
|
1269
1263
|
|
|
1270
1264
|
/**
|
|
1271
1265
|
* `Oauth2Service` and `AuthService` cannot be merged as it creates a cyclic dependency on `AuthService` through `HttpErrorService`.
|
|
@@ -4612,11 +4606,7 @@ class AbstractFormFieldComponent {
|
|
|
4612
4606
|
return control;
|
|
4613
4607
|
}
|
|
4614
4608
|
const existing = container.controls[this.caseField.id];
|
|
4615
|
-
// update the field value which has been set in mid-event call back
|
|
4616
4609
|
if (existing) {
|
|
4617
|
-
if (existing.value === null && this.caseField?.value) {
|
|
4618
|
-
existing.value = this.caseField.value;
|
|
4619
|
-
}
|
|
4620
4610
|
if (replace) {
|
|
4621
4611
|
// Set the validators on the replacement with what already exists.
|
|
4622
4612
|
control.setValidators(existing.validator);
|
|
@@ -6263,7 +6253,6 @@ class AddressesService {
|
|
|
6263
6253
|
constructor(http, appConfig) {
|
|
6264
6254
|
this.http = http;
|
|
6265
6255
|
this.appConfig = appConfig;
|
|
6266
|
-
this.mandatoryError = new BehaviorSubject(false);
|
|
6267
6256
|
}
|
|
6268
6257
|
getAddressesForPostcode(postcode) {
|
|
6269
6258
|
return this.http
|
|
@@ -6272,12 +6261,6 @@ class AddressesService {
|
|
|
6272
6261
|
.pipe(map(res => res.results))
|
|
6273
6262
|
.pipe(map(output => output.map(addresses => this.format(new AddressParser().parse(addresses[AddressType.DPA])))));
|
|
6274
6263
|
}
|
|
6275
|
-
getMandatoryError() {
|
|
6276
|
-
return this.mandatoryError.asObservable();
|
|
6277
|
-
}
|
|
6278
|
-
setMandatoryError(value) {
|
|
6279
|
-
this.mandatoryError.next(value);
|
|
6280
|
-
}
|
|
6281
6264
|
format(addressModel) {
|
|
6282
6265
|
return this.formatAddressLines(this.shiftAddressLinesUp(addressModel));
|
|
6283
6266
|
}
|
|
@@ -9633,7 +9616,7 @@ function CaseEditPageComponent_ccd_case_event_completion_11_Template(rf, ctx) {
|
|
|
9633
9616
|
i0.ɵɵproperty("eventCompletionParams", ctx_r8.caseEdit.eventCompletionParams);
|
|
9634
9617
|
} }
|
|
9635
9618
|
class CaseEditPageComponent {
|
|
9636
|
-
constructor(caseEdit, route, formValueService, formErrorService, cdRef, pageValidationService, dialog, caseFieldService, caseEditDataService, loadingService, validPageListCaseFieldsService
|
|
9619
|
+
constructor(caseEdit, route, formValueService, formErrorService, cdRef, pageValidationService, dialog, caseFieldService, caseEditDataService, loadingService, validPageListCaseFieldsService) {
|
|
9637
9620
|
this.caseEdit = caseEdit;
|
|
9638
9621
|
this.route = route;
|
|
9639
9622
|
this.formValueService = formValueService;
|
|
@@ -9645,7 +9628,6 @@ class CaseEditPageComponent {
|
|
|
9645
9628
|
this.caseEditDataService = caseEditDataService;
|
|
9646
9629
|
this.loadingService = loadingService;
|
|
9647
9630
|
this.validPageListCaseFieldsService = validPageListCaseFieldsService;
|
|
9648
|
-
this.addressService = addressService;
|
|
9649
9631
|
this.triggerTextStart = CaseEditPageComponent.TRIGGER_TEXT_START;
|
|
9650
9632
|
this.triggerTextIgnoreWarnings = CaseEditPageComponent.TRIGGER_TEXT_CONTINUE;
|
|
9651
9633
|
this.formValuesChanged = false;
|
|
@@ -9768,14 +9750,7 @@ class CaseEditPageComponent {
|
|
|
9768
9750
|
}
|
|
9769
9751
|
}
|
|
9770
9752
|
if (fieldElement.hasError('required')) {
|
|
9771
|
-
|
|
9772
|
-
// EUI-1067 - Display more relevant error message to user and correctly navigate to the field
|
|
9773
|
-
this.addressService.setMandatoryError(true);
|
|
9774
|
-
this.caseEditDataService.addFormValidationError({ id: `${path}_${path}`, message: `An address is required` });
|
|
9775
|
-
}
|
|
9776
|
-
else {
|
|
9777
|
-
this.caseEditDataService.addFormValidationError({ id, message: `%FIELDLABEL% is required`, label });
|
|
9778
|
-
}
|
|
9753
|
+
this.caseEditDataService.addFormValidationError({ id, message: `%FIELDLABEL% is required`, label });
|
|
9779
9754
|
fieldElement.markAsDirty();
|
|
9780
9755
|
// For the JudicialUser field type, an error needs to be set on the component so that an error message
|
|
9781
9756
|
// can be displayed at field level
|
|
@@ -9850,7 +9825,6 @@ class CaseEditPageComponent {
|
|
|
9850
9825
|
}
|
|
9851
9826
|
}
|
|
9852
9827
|
if (!this.caseEdit.isSubmitting && !this.currentPageIsNotValid()) {
|
|
9853
|
-
this.addressService.setMandatoryError(false);
|
|
9854
9828
|
console.log('Case Edit Error', this.caseEdit.error);
|
|
9855
9829
|
if (this.caseEdit.validPageList.findIndex(page => page.id === this.currentPage.id) === -1) {
|
|
9856
9830
|
this.caseEdit.validPageList.push(this.currentPage);
|
|
@@ -10150,7 +10124,7 @@ CaseEditPageComponent.RESUMED_FORM_SAVE = 'RESUMED_FORM_SAVE';
|
|
|
10150
10124
|
CaseEditPageComponent.TRIGGER_TEXT_START = 'Continue';
|
|
10151
10125
|
CaseEditPageComponent.TRIGGER_TEXT_SAVE = 'Save and continue';
|
|
10152
10126
|
CaseEditPageComponent.TRIGGER_TEXT_CONTINUE = 'Ignore Warning and Continue';
|
|
10153
|
-
CaseEditPageComponent.ɵfac = function CaseEditPageComponent_Factory(t) { return new (t || 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)
|
|
10127
|
+
CaseEditPageComponent.ɵfac = function CaseEditPageComponent_Factory(t) { return new (t || 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)); };
|
|
10154
10128
|
CaseEditPageComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CaseEditPageComponent, selectors: [["ccd-case-edit-page"]], decls: 12, vars: 11, consts: [[4, "ngIf"], [4, "ngIf", "ngIfThen", "ngIfElse"], ["titleBlock", ""], ["idBlock", ""], ["class", "govuk-error-summary", "aria-labelledby", "error-summary-title", "role", "alert", "tabindex", "-1", "data-module", "govuk-error-summary", 4, "ngIf"], [3, "error"], [3, "triggerTextContinue", "triggerTextIgnore", "callbackErrorsSubject", "callbackErrorsContext"], [1, "width-50"], ["class", "form", 3, "formGroup", "submit", 4, "ngIf"], [3, "eventCompletionParams", "eventCanBeCompleted", 4, "ngIf"], ["class", "govuk-heading-l", 4, "ngIf"], [1, "govuk-heading-l"], [1, "govuk-caption-l"], [3, "content"], ["class", "heading-h2", 4, "ngIf"], [1, "heading-h2"], ["aria-labelledby", "error-summary-title", "role", "alert", "tabindex", "-1", "data-module", "govuk-error-summary", 1, "govuk-error-summary"], ["id", "error-summary-title", 1, "govuk-error-summary__title"], ["class", "govuk-error-summary__body", 4, "ngFor", "ngForOf"], [1, "govuk-error-summary__body"], [1, "govuk-list", "govuk-error-summary__list"], [1, "validation-error", 3, "click"], [1, "form", 3, "formGroup", "submit"], ["id", "fieldset-case-data"], [2, "display", "none"], ["id", "caseEditForm", 3, "fields", "formGroup", "caseFields", "pageChangeSubject", "valuesChanged", 4, "ngIf"], ["class", "grid-row", 4, "ngIf"], [1, "form-group", "form-group-related"], ["type", "button", 1, "button", "button-secondary", 3, "disabled", "click"], ["type", "submit", 1, "button", 3, "disabled"], [1, "cancel"], ["href", "javascript:void(0)", 3, "click"], ["id", "caseEditForm", 3, "fields", "formGroup", "caseFields", "pageChangeSubject", "valuesChanged"], [1, "grid-row"], [1, "column-two-thirds", "rightBorderSeparator"], ["id", "caseEditForm1", 3, "fields", "formGroup", "caseFields"], [1, "column-one-third"], ["id", "caseEditForm2", 3, "fields", "formGroup", "caseFields"], [3, "eventCompletionParams", "eventCanBeCompleted"]], template: function CaseEditPageComponent_Template(rf, ctx) { if (rf & 1) {
|
|
10155
10129
|
i0.ɵɵtemplate(0, CaseEditPageComponent_ng_container_0_Template, 3, 2, "ng-container", 0);
|
|
10156
10130
|
i0.ɵɵtemplate(1, CaseEditPageComponent_div_1_Template, 1, 0, "div", 1);
|
|
@@ -10185,7 +10159,7 @@ CaseEditPageComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CaseE
|
|
|
10185
10159
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseEditPageComponent, [{
|
|
10186
10160
|
type: Component,
|
|
10187
10161
|
args: [{ selector: 'ccd-case-edit-page', template: "<ng-container *ngIf=\"currentPage\">\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]=\"getCaseTitle() | ccdCaseTitle: caseFields : editForm.controls['data']\"></ccd-markdown>\n</ng-template>\n<ng-template #idBlock>\n <h2 *ngIf=\"getCaseId()\" class=\"heading-h2\">#{{ getCaseId() | ccdCaseReference }}</h2>\n</ng-template>\n\n<!-- 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)\" 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)=\"submit()\">\n <fieldset id=\"fieldset-case-data\">\n <legend style=\"display: none;\"></legend>\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 </fieldset>\n\n <div class=\"form-group form-group-related\">\n <button class=\"button button-secondary\" type=\"button\" [disabled]=\"!(hasPreviousPage$ | async)\" (click)=\"toPreviousPage()\">\n {{'Previous' | rpxTranslate}}\n </button>\n <button class=\"button\" type=\"submit\" [disabled]=\"submitting()\">{{triggerText | rpxTranslate}}</button>\n </div>\n\n <p class=\"cancel\"><a (click)=\"cancel()\" href=\"javascript:void(0)\">{{getCancelText() | rpxTranslate}}</a></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: [".rightBorderSeparator{border-right-width:4px;border-right-color:#ffcc02;border-right-style:solid}.validation-error{cursor:pointer;text-decoration:underline;color:#d4351c}\n"] }]
|
|
10188
|
-
}], function () { return [{ 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 }
|
|
10162
|
+
}], function () { return [{ 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 }]; }, null); })();
|
|
10189
10163
|
|
|
10190
10164
|
class CallbackErrorsContext {
|
|
10191
10165
|
}
|
|
@@ -10632,17 +10606,6 @@ class AddressOption {
|
|
|
10632
10606
|
}
|
|
10633
10607
|
}
|
|
10634
10608
|
|
|
10635
|
-
class AddressValidationConstants {
|
|
10636
|
-
}
|
|
10637
|
-
// allow alpha-numeric characters and spaces possibly between a connecting - character
|
|
10638
|
-
// this applies validation while allowing partial postcodes
|
|
10639
|
-
AddressValidationConstants.REGEX_POSTCODE = /^([A-Za-z0-9]-*| )+$/;
|
|
10640
|
-
AddressValidationConstants.ɵfac = function AddressValidationConstants_Factory(t) { return new (t || AddressValidationConstants)(); };
|
|
10641
|
-
AddressValidationConstants.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: AddressValidationConstants, factory: AddressValidationConstants.ɵfac });
|
|
10642
|
-
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AddressValidationConstants, [{
|
|
10643
|
-
type: Injectable
|
|
10644
|
-
}], null, null); })();
|
|
10645
|
-
|
|
10646
10609
|
class FieldsFilterPipe {
|
|
10647
10610
|
/**
|
|
10648
10611
|
* Complex type should have at least on simple field descendant with a value.
|
|
@@ -10909,9 +10872,8 @@ function WriteAddressFieldComponent_div_1_div_4_span_5_Template(rf, ctx) { if (r
|
|
|
10909
10872
|
i0.ɵɵpipe(2, "rpxTranslate");
|
|
10910
10873
|
i0.ɵɵelementEnd();
|
|
10911
10874
|
} if (rf & 2) {
|
|
10912
|
-
const ctx_r5 = i0.ɵɵnextContext(3);
|
|
10913
10875
|
i0.ɵɵadvance(1);
|
|
10914
|
-
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1,
|
|
10876
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, "Enter the Postcode"));
|
|
10915
10877
|
} }
|
|
10916
10878
|
const _c1$n = function (a0) { return { "form-group-error": a0 }; };
|
|
10917
10879
|
const _c2$2 = function (a0) { return { "govuk-input--error": a0 }; };
|
|
@@ -10942,56 +10904,42 @@ function WriteAddressFieldComponent_div_1_div_4_Template(rf, ctx) { if (rf & 1)
|
|
|
10942
10904
|
i0.ɵɵadvance(2);
|
|
10943
10905
|
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(9, 11, "Find address"));
|
|
10944
10906
|
} }
|
|
10945
|
-
function
|
|
10946
|
-
i0.ɵɵelementStart(0, "span", 14);
|
|
10947
|
-
i0.ɵɵtext(1);
|
|
10948
|
-
i0.ɵɵpipe(2, "rpxTranslate");
|
|
10949
|
-
i0.ɵɵelementEnd();
|
|
10950
|
-
} if (rf & 2) {
|
|
10951
|
-
const ctx_r8 = i0.ɵɵnextContext(3);
|
|
10952
|
-
i0.ɵɵadvance(1);
|
|
10953
|
-
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, ctx_r8.errorMessage));
|
|
10954
|
-
} }
|
|
10955
|
-
function WriteAddressFieldComponent_div_1_div_5_option_7_Template(rf, ctx) { if (rf & 1) {
|
|
10907
|
+
function WriteAddressFieldComponent_div_1_div_5_option_6_Template(rf, ctx) { if (rf & 1) {
|
|
10956
10908
|
i0.ɵɵelementStart(0, "option", 18);
|
|
10957
10909
|
i0.ɵɵtext(1);
|
|
10958
10910
|
i0.ɵɵpipe(2, "rpxTranslate");
|
|
10959
10911
|
i0.ɵɵelementEnd();
|
|
10960
10912
|
} if (rf & 2) {
|
|
10961
|
-
const
|
|
10962
|
-
i0.ɵɵproperty("ngValue",
|
|
10913
|
+
const addressOption_r9 = ctx.$implicit;
|
|
10914
|
+
i0.ɵɵproperty("ngValue", addressOption_r9.value);
|
|
10963
10915
|
i0.ɵɵadvance(1);
|
|
10964
|
-
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 2,
|
|
10916
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 2, addressOption_r9.description), " ");
|
|
10965
10917
|
} }
|
|
10966
10918
|
function WriteAddressFieldComponent_div_1_div_5_Template(rf, ctx) { if (rf & 1) {
|
|
10967
|
-
const
|
|
10919
|
+
const _r11 = i0.ɵɵgetCurrentView();
|
|
10968
10920
|
i0.ɵɵelementStart(0, "div", 15)(1, "label", 9)(2, "span", 10);
|
|
10969
10921
|
i0.ɵɵtext(3);
|
|
10970
10922
|
i0.ɵɵpipe(4, "rpxTranslate");
|
|
10971
10923
|
i0.ɵɵelementEnd()();
|
|
10972
|
-
i0.ɵɵ
|
|
10973
|
-
i0.ɵɵ
|
|
10974
|
-
i0.ɵɵ
|
|
10975
|
-
i0.ɵɵtemplate(7, WriteAddressFieldComponent_div_1_div_5_option_7_Template, 3, 4, "option", 17);
|
|
10924
|
+
i0.ɵɵelementStart(5, "select", 16);
|
|
10925
|
+
i0.ɵɵlistener("change", function WriteAddressFieldComponent_div_1_div_5_Template_select_change_5_listener() { i0.ɵɵrestoreView(_r11); const ctx_r10 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r10.addressSelected()); });
|
|
10926
|
+
i0.ɵɵtemplate(6, WriteAddressFieldComponent_div_1_div_5_option_6_Template, 3, 4, "option", 17);
|
|
10976
10927
|
i0.ɵɵelementEnd()();
|
|
10977
10928
|
} if (rf & 2) {
|
|
10978
10929
|
const ctx_r3 = i0.ɵɵnextContext(2);
|
|
10979
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(9, _c1$n, ctx_r3.noAddressSelected));
|
|
10980
10930
|
i0.ɵɵadvance(1);
|
|
10981
10931
|
i0.ɵɵproperty("for", ctx_r3.createElementId("addressList"));
|
|
10982
10932
|
i0.ɵɵadvance(2);
|
|
10983
|
-
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(4,
|
|
10933
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(4, 5, "Select an address"));
|
|
10984
10934
|
i0.ɵɵadvance(2);
|
|
10985
|
-
i0.ɵɵproperty("ngIf", ctx_r3.noAddressSelected);
|
|
10986
|
-
i0.ɵɵadvance(1);
|
|
10987
10935
|
i0.ɵɵproperty("id", ctx_r3.createElementId("addressList"))("formControl", ctx_r3.addressList);
|
|
10988
10936
|
i0.ɵɵadvance(1);
|
|
10989
10937
|
i0.ɵɵproperty("ngForOf", ctx_r3.addressOptions);
|
|
10990
10938
|
} }
|
|
10991
10939
|
function WriteAddressFieldComponent_div_1_a_6_Template(rf, ctx) { if (rf & 1) {
|
|
10992
|
-
const
|
|
10940
|
+
const _r13 = i0.ɵɵgetCurrentView();
|
|
10993
10941
|
i0.ɵɵelementStart(0, "a", 19);
|
|
10994
|
-
i0.ɵɵlistener("click", function WriteAddressFieldComponent_div_1_a_6_Template_a_click_0_listener() { i0.ɵɵrestoreView(
|
|
10942
|
+
i0.ɵɵlistener("click", function WriteAddressFieldComponent_div_1_a_6_Template_a_click_0_listener() { i0.ɵɵrestoreView(_r13); const ctx_r12 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r12.blankAddress()); });
|
|
10995
10943
|
i0.ɵɵtext(1);
|
|
10996
10944
|
i0.ɵɵpipe(2, "rpxTranslate");
|
|
10997
10945
|
i0.ɵɵelementEnd();
|
|
@@ -11005,7 +10953,7 @@ function WriteAddressFieldComponent_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
|
11005
10953
|
i0.ɵɵpipe(3, "ccdFieldLabel");
|
|
11006
10954
|
i0.ɵɵelementEnd();
|
|
11007
10955
|
i0.ɵɵtemplate(4, WriteAddressFieldComponent_div_1_div_4_Template, 10, 17, "div", 5);
|
|
11008
|
-
i0.ɵɵtemplate(5, WriteAddressFieldComponent_div_1_div_5_Template,
|
|
10956
|
+
i0.ɵɵtemplate(5, WriteAddressFieldComponent_div_1_div_5_Template, 7, 7, "div", 6);
|
|
11009
10957
|
i0.ɵɵtemplate(6, WriteAddressFieldComponent_div_1_a_6_Template, 3, 3, "a", 7);
|
|
11010
10958
|
i0.ɵɵelementEnd();
|
|
11011
10959
|
} if (rf & 2) {
|
|
@@ -11024,30 +10972,19 @@ class WriteAddressFieldComponent extends AbstractFieldWriteComponent {
|
|
|
11024
10972
|
super();
|
|
11025
10973
|
this.isCompoundPipe = isCompoundPipe;
|
|
11026
10974
|
this.addressFormGroup = new FormGroup({});
|
|
11027
|
-
this.errorMessage = WriteAddressFieldComponent.REQUIRED_ERROR_MESSAGE;
|
|
11028
10975
|
this.missingPostcode = false;
|
|
11029
|
-
this.noAddressSelected = false;
|
|
11030
10976
|
this.addressesService = addressesService;
|
|
11031
10977
|
}
|
|
11032
10978
|
ngOnInit() {
|
|
11033
10979
|
if (!this.isComplexWithHiddenFields()) {
|
|
11034
|
-
this.postcode = new FormControl(''
|
|
10980
|
+
this.postcode = new FormControl('');
|
|
11035
10981
|
this.addressFormGroup.addControl('postcode', this.postcode);
|
|
11036
10982
|
this.addressList = new FormControl('');
|
|
11037
10983
|
this.addressFormGroup.addControl('address', this.addressList);
|
|
11038
10984
|
}
|
|
11039
|
-
this.addressesService.getMandatoryError().subscribe((value) => {
|
|
11040
|
-
this.updateErrorsOnContinue(value);
|
|
11041
|
-
});
|
|
11042
10985
|
}
|
|
11043
10986
|
findAddress() {
|
|
11044
|
-
this.noAddressSelected = false;
|
|
11045
10987
|
if (!this.postcode.value) {
|
|
11046
|
-
this.errorMessage = WriteAddressFieldComponent.REQUIRED_ERROR_MESSAGE;
|
|
11047
|
-
this.missingPostcode = true;
|
|
11048
|
-
}
|
|
11049
|
-
else if (!this.postcode.value.trim().match(AddressValidationConstants.REGEX_POSTCODE)) {
|
|
11050
|
-
this.errorMessage = WriteAddressFieldComponent.INVALID_ERROR_MESSAGE;
|
|
11051
10988
|
this.missingPostcode = true;
|
|
11052
10989
|
}
|
|
11053
10990
|
else {
|
|
@@ -11076,8 +11013,6 @@ class WriteAddressFieldComponent extends AbstractFieldWriteComponent {
|
|
|
11076
11013
|
blankAddress() {
|
|
11077
11014
|
this.caseField.value = new AddressModel();
|
|
11078
11015
|
this.setFormValue();
|
|
11079
|
-
this.missingPostcode = false;
|
|
11080
|
-
this.noAddressSelected = false;
|
|
11081
11016
|
}
|
|
11082
11017
|
isComplexWithHiddenFields() {
|
|
11083
11018
|
if (this.caseField.isComplex() && this.caseField.field_type.complex_fields
|
|
@@ -11109,7 +11044,6 @@ class WriteAddressFieldComponent extends AbstractFieldWriteComponent {
|
|
|
11109
11044
|
addressSelected() {
|
|
11110
11045
|
this.caseField.value = this.addressList.value;
|
|
11111
11046
|
this.setFormValue();
|
|
11112
|
-
this.noAddressSelected = false;
|
|
11113
11047
|
}
|
|
11114
11048
|
ngOnChanges(changes) {
|
|
11115
11049
|
super.ngOnChanges(changes);
|
|
@@ -11130,14 +11064,7 @@ class WriteAddressFieldComponent extends AbstractFieldWriteComponent {
|
|
|
11130
11064
|
this.writeComplexFieldComponent.complexGroup.setValue(this.caseField.value);
|
|
11131
11065
|
}
|
|
11132
11066
|
}
|
|
11133
|
-
updateErrorsOnContinue(value) {
|
|
11134
|
-
this.missingPostcode = value && !this.shouldShowDetailFields() && !this.addressOptions;
|
|
11135
|
-
this.noAddressSelected = value && !this.shouldShowDetailFields() && !!this.addressOptions;
|
|
11136
|
-
this.errorMessage = this.noAddressSelected ? 'Select an address' : this.errorMessage;
|
|
11137
|
-
}
|
|
11138
11067
|
}
|
|
11139
|
-
WriteAddressFieldComponent.REQUIRED_ERROR_MESSAGE = 'Enter a Postcode';
|
|
11140
|
-
WriteAddressFieldComponent.INVALID_ERROR_MESSAGE = 'Enter a valid Postcode';
|
|
11141
11068
|
WriteAddressFieldComponent.ɵfac = function WriteAddressFieldComponent_Factory(t) { return new (t || WriteAddressFieldComponent)(i0.ɵɵdirectiveInject(AddressesService), i0.ɵɵdirectiveInject(IsCompoundPipe)); };
|
|
11142
11069
|
WriteAddressFieldComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: WriteAddressFieldComponent, selectors: [["ccd-write-address-field"]], viewQuery: function WriteAddressFieldComponent_Query(rf, ctx) { if (rf & 1) {
|
|
11143
11070
|
i0.ɵɵviewQuery(_c0$U, 5);
|
|
@@ -11146,7 +11073,7 @@ WriteAddressFieldComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type:
|
|
|
11146
11073
|
let _t;
|
|
11147
11074
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.writeComplexFieldComponent = _t.first);
|
|
11148
11075
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.focusElementDirectives = _t);
|
|
11149
|
-
} }, inputs: { formGroup: "formGroup" }, features: [i0.ɵɵInheritDefinitionFeature, i0.ɵɵNgOnChangesFeature], decls: 4, vars: 9, consts: [[1, "form-group", 3, "id"], [4, "ngIf"], [3, "hidden", "caseField", "renderLabel", "parent", "formGroup", "ignoreMandatory", "idPrefix"], ["writeComplexFieldComponent", ""], [1, "heading-h2"], ["class", "form-group bottom-30 postcodeLookup", 3, "id", "ngClass", 4, "ngIf"], ["class", "form-group", "id", "selectAddress",
|
|
11076
|
+
} }, inputs: { formGroup: "formGroup" }, features: [i0.ɵɵInheritDefinitionFeature, i0.ɵɵNgOnChangesFeature], decls: 4, vars: 9, consts: [[1, "form-group", 3, "id"], [4, "ngIf"], [3, "hidden", "caseField", "renderLabel", "parent", "formGroup", "ignoreMandatory", "idPrefix"], ["writeComplexFieldComponent", ""], [1, "heading-h2"], ["class", "form-group bottom-30 postcodeLookup", 3, "id", "ngClass", 4, "ngIf"], ["class", "form-group", "id", "selectAddress", 4, "ngIf"], ["class", "manual-link bottom-30", "href", "javascript:void(0)", 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"], [1, "error-message"], ["id", "selectAddress", 1, "form-group"], ["name", "address", "focusElement", "", 1, "form-control", "ccd-dropdown", "addressList", 3, "id", "formControl", "change"], [3, "ngValue", 4, "ngFor", "ngForOf"], [3, "ngValue"], ["href", "javascript:void(0)", 1, "manual-link", "bottom-30", 3, "click"]], template: function WriteAddressFieldComponent_Template(rf, ctx) { if (rf & 1) {
|
|
11150
11077
|
i0.ɵɵelementStart(0, "div", 0);
|
|
11151
11078
|
i0.ɵɵtemplate(1, WriteAddressFieldComponent_div_1_Template, 7, 6, "div", 1);
|
|
11152
11079
|
i0.ɵɵelement(2, "ccd-write-complex-type-field", 2, 3);
|
|
@@ -11160,7 +11087,7 @@ WriteAddressFieldComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type:
|
|
|
11160
11087
|
} }, styles: [".manual-link[_ngcontent-%COMP%]{cursor:pointer;display:block;text-decoration:underline}"] });
|
|
11161
11088
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WriteAddressFieldComponent, [{
|
|
11162
11089
|
type: Component,
|
|
11163
|
-
args: [{ selector: 'ccd-write-address-field', 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\">{{
|
|
11090
|
+
args: [{ selector: 'ccd-write-address-field', 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\">{{'Enter the Postcode' | 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()\">{{'Find address' | rpxTranslate}}</button>\n </div>\n\n <div class=\"form-group\" *ngIf=\"addressOptions\" id=\"selectAddress\">\n <label [for]=\"createElementId('addressList')\">\n <span class=\"form-label\">{{'Select an address' | rpxTranslate}}</span>\n </label>\n\n <select class=\"form-control ccd-dropdown addressList\" [id]=\"createElementId('addressList')\" name=\"address\" [formControl]=\"addressList\" (change)=\"addressSelected()\" focusElement>\n <option *ngFor=\"let addressOption of addressOptions\" [ngValue]=\"addressOption.value\">\n {{addressOption.description | rpxTranslate}}\n </option>\n </select>\n </div>\n\n <a class=\"manual-link bottom-30\" *ngIf=\"!shouldShowDetailFields()\" (click)=\"blankAddress()\" href=\"javascript:void(0)\">\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: [".manual-link{cursor:pointer;display:block;text-decoration:underline}\n"] }]
|
|
11164
11091
|
}], function () { return [{ type: AddressesService }, { type: IsCompoundPipe }]; }, { writeComplexFieldComponent: [{
|
|
11165
11092
|
type: ViewChild,
|
|
11166
11093
|
args: ['writeComplexFieldComponent', { static: false }]
|
|
@@ -21401,10 +21328,11 @@ class CaseFileViewFolderComponent {
|
|
|
21401
21328
|
newDocumentTreeNode.name = node.category_name;
|
|
21402
21329
|
newDocumentTreeNode.type = DocumentTreeNodeType.FOLDER;
|
|
21403
21330
|
newDocumentTreeNode.children = [...this.generateTreeData(node.sub_categories), ...this.getDocuments(node.documents)];
|
|
21331
|
+
newDocumentTreeNode.category_order = node.category_order;
|
|
21404
21332
|
return [
|
|
21405
21333
|
...tree,
|
|
21406
21334
|
newDocumentTreeNode,
|
|
21407
|
-
];
|
|
21335
|
+
].sort((a, b) => a.category_order - b.category_order);
|
|
21408
21336
|
}, []);
|
|
21409
21337
|
}
|
|
21410
21338
|
getDocuments(documents) {
|