@xuda.io/runtime-bundle 1.0.420 → 1.0.421

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.
@@ -27810,6 +27810,39 @@ func.UI.utils.get_panels_from_dom = function (SESSION_ID, ignore_disableAutoRefr
27810
27810
  return panels_obj;
27811
27811
  };
27812
27812
 
27813
+ func.UI.utils.get_panels_wrapper_from_dom = async function (SESSION_ID, $xu_embed_container, ignore_disableAutoRefresh) {
27814
+ const $elm = func.UI.utils.find_in_element_data('xuPanelWrapper', $(SESSION_OBJ[SESSION_ID].root_element), 'isWrapper');
27815
+ var panels_obj = {};
27816
+
27817
+ // set panels_obj
27818
+ for (const [elem_key, elem_val] of Object.entries($elm)) {
27819
+ if (elem_key === 'length') break;
27820
+ var $div = $(elem_val);
27821
+
27822
+ const panelXuAttributes = $div?.xuPanelWrapper?.panelXuAttributes;
27823
+ let prog_id = panelXuAttributes?.program;
27824
+ const exp = panelXuAttributes?.['xu-exp:program'];
27825
+ if (exp) {
27826
+ let exp_ret = await func.expression.get(SESSION_ID, exp, $xu_embed_container?.data()?.xuData?.paramsP?.dsSessionP, 'UI Attr EXP');
27827
+ prog_id = func.UI.screen.fix_val_defaults('program', exp_ret.result);
27828
+ }
27829
+
27830
+ if (!ignore_disableAutoRefresh && _ds.tree_obj.disableAutoRefresh) {
27831
+ continue;
27832
+ }
27833
+
27834
+ const parent_element_ui_id = $div.data().xuPanelData.parent_element_ui_id;
27835
+ if (!panels_obj[parent_element_ui_id]) {
27836
+ panels_obj[$div.attr('xu-ui-id')] = {
27837
+ prog_id,
27838
+ panelXuAttributes,
27839
+ };
27840
+ }
27841
+ }
27842
+
27843
+ return panels_obj;
27844
+ };
27845
+
27813
27846
  func.UI.worker = {};
27814
27847
  func.UI.worker.ID = null;
27815
27848
  func.UI.worker.init = async function (SESSION_ID) {
@@ -31636,8 +31669,8 @@ func.UI.screen.refresh_xu_attributes = async function (SESSION_ID, fields_arr, j
31636
31669
  };
31637
31670
 
31638
31671
  const $xu_embed_container = $('.xu_embed_container');
31639
- const panels_obj = func.UI.utils.get_panels_from_dom(SESSION_ID, true);
31640
- let inviable_panels_obj = {};
31672
+ const panels_obj = func.UI.utils.get_panels_wrapper_from_dom(SESSION_ID, $xu_embed_container, true);
31673
+ // let inviable_panels_obj = {};
31641
31674
 
31642
31675
  for await (const field_id of fields_arr) {
31643
31676
  // run root
@@ -31659,7 +31692,7 @@ func.UI.screen.refresh_xu_attributes = async function (SESSION_ID, fields_arr, j
31659
31692
  }
31660
31693
  // run panels
31661
31694
  for await (const [parent_element_ui_id, panel_val] of Object.entries(panels_obj)) {
31662
- const prog_doc = await func.utils.DOCS_OBJ.get(SESSION_ID, panel_val._ds.prog_id);
31695
+ const prog_doc = await func.utils.DOCS_OBJ.get(SESSION_ID, panel_val.prog_id);
31663
31696
  await iterate_field_in_progUi(prog_doc.progUi, field_id);
31664
31697
  }
31665
31698
 
@@ -32975,7 +33008,7 @@ func.UI.screen.panel_post_render_handler = async function (
32975
33008
  };
32976
33009
  var $old_panel_div = find_old_panels_elements();
32977
33010
  const set_xuPanelData_to_the_new_rendered_items = (_) => {
32978
- $container.data().xuPanelWrapper = true;
33011
+ $container.data().xuPanelWrapper = { isWrapper: true, panelXuAttributes: _.clone($wrapper.data().xuAttributes) };
32979
33012
  $.each($wrapper.children(), function (key, val) {
32980
33013
  if (!$(val).data().xuPanelData) {
32981
33014
  $(val).data().xuPanelData = {};