mobx-react-use-autorun 3.1.15 → 3.1.16-beta

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/index.js CHANGED
@@ -1,10 +1,18 @@
1
- import './js/mobx_config';
2
- import { toJS, observable, makeAutoObservable } from 'mobx';
3
- import { observer } from 'mobx-react-lite';
4
- import { useMobxEffect } from './js/useMobxEffect';
5
- import { useMobxState } from './js/useMobxState';
6
- import { useMount, useUnmount } from 'react-use';
7
- export { toJS, observable, observer, makeAutoObservable };
8
- export { useMobxState, useMobxEffect };
9
- export { useMount, useUnmount };
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useUnmount = exports.useMount = exports.useMobxEffect = exports.useMobxState = exports.makeAutoObservable = exports.observer = exports.observable = exports.toJS = void 0;
4
+ require("./js/mobx_config");
5
+ var mobx_1 = require("mobx");
6
+ Object.defineProperty(exports, "toJS", { enumerable: true, get: function () { return mobx_1.toJS; } });
7
+ Object.defineProperty(exports, "observable", { enumerable: true, get: function () { return mobx_1.observable; } });
8
+ Object.defineProperty(exports, "makeAutoObservable", { enumerable: true, get: function () { return mobx_1.makeAutoObservable; } });
9
+ var mobx_react_lite_1 = require("mobx-react-lite");
10
+ Object.defineProperty(exports, "observer", { enumerable: true, get: function () { return mobx_react_lite_1.observer; } });
11
+ var useMobxEffect_1 = require("./js/useMobxEffect");
12
+ Object.defineProperty(exports, "useMobxEffect", { enumerable: true, get: function () { return useMobxEffect_1.useMobxEffect; } });
13
+ var useMobxState_1 = require("./js/useMobxState");
14
+ Object.defineProperty(exports, "useMobxState", { enumerable: true, get: function () { return useMobxState_1.useMobxState; } });
15
+ var react_use_1 = require("react-use");
16
+ Object.defineProperty(exports, "useMount", { enumerable: true, get: function () { return react_use_1.useMount; } });
17
+ Object.defineProperty(exports, "useUnmount", { enumerable: true, get: function () { return react_use_1.useUnmount; } });
10
18
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.tsx"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAA;AACzB,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,MAAM,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEjD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,kBAAkB,EAAE,CAAA;AACzD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,CAAA;AACtC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.tsx"],"names":[],"mappings":";;;AAAA,4BAAyB;AACzB,6BAA4D;AAMnD,qFANA,WAAI,OAMA;AAAE,2FANA,iBAAU,OAMA;AAAY,mGANV,yBAAkB,OAMU;AALvD,mDAA2C;AAKhB,yFALlB,0BAAQ,OAKkB;AAJnC,oDAAmD;AAK5B,8FALd,6BAAa,OAKc;AAJpC,kDAAiD;AAIxC,6FAJA,2BAAY,OAIA;AAHrB,uCAAiD;AAIxC,yFAJA,oBAAQ,OAIA;AAAE,2FAJA,sBAAU,OAIA"}
@@ -1,5 +1,7 @@
1
- import { configure } from 'mobx';
2
- configure({
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var mobx_1 = require("mobx");
4
+ (0, mobx_1.configure)({
3
5
  enforceActions: 'never'
4
6
  });
5
7
  //# sourceMappingURL=mobx_config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mobx_config.js","sourceRoot":"","sources":["../../lib/js/mobx_config.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAEjC,SAAS,CAAC;IACR,cAAc,EAAE,OAAO;CACxB,CAAC,CAAA"}
1
+ {"version":3,"file":"mobx_config.js","sourceRoot":"","sources":["../../lib/js/mobx_config.tsx"],"names":[],"mappings":";;AAAA,6BAAiC;AAEjC,IAAA,gBAAS,EAAC;IACR,cAAc,EAAE,OAAO;CACxB,CAAC,CAAA"}
@@ -1,28 +1,32 @@
1
- import { useMount, useUnmount } from 'react-use';
2
- import { Subscription } from 'rxjs';
3
- import { reaction, toJS } from 'mobx';
4
- import { useMobxState } from './useMobxState';
5
- import { useEffect } from 'react';
6
- export var useMobxEffect = function (callback, dependencyList) {
7
- var state = useMobxState({
8
- subscription: new Subscription(),
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useMobxEffect = void 0;
4
+ var react_use_1 = require("react-use");
5
+ var rxjs_1 = require("rxjs");
6
+ var mobx_1 = require("mobx");
7
+ var useMobxState_1 = require("./useMobxState");
8
+ var react_1 = require("react");
9
+ var useMobxEffect = function (callback, dependencyList) {
10
+ var state = (0, useMobxState_1.useMobxState)({
11
+ subscription: new rxjs_1.Subscription(),
9
12
  }, { callback: callback });
10
- var source = useMobxState({}, Object.assign({}, dependencyList));
11
- useEffect(function () {
13
+ var source = (0, useMobxState_1.useMobxState)({}, Object.assign({}, dependencyList));
14
+ (0, react_1.useEffect)(function () {
12
15
  if (!dependencyList) {
13
16
  callback();
14
17
  }
15
18
  });
16
- useMount(function () {
19
+ (0, react_use_1.useMount)(function () {
17
20
  if (dependencyList) {
18
- var disposer_1 = reaction(function () { return [toJS(source)]; }, function () { return state.callback(); }, { fireImmediately: true, delay: 1 });
19
- state.subscription.add(new Subscription(function () {
21
+ var disposer_1 = (0, mobx_1.reaction)(function () { return [(0, mobx_1.toJS)(source)]; }, function () { return state.callback(); }, { fireImmediately: true, delay: 1 });
22
+ state.subscription.add(new rxjs_1.Subscription(function () {
20
23
  disposer_1();
21
24
  }));
22
25
  }
23
26
  });
24
- useUnmount(function () {
27
+ (0, react_use_1.useUnmount)(function () {
25
28
  state.subscription.unsubscribe();
26
29
  });
27
30
  };
31
+ exports.useMobxEffect = useMobxEffect;
28
32
  //# sourceMappingURL=useMobxEffect.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useMobxEffect.js","sourceRoot":"","sources":["../../lib/js/useMobxEffect.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,MAAM,CAAC,IAAM,aAAa,GAAG,UAAC,QAAoB,EAAE,cAAsB;IAExE,IAAM,KAAK,GAAG,YAAY,CAAC;QACzB,YAAY,EAAE,IAAI,YAAY,EAAE;KACjC,EAAE,EAAE,QAAQ,UAAA,EAAE,CAAC,CAAA;IAEhB,IAAM,MAAM,GAAG,YAAY,CAAC,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC;IAEnE,SAAS,CAAC;QACR,IAAI,CAAC,cAAc,EAAE;YACnB,QAAQ,EAAE,CAAA;SACX;IACH,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC;QACP,IAAI,cAAc,EAAE;YAClB,IAAM,UAAQ,GAAG,QAAQ,CAAC,cAAM,OAAA,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAd,CAAc,EAAE,cAAM,OAAA,KAAK,CAAC,QAAQ,EAAE,EAAhB,CAAgB,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;YAE7G,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC;gBACtC,UAAQ,EAAE,CAAC;YACb,CAAC,CAAC,CAAC,CAAC;SACL;IACH,CAAC,CAAC,CAAA;IAEF,UAAU,CAAC;QACT,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;IACnC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
1
+ {"version":3,"file":"useMobxEffect.js","sourceRoot":"","sources":["../../lib/js/useMobxEffect.tsx"],"names":[],"mappings":";;;AAAA,uCAAiD;AACjD,6BAAoC;AACpC,6BAAqC;AACrC,+CAA8C;AAC9C,+BAAkC;AAE3B,IAAM,aAAa,GAAG,UAAC,QAAoB,EAAE,cAAsB;IAExE,IAAM,KAAK,GAAG,IAAA,2BAAY,EAAC;QACzB,YAAY,EAAE,IAAI,mBAAY,EAAE;KACjC,EAAE,EAAE,QAAQ,UAAA,EAAE,CAAC,CAAA;IAEhB,IAAM,MAAM,GAAG,IAAA,2BAAY,EAAC,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC;IAEnE,IAAA,iBAAS,EAAC;QACR,IAAI,CAAC,cAAc,EAAE;YACnB,QAAQ,EAAE,CAAA;SACX;IACH,CAAC,CAAC,CAAA;IAEF,IAAA,oBAAQ,EAAC;QACP,IAAI,cAAc,EAAE;YAClB,IAAM,UAAQ,GAAG,IAAA,eAAQ,EAAC,cAAM,OAAA,CAAC,IAAA,WAAI,EAAC,MAAM,CAAC,CAAC,EAAd,CAAc,EAAE,cAAM,OAAA,KAAK,CAAC,QAAQ,EAAE,EAAhB,CAAgB,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;YAE7G,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,mBAAY,CAAC;gBACtC,UAAQ,EAAE,CAAC;YACb,CAAC,CAAC,CAAC,CAAC;SACL;IACH,CAAC,CAAC,CAAA;IAEF,IAAA,sBAAU,EAAC;QACT,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;IACnC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AA3BY,QAAA,aAAa,iBA2BzB"}
@@ -1,27 +1,30 @@
1
- import { extendObservable, remove, isObservable, runInAction } from 'mobx';
2
- import { useLocalObservable } from 'mobx-react-lite';
3
- import { useRef } from 'react';
4
- export function useMobxState(state, props) {
5
- var mobxState = useLocalObservable(typeof state === "function" ? state : function () { return state; });
6
- var keyListOfState = useRef([]);
7
- runInAction(function () {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useMobxState = void 0;
4
+ var mobx_1 = require("mobx");
5
+ var mobx_react_lite_1 = require("mobx-react-lite");
6
+ var react_1 = require("react");
7
+ function useMobxState(state, props) {
8
+ var mobxState = (0, mobx_react_lite_1.useLocalObservable)(typeof state === "function" ? state : function () { return state; });
9
+ var keyListOfState = (0, react_1.useRef)([]);
10
+ (0, mobx_1.runInAction)(function () {
8
11
  var _a, _b;
9
12
  var _c;
10
13
  if (props) {
11
14
  for (var _i = 0, _d = keyListOfState.current; _i < _d.length; _i++) {
12
15
  var key = _d[_i];
13
16
  if (!Object.keys(props).includes(key)) {
14
- remove(mobxState, key);
17
+ (0, mobx_1.remove)(mobxState, key);
15
18
  }
16
19
  }
17
20
  for (var key in props) {
18
- if (isObservable(props[key]) || ((_c = Object.getOwnPropertyDescriptor(props, key)) === null || _c === void 0 ? void 0 : _c.get)) {
21
+ if ((0, mobx_1.isObservable)(props[key]) || ((_c = Object.getOwnPropertyDescriptor(props, key)) === null || _c === void 0 ? void 0 : _c.get)) {
19
22
  Object.defineProperty(mobxState, key, Object.getOwnPropertyDescriptor(props, key));
20
23
  }
21
24
  else {
22
25
  if (props[key] !== mobxState[key]) {
23
- remove(mobxState, key);
24
- extendObservable(mobxState, (_a = {}, _a[key] = props[key], _a), (_b = {}, _b[key] = false, _b));
26
+ (0, mobx_1.remove)(mobxState, key);
27
+ (0, mobx_1.extendObservable)(mobxState, (_a = {}, _a[key] = props[key], _a), (_b = {}, _b[key] = false, _b));
25
28
  }
26
29
  }
27
30
  }
@@ -33,4 +36,5 @@ export function useMobxState(state, props) {
33
36
  });
34
37
  return mobxState;
35
38
  }
39
+ exports.useMobxState = useMobxState;
36
40
  //# sourceMappingURL=useMobxState.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useMobxState.js","sourceRoot":"","sources":["../../lib/js/useMobxState.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAC3E,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;YAET,KAAkB,UAAsB,EAAtB,KAAA,cAAc,CAAC,OAAO,EAAtB,cAAsB,EAAtB,IAAsB,EAAE;gBAArC,IAAM,GAAG,SAAA;gBACZ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;oBACrC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;iBACxB;aACF;YAED,KAAK,IAAM,GAAG,IAAI,KAAK,EAAE;gBACvB,IAAI,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAI,MAAA,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,GAAG,CAAC,0CAAE,GAAG,CAAA,EAAE;oBAChF,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,GAAG,CAAQ,CAAC,CAAA;iBAC1F;qBAAM;oBACL,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,GAAG,CAAC,EAAE;wBACjC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;wBACvB,gBAAgB,CAAC,SAAS,YAAI,GAAC,GAAG,IAAG,KAAK,CAAC,GAAG,CAAC,iBAAM,GAAC,GAAG,IAAG,KAAK,MAAG,CAAA;qBACrE;iBACF;aACF;YAED,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAChE,KAAK,IAAM,GAAG,IAAI,KAAK,EAAE;gBACvB,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aAClC;SACF;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,6BAA2E;AAC3E,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;YAET,KAAkB,UAAsB,EAAtB,KAAA,cAAc,CAAC,OAAO,EAAtB,cAAsB,EAAtB,IAAsB,EAAE;gBAArC,IAAM,GAAG,SAAA;gBACZ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;oBACrC,IAAA,aAAM,EAAC,SAAS,EAAE,GAAG,CAAC,CAAC;iBACxB;aACF;YAED,KAAK,IAAM,GAAG,IAAI,KAAK,EAAE;gBACvB,IAAI,IAAA,mBAAY,EAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAI,MAAA,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,GAAG,CAAC,0CAAE,GAAG,CAAA,EAAE;oBAChF,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,GAAG,CAAQ,CAAC,CAAA;iBAC1F;qBAAM;oBACL,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,GAAG,CAAC,EAAE;wBACjC,IAAA,aAAM,EAAC,SAAS,EAAE,GAAG,CAAC,CAAC;wBACvB,IAAA,uBAAgB,EAAC,SAAS,YAAI,GAAC,GAAG,IAAG,KAAK,CAAC,GAAG,CAAC,iBAAM,GAAC,GAAG,IAAG,KAAK,MAAG,CAAA;qBACrE;iBACF;aACF;YAED,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAChE,KAAK,IAAM,GAAG,IAAI,KAAK,EAAE;gBACvB,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aAClC;SACF;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,SAAgB,CAAC;AAC1B,CAAC;AAlCD,oCAkCC"}
package/es/index.d.ts ADDED
@@ -0,0 +1,9 @@
1
+ import './js/mobx_config';
2
+ import { toJS, observable, makeAutoObservable } from 'mobx';
3
+ import { observer } from 'mobx-react-lite';
4
+ import { useMobxEffect } from './js/useMobxEffect';
5
+ import { useMobxState } from './js/useMobxState';
6
+ import { useMount, useUnmount } from 'react-use';
7
+ export { toJS, observable, observer, makeAutoObservable };
8
+ export { useMobxState, useMobxEffect };
9
+ export { useMount, useUnmount };
package/es/index.js ADDED
@@ -0,0 +1,10 @@
1
+ import './js/mobx_config';
2
+ import { toJS, observable, makeAutoObservable } from 'mobx';
3
+ import { observer } from 'mobx-react-lite';
4
+ import { useMobxEffect } from './js/useMobxEffect';
5
+ import { useMobxState } from './js/useMobxState';
6
+ import { useMount, useUnmount } from 'react-use';
7
+ export { toJS, observable, observer, makeAutoObservable };
8
+ export { useMobxState, useMobxEffect };
9
+ export { useMount, useUnmount };
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.tsx"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAA;AACzB,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,MAAM,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEjD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,kBAAkB,EAAE,CAAA;AACzD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,CAAA;AACtC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAA"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,5 @@
1
+ import { configure } from 'mobx';
2
+ configure({
3
+ enforceActions: 'never'
4
+ });
5
+ //# sourceMappingURL=mobx_config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mobx_config.js","sourceRoot":"","sources":["../../lib/js/mobx_config.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAEjC,SAAS,CAAC;IACR,cAAc,EAAE,OAAO;CACxB,CAAC,CAAA"}
@@ -0,0 +1 @@
1
+ export declare const useMobxEffect: (callback: () => void, dependencyList?: any[]) => void;
@@ -0,0 +1,28 @@
1
+ import { useMount, useUnmount } from 'react-use';
2
+ import { Subscription } from 'rxjs';
3
+ import { reaction, toJS } from 'mobx';
4
+ import { useMobxState } from './useMobxState';
5
+ import { useEffect } from 'react';
6
+ export var useMobxEffect = function (callback, dependencyList) {
7
+ var state = useMobxState({
8
+ subscription: new Subscription(),
9
+ }, { callback: callback });
10
+ var source = useMobxState({}, Object.assign({}, dependencyList));
11
+ useEffect(function () {
12
+ if (!dependencyList) {
13
+ callback();
14
+ }
15
+ });
16
+ useMount(function () {
17
+ if (dependencyList) {
18
+ var disposer_1 = reaction(function () { return [toJS(source)]; }, function () { return state.callback(); }, { fireImmediately: true, delay: 1 });
19
+ state.subscription.add(new Subscription(function () {
20
+ disposer_1();
21
+ }));
22
+ }
23
+ });
24
+ useUnmount(function () {
25
+ state.subscription.unsubscribe();
26
+ });
27
+ };
28
+ //# sourceMappingURL=useMobxEffect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMobxEffect.js","sourceRoot":"","sources":["../../lib/js/useMobxEffect.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,MAAM,CAAC,IAAM,aAAa,GAAG,UAAC,QAAoB,EAAE,cAAsB;IAExE,IAAM,KAAK,GAAG,YAAY,CAAC;QACzB,YAAY,EAAE,IAAI,YAAY,EAAE;KACjC,EAAE,EAAE,QAAQ,UAAA,EAAE,CAAC,CAAA;IAEhB,IAAM,MAAM,GAAG,YAAY,CAAC,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC;IAEnE,SAAS,CAAC;QACR,IAAI,CAAC,cAAc,EAAE;YACnB,QAAQ,EAAE,CAAA;SACX;IACH,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC;QACP,IAAI,cAAc,EAAE;YAClB,IAAM,UAAQ,GAAG,QAAQ,CAAC,cAAM,OAAA,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAd,CAAc,EAAE,cAAM,OAAA,KAAK,CAAC,QAAQ,EAAE,EAAhB,CAAgB,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;YAE7G,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC;gBACtC,UAAQ,EAAE,CAAC;YACb,CAAC,CAAC,CAAC,CAAC;SACL;IACH,CAAC,CAAC,CAAA;IAEF,UAAU,CAAC;QACT,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;IACnC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare function useMobxState<T extends Record<any, any>>(state: T | (() => T)): T;
2
+ export declare function useMobxState<T extends Record<any, any>, P extends Record<any, any>>(state: T | (() => T), props: P): T & P;
@@ -0,0 +1,36 @@
1
+ import { extendObservable, remove, isObservable, runInAction } from 'mobx';
2
+ import { useLocalObservable } from 'mobx-react-lite';
3
+ import { useRef } from 'react';
4
+ export function useMobxState(state, props) {
5
+ var mobxState = useLocalObservable(typeof state === "function" ? state : function () { return state; });
6
+ var keyListOfState = useRef([]);
7
+ runInAction(function () {
8
+ var _a, _b;
9
+ var _c;
10
+ if (props) {
11
+ for (var _i = 0, _d = keyListOfState.current; _i < _d.length; _i++) {
12
+ var key = _d[_i];
13
+ if (!Object.keys(props).includes(key)) {
14
+ remove(mobxState, key);
15
+ }
16
+ }
17
+ for (var key in props) {
18
+ if (isObservable(props[key]) || ((_c = Object.getOwnPropertyDescriptor(props, key)) === null || _c === void 0 ? void 0 : _c.get)) {
19
+ Object.defineProperty(mobxState, key, Object.getOwnPropertyDescriptor(props, key));
20
+ }
21
+ else {
22
+ if (props[key] !== mobxState[key]) {
23
+ remove(mobxState, key);
24
+ extendObservable(mobxState, (_a = {}, _a[key] = props[key], _a), (_b = {}, _b[key] = false, _b));
25
+ }
26
+ }
27
+ }
28
+ keyListOfState.current.splice(0, keyListOfState.current.length);
29
+ for (var key in props) {
30
+ keyListOfState.current.push(key);
31
+ }
32
+ }
33
+ });
34
+ return mobxState;
35
+ }
36
+ //# sourceMappingURL=useMobxState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMobxState.js","sourceRoot":"","sources":["../../lib/js/useMobxState.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAC3E,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;YAET,KAAkB,UAAsB,EAAtB,KAAA,cAAc,CAAC,OAAO,EAAtB,cAAsB,EAAtB,IAAsB,EAAE;gBAArC,IAAM,GAAG,SAAA;gBACZ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;oBACrC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;iBACxB;aACF;YAED,KAAK,IAAM,GAAG,IAAI,KAAK,EAAE;gBACvB,IAAI,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAI,MAAA,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,GAAG,CAAC,0CAAE,GAAG,CAAA,EAAE;oBAChF,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,GAAG,CAAQ,CAAC,CAAA;iBAC1F;qBAAM;oBACL,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,GAAG,CAAC,EAAE;wBACjC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;wBACvB,gBAAgB,CAAC,SAAS,YAAI,GAAC,GAAG,IAAG,KAAK,CAAC,GAAG,CAAC,iBAAM,GAAC,GAAG,IAAG,KAAK,MAAG,CAAA;qBACrE;iBACF;aACF;YAED,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAChE,KAAK,IAAM,GAAG,IAAI,KAAK,EAAE;gBACvB,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aAClC;SACF;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,SAAgB,CAAC;AAC1B,CAAC"}
package/package.json CHANGED
@@ -1 +1 @@
1
- {"name":"mobx-react-use-autorun","version":"3.1.15","description":"Provide concise usage for mobx in react","scripts":{"test":"npx -y -p typescript -p ts-node ts-node --skipProject bin/mobx_react_test.ts","build":"npx -y -p typescript -p ts-node ts-node --skipProject bin/mobx_react_build.ts","make":"npx -y -p typescript -p ts-node ts-node --skipProject bin/mobx_react_make.ts"},"dependencies":{"mobx":"6.8.0","mobx-react-lite":"3.4.3","react-use":"17.4.0","rxjs":"7.8.0"},"peerDependencies":{"react":">=16.8.0"},"license":"MIT","keywords":["react","mobx","typescript","hooks"],"main":"./dist/index.js","types":"./dist/index.d.ts","eslintConfig":{"extends":["react-app","react-app/jest"]},"homepage":"https://github.com/zdu-strong/mobx-react-use-autorun#readme","repository":{"type":"git","url":"git+https://github.com/zdu-strong/mobx-react-use-autorun.git"},"files":["lib","dist"],"bugs":{"url":"https://github.com/zdu-strong/mobx-react-use-autorun/issues"},"publishConfig":{"registry":"https://registry.npmjs.org/"}}
1
+ {"name":"mobx-react-use-autorun","version":"3.1.16-beta","description":"Provide concise usage for mobx in react","scripts":{"test":"npx -y -p typescript -p ts-node ts-node --skipProject bin/mobx_react_test.ts","build":"npx -y -p typescript -p ts-node ts-node --skipProject bin/mobx_react_build.ts","make":"npx -y -p typescript -p ts-node ts-node --skipProject bin/mobx_react_make.ts"},"dependencies":{"mobx":"6.8.0","mobx-react-lite":"3.4.3","react-use":"17.4.0","rxjs":"7.8.0"},"peerDependencies":{"react":">=16.8.0"},"license":"MIT","keywords":["react","mobx","typescript","hooks"],"main":"./dist/index.js","module":"./es/index.js","types":"./dist/index.d.ts","eslintConfig":{"extends":["react-app","react-app/jest"]},"homepage":"https://github.com/zdu-strong/mobx-react-use-autorun#readme","repository":{"type":"git","url":"git+https://github.com/zdu-strong/mobx-react-use-autorun.git"},"files":["lib","dist","es"],"bugs":{"url":"https://github.com/zdu-strong/mobx-react-use-autorun/issues"},"publishConfig":{"registry":"https://registry.npmjs.org/"}}