@legendapp/state 0.19.0-next.6 → 0.19.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +34 -1
- package/package.json +1 -1
- package/react-components.js +1 -1
- package/react-components.js.map +1 -1
- package/react-components.mjs +2 -2
- package/react-components.mjs.map +1 -1
- package/react-native-components.js +1 -1
- package/react-native-components.js.map +1 -1
- package/react-native-components.mjs +2 -2
- package/react-native-components.mjs.map +1 -1
- package/src/react-components/react-components.d.ts +2 -2
- package/src/react-native-components/rn-components.d.ts +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,36 @@
|
|
|
1
|
+
## 0.19.0
|
|
2
|
+
|
|
3
|
+
This is a big one, with a breaking change to stop observing all React components automatically. See https://legendapp.com/dev/state/migrating for more details.
|
|
4
|
+
|
|
5
|
+
- Breaking: No longer observing all React components automatically. Please use `observer` or `useSelector` for observable tracking.
|
|
6
|
+
- Breaking: Primitives no longer have `value` - use the standard `get()` or `set()` instead
|
|
7
|
+
- Breaking: Removed `get(false)` in favor of `peek()`
|
|
8
|
+
- Deprecated: Bindable components will be phased out in favor of new reactive components. Import `{ legend }` on web or `{ Legend }` on react-native instead of Bindable.
|
|
9
|
+
- Feat: Added `observer` HOC component
|
|
10
|
+
- Feat: `reactive` components that let you pass an observable or selector to any prop [reactive-props](https://legendapp.com/dev/state/reactive-props)
|
|
11
|
+
- Feat: `useSelector` has options to control how often it renders and to reuse forceRender functions
|
|
12
|
+
- Fix: Improved types for TypeScript strict mode
|
|
13
|
+
- Fix: Local storage persistence removes item if undefined
|
|
14
|
+
- Fix: Rendering multiple obseravbles inside one element had key collision issues
|
|
15
|
+
|
|
16
|
+
## 0.18.8
|
|
17
|
+
- Fix: Array move detection further improved
|
|
18
|
+
|
|
19
|
+
## 0.18.7
|
|
20
|
+
- Feat: `observe` function can return false to prevent tracking
|
|
21
|
+
- Fix: Tracking was sometimes getting out of order with nested components and computed
|
|
22
|
+
- Fix: useSelector was triggering renders multiple times
|
|
23
|
+
- Fix: Array move detection was incorrect on inserts
|
|
24
|
+
|
|
25
|
+
## 0.18.6
|
|
26
|
+
- Fix: React-specific props were creating proxies unnecessarily
|
|
27
|
+
|
|
28
|
+
## 0.18.4
|
|
29
|
+
- Fix: Fast refresh issues with bindable components
|
|
30
|
+
|
|
31
|
+
## 0.18.3
|
|
32
|
+
- Fix: Fast refresh issues with direct rendering
|
|
33
|
+
|
|
1
34
|
## 0.18.2
|
|
2
35
|
- Fix: Rendering directly to JSX was not activating computeds
|
|
3
36
|
- Types: Improved typing of observable and useObservable to more correctly narrow down complex types
|
|
@@ -35,7 +68,7 @@
|
|
|
35
68
|
|
|
36
69
|
## 0.17.0
|
|
37
70
|
|
|
38
|
-
This is a big one, with mainly a breaking change to how primitives work, so see https://legendapp.com/dev/state/migrating for more details.
|
|
71
|
+
This is a big one, with mainly a breaking change to how primitives work, so see https://legendapp.com/dev/state/migrating for more details.
|
|
39
72
|
|
|
40
73
|
- Breaking: Primitives in state are now returned as observable objects like everything else, and you can use `get()` or `.value` to access/modify the value
|
|
41
74
|
- Breaking: Removed `obs()` function
|
package/package.json
CHANGED
package/react-components.js
CHANGED
|
@@ -21,7 +21,7 @@ const Binder = function (Component) {
|
|
|
21
21
|
onChange === null || onChange === void 0 ? void 0 : onChange(e);
|
|
22
22
|
}, [onChange, bind]);
|
|
23
23
|
// Get the bound value
|
|
24
|
-
const value = (props.value =
|
|
24
|
+
const value = (props.value = react.useSelector(bind));
|
|
25
25
|
// Call className if it's a function
|
|
26
26
|
if (state.isFunction(className)) {
|
|
27
27
|
props.className = className(value);
|
package/react-components.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-components.js","sources":["../../src/react-components/react-components.tsx"],"sourcesContent":[null],"names":["forwardRef","useCallback","isFunction","createElement","Bindable","reactive"],"mappings":";;;;;;;;AAwBA,IAAI,eAAe,GAAG,KAAK,CAAC;AAE5B,MAAM,MAAM,GAAG,UAIb,SAAS,EAAA;AACP,IAAA,OAAOA,kBAAU,CAAC,SAAS,KAAK,CAC5B,EAAE,IAAI,EAAE,GAAG,KAAK,EAAgC,EAChD,GAAwB,EAAA;QAExB,IAAI,CAAC,eAAe,EAAE;YAClB,eAAe,GAAG,IAAI,CAAC;AACvB,YAAA,OAAO,CAAC,IAAI,CACR,mJAAmJ,CACtJ,CAAC;AACL,SAAA;AACD,QAAA,IAAI,IAAI,EAAE;YACN,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;;YAG7C,KAAK,CAAC,QAAQ,GAAGC,mBAAW,CACxB,CAAC,CAAgC,KAAI;gBACjC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,KAAY,CAAC,CAAC;AAChC,gBAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAG,CAAC,CAAC,CAAC;AAClB,aAAC,EACD,CAAC,QAAQ,EAAE,IAAI,CAAC,CACnB,CAAC;;AAGF,YAAA,MAAM,KAAK,IAAI,KAAK,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"react-components.js","sources":["../../src/react-components/react-components.tsx"],"sourcesContent":[null],"names":["forwardRef","useCallback","useSelector","isFunction","createElement","Bindable","reactive"],"mappings":";;;;;;;;AAwBA,IAAI,eAAe,GAAG,KAAK,CAAC;AAE5B,MAAM,MAAM,GAAG,UAIb,SAAS,EAAA;AACP,IAAA,OAAOA,kBAAU,CAAC,SAAS,KAAK,CAC5B,EAAE,IAAI,EAAE,GAAG,KAAK,EAAgC,EAChD,GAAwB,EAAA;QAExB,IAAI,CAAC,eAAe,EAAE;YAClB,eAAe,GAAG,IAAI,CAAC;AACvB,YAAA,OAAO,CAAC,IAAI,CACR,mJAAmJ,CACtJ,CAAC;AACL,SAAA;AACD,QAAA,IAAI,IAAI,EAAE;YACN,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;;YAG7C,KAAK,CAAC,QAAQ,GAAGC,mBAAW,CACxB,CAAC,CAAgC,KAAI;gBACjC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,KAAY,CAAC,CAAC;AAChC,gBAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAG,CAAC,CAAC,CAAC;AAClB,aAAC,EACD,CAAC,QAAQ,EAAE,IAAI,CAAC,CACnB,CAAC;;AAGF,YAAA,MAAM,KAAK,IAAI,KAAK,CAAC,KAAK,GAAGC,iBAAW,CAAC,IAAI,CAAC,CAAC,CAAC;;AAGhD,YAAA,IAAIC,gBAAU,CAAC,SAAS,CAAC,EAAE;AACvB,gBAAA,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;AACtC,aAAA;;AAED,YAAA,IAAIA,gBAAU,CAAC,KAAK,CAAC,EAAE;AACnB,gBAAA,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;AAC9B,aAAA;AACJ,SAAA;AAED,QAAA,OAAOC,qBAAa,CAAC,SAAgB,EAAE,GAAG,GAAG,EAAE,GAAG,KAAK,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC;;AAE5E,KAAC,CAA0G,CAAC;AAChH,CAAC,CAAC;AAEeC,0BAgBhB;AAhBD,CAAA,UAAiB,QAAQ,EAAA;AACR,IAAA,QAAA,CAAA,KAAK,GAAG,MAAM,CAIzB,OAAO,CAAC,CAAC;AACE,IAAA,QAAA,CAAA,QAAQ,GAAG,MAAM,CAI5B,UAAU,CAAC,CAAC;AACD,IAAA,QAAA,CAAA,MAAM,GAAG,MAAM,CAI1B,QAAQ,CAAC,CAAC;AAChB,CAAC,EAhBgBA,gBAAQ,KAARA,gBAAQ,GAgBxB,EAAA,CAAA,CAAA,CAAA;AAOD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;AAE3D,MAAM,QAAQ,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;MAClF,MAAM,GAAG,IAAI,KAAK,CAC3B,EAAE,EACF;IACI,GAAG,CAAC,MAAM,EAAE,CAAS,EAAA;AACjB,QAAA,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;AACZ,YAAA,MAAM,CAAC,CAAC,CAAC,GAAGC,cAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC;AACzD,SAAA;AACD,QAAA,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;KACpB;AACJ,CAAA;;;;;;;;;;;;;;;;"}
|
package/react-components.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { reactive } from '@legendapp/state/react';
|
|
1
|
+
import { reactive, useSelector } from '@legendapp/state/react';
|
|
2
2
|
export { observer, reactive, reactiveObserver } from '@legendapp/state/react';
|
|
3
3
|
import { isFunction } from '@legendapp/state';
|
|
4
4
|
import { forwardRef, useCallback, createElement } from 'react';
|
|
@@ -18,7 +18,7 @@ const Binder = function (Component) {
|
|
|
18
18
|
onChange === null || onChange === void 0 ? void 0 : onChange(e);
|
|
19
19
|
}, [onChange, bind]);
|
|
20
20
|
// Get the bound value
|
|
21
|
-
const value = (props.value = bind
|
|
21
|
+
const value = (props.value = useSelector(bind));
|
|
22
22
|
// Call className if it's a function
|
|
23
23
|
if (isFunction(className)) {
|
|
24
24
|
props.className = className(value);
|
package/react-components.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-components.mjs","sources":["../../src/react-components/react-components.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAwBA,IAAI,eAAe,GAAG,KAAK,CAAC;AAE5B,MAAM,MAAM,GAAG,UAIb,SAAS,EAAA;AACP,IAAA,OAAO,UAAU,CAAC,SAAS,KAAK,CAC5B,EAAE,IAAI,EAAE,GAAG,KAAK,EAAgC,EAChD,GAAwB,EAAA;QAExB,IAAI,CAAC,eAAe,EAAE;YAClB,eAAe,GAAG,IAAI,CAAC;AACvB,YAAA,OAAO,CAAC,IAAI,CACR,mJAAmJ,CACtJ,CAAC;AACL,SAAA;AACD,QAAA,IAAI,IAAI,EAAE;YACN,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;;YAG7C,KAAK,CAAC,QAAQ,GAAG,WAAW,CACxB,CAAC,CAAgC,KAAI;gBACjC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,KAAY,CAAC,CAAC;AAChC,gBAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAG,CAAC,CAAC,CAAC;AAClB,aAAC,EACD,CAAC,QAAQ,EAAE,IAAI,CAAC,CACnB,CAAC;;AAGF,YAAA,MAAM,KAAK,IAAI,KAAK,CAAC,KAAK,GAAG,
|
|
1
|
+
{"version":3,"file":"react-components.mjs","sources":["../../src/react-components/react-components.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAwBA,IAAI,eAAe,GAAG,KAAK,CAAC;AAE5B,MAAM,MAAM,GAAG,UAIb,SAAS,EAAA;AACP,IAAA,OAAO,UAAU,CAAC,SAAS,KAAK,CAC5B,EAAE,IAAI,EAAE,GAAG,KAAK,EAAgC,EAChD,GAAwB,EAAA;QAExB,IAAI,CAAC,eAAe,EAAE;YAClB,eAAe,GAAG,IAAI,CAAC;AACvB,YAAA,OAAO,CAAC,IAAI,CACR,mJAAmJ,CACtJ,CAAC;AACL,SAAA;AACD,QAAA,IAAI,IAAI,EAAE;YACN,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;;YAG7C,KAAK,CAAC,QAAQ,GAAG,WAAW,CACxB,CAAC,CAAgC,KAAI;gBACjC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,KAAY,CAAC,CAAC;AAChC,gBAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAG,CAAC,CAAC,CAAC;AAClB,aAAC,EACD,CAAC,QAAQ,EAAE,IAAI,CAAC,CACnB,CAAC;;AAGF,YAAA,MAAM,KAAK,IAAI,KAAK,CAAC,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;;AAGhD,YAAA,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE;AACvB,gBAAA,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;AACtC,aAAA;;AAED,YAAA,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE;AACnB,gBAAA,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;AAC9B,aAAA;AACJ,SAAA;AAED,QAAA,OAAO,aAAa,CAAC,SAAgB,EAAE,GAAG,GAAG,EAAE,GAAG,KAAK,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC;;AAE5E,KAAC,CAA0G,CAAC;AAChH,CAAC,CAAC;AAEI,IAAW,SAgBhB;AAhBD,CAAA,UAAiB,QAAQ,EAAA;AACR,IAAA,QAAA,CAAA,KAAK,GAAG,MAAM,CAIzB,OAAO,CAAC,CAAC;AACE,IAAA,QAAA,CAAA,QAAQ,GAAG,MAAM,CAI5B,UAAU,CAAC,CAAC;AACD,IAAA,QAAA,CAAA,MAAM,GAAG,MAAM,CAI1B,QAAQ,CAAC,CAAC;AAChB,CAAC,EAhBgB,QAAQ,KAAR,QAAQ,GAgBxB,EAAA,CAAA,CAAA,CAAA;AAOD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;AAE3D,MAAM,QAAQ,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;MAClF,MAAM,GAAG,IAAI,KAAK,CAC3B,EAAE,EACF;IACI,GAAG,CAAC,MAAM,EAAE,CAAS,EAAA;AACjB,QAAA,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;AACZ,YAAA,MAAM,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC;AACzD,SAAA;AACD,QAAA,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;KACpB;AACJ,CAAA;;;;"}
|
|
@@ -26,7 +26,7 @@ const Binder = function (Component, getValue) {
|
|
|
26
26
|
onChange === null || onChange === void 0 ? void 0 : onChange(e);
|
|
27
27
|
}, [onChange, bind]);
|
|
28
28
|
// Get the bound value
|
|
29
|
-
const value = (props.value = bind.get());
|
|
29
|
+
const value = (props.value = react.useSelector(bind.get()));
|
|
30
30
|
// Call style if it's a function
|
|
31
31
|
if (state.isFunction(style)) {
|
|
32
32
|
props.style = style(value);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-native-components.js","sources":["../../src/react-native-components/rn-components.tsx"],"sourcesContent":[null],"names":["forwardRef","useCallback","isFunction","createElement","Bindable","RNTextInput","RNSwitch","reactive","RN"],"mappings":";;;;;;;;;;;;;AAsBA,IAAI,eAAe,GAAG,KAAK,CAAC;AAE5B,MAAM,MAAM,GAAG,UAKb,SAAmB,EAAE,QAA4B,EAAA;AAC/C,IAAA,OAAOA,kBAAU,CAAC,SAAS,KAAK,CAC5B,EAAE,IAAI,EAAE,GAAG,KAAK,EAAwC,EACxD,GAAwB,EAAA;QAExB,IAAI,CAAC,eAAe,EAAE;YAClB,eAAe,GAAG,IAAI,CAAC;AACvB,YAAA,OAAO,CAAC,IAAI,CACR,uJAAuJ,CAC1J,CAAC;AACL,SAAA;AAED,QAAA,IAAI,IAAI,EAAE;AACN,YAAA,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;;YAGlC,KAAK,CAAC,QAAQ,GAAGC,mBAAW,CACxB,CAAC,CAAC,KAAI;gBACF,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AACtB,gBAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAG,CAAC,CAAC,CAAC;AAClB,aAAC,EACD,CAAC,QAAQ,EAAE,IAAI,CAAC,CACnB,CAAC;;AAGF,YAAA,MAAM,KAAK,IAAI,KAAK,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"react-native-components.js","sources":["../../src/react-native-components/rn-components.tsx"],"sourcesContent":[null],"names":["forwardRef","useCallback","useSelector","isFunction","createElement","Bindable","RNTextInput","RNSwitch","reactive","RN"],"mappings":";;;;;;;;;;;;;AAsBA,IAAI,eAAe,GAAG,KAAK,CAAC;AAE5B,MAAM,MAAM,GAAG,UAKb,SAAmB,EAAE,QAA4B,EAAA;AAC/C,IAAA,OAAOA,kBAAU,CAAC,SAAS,KAAK,CAC5B,EAAE,IAAI,EAAE,GAAG,KAAK,EAAwC,EACxD,GAAwB,EAAA;QAExB,IAAI,CAAC,eAAe,EAAE;YAClB,eAAe,GAAG,IAAI,CAAC;AACvB,YAAA,OAAO,CAAC,IAAI,CACR,uJAAuJ,CAC1J,CAAC;AACL,SAAA;AAED,QAAA,IAAI,IAAI,EAAE;AACN,YAAA,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;;YAGlC,KAAK,CAAC,QAAQ,GAAGC,mBAAW,CACxB,CAAC,CAAC,KAAI;gBACF,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AACtB,gBAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAG,CAAC,CAAC,CAAC;AAClB,aAAC,EACD,CAAC,QAAQ,EAAE,IAAI,CAAC,CACnB,CAAC;;AAGF,YAAA,MAAM,KAAK,IAAI,KAAK,CAAC,KAAK,GAAGC,iBAAW,CAAC,IAAI,CAAC,GAAG,EAAS,CAAC,CAAC,CAAC;;AAG7D,YAAA,IAAIC,gBAAU,CAAC,KAAK,CAAC,EAAE;AACnB,gBAAA,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;AAC9B,aAAA;AACJ,SAAA;AAED,QAAA,OAAOC,qBAAa,CAAC,SAAgB,EAAE,GAAG,GAAG,EAAE,GAAG,KAAK,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC;;AAE5E,KAAC,CAAkH,CAAC;AACxH,CAAC,CAAC;AAEeC,0BAShB;AATD,CAAA,UAAiB,QAAQ,EAAA;AACR,IAAA,QAAA,CAAA,SAAS,GAAG,MAAM,CAC3BC,YAAW,EACX,CAAC,CAAiD,KAAK,CAAC,CAAC,WAAW,CAAC,IAAI,CAC5E,CAAC;AACW,IAAA,QAAA,CAAA,MAAM,GAAG,MAAM,CACxBC,SAAQ,EACR,CAAC,CAAoB,KAAK,CAAC,CAAC,KAAK,CACpC,CAAC;AACN,CAAC,EATgBF,gBAAQ,KAARA,gBAAQ,GASxB,EAAA,CAAA,CAAA,CAAA;AAED,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC;AACtB,IAAA,CAAC,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC;IACxC,CAAC,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;AAC7B,CAAA,CAAC,CAAC;MAEU,MAAM,GAAG,IAAI,KAAK,CAC3B,EAAE,EACF;IACI,GAAG,CAAC,MAAM,EAAE,CAAS,EAAA;AACjB,QAAA,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;AACZ,YAAA,MAAM,CAAC,CAAC,CAAC,GAAGG,cAAQ,CAChBC,sBAAE,CAAC,CAAC,CAAC,EACL,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAC/F,CAAC;AACL,SAAA;AACD,QAAA,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;KACpB;AACJ,CAAA;;;;;;;;;;;;;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { reactive } from '@legendapp/state/react';
|
|
1
|
+
import { reactive, useSelector } from '@legendapp/state/react';
|
|
2
2
|
export { observer, reactive, reactiveObserver } from '@legendapp/state/react';
|
|
3
3
|
import { isFunction } from '@legendapp/state';
|
|
4
4
|
import { forwardRef, useCallback, createElement } from 'react';
|
|
@@ -19,7 +19,7 @@ const Binder = function (Component, getValue) {
|
|
|
19
19
|
onChange === null || onChange === void 0 ? void 0 : onChange(e);
|
|
20
20
|
}, [onChange, bind]);
|
|
21
21
|
// Get the bound value
|
|
22
|
-
const value = (props.value = bind.get());
|
|
22
|
+
const value = (props.value = useSelector(bind.get()));
|
|
23
23
|
// Call style if it's a function
|
|
24
24
|
if (isFunction(style)) {
|
|
25
25
|
props.style = style(value);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-native-components.mjs","sources":["../../src/react-native-components/rn-components.tsx"],"sourcesContent":[null],"names":["RNTextInput","RNSwitch"],"mappings":";;;;;;AAsBA,IAAI,eAAe,GAAG,KAAK,CAAC;AAE5B,MAAM,MAAM,GAAG,UAKb,SAAmB,EAAE,QAA4B,EAAA;AAC/C,IAAA,OAAO,UAAU,CAAC,SAAS,KAAK,CAC5B,EAAE,IAAI,EAAE,GAAG,KAAK,EAAwC,EACxD,GAAwB,EAAA;QAExB,IAAI,CAAC,eAAe,EAAE;YAClB,eAAe,GAAG,IAAI,CAAC;AACvB,YAAA,OAAO,CAAC,IAAI,CACR,uJAAuJ,CAC1J,CAAC;AACL,SAAA;AAED,QAAA,IAAI,IAAI,EAAE;AACN,YAAA,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;;YAGlC,KAAK,CAAC,QAAQ,GAAG,WAAW,CACxB,CAAC,CAAC,KAAI;gBACF,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AACtB,gBAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAG,CAAC,CAAC,CAAC;AAClB,aAAC,EACD,CAAC,QAAQ,EAAE,IAAI,CAAC,CACnB,CAAC;;AAGF,YAAA,MAAM,KAAK,IAAI,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,
|
|
1
|
+
{"version":3,"file":"react-native-components.mjs","sources":["../../src/react-native-components/rn-components.tsx"],"sourcesContent":[null],"names":["RNTextInput","RNSwitch"],"mappings":";;;;;;AAsBA,IAAI,eAAe,GAAG,KAAK,CAAC;AAE5B,MAAM,MAAM,GAAG,UAKb,SAAmB,EAAE,QAA4B,EAAA;AAC/C,IAAA,OAAO,UAAU,CAAC,SAAS,KAAK,CAC5B,EAAE,IAAI,EAAE,GAAG,KAAK,EAAwC,EACxD,GAAwB,EAAA;QAExB,IAAI,CAAC,eAAe,EAAE;YAClB,eAAe,GAAG,IAAI,CAAC;AACvB,YAAA,OAAO,CAAC,IAAI,CACR,uJAAuJ,CAC1J,CAAC;AACL,SAAA;AAED,QAAA,IAAI,IAAI,EAAE;AACN,YAAA,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;;YAGlC,KAAK,CAAC,QAAQ,GAAG,WAAW,CACxB,CAAC,CAAC,KAAI;gBACF,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AACtB,gBAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAG,CAAC,CAAC,CAAC;AAClB,aAAC,EACD,CAAC,QAAQ,EAAE,IAAI,CAAC,CACnB,CAAC;;AAGF,YAAA,MAAM,KAAK,IAAI,KAAK,CAAC,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,EAAS,CAAC,CAAC,CAAC;;AAG7D,YAAA,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE;AACnB,gBAAA,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;AAC9B,aAAA;AACJ,SAAA;AAED,QAAA,OAAO,aAAa,CAAC,SAAgB,EAAE,GAAG,GAAG,EAAE,GAAG,KAAK,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC;;AAE5E,KAAC,CAAkH,CAAC;AACxH,CAAC,CAAC;AAEI,IAAW,SAShB;AATD,CAAA,UAAiB,QAAQ,EAAA;AACR,IAAA,QAAA,CAAA,SAAS,GAAG,MAAM,CAC3BA,SAAW,EACX,CAAC,CAAiD,KAAK,CAAC,CAAC,WAAW,CAAC,IAAI,CAC5E,CAAC;AACW,IAAA,QAAA,CAAA,MAAM,GAAG,MAAM,CACxBC,MAAQ,EACR,CAAC,CAAoB,KAAK,CAAC,CAAC,KAAK,CACpC,CAAC;AACN,CAAC,EATgB,QAAQ,KAAR,QAAQ,GASxB,EAAA,CAAA,CAAA,CAAA;AAED,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC;AACtB,IAAA,CAAC,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC;IACxC,CAAC,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;AAC7B,CAAA,CAAC,CAAC;MAEU,MAAM,GAAG,IAAI,KAAK,CAC3B,EAAE,EACF;IACI,GAAG,CAAC,MAAM,EAAE,CAAS,EAAA;AACjB,QAAA,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;AACZ,YAAA,MAAM,CAAC,CAAC,CAAC,GAAG,QAAQ,CAChB,EAAE,CAAC,CAAC,CAAC,EACL,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAC/F,CAAC;AACL,SAAA;AACD,QAAA,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;KACpB;AACJ,CAAA;;;;"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { CSSProperties, DetailedHTMLProps, FC, InputHTMLAttributes, ReactElement, SelectHTMLAttributes, TextareaHTMLAttributes } from 'react';
|
|
2
|
-
import type {
|
|
2
|
+
import type { ObservableFns, Primitive, Selector } from '../observableInterfaces';
|
|
3
3
|
declare type Props<TValue, TProps, TBind> = Omit<TProps, 'className' | 'style'> & {
|
|
4
4
|
className?: string | ((value: TValue) => string);
|
|
5
5
|
style?: CSSProperties | ((value: TValue) => CSSProperties);
|
|
6
|
-
bind?: ObservableFns<TValue
|
|
6
|
+
bind?: ObservableFns<TValue>;
|
|
7
7
|
};
|
|
8
8
|
export declare namespace Bindable {
|
|
9
9
|
const input: <TBind extends ObservableFns<any>>(props: Props<Primitive, DetailedHTMLProps<InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, TBind>) => ReactElement<any, string | import("react").JSXElementConstructor<any>>;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { ReactElement } from 'react';
|
|
2
2
|
import RN, { StyleProp } from 'react-native';
|
|
3
|
-
import type {
|
|
3
|
+
import type { ObservableFns, Primitive } from '../observableInterfaces';
|
|
4
4
|
declare type Props<TValue, TStyle, TProps, TBind> = Omit<TProps, 'style'> & {
|
|
5
|
-
bind?: ObservableFns<TValue
|
|
5
|
+
bind?: ObservableFns<TValue>;
|
|
6
6
|
style?: StyleProp<TStyle> | ((value: TValue) => StyleProp<TStyle>);
|
|
7
7
|
};
|
|
8
8
|
export declare namespace Bindable {
|