vest-utils
Advanced tools
Comparing version 1.0.0-next-1de937 to 1.0.0-next-2cf993
@@ -99,3 +99,3 @@ 'use strict'; | ||
function isPromise(value) { | ||
return value && isFunction(value.then); | ||
return !!value && isFunction(value.then); | ||
} | ||
@@ -127,6 +127,2 @@ | ||
} | ||
// eslint-disable-next-line @typescript-eslint/ban-types | ||
function StringObject(value) { | ||
return new String(optionalFunctionValue(value)); | ||
} | ||
@@ -145,7 +141,2 @@ function isStringValue(v) { | ||
function last(values) { | ||
const valuesArray = asArray(values); | ||
return valuesArray[valuesArray.length - 1]; | ||
} | ||
function deferThrow(message) { | ||
@@ -254,2 +245,36 @@ setTimeout(() => { | ||
const STATE_WILD_CARD = '*'; | ||
function StateMachine(machine) { | ||
let state = machine.initial; | ||
const api = { getState, transition }; | ||
return api; | ||
function getState() { | ||
return state; | ||
} | ||
// eslint-disable-next-line complexity | ||
function transition(action, payload) { | ||
var _a, _b, _c; | ||
const transitionTo = (_b = (_a = machine.states[state]) === null || _a === void 0 ? void 0 : _a[action]) !== null && _b !== void 0 ? _b : | ||
// @ts-expect-error - This is a valid state | ||
(_c = machine.states[STATE_WILD_CARD]) === null || _c === void 0 ? void 0 : _c[action]; | ||
let target = transitionTo; | ||
if (Array.isArray(target)) { | ||
const [, conditional] = target; | ||
if (!conditional(payload)) { | ||
return; | ||
} | ||
target = target[0]; | ||
} | ||
if (!target || target === state) { | ||
return; | ||
} | ||
state = target; | ||
} | ||
} | ||
function nonnullish(value, error) { | ||
invariant(!isNullish(value), error); | ||
return value; | ||
} | ||
function createTinyState(initialValue) { | ||
@@ -272,2 +297,8 @@ let value; | ||
// eslint-disable-next-line @typescript-eslint/ban-types | ||
function StringObject(value) { | ||
return new String(optionalFunctionValue(value)); | ||
} | ||
exports.StateMachine = StateMachine; | ||
exports.StringObject = StringObject; | ||
@@ -305,3 +336,2 @@ exports.asArray = asArray; | ||
exports.isUndefined = isUndefined; | ||
exports.last = last; | ||
exports.lengthEquals = lengthEquals; | ||
@@ -311,2 +341,3 @@ exports.lengthNotEquals = lengthNotEquals; | ||
exports.mapFirst = mapFirst; | ||
exports.nonnullish = nonnullish; | ||
exports.numberEquals = numberEquals; | ||
@@ -313,0 +344,0 @@ exports.numberNotEquals = numberNotEquals; |
'use strict' | ||
if (process.env.NODE_ENV === 'production') { | ||
@@ -4,0 +3,0 @@ module.exports = require('./vest-utils.production.js'); |
@@ -1,1 +0,1 @@ | ||
"use strict";function t(t){return(...n)=>!t(...n)}function n(t){const n=String(t),r=Number(t),e=!isNaN(parseFloat(n))&&!isNaN(Number(t))&&isFinite(r);return Boolean(e)}const r=t(n);function e(t,r){return n(t)&&n(r)&&Number(t)===Number(r)}const o=t(e);function s(t,n){return e(t.length,n)}const u=t(s);function i(t,r){return n(t)&&n(r)&&Number(t)>Number(r)}function c(t,n){return i(t.length,n)}function f(t){return null===t}const p=t(f);function l(t){return void 0===t}const a=t(l);function x(t){return f(t)||l(t)}const h=t(x);function N(t){return[].concat(t)}function g(t,n){return Object.prototype.hasOwnProperty.call(t,n)}function b(t){return"function"==typeof t}function m(t,...n){return b(t)?t(...n):t}var y=Object.assign;var v=Object.freeze({__proto__:null,createBus:function(){const t={};return{emit(t,r){n(t).forEach((t=>{t(r)}))},on:(r,e)=>(t[r]=n(r).concat(e),{off(){t[r]=n(r).filter((t=>t!==e))}})};function n(n){return t[n]||[]}}});const d=E();function E(t){return n=0,()=>`${t?t+"_":""}${n++}`;var n}function O(t){return"object"==typeof t&&!x(t)}function S(t){return Boolean(Array.isArray(t))}const _=t(S);function j(t){return!t||(g(t,"length")?s(t,0):!!O(t)&&s(Object.keys(t),0))}const w=t(j);const q=/{(.*?)}/g;var T=Object.freeze({__proto__:null,createTinyState:function(t){let n;return e(),()=>[n,r,e];function r(t){n=m(t,n)}function e(){r(m(t))}}});exports.StringObject=function(t){return new String(m(t))},exports.asArray=N,exports.assign=y,exports.bindNot=t,exports.bus=v,exports.cache=function(t=1){const n=[],r=(e,o)=>{const s=r.get(e);if(s)return s[1];const u=o();return n.unshift([e.concat(),u]),c(n,t)&&(n.length=t),u};return r.invalidate=t=>{const r=e(t);r>-1&&n.splice(r,1)},r.get=t=>n[e(t)]||null,r;function e(t){return n.findIndex((([n])=>s(t,n.length)&&t.every(((t,r)=>t===n[r]))))}},exports.callEach=function(t){return t.forEach((t=>t()))},exports.defaultTo=function(t,n){var r;return null!==(r=m(t))&&void 0!==r?r:m(n)},exports.deferThrow=function(t){setTimeout((()=>{throw new Error(t)}),0)},exports.either=function(t,n){return!!t!=!!n},exports.genSeq=E,exports.greaterThan=i,exports.hasOwnProperty=g,exports.invariant=function(t,n){if(!t)throw n instanceof String?n.valueOf():new Error(n?m(n):n)},exports.isArray=S,exports.isBoolean=function(t){return!!t===t},exports.isEmpty=j,exports.isFunction=b,exports.isNotArray=_,exports.isNotEmpty=w,exports.isNotNull=p,exports.isNotNullish=h,exports.isNotNumeric=r,exports.isNotUndefined=a,exports.isNull=f,exports.isNullish=x,exports.isNumeric=n,exports.isObject=O,exports.isPositive=function(t){return i(t,0)},exports.isPromise=function(t){return t&&b(t.then)},exports.isStringValue=function(t){return String(t)===t},exports.isUndefined=l,exports.last=function(t){const n=N(t);return n[n.length-1]},exports.lengthEquals=s,exports.lengthNotEquals=u,exports.longerThan=c,exports.mapFirst=function(t,n){let r=!1,e=null;for(let s=0;s<t.length;s++)if(n(t[s],o,s),r)return e;function o(t,n){t&&(r=!0,e=n)}},exports.numberEquals=e,exports.numberNotEquals=o,exports.optionalFunctionValue=m,exports.seq=d,exports.text=function(t,...n){const r=n[0];if(O(r))return t.replace(q,((t,n)=>{var e;return`${null!==(e=r[n])&&void 0!==e?e:t}`}));const e=[...n];return t.replace(q,(t=>`${j(e)?t:e.shift()}`))},exports.tinyState=T; | ||
"use strict";function t(t){return(...n)=>!t(...n)}function n(t){const n=String(t),r=Number(t),e=!isNaN(parseFloat(n))&&!isNaN(Number(t))&&isFinite(r);return Boolean(e)}const r=t(n);function e(t,r){return n(t)&&n(r)&&Number(t)===Number(r)}const o=t(e);function i(t,n){return e(t.length,n)}const u=t(i);function s(t,r){return n(t)&&n(r)&&Number(t)>Number(r)}function c(t,n){return s(t.length,n)}function f(t){return null===t}const l=t(f);function a(t){return void 0===t}const p=t(a);function x(t){return f(t)||a(t)}const h=t(x);function N(t,n){return Object.prototype.hasOwnProperty.call(t,n)}function g(t){return"function"==typeof t}function v(t,...n){return g(t)?t(...n):t}var b=Object.assign;function d(t,n){if(!t)throw n instanceof String?n.valueOf():new Error(n?v(n):n)}var y=Object.freeze({__proto__:null,createBus:function(){const t={};return{emit(t,r){n(t).forEach((t=>{t(r)}))},on:(r,e)=>(t[r]=n(r).concat(e),{off(){t[r]=n(r).filter((t=>t!==e))}})};function n(n){return t[n]||[]}}});const m=E();function E(t){return n=0,()=>`${t?t+"_":""}${n++}`;var n}function S(t){return"object"==typeof t&&!x(t)}function O(t){return Boolean(Array.isArray(t))}const _=t(O);function j(t){return!t||(N(t,"length")?i(t,0):!!S(t)&&i(Object.keys(t),0))}const w=t(j);const A=/{(.*?)}/g;var q=Object.freeze({__proto__:null,createTinyState:function(t){let n;return e(),()=>[n,r,e];function r(t){n=v(t,n)}function e(){r(v(t))}}});exports.StateMachine=function(t){let n=t.initial;return{getState:function(){return n},transition:function(r,e){var o,i,u;let s=null!==(i=null===(o=t.states[n])||void 0===o?void 0:o[r])&&void 0!==i?i:null===(u=t.states["*"])||void 0===u?void 0:u[r];if(Array.isArray(s)){const[,t]=s;if(!t(e))return;s=s[0]}if(!s||s===n)return;n=s}}},exports.StringObject=function(t){return new String(v(t))},exports.asArray=function(t){return[].concat(t)},exports.assign=b,exports.bindNot=t,exports.bus=y,exports.cache=function(t=1){const n=[],r=(e,o)=>{const i=r.get(e);if(i)return i[1];const u=o();return n.unshift([e.concat(),u]),c(n,t)&&(n.length=t),u};return r.invalidate=t=>{const r=e(t);r>-1&&n.splice(r,1)},r.get=t=>n[e(t)]||null,r;function e(t){return n.findIndex((([n])=>i(t,n.length)&&t.every(((t,r)=>t===n[r]))))}},exports.callEach=function(t){return t.forEach((t=>t()))},exports.defaultTo=function(t,n){var r;return null!==(r=v(t))&&void 0!==r?r:v(n)},exports.deferThrow=function(t){setTimeout((()=>{throw new Error(t)}),0)},exports.either=function(t,n){return!!t!=!!n},exports.genSeq=E,exports.greaterThan=s,exports.hasOwnProperty=N,exports.invariant=d,exports.isArray=O,exports.isBoolean=function(t){return!!t===t},exports.isEmpty=j,exports.isFunction=g,exports.isNotArray=_,exports.isNotEmpty=w,exports.isNotNull=l,exports.isNotNullish=h,exports.isNotNumeric=r,exports.isNotUndefined=p,exports.isNull=f,exports.isNullish=x,exports.isNumeric=n,exports.isObject=S,exports.isPositive=function(t){return s(t,0)},exports.isPromise=function(t){return!!t&&g(t.then)},exports.isStringValue=function(t){return String(t)===t},exports.isUndefined=a,exports.lengthEquals=i,exports.lengthNotEquals=u,exports.longerThan=c,exports.mapFirst=function(t,n){let r=!1,e=null;for(let i=0;i<t.length;i++)if(n(t[i],o,i),r)return e;function o(t,n){t&&(r=!0,e=n)}},exports.nonnullish=function(t,n){return d(!x(t),n),t},exports.numberEquals=e,exports.numberNotEquals=o,exports.optionalFunctionValue=v,exports.seq=m,exports.text=function(t,...n){const r=n[0];if(S(r))return t.replace(A,((t,n)=>{var e;return`${null!==(e=r[n])&&void 0!==e?e:t}`}));const e=[...n];return t.replace(A,(t=>`${j(e)?t:e.shift()}`))},exports.tinyState=q; |
@@ -97,3 +97,3 @@ function bindNot(fn) { | ||
function isPromise(value) { | ||
return value && isFunction(value.then); | ||
return !!value && isFunction(value.then); | ||
} | ||
@@ -125,6 +125,2 @@ | ||
} | ||
// eslint-disable-next-line @typescript-eslint/ban-types | ||
function StringObject(value) { | ||
return new String(optionalFunctionValue(value)); | ||
} | ||
@@ -143,7 +139,2 @@ function isStringValue(v) { | ||
function last(values) { | ||
const valuesArray = asArray(values); | ||
return valuesArray[valuesArray.length - 1]; | ||
} | ||
function deferThrow(message) { | ||
@@ -252,2 +243,36 @@ setTimeout(() => { | ||
const STATE_WILD_CARD = '*'; | ||
function StateMachine(machine) { | ||
let state = machine.initial; | ||
const api = { getState, transition }; | ||
return api; | ||
function getState() { | ||
return state; | ||
} | ||
// eslint-disable-next-line complexity | ||
function transition(action, payload) { | ||
var _a, _b, _c; | ||
const transitionTo = (_b = (_a = machine.states[state]) === null || _a === void 0 ? void 0 : _a[action]) !== null && _b !== void 0 ? _b : | ||
// @ts-expect-error - This is a valid state | ||
(_c = machine.states[STATE_WILD_CARD]) === null || _c === void 0 ? void 0 : _c[action]; | ||
let target = transitionTo; | ||
if (Array.isArray(target)) { | ||
const [, conditional] = target; | ||
if (!conditional(payload)) { | ||
return; | ||
} | ||
target = target[0]; | ||
} | ||
if (!target || target === state) { | ||
return; | ||
} | ||
state = target; | ||
} | ||
} | ||
function nonnullish(value, error) { | ||
invariant(!isNullish(value), error); | ||
return value; | ||
} | ||
function createTinyState(initialValue) { | ||
@@ -270,2 +295,7 @@ let value; | ||
export { StringObject, asArray, assign, bindNot, bus, createCache as cache, callEach, defaultTo, deferThrow, either, genSeq, greaterThan, hasOwnProperty, invariant, isArray, isBoolean, isEmpty, isFunction, isNotArray, isNotEmpty, isNotNull, isNotNullish, isNotNumeric, isNotUndefined, isNull, isNullish, isNumeric, isObject, isPositive, isPromise, isStringValue, isUndefined, last, lengthEquals, lengthNotEquals, longerThan, mapFirst, numberEquals, numberNotEquals, optionalFunctionValue, seq, text, tinyState }; | ||
// eslint-disable-next-line @typescript-eslint/ban-types | ||
function StringObject(value) { | ||
return new String(optionalFunctionValue(value)); | ||
} | ||
export { StateMachine, StringObject, asArray, assign, bindNot, bus, createCache as cache, callEach, defaultTo, deferThrow, either, genSeq, greaterThan, hasOwnProperty, invariant, isArray, isBoolean, isEmpty, isFunction, isNotArray, isNotEmpty, isNotNull, isNotNullish, isNotNumeric, isNotUndefined, isNull, isNullish, isNumeric, isObject, isPositive, isPromise, isStringValue, isUndefined, lengthEquals, lengthNotEquals, longerThan, mapFirst, nonnullish, numberEquals, numberNotEquals, optionalFunctionValue, seq, text, tinyState }; |
@@ -1,1 +0,1 @@ | ||
function n(n){return(...t)=>!n(...t)}function t(n){const t=String(n),r=Number(n),e=!isNaN(parseFloat(t))&&!isNaN(Number(n))&&isFinite(r);return Boolean(e)}const r=n(t);function e(n,r){return t(n)&&t(r)&&Number(n)===Number(r)}const u=n(e);function o(n,t){return e(n.length,t)}const c=n(o);function i(n,r){return t(n)&&t(r)&&Number(n)>Number(r)}function f(n,t){return i(n.length,t)}function l(n=1){const t=[],r=(e,u)=>{const o=r.get(e);if(o)return o[1];const c=u();return t.unshift([e.concat(),c]),f(t,n)&&(t.length=n),c};return r.invalidate=n=>{const r=e(n);r>-1&&t.splice(r,1)},r.get=n=>t[e(n)]||null,r;function e(n){return t.findIndex((([t])=>o(n,t.length)&&n.every(((n,r)=>n===t[r]))))}}function s(n){return null===n}const a=n(s);function h(n){return void 0===n}const g=n(h);function b(n){return s(n)||h(n)}const p=n(b);function v(n){return[].concat(n)}function N(n){return n.forEach((n=>n()))}function y(n,t){return Object.prototype.hasOwnProperty.call(n,t)}function _(n){return"function"==typeof n}function m(n){return n&&_(n.then)}function O(n,...t){return _(n)?n(...t):n}var d=Object.assign;function j(n,t){var r;return null!==(r=O(n))&&void 0!==r?r:O(t)}function w(n,t){if(!n)throw t instanceof String?t.valueOf():new Error(t?O(t):t)}function S(n){return new String(O(n))}function E(n){return String(n)===n}function $(n,t){return!!n!=!!t}function B(n){return!!n===n}function x(n){const t=v(n);return t[t.length-1]}function z(n){setTimeout((()=>{throw new Error(n)}),0)}var A=Object.freeze({__proto__:null,createBus:function(){const n={};return{emit(n,r){t(n).forEach((n=>{n(r)}))},on:(r,e)=>(n[r]=t(r).concat(e),{off(){n[r]=t(r).filter((n=>n!==e))}})};function t(t){return n[t]||[]}}});const F=T();function T(n){return t=0,()=>`${n?n+"_":""}${t++}`;var t}function k(n,t){let r=!1,e=null;for(let o=0;o<n.length;o++)if(t(n[o],u,o),r)return e;function u(n,t){n&&(r=!0,e=t)}}function I(n){return"object"==typeof n&&!b(n)}function P(n){return Boolean(Array.isArray(n))}const q=n(P);function C(n){return!n||(y(n,"length")?o(n,0):!!I(n)&&o(Object.keys(n),0))}const D=n(C);function G(n){return i(n,0)}const H=/{(.*?)}/g;function J(n,...t){const r=t[0];if(I(r))return n.replace(H,((n,t)=>{var e;return`${null!==(e=r[t])&&void 0!==e?e:n}`}));const e=[...t];return n.replace(H,(n=>`${C(e)?n:e.shift()}`))}var K=Object.freeze({__proto__:null,createTinyState:function(n){let t;return e(),()=>[t,r,e];function r(n){t=O(n,t)}function e(){r(O(n))}}});export{S as StringObject,v as asArray,d as assign,n as bindNot,A as bus,l as cache,N as callEach,j as defaultTo,z as deferThrow,$ as either,T as genSeq,i as greaterThan,y as hasOwnProperty,w as invariant,P as isArray,B as isBoolean,C as isEmpty,_ as isFunction,q as isNotArray,D as isNotEmpty,a as isNotNull,p as isNotNullish,r as isNotNumeric,g as isNotUndefined,s as isNull,b as isNullish,t as isNumeric,I as isObject,G as isPositive,m as isPromise,E as isStringValue,h as isUndefined,x as last,o as lengthEquals,c as lengthNotEquals,f as longerThan,k as mapFirst,e as numberEquals,u as numberNotEquals,O as optionalFunctionValue,F as seq,J as text,K as tinyState}; | ||
function n(n){return(...t)=>!n(...t)}function t(n){const t=String(n),r=Number(n),e=!isNaN(parseFloat(t))&&!isNaN(Number(n))&&isFinite(r);return Boolean(e)}const r=n(t);function e(n,r){return t(n)&&t(r)&&Number(n)===Number(r)}const u=n(e);function o(n,t){return e(n.length,t)}const i=n(o);function c(n,r){return t(n)&&t(r)&&Number(n)>Number(r)}function f(n,t){return c(n.length,t)}function l(n=1){const t=[],r=(e,u)=>{const o=r.get(e);if(o)return o[1];const i=u();return t.unshift([e.concat(),i]),f(t,n)&&(t.length=n),i};return r.invalidate=n=>{const r=e(n);r>-1&&t.splice(r,1)},r.get=n=>t[e(n)]||null,r;function e(n){return t.findIndex((([t])=>o(n,t.length)&&n.every(((n,r)=>n===t[r]))))}}function a(n){return null===n}const s=n(a);function v(n){return void 0===n}const g=n(v);function h(n){return a(n)||v(n)}const b=n(h);function p(n){return[].concat(n)}function d(n){return n.forEach((n=>n()))}function y(n,t){return Object.prototype.hasOwnProperty.call(n,t)}function N(n){return"function"==typeof n}function _(n){return!!n&&N(n.then)}function m(n,...t){return N(n)?n(...t):n}var O=Object.assign;function j(n,t){var r;return null!==(r=m(n))&&void 0!==r?r:m(t)}function w(n,t){if(!n)throw t instanceof String?t.valueOf():new Error(t?m(t):t)}function S(n){return String(n)===n}function A(n,t){return!!n!=!!t}function E(n){return!!n===n}function $(n){setTimeout((()=>{throw new Error(n)}),0)}var B=Object.freeze({__proto__:null,createBus:function(){const n={};return{emit(n,r){t(n).forEach((n=>{n(r)}))},on:(r,e)=>(n[r]=t(r).concat(e),{off(){n[r]=t(r).filter((n=>n!==e))}})};function t(t){return n[t]||[]}}});const x=z();function z(n){return t=0,()=>`${n?n+"_":""}${t++}`;var t}function F(n,t){let r=!1,e=null;for(let o=0;o<n.length;o++)if(t(n[o],u,o),r)return e;function u(n,t){n&&(r=!0,e=t)}}function T(n){return"object"==typeof n&&!h(n)}function k(n){return Boolean(Array.isArray(n))}const I=n(k);function P(n){return!n||(y(n,"length")?o(n,0):!!T(n)&&o(Object.keys(n),0))}const q=n(P);function C(n){return c(n,0)}const D=/{(.*?)}/g;function G(n,...t){const r=t[0];if(T(r))return n.replace(D,((n,t)=>{var e;return`${null!==(e=r[t])&&void 0!==e?e:n}`}));const e=[...t];return n.replace(D,(n=>`${P(e)?n:e.shift()}`))}function H(n){let t=n.initial;return{getState:function(){return t},transition:function(r,e){var u,o,i;let c=null!==(o=null===(u=n.states[t])||void 0===u?void 0:u[r])&&void 0!==o?o:null===(i=n.states["*"])||void 0===i?void 0:i[r];if(Array.isArray(c)){const[,n]=c;if(!n(e))return;c=c[0]}if(!c||c===t)return;t=c}}}function J(n,t){return w(!h(n),t),n}var K=Object.freeze({__proto__:null,createTinyState:function(n){let t;return e(),()=>[t,r,e];function r(n){t=m(n,t)}function e(){r(m(n))}}});function L(n){return new String(m(n))}export{H as StateMachine,L as StringObject,p as asArray,O as assign,n as bindNot,B as bus,l as cache,d as callEach,j as defaultTo,$ as deferThrow,A as either,z as genSeq,c as greaterThan,y as hasOwnProperty,w as invariant,k as isArray,E as isBoolean,P as isEmpty,N as isFunction,I as isNotArray,q as isNotEmpty,s as isNotNull,b as isNotNullish,r as isNotNumeric,g as isNotUndefined,a as isNull,h as isNullish,t as isNumeric,T as isObject,C as isPositive,_ as isPromise,S as isStringValue,v as isUndefined,o as lengthEquals,i as lengthNotEquals,f as longerThan,F as mapFirst,J as nonnullish,e as numberEquals,u as numberNotEquals,m as optionalFunctionValue,x as seq,G as text,K as tinyState}; |
@@ -103,3 +103,3 @@ (function (global, factory) { | ||
function isPromise(value) { | ||
return value && isFunction(value.then); | ||
return !!value && isFunction(value.then); | ||
} | ||
@@ -131,6 +131,2 @@ | ||
} | ||
// eslint-disable-next-line @typescript-eslint/ban-types | ||
function StringObject(value) { | ||
return new String(optionalFunctionValue(value)); | ||
} | ||
@@ -149,7 +145,2 @@ function isStringValue(v) { | ||
function last(values) { | ||
const valuesArray = asArray(values); | ||
return valuesArray[valuesArray.length - 1]; | ||
} | ||
function deferThrow(message) { | ||
@@ -258,2 +249,36 @@ setTimeout(() => { | ||
const STATE_WILD_CARD = '*'; | ||
function StateMachine(machine) { | ||
let state = machine.initial; | ||
const api = { getState, transition }; | ||
return api; | ||
function getState() { | ||
return state; | ||
} | ||
// eslint-disable-next-line complexity | ||
function transition(action, payload) { | ||
var _a, _b, _c; | ||
const transitionTo = (_b = (_a = machine.states[state]) === null || _a === void 0 ? void 0 : _a[action]) !== null && _b !== void 0 ? _b : | ||
// @ts-expect-error - This is a valid state | ||
(_c = machine.states[STATE_WILD_CARD]) === null || _c === void 0 ? void 0 : _c[action]; | ||
let target = transitionTo; | ||
if (Array.isArray(target)) { | ||
const [, conditional] = target; | ||
if (!conditional(payload)) { | ||
return; | ||
} | ||
target = target[0]; | ||
} | ||
if (!target || target === state) { | ||
return; | ||
} | ||
state = target; | ||
} | ||
} | ||
function nonnullish(value, error) { | ||
invariant(!isNullish(value), error); | ||
return value; | ||
} | ||
function createTinyState(initialValue) { | ||
@@ -276,2 +301,8 @@ let value; | ||
// eslint-disable-next-line @typescript-eslint/ban-types | ||
function StringObject(value) { | ||
return new String(optionalFunctionValue(value)); | ||
} | ||
exports.StateMachine = StateMachine; | ||
exports.StringObject = StringObject; | ||
@@ -309,3 +340,2 @@ exports.asArray = asArray; | ||
exports.isUndefined = isUndefined; | ||
exports.last = last; | ||
exports.lengthEquals = lengthEquals; | ||
@@ -315,2 +345,3 @@ exports.lengthNotEquals = lengthNotEquals; | ||
exports.mapFirst = mapFirst; | ||
exports.nonnullish = nonnullish; | ||
exports.numberEquals = numberEquals; | ||
@@ -317,0 +348,0 @@ exports.numberNotEquals = numberNotEquals; |
@@ -1,1 +0,1 @@ | ||
!function(n,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((n="undefined"!=typeof globalThis?globalThis:n||self)["vest-utils"]={})}(this,(function(n){"use strict";function t(n){return(...t)=>!n(...t)}function e(n){const t=String(n),e=Number(n),r=!isNaN(parseFloat(t))&&!isNaN(Number(n))&&isFinite(e);return Boolean(r)}const r=t(e);function o(n,t){return e(n)&&e(t)&&Number(n)===Number(t)}const i=t(o);function u(n,t){return o(n.length,t)}const c=t(u);function s(n,t){return e(n)&&e(t)&&Number(n)>Number(t)}function f(n,t){return s(n.length,t)}function l(n){return null===n}const a=t(l);function h(n){return void 0===n}const g=t(h);function N(n){return l(n)||h(n)}const p=t(N);function d(n){return[].concat(n)}function b(n,t){return Object.prototype.hasOwnProperty.call(n,t)}function y(n){return"function"==typeof n}function m(n,...t){return y(n)?n(...t):n}var v=Object.assign;var E=Object.freeze({__proto__:null,createBus:function(){const n={};return{emit(n,e){t(n).forEach((n=>{n(e)}))},on:(e,r)=>(n[e]=t(e).concat(r),{off(){n[e]=t(e).filter((n=>n!==r))}})};function t(t){return n[t]||[]}}});const O=j();function j(n){return t=0,()=>`${n?n+"_":""}${t++}`;var t}function S(n){return"object"==typeof n&&!N(n)}function _(n){return Boolean(Array.isArray(n))}const w=t(_);function T(n){return!n||(b(n,"length")?u(n,0):!!S(n)&&u(Object.keys(n),0))}const q=t(T);const x=/{(.*?)}/g;var A=Object.freeze({__proto__:null,createTinyState:function(n){let t;return r(),()=>[t,e,r];function e(n){t=m(n,t)}function r(){e(m(n))}}});n.StringObject=function(n){return new String(m(n))},n.asArray=d,n.assign=v,n.bindNot=t,n.bus=E,n.cache=function(n=1){const t=[],e=(r,o)=>{const i=e.get(r);if(i)return i[1];const u=o();return t.unshift([r.concat(),u]),f(t,n)&&(t.length=n),u};return e.invalidate=n=>{const e=r(n);e>-1&&t.splice(e,1)},e.get=n=>t[r(n)]||null,e;function r(n){return t.findIndex((([t])=>u(n,t.length)&&n.every(((n,e)=>n===t[e]))))}},n.callEach=function(n){return n.forEach((n=>n()))},n.defaultTo=function(n,t){var e;return null!==(e=m(n))&&void 0!==e?e:m(t)},n.deferThrow=function(n){setTimeout((()=>{throw new Error(n)}),0)},n.either=function(n,t){return!!n!=!!t},n.genSeq=j,n.greaterThan=s,n.hasOwnProperty=b,n.invariant=function(n,t){if(!n)throw t instanceof String?t.valueOf():new Error(t?m(t):t)},n.isArray=_,n.isBoolean=function(n){return!!n===n},n.isEmpty=T,n.isFunction=y,n.isNotArray=w,n.isNotEmpty=q,n.isNotNull=a,n.isNotNullish=p,n.isNotNumeric=r,n.isNotUndefined=g,n.isNull=l,n.isNullish=N,n.isNumeric=e,n.isObject=S,n.isPositive=function(n){return s(n,0)},n.isPromise=function(n){return n&&y(n.then)},n.isStringValue=function(n){return String(n)===n},n.isUndefined=h,n.last=function(n){const t=d(n);return t[t.length-1]},n.lengthEquals=u,n.lengthNotEquals=c,n.longerThan=f,n.mapFirst=function(n,t){let e=!1,r=null;for(let i=0;i<n.length;i++)if(t(n[i],o,i),e)return r;function o(n,t){n&&(e=!0,r=t)}},n.numberEquals=o,n.numberNotEquals=i,n.optionalFunctionValue=m,n.seq=O,n.text=function(n,...t){const e=t[0];if(S(e))return n.replace(x,((n,t)=>{var r;return`${null!==(r=e[t])&&void 0!==r?r:n}`}));const r=[...t];return n.replace(x,(n=>`${T(r)?n:r.shift()}`))},n.tinyState=A})); | ||
!function(n,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((n="undefined"!=typeof globalThis?globalThis:n||self)["vest-utils"]={})}(this,(function(n){"use strict";function t(n){return(...t)=>!n(...t)}function e(n){const t=String(n),e=Number(n),r=!isNaN(parseFloat(t))&&!isNaN(Number(n))&&isFinite(e);return Boolean(r)}const r=t(e);function i(n,t){return e(n)&&e(t)&&Number(n)===Number(t)}const o=t(i);function u(n,t){return i(n.length,t)}const c=t(u);function s(n,t){return e(n)&&e(t)&&Number(n)>Number(t)}function f(n,t){return s(n.length,t)}function l(n){return null===n}const a=t(l);function h(n){return void 0===n}const d=t(h);function g(n){return l(n)||h(n)}const N=t(g);function p(n,t){return Object.prototype.hasOwnProperty.call(n,t)}function y(n){return"function"==typeof n}function b(n,...t){return y(n)?n(...t):n}var v=Object.assign;function m(n,t){if(!n)throw t instanceof String?t.valueOf():new Error(t?b(t):t)}var E=Object.freeze({__proto__:null,createBus:function(){const n={};return{emit(n,e){t(n).forEach((n=>{n(e)}))},on:(e,r)=>(n[e]=t(e).concat(r),{off(){n[e]=t(e).filter((n=>n!==r))}})};function t(t){return n[t]||[]}}});const S=O();function O(n){return t=0,()=>`${n?n+"_":""}${t++}`;var t}function j(n){return"object"==typeof n&&!g(n)}function _(n){return Boolean(Array.isArray(n))}const w=t(_);function T(n){return!n||(p(n,"length")?u(n,0):!!j(n)&&u(Object.keys(n),0))}const A=t(T);const q=/{(.*?)}/g;var x=Object.freeze({__proto__:null,createTinyState:function(n){let t;return r(),()=>[t,e,r];function e(n){t=b(n,t)}function r(){e(b(n))}}});n.StateMachine=function(n){let t=n.initial;return{getState:function(){return t},transition:function(e,r){var i,o,u;let c=null!==(o=null===(i=n.states[t])||void 0===i?void 0:i[e])&&void 0!==o?o:null===(u=n.states["*"])||void 0===u?void 0:u[e];if(Array.isArray(c)){const[,n]=c;if(!n(r))return;c=c[0]}if(!c||c===t)return;t=c}}},n.StringObject=function(n){return new String(b(n))},n.asArray=function(n){return[].concat(n)},n.assign=v,n.bindNot=t,n.bus=E,n.cache=function(n=1){const t=[],e=(r,i)=>{const o=e.get(r);if(o)return o[1];const u=i();return t.unshift([r.concat(),u]),f(t,n)&&(t.length=n),u};return e.invalidate=n=>{const e=r(n);e>-1&&t.splice(e,1)},e.get=n=>t[r(n)]||null,e;function r(n){return t.findIndex((([t])=>u(n,t.length)&&n.every(((n,e)=>n===t[e]))))}},n.callEach=function(n){return n.forEach((n=>n()))},n.defaultTo=function(n,t){var e;return null!==(e=b(n))&&void 0!==e?e:b(t)},n.deferThrow=function(n){setTimeout((()=>{throw new Error(n)}),0)},n.either=function(n,t){return!!n!=!!t},n.genSeq=O,n.greaterThan=s,n.hasOwnProperty=p,n.invariant=m,n.isArray=_,n.isBoolean=function(n){return!!n===n},n.isEmpty=T,n.isFunction=y,n.isNotArray=w,n.isNotEmpty=A,n.isNotNull=a,n.isNotNullish=N,n.isNotNumeric=r,n.isNotUndefined=d,n.isNull=l,n.isNullish=g,n.isNumeric=e,n.isObject=j,n.isPositive=function(n){return s(n,0)},n.isPromise=function(n){return!!n&&y(n.then)},n.isStringValue=function(n){return String(n)===n},n.isUndefined=h,n.lengthEquals=u,n.lengthNotEquals=c,n.longerThan=f,n.mapFirst=function(n,t){let e=!1,r=null;for(let o=0;o<n.length;o++)if(t(n[o],i,o),e)return r;function i(n,t){n&&(e=!0,r=t)}},n.nonnullish=function(n,t){return m(!g(n),t),n},n.numberEquals=i,n.numberNotEquals=o,n.optionalFunctionValue=b,n.seq=S,n.text=function(n,...t){const e=t[0];if(j(e))return n.replace(q,((n,t)=>{var r;return`${null!==(r=e[t])&&void 0!==r?r:n}`}));const r=[...t];return n.replace(q,(n=>`${T(r)?n:r.shift()}`))},n.tinyState=x})); |
{ | ||
"version": "1.0.0-next-1de937", | ||
"version": "1.0.0-next-2cf993", | ||
"name": "vest-utils", | ||
@@ -46,3 +46,4 @@ "author": "ealush", | ||
"./*": "./*" | ||
} | ||
}, | ||
"vxAllowResolve": [] | ||
} |
@@ -32,3 +32,3 @@ /** | ||
on: (event: string, handler: CB) => OnReturn; | ||
emit: (event: string, ...args: any[]) => void; | ||
emit: (event: string, data?: any) => void; | ||
}; | ||
@@ -60,4 +60,2 @@ type TinyState<S> = () => [ | ||
message?: String | Stringable): asserts condition; | ||
// eslint-disable-next-line @typescript-eslint/ban-types | ||
declare function StringObject(value?: Stringable): String; | ||
declare function isStringValue(v: unknown): v is string; | ||
@@ -67,3 +65,2 @@ declare function bindNot<T extends (...args: any[]) => unknown>(fn: T): (...args: Parameters<T>) => boolean; | ||
declare function isBoolean(value: unknown): value is boolean; | ||
declare function last<T>(values: T | T[]): T; | ||
declare function deferThrow(message?: string): void; | ||
@@ -84,3 +81,3 @@ declare namespace bus { | ||
on: (event: string, handler: CB) => OnReturn; | ||
emit: (event: string, ...args: any[]) => void; | ||
emit: (event: string, data?: any) => void; | ||
}; | ||
@@ -117,2 +114,20 @@ } | ||
declare function text(str: string, ...substitutions: Array<unknown>): string; | ||
declare const STATE_WILD_CARD = "*"; | ||
type TStateWildCard = typeof STATE_WILD_CARD; | ||
type TStateMachine<S extends string, A extends string> = { | ||
initial: S; | ||
states: Partial<{ | ||
[key in S & TStateWildCard]: { | ||
[key in A]?: S | [ | ||
S, | ||
(payload?: any) => boolean | ||
]; | ||
}; | ||
}>; | ||
}; | ||
declare function StateMachine<S extends string, A extends string>(machine: TStateMachine<S, A>): { | ||
getState: () => S; | ||
transition: (action: A, payload?: any) => void; | ||
}; | ||
declare function nonnullish<T>(value: T | null | undefined, error?: string): T; | ||
declare namespace tinyState { | ||
@@ -126,4 +141,6 @@ function createTinyState<S>(initialValue: S | (() => S)): TinyState<S>; | ||
} | ||
export { createCache as cache, CacheApi, BusType, TinyState, isNullish, isNotNullish, asArray, callEach, hasOwnProperty, isPromise, optionalFunctionValue, _default as assign, defaultTo, invariant, StringObject, isStringValue, bindNot, either, isBoolean, last, deferThrow, bus, seq, genSeq, isFunction, mapFirst, greaterThan, longerThan, isNumeric, isNotNumeric, isObject, lengthEquals, lengthNotEquals, numberEquals, numberNotEquals, isNull, isNotNull, isUndefined, isNotUndefined, isArray, isNotArray, isEmpty, isNotEmpty, isPositive, text, tinyState }; | ||
// eslint-disable-next-line @typescript-eslint/ban-types | ||
declare function StringObject(value?: Stringable): String; | ||
export { createCache as cache, CacheApi, BusType, TinyState, isNullish, isNotNullish, asArray, callEach, hasOwnProperty, isPromise, optionalFunctionValue, _default as assign, defaultTo, invariant, isStringValue, bindNot, either, isBoolean, deferThrow, bus, seq, genSeq, isFunction, mapFirst, greaterThan, longerThan, isNumeric, isNotNumeric, isObject, lengthEquals, lengthNotEquals, numberEquals, numberNotEquals, isNull, isNotNull, isUndefined, isNotUndefined, isArray, isNotArray, isEmpty, isNotEmpty, isPositive, text, TStateMachine, StateMachine, nonnullish, tinyState, StringObject }; | ||
export type { DropFirst, Stringable, CB, ValueOf }; | ||
//# sourceMappingURL=vest-utils.d.ts.map |
Sorry, the diff of this file is not supported yet
48397
1058