mobx-react-use-autorun 4.0.64 → 4.0.66-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/cjs/js/mobx_config.js.map +1 -1
- package/dist/cjs/js/useMobxEffect.js +18 -27
- package/dist/cjs/js/useMobxEffect.js.map +1 -1
- package/dist/cjs/js/useMobxState.js.map +1 -1
- package/dist/cjs/js/useMount.js.map +1 -1
- package/dist/esm/js/mobx_config.js.map +1 -1
- package/dist/esm/js/useMobxEffect.js +20 -29
- package/dist/esm/js/useMobxEffect.js.map +1 -1
- package/dist/esm/js/useMobxState.js.map +1 -1
- package/dist/esm/js/useMount.js.map +1 -1
- package/lib/js/mobx_config.tsx +1 -1
- package/lib/js/useMobxEffect.tsx +30 -51
- package/lib/js/useMobxState.tsx +20 -20
- package/lib/js/useMount.tsx +14 -14
- package/package.json +56 -56
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mobx_config.js","sourceRoot":"","sources":["../../../lib/js/mobx_config.tsx"],"names":[],"mappings":";;AAAA,6BAAiC;AAEjC,IAAA,gBAAS,EAAC;
|
|
1
|
+
{"version":3,"file":"mobx_config.js","sourceRoot":"","sources":["../../../lib/js/mobx_config.tsx"],"names":[],"mappings":";;AAAA,6BAAiC;AAEjC,IAAA,gBAAS,EAAC;IACN,cAAc,EAAE,OAAO;CAC1B,CAAC,CAAA"}
|
|
@@ -1,47 +1,38 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
2
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
14
|
exports.useMobxEffect = void 0;
|
|
4
15
|
var useMount_1 = require("./useMount");
|
|
5
|
-
var rxjs_1 = require("rxjs");
|
|
6
16
|
var mobx_1 = require("mobx");
|
|
7
17
|
var react_1 = require("react");
|
|
8
|
-
var
|
|
18
|
+
var useMobxState_1 = require("./useMobxState");
|
|
9
19
|
var useMobxEffect = function (callback, dependencyList) {
|
|
10
|
-
var
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
dependencyListRef.current = dependencyList;
|
|
20
|
+
var state = (0, useMobxState_1.useMobxState)({}, {
|
|
21
|
+
callback: callback
|
|
22
|
+
});
|
|
23
|
+
var dependencyListState = (0, useMobxState_1.useMobxState)({}, __assign({}, (dependencyList ? dependencyList : {})));
|
|
15
24
|
(0, react_1.useEffect)(function () {
|
|
16
25
|
if (dependencyList) {
|
|
17
26
|
return;
|
|
18
27
|
}
|
|
19
28
|
callback();
|
|
20
29
|
});
|
|
21
|
-
(0, react_1.useEffect)(function () {
|
|
22
|
-
if (!dependencyList) {
|
|
23
|
-
return;
|
|
24
|
-
}
|
|
25
|
-
subjectRef.current.next();
|
|
26
|
-
}, dependencyList);
|
|
27
30
|
(0, useMount_1.useMount)(function (subscription) {
|
|
28
31
|
if (!dependencyList) {
|
|
29
32
|
return;
|
|
30
33
|
}
|
|
31
|
-
var
|
|
32
|
-
subscription.add(
|
|
33
|
-
(0, mobx_2.runInAction)(function () {
|
|
34
|
-
var _a, _b;
|
|
35
|
-
var props = Object.assign({}, dependencyListRef.current);
|
|
36
|
-
for (var key in props) {
|
|
37
|
-
(0, mobx_2.extendObservable)(mobxData, (_a = {}, _a[key] = props[key], _a), (_b = {}, _b[key] = false, _b));
|
|
38
|
-
}
|
|
39
|
-
});
|
|
40
|
-
})).subscribe());
|
|
41
|
-
var disposer = (0, mobx_1.reaction)(function () { return [(0, mobx_1.toJS)(mobxData)]; }, function () { return callbackRef.current.callback(); }, { fireImmediately: true, delay: 1 });
|
|
42
|
-
subscription.add(new rxjs_1.Subscription(function () {
|
|
43
|
-
disposer();
|
|
44
|
-
}));
|
|
34
|
+
var disposer = (0, mobx_1.reaction)(function () { return [(0, mobx_1.toJS)(dependencyListState)]; }, function () { return state.callback(); }, { fireImmediately: true, delay: 1 });
|
|
35
|
+
subscription.add(function () { return disposer(); });
|
|
45
36
|
});
|
|
46
37
|
};
|
|
47
38
|
exports.useMobxEffect = useMobxEffect;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMobxEffect.js","sourceRoot":"","sources":["../../../lib/js/useMobxEffect.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useMobxEffect.js","sourceRoot":"","sources":["../../../lib/js/useMobxEffect.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,uCAAsC;AACtC,6BAAqC;AACrC,+BAAkC;AAClC,+CAA8C;AAEvC,IAAM,aAAa,GAAG,UAAC,QAAoB,EAAE,cAAsB;IAEtE,IAAM,KAAK,GAAG,IAAA,2BAAY,EAAC,EAC1B,EAAE;QACC,QAAQ,UAAA;KACX,CAAC,CAAC;IAEH,IAAM,mBAAmB,GAAG,IAAA,2BAAY,EAAC,EAExC,eACM,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,EAC3C,CAAA;IAEF,IAAA,iBAAS,EAAC;QACN,IAAI,cAAc,EAAE;YAChB,OAAO;SACV;QACD,QAAQ,EAAE,CAAC;IACf,CAAC,CAAC,CAAA;IAEF,IAAA,mBAAQ,EAAC,UAAC,YAAY;QAClB,IAAI,CAAC,cAAc,EAAE;YACjB,OAAO;SACV;QAED,IAAM,QAAQ,GAAG,IAAA,eAAQ,EAAC,cAAM,OAAA,CAAC,IAAA,WAAI,EAAC,mBAAmB,CAAC,CAAC,EAA3B,CAA2B,EAAE,cAAM,OAAA,KAAK,CAAC,QAAQ,EAAE,EAAhB,CAAgB,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;QAE1H,YAAY,CAAC,GAAG,CAAC,cAAM,OAAA,QAAQ,EAAE,EAAV,CAAU,CAAC,CAAC;IACvC,CAAC,CAAC,CAAA;AAEN,CAAC,CAAA;AA9BY,QAAA,aAAa,iBA8BzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMobxState.js","sourceRoot":"","sources":["../../../lib/js/useMobxState.tsx"],"names":[],"mappings":";;;AAAA,6BAAiF;AACjF,+BAAyC;AAKzC,SAAgB,YAAY,CAAyD,KAAoB,EAAE,KAAS;
|
|
1
|
+
{"version":3,"file":"useMobxState.js","sourceRoot":"","sources":["../../../lib/js/useMobxState.tsx"],"names":[],"mappings":";;;AAAA,6BAAiF;AACjF,+BAAyC;AAKzC,SAAgB,YAAY,CAAyD,KAAoB,EAAE,KAAS;IAChH,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,yBAAkB,EAAC,iBAAiB,EAAE,CAAC,EAAvC,CAAuC,CAAC,CAAC,CAAC,CAAwB,CAAC;IAEpG,IAAM,cAAc,GAAG,IAAA,cAAM,EAAW,EAAE,CAAC,CAAC;IAE5C,IAAA,kBAAW,EAAC;;QAER,IAAI,KAAK,EAAE;YAEP,KAAkB,UAAsB,EAAtB,KAAA,cAAc,CAAC,OAAO,EAAtB,cAAsB,EAAtB,IAAsB,EAAE;gBAArC,IAAM,GAAG,SAAA;gBACV,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;oBACnC,IAAA,aAAM,EAAC,SAAS,EAAE,GAAG,CAAC,CAAC;iBAC1B;aACJ;YAED,KAAK,IAAM,GAAG,IAAI,KAAK,EAAE;gBACrB,IAAA,uBAAgB,EAAC,SAAS,YAAI,GAAC,GAAG,IAAG,KAAK,CAAC,GAAG,CAAC,iBAAM,GAAC,GAAG,IAAG,KAAK,MAAG,CAAC;aACxE;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;gBAAjC,IAAM,GAAG,SAAA;gBACV,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aACpC;SACJ;IACL,CAAC,CAAC,CAAA;IAEF,OAAO,SAAgB,CAAC;AAC5B,CAAC;AA5BD,oCA4BC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMount.js","sourceRoot":"","sources":["../../../lib/js/useMount.tsx"],"names":[],"mappings":";;;AAAA,+BAAkC;AAClC,6BAAoC;AACpC,+CAA8C;AAE9C,SAAgB,QAAQ,CAAC,QAA8C;
|
|
1
|
+
{"version":3,"file":"useMount.js","sourceRoot":"","sources":["../../../lib/js/useMount.tsx"],"names":[],"mappings":";;;AAAA,+BAAkC;AAClC,6BAAoC;AACpC,+CAA8C;AAE9C,SAAgB,QAAQ,CAAC,QAA8C;IAEnE,IAAM,KAAK,GAAG,IAAA,2BAAY,EAAC;QACvB,YAAY,EAAE,IAAI,mBAAY,EAAE;KACnC,CAAC,CAAC;IAEH,IAAA,iBAAS,EAAC;QACN,IAAM,YAAY,GAAG,IAAI,mBAAY,EAAE,CAAC;QACxC,KAAK,CAAC,YAAY,GAAG,YAAY,CAAC;QAClC,OAAO,cAAM,OAAA,YAAY,CAAC,WAAW,EAAE,EAA1B,CAA0B,CAAC;IAC5C,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,IAAA,iBAAS,EAAC;QACN,IAAM,YAAY,GAAG,IAAI,mBAAY,EAAE,CAAC;QACxC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACrC,QAAQ,CAAC,YAAY,CAAC,CAAC;QACvB,OAAO,cAAM,OAAA,YAAY,CAAC,WAAW,EAAE,EAA1B,CAA0B,CAAC;IAC5C,CAAC,EAAE,EAAE,CAAC,CAAA;AAEV,CAAC;AAnBD,4BAmBC"}
|
|
@@ -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;
|
|
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;IACN,cAAc,EAAE,OAAO;CAC1B,CAAC,CAAA"}
|
|
@@ -1,44 +1,35 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
1
12
|
import { useMount } from './useMount';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { extendObservable, runInAction } from 'mobx';
|
|
13
|
+
import { reaction, toJS } from 'mobx';
|
|
14
|
+
import { useEffect } from 'react';
|
|
15
|
+
import { useMobxState } from './useMobxState';
|
|
6
16
|
export var useMobxEffect = function (callback, dependencyList) {
|
|
7
|
-
var
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
dependencyListRef.current = dependencyList;
|
|
17
|
+
var state = useMobxState({}, {
|
|
18
|
+
callback: callback
|
|
19
|
+
});
|
|
20
|
+
var dependencyListState = useMobxState({}, __assign({}, (dependencyList ? dependencyList : {})));
|
|
12
21
|
useEffect(function () {
|
|
13
22
|
if (dependencyList) {
|
|
14
23
|
return;
|
|
15
24
|
}
|
|
16
25
|
callback();
|
|
17
26
|
});
|
|
18
|
-
useEffect(function () {
|
|
19
|
-
if (!dependencyList) {
|
|
20
|
-
return;
|
|
21
|
-
}
|
|
22
|
-
subjectRef.current.next();
|
|
23
|
-
}, dependencyList);
|
|
24
27
|
useMount(function (subscription) {
|
|
25
28
|
if (!dependencyList) {
|
|
26
29
|
return;
|
|
27
30
|
}
|
|
28
|
-
var
|
|
29
|
-
subscription.add(
|
|
30
|
-
runInAction(function () {
|
|
31
|
-
var _a, _b;
|
|
32
|
-
var props = Object.assign({}, dependencyListRef.current);
|
|
33
|
-
for (var key in props) {
|
|
34
|
-
extendObservable(mobxData, (_a = {}, _a[key] = props[key], _a), (_b = {}, _b[key] = false, _b));
|
|
35
|
-
}
|
|
36
|
-
});
|
|
37
|
-
})).subscribe());
|
|
38
|
-
var disposer = reaction(function () { return [toJS(mobxData)]; }, function () { return callbackRef.current.callback(); }, { fireImmediately: true, delay: 1 });
|
|
39
|
-
subscription.add(new Subscription(function () {
|
|
40
|
-
disposer();
|
|
41
|
-
}));
|
|
31
|
+
var disposer = reaction(function () { return [toJS(dependencyListState)]; }, function () { return state.callback(); }, { fireImmediately: true, delay: 1 });
|
|
32
|
+
subscription.add(function () { return disposer(); });
|
|
42
33
|
});
|
|
43
34
|
};
|
|
44
35
|
//# 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,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"useMobxEffect.js","sourceRoot":"","sources":["../../../lib/js/useMobxEffect.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,CAAC,IAAM,aAAa,GAAG,UAAC,QAAoB,EAAE,cAAsB;IAEtE,IAAM,KAAK,GAAG,YAAY,CAAC,EAC1B,EAAE;QACC,QAAQ,UAAA;KACX,CAAC,CAAC;IAEH,IAAM,mBAAmB,GAAG,YAAY,CAAC,EAExC,eACM,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,EAC3C,CAAA;IAEF,SAAS,CAAC;QACN,IAAI,cAAc,EAAE;YAChB,OAAO;SACV;QACD,QAAQ,EAAE,CAAC;IACf,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,UAAC,YAAY;QAClB,IAAI,CAAC,cAAc,EAAE;YACjB,OAAO;SACV;QAED,IAAM,QAAQ,GAAG,QAAQ,CAAC,cAAM,OAAA,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAA3B,CAA2B,EAAE,cAAM,OAAA,KAAK,CAAC,QAAQ,EAAE,EAAhB,CAAgB,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;QAE1H,YAAY,CAAC,GAAG,CAAC,cAAM,OAAA,QAAQ,EAAE,EAAV,CAAU,CAAC,CAAC;IACvC,CAAC,CAAC,CAAA;AAEN,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMobxState.js","sourceRoot":"","sources":["../../../lib/js/useMobxState.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,MAAM,CAAC;AACjF,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAKzC,MAAM,UAAU,YAAY,CAAyD,KAAoB,EAAE,KAAS;
|
|
1
|
+
{"version":3,"file":"useMobxState.js","sourceRoot":"","sources":["../../../lib/js/useMobxState.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,MAAM,CAAC;AACjF,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAKzC,MAAM,UAAU,YAAY,CAAyD,KAAoB,EAAE,KAAS;IAChH,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,kBAAkB,CAAC,iBAAiB,EAAE,CAAC,EAAvC,CAAuC,CAAC,CAAC,CAAC,CAAwB,CAAC;IAEpG,IAAM,cAAc,GAAG,MAAM,CAAW,EAAE,CAAC,CAAC;IAE5C,WAAW,CAAC;;QAER,IAAI,KAAK,EAAE;YAEP,KAAkB,UAAsB,EAAtB,KAAA,cAAc,CAAC,OAAO,EAAtB,cAAsB,EAAtB,IAAsB,EAAE;gBAArC,IAAM,GAAG,SAAA;gBACV,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;oBACnC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;iBAC1B;aACJ;YAED,KAAK,IAAM,GAAG,IAAI,KAAK,EAAE;gBACrB,gBAAgB,CAAC,SAAS,YAAI,GAAC,GAAG,IAAG,KAAK,CAAC,GAAG,CAAC,iBAAM,GAAC,GAAG,IAAG,KAAK,MAAG,CAAC;aACxE;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;gBAAjC,IAAM,GAAG,SAAA;gBACV,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aACpC;SACJ;IACL,CAAC,CAAC,CAAA;IAEF,OAAO,SAAgB,CAAC;AAC5B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMount.js","sourceRoot":"","sources":["../../../lib/js/useMount.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,UAAU,QAAQ,CAAC,QAA8C;
|
|
1
|
+
{"version":3,"file":"useMount.js","sourceRoot":"","sources":["../../../lib/js/useMount.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,UAAU,QAAQ,CAAC,QAA8C;IAEnE,IAAM,KAAK,GAAG,YAAY,CAAC;QACvB,YAAY,EAAE,IAAI,YAAY,EAAE;KACnC,CAAC,CAAC;IAEH,SAAS,CAAC;QACN,IAAM,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC;QACxC,KAAK,CAAC,YAAY,GAAG,YAAY,CAAC;QAClC,OAAO,cAAM,OAAA,YAAY,CAAC,WAAW,EAAE,EAA1B,CAA0B,CAAC;IAC5C,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,SAAS,CAAC;QACN,IAAM,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC;QACxC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACrC,QAAQ,CAAC,YAAY,CAAC,CAAC;QACvB,OAAO,cAAM,OAAA,YAAY,CAAC,WAAW,EAAE,EAA1B,CAA0B,CAAC;IAC5C,CAAC,EAAE,EAAE,CAAC,CAAA;AAEV,CAAC"}
|
package/lib/js/mobx_config.tsx
CHANGED
package/lib/js/useMobxEffect.tsx
CHANGED
|
@@ -1,57 +1,36 @@
|
|
|
1
1
|
import { useMount } from './useMount';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { extendObservable, runInAction } from 'mobx';
|
|
2
|
+
import { reaction, toJS } from 'mobx'
|
|
3
|
+
import { useEffect } from 'react';
|
|
4
|
+
import { useMobxState } from './useMobxState';
|
|
6
5
|
|
|
7
6
|
export const useMobxEffect = (callback: () => void, dependencyList?: any[]): void => {
|
|
8
7
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
}
|
|
37
|
-
const mobxData = makeAutoObservable(Object.assign({}, dependencyListRef.current));
|
|
38
|
-
subscription.add(subjectRef.current.pipe(
|
|
39
|
-
tap(() => {
|
|
40
|
-
runInAction(() => {
|
|
41
|
-
const props = Object.assign({}, dependencyListRef.current);
|
|
42
|
-
for (const key in props) {
|
|
43
|
-
extendObservable(mobxData, { [key]: props[key] }, { [key]: false });
|
|
44
|
-
}
|
|
45
|
-
})
|
|
46
|
-
})
|
|
47
|
-
).subscribe());
|
|
48
|
-
|
|
49
|
-
const disposer = reaction(() => [toJS(mobxData)], () => callbackRef.current!.callback(), { fireImmediately: true, delay: 1 });
|
|
50
|
-
|
|
51
|
-
subscription.add(new Subscription(() => {
|
|
52
|
-
disposer();
|
|
53
|
-
}));
|
|
54
|
-
|
|
55
|
-
})
|
|
8
|
+
const state = useMobxState({
|
|
9
|
+
}, {
|
|
10
|
+
callback
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
const dependencyListState = useMobxState({
|
|
14
|
+
|
|
15
|
+
}, {
|
|
16
|
+
...(dependencyList ? dependencyList : {})
|
|
17
|
+
})
|
|
18
|
+
|
|
19
|
+
useEffect(() => {
|
|
20
|
+
if (dependencyList) {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
callback();
|
|
24
|
+
})
|
|
25
|
+
|
|
26
|
+
useMount((subscription) => {
|
|
27
|
+
if (!dependencyList) {
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
const disposer = reaction(() => [toJS(dependencyListState)], () => state.callback(), { fireImmediately: true, delay: 1 });
|
|
32
|
+
|
|
33
|
+
subscription.add(() => disposer());
|
|
34
|
+
})
|
|
56
35
|
|
|
57
36
|
}
|
package/lib/js/useMobxState.tsx
CHANGED
|
@@ -5,31 +5,31 @@ export function useMobxState<T extends Record<any, any>>(state: T | (() => T)):
|
|
|
5
5
|
export function useMobxState<T extends Record<any, any>, P extends Record<any, any>>(state: T | (() => T), props: P): T & P;
|
|
6
6
|
|
|
7
7
|
export function useMobxState<T extends Record<any, any>, P extends Record<any, any>>(state: T | (() => T), props?: P): T & P {
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
const initStateFunction = typeof state === "function" ? (state as any) : () => state;
|
|
9
|
+
const mobxState = useState(() => makeAutoObservable(initStateFunction()))[0] as Record<string, any>;
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
const keyListOfState = useRef<string[]>([]);
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
runInAction(() => {
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
if (props) {
|
|
16
16
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
17
|
+
for (const key of keyListOfState.current) {
|
|
18
|
+
if (!Object.keys(props).includes(key)) {
|
|
19
|
+
remove(mobxState, key);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
22
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
23
|
+
for (const key in props) {
|
|
24
|
+
extendObservable(mobxState, { [key]: props[key] }, { [key]: false });
|
|
25
|
+
}
|
|
26
26
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
27
|
+
keyListOfState.current.splice(0, keyListOfState.current.length);
|
|
28
|
+
for (const key of Object.keys(props)) {
|
|
29
|
+
keyListOfState.current.push(key);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
})
|
|
33
33
|
|
|
34
|
-
|
|
34
|
+
return mobxState as any;
|
|
35
35
|
}
|
package/lib/js/useMount.tsx
CHANGED
|
@@ -4,21 +4,21 @@ import { useMobxState } from "./useMobxState";
|
|
|
4
4
|
|
|
5
5
|
export function useMount(callback: (subscription: Subscription) => void) {
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
const state = useMobxState({
|
|
8
|
+
subscription: new Subscription(),
|
|
9
|
+
});
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
11
|
+
useEffect(() => {
|
|
12
|
+
const subscription = new Subscription();
|
|
13
|
+
state.subscription = subscription;
|
|
14
|
+
return () => subscription.unsubscribe();
|
|
15
|
+
}, [])
|
|
16
16
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
17
|
+
useEffect(() => {
|
|
18
|
+
const subscription = new Subscription();
|
|
19
|
+
state.subscription.add(subscription);
|
|
20
|
+
callback(subscription);
|
|
21
|
+
return () => subscription.unsubscribe();
|
|
22
|
+
}, [])
|
|
23
23
|
|
|
24
24
|
}
|
package/package.json
CHANGED
|
@@ -1,59 +1,59 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
2
|
+
"name": "mobx-react-use-autorun",
|
|
3
|
+
"version": "4.0.66-beta",
|
|
4
|
+
"description": "Provide concise usage for mobx in react",
|
|
5
|
+
"scripts": {
|
|
6
|
+
"test": "node bin/mobx_react_test.js",
|
|
7
|
+
"build": "node bin/mobx_react_build.js",
|
|
8
|
+
"make": "node bin/mobx_react_make.js"
|
|
9
|
+
},
|
|
10
|
+
"dependencies": {
|
|
11
|
+
"mobx": "6.15.0",
|
|
12
|
+
"mobx-react": "9.2.1",
|
|
13
|
+
"rxjs": ">=7.8.2"
|
|
14
|
+
},
|
|
15
|
+
"peerDependencies": {
|
|
16
|
+
"react": ">=16.8.0"
|
|
17
|
+
},
|
|
18
|
+
"license": "MIT",
|
|
19
|
+
"keywords": [
|
|
20
|
+
"react",
|
|
21
|
+
"mobx",
|
|
22
|
+
"typescript",
|
|
23
|
+
"hooks"
|
|
24
|
+
],
|
|
25
|
+
"main": "./dist/cjs/index.js",
|
|
26
|
+
"module": "./dist/esm/index.js",
|
|
27
|
+
"es2015": "./dist/esm/index.js",
|
|
28
|
+
"types": "./dist/cjs/index.d.ts",
|
|
29
|
+
"eslintConfig": {
|
|
30
|
+
"extends": [
|
|
31
|
+
"react-app",
|
|
32
|
+
"react-app/jest"
|
|
33
|
+
]
|
|
34
|
+
},
|
|
35
|
+
"exports": {
|
|
36
|
+
".": {
|
|
37
|
+
"types": "./dist/cjs/index.d.ts",
|
|
38
|
+
"node": "./dist/cjs/index.js",
|
|
39
|
+
"require": "./dist/cjs/index.js",
|
|
40
|
+
"es2015": "./dist/esm/index.js",
|
|
41
|
+
"default": "./dist/esm/index.js"
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
"homepage": "https://github.com/zdu-strong/mobx-react-use-autorun#readme",
|
|
45
|
+
"repository": {
|
|
46
|
+
"type": "git",
|
|
47
|
+
"url": "git+https://github.com/zdu-strong/mobx-react-use-autorun.git"
|
|
48
|
+
},
|
|
49
|
+
"files": [
|
|
50
|
+
"lib",
|
|
51
|
+
"dist"
|
|
52
|
+
],
|
|
53
|
+
"bugs": {
|
|
54
|
+
"url": "https://github.com/zdu-strong/mobx-react-use-autorun/issues"
|
|
55
|
+
},
|
|
56
|
+
"publishConfig": {
|
|
57
|
+
"registry": "https://registry.npmjs.org/"
|
|
42
58
|
}
|
|
43
|
-
},
|
|
44
|
-
"homepage": "https://github.com/zdu-strong/mobx-react-use-autorun#readme",
|
|
45
|
-
"repository": {
|
|
46
|
-
"type": "git",
|
|
47
|
-
"url": "git+https://github.com/zdu-strong/mobx-react-use-autorun.git"
|
|
48
|
-
},
|
|
49
|
-
"files": [
|
|
50
|
-
"lib",
|
|
51
|
-
"dist"
|
|
52
|
-
],
|
|
53
|
-
"bugs": {
|
|
54
|
-
"url": "https://github.com/zdu-strong/mobx-react-use-autorun/issues"
|
|
55
|
-
},
|
|
56
|
-
"publishConfig": {
|
|
57
|
-
"registry": "https://registry.npmjs.org/"
|
|
58
|
-
}
|
|
59
59
|
}
|