@wavemaker-ai/app-ng-runtime 1.0.0-rc.312 → 1.0.0-rc.317

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.
@@ -732,7 +732,10 @@
732
732
  // as it can contain default value which will again be overridden by undefined.
733
733
  const fd = innerFormdata ? innerFormdata : data;
734
734
  if (fd) {
735
- if (!innerFormdata && field.defaultvalue) { // Fix for [WMS-31245]: when child form has no formdata and if its field has default value, then use default value instead of parent data
735
+ // Fix for [WMS-31245]: when child form has no formdata and if its field has default value,
736
+ // then use default value instead of parent data
737
+ const isInnerFormField = field.form.parentForm?.name == this.name;
738
+ if (isInnerFormField && lodashEs.isEmpty(innerFormdata)) {
736
739
  field.value = field.defaultvalue;
737
740
  }
738
741
  else if (fd.hasOwnProperty(key)) {
@@ -2965,7 +2968,7 @@
2965
2968
  href += '?' + Math.random();
2966
2969
  return href;
2967
2970
  }
2968
- setFormData(dataObj, formFields) {
2971
+ setFormData(dataObj, formFields, formData) {
2969
2972
  if (!dataObj) {
2970
2973
  return;
2971
2974
  }
@@ -2981,7 +2984,7 @@
2981
2984
  field.value = lodashEs.isString(value) ? '' : value;
2982
2985
  }
2983
2986
  else {
2984
- this.form.setFieldValue(field, dataObj);
2987
+ this.form.setFieldValue(field, dataObj, formData);
2985
2988
  }
2986
2989
  });
2987
2990
  this.savePrevDataValues();
@@ -723,7 +723,10 @@ class FormComponent extends StylableComponent {
723
723
  // as it can contain default value which will again be overridden by undefined.
724
724
  const fd = innerFormdata ? innerFormdata : data;
725
725
  if (fd) {
726
- if (!innerFormdata && field.defaultvalue) { // Fix for [WMS-31245]: when child form has no formdata and if its field has default value, then use default value instead of parent data
726
+ // Fix for [WMS-31245]: when child form has no formdata and if its field has default value,
727
+ // then use default value instead of parent data
728
+ const isInnerFormField = field.form.parentForm?.name == this.name;
729
+ if (isInnerFormField && isEmpty(innerFormdata)) {
727
730
  field.value = field.defaultvalue;
728
731
  }
729
732
  else if (fd.hasOwnProperty(key)) {
@@ -2957,7 +2960,7 @@ class LiveFormDirective {
2957
2960
  href += '?' + Math.random();
2958
2961
  return href;
2959
2962
  }
2960
- setFormData(dataObj, formFields) {
2963
+ setFormData(dataObj, formFields, formData) {
2961
2964
  if (!dataObj) {
2962
2965
  return;
2963
2966
  }
@@ -2973,7 +2976,7 @@ class LiveFormDirective {
2973
2976
  field.value = isString(value) ? '' : value;
2974
2977
  }
2975
2978
  else {
2976
- this.form.setFieldValue(field, dataObj);
2979
+ this.form.setFieldValue(field, dataObj, formData);
2977
2980
  }
2978
2981
  });
2979
2982
  this.savePrevDataValues();