cafe-utility 36.1.8 → 36.2.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.
Files changed (3) hide show
  1. package/index.d.ts +2 -0
  2. package/index.js +123 -83
  3. package/package.json +1 -1
package/index.d.ts CHANGED
@@ -614,6 +614,7 @@ declare function multicall(functions: (() => void)[]): () => void
614
614
  declare function maxBy<T>(array: T[], fn: (item: T) => number): T
615
615
  declare function minBy<T>(array: T[], fn: (item: T) => number): T
616
616
  declare function allArrayIndexOf<T>(array: T[], predicate: (item: T) => boolean): number[]
617
+ declare function pathfind(array: boolean[][], fromX: number, fromY: number, toX: number, toY: number, maxSteps: number): [number, number][] | null
617
618
  declare function findInstance<T, K extends T>(array: T[], type: Newable<K>): Optional<K>
618
619
  declare function filterInstances<T, K extends T>(array: T[], type: Newable<K>): K[]
619
620
  declare function interleave<T, K>(arrayA: T[], arrayB: K[]): (T | K)[]
@@ -990,6 +991,7 @@ export declare const Arrays: {
990
991
  maxBy: typeof maxBy
991
992
  minBy: typeof minBy
992
993
  allIndexOf: typeof allArrayIndexOf
994
+ pathfind: typeof pathfind
993
995
  }
994
996
  export declare const System: {
995
997
  sleepMillis: typeof sleepMillis
package/index.js CHANGED
@@ -1974,6 +1974,46 @@ function allArrayIndexOf(n, t) {
1974
1974
  e
1975
1975
  )
1976
1976
  }
1977
+ const DIRECTIONS = [
1978
+ [1, 0],
1979
+ [-1, 0],
1980
+ [0, 1],
1981
+ [0, -1]
1982
+ ]
1983
+ function pathfind(n, t, e, r, i, o) {
1984
+ const s = n.length
1985
+ if (s === 0) return null
1986
+ const c = n[0].length
1987
+ if (t < 0 || t >= c || e < 0 || e >= s || r < 0 || r >= c || i < 0 || i >= s || n[e][t] || n[i][r]) return null
1988
+ if (t === r && e === i) return [[t, e]]
1989
+ const u = c * s,
1990
+ f = new Uint8Array(u),
1991
+ l = new Int32Array(u)
1992
+ l.fill(-1)
1993
+ const a = [[t, e, 0]]
1994
+ let h = 0
1995
+ const m = e * c + t
1996
+ for (f[m] = 1; h < a.length; ) {
1997
+ const [d, p, y] = a[h++],
1998
+ $ = p * c + d
1999
+ if (d === r && p === i) {
2000
+ const w = []
2001
+ for (let b = $; b !== -1; b = l[b]) w.push([b % c, Math.floor(b / c)])
2002
+ return w.reverse(), w
2003
+ }
2004
+ if (y >= o) continue
2005
+ const g = y + 1
2006
+ for (const [w, b] of DIRECTIONS) {
2007
+ const E = d + w,
2008
+ x = p + b
2009
+ if (E >= 0 && E < c && x >= 0 && x < s && !n[x][E]) {
2010
+ const A = x * c + E
2011
+ f[A] || ((f[A] = 1), (l[A] = $), a.push([E, x, g]))
2012
+ }
2013
+ }
2014
+ }
2015
+ return null
2016
+ }
1977
2017
  function findInstance(n, t) {
1978
2018
  const e = n.find(r => r instanceof t)
1979
2019
  return Optional.of(e)
@@ -2128,77 +2168,77 @@ function keccakPermutate(n) {
2128
2168
  l = n[8] ^ n[18] ^ n[28] ^ n[38] ^ n[48],
2129
2169
  a = n[9] ^ n[19] ^ n[29] ^ n[39] ^ n[49],
2130
2170
  h = (i << 1) | (o >>> 31),
2131
- p = (o << 1) | (i >>> 31),
2171
+ m = (o << 1) | (i >>> 31),
2132
2172
  d = l ^ h,
2133
- m = a ^ p,
2134
- w = (s << 1) | (c >>> 31),
2135
- x = (c << 1) | (s >>> 31),
2136
- g = e ^ w,
2137
- y = r ^ x,
2138
- En = (u << 1) | (f >>> 31),
2139
- Sn = (f << 1) | (u >>> 31),
2140
- b = i ^ En,
2141
- A = o ^ Sn,
2173
+ p = a ^ m,
2174
+ y = (s << 1) | (c >>> 31),
2175
+ $ = (c << 1) | (s >>> 31),
2176
+ g = e ^ y,
2177
+ w = r ^ $,
2178
+ b = (u << 1) | (f >>> 31),
2179
+ E = (f << 1) | (u >>> 31),
2180
+ x = i ^ b,
2181
+ A = o ^ E,
2142
2182
  Mn = (l << 1) | (a >>> 31),
2143
2183
  kn = (a << 1) | (l >>> 31),
2144
- $ = s ^ Mn,
2145
- E = c ^ kn,
2184
+ S = s ^ Mn,
2185
+ M = c ^ kn,
2146
2186
  On = (e << 1) | (r >>> 31),
2147
2187
  Tn = (r << 1) | (e >>> 31),
2148
- S = u ^ On,
2149
- M = f ^ Tn
2150
- ;(n[0] ^= d), (n[1] ^= m), (n[2] ^= g), (n[3] ^= y), (n[4] ^= b), (n[5] ^= A), (n[6] ^= $), (n[7] ^= E), (n[8] ^= S), (n[9] ^= M), (n[10] ^= d), (n[11] ^= m), (n[12] ^= g), (n[13] ^= y), (n[14] ^= b), (n[15] ^= A), (n[16] ^= $), (n[17] ^= E), (n[18] ^= S), (n[19] ^= M), (n[20] ^= d), (n[21] ^= m), (n[22] ^= g), (n[23] ^= y), (n[24] ^= b), (n[25] ^= A), (n[26] ^= $), (n[27] ^= E), (n[28] ^= S), (n[29] ^= M), (n[30] ^= d), (n[31] ^= m), (n[32] ^= g), (n[33] ^= y), (n[34] ^= b), (n[35] ^= A), (n[36] ^= $), (n[37] ^= E), (n[38] ^= S), (n[39] ^= M), (n[40] ^= d), (n[41] ^= m), (n[42] ^= g), (n[43] ^= y), (n[44] ^= b), (n[45] ^= A), (n[46] ^= $), (n[47] ^= E), (n[48] ^= S), (n[49] ^= M)
2151
- const k = n[0],
2152
- O = n[1],
2153
- T = (n[2] << 1) | (n[3] >>> 31),
2154
- C = (n[3] << 1) | (n[2] >>> 31),
2155
- R = (n[5] << 30) | (n[4] >>> 2),
2156
- I = (n[4] << 30) | (n[5] >>> 2),
2157
- D = (n[6] << 28) | (n[7] >>> 4),
2158
- P = (n[7] << 28) | (n[6] >>> 4),
2159
- B = (n[8] << 27) | (n[9] >>> 5),
2160
- U = (n[9] << 27) | (n[8] >>> 5),
2161
- j = (n[11] << 4) | (n[10] >>> 28),
2162
- L = (n[10] << 4) | (n[11] >>> 28),
2163
- N = (n[13] << 12) | (n[12] >>> 20),
2164
- F = (n[12] << 12) | (n[13] >>> 20),
2165
- v = (n[14] << 6) | (n[15] >>> 26),
2166
- z = (n[15] << 6) | (n[14] >>> 26),
2167
- W = (n[17] << 23) | (n[16] >>> 9),
2168
- q = (n[16] << 23) | (n[17] >>> 9),
2169
- H = (n[18] << 20) | (n[19] >>> 12),
2170
- V = (n[19] << 20) | (n[18] >>> 12),
2171
- J = (n[20] << 3) | (n[21] >>> 29),
2172
- K = (n[21] << 3) | (n[20] >>> 29),
2173
- Z = (n[22] << 10) | (n[23] >>> 22),
2174
- Q = (n[23] << 10) | (n[22] >>> 22),
2175
- G = (n[25] << 11) | (n[24] >>> 21),
2176
- _ = (n[24] << 11) | (n[25] >>> 21),
2177
- Y = (n[26] << 25) | (n[27] >>> 7),
2178
- X = (n[27] << 25) | (n[26] >>> 7),
2179
- nn = (n[29] << 7) | (n[28] >>> 25),
2180
- tn = (n[28] << 7) | (n[29] >>> 25),
2181
- en = (n[31] << 9) | (n[30] >>> 23),
2182
- rn = (n[30] << 9) | (n[31] >>> 23),
2183
- on = (n[33] << 13) | (n[32] >>> 19),
2184
- sn = (n[32] << 13) | (n[33] >>> 19),
2185
- cn = (n[34] << 15) | (n[35] >>> 17),
2186
- un = (n[35] << 15) | (n[34] >>> 17),
2187
- fn = (n[36] << 21) | (n[37] >>> 11),
2188
- ln = (n[37] << 21) | (n[36] >>> 11),
2189
- an = (n[38] << 8) | (n[39] >>> 24),
2190
- hn = (n[39] << 8) | (n[38] >>> 24),
2191
- dn = (n[40] << 18) | (n[41] >>> 14),
2192
- pn = (n[41] << 18) | (n[40] >>> 14),
2193
- mn = (n[42] << 2) | (n[43] >>> 30),
2194
- gn = (n[43] << 2) | (n[42] >>> 30),
2195
- wn = (n[45] << 29) | (n[44] >>> 3),
2196
- xn = (n[44] << 29) | (n[45] >>> 3),
2197
- yn = (n[47] << 24) | (n[46] >>> 8),
2198
- bn = (n[46] << 24) | (n[47] >>> 8),
2199
- An = (n[48] << 14) | (n[49] >>> 18),
2200
- $n = (n[49] << 14) | (n[48] >>> 18)
2201
- ;(n[0] = k ^ (~N & G)), (n[1] = O ^ (~F & _)), (n[2] = N ^ (~G & fn)), (n[3] = F ^ (~_ & ln)), (n[4] = G ^ (~fn & An)), (n[5] = _ ^ (~ln & $n)), (n[6] = fn ^ (~An & k)), (n[7] = ln ^ (~$n & O)), (n[8] = An ^ (~k & N)), (n[9] = $n ^ (~O & F)), (n[10] = D ^ (~H & J)), (n[11] = P ^ (~V & K)), (n[12] = H ^ (~J & on)), (n[13] = V ^ (~K & sn)), (n[14] = J ^ (~on & wn)), (n[15] = K ^ (~sn & xn)), (n[16] = on ^ (~wn & D)), (n[17] = sn ^ (~xn & P)), (n[18] = wn ^ (~D & H)), (n[19] = xn ^ (~P & V)), (n[20] = T ^ (~v & Y)), (n[21] = C ^ (~z & X)), (n[22] = v ^ (~Y & an)), (n[23] = z ^ (~X & hn)), (n[24] = Y ^ (~an & dn)), (n[25] = X ^ (~hn & pn)), (n[26] = an ^ (~dn & T)), (n[27] = hn ^ (~pn & C)), (n[28] = dn ^ (~T & v)), (n[29] = pn ^ (~C & z)), (n[30] = B ^ (~j & Z)), (n[31] = U ^ (~L & Q)), (n[32] = j ^ (~Z & cn)), (n[33] = L ^ (~Q & un)), (n[34] = Z ^ (~cn & yn)), (n[35] = Q ^ (~un & bn)), (n[36] = cn ^ (~yn & B)), (n[37] = un ^ (~bn & U)), (n[38] = yn ^ (~B & j)), (n[39] = bn ^ (~U & L)), (n[40] = R ^ (~W & nn)), (n[41] = I ^ (~q & tn)), (n[42] = W ^ (~nn & en)), (n[43] = q ^ (~tn & rn)), (n[44] = nn ^ (~en & mn)), (n[45] = tn ^ (~rn & gn)), (n[46] = en ^ (~mn & R)), (n[47] = rn ^ (~gn & I)), (n[48] = mn ^ (~R & W)), (n[49] = gn ^ (~I & q)), (n[0] ^= IOTA_CONSTANTS[t * 2]), (n[1] ^= IOTA_CONSTANTS[t * 2 + 1])
2188
+ k = u ^ On,
2189
+ O = f ^ Tn
2190
+ ;(n[0] ^= d), (n[1] ^= p), (n[2] ^= g), (n[3] ^= w), (n[4] ^= x), (n[5] ^= A), (n[6] ^= S), (n[7] ^= M), (n[8] ^= k), (n[9] ^= O), (n[10] ^= d), (n[11] ^= p), (n[12] ^= g), (n[13] ^= w), (n[14] ^= x), (n[15] ^= A), (n[16] ^= S), (n[17] ^= M), (n[18] ^= k), (n[19] ^= O), (n[20] ^= d), (n[21] ^= p), (n[22] ^= g), (n[23] ^= w), (n[24] ^= x), (n[25] ^= A), (n[26] ^= S), (n[27] ^= M), (n[28] ^= k), (n[29] ^= O), (n[30] ^= d), (n[31] ^= p), (n[32] ^= g), (n[33] ^= w), (n[34] ^= x), (n[35] ^= A), (n[36] ^= S), (n[37] ^= M), (n[38] ^= k), (n[39] ^= O), (n[40] ^= d), (n[41] ^= p), (n[42] ^= g), (n[43] ^= w), (n[44] ^= x), (n[45] ^= A), (n[46] ^= S), (n[47] ^= M), (n[48] ^= k), (n[49] ^= O)
2191
+ const T = n[0],
2192
+ C = n[1],
2193
+ I = (n[2] << 1) | (n[3] >>> 31),
2194
+ R = (n[3] << 1) | (n[2] >>> 31),
2195
+ D = (n[5] << 30) | (n[4] >>> 2),
2196
+ P = (n[4] << 30) | (n[5] >>> 2),
2197
+ B = (n[6] << 28) | (n[7] >>> 4),
2198
+ U = (n[7] << 28) | (n[6] >>> 4),
2199
+ N = (n[8] << 27) | (n[9] >>> 5),
2200
+ j = (n[9] << 27) | (n[8] >>> 5),
2201
+ L = (n[11] << 4) | (n[10] >>> 28),
2202
+ v = (n[10] << 4) | (n[11] >>> 28),
2203
+ F = (n[13] << 12) | (n[12] >>> 20),
2204
+ z = (n[12] << 12) | (n[13] >>> 20),
2205
+ W = (n[14] << 6) | (n[15] >>> 26),
2206
+ q = (n[15] << 6) | (n[14] >>> 26),
2207
+ H = (n[17] << 23) | (n[16] >>> 9),
2208
+ V = (n[16] << 23) | (n[17] >>> 9),
2209
+ J = (n[18] << 20) | (n[19] >>> 12),
2210
+ K = (n[19] << 20) | (n[18] >>> 12),
2211
+ Z = (n[20] << 3) | (n[21] >>> 29),
2212
+ Q = (n[21] << 3) | (n[20] >>> 29),
2213
+ G = (n[22] << 10) | (n[23] >>> 22),
2214
+ _ = (n[23] << 10) | (n[22] >>> 22),
2215
+ Y = (n[25] << 11) | (n[24] >>> 21),
2216
+ X = (n[24] << 11) | (n[25] >>> 21),
2217
+ nn = (n[26] << 25) | (n[27] >>> 7),
2218
+ tn = (n[27] << 25) | (n[26] >>> 7),
2219
+ en = (n[29] << 7) | (n[28] >>> 25),
2220
+ rn = (n[28] << 7) | (n[29] >>> 25),
2221
+ on = (n[31] << 9) | (n[30] >>> 23),
2222
+ sn = (n[30] << 9) | (n[31] >>> 23),
2223
+ cn = (n[33] << 13) | (n[32] >>> 19),
2224
+ un = (n[32] << 13) | (n[33] >>> 19),
2225
+ fn = (n[34] << 15) | (n[35] >>> 17),
2226
+ ln = (n[35] << 15) | (n[34] >>> 17),
2227
+ an = (n[36] << 21) | (n[37] >>> 11),
2228
+ hn = (n[37] << 21) | (n[36] >>> 11),
2229
+ dn = (n[38] << 8) | (n[39] >>> 24),
2230
+ pn = (n[39] << 8) | (n[38] >>> 24),
2231
+ mn = (n[40] << 18) | (n[41] >>> 14),
2232
+ gn = (n[41] << 18) | (n[40] >>> 14),
2233
+ wn = (n[42] << 2) | (n[43] >>> 30),
2234
+ xn = (n[43] << 2) | (n[42] >>> 30),
2235
+ yn = (n[45] << 29) | (n[44] >>> 3),
2236
+ bn = (n[44] << 29) | (n[45] >>> 3),
2237
+ An = (n[47] << 24) | (n[46] >>> 8),
2238
+ $n = (n[46] << 24) | (n[47] >>> 8),
2239
+ En = (n[48] << 14) | (n[49] >>> 18),
2240
+ Sn = (n[49] << 14) | (n[48] >>> 18)
2241
+ ;(n[0] = T ^ (~F & Y)), (n[1] = C ^ (~z & X)), (n[2] = F ^ (~Y & an)), (n[3] = z ^ (~X & hn)), (n[4] = Y ^ (~an & En)), (n[5] = X ^ (~hn & Sn)), (n[6] = an ^ (~En & T)), (n[7] = hn ^ (~Sn & C)), (n[8] = En ^ (~T & F)), (n[9] = Sn ^ (~C & z)), (n[10] = B ^ (~J & Z)), (n[11] = U ^ (~K & Q)), (n[12] = J ^ (~Z & cn)), (n[13] = K ^ (~Q & un)), (n[14] = Z ^ (~cn & yn)), (n[15] = Q ^ (~un & bn)), (n[16] = cn ^ (~yn & B)), (n[17] = un ^ (~bn & U)), (n[18] = yn ^ (~B & J)), (n[19] = bn ^ (~U & K)), (n[20] = I ^ (~W & nn)), (n[21] = R ^ (~q & tn)), (n[22] = W ^ (~nn & dn)), (n[23] = q ^ (~tn & pn)), (n[24] = nn ^ (~dn & mn)), (n[25] = tn ^ (~pn & gn)), (n[26] = dn ^ (~mn & I)), (n[27] = pn ^ (~gn & R)), (n[28] = mn ^ (~I & W)), (n[29] = gn ^ (~R & q)), (n[30] = N ^ (~L & G)), (n[31] = j ^ (~v & _)), (n[32] = L ^ (~G & fn)), (n[33] = v ^ (~_ & ln)), (n[34] = G ^ (~fn & An)), (n[35] = _ ^ (~ln & $n)), (n[36] = fn ^ (~An & N)), (n[37] = ln ^ (~$n & j)), (n[38] = An ^ (~N & L)), (n[39] = $n ^ (~j & v)), (n[40] = D ^ (~H & en)), (n[41] = P ^ (~V & rn)), (n[42] = H ^ (~en & on)), (n[43] = V ^ (~rn & sn)), (n[44] = en ^ (~on & wn)), (n[45] = rn ^ (~sn & xn)), (n[46] = on ^ (~wn & D)), (n[47] = sn ^ (~xn & P)), (n[48] = wn ^ (~D & H)), (n[49] = xn ^ (~P & V)), (n[0] ^= IOTA_CONSTANTS[t * 2]), (n[1] ^= IOTA_CONSTANTS[t * 2 + 1])
2202
2242
  }
2203
2243
  }
2204
2244
  function bytesToNumbers(n) {
@@ -2449,11 +2489,11 @@ function jacobianAddMixed(n, t, e, r, i) {
2449
2489
  if (f === 0n) return l === 0n ? jacobianDouble(n, t, e) : [0n, 0n, 0n]
2450
2490
  const a = (f * f) % o,
2451
2491
  h = (f * a) % o,
2452
- p = (n * a) % o,
2453
- d = mod(l * l - h - 2n * p, o),
2454
- m = mod(l * (p - d) - t * h, o),
2455
- w = (f * e) % o
2456
- return [d, m, w]
2492
+ m = (n * a) % o,
2493
+ d = mod(l * l - h - 2n * m, o),
2494
+ p = mod(l * (m - d) - t * h, o),
2495
+ y = (f * e) % o
2496
+ return [d, p, y]
2457
2497
  }
2458
2498
  function jacobianToAffine(n, t, e) {
2459
2499
  if (e === 0n) return [0n, 0n]
@@ -2526,21 +2566,21 @@ function shamirWNAF(n, t, e, r, i, o) {
2526
2566
  l = Math.max(s.length, c.length)
2527
2567
  let a = 0n,
2528
2568
  h = 0n,
2529
- p = 0n
2569
+ m = 0n
2530
2570
  for (let d = l - 1; d >= 0; d--) {
2531
- ;[a, h, p] = jacobianDouble(a, h, p)
2532
- const m = d < s.length ? s[d] : 0
2533
- if (m !== 0) {
2534
- const [x, g] = u[(Math.abs(m) - 1) >> 1]
2535
- ;[a, h, p] = jacobianAddMixed(a, h, p, x, m > 0 ? g : SECP256K1_P - g)
2571
+ ;[a, h, m] = jacobianDouble(a, h, m)
2572
+ const p = d < s.length ? s[d] : 0
2573
+ if (p !== 0) {
2574
+ const [$, g] = u[(Math.abs(p) - 1) >> 1]
2575
+ ;[a, h, m] = jacobianAddMixed(a, h, m, $, p > 0 ? g : SECP256K1_P - g)
2536
2576
  }
2537
- const w = d < c.length ? c[d] : 0
2538
- if (w !== 0) {
2539
- const [x, g] = f[(Math.abs(w) - 1) >> 1]
2540
- ;[a, h, p] = jacobianAddMixed(a, h, p, x, w > 0 ? g : SECP256K1_P - g)
2577
+ const y = d < c.length ? c[d] : 0
2578
+ if (y !== 0) {
2579
+ const [$, g] = f[(Math.abs(y) - 1) >> 1]
2580
+ ;[a, h, m] = jacobianAddMixed(a, h, m, $, y > 0 ? g : SECP256K1_P - g)
2541
2581
  }
2542
2582
  }
2543
- return jacobianToAffine(a, h, p)
2583
+ return jacobianToAffine(a, h, m)
2544
2584
  }
2545
2585
  function doubleAndAdd(n, t, e) {
2546
2586
  const [r, i, o, s] = glvDecompose(e),
@@ -3129,7 +3169,7 @@ class Lock {
3129
3169
  (exports.Binary = { hexToUint8Array, uint8ArrayToHex, binaryToUint8Array, uint8ArrayToBinary, base64ToUint8Array, uint8ArrayToBase64, base32ToUint8Array, uint8ArrayToBase32, log2Reduce, partition, concatBytes, numberToUint8, uint8ToNumber, numberToUint16, uint16ToNumber, numberToUint32, uint32ToNumber, numberToUint64, uint64ToNumber, numberToUint256, uint256ToNumber, sliceBytes, keccak256, sha3_256, proximity, commonPrefix, setBit, getBit, indexOf: binaryIndexOf, equals: binaryEquals, padStart: binaryPadStart, padStartToMultiple: binaryPadStartToMultiple, padEnd: binaryPadEnd, padEndToMultiple: binaryPadEndToMultiple, xorCypher, isUtf8 }),
3130
3170
  (exports.Elliptic = { privateKeyToPublicKey, compressPublicKey, publicKeyFromCompressed, publicKeyToAddress, signMessage, signHash, verifySignature, recoverPublicKey, checksumEncode }),
3131
3171
  (exports.Random = { intBetween, floatBetween, chance, signed: signedRandom, makeSeededRng, point: randomPoint, procs }),
3132
- (exports.Arrays = { countUnique, makeUnique, splitBySize, splitByCount, index: indexArray, indexCollection: indexArrayToCollection, onlyOrThrow, onlyOrNull, firstOrThrow, firstOrNull, shuffle, initialize: initializeArray, initialize2D: initialize2DArray, rotate2D: rotate2DArray, containsShape, glue, pluck, pick, pickMany, pickManyUnique, pickWeighted, pickRandomIndices, pickGuaranteed, last, pipe, makePipe, sortWeighted, pushAll, unshiftAll, filterAndRemove, merge: mergeArrays, empty, pushToBucket, unshiftAndLimit, atRolling, group, createOscillator, organiseWithLimits, tickPlaybook, getArgument, getBooleanArgument, getNumberArgument, requireStringArgument, requireNumberArgument, bringToFront, bringToFrontInPlace, findInstance, filterInstances, interleave, toggle, createHierarchy, multicall, maxBy, minBy, allIndexOf: allArrayIndexOf }),
3172
+ (exports.Arrays = { countUnique, makeUnique, splitBySize, splitByCount, index: indexArray, indexCollection: indexArrayToCollection, onlyOrThrow, onlyOrNull, firstOrThrow, firstOrNull, shuffle, initialize: initializeArray, initialize2D: initialize2DArray, rotate2D: rotate2DArray, containsShape, glue, pluck, pick, pickMany, pickManyUnique, pickWeighted, pickRandomIndices, pickGuaranteed, last, pipe, makePipe, sortWeighted, pushAll, unshiftAll, filterAndRemove, merge: mergeArrays, empty, pushToBucket, unshiftAndLimit, atRolling, group, createOscillator, organiseWithLimits, tickPlaybook, getArgument, getBooleanArgument, getNumberArgument, requireStringArgument, requireNumberArgument, bringToFront, bringToFrontInPlace, findInstance, filterInstances, interleave, toggle, createHierarchy, multicall, maxBy, minBy, allIndexOf: allArrayIndexOf, pathfind }),
3133
3173
  (exports.System = { sleepMillis, forever, scheduleMany, waitFor, expandError, runAndSetInterval, whereAmI, withRetries }),
3134
3174
  (exports.Numbers = { make: makeNumber, sum, average, median, getDistanceFromMidpoint, clamp, range, interpolate, createSequence, increment, decrement, format: formatNumber, fromDecimals, makeStorage, asMegabytes, convertBytes, hexToRgb, rgbToHex, haversineDistanceToMeters, roundToNearest, formatDistance, triangularNumber, searchFloat, binomialSample, toSignificantDigits }),
3135
3175
  (exports.Promises = { raceFulfilled, invert: invertPromise, runInParallelBatches }),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cafe-utility",
3
- "version": "36.1.8",
3
+ "version": "36.2.0",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "exports": {