@xuda.io/runtime-bundle 1.0.772 → 1.0.774

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.
@@ -12427,6 +12427,8 @@ func.UI.screen.execute_xu_functions = async function (SESSION_ID, is_skeleton, $
12427
12427
 
12428
12428
  const common_fx = {
12429
12429
  'xu-ref': async function ($elm, val, dsSession) {
12430
+ if (!val.value) return {};
12431
+
12430
12432
  func.UI.update_xu_ref(SESSION_ID, dsSession || paramsP.dsSessionP, val.value, $elm);
12431
12433
 
12432
12434
  // Select the node that will be observed for mutations
@@ -12601,7 +12603,9 @@ func.UI.screen.execute_xu_functions = async function (SESSION_ID, is_skeleton, $
12601
12603
  if (reference_source_obj.ret.type === 'array') {
12602
12604
  if (iterate_info.iterator_val === bind_field_id) {
12603
12605
  const arr_idx = Number($elm?.data()?.xuData?.iterate_info._key);
12604
- let new_arr = _.cloneDeep(reference_source_obj.ret.value);
12606
+ // let new_arr = _.cloneDeep(reference_source_obj.ret.value);
12607
+ const dataset_arr = await await func.datasource.get_value(SESSION_ID, reference_source_obj.fieldIdP, _ds, reference_source_obj.currentRecordId);
12608
+ let new_arr = _.cloneDeep(dataset_arr);
12605
12609
  // if (field_prop.props.fieldType === 'object' && !val_is_reference_field) {
12606
12610
  if (field_prop.props.fieldType === 'object' && val_is_reference_field) {
12607
12611
  let obj_item = new_arr[arr_idx];
@@ -10137,6 +10137,8 @@ func.UI.screen.execute_xu_functions = async function (SESSION_ID, is_skeleton, $
10137
10137
 
10138
10138
  const common_fx = {
10139
10139
  'xu-ref': async function ($elm, val, dsSession) {
10140
+ if (!val.value) return {};
10141
+
10140
10142
  func.UI.update_xu_ref(SESSION_ID, dsSession || paramsP.dsSessionP, val.value, $elm);
10141
10143
 
10142
10144
  // Select the node that will be observed for mutations
@@ -10311,7 +10313,9 @@ func.UI.screen.execute_xu_functions = async function (SESSION_ID, is_skeleton, $
10311
10313
  if (reference_source_obj.ret.type === 'array') {
10312
10314
  if (iterate_info.iterator_val === bind_field_id) {
10313
10315
  const arr_idx = Number($elm?.data()?.xuData?.iterate_info._key);
10314
- let new_arr = _.cloneDeep(reference_source_obj.ret.value);
10316
+ // let new_arr = _.cloneDeep(reference_source_obj.ret.value);
10317
+ const dataset_arr = await await func.datasource.get_value(SESSION_ID, reference_source_obj.fieldIdP, _ds, reference_source_obj.currentRecordId);
10318
+ let new_arr = _.cloneDeep(dataset_arr);
10315
10319
  // if (field_prop.props.fieldType === 'object' && !val_is_reference_field) {
10316
10320
  if (field_prop.props.fieldType === 'object' && val_is_reference_field) {
10317
10321
  let obj_item = new_arr[arr_idx];