dataflux 1.17.6 → 1.17.8

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/dist/Obj.js CHANGED
@@ -85,7 +85,7 @@ var Obj = exports["default"] = /*#__PURE__*/function (_BasicObj) {
85
85
  }
86
86
  });
87
87
  _defineProperty(_this, "getFingerprint", function () {
88
- return (0, _objectFingerprint["default"])(_this.toJSON());
88
+ return (0, _objectFingerprint["default"])(_this.toJSON()).toString();
89
89
  });
90
90
  _defineProperty(_this, "getRelation", function (type, filterFunction) {
91
91
  return _this.getModel().getRelation(_this, type, filterFunction);
@@ -72,14 +72,19 @@ var PersistentStore = exports["default"] = /*#__PURE__*/function (_Store) {
72
72
  });
73
73
  });
74
74
  _defineProperty(_this, "save", function () {
75
+ return _this._save(true);
76
+ });
77
+ _defineProperty(_this, "_save", function () {
78
+ var force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
75
79
  _this._busy = true;
76
80
  _this.pubSub.publish("save", "start");
77
81
  if (_this._delayedSaveTimer) {
78
82
  clearTimeout(_this._delayedSaveTimer);
79
83
  }
80
84
  return Promise.all(Object.keys(_this.models).filter(function (m) {
81
- return _this.models[m].model.options.autoSave !== false;
82
- }).map(function (i) {
85
+ return _this.models[m].model.options.autoSave !== false || force;
86
+ }) // explicit false check (null = true)
87
+ .map(function (i) {
83
88
  return _this._saveByType(i, true);
84
89
  })).then(function (data) {
85
90
  _this._busy = false;
@@ -155,7 +160,7 @@ var PersistentStore = exports["default"] = /*#__PURE__*/function (_Store) {
155
160
  }
156
161
  _this._delayedSavePromise = resolve;
157
162
  _this._delayedSaveTimer = setTimeout(function () {
158
- resolve(_this.save());
163
+ resolve(_this._save(false));
159
164
  _this._delayedSavePromise = null;
160
165
  }, _this.options.saveDelay);
161
166
  } else {
package/dist/Store.js CHANGED
@@ -80,19 +80,30 @@ var Store = exports["default"] = /*#__PURE__*/function () {
80
80
  }
81
81
  });
82
82
  _defineProperty(this, "_getDiffSync", function (type) {
83
- var objects = Object.values(_this.models[type].storedObjects);
83
+ var objects = Object.values(_this.models[type].storedObjects).filter(function (i) {
84
+ var _i$object;
85
+ return !((_i$object = i.object) !== null && _i$object !== void 0 && _i$object.isMock());
86
+ });
84
87
  var inserted = [];
85
88
  var updated = [];
86
89
  var deleted = [];
87
- for (var _i = 0, _objects = objects; _i < _objects.length; _i++) {
88
- var object = _objects[_i];
89
- if (object.status === "new") {
90
- inserted.push(object);
91
- } else if (object.status === "deleted") {
92
- deleted.push(object);
93
- } else if (object.status === "old" && _this.hasChanged(type, object.object)) {
94
- updated.push(object);
95
- } // Nothing for mock objects
90
+ var _iterator = _createForOfIteratorHelper(objects),
91
+ _step;
92
+ try {
93
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
94
+ var object = _step.value;
95
+ if (object.status === "new") {
96
+ inserted.push(object);
97
+ } else if (object.status === "deleted") {
98
+ deleted.push(object);
99
+ } else if (object.status === "old" && _this.hasChanged(type, object.object)) {
100
+ updated.push(object);
101
+ } // Nothing for mock objects
102
+ }
103
+ } catch (err) {
104
+ _iterator.e(err);
105
+ } finally {
106
+ _iterator.f();
96
107
  }
97
108
  return {
98
109
  inserted: inserted,
@@ -118,19 +129,22 @@ var Store = exports["default"] = /*#__PURE__*/function () {
118
129
  return list;
119
130
  });
120
131
  }).then(function (objects) {
121
- var _iterator = _createForOfIteratorHelper(objects),
122
- _step;
132
+ var _iterator2 = _createForOfIteratorHelper(objects),
133
+ _step2;
123
134
  try {
124
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
125
- var object = _step.value;
135
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
136
+ var object = _step2.value;
126
137
  var wrapper = new _Obj["default"](object, item.model);
127
138
  var _id = wrapper.getId();
128
139
  var currentObject = item === null || item === void 0 ? void 0 : item.storedObjects[_id];
129
140
  if (currentObject) {
130
141
  currentObject.deleted = false;
142
+ if (currentObject.status === "deleted") {
143
+ currentObject.status = "old";
144
+ }
131
145
  var newFingerprint = wrapper.getFingerprint();
132
146
  var oldFingerprint = currentObject.fingerprint;
133
- if (oldFingerprint !== newFingerprint) {
147
+ if (oldFingerprint !== newFingerprint || force) {
134
148
  // Nothing to do otherwise
135
149
  if (force) {
136
150
  _classPrivateFieldGet(_wipe, _this).call(_this, currentObject.object);
@@ -139,7 +153,7 @@ var Store = exports["default"] = /*#__PURE__*/function () {
139
153
  updated.push(currentObject.object);
140
154
  } else if (_this.hasChanged(type, currentObject.object)) {// Was the object edited locally?
141
155
 
142
- // Nothing for now
156
+ // Nothing
143
157
  } else {
144
158
  // Update with the new object
145
159
  _classPrivateFieldGet(_merge, _this).call(_this, currentObject.object, wrapper.toJSON());
@@ -154,9 +168,9 @@ var Store = exports["default"] = /*#__PURE__*/function () {
154
168
  }
155
169
  }
156
170
  } catch (err) {
157
- _iterator.e(err);
171
+ _iterator2.e(err);
158
172
  } finally {
159
- _iterator.f();
173
+ _iterator2.f();
160
174
  }
161
175
  for (var id in item === null || item === void 0 ? void 0 : item.storedObjects) {
162
176
  var obj = item.storedObjects[id];
@@ -348,11 +362,11 @@ var Store = exports["default"] = /*#__PURE__*/function () {
348
362
  deleted = _ref$deleted === void 0 ? [] : _ref$deleted;
349
363
  return new Promise(function (resolve, reject) {
350
364
  try {
351
- var _iterator2 = _createForOfIteratorHelper(inserted.concat(updated)),
352
- _step2;
365
+ var _iterator3 = _createForOfIteratorHelper(inserted.concat(updated)),
366
+ _step3;
353
367
  try {
354
- for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
355
- var object = _step2.value;
368
+ for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
369
+ var object = _step3.value;
356
370
  type = type || object.object.getModel().getType();
357
371
  var newId = object.object.getId();
358
372
  var oldId = object.id;
@@ -365,21 +379,21 @@ var Store = exports["default"] = /*#__PURE__*/function () {
365
379
  item.status = "old";
366
380
  }
367
381
  } catch (err) {
368
- _iterator2.e(err);
382
+ _iterator3.e(err);
369
383
  } finally {
370
- _iterator2.f();
384
+ _iterator3.f();
371
385
  }
372
- var _iterator3 = _createForOfIteratorHelper(deleted),
373
- _step3;
386
+ var _iterator4 = _createForOfIteratorHelper(deleted),
387
+ _step4;
374
388
  try {
375
- for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
376
- var _object = _step3.value;
389
+ for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
390
+ var _object = _step4.value;
377
391
  delete _this7.models[type || _object.object.getModel().getType()].storedObjects[_object.id];
378
392
  }
379
393
  } catch (err) {
380
- _iterator3.e(err);
394
+ _iterator4.e(err);
381
395
  } finally {
382
- _iterator3.f();
396
+ _iterator4.f();
383
397
  }
384
398
  resolve();
385
399
  } catch (error) {
@@ -432,17 +446,17 @@ var Store = exports["default"] = /*#__PURE__*/function () {
432
446
  model: type
433
447
  });
434
448
  item.promise = item.model.factory(params).then(function (items) {
435
- var _iterator4 = _createForOfIteratorHelper(items),
436
- _step4;
449
+ var _iterator5 = _createForOfIteratorHelper(items),
450
+ _step5;
437
451
  try {
438
- for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
439
- var _item = _step4.value;
452
+ for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
453
+ var _item = _step5.value;
440
454
  _classPrivateFieldGet(_insertObject, _this10).call(_this10, type, _item, "old");
441
455
  }
442
456
  } catch (err) {
443
- _iterator4.e(err);
457
+ _iterator5.e(err);
444
458
  } finally {
445
- _iterator4.f();
459
+ _iterator5.f();
446
460
  }
447
461
  _this10.pubSub.publish("loading", {
448
462
  status: "end",
@@ -475,7 +489,11 @@ var Store = exports["default"] = /*#__PURE__*/function () {
475
489
  value: function getCollection(type) {
476
490
  var _this12 = this;
477
491
  return this._getPromise(type).then(function () {
478
- return Object.values(_this12.models[type].storedObjects).map(function (i) {
492
+ return Object.values(_this12.models[type].storedObjects).filter(function (i) {
493
+ return i.status !== "deleted";
494
+ }).filter(function (i) {
495
+ return i.status !== "mock";
496
+ }).map(function (i) {
479
497
  return i.object;
480
498
  }).sort(function (a, b) {
481
499
  return a.getId().localeCompare(b.getId());
@@ -497,17 +515,17 @@ function _deleteByFilter(type, filterFunction) {
497
515
  var deleted = Object.values(_this13.models[type].storedObjects).filter(function (i) {
498
516
  return filterFunction(i.object);
499
517
  });
500
- var _iterator5 = _createForOfIteratorHelper(deleted),
501
- _step5;
518
+ var _iterator6 = _createForOfIteratorHelper(deleted),
519
+ _step6;
502
520
  try {
503
- for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
504
- var object = _step5.value;
521
+ for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {
522
+ var object = _step6.value;
505
523
  object.status = "deleted";
506
524
  }
507
525
  } catch (err) {
508
- _iterator5.e(err);
526
+ _iterator6.e(err);
509
527
  } finally {
510
- _iterator5.f();
528
+ _iterator6.f();
511
529
  }
512
530
  return deleted.map(function (i) {
513
531
  return i.object;
@@ -522,17 +540,17 @@ function _loadObjects(type) {
522
540
  model: type
523
541
  });
524
542
  item.promise = item.model.retrieveAll().then(function (items) {
525
- var _iterator6 = _createForOfIteratorHelper(items),
526
- _step6;
543
+ var _iterator7 = _createForOfIteratorHelper(items),
544
+ _step7;
527
545
  try {
528
- for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {
529
- var _item2 = _step6.value;
546
+ for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) {
547
+ var _item2 = _step7.value;
530
548
  _classPrivateFieldGet(_insertObject, _this14).call(_this14, type, _item2, "old");
531
549
  }
532
550
  } catch (err) {
533
- _iterator6.e(err);
551
+ _iterator7.e(err);
534
552
  } finally {
535
- _iterator6.f();
553
+ _iterator7.f();
536
554
  }
537
555
  _this14.pubSub.publish("loading", {
538
556
  status: "end",