@legendapp/state 0.9.2-alpha.7 → 0.9.2-alpha.8

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@legendapp/state",
3
- "version": "0.9.2-alpha.7",
3
+ "version": "0.9.2-alpha.8",
4
4
  "description": "legend-state",
5
5
  "sideEffects": false,
6
6
  "private": false,
package/react.d.ts CHANGED
@@ -1,2 +1,4 @@
1
1
  export * from './src/react/useNewObservable';
2
2
  export * from './src/react/useObservables';
3
+ export * from './src/react/usePrimitiveFunctions';
4
+ export * from './src/react/useComputed';
package/react.js CHANGED
@@ -16,4 +16,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./src/react/useNewObservable"), exports);
18
18
  __exportStar(require("./src/react/useObservables"), exports);
19
+ __exportStar(require("./src/react/usePrimitiveFunctions"), exports);
20
+ __exportStar(require("./src/react/useComputed"), exports);
19
21
  //# sourceMappingURL=react.js.map
package/react.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"react.js","sourceRoot":"","sources":["../react.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+DAA6C;AAC7C,6DAA2C"}
1
+ {"version":3,"file":"react.js","sourceRoot":"","sources":["../react.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+DAA6C;AAC7C,6DAA2C;AAC3C,oEAAkD;AAClD,0DAAwC"}
package/src/observable.js CHANGED
@@ -71,13 +71,14 @@ function _set(proxyOwner, _, prop, value) {
71
71
  const isValuePrimitive = (0, globals_1.isPrimitive)(value);
72
72
  const prevValue = info.primitive ? target[globals_1.symbolValue] : (0, globals_1.clone)(target);
73
73
  const needsNotifyUndefined = !value || isValuePrimitive !== info.primitive;
74
+ const childrenToNotify = [];
74
75
  // 1. Delete keys that no longer exist
75
76
  Object.keys(target).forEach((key) => {
76
77
  if (needsNotifyUndefined || (value[key] === undefined && value[+key] === undefined)) {
77
78
  if (info.proxies) {
78
79
  const child = info.proxies.get(key);
79
80
  if (child) {
80
- (0, observableFns_1.notifyChildrenDeleted)(child);
81
+ childrenToNotify.push(child);
81
82
  info.proxies.delete(key);
82
83
  }
83
84
  }
@@ -94,9 +95,16 @@ function _set(proxyOwner, _, prop, value) {
94
95
  else {
95
96
  info.primitive = false;
96
97
  if (info.proxies) {
98
+ info.proxies.forEach((child) => {
99
+ const childInfo = infos.get(child);
100
+ const prop = childInfo.prop;
101
+ if (value[prop]) {
102
+ child.set(value[childInfo.prop]);
103
+ }
104
+ });
97
105
  // 2. Assign the values onto the target which will update all children proxies, but would leave this
98
106
  // as a shallow copy of the the value
99
- _assign(proxyOwner, target, value);
107
+ // _assign(proxyOwner as Observable, target, value);
100
108
  }
101
109
  // Make sure keys are set on original
102
110
  if ((0, tools_1.isObject)(value)) {
@@ -114,6 +122,7 @@ function _set(proxyOwner, _, prop, value) {
114
122
  if (value !== prevValue) {
115
123
  (0, observableFns_1.notifyObservable)(proxyOwner, value, prevValue, []);
116
124
  }
125
+ childrenToNotify.forEach(observableFns_1.notifyChildrenDeleted);
117
126
  }
118
127
  else if (typeof prop === 'symbol') {
119
128
  target[prop] = value;
@@ -256,7 +265,8 @@ const proxyHandlerUnsafe = {
256
265
  lastAccessedProxy.prop = prop;
257
266
  }
258
267
  updateTracking(proxyOwner, prop, info, /*shallow*/ false);
259
- if ((observableState_1.state.inProp || targetValue === undefined || targetValue === null || !(0, globals_1.isPrimitive)(targetValue)) &&
268
+ if (prop !== globals_1.symbolValue &&
269
+ (observableState_1.state.inProp || targetValue === undefined || targetValue === null || !(0, globals_1.isPrimitive)(targetValue)) &&
260
270
  !(targetValue instanceof Promise) &&
261
271
  !(0, tools_1.isFunction)(targetValue)) {
262
272
  // Get proxy for prop if it's not a primitive or if using `prop` function
@@ -1 +1 @@
1
- {"version":3,"file":"observable.js","sourceRoot":"","sources":["../../src/observable.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"observable.js","sourceRoot":"","sources":["../../src/observable.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
1
  import type { ObservableComputed, ValidObservableParam } from './observableInterfaces';
2
- export declare function observableComputed<T>(fn: () => ValidObservableParam<T>): ObservableComputed<T>;
2
+ export declare function observableComputed<T>(compute: () => ValidObservableParam<T>): ObservableComputed<T>;
@@ -3,22 +3,22 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.observableComputed = void 0;
4
4
  const observable_1 = require("./observable");
5
5
  const observableState_1 = require("./observableState");
6
- function onChanged(observable, fn) {
6
+ function onChanged(observable, compute) {
7
7
  const info = observableState_1.state.infos.get(observable);
8
- const value = fn();
8
+ const value = compute();
9
9
  // Temporarily disable readonly to set the new value
10
10
  info.readonly = false;
11
11
  observable.set(value);
12
12
  info.readonly = true;
13
13
  }
14
- function observableComputed(fn) {
14
+ function observableComputed(compute) {
15
15
  // Set isTracking so that the proxy `get` function will track accessed proxies
16
16
  observableState_1.state.isTracking = true;
17
17
  // Create an observable for this computed variable
18
- const obs = (0, observable_1.observable)(fn());
18
+ const obs = (0, observable_1.observable)(compute());
19
19
  observableState_1.state.infos.get(obs).readonly = true;
20
20
  // Listen to all tracked proxies
21
- observableState_1.state.trackedProxies.forEach(([tracked, prop]) => (prop ? tracked.prop(prop) : tracked).on('change', onChanged.bind(this, obs, fn)));
21
+ observableState_1.state.trackedProxies.forEach(([tracked, prop]) => (prop ? tracked.prop(prop) : tracked).on('change', onChanged.bind(this, obs, compute)));
22
22
  // Reset state
23
23
  observableState_1.state.isTracking = false;
24
24
  observableState_1.state.trackedProxies = [];
@@ -1 +1 @@
1
- {"version":3,"file":"observableComputed.js","sourceRoot":"","sources":["../../src/observableComputed.ts"],"names":[],"mappings":";;;AAAA,6CAA0C;AAE1C,uDAA0C;AAE1C,SAAS,SAAS,CAAI,UAAsB,EAAE,EAAW;IACrD,MAAM,IAAI,GAAG,uBAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAEzC,MAAM,KAAK,GAAG,EAAE,EAAE,CAAC;IAEnB,oDAAoD;IACpD,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;IACtB,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACtB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;AACzB,CAAC;AAED,SAAgB,kBAAkB,CAAI,EAAiC;IACnE,8EAA8E;IAC9E,uBAAK,CAAC,UAAU,GAAG,IAAI,CAAC;IAExB,kDAAkD;IAClD,MAAM,GAAG,GAAG,IAAA,uBAAU,EAAI,EAAE,EAAE,CAAC,CAAC;IAChC,uBAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC;IAErC,gCAAgC;IAChC,uBAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE,CAC7C,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CACpF,CAAC;IAEF,cAAc;IACd,uBAAK,CAAC,UAAU,GAAG,KAAK,CAAC;IACzB,uBAAK,CAAC,cAAc,GAAG,EAAE,CAAC;IAE1B,OAAO,GAAG,CAAC;AACf,CAAC;AAlBD,gDAkBC"}
1
+ {"version":3,"file":"observableComputed.js","sourceRoot":"","sources":["../../src/observableComputed.ts"],"names":[],"mappings":";;;AAAA,6CAA0C;AAE1C,uDAA0C;AAE1C,SAAS,SAAS,CAAI,UAAsB,EAAE,OAAgB;IAC1D,MAAM,IAAI,GAAG,uBAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAEzC,MAAM,KAAK,GAAG,OAAO,EAAE,CAAC;IAExB,oDAAoD;IACpD,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;IACtB,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACtB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;AACzB,CAAC;AAED,SAAgB,kBAAkB,CAAI,OAAsC;IACxE,8EAA8E;IAC9E,uBAAK,CAAC,UAAU,GAAG,IAAI,CAAC;IAExB,kDAAkD;IAClD,MAAM,GAAG,GAAG,IAAA,uBAAU,EAAI,OAAO,EAAE,CAAC,CAAC;IACrC,uBAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC;IAErC,gCAAgC;IAChC,uBAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE,CAC7C,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,CACzF,CAAC;IAEF,cAAc;IACd,uBAAK,CAAC,UAAU,GAAG,KAAK,CAAC;IACzB,uBAAK,CAAC,cAAc,GAAG,EAAE,CAAC;IAE1B,OAAO,GAAG,CAAC;AACf,CAAC;AAlBD,gDAkBC"}
@@ -0,0 +1,12 @@
1
+ import { ObservableComputed, ValidObservableParam } from '../observableInterfaces';
2
+ /**
3
+ * A React hook that creates a new observable and can optionally listen or persist its state.
4
+ *
5
+ * @param value The initial value of the observable or a function that returns the initial value
6
+ * @param observe (optional) Listen to the observable for changes
7
+ * @param persist (optional) PersistOptions for peristing the observable to state
8
+ *
9
+ * @see https://www.legendapp.com/dev/state/react/#usenewobservable
10
+ */
11
+ declare function useComputed<T>(compute: () => ValidObservableParam<T>, observe?: boolean): [ObservableComputed<T>, T];
12
+ export { useComputed };
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useComputed = void 0;
4
+ const react_1 = require("react");
5
+ const observableComputed_1 = require("src/observableComputed");
6
+ const useObservables_1 = require("./useObservables");
7
+ /**
8
+ * A React hook that creates a new observable and can optionally listen or persist its state.
9
+ *
10
+ * @param value The initial value of the observable or a function that returns the initial value
11
+ * @param observe (optional) Listen to the observable for changes
12
+ * @param persist (optional) PersistOptions for peristing the observable to state
13
+ *
14
+ * @see https://www.legendapp.com/dev/state/react/#usenewobservable
15
+ */
16
+ function useComputed(compute, observe) {
17
+ // Create the observableComputed
18
+ const obs = (0, react_1.useMemo)(() => (0, observableComputed_1.observableComputed)(compute), []); // eslint-disable-line react-hooks/exhaustive-deps
19
+ if (observe !== false) {
20
+ (0, useObservables_1.useObservables)(() => [obs]);
21
+ }
22
+ return [obs, obs.get()];
23
+ }
24
+ exports.useComputed = useComputed;
25
+ //# sourceMappingURL=useComputed.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useComputed.js","sourceRoot":"","sources":["../../../src/react/useComputed.ts"],"names":[],"mappings":";;;AAAA,iCAAgC;AAChC,+DAA4D;AAE5D,qDAAkD;AAElD;;;;;;;;GAQG;AACH,SAAS,WAAW,CAAI,OAAsC,EAAE,OAAiB;IAC7E,gCAAgC;IAChC,MAAM,GAAG,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,IAAA,uCAAkB,EAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,kDAAkD;IAE9G,IAAI,OAAO,KAAK,KAAK,EAAE;QACnB,IAAA,+BAAc,EAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;KAC/B;IAED,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;AAC5B,CAAC;AAEQ,kCAAW"}