@tamagui/use-store 2.0.0-rc.9 → 2.0.0

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.
Files changed (101) hide show
  1. package/dist/cjs/comparators.cjs +18 -14
  2. package/dist/cjs/comparators.native.js +21 -17
  3. package/dist/cjs/comparators.native.js.map +1 -1
  4. package/dist/cjs/configureUseStore.cjs +12 -10
  5. package/dist/cjs/configureUseStore.native.js +12 -10
  6. package/dist/cjs/configureUseStore.native.js.map +1 -1
  7. package/dist/cjs/constants.cjs +17 -15
  8. package/dist/cjs/constants.native.js +17 -15
  9. package/dist/cjs/constants.native.js.map +1 -1
  10. package/dist/cjs/decorators.cjs +14 -11
  11. package/dist/cjs/decorators.native.js +14 -11
  12. package/dist/cjs/decorators.native.js.map +1 -1
  13. package/dist/cjs/helpers.cjs +28 -21
  14. package/dist/cjs/helpers.native.js +29 -23
  15. package/dist/cjs/helpers.native.js.map +1 -1
  16. package/dist/cjs/index.cjs +13 -11
  17. package/dist/cjs/index.native.js +30 -19
  18. package/dist/cjs/index.native.js.map +1 -1
  19. package/dist/cjs/interfaces.cjs +7 -5
  20. package/dist/cjs/interfaces.native.js +7 -5
  21. package/dist/cjs/interfaces.native.js.map +1 -1
  22. package/dist/cjs/observe.cjs +105 -59
  23. package/dist/cjs/observe.native.js +159 -111
  24. package/dist/cjs/observe.native.js.map +1 -1
  25. package/dist/cjs/useStore.cjs +271 -194
  26. package/dist/cjs/useStore.native.js +438 -374
  27. package/dist/cjs/useStore.native.js.map +1 -1
  28. package/dist/cjs/useStoreDebug.cjs +42 -31
  29. package/dist/cjs/useStoreDebug.native.js +42 -36
  30. package/dist/cjs/useStoreDebug.native.js.map +1 -1
  31. package/dist/esm/comparators.mjs +6 -4
  32. package/dist/esm/comparators.mjs.map +1 -1
  33. package/dist/esm/comparators.native.js +9 -7
  34. package/dist/esm/comparators.native.js.map +1 -1
  35. package/dist/esm/constants.mjs +5 -5
  36. package/dist/esm/constants.mjs.map +1 -1
  37. package/dist/esm/constants.native.js +5 -5
  38. package/dist/esm/constants.native.js.map +1 -1
  39. package/dist/esm/decorators.mjs +2 -1
  40. package/dist/esm/decorators.mjs.map +1 -1
  41. package/dist/esm/decorators.native.js +2 -1
  42. package/dist/esm/decorators.native.js.map +1 -1
  43. package/dist/esm/helpers.mjs +16 -11
  44. package/dist/esm/helpers.mjs.map +1 -1
  45. package/dist/esm/helpers.native.js +17 -13
  46. package/dist/esm/helpers.native.js.map +1 -1
  47. package/dist/esm/index.js +8 -12
  48. package/dist/esm/index.js.map +1 -6
  49. package/dist/esm/index.native.js +17 -8
  50. package/dist/esm/index.native.js.map +1 -1
  51. package/dist/esm/observe.mjs +77 -33
  52. package/dist/esm/observe.mjs.map +1 -1
  53. package/dist/esm/observe.native.js +128 -82
  54. package/dist/esm/observe.native.js.map +1 -1
  55. package/dist/esm/useStore.mjs +241 -166
  56. package/dist/esm/useStore.mjs.map +1 -1
  57. package/dist/esm/useStore.native.js +408 -346
  58. package/dist/esm/useStore.native.js.map +1 -1
  59. package/dist/esm/useStoreDebug.mjs +18 -9
  60. package/dist/esm/useStoreDebug.mjs.map +1 -1
  61. package/dist/esm/useStoreDebug.native.js +14 -10
  62. package/dist/esm/useStoreDebug.native.js.map +1 -1
  63. package/package.json +5 -4
  64. package/dist/cjs/comparators.js +0 -33
  65. package/dist/cjs/comparators.js.map +0 -6
  66. package/dist/cjs/configureUseStore.js +0 -25
  67. package/dist/cjs/configureUseStore.js.map +0 -6
  68. package/dist/cjs/constants.js +0 -25
  69. package/dist/cjs/constants.js.map +0 -6
  70. package/dist/cjs/decorators.js +0 -25
  71. package/dist/cjs/decorators.js.map +0 -6
  72. package/dist/cjs/helpers.js +0 -50
  73. package/dist/cjs/helpers.js.map +0 -6
  74. package/dist/cjs/index.js +0 -34
  75. package/dist/cjs/index.js.map +0 -6
  76. package/dist/cjs/interfaces.js +0 -14
  77. package/dist/cjs/interfaces.js.map +0 -6
  78. package/dist/cjs/observe.js +0 -105
  79. package/dist/cjs/observe.js.map +0 -6
  80. package/dist/cjs/useStore.js +0 -353
  81. package/dist/cjs/useStore.js.map +0 -6
  82. package/dist/cjs/useStoreDebug.js +0 -46
  83. package/dist/cjs/useStoreDebug.js.map +0 -6
  84. package/dist/esm/comparators.js +0 -17
  85. package/dist/esm/comparators.js.map +0 -6
  86. package/dist/esm/configureUseStore.js +0 -9
  87. package/dist/esm/configureUseStore.js.map +0 -6
  88. package/dist/esm/constants.js +0 -9
  89. package/dist/esm/constants.js.map +0 -6
  90. package/dist/esm/decorators.js +0 -9
  91. package/dist/esm/decorators.js.map +0 -6
  92. package/dist/esm/helpers.js +0 -34
  93. package/dist/esm/helpers.js.map +0 -6
  94. package/dist/esm/interfaces.js +0 -1
  95. package/dist/esm/interfaces.js.map +0 -6
  96. package/dist/esm/observe.js +0 -84
  97. package/dist/esm/observe.js.map +0 -6
  98. package/dist/esm/useStore.js +0 -340
  99. package/dist/esm/useStore.js.map +0 -6
  100. package/dist/esm/useStoreDebug.js +0 -22
  101. package/dist/esm/useStoreDebug.js.map +0 -6
@@ -6,20 +6,29 @@ import { UNWRAP_PROXY } from "./constants.native.js";
6
6
  export * from "./comparators.native.js";
7
7
  export * from "./decorators.native.js";
8
8
  function _class_call_check(instance, Constructor) {
9
- if (!(instance instanceof Constructor)) throw new TypeError("Cannot call a class as a function");
9
+ if (!(instance instanceof Constructor)) {
10
+ throw new TypeError("Cannot call a class as a function");
11
+ }
10
12
  }
11
13
  function _define_property(obj, key, value) {
12
- return key in obj ? Object.defineProperty(obj, key, {
13
- value,
14
- enumerable: !0,
15
- configurable: !0,
16
- writable: !0
17
- }) : obj[key] = value, obj;
14
+ if (key in obj) {
15
+ Object.defineProperty(obj, key, {
16
+ value,
17
+ enumerable: true,
18
+ configurable: true,
19
+ writable: true
20
+ });
21
+ } else {
22
+ obj[key] = value;
23
+ }
24
+ return obj;
18
25
  }
19
26
  var Store = function Store2(props) {
20
27
  "use strict";
21
28
 
22
- _class_call_check(this, Store2), _define_property(this, "props", void 0), this.props = props;
29
+ _class_call_check(this, Store2);
30
+ _define_property(this, "props", void 0);
31
+ this.props = props;
23
32
  };
24
33
  export { Store, UNWRAP_PROXY, configureUseStore };
25
34
  //# sourceMappingURL=index.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["configureUseStore","UNWRAP_PROXY","_class_call_check","instance","Constructor","TypeError","_define_property","obj","key","value"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,cAAc;AACd,SAASA,iBAAA,QAAyB;AAClC,cAAc;AACd,cAAc;AACd,SAASC,YAAA,QAAoB;AAC7B,cAAc;AACd,cAAc;AAGP,SAAMC,iBAAyCA,CAAAC,QAAA,EAAAC,WAAA;EACpD,MAAAD,QAAmB,YAAcC,WAAA,GAAd,UAAAC,SAAA;AAAA;AACrB,SAAAC,iBAAAC,GAAA,EAAAC,GAAA,EAAAC,KAAA","ignoreList":[]}
1
+ {"version":3,"names":["configureUseStore","UNWRAP_PROXY","_class_call_check","instance","Constructor","TypeError"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,cAAc;AACd,SAASA,iBAAA,QAAyB;AAClC,cAAc;AACd,cAAc;AACd,SAASC,YAAA,QAAoB;AAC7B,cAAc;AACd,cAAc;AAGP,SAAMC,iBAAyCA,CAAAC,QAAA,EAAAC,WAAA;EACpD,MAAAD,QAAmB,YAAcC,WAAA;IAAd,UAAAC,SAAA;EAAe;AACpC","ignoreList":[]}
@@ -3,80 +3,124 @@ import { isEqualSubsetShallow } from "./comparators.mjs";
3
3
  import { UNWRAP_PROXY } from "./constants.mjs";
4
4
  import { trackStoresAccess } from "./useStore.mjs";
5
5
  const logUpdate = process.env.NODE_ENV === "development" ? (fn, stores, last, next) => {
6
- const getStoreLogName = store => `${(store[UNWRAP_PROXY] ?? store).constructor.name}${store.props?.id ? `:${store.props.id}` : ""}`,
7
- storeNames = stores.map(getStoreLogName).join(", "),
8
- name = `\u{1F311} \u25B6\uFE0F %c${fn.name} ${storeNames} () ${last} => ${next}`;
9
- console.groupCollapsed(name, "color: tomato;"), console.groupCollapsed("trace >"), console.trace(), console.groupEnd(), console.info(" next", next), console.groupEnd();
6
+ const getStoreLogName = store => {
7
+ const str = store[UNWRAP_PROXY] ?? store;
8
+ return `${str.constructor.name}${store.props?.id ? `:${store.props.id}` : ""}`;
9
+ };
10
+ const storeNames = stores.map(getStoreLogName).join(", ");
11
+ const name = `\u{1F311} \u25B6\uFE0F %c${fn.name} ${storeNames} () ${last} => ${next}`;
12
+ console.groupCollapsed(name, "color: tomato;");
13
+ console.groupCollapsed("trace >");
14
+ console.trace();
15
+ console.groupEnd();
16
+ console.info(" next", next);
17
+ console.groupEnd();
10
18
  } : null;
11
19
  function observe(fn) {
12
- let prev = getObserverValueAndStoresAccessed(fn),
13
- disposeValue = null;
20
+ let prev = getObserverValueAndStoresAccessed(fn);
21
+ let disposeValue = null;
14
22
  const subscribe = () => {
15
23
  const stores = [...prev.storeInfos];
16
24
  return subscribeToStores(stores, () => {
17
25
  disposeValue?.();
18
26
  const next = getObserverValueAndStoresAccessed(fn);
19
- if (typeof next.value == "function") {
20
- disposeValue = next.value, process.env.NODE_ENV === "development" && logUpdate(fn, [...next.storeInfos], "(fn)", "(fn)");
27
+ if (typeof next.value === "function") {
28
+ disposeValue = next.value;
29
+ if (process.env.NODE_ENV === "development") {
30
+ logUpdate(fn, [...next.storeInfos], "(fn)", "(fn)");
31
+ }
32
+ return;
33
+ }
34
+ if (isEqualSubsetShallow(prev.storeInfos, next.storeInfos) && isEqualSubsetShallow(prev.value, next.value)) {
21
35
  return;
22
36
  }
23
- isEqualSubsetShallow(prev.storeInfos, next.storeInfos) && isEqualSubsetShallow(prev.value, next.value) || (process.env.NODE_ENV === "development" && logUpdate(fn, [...next.storeInfos], prev.value, next.value), prev = next, dispose(), dispose = subscribe());
37
+ if (process.env.NODE_ENV === "development") {
38
+ logUpdate(fn, [...next.storeInfos], prev.value, next.value);
39
+ }
40
+ prev = next;
41
+ dispose();
42
+ dispose = subscribe();
24
43
  });
25
44
  };
26
45
  let dispose = subscribe();
27
46
  return {
28
47
  dispose: () => {
29
- dispose(), disposeValue?.();
48
+ dispose();
49
+ disposeValue?.();
30
50
  },
31
51
  getValue: () => prev.value
32
52
  };
33
53
  }
34
54
  function useObserve(fn) {
35
- const [state, setState] = React.useState(() => getObserverValueAndStoresAccessed(fn));
36
- return React.useEffect(() => {
55
+ const [state, setState] = React.useState(() => {
56
+ return getObserverValueAndStoresAccessed(fn);
57
+ });
58
+ React.useEffect(() => {
37
59
  let dispose;
38
60
  const unsub = subscribeToStores([...state.storeInfos], () => {
39
61
  dispose?.();
40
- const next = getObserverValueAndStoresAccessed(fn),
41
- nextStoreInfos = [...next.storeInfos],
42
- prevStoreInfos = [...state.storeInfos];
43
- if (typeof next.value == "function") {
44
- process.env.NODE_ENV === "development" && logUpdate(fn, nextStoreInfos, "(fn)", "(fn)"), dispose = next.value;
62
+ const next = getObserverValueAndStoresAccessed(fn);
63
+ const nextStoreInfos = [...next.storeInfos];
64
+ const prevStoreInfos = [...state.storeInfos];
65
+ if (typeof next.value === "function") {
66
+ if (process.env.NODE_ENV === "development") {
67
+ logUpdate(fn, nextStoreInfos, "(fn)", "(fn)");
68
+ }
69
+ dispose = next.value;
45
70
  return;
46
71
  }
47
- setState(prev => isEqualSubsetShallow(prevStoreInfos, nextStoreInfos) && isEqualSubsetShallow(prev.value, next.value) ? prev : (process.env.NODE_ENV === "development" && logUpdate(fn, nextStoreInfos, prev.value, next.value), next));
72
+ setState(prev => {
73
+ if (isEqualSubsetShallow(prevStoreInfos, nextStoreInfos) && isEqualSubsetShallow(prev.value, next.value)) {
74
+ return prev;
75
+ }
76
+ if (process.env.NODE_ENV === "development") {
77
+ logUpdate(fn, nextStoreInfos, prev.value, next.value);
78
+ }
79
+ return next;
80
+ });
48
81
  });
49
82
  return () => {
50
- unsub(), dispose?.();
83
+ unsub();
84
+ dispose?.();
51
85
  };
52
- }, [[...state.storeInfos].map(i => i.uid).join(",")]), state.value;
86
+ }, [[...state.storeInfos].map(i => i.uid).join(",")]);
87
+ return state.value;
53
88
  }
54
89
  function getObserverValueAndStoresAccessed(selector) {
55
- const storeInfos = /* @__PURE__ */new Set(),
56
- dispose = trackStoresAccess(storeInfo => {
57
- storeInfos.add(storeInfo);
58
- }),
59
- value = selector();
60
- return dispose(), {
90
+ const storeInfos = /* @__PURE__ */new Set();
91
+ const dispose = trackStoresAccess(storeInfo => {
92
+ storeInfos.add(storeInfo);
93
+ });
94
+ const value = selector();
95
+ dispose();
96
+ return {
61
97
  value,
62
98
  storeInfos
63
99
  };
64
100
  }
65
101
  function subscribeToStores(storeInfos, onUpdate) {
66
102
  const disposes = [];
67
- let isUpdating = !1;
103
+ let isUpdating = false;
68
104
  const onUpdateDebouncedWithoutTracking = () => {
69
- isUpdating || (isUpdating = !0, queueMicrotask(() => {
105
+ if (isUpdating) return;
106
+ isUpdating = true;
107
+ queueMicrotask(() => {
70
108
  try {
71
- for (const storeInfo of storeInfos) storeInfo.disableTracking = !0;
109
+ for (const storeInfo of storeInfos) {
110
+ storeInfo.disableTracking = true;
111
+ }
72
112
  onUpdate();
73
113
  } finally {
74
- isUpdating = !1;
75
- for (const storeInfo of storeInfos) storeInfo.disableTracking = !1;
114
+ isUpdating = false;
115
+ for (const storeInfo of storeInfos) {
116
+ storeInfo.disableTracking = false;
117
+ }
76
118
  }
77
- }));
119
+ });
78
120
  };
79
- for (const storeInfo of storeInfos) disposes.push(storeInfo.subscribe(onUpdateDebouncedWithoutTracking));
121
+ for (const storeInfo of storeInfos) {
122
+ disposes.push(storeInfo.subscribe(onUpdateDebouncedWithoutTracking));
123
+ }
80
124
  return () => {
81
125
  disposes.forEach(x => x());
82
126
  };
@@ -1 +1 @@
1
- {"version":3,"names":["React","isEqualSubsetShallow","UNWRAP_PROXY","trackStoresAccess","logUpdate","process","env","NODE_ENV","fn","stores","last","next","getStoreLogName","store","constructor","name","props","id","storeNames","map","join","console","groupCollapsed","trace","groupEnd","info","observe","prev","getObserverValueAndStoresAccessed","disposeValue","subscribe","storeInfos","subscribeToStores","value","dispose","getValue","useObserve","state","setState","useState","useEffect","unsub","nextStoreInfos","prevStoreInfos","i","uid","selector","Set","storeInfo","add","onUpdate","disposes","isUpdating","onUpdateDebouncedWithoutTracking","queueMicrotask","disableTracking","push","forEach","x"],"sources":["../../src/observe.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","isEqualSubsetShallow","UNWRAP_PROXY","trackStoresAccess","logUpdate","process","env","NODE_ENV","fn","stores","last","next","getStoreLogName","store","str","constructor","name","props","id","storeNames","map","join","console","groupCollapsed","trace","groupEnd","info","observe","prev","getObserverValueAndStoresAccessed","disposeValue","subscribe","storeInfos","subscribeToStores","value","dispose","getValue","useObserve","state","setState","useState","useEffect","unsub","nextStoreInfos","prevStoreInfos","i","uid","selector","Set","storeInfo","add","onUpdate","disposes","isUpdating","onUpdateDebouncedWithoutTracking","queueMicrotask","disableTracking","push","forEach","x"],"sources":["../../src/observe.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -4,34 +4,51 @@ import { UNWRAP_PROXY } from "./constants.native.js";
4
4
  import { trackStoresAccess } from "./useStore.native.js";
5
5
  var logUpdate = process.env.NODE_ENV === "development" ? function (fn, stores, last, next) {
6
6
  var getStoreLogName = function (store) {
7
- var _store_props,
8
- _store_UNWRAP_PROXY,
9
- str = (_store_UNWRAP_PROXY = store[UNWRAP_PROXY]) !== null && _store_UNWRAP_PROXY !== void 0 ? _store_UNWRAP_PROXY : store;
10
- return `${str.constructor.name}${!((_store_props = store.props) === null || _store_props === void 0) && _store_props.id ? `:${store.props.id}` : ""}`;
11
- },
12
- storeNames = stores.map(getStoreLogName).join(", "),
13
- name = `\u{1F311} \u25B6\uFE0F %c${fn.name} ${storeNames} () ${last} => ${next}`;
14
- console.groupCollapsed(name, "color: tomato;"), console.groupCollapsed("trace >"), console.trace(), console.groupEnd(), console.info(" next", next), console.groupEnd();
7
+ var _store_props;
8
+ var _store_UNWRAP_PROXY;
9
+ var str = (_store_UNWRAP_PROXY = store[UNWRAP_PROXY]) !== null && _store_UNWRAP_PROXY !== void 0 ? _store_UNWRAP_PROXY : store;
10
+ return `${str.constructor.name}${((_store_props = store.props) === null || _store_props === void 0 ? void 0 : _store_props.id) ? `:${store.props.id}` : ""}`;
11
+ };
12
+ var storeNames = stores.map(getStoreLogName).join(", ");
13
+ var name = `\u{1F311} \u25B6\uFE0F %c${fn.name} ${storeNames} () ${last} => ${next}`;
14
+ console.groupCollapsed(name, "color: tomato;");
15
+ console.groupCollapsed("trace >");
16
+ console.trace();
17
+ console.groupEnd();
18
+ console.info(" next", next);
19
+ console.groupEnd();
15
20
  } : null;
16
21
  function observe(fn) {
17
- var prev = getObserverValueAndStoresAccessed(fn),
18
- disposeValue = null,
19
- subscribe = function () {
20
- var stores = [...prev.storeInfos];
21
- return subscribeToStores(stores, function () {
22
- disposeValue?.();
23
- var next = getObserverValueAndStoresAccessed(fn);
24
- if (typeof next.value == "function") {
25
- disposeValue = next.value, process.env.NODE_ENV === "development" && logUpdate(fn, [...next.storeInfos], "(fn)", "(fn)");
26
- return;
22
+ var prev = getObserverValueAndStoresAccessed(fn);
23
+ var disposeValue = null;
24
+ var subscribe = function () {
25
+ var stores = [...prev.storeInfos];
26
+ return subscribeToStores(stores, function () {
27
+ disposeValue === null || disposeValue === void 0 ? void 0 : disposeValue();
28
+ var next = getObserverValueAndStoresAccessed(fn);
29
+ if (typeof next.value === "function") {
30
+ disposeValue = next.value;
31
+ if (process.env.NODE_ENV === "development") {
32
+ logUpdate(fn, [...next.storeInfos], "(fn)", "(fn)");
27
33
  }
28
- isEqualSubsetShallow(prev.storeInfos, next.storeInfos) && isEqualSubsetShallow(prev.value, next.value) || (process.env.NODE_ENV === "development" && logUpdate(fn, [...next.storeInfos], prev.value, next.value), prev = next, dispose(), dispose = subscribe());
29
- });
30
- },
31
- dispose = subscribe();
34
+ return;
35
+ }
36
+ if (isEqualSubsetShallow(prev.storeInfos, next.storeInfos) && isEqualSubsetShallow(prev.value, next.value)) {
37
+ return;
38
+ }
39
+ if (process.env.NODE_ENV === "development") {
40
+ logUpdate(fn, [...next.storeInfos], prev.value, next.value);
41
+ }
42
+ prev = next;
43
+ dispose();
44
+ dispose = subscribe();
45
+ });
46
+ };
47
+ var dispose = subscribe();
32
48
  return {
33
49
  dispose: function () {
34
- dispose(), disposeValue?.();
50
+ dispose();
51
+ disposeValue === null || disposeValue === void 0 ? void 0 : disposeValue();
35
52
  },
36
53
  getValue: function () {
37
54
  return prev.value;
@@ -42,100 +59,129 @@ function useObserve(fn) {
42
59
  var [state, setState] = React.useState(function () {
43
60
  return getObserverValueAndStoresAccessed(fn);
44
61
  });
45
- return React.useEffect(function () {
46
- var dispose,
47
- unsub = subscribeToStores([...state.storeInfos], function () {
48
- dispose?.();
49
- var next = getObserverValueAndStoresAccessed(fn),
50
- nextStoreInfos = [...next.storeInfos],
51
- prevStoreInfos = [...state.storeInfos];
52
- if (typeof next.value == "function") {
53
- process.env.NODE_ENV === "development" && logUpdate(fn, nextStoreInfos, "(fn)", "(fn)"), dispose = next.value;
54
- return;
62
+ React.useEffect(function () {
63
+ var dispose;
64
+ var unsub = subscribeToStores([...state.storeInfos], function () {
65
+ dispose === null || dispose === void 0 ? void 0 : dispose();
66
+ var next = getObserverValueAndStoresAccessed(fn);
67
+ var nextStoreInfos = [...next.storeInfos];
68
+ var prevStoreInfos = [...state.storeInfos];
69
+ if (typeof next.value === "function") {
70
+ if (process.env.NODE_ENV === "development") {
71
+ logUpdate(fn, nextStoreInfos, "(fn)", "(fn)");
72
+ }
73
+ dispose = next.value;
74
+ return;
75
+ }
76
+ setState(function (prev) {
77
+ if (isEqualSubsetShallow(prevStoreInfos, nextStoreInfos) && isEqualSubsetShallow(prev.value, next.value)) {
78
+ return prev;
79
+ }
80
+ if (process.env.NODE_ENV === "development") {
81
+ logUpdate(fn, nextStoreInfos, prev.value, next.value);
55
82
  }
56
- setState(function (prev) {
57
- return isEqualSubsetShallow(prevStoreInfos, nextStoreInfos) && isEqualSubsetShallow(prev.value, next.value) ? prev : (process.env.NODE_ENV === "development" && logUpdate(fn, nextStoreInfos, prev.value, next.value), next);
58
- });
83
+ return next;
59
84
  });
85
+ });
60
86
  return function () {
61
- unsub(), dispose?.();
87
+ unsub();
88
+ dispose === null || dispose === void 0 ? void 0 : dispose();
62
89
  };
63
90
  }, [[...state.storeInfos].map(function (i) {
64
91
  return i.uid;
65
- }).join(",")]), state.value;
92
+ }).join(",")]);
93
+ return state.value;
66
94
  }
67
95
  function getObserverValueAndStoresAccessed(selector) {
68
- var storeInfos = /* @__PURE__ */new Set(),
69
- dispose = trackStoresAccess(function (storeInfo) {
70
- storeInfos.add(storeInfo);
71
- }),
72
- value = selector();
73
- return dispose(), {
96
+ var storeInfos = /* @__PURE__ */new Set();
97
+ var dispose = trackStoresAccess(function (storeInfo) {
98
+ storeInfos.add(storeInfo);
99
+ });
100
+ var value = selector();
101
+ dispose();
102
+ return {
74
103
  value,
75
104
  storeInfos
76
105
  };
77
106
  }
78
107
  function subscribeToStores(storeInfos, onUpdate) {
79
- var disposes = [],
80
- isUpdating = !1,
81
- onUpdateDebouncedWithoutTracking = function () {
82
- isUpdating || (isUpdating = !0, queueMicrotask(function () {
108
+ var disposes = [];
109
+ var isUpdating = false;
110
+ var onUpdateDebouncedWithoutTracking = function () {
111
+ if (isUpdating) return;
112
+ isUpdating = true;
113
+ queueMicrotask(function () {
114
+ try {
115
+ var _iteratorNormalCompletion2 = true,
116
+ _didIteratorError2 = false,
117
+ _iteratorError2 = void 0;
83
118
  try {
84
- var _iteratorNormalCompletion2 = !0,
85
- _didIteratorError2 = !1,
86
- _iteratorError2 = void 0;
119
+ for (var _iterator2 = storeInfos[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
120
+ var storeInfo2 = _step2.value;
121
+ storeInfo2.disableTracking = true;
122
+ }
123
+ } catch (err) {
124
+ _didIteratorError2 = true;
125
+ _iteratorError2 = err;
126
+ } finally {
87
127
  try {
88
- for (var _iterator2 = storeInfos[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = !0) {
89
- var storeInfo2 = _step2.value;
90
- storeInfo2.disableTracking = !0;
128
+ if (!_iteratorNormalCompletion2 && _iterator2.return != null) {
129
+ _iterator2.return();
91
130
  }
92
- } catch (err) {
93
- _didIteratorError2 = !0, _iteratorError2 = err;
94
131
  } finally {
95
- try {
96
- !_iteratorNormalCompletion2 && _iterator2.return != null && _iterator2.return();
97
- } finally {
98
- if (_didIteratorError2) throw _iteratorError2;
132
+ if (_didIteratorError2) {
133
+ throw _iteratorError2;
99
134
  }
100
135
  }
101
- onUpdate();
136
+ }
137
+ onUpdate();
138
+ } finally {
139
+ isUpdating = false;
140
+ var _iteratorNormalCompletion1 = true,
141
+ _didIteratorError1 = false,
142
+ _iteratorError1 = void 0;
143
+ try {
144
+ for (var _iterator1 = storeInfos[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
145
+ var storeInfo1 = _step1.value;
146
+ storeInfo1.disableTracking = false;
147
+ }
148
+ } catch (err) {
149
+ _didIteratorError1 = true;
150
+ _iteratorError1 = err;
102
151
  } finally {
103
- isUpdating = !1;
104
- var _iteratorNormalCompletion1 = !0,
105
- _didIteratorError1 = !1,
106
- _iteratorError1 = void 0;
107
152
  try {
108
- for (var _iterator1 = storeInfos[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = !0) {
109
- var storeInfo1 = _step1.value;
110
- storeInfo1.disableTracking = !1;
153
+ if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
154
+ _iterator1.return();
111
155
  }
112
- } catch (err) {
113
- _didIteratorError1 = !0, _iteratorError1 = err;
114
156
  } finally {
115
- try {
116
- !_iteratorNormalCompletion1 && _iterator1.return != null && _iterator1.return();
117
- } finally {
118
- if (_didIteratorError1) throw _iteratorError1;
157
+ if (_didIteratorError1) {
158
+ throw _iteratorError1;
119
159
  }
120
160
  }
121
161
  }
122
- }));
123
- },
124
- _iteratorNormalCompletion = !0,
125
- _didIteratorError = !1,
162
+ }
163
+ });
164
+ };
165
+ var _iteratorNormalCompletion = true,
166
+ _didIteratorError = false,
126
167
  _iteratorError = void 0;
127
168
  try {
128
- for (var _iterator = storeInfos[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
169
+ for (var _iterator = storeInfos[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
129
170
  var storeInfo = _step.value;
130
171
  disposes.push(storeInfo.subscribe(onUpdateDebouncedWithoutTracking));
131
172
  }
132
173
  } catch (err) {
133
- _didIteratorError = !0, _iteratorError = err;
174
+ _didIteratorError = true;
175
+ _iteratorError = err;
134
176
  } finally {
135
177
  try {
136
- !_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
178
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
179
+ _iterator.return();
180
+ }
137
181
  } finally {
138
- if (_didIteratorError) throw _iteratorError;
182
+ if (_didIteratorError) {
183
+ throw _iteratorError;
184
+ }
139
185
  }
140
186
  }
141
187
  return function () {
@@ -1 +1 @@
1
- {"version":3,"names":["React","isEqualSubsetShallow","UNWRAP_PROXY","trackStoresAccess","logUpdate","process","env","NODE_ENV","fn","stores","last","next","getStoreLogName","store","_store_props","_store_UNWRAP_PROXY","str","constructor","name","props","id","storeNames","map","join","console","groupCollapsed","trace","groupEnd","info","observe","prev","getObserverValueAndStoresAccessed","disposeValue","subscribe","storeInfos","subscribeToStores","value","dispose","getValue","useObserve","state","setState","useState","useEffect","unsub","nextStoreInfos","prevStoreInfos","i","uid","selector","Set","storeInfo","add"],"sources":["../../src/observe.tsx"],"sourcesContent":[null],"mappings":"AAAA,OAAOA,KAAA,MAAW;AAElB,SAASC,oBAAA,QAA4B;AACrC,SAASC,YAAA,QAAoB;AAE7B,SAASC,iBAAA,QAAyB;AAElC,IAAAC,SAAM,GAAAC,OACJ,CAAAC,GAAQ,CAAAC,QAAI,kBAAa,aACXC,EAAA,EAAAC,MAAe,EAAWC,IAAA,EAAAC,IAAc;EAChD,IAAAC,eAAM,YAAAA,CAAmBC,KAEhB;MAIT,IAAAC,YAAQ;QAAAC,mBAAqB;QAAAC,GAAA,GAAgB,CAC7CD,mBAAQ,GAAAF,KAAe,CAAAX,YACvB,OAAQ,IAAM,IACda,mBACA,UAAQ,CAAK,GAAAA,mBACb,GAAQF,KAAA;MAEV,UAAAG,GAAA,CAAAC,WAAA,CAAAC,IAAA,MAAAJ,YAAA,GAAAD,KAAA,CAAAM,KAAA,cAAAL,YAAA,gBAAAA,YAAA,CAAAM,EAAA,OAAAP,KAAA,CAAAM,KAAA,CAAAC,EAAA;IAEC;IAAAC,UAAS,GAAQZ,MAAe,CAAAa,GAAA,CAAAV,eAAA,EAAAW,IAAA;IAAAL,IAAA,gCAAAV,EAAA,CAAAU,IAAA,IAAAG,UAAA,OAAAX,IAAA,OAAAC,IAAA;EACrCa,OAAI,CAAAC,cAAO,CAAAP,IAAA,kBAAkC,GAAEM,OAC3C,CAAAC,cAAgC,aAAAD,OAAA,CAAAE,KAAA,IAAAF,OAAA,CAAAG,QAAA,IAAAH,OAAA,CAAAI,IAAA,WAAAjB,IAAA,GAAAa,OAAA,CAAAG,QAAA;AAEpC,QAAM;AACJ,SAAAE,OAAMA,CAAArB,EAAS,EAAC;EAChB,IAAAsB,IAAA,GAAOC,iCAAgC,CAAAvB,EAAA;IAAAwB,YAAA;IAAAC,SAAA,YAAAA,CAAA;MACrC,IAAAxB,MAAA,IACA,GAAAqB,IAAM,CAAAI,UAAO,CAEb;MACE,OAAAC,iBAAoB,CAAA1B,MAChB,cAAY;QAGhBuB,YAAA;QACF,IAAArB,IAAA,GAAAoB,iCAAA,CAAAvB,EAAA;QAEE,WAAAG,IAAA,CAAAyB,KAAqB,cAAK;UAW7BJ,YAAA,GAAArB,IAAA,CAAAyB,KAAA,EAAA/B,OAAA,CAAAC,GAAA,CAAAC,QAAA,sBAAAH,SAAA,CAAAI,EAAA,GACH,GAAAG,IAAA,CAAAuB,UAAA,CAEI,QAAU,SAAU;UAExB;QACE;QACEjC,oBACA,CAAA6B,IAAA,CAAeI,UAAA,EAAAvB,IAAA,CAAAuB,UAAA,KAAAjC,oBAAA,CAAA6B,IAAA,CAAAM,KAAA,EAAAzB,IAAA,CAAAyB,KAAA,MAAA/B,OAAA,CAAAC,GAAA,CAAAC,QAAA,sBAAAH,SAAA,CAAAI,EAAA,GACjB,GAAAG,IAAA,CAAAuB,UAAA,CACA,EAAAJ,IAAA,CAAUM,KAAA,EAAMzB,IAAK,CAAAyB,KAAA,GAAAN,IAAA,GAAAnB,IAAA,EAAA0B,OAAA,IAAAA,OAAA,GAAAJ,SAAA;MACvB;IACF;IAAAI,OAAA,GAAAJ,SAAA;EAEO,OAAS;IACdI,OAAO,WAAAA,CAAA,EAAe;MAItBA,OAAA,EAAM,EAAAL,YAAU,GAAM;IACpB;IACAM,QAAM,WAAAA,CAAA,EAAQ;MACZ,OAAAR,IAAU,CAAAM,KAAA;IACV;EAMA;AACE;AAIA,SAAAG,WAAA/B,EAAA;EAAA,IACF,CAAAgC,KAAA,EAAAC,QAAA,IAAAzC,KAAA,CAAA0C,QAAA;IAEA,OAAAX,iCAEI,CAAAvB,EAAqB;EASxB,EACH;EAEA,OAAAR,KAAO,CAAA2C,SAAM;IACX,IAAAN,OACA;MAAAO,KAAA,GAAUT,iBAAA,EACZ,GAAAK,KAAA,CAAAN,UAAA,CACC,EAAE,YAAS;QAGhBG,OAAA;QAEA,IAAS1B,IAAA,GAAAoB,iCAAqC,CAAAvB,EAG5C;UAAAqC,cAAA,IACM,GAAAlC,IAAA,CAAAuB,UAAa,CAEjB;UAAAY,cAAe,IAEX,GAAAN,KAAQ,CAAAN,UAAS,CACvB;QAEE,WAAAvB,IAAA,CAAAyB,KAAA;UACA/B,OAAA,CAAAC,GAAA,CAAAC,QAAA,sBAAAH,SAAA,CAAAI,EAAA,EAAAqC,cAAA,mBAAAR,OAAA,GAAA1B,IAAA,CAAAyB,KAAA;UACF;QACF;QAEAK,QAAS,WAAAX,IAAkB;UACnB,OAAA7B,oBAAwB,CAAA6C,cAAA,EAAAD,cAAA,KAAA5C,oBAAA,CAAA6B,IAAA,CAAAM,KAAA,EAAAzB,IAAA,CAAAyB,KAAA,IAAAN,IAAA,IAAAzB,OAAA,CAAAC,GAAA,CAAAC,QAAA,sBAAAH,SAAA,CAAAI,EAAA,EAAAqC,cAAA,EAAAf,IAAA,CAAAM,KAAA,EAAAzB,IAAA,CAAAyB,KAAA,GAAAzB,IAAA;QAG1B;MACJ;IACM,mBACJ;MAEEiC,KAAI,IAAAP,OAAA;IACF;EACE,IAEF,CACF,GAAAG,KAAA,CAAAN,UAAE,CACA,CAAAZ,GAAA,WAAAyB,CAAA,EAAa;IACb,OAAAA,CAAA,CAAAC,GAAA;EACE,GAAAzB,IAAA,MAA4B,GAEhCiB,KAAA,CAAAJ,KAAA;AAAA;AACD,SACHL,kCAAAkB,QAAA;EAEA,IAAAf,UAAW,kBAAa,IAAAgB,GAAA;IAAAb,OAAA,GAAAlC,iBAAA,WAAAgD,SAAA;MACtBjB,UAAS,CAAAkB,GAAK,CAAAD,SAAU;IAE1B;IAAAf,KAAO,GAAAa,QAAM;EACX,OAAAZ,OAAS;IACXD,KAAA;IACFF","ignoreList":[]}
1
+ {"version":3,"names":["React","isEqualSubsetShallow","UNWRAP_PROXY","trackStoresAccess","logUpdate","process","env","NODE_ENV","fn","stores","last","next","getStoreLogName","store","_store_props","_store_UNWRAP_PROXY","str","constructor","name","props","id","storeNames","map","join","console","groupCollapsed","trace","groupEnd","info","observe","prev","getObserverValueAndStoresAccessed","disposeValue","subscribe","storeInfos","subscribeToStores","value","dispose","getValue","useObserve","state","setState","useState","useEffect","unsub","nextStoreInfos","prevStoreInfos","i","uid","selector","Set","storeInfo","add","onUpdate","disposes","isUpdating","onUpdateDebouncedWithoutTracking"],"sources":["../../src/observe.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}