cafe-utility 27.15.0 → 27.16.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 +8 -0
- package/index.js +64 -33
- package/module.mjs +1 -0
- package/package.json +1 -1
package/index.d.ts
CHANGED
|
@@ -653,6 +653,14 @@ export declare class AsyncQueue {
|
|
|
653
653
|
enqueue(fn: () => Promise<void>): Promise<void>;
|
|
654
654
|
drain(): Promise<void>;
|
|
655
655
|
}
|
|
656
|
+
type RouterFn<Q, S> = (request: Q, response: S, context: Map<string, string>) => Promise<void>;
|
|
657
|
+
export declare class TrieRouter<Q, S> {
|
|
658
|
+
private forks;
|
|
659
|
+
private handler?;
|
|
660
|
+
private variableName?;
|
|
661
|
+
insert(pathSegments: string[], handler: RouterFn<Q, S>): void;
|
|
662
|
+
handle(pathSegments: string[], request: Q, response: S, context: Map<string, string>): Promise<boolean>;
|
|
663
|
+
}
|
|
656
664
|
export declare const Binary: {
|
|
657
665
|
hexToUint8Array: typeof hexToUint8Array;
|
|
658
666
|
uint8ArrayToHex: typeof uint8ArrayToHex;
|
package/index.js
CHANGED
|
@@ -15,6 +15,7 @@ Object.defineProperty(exports, '__esModule', { value: !0 }),
|
|
|
15
15
|
exports.Random =
|
|
16
16
|
exports.Elliptic =
|
|
17
17
|
exports.Binary =
|
|
18
|
+
exports.TrieRouter =
|
|
18
19
|
exports.AsyncQueue =
|
|
19
20
|
exports.PubSubChannel =
|
|
20
21
|
exports.FixedPointNumber =
|
|
@@ -2265,12 +2266,12 @@ function keccakPermutate(n) {
|
|
|
2265
2266
|
m = t ^ $n,
|
|
2266
2267
|
g = r ^ An,
|
|
2267
2268
|
En = (c << 1) | (f >>> 31),
|
|
2268
|
-
|
|
2269
|
+
Mn = (f << 1) | (c >>> 31),
|
|
2269
2270
|
w = o ^ En,
|
|
2270
|
-
y = i ^
|
|
2271
|
-
|
|
2271
|
+
y = i ^ Mn,
|
|
2272
|
+
On = (l << 1) | (a >>> 31),
|
|
2272
2273
|
kn = (a << 1) | (l >>> 31),
|
|
2273
|
-
x = u ^
|
|
2274
|
+
x = u ^ On,
|
|
2274
2275
|
b = s ^ kn,
|
|
2275
2276
|
Tn = (t << 1) | (r >>> 31),
|
|
2276
2277
|
Sn = (r << 1) | (t >>> 31),
|
|
@@ -2327,8 +2328,8 @@ function keccakPermutate(n) {
|
|
|
2327
2328
|
(n[48] ^= $),
|
|
2328
2329
|
(n[49] ^= A)
|
|
2329
2330
|
const E = n[0],
|
|
2330
|
-
|
|
2331
|
-
|
|
2331
|
+
M = n[1],
|
|
2332
|
+
O = (n[2] << 1) | (n[3] >>> 31),
|
|
2332
2333
|
k = (n[3] << 1) | (n[2] >>> 31),
|
|
2333
2334
|
T = (n[5] << 30) | (n[4] >>> 2),
|
|
2334
2335
|
S = (n[4] << 30) | (n[5] >>> 2),
|
|
@@ -2341,20 +2342,20 @@ function keccakPermutate(n) {
|
|
|
2341
2342
|
v = (n[13] << 12) | (n[12] >>> 20),
|
|
2342
2343
|
U = (n[12] << 12) | (n[13] >>> 20),
|
|
2343
2344
|
L = (n[14] << 6) | (n[15] >>> 26),
|
|
2344
|
-
|
|
2345
|
-
|
|
2345
|
+
N = (n[15] << 6) | (n[14] >>> 26),
|
|
2346
|
+
j = (n[17] << 23) | (n[16] >>> 9),
|
|
2346
2347
|
z = (n[16] << 23) | (n[17] >>> 9),
|
|
2347
2348
|
F = (n[18] << 20) | (n[19] >>> 12),
|
|
2348
|
-
|
|
2349
|
-
|
|
2349
|
+
W = (n[19] << 20) | (n[18] >>> 12),
|
|
2350
|
+
q = (n[20] << 3) | (n[21] >>> 29),
|
|
2350
2351
|
H = (n[21] << 3) | (n[20] >>> 29),
|
|
2351
2352
|
V = (n[22] << 10) | (n[23] >>> 22),
|
|
2352
2353
|
J = (n[23] << 10) | (n[22] >>> 22),
|
|
2353
2354
|
K = (n[25] << 11) | (n[24] >>> 21),
|
|
2354
2355
|
Z = (n[24] << 11) | (n[25] >>> 21),
|
|
2355
2356
|
Q = (n[26] << 25) | (n[27] >>> 7),
|
|
2356
|
-
|
|
2357
|
-
|
|
2357
|
+
G = (n[27] << 25) | (n[26] >>> 7),
|
|
2358
|
+
_ = (n[29] << 7) | (n[28] >>> 25),
|
|
2358
2359
|
Y = (n[28] << 7) | (n[29] >>> 25),
|
|
2359
2360
|
X = (n[31] << 9) | (n[30] >>> 23),
|
|
2360
2361
|
nn = (n[30] << 9) | (n[31] >>> 23),
|
|
@@ -2377,35 +2378,35 @@ function keccakPermutate(n) {
|
|
|
2377
2378
|
yn = (n[48] << 14) | (n[49] >>> 18),
|
|
2378
2379
|
xn = (n[49] << 14) | (n[48] >>> 18)
|
|
2379
2380
|
;(n[0] = E ^ (~v & K)),
|
|
2380
|
-
(n[1] =
|
|
2381
|
+
(n[1] = M ^ (~U & Z)),
|
|
2381
2382
|
(n[2] = v ^ (~K & un)),
|
|
2382
2383
|
(n[3] = U ^ (~Z & cn)),
|
|
2383
2384
|
(n[4] = K ^ (~un & yn)),
|
|
2384
2385
|
(n[5] = Z ^ (~cn & xn)),
|
|
2385
2386
|
(n[6] = un ^ (~yn & E)),
|
|
2386
|
-
(n[7] = cn ^ (~xn &
|
|
2387
|
+
(n[7] = cn ^ (~xn & M)),
|
|
2387
2388
|
(n[8] = yn ^ (~E & v)),
|
|
2388
|
-
(n[9] = xn ^ (~
|
|
2389
|
-
(n[10] = R ^ (~F &
|
|
2390
|
-
(n[11] = D ^ (~
|
|
2391
|
-
(n[12] = F ^ (~
|
|
2392
|
-
(n[13] =
|
|
2393
|
-
(n[14] =
|
|
2389
|
+
(n[9] = xn ^ (~M & U)),
|
|
2390
|
+
(n[10] = R ^ (~F & q)),
|
|
2391
|
+
(n[11] = D ^ (~W & H)),
|
|
2392
|
+
(n[12] = F ^ (~q & en)),
|
|
2393
|
+
(n[13] = W ^ (~H & tn)),
|
|
2394
|
+
(n[14] = q ^ (~en & pn)),
|
|
2394
2395
|
(n[15] = H ^ (~tn & mn)),
|
|
2395
2396
|
(n[16] = en ^ (~pn & R)),
|
|
2396
2397
|
(n[17] = tn ^ (~mn & D)),
|
|
2397
2398
|
(n[18] = pn ^ (~R & F)),
|
|
2398
|
-
(n[19] = mn ^ (~D &
|
|
2399
|
-
(n[20] =
|
|
2400
|
-
(n[21] = k ^ (~
|
|
2399
|
+
(n[19] = mn ^ (~D & W)),
|
|
2400
|
+
(n[20] = O ^ (~L & Q)),
|
|
2401
|
+
(n[21] = k ^ (~N & G)),
|
|
2401
2402
|
(n[22] = L ^ (~Q & sn)),
|
|
2402
|
-
(n[23] =
|
|
2403
|
+
(n[23] = N ^ (~G & fn)),
|
|
2403
2404
|
(n[24] = Q ^ (~sn & ln)),
|
|
2404
|
-
(n[25] =
|
|
2405
|
-
(n[26] = sn ^ (~ln &
|
|
2405
|
+
(n[25] = G ^ (~fn & an)),
|
|
2406
|
+
(n[26] = sn ^ (~ln & O)),
|
|
2406
2407
|
(n[27] = fn ^ (~an & k)),
|
|
2407
|
-
(n[28] = ln ^ (~
|
|
2408
|
-
(n[29] = an ^ (~k &
|
|
2408
|
+
(n[28] = ln ^ (~O & L)),
|
|
2409
|
+
(n[29] = an ^ (~k & N)),
|
|
2409
2410
|
(n[30] = I ^ (~B & V)),
|
|
2410
2411
|
(n[31] = C ^ (~P & J)),
|
|
2411
2412
|
(n[32] = B ^ (~V & rn)),
|
|
@@ -2416,15 +2417,15 @@ function keccakPermutate(n) {
|
|
|
2416
2417
|
(n[37] = on ^ (~wn & C)),
|
|
2417
2418
|
(n[38] = gn ^ (~I & B)),
|
|
2418
2419
|
(n[39] = wn ^ (~C & P)),
|
|
2419
|
-
(n[40] = T ^ (~
|
|
2420
|
+
(n[40] = T ^ (~j & _)),
|
|
2420
2421
|
(n[41] = S ^ (~z & Y)),
|
|
2421
|
-
(n[42] =
|
|
2422
|
+
(n[42] = j ^ (~_ & X)),
|
|
2422
2423
|
(n[43] = z ^ (~Y & nn)),
|
|
2423
|
-
(n[44] =
|
|
2424
|
+
(n[44] = _ ^ (~X & hn)),
|
|
2424
2425
|
(n[45] = Y ^ (~nn & dn)),
|
|
2425
2426
|
(n[46] = X ^ (~hn & T)),
|
|
2426
2427
|
(n[47] = nn ^ (~dn & S)),
|
|
2427
|
-
(n[48] = hn ^ (~T &
|
|
2428
|
+
(n[48] = hn ^ (~T & j)),
|
|
2428
2429
|
(n[49] = dn ^ (~S & z)),
|
|
2429
2430
|
(n[0] ^= IOTA_CONSTANTS[e * 2]),
|
|
2430
2431
|
(n[1] ^= IOTA_CONSTANTS[e * 2 + 1])
|
|
@@ -3079,7 +3080,37 @@ class AsyncQueue {
|
|
|
3079
3080
|
})
|
|
3080
3081
|
}
|
|
3081
3082
|
}
|
|
3082
|
-
|
|
3083
|
+
exports.AsyncQueue = AsyncQueue
|
|
3084
|
+
class TrieRouter {
|
|
3085
|
+
constructor() {
|
|
3086
|
+
this.forks = new Map()
|
|
3087
|
+
}
|
|
3088
|
+
insert(e, t) {
|
|
3089
|
+
if (e.length === 0) {
|
|
3090
|
+
this.handler = t
|
|
3091
|
+
return
|
|
3092
|
+
}
|
|
3093
|
+
const r = e[0]
|
|
3094
|
+
let o = r,
|
|
3095
|
+
i
|
|
3096
|
+
if ((r.startsWith(':') && ((o = ':'), (i = r.slice(1))), !this.forks.has(o))) {
|
|
3097
|
+
const u = new TrieRouter()
|
|
3098
|
+
i && (u.variableName = i), this.forks.set(o, u)
|
|
3099
|
+
}
|
|
3100
|
+
this.forks.get(o).insert(e.slice(1), t)
|
|
3101
|
+
}
|
|
3102
|
+
async handle(e, t, r, o) {
|
|
3103
|
+
if (e.length === 0) return this.handler ? (await this.handler(t, r, o), !0) : !1
|
|
3104
|
+
const i = e[0],
|
|
3105
|
+
u = this.forks.get(i)
|
|
3106
|
+
if (u) return u.handle(e.slice(1), t, r, o)
|
|
3107
|
+
const s = this.forks.get(':')
|
|
3108
|
+
if (s) return s.variableName && o.set(s.variableName, i), s.handle(e.slice(1), t, r, o)
|
|
3109
|
+
const c = this.forks.get('*')
|
|
3110
|
+
return c ? (o.set('wildcard', e.join('/')), c.handler ? (await c.handler(t, r, o), !0) : !1) : !1
|
|
3111
|
+
}
|
|
3112
|
+
}
|
|
3113
|
+
;(exports.TrieRouter = TrieRouter),
|
|
3083
3114
|
(exports.Binary = {
|
|
3084
3115
|
hexToUint8Array,
|
|
3085
3116
|
uint8ArrayToHex,
|
package/module.mjs
CHANGED