@legendapp/state 2.2.0-next.71 → 2.2.0-next.72
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/config/enableReactTracking.js +34 -32
- package/config/enableReactTracking.js.map +1 -1
- package/config/enableReactTracking.mjs +35 -33
- package/config/enableReactTracking.mjs.map +1 -1
- package/config/enableReactUse.js +9 -2
- package/config/enableReactUse.js.map +1 -1
- package/config/enableReactUse.mjs +9 -2
- package/config/enableReactUse.mjs.map +1 -1
- package/index.d.ts +2 -1
- package/index.js +11 -0
- package/index.js.map +1 -1
- package/index.mjs +11 -0
- package/index.mjs.map +1 -1
- package/package.json +1 -1
- package/persist.js +38 -17
- package/persist.js.map +1 -1
- package/persist.mjs +38 -17
- package/persist.mjs.map +1 -1
- package/react.js +7 -13
- package/react.js.map +1 -1
- package/react.mjs +7 -13
- package/react.mjs.map +1 -1
- package/src/ObservableObject.ts +2 -0
- package/src/config/enableReactTracking.ts +37 -35
- package/src/config/enableReactUse.ts +11 -2
- package/src/react/reactive-observer.tsx +13 -13
- package/src/sync/syncObservable.ts +53 -25
- package/src/syncTypes.ts +1 -1
- package/sync.js +38 -17
- package/sync.js.map +1 -1
- package/sync.mjs +39 -18
- package/sync.mjs.map +1 -1
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/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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"}
|
|
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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"}
|
package/src/ObservableObject.ts
CHANGED
|
@@ -487,6 +487,7 @@ const proxyHandler: ProxyHandler<any> = {
|
|
|
487
487
|
|
|
488
488
|
return function (cbOrig: any, thisArg: any) {
|
|
489
489
|
const isReduce = p === 'reduce';
|
|
490
|
+
// Callbacks are given the Proxy rather than the underlying data
|
|
490
491
|
const cbWrapped = isReduce
|
|
491
492
|
? (previousValue: any, currentValue: any, currentIndex: number, array: any[]) => {
|
|
492
493
|
return cbOrig(
|
|
@@ -510,6 +511,7 @@ const proxyHandler: ProxyHandler<any> = {
|
|
|
510
511
|
type LooperType = Parameters<typeof Array.prototype.map>[0];
|
|
511
512
|
if ((cbWrapped as LooperType)(value[i], i, value)) {
|
|
512
513
|
const proxy = getProxy(node, i + '');
|
|
514
|
+
// find returns the first match, otherwise it returns an array
|
|
513
515
|
if (isFind) {
|
|
514
516
|
return proxy;
|
|
515
517
|
}
|
|
@@ -12,27 +12,6 @@ import { createContext, useContext } from 'react';
|
|
|
12
12
|
// @ts-expect-error Internals
|
|
13
13
|
import { __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED as ReactInternals } from 'react';
|
|
14
14
|
|
|
15
|
-
const ReactRenderContext = createContext(0);
|
|
16
|
-
|
|
17
|
-
function needsSelector() {
|
|
18
|
-
// If we're already tracking then we definitely don't need useSelector
|
|
19
|
-
if (!tracking.current) {
|
|
20
|
-
try {
|
|
21
|
-
// If there's no dispatcher we're definitely not in React
|
|
22
|
-
// This is an optimization to not need to run useContext. If in a future React version
|
|
23
|
-
// this works differently we can change it or just remove it.
|
|
24
|
-
const dispatcher = ReactInternals.ReactCurrentDispatcher.current;
|
|
25
|
-
if (dispatcher) {
|
|
26
|
-
// If there's a dispatcher then we may be inside of a hook.
|
|
27
|
-
// Attempt a useContext hook, which will throw an error if outside of render.
|
|
28
|
-
useContext(ReactRenderContext);
|
|
29
|
-
return true;
|
|
30
|
-
}
|
|
31
|
-
} catch {} // eslint-disable-line no-empty
|
|
32
|
-
}
|
|
33
|
-
return false;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
15
|
interface ReactTrackingOptions {
|
|
37
16
|
auto?: boolean; // Make all get() calls act as useSelector() hooks
|
|
38
17
|
warnUnobserved?: boolean; // Warn if get() is used outside of an observer
|
|
@@ -41,20 +20,43 @@ interface ReactTrackingOptions {
|
|
|
41
20
|
export function enableReactTracking({ auto, warnUnobserved }: ReactTrackingOptions) {
|
|
42
21
|
const { get } = internal;
|
|
43
22
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
23
|
+
if (auto || (process.env.NODE_ENV === 'development' && warnUnobserved)) {
|
|
24
|
+
const ReactRenderContext = createContext(0);
|
|
25
|
+
|
|
26
|
+
const needsSelector = () => {
|
|
27
|
+
// If we're already tracking then we definitely don't need useSelector
|
|
28
|
+
if (!tracking.current) {
|
|
29
|
+
try {
|
|
30
|
+
// If there's no dispatcher we're definitely not in React
|
|
31
|
+
// This is an optimization to not need to run useContext. If in a future React version
|
|
32
|
+
// this works differently we can change it or just remove it.
|
|
33
|
+
const dispatcher = ReactInternals.ReactCurrentDispatcher.current;
|
|
34
|
+
if (dispatcher) {
|
|
35
|
+
// If there's a dispatcher then we may be inside of a hook.
|
|
36
|
+
// Attempt a useContext hook, which will throw an error if outside of render.
|
|
37
|
+
useContext(ReactRenderContext);
|
|
38
|
+
return true;
|
|
54
39
|
}
|
|
55
|
-
}
|
|
56
|
-
|
|
40
|
+
} catch {} // eslint-disable-line no-empty
|
|
41
|
+
}
|
|
42
|
+
return false;
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
configureLegendState({
|
|
46
|
+
observableFunctions: {
|
|
47
|
+
get: (node: NodeValue, options?: TrackingType | (GetOptions & UseSelectorOptions)) => {
|
|
48
|
+
if (needsSelector()) {
|
|
49
|
+
if (auto) {
|
|
50
|
+
return useSelector(() => get(node, options), isObject(options) ? options : undefined);
|
|
51
|
+
} else if (process.env.NODE_ENV === 'development' && warnUnobserved) {
|
|
52
|
+
console.warn(
|
|
53
|
+
'[legend-state] Detected a `get()` call in an unobserved component. You may want to wrap it in observer: https://legendapp.com/open-source/state/react-api/#observer-hoc',
|
|
54
|
+
);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
return get(node, options);
|
|
58
|
+
},
|
|
57
59
|
},
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
+
});
|
|
61
|
+
}
|
|
60
62
|
}
|
|
@@ -1,12 +1,21 @@
|
|
|
1
1
|
import { configureLegendState, internal, NodeValue } from '@legendapp/state';
|
|
2
2
|
import { useSelector, UseSelectorOptions } from '@legendapp/state/react';
|
|
3
3
|
|
|
4
|
-
// TODO:
|
|
4
|
+
// TODO: Deprecated, remove in v4
|
|
5
|
+
let didWarn = false;
|
|
5
6
|
|
|
6
7
|
export function enableReactUse() {
|
|
7
8
|
configureLegendState({
|
|
8
9
|
observableFunctions: {
|
|
9
|
-
use: (node: NodeValue, options?: UseSelectorOptions) =>
|
|
10
|
+
use: (node: NodeValue, options?: UseSelectorOptions) => {
|
|
11
|
+
if (process.env.NODE_ENV === 'development' && !didWarn) {
|
|
12
|
+
didWarn = true;
|
|
13
|
+
console.warn(
|
|
14
|
+
'[legend-state] enableReactUse() is deprecated. Please switch to using get() with observer, which is safer and more efficient. See https://legendapp.com/open-source/state/v3/react/react-api/',
|
|
15
|
+
);
|
|
16
|
+
}
|
|
17
|
+
return useSelector(internal.getProxy(node), options);
|
|
18
|
+
},
|
|
10
19
|
},
|
|
11
20
|
});
|
|
12
21
|
}
|
|
@@ -18,6 +18,8 @@ export type ExtractFCPropsType<T> = T extends FC<infer P> ? P : never;
|
|
|
18
18
|
// Extracting the forwardRef inspired by https://github.com/mobxjs/mobx/blob/main/packages/mobx-react-lite/src/observer.ts
|
|
19
19
|
export const hasSymbol = /* @__PURE__ */ typeof Symbol === 'function' && Symbol.for;
|
|
20
20
|
|
|
21
|
+
let didWarnProps = false;
|
|
22
|
+
|
|
21
23
|
// TODOV2: Change bindKeys to an options object, where one of the options is "convertChildren" so that behavior can be optional
|
|
22
24
|
function createReactiveComponent<P = object>(
|
|
23
25
|
component: FC<P>,
|
|
@@ -75,19 +77,17 @@ function createReactiveComponent<P = object>(
|
|
|
75
77
|
}
|
|
76
78
|
// Convert reactive props
|
|
77
79
|
else if (key.startsWith('$') || key.endsWith('$')) {
|
|
78
|
-
// TODOV3 Add this warning
|
|
79
|
-
//
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
// );
|
|
90
|
-
// }
|
|
80
|
+
// TODOV3 Add this warning
|
|
81
|
+
// TODOV4 Remove the deprecated endsWith option
|
|
82
|
+
if (process.env.NODE_ENV === 'development' && !didWarnProps && key.endsWith('$')) {
|
|
83
|
+
didWarnProps = true;
|
|
84
|
+
console.warn(
|
|
85
|
+
`[legend-state] Reactive props were changed to start with $ instead of end with $ in version 2.0. So please change ${key} to $${key.replace(
|
|
86
|
+
'$',
|
|
87
|
+
'',
|
|
88
|
+
)}. See https://legendapp.com/open-source/state/migrating for more details.`,
|
|
89
|
+
);
|
|
90
|
+
}
|
|
91
91
|
const k = key.endsWith('$') ? key.slice(0, -1) : key.slice(1);
|
|
92
92
|
// Return raw value and listen to the selector for changes
|
|
93
93
|
|
|
@@ -12,6 +12,7 @@ import type {
|
|
|
12
12
|
PersistMetadata,
|
|
13
13
|
PersistOptions,
|
|
14
14
|
SyncTransform,
|
|
15
|
+
Synced,
|
|
15
16
|
SyncedOptions,
|
|
16
17
|
TypeAtPath,
|
|
17
18
|
} from '@legendapp/state';
|
|
@@ -35,8 +36,9 @@ import {
|
|
|
35
36
|
import { observableSyncConfiguration } from './configureObservableSync';
|
|
36
37
|
import { removeNullUndefined } from './syncHelpers';
|
|
37
38
|
import { syncObservableAdapter } from './syncObservableAdapter';
|
|
39
|
+
import {} from 'src/helpers';
|
|
38
40
|
|
|
39
|
-
const { createPreviousHandler, globalState, symbolLinked, getNode, getNodeValue } = internal;
|
|
41
|
+
const { createPreviousHandler, getValueAtPath, globalState, symbolLinked, getNode, getNodeValue } = internal;
|
|
40
42
|
|
|
41
43
|
export const mapSyncPlugins: WeakMap<
|
|
42
44
|
ClassConstructor<ObservablePersistPlugin | ObservableSyncClass>,
|
|
@@ -318,7 +320,7 @@ async function prepChangeLocal(queuedChange: QueuedChange): Promise<PreppedChang
|
|
|
318
320
|
!inRemoteChange &&
|
|
319
321
|
pluginSync?.set &&
|
|
320
322
|
configRemote?.enableSync !== false &&
|
|
321
|
-
syncState.
|
|
323
|
+
syncState.isSyncEnabled.peek()
|
|
322
324
|
);
|
|
323
325
|
|
|
324
326
|
if (saveLocal || saveRemote) {
|
|
@@ -407,7 +409,7 @@ async function prepChangeRemote(queuedChange: QueuedChange): Promise<PreppedChan
|
|
|
407
409
|
const configRemote = syncOptions;
|
|
408
410
|
const saveLocal = persist && !configLocal.readonly && !isApplyingPending && syncState.isPersistEnabled.peek();
|
|
409
411
|
const saveRemote =
|
|
410
|
-
!inRemoteChange && pluginSync?.set && configRemote?.enableSync !== false && syncState.
|
|
412
|
+
!inRemoteChange && pluginSync?.set && configRemote?.enableSync !== false && syncState.isSyncEnabled.peek();
|
|
411
413
|
|
|
412
414
|
if (saveLocal || saveRemote) {
|
|
413
415
|
if (saveLocal && !syncState.isPersistLoaded.peek()) {
|
|
@@ -626,16 +628,17 @@ async function doChangeRemote(changeInfo: PreppedChangeRemote | undefined) {
|
|
|
626
628
|
for (let i = 0; i < pathStrs.length; i++) {
|
|
627
629
|
const pathStr = pathStrs[i];
|
|
628
630
|
// Clear pending for this path
|
|
629
|
-
if (pending?.[pathStr]) {
|
|
630
|
-
// Remove pending from local state
|
|
631
|
-
delete pending[pathStr];
|
|
632
|
-
}
|
|
633
|
-
// Clear pending for this path
|
|
634
631
|
if (pendingMetadata?.[pathStr]) {
|
|
635
632
|
// Remove pending from persisted medata state
|
|
636
633
|
delete pendingMetadata[pathStr];
|
|
637
634
|
metadata.pending = pendingMetadata;
|
|
638
635
|
}
|
|
636
|
+
// Clear pending for this path if not already removed by above
|
|
637
|
+
// pendingMetadata === pending sometimes
|
|
638
|
+
if (pending?.[pathStr]) {
|
|
639
|
+
// Remove pending from local state
|
|
640
|
+
delete pending[pathStr];
|
|
641
|
+
}
|
|
639
642
|
}
|
|
640
643
|
|
|
641
644
|
if (lastSync) {
|
|
@@ -805,7 +808,17 @@ async function loadLocal<T>(
|
|
|
805
808
|
export function syncObservable<T>(
|
|
806
809
|
obs$: ObservableParam<T>,
|
|
807
810
|
syncOptions: SyncedOptions<T>,
|
|
811
|
+
): Observable<ObservableSyncState>;
|
|
812
|
+
export function syncObservable<T>(obs$: ObservableParam<T>, syncOptions: Synced<T>): Observable<ObservableSyncState>;
|
|
813
|
+
export function syncObservable<T>(
|
|
814
|
+
obs$: ObservableParam<T>,
|
|
815
|
+
syncOptionsOrSynced: SyncedOptions<T> | Synced<T>,
|
|
808
816
|
): Observable<ObservableSyncState> {
|
|
817
|
+
let syncOptions = syncOptionsOrSynced as SyncedOptions<T>;
|
|
818
|
+
// If it's a synced then get the SyncOptions from it
|
|
819
|
+
if (isFunction(syncOptions)) {
|
|
820
|
+
syncOptions = syncOptions()[symbolLinked];
|
|
821
|
+
}
|
|
809
822
|
const node = getNode(obs$);
|
|
810
823
|
|
|
811
824
|
// Merge remote sync options with global options
|
|
@@ -825,7 +838,7 @@ export function syncObservable<T>(
|
|
|
825
838
|
isPersistLoaded: false,
|
|
826
839
|
isLoaded: !syncOptions.get,
|
|
827
840
|
isPersistEnabled: true,
|
|
828
|
-
|
|
841
|
+
isSyncEnabled: true,
|
|
829
842
|
clearPersist: undefined as unknown as () => Promise<void>,
|
|
830
843
|
sync: () => Promise.resolve(),
|
|
831
844
|
getPendingChanges: () => localState.pendingChanges,
|
|
@@ -868,7 +881,9 @@ export function syncObservable<T>(
|
|
|
868
881
|
}
|
|
869
882
|
|
|
870
883
|
const pending = localState.pendingChanges;
|
|
884
|
+
const currentValue = obs$.peek();
|
|
871
885
|
if (pending) {
|
|
886
|
+
let didChangeMetadata = false;
|
|
872
887
|
Object.keys(pending).forEach((key) => {
|
|
873
888
|
const p = key.split('/').filter((p) => p !== '');
|
|
874
889
|
const { v, t } = pending[key];
|
|
@@ -880,24 +895,37 @@ export function syncObservable<T>(
|
|
|
880
895
|
value = v;
|
|
881
896
|
}
|
|
882
897
|
} else if ((value as any)[p[0]] !== undefined) {
|
|
883
|
-
(
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
898
|
+
const curValue = getValueAtPath(currentValue as object, p);
|
|
899
|
+
const newValue = getValueAtPath(value as object, p);
|
|
900
|
+
if (JSON.stringify(curValue) === JSON.stringify(newValue)) {
|
|
901
|
+
delete pending[key];
|
|
902
|
+
didChangeMetadata = true;
|
|
903
|
+
} else {
|
|
904
|
+
(value as any) = setAtPath(
|
|
905
|
+
value as any,
|
|
906
|
+
p,
|
|
907
|
+
t,
|
|
908
|
+
v,
|
|
909
|
+
'merge',
|
|
910
|
+
obs$.peek(),
|
|
911
|
+
(path: string[], value: any) => {
|
|
912
|
+
delete pending[key];
|
|
913
|
+
pending[path.join('/')] = {
|
|
914
|
+
p: null,
|
|
915
|
+
v: value,
|
|
916
|
+
t: t.slice(0, path.length),
|
|
917
|
+
};
|
|
918
|
+
},
|
|
919
|
+
);
|
|
920
|
+
}
|
|
899
921
|
}
|
|
900
922
|
});
|
|
923
|
+
|
|
924
|
+
if (didChangeMetadata) {
|
|
925
|
+
updateMetadata(obs$, localState, syncState, syncOptions, {
|
|
926
|
+
pending,
|
|
927
|
+
});
|
|
928
|
+
}
|
|
901
929
|
}
|
|
902
930
|
|
|
903
931
|
onChangeRemote(() => {
|
package/src/syncTypes.ts
CHANGED
|
@@ -110,7 +110,7 @@ export interface SyncTransform<TOrig = any, TSaved = TOrig> {
|
|
|
110
110
|
export interface ObservableSyncStateBase {
|
|
111
111
|
isPersistLoaded: boolean;
|
|
112
112
|
isPersistEnabled: boolean;
|
|
113
|
-
|
|
113
|
+
isSyncEnabled: boolean;
|
|
114
114
|
lastSync?: number;
|
|
115
115
|
syncCount?: number;
|
|
116
116
|
clearPersist: () => Promise<void>;
|
package/sync.js
CHANGED
|
@@ -48,7 +48,7 @@ function syncObservableAdapter({ get, set }) {
|
|
|
48
48
|
return ret;
|
|
49
49
|
}
|
|
50
50
|
|
|
51
|
-
const { createPreviousHandler, globalState: globalState$1, symbolLinked: symbolLinked$2, getNode, getNodeValue: getNodeValue$1 } = state.internal;
|
|
51
|
+
const { createPreviousHandler, getValueAtPath, globalState: globalState$1, symbolLinked: symbolLinked$2, getNode, getNodeValue: getNodeValue$1 } = state.internal;
|
|
52
52
|
const mapSyncPlugins = new WeakMap();
|
|
53
53
|
const metadatas = new WeakMap();
|
|
54
54
|
const promisesLocalSaves = new Set();
|
|
@@ -228,7 +228,7 @@ async function prepChangeLocal(queuedChange) {
|
|
|
228
228
|
const saveRemote = !!(!inRemoteChange &&
|
|
229
229
|
(pluginSync === null || pluginSync === void 0 ? void 0 : pluginSync.set) &&
|
|
230
230
|
(configRemote === null || configRemote === void 0 ? void 0 : configRemote.enableSync) !== false &&
|
|
231
|
-
syncState.
|
|
231
|
+
syncState.isSyncEnabled.peek());
|
|
232
232
|
if (saveLocal || saveRemote) {
|
|
233
233
|
if (saveLocal && !syncState.isPersistLoaded.peek()) {
|
|
234
234
|
console.error('[legend-state] WARNING: An observable was changed before being loaded from persist', persist);
|
|
@@ -287,7 +287,7 @@ async function prepChangeRemote(queuedChange) {
|
|
|
287
287
|
const { config: configLocal } = parseLocalConfig(persist);
|
|
288
288
|
const configRemote = syncOptions;
|
|
289
289
|
const saveLocal = persist && !configLocal.readonly && !isApplyingPending && syncState.isPersistEnabled.peek();
|
|
290
|
-
const saveRemote = !inRemoteChange && (pluginSync === null || pluginSync === void 0 ? void 0 : pluginSync.set) && (configRemote === null || configRemote === void 0 ? void 0 : configRemote.enableSync) !== false && syncState.
|
|
290
|
+
const saveRemote = !inRemoteChange && (pluginSync === null || pluginSync === void 0 ? void 0 : pluginSync.set) && (configRemote === null || configRemote === void 0 ? void 0 : configRemote.enableSync) !== false && syncState.isSyncEnabled.peek();
|
|
291
291
|
if (saveLocal || saveRemote) {
|
|
292
292
|
if (saveLocal && !syncState.isPersistLoaded.peek()) {
|
|
293
293
|
console.error('[legend-state] WARNING: An observable was changed before being loaded from persist', persist);
|
|
@@ -462,16 +462,17 @@ async function doChangeRemote(changeInfo) {
|
|
|
462
462
|
for (let i = 0; i < pathStrs.length; i++) {
|
|
463
463
|
const pathStr = pathStrs[i];
|
|
464
464
|
// Clear pending for this path
|
|
465
|
-
if (pending === null || pending === void 0 ? void 0 : pending[pathStr]) {
|
|
466
|
-
// Remove pending from local state
|
|
467
|
-
delete pending[pathStr];
|
|
468
|
-
}
|
|
469
|
-
// Clear pending for this path
|
|
470
465
|
if (pendingMetadata === null || pendingMetadata === void 0 ? void 0 : pendingMetadata[pathStr]) {
|
|
471
466
|
// Remove pending from persisted medata state
|
|
472
467
|
delete pendingMetadata[pathStr];
|
|
473
468
|
metadata.pending = pendingMetadata;
|
|
474
469
|
}
|
|
470
|
+
// Clear pending for this path if not already removed by above
|
|
471
|
+
// pendingMetadata === pending sometimes
|
|
472
|
+
if (pending === null || pending === void 0 ? void 0 : pending[pathStr]) {
|
|
473
|
+
// Remove pending from local state
|
|
474
|
+
delete pending[pathStr];
|
|
475
|
+
}
|
|
475
476
|
}
|
|
476
477
|
if (lastSync) {
|
|
477
478
|
metadata.lastSync = lastSync;
|
|
@@ -602,7 +603,12 @@ async function loadLocal(obs, syncOptions, syncState, localState) {
|
|
|
602
603
|
}
|
|
603
604
|
syncState.isPersistLoaded.set(true);
|
|
604
605
|
}
|
|
605
|
-
function syncObservable(obs$,
|
|
606
|
+
function syncObservable(obs$, syncOptionsOrSynced) {
|
|
607
|
+
let syncOptions = syncOptionsOrSynced;
|
|
608
|
+
// If it's a synced then get the SyncOptions from it
|
|
609
|
+
if (state.isFunction(syncOptions)) {
|
|
610
|
+
syncOptions = syncOptions()[symbolLinked$2];
|
|
611
|
+
}
|
|
606
612
|
const node = getNode(obs$);
|
|
607
613
|
// Merge remote sync options with global options
|
|
608
614
|
if (syncOptions) {
|
|
@@ -616,7 +622,7 @@ function syncObservable(obs$, syncOptions) {
|
|
|
616
622
|
isPersistLoaded: false,
|
|
617
623
|
isLoaded: !syncOptions.get,
|
|
618
624
|
isPersistEnabled: true,
|
|
619
|
-
|
|
625
|
+
isSyncEnabled: true,
|
|
620
626
|
clearPersist: undefined,
|
|
621
627
|
sync: () => Promise.resolve(),
|
|
622
628
|
getPendingChanges: () => localState.pendingChanges,
|
|
@@ -656,7 +662,9 @@ function syncObservable(obs$, syncOptions) {
|
|
|
656
662
|
value = await value;
|
|
657
663
|
}
|
|
658
664
|
const pending = localState.pendingChanges;
|
|
665
|
+
const currentValue = obs$.peek();
|
|
659
666
|
if (pending) {
|
|
667
|
+
let didChangeMetadata = false;
|
|
660
668
|
Object.keys(pending).forEach((key) => {
|
|
661
669
|
const p = key.split('/').filter((p) => p !== '');
|
|
662
670
|
const { v, t } = pending[key];
|
|
@@ -669,16 +677,29 @@ function syncObservable(obs$, syncOptions) {
|
|
|
669
677
|
}
|
|
670
678
|
}
|
|
671
679
|
else if (value[p[0]] !== undefined) {
|
|
672
|
-
|
|
680
|
+
const curValue = getValueAtPath(currentValue, p);
|
|
681
|
+
const newValue = getValueAtPath(value, p);
|
|
682
|
+
if (JSON.stringify(curValue) === JSON.stringify(newValue)) {
|
|
673
683
|
delete pending[key];
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
684
|
+
didChangeMetadata = true;
|
|
685
|
+
}
|
|
686
|
+
else {
|
|
687
|
+
value = state.setAtPath(value, p, t, v, 'merge', obs$.peek(), (path, value) => {
|
|
688
|
+
delete pending[key];
|
|
689
|
+
pending[path.join('/')] = {
|
|
690
|
+
p: null,
|
|
691
|
+
v: value,
|
|
692
|
+
t: t.slice(0, path.length),
|
|
693
|
+
};
|
|
694
|
+
});
|
|
695
|
+
}
|
|
680
696
|
}
|
|
681
697
|
});
|
|
698
|
+
if (didChangeMetadata) {
|
|
699
|
+
updateMetadata(obs$, localState, syncState, syncOptions, {
|
|
700
|
+
pending,
|
|
701
|
+
});
|
|
702
|
+
}
|
|
682
703
|
}
|
|
683
704
|
onChangeRemote(() => {
|
|
684
705
|
if (mode === 'assign' && state.isObject(value)) {
|