@legendapp/state 0.20.0-next.0 → 0.20.1

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/CHANGELOG.md CHANGED
@@ -1,3 +1,17 @@
1
+ ## 0.20.0
2
+
3
+ - Breaking: Changed behavior of `observe` and `useObserve` so that they have a callback parameter, useful for observing an event and doing something only when it changes. It also has a new `previous` parameter to compare to the previous run which depends on a return value, so the previous behavior using the return value is moved into the callback parameter. If you were returning false to cancel observing, you can now use `e.cancel = true`. And if you were returning a cleanup function you can use `e.onCleanup = () => ...`. It also adds a `num` param to know how many times it's run.
4
+ - Breaking: Renamed event `dispatch` to `fire`
5
+ - Breaking: Removed deprecated hooking into internal dispatcher
6
+ - Breaking: Removed deprecated Bindable components
7
+ - Feat: Added a callback parameter to `useObserve`, useful for observing an event and doing something only when it changes
8
+ - Feat: Added useMount and useUnmount lifecycle hooks to encourage getting away from useEffect
9
+ - Feat: `useObserve` has a second callback parameter which will run after the selector. This can be useful for passing an `observable` or `event` as the first parameter.
10
+ - Fix: `reactive` and `observe` components were sometimes not retaining their static properties (like id). They now use a Proxy wrapper instead of an HOC, which reduces component tree depth and avoids any other bugs from wrapping components and forwarding refs.
11
+ - Fix: `event` was not working correctly in selectors
12
+ - Fix: The two-way binding components are always controlled, even if the `value$` is undefined
13
+ - Types: Improved types of `computed` and `useComponent` to accept a Promise
14
+
1
15
  ## 0.19.8
2
16
 
3
17
  - Fix: Reactive components were sometimes not working in React Native https://github.com/LegendApp/legend-state/issues/32
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@legendapp/state",
3
- "version": "0.20.0-next.0",
3
+ "version": "0.20.1",
4
4
  "description": "legend-state",
5
5
  "sideEffects": false,
6
6
  "private": false,
package/react.js CHANGED
@@ -110,6 +110,18 @@ function enableLegendStateReact() {
110
110
  }
111
111
  }
112
112
 
113
+ const bindables = new Set(['input', 'textarea', 'select']);
114
+ const bindInfo = { value: { handler: 'onChange', getValue: (e) => e.target.value, defaultValue: '' } };
115
+ const bindInfoInput = Object.assign({ checked: { handler: 'onChange', getValue: (e) => e.target.checked } }, bindInfo);
116
+ new Proxy({}, {
117
+ get(target, p) {
118
+ if (!target[p]) {
119
+ target[p] = react.reactive(p, bindables.has(p) && (p === 'input' ? bindInfoInput : bindInfo));
120
+ }
121
+ return target[p];
122
+ },
123
+ });
124
+
113
125
  function Computed({ children }) {
114
126
  return useSelector(children, { shouldRender: true });
115
127
  }
@@ -139,7 +151,7 @@ function For({ each, optimized, item, itemProps, children, }) {
139
151
  // Update the ref so the generated component uses the latest function
140
152
  const refChildren = React.useRef();
141
153
  refChildren.current = children;
142
- item = React.useMemo(() => React.memo(({ item }) => refChildren.current(item)), []);
154
+ item = React.useMemo(() => react.observer(({ item }) => refChildren.current(item)), []);
143
155
  }
144
156
  if (!v)
145
157
  return null;
@@ -156,92 +168,105 @@ function For({ each, optimized, item, itemProps, children, }) {
156
168
  return out;
157
169
  }
158
170
 
171
+ const Update = (s) => s + 1;
159
172
  // Extracting the forwardRef inspired by https://github.com/mobxjs/mobx/blob/main/packages/mobx-react-lite/src/observer.ts
160
173
  const hasSymbol = typeof Symbol === 'function' && Symbol.for;
161
174
  const ReactForwardRefSymbol = hasSymbol
162
175
  ? Symbol.for('react.forward_ref')
163
176
  : typeof React.forwardRef === 'function' && React.forwardRef((props) => null)['$$typeof'];
164
- const Update = (s) => s + 1;
165
177
  function createReactiveComponent(component, observe, reactive, bindKeys) {
166
- const isStr = state.isString(component);
167
- let render = component;
168
- const componentName = !isStr && (component.displayName || component.name);
169
- // Unwrap forwardRef on the component
178
+ // If this component is already reactive bail out early
179
+ // This can happen with Fast Refresh.
180
+ if (component['__legend_proxied'])
181
+ return component;
170
182
  let useForwardRef;
171
- if (!isStr && ReactForwardRefSymbol && component['$$typeof'] === ReactForwardRefSymbol) {
172
- useForwardRef = true;
173
- render = component['render'];
174
- if (process.env.NODE_ENV === 'development' && typeof render !== 'function') {
175
- throw new Error(`[legend-state] \`render\` property of ForwardRef was not a function`);
176
- }
183
+ let render = component;
184
+ if (state.isString(component)) {
185
+ const base = component;
186
+ // If this is a builtin create a wrapper around it so we can proxy it
187
+ render = component = (props, ref) => {
188
+ const propsOut = { ...props };
189
+ if (ref && (state.isFunction(ref) || !state.isEmpty(ref))) {
190
+ propsOut.ref = ref;
191
+ }
192
+ return React.createElement(base, propsOut);
193
+ };
177
194
  }
178
- let ret = function ReactiveComponent(props, ref) {
179
- const fr = React.useReducer(Update, 0)[1];
180
- const propsOut = {};
181
- if (isStr && ref && (state.isFunction(ref) || !state.isEmpty(ref))) {
182
- propsOut.ref = ref;
195
+ else {
196
+ // Unwrap forwardRef on the component
197
+ if (ReactForwardRefSymbol && component['$$typeof'] === ReactForwardRefSymbol) {
198
+ useForwardRef = true;
199
+ render = component['render'];
200
+ if (process.env.NODE_ENV === 'development' && typeof render !== 'function') {
201
+ throw new Error(`[legend-state] \`render\` property of ForwardRef was not a function`);
202
+ }
183
203
  }
184
- if (reactive) {
185
- const keys = Object.keys(props);
186
- for (let i = 0; i < keys.length; i++) {
187
- const key = keys[i];
188
- const p = props[key];
189
- if (key.endsWith('$') && (state.isFunction(p) || state.isObservable(p))) {
190
- const k = key.slice(0, -1);
191
- propsOut[k] = react.useSelector(p, { forceRender: fr });
192
- const bind = bindKeys === null || bindKeys === void 0 ? void 0 : bindKeys[k];
193
- if (bind && state.isObservable(p)) {
194
- if (bind.defaultValue !== undefined && propsOut[k] === undefined) {
195
- propsOut[k] = bind.defaultValue;
204
+ }
205
+ const proxyHandler = {
206
+ apply(target, thisArg, argArray) {
207
+ const fr = React.useReducer(Update, 0)[1];
208
+ // If this is a reactive component, convert all props ending in $
209
+ // to regular props and set up a useSelector listener
210
+ if (reactive) {
211
+ const props = argArray[0];
212
+ const propsOut = {};
213
+ const keys = Object.keys(props);
214
+ for (let i = 0; i < keys.length; i++) {
215
+ const key = keys[i];
216
+ const p = props[key];
217
+ // Convert reactive props
218
+ if (key.endsWith('$')) {
219
+ const k = key.slice(0, -1);
220
+ // Return raw value and Listen to the selector for changes
221
+ propsOut[k] = react.useSelector(p, { forceRender: fr });
222
+ // If this key is one of the bind keys set up a two-way binding
223
+ const bind = bindKeys === null || bindKeys === void 0 ? void 0 : bindKeys[k];
224
+ if (bind && state.isObservable(p)) {
225
+ // Use the bind's defaultValue if value is undefined
226
+ if (bind.defaultValue !== undefined && propsOut[k] === undefined) {
227
+ propsOut[k] = bind.defaultValue;
228
+ }
229
+ // Hook up the change lander
230
+ propsOut[bind.handler] = React.useCallback((e) => {
231
+ var _a;
232
+ p.set(bind.getValue(e));
233
+ // @ts-ignore
234
+ (_a = props[bind.handler]) === null || _a === void 0 ? void 0 : _a.call(props, e);
235
+ }, [props[bind.handler], bindKeys]);
196
236
  }
197
- propsOut[bind.handler] = React.useCallback((e) => {
198
- var _a;
199
- p.set(bind.getValue(e));
200
- // @ts-ignore
201
- (_a = props[bind.handler]) === null || _a === void 0 ? void 0 : _a.call(props, e);
202
- }, [props[bind.handler], bindKeys]);
237
+ // Delete the reactive key
238
+ delete propsOut[key];
239
+ }
240
+ else if (propsOut[key] === undefined) {
241
+ propsOut[key] = p;
203
242
  }
204
- delete propsOut[key];
205
- }
206
- else if (propsOut[key] === undefined) {
207
- propsOut[key] = p;
208
243
  }
244
+ argArray[0] = propsOut;
209
245
  }
210
- }
211
- else {
212
- Object.assign(propsOut, props);
213
- }
214
- return observe
215
- ? react.useSelector(() => (isStr ? React.createElement(render, propsOut) : render(propsOut, ref)), {
216
- forceRender: fr,
217
- shouldRender: true,
218
- })
219
- : isStr
220
- ? React.createElement(render, propsOut)
221
- : render(propsOut, ref);
246
+ // If observing wrap the whole render in a useSelector to listen to it
247
+ if (observe && fr) {
248
+ return react.useSelector(() => Reflect.apply(target, thisArg, argArray), {
249
+ forceRender: fr,
250
+ shouldRender: true,
251
+ });
252
+ }
253
+ else {
254
+ return Reflect.apply(target, thisArg, argArray);
255
+ }
256
+ },
222
257
  };
223
- if (componentName) {
224
- ret.displayName = componentName;
258
+ const proxy = new Proxy(render, proxyHandler);
259
+ let ret;
260
+ if (useForwardRef) {
261
+ ret = component;
262
+ ret['render'] = proxy;
263
+ ret['__legend_proxied'] = proxy;
225
264
  }
226
- // Wrap back in forwardRef if necessary
227
- if (isStr || useForwardRef) {
228
- ret = React.forwardRef(ret);
265
+ else {
266
+ ret = proxy;
229
267
  }
230
- ret = observe ? React.memo(ret) : ret;
231
- Object.keys(component).forEach((key) => {
232
- if (!hoistBlackList[key]) {
233
- Object.defineProperty(ret, key, Object.getOwnPropertyDescriptor(component, key));
234
- }
235
- });
236
- return ret;
268
+ return observe ? React.memo(ret) : ret;
237
269
  }
238
- const hoistBlackList = {
239
- $$typeof: true,
240
- render: true,
241
- compare: true,
242
- type: true,
243
- displayName: true,
244
- };
245
270
  function observer(component) {
246
271
  return createReactiveComponent(component, true);
247
272
  }
@@ -288,9 +313,11 @@ function useObserve(selector, callback) {
288
313
  React.useEffect(() => {
289
314
  return state.observe((e) => {
290
315
  const { selector, callback } = ref.current;
316
+ delete e.value;
291
317
  state.computeSelector(selector, e);
292
318
  // Don't run callback the first time if it's an event
293
319
  if (callback && (e.num > 0 || !selector[state.symbolIsEvent])) {
320
+ e.value = e.previous;
294
321
  callback(e);
295
322
  }
296
323
  });
@@ -304,8 +331,6 @@ function useUnmount(fn) {
304
331
  return React.useEffect(() => fn, []);
305
332
  }
306
333
 
307
- enableLegendStateReact();
308
-
309
334
  exports.Computed = Computed;
310
335
  exports.For = For;
311
336
  exports.Memo = Memo;
package/react.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"react.js","sources":["../../src/react/createObservableHook.ts","../../src/react/useSelector.ts","../../src/react/enableLegendStateReact.ts","../../src/react/flow.tsx","../../src/react/reactive-observer.tsx","../../src/react/useComputed.ts","../../src/react/useObservable.ts","../../src/react/useObservableReducer.ts","../../src/react/useObserve.ts","../../src/react/lifecycle.tsx","../../react.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["React","observable","Update","symbolUndef","useReducer","observe","computeSelector","isPrimitive","memo","getNode","createElement","extraPrimitiveProps","ObservablePrimitiveClass","isFunction","useRef","useMemo","forwardRef","isString","isEmpty","isObservable","useSelector","useCallback","computed","useEffect","symbolIsEvent"],"mappings":"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"}
1
+ {"version":3,"file":"react.js","sources":["../../src/react/createObservableHook.ts","../../src/react/useSelector.ts","../../src/react/enableLegendStateReact.ts","../../src/react-components/react-components.tsx","../../src/react/flow.tsx","../../src/react/reactive-observer.tsx","../../src/react/useComputed.ts","../../src/react/useObservable.ts","../../src/react/useObservableReducer.ts","../../src/react/useObserve.ts","../../src/react/lifecycle.tsx"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["React","observable","Update","symbolUndef","useReducer","observe","computeSelector","isPrimitive","memo","getNode","createElement","extraPrimitiveProps","ObservablePrimitiveClass","reactive","isFunction","useRef","useMemo","observer","forwardRef","isString","isEmpty","useSelector","isObservable","useCallback","computed","useEffect","symbolIsEvent"],"mappings":"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"}
package/react.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import { observable, observe, computeSelector, symbolUndef, isPrimitive, getNode, ObservablePrimitiveClass, extraPrimitiveProps, isFunction, isString, isEmpty, isObservable, computed, symbolIsEvent } from '@legendapp/state';
2
2
  import React, { useReducer, memo, createElement, useRef, useMemo, forwardRef, useCallback, useEffect } from 'react';
3
- import { useSelector as useSelector$1 } from '@legendapp/state/react';
3
+ import { reactive as reactive$1, observer as observer$1, useSelector as useSelector$1 } from '@legendapp/state/react';
4
4
 
5
5
  function createObservableHook(fn) {
6
6
  return function (...args) {
@@ -102,6 +102,18 @@ function enableLegendStateReact() {
102
102
  }
103
103
  }
104
104
 
105
+ const bindables = new Set(['input', 'textarea', 'select']);
106
+ const bindInfo = { value: { handler: 'onChange', getValue: (e) => e.target.value, defaultValue: '' } };
107
+ const bindInfoInput = Object.assign({ checked: { handler: 'onChange', getValue: (e) => e.target.checked } }, bindInfo);
108
+ new Proxy({}, {
109
+ get(target, p) {
110
+ if (!target[p]) {
111
+ target[p] = reactive$1(p, bindables.has(p) && (p === 'input' ? bindInfoInput : bindInfo));
112
+ }
113
+ return target[p];
114
+ },
115
+ });
116
+
105
117
  function Computed({ children }) {
106
118
  return useSelector(children, { shouldRender: true });
107
119
  }
@@ -131,7 +143,7 @@ function For({ each, optimized, item, itemProps, children, }) {
131
143
  // Update the ref so the generated component uses the latest function
132
144
  const refChildren = useRef();
133
145
  refChildren.current = children;
134
- item = useMemo(() => memo(({ item }) => refChildren.current(item)), []);
146
+ item = useMemo(() => observer$1(({ item }) => refChildren.current(item)), []);
135
147
  }
136
148
  if (!v)
137
149
  return null;
@@ -148,92 +160,105 @@ function For({ each, optimized, item, itemProps, children, }) {
148
160
  return out;
149
161
  }
150
162
 
163
+ const Update = (s) => s + 1;
151
164
  // Extracting the forwardRef inspired by https://github.com/mobxjs/mobx/blob/main/packages/mobx-react-lite/src/observer.ts
152
165
  const hasSymbol = typeof Symbol === 'function' && Symbol.for;
153
166
  const ReactForwardRefSymbol = hasSymbol
154
167
  ? Symbol.for('react.forward_ref')
155
168
  : typeof forwardRef === 'function' && forwardRef((props) => null)['$$typeof'];
156
- const Update = (s) => s + 1;
157
169
  function createReactiveComponent(component, observe, reactive, bindKeys) {
158
- const isStr = isString(component);
159
- let render = component;
160
- const componentName = !isStr && (component.displayName || component.name);
161
- // Unwrap forwardRef on the component
170
+ // If this component is already reactive bail out early
171
+ // This can happen with Fast Refresh.
172
+ if (component['__legend_proxied'])
173
+ return component;
162
174
  let useForwardRef;
163
- if (!isStr && ReactForwardRefSymbol && component['$$typeof'] === ReactForwardRefSymbol) {
164
- useForwardRef = true;
165
- render = component['render'];
166
- if (process.env.NODE_ENV === 'development' && typeof render !== 'function') {
167
- throw new Error(`[legend-state] \`render\` property of ForwardRef was not a function`);
168
- }
175
+ let render = component;
176
+ if (isString(component)) {
177
+ const base = component;
178
+ // If this is a builtin create a wrapper around it so we can proxy it
179
+ render = component = (props, ref) => {
180
+ const propsOut = { ...props };
181
+ if (ref && (isFunction(ref) || !isEmpty(ref))) {
182
+ propsOut.ref = ref;
183
+ }
184
+ return createElement(base, propsOut);
185
+ };
169
186
  }
170
- let ret = function ReactiveComponent(props, ref) {
171
- const fr = useReducer(Update, 0)[1];
172
- const propsOut = {};
173
- if (isStr && ref && (isFunction(ref) || !isEmpty(ref))) {
174
- propsOut.ref = ref;
187
+ else {
188
+ // Unwrap forwardRef on the component
189
+ if (ReactForwardRefSymbol && component['$$typeof'] === ReactForwardRefSymbol) {
190
+ useForwardRef = true;
191
+ render = component['render'];
192
+ if (process.env.NODE_ENV === 'development' && typeof render !== 'function') {
193
+ throw new Error(`[legend-state] \`render\` property of ForwardRef was not a function`);
194
+ }
175
195
  }
176
- if (reactive) {
177
- const keys = Object.keys(props);
178
- for (let i = 0; i < keys.length; i++) {
179
- const key = keys[i];
180
- const p = props[key];
181
- if (key.endsWith('$') && (isFunction(p) || isObservable(p))) {
182
- const k = key.slice(0, -1);
183
- propsOut[k] = useSelector$1(p, { forceRender: fr });
184
- const bind = bindKeys === null || bindKeys === void 0 ? void 0 : bindKeys[k];
185
- if (bind && isObservable(p)) {
186
- if (bind.defaultValue !== undefined && propsOut[k] === undefined) {
187
- propsOut[k] = bind.defaultValue;
196
+ }
197
+ const proxyHandler = {
198
+ apply(target, thisArg, argArray) {
199
+ const fr = useReducer(Update, 0)[1];
200
+ // If this is a reactive component, convert all props ending in $
201
+ // to regular props and set up a useSelector listener
202
+ if (reactive) {
203
+ const props = argArray[0];
204
+ const propsOut = {};
205
+ const keys = Object.keys(props);
206
+ for (let i = 0; i < keys.length; i++) {
207
+ const key = keys[i];
208
+ const p = props[key];
209
+ // Convert reactive props
210
+ if (key.endsWith('$')) {
211
+ const k = key.slice(0, -1);
212
+ // Return raw value and Listen to the selector for changes
213
+ propsOut[k] = useSelector$1(p, { forceRender: fr });
214
+ // If this key is one of the bind keys set up a two-way binding
215
+ const bind = bindKeys === null || bindKeys === void 0 ? void 0 : bindKeys[k];
216
+ if (bind && isObservable(p)) {
217
+ // Use the bind's defaultValue if value is undefined
218
+ if (bind.defaultValue !== undefined && propsOut[k] === undefined) {
219
+ propsOut[k] = bind.defaultValue;
220
+ }
221
+ // Hook up the change lander
222
+ propsOut[bind.handler] = useCallback((e) => {
223
+ var _a;
224
+ p.set(bind.getValue(e));
225
+ // @ts-ignore
226
+ (_a = props[bind.handler]) === null || _a === void 0 ? void 0 : _a.call(props, e);
227
+ }, [props[bind.handler], bindKeys]);
188
228
  }
189
- propsOut[bind.handler] = useCallback((e) => {
190
- var _a;
191
- p.set(bind.getValue(e));
192
- // @ts-ignore
193
- (_a = props[bind.handler]) === null || _a === void 0 ? void 0 : _a.call(props, e);
194
- }, [props[bind.handler], bindKeys]);
229
+ // Delete the reactive key
230
+ delete propsOut[key];
231
+ }
232
+ else if (propsOut[key] === undefined) {
233
+ propsOut[key] = p;
195
234
  }
196
- delete propsOut[key];
197
- }
198
- else if (propsOut[key] === undefined) {
199
- propsOut[key] = p;
200
235
  }
236
+ argArray[0] = propsOut;
201
237
  }
202
- }
203
- else {
204
- Object.assign(propsOut, props);
205
- }
206
- return observe
207
- ? useSelector$1(() => (isStr ? createElement(render, propsOut) : render(propsOut, ref)), {
208
- forceRender: fr,
209
- shouldRender: true,
210
- })
211
- : isStr
212
- ? createElement(render, propsOut)
213
- : render(propsOut, ref);
238
+ // If observing wrap the whole render in a useSelector to listen to it
239
+ if (observe && fr) {
240
+ return useSelector$1(() => Reflect.apply(target, thisArg, argArray), {
241
+ forceRender: fr,
242
+ shouldRender: true,
243
+ });
244
+ }
245
+ else {
246
+ return Reflect.apply(target, thisArg, argArray);
247
+ }
248
+ },
214
249
  };
215
- if (componentName) {
216
- ret.displayName = componentName;
250
+ const proxy = new Proxy(render, proxyHandler);
251
+ let ret;
252
+ if (useForwardRef) {
253
+ ret = component;
254
+ ret['render'] = proxy;
255
+ ret['__legend_proxied'] = proxy;
217
256
  }
218
- // Wrap back in forwardRef if necessary
219
- if (isStr || useForwardRef) {
220
- ret = forwardRef(ret);
257
+ else {
258
+ ret = proxy;
221
259
  }
222
- ret = observe ? memo(ret) : ret;
223
- Object.keys(component).forEach((key) => {
224
- if (!hoistBlackList[key]) {
225
- Object.defineProperty(ret, key, Object.getOwnPropertyDescriptor(component, key));
226
- }
227
- });
228
- return ret;
260
+ return observe ? memo(ret) : ret;
229
261
  }
230
- const hoistBlackList = {
231
- $$typeof: true,
232
- render: true,
233
- compare: true,
234
- type: true,
235
- displayName: true,
236
- };
237
262
  function observer(component) {
238
263
  return createReactiveComponent(component, true);
239
264
  }
@@ -280,9 +305,11 @@ function useObserve(selector, callback) {
280
305
  useEffect(() => {
281
306
  return observe((e) => {
282
307
  const { selector, callback } = ref.current;
308
+ delete e.value;
283
309
  computeSelector(selector, e);
284
310
  // Don't run callback the first time if it's an event
285
311
  if (callback && (e.num > 0 || !selector[symbolIsEvent])) {
312
+ e.value = e.previous;
286
313
  callback(e);
287
314
  }
288
315
  });
@@ -296,7 +323,5 @@ function useUnmount(fn) {
296
323
  return useEffect(() => fn, []);
297
324
  }
298
325
 
299
- enableLegendStateReact();
300
-
301
326
  export { Computed, For, Memo, Show, Switch, createObservableHook, enableLegendStateReact, observer, reactive, reactiveObserver, useComputed, useMount, useObservable, useObservableReducer, useObserve, useSelector, useUnmount };
302
327
  //# sourceMappingURL=react.mjs.map
package/react.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"react.mjs","sources":["../../src/react/createObservableHook.ts","../../src/react/useSelector.ts","../../src/react/enableLegendStateReact.ts","../../src/react/flow.tsx","../../src/react/reactive-observer.tsx","../../src/react/useComputed.ts","../../src/react/useObservable.ts","../../src/react/useObservableReducer.ts","../../src/react/useObserve.ts","../../src/react/lifecycle.tsx","../../react.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["Update","useSelector"],"mappings":"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"}
1
+ {"version":3,"file":"react.mjs","sources":["../../src/react/createObservableHook.ts","../../src/react/useSelector.ts","../../src/react/enableLegendStateReact.ts","../../src/react-components/react-components.tsx","../../src/react/flow.tsx","../../src/react/reactive-observer.tsx","../../src/react/useComputed.ts","../../src/react/useObservable.ts","../../src/react/useObservableReducer.ts","../../src/react/useObserve.ts","../../src/react/lifecycle.tsx"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["Update","reactive","observer","useSelector"],"mappings":"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"}
@@ -179,4 +179,11 @@ export interface ObserveEvent<T> {
179
179
  cancel?: boolean;
180
180
  onCleanup?: () => void;
181
181
  }
182
+ export interface ObserveEventCallback<T> {
183
+ num: number;
184
+ previous?: T | void;
185
+ value?: T | void;
186
+ cancel?: boolean;
187
+ onCleanup?: () => void;
188
+ }
182
189
  export {};
@@ -1,3 +1,3 @@
1
- import { ObservableReadable, ObserveEvent } from '@legendapp/state';
2
- export declare function useObserve<T>(selector: ObservableReadable<T>, callback: (e: ObserveEvent<T>) => T | void): void;
1
+ import { ObservableReadable, ObserveEvent, ObserveEventCallback } from '@legendapp/state';
2
+ export declare function useObserve<T>(selector: ObservableReadable<T>, callback: (e: ObserveEventCallback<T>) => T | void): void;
3
3
  export declare function useObserve<T>(selector: (e: ObserveEvent<T>) => T | void): void;