@hmcts/ccd-case-ui-toolkit 7.3.53-exui-3740 → 7.3.53-exui-4291
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.
|
@@ -4258,11 +4258,7 @@ class FieldsUtils {
|
|
|
4258
4258
|
caseFieldType.complex_fields.forEach(field => {
|
|
4259
4259
|
try {
|
|
4260
4260
|
const isDynamicField = FieldsUtils.SERVER_RESPONSE_FIELD_TYPE_DYNAMIC_LIST_TYPE.indexOf(field.field_type.type) !== -1;
|
|
4261
|
-
|
|
4262
|
-
if (isDynamicMultiSelectField) {
|
|
4263
|
-
this.setDynamicMultiSelectListDefinition(field, rootCaseField);
|
|
4264
|
-
}
|
|
4265
|
-
else if (isDynamicField) {
|
|
4261
|
+
if (isDynamicField) {
|
|
4266
4262
|
const dynamicListValue = this.getDynamicListValue(rootCaseField.value, field.id);
|
|
4267
4263
|
if (dynamicListValue) {
|
|
4268
4264
|
const list_items = dynamicListValue[0].list_items;
|
|
@@ -4295,29 +4291,6 @@ class FieldsUtils {
|
|
|
4295
4291
|
}
|
|
4296
4292
|
}
|
|
4297
4293
|
}
|
|
4298
|
-
static setDynamicMultiSelectListDefinition(field, rootCaseField) {
|
|
4299
|
-
const dynamicListValue = this.getDynamicListValue(rootCaseField.value, field.id);
|
|
4300
|
-
if (dynamicListValue) {
|
|
4301
|
-
const list_items = dynamicListValue.find(data => data?.list_items !== undefined)?.list_items;
|
|
4302
|
-
if (list_items !== undefined) {
|
|
4303
|
-
field.list_items = list_items;
|
|
4304
|
-
field.formatted_value = {
|
|
4305
|
-
...field.formatted_value,
|
|
4306
|
-
list_items
|
|
4307
|
-
};
|
|
4308
|
-
}
|
|
4309
|
-
if (rootCaseField.field_type.type !== FieldsUtils.SERVER_RESPONSE_FIELD_TYPE_COLLECTION) {
|
|
4310
|
-
const value = dynamicListValue[0]?.value;
|
|
4311
|
-
if (value !== undefined) {
|
|
4312
|
-
field.value = value;
|
|
4313
|
-
field.formatted_value = {
|
|
4314
|
-
...field.formatted_value,
|
|
4315
|
-
value
|
|
4316
|
-
};
|
|
4317
|
-
}
|
|
4318
|
-
}
|
|
4319
|
-
}
|
|
4320
|
-
}
|
|
4321
4294
|
static getDynamicListValue(jsonBlock, key) {
|
|
4322
4295
|
const data = jsonBlock ? this.getNestedFieldValues(jsonBlock, key, []) : [];
|
|
4323
4296
|
return data.length > 0 ? data : null;
|
|
@@ -5968,12 +5941,8 @@ class FieldTypeSanitiser {
|
|
|
5968
5941
|
break;
|
|
5969
5942
|
case FieldTypeSanitiser.FIELD_TYPE_COLLECTION:
|
|
5970
5943
|
if (Array.isArray(data[caseField.id])) {
|
|
5971
|
-
data[caseField.id].forEach((formElement
|
|
5972
|
-
|
|
5973
|
-
? caseField.value.find((item) => item?.id === formElement.id)
|
|
5974
|
-
: null;
|
|
5975
|
-
const collectionItem = matchingItem || (Array.isArray(caseField.value) ? caseField.value[index] : null);
|
|
5976
|
-
this.sanitiseLists(this.copyCaseFieldsWithCollectionData(caseField.field_type.collection_field_type.complex_fields, collectionItem?.value || collectionItem), formElement.value);
|
|
5944
|
+
data[caseField.id].forEach((formElement) => {
|
|
5945
|
+
this.sanitiseLists(caseField.field_type.collection_field_type.complex_fields, formElement.value);
|
|
5977
5946
|
});
|
|
5978
5947
|
}
|
|
5979
5948
|
break;
|
|
@@ -6013,25 +5982,6 @@ class FieldTypeSanitiser {
|
|
|
6013
5982
|
}
|
|
6014
5983
|
});
|
|
6015
5984
|
}
|
|
6016
|
-
copyCaseFieldsWithCollectionData(caseFields, collectionItemData) {
|
|
6017
|
-
return caseFields.map((field) => {
|
|
6018
|
-
const fieldData = collectionItemData?.[field.id];
|
|
6019
|
-
if (field.field_type.type === FieldTypeSanitiser.FIELD_TYPE_COMPLEX) {
|
|
6020
|
-
return {
|
|
6021
|
-
...field,
|
|
6022
|
-
field_type: {
|
|
6023
|
-
...field.field_type,
|
|
6024
|
-
complex_fields: this.copyCaseFieldsWithCollectionData(field.field_type.complex_fields, fieldData)
|
|
6025
|
-
}
|
|
6026
|
-
};
|
|
6027
|
-
}
|
|
6028
|
-
return this.isDynamicList(field.field_type.type) &&
|
|
6029
|
-
field.display_context !== 'HIDDEN' &&
|
|
6030
|
-
fieldData?.list_items !== undefined
|
|
6031
|
-
? { ...field, list_items: fieldData.list_items }
|
|
6032
|
-
: field;
|
|
6033
|
-
});
|
|
6034
|
-
}
|
|
6035
5985
|
isDynamicList(fieldType) {
|
|
6036
5986
|
return FieldTypeSanitiser.DYNAMIC_LIST_TYPE.indexOf(fieldType) !== -1;
|
|
6037
5987
|
}
|
|
@@ -9824,10 +9774,8 @@ class CaseEditComponent {
|
|
|
9824
9774
|
return form.value.event.id;
|
|
9825
9775
|
}
|
|
9826
9776
|
generateCaseEventData({ eventTrigger, form }) {
|
|
9827
|
-
const formData = this.replaceHiddenFormValuesWithOriginalCaseData(form.get('data'), eventTrigger.case_fields);
|
|
9828
|
-
this.formValueService.sanitiseDynamicLists(eventTrigger.case_fields, { data: formData });
|
|
9829
9777
|
const caseEventData = {
|
|
9830
|
-
data: this.replaceEmptyComplexFieldValues(this.formValueService.sanitise(
|
|
9778
|
+
data: this.replaceEmptyComplexFieldValues(this.formValueService.sanitise(this.replaceHiddenFormValuesWithOriginalCaseData(form.get('data'), eventTrigger.case_fields), this.isCaseFlagSubmission)),
|
|
9831
9779
|
event: form.value.event
|
|
9832
9780
|
};
|
|
9833
9781
|
this.formValueService.clearNonCaseFields(caseEventData.data, eventTrigger.case_fields);
|