@hmcts/ccd-case-ui-toolkit 7.3.0-exui-2906-activity-tracker-7 → 7.3.0-exui-2906-activity-tracker-8

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.
@@ -6620,8 +6620,8 @@ class FormValueService {
6620
6620
  constructor(fieldTypeSanitiser) {
6621
6621
  this.fieldTypeSanitiser = fieldTypeSanitiser;
6622
6622
  }
6623
- sanitise(rawValue) {
6624
- return this.sanitiseObject(rawValue);
6623
+ sanitise(rawValue, isCaseFlagJourney = false) {
6624
+ return this.sanitiseObject(rawValue, isCaseFlagJourney);
6625
6625
  }
6626
6626
  sanitiseCaseReference(reference) {
6627
6627
  // strip non digits
@@ -6643,7 +6643,7 @@ class FormValueService {
6643
6643
  sanitiseDynamicLists(caseFields, editForm) {
6644
6644
  return this.fieldTypeSanitiser.sanitiseLists(caseFields, editForm.data);
6645
6645
  }
6646
- sanitiseObject(rawObject) {
6646
+ sanitiseObject(rawObject, isCaseFlagJourney = false) {
6647
6647
  if (!rawObject) {
6648
6648
  return rawObject;
6649
6649
  }
@@ -6657,14 +6657,17 @@ class FormValueService {
6657
6657
  break;
6658
6658
  }
6659
6659
  else if ('CaseReference' === key) {
6660
- sanitisedObject[key] = this.sanitiseValue(this.sanitiseCaseReference(String(rawObject[key])));
6660
+ sanitisedObject[key] = this.sanitiseValue(this.sanitiseCaseReference(String(rawObject[key])), isCaseFlagJourney);
6661
6661
  }
6662
6662
  else {
6663
- sanitisedObject[key] = this.sanitiseValue(rawObject[key]);
6663
+ sanitisedObject[key] = this.sanitiseValue(rawObject[key], isCaseFlagJourney);
6664
6664
  if (Array.isArray(sanitisedObject[key])) {
6665
6665
  // If the 'sanitised' array is empty, whereas the original array had 1 or more items
6666
6666
  // delete the property from the sanatised object
6667
- if (sanitisedObject[key].length === 0 && rawObject[key].length > 0) {
6667
+ const shouldDeleteField = sanitisedObject[key].length === 0
6668
+ && rawObject[key].length > 0
6669
+ && !isCaseFlagJourney;
6670
+ if (shouldDeleteField) {
6668
6671
  delete sanitisedObject[key];
6669
6672
  }
6670
6673
  }
@@ -6672,13 +6675,13 @@ class FormValueService {
6672
6675
  }
6673
6676
  return sanitisedObject;
6674
6677
  }
6675
- sanitiseArray(rawArray) {
6678
+ sanitiseArray(rawArray, isCaseFlagJourney = false) {
6676
6679
  if (!rawArray) {
6677
6680
  return rawArray;
6678
6681
  }
6679
6682
  rawArray.forEach(item => {
6680
6683
  if (item && item.hasOwnProperty('value')) {
6681
- item.value = this.sanitiseValue(item.value);
6684
+ item.value = this.sanitiseValue(item.value, isCaseFlagJourney);
6682
6685
  }
6683
6686
  });
6684
6687
  // Filter the array to ensure only truthy values are returned; double-bang operator returns the boolean true/false
@@ -6688,13 +6691,13 @@ class FormValueService {
6688
6691
  .filter(item => !!item)
6689
6692
  .filter(item => item.hasOwnProperty('value') ? FieldsUtils.containsNonEmptyValues(item.value) : true);
6690
6693
  }
6691
- sanitiseValue(rawValue) {
6694
+ sanitiseValue(rawValue, isCaseFlagJourney = false) {
6692
6695
  if (Array.isArray(rawValue)) {
6693
- return this.sanitiseArray(rawValue);
6696
+ return this.sanitiseArray(rawValue, isCaseFlagJourney);
6694
6697
  }
6695
6698
  switch (typeof rawValue) {
6696
6699
  case 'object':
6697
- return this.sanitiseObject(rawValue);
6700
+ return this.sanitiseObject(rawValue, isCaseFlagJourney);
6698
6701
  case 'string':
6699
6702
  return rawValue.trim();
6700
6703
  case 'number':
@@ -7897,7 +7900,9 @@ class CaseActivityComponent {
7897
7900
  if (this.socketSubscription) {
7898
7901
  this.socketSubscription.unsubscribe();
7899
7902
  this.socketSubscription = undefined;
7900
- this.socket.stopCase(this.caseId, true);
7903
+ if (!this.iconOnly) {
7904
+ this.socket.stopCase(this.caseId, true);
7905
+ }
7901
7906
  }
7902
7907
  }
7903
7908
  handleActivity(activity) {
@@ -10204,7 +10209,7 @@ class CaseEditComponent {
10204
10209
  }
10205
10210
  generateCaseEventData({ eventTrigger, form }) {
10206
10211
  const caseEventData = {
10207
- data: this.replaceEmptyComplexFieldValues(this.formValueService.sanitise(this.replaceHiddenFormValuesWithOriginalCaseData(form.get('data'), eventTrigger.case_fields))),
10212
+ data: this.replaceEmptyComplexFieldValues(this.formValueService.sanitise(this.replaceHiddenFormValuesWithOriginalCaseData(form.get('data'), eventTrigger.case_fields), this.isCaseFlagSubmission)),
10208
10213
  event: form.value.event
10209
10214
  };
10210
10215
  this.formValueService.clearNonCaseFields(caseEventData.data, eventTrigger.case_fields);