mobx-react-use-autorun 2.0.2 → 2.0.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.
@@ -1,7 +1,7 @@
1
1
  import { extendObservable, observable, isObservable, remove } from 'mobx';
2
2
  import { useRef } from 'react';
3
3
  export function useAsLocalSource(data) {
4
- var _a, _b;
4
+ var _a, _b, _c, _d;
5
5
  var initStateCallback = function () {
6
6
  if (Array.isArray(data)) {
7
7
  throw new Error('Arrays is unsupported!');
@@ -17,13 +17,26 @@ export function useAsLocalSource(data) {
17
17
  }
18
18
  for (var key in data) {
19
19
  if (isObservable(data[key])) {
20
- state[key] = data[key];
20
+ if (isObservable(state[key])) {
21
+ state[key] = data[key];
22
+ }
23
+ else {
24
+ remove(state, key);
25
+ extendObservable(state, (_a = {}, _a[key] = data[key], _a), (_b = {},
26
+ _b[key] = true,
27
+ _b));
28
+ }
21
29
  }
22
30
  else {
23
- remove(state, key);
24
- extendObservable(state, (_a = {}, _a[key] = data[key], _a), (_b = {},
25
- _b[key] = false,
26
- _b));
31
+ if (isObservable(state[key])) {
32
+ remove(state, key);
33
+ extendObservable(state, (_c = {}, _c[key] = data[key], _c), (_d = {},
34
+ _d[key] = false,
35
+ _d));
36
+ }
37
+ else {
38
+ state[key] = data[key];
39
+ }
27
40
  }
28
41
  }
29
42
  return state;
@@ -1 +1 @@
1
- {"version":3,"file":"useAsLocalSource.js","sourceRoot":"","sources":["../../lib/lib/useAsLocalSource.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAE/B,MAAM,UAAU,gBAAgB,CAAmB,IAAO;;IAEtD,IAAM,iBAAiB,GAAG;QACtB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACrB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;SAC7C;QACD,IAAM,SAAS,GAAG,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAM,CAAC;QAClE,OAAO,SAAS,CAAC;IACrB,CAAC,CAAC;IAEF,IAAM,KAAK,GAAG,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC,OAAO,CAAC;IAElD,KAAK,IAAM,GAAG,IAAI,KAAK,EAAE;QACrB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YAClC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;SACtB;KACJ;IACD,KAAK,IAAM,GAAG,IAAI,IAAI,EAAE;QACpB,IAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAC;YACvB,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;SAC1B;aAAI;YACD,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YACnB,gBAAgB,CAAC,KAAK,YAAI,GAAC,GAAG,IAAG,IAAI,CAAC,GAAG,CAAC;gBACtC,GAAC,GAAG,IAAG,KAAK;oBACd,CAAA;SACL;KACJ;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAAA,CAAC"}
1
+ {"version":3,"file":"useAsLocalSource.js","sourceRoot":"","sources":["../../lib/lib/useAsLocalSource.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAE/B,MAAM,UAAU,gBAAgB,CAAmB,IAAO;;IAEtD,IAAM,iBAAiB,GAAG;QACtB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACrB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;SAC7C;QACD,IAAM,SAAS,GAAG,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAM,CAAC;QAClE,OAAO,SAAS,CAAC;IACrB,CAAC,CAAC;IAEF,IAAM,KAAK,GAAG,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC,OAAO,CAAC;IAElD,KAAK,IAAM,GAAG,IAAI,KAAK,EAAE;QACrB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YAClC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;SACtB;KACJ;IACD,KAAK,IAAM,GAAG,IAAI,IAAI,EAAE;QACpB,IAAI,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE;YACzB,IAAI,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE;gBAC1B,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;aAC1B;iBAAM;gBACH,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBACnB,gBAAgB,CAAC,KAAK,YAAI,GAAC,GAAG,IAAG,IAAI,CAAC,GAAG,CAAC;oBACtC,GAAC,GAAG,IAAG,IAAI;wBACb,CAAA;aACL;SAEJ;aAAM;YACH,IAAI,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE;gBAC1B,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBACnB,gBAAgB,CAAC,KAAK,YAAI,GAAC,GAAG,IAAG,IAAI,CAAC,GAAG,CAAC;oBACtC,GAAC,GAAG,IAAG,KAAK;wBACd,CAAA;aACL;iBAAM;gBACH,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;aAC1B;SACJ;KACJ;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAAA,CAAC"}
@@ -19,13 +19,25 @@ export function useAsLocalSource<T extends object>(data: T): T {
19
19
  }
20
20
  }
21
21
  for (const key in data) {
22
- if(isObservable(data[key])){
23
- state[key] = data[key];
24
- }else{
25
- remove(state, key);
26
- extendObservable(state, { [key]: data[key] }, {
27
- [key]: false
28
- })
22
+ if (isObservable(data[key])) {
23
+ if (isObservable(state[key])) {
24
+ state[key] = data[key];
25
+ } else {
26
+ remove(state, key);
27
+ extendObservable(state, { [key]: data[key] }, {
28
+ [key]: true
29
+ })
30
+ }
31
+
32
+ } else {
33
+ if (isObservable(state[key])) {
34
+ remove(state, key);
35
+ extendObservable(state, { [key]: data[key] }, {
36
+ [key]: false
37
+ })
38
+ } else {
39
+ state[key] = data[key];
40
+ }
29
41
  }
30
42
  }
31
43
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mobx-react-use-autorun",
3
- "version": "2.0.2",
3
+ "version": "2.0.3",
4
4
  "description": "React Hook for mobx",
5
5
  "scripts": {
6
6
  "build": "npm install -g typescript@4.6.3 @types/node@17.0.23 ts-node@10.7.0 cross-env@7.0.3 && cross-env TS_NODE_SKIP_PROJECT=true ts-node bin/mobx_react_build.ts",