@hmcts/ccd-case-ui-toolkit 7.3.35-pofcc-107 → 7.3.36-3582-rc-1
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.
|
@@ -6050,8 +6050,8 @@ class FormValueService {
|
|
|
6050
6050
|
constructor(fieldTypeSanitiser) {
|
|
6051
6051
|
this.fieldTypeSanitiser = fieldTypeSanitiser;
|
|
6052
6052
|
}
|
|
6053
|
-
sanitise(rawValue) {
|
|
6054
|
-
return this.sanitiseObject(rawValue);
|
|
6053
|
+
sanitise(rawValue, isCaseFlagJourney = false) {
|
|
6054
|
+
return this.sanitiseObject(rawValue, isCaseFlagJourney);
|
|
6055
6055
|
}
|
|
6056
6056
|
sanitiseCaseReference(reference) {
|
|
6057
6057
|
// strip non digits
|
|
@@ -6073,7 +6073,7 @@ class FormValueService {
|
|
|
6073
6073
|
sanitiseDynamicLists(caseFields, editForm) {
|
|
6074
6074
|
return this.fieldTypeSanitiser.sanitiseLists(caseFields, editForm.data);
|
|
6075
6075
|
}
|
|
6076
|
-
sanitiseObject(rawObject) {
|
|
6076
|
+
sanitiseObject(rawObject, isCaseFlagJourney = false) {
|
|
6077
6077
|
if (!rawObject) {
|
|
6078
6078
|
return rawObject;
|
|
6079
6079
|
}
|
|
@@ -6087,14 +6087,17 @@ class FormValueService {
|
|
|
6087
6087
|
break;
|
|
6088
6088
|
}
|
|
6089
6089
|
else if ('CaseReference' === key) {
|
|
6090
|
-
sanitisedObject[key] = this.sanitiseValue(this.sanitiseCaseReference(String(rawObject[key])));
|
|
6090
|
+
sanitisedObject[key] = this.sanitiseValue(this.sanitiseCaseReference(String(rawObject[key])), isCaseFlagJourney);
|
|
6091
6091
|
}
|
|
6092
6092
|
else {
|
|
6093
|
-
sanitisedObject[key] = this.sanitiseValue(rawObject[key]);
|
|
6093
|
+
sanitisedObject[key] = this.sanitiseValue(rawObject[key], isCaseFlagJourney);
|
|
6094
6094
|
if (Array.isArray(sanitisedObject[key])) {
|
|
6095
6095
|
// If the 'sanitised' array is empty, whereas the original array had 1 or more items
|
|
6096
6096
|
// delete the property from the sanatised object
|
|
6097
|
-
|
|
6097
|
+
const shouldDeleteField = sanitisedObject[key].length === 0
|
|
6098
|
+
&& rawObject[key].length > 0
|
|
6099
|
+
&& !isCaseFlagJourney;
|
|
6100
|
+
if (shouldDeleteField) {
|
|
6098
6101
|
delete sanitisedObject[key];
|
|
6099
6102
|
}
|
|
6100
6103
|
}
|
|
@@ -6102,13 +6105,13 @@ class FormValueService {
|
|
|
6102
6105
|
}
|
|
6103
6106
|
return sanitisedObject;
|
|
6104
6107
|
}
|
|
6105
|
-
sanitiseArray(rawArray) {
|
|
6108
|
+
sanitiseArray(rawArray, isCaseFlagJourney = false) {
|
|
6106
6109
|
if (!rawArray) {
|
|
6107
6110
|
return rawArray;
|
|
6108
6111
|
}
|
|
6109
6112
|
rawArray.forEach(item => {
|
|
6110
6113
|
if (item && item.hasOwnProperty('value')) {
|
|
6111
|
-
item.value = this.sanitiseValue(item.value);
|
|
6114
|
+
item.value = this.sanitiseValue(item.value, isCaseFlagJourney);
|
|
6112
6115
|
}
|
|
6113
6116
|
});
|
|
6114
6117
|
// Filter the array to ensure only truthy values are returned; double-bang operator returns the boolean true/false
|
|
@@ -6118,13 +6121,13 @@ class FormValueService {
|
|
|
6118
6121
|
.filter(item => !!item)
|
|
6119
6122
|
.filter(item => item.hasOwnProperty('value') ? FieldsUtils.containsNonEmptyValues(item.value) : true);
|
|
6120
6123
|
}
|
|
6121
|
-
sanitiseValue(rawValue) {
|
|
6124
|
+
sanitiseValue(rawValue, isCaseFlagJourney = false) {
|
|
6122
6125
|
if (Array.isArray(rawValue)) {
|
|
6123
|
-
return this.sanitiseArray(rawValue);
|
|
6126
|
+
return this.sanitiseArray(rawValue, isCaseFlagJourney);
|
|
6124
6127
|
}
|
|
6125
6128
|
switch (typeof rawValue) {
|
|
6126
6129
|
case 'object':
|
|
6127
|
-
return this.sanitiseObject(rawValue);
|
|
6130
|
+
return this.sanitiseObject(rawValue, isCaseFlagJourney);
|
|
6128
6131
|
case 'string':
|
|
6129
6132
|
return rawValue.trim();
|
|
6130
6133
|
case 'number':
|
|
@@ -6305,6 +6308,60 @@ class FormValueService {
|
|
|
6305
6308
|
}
|
|
6306
6309
|
}
|
|
6307
6310
|
}
|
|
6311
|
+
// exui-3582 When a form field becomes hidden based on user’s input in the event journey,
|
|
6312
|
+
// its stored value must be cleared and it must not be submitted or persisted.
|
|
6313
|
+
removeHiddenField(data, caseFields, clearNonCase, formControls) {
|
|
6314
|
+
if (clearNonCase && data && caseFields && caseFields.length > 0) {
|
|
6315
|
+
for (const field of caseFields) {
|
|
6316
|
+
if (!FormValueService.isLabel(field) && FormValueService.isReadOnly(field)) {
|
|
6317
|
+
// Retain anything that is readonly and not a label.
|
|
6318
|
+
continue;
|
|
6319
|
+
}
|
|
6320
|
+
// Check if formControls[field.id] exists before accessing its properties
|
|
6321
|
+
const caseField = formControls[field.id] ? formControls[field.id]['caseField'] : undefined;
|
|
6322
|
+
if (caseField === undefined || field.hidden === true) {
|
|
6323
|
+
continue;
|
|
6324
|
+
}
|
|
6325
|
+
const hasValue = data.hasOwnProperty(field.id) && data[field.id] != null &&
|
|
6326
|
+
(typeof data[field.id] !== 'object' || Object.keys(data[field.id]).length > 0);
|
|
6327
|
+
if (caseField?.hidden === true &&
|
|
6328
|
+
field.display_context !== 'HIDDEN' &&
|
|
6329
|
+
field.display_context !== 'HIDDEN_TEMP' &&
|
|
6330
|
+
!field.retain_hidden_value &&
|
|
6331
|
+
field.id !== 'caseLinks' &&
|
|
6332
|
+
hasValue) {
|
|
6333
|
+
data[field.id] = null;
|
|
6334
|
+
continue; // If field is now hidden, skip checking its children
|
|
6335
|
+
}
|
|
6336
|
+
if (field.field_type) {
|
|
6337
|
+
switch (field.field_type.type) {
|
|
6338
|
+
case 'Complex':
|
|
6339
|
+
const complexData = data[field.id] ?? data['value'];
|
|
6340
|
+
if (complexData && formControls[field.id] && formControls[field.id]['controls']) {
|
|
6341
|
+
this.removeHiddenField(complexData, field.field_type.complex_fields, clearNonCase, formControls[field.id]['controls']);
|
|
6342
|
+
}
|
|
6343
|
+
break;
|
|
6344
|
+
case 'Collection':
|
|
6345
|
+
const collection = data[field.id];
|
|
6346
|
+
if (collection && Array.isArray(collection) && field.field_type.collection_field_type.type === 'Complex') {
|
|
6347
|
+
collection.forEach((item, index) => {
|
|
6348
|
+
if (formControls[field.id] && formControls[field.id]['controls'] && formControls[field.id]['controls'][index]) {
|
|
6349
|
+
const itemControls = formControls[field.id]?.['controls']?.[index]?.['controls']?.['value'];
|
|
6350
|
+
const collectionData = item['value'] ?? item;
|
|
6351
|
+
if (collectionData && itemControls?.['controls']) {
|
|
6352
|
+
this.removeHiddenField(collectionData, field.field_type.collection_field_type.complex_fields, clearNonCase, itemControls['controls']);
|
|
6353
|
+
}
|
|
6354
|
+
}
|
|
6355
|
+
});
|
|
6356
|
+
}
|
|
6357
|
+
break;
|
|
6358
|
+
default:
|
|
6359
|
+
break;
|
|
6360
|
+
}
|
|
6361
|
+
}
|
|
6362
|
+
}
|
|
6363
|
+
}
|
|
6364
|
+
}
|
|
6308
6365
|
/**
|
|
6309
6366
|
* Remove any empty collection fields where a value of greater than zero is specified in the field's {@link FieldType}
|
|
6310
6367
|
* `min` attribute.
|
|
@@ -9630,7 +9687,7 @@ class CaseEditComponent {
|
|
|
9630
9687
|
}
|
|
9631
9688
|
generateCaseEventData({ eventTrigger, form }) {
|
|
9632
9689
|
const caseEventData = {
|
|
9633
|
-
data: this.replaceEmptyComplexFieldValues(this.formValueService.sanitise(this.replaceHiddenFormValuesWithOriginalCaseData(form.get('data'), eventTrigger.case_fields))),
|
|
9690
|
+
data: this.replaceEmptyComplexFieldValues(this.formValueService.sanitise(this.replaceHiddenFormValuesWithOriginalCaseData(form.get('data'), eventTrigger.case_fields), this.isCaseFlagSubmission)),
|
|
9634
9691
|
event: form.value.event
|
|
9635
9692
|
};
|
|
9636
9693
|
this.formValueService.clearNonCaseFields(caseEventData.data, eventTrigger.case_fields);
|
|
@@ -9653,6 +9710,11 @@ class CaseEditComponent {
|
|
|
9653
9710
|
if (!this.isCaseFlagSubmission) {
|
|
9654
9711
|
this.formValueService.removeUnnecessaryFields(caseEventData.data, pageListCaseFields, true, true);
|
|
9655
9712
|
}
|
|
9713
|
+
// removeHiddenFields while are hidden in the UI
|
|
9714
|
+
// Only remove hidden fields if editForm and its controls are available
|
|
9715
|
+
if (form?.controls?.['data']?.['controls']) {
|
|
9716
|
+
this.formValueService.removeHiddenField(caseEventData.data, pageListCaseFields, true, form.controls['data']['controls']);
|
|
9717
|
+
}
|
|
9656
9718
|
caseEventData.event_token = eventTrigger.event_token;
|
|
9657
9719
|
caseEventData.ignore_warning = this.ignoreWarning;
|
|
9658
9720
|
if (this.confirmation) {
|
|
@@ -11797,6 +11859,11 @@ class CaseEditPageComponent {
|
|
|
11797
11859
|
this.validPageListCaseFieldsService.deleteNonValidatedFields(this.caseEdit.validPageList, caseEventData.data, this.eventTrigger.case_fields, fromPreviousPage, this.editForm.controls['data'].value);
|
|
11798
11860
|
// Tidy it up before we return it.
|
|
11799
11861
|
this.formValueService.removeUnnecessaryFields(caseEventData.data, caseFields, clearEmpty, clearNonCase, fromPreviousPage, this.currentPage.case_fields);
|
|
11862
|
+
// removeHiddenFields while are hidden in the UI
|
|
11863
|
+
// Only remove hidden fields if editForm and its controls are available
|
|
11864
|
+
if (this.editForm?.controls?.['data']?.['controls']) {
|
|
11865
|
+
this.formValueService.removeHiddenField(caseEventData.data, caseFields, clearNonCase, this.editForm.controls['data']['controls']);
|
|
11866
|
+
}
|
|
11800
11867
|
return caseEventData;
|
|
11801
11868
|
}
|
|
11802
11869
|
syncCaseEditDataService() {
|
|
@@ -32309,7 +32376,6 @@ class CaseEditSubmitComponent {
|
|
|
32309
32376
|
formValidatorsService;
|
|
32310
32377
|
caseFlagStateService;
|
|
32311
32378
|
linkedCasesService;
|
|
32312
|
-
placeholderService;
|
|
32313
32379
|
eventTrigger;
|
|
32314
32380
|
editForm;
|
|
32315
32381
|
triggerText;
|
|
@@ -32327,7 +32393,6 @@ class CaseEditSubmitComponent {
|
|
|
32327
32393
|
description;
|
|
32328
32394
|
eventSummaryLabel = 'Event summary';
|
|
32329
32395
|
eventDescriptionLabel = 'Event description';
|
|
32330
|
-
PLACEHOLDER_PATTERN = /\$\{[a-zA-Z0-9_.\][]+\}/;
|
|
32331
32396
|
static SHOW_SUMMARY_CONTENT_COMPARE_FUNCTION = (a, b) => {
|
|
32332
32397
|
const aCaseField = a.show_summary_content_option === 0 || a.show_summary_content_option;
|
|
32333
32398
|
const bCaseField = b.show_summary_content_option === 0 || b.show_summary_content_option;
|
|
@@ -32346,7 +32411,7 @@ class CaseEditSubmitComponent {
|
|
|
32346
32411
|
// not been disabled.
|
|
32347
32412
|
return this.caseEdit.isSubmitting || this.hasErrors;
|
|
32348
32413
|
}
|
|
32349
|
-
constructor(caseEdit, fieldsUtils, caseFieldService, route, orderService, profileNotifier, multipageComponentStateService, formValidatorsService, caseFlagStateService, linkedCasesService
|
|
32414
|
+
constructor(caseEdit, fieldsUtils, caseFieldService, route, orderService, profileNotifier, multipageComponentStateService, formValidatorsService, caseFlagStateService, linkedCasesService) {
|
|
32350
32415
|
this.caseEdit = caseEdit;
|
|
32351
32416
|
this.fieldsUtils = fieldsUtils;
|
|
32352
32417
|
this.caseFieldService = caseFieldService;
|
|
@@ -32357,11 +32422,11 @@ class CaseEditSubmitComponent {
|
|
|
32357
32422
|
this.formValidatorsService = formValidatorsService;
|
|
32358
32423
|
this.caseFlagStateService = caseFlagStateService;
|
|
32359
32424
|
this.linkedCasesService = linkedCasesService;
|
|
32360
|
-
this.placeholderService = placeholderService;
|
|
32361
32425
|
}
|
|
32362
32426
|
ngOnInit() {
|
|
32363
32427
|
this.profileSubscription = this.profileNotifier.profile.subscribe((_) => this.profile = _);
|
|
32364
32428
|
this.eventTrigger = this.caseEdit.eventTrigger;
|
|
32429
|
+
this.triggerText = this.eventTrigger.end_button_label || CallbackErrorsComponent.TRIGGER_TEXT_SUBMIT;
|
|
32365
32430
|
this.editForm = this.caseEdit.form;
|
|
32366
32431
|
this.wizard = this.caseEdit.wizard;
|
|
32367
32432
|
this.showSummaryFields = this.sortFieldsByShowSummaryContent(this.eventTrigger.case_fields);
|
|
@@ -32370,10 +32435,6 @@ class CaseEditSubmitComponent {
|
|
|
32370
32435
|
this.metadataFieldsObject = this.caseEdit?.caseDetails?.metadataFields?.
|
|
32371
32436
|
reduce((o, key) => Object.assign(o, { [key.id]: key.value }), {});
|
|
32372
32437
|
this.allFieldsValues = Object.assign(this.metadataFieldsObject ? this.metadataFieldsObject : {}, this.editForm.getRawValue().data);
|
|
32373
|
-
this.triggerText = this.eventTrigger.end_button_label || CallbackErrorsComponent.TRIGGER_TEXT_SUBMIT;
|
|
32374
|
-
if (this.hasUnresolvedPlaceholder(this.triggerText)) {
|
|
32375
|
-
this.triggerText = this.interpolateButtonText(this.triggerText);
|
|
32376
|
-
}
|
|
32377
32438
|
// Indicates if the submission is for a Case Flag, as opposed to a "regular" form submission, by the presence of
|
|
32378
32439
|
// a FlagLauncher field in the event trigger
|
|
32379
32440
|
this.caseEdit.isCaseFlagSubmission =
|
|
@@ -32603,19 +32664,7 @@ class CaseEditSubmitComponent {
|
|
|
32603
32664
|
}
|
|
32604
32665
|
return 'Cancel';
|
|
32605
32666
|
}
|
|
32606
|
-
|
|
32607
|
-
return buttonText
|
|
32608
|
-
&& typeof buttonText === 'string'
|
|
32609
|
-
&& !!buttonText.match(this.PLACEHOLDER_PATTERN);
|
|
32610
|
-
}
|
|
32611
|
-
interpolateButtonText(text) {
|
|
32612
|
-
const fields = this.allFieldsValues;
|
|
32613
|
-
return this.resolvePlaceholders(fields, text);
|
|
32614
|
-
}
|
|
32615
|
-
resolvePlaceholders(fields, stringToResolve) {
|
|
32616
|
-
return this.placeholderService.resolvePlaceholders(fields, stringToResolve);
|
|
32617
|
-
}
|
|
32618
|
-
static ɵfac = function CaseEditSubmitComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CaseEditSubmitComponent)(i0.ɵɵdirectiveInject(CaseEditComponent), i0.ɵɵdirectiveInject(FieldsUtils), i0.ɵɵdirectiveInject(CaseFieldService), i0.ɵɵdirectiveInject(i1$1.ActivatedRoute), i0.ɵɵdirectiveInject(OrderService), i0.ɵɵdirectiveInject(ProfileNotifier), i0.ɵɵdirectiveInject(MultipageComponentStateService), i0.ɵɵdirectiveInject(FormValidatorsService), i0.ɵɵdirectiveInject(CaseFlagStateService), i0.ɵɵdirectiveInject(LinkedCasesService), i0.ɵɵdirectiveInject(PlaceholderService)); };
|
|
32667
|
+
static ɵfac = function CaseEditSubmitComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CaseEditSubmitComponent)(i0.ɵɵdirectiveInject(CaseEditComponent), i0.ɵɵdirectiveInject(FieldsUtils), i0.ɵɵdirectiveInject(CaseFieldService), i0.ɵɵdirectiveInject(i1$1.ActivatedRoute), i0.ɵɵdirectiveInject(OrderService), i0.ɵɵdirectiveInject(ProfileNotifier), i0.ɵɵdirectiveInject(MultipageComponentStateService), i0.ɵɵdirectiveInject(FormValidatorsService), i0.ɵɵdirectiveInject(CaseFlagStateService), i0.ɵɵdirectiveInject(LinkedCasesService)); };
|
|
32619
32668
|
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CaseEditSubmitComponent, selectors: [["ccd-case-edit-submit"]], standalone: false, decls: 25, vars: 24, consts: [["titleBlock", ""], ["idBlock", ""], [1, "govuk-heading-l"], [4, "ngIf", "ngIfThen", "ngIfElse"], [3, "error"], [3, "callbackErrorsContext", "callbackErrorsSubject"], [1, "check-your-answers", 3, "submit", "formGroup"], [4, "ngIf"], [3, "eventCompletionParams", "eventCanBeCompleted", 4, "ngIf"], [1, "form-group", "form-group-related"], ["type", "button", 1, "button", "button-secondary", 3, "click", "disabled"], ["type", "submit", 1, "button", 3, "disabled"], [1, "cancel"], ["href", "#", 3, "click"], [3, "content"], ["class", "heading-h2", 4, "ngIf"], [1, "heading-h2"], ["class", "text-16", 4, "ngIf"], ["aria-describedby", "check your answers table", 1, "form-table"], [4, "ngFor", "ngForOf"], [1, "text-16"], ["ccdLabelSubstitutor", "", 3, "caseField", "hidden", "formGroup", "contextFields"], ["class", "valign-top case-field-label", 4, "ngIf"], [1, "form-cell", "case-field-content", "text-16"], [3, "formGroup", "topLevelFormGroup", "caseField", "context", "caseFields"], [1, "valign-top", "case-field-label"], [1, "valign-top", "check-your-answers__change", "case-field-change"], ["href", "#", 3, "click", 4, "ngIf"], ["aria-describedby", "summary fields table", 1, "summary-fields"], [3, "ngSwitch"], ["ccdLabelSubstitutor", "", 3, "caseField", "formGroup", "contextFields", 4, "ngSwitchCase"], ["class", "compound-field", "ccdLabelSubstitutor", "", 3, "caseField", "formGroup", "contextFields", 4, "ngSwitchCase"], ["ccdLabelSubstitutor", "", 3, "caseField", "formGroup", "contextFields"], ["id", "summary-field-label"], [1, "form-cell"], [3, "formGroup", "caseField"], ["ccdLabelSubstitutor", "", 1, "compound-field", 3, "caseField", "formGroup", "contextFields"], ["colspan", "2"], [3, "formGroup", "caseField", "caseFields"], ["id", "fieldset-event", "formGroupName", "event"], [2, "display", "none"], [1, "form-group", 3, "ngClass"], ["for", "field-trigger-summary", 1, "form-label"], [1, "form-hint"], ["class", "error-message", 4, "ngIf"], ["type", "text", "id", "field-trigger-summary", "formControlName", "summary", "maxlength", "1024", 1, "form-control", "bottom-30", "width-50", 3, "ngClass"], ["for", "field-trigger-description", 1, "form-label"], ["id", "field-trigger-description", "formControlName", "description", "maxlength", "65536", 1, "form-control", "bottom-30", "width-50", 3, "ngClass"], [1, "error-message"], [3, "eventCanBeCompleted", "eventCompletionParams"]], template: function CaseEditSubmitComponent_Template(rf, ctx) { if (rf & 1) {
|
|
32620
32669
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
32621
32670
|
i0.ɵɵelementStart(0, "div")(1, "h1", 2);
|
|
@@ -32678,8 +32727,8 @@ class CaseEditSubmitComponent {
|
|
|
32678
32727
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseEditSubmitComponent, [{
|
|
32679
32728
|
type: Component,
|
|
32680
32729
|
args: [{ selector: 'ccd-case-edit-submit', standalone: false, template: "<div>\n <!-- Event trigger name -->\n <h1 class=\"govuk-heading-l\">{{eventTrigger.name | rpxTranslate}}</h1>\n\n <!--Case ID or Title -->\n <div *ngIf=\"getCaseTitle(); then titleBlock; else idBlock\"></div>\n <ng-template #titleBlock>\n <ccd-markdown [content]=\"getCaseTitle() | ccdCaseTitle: contextFields : editForm.controls['data'] | 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 <ccd-case-edit-generic-errors [error]=\"caseEdit.error\"></ccd-case-edit-generic-errors>\n\n <ccd-callback-errors [callbackErrorsSubject]=\"caseEdit.callbackErrorsSubject\"\n (callbackErrorsContext)=\"callbackErrorsNotify($event)\"></ccd-callback-errors>\n\n <form class=\"check-your-answers\" [formGroup]=\"editForm\" (submit)=\"submit()\">\n <div *ngIf=\"!caseEdit.isEventCompletionChecksRequired\">\n <ng-container *ngIf=\"checkYourAnswerFieldsToDisplayExists()\">\n <h2 class=\"heading-h2\">{{pageTitle | rpxTranslate }}</h2>\n <span class=\"text-16\" *ngIf=\"!caseEdit.isCaseFlagSubmission\">{{'Check the information below carefully.' | rpxTranslate}}</span>\n\n <table class=\"form-table\" aria-describedby=\"check your answers table\">\n <tbody>\n <ng-container *ngFor=\"let page of wizard.pages\">\n <ng-container *ngIf=\"isShown(page)\">\n <ng-container *ngFor=\"let field of page\n | ccdPageFields: editForm\n | ccdReadFieldsFilter: false :undefined :true :allFieldsValues\n | ccdCYAPageLabelFilter\">\n <ng-container *ngIf=\"canShowFieldInCYA(field)\">\n <tr ccdLabelSubstitutor [caseField]=\"field\" [hidden]=\"field.hidden\"\n [formGroup]=\"editForm.controls['data']\" [contextFields]=\"contextFields\">\n <th *ngIf=\"!isLabel(field) && !caseEdit.isCaseFlagSubmission\" class=\"valign-top case-field-label\">\n <span class=\"text-16\">{{field.label | rpxTranslate}}</span>\n </th>\n <td class=\"form-cell case-field-content text-16\" [attr.colspan]=\"isLabel(field) ? '2' : '1'\">\n <ccd-field-read\n [formGroup]=\"editForm.controls['data']\" [topLevelFormGroup]=\"editForm.controls['data']\"\n [caseField]=\"summaryCaseField(field)\" [context]=\"paletteContext\" [caseFields]=\"contextFields\"></ccd-field-read>\n </td>\n <ng-container *ngIf=\"!caseEdit.isCaseFlagSubmission\">\n <td class=\"valign-top check-your-answers__change case-field-change\">\n <a *ngIf=\"isChangeAllowed(field)\" (click)=\"navigateToPage(page.id); $event.preventDefault()\"\n href=\"#\">\n <span class=\"text-16\" attr.aria-label=\"{{'Change' | rpxTranslate}} {{ field.label | rpxTranslate }}\">\n {{'Change' | rpxTranslate}}\n </span>\n </a>\n </td>\n </ng-container>\n </tr>\n </ng-container>\n </ng-container>\n </ng-container>\n </ng-container>\n </tbody>\n </table>\n </ng-container>\n <ng-container *ngIf=\"readOnlySummaryFieldsToDisplayExists()\">\n\n <table class=\"summary-fields\" aria-describedby=\"summary fields table\">\n <tbody>\n <ng-container *ngFor=\"let field of showSummaryFields\">\n <ng-container [ngSwitch]=\"!(field | ccdIsCompound)\">\n <tr *ngSwitchCase=\"true\" ccdLabelSubstitutor [caseField]=\"field\" [formGroup]=\"editForm.controls['data']\" [contextFields]=\"contextFields\">\n <th id=\"summary-field-label\">{{field.label}}</th>\n <td class=\"form-cell\">\n <ccd-field-read [formGroup]=\"editForm.controls['data']\" [caseField]=\"summaryCaseField(field)\"></ccd-field-read>\n </td>\n </tr>\n <tr *ngSwitchCase=\"false\" class=\"compound-field\" ccdLabelSubstitutor [caseField]=\"field\" [formGroup]=\"editForm.controls['data']\" [contextFields]=\"contextFields\">\n <td colspan=\"2\">\n <ccd-field-read [formGroup]=\"editForm.controls['data']\" [caseField]=\"summaryCaseField(field)\" [caseFields]=\"contextFields\"></ccd-field-read>\n </td>\n </tr>\n </ng-container>\n </ng-container>\n </tbody>\n </table>\n </ng-container>\n <ng-container *ngIf=\"showEventNotes()\">\n <fieldset id=\"fieldset-event\" formGroupName=\"event\">\n <legend style=\"display: none;\"></legend>\n <div class=\"form-group\" [ngClass]=\"{'form-group-error': !!summary && !summary.valid && (summary.dirty || summary.touched)}\">\n <label for=\"field-trigger-summary\" class=\"form-label\">\n Event summary (optional)\n <span class=\"form-hint\">A few words describing the purpose of the event.</span>\n </label>\n <span class=\"error-message\" *ngIf=\"summary?.errors && (summary.dirty || summary.touched)\">\n {{summary.errors | ccdFirstError: eventSummaryLabel | rpxTranslate}}\n </span>\n <input type=\"text\" id=\"field-trigger-summary\" class=\"form-control bottom-30 width-50\"\n [ngClass]=\"{'govuk-input--error': summary?.errors && (summary.dirty || summary.touched)}\" formControlName=\"summary\" maxlength=\"1024\">\n </div>\n <div class=\"form-group\" [ngClass]=\"{'form-group-error': !!description && !description.valid && (description.dirty || description.touched)}\">\n <label for=\"field-trigger-description\" class=\"form-label\">Event description (optional)</label>\n <span class=\"error-message\" *ngIf=\"description?.errors && (description.dirty || description.touched)\">\n {{description.errors | ccdFirstError: eventDescriptionLabel | rpxTranslate}}\n </span>\n <textarea id=\"field-trigger-description\" class=\"form-control bottom-30 width-50\" formControlName=\"description\"\n [ngClass]=\"{'govuk-input--error': description?.errors && (description.dirty || description.touched)}\" maxlength=\"65536\"></textarea>\n </div>\n </fieldset>\n </ng-container>\n </div>\n <ccd-case-event-completion *ngIf=\"caseEdit.isEventCompletionChecksRequired\"\n [eventCompletionParams]=\"caseEdit.eventCompletionParams\"\n (eventCanBeCompleted)=\"onEventCanBeCompleted($event)\">\n </ccd-case-event-completion>\n <div class=\"form-group form-group-related\">\n <button class=\"button button-secondary\" type=\"button\" [disabled]=\"!hasPrevious() || caseEdit.isSubmitting\" (click)=\"previous()\">\n {{'Previous' | rpxTranslate}}\n </button>\n <button type=\"submit\" [disabled]=\"isDisabled\" class=\"button\">\n {{triggerText | rpxTranslate}}\n </button>\n </div>\n <p class=\"cancel\">\n <a (click)=\"cancel(); $event.preventDefault()\" href=\"#\" [class.disabled]=\"caseEdit.isSubmitting\">{{getCancelText() | rpxTranslate}}</a>\n </p>\n </form>\n</div>\n\n", styles: ["#fieldset-case-data{margin-bottom:30px}#fieldset-case-data th{width:1%;white-space:nowrap;vertical-align:top}.compound-field td{padding:0}#confirmation-header{width:630px;background-color:#17958b;border:solid 1px #979797;color:#fff;text-align:center}#confirmation-body{width:630px;background-color:#fff}.valign-top{vertical-align:top}.summary-fields{margin-bottom:30px}.summary-fields tbody tr th,.summary-fields tbody tr td{border-bottom:0px}a.disabled{pointer-events:none;cursor:default}.case-field-label{width:45%}.case-field-content{width:50%}.no-bottom-border{border-bottom:none}.case-field-change{width:5%}.refresh-modal-backdrop{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.refresh-modal{background:#fff;padding:24px;max-width:520px;width:90%;box-shadow:0 8px 24px #0003;border-radius:4px;text-align:center}.refresh-modal .button{margin-top:12px}\n"] }]
|
|
32681
|
-
}], () => [{ type: CaseEditComponent }, { type: FieldsUtils }, { type: CaseFieldService }, { type: i1$1.ActivatedRoute }, { type: OrderService }, { type: ProfileNotifier }, { type: MultipageComponentStateService }, { type: FormValidatorsService }, { type: CaseFlagStateService }, { type: LinkedCasesService }
|
|
32682
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CaseEditSubmitComponent, { className: "CaseEditSubmitComponent", filePath: "lib/shared/components/case-editor/case-edit-submit/case-edit-submit.component.ts", lineNumber:
|
|
32730
|
+
}], () => [{ type: CaseEditComponent }, { type: FieldsUtils }, { type: CaseFieldService }, { type: i1$1.ActivatedRoute }, { type: OrderService }, { type: ProfileNotifier }, { type: MultipageComponentStateService }, { type: FormValidatorsService }, { type: CaseFlagStateService }, { type: LinkedCasesService }], null); })();
|
|
32731
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CaseEditSubmitComponent, { className: "CaseEditSubmitComponent", filePath: "lib/shared/components/case-editor/case-edit-submit/case-edit-submit.component.ts", lineNumber: 31 }); })();
|
|
32683
32732
|
|
|
32684
32733
|
function CaseProgressComponent_div_0_Template(rf, ctx) { if (rf & 1) {
|
|
32685
32734
|
const _r1 = i0.ɵɵgetCurrentView();
|