@tamagui/use-controllable-state
Advanced tools
@@ -1,2 +0,2 @@ | ||
| export * from "./useControllableState"; | ||
| //# sourceMappingURL=index.js.map | ||
| export * from "./useControllableState.native.js"; | ||
| //# sourceMappingURL=index.native.js.map |
@@ -1,6 +0,1 @@ | ||
| { | ||
| "version": 3, | ||
| "sources": ["../../src/Users/n8/tamagui/code/core/use-controllable-state/src/index.ts"], | ||
| "mappings": "AAAA,cAAc;", | ||
| "names": [] | ||
| } | ||
| {"version":3,"names":[],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,cAAc","ignoreList":[]} |
| import { useEvent } from "@tamagui/use-event"; | ||
| import * as React from "react"; | ||
| import { startTransition } from "@tamagui/start-transition"; | ||
| var emptyCallbackFn = function(_) { | ||
| var emptyCallbackFn = function (_) { | ||
| return _(); | ||
| }; | ||
| function useControllableState(param) { | ||
| 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; | ||
| React.useEffect(function() { | ||
| prop !== void 0 && (previous.current = prop, transitionFn(function() { | ||
| 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; | ||
| React.useEffect(function () { | ||
| prop !== void 0 && (previous.current = prop, transitionFn(function () { | ||
| setState(prop); | ||
| })); | ||
| }, [ | ||
| prop | ||
| ]), React.useEffect(function() { | ||
| }, [prop]), React.useEffect(function () { | ||
| propWins || state !== previous.current && (previous.current = state, onChangeCb(state)); | ||
| }, [ | ||
| onChangeCb, | ||
| state, | ||
| propWins | ||
| ]); | ||
| var setter = useEvent(function(next) { | ||
| if (!preventUpdate) | ||
| if (propWins) { | ||
| var nextValue = typeof next == "function" ? next(previous.current) : next; | ||
| onChangeCb(nextValue); | ||
| } else | ||
| transitionFn(function() { | ||
| setState(next); | ||
| }); | ||
| }, [onChangeCb, state, propWins]); | ||
| var setter = useEvent(function (next) { | ||
| if (!preventUpdate) if (propWins) { | ||
| var nextValue = typeof next == "function" ? next(previous.current) : next; | ||
| onChangeCb(nextValue); | ||
| } else transitionFn(function () { | ||
| setState(next); | ||
| }); | ||
| }); | ||
| return [ | ||
| value, | ||
| setter | ||
| ]; | ||
| return [value, setter]; | ||
| } | ||
| var idFn = function() { | ||
| }; | ||
| export { | ||
| useControllableState | ||
| }; | ||
| //# sourceMappingURL=useControllableState.js.map | ||
| var idFn = function () {}; | ||
| export { useControllableState }; | ||
| //# sourceMappingURL=useControllableState.native.js.map |
@@ -1,6 +0,1 @@ | ||
| { | ||
| "version": 3, | ||
| "sources": ["../../src/Users/n8/tamagui/code/core/use-controllable-state/src/useControllableState.ts"], | ||
| "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;", | ||
| "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"] | ||
| } | ||
| {"version":3,"names":["useEvent","React","startTransition","emptyCallbackFn","_","useControllableState","param","prop","defaultProp","onChange","strategy","preventUpdate","transition","state","setState","useState","previous","useRef","propWins","value","onChangeCb","idFn","transitionFn","useEffect","current","setter","next","nextValue"],"sources":["../../src/useControllableState.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,QAAA,QAAgB;AACzB,YAAYC,KAAA,MAAW;AACvB,SAASC,eAAA,QAAuB;AAOhC,IAAAC,eAAM,YAAAA,CAAyBC,CAAA,EAAE;EAE1B,OAASA,CAAA;AAAwB;AACtC,SACAC,qBAAAC,KAAA;EACA;MAAAC,IAAA;MAAAC,WAAA;MAAAC,QAAA;MAAAC,QAAA;MAAAC,aAAA;MAAAC;IAAA,IAAAN,KAAA;IAAA,CAAAO,KAAA,EAAAC,QAAA,IAAAb,KAAA,CAAAc,QAAA,CAAAR,IAAA,IAAAC,WAAA;IAAAQ,QAAA,GAAAf,KAAA,CAAAgB,MAAA,CAAAJ,KAAA;IAAAK,QAAA,GAAAR,QAAA,oBAAAH,IAAA;IAAAY,KAAA,GAAAD,QAAA,GAAAX,IAAA,GAAAM,KAAA;IAAAO,UAAA,GAAApB,QAAA,CAAAS,QAAA,IAAAY,IAAA;IAAAC,YAAA,GAAAV,UAAA,GAAAV,eAAA,GAAAC,eAAA;EACAF,KAAA,CAAAsB,SAAW;IACXhB,IAAA,gBAAAS,QAAA,CAAAQ,OAAA,GAAAjB,IAAA,EAAAe,YAAA;MACAR,QAAA,CAAAP,IAAA;IAQ+C;EAC/C,IAQAA,IAAM,CACJ,CAAI,EAAAN,KAAA,CAAAsB,SAAS,aACJ;IAEPL,QAAA,IAASL,KAAI,KAAAG,QAAA,CAAAQ,OAAA,KAAAR,QAAA,CAAAQ,OAAA,GAAAX,KAAA,EAAAO,UAAA,CAAAP,KAAA;EAAA,GACd,CACHO,UAEA,EACMP,KAAA,EAKNK,QAAI,CAEJ;EACE,IAAAO,MAAI,GAAAzB,QAAA,WAAA0B,IAAA;IACJ,KAAAf,aAAc,EACZ,IAAAO,QAAM;MACN,IAAAS,SAAW,UAASD,IAAA,iBAAAA,IAAA,CAAAV,QAAA,CAAAQ,OAAA,IAAAE,IAAA;MACtBN,UAAA,CAAAO,SAAA;IACE,OACEL,YAAS,aAAI;MACdR,QAAA,CAAAY,IAAA;IAEJ;EAED;EACF,QAEAP,KAAM,EAAcM,MAAA,C","ignoreList":[]} |
+4
-4
| { | ||
| "name": "@tamagui/use-controllable-state", | ||
| "version": "1.125.6", | ||
| "version": "1.125.7", | ||
| "sideEffects": false, | ||
@@ -36,7 +36,7 @@ "source": "src/index.ts", | ||
| "dependencies": { | ||
| "@tamagui/start-transition": "1.125.6", | ||
| "@tamagui/use-event": "1.125.6" | ||
| "@tamagui/start-transition": "1.125.7", | ||
| "@tamagui/use-event": "1.125.7" | ||
| }, | ||
| "devDependencies": { | ||
| "@tamagui/build": "1.125.6", | ||
| "@tamagui/build": "1.125.7", | ||
| "react": "*" | ||
@@ -43,0 +43,0 @@ }, |
28793
0.42%445
-0.45%+ Added
+ Added
+ Added
- Removed
- Removed
- Removed
Updated