@vielzeug/arsenal 1.1.1 → 2.0.0
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/README.md +31 -75
- package/dist/_dev.cjs +1 -1
- package/dist/_dev.cjs.map +1 -1
- package/dist/_dev.js +2 -5
- package/dist/_dev.js.map +1 -1
- package/dist/array/chunk.cjs +1 -1
- package/dist/array/chunk.cjs.map +1 -1
- package/dist/array/chunk.d.ts +2 -1
- package/dist/array/chunk.d.ts.map +1 -1
- package/dist/array/chunk.js +5 -7
- package/dist/array/chunk.js.map +1 -1
- package/dist/array/compare.cjs +1 -1
- package/dist/array/compare.cjs.map +1 -1
- package/dist/array/compare.d.ts.map +1 -1
- package/dist/array/compare.js +13 -14
- package/dist/array/compare.js.map +1 -1
- package/dist/array/index.cjs +1 -0
- package/dist/array/index.js +29 -0
- package/dist/array/search.cjs +1 -1
- package/dist/array/search.cjs.map +1 -1
- package/dist/array/search.d.ts +8 -77
- package/dist/array/search.d.ts.map +1 -1
- package/dist/array/search.js +21 -38
- package/dist/array/search.js.map +1 -1
- package/dist/array/sort.cjs +1 -1
- package/dist/array/sort.cjs.map +1 -1
- package/dist/array/sort.d.ts +1 -1
- package/dist/array/sort.d.ts.map +1 -1
- package/dist/array/sort.js +9 -10
- package/dist/array/sort.js.map +1 -1
- package/dist/arsenal.cjs +1 -1
- package/dist/arsenal.cjs.map +1 -1
- package/dist/arsenal.iife.js +1 -1
- package/dist/arsenal.iife.js.map +1 -1
- package/dist/arsenal.js +1 -1
- package/dist/arsenal.js.map +1 -1
- package/dist/async/attempt.cjs +1 -1
- package/dist/async/attempt.cjs.map +1 -1
- package/dist/async/attempt.d.ts +3 -8
- package/dist/async/attempt.d.ts.map +1 -1
- package/dist/async/attempt.js +3 -10
- package/dist/async/attempt.js.map +1 -1
- package/dist/async/index.cjs +1 -0
- package/dist/async/index.d.ts +1 -1
- package/dist/async/index.d.ts.map +1 -1
- package/dist/async/index.js +9 -0
- package/dist/async/parallel.cjs +1 -1
- package/dist/async/parallel.cjs.map +1 -1
- package/dist/async/parallel.d.ts +1 -1
- package/dist/async/parallel.d.ts.map +1 -1
- package/dist/async/parallel.js +15 -16
- package/dist/async/parallel.js.map +1 -1
- package/dist/async/retry.cjs +1 -1
- package/dist/async/retry.cjs.map +1 -1
- package/dist/async/retry.d.ts +1 -1
- package/dist/async/retry.d.ts.map +1 -1
- package/dist/async/retry.js +14 -15
- package/dist/async/retry.js.map +1 -1
- package/dist/async/taskPool.cjs +2 -0
- package/dist/async/taskPool.cjs.map +1 -0
- package/dist/async/taskPool.d.ts +14 -0
- package/dist/async/taskPool.d.ts.map +1 -0
- package/dist/async/taskPool.js +51 -0
- package/dist/async/taskPool.js.map +1 -0
- package/dist/cache/cache.cjs +2 -0
- package/dist/cache/cache.cjs.map +1 -0
- package/dist/cache/cache.d.ts +17 -0
- package/dist/cache/cache.d.ts.map +1 -0
- package/dist/cache/cache.js +59 -0
- package/dist/cache/cache.js.map +1 -0
- package/dist/cache/index.cjs +1 -0
- package/dist/cache/index.d.ts +1 -1
- package/dist/cache/index.d.ts.map +1 -1
- package/dist/cache/index.js +3 -0
- package/dist/cache/memo.cjs +1 -1
- package/dist/cache/memo.cjs.map +1 -1
- package/dist/cache/memo.d.ts +2 -2
- package/dist/cache/memo.js +24 -23
- package/dist/cache/memo.js.map +1 -1
- package/dist/errors.cjs +1 -1
- package/dist/errors.cjs.map +1 -1
- package/dist/errors.d.ts +0 -7
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +2 -2
- package/dist/errors.js.map +1 -1
- package/dist/function/debounce.cjs +1 -1
- package/dist/function/debounce.cjs.map +1 -1
- package/dist/function/debounce.js +15 -17
- package/dist/function/debounce.js.map +1 -1
- package/dist/function/index.cjs +1 -0
- package/dist/function/index.d.ts +0 -2
- package/dist/function/index.d.ts.map +1 -1
- package/dist/function/index.js +8 -0
- package/dist/function/pipe.cjs +1 -1
- package/dist/function/pipe.cjs.map +1 -1
- package/dist/function/pipe.js +1 -1
- package/dist/function/pipe.js.map +1 -1
- package/dist/guards/index.cjs +1 -0
- package/dist/guards/index.d.ts +0 -3
- package/dist/guards/index.d.ts.map +1 -1
- package/dist/guards/index.js +17 -0
- package/dist/guards/isEqual.cjs.map +1 -1
- package/dist/guards/isEqual.js.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +2 -91
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +30 -118
- package/dist/math/allocate.cjs +1 -1
- package/dist/math/allocate.cjs.map +1 -1
- package/dist/math/allocate.d.ts +1 -1
- package/dist/math/allocate.d.ts.map +1 -1
- package/dist/math/allocate.js +13 -14
- package/dist/math/allocate.js.map +1 -1
- package/dist/math/index.cjs +1 -0
- package/dist/math/index.d.ts +0 -3
- package/dist/math/index.d.ts.map +1 -1
- package/dist/math/index.js +17 -0
- package/dist/math/mod.cjs +1 -1
- package/dist/math/mod.cjs.map +1 -1
- package/dist/math/mod.d.ts +1 -1
- package/dist/math/mod.d.ts.map +1 -1
- package/dist/math/mod.js +4 -5
- package/dist/math/mod.js.map +1 -1
- package/dist/math/range.cjs +1 -1
- package/dist/math/range.cjs.map +1 -1
- package/dist/math/range.d.ts +1 -1
- package/dist/math/range.d.ts.map +1 -1
- package/dist/math/range.js +14 -15
- package/dist/math/range.js.map +1 -1
- package/dist/math/sum.cjs +1 -1
- package/dist/math/sum.cjs.map +1 -1
- package/dist/math/sum.d.ts +2 -2
- package/dist/math/sum.d.ts.map +1 -1
- package/dist/math/sum.js +6 -7
- package/dist/math/sum.js.map +1 -1
- package/dist/object/getPath.cjs +1 -1
- package/dist/object/getPath.cjs.map +1 -1
- package/dist/object/getPath.d.ts +12 -42
- package/dist/object/getPath.d.ts.map +1 -1
- package/dist/object/getPath.js +21 -22
- package/dist/object/getPath.js.map +1 -1
- package/dist/object/index.cjs +1 -0
- package/dist/object/index.d.ts +1 -1
- package/dist/object/index.d.ts.map +1 -1
- package/dist/object/index.js +15 -0
- package/dist/object/merge.cjs +1 -1
- package/dist/object/merge.cjs.map +1 -1
- package/dist/object/merge.d.ts +1 -1
- package/dist/object/merge.d.ts.map +1 -1
- package/dist/object/merge.js +2 -3
- package/dist/object/merge.js.map +1 -1
- package/dist/object/prune.cjs +1 -1
- package/dist/object/prune.cjs.map +1 -1
- package/dist/object/prune.d.ts.map +1 -1
- package/dist/object/prune.js +22 -23
- package/dist/object/prune.js.map +1 -1
- package/dist/object/tryParseJson.cjs +2 -0
- package/dist/object/tryParseJson.cjs.map +1 -0
- package/dist/object/tryParseJson.d.ts +9 -0
- package/dist/object/tryParseJson.d.ts.map +1 -0
- package/dist/object/tryParseJson.js +18 -0
- package/dist/object/tryParseJson.js.map +1 -0
- package/dist/random/_index.cjs +2 -0
- package/dist/random/_index.cjs.map +1 -0
- package/dist/random/_index.d.ts +3 -0
- package/dist/random/_index.d.ts.map +1 -0
- package/dist/random/_index.js +10 -0
- package/dist/random/_index.js.map +1 -0
- package/dist/random/draw.cjs +1 -1
- package/dist/random/draw.cjs.map +1 -1
- package/dist/random/draw.d.ts +3 -2
- package/dist/random/draw.d.ts.map +1 -1
- package/dist/random/draw.js +12 -12
- package/dist/random/draw.js.map +1 -1
- package/dist/random/index.cjs +1 -0
- package/dist/random/index.d.ts +1 -0
- package/dist/random/index.d.ts.map +1 -1
- package/dist/random/index.js +5 -0
- package/dist/random/random.cjs +1 -1
- package/dist/random/random.cjs.map +1 -1
- package/dist/random/random.d.ts +2 -1
- package/dist/random/random.d.ts.map +1 -1
- package/dist/random/random.js +5 -6
- package/dist/random/random.js.map +1 -1
- package/dist/random/shuffle.cjs +1 -1
- package/dist/random/shuffle.cjs.map +1 -1
- package/dist/random/shuffle.d.ts +2 -1
- package/dist/random/shuffle.d.ts.map +1 -1
- package/dist/random/shuffle.js +7 -7
- package/dist/random/shuffle.js.map +1 -1
- package/dist/random/source.d.ts +4 -0
- package/dist/random/source.d.ts.map +1 -0
- package/dist/string/index.cjs +1 -0
- package/dist/string/index.d.ts +0 -2
- package/dist/string/index.d.ts.map +1 -1
- package/dist/string/index.js +12 -0
- package/dist/string/similarity.cjs +1 -1
- package/dist/string/similarity.cjs.map +1 -1
- package/dist/string/similarity.d.ts.map +1 -1
- package/dist/string/similarity.js +16 -17
- package/dist/string/similarity.js.map +1 -1
- package/dist/string/truncate.cjs +1 -1
- package/dist/string/truncate.cjs.map +1 -1
- package/dist/string/truncate.d.ts +2 -1
- package/dist/string/truncate.d.ts.map +1 -1
- package/dist/string/truncate.js +10 -11
- package/dist/string/truncate.js.map +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +14 -19
- package/dist/_common/_secureRandomIndex.cjs +0 -2
- package/dist/_common/_secureRandomIndex.cjs.map +0 -1
- package/dist/_common/_secureRandomIndex.d.ts +0 -2
- package/dist/_common/_secureRandomIndex.d.ts.map +0 -1
- package/dist/_common/_secureRandomIndex.js +0 -9
- package/dist/_common/_secureRandomIndex.js.map +0 -1
- package/dist/async/queue.cjs +0 -2
- package/dist/async/queue.cjs.map +0 -1
- package/dist/async/queue.d.ts +0 -42
- package/dist/async/queue.d.ts.map +0 -1
- package/dist/async/queue.js +0 -72
- package/dist/async/queue.js.map +0 -1
- package/dist/cache/stash.cjs +0 -2
- package/dist/cache/stash.cjs.map +0 -1
- package/dist/cache/stash.d.ts +0 -111
- package/dist/cache/stash.d.ts.map +0 -1
- package/dist/cache/stash.js +0 -92
- package/dist/cache/stash.js.map +0 -1
- package/dist/function/constant.cjs +0 -2
- package/dist/function/constant.cjs.map +0 -1
- package/dist/function/constant.d.ts +0 -5
- package/dist/function/constant.d.ts.map +0 -1
- package/dist/function/constant.js +0 -8
- package/dist/function/constant.js.map +0 -1
- package/dist/function/identity.cjs +0 -2
- package/dist/function/identity.cjs.map +0 -1
- package/dist/function/identity.d.ts +0 -5
- package/dist/function/identity.d.ts.map +0 -1
- package/dist/function/identity.js +0 -8
- package/dist/function/identity.js.map +0 -1
- package/dist/guards/isArray.cjs +0 -2
- package/dist/guards/isArray.cjs.map +0 -1
- package/dist/guards/isArray.d.ts +0 -16
- package/dist/guards/isArray.d.ts.map +0 -1
- package/dist/guards/isArray.js +0 -8
- package/dist/guards/isArray.js.map +0 -1
- package/dist/guards/isBoolean.cjs +0 -2
- package/dist/guards/isBoolean.cjs.map +0 -1
- package/dist/guards/isBoolean.d.ts +0 -23
- package/dist/guards/isBoolean.d.ts.map +0 -1
- package/dist/guards/isBoolean.js +0 -8
- package/dist/guards/isBoolean.js.map +0 -1
- package/dist/guards/isString.cjs +0 -2
- package/dist/guards/isString.cjs.map +0 -1
- package/dist/guards/isString.d.ts +0 -15
- package/dist/guards/isString.d.ts.map +0 -1
- package/dist/guards/isString.js +0 -8
- package/dist/guards/isString.js.map +0 -1
- package/dist/math/abs.cjs +0 -2
- package/dist/math/abs.cjs.map +0 -1
- package/dist/math/abs.d.ts +0 -17
- package/dist/math/abs.d.ts.map +0 -1
- package/dist/math/abs.js +0 -8
- package/dist/math/abs.js.map +0 -1
- package/dist/math/max.cjs +0 -2
- package/dist/math/max.cjs.map +0 -1
- package/dist/math/max.d.ts +0 -21
- package/dist/math/max.d.ts.map +0 -1
- package/dist/math/max.js +0 -12
- package/dist/math/max.js.map +0 -1
- package/dist/math/min.cjs +0 -2
- package/dist/math/min.cjs.map +0 -1
- package/dist/math/min.d.ts +0 -21
- package/dist/math/min.d.ts.map +0 -1
- package/dist/math/min.js +0 -12
- package/dist/math/min.js.map +0 -1
- package/dist/object/parseJSON.cjs +0 -2
- package/dist/object/parseJSON.cjs.map +0 -1
- package/dist/object/parseJSON.d.ts +0 -32
- package/dist/object/parseJSON.d.ts.map +0 -1
- package/dist/object/parseJSON.js +0 -16
- package/dist/object/parseJSON.js.map +0 -1
- package/dist/string/endsWith.cjs +0 -2
- package/dist/string/endsWith.cjs.map +0 -1
- package/dist/string/endsWith.d.ts +0 -5
- package/dist/string/endsWith.d.ts.map +0 -1
- package/dist/string/endsWith.js +0 -8
- package/dist/string/endsWith.js.map +0 -1
- package/dist/string/startsWith.cjs +0 -2
- package/dist/string/startsWith.cjs.map +0 -1
- package/dist/string/startsWith.d.ts +0 -5
- package/dist/string/startsWith.d.ts.map +0 -1
- package/dist/string/startsWith.js +0 -8
- package/dist/string/startsWith.js.map +0 -1
package/dist/arsenal.iife.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var Arsenal=(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});var t=class e extends Error{constructor(e,t){super(e,t),this.name=new.target.name,Object.setPrototypeOf(this,new.target.prototype)}static is(t){return t instanceof e}},n=class extends t{},r=class extends t{};function i(e){return typeof e==`string`}function a(e,t=2){if(!Array.isArray(e)&&!i(e))throw new n(`chunk: argument must be an array or string`);if(t<1)throw new n(`chunk: size must be at least 1`);return Array.from({length:Math.ceil(e.length/t)},(n,r)=>e.slice(r*t,r*t+t))}function o(e){return e.filter(Boolean)}var s=(e,t)=>{if(e===t)return 0;if(e===void 0)return 1;if(t===void 0)return-1;if(e===null)return t===null?0:-1;if(t===null)return 1;if(typeof e==`string`&&typeof t==`string`)return e.localeCompare(t);if(typeof e==`number`&&typeof t==`number`)return e===t?0:e>t?1:-1;if(e instanceof Date&&t instanceof Date){let n=e.getTime(),r=t.getTime();return n===r?0:n>r?1:-1}throw new n(`compare: unsupported types "${typeof e}" and "${typeof t}". Supported: number, string, Date, null, undefined.`)},c=e=>{let t=Object.entries(e);return(e,n)=>{for(let[r,i]of t){let t=e[r],a=n[r],o=i===`desc`?-1:1,c=s(t,a);if(c!==0)return c*o}return 0}};function l(e,t){return u(e,t,new WeakMap)}function u(e,t,n){if(e===t)return!0;if(e==null||t==null||typeof e!=typeof t||typeof e!=`object`||typeof t!=`object`)return!1;if(n.has(e))return n.get(e)===t;if(n.set(e,t),Array.isArray(e)||Array.isArray(t))return!Array.isArray(e)||!Array.isArray(t)||e.length!==t.length?!1:e.every((e,r)=>u(e,t[r],n));if(e instanceof Date&&t instanceof Date)return e.getTime()===t.getTime();if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(let[r,i]of e)if(!t.has(r)||!u(i,t.get(r),n))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;let r=[...t];for(let i of e)if(typeof i==`string`||typeof i==`number`||typeof i==`boolean`||i==null){if(!t.has(i))return!1}else if(!r.some(e=>u(i,e,n)))return!1;return!0}if(e instanceof RegExp||t instanceof RegExp)return e instanceof RegExp&&t instanceof RegExp&&e.source===t.source&&e.flags===t.flags;if(e instanceof Map||t instanceof Map||e instanceof Set||t instanceof Set)return!1;let r=Object.keys(e),i=Object.keys(t);if(r.length!==i.length)return!1;for(let i of r)if(!Object.hasOwn(t,i)||!u(e[i],t[i],n))return!1;return!0}function d(e,t){return typeof t!=`object`||!t?e.includes(t):e.some(e=>l(e,t))}var f=new Set([`__proto__`,`constructor`,`prototype`]);function p(e){return typeof e==`string`&&f.has(e)}function m(e,t){let n={};for(let r=0;r<e.length;r++){let i=t(e[r]),a=i==null?`_`:String(i);p(a)||(n[a]=(n[a]??0)+1)}return n}function h(e,t){return new Set(e.map(e=>t(e)))}function g(e,t){let n=new Set,r=[];for(let i of e){let e=t(i);n.has(e)||(n.add(e),r.push(i))}return r}function _(e,t,n){if(!n){let n=new Set(t);return e.filter(e=>!n.has(e))}let r=h(t,n);return e.filter(e=>!r.has(n(e)))}function v(e,t=1){let n=Math.max(0,Math.floor(t));return e.slice(n)}function y(e,t=1){let n=Math.max(0,Math.floor(t));return n===0?[...e]:e.slice(0,Math.max(0,e.length-n))}function b(e,t){let n=[];for(let r=0;r<e.length;r++){let i=t(e[r],r,e);i!==void 0&&n.push(i)}return n}function x(e,t){return e.length>0?e[0]:t}function S(e,t=1){if(t<1)return[...e];let n=[];for(let r of e)Array.isArray(r)?n.push(...S(r,t-1)):n.push(r);return n}function ee(e,t){let n={};for(let r of e){let e=t(r),i=e==null?`_`:String(e);p(i)||(n[i]||(n[i]=[]),n[i].push(r))}return n}function te(e,t){let n={};for(let r of e){let e=String(t(r));p(e)||(n[e]=r)}return n}function ne(e,t,n){if(!n){let n=new Set(t);return e.filter(e=>n.has(e))}let r=h(t,n);return e.filter(e=>r.has(n(e)))}function re(e,t){return e.length>0?e[e.length-1]:t}function ie(e,t){let n=[],r=[];for(let i=0;i<e.length;i++)t(e[i],i,e)?n.push(e[i]):r.push(e[i]);return[n,r]}function ae(e,t,n){let r=e.findIndex(t);return r===-1?e:[...e.slice(0,r),n,...e.slice(r+1)]}function oe(e,t,{wrap:n=!1}={}){if(e.length===0)return e;let r=(t%e.length+e.length)%e.length,i=e.slice(r);return n?[...i,...e.slice(0,r)]:i}function C(e){return e==null}function w(e){return typeof e==`number`&&!Number.isNaN(e)}var T=1e4;function E(e,t){if(e.length>T||t.length>T)throw new n(`similarity: input strings must not exceed ${T} characters to prevent excessive memory usage`);let r=e.toLowerCase(),i=t.toLowerCase();if(r===i)return 1;if(r.length===0)return+(i.length===0);if(i.length===0)return 0;let[a,o]=r.length<i.length?[r,i]:[i,r],s=a.length,c=o.length,l=Array.from({length:s+1},(e,t)=>t),u=Array(s+1);for(let e=1;e<=c;e++){u[0]=e;for(let t=1;t<=s;t++){let n=o[e-1]===a[t-1]?0:1;u[t]=Math.min(u[t-1]+1,l[t]+1,l[t-1]+n)}[l,u]=[u,l]}return 1-l[s]/Math.max(r.length,i.length)}var se=10,ce=1e3;function D(e){if(e===void 0)return se;if(!Number.isInteger(e)||e<0)throw new n(`fuzzy: maxDepth must be a non-negative integer, got ${e}`);return Math.min(e,ce)}var O=e=>e.normalize(`NFKD`).replace(/\p{M}/gu,``);function k(e,t,n,r,a=0){return a>r||C(e)?0:i(e)||w(e)?E(n?O(String(e)):String(e),t):Array.isArray(e)?e.reduce((e,i)=>Math.max(e,k(i,t,n,r,a+1)),0):typeof e==`object`?Object.values(e).reduce((e,i)=>Math.max(e,k(i,t,n,r,a+1)),0):0}function A(e,t,n,r,i){return k(e,t,r,i)>=n}function j(e,t,n={}){let{fields:r,normalize:i=!1,threshold:a=.25}=n,o=D(n.maxDepth);if(!t)return[...e];let s=t.trim().toLowerCase();if(!s)return[...e];let c=i?O(s):s;return e.filter(e=>r&&r.length>0&&typeof e==`object`&&e?r.some(t=>A(e[t],c,a,i,o)):A(e,c,a,i,o))}function M(e,t,n={}){let{fields:r,normalize:i=!1,threshold:a=.25}=n,o=D(n.maxDepth);if(!t||!t.trim())return e.map(e=>({item:e,score:1}));let s=t.trim().toLowerCase(),c=i?O(s):s;return e.map(e=>({item:e,score:r&&r.length>0&&typeof e==`object`&&e?r.reduce((t,n)=>Math.max(t,k(e[n],c,i,o)),0):k(e,c,i,o)})).filter(({score:e})=>e>=a).sort((e,t)=>t.score-e.score)}function le(e,t,n={}){let{scored:r,...i}=n;return r?M(e,t,i):j(e,t,i)}function ue(e,t,r=`asc`){if(!Array.isArray(e))throw new n(`sort: first argument must be an array`);if(typeof t==`function`){let n=r===`desc`?-1:1;return[...e].sort((e,r)=>s(t(e),t(r))*n)}return[...e].sort(c(t))}function de(e,t=1){let n=Math.max(0,Math.floor(t));return e.slice(0,n)}function fe(e,t=1){let n=Math.max(0,Math.floor(t));return n===0?[]:e.slice(Math.max(0,e.length-n))}function pe(e,t,n,r={}){let{strategy:i=`append`}=r,a=n?e=>n(e)===n(t):e=>e===t,o=e.findIndex(a);return o===-1?i===`prepend`?[t,...e]:[...e,t]:[...e.slice(0,o),...e.slice(o+1)]}function me(e,t,n){return n?g([...e,...t],n):[...new Set([...e,...t])]}function he(e,t){return e.length<=1?[...e]:t?g(e,t):[...new Set(e)]}function ge(e){if(e.length===0)return[];let t=e[0].length,n=Array.from({length:t},()=>[]);for(let r of e)for(let e=0;e<t;e++)n[e].push(r[e]);return n}function _e(...e){if(e.length===0)return[];let t=Math.max(...e.map(e=>e.length)),n=Array(t);for(let r=0;r<t;r++)n[r]=e.map(e=>e[r]);return n}function N(e){return e?.reason??new DOMException(`Aborted`,`AbortError`)}function ve(e){return e.ok===!0}function ye(e){return e.ok===!1}function be(e){try{let t=e();return typeof t?.then==`function`?t.then(e=>({ok:!0,value:e}),e=>({error:e,ok:!1})):{ok:!0,value:t}}catch(e){return{error:e,ok:!1}}}function xe(e,t=3e4){let n=Math.max(0,Number.isNaN(e)?0:Math.floor(e));return Math.min(1e3*(n<=30?1<<n:2**n),t)}async function Se(e,t,r={}){let{abortOnError:i=!1,limit:a=1/0,signal:o}=r;if(a<1)throw new n(`parallel: limit must be at least 1, got ${a}`);if(o?.aborted)throw N(o);if(e.length===0)return[];let s=Array(e.length),c=0,l=i?new AbortController:void 0,u=async()=>{for(;;){if(o?.aborted)throw N(o);if(l?.signal.aborted||c>=e.length)return;let n=c++;try{s[n]=await t(e[n],n,e)}catch(e){throw l?.abort(),e}}},d=Math.min(a,e.length),f=Array.from({length:d},()=>u());return await Promise.all(f),s}function Ce(e={}){let{concurrency:t=1}=e;if(t<1)throw new n(`Concurrency must be at least 1`);let r=0,i=!1,a=null,o=null,s=[],c=new Set,l=()=>{r===0&&s.length===0&&o&&(o(),a=null,o=null)},u=e=>{for(let t of c)t(e)},d=()=>{if(!i){for(i=!0;r<t&&s.length>0;){let e=s.shift();r++,Promise.resolve().then(()=>e.fn()).then(t=>{u({ok:!0,value:t}),e.resolve(t)}).catch(t=>{u({error:t,ok:!1}),e.reject(t)}).finally(()=>{r--,d(),l()})}i=!1,l()}};return{get active(){return r},add:(e,t)=>{let{promise:n,reject:r,resolve:i}=Promise.withResolvers(),a=t?.priority??0,o={fn:e,priority:a,reject:r,resolve:i},c=s.length;for(;c>0&&s[c-1].priority<a;)c--;return s.splice(c,0,o),d(),n},clear:e=>{let t=e??Error(`Queue cleared`);for(let e of s.splice(0))e.reject(t);l()},onIdle:()=>{if(r===0&&s.length===0)return Promise.resolve();if(!a){let e=Promise.withResolvers();a=e.promise,o=e.resolve}return a},onSettled:e=>(c.add(e),()=>{c.delete(e)}),get pending(){return s.length},get size(){return r+s.length}}}async function P(e,t){return t?t.aborted?Promise.reject(N(t)):new Promise((n,r)=>{let i=setTimeout(()=>{t.removeEventListener(`abort`,a),n()},e),a=()=>{clearTimeout(i),t.removeEventListener(`abort`,a),r(N(t))};t.addEventListener(`abort`,a)}):new Promise(t=>setTimeout(t,e))}function we(e,t){let n=[e===void 0?void 0:AbortSignal.timeout(e),t].filter(e=>e!=null);if(n.length!==0)return n.length===1?n[0]:AbortSignal.any(n)}async function Te(e,{delay:t=250,onError:r,shouldRetry:i,signal:a,timeout:o,times:s=3}={}){if(!Number.isInteger(s)||s<1)throw new n(`retry: times must be a positive integer, got ${s}`);for(let n=1;n<=s;n++){if(a?.aborted)throw N(a);let c=we(o,a);try{return await e(c)}catch(e){if(n===s||i&&!i(e,n-1))throw r?.(e),e;let o=typeof t==`function`?t(n-1):t;o>0&&await P(o,a)}}}async function Ee(e,{interval:t=100,signal:n,timeout:r=5e3}={}){let i=AbortSignal.timeout(r),a=n?AbortSignal.any([n,i]):i;for(a.throwIfAborted();;){if(a.throwIfAborted(),await e(a))return;await P(t,a)}}var De=class extends Map{maxSize;constructor(e){super(),this.maxSize=e}set(e,t){return this.has(e)&&this.delete(e),super.set(e,t),this.size>this.maxSize&&this.evictOldest(),this}evictOldest(e=()=>!0){for(let[t,n]of this)if(e(t,n))return this.delete(t),!0;return!1}},Oe=`\0undefined\0`,ke=`\0NaN\0`,Ae=`\0+Infinity\0`,je=`\0-Infinity\0`,Me=`\0function\0`,Ne=0,F=new WeakMap;function Pe(e){let t=F.get(e);return t===void 0&&(t=Ne++,F.set(e,t)),t}var Fe=e=>{try{return JSON.stringify(e,(e,t)=>t===void 0?Oe:typeof t==`number`&&Number.isNaN(t)?ke:t===1/0?Ae:t===-1/0?je:typeof t==`function`?`${Me}${Pe(t)}`:t)}catch(e){throw new r(`[arsenal/memo] Failed to serialize memo arguments. Provide options.key for non-serializable arguments.${e instanceof Error&&e.message?` Reason: ${e.message}`:``}`,{cause:e})}};function Ie(e,{key:t,maxSize:r=1/0}={}){if(r!==1/0&&(!Number.isInteger(r)||r<1))throw new n(`memo: maxSize must be a positive integer or Infinity, got ${r}`);let i=new De(r),a=(...e)=>t?t(...e):Fe(e),o=Object.assign((...t)=>{let n=a(...t);if(i.has(n)){let e=i.get(n);return i.set(n,e),e}let r=e(...t);return i.set(n,r),r},{clear:()=>i.clear(),invalidate:(...e)=>{i.delete(a(...e))}});return Object.defineProperty(o,"size",{get:()=>i.size}),o}function I(e){return typeof e==`object`&&!!e&&typeof e.then==`function`}function Le(e={}){let t=e.maxSize??1/0;if(t!==1/0&&(!Number.isInteger(t)||t<1))throw new n(`stash: maxSize must be a positive integer or Infinity, got ${t}`);let r=new Map,i=new Map,a=new Map,o=e.hash??(e=>String(e)),s=e.onEvict,c=e.ttlMs,l=e.persistence,u=0,d=new Set;function f(){if(r.size>t){let[e]=r.keys();e!==void 0&&m(e)}}function p(e){let t=i.get(e);t!==void 0&&(clearTimeout(t),i.delete(e))}function m(e){let t=r.get(e);return p(e),t&&(s?.(t.key,t.value),r.delete(e)),a.has(e)&&d.add(e),t!==void 0}function h(e,t){if(p(e),t===1/0)return;if(!Number.isFinite(t))throw new n(`stash: ttlMs must be a finite number or Infinity`);if(t<=0){m(e);return}if(!r.has(e))return;let a=setTimeout(()=>{i.delete(e),m(e)},t);i.set(e,a)}function g(e){return l&&typeof e==`string`?l.deserialize(e):e}function _(e){let t=r.get(o(e));return t?g(t.value):void 0}function v(e,t,n){let i=o(e),a=l?l.serialize(t):t;p(i),r.set(i,{key:e,value:a}),f();let s=n?.ttlMs??c;s!==void 0&&h(i,s)}function y(e,t,n){let i=o(e);if(r.has(i)&&!n?.forceRefresh)return _(e);let s=a.get(i);if(s&&!n?.forceRefresh)return s;let c=t();if(I(c)){let t=u,r=c.then(o=>(a.get(i)===r&&a.delete(i),u===t&&!d.has(i)&&v(e,o,n),d.delete(i),o)).catch(e=>{throw a.get(i)===r&&a.delete(i),d.delete(i),e});return a.set(i,r),r}return v(e,c,n),c}function b(e){return m(o(e))}function x(){u++;for(let e of i.values())clearTimeout(e);if(s)for(let e of r.values())s(e.key,e.value);r.clear(),i.clear(),a.clear(),d.clear()}function*S(){for(let e of r.values())yield[e.key,g(e.value)]}return{clear:x,delete:b,entries:S,get:_,getOrSet:y,set:v,get size(){return r.size}}}function Re(e,t,n){if(!e)throw new((n?.type)??Error)(t??`Assertion failed`)}function ze(e){return()=>e}var Be=!globalThis.__ARSENAL_PROD__;function Ve(e){Be&&console.warn(`[@vielzeug/arsenal] ${e}`)}function He(e,t=300,n={leading:!1,trailing:!0}){let r=n.leading??!1,i=n.trailing??!0;!r&&!i&&Ve("debounce: both `leading` and `trailing` are false — the wrapped function will never be invoked.");let a,o,s,c=!1,l=()=>{a!==void 0&&(clearTimeout(a),a=void 0)},u=()=>{if(l(),c=!1,!o)return;let t=o;return o=void 0,s=e(...t),s};return Object.assign((...n)=>(o=n,r&&!c&&(c=!0,s=e(...n),o=void 0,!i)?(a=setTimeout(()=>{a=void 0,c=!1},t),s):r&&!i&&c?s:(l(),a=setTimeout(u,t),s)),{cancel:()=>{l(),o=void 0,c=!1},flush:()=>u(),pending:()=>a!==void 0})}function Ue(e){return e}var We=e=>{let t,n=!1,r=((...r)=>(n||=(t=e(...r),!0),t));return r.reset=()=>{t=void 0,n=!1},r};function Ge(...e){if(e.length===0)return e=>e;let[t,...n]=e;return(...e)=>n.reduce((e,t)=>t(e),t(...e))}function Ke(e,t){let n=[],r=e.length;if(t?.reverse)for(let t=r-1;t>=0;t--)try{e[t]()}catch(e){n.push(e)}else for(let t of e)try{t()}catch(e){n.push(e)}if(n.length>0)throw AggregateError(n,`One or more callbacks failed`)}function qe(e,t){return t(e),e}function Je(e,t=700,n={leading:!0,trailing:!1}){let r=n.leading??!0,i=n.trailing??!1,a,o=-1/0,s,c,l=()=>{a!==void 0&&(clearTimeout(a),a=void 0)},u=e=>{a=setTimeout(p,e)},d=t=>{if(o=t,l(),!s)return;let n=s;return s=void 0,c=e(...n),c},f=e=>t-(e-o),p=()=>{let e=Date.now();s&&f(e)<=0?d(e):s?u(f(e)):l()};return Object.assign((...e)=>{let t=Date.now();o===-1/0&&!r&&(o=t),s=e;let n=f(t);return n<=0?d(t):(i&&!a&&u(n),c)},{cancel:()=>{l(),s=void 0,o=-1/0},flush:()=>{if(s)return d(Date.now())},pending:()=>s!==void 0||a!==void 0})}function Ye(...e){return t=>e.every(e=>e(t))}function Xe(...e){return t=>e.some(e=>e(t))}function Ze(...e){return t=>e.every(e=>!e(t))}function Qe(e){return t=>!e(t)}function $e(e){return e instanceof Error&&e.name===`AbortError`}function et(e,t){return Array.isArray(e)?t?e.every(t):!0:!1}function tt(e){return typeof e==`boolean`}function nt(e){return e instanceof Date&&!Number.isNaN(e.getTime())}function rt(e){return e!==void 0}function L(e){if(typeof e!=`object`||!e)return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function R(e){return C(e)||e===``?!0:Array.isArray(e)?e.length===0:e instanceof Map||e instanceof Set?e.size===0:L(e)?Object.keys(e).length===0:!1}function it(e){return e instanceof Error}function at(e){return typeof e==`function`}function z(e,t){if(e===t)return!0;if(e==null||t==null)return!1;let n=Array.isArray(e),r=Array.isArray(t);if(n!==r)return!1;if(n&&r){let n=e,r=t;return r.length>n.length?!1:r.every((e,t)=>z(n[t],e))}if(typeof t==`object`&&typeof e==`object`){if(t instanceof Date||e instanceof Date)return t instanceof Date&&e instanceof Date&&t.getTime()===e.getTime();if(t instanceof RegExp||e instanceof RegExp)return t instanceof RegExp&&e instanceof RegExp&&t.source===e.source&&t.flags===e.flags;if(t instanceof Map||t instanceof Set||e instanceof Map||e instanceof Set)return!1;for(let n of Object.keys(t))if(!z(e?.[n],t[n]))return!1;return!0}return e===t}function ot(e){let t=typeof e;return t===`string`||t===`boolean`||t===`number`&&!Number.isNaN(e)}function st(e){return e instanceof RegExp}function ct(e,t){if(Object.is(e,t))return!0;if(e===null||t===null||typeof e!=`object`||typeof t!=`object`)return!1;let n=Array.isArray(e),r=Array.isArray(t);if(n!==r)return!1;if(n&&r){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(!Object.is(e[n],t[n]))return!1;return!0}let i=Object.keys(e),a=t,o=e;if(i.length!==Object.keys(a).length)return!1;for(let e of i)if(!Object.hasOwn(a,e)||!Object.is(o[e],a[e]))return!1;return!0}function lt(e){return typeof e==`bigint`?e<0n?-e:e:Math.abs(e)}function ut(e,t){if(typeof t==`number`&&(!Number.isInteger(t)||t<1))throw new n(`Parts must be a positive integer, got ${t}`);let r=Array.isArray(t)?t:Array(t).fill(1);if(r.length===0)throw new n(`Ratios array cannot be empty`);if(r.some(e=>e<0))throw new n(`Ratios must be non-negative`);let i=r.reduce((e,t)=>e+t,0);if(i===0)throw new n(`Total ratio cannot be zero`);if(typeof e==`bigint`){let t=BigInt(i),n=Array.from({length:r.length-1},(n,i)=>e*BigInt(r[i])/t);return n.push(e-n.reduce((e,t)=>e+t,0n)),n}let a=Array.from({length:r.length-1},(t,n)=>Math.floor(e*r[n]/i));return a.push(e-a.reduce((e,t)=>e+t,0)),a}function B(e,t){return e.length===0?0:e.reduce((e,r)=>{let i=t?t(r):r;if(typeof i!=`number`||Number.isNaN(i))throw new n(`sum: encountered a non-numeric value; provide a callback to map non-number items`);return e+i},0)}function V(e,t){if(e.length!==0)try{let n=B(e,t)/e.length;return Number.isNaN(n)?void 0:n}catch{return}}function H(e,t,n){return t!=null&&e<t?t:n!=null&&e>n?n:e}function U(e,t){let n=Math.abs(e),r=Math.abs(t);for(;r!==0;){let e=r;r=n%r,n=e}return n}function dt(e,t){return e===0||t===0?0:Math.abs(e*t)/U(e,t)}function ft(e,t,n){return e+(t-e)*n}function pt(e,t,n=5){if(n<=0)return[];if(n===1)return[e];let r=(t-e)/(n-1);return Array.from({length:n},(t,n)=>e+n*r)}function mt(e,t){if(e.length===0)return;let n=t??(e=>e),r=e[0];for(let t=1;t<e.length;t++)s(n(e[t]),n(r))>0&&(r=e[t]);return r}function ht(e,t){if(e.length===0)return;let n=t?e.map(t):[...e];n.sort((e,t)=>e-t);let r=Math.floor(n.length/2);return n.length%2==0?(n[r-1]+n[r])/2:n[r]}function gt(e,t){if(e.length===0)return;let n=t??(e=>e),r=e[0];for(let t=1;t<e.length;t++)s(n(e[t]),n(r))<0&&(r=e[t]);return r}function _t(e,t){if(t===0)throw new n(`mod: divisor cannot be 0`);return(e%t+t)%t}function vt(e,t,n){return t===n?0:H((e-t)/(n-t),0,1)}function yt(e,t){return t===0?0:e/t*100}function bt(e,t,r){let[i,a,o]=t===void 0?[0,e,1]:r===void 0?[e,t,1]:[e,t,r];if(!Number.isFinite(i)||!Number.isFinite(a)||!Number.isFinite(o))throw new n(`range: start, stop, and step must be finite numbers`);if(o===0)throw new n(`range: step cannot be 0`);if(i===a)return[];let s=(a-i)/o,c=Math.max(0,Number.isInteger(s)?s:Math.ceil(s+2**-52));if(c>1e7)throw new n(`range: exceeds maximum allowed size of 10,000,000`);return Array.from({length:c},(e,t)=>i+t*o)}function xt(e,t=0,n=Math.round){if(t===0)return n(e);let r=10**Math.max(-323,Math.min(t,292));return n(e*r)/r}function W(e,t){if(e.length===0)return 0;let n=t?e.map(t):e,r=V(n)??0;return V(n.map(e=>(e-r)**2))??0}function St(e,t){return Math.sqrt(W(e,t))}function Ct(e,...t){let n={...e};for(let e of t)if(L(e))for(let t of Object.keys(e))p(t)||n[t]===void 0&&(n[t]=e[t]);return n}function wt(e={},t={},n=l){let r=[],i=[],a={},o=new Set(Object.keys(e)),s=new Set(Object.keys(t));for(let i of s)o.has(i)?!p(i)&&!n(e[i],t[i])&&(a[i]={after:t[i],before:e[i]}):r.push(i);for(let e of o)s.has(e)||i.push(e);return{added:r,changed:a,removed:i}}function Tt(e,t,n){let r=n?.compareFn??((e,t)=>l(e,t));return{added:t.filter(t=>!e.some(e=>r(e,t))),removed:e.filter(e=>!t.some(t=>r(e,t)))}}function Et(e,t){let n={};for(let r of Object.keys(e))p(r)||t(e[r],r,e)&&(n[r]=e[r]);return n}var Dt=10;function G(e,t,n){let r={};for(let[i,a]of Object.entries(e)){if(f.has(i))continue;let e=t?`${t}.${i}`:i;L(a)&&n<Dt?Object.assign(r,G(a,e,n+1)):r[e]=a}return r}function Ot(e){return G(e,``,0)}function kt(e){let t={};for(let[n,r]of Object.entries(e)){let e=n.split(`.`);if(e.some(e=>f.has(e)))continue;let i=t;for(let t=0;t<e.length-1;t++)L(i[e[t]])||(i[e[t]]={}),i=i[e[t]];i[e[e.length-1]]=r}return t}function At(e,t,r={}){let{bracketNotation:i=!0,fallback:a,strict:o=!1}=r;if(/[[\]]/.test(t)){if(!i)throw new n(`getPath: bracket notation is not supported. Use dot notation: '${t.replace(/\[(\d+)\]/g,`.$1`).replace(/^\.|\.$/g,``)}' or pass { bracketNotation: true }.`);t=t.replace(/\[(\d+)\]/g,`.$1`).replace(/^\.|\.$/g,``)}let s=t.split(`.`).filter(Boolean),c=e;for(let e of s){if(f.has(e))return a;if(typeof c!=`object`||!c){if(o)throw new n(`Cannot read property '${e}' of ${c}`);return a}if(c=c[e],c===void 0){if(o)throw new n(`Property '${e}' does not exist`);return a}}return c}function jt(e){let t={};for(let[n,r]of Object.entries(e))p(r)||(t[r]=n);return t}function Mt(e,t){let n={};for(let r of Object.keys(e)){if(p(r))continue;let i=t(r,e[r],e);p(i)||(n[i]=e[r])}return n}function Nt(e,t){let n={};for(let r of Object.keys(e))p(r)||(n[r]=t(e[r],r,e));return n}function K(e,t,n){if(!L(t))return t;let r={...e};for(let e of Object.keys(t)){if(p(e))continue;let i=t[e],a=r[e];r[e]=Array.isArray(i)&&Array.isArray(a)?n.arrayStrategy===`concat`?[...a,...i]:i:L(i)&&L(a)?K(a,i,n):i}return r}function Pt(...e){let t=e[e.length-1],n=e.length>0&&typeof t==`object`&&!!t&&!Array.isArray(t)&&`arrayStrategy`in t&&Object.keys(t).length===1&&(t.arrayStrategy===`concat`||t.arrayStrategy===`replace`),r=n?t:{},i=n?e.slice(0,-1):e;return i.length===0?{}:i.reduce((e,t)=>K(e,t,r),{})}function Ft(...e){if(e.length===0)return{};let t={};for(let n of e)for(let e of Object.keys(n))p(e)||(t[e]=n[e]);return t}function It(e,t){let n=new Set(t),r={};for(let t of Object.keys(e))p(t)||n.has(t)||(r[t]=e[t]);return r}function Lt(e,t={}){let{fallback:n,reviver:r,validator:i}=t;if(C(e))return n;try{let t=JSON.parse(e,r);return t===void 0||i&&!i(t)?n:t}catch{return n}}function Rt(e,t){let n={};for(let r of t)p(r)||Object.hasOwn(e,r)&&(n[r]=e[r]);return n}function q(e){if(!C(e)){if(i(e)){let t=e.trim();return t===``?void 0:t}if(Array.isArray(e)){let t=b(e,e=>{let t=q(e);return R(t)?void 0:t});return t.length===0?void 0:t}if(L(e)){let t={};for(let[n,r]of Object.entries(e)){if(p(n))continue;let e=q(r);R(e)||(t[n]=e)}return Object.keys(t).length===0?void 0:t}return e}}function J(e,t,n){if(e===void 0)return`undefined`;if(e===null)return`null`;if(typeof e==`bigint`)return`${e}n`;if(typeof e!=`object`)return JSON.stringify(e);if(n.has(e))return`[Circular]`;if(n.add(e),e instanceof Date)return`[Date:${Number.isNaN(e.getTime())?`Invalid`:e.toISOString()}]`;if(e instanceof RegExp)return`[RegExp:${e.source}/${e.flags}]`;if(e instanceof Set)return`[Set:${[...e].map(e=>J(e,t,n)).sort().join(`,`)}]`;if(e instanceof Map)return`[Map:${[...e.entries()].map(([e,r])=>[J(e,t,n),J(r,t,n)]).sort(([e,t],[n,r])=>e===n?t.localeCompare(r):e.localeCompare(n)).map(([e,t])=>`${e}=>${t}`).join(`,`)}]`;if(Array.isArray(e))return`[${e.map(e=>J(e,t,n)).join(`,`)}]`;let i=Object.getPrototypeOf(e);if(i!==Object.prototype&&i!==null){if(t?.onClassInstance===`throw`)throw new r(`hash: unsupported type ${e.constructor?.name??`unknown`}`);return String(e)}let a=e;return`{${Object.keys(a).filter(e=>a[e]!==void 0).sort().map(e=>`${JSON.stringify(e)}:${J(a[e],t,n)}`).join(`,`)}}`}function zt(e,t){return J(e,t,new Set)}function Y(e){let t=crypto.getRandomValues(new Uint32Array(1))[0]/4294967296;return Math.floor(t*e)}function X(e,t){if(e>t)throw new n(`random: minimum value must not be greater than maximum value`);return Y(t-e+1)+e}function Bt(e){if(e.length!==0)return e[X(0,e.length-1)]}function Vt(e,t){let n=Math.max(0,Math.min(e.length,Math.floor(t)));if(n===0)return[];if(n===e.length)return[...e];let r=[...e];for(let e=r.length-1;e>0;e--){let t=Y(e+1),n=r[e];r[e]=r[t],r[t]=n}return r.slice(0,n)}function Ht(e){let t=[...e];for(let e=t.length-1;e>0;e--){let n=Y(e+1);[t[e],t[n]]=[t[n],t[e]]}return t}function Ut(){return crypto.randomUUID()}var Wt=/(\p{Ll})(\p{Lu}|\p{N})|(\p{Lu}|\p{N})(\p{Lu}\p{Ll})|(\p{N})(\p{L})/gu;function Gt(e){return e.replace(/[.*+?^${}()|[\]\\/-]/g,`\\$&`)}function Z(e,t=` `){let n=Gt(t);return e.trim().replace(Wt,`$1$3$5${t}$2$4$6`).replace(/[^\p{L}\p{N}]+/gu,t).replace(RegExp(`^(?:${n})+|(?:${n})+$`,`g`),``)}function Kt(e){return Z(e,` `).replace(/[^\p{L}\p{N}]+(.)/gu,(e,t)=>t.toUpperCase()).replace(/^./,e=>e.toLowerCase())}function qt(e,t){return e.endsWith(t)}var Q={"'":`'`,'"':`"`,"&":`&`,"<":`<`,">":`>`};function Jt(e){return e.replace(/[&<>"']/g,e=>Q[e])}function Yt(e){return Z(e,`-`).toLowerCase()}function Xt(e,t,n=` `){if(t<=e.length)return e;let r=t-e.length,i=Math.floor(r/2);return e.padStart(e.length+i,n).padEnd(t,n)}function Zt(e){return Z(e,` `).replace(/(?:^|\s)(\p{L}|\p{N})/gu,(e,t)=>t.toUpperCase()).replace(/\s+/g,``)}function Qt(e){return Z(e,`_`).toLowerCase()}function $t(e,t){return e.startsWith(t)}function $(e){let t=Z(e,` `);return t?t.split(` `).filter(Boolean):[]}function en(e){return $(e).map(e=>e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()).join(` `)}function tn(e,t=25,{completeWords:r=!1,ellipsis:i=`…`}={}){if(typeof e!=`string`)throw new n(`truncate: str must be a string`);if(typeof t!=`number`||!Number.isFinite(t)||t<0)throw new n(`truncate: limit must be a non-negative finite number`);if(e.length<=t)return e;let a=t;if(r){let n=e.substring(0,t).lastIndexOf(` `);n>0&&(a=n)}return`${e.substring(0,a).trim()}${i}`}var nn={"'":`'`,"&":`&`,">":`>`,"<":`<`,""":`"`};function rn(e){return e.replace(/&(amp|lt|gt|quot|#39);/g,e=>nn[e]??e)}return e.ArsenalError=t,e.ArsenalSerializationError=r,e.ArsenalValidationError=n,e.abortError=N,e.abs=lt,e.allOf=Ye,e.allocate=ut,e.anyOf=Xe,e.assert=Re,e.attempt=be,e.average=V,e.backoff=xe,e.camelCase=Kt,e.chunk=a,e.clamp=H,e.compact=o,e.compare=s,e.compareBy=c,e.constant=ze,e.contains=d,e.countBy=m,e.debounce=He,e.deepMerge=Pt,e.defaults=Ct,e.diff=wt,e.diffArrays=Tt,e.difference=_,e.draw=Bt,e.drawMany=Vt,e.drop=v,e.dropLast=y,e.endsWith=qt,e.escape=Jt,e.filterMap=b,e.filterValues=Et,e.first=x,e.flatten=S,e.flattenPaths=Ot,e.fuzzy=le,e.fuzzyFilter=j,e.fuzzyScore=M,e.gcd=U,e.getPath=At,e.groupBy=ee,e.hash=zt,e.identity=Ue,e.indexBy=te,e.intersection=ne,e.invert=jt,e.isAbortError=$e,e.isArray=et,e.isBoolean=tt,e.isDate=nt,e.isDefined=rt,e.isEmpty=R,e.isEqual=l,e.isError=it,e.isFail=ye,e.isFunction=at,e.isMatch=z,e.isNil=C,e.isNumber=w,e.isOk=ve,e.isPlainObject=L,e.isPrimitive=ot,e.isPromise=I,e.isRegex=st,e.isString=i,e.kebabCase=Yt,e.last=re,e.lcm=dt,e.lerp=ft,e.linspace=pt,e.mapKeys=Mt,e.mapValues=Nt,e.max=mt,e.median=ht,e.memo=Ie,e.min=gt,e.mod=_t,e.noneOf=Ze,e.normalize=vt,e.not=Qe,e.omit=It,e.once=We,e.pad=Xt,e.parallel=Se,e.parseJSON=Lt,e.partition=ie,e.pascalCase=Zt,e.percent=yt,e.pick=Rt,e.pipe=Ge,e.prune=q,e.queue=Ce,e.random=X,e.range=bt,e.replace=ae,e.retry=Te,e.rotate=oe,e.round=xt,e.runAll=Ke,e.shallowEqual=ct,e.shallowMerge=Ft,e.shuffle=Ht,e.similarity=E,e.sleep=P,e.snakeCase=Qt,e.sort=ue,e.standardDeviation=St,e.startsWith=$t,e.stash=Le,e.sum=B,e.take=de,e.takeLast=fe,e.tap=qe,e.throttle=Je,e.titleCase=en,e.toggle=pe,e.truncate=tn,e.unescape=rn,e.unflattenPaths=kt,e.union=me,e.uniq=he,e.unzip=ge,e.uuid=Ut,e.variance=W,e.waitFor=Ee,e.words=$,e.zip=_e,e})({});
|
|
1
|
+
var Arsenal=(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});var t=class e extends Error{constructor(e,t){super(e,t),this.name=new.target.name,Object.setPrototypeOf(this,new.target.prototype)}static is(t){return t instanceof e}},n=class extends t{};function r(e,t=2){if(!Array.isArray(e)&&typeof e!=`string`)throw TypeError(`chunk: argument must be an array or string`);if(!Number.isInteger(t)||t<1)throw RangeError(`chunk: size must be a positive integer`);return Array.from({length:Math.ceil(e.length/t)},(n,r)=>e.slice(r*t,r*t+t))}function i(e,t){let n=[];for(let r=0;r<e.length;r++){let i=t(e[r],r,e);i!==void 0&&n.push(i)}return n}var a=new Set([`__proto__`,`constructor`,`prototype`]);function o(e){return typeof e==`string`&&a.has(e)}function s(e,t){let n={};for(let r of e){let e=t(r),i=e==null?`_`:String(e);o(i)||(n[i]||(n[i]=[]),n[i].push(r))}return n}function c(e,t){let n={};for(let r of e){let e=String(t(r));o(e)||(n[e]=r)}return n}function l(e,t){let n=[],r=[];for(let i=0;i<e.length;i++)t(e[i],i,e)?n.push(e[i]):r.push(e[i]);return[n,r]}var u=(e,t)=>{if(e===t)return 0;if(e===void 0)return 1;if(t===void 0)return-1;if(e===null)return t===null?0:-1;if(t===null)return 1;if(typeof e==`string`&&typeof t==`string`)return e.localeCompare(t);if(typeof e==`number`&&typeof t==`number`)return e===t?0:e>t?1:-1;if(e instanceof Date&&t instanceof Date){let n=e.getTime(),r=t.getTime();return n===r?0:n>r?1:-1}throw TypeError(`compare: unsupported types "${typeof e}" and "${typeof t}". Supported: number, string, Date, null, undefined.`)},d=e=>{let t=Object.entries(e);return(e,n)=>{for(let[r,i]of t){let t=e[r],a=n[r],o=i===`desc`?-1:1,s=u(t,a);if(s!==0)return s*o}return 0}};function f(e,t,n=`asc`){if(!Array.isArray(e))throw TypeError(`sort: first argument must be an array`);if(typeof t==`function`){let r=n===`desc`?-1:1;return[...e].sort((e,n)=>u(t(e),t(n))*r)}return[...e].sort(d(t))}function p(e,t){let n=new Set,r=[];for(let i of e){let e=t(i);n.has(e)||(n.add(e),r.push(i))}return r}function m(e,t){return e.length<=1?[...e]:t?p(e,t):[...new Set(e)]}function h(e){return e.ok===!0}function g(e){return e.ok===!1}async function _(e){try{return{ok:!0,value:await e()}}catch(e){return{error:e,ok:!1}}}function v(e){return e?.reason??new DOMException(`Aborted`,`AbortError`)}async function y(e,t,n={}){let{abortOnError:r=!1,limit:i=1/0,signal:a}=n;if(i<1)throw RangeError(`parallel: limit must be at least 1, got ${i}`);if(a?.aborted)throw v(a);if(e.length===0)return[];let o=Array(e.length),s=0,c=r?new AbortController:void 0,l=async()=>{for(;;){if(a?.aborted)throw v(a);if(c?.signal.aborted||s>=e.length)return;let n=s++;try{o[n]=await t(e[n],n,e)}catch(e){throw c?.abort(),e}}},u=Math.min(i,e.length),d=Array.from({length:u},()=>l());return await Promise.all(d),o}async function b(e,t){return t?t.aborted?Promise.reject(v(t)):new Promise((n,r)=>{let i=setTimeout(()=>{t.removeEventListener(`abort`,a),n()},e),a=()=>{clearTimeout(i),t.removeEventListener(`abort`,a),r(v(t))};t.addEventListener(`abort`,a)}):new Promise(t=>setTimeout(t,e))}function x(e,t){let n=[e===void 0?void 0:AbortSignal.timeout(e),t].filter(e=>e!=null);if(n.length!==0)return n.length===1?n[0]:AbortSignal.any(n)}async function S(e,{delay:t=250,onError:n,shouldRetry:r,signal:i,timeout:a,times:o=3}={}){if(!Number.isInteger(o)||o<1)throw RangeError(`retry: times must be a positive integer, got ${o}`);for(let s=1;s<=o;s++){if(i?.aborted)throw v(i);let c=x(a,i);try{return await e(c)}catch(e){if(s===o||r&&!r(e,s-1))throw n?.(e),e;let a=typeof t==`function`?t(s-1):t;a>0&&await b(a,i)}}}function C(e,t=300,n={leading:!1,trailing:!0}){let r=n.leading??!1,i=n.trailing??!0,a,o,s,c=!1,l=()=>{a!==void 0&&(clearTimeout(a),a=void 0)},u=()=>{if(l(),c=!1,!o)return;let t=o;return o=void 0,s=e(...t),s};return Object.assign((...n)=>(o=n,r&&!c&&(c=!0,s=e(...n),o=void 0,!i)?(a=setTimeout(()=>{a=void 0,c=!1},t),s):r&&!i&&c?s:(l(),a=setTimeout(u,t),s)),{cancel:()=>{l(),o=void 0,c=!1},flush:()=>u(),pending:()=>a!==void 0})}var w=e=>{let t,n=!1,r=((...r)=>(n||=(t=e(...r),!0),t));return r.reset=()=>{t=void 0,n=!1},r};function T(...e){if(e.length===0)return e=>e;let[t,...n]=e;return(...e)=>n.reduce((e,t)=>Reflect.apply(t,void 0,[e]),Reflect.apply(t,void 0,e))}function E(e,t=700,n={leading:!0,trailing:!1}){let r=n.leading??!0,i=n.trailing??!1,a,o=-1/0,s,c,l=()=>{a!==void 0&&(clearTimeout(a),a=void 0)},u=e=>{a=setTimeout(p,e)},d=t=>{if(o=t,l(),!s)return;let n=s;return s=void 0,c=e(...n),c},f=e=>t-(e-o),p=()=>{let e=Date.now();s&&f(e)<=0?d(e):s?u(f(e)):l()};return Object.assign((...e)=>{let t=Date.now();o===-1/0&&!r&&(o=t),s=e;let n=f(t);return n<=0?d(t):(i&&!a&&u(n),c)},{cancel:()=>{l(),s=void 0,o=-1/0},flush:()=>{if(s)return d(Date.now())},pending:()=>s!==void 0||a!==void 0})}function D(...e){return t=>e.every(e=>e(t))}function O(...e){return t=>e.some(e=>e(t))}function k(...e){return t=>e.every(e=>!e(t))}function A(e){return t=>!e(t)}function j(e){return e!==void 0}function M(e,t){return N(e,t,new WeakMap)}function N(e,t,n){if(e===t)return!0;if(e==null||t==null||typeof e!=typeof t||typeof e!=`object`||typeof t!=`object`)return!1;if(n.has(e))return n.get(e)===t;if(n.set(e,t),Array.isArray(e)||Array.isArray(t))return!Array.isArray(e)||!Array.isArray(t)||e.length!==t.length?!1:e.every((e,r)=>N(e,t[r],n));if(e instanceof Date&&t instanceof Date)return e.getTime()===t.getTime();if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(let[r,i]of e)if(!t.has(r)||!N(i,t.get(r),n))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;let r=[...t];for(let i of e)if(typeof i==`string`||typeof i==`number`||typeof i==`boolean`||i==null){if(!t.has(i))return!1}else if(!r.some(e=>N(i,e,n)))return!1;return!0}if(e instanceof RegExp||t instanceof RegExp)return e instanceof RegExp&&t instanceof RegExp&&e.source===t.source&&e.flags===t.flags;if(e instanceof Map||t instanceof Map||e instanceof Set||t instanceof Set)return!1;let r=Object.keys(e),i=Object.keys(t);if(r.length!==i.length)return!1;for(let i of r)if(!Object.hasOwn(t,i)||!N(e[i],t[i],n))return!1;return!0}function P(e){return e==null}function F(e){if(typeof e!=`object`||!e)return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function I(e,t,n){return t!=null&&e<t?t:n!=null&&e>n?n:e}function L(e,t,n){let[r,i,a]=t===void 0?[0,e,1]:n===void 0?[e,t,1]:[e,t,n];if(!Number.isFinite(r)||!Number.isFinite(i)||!Number.isFinite(a))throw RangeError(`range: start, stop, and step must be finite numbers`);if(a===0)throw RangeError(`range: step cannot be 0`);if(r===i)return[];let o=(i-r)/a,s=Math.max(0,Number.isInteger(o)?o:Math.ceil(o+2**-52));if(s>1e7)throw RangeError(`range: exceeds maximum allowed size of 10,000,000`);return Array.from({length:s},(e,t)=>r+t*a)}function R(e){return e.replace(/\[(\d+)\]/g,`.$1`).replace(/^\.|\.$/g,``).split(`.`).filter(Boolean)}function z(e,t){let n=e;for(let e of R(t))if(a.has(e)||typeof n!=`object`||!n||(n=n[e],n===void 0))return;return n}function B(e,t){return z(e,t)}function V(e,t,n){let r=z(e,t);return r===void 0?n:r}function H(e,t){let n=z(e,t);if(n===void 0)throw TypeError(`Path does not exist: '${t}'`);return n}function U(e,t,r){if(e===void 0)return`undefined`;if(e===null)return`null`;if(typeof e==`bigint`)return`${e}n`;if(typeof e!=`object`)return JSON.stringify(e);if(r.has(e))return`[Circular]`;if(r.add(e),e instanceof Date)return`[Date:${Number.isNaN(e.getTime())?`Invalid`:e.toISOString()}]`;if(e instanceof RegExp)return`[RegExp:${e.source}/${e.flags}]`;if(e instanceof Set)return`[Set:${[...e].map(e=>U(e,t,r)).sort().join(`,`)}]`;if(e instanceof Map)return`[Map:${[...e.entries()].map(([e,n])=>[U(e,t,r),U(n,t,r)]).sort(([e,t],[n,r])=>e===n?t.localeCompare(r):e.localeCompare(n)).map(([e,t])=>`${e}=>${t}`).join(`,`)}]`;if(Array.isArray(e))return`[${e.map(e=>U(e,t,r)).join(`,`)}]`;let i=Object.getPrototypeOf(e);if(i!==Object.prototype&&i!==null){if(t?.onClassInstance===`throw`)throw new n(`hash: unsupported type ${e.constructor?.name??`unknown`}`);return String(e)}let a=e;return`{${Object.keys(a).filter(e=>a[e]!==void 0).sort().map(e=>`${JSON.stringify(e)}:${U(a[e],t,r)}`).join(`,`)}}`}function W(e,t){return U(e,t,new Set)}function G(e,t){let n=new Set(t),r={};for(let t of Object.keys(e))o(t)||n.has(t)||(r[t]=e[t]);return r}function K(e,t){let n={};for(let r of t)o(r)||Object.hasOwn(e,r)&&(n[r]=e[r]);return n}function q(){return crypto.randomUUID()}var J=/(\p{Ll})(\p{Lu}|\p{N})|(\p{Lu}|\p{N})(\p{Lu}\p{Ll})|(\p{N})(\p{L})/gu;function Y(e){return e.replace(/[.*+?^${}()|[\]\\/-]/g,`\\$&`)}function X(e,t=` `){let n=Y(t);return e.trim().replace(J,`$1$3$5${t}$2$4$6`).replace(/[^\p{L}\p{N}]+/gu,t).replace(RegExp(`^(?:${n})+|(?:${n})+$`,`g`),``)}function Z(e){return X(e,` `).replace(/[^\p{L}\p{N}]+(.)/gu,(e,t)=>t.toUpperCase()).replace(/^./,e=>e.toLowerCase())}return e.ArsenalError=t,e.ArsenalSerializationError=n,e.allOf=D,e.anyOf=O,e.attempt=_,e.camelCase=Z,e.chunk=r,e.clamp=I,e.debounce=C,e.filterMap=i,e.getPath=B,e.getPathOr=V,e.groupBy=s,e.hash=W,e.indexBy=c,e.isDefined=j,e.isEqual=M,e.isFail=g,e.isNil=P,e.isOk=h,e.isPlainObject=F,e.noneOf=k,e.not=A,e.omit=G,e.once=w,e.parallel=y,e.partition=l,e.pick=K,e.pipe=T,e.range=L,e.requirePath=H,e.retry=S,e.sleep=b,e.sort=f,e.throttle=E,e.uniq=m,e.uuid=q,e})({});
|
|
2
2
|
//# sourceMappingURL=arsenal.iife.js.map
|