@legendapp/state 2.2.0-next.8 → 2.2.0-next.80

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 (321) hide show
  1. package/README.md +4 -2
  2. package/babel.js.map +1 -1
  3. package/config/enable$get.d.ts +8 -0
  4. package/config/enable$get.js +24 -0
  5. package/config/enable$get.js.map +1 -0
  6. package/config/enable$get.mjs +21 -0
  7. package/config/enable$get.mjs.map +1 -0
  8. package/config/enableReactComponents.js.map +1 -1
  9. package/config/enableReactComponents.mjs.map +1 -1
  10. package/config/enableReactNativeComponents.js.map +1 -1
  11. package/config/enableReactNativeComponents.mjs.map +1 -1
  12. package/config/enableReactTracking.d.ts +0 -9
  13. package/config/enableReactTracking.js +34 -32
  14. package/config/enableReactTracking.js.map +1 -1
  15. package/config/enableReactTracking.mjs +35 -33
  16. package/config/enableReactTracking.mjs.map +1 -1
  17. package/config/enableReactUse.d.ts +1 -1
  18. package/config/enableReactUse.js +9 -1
  19. package/config/enableReactUse.js.map +1 -1
  20. package/config/enableReactUse.mjs +9 -1
  21. package/config/enableReactUse.mjs.map +1 -1
  22. package/config/enable_peek.d.ts +8 -0
  23. package/config/{enableDirectPeek.js → enable_peek.js} +6 -3
  24. package/config/enable_peek.js.map +1 -0
  25. package/config/{enableDirectPeek.mjs → enable_peek.mjs} +5 -3
  26. package/config/enable_peek.mjs.map +1 -0
  27. package/helpers/fetch.d.ts +4 -3
  28. package/helpers/fetch.js.map +1 -1
  29. package/helpers/fetch.mjs.map +1 -1
  30. package/helpers/pageHash.js.map +1 -1
  31. package/helpers/pageHash.mjs.map +1 -1
  32. package/helpers/pageHashParams.js.map +1 -1
  33. package/helpers/pageHashParams.mjs.map +1 -1
  34. package/helpers/time.d.ts +2 -2
  35. package/helpers/time.js.map +1 -1
  36. package/helpers/time.mjs.map +1 -1
  37. package/history.js +2 -2
  38. package/history.js.map +1 -1
  39. package/history.mjs +3 -3
  40. package/history.mjs.map +1 -1
  41. package/index.d.ts +29 -9
  42. package/index.js +964 -671
  43. package/index.js.map +1 -1
  44. package/index.mjs +959 -668
  45. package/index.mjs.map +1 -1
  46. package/package.json +37 -25
  47. package/persist-plugins/async-storage.d.ts +4 -3
  48. package/persist-plugins/async-storage.js +8 -7
  49. package/persist-plugins/async-storage.js.map +1 -1
  50. package/persist-plugins/async-storage.mjs +9 -8
  51. package/persist-plugins/async-storage.mjs.map +1 -1
  52. package/persist-plugins/fetch.d.ts +1 -1
  53. package/persist-plugins/fetch.js.map +1 -1
  54. package/persist-plugins/fetch.mjs.map +1 -1
  55. package/persist-plugins/firebase.d.ts +2 -2
  56. package/persist-plugins/firebase.js +12 -11
  57. package/persist-plugins/firebase.js.map +1 -1
  58. package/persist-plugins/firebase.mjs +13 -12
  59. package/persist-plugins/firebase.mjs.map +1 -1
  60. package/persist-plugins/indexeddb.d.ts +11 -10
  61. package/persist-plugins/indexeddb.js +2 -2
  62. package/persist-plugins/indexeddb.js.map +1 -1
  63. package/persist-plugins/indexeddb.mjs +2 -2
  64. package/persist-plugins/indexeddb.mjs.map +1 -1
  65. package/persist-plugins/local-storage.d.ts +4 -4
  66. package/persist-plugins/local-storage.js +19 -7
  67. package/persist-plugins/local-storage.js.map +1 -1
  68. package/persist-plugins/local-storage.mjs +20 -9
  69. package/persist-plugins/local-storage.mjs.map +1 -1
  70. package/persist-plugins/mmkv.d.ts +9 -8
  71. package/persist-plugins/mmkv.js +5 -4
  72. package/persist-plugins/mmkv.js.map +1 -1
  73. package/persist-plugins/mmkv.mjs +6 -5
  74. package/persist-plugins/mmkv.mjs.map +1 -1
  75. package/persist-plugins/query.d.ts +1 -1
  76. package/persist-plugins/query.js.map +1 -1
  77. package/persist-plugins/query.mjs.map +1 -1
  78. package/persist.d.ts +2 -14
  79. package/persist.js +1270 -269
  80. package/persist.js.map +1 -1
  81. package/persist.mjs +1270 -270
  82. package/persist.mjs.map +1 -1
  83. package/react-hooks/createObservableHook.js +1 -1
  84. package/react-hooks/createObservableHook.js.map +1 -1
  85. package/react-hooks/createObservableHook.mjs +1 -1
  86. package/react-hooks/createObservableHook.mjs.map +1 -1
  87. package/react-hooks/useFetch.d.ts +4 -3
  88. package/react-hooks/useFetch.js.map +1 -1
  89. package/react-hooks/useFetch.mjs.map +1 -1
  90. package/react-hooks/useHover.js.map +1 -1
  91. package/react-hooks/useHover.mjs.map +1 -1
  92. package/react-hooks/useMeasure.js.map +1 -1
  93. package/react-hooks/useMeasure.mjs.map +1 -1
  94. package/react-hooks/useObservableNextRouter.js.map +1 -1
  95. package/react-hooks/useObservableNextRouter.mjs.map +1 -1
  96. package/react-hooks/useObservableQuery.js.map +1 -1
  97. package/react-hooks/useObservableQuery.mjs.map +1 -1
  98. package/react-hooks/usePersistedObservable.d.ts +6 -3
  99. package/react-hooks/usePersistedObservable.js +5 -2
  100. package/react-hooks/usePersistedObservable.js.map +1 -1
  101. package/react-hooks/usePersistedObservable.mjs +5 -2
  102. package/react-hooks/usePersistedObservable.mjs.map +1 -1
  103. package/react.js +73 -93
  104. package/react.js.map +1 -1
  105. package/react.mjs +73 -93
  106. package/react.mjs.map +1 -1
  107. package/src/ObservableObject.ts +1217 -0
  108. package/src/ObservablePrimitive.ts +62 -0
  109. package/src/babel/index.ts +70 -0
  110. package/src/batching.ts +378 -0
  111. package/src/computed.ts +18 -0
  112. package/src/config/enable$get.ts +30 -0
  113. package/src/config/enableReactComponents.ts +26 -0
  114. package/src/config/enableReactNativeComponents.ts +102 -0
  115. package/src/config/enableReactTracking.ts +62 -0
  116. package/src/config/enableReactUse.ts +32 -0
  117. package/src/config/enable_peek.ts +31 -0
  118. package/src/config.ts +47 -0
  119. package/src/createObservable.ts +46 -0
  120. package/src/event.ts +26 -0
  121. package/src/globals.ts +234 -0
  122. package/src/helpers/fetch.ts +26 -0
  123. package/src/helpers/pageHash.ts +41 -0
  124. package/src/helpers/pageHashParams.ts +55 -0
  125. package/src/helpers/time.ts +30 -0
  126. package/src/helpers.ts +224 -0
  127. package/src/history/trackHistory.ts +29 -0
  128. package/src/history/undoRedo.ts +111 -0
  129. package/src/is.ts +63 -0
  130. package/src/linked.ts +6 -0
  131. package/src/observable.ts +32 -0
  132. package/src/observableInterfaces.ts +148 -0
  133. package/src/observableTypes.ts +226 -0
  134. package/src/observe.ts +89 -0
  135. package/src/onChange.ts +136 -0
  136. package/src/persist/configureObservablePersistence.ts +7 -0
  137. package/src/persist/fieldTransformer.ts +149 -0
  138. package/src/persist/observablePersistRemoteFunctionsAdapter.ts +39 -0
  139. package/src/persist/persistObservable.ts +1031 -0
  140. package/src/persist-plugins/async-storage.ts +102 -0
  141. package/src/persist-plugins/fetch.ts +34 -0
  142. package/src/persist-plugins/firebase.ts +1052 -0
  143. package/src/persist-plugins/indexeddb.ts +432 -0
  144. package/src/persist-plugins/local-storage.ts +91 -0
  145. package/src/persist-plugins/mmkv.ts +91 -0
  146. package/src/persist-plugins/query.ts +129 -0
  147. package/src/proxy.ts +28 -0
  148. package/src/react/Computed.tsx +7 -0
  149. package/src/react/For.tsx +116 -0
  150. package/src/react/Memo.tsx +4 -0
  151. package/src/react/Reactive.tsx +53 -0
  152. package/src/react/Show.tsx +33 -0
  153. package/src/react/Switch.tsx +43 -0
  154. package/src/react/react-globals.ts +3 -0
  155. package/src/react/{reactInterfaces.d.ts → reactInterfaces.ts} +15 -7
  156. package/src/react/reactive-observer.tsx +210 -0
  157. package/src/react/useComputed.ts +36 -0
  158. package/src/react/useEffectOnce.ts +41 -0
  159. package/src/react/useIsMounted.ts +16 -0
  160. package/src/react/useMount.ts +15 -0
  161. package/src/react/useObservable.ts +24 -0
  162. package/src/react/useObservableReducer.ts +52 -0
  163. package/src/react/useObservableState.ts +30 -0
  164. package/src/react/useObserve.ts +54 -0
  165. package/src/react/useObserveEffect.ts +40 -0
  166. package/src/react/usePauseProvider.tsx +13 -0
  167. package/src/react/useSelector.ts +167 -0
  168. package/src/react/useUnmount.ts +8 -0
  169. package/src/react/useWhen.ts +9 -0
  170. package/src/react-hooks/createObservableHook.ts +53 -0
  171. package/src/react-hooks/useFetch.ts +16 -0
  172. package/src/react-hooks/useHover.ts +40 -0
  173. package/src/react-hooks/useMeasure.ts +48 -0
  174. package/src/react-hooks/useObservableNextRouter.ts +137 -0
  175. package/src/react-hooks/useObservableQuery.ts +205 -0
  176. package/src/react-hooks/usePersistedObservable.ts +25 -0
  177. package/src/retry.ts +71 -0
  178. package/src/setupTracking.ts +26 -0
  179. package/src/sync/activateSyncedNode.ts +128 -0
  180. package/src/sync/configureObservableSync.ts +7 -0
  181. package/src/sync/persistTypes.ts +226 -0
  182. package/src/sync/syncHelpers.ts +56 -0
  183. package/src/sync/syncObservable.ts +1040 -0
  184. package/src/sync/syncObservableAdapter.ts +31 -0
  185. package/src/sync/syncTypes.ts +188 -0
  186. package/src/sync/synced.ts +20 -0
  187. package/src/sync-plugins/crud.ts +404 -0
  188. package/src/sync-plugins/fetch.ts +72 -0
  189. package/src/sync-plugins/keel.ts +452 -0
  190. package/src/sync-plugins/supabase.ts +261 -0
  191. package/src/trace/traceHelpers.ts +11 -0
  192. package/src/trace/useTraceListeners.ts +34 -0
  193. package/src/trace/useTraceUpdates.ts +24 -0
  194. package/src/trace/useVerifyNotTracking.ts +33 -0
  195. package/src/trace/useVerifyOneRender.ts +10 -0
  196. package/src/trackSelector.ts +52 -0
  197. package/src/tracking.ts +43 -0
  198. package/src/types/babel.d.ts +12 -0
  199. package/src/when.ts +75 -0
  200. package/sync-plugins/crud.d.ts +41 -0
  201. package/sync-plugins/crud.js +290 -0
  202. package/sync-plugins/crud.js.map +1 -0
  203. package/sync-plugins/crud.mjs +286 -0
  204. package/sync-plugins/crud.mjs.map +1 -0
  205. package/sync-plugins/fetch.d.ts +13 -0
  206. package/sync-plugins/fetch.js +46 -0
  207. package/sync-plugins/fetch.js.map +1 -0
  208. package/sync-plugins/fetch.mjs +44 -0
  209. package/sync-plugins/fetch.mjs.map +1 -0
  210. package/sync-plugins/keel.d.ts +91 -0
  211. package/sync-plugins/keel.js +277 -0
  212. package/sync-plugins/keel.js.map +1 -0
  213. package/sync-plugins/keel.mjs +273 -0
  214. package/sync-plugins/keel.mjs.map +1 -0
  215. package/sync-plugins/supabase.d.ts +36 -0
  216. package/sync-plugins/supabase.js +152 -0
  217. package/sync-plugins/supabase.js.map +1 -0
  218. package/sync-plugins/supabase.mjs +149 -0
  219. package/sync-plugins/supabase.mjs.map +1 -0
  220. package/sync.d.ts +11 -0
  221. package/sync.js +976 -0
  222. package/sync.js.map +1 -0
  223. package/sync.mjs +966 -0
  224. package/sync.mjs.map +1 -0
  225. package/trace.js +13 -10
  226. package/trace.js.map +1 -1
  227. package/trace.mjs +11 -8
  228. package/trace.mjs.map +1 -1
  229. package/types/babel.d.ts +3 -3
  230. package/config/enableDirectAccess.d.ts +0 -7
  231. package/config/enableDirectAccess.js +0 -25
  232. package/config/enableDirectAccess.js.map +0 -1
  233. package/config/enableDirectAccess.mjs +0 -23
  234. package/config/enableDirectAccess.mjs.map +0 -1
  235. package/config/enableDirectPeek.d.ts +0 -7
  236. package/config/enableDirectPeek.js.map +0 -1
  237. package/config/enableDirectPeek.mjs.map +0 -1
  238. package/config/enableReactDirectRender.d.ts +0 -2
  239. package/config/enableReactDirectRender.js +0 -78
  240. package/config/enableReactDirectRender.js.map +0 -1
  241. package/config/enableReactDirectRender.mjs +0 -75
  242. package/config/enableReactDirectRender.mjs.map +0 -1
  243. package/src/ObservableObject.d.ts +0 -14
  244. package/src/ObservablePrimitive.d.ts +0 -7
  245. package/src/babel/index.d.ts +0 -17
  246. package/src/batching.d.ts +0 -6
  247. package/src/computed.d.ts +0 -4
  248. package/src/config/enableDirectAccess.d.ts +0 -7
  249. package/src/config/enableDirectPeek.d.ts +0 -7
  250. package/src/config/enableReactComponents.d.ts +0 -7
  251. package/src/config/enableReactDirectRender.d.ts +0 -2
  252. package/src/config/enableReactNativeComponents.d.ts +0 -20
  253. package/src/config/enableReactTracking.d.ts +0 -15
  254. package/src/config/enableReactUse.d.ts +0 -7
  255. package/src/config.d.ts +0 -8
  256. package/src/createObservable.d.ts +0 -2
  257. package/src/event.d.ts +0 -2
  258. package/src/globals.d.ts +0 -32
  259. package/src/helpers/fetch.d.ts +0 -6
  260. package/src/helpers/pageHash.d.ts +0 -7
  261. package/src/helpers/pageHashParams.d.ts +0 -7
  262. package/src/helpers/time.d.ts +0 -3
  263. package/src/helpers.d.ts +0 -13
  264. package/src/history/trackHistory.d.ts +0 -4
  265. package/src/is.d.ts +0 -10
  266. package/src/observable.d.ts +0 -16
  267. package/src/observableInterfaces.d.ts +0 -458
  268. package/src/observe.d.ts +0 -6
  269. package/src/onChange.d.ts +0 -7
  270. package/src/persist/configureObservablePersistence.d.ts +0 -3
  271. package/src/persist/fieldTransformer.d.ts +0 -8
  272. package/src/persist/observablePersistRemoteFunctionsAdapter.d.ts +0 -2
  273. package/src/persist/persistActivateNode.d.ts +0 -1
  274. package/src/persist/persistHelpers.d.ts +0 -1
  275. package/src/persist/persistObservable.d.ts +0 -25
  276. package/src/persist-plugins/async-storage.d.ts +0 -14
  277. package/src/persist-plugins/fetch.d.ts +0 -10
  278. package/src/persist-plugins/firebase.d.ts +0 -51
  279. package/src/persist-plugins/indexeddb.d.ts +0 -25
  280. package/src/persist-plugins/local-storage.d.ts +0 -21
  281. package/src/persist-plugins/mmkv.d.ts +0 -14
  282. package/src/persist-plugins/query.d.ts +0 -18
  283. package/src/proxy.d.ts +0 -5
  284. package/src/react/Computed.d.ts +0 -5
  285. package/src/react/For.d.ts +0 -15
  286. package/src/react/Memo.d.ts +0 -3
  287. package/src/react/Reactive.d.ts +0 -9
  288. package/src/react/Show.d.ts +0 -18
  289. package/src/react/Switch.d.ts +0 -14
  290. package/src/react/react-globals.d.ts +0 -3
  291. package/src/react/reactive-observer.d.ts +0 -14
  292. package/src/react/useComputed.d.ts +0 -5
  293. package/src/react/useEffectOnce.d.ts +0 -1
  294. package/src/react/useIsMounted.d.ts +0 -2
  295. package/src/react/useMount.d.ts +0 -2
  296. package/src/react/useObservable.d.ts +0 -9
  297. package/src/react/useObservableReducer.d.ts +0 -7
  298. package/src/react/useObservableState.d.ts +0 -2
  299. package/src/react/useObserve.d.ts +0 -4
  300. package/src/react/useObserveEffect.d.ts +0 -4
  301. package/src/react/usePauseProvider.d.ts +0 -8
  302. package/src/react/useSelector.d.ts +0 -3
  303. package/src/react/useUnmount.d.ts +0 -2
  304. package/src/react/useWhen.d.ts +0 -3
  305. package/src/react-hooks/createObservableHook.d.ts +0 -2
  306. package/src/react-hooks/useFetch.d.ts +0 -6
  307. package/src/react-hooks/useHover.d.ts +0 -3
  308. package/src/react-hooks/useMeasure.d.ts +0 -6
  309. package/src/react-hooks/useObservableNextRouter.d.ts +0 -33
  310. package/src/react-hooks/useObservableQuery.d.ts +0 -6
  311. package/src/react-hooks/usePersistedObservable.d.ts +0 -11
  312. package/src/retry.d.ts +0 -9
  313. package/src/setupTracking.d.ts +0 -2
  314. package/src/trace/traceHelpers.d.ts +0 -2
  315. package/src/trace/useTraceListeners.d.ts +0 -1
  316. package/src/trace/useTraceUpdates.d.ts +0 -1
  317. package/src/trace/useVerifyNotTracking.d.ts +0 -1
  318. package/src/trace/useVerifyOneRender.d.ts +0 -1
  319. package/src/trackSelector.d.ts +0 -7
  320. package/src/tracking.d.ts +0 -13
  321. package/src/when.d.ts +0 -3
package/react.mjs CHANGED
@@ -1,5 +1,5 @@
1
- import { observable, isPromise as isPromise$1, isObservable, trackSelector, when, computeSelector, isPrimitive, isFunction, optimized, isArray, getNode, findIDKey, isEmpty, isObservableValueReady, computed, observe, whenReady } from '@legendapp/state';
2
- import require$$0, { createContext, useState, createElement, useRef, useContext, forwardRef, memo, useCallback, useMemo, useEffect } from 'react';
1
+ import { observable, isPromise, isObservable, syncState, trackSelector, when, isPrimitive, computeSelector, isFunction, isArray, isMap, internal, isEmpty, isObservableValueReady, computed, observe, whenReady } from '@legendapp/state';
2
+ import require$$0, { createContext, useState, createElement, useContext, useMemo, forwardRef, memo, useCallback, useRef, useEffect } from 'react';
3
3
 
4
4
  var shim = {exports: {}};
5
5
 
@@ -280,6 +280,10 @@ function requireUseSyncExternalStoreShim_development () {
280
280
  }
281
281
  } (shim));
282
282
 
283
+ const reactGlobals = {
284
+ inObserver: false,
285
+ };
286
+
283
287
  const PauseContext = createContext(null);
284
288
  function usePauseProvider() {
285
289
  const [value] = useState(() => observable(false));
@@ -289,10 +293,6 @@ function usePauseProvider() {
289
293
  };
290
294
  }
291
295
 
292
- const reactGlobals = {
293
- inObserver: false,
294
- };
295
-
296
296
  function createSelectorFunctions(options, isPaused$) {
297
297
  let version = 0;
298
298
  let notify;
@@ -301,23 +301,31 @@ function createSelectorFunctions(options, isPaused$) {
301
301
  let _selector;
302
302
  let prev;
303
303
  let pendingUpdate = undefined;
304
+ const run = () => {
305
+ // Dispose if already listening
306
+ dispose === null || dispose === void 0 ? void 0 : dispose();
307
+ const { value, dispose: _dispose, resubscribe: _resubscribe, } = trackSelector(_selector, _update, undefined, undefined, /*createResubscribe*/ true);
308
+ dispose = _dispose;
309
+ resubscribe = _resubscribe;
310
+ return value;
311
+ };
304
312
  const _update = ({ value }) => {
305
313
  if (isPaused$ === null || isPaused$ === void 0 ? void 0 : isPaused$.peek()) {
306
- if (pendingUpdate === undefined) {
314
+ const next = pendingUpdate;
315
+ pendingUpdate = value;
316
+ if (next === undefined) {
307
317
  when(() => !isPaused$.get(), () => {
308
318
  const latest = pendingUpdate;
309
319
  pendingUpdate = undefined;
310
320
  _update({ value: latest });
311
321
  });
312
322
  }
313
- pendingUpdate = value;
314
323
  }
315
324
  else {
316
325
  // If skipCheck then don't need to re-run selector
317
326
  let changed = options === null || options === void 0 ? void 0 : options.skipCheck;
318
327
  if (!changed) {
319
- // Re-run the selector to get the new value
320
- const newValue = computeSelector(_selector);
328
+ const newValue = run();
321
329
  // If newValue is different than previous value then it's changed.
322
330
  // Also if the selector returns an observable directly then its value will be the same as
323
331
  // the value from the listener, and that should always re-render.
@@ -338,7 +346,7 @@ function createSelectorFunctions(options, isPaused$) {
338
346
  if ((process.env.NODE_ENV === 'development' || process.env.NODE_ENV === 'test') &&
339
347
  !dispose &&
340
348
  resubscribe) {
341
- resubscribe();
349
+ dispose = resubscribe();
342
350
  }
343
351
  return () => {
344
352
  dispose === null || dispose === void 0 ? void 0 : dispose();
@@ -349,30 +357,22 @@ function createSelectorFunctions(options, isPaused$) {
349
357
  run: (selector) => {
350
358
  // Update the cached selector
351
359
  _selector = selector;
352
- // Dispose if already listening
353
- dispose === null || dispose === void 0 ? void 0 : dispose();
354
- const { value, dispose: _dispose, resubscribe: _resubscribe, } = trackSelector(selector, _update, undefined, undefined, /*createResubscribe*/ true);
355
- dispose = _dispose;
356
- resubscribe = _resubscribe;
357
- prev = value;
358
- return value;
360
+ return (prev = run());
359
361
  },
360
362
  };
361
363
  }
362
364
  function useSelector(selector, options) {
363
365
  var _a;
364
- // Short-circuit to skip creating the hook if the parent component is an observer
365
- if (reactGlobals.inObserver) {
366
+ // Short-circuit to skip creating the hook if selector is an observable
367
+ // and running in an observer. If selector is a function it needs to run in its own context.
368
+ if (reactGlobals.inObserver && isObservable(selector)) {
366
369
  return computeSelector(selector);
367
370
  }
368
371
  let value;
369
372
  try {
370
- const ref = useRef();
371
373
  const isPaused$ = useContext(PauseContext);
372
- if (!ref.current) {
373
- ref.current = createSelectorFunctions(options, isPaused$);
374
- }
375
- const { subscribe, getVersion, run } = ref.current;
374
+ const selectorFn = useMemo(() => createSelectorFunctions(options, isPaused$), []);
375
+ const { subscribe, getVersion, run } = selectorFn;
376
376
  // Run the selector
377
377
  // Note: The selector needs to run on every render because it may have different results
378
378
  // than the previous run if it uses local state
@@ -382,10 +382,8 @@ function useSelector(selector, options) {
382
382
  if (options === null || options === void 0 ? void 0 : options.suspense) {
383
383
  // Note: Although it's not possible for an observable to be a promise, the selector may be a
384
384
  // function that returns a Promise, so we handle that case too.
385
- if (isPromise$1(value) ||
386
- (!value &&
387
- isObservable(selector) &&
388
- !selector.state.isLoaded.get())) {
385
+ if (isPromise(value) ||
386
+ (!value && isObservable(selector) && syncState(selector).isLoaded.get() === false)) {
389
387
  if (require$$0.use) {
390
388
  require$$0.use(value);
391
389
  }
@@ -411,6 +409,7 @@ function Computed({ children }) {
411
409
 
412
410
  // Extracting the forwardRef inspired by https://github.com/mobxjs/mobx/blob/main/packages/mobx-react-lite/src/observer.ts
413
411
  const hasSymbol = typeof Symbol === 'function' && Symbol.for;
412
+ let didWarnProps = false;
414
413
  // TODOV2: Change bindKeys to an options object, where one of the options is "convertChildren" so that behavior can be optional
415
414
  function createReactiveComponent(component, observe, reactive, bindKeys) {
416
415
  const ReactForwardRefSymbol = hasSymbol
@@ -458,19 +457,12 @@ function createReactiveComponent(component, observe, reactive, bindKeys) {
458
457
  }
459
458
  // Convert reactive props
460
459
  else if (key.startsWith('$') || key.endsWith('$')) {
461
- // TODOV3 Add this warning and then remove the deprecated endsWith option
462
- // if (
463
- // process.env.NODE_ENV === 'development' &&
464
- // !internal.globalState.noDepWarn &&
465
- // key.endsWith('$')
466
- // ) {
467
- // console.warn(
468
- // `[legend-state] Reactive props will be changed to start with $ instead of end with $ in version 2.0. So please change ${key} to $${key.replace(
469
- // '$',
470
- // '',
471
- // )}. See https://legendapp.com/open-source/state/migrating for more details.`,
472
- // );
473
- // }
460
+ // TODOV3 Add this warning
461
+ // TODOV4 Remove the deprecated endsWith option
462
+ if (process.env.NODE_ENV === 'development' && !didWarnProps && key.endsWith('$')) {
463
+ didWarnProps = true;
464
+ console.warn(`[legend-state] Reactive props were changed to start with $ instead of end with $ in version 2.0. So please change ${key} to $${key.replace('$', '')}. See https://legendapp.com/open-source/state/migrating for more details.`);
465
+ }
474
466
  const k = key.endsWith('$') ? key.slice(0, -1) : key.slice(1);
475
467
  // Return raw value and listen to the selector for changes
476
468
  const bind = bindKeys === null || bindKeys === void 0 ? void 0 : bindKeys[k];
@@ -545,7 +537,7 @@ function reactiveObserver(component, bindKeys) {
545
537
  function reactiveComponents(components) {
546
538
  return new Proxy({}, {
547
539
  get(target, p) {
548
- if (!target[p]) {
540
+ if (!target[p] && components[p]) {
549
541
  target[p] = createReactiveComponent(components[p], false, true);
550
542
  }
551
543
  return target[p];
@@ -553,6 +545,7 @@ function reactiveComponents(components) {
553
545
  });
554
546
  }
555
547
 
548
+ const { findIDKey, getNode, optimized } = internal;
556
549
  const autoMemoCache = new Map();
557
550
  function For({ each, optimized: isOptimized, item, itemProps, sortValues, children, }) {
558
551
  var _a;
@@ -613,15 +606,15 @@ function For({ each, optimized: isOptimized, item, itemProps, sortValues, childr
613
606
  }
614
607
  else {
615
608
  // Render the values of the object / Map
616
- const isMap = value instanceof Map;
617
- const keys = isMap ? Array.from(value.keys()) : Object.keys(value);
609
+ const asMap = isMap(value);
610
+ const keys = asMap ? Array.from(value.keys()) : Object.keys(value);
618
611
  if (sortValues) {
619
- keys.sort((A, B) => sortValues(isMap ? value.get(A) : value[A], isMap ? value.get(B) : value[B], A, B));
612
+ keys.sort((A, B) => sortValues(asMap ? value.get(A) : value[A], asMap ? value.get(B) : value[B], A, B));
620
613
  }
621
614
  for (let i = 0; i < keys.length; i++) {
622
615
  const key = keys[i];
623
- if (isMap ? value.get(key) : value[key]) {
624
- const item$ = isMap ? each.get(key) : each[key];
616
+ if (asMap ? value.get(key) : value[key]) {
617
+ const item$ = asMap ? each.get(key) : each[key];
625
618
  const props = {
626
619
  key,
627
620
  id: key,
@@ -671,23 +664,17 @@ function configureReactive({ components, binders, }) {
671
664
  }
672
665
 
673
666
  function Show({ if: if_, ifReady, else: else_, wrap, children }) {
674
- const child = useSelector(() => {
675
- const value = computeSelector(if_ !== null && if_ !== void 0 ? if_ : ifReady);
676
- return computeSelector((ifReady !== undefined ? isObservableValueReady(value) : value)
677
- ? isFunction(children)
678
- ? () => children(value)
679
- : children
680
- : else_
681
- ? else_
682
- : null);
683
- }, { skipCheck: true });
667
+ const value = useSelector(if_ !== null && if_ !== void 0 ? if_ : ifReady);
668
+ const show = ifReady !== undefined ? isObservableValueReady(value) : value;
669
+ const child = useSelector(show ? (isFunction(children) ? () => children(value) : children) : else_ !== null && else_ !== void 0 ? else_ : null, { skipCheck: true });
684
670
  return wrap ? createElement(wrap, undefined, child) : child;
685
671
  }
686
672
 
687
673
  function Switch({ value, children, }) {
688
- var _a, _b, _c, _d, _e, _f;
674
+ var _a, _b;
689
675
  // Select from an object of cases
690
- return ((_f = (_c = (_b = (_a = children)[useSelector(value, { skipCheck: true })]) === null || _b === void 0 ? void 0 : _b.call(_a)) !== null && _c !== void 0 ? _c : (_e = (_d = children)['default']) === null || _e === void 0 ? void 0 : _e.call(_d)) !== null && _f !== void 0 ? _f : null);
676
+ const child = children[useSelector(value)];
677
+ return (_b = (child ? child() : (_a = children['default']) === null || _a === void 0 ? void 0 : _a.call(children))) !== null && _b !== void 0 ? _b : null;
691
678
  }
692
679
 
693
680
  function useComputed(compute, set, deps) {
@@ -701,7 +688,7 @@ function useComputed(compute, set, deps) {
701
688
  return useMemo(() => computed(() => (isFunction(ref.current.compute) ? ref.current.compute() : ref.current.compute), (set ? (value) => ref.current.set(value) : undefined)), deps || []);
702
689
  }
703
690
 
704
- const useEffectOnce = (effect) => {
691
+ const useEffectOnce = (effect, deps) => {
705
692
  if (process.env.NODE_ENV === 'development' || process.env.NODE_ENV === 'test') {
706
693
  const refDispose = useRef({ num: 0 });
707
694
  useEffect(() => {
@@ -735,50 +722,44 @@ const useEffectOnce = (effect) => {
735
722
  else {
736
723
  return dispose;
737
724
  }
738
- }, []);
725
+ }, deps);
739
726
  }
740
727
  else {
741
- useEffect(effect, []);
728
+ useEffect(effect, deps);
742
729
  }
743
730
  };
744
731
 
745
- /**
746
- * A React hook that creates a new observable
747
- *
748
- * @param initialValue The initial value of the observable or a function that returns the initial value
749
- *
750
- * @see https://www.legendapp.com/dev/state/react/#useObservable
751
- */
732
+ function useMount(fn) {
733
+ return useEffectOnce(() => {
734
+ const ret = fn();
735
+ // Allow the function to be async but if so ignore its return value
736
+ if (!isPromise(ret)) {
737
+ return ret;
738
+ }
739
+ }, []);
740
+ }
741
+ // TODOV4 Deprecate
742
+ const useMountOnce = useMount;
743
+
752
744
  function useObservable(initialValue) {
753
- // Create the observable from the default value
754
- return useMemo(() => observable((isFunction(initialValue) ? initialValue() : initialValue)), []);
745
+ const ref = useRef();
746
+ if (!ref.current) {
747
+ // Create the observable from the default value
748
+ ref.current = observable(initialValue);
749
+ }
750
+ return ref.current;
755
751
  }
756
752
 
757
753
  function useIsMounted() {
758
754
  const obs = useObservable(false);
759
755
  const { set } = obs;
760
- useEffectOnce(() => {
756
+ useMountOnce(() => {
761
757
  set(true);
762
758
  return () => set(false);
763
759
  });
764
760
  return obs;
765
761
  }
766
762
 
767
- function isPromise(obj) {
768
- return obj instanceof Promise;
769
- }
770
-
771
- function useMount(fn) {
772
- return useEffect(() => {
773
- const ret = fn();
774
- // Allow the function to be async but if so ignore its return value
775
- if (!isPromise(ret)) {
776
- return ret;
777
- }
778
- }, []);
779
- }
780
- const useMountOnce = useEffectOnce;
781
-
782
763
  function useObservableReducer(reducer, initializerArg, initializer) {
783
764
  const obs = useObservable(() => initializerArg !== undefined && isFunction(initializerArg) ? initializer(initializerArg) : initializerArg);
784
765
  const dispatch = (action) => {
@@ -788,11 +769,10 @@ function useObservableReducer(reducer, initializerArg, initializer) {
788
769
  }
789
770
 
790
771
  function useUnmount(fn) {
791
- return useEffect(() => fn, []);
792
- }
793
- function useUnmountOnce(fn) {
794
- return useEffectOnce(() => fn);
772
+ return useMount(() => fn);
795
773
  }
774
+ // TODOV4 Deprecate
775
+ const useUnmountOnce = useUnmount;
796
776
 
797
777
  function useObserve(selector, reactionOrOptions, options) {
798
778
  let reaction;
@@ -825,7 +805,7 @@ function useObserveEffect(selector, reactionOrOptions, options) {
825
805
  }
826
806
  const ref = useRef({ selector });
827
807
  ref.current = { selector, reaction };
828
- useEffectOnce(() => observe(((e) => {
808
+ useMountOnce(() => observe(((e) => {
829
809
  const { selector } = ref.current;
830
810
  return isFunction(selector) ? selector(e) : selector;
831
811
  }), (e) => { var _a, _b; return (_b = (_a = ref.current).reaction) === null || _b === void 0 ? void 0 : _b.call(_a, e); }, options));
package/react.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"react.mjs","sources":["../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.js","../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js","../node_modules/use-sync-external-store/shim/index.js","../../src/react/usePauseProvider.tsx","../../src/react/react-globals.ts","../../src/react/useSelector.ts","../../src/react/Computed.tsx","../../src/react/reactive-observer.tsx","../../src/react/For.tsx","../../src/react/Memo.tsx","../../src/react/Reactive.tsx","../../src/react/Show.tsx","../../src/react/Switch.tsx","../../src/react/useComputed.ts","../../src/react/useEffectOnce.ts","../../src/react/useObservable.ts","../../src/react/useIsMounted.ts","../../src/is.ts","../../src/react/useMount.ts","../../src/react/useObservableReducer.ts","../../src/react/useUnmount.ts","../../src/react/useObserve.ts","../../src/react/useObserveEffect.ts","../../src/react/useWhen.ts"],"sourcesContent":["/**\n * @license React\n * use-sync-external-store-shim.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var e=require(\"react\");function h(a,b){return a===b&&(0!==a||1/a===1/b)||a!==a&&b!==b}var k=\"function\"===typeof Object.is?Object.is:h,l=e.useState,m=e.useEffect,n=e.useLayoutEffect,p=e.useDebugValue;function q(a,b){var d=b(),f=l({inst:{value:d,getSnapshot:b}}),c=f[0].inst,g=f[1];n(function(){c.value=d;c.getSnapshot=b;r(c)&&g({inst:c})},[a,d,b]);m(function(){r(c)&&g({inst:c});return a(function(){r(c)&&g({inst:c})})},[a]);p(d);return d}\nfunction r(a){var b=a.getSnapshot;a=a.value;try{var d=b();return!k(a,d)}catch(f){return!0}}function t(a,b){return b()}var u=\"undefined\"===typeof window||\"undefined\"===typeof window.document||\"undefined\"===typeof window.document.createElement?t:q;exports.useSyncExternalStore=void 0!==e.useSyncExternalStore?e.useSyncExternalStore:u;\n","/**\n * @license React\n * use-sync-external-store-shim.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n\n 'use strict';\n\n/* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\nif (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== 'undefined' &&\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart ===\n 'function'\n) {\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error());\n}\n var React = require('react');\n\nvar ReactSharedInternals = React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n\nfunction error(format) {\n {\n {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n printWarning('error', format, args);\n }\n }\n}\n\nfunction printWarning(level, format, args) {\n // When changing this logic, you might want to also\n // update consoleWithStackDev.www.js as well.\n {\n var ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame;\n var stack = ReactDebugCurrentFrame.getStackAddendum();\n\n if (stack !== '') {\n format += '%s';\n args = args.concat([stack]);\n } // eslint-disable-next-line react-internal/safe-string-coercion\n\n\n var argsWithFormat = args.map(function (item) {\n return String(item);\n }); // Careful: RN currently depends on this prefix\n\n argsWithFormat.unshift('Warning: ' + format); // We intentionally don't use spread (or .apply) directly because it\n // breaks IE9: https://github.com/facebook/react/issues/13610\n // eslint-disable-next-line react-internal/no-production-logging\n\n Function.prototype.apply.call(console[level], console, argsWithFormat);\n }\n}\n\n/**\n * inlined Object.is polyfill to avoid requiring consumers ship their own\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n */\nfunction is(x, y) {\n return x === y && (x !== 0 || 1 / x === 1 / y) || x !== x && y !== y // eslint-disable-line no-self-compare\n ;\n}\n\nvar objectIs = typeof Object.is === 'function' ? Object.is : is;\n\n// dispatch for CommonJS interop named imports.\n\nvar useState = React.useState,\n useEffect = React.useEffect,\n useLayoutEffect = React.useLayoutEffect,\n useDebugValue = React.useDebugValue;\nvar didWarnOld18Alpha = false;\nvar didWarnUncachedGetSnapshot = false; // Disclaimer: This shim breaks many of the rules of React, and only works\n// because of a very particular set of implementation details and assumptions\n// -- change any one of them and it will break. The most important assumption\n// is that updates are always synchronous, because concurrent rendering is\n// only available in versions of React that also have a built-in\n// useSyncExternalStore API. And we only use this shim when the built-in API\n// does not exist.\n//\n// Do not assume that the clever hacks used by this hook also work in general.\n// The point of this shim is to replace the need for hacks by other libraries.\n\nfunction useSyncExternalStore(subscribe, getSnapshot, // Note: The shim does not use getServerSnapshot, because pre-18 versions of\n// React do not expose a way to check if we're hydrating. So users of the shim\n// will need to track that themselves and return the correct value\n// from `getSnapshot`.\ngetServerSnapshot) {\n {\n if (!didWarnOld18Alpha) {\n if (React.startTransition !== undefined) {\n didWarnOld18Alpha = true;\n\n error('You are using an outdated, pre-release alpha of React 18 that ' + 'does not support useSyncExternalStore. The ' + 'use-sync-external-store shim will not work correctly. Upgrade ' + 'to a newer pre-release.');\n }\n }\n } // Read the current snapshot from the store on every render. Again, this\n // breaks the rules of React, and only works here because of specific\n // implementation details, most importantly that updates are\n // always synchronous.\n\n\n var value = getSnapshot();\n\n {\n if (!didWarnUncachedGetSnapshot) {\n var cachedValue = getSnapshot();\n\n if (!objectIs(value, cachedValue)) {\n error('The result of getSnapshot should be cached to avoid an infinite loop');\n\n didWarnUncachedGetSnapshot = true;\n }\n }\n } // Because updates are synchronous, we don't queue them. Instead we force a\n // re-render whenever the subscribed state changes by updating an some\n // arbitrary useState hook. Then, during render, we call getSnapshot to read\n // the current value.\n //\n // Because we don't actually use the state returned by the useState hook, we\n // can save a bit of memory by storing other stuff in that slot.\n //\n // To implement the early bailout, we need to track some things on a mutable\n // object. Usually, we would put that in a useRef hook, but we can stash it in\n // our useState hook instead.\n //\n // To force a re-render, we call forceUpdate({inst}). That works because the\n // new object always fails an equality check.\n\n\n var _useState = useState({\n inst: {\n value: value,\n getSnapshot: getSnapshot\n }\n }),\n inst = _useState[0].inst,\n forceUpdate = _useState[1]; // Track the latest getSnapshot function with a ref. This needs to be updated\n // in the layout phase so we can access it during the tearing check that\n // happens on subscribe.\n\n\n useLayoutEffect(function () {\n inst.value = value;\n inst.getSnapshot = getSnapshot; // Whenever getSnapshot or subscribe changes, we need to check in the\n // commit phase if there was an interleaved mutation. In concurrent mode\n // this can happen all the time, but even in synchronous mode, an earlier\n // effect may have mutated the store.\n\n if (checkIfSnapshotChanged(inst)) {\n // Force a re-render.\n forceUpdate({\n inst: inst\n });\n }\n }, [subscribe, value, getSnapshot]);\n useEffect(function () {\n // Check for changes right before subscribing. Subsequent changes will be\n // detected in the subscription handler.\n if (checkIfSnapshotChanged(inst)) {\n // Force a re-render.\n forceUpdate({\n inst: inst\n });\n }\n\n var handleStoreChange = function () {\n // TODO: Because there is no cross-renderer API for batching updates, it's\n // up to the consumer of this library to wrap their subscription event\n // with unstable_batchedUpdates. Should we try to detect when this isn't\n // the case and print a warning in development?\n // The store changed. Check if the snapshot changed since the last time we\n // read from the store.\n if (checkIfSnapshotChanged(inst)) {\n // Force a re-render.\n forceUpdate({\n inst: inst\n });\n }\n }; // Subscribe to the store and return a clean-up function.\n\n\n return subscribe(handleStoreChange);\n }, [subscribe]);\n useDebugValue(value);\n return value;\n}\n\nfunction checkIfSnapshotChanged(inst) {\n var latestGetSnapshot = inst.getSnapshot;\n var prevValue = inst.value;\n\n try {\n var nextValue = latestGetSnapshot();\n return !objectIs(prevValue, nextValue);\n } catch (error) {\n return true;\n }\n}\n\nfunction useSyncExternalStore$1(subscribe, getSnapshot, getServerSnapshot) {\n // Note: The shim does not use getServerSnapshot, because pre-18 versions of\n // React do not expose a way to check if we're hydrating. So users of the shim\n // will need to track that themselves and return the correct value\n // from `getSnapshot`.\n return getSnapshot();\n}\n\nvar canUseDOM = !!(typeof window !== 'undefined' && typeof window.document !== 'undefined' && typeof window.document.createElement !== 'undefined');\n\nvar isServerEnvironment = !canUseDOM;\n\nvar shim = isServerEnvironment ? useSyncExternalStore$1 : useSyncExternalStore;\nvar useSyncExternalStore$2 = React.useSyncExternalStore !== undefined ? React.useSyncExternalStore : shim;\n\nexports.useSyncExternalStore = useSyncExternalStore$2;\n /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\nif (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== 'undefined' &&\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop ===\n 'function'\n) {\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error());\n}\n \n })();\n}\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('../cjs/use-sync-external-store-shim.production.min.js');\n} else {\n module.exports = require('../cjs/use-sync-external-store-shim.development.js');\n}\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["require$$0","require$$1","useSyncExternalStore","isPromise","React"],"mappings":"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"}
1
+ {"version":3,"file":"react.mjs","sources":["../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.js","../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js","../node_modules/use-sync-external-store/shim/index.js","./src/react/react-globals.ts","./src/react/usePauseProvider.tsx","./src/react/useSelector.ts","./src/react/Computed.tsx","./src/react/reactive-observer.tsx","./src/react/For.tsx","./src/react/Memo.tsx","./src/react/Reactive.tsx","./src/react/Show.tsx","./src/react/Switch.tsx","./src/react/useComputed.ts","./src/react/useEffectOnce.ts","./src/react/useMount.ts","./src/react/useObservable.ts","./src/react/useIsMounted.ts","./src/react/useObservableReducer.ts","./src/react/useUnmount.ts","./src/react/useObserve.ts","./src/react/useObserveEffect.ts","./src/react/useWhen.ts"],"sourcesContent":["/**\n * @license React\n * use-sync-external-store-shim.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var e=require(\"react\");function h(a,b){return a===b&&(0!==a||1/a===1/b)||a!==a&&b!==b}var k=\"function\"===typeof Object.is?Object.is:h,l=e.useState,m=e.useEffect,n=e.useLayoutEffect,p=e.useDebugValue;function q(a,b){var d=b(),f=l({inst:{value:d,getSnapshot:b}}),c=f[0].inst,g=f[1];n(function(){c.value=d;c.getSnapshot=b;r(c)&&g({inst:c})},[a,d,b]);m(function(){r(c)&&g({inst:c});return a(function(){r(c)&&g({inst:c})})},[a]);p(d);return d}\nfunction r(a){var b=a.getSnapshot;a=a.value;try{var d=b();return!k(a,d)}catch(f){return!0}}function t(a,b){return b()}var u=\"undefined\"===typeof window||\"undefined\"===typeof window.document||\"undefined\"===typeof window.document.createElement?t:q;exports.useSyncExternalStore=void 0!==e.useSyncExternalStore?e.useSyncExternalStore:u;\n","/**\n * @license React\n * use-sync-external-store-shim.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n\n 'use strict';\n\n/* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\nif (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== 'undefined' &&\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart ===\n 'function'\n) {\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error());\n}\n var React = require('react');\n\nvar ReactSharedInternals = React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n\nfunction error(format) {\n {\n {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n printWarning('error', format, args);\n }\n }\n}\n\nfunction printWarning(level, format, args) {\n // When changing this logic, you might want to also\n // update consoleWithStackDev.www.js as well.\n {\n var ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame;\n var stack = ReactDebugCurrentFrame.getStackAddendum();\n\n if (stack !== '') {\n format += '%s';\n args = args.concat([stack]);\n } // eslint-disable-next-line react-internal/safe-string-coercion\n\n\n var argsWithFormat = args.map(function (item) {\n return String(item);\n }); // Careful: RN currently depends on this prefix\n\n argsWithFormat.unshift('Warning: ' + format); // We intentionally don't use spread (or .apply) directly because it\n // breaks IE9: https://github.com/facebook/react/issues/13610\n // eslint-disable-next-line react-internal/no-production-logging\n\n Function.prototype.apply.call(console[level], console, argsWithFormat);\n }\n}\n\n/**\n * inlined Object.is polyfill to avoid requiring consumers ship their own\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n */\nfunction is(x, y) {\n return x === y && (x !== 0 || 1 / x === 1 / y) || x !== x && y !== y // eslint-disable-line no-self-compare\n ;\n}\n\nvar objectIs = typeof Object.is === 'function' ? Object.is : is;\n\n// dispatch for CommonJS interop named imports.\n\nvar useState = React.useState,\n useEffect = React.useEffect,\n useLayoutEffect = React.useLayoutEffect,\n useDebugValue = React.useDebugValue;\nvar didWarnOld18Alpha = false;\nvar didWarnUncachedGetSnapshot = false; // Disclaimer: This shim breaks many of the rules of React, and only works\n// because of a very particular set of implementation details and assumptions\n// -- change any one of them and it will break. The most important assumption\n// is that updates are always synchronous, because concurrent rendering is\n// only available in versions of React that also have a built-in\n// useSyncExternalStore API. And we only use this shim when the built-in API\n// does not exist.\n//\n// Do not assume that the clever hacks used by this hook also work in general.\n// The point of this shim is to replace the need for hacks by other libraries.\n\nfunction useSyncExternalStore(subscribe, getSnapshot, // Note: The shim does not use getServerSnapshot, because pre-18 versions of\n// React do not expose a way to check if we're hydrating. So users of the shim\n// will need to track that themselves and return the correct value\n// from `getSnapshot`.\ngetServerSnapshot) {\n {\n if (!didWarnOld18Alpha) {\n if (React.startTransition !== undefined) {\n didWarnOld18Alpha = true;\n\n error('You are using an outdated, pre-release alpha of React 18 that ' + 'does not support useSyncExternalStore. The ' + 'use-sync-external-store shim will not work correctly. Upgrade ' + 'to a newer pre-release.');\n }\n }\n } // Read the current snapshot from the store on every render. Again, this\n // breaks the rules of React, and only works here because of specific\n // implementation details, most importantly that updates are\n // always synchronous.\n\n\n var value = getSnapshot();\n\n {\n if (!didWarnUncachedGetSnapshot) {\n var cachedValue = getSnapshot();\n\n if (!objectIs(value, cachedValue)) {\n error('The result of getSnapshot should be cached to avoid an infinite loop');\n\n didWarnUncachedGetSnapshot = true;\n }\n }\n } // Because updates are synchronous, we don't queue them. Instead we force a\n // re-render whenever the subscribed state changes by updating an some\n // arbitrary useState hook. Then, during render, we call getSnapshot to read\n // the current value.\n //\n // Because we don't actually use the state returned by the useState hook, we\n // can save a bit of memory by storing other stuff in that slot.\n //\n // To implement the early bailout, we need to track some things on a mutable\n // object. Usually, we would put that in a useRef hook, but we can stash it in\n // our useState hook instead.\n //\n // To force a re-render, we call forceUpdate({inst}). That works because the\n // new object always fails an equality check.\n\n\n var _useState = useState({\n inst: {\n value: value,\n getSnapshot: getSnapshot\n }\n }),\n inst = _useState[0].inst,\n forceUpdate = _useState[1]; // Track the latest getSnapshot function with a ref. This needs to be updated\n // in the layout phase so we can access it during the tearing check that\n // happens on subscribe.\n\n\n useLayoutEffect(function () {\n inst.value = value;\n inst.getSnapshot = getSnapshot; // Whenever getSnapshot or subscribe changes, we need to check in the\n // commit phase if there was an interleaved mutation. In concurrent mode\n // this can happen all the time, but even in synchronous mode, an earlier\n // effect may have mutated the store.\n\n if (checkIfSnapshotChanged(inst)) {\n // Force a re-render.\n forceUpdate({\n inst: inst\n });\n }\n }, [subscribe, value, getSnapshot]);\n useEffect(function () {\n // Check for changes right before subscribing. Subsequent changes will be\n // detected in the subscription handler.\n if (checkIfSnapshotChanged(inst)) {\n // Force a re-render.\n forceUpdate({\n inst: inst\n });\n }\n\n var handleStoreChange = function () {\n // TODO: Because there is no cross-renderer API for batching updates, it's\n // up to the consumer of this library to wrap their subscription event\n // with unstable_batchedUpdates. Should we try to detect when this isn't\n // the case and print a warning in development?\n // The store changed. Check if the snapshot changed since the last time we\n // read from the store.\n if (checkIfSnapshotChanged(inst)) {\n // Force a re-render.\n forceUpdate({\n inst: inst\n });\n }\n }; // Subscribe to the store and return a clean-up function.\n\n\n return subscribe(handleStoreChange);\n }, [subscribe]);\n useDebugValue(value);\n return value;\n}\n\nfunction checkIfSnapshotChanged(inst) {\n var latestGetSnapshot = inst.getSnapshot;\n var prevValue = inst.value;\n\n try {\n var nextValue = latestGetSnapshot();\n return !objectIs(prevValue, nextValue);\n } catch (error) {\n return true;\n }\n}\n\nfunction useSyncExternalStore$1(subscribe, getSnapshot, getServerSnapshot) {\n // Note: The shim does not use getServerSnapshot, because pre-18 versions of\n // React do not expose a way to check if we're hydrating. So users of the shim\n // will need to track that themselves and return the correct value\n // from `getSnapshot`.\n return getSnapshot();\n}\n\nvar canUseDOM = !!(typeof window !== 'undefined' && typeof window.document !== 'undefined' && typeof window.document.createElement !== 'undefined');\n\nvar isServerEnvironment = !canUseDOM;\n\nvar shim = isServerEnvironment ? useSyncExternalStore$1 : useSyncExternalStore;\nvar useSyncExternalStore$2 = React.useSyncExternalStore !== undefined ? React.useSyncExternalStore : shim;\n\nexports.useSyncExternalStore = useSyncExternalStore$2;\n /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\nif (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== 'undefined' &&\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop ===\n 'function'\n) {\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error());\n}\n \n })();\n}\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('../cjs/use-sync-external-store-shim.production.min.js');\n} else {\n module.exports = require('../cjs/use-sync-external-store-shim.development.js');\n}\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["require$$0","require$$1","useSyncExternalStore","React"],"mappings":"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"}