@xuda.io/runtime-bundle 1.0.1131 → 1.0.1132
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/modules/xuda-event-ui-elements-module.esm.js +25 -642
- package/js/xuda-runtime-bundle.js +87 -84
- package/js/xuda-runtime-bundle.min.js +1 -1
- package/js/xuda-runtime-slim.js +87 -84
- package/js/xuda-runtime-slim.min.es.js +87 -84
- package/js/xuda-runtime-slim.min.js +1 -1
- package/package.json +1 -1
|
@@ -1,36 +1,24 @@
|
|
|
1
|
-
const log_error = function (
|
|
2
|
-
SESSION_ID,
|
|
3
|
-
action,
|
|
4
|
-
descP,
|
|
5
|
-
detailsP,
|
|
6
|
-
warning,
|
|
7
|
-
prog_id
|
|
8
|
-
) {
|
|
1
|
+
const log_error = function (SESSION_ID, action, descP, detailsP, warning, prog_id) {
|
|
9
2
|
func.utils.debug.log(SESSION_ID, log_nodeId, {
|
|
10
|
-
module:
|
|
3
|
+
module: 'event',
|
|
11
4
|
action,
|
|
12
|
-
source:
|
|
5
|
+
source: '',
|
|
13
6
|
prop: descP,
|
|
14
7
|
details: detailsP,
|
|
15
8
|
result: null,
|
|
16
9
|
error: !warning,
|
|
17
10
|
warning: warning,
|
|
18
11
|
fields: null,
|
|
19
|
-
type:
|
|
12
|
+
type: 'event',
|
|
20
13
|
prog_id,
|
|
21
14
|
});
|
|
22
15
|
};
|
|
23
16
|
|
|
24
17
|
const get_ui_ids = function (SESSION_ID, event_prop) {
|
|
25
|
-
if (event_prop.selector ===
|
|
18
|
+
if (event_prop.selector === '@_THIS') event_prop.selector = elementP;
|
|
26
19
|
// var ui_ids = [];
|
|
27
|
-
if (event_prop.selector_type ==
|
|
28
|
-
let $elm = func.UI.utils.find_in_element_data(
|
|
29
|
-
"xuData",
|
|
30
|
-
$(SESSION_OBJ[SESSION_ID].root_element),
|
|
31
|
-
"ui_id",
|
|
32
|
-
event_prop.selector
|
|
33
|
-
);
|
|
20
|
+
if (event_prop.selector_type == 'tree_id') {
|
|
21
|
+
let $elm = func.UI.utils.find_in_element_data('xuData', $(SESSION_OBJ[SESSION_ID].root_element), 'ui_id', event_prop.selector);
|
|
34
22
|
return [
|
|
35
23
|
{
|
|
36
24
|
ui_id: event_prop.selector,
|
|
@@ -39,42 +27,27 @@ const get_ui_ids = function (SESSION_ID, event_prop) {
|
|
|
39
27
|
];
|
|
40
28
|
}
|
|
41
29
|
|
|
42
|
-
return _.map(
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
);
|
|
30
|
+
return _.map($(SESSION_OBJ[SESSION_ID].root_element).find(event_prop.selector), function (val, key) {
|
|
31
|
+
return {
|
|
32
|
+
ui_id: $(val)?.data()?.xuData?.ui_id,
|
|
33
|
+
tagName: $(val)?.data()?.xuData?.node.tagName, //$(val)[0]?.tagName?.toLowerCase(),
|
|
34
|
+
};
|
|
35
|
+
});
|
|
51
36
|
};
|
|
52
37
|
|
|
53
38
|
const get_ui_id = async function (SESSION_ID, dsSession, event_prop, rowP) {
|
|
54
|
-
if (event_prop.selector ===
|
|
55
|
-
return await func.expression.get(
|
|
56
|
-
SESSION_ID,
|
|
57
|
-
event_prop.selector,
|
|
58
|
-
dsSession,
|
|
59
|
-
"ui_id",
|
|
60
|
-
rowP
|
|
61
|
-
);
|
|
39
|
+
if (event_prop.selector === '@_THIS') event_prop.selector = elementP;
|
|
40
|
+
return await func.expression.get(SESSION_ID, event_prop.selector, dsSession, 'ui_id', rowP);
|
|
62
41
|
};
|
|
63
|
-
const set_info_value = async function (
|
|
64
|
-
SESSION_ID,
|
|
65
|
-
value,
|
|
66
|
-
source,
|
|
67
|
-
event_prop,
|
|
68
|
-
resolve
|
|
69
|
-
) {
|
|
42
|
+
const set_info_value = async function (SESSION_ID, value, source, event_prop, resolve) {
|
|
70
43
|
var _session = SESSION_OBJ[SESSION_ID];
|
|
71
44
|
if (!event_prop.field_return_value) {
|
|
72
|
-
log_error(SESSION_ID, source,
|
|
45
|
+
log_error(SESSION_ID, source, ' Field cannot be empty');
|
|
73
46
|
return;
|
|
74
47
|
}
|
|
75
48
|
var fieldId = event_prop.field_return_value.substr(1);
|
|
76
|
-
if (event_prop.field_return_value.substr(0, 1) !==
|
|
77
|
-
log_error(SESSION_ID, source, fieldId +
|
|
49
|
+
if (event_prop.field_return_value.substr(0, 1) !== '@') {
|
|
50
|
+
log_error(SESSION_ID, source, fieldId + ' Field not valid');
|
|
78
51
|
return;
|
|
79
52
|
}
|
|
80
53
|
var fieldsChanged_arr = [];
|
|
@@ -87,8 +60,7 @@ const set_info_value = async function (
|
|
|
87
60
|
try {
|
|
88
61
|
const row_idx = func.common.find_ROWID_idx(_ds, rowIdP);
|
|
89
62
|
|
|
90
|
-
if (_ds.data_feed?.rows?.[row_idx]?.[fieldId])
|
|
91
|
-
_ds.data_feed.rows[row_idx][fieldId] = value;
|
|
63
|
+
if (_ds.data_feed?.rows?.[row_idx]?.[fieldId]) _ds.data_feed.rows[row_idx][fieldId] = value;
|
|
92
64
|
} catch (err) {
|
|
93
65
|
console.error(err);
|
|
94
66
|
}
|
|
@@ -97,26 +69,16 @@ const set_info_value = async function (
|
|
|
97
69
|
if (!rows_changed_arr.includes(rowIdP)) rows_changed_arr.push(rowIdP);
|
|
98
70
|
returned_ds = dsP;
|
|
99
71
|
const _view_obj = await func.utils.VIEWS_OBJ.get(SESSION_ID, _ds.prog_id);
|
|
100
|
-
var field_row_id = func.common.find_item_by_key(
|
|
101
|
-
_view_obj.progFields,
|
|
102
|
-
"field_id",
|
|
103
|
-
fieldId
|
|
104
|
-
)?.id;
|
|
72
|
+
var field_row_id = func.common.find_item_by_key(_view_obj.progFields, 'field_id', fieldId)?.id;
|
|
105
73
|
|
|
106
|
-
func.utils.debug.watch(
|
|
107
|
-
SESSION_ID,
|
|
108
|
-
_ds.prog_id + "%" + field_row_id,
|
|
109
|
-
"view_field",
|
|
110
|
-
"Source: " + source,
|
|
111
|
-
value
|
|
112
|
-
);
|
|
74
|
+
func.utils.debug.watch(SESSION_ID, _ds.prog_id + '%' + field_row_id, 'view_field', 'Source: ' + source, value);
|
|
113
75
|
};
|
|
114
76
|
const ret = await func.datasource.get_value(
|
|
115
77
|
SESSION_ID,
|
|
116
78
|
fieldId,
|
|
117
79
|
dsSession,
|
|
118
80
|
|
|
119
|
-
_session.DS_GLB[dsSession].currentRecordId
|
|
81
|
+
_session.DS_GLB[dsSession].currentRecordId,
|
|
120
82
|
);
|
|
121
83
|
await update_ds(ret.dsSessionP, ret.currentRecordId);
|
|
122
84
|
if (returned_ds) {
|
|
@@ -131,594 +93,15 @@ const set_info_value = async function (
|
|
|
131
93
|
}
|
|
132
94
|
};
|
|
133
95
|
|
|
134
|
-
const element_not_found = function (
|
|
135
|
-
SESSION_ID,
|
|
136
|
-
dsP,
|
|
137
|
-
jobNoP,
|
|
138
|
-
alter_attr,
|
|
139
|
-
ui_id
|
|
140
|
-
) {
|
|
96
|
+
const element_not_found = function (SESSION_ID, dsP, jobNoP, alter_attr, ui_id) {
|
|
141
97
|
var _session = SESSION_OBJ[SESSION_ID];
|
|
142
98
|
if (_.isEmpty(SCREEN_BLOCKER_OBJ)) {
|
|
143
99
|
// still busy not require alert
|
|
144
100
|
if (_session.DS_GLB[dsP]) {
|
|
145
|
-
log_error(
|
|
146
|
-
SESSION_ID,
|
|
147
|
-
"UI element not found",
|
|
148
|
-
alter_attr + " > " + ui_id,
|
|
149
|
-
null,
|
|
150
|
-
_session.DS_GLB[dsP].prog_id
|
|
151
|
-
);
|
|
101
|
+
log_error(SESSION_ID, 'UI element not found', alter_attr + ' > ' + ui_id, null, _session.DS_GLB[dsP].prog_id);
|
|
152
102
|
}
|
|
153
103
|
}
|
|
154
104
|
if (jobNoP) {
|
|
155
105
|
func.events.delete_job(SESSION_ID, jobNoP);
|
|
156
106
|
}
|
|
157
107
|
};
|
|
158
|
-
|
|
159
|
-
// export const create_ui_element = async function (
|
|
160
|
-
// SESSION_ID,
|
|
161
|
-
// jobNoP,
|
|
162
|
-
// refIdP,
|
|
163
|
-
// elementP,
|
|
164
|
-
// dsSession
|
|
165
|
-
// ) {
|
|
166
|
-
// var event_prop = refIdP;
|
|
167
|
-
// var _session = SESSION_OBJ[SESSION_ID];
|
|
168
|
-
|
|
169
|
-
// var debug_info = _.cloneDeep(event_prop);
|
|
170
|
-
// if (event_prop.append_to_selector === "@_THIS")
|
|
171
|
-
// event_prop.append_to_selector = elementP;
|
|
172
|
-
// var append_to_ui_id_info = await func.expression.get(
|
|
173
|
-
// SESSION_ID,
|
|
174
|
-
// event_prop.append_to_selector,
|
|
175
|
-
// dsSession,
|
|
176
|
-
// "UI_exp",
|
|
177
|
-
// rowP
|
|
178
|
-
// );
|
|
179
|
-
|
|
180
|
-
// var append_to_selector = append_to_ui_id_info.result;
|
|
181
|
-
// debug_info.append_to_selector = append_to_selector;
|
|
182
|
-
// debug_info.append_to_ui_id_info = append_to_ui_id_info;
|
|
183
|
-
|
|
184
|
-
// const ui_ids = get_ui_ids(SESSION_ID, event_prop);
|
|
185
|
-
// if (!ui_ids.length) {
|
|
186
|
-
// return log_error(
|
|
187
|
-
// SESSION_ID,
|
|
188
|
-
// "create_ui_element",
|
|
189
|
-
// "UI Element empty",
|
|
190
|
-
// event_prop.selectornull,
|
|
191
|
-
// _session.DS_GLB[dsSession].prog_id
|
|
192
|
-
// );
|
|
193
|
-
// }
|
|
194
|
-
|
|
195
|
-
// const create_element = function (val) {
|
|
196
|
-
// return new Promise((resolve) => {
|
|
197
|
-
// if (!val.ui_id) {
|
|
198
|
-
// resolve();
|
|
199
|
-
// return;
|
|
200
|
-
// }
|
|
201
|
-
// func.UI.utils.get_ui_info_tree_scope_sync(
|
|
202
|
-
// SESSION_ID,
|
|
203
|
-
// dsSession,
|
|
204
|
-
// val.ui_id,
|
|
205
|
-
// event_prop.append_to_ui_type,
|
|
206
|
-
// async function (res) {
|
|
207
|
-
// if (!res) {
|
|
208
|
-
// return log_error(
|
|
209
|
-
// SESSION_ID,
|
|
210
|
-
// "create_ui_element",
|
|
211
|
-
// "Target UI element not found",
|
|
212
|
-
// val.ui_id,
|
|
213
|
-
// null,
|
|
214
|
-
// _session.DS_GLB[dsSession].prog_id
|
|
215
|
-
// );
|
|
216
|
-
// }
|
|
217
|
-
|
|
218
|
-
// var render_node_obj = async function () {
|
|
219
|
-
// if (!event_prop?.attributes) return;
|
|
220
|
-
// var ui_id_info = await func.expression.get(
|
|
221
|
-
// SESSION_ID,
|
|
222
|
-
// val.ui_id,
|
|
223
|
-
// dsSession,
|
|
224
|
-
// "UI_exp",
|
|
225
|
-
// rowP
|
|
226
|
-
// );
|
|
227
|
-
|
|
228
|
-
// var obj = {
|
|
229
|
-
// id:
|
|
230
|
-
// new Date().valueOf().toString() +
|
|
231
|
-
// "_" +
|
|
232
|
-
// Math.random().toString().replace(".", ""),
|
|
233
|
-
// data: { label: ui_id_info.result, type: "virtual" },
|
|
234
|
-
// props: { fieldType: "string" },
|
|
235
|
-
// };
|
|
236
|
-
|
|
237
|
-
// if (
|
|
238
|
-
// event_prop.attributes["xu-bind"] ||
|
|
239
|
-
// event_prop.attributes["xu-exp:xu-bind"]
|
|
240
|
-
// ) {
|
|
241
|
-
// let xuModel =
|
|
242
|
-
// (await func.expression.get(
|
|
243
|
-
// SESSION_ID,
|
|
244
|
-
// event_prop.attributes.ExpXuModel,
|
|
245
|
-
// dsSession,
|
|
246
|
-
// "UI_exp",
|
|
247
|
-
// rowP
|
|
248
|
-
// ).result) || event_prop.attributes["xu-bind"];
|
|
249
|
-
|
|
250
|
-
// if (xuModel) {
|
|
251
|
-
// const _view_obj = await func.utils.VIEWS_OBJ.get(
|
|
252
|
-
// SESSION_ID,
|
|
253
|
-
// _ds.prog_id
|
|
254
|
-
// );
|
|
255
|
-
// let res = func.common.find_item_by_key(
|
|
256
|
-
// _view_obj.progFields,
|
|
257
|
-
// "field_id",
|
|
258
|
-
// xuModel
|
|
259
|
-
// );
|
|
260
|
-
// if (!res) {
|
|
261
|
-
// _view_obj.progFields[obj.id] = obj;
|
|
262
|
-
|
|
263
|
-
// event_prop.attributes["xu-bind"] = obj.id;
|
|
264
|
-
// }
|
|
265
|
-
// }
|
|
266
|
-
// }
|
|
267
|
-
// let _node = {
|
|
268
|
-
// attributes: event_prop.attributes,
|
|
269
|
-
// id: event_prop.ui_id,
|
|
270
|
-
// tagName: event_prop.tag_name,
|
|
271
|
-
// type: "element",
|
|
272
|
-
// };
|
|
273
|
-
// let _key = res.$elm.data().xuData.node.children.length;
|
|
274
|
-
// let _$div = func.UI.screen.create_container(
|
|
275
|
-
// SESSION_ID,
|
|
276
|
-
// null,
|
|
277
|
-
// _node,
|
|
278
|
-
// res.$elm,
|
|
279
|
-
// res.$elm.data().xuData.paramsP,
|
|
280
|
-
// {},
|
|
281
|
-
// jobNoP,
|
|
282
|
-
// _key,
|
|
283
|
-
// {},
|
|
284
|
-
// _node.attributes,
|
|
285
|
-
// null,
|
|
286
|
-
// null,
|
|
287
|
-
// event_prop.tag_name,
|
|
288
|
-
// null,
|
|
289
|
-
// ""
|
|
290
|
-
// );
|
|
291
|
-
// let ret = await func.UI.screen.set_attributes_new(
|
|
292
|
-
// SESSION_ID,
|
|
293
|
-
// null,
|
|
294
|
-
// null, //$root_container,
|
|
295
|
-
// _node,
|
|
296
|
-
// res.$elm,
|
|
297
|
-
// res.$elm.data().xuData.paramsP,
|
|
298
|
-
// {},
|
|
299
|
-
// jobNoP,
|
|
300
|
-
// _key,
|
|
301
|
-
// {},
|
|
302
|
-
// _$div,
|
|
303
|
-
// true
|
|
304
|
-
// );
|
|
305
|
-
|
|
306
|
-
// return obj;
|
|
307
|
-
// };
|
|
308
|
-
// await render_node_obj();
|
|
309
|
-
|
|
310
|
-
// resolve();
|
|
311
|
-
|
|
312
|
-
// func.utils.debug.watch(
|
|
313
|
-
// SESSION_ID,
|
|
314
|
-
// calling_trigger_prop?.id,
|
|
315
|
-
// "create_ui_element",
|
|
316
|
-
// debug_info,
|
|
317
|
-
// "Append to: " + append_to_selector,
|
|
318
|
-
// expCond
|
|
319
|
-
// );
|
|
320
|
-
// },
|
|
321
|
-
// $div,
|
|
322
|
-
// null
|
|
323
|
-
// );
|
|
324
|
-
// });
|
|
325
|
-
// };
|
|
326
|
-
// await Promise.all(ui_ids.map(create_element));
|
|
327
|
-
|
|
328
|
-
// if (jobNoP) func.events.delete_job(SESSION_ID, jobNoP);
|
|
329
|
-
// };
|
|
330
|
-
|
|
331
|
-
// export const alter_ui_element = async function (
|
|
332
|
-
// SESSION_ID,
|
|
333
|
-
// jobNoP,
|
|
334
|
-
// refIdP,
|
|
335
|
-
// elementP,
|
|
336
|
-
// dsSession,
|
|
337
|
-
// rowP
|
|
338
|
-
// ) {
|
|
339
|
-
// var event_prop = refIdP;
|
|
340
|
-
// var _session = SESSION_OBJ[SESSION_ID];
|
|
341
|
-
// var ui_id_info = await get_ui_id(SESSION_ID, dsSession, event_prop, rowP);
|
|
342
|
-
// event_prop.selector = ui_id_info.result;
|
|
343
|
-
|
|
344
|
-
// const ui_ids = get_ui_ids(SESSION_ID, event_prop);
|
|
345
|
-
// if (!ui_ids.length) {
|
|
346
|
-
// return log_error(
|
|
347
|
-
// SESSION_ID,
|
|
348
|
-
// "alter_ui_element",
|
|
349
|
-
// "UI Element empty",
|
|
350
|
-
// event_prop.selector,
|
|
351
|
-
// null,
|
|
352
|
-
// _session.DS_GLB[dsSession].prog_id
|
|
353
|
-
// );
|
|
354
|
-
// }
|
|
355
|
-
|
|
356
|
-
// const alter_element = function (val) {
|
|
357
|
-
// return new Promise((resolve) => {
|
|
358
|
-
// if (!val.ui_id) {
|
|
359
|
-
// resolve();
|
|
360
|
-
// return;
|
|
361
|
-
// }
|
|
362
|
-
// func.UI.utils.get_ui_info_tree_scope_sync(
|
|
363
|
-
// SESSION_ID,
|
|
364
|
-
// dsSession,
|
|
365
|
-
// val.ui_id,
|
|
366
|
-
// val.tagName,
|
|
367
|
-
// async function (res) {
|
|
368
|
-
// var _session = SESSION_OBJ[SESSION_ID];
|
|
369
|
-
// if (!res) {
|
|
370
|
-
// return element_not_found(
|
|
371
|
-
// SESSION_ID,
|
|
372
|
-
// dsSession,
|
|
373
|
-
// jobNoP,
|
|
374
|
-
// event_prop.alter_attr,
|
|
375
|
-
// event_prop.selector
|
|
376
|
-
// );
|
|
377
|
-
// }
|
|
378
|
-
|
|
379
|
-
// if (
|
|
380
|
-
// func.UI.utils.get_ui_id_count(
|
|
381
|
-
// SESSION_ID,
|
|
382
|
-
// res.ds,
|
|
383
|
-
// event_prop.selector
|
|
384
|
-
// ) > 1
|
|
385
|
-
// ) {
|
|
386
|
-
// return log_error(
|
|
387
|
-
// SESSION_ID,
|
|
388
|
-
// "alter_ui_element",
|
|
389
|
-
// " UI element must be unique per program ",
|
|
390
|
-
// event_prop.selector,
|
|
391
|
-
// null,
|
|
392
|
-
// _session.DS_GLB[dsSession].prog_id
|
|
393
|
-
// );
|
|
394
|
-
// }
|
|
395
|
-
|
|
396
|
-
// if (_.isEmpty(event_prop.attributes)) {
|
|
397
|
-
// return log_error(
|
|
398
|
-
// SESSION_ID,
|
|
399
|
-
// "alter_ui_element",
|
|
400
|
-
// " UI element property missing",
|
|
401
|
-
// null,
|
|
402
|
-
// _session.DS_GLB[dsSession].prog_id
|
|
403
|
-
// );
|
|
404
|
-
// }
|
|
405
|
-
// let _xuData = res.$elm.data().xuData;
|
|
406
|
-
// let ret = await func.UI.screen.set_attributes_new(
|
|
407
|
-
// SESSION_ID,
|
|
408
|
-
// null,
|
|
409
|
-
// _xuData.$root_container,
|
|
410
|
-
// {
|
|
411
|
-
// tagName: res.$elm?.data()?.xuData?.node.tagName, //res.$elm[0].tagName.toLowerCase(),
|
|
412
|
-
// attributes: event_prop.attributes,
|
|
413
|
-
// type: "element",
|
|
414
|
-
// },
|
|
415
|
-
// _xuData.$container,
|
|
416
|
-
// _xuData.paramsP,
|
|
417
|
-
// _xuData.parent_infoP,
|
|
418
|
-
// jobNoP,
|
|
419
|
-
// _xuData.keyP,
|
|
420
|
-
// _xuData.parent_nodeP,
|
|
421
|
-
// res.$elm
|
|
422
|
-
// );
|
|
423
|
-
|
|
424
|
-
// resolve();
|
|
425
|
-
|
|
426
|
-
// func.utils.debug.watch(
|
|
427
|
-
// SESSION_ID,
|
|
428
|
-
// calling_trigger_prop?.id,
|
|
429
|
-
// "alter_ui_element",
|
|
430
|
-
// calling_trigger_prop,
|
|
431
|
-
// " > " +
|
|
432
|
-
// debug_info.ui_id +
|
|
433
|
-
// " > " +
|
|
434
|
-
// event_prop.alter_attr +
|
|
435
|
-
// " > " +
|
|
436
|
-
// value,
|
|
437
|
-
// expCond
|
|
438
|
-
// );
|
|
439
|
-
// },
|
|
440
|
-
// $div,
|
|
441
|
-
// null
|
|
442
|
-
// );
|
|
443
|
-
// });
|
|
444
|
-
// };
|
|
445
|
-
|
|
446
|
-
// await Promise.all(ui_ids.map(alter_element));
|
|
447
|
-
|
|
448
|
-
// if (jobNoP) func.events.delete_job(SESSION_ID, jobNoP);
|
|
449
|
-
// };
|
|
450
|
-
|
|
451
|
-
// export const info_ui_element = async function (
|
|
452
|
-
// SESSION_ID,
|
|
453
|
-
// jobNoP,
|
|
454
|
-
// event_prop,
|
|
455
|
-
// elementP,
|
|
456
|
-
// dsSession,
|
|
457
|
-
// rowP
|
|
458
|
-
// ) {
|
|
459
|
-
// var _session = SESSION_OBJ[SESSION_ID];
|
|
460
|
-
// var debug_info = _.cloneDeep(event_prop);
|
|
461
|
-
// var ui_id_info = await get_ui_id(SESSION_ID, dsSession, event_prop, rowP);
|
|
462
|
-
// event_prop.selector = ui_id_info.result;
|
|
463
|
-
// debug_info = {};
|
|
464
|
-
// debug_info.ui_id = ui_id_info.result;
|
|
465
|
-
// debug_info.ui_id_info = ui_id_info;
|
|
466
|
-
// var value = "";
|
|
467
|
-
|
|
468
|
-
// if (!event_prop.attribute) {
|
|
469
|
-
// return log_error(
|
|
470
|
-
// SESSION_ID,
|
|
471
|
-
// "info_ui_element",
|
|
472
|
-
// "UI attribute is empty",
|
|
473
|
-
// event_prop.selector,
|
|
474
|
-
// null,
|
|
475
|
-
// _session.DS_GLB[dsSession].prog_id
|
|
476
|
-
// );
|
|
477
|
-
// }
|
|
478
|
-
|
|
479
|
-
// const ui_ids = get_ui_ids(SESSION_ID, event_prop);
|
|
480
|
-
// if (!ui_ids.length) {
|
|
481
|
-
// return log_error(
|
|
482
|
-
// SESSION_ID,
|
|
483
|
-
// "info_ui_element",
|
|
484
|
-
// "UI Element empty",
|
|
485
|
-
// event_prop.selector,
|
|
486
|
-
// null,
|
|
487
|
-
// _session.DS_GLB[dsSession].prog_id
|
|
488
|
-
// );
|
|
489
|
-
// }
|
|
490
|
-
|
|
491
|
-
// const info_element = function (val) {
|
|
492
|
-
// return new Promise((resolve) => {
|
|
493
|
-
// if (!val.ui_id) {
|
|
494
|
-
// resolve();
|
|
495
|
-
// return;
|
|
496
|
-
// }
|
|
497
|
-
// func.UI.utils.get_ui_info_tree_scope_sync(
|
|
498
|
-
// SESSION_ID,
|
|
499
|
-
// dsSession,
|
|
500
|
-
// val.ui_id,
|
|
501
|
-
// event_prop.ui_type,
|
|
502
|
-
// function (res) {
|
|
503
|
-
// if (!res) {
|
|
504
|
-
// return;
|
|
505
|
-
// }
|
|
506
|
-
// var _session = SESSION_OBJ[SESSION_ID];
|
|
507
|
-
// if (
|
|
508
|
-
// func.UI.utils.get_ui_id_count(SESSION_ID, res.ds, val.ui_id) > 1
|
|
509
|
-
// ) {
|
|
510
|
-
// return log_error(
|
|
511
|
-
// SESSION_ID,
|
|
512
|
-
// "info_ui_element",
|
|
513
|
-
// " UI element must be unique per program ",
|
|
514
|
-
// val.ui_id,
|
|
515
|
-
// null,
|
|
516
|
-
// _session.DS_GLB[dsSession].prog_id
|
|
517
|
-
// );
|
|
518
|
-
// }
|
|
519
|
-
|
|
520
|
-
// let value =
|
|
521
|
-
// res.$elm.data().xuData?.debug_info?.attribute_stat?.[
|
|
522
|
-
// event_prop.attribute.toLowerCase()
|
|
523
|
-
// ];
|
|
524
|
-
// debug_info[event_prop.attribute.toLowerCase()] = {
|
|
525
|
-
// value: value,
|
|
526
|
-
// };
|
|
527
|
-
|
|
528
|
-
// set_info_value(
|
|
529
|
-
// SESSION_ID,
|
|
530
|
-
// value,
|
|
531
|
-
// "info_ui_element",
|
|
532
|
-
// event_prop,
|
|
533
|
-
// resolve
|
|
534
|
-
// );
|
|
535
|
-
|
|
536
|
-
// func.utils.debug.watch(
|
|
537
|
-
// SESSION_ID,
|
|
538
|
-
// calling_trigger_prop?.id,
|
|
539
|
-
// "info_ui_element",
|
|
540
|
-
// debug_info,
|
|
541
|
-
// debug_info.selector + " > " + event_prop.attribute + " > " + value,
|
|
542
|
-
// expCond
|
|
543
|
-
// );
|
|
544
|
-
// },
|
|
545
|
-
// null,
|
|
546
|
-
// null
|
|
547
|
-
// );
|
|
548
|
-
// });
|
|
549
|
-
// };
|
|
550
|
-
|
|
551
|
-
// await Promise.all(ui_ids.map(info_element));
|
|
552
|
-
// // if (callbackP) callbackP();
|
|
553
|
-
// if (jobNoP) func.events.delete_job(SESSION_ID, jobNoP);
|
|
554
|
-
// return;
|
|
555
|
-
|
|
556
|
-
// func.utils.debug.watch(
|
|
557
|
-
// SESSION_ID,
|
|
558
|
-
// nodeIdP + "%" + event_id + "%" + eventIdP,
|
|
559
|
-
// "info_ui_element",
|
|
560
|
-
// debug_info,
|
|
561
|
-
// debug_info.ui_id + " > " + event_prop.alter_attr + " > " + value,
|
|
562
|
-
// expCond
|
|
563
|
-
// );
|
|
564
|
-
// set_info_value(value, "info_ui_element", event_prop);
|
|
565
|
-
// };
|
|
566
|
-
|
|
567
|
-
// export const remove_ui_element = async function (
|
|
568
|
-
// SESSION_ID,
|
|
569
|
-
// jobNoP,
|
|
570
|
-
// event_prop,
|
|
571
|
-
// elementP,
|
|
572
|
-
// dsSession,
|
|
573
|
-
// rowP
|
|
574
|
-
// ) {
|
|
575
|
-
// const ui_ids = get_ui_ids(SESSION_ID, event_prop);
|
|
576
|
-
// var _session = SESSION_OBJ[SESSION_ID];
|
|
577
|
-
// if (!ui_ids.length) {
|
|
578
|
-
// return log_error(
|
|
579
|
-
// SESSION_ID,
|
|
580
|
-
// "remove_ui_element",
|
|
581
|
-
// "UI Element empty",
|
|
582
|
-
// event_prop.selector,
|
|
583
|
-
// null,
|
|
584
|
-
// _session.DS_GLB[dsSession].prog_id
|
|
585
|
-
// );
|
|
586
|
-
// }
|
|
587
|
-
|
|
588
|
-
// const remove_element = function (val) {
|
|
589
|
-
// return new Promise((resolve) => {
|
|
590
|
-
// if (!val.ui_id) {
|
|
591
|
-
// resolve();
|
|
592
|
-
// return;
|
|
593
|
-
// }
|
|
594
|
-
// func.UI.utils.get_ui_info_tree_scope_sync(
|
|
595
|
-
// SESSION_ID,
|
|
596
|
-
// dsSession,
|
|
597
|
-
// val.ui_id,
|
|
598
|
-
// event_prop.ui_type,
|
|
599
|
-
// async function (res) {
|
|
600
|
-
// var _session = SESSION_OBJ[SESSION_ID];
|
|
601
|
-
// if (!res) {
|
|
602
|
-
// return element_not_found(
|
|
603
|
-
// SESSION_ID,
|
|
604
|
-
// dsSession,
|
|
605
|
-
// jobNoP,
|
|
606
|
-
// "",
|
|
607
|
-
// val.ui_id
|
|
608
|
-
// );
|
|
609
|
-
// }
|
|
610
|
-
|
|
611
|
-
// if (
|
|
612
|
-
// func.UI.utils.get_ui_id_count(SESSION_ID, res.ds, val.ui_id) > 1
|
|
613
|
-
// ) {
|
|
614
|
-
// return log_error(
|
|
615
|
-
// SESSION_ID,
|
|
616
|
-
// "remove_ui_element",
|
|
617
|
-
// " UI element must be unique per program ",
|
|
618
|
-
// null,
|
|
619
|
-
// _session.DS_GLB[dsSession].prog_id
|
|
620
|
-
// );
|
|
621
|
-
// }
|
|
622
|
-
// let tagName = res.$elm.data().xuData.node.tagName;
|
|
623
|
-
// let $parent_elm;
|
|
624
|
-
// // delete node from the parent node
|
|
625
|
-
// if (res.$elm.data().xuPanelData) {
|
|
626
|
-
// $parent_elm = func.UI.utils.find_in_element_data(
|
|
627
|
-
// "xuData",
|
|
628
|
-
// $(SESSION_OBJ[SESSION_ID].root_element),
|
|
629
|
-
// "ui_id",
|
|
630
|
-
// res.$elm.data().xuPanelData.parent_element_ui_id
|
|
631
|
-
// );
|
|
632
|
-
// } else {
|
|
633
|
-
// $parent_elm = func.UI.utils.find_in_element_data(
|
|
634
|
-
// "xuData",
|
|
635
|
-
// $(SESSION_OBJ[SESSION_ID].root_element),
|
|
636
|
-
// "ui_id",
|
|
637
|
-
// res.$elm.data().xuData.parent_element_ui_id
|
|
638
|
-
// );
|
|
639
|
-
// }
|
|
640
|
-
// let index = res.$elm.data().xuData.key;
|
|
641
|
-
// $parent_elm.data().xuData.node.children.splice(index, 1);
|
|
642
|
-
// res.$elm.remove();
|
|
643
|
-
// resolve();
|
|
644
|
-
// },
|
|
645
|
-
// null,
|
|
646
|
-
// null
|
|
647
|
-
// );
|
|
648
|
-
// });
|
|
649
|
-
// };
|
|
650
|
-
|
|
651
|
-
// await Promise.all(ui_ids.map(remove_element));
|
|
652
|
-
|
|
653
|
-
// if (jobNoP) func.events.delete_job(SESSION_ID, jobNoP);
|
|
654
|
-
// };
|
|
655
|
-
|
|
656
|
-
// export const empty_ui_element = async function (
|
|
657
|
-
// SESSION_ID,
|
|
658
|
-
// jobNoP,
|
|
659
|
-
// event_prop,
|
|
660
|
-
// elementP,
|
|
661
|
-
// dsSession,
|
|
662
|
-
// rowP
|
|
663
|
-
// ) {
|
|
664
|
-
// const ui_ids = get_ui_ids(SESSION_ID, event_prop);
|
|
665
|
-
// var _session = SESSION_OBJ[SESSION_ID];
|
|
666
|
-
// if (!ui_ids.length) {
|
|
667
|
-
// return log_error(
|
|
668
|
-
// SESSION_ID,
|
|
669
|
-
// "empty_ui_element",
|
|
670
|
-
// "UI Element empty",
|
|
671
|
-
// event_prop.selector,
|
|
672
|
-
// null,
|
|
673
|
-
// _session.DS_GLB[dsSession].prog_id
|
|
674
|
-
// );
|
|
675
|
-
// }
|
|
676
|
-
|
|
677
|
-
// const empty_element = function (val) {
|
|
678
|
-
// return new Promise((resolve) => {
|
|
679
|
-
// if (!val.ui_id) {
|
|
680
|
-
// resolve();
|
|
681
|
-
// return;
|
|
682
|
-
// }
|
|
683
|
-
// func.UI.utils.get_ui_info_tree_scope_sync(
|
|
684
|
-
// SESSION_ID,
|
|
685
|
-
// dsSession,
|
|
686
|
-
// val.ui_id,
|
|
687
|
-
// "",
|
|
688
|
-
// async function (res) {
|
|
689
|
-
// var _session = SESSION_OBJ[SESSION_ID];
|
|
690
|
-
// if (!res) {
|
|
691
|
-
// return element_not_found(
|
|
692
|
-
// SESSION_ID,
|
|
693
|
-
// dsSession,
|
|
694
|
-
// jobNoP,
|
|
695
|
-
// "",
|
|
696
|
-
// val.ui_id
|
|
697
|
-
// );
|
|
698
|
-
// }
|
|
699
|
-
|
|
700
|
-
// if (
|
|
701
|
-
// func.UI.utils.get_ui_id_count(SESSION_ID, res.ds, val.ui_id) > 1
|
|
702
|
-
// ) {
|
|
703
|
-
// return log_error(
|
|
704
|
-
// SESSION_ID,
|
|
705
|
-
// "empty_ui_element",
|
|
706
|
-
// " UI element must be unique per program",
|
|
707
|
-
// null,
|
|
708
|
-
// _session.DS_GLB[dsSession].prog_id
|
|
709
|
-
// );
|
|
710
|
-
// }
|
|
711
|
-
// res.$elm.data().xuData.node.children = [];
|
|
712
|
-
// res.$elm.empty();
|
|
713
|
-
// resolve();
|
|
714
|
-
// },
|
|
715
|
-
// null,
|
|
716
|
-
// null
|
|
717
|
-
// );
|
|
718
|
-
// });
|
|
719
|
-
// };
|
|
720
|
-
|
|
721
|
-
// await Promise.all(ui_ids.map(empty_element));
|
|
722
|
-
// // if (callbackP) callbackP();
|
|
723
|
-
// if (jobNoP) func.events.delete_job(SESSION_ID, jobNoP);
|
|
724
|
-
// };
|