@xuda.io/runtime-bundle 1.0.589 → 1.0.590
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.
package/js/xuda-runtime-slim.js
CHANGED
|
@@ -12015,56 +12015,56 @@ func.UI.screen.refresh_screen = async function (SESSION_ID, fields_changed_arr,
|
|
|
12015
12015
|
|
|
12016
12016
|
var found, refresh_reason, refresh_details;
|
|
12017
12017
|
if (fields_changed_arr) {
|
|
12018
|
-
if (fields_changed_datasource && panel_val._ds.dsSession
|
|
12019
|
-
|
|
12020
|
-
|
|
12021
|
-
|
|
12022
|
-
|
|
12023
|
-
|
|
12018
|
+
if (fields_changed_datasource && panel_val._ds.dsSession <= Number(fields_changed_datasource)) {
|
|
12019
|
+
continue;
|
|
12020
|
+
}
|
|
12021
|
+
for (const field_id of fields_changed_arr) {
|
|
12022
|
+
// get panel attributes
|
|
12023
|
+
const _attributes = panel_val?.panelXuAttributes || {};
|
|
12024
12024
|
|
|
12025
|
-
|
|
12026
|
-
|
|
12025
|
+
// detect if program changed
|
|
12026
|
+
found = _attributes['xu-exp:program']?.includes('@' + field_id);
|
|
12027
12027
|
|
|
12028
|
-
|
|
12029
|
-
|
|
12030
|
-
|
|
12031
|
-
|
|
12032
|
-
|
|
12028
|
+
if (found) {
|
|
12029
|
+
refresh_reason = `program ${_attributes['xu-exp:program']} ${field_id} changed `;
|
|
12030
|
+
refresh_details = _attributes;
|
|
12031
|
+
break;
|
|
12032
|
+
}
|
|
12033
12033
|
|
|
12034
|
-
|
|
12035
|
-
|
|
12036
|
-
|
|
12037
|
-
|
|
12038
|
-
|
|
12034
|
+
// _attributes holds also info of parameters in code_in: @code
|
|
12035
|
+
// search field changed in panel call send parameters exp
|
|
12036
|
+
for (const [attr, value] of Object.entries(_attributes)) {
|
|
12037
|
+
const pattern = /xu-exp:(\w+)/;
|
|
12038
|
+
const match = attr.match(pattern);
|
|
12039
12039
|
|
|
12040
|
-
|
|
12041
|
-
|
|
12042
|
-
|
|
12043
|
-
|
|
12044
|
-
|
|
12045
|
-
|
|
12046
|
-
|
|
12047
|
-
|
|
12048
|
-
|
|
12049
|
-
|
|
12040
|
+
if (!match) {
|
|
12041
|
+
// continue if attribute is not expression
|
|
12042
|
+
continue;
|
|
12043
|
+
}
|
|
12044
|
+
// code_in
|
|
12045
|
+
const parameter_in_field_id = match?.[1];
|
|
12046
|
+
// @code
|
|
12047
|
+
if (value.includes(field_id)) {
|
|
12048
|
+
// search parameter in field in the target program's progDataSource
|
|
12049
|
+
found = progDataSource_str?.includes('@' + parameter_in_field_id);
|
|
12050
12050
|
|
|
12051
|
-
|
|
12052
|
-
|
|
12053
|
-
|
|
12051
|
+
if (found) {
|
|
12052
|
+
refresh_reason = `field ${field_id} in progDataSource parameter_in changed`;
|
|
12053
|
+
refresh_details = panel_val?.prog_doc?.progDataSource;
|
|
12054
12054
|
|
|
12055
|
-
|
|
12056
|
-
|
|
12055
|
+
break;
|
|
12056
|
+
}
|
|
12057
12057
|
|
|
12058
|
-
|
|
12059
|
-
|
|
12058
|
+
// found = find_field_in_progUi(prog_doc.progUi, parameter_in_field_id, 'xu-for');
|
|
12059
|
+
found = func.UI.find_field_in_progUi_attributes(panel_val.prog_doc.progUi, parameter_in_field_id, 'xu-for').length;
|
|
12060
12060
|
|
|
12061
|
-
|
|
12062
|
-
|
|
12063
|
-
|
|
12061
|
+
if (found) {
|
|
12062
|
+
refresh_reason = `field ${field_id} in progUi xu-for parameter_in changed`;
|
|
12063
|
+
refresh_details = found;
|
|
12064
12064
|
|
|
12065
|
-
|
|
12066
|
-
}
|
|
12065
|
+
break;
|
|
12067
12066
|
}
|
|
12067
|
+
// }
|
|
12068
12068
|
}
|
|
12069
12069
|
|
|
12070
12070
|
if (found) break;
|
|
@@ -9747,56 +9747,56 @@ func.UI.screen.refresh_screen = async function (SESSION_ID, fields_changed_arr,
|
|
|
9747
9747
|
|
|
9748
9748
|
var found, refresh_reason, refresh_details;
|
|
9749
9749
|
if (fields_changed_arr) {
|
|
9750
|
-
if (fields_changed_datasource && panel_val._ds.dsSession
|
|
9751
|
-
|
|
9752
|
-
|
|
9753
|
-
|
|
9754
|
-
|
|
9755
|
-
|
|
9750
|
+
if (fields_changed_datasource && panel_val._ds.dsSession <= Number(fields_changed_datasource)) {
|
|
9751
|
+
continue;
|
|
9752
|
+
}
|
|
9753
|
+
for (const field_id of fields_changed_arr) {
|
|
9754
|
+
// get panel attributes
|
|
9755
|
+
const _attributes = panel_val?.panelXuAttributes || {};
|
|
9756
9756
|
|
|
9757
|
-
|
|
9758
|
-
|
|
9757
|
+
// detect if program changed
|
|
9758
|
+
found = _attributes['xu-exp:program']?.includes('@' + field_id);
|
|
9759
9759
|
|
|
9760
|
-
|
|
9761
|
-
|
|
9762
|
-
|
|
9763
|
-
|
|
9764
|
-
|
|
9760
|
+
if (found) {
|
|
9761
|
+
refresh_reason = `program ${_attributes['xu-exp:program']} ${field_id} changed `;
|
|
9762
|
+
refresh_details = _attributes;
|
|
9763
|
+
break;
|
|
9764
|
+
}
|
|
9765
9765
|
|
|
9766
|
-
|
|
9767
|
-
|
|
9768
|
-
|
|
9769
|
-
|
|
9770
|
-
|
|
9766
|
+
// _attributes holds also info of parameters in code_in: @code
|
|
9767
|
+
// search field changed in panel call send parameters exp
|
|
9768
|
+
for (const [attr, value] of Object.entries(_attributes)) {
|
|
9769
|
+
const pattern = /xu-exp:(\w+)/;
|
|
9770
|
+
const match = attr.match(pattern);
|
|
9771
9771
|
|
|
9772
|
-
|
|
9773
|
-
|
|
9774
|
-
|
|
9775
|
-
|
|
9776
|
-
|
|
9777
|
-
|
|
9778
|
-
|
|
9779
|
-
|
|
9780
|
-
|
|
9781
|
-
|
|
9772
|
+
if (!match) {
|
|
9773
|
+
// continue if attribute is not expression
|
|
9774
|
+
continue;
|
|
9775
|
+
}
|
|
9776
|
+
// code_in
|
|
9777
|
+
const parameter_in_field_id = match?.[1];
|
|
9778
|
+
// @code
|
|
9779
|
+
if (value.includes(field_id)) {
|
|
9780
|
+
// search parameter in field in the target program's progDataSource
|
|
9781
|
+
found = progDataSource_str?.includes('@' + parameter_in_field_id);
|
|
9782
9782
|
|
|
9783
|
-
|
|
9784
|
-
|
|
9785
|
-
|
|
9783
|
+
if (found) {
|
|
9784
|
+
refresh_reason = `field ${field_id} in progDataSource parameter_in changed`;
|
|
9785
|
+
refresh_details = panel_val?.prog_doc?.progDataSource;
|
|
9786
9786
|
|
|
9787
|
-
|
|
9788
|
-
|
|
9787
|
+
break;
|
|
9788
|
+
}
|
|
9789
9789
|
|
|
9790
|
-
|
|
9791
|
-
|
|
9790
|
+
// found = find_field_in_progUi(prog_doc.progUi, parameter_in_field_id, 'xu-for');
|
|
9791
|
+
found = func.UI.find_field_in_progUi_attributes(panel_val.prog_doc.progUi, parameter_in_field_id, 'xu-for').length;
|
|
9792
9792
|
|
|
9793
|
-
|
|
9794
|
-
|
|
9795
|
-
|
|
9793
|
+
if (found) {
|
|
9794
|
+
refresh_reason = `field ${field_id} in progUi xu-for parameter_in changed`;
|
|
9795
|
+
refresh_details = found;
|
|
9796
9796
|
|
|
9797
|
-
|
|
9798
|
-
}
|
|
9797
|
+
break;
|
|
9799
9798
|
}
|
|
9799
|
+
// }
|
|
9800
9800
|
}
|
|
9801
9801
|
|
|
9802
9802
|
if (found) break;
|