mobx 6.3.11 → 6.3.12
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/CHANGELOG.md +6 -0
- package/dist/mobx.cjs.development.js +39 -35
- package/dist/mobx.cjs.development.js.map +1 -1
- package/dist/mobx.cjs.production.min.js +1 -1
- package/dist/mobx.cjs.production.min.js.map +1 -1
- package/dist/mobx.esm.development.js +39 -35
- package/dist/mobx.esm.development.js.map +1 -1
- package/dist/mobx.esm.js +39 -35
- package/dist/mobx.esm.js.map +1 -1
- package/dist/mobx.esm.production.min.js +1 -1
- package/dist/mobx.esm.production.min.js.map +1 -1
- package/dist/mobx.umd.development.js +39 -35
- package/dist/mobx.umd.development.js.map +1 -1
- package/dist/mobx.umd.production.min.js +1 -1
- package/dist/mobx.umd.production.min.js.map +1 -1
- package/package.json +1 -1
- package/src/types/observablemap.ts +5 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# mobx
|
|
2
2
|
|
|
3
|
+
## 6.3.12
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`654a2013`](https://github.com/mobxjs/mobx/commit/654a2013107ac6e5bbe3851e4eed22f0c9130525) [#3257](https://github.com/mobxjs/mobx/pull/3257) Thanks [@urugator](https://github.com/urugator)! - fix: observable map initialization violates `enforceActions: "always"`
|
|
8
|
+
|
|
3
9
|
## 6.3.11
|
|
4
10
|
|
|
5
11
|
### Patch Changes
|
|
@@ -4019,6 +4019,8 @@ _Symbol$toStringTag = Symbol.toStringTag;
|
|
|
4019
4019
|
var ObservableMap = /*#__PURE__*/function (_Symbol$iterator2, _Symbol$toStringTag2) {
|
|
4020
4020
|
// hasMap, not hashMap >-).
|
|
4021
4021
|
function ObservableMap(initialData, enhancer_, name_) {
|
|
4022
|
+
var _this = this;
|
|
4023
|
+
|
|
4022
4024
|
if (enhancer_ === void 0) {
|
|
4023
4025
|
enhancer_ = deepEnhancer;
|
|
4024
4026
|
}
|
|
@@ -4046,7 +4048,9 @@ var ObservableMap = /*#__PURE__*/function (_Symbol$iterator2, _Symbol$toStringTa
|
|
|
4046
4048
|
this.keysAtom_ = createAtom( this.name_ + ".keys()" );
|
|
4047
4049
|
this.data_ = new Map();
|
|
4048
4050
|
this.hasMap_ = new Map();
|
|
4049
|
-
|
|
4051
|
+
allowStateChanges(true, function () {
|
|
4052
|
+
_this.merge(initialData);
|
|
4053
|
+
});
|
|
4050
4054
|
}
|
|
4051
4055
|
|
|
4052
4056
|
var _proto = ObservableMap.prototype;
|
|
@@ -4056,7 +4060,7 @@ var ObservableMap = /*#__PURE__*/function (_Symbol$iterator2, _Symbol$toStringTa
|
|
|
4056
4060
|
};
|
|
4057
4061
|
|
|
4058
4062
|
_proto.has = function has(key) {
|
|
4059
|
-
var
|
|
4063
|
+
var _this2 = this;
|
|
4060
4064
|
|
|
4061
4065
|
if (!globalState.trackingDerivation) return this.has_(key);
|
|
4062
4066
|
var entry = this.hasMap_.get(key);
|
|
@@ -4065,7 +4069,7 @@ var ObservableMap = /*#__PURE__*/function (_Symbol$iterator2, _Symbol$toStringTa
|
|
|
4065
4069
|
var newEntry = entry = new ObservableValue(this.has_(key), referenceEnhancer, this.name_ + "." + stringifyKey(key) + "?" , false);
|
|
4066
4070
|
this.hasMap_.set(key, newEntry);
|
|
4067
4071
|
onBecomeUnobserved(newEntry, function () {
|
|
4068
|
-
return
|
|
4072
|
+
return _this2.hasMap_["delete"](key);
|
|
4069
4073
|
});
|
|
4070
4074
|
}
|
|
4071
4075
|
|
|
@@ -4096,7 +4100,7 @@ var ObservableMap = /*#__PURE__*/function (_Symbol$iterator2, _Symbol$toStringTa
|
|
|
4096
4100
|
};
|
|
4097
4101
|
|
|
4098
4102
|
_proto["delete"] = function _delete(key) {
|
|
4099
|
-
var
|
|
4103
|
+
var _this3 = this;
|
|
4100
4104
|
|
|
4101
4105
|
checkIfStateModificationsAreAllowed(this.keysAtom_);
|
|
4102
4106
|
|
|
@@ -4125,17 +4129,17 @@ var ObservableMap = /*#__PURE__*/function (_Symbol$iterator2, _Symbol$toStringTa
|
|
|
4125
4129
|
if ( notifySpy) spyReportStart(_change); // TODO fix type
|
|
4126
4130
|
|
|
4127
4131
|
transaction(function () {
|
|
4128
|
-
var
|
|
4132
|
+
var _this3$hasMap_$get;
|
|
4129
4133
|
|
|
4130
|
-
|
|
4134
|
+
_this3.keysAtom_.reportChanged();
|
|
4131
4135
|
|
|
4132
|
-
(
|
|
4136
|
+
(_this3$hasMap_$get = _this3.hasMap_.get(key)) == null ? void 0 : _this3$hasMap_$get.setNewValue_(false);
|
|
4133
4137
|
|
|
4134
|
-
var observable =
|
|
4138
|
+
var observable = _this3.data_.get(key);
|
|
4135
4139
|
|
|
4136
4140
|
observable.setNewValue_(undefined);
|
|
4137
4141
|
|
|
4138
|
-
|
|
4142
|
+
_this3.data_["delete"](key);
|
|
4139
4143
|
});
|
|
4140
4144
|
if (notify) notifyListeners(this, _change);
|
|
4141
4145
|
if ( notifySpy) spyReportEnd();
|
|
@@ -4170,21 +4174,21 @@ var ObservableMap = /*#__PURE__*/function (_Symbol$iterator2, _Symbol$toStringTa
|
|
|
4170
4174
|
};
|
|
4171
4175
|
|
|
4172
4176
|
_proto.addValue_ = function addValue_(key, newValue) {
|
|
4173
|
-
var
|
|
4177
|
+
var _this4 = this;
|
|
4174
4178
|
|
|
4175
4179
|
checkIfStateModificationsAreAllowed(this.keysAtom_);
|
|
4176
4180
|
transaction(function () {
|
|
4177
|
-
var
|
|
4181
|
+
var _this4$hasMap_$get;
|
|
4178
4182
|
|
|
4179
|
-
var observable = new ObservableValue(newValue,
|
|
4183
|
+
var observable = new ObservableValue(newValue, _this4.enhancer_, _this4.name_ + "." + stringifyKey(key) , false);
|
|
4180
4184
|
|
|
4181
|
-
|
|
4185
|
+
_this4.data_.set(key, observable);
|
|
4182
4186
|
|
|
4183
4187
|
newValue = observable.value_; // value might have been changed
|
|
4184
4188
|
|
|
4185
|
-
(
|
|
4189
|
+
(_this4$hasMap_$get = _this4.hasMap_.get(key)) == null ? void 0 : _this4$hasMap_$get.setNewValue_(true);
|
|
4186
4190
|
|
|
4187
|
-
|
|
4191
|
+
_this4.keysAtom_.reportChanged();
|
|
4188
4192
|
});
|
|
4189
4193
|
var notifySpy = isSpyEnabled();
|
|
4190
4194
|
var notify = hasListeners(this);
|
|
@@ -4270,7 +4274,7 @@ var ObservableMap = /*#__PURE__*/function (_Symbol$iterator2, _Symbol$toStringTa
|
|
|
4270
4274
|
;
|
|
4271
4275
|
|
|
4272
4276
|
_proto.merge = function merge(other) {
|
|
4273
|
-
var
|
|
4277
|
+
var _this5 = this;
|
|
4274
4278
|
|
|
4275
4279
|
if (isObservableMap(other)) {
|
|
4276
4280
|
other = new Map(other);
|
|
@@ -4278,15 +4282,15 @@ var ObservableMap = /*#__PURE__*/function (_Symbol$iterator2, _Symbol$toStringTa
|
|
|
4278
4282
|
|
|
4279
4283
|
transaction(function () {
|
|
4280
4284
|
if (isPlainObject(other)) getPlainObjectKeys(other).forEach(function (key) {
|
|
4281
|
-
return
|
|
4285
|
+
return _this5.set(key, other[key]);
|
|
4282
4286
|
});else if (Array.isArray(other)) other.forEach(function (_ref) {
|
|
4283
4287
|
var key = _ref[0],
|
|
4284
4288
|
value = _ref[1];
|
|
4285
|
-
return
|
|
4289
|
+
return _this5.set(key, value);
|
|
4286
4290
|
});else if (isES6Map(other)) {
|
|
4287
4291
|
if (other.constructor !== Map) die(19, other);
|
|
4288
4292
|
other.forEach(function (value, key) {
|
|
4289
|
-
return
|
|
4293
|
+
return _this5.set(key, value);
|
|
4290
4294
|
});
|
|
4291
4295
|
} else if (other !== null && other !== undefined) die(20, other);
|
|
4292
4296
|
});
|
|
@@ -4294,21 +4298,21 @@ var ObservableMap = /*#__PURE__*/function (_Symbol$iterator2, _Symbol$toStringTa
|
|
|
4294
4298
|
};
|
|
4295
4299
|
|
|
4296
4300
|
_proto.clear = function clear() {
|
|
4297
|
-
var
|
|
4301
|
+
var _this6 = this;
|
|
4298
4302
|
|
|
4299
4303
|
transaction(function () {
|
|
4300
4304
|
untracked(function () {
|
|
4301
|
-
for (var _iterator2 = _createForOfIteratorHelperLoose(
|
|
4305
|
+
for (var _iterator2 = _createForOfIteratorHelperLoose(_this6.keys()), _step2; !(_step2 = _iterator2()).done;) {
|
|
4302
4306
|
var key = _step2.value;
|
|
4303
4307
|
|
|
4304
|
-
|
|
4308
|
+
_this6["delete"](key);
|
|
4305
4309
|
}
|
|
4306
4310
|
});
|
|
4307
4311
|
});
|
|
4308
4312
|
};
|
|
4309
4313
|
|
|
4310
4314
|
_proto.replace = function replace(values) {
|
|
4311
|
-
var
|
|
4315
|
+
var _this7 = this;
|
|
4312
4316
|
|
|
4313
4317
|
// Implementation requirements:
|
|
4314
4318
|
// - respect ordering of replacement map
|
|
@@ -4325,13 +4329,13 @@ var ObservableMap = /*#__PURE__*/function (_Symbol$iterator2, _Symbol$toStringTa
|
|
|
4325
4329
|
// if the key deletion is prevented by interceptor
|
|
4326
4330
|
// add entry at the beginning of the result map
|
|
4327
4331
|
|
|
4328
|
-
for (var _iterator3 = _createForOfIteratorHelperLoose(
|
|
4332
|
+
for (var _iterator3 = _createForOfIteratorHelperLoose(_this7.data_.keys()), _step3; !(_step3 = _iterator3()).done;) {
|
|
4329
4333
|
var key = _step3.value;
|
|
4330
4334
|
|
|
4331
4335
|
// Concurrently iterating/deleting keys
|
|
4332
4336
|
// iterator should handle this correctly
|
|
4333
4337
|
if (!replacementMap.has(key)) {
|
|
4334
|
-
var deleted =
|
|
4338
|
+
var deleted = _this7["delete"](key); // Was the key removed?
|
|
4335
4339
|
|
|
4336
4340
|
|
|
4337
4341
|
if (deleted) {
|
|
@@ -4339,7 +4343,7 @@ var ObservableMap = /*#__PURE__*/function (_Symbol$iterator2, _Symbol$toStringTa
|
|
|
4339
4343
|
keysReportChangedCalled = true;
|
|
4340
4344
|
} else {
|
|
4341
4345
|
// Delete prevented by interceptor
|
|
4342
|
-
var value =
|
|
4346
|
+
var value = _this7.data_.get(key);
|
|
4343
4347
|
|
|
4344
4348
|
orderedData.set(key, value);
|
|
4345
4349
|
}
|
|
@@ -4353,17 +4357,17 @@ var ObservableMap = /*#__PURE__*/function (_Symbol$iterator2, _Symbol$toStringTa
|
|
|
4353
4357
|
_value = _step4$value[1];
|
|
4354
4358
|
|
|
4355
4359
|
// We will want to know whether a new key is added
|
|
4356
|
-
var keyExisted =
|
|
4360
|
+
var keyExisted = _this7.data_.has(_key); // Add or update value
|
|
4357
4361
|
|
|
4358
4362
|
|
|
4359
|
-
|
|
4363
|
+
_this7.set(_key, _value); // The addition could have been prevent by interceptor
|
|
4360
4364
|
|
|
4361
4365
|
|
|
4362
|
-
if (
|
|
4366
|
+
if (_this7.data_.has(_key)) {
|
|
4363
4367
|
// The update could have been prevented by interceptor
|
|
4364
4368
|
// and also we want to preserve existing values
|
|
4365
4369
|
// so use value from _data map (instead of replacement map)
|
|
4366
|
-
var _value2 =
|
|
4370
|
+
var _value2 = _this7.data_.get(_key);
|
|
4367
4371
|
|
|
4368
4372
|
orderedData.set(_key, _value2); // Was a new key added?
|
|
4369
4373
|
|
|
@@ -4376,11 +4380,11 @@ var ObservableMap = /*#__PURE__*/function (_Symbol$iterator2, _Symbol$toStringTa
|
|
|
4376
4380
|
|
|
4377
4381
|
|
|
4378
4382
|
if (!keysReportChangedCalled) {
|
|
4379
|
-
if (
|
|
4383
|
+
if (_this7.data_.size !== orderedData.size) {
|
|
4380
4384
|
// If size differs, keys are definitely modified
|
|
4381
|
-
|
|
4385
|
+
_this7.keysAtom_.reportChanged();
|
|
4382
4386
|
} else {
|
|
4383
|
-
var iter1 =
|
|
4387
|
+
var iter1 = _this7.data_.keys();
|
|
4384
4388
|
|
|
4385
4389
|
var iter2 = orderedData.keys();
|
|
4386
4390
|
var next1 = iter1.next();
|
|
@@ -4388,7 +4392,7 @@ var ObservableMap = /*#__PURE__*/function (_Symbol$iterator2, _Symbol$toStringTa
|
|
|
4388
4392
|
|
|
4389
4393
|
while (!next1.done) {
|
|
4390
4394
|
if (next1.value !== next2.value) {
|
|
4391
|
-
|
|
4395
|
+
_this7.keysAtom_.reportChanged();
|
|
4392
4396
|
|
|
4393
4397
|
break;
|
|
4394
4398
|
}
|
|
@@ -4400,7 +4404,7 @@ var ObservableMap = /*#__PURE__*/function (_Symbol$iterator2, _Symbol$toStringTa
|
|
|
4400
4404
|
} // Use correctly ordered map
|
|
4401
4405
|
|
|
4402
4406
|
|
|
4403
|
-
|
|
4407
|
+
_this7.data_ = orderedData;
|
|
4404
4408
|
});
|
|
4405
4409
|
return this;
|
|
4406
4410
|
};
|