@xuda.io/runtime-bundle 1.0.1281 → 1.0.1283

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.
@@ -28149,50 +28149,6 @@ func.UI.update_xu_ref = function (SESSION_ID, dsSessionP, ref_field_id, $elm) {
28149
28149
 
28150
28150
  const _ds = func.utils.clean_returned_datasource(SESSION_ID, dsSessionP);
28151
28151
 
28152
- //////////////
28153
- // function createWatchedObject(obj, onChange) {
28154
- // return new Proxy(obj, {
28155
- // set(target, property, value) {
28156
- // const oldValue = target[property];
28157
- // target[property] = value;
28158
-
28159
- // if (oldValue !== value) {
28160
- // onChange({
28161
- // property,
28162
- // oldValue,
28163
- // newValue: value,
28164
- // timestamp: new Date(),
28165
- // });
28166
- // }
28167
-
28168
- // return true;
28169
- // },
28170
-
28171
- // deleteProperty(target, property) {
28172
- // const oldValue = target[property];
28173
- // delete target[property];
28174
-
28175
- // onChange({
28176
- // property,
28177
- // oldValue,
28178
- // newValue: undefined,
28179
- // deleted: true,
28180
- // timestamp: new Date(),
28181
- // });
28182
-
28183
- // return true;
28184
- // },
28185
- // });
28186
- // }
28187
-
28188
- // // Usage
28189
- // const watchedUser = createWatchedObject(
28190
- // { name: "John", age: 25 },
28191
- // (change) => console.log("Change detected:", change)
28192
- // );
28193
-
28194
- // watchedUser.age = 26; // Logs: Change detected: { property: "age", oldValue: 25, newValue: 26, ... }
28195
-
28196
28152
  function createWatchedObject(obj, onChange) {
28197
28153
  const watchers = new WeakMap();
28198
28154
 
@@ -28262,10 +28218,20 @@ func.UI.update_xu_ref = function (SESSION_ID, dsSessionP, ref_field_id, $elm) {
28262
28218
 
28263
28219
  const watchedUser = createWatchedObject(_ds, async (change) => {
28264
28220
  console.log('Change detected:', change);
28221
+ const { path, newValue } = change;
28265
28222
  try {
28266
- _session.DS_GLB[dsSessionP].watcher = {};
28223
+ // _session.DS_GLB[dsSessionP].watcher = { path, newValue };
28267
28224
 
28268
- _.set(_session.DS_GLB[dsSessionP].watcher, change.path, change.newValue);
28225
+ const datasource_changes = {
28226
+ [dsSessionP]: {
28227
+ ['datasource_main']: {
28228
+ watcher: { path, newValue },
28229
+ },
28230
+ },
28231
+ };
28232
+ await func.datasource.update(SESSION_ID, datasource_changes);
28233
+
28234
+ // _.set(_session.DS_GLB[dsSessionP].watcher, change.path, change.newValue);
28269
28235
 
28270
28236
  await func.action.execute(SESSION_ID, 'act_refresh', _session.DS_GLB[dsSessionP], null, null, null, $elm);
28271
28237
  } catch (error) {}
@@ -28711,6 +28677,10 @@ func.datasource.prepare = async function (SESSION_ID, prog_id, dataSourceNoP, pa
28711
28677
  console.log('DATASOURCE_REFRESH', dataSourceNoP);
28712
28678
  IS_DATASOURCE_REFRESH = true;
28713
28679
  _ds.refreshed = true;
28680
+ if (_ds.watcher) {
28681
+ _.set(_ds, watcher.path, watcher.newValue);
28682
+ debugger;
28683
+ }
28714
28684
  try {
28715
28685
  if (!_ds.v) _ds.v = {};
28716
28686