vest-utils
Advanced tools
Comparing version 1.0.0-next-ed535b to 1.0.0-nightly-20230710-9953
@@ -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,11 @@ let value; | ||
// eslint-disable-next-line @typescript-eslint/ban-types | ||
function StringObject(value) { | ||
return new String(optionalFunctionValue(value)); | ||
} | ||
// eslint-disable-next-line @typescript-eslint/no-empty-function | ||
function noop() { } | ||
exports.StateMachine = StateMachine; | ||
exports.StringObject = StringObject; | ||
@@ -305,3 +339,2 @@ exports.asArray = asArray; | ||
exports.isUndefined = isUndefined; | ||
exports.last = last; | ||
exports.lengthEquals = lengthEquals; | ||
@@ -311,2 +344,4 @@ exports.lengthNotEquals = lengthNotEquals; | ||
exports.mapFirst = mapFirst; | ||
exports.nonnullish = nonnullish; | ||
exports.noop = noop; | ||
exports.numberEquals = numberEquals; | ||
@@ -313,0 +348,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.noop=function(){},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,10 @@ 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)); | ||
} | ||
// eslint-disable-next-line @typescript-eslint/no-empty-function | ||
function noop() { } | ||
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, noop, 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))}function M(){}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,M as noop,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,11 @@ let value; | ||
// eslint-disable-next-line @typescript-eslint/ban-types | ||
function StringObject(value) { | ||
return new String(optionalFunctionValue(value)); | ||
} | ||
// eslint-disable-next-line @typescript-eslint/no-empty-function | ||
function noop() { } | ||
exports.StateMachine = StateMachine; | ||
exports.StringObject = StringObject; | ||
@@ -309,3 +343,2 @@ exports.asArray = asArray; | ||
exports.isUndefined = isUndefined; | ||
exports.last = last; | ||
exports.lengthEquals = lengthEquals; | ||
@@ -315,2 +348,4 @@ exports.lengthNotEquals = lengthNotEquals; | ||
exports.mapFirst = mapFirst; | ||
exports.nonnullish = nonnullish; | ||
exports.noop = noop; | ||
exports.numberEquals = numberEquals; | ||
@@ -317,0 +352,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.noop=function(){},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-ed535b", | ||
"version": "1.0.0-nightly-20230710-9953", | ||
"name": "vest-utils", | ||
@@ -46,3 +46,4 @@ "author": "ealush", | ||
"./*": "./*" | ||
} | ||
}, | ||
"vxAllowResolve": [] | ||
} |
@@ -0,40 +1,43 @@ | ||
type DropFirst<T extends unknown[]> = T extends [ | ||
unknown, | ||
...infer U | ||
] ? U : never; | ||
type Stringable = string | CB<string>; | ||
type CB<T = any, Args extends TArgs = TArgs> = (...args: Args) => T; | ||
type ValueOf<T> = T[keyof T]; | ||
type Nullish<T = void> = Nullable<T> | Maybe<T>; | ||
type Nullable<T> = T | null; | ||
type Maybe<T> = T | undefined | void; | ||
type OneOrMoreOf<T> = T | T[]; | ||
type DynamicValue<T, Args extends TArgs = TArgs> = T | CB<T, Args>; | ||
type BlankValue = Maybe<"">; | ||
type TArgs = any[]; | ||
/** | ||
* Creates a cache function | ||
*/ | ||
declare function createCache<T = unknown>(maxSize?: number): { | ||
(deps: unknown[], cacheAction: (...args: unknown[]) => T): T; | ||
get(deps: unknown[]): [ | ||
unknown[], | ||
T | ||
] | null; | ||
invalidate(item: any): void; | ||
}; | ||
declare function createCache<T = unknown>(maxSize?: number): CacheApi<T>; | ||
type CacheApi<T = unknown> = { | ||
(deps: unknown[], cacheAction: (...args: unknown[]) => T): T; | ||
get(deps: unknown[]): [ | ||
get(deps: unknown[]): Nullable<[ | ||
unknown[], | ||
T | ||
] | null; | ||
]>; | ||
invalidate(item: any): void; | ||
}; | ||
type DropFirst<T extends unknown[]> = T extends [ | ||
unknown, | ||
...infer U | ||
] ? U : never; | ||
type Stringable = string | ((...args: any[]) => string); | ||
type CB = (...args: any[]) => any; | ||
type ValueOf<T> = T[keyof T]; | ||
type OnReturn = { | ||
off: () => void; | ||
off: CB<void>; | ||
}; | ||
type BusType = { | ||
on: (event: string, handler: CB) => OnReturn; | ||
emit: (event: string, ...args: any[]) => void; | ||
emit: (event: string, data?: any) => void; | ||
}; | ||
type TinyState<S> = () => [ | ||
value: S, | ||
setValue: (next: S | ((prev: S) => S)) => void, | ||
setValue: (next: SetValueInput<S>) => void, | ||
resetValue: () => void | ||
]; | ||
declare function isNullish(value: any): value is null | undefined; | ||
type SetValueInput<S> = DynamicValue<S, [ | ||
prev: S | ||
]>; | ||
declare function isNullish(value: any): value is Nullish; | ||
declare const isNotNullish: (value: any) => boolean; | ||
@@ -48,3 +51,3 @@ declare function asArray<T>(possibleArg: T | T[]): T[]; | ||
declare function isPromise(value: any): value is Promise<unknown>; | ||
declare function optionalFunctionValue<T>(value: T | ((...args: any[]) => T), ...args: unknown[]): T; | ||
declare function optionalFunctionValue<T>(value: DynamicValue<T>, ...args: unknown[]): T; | ||
declare const _default: { | ||
@@ -56,8 +59,6 @@ <T extends {}, U>(target: T, source: U): T & U; | ||
}; | ||
declare function defaultTo<T>(value: T | void | null | ((...args: any[]) => T | void | null), defaultValue: T | (() => T)): T; | ||
declare function defaultTo<T>(value: DynamicValue<Nullish<T>>, defaultValue: DynamicValue<T>): T; | ||
declare function invariant(condition: any, | ||
// eslint-disable-next-line @typescript-eslint/ban-types | ||
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 +68,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; | ||
@@ -75,19 +75,23 @@ declare namespace bus { | ||
] ? U : never; | ||
type Stringable = string | ((...args: any[]) => string); | ||
type CB = (...args: any[]) => any; | ||
type Stringable = string | CB<string>; | ||
type CB<T = any, Args extends TArgs = TArgs> = (...args: Args) => T; | ||
type ValueOf<T> = T[keyof T]; | ||
type Nullish<T = void> = Nullable<T> | Maybe<T>; | ||
type Nullable<T> = T | null; | ||
type Maybe<T> = T | undefined | void; | ||
type OneOrMoreOf<T> = T | T[]; | ||
type DynamicValue<T, Args extends TArgs = TArgs> = T | CB<T, Args>; | ||
type BlankValue = Maybe<"">; | ||
type TArgs = any[]; | ||
function createBus(): BusType; | ||
type OnReturn = { | ||
off: () => void; | ||
off: CB<void>; | ||
}; | ||
type BusType = { | ||
on: (event: string, handler: CB) => OnReturn; | ||
emit: (event: string, ...args: any[]) => void; | ||
emit: (event: string, data?: any) => void; | ||
}; | ||
} | ||
/** | ||
* @returns a unique numeric id. | ||
*/ | ||
declare const seq: () => string; | ||
declare function genSeq(namespace?: string): () => string; | ||
declare const seq: CB<string, any[]>; | ||
declare function genSeq(namespace?: string): CB<string>; | ||
declare function isFunction(value: unknown): value is (...args: unknown[]) => unknown; | ||
@@ -117,12 +121,53 @@ declare function mapFirst<T>(array: T[], callback: (item: T, breakout: (conditional: boolean, value: unknown) => void, index: number) => unknown): any; | ||
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, | ||
CB<boolean, [ | ||
payload?: any | ||
]> | ||
]; | ||
}; | ||
}>; | ||
}; | ||
declare function StateMachine<S extends string, A extends string>(machine: TStateMachine<S, A>): { | ||
getState: CB<S>; | ||
transition: (action: A, payload?: any) => void; | ||
}; | ||
declare function nonnullish<T>(value: Nullish<T>, error?: string): T; | ||
declare namespace tinyState { | ||
function createTinyState<S>(initialValue: S | (() => S)): TinyState<S>; | ||
type DropFirst<T extends unknown[]> = T extends [ | ||
unknown, | ||
...infer U | ||
] ? U : never; | ||
type Stringable = string | CB<string>; | ||
type CB<T = any, Args extends TArgs = TArgs> = (...args: Args) => T; | ||
type ValueOf<T> = T[keyof T]; | ||
type Nullish<T = void> = Nullable<T> | Maybe<T>; | ||
type Nullable<T> = T | null; | ||
type Maybe<T> = T | undefined | void; | ||
type OneOrMoreOf<T> = T | T[]; | ||
type DynamicValue<T, Args extends TArgs = TArgs> = T | CB<T, Args>; | ||
type BlankValue = Maybe<"">; | ||
type TArgs = any[]; | ||
function createTinyState<S>(initialValue: SetValueInput<S>): TinyState<S>; | ||
type TinyState<S> = () => [ | ||
value: S, | ||
setValue: (next: S | ((prev: S) => S)) => void, | ||
setValue: (next: SetValueInput<S>) => void, | ||
resetValue: () => void | ||
]; | ||
type SetValueInput<S> = DynamicValue<S, [ | ||
prev: 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 }; | ||
export type { DropFirst, Stringable, CB, ValueOf }; | ||
// eslint-disable-next-line @typescript-eslint/ban-types | ||
declare function StringObject(value?: Stringable): String; | ||
// eslint-disable-next-line @typescript-eslint/no-empty-function | ||
declare function noop(): void; | ||
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, noop }; | ||
export type { DropFirst, Stringable, CB, ValueOf, Nullish, Nullable, Maybe, OneOrMoreOf, DynamicValue, BlankValue }; | ||
//# sourceMappingURL=vest-utils.d.ts.map |
Sorry, the diff of this file is not supported yet
50040
1094