cafe-utility 27.7.0 → 27.8.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/index.d.ts +2 -0
- package/index.js +12 -8
- package/package.json +1 -1
package/index.d.ts
CHANGED
|
@@ -148,6 +148,7 @@ declare function asUrl(value: any, options?: {
|
|
|
148
148
|
}): string;
|
|
149
149
|
declare function isNullable(typeFn: (value: any) => boolean, value: any): boolean;
|
|
150
150
|
declare function asNullable<T>(typeFn: (value: any) => T, value: any): T | null;
|
|
151
|
+
declare function asOptional<T>(typeFn: (value: any) => T, value: any): T | undefined;
|
|
151
152
|
declare function enforceObjectShape(value: Record<string, any>, shape: Record<string, (value: any) => boolean>): boolean;
|
|
152
153
|
declare function enforceArrayShape(value: any[], shape: Record<string, (value: any) => boolean>): boolean;
|
|
153
154
|
declare function represent(value: any, strategy?: 'json' | 'key-value', depth?: number): string;
|
|
@@ -914,6 +915,7 @@ export declare const Types: {
|
|
|
914
915
|
asNumericDictionary: typeof asNumericDictionary;
|
|
915
916
|
asUrl: typeof asUrl;
|
|
916
917
|
asNullable: typeof asNullable;
|
|
918
|
+
asOptional: typeof asOptional;
|
|
917
919
|
enforceObjectShape: typeof enforceObjectShape;
|
|
918
920
|
enforceArrayShape: typeof enforceArrayShape;
|
|
919
921
|
isPng: typeof isPng;
|
package/index.js
CHANGED
|
@@ -547,6 +547,9 @@ function isNullable(n, e) {
|
|
|
547
547
|
function asNullable(n, e) {
|
|
548
548
|
return e === null || isUndefined(e) ? null : n(e)
|
|
549
549
|
}
|
|
550
|
+
function asOptional(n, e) {
|
|
551
|
+
if (e != null) return n(e)
|
|
552
|
+
}
|
|
550
553
|
function enforceObjectShape(n, e) {
|
|
551
554
|
for (const [t, r] of Object.entries(e)) if (!r(n[t])) throw TypeError(`${t} in value does not exist or match shape`)
|
|
552
555
|
for (const t of Object.keys(n)) if (!e[t]) throw TypeError(`${t} exists in value but not in shape`)
|
|
@@ -2296,8 +2299,8 @@ function keccakPermutate(n) {
|
|
|
2296
2299
|
U = (n[13] << 12) | (n[12] >>> 20),
|
|
2297
2300
|
L = (n[12] << 12) | (n[13] >>> 20),
|
|
2298
2301
|
N = (n[14] << 6) | (n[15] >>> 26),
|
|
2299
|
-
|
|
2300
|
-
|
|
2302
|
+
j = (n[15] << 6) | (n[14] >>> 26),
|
|
2303
|
+
v = (n[17] << 23) | (n[16] >>> 9),
|
|
2301
2304
|
z = (n[16] << 23) | (n[17] >>> 9),
|
|
2302
2305
|
F = (n[18] << 20) | (n[19] >>> 12),
|
|
2303
2306
|
q = (n[19] << 20) | (n[18] >>> 12),
|
|
@@ -2352,15 +2355,15 @@ function keccakPermutate(n) {
|
|
|
2352
2355
|
(n[18] = dn ^ (~R & F)),
|
|
2353
2356
|
(n[19] = mn ^ (~C & q)),
|
|
2354
2357
|
(n[20] = O ^ (~N & _)),
|
|
2355
|
-
(n[21] = k ^ (~
|
|
2358
|
+
(n[21] = k ^ (~j & Q)),
|
|
2356
2359
|
(n[22] = N ^ (~_ & sn)),
|
|
2357
|
-
(n[23] =
|
|
2360
|
+
(n[23] = j ^ (~Q & fn)),
|
|
2358
2361
|
(n[24] = _ ^ (~sn & ln)),
|
|
2359
2362
|
(n[25] = Q ^ (~fn & an)),
|
|
2360
2363
|
(n[26] = sn ^ (~ln & O)),
|
|
2361
2364
|
(n[27] = fn ^ (~an & k)),
|
|
2362
2365
|
(n[28] = ln ^ (~O & N)),
|
|
2363
|
-
(n[29] = an ^ (~k &
|
|
2366
|
+
(n[29] = an ^ (~k & j)),
|
|
2364
2367
|
(n[30] = D ^ (~B & V)),
|
|
2365
2368
|
(n[31] = I ^ (~P & J)),
|
|
2366
2369
|
(n[32] = B ^ (~V & rn)),
|
|
@@ -2371,15 +2374,15 @@ function keccakPermutate(n) {
|
|
|
2371
2374
|
(n[37] = on ^ (~wn & I)),
|
|
2372
2375
|
(n[38] = gn ^ (~D & B)),
|
|
2373
2376
|
(n[39] = wn ^ (~I & P)),
|
|
2374
|
-
(n[40] = T ^ (~
|
|
2377
|
+
(n[40] = T ^ (~v & G)),
|
|
2375
2378
|
(n[41] = S ^ (~z & Y)),
|
|
2376
|
-
(n[42] =
|
|
2379
|
+
(n[42] = v ^ (~G & X)),
|
|
2377
2380
|
(n[43] = z ^ (~Y & nn)),
|
|
2378
2381
|
(n[44] = G ^ (~X & hn)),
|
|
2379
2382
|
(n[45] = Y ^ (~nn & pn)),
|
|
2380
2383
|
(n[46] = X ^ (~hn & T)),
|
|
2381
2384
|
(n[47] = nn ^ (~pn & S)),
|
|
2382
|
-
(n[48] = hn ^ (~T &
|
|
2385
|
+
(n[48] = hn ^ (~T & v)),
|
|
2383
2386
|
(n[49] = pn ^ (~S & z)),
|
|
2384
2387
|
(n[0] ^= IOTA_CONSTANTS[e * 2]),
|
|
2385
2388
|
(n[1] ^= IOTA_CONSTANTS[e * 2 + 1])
|
|
@@ -3286,6 +3289,7 @@ class AsyncQueue {
|
|
|
3286
3289
|
asNumericDictionary,
|
|
3287
3290
|
asUrl,
|
|
3288
3291
|
asNullable,
|
|
3292
|
+
asOptional,
|
|
3289
3293
|
enforceObjectShape,
|
|
3290
3294
|
enforceArrayShape,
|
|
3291
3295
|
isPng,
|