@ghostry/finity-core
Version:
Finite state management with exhaustiveness and transition enforcement for TypeScript.
2 lines • 1.12 kB
JavaScript
function e(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}function t(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r.push.apply(r,n)}return r})(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}),e}function r(r,n){return function(r,o){var i=n(o);return t(e({},i),{value:function(){return t(e({},i.value()),{transition:function(e){var t=i.value().kind,n=e.kind;if(r.transitions[t].includes(n))i.set(e);else throw Error("[finity] Invalid state transition!")}})}})}}export{r as default};
//# sourceMappingURL=useTransitionalState.js.map