mobx 7.0.2 → 7.0.4

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 CHANGED
@@ -1,5 +1,21 @@
1
1
  # mobx
2
2
 
3
+ ## 7.0.4
4
+
5
+ ### Patch Changes
6
+
7
+ - [`7d85a68fb7e449650535aba22e47ce4d21bfbc10`](https://github.com/mobxjs/mobx/commit/7d85a68fb7e449650535aba22e47ce4d21bfbc10) [#4592](https://github.com/mobxjs/mobx/pull/4592) Thanks [@VimHax](https://github.com/VimHax)! - Extend IReactionDisposer with Disposable
8
+
9
+ - [`01211a698b64ea94de8e5f276ff8235fcf8ddf96`](https://github.com/mobxjs/mobx/commit/01211a698b64ea94de8e5f276ff8235fcf8ddf96) [#4700](https://github.com/mobxjs/mobx/pull/4700) Thanks [@kubk](https://github.com/kubk)! - Fix `onBecomeObserved` not firing for dependencies gained when an observed computed is recomputed inside an action.
10
+
11
+ - [`6e0a03ef74750b3040c76d3ecc14c4adf202b95a`](https://github.com/mobxjs/mobx/commit/6e0a03ef74750b3040c76d3ecc14c4adf202b95a) [#4710](https://github.com/mobxjs/mobx/pull/4710) Thanks [@kubk](https://github.com/kubk)! - Use TypeScript's built-in `NoInfer` utility instead of a local compatibility alias.
12
+
13
+ ## 7.0.3
14
+
15
+ ### Patch Changes
16
+
17
+ - [`6f002b8e543ca39d3ee23681e28848d7f1724fae`](https://github.com/mobxjs/mobx/commit/6f002b8e543ca39d3ee23681e28848d7f1724fae) [#4696](https://github.com/mobxjs/mobx/pull/4696) Thanks [@gesposito](https://github.com/gesposito)! - perf: add a `node` export condition that routes Node and Bun to the existing `dist/index.js` entry, which picks the prebaked development or production CJS build once at require time. `import`ing mobx in Node no longer executes the env-agnostic `dist/mobx.mjs` with per-call `NODE_ENV` checks, and mixing `import` and `require` in one Node app now yields a single mobx instance.
18
+
3
19
  ## 7.0.2
4
20
 
5
21
  ### Patch Changes
@@ -1,5 +1,3 @@
1
1
  import { AnnotationsMap, CreateObservableOptions } from "../internal";
2
- type NoInfer<T> = [T][T extends any ? 0 : never];
3
2
  export declare function makeObservable<T extends object, AdditionalKeys extends PropertyKey = never>(target: T, annotations: AnnotationsMap<T, NoInfer<AdditionalKeys>>, options?: CreateObservableOptions): T;
4
3
  export declare function makeAutoObservable<T extends object, AdditionalKeys extends PropertyKey = never>(target: T, overrides?: AnnotationsMap<T, NoInfer<AdditionalKeys>>, options?: CreateObservableOptions): T;
5
- export {};
@@ -20,7 +20,7 @@ import { $mobx, IDerivation, IDerivationState_, IObservable, Lambda, GenericAbor
20
20
  export interface IReactionPublic {
21
21
  dispose(): void;
22
22
  }
23
- export interface IReactionDisposer {
23
+ export interface IReactionDisposer extends Disposable {
24
24
  (): void;
25
25
  [$mobx]: Reaction;
26
26
  }
@@ -1388,7 +1388,10 @@ class ComputedValue {
1388
1388
  reportObserved(this);
1389
1389
  if (shouldCompute(this)) {
1390
1390
  let prevTrackingContext = globalState.trackingContext;
1391
- if (this.keepAlive_ && !prevTrackingContext) {
1391
+ if (!prevTrackingContext && (this.keepAlive_ || this.isBeingObserved)) {
1392
+ // An observed or keep-alive computed can be recomputed by an untracked
1393
+ // read, for example from inside an action. Its dependencies are still
1394
+ // transitively observed and must fire their lifecycle hooks
1392
1395
  globalState.trackingContext = this;
1393
1396
  }
1394
1397
  if (this.trackAndCompute()) {