@tamagui/use-controllable-state 1.113.0 → 1.113.2
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/dist/esm/index.native.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from "./useControllableState
|
|
2
|
-
//# sourceMappingURL=index.
|
|
1
|
+
export * from "./useControllableState";
|
|
2
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1,6 @@
|
|
|
1
|
-
{
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/Users/n8/tamagui/code/core/use-controllable-state/src/index.ts"],
|
|
4
|
+
"mappings": "AAAA,cAAc;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -1,41 +1,42 @@
|
|
|
1
1
|
import { useEvent } from "@tamagui/use-event";
|
|
2
2
|
import * as React from "react";
|
|
3
3
|
import { startTransition } from "@tamagui/start-transition";
|
|
4
|
-
var emptyCallbackFn = function
|
|
4
|
+
var emptyCallbackFn = function(_) {
|
|
5
5
|
return _();
|
|
6
6
|
};
|
|
7
7
|
function useControllableState(param) {
|
|
8
|
-
var {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
onChange,
|
|
12
|
-
strategy = "prop-wins",
|
|
13
|
-
preventUpdate,
|
|
14
|
-
transition
|
|
15
|
-
} = param,
|
|
16
|
-
[state, setState] = React.useState(prop ?? defaultProp),
|
|
17
|
-
previous = React.useRef(state),
|
|
18
|
-
propWins = strategy === "prop-wins" && prop !== void 0,
|
|
19
|
-
value = propWins ? prop : state,
|
|
20
|
-
onChangeCb = useEvent(onChange || idFn),
|
|
21
|
-
transitionFn = transition ? startTransition : emptyCallbackFn;
|
|
22
|
-
React.useEffect(function () {
|
|
23
|
-
prop !== void 0 && (previous.current = prop, transitionFn(function () {
|
|
8
|
+
var { prop, defaultProp, onChange, strategy = "prop-wins", preventUpdate, transition } = param, [state, setState] = React.useState(prop ?? defaultProp), previous = React.useRef(state), propWins = strategy === "prop-wins" && prop !== void 0, value = propWins ? prop : state, onChangeCb = useEvent(onChange || idFn), transitionFn = transition ? startTransition : emptyCallbackFn;
|
|
9
|
+
React.useEffect(function() {
|
|
10
|
+
prop !== void 0 && (previous.current = prop, transitionFn(function() {
|
|
24
11
|
setState(prop);
|
|
25
12
|
}));
|
|
26
|
-
}, [
|
|
13
|
+
}, [
|
|
14
|
+
prop
|
|
15
|
+
]), React.useEffect(function() {
|
|
27
16
|
propWins || state !== previous.current && (previous.current = state, onChangeCb(state));
|
|
28
|
-
}, [
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
17
|
+
}, [
|
|
18
|
+
onChangeCb,
|
|
19
|
+
state,
|
|
20
|
+
propWins
|
|
21
|
+
]);
|
|
22
|
+
var setter = useEvent(function(next) {
|
|
23
|
+
if (!preventUpdate)
|
|
24
|
+
if (propWins) {
|
|
25
|
+
var nextValue = typeof next == "function" ? next(previous.current) : next;
|
|
26
|
+
onChangeCb(nextValue);
|
|
27
|
+
} else
|
|
28
|
+
transitionFn(function() {
|
|
29
|
+
setState(next);
|
|
30
|
+
});
|
|
36
31
|
});
|
|
37
|
-
return [
|
|
32
|
+
return [
|
|
33
|
+
value,
|
|
34
|
+
setter
|
|
35
|
+
];
|
|
38
36
|
}
|
|
39
|
-
var idFn = function
|
|
40
|
-
|
|
41
|
-
|
|
37
|
+
var idFn = function() {
|
|
38
|
+
};
|
|
39
|
+
export {
|
|
40
|
+
useControllableState
|
|
41
|
+
};
|
|
42
|
+
//# sourceMappingURL=useControllableState.js.map
|
|
@@ -1 +1,6 @@
|
|
|
1
|
-
{
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/Users/n8/tamagui/code/core/use-controllable-state/src/useControllableState.ts"],
|
|
4
|
+
"mappings": "AAAA,SAASA,gBAAgB;AACzB,YAAYC,WAAW;AACvB,SAASC,uBAAuB;AAOhC,IAAMC,kBAAkB,SAACC,GAAAA;SAAMA,EAAAA;;AAExB,SAASC,qBAAwB,OAcvC;MAduC,EACtCC,MACAC,aACAC,UACAC,WAAW,aACXC,eACAC,WAAU,IAN4B,OAehC,CAACC,OAAOC,QAAAA,IAAYZ,MAAMa,SAASR,QAAQC,WAAAA,GAC3CQ,WAAWd,MAAMe,OAAYJ,KAAAA,GAC7BK,WAAWR,aAAa,eAAeH,SAASY,QAChDC,QAAQF,WAAWX,OAAOM,OAC1BQ,aAAapB,SAASQ,YAAYa,IAAAA,GAElCC,eAAeX,aAAaT,kBAAkBC;AAEpDF,QAAMsB,UAAU,WAAA;AACd,IAAIjB,SAASY,WACbH,SAASS,UAAUlB,MACnBgB,aAAa,WAAA;AACXT,eAASP,IAAAA;IACX,CAAA;EACF,GAAG;IAACA;GAAK,GAETL,MAAMsB,UAAU,WAAA;AACd,IAAIN,YACAL,UAAUG,SAASS,YACrBT,SAASS,UAAUZ,OACnBQ,WAAWR,KAAAA;EAEf,GAAG;IAACQ;IAAYR;IAAOK;GAAS;AAEhC,MAAMQ,SAASzB,SAAS,SAAC0B,MAAAA;AACvB,QAAIhB;AACJ,UAAIO,UAAU;AACZ,YAAMU,YAAY,OAAOD,QAAS,aAAaA,KAAKX,SAASS,OAAO,IAAIE;AACxEN,mBAAWO,SAAAA;MACb;AACEL,qBAAa,WAAA;AACXT,mBAASa,IAAAA;QACX,CAAA;EAEJ,CAAA;AAEA,SAAO;IAACP;IAAYM;;AACtB;AAEA,IAAMJ,OAAO,WAAA;AAAO;",
|
|
5
|
+
"names": ["useEvent", "React", "startTransition", "emptyCallbackFn", "_", "useControllableState", "prop", "defaultProp", "onChange", "strategy", "preventUpdate", "transition", "state", "setState", "useState", "previous", "useRef", "propWins", "undefined", "value", "onChangeCb", "idFn", "transitionFn", "useEffect", "current", "setter", "next", "nextValue"]
|
|
6
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/use-controllable-state",
|
|
3
|
-
"version": "1.113.
|
|
3
|
+
"version": "1.113.2",
|
|
4
4
|
"sideEffects": false,
|
|
5
5
|
"source": "src/index.ts",
|
|
6
6
|
"types": "./types/index.d.ts",
|
|
@@ -30,11 +30,11 @@
|
|
|
30
30
|
}
|
|
31
31
|
},
|
|
32
32
|
"dependencies": {
|
|
33
|
-
"@tamagui/start-transition": "1.113.
|
|
34
|
-
"@tamagui/use-event": "1.113.
|
|
33
|
+
"@tamagui/start-transition": "1.113.2",
|
|
34
|
+
"@tamagui/use-event": "1.113.2"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
|
-
"@tamagui/build": "1.113.
|
|
37
|
+
"@tamagui/build": "1.113.2",
|
|
38
38
|
"react": "^18.2.0 || ^19.0.0"
|
|
39
39
|
},
|
|
40
40
|
"publishConfig": {
|