@jbrowse/mobx-state-tree 5.6.2 → 5.6.3

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.
Files changed (126) hide show
  1. package/package.json +2 -2
  2. package/dist/core/action.d.ts +0 -87
  3. package/dist/core/action.js +0 -228
  4. package/dist/core/action.js.map +0 -1
  5. package/dist/core/actionContext.d.ts +0 -27
  6. package/dist/core/actionContext.js +0 -42
  7. package/dist/core/actionContext.js.map +0 -1
  8. package/dist/core/flow.d.ts +0 -69
  9. package/dist/core/flow.js +0 -180
  10. package/dist/core/flow.js.map +0 -1
  11. package/dist/core/json-patch.d.ts +0 -46
  12. package/dist/core/json-patch.js +0 -133
  13. package/dist/core/json-patch.js.map +0 -1
  14. package/dist/core/mst-operations.d.ts +0 -459
  15. package/dist/core/mst-operations.js +0 -885
  16. package/dist/core/mst-operations.js.map +0 -1
  17. package/dist/core/node/BaseNode.d.ts +0 -62
  18. package/dist/core/node/BaseNode.js +0 -152
  19. package/dist/core/node/BaseNode.js.map +0 -1
  20. package/dist/core/node/Hook.d.ts +0 -17
  21. package/dist/core/node/Hook.js +0 -15
  22. package/dist/core/node/Hook.js.map +0 -1
  23. package/dist/core/node/create-node.d.ts +0 -16
  24. package/dist/core/node/create-node.js +0 -41
  25. package/dist/core/node/create-node.js.map +0 -1
  26. package/dist/core/node/identifier-cache.d.ts +0 -19
  27. package/dist/core/node/identifier-cache.js +0 -115
  28. package/dist/core/node/identifier-cache.js.map +0 -1
  29. package/dist/core/node/livelinessChecking.d.ts +0 -37
  30. package/dist/core/node/livelinessChecking.js +0 -38
  31. package/dist/core/node/livelinessChecking.js.map +0 -1
  32. package/dist/core/node/node-utils.d.ts +0 -83
  33. package/dist/core/node/node-utils.js +0 -165
  34. package/dist/core/node/node-utils.js.map +0 -1
  35. package/dist/core/node/object-node.d.ts +0 -99
  36. package/dist/core/node/object-node.js +0 -545
  37. package/dist/core/node/object-node.js.map +0 -1
  38. package/dist/core/node/scalar-node.d.ts +0 -19
  39. package/dist/core/node/scalar-node.js +0 -89
  40. package/dist/core/node/scalar-node.js.map +0 -1
  41. package/dist/core/process.d.ts +0 -50
  42. package/dist/core/process.js +0 -39
  43. package/dist/core/process.js.map +0 -1
  44. package/dist/core/type/type-checker.d.ts +0 -69
  45. package/dist/core/type/type-checker.js +0 -154
  46. package/dist/core/type/type-checker.js.map +0 -1
  47. package/dist/core/type/type.d.ts +0 -317
  48. package/dist/core/type/type.js +0 -251
  49. package/dist/core/type/type.js.map +0 -1
  50. package/dist/index.d.ts +0 -2
  51. package/dist/index.js +0 -85
  52. package/dist/index.js.map +0 -1
  53. package/dist/internal.d.ts +0 -39
  54. package/dist/internal.js +0 -60
  55. package/dist/internal.js.map +0 -1
  56. package/dist/middlewares/create-action-tracking-middleware.d.ts +0 -24
  57. package/dist/middlewares/create-action-tracking-middleware.js +0 -81
  58. package/dist/middlewares/create-action-tracking-middleware.js.map +0 -1
  59. package/dist/middlewares/createActionTrackingMiddleware2.d.ts +0 -34
  60. package/dist/middlewares/createActionTrackingMiddleware2.js +0 -133
  61. package/dist/middlewares/createActionTrackingMiddleware2.js.map +0 -1
  62. package/dist/middlewares/on-action.d.ts +0 -87
  63. package/dist/middlewares/on-action.js +0 -215
  64. package/dist/middlewares/on-action.js.map +0 -1
  65. package/dist/mobx-state-tree.js +0 -85
  66. package/dist/mobx-state-tree.module.js +0 -83
  67. package/dist/types/complex-types/array.d.ts +0 -80
  68. package/dist/types/complex-types/array.js +0 -352
  69. package/dist/types/complex-types/array.js.map +0 -1
  70. package/dist/types/complex-types/map.d.ts +0 -110
  71. package/dist/types/complex-types/map.js +0 -361
  72. package/dist/types/complex-types/map.js.map +0 -1
  73. package/dist/types/complex-types/model.d.ts +0 -192
  74. package/dist/types/complex-types/model.js +0 -477
  75. package/dist/types/complex-types/model.js.map +0 -1
  76. package/dist/types/index.d.ts +0 -33
  77. package/dist/types/index.js +0 -38
  78. package/dist/types/index.js.map +0 -1
  79. package/dist/types/primitives.d.ts +0 -124
  80. package/dist/types/primitives.js +0 -182
  81. package/dist/types/primitives.js.map +0 -1
  82. package/dist/types/utility-types/custom.d.ts +0 -74
  83. package/dist/types/utility-types/custom.js +0 -110
  84. package/dist/types/utility-types/custom.js.map +0 -1
  85. package/dist/types/utility-types/enumeration.d.ts +0 -5
  86. package/dist/types/utility-types/enumeration.js +0 -34
  87. package/dist/types/utility-types/enumeration.js.map +0 -1
  88. package/dist/types/utility-types/frozen.d.ts +0 -23
  89. package/dist/types/utility-types/frozen.js +0 -97
  90. package/dist/types/utility-types/frozen.js.map +0 -1
  91. package/dist/types/utility-types/identifier.d.ts +0 -86
  92. package/dist/types/utility-types/identifier.js +0 -129
  93. package/dist/types/utility-types/identifier.js.map +0 -1
  94. package/dist/types/utility-types/late.d.ts +0 -10
  95. package/dist/types/utility-types/late.js +0 -109
  96. package/dist/types/utility-types/late.js.map +0 -1
  97. package/dist/types/utility-types/lazy.d.ts +0 -22
  98. package/dist/types/utility-types/lazy.js +0 -76
  99. package/dist/types/utility-types/lazy.js.map +0 -1
  100. package/dist/types/utility-types/literal.d.ts +0 -37
  101. package/dist/types/utility-types/literal.js +0 -63
  102. package/dist/types/utility-types/literal.js.map +0 -1
  103. package/dist/types/utility-types/maybe.d.ts +0 -26
  104. package/dist/types/utility-types/maybe.js +0 -30
  105. package/dist/types/utility-types/maybe.js.map +0 -1
  106. package/dist/types/utility-types/optional.d.ts +0 -41
  107. package/dist/types/utility-types/optional.js +0 -140
  108. package/dist/types/utility-types/optional.js.map +0 -1
  109. package/dist/types/utility-types/reference.d.ts +0 -89
  110. package/dist/types/utility-types/reference.js +0 -392
  111. package/dist/types/utility-types/reference.js.map +0 -1
  112. package/dist/types/utility-types/refinement.d.ts +0 -10
  113. package/dist/types/utility-types/refinement.js +0 -85
  114. package/dist/types/utility-types/refinement.js.map +0 -1
  115. package/dist/types/utility-types/resilient.d.ts +0 -18
  116. package/dist/types/utility-types/resilient.js +0 -120
  117. package/dist/types/utility-types/resilient.js.map +0 -1
  118. package/dist/types/utility-types/snapshotProcessor.d.ts +0 -63
  119. package/dist/types/utility-types/snapshotProcessor.js +0 -161
  120. package/dist/types/utility-types/snapshotProcessor.js.map +0 -1
  121. package/dist/types/utility-types/union.d.ts +0 -77
  122. package/dist/types/utility-types/union.js +0 -245
  123. package/dist/types/utility-types/union.js.map +0 -1
  124. package/dist/utils.d.ts +0 -230
  125. package/dist/utils.js +0 -483
  126. package/dist/utils.js.map +0 -1
@@ -1,545 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ObjectNode = void 0;
4
- const mobx_1 = require("mobx");
5
- const internal_ts_1 = require("../../internal.js");
6
- let nextNodeId = 1;
7
- const snapshotReactionOptions = {
8
- onError(e) {
9
- throw e;
10
- }
11
- };
12
- /**
13
- * @internal
14
- * @hidden
15
- */
16
- class ObjectNode extends internal_ts_1.BaseNode {
17
- nodeId = ++nextNodeId;
18
- identifierAttribute;
19
- identifier; // Identifier is always normalized to string, even if the identifier property isn't
20
- unnormalizedIdentifier;
21
- identifierCache;
22
- isProtectionEnabled = true;
23
- middlewares;
24
- hasSnapshotPostProcessor = false;
25
- _applyPatches;
26
- applyPatches(patches) {
27
- this.createObservableInstanceIfNeeded();
28
- this._applyPatches(patches);
29
- }
30
- _applySnapshot;
31
- applySnapshot(snapshot) {
32
- this.createObservableInstanceIfNeeded();
33
- this._applySnapshot(snapshot);
34
- }
35
- _autoUnbox = true; // unboxing is disabled when reading child nodes
36
- _isRunningAction = false; // only relevant for root
37
- _hasSnapshotReaction = false;
38
- _observableInstanceState = 0 /* ObservableInstanceLifecycle.UNINITIALIZED */;
39
- _childNodes;
40
- _initialSnapshot;
41
- _cachedInitialSnapshot;
42
- _cachedInitialSnapshotCreated = false;
43
- _snapshotComputed;
44
- constructor(complexType, parent, subpath, environment, initialValue) {
45
- super(complexType, parent, subpath, environment);
46
- this._snapshotComputed = (0, mobx_1.computed)(() => (0, internal_ts_1.freeze)(this.getSnapshot()));
47
- this.unbox = this.unbox.bind(this);
48
- this._initialSnapshot = (0, internal_ts_1.freeze)(initialValue);
49
- this.identifierAttribute = complexType.identifierAttribute;
50
- if (!parent) {
51
- this.identifierCache = new internal_ts_1.IdentifierCache();
52
- }
53
- this._childNodes = complexType.initializeChildNodes(this, this._initialSnapshot);
54
- // identifier can not be changed during lifecycle of a node
55
- // so we safely can read it from initial snapshot
56
- this.identifier = null;
57
- this.unnormalizedIdentifier = null;
58
- if (this.identifierAttribute && this._initialSnapshot) {
59
- let id = this._initialSnapshot[this.identifierAttribute];
60
- if (id === undefined) {
61
- // try with the actual node if not (for optional identifiers)
62
- const childNode = this._childNodes[this.identifierAttribute];
63
- if (childNode) {
64
- id = childNode.value;
65
- }
66
- }
67
- if (typeof id !== "string" && typeof id !== "number") {
68
- throw (0, internal_ts_1.fail)(`Instance identifier '${this.identifierAttribute}' for type '${this.type.name}' must be a string or a number`);
69
- }
70
- // normalize internal identifier to string
71
- this.identifier = (0, internal_ts_1.normalizeIdentifier)(id);
72
- this.unnormalizedIdentifier = id;
73
- }
74
- if (!parent) {
75
- this.identifierCache.addNodeToCache(this);
76
- }
77
- else {
78
- parent.root.identifierCache.addNodeToCache(this);
79
- }
80
- }
81
- createObservableInstanceIfNeeded(fireHooks = true) {
82
- if (this._observableInstanceState ===
83
- 0 /* ObservableInstanceLifecycle.UNINITIALIZED */) {
84
- this.createObservableInstance(fireHooks);
85
- }
86
- }
87
- createObservableInstance(fireHooks = true) {
88
- if ((0, internal_ts_1.devMode)()) {
89
- if (this.state !== internal_ts_1.NodeLifeCycle.INITIALIZING) {
90
- // istanbul ignore next
91
- throw (0, internal_ts_1.fail)("assertion failed: the creation of the observable instance must be done on the initializing phase");
92
- }
93
- }
94
- this._observableInstanceState = 1 /* ObservableInstanceLifecycle.CREATING */;
95
- // make sure the parent chain is created as well
96
- // array with parent chain from parent to child
97
- const parentChain = [];
98
- let parent = this.parent;
99
- // for performance reasons we never go back further than the most direct
100
- // uninitialized parent
101
- // this is done to avoid traversing the whole tree to the root when using
102
- // the same reference again
103
- while (parent &&
104
- parent._observableInstanceState ===
105
- 0 /* ObservableInstanceLifecycle.UNINITIALIZED */) {
106
- parentChain.unshift(parent);
107
- parent = parent.parent;
108
- }
109
- // initialize the uninitialized parent chain from parent to child
110
- for (const p of parentChain) {
111
- // delay firing hooks until after all parents have been created
112
- p.createObservableInstanceIfNeeded(false);
113
- }
114
- const type = this.type;
115
- try {
116
- // @ts-expect-error storedValue type mismatch during initialization
117
- this.storedValue = type.createNewInstance(this._childNodes);
118
- this.preboot();
119
- this._isRunningAction = true;
120
- type.finalizeNewInstance(this, this.storedValue);
121
- }
122
- catch (e) {
123
- // short-cut to die the instance, to avoid the snapshot computed starting to throw...
124
- this.state = internal_ts_1.NodeLifeCycle.DEAD;
125
- throw e;
126
- }
127
- finally {
128
- this._isRunningAction = false;
129
- }
130
- this._observableInstanceState = 2 /* ObservableInstanceLifecycle.CREATED */;
131
- this._snapshotComputed.trackAndCompute();
132
- if (this.isRoot) {
133
- this._addSnapshotReaction();
134
- }
135
- this._childNodes = internal_ts_1.EMPTY_OBJECT;
136
- this.state = internal_ts_1.NodeLifeCycle.CREATED;
137
- if (fireHooks) {
138
- this.fireHook(internal_ts_1.Hook.afterCreate);
139
- // Note that the parent might not be finalized at this point
140
- // so afterAttach won't be called until later in that case
141
- this.finalizeCreation();
142
- // fire the hooks of the parents that we created
143
- for (const p of parentChain.reverse()) {
144
- p.fireHook(internal_ts_1.Hook.afterCreate);
145
- // This will call afterAttach on the child if necessary
146
- p.finalizeCreation();
147
- }
148
- }
149
- }
150
- get root() {
151
- const parent = this.parent;
152
- return parent ? parent.root : this;
153
- }
154
- clearParent() {
155
- if (!this.parent) {
156
- return;
157
- }
158
- // detach if attached
159
- this.fireHook(internal_ts_1.Hook.beforeDetach);
160
- const previousState = this.state;
161
- this.state = internal_ts_1.NodeLifeCycle.DETACHING;
162
- const root = this.root;
163
- const newEnv = root.environment;
164
- const newIdCache = root.identifierCache.splitCache(this);
165
- try {
166
- this.parent.removeChild(this.subpath);
167
- this.baseSetParent(null, "");
168
- this.environment = newEnv;
169
- this.identifierCache = newIdCache;
170
- }
171
- finally {
172
- this.state = previousState;
173
- }
174
- }
175
- setParent(newParent, subpath) {
176
- const parentChanged = newParent !== this.parent;
177
- const subpathChanged = subpath !== this.subpath;
178
- if (!parentChanged && !subpathChanged) {
179
- return;
180
- }
181
- if ((0, internal_ts_1.devMode)()) {
182
- if (!subpath) {
183
- // istanbul ignore next
184
- throw (0, internal_ts_1.fail)("assertion failed: subpath expected");
185
- }
186
- if (!newParent) {
187
- // istanbul ignore next
188
- throw (0, internal_ts_1.fail)("assertion failed: new parent expected");
189
- }
190
- if (this.parent && parentChanged) {
191
- throw (0, internal_ts_1.fail)(`A node cannot exists twice in the state tree. Failed to add ${this} to path '${newParent.path}/${subpath}'.`);
192
- }
193
- if (!this.parent && newParent.root === this) {
194
- throw (0, internal_ts_1.fail)(`A state tree is not allowed to contain itself. Cannot assign ${this} to path '${newParent.path}/${subpath}'`);
195
- }
196
- if (!this.parent &&
197
- !!this.environment &&
198
- this.environment !== newParent.root.environment) {
199
- throw (0, internal_ts_1.fail)(`A state tree cannot be made part of another state tree as long as their environments are different.`);
200
- }
201
- }
202
- if (parentChanged) {
203
- // attach to new parent
204
- this.environment = undefined; // will use root's
205
- newParent.root.identifierCache.mergeCache(this);
206
- this.baseSetParent(newParent, subpath);
207
- this.fireHook(internal_ts_1.Hook.afterAttach);
208
- }
209
- else if (subpathChanged) {
210
- // moving to a new subpath on the same parent
211
- this.baseSetParent(this.parent, subpath);
212
- }
213
- }
214
- fireHook(name) {
215
- this.fireInternalHook(name);
216
- const fn = this.storedValue &&
217
- typeof this.storedValue === "object" &&
218
- this.storedValue[name];
219
- if (typeof fn === "function") {
220
- // we check for it to allow old mobx peer dependencies that don't have the method to work (even when still bugged)
221
- if (mobx_1._allowStateChangesInsideComputed) {
222
- (0, mobx_1._allowStateChangesInsideComputed)(() => {
223
- fn.apply(this.storedValue);
224
- });
225
- }
226
- else {
227
- fn.apply(this.storedValue);
228
- }
229
- }
230
- }
231
- _snapshotUponDeath;
232
- // advantage of using computed for a snapshot is that nicely respects transactions etc.
233
- get snapshot() {
234
- if (this.hasSnapshotPostProcessor) {
235
- this.createObservableInstanceIfNeeded();
236
- }
237
- return this._snapshotComputed.get();
238
- }
239
- // NOTE: we use this method to get snapshot without creating @computed overhead
240
- getSnapshot() {
241
- if (!this.isAlive) {
242
- return this._snapshotUponDeath;
243
- }
244
- return this._observableInstanceState === 2 /* ObservableInstanceLifecycle.CREATED */
245
- ? this._getActualSnapshot()
246
- : this._getCachedInitialSnapshot();
247
- }
248
- _getActualSnapshot() {
249
- return this.type.getSnapshot(this);
250
- }
251
- _getCachedInitialSnapshot() {
252
- if (!this._cachedInitialSnapshotCreated) {
253
- const type = this.type;
254
- const childNodes = this._childNodes;
255
- const snapshot = this._initialSnapshot;
256
- this._cachedInitialSnapshot = type.processInitialSnapshot(childNodes, snapshot);
257
- this._cachedInitialSnapshotCreated = true;
258
- }
259
- return this._cachedInitialSnapshot;
260
- }
261
- isRunningAction() {
262
- if (this._isRunningAction) {
263
- return true;
264
- }
265
- if (this.isRoot) {
266
- return false;
267
- }
268
- return this.parent.isRunningAction();
269
- }
270
- assertAlive(context) {
271
- const livelinessChecking = (0, internal_ts_1.getLivelinessChecking)();
272
- if (!this.isAlive && livelinessChecking !== "ignore") {
273
- const error = this._getAssertAliveError(context);
274
- switch (livelinessChecking) {
275
- case "error":
276
- throw (0, internal_ts_1.fail)(error);
277
- case "warn":
278
- (0, internal_ts_1.warnError)(error);
279
- }
280
- }
281
- }
282
- _getAssertAliveError(context) {
283
- const escapedPath = this.getEscapedPath(false) || this.pathUponDeath || "";
284
- const subpath = (context.subpath && (0, internal_ts_1.escapeJsonPath)(context.subpath)) || "";
285
- let actionContext = context.actionContext || (0, internal_ts_1.getCurrentActionContext)();
286
- // try to use a real action context if possible since it includes the action name
287
- if (actionContext &&
288
- actionContext.type !== "action" &&
289
- actionContext.parentActionEvent) {
290
- actionContext = actionContext.parentActionEvent;
291
- }
292
- let actionFullPath = "";
293
- if (actionContext && actionContext.name != null) {
294
- // try to use the context, and if it not available use the node one
295
- const actionPath = (actionContext &&
296
- actionContext.context &&
297
- (0, internal_ts_1.getPath)(actionContext.context)) ||
298
- escapedPath;
299
- actionFullPath = `${actionPath}.${actionContext.name}()`;
300
- }
301
- return `You are trying to read or write to an object that is no longer part of a state tree. (Object type: '${this.type.name}', Path upon death: '${escapedPath}', Subpath: '${subpath}', Action: '${actionFullPath}'). Either detach nodes first, or don't use objects after removing / replacing them in the tree.`;
302
- }
303
- getChildNode(subpath) {
304
- this.assertAlive({
305
- subpath
306
- });
307
- this._autoUnbox = false;
308
- try {
309
- return this._observableInstanceState ===
310
- 2 /* ObservableInstanceLifecycle.CREATED */
311
- ? this.type.getChildNode(this, subpath)
312
- : this._childNodes[subpath];
313
- }
314
- finally {
315
- this._autoUnbox = true;
316
- }
317
- }
318
- getChildren() {
319
- this.assertAlive(internal_ts_1.EMPTY_OBJECT);
320
- this._autoUnbox = false;
321
- try {
322
- return this._observableInstanceState ===
323
- 2 /* ObservableInstanceLifecycle.CREATED */
324
- ? this.type.getChildren(this)
325
- : (0, internal_ts_1.convertChildNodesToArray)(this._childNodes);
326
- }
327
- finally {
328
- this._autoUnbox = true;
329
- }
330
- }
331
- getChildType(propertyName) {
332
- return this.type.getChildType(propertyName);
333
- }
334
- get isProtected() {
335
- return this.root.isProtectionEnabled;
336
- }
337
- assertWritable(context) {
338
- this.assertAlive(context);
339
- if (!this.isRunningAction() && this.isProtected) {
340
- throw (0, internal_ts_1.fail)(`Cannot modify '${this}', the object is protected and can only be modified by using an action.`);
341
- }
342
- }
343
- removeChild(subpath) {
344
- this.type.removeChild(this, subpath);
345
- }
346
- // bound on the constructor
347
- unbox(childNode) {
348
- if (!childNode) {
349
- return childNode;
350
- }
351
- this.assertAlive({
352
- subpath: childNode.subpath || childNode.subpathUponDeath
353
- });
354
- return this._autoUnbox ? childNode.value : childNode;
355
- }
356
- toString() {
357
- const path = (this.isAlive ? this.path : this.pathUponDeath) || "<root>";
358
- const identifier = this.identifier ? `(id: ${this.identifier})` : "";
359
- return `${this.type.name}@${path}${identifier}${this.isAlive ? "" : " [dead]"}`;
360
- }
361
- finalizeCreation() {
362
- this.baseFinalizeCreation(() => {
363
- for (const child of this.getChildren()) {
364
- child.finalizeCreation();
365
- }
366
- this.fireInternalHook(internal_ts_1.Hook.afterCreationFinalization);
367
- });
368
- }
369
- detach() {
370
- if (!this.isAlive) {
371
- throw (0, internal_ts_1.fail)(`Error while detaching, node is not alive.`);
372
- }
373
- this.clearParent();
374
- }
375
- preboot() {
376
- // eslint-disable-next-line @typescript-eslint/no-this-alias
377
- const self = this;
378
- this._applyPatches = (0, internal_ts_1.createActionInvoker)(this.storedValue, "@APPLY_PATCHES", (patches) => {
379
- patches.forEach(patch => {
380
- if (!patch.path) {
381
- self.type.applySnapshot(self, patch.value);
382
- return;
383
- }
384
- const parts = (0, internal_ts_1.splitJsonPath)(patch.path);
385
- const node = (0, internal_ts_1.resolveNodeByPathParts)(self, parts.slice(0, -1));
386
- node.applyPatchLocally(parts[parts.length - 1], patch);
387
- });
388
- });
389
- this._applySnapshot = (0, internal_ts_1.createActionInvoker)(this.storedValue, "@APPLY_SNAPSHOT", (snapshot) => {
390
- // if the snapshot is the same as the current one, avoid performing a reconcile
391
- if (snapshot === self.snapshot) {
392
- return;
393
- }
394
- // else, apply it by calling the type logic
395
- return self.type.applySnapshot(self, snapshot);
396
- });
397
- (0, internal_ts_1.addHiddenFinalProp)(this.storedValue, "$treenode", this);
398
- (0, internal_ts_1.addHiddenFinalProp)(this.storedValue, "toJSON", internal_ts_1.toJSON);
399
- }
400
- die() {
401
- if (!this.isAlive || this.state === internal_ts_1.NodeLifeCycle.DETACHING) {
402
- return;
403
- }
404
- this.aboutToDie();
405
- this.finalizeDeath();
406
- }
407
- aboutToDie() {
408
- if (this._observableInstanceState ===
409
- 0 /* ObservableInstanceLifecycle.UNINITIALIZED */) {
410
- return;
411
- }
412
- this.getChildren().forEach(node => {
413
- node.aboutToDie();
414
- });
415
- // beforeDestroy should run before the disposers since else we could end up in a situation where
416
- // a disposer added with addDisposer at this stage (beforeDestroy) is actually never released
417
- this.baseAboutToDie();
418
- this._internalEventsEmit("dispose" /* InternalEvents.Dispose */);
419
- this._internalEventsClear("dispose" /* InternalEvents.Dispose */);
420
- }
421
- finalizeDeath() {
422
- // invariant: not called directly but from "die"
423
- this.getChildren().forEach(node => {
424
- node.finalizeDeath();
425
- });
426
- this.root.identifierCache.notifyDied(this);
427
- // "kill" the computed prop and just store the last snapshot
428
- const snapshot = this.snapshot;
429
- this._snapshotUponDeath = snapshot;
430
- this._internalEventsClearAll();
431
- this.baseFinalizeDeath();
432
- }
433
- onSnapshot(onChange) {
434
- this._addSnapshotReaction();
435
- return this._internalEventsRegister("snapshot" /* InternalEvents.Snapshot */, onChange);
436
- }
437
- emitSnapshot(snapshot) {
438
- this._internalEventsEmit("snapshot" /* InternalEvents.Snapshot */, snapshot);
439
- }
440
- onPatch(handler) {
441
- return this._internalEventsRegister("patch" /* InternalEvents.Patch */, handler);
442
- }
443
- emitPatch(basePatch, source) {
444
- if (this._internalEventsHasSubscribers("patch" /* InternalEvents.Patch */)) {
445
- const localizedPatch = (0, internal_ts_1.extend)({}, basePatch, {
446
- path: source.path.substr(this.path.length) + "/" + basePatch.path // calculate the relative path of the patch
447
- });
448
- const [patch, reversePatch] = (0, internal_ts_1.splitPatch)(localizedPatch);
449
- this._internalEventsEmit("patch" /* InternalEvents.Patch */, patch, reversePatch);
450
- }
451
- if (this.parent) {
452
- this.parent.emitPatch(basePatch, source);
453
- }
454
- }
455
- hasDisposer(disposer) {
456
- return this._internalEventsHas("dispose" /* InternalEvents.Dispose */, disposer);
457
- }
458
- addDisposer(disposer) {
459
- if (!this.hasDisposer(disposer)) {
460
- this._internalEventsRegister("dispose" /* InternalEvents.Dispose */, disposer, true);
461
- return;
462
- }
463
- throw (0, internal_ts_1.fail)("cannot add a disposer when it is already registered for execution");
464
- }
465
- removeDisposer(disposer) {
466
- if (!this._internalEventsHas("dispose" /* InternalEvents.Dispose */, disposer)) {
467
- throw (0, internal_ts_1.fail)("cannot remove a disposer which was never registered for execution");
468
- }
469
- this._internalEventsUnregister("dispose" /* InternalEvents.Dispose */, disposer);
470
- }
471
- removeMiddleware(middleware) {
472
- if (this.middlewares) {
473
- const index = this.middlewares.indexOf(middleware);
474
- if (index >= 0) {
475
- this.middlewares.splice(index, 1);
476
- }
477
- }
478
- }
479
- addMiddleWare(handler, includeHooks = true) {
480
- const middleware = { handler, includeHooks };
481
- if (!this.middlewares) {
482
- this.middlewares = [middleware];
483
- }
484
- else {
485
- this.middlewares.push(middleware);
486
- }
487
- return () => {
488
- this.removeMiddleware(middleware);
489
- };
490
- }
491
- applyPatchLocally(subpath, patch) {
492
- this.assertWritable({
493
- subpath
494
- });
495
- this.createObservableInstanceIfNeeded();
496
- this.type.applyPatchLocally(this, subpath, patch);
497
- }
498
- _addSnapshotReaction() {
499
- if (!this._hasSnapshotReaction) {
500
- const snapshotDisposer = (0, mobx_1.reaction)(() => this.snapshot, snapshot => this.emitSnapshot(snapshot), snapshotReactionOptions);
501
- this.addDisposer(snapshotDisposer);
502
- this._hasSnapshotReaction = true;
503
- }
504
- }
505
- // #region internal event handling
506
- _internalEvents;
507
- // we proxy the methods to avoid creating an EventHandlers instance when it is not needed
508
- _internalEventsHasSubscribers(event) {
509
- return !!this._internalEvents && this._internalEvents.hasSubscribers(event);
510
- }
511
- _internalEventsRegister(event, eventHandler, atTheBeginning = false) {
512
- if (!this._internalEvents) {
513
- this._internalEvents = new internal_ts_1.EventHandlers();
514
- }
515
- return this._internalEvents.register(event, eventHandler, atTheBeginning);
516
- }
517
- _internalEventsHas(event, eventHandler) {
518
- return (!!this._internalEvents && this._internalEvents.has(event, eventHandler));
519
- }
520
- _internalEventsUnregister(event, eventHandler) {
521
- if (this._internalEvents) {
522
- this._internalEvents.unregister(event, eventHandler);
523
- }
524
- }
525
- _internalEventsEmit(event, ...args) {
526
- if (this._internalEvents) {
527
- this._internalEvents.emit(event, ...args);
528
- }
529
- }
530
- _internalEventsClear(event) {
531
- if (this._internalEvents) {
532
- this._internalEvents.clear(event);
533
- }
534
- }
535
- _internalEventsClearAll() {
536
- if (this._internalEvents) {
537
- this._internalEvents.clearAll();
538
- }
539
- }
540
- }
541
- exports.ObjectNode = ObjectNode;
542
- ObjectNode.prototype.createObservableInstance = (0, mobx_1.action)(ObjectNode.prototype.createObservableInstance);
543
- ObjectNode.prototype.detach = (0, mobx_1.action)(ObjectNode.prototype.detach);
544
- ObjectNode.prototype.die = (0, mobx_1.action)(ObjectNode.prototype.die);
545
- //# sourceMappingURL=object-node.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"object-node.js","sourceRoot":"","sources":["../../../src/core/node/object-node.ts"],"names":[],"mappings":"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"}
@@ -1,19 +0,0 @@
1
- import { type AnyObjectNode, BaseNode, Hook, SimpleType } from "../../internal.ts";
2
- /**
3
- * @internal
4
- * @hidden
5
- */
6
- export declare class ScalarNode<C, S, T> extends BaseNode<C, S, T> {
7
- readonly type: SimpleType<C, S, T>;
8
- constructor(simpleType: SimpleType<C, S, T>, parent: AnyObjectNode | null, subpath: string, environment: any, initialSnapshot: C);
9
- get root(): AnyObjectNode;
10
- setParent(newParent: AnyObjectNode, subpath: string): void;
11
- get snapshot(): S;
12
- getSnapshot(): S;
13
- toString(): string;
14
- die(): void;
15
- finalizeCreation(): void;
16
- aboutToDie(): void;
17
- finalizeDeath(): void;
18
- protected fireHook(name: Hook): void;
19
- }