mobx-react-use-autorun 4.0.33-beta → 4.0.35

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.
@@ -2,10 +2,10 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.useMobxState = useMobxState;
4
4
  var mobx_1 = require("mobx");
5
- var mobx_react_lite_1 = require("mobx-react-lite");
6
5
  var react_1 = require("react");
7
6
  function useMobxState(state, props) {
8
- var mobxState = (0, mobx_react_lite_1.useLocalObservable)(typeof state === "function" ? state : function () { return state; });
7
+ var initStateFunction = typeof state === "function" ? state : function () { return state; };
8
+ var mobxState = (0, react_1.useState)(function () { return (0, mobx_1.observable)(initStateFunction(), undefined, { autoBind: true, proxy: false }); })[0];
9
9
  var keyListOfState = (0, react_1.useRef)([]);
10
10
  (0, mobx_1.runInAction)(function () {
11
11
  var _a;
@@ -18,17 +18,12 @@ function useMobxState(state, props) {
18
18
  }
19
19
  for (var _c = 0, _d = Object.keys(props); _c < _d.length; _c++) {
20
20
  var key = _d[_c];
21
- if ((0, mobx_1.isObservable)(props[key]) || ((_a = Object.getOwnPropertyDescriptor(props, key)) === null || _a === void 0 ? void 0 : _a.get)) {
22
- Object.defineProperty(mobxState, key, Object.getOwnPropertyDescriptor(props, key));
23
- }
24
- else {
25
- if (props[key] !== mobxState[key]) {
26
- Object.defineProperty(mobxState, key, Object.getOwnPropertyDescriptor(props, key));
27
- }
28
- }
21
+ (0, mobx_1.remove)(mobxState, key);
22
+ Object.assign(mobxState, (_a = {}, _a[key] = props[key], _a));
29
23
  }
30
24
  keyListOfState.current.splice(0, keyListOfState.current.length);
31
- for (var key in props) {
25
+ for (var _e = 0, _f = Object.keys(props); _e < _f.length; _e++) {
26
+ var key = _f[_e];
32
27
  keyListOfState.current.push(key);
33
28
  }
34
29
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useMobxState.js","sourceRoot":"","sources":["../../../lib/js/useMobxState.tsx"],"names":[],"mappings":";;AAOA,oCAiCC;AAxCD,6BAAyD;AACzD,mDAAqD;AACrD,+BAA+B;AAK/B,SAAgB,YAAY,CAAyD,KAAoB,EAAE,KAAS;IAClH,IAAM,SAAS,GAAG,IAAA,oCAAkB,EAAC,OAAO,KAAK,KAAK,UAAU,CAAC,CAAC,CAAE,KAAa,CAAC,CAAC,CAAC,cAAM,OAAA,KAAK,EAAL,CAAK,CAAC,CAAC;IAEjG,IAAM,cAAc,GAAG,IAAA,cAAM,EAAW,EAAE,CAAC,CAAC;IAE5C,IAAA,kBAAW,EAAC;;QAEV,IAAI,KAAK,EAAE,CAAC;YAEV,KAAkB,UAAsB,EAAtB,KAAA,cAAc,CAAC,OAAO,EAAtB,cAAsB,EAAtB,IAAsB,EAAE,CAAC;gBAAtC,IAAM,GAAG,SAAA;gBACZ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBACtC,IAAA,aAAM,EAAC,SAAS,EAAE,GAAG,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;YAED,KAAkB,UAAkB,EAAlB,KAAA,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAlB,cAAkB,EAAlB,IAAkB,EAAE,CAAC;gBAAlC,IAAM,GAAG,SAAA;gBACZ,IAAI,IAAA,mBAAY,EAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAI,MAAA,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,GAAG,CAAC,0CAAE,GAAG,CAAA,EAAE,CAAC;oBACjF,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,GAAG,CAAQ,CAAC,CAAA;gBAC3F,CAAC;qBAAM,CAAC;oBACN,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;wBAClC,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,GAAG,CAAQ,CAAC,CAAA;oBAC3F,CAAC;gBACH,CAAC;YACH,CAAC;YAED,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAChE,KAAK,IAAM,GAAG,IAAI,KAAK,EAAE,CAAC;gBACxB,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,SAAgB,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"useMobxState.js","sourceRoot":"","sources":["../../../lib/js/useMobxState.tsx"],"names":[],"mappings":";;AAMA,oCA6BC;AAnCD,6BAAuD;AACvD,+BAAyC;AAKzC,SAAgB,YAAY,CAAyD,KAAoB,EAAE,KAAS;IAClH,IAAM,iBAAiB,GAAG,OAAO,KAAK,KAAK,UAAU,CAAC,CAAC,CAAE,KAAa,CAAC,CAAC,CAAC,cAAM,OAAA,KAAK,EAAL,CAAK,CAAC;IACrF,IAAM,SAAS,GAAG,IAAA,gBAAQ,EAAC,cAAM,OAAA,IAAA,iBAAU,EAAC,iBAAiB,EAAE,EAAE,SAAS,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAA5E,CAA4E,CAAC,CAAC,CAAC,CAAwB,CAAC;IAEzI,IAAM,cAAc,GAAG,IAAA,cAAM,EAAW,EAAE,CAAC,CAAC;IAE5C,IAAA,kBAAW,EAAC;;QAEV,IAAI,KAAK,EAAE,CAAC;YAEV,KAAkB,UAAsB,EAAtB,KAAA,cAAc,CAAC,OAAO,EAAtB,cAAsB,EAAtB,IAAsB,EAAE,CAAC;gBAAtC,IAAM,GAAG,SAAA;gBACZ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBACtC,IAAA,aAAM,EAAC,SAAS,EAAE,GAAG,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;YAED,KAAkB,UAAkB,EAAlB,KAAA,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAlB,cAAkB,EAAlB,IAAkB,EAAE,CAAC;gBAAlC,IAAM,GAAG,SAAA;gBACZ,IAAA,aAAM,EAAC,SAAS,EAAE,GAAG,CAAC,CAAC;gBACvB,MAAM,CAAC,MAAM,CAAC,SAAS,YAAI,GAAC,GAAG,IAAG,KAAK,CAAC,GAAG,CAAC,MAAG,CAAC;YAClD,CAAC;YAED,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAChE,KAAkB,UAAkB,EAAlB,KAAA,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAlB,cAAkB,EAAlB,IAAkB,EAAE,CAAC;gBAAlC,IAAM,GAAG,SAAA;gBACZ,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,SAAgB,CAAC;AAC1B,CAAC"}
@@ -1,8 +1,8 @@
1
- import { remove, isObservable, runInAction } from 'mobx';
2
- import { useLocalObservable } from 'mobx-react-lite';
3
- import { useRef } from 'react';
1
+ import { remove, runInAction, observable } from 'mobx';
2
+ import { useRef, useState } from 'react';
4
3
  export function useMobxState(state, props) {
5
- var mobxState = useLocalObservable(typeof state === "function" ? state : function () { return state; });
4
+ var initStateFunction = typeof state === "function" ? state : function () { return state; };
5
+ var mobxState = useState(function () { return observable(initStateFunction(), undefined, { autoBind: true, proxy: false }); })[0];
6
6
  var keyListOfState = useRef([]);
7
7
  runInAction(function () {
8
8
  var _a;
@@ -15,17 +15,12 @@ export function useMobxState(state, props) {
15
15
  }
16
16
  for (var _c = 0, _d = Object.keys(props); _c < _d.length; _c++) {
17
17
  var key = _d[_c];
18
- if (isObservable(props[key]) || ((_a = Object.getOwnPropertyDescriptor(props, key)) === null || _a === void 0 ? void 0 : _a.get)) {
19
- Object.defineProperty(mobxState, key, Object.getOwnPropertyDescriptor(props, key));
20
- }
21
- else {
22
- if (props[key] !== mobxState[key]) {
23
- Object.defineProperty(mobxState, key, Object.getOwnPropertyDescriptor(props, key));
24
- }
25
- }
18
+ remove(mobxState, key);
19
+ Object.assign(mobxState, (_a = {}, _a[key] = props[key], _a));
26
20
  }
27
21
  keyListOfState.current.splice(0, keyListOfState.current.length);
28
- for (var key in props) {
22
+ for (var _e = 0, _f = Object.keys(props); _e < _f.length; _e++) {
23
+ var key = _f[_e];
29
24
  keyListOfState.current.push(key);
30
25
  }
31
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useMobxState.js","sourceRoot":"","sources":["../../../lib/js/useMobxState.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAK/B,MAAM,UAAU,YAAY,CAAyD,KAAoB,EAAE,KAAS;IAClH,IAAM,SAAS,GAAG,kBAAkB,CAAC,OAAO,KAAK,KAAK,UAAU,CAAC,CAAC,CAAE,KAAa,CAAC,CAAC,CAAC,cAAM,OAAA,KAAK,EAAL,CAAK,CAAC,CAAC;IAEjG,IAAM,cAAc,GAAG,MAAM,CAAW,EAAE,CAAC,CAAC;IAE5C,WAAW,CAAC;;QAEV,IAAI,KAAK,EAAE,CAAC;YAEV,KAAkB,UAAsB,EAAtB,KAAA,cAAc,CAAC,OAAO,EAAtB,cAAsB,EAAtB,IAAsB,EAAE,CAAC;gBAAtC,IAAM,GAAG,SAAA;gBACZ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBACtC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;YAED,KAAkB,UAAkB,EAAlB,KAAA,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAlB,cAAkB,EAAlB,IAAkB,EAAE,CAAC;gBAAlC,IAAM,GAAG,SAAA;gBACZ,IAAI,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAI,MAAA,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,GAAG,CAAC,0CAAE,GAAG,CAAA,EAAE,CAAC;oBACjF,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,GAAG,CAAQ,CAAC,CAAA;gBAC3F,CAAC;qBAAM,CAAC;oBACN,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;wBAClC,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,GAAG,CAAQ,CAAC,CAAA;oBAC3F,CAAC;gBACH,CAAC;YACH,CAAC;YAED,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAChE,KAAK,IAAM,GAAG,IAAI,KAAK,EAAE,CAAC;gBACxB,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,SAAgB,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"useMobxState.js","sourceRoot":"","sources":["../../../lib/js/useMobxState.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAKzC,MAAM,UAAU,YAAY,CAAyD,KAAoB,EAAE,KAAS;IAClH,IAAM,iBAAiB,GAAG,OAAO,KAAK,KAAK,UAAU,CAAC,CAAC,CAAE,KAAa,CAAC,CAAC,CAAC,cAAM,OAAA,KAAK,EAAL,CAAK,CAAC;IACrF,IAAM,SAAS,GAAG,QAAQ,CAAC,cAAM,OAAA,UAAU,CAAC,iBAAiB,EAAE,EAAE,SAAS,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAA5E,CAA4E,CAAC,CAAC,CAAC,CAAwB,CAAC;IAEzI,IAAM,cAAc,GAAG,MAAM,CAAW,EAAE,CAAC,CAAC;IAE5C,WAAW,CAAC;;QAEV,IAAI,KAAK,EAAE,CAAC;YAEV,KAAkB,UAAsB,EAAtB,KAAA,cAAc,CAAC,OAAO,EAAtB,cAAsB,EAAtB,IAAsB,EAAE,CAAC;gBAAtC,IAAM,GAAG,SAAA;gBACZ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBACtC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;YAED,KAAkB,UAAkB,EAAlB,KAAA,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAlB,cAAkB,EAAlB,IAAkB,EAAE,CAAC;gBAAlC,IAAM,GAAG,SAAA;gBACZ,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;gBACvB,MAAM,CAAC,MAAM,CAAC,SAAS,YAAI,GAAC,GAAG,IAAG,KAAK,CAAC,GAAG,CAAC,MAAG,CAAC;YAClD,CAAC;YAED,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAChE,KAAkB,UAAkB,EAAlB,KAAA,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAlB,cAAkB,EAAlB,IAAkB,EAAE,CAAC;gBAAlC,IAAM,GAAG,SAAA;gBACZ,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,SAAgB,CAAC;AAC1B,CAAC"}
@@ -1,12 +1,12 @@
1
- import { remove, isObservable, runInAction } from 'mobx';
2
- import { useLocalObservable } from 'mobx-react-lite';
3
- import { useRef } from 'react';
1
+ import { remove, runInAction, observable } from 'mobx';
2
+ import { useRef, useState } from 'react';
4
3
 
5
4
  export function useMobxState<T extends Record<any, any>>(state: T | (() => T)): T;
6
5
  export function useMobxState<T extends Record<any, any>, P extends Record<any, any>>(state: T | (() => T), props: P): T & P;
7
6
 
8
7
  export function useMobxState<T extends Record<any, any>, P extends Record<any, any>>(state: T | (() => T), props?: P): T & P {
9
- const mobxState = useLocalObservable(typeof state === "function" ? (state as any) : () => state);
8
+ const initStateFunction = typeof state === "function" ? (state as any) : () => state;
9
+ const mobxState = useState(() => observable(initStateFunction(), undefined, { autoBind: true, proxy: false }))[0] as Record<string, any>;
10
10
 
11
11
  const keyListOfState = useRef<string[]>([]);
12
12
 
@@ -21,17 +21,12 @@ export function useMobxState<T extends Record<any, any>, P extends Record<any, a
21
21
  }
22
22
 
23
23
  for (const key of Object.keys(props)) {
24
- if (isObservable(props[key]) || Object.getOwnPropertyDescriptor(props, key)?.get) {
25
- Object.defineProperty(mobxState, key, Object.getOwnPropertyDescriptor(props, key) as any)
26
- } else {
27
- if (props[key] !== mobxState[key]) {
28
- Object.defineProperty(mobxState, key, Object.getOwnPropertyDescriptor(props, key) as any)
29
- }
30
- }
24
+ remove(mobxState, key);
25
+ Object.assign(mobxState, { [key]: props[key] });
31
26
  }
32
27
 
33
28
  keyListOfState.current.splice(0, keyListOfState.current.length);
34
- for (const key in props) {
29
+ for (const key of Object.keys(props)) {
35
30
  keyListOfState.current.push(key);
36
31
  }
37
32
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mobx-react-use-autorun",
3
- "version": "4.0.33-beta",
3
+ "version": "4.0.35",
4
4
  "description": "Provide concise usage for mobx in react",
5
5
  "scripts": {
6
6
  "test": "npx -y -p typescript -p ts-node ts-node --skipProject bin/mobx_react_test.ts",