quetch 0.1.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 (125) hide show
  1. package/README.md +29 -0
  2. package/dist/errors/QueryError.d.ts +5 -0
  3. package/dist/errors/QueryError.js +23 -0
  4. package/dist/errors/QueryError.js.map +1 -0
  5. package/dist/errors/RequestError.d.ts +11 -0
  6. package/dist/errors/RequestError.js +33 -0
  7. package/dist/errors/RequestError.js.map +1 -0
  8. package/dist/errors.d.ts +1 -0
  9. package/dist/errors.js +3 -0
  10. package/dist/errors.js.map +1 -0
  11. package/dist/main.d.ts +3 -0
  12. package/dist/main.js +3 -0
  13. package/dist/main.js.map +1 -0
  14. package/dist/middlewares/aggregate.d.ts +19 -0
  15. package/dist/middlewares/aggregate.js +86 -0
  16. package/dist/middlewares/aggregate.js.map +1 -0
  17. package/dist/middlewares/branch.d.ts +18 -0
  18. package/dist/middlewares/branch.js +21 -0
  19. package/dist/middlewares/branch.js.map +1 -0
  20. package/dist/middlewares/cache.d.ts +37 -0
  21. package/dist/middlewares/cache.js +40 -0
  22. package/dist/middlewares/cache.js.map +1 -0
  23. package/dist/middlewares/combine.d.ts +318 -0
  24. package/dist/middlewares/combine.js +20 -0
  25. package/dist/middlewares/combine.js.map +1 -0
  26. package/dist/middlewares/concurrent.d.ts +2 -0
  27. package/dist/middlewares/concurrent.js +20 -0
  28. package/dist/middlewares/concurrent.js.map +1 -0
  29. package/dist/middlewares/fetch.d.ts +2 -0
  30. package/dist/middlewares/fetch.js +20 -0
  31. package/dist/middlewares/fetch.js.map +1 -0
  32. package/dist/middlewares/fetchExternal.d.ts +8 -0
  33. package/dist/middlewares/fetchExternal.js +29 -0
  34. package/dist/middlewares/fetchExternal.js.map +1 -0
  35. package/dist/middlewares/fetchLocal.d.ts +9 -0
  36. package/dist/middlewares/fetchLocal.js +10 -0
  37. package/dist/middlewares/fetchLocal.js.map +1 -0
  38. package/dist/middlewares/identity.d.ts +4 -0
  39. package/dist/middlewares/identity.js +8 -0
  40. package/dist/middlewares/identity.js.map +1 -0
  41. package/dist/middlewares/log.d.ts +8 -0
  42. package/dist/middlewares/log.js +30 -0
  43. package/dist/middlewares/log.js.map +1 -0
  44. package/dist/middlewares/logQuery.d.ts +2 -0
  45. package/dist/middlewares/logQuery.js +25 -0
  46. package/dist/middlewares/logQuery.js.map +1 -0
  47. package/dist/middlewares/retry.d.ts +14 -0
  48. package/dist/middlewares/retry.js +38 -0
  49. package/dist/middlewares/retry.js.map +1 -0
  50. package/dist/middlewares.d.ts +9 -0
  51. package/dist/middlewares.js +11 -0
  52. package/dist/middlewares.js.map +1 -0
  53. package/dist/tools/add.d.ts +8 -0
  54. package/dist/tools/add.js +11 -0
  55. package/dist/tools/add.js.map +1 -0
  56. package/dist/tools/add.test.d.ts +1 -0
  57. package/dist/tools/add.test.js +6 -0
  58. package/dist/tools/add.test.js.map +1 -0
  59. package/dist/tools/defineCheckQuery.d.ts +17 -0
  60. package/dist/tools/defineCheckQuery.js +7 -0
  61. package/dist/tools/defineCheckQuery.js.map +1 -0
  62. package/dist/tools/defineCustomFetch.d.ts +19 -0
  63. package/dist/tools/defineCustomFetch.js +8 -0
  64. package/dist/tools/defineCustomFetch.js.map +1 -0
  65. package/dist/tools/filterFromContext.d.ts +2 -0
  66. package/dist/tools/filterFromContext.js +12 -0
  67. package/dist/tools/filterFromContext.js.map +1 -0
  68. package/dist/tools/filterItem.d.ts +9 -0
  69. package/dist/tools/filterItem.js +101 -0
  70. package/dist/tools/filterItem.js.map +1 -0
  71. package/dist/tools/filterItem.test.d.ts +1 -0
  72. package/dist/tools/filterItem.test.js +86 -0
  73. package/dist/tools/filterItem.test.js.map +1 -0
  74. package/dist/tools/impasse.d.ts +2 -0
  75. package/dist/tools/impasse.js +2 -0
  76. package/dist/tools/impasse.js.map +1 -0
  77. package/dist/tools/normalizeOrder.d.ts +5 -0
  78. package/dist/tools/normalizeOrder.js +10 -0
  79. package/dist/tools/normalizeOrder.js.map +1 -0
  80. package/dist/tools/queryItemList.d.ts +4 -0
  81. package/dist/tools/queryItemList.js +77 -0
  82. package/dist/tools/queryItemList.js.map +1 -0
  83. package/dist/tools/queryItemList.test.d.ts +1 -0
  84. package/dist/tools/queryItemList.test.js +141 -0
  85. package/dist/tools/queryItemList.test.js.map +1 -0
  86. package/dist/tools/sortItemList.d.ts +9 -0
  87. package/dist/tools/sortItemList.js +28 -0
  88. package/dist/tools/sortItemList.js.map +1 -0
  89. package/dist/tools/sortItemList.test.d.ts +1 -0
  90. package/dist/tools/sortItemList.test.js +47 -0
  91. package/dist/tools/sortItemList.test.js.map +1 -0
  92. package/dist/tools.d.ts +8 -0
  93. package/dist/tools.js +10 -0
  94. package/dist/tools.js.map +1 -0
  95. package/dist/types.d.ts +396 -0
  96. package/dist/types.js +2 -0
  97. package/dist/types.js.map +1 -0
  98. package/doc/README.md +1472 -0
  99. package/lib/errors/RequestError.ts +16 -0
  100. package/lib/errors.ts +2 -0
  101. package/lib/main.ts +4 -0
  102. package/lib/middlewares/aggregate.ts +113 -0
  103. package/lib/middlewares/branch.ts +27 -0
  104. package/lib/middlewares/cache.ts +89 -0
  105. package/lib/middlewares/combine.ts +959 -0
  106. package/lib/middlewares/fetchExternal.ts +38 -0
  107. package/lib/middlewares/fetchLocal.ts +14 -0
  108. package/lib/middlewares/identity.ts +20 -0
  109. package/lib/middlewares/log.ts +31 -0
  110. package/lib/middlewares/retry.ts +45 -0
  111. package/lib/middlewares.ts +10 -0
  112. package/lib/tools/defineCheckQuery.ts +24 -0
  113. package/lib/tools/defineCustomFetch.ts +70 -0
  114. package/lib/tools/filterFromContext.ts +16 -0
  115. package/lib/tools/filterItem.test.ts +203 -0
  116. package/lib/tools/filterItem.ts +113 -0
  117. package/lib/tools/impasse.ts +3 -0
  118. package/lib/tools/normalizeOrder.ts +13 -0
  119. package/lib/tools/queryItemList.test.ts +169 -0
  120. package/lib/tools/queryItemList.ts +108 -0
  121. package/lib/tools/sortItemList.test.ts +63 -0
  122. package/lib/tools/sortItemList.ts +33 -0
  123. package/lib/tools.ts +9 -0
  124. package/lib/types.ts +554 -0
  125. package/package.json +72 -0
@@ -0,0 +1,959 @@
1
+ import type { Handler } from "../types";
2
+
3
+ /** @hidden */
4
+ function combine<I0, O0, I1, O1, I2, O2>(
5
+ ...handlerList: readonly [Handler<I0, O0, I1, O1>, Handler<I1, O1, I2, O2>]
6
+ ): Handler<I0, O0, I2, O2>;
7
+ /** @hidden */
8
+ function combine<I0, O0, I1, O1, I2, O2, I3, O3>(
9
+ ...handlerList: readonly [
10
+ Handler<I0, O0, I1, O1>,
11
+ Handler<I1, O1, I2, O2>,
12
+ Handler<I2, O2, I3, O3>,
13
+ ]
14
+ ): Handler<I0, O0, I3, O3>;
15
+ /** @hidden */
16
+ function combine<I0, O0, I1, O1, I2, O2, I3, O3, I4, O4>(
17
+ ...handlerList: readonly [
18
+ Handler<I0, O0, I1, O1>,
19
+ Handler<I1, O1, I2, O2>,
20
+ Handler<I2, O2, I3, O3>,
21
+ Handler<I3, O3, I4, O4>,
22
+ ]
23
+ ): Handler<I0, O0, I4, O4>;
24
+ /** @hidden */
25
+ function combine<I0, O0, I1, O1, I2, O2, I3, O3, I4, O4, I5, O5>(
26
+ ...handlerList: readonly [
27
+ Handler<I0, O0, I1, O1>,
28
+ Handler<I1, O1, I2, O2>,
29
+ Handler<I2, O2, I3, O3>,
30
+ Handler<I3, O3, I4, O4>,
31
+ Handler<I4, O4, I5, O5>,
32
+ ]
33
+ ): Handler<I0, O0, I5, O5>;
34
+ /** @hidden */
35
+ function combine<I0, O0, I1, O1, I2, O2, I3, O3, I4, O4, I5, O5, I6, O6>(
36
+ ...handlerList: readonly [
37
+ Handler<I0, O0, I1, O1>,
38
+ Handler<I1, O1, I2, O2>,
39
+ Handler<I2, O2, I3, O3>,
40
+ Handler<I3, O3, I4, O4>,
41
+ Handler<I4, O4, I5, O5>,
42
+ Handler<I5, O5, I6, O6>,
43
+ ]
44
+ ): Handler<I0, O0, I6, O6>;
45
+ /** @hidden */
46
+ function combine<
47
+ I0,
48
+ O0,
49
+ I1,
50
+ O1,
51
+ I2,
52
+ O2,
53
+ I3,
54
+ O3,
55
+ I4,
56
+ O4,
57
+ I5,
58
+ O5,
59
+ I6,
60
+ O6,
61
+ I7,
62
+ O7,
63
+ >(
64
+ ...handlerList: readonly [
65
+ Handler<I0, O0, I1, O1>,
66
+ Handler<I1, O1, I2, O2>,
67
+ Handler<I2, O2, I3, O3>,
68
+ Handler<I3, O3, I4, O4>,
69
+ Handler<I4, O4, I5, O5>,
70
+ Handler<I5, O5, I6, O6>,
71
+ Handler<I6, O6, I7, O7>,
72
+ ]
73
+ ): Handler<I0, O0, I7, O7>;
74
+ /** @hidden */
75
+ function combine<
76
+ I0,
77
+ O0,
78
+ I1,
79
+ O1,
80
+ I2,
81
+ O2,
82
+ I3,
83
+ O3,
84
+ I4,
85
+ O4,
86
+ I5,
87
+ O5,
88
+ I6,
89
+ O6,
90
+ I7,
91
+ O7,
92
+ I8,
93
+ O8,
94
+ >(
95
+ ...handlerList: readonly [
96
+ Handler<I0, O0, I1, O1>,
97
+ Handler<I1, O1, I2, O2>,
98
+ Handler<I2, O2, I3, O3>,
99
+ Handler<I3, O3, I4, O4>,
100
+ Handler<I4, O4, I5, O5>,
101
+ Handler<I5, O5, I6, O6>,
102
+ Handler<I6, O6, I7, O7>,
103
+ Handler<I7, O7, I8, O8>,
104
+ ]
105
+ ): Handler<I0, O0, I8, O8>;
106
+ /** @hidden */
107
+ function combine<
108
+ I0,
109
+ O0,
110
+ I1,
111
+ O1,
112
+ I2,
113
+ O2,
114
+ I3,
115
+ O3,
116
+ I4,
117
+ O4,
118
+ I5,
119
+ O5,
120
+ I6,
121
+ O6,
122
+ I7,
123
+ O7,
124
+ I8,
125
+ O8,
126
+ I9,
127
+ O9,
128
+ >(
129
+ ...handlerList: readonly [
130
+ Handler<I0, O0, I1, O1>,
131
+ Handler<I1, O1, I2, O2>,
132
+ Handler<I2, O2, I3, O3>,
133
+ Handler<I3, O3, I4, O4>,
134
+ Handler<I4, O4, I5, O5>,
135
+ Handler<I5, O5, I6, O6>,
136
+ Handler<I6, O6, I7, O7>,
137
+ Handler<I7, O7, I8, O8>,
138
+ Handler<I8, O8, I9, O9>,
139
+ ]
140
+ ): Handler<I0, O0, I9, O9>;
141
+ /** @hidden */
142
+ function combine<
143
+ I0,
144
+ O0,
145
+ I1,
146
+ O1,
147
+ I2,
148
+ O2,
149
+ I3,
150
+ O3,
151
+ I4,
152
+ O4,
153
+ I5,
154
+ O5,
155
+ I6,
156
+ O6,
157
+ I7,
158
+ O7,
159
+ I8,
160
+ O8,
161
+ I9,
162
+ O9,
163
+ I10,
164
+ O10,
165
+ >(
166
+ ...handlerList: readonly [
167
+ Handler<I0, O0, I1, O1>,
168
+ Handler<I1, O1, I2, O2>,
169
+ Handler<I2, O2, I3, O3>,
170
+ Handler<I3, O3, I4, O4>,
171
+ Handler<I4, O4, I5, O5>,
172
+ Handler<I5, O5, I6, O6>,
173
+ Handler<I6, O6, I7, O7>,
174
+ Handler<I7, O7, I8, O8>,
175
+ Handler<I8, O8, I9, O9>,
176
+ Handler<I9, O9, I10, O10>,
177
+ ]
178
+ ): Handler<I0, O0, I10, O10>;
179
+ /** @hidden */
180
+ function combine<
181
+ I0,
182
+ O0,
183
+ I1,
184
+ O1,
185
+ I2,
186
+ O2,
187
+ I3,
188
+ O3,
189
+ I4,
190
+ O4,
191
+ I5,
192
+ O5,
193
+ I6,
194
+ O6,
195
+ I7,
196
+ O7,
197
+ I8,
198
+ O8,
199
+ I9,
200
+ O9,
201
+ I10,
202
+ O10,
203
+ I11,
204
+ O11,
205
+ >(
206
+ ...handlerList: readonly [
207
+ Handler<I0, O0, I1, O1>,
208
+ Handler<I1, O1, I2, O2>,
209
+ Handler<I2, O2, I3, O3>,
210
+ Handler<I3, O3, I4, O4>,
211
+ Handler<I4, O4, I5, O5>,
212
+ Handler<I5, O5, I6, O6>,
213
+ Handler<I6, O6, I7, O7>,
214
+ Handler<I7, O7, I8, O8>,
215
+ Handler<I8, O8, I9, O9>,
216
+ Handler<I9, O9, I10, O10>,
217
+ Handler<I10, O10, I11, O11>,
218
+ ]
219
+ ): Handler<I0, O0, I11, O11>;
220
+ /** @hidden */
221
+ function combine<
222
+ I0,
223
+ O0,
224
+ I1,
225
+ O1,
226
+ I2,
227
+ O2,
228
+ I3,
229
+ O3,
230
+ I4,
231
+ O4,
232
+ I5,
233
+ O5,
234
+ I6,
235
+ O6,
236
+ I7,
237
+ O7,
238
+ I8,
239
+ O8,
240
+ I9,
241
+ O9,
242
+ I10,
243
+ O10,
244
+ I11,
245
+ O11,
246
+ I12,
247
+ O12,
248
+ >(
249
+ ...handlerList: readonly [
250
+ Handler<I0, O0, I1, O1>,
251
+ Handler<I1, O1, I2, O2>,
252
+ Handler<I2, O2, I3, O3>,
253
+ Handler<I3, O3, I4, O4>,
254
+ Handler<I4, O4, I5, O5>,
255
+ Handler<I5, O5, I6, O6>,
256
+ Handler<I6, O6, I7, O7>,
257
+ Handler<I7, O7, I8, O8>,
258
+ Handler<I8, O8, I9, O9>,
259
+ Handler<I9, O9, I10, O10>,
260
+ Handler<I10, O10, I11, O11>,
261
+ Handler<I11, O11, I12, O12>,
262
+ ]
263
+ ): Handler<I0, O0, I12, O12>;
264
+ /** @hidden */
265
+ function combine<
266
+ I0,
267
+ O0,
268
+ I1,
269
+ O1,
270
+ I2,
271
+ O2,
272
+ I3,
273
+ O3,
274
+ I4,
275
+ O4,
276
+ I5,
277
+ O5,
278
+ I6,
279
+ O6,
280
+ I7,
281
+ O7,
282
+ I8,
283
+ O8,
284
+ I9,
285
+ O9,
286
+ I10,
287
+ O10,
288
+ I11,
289
+ O11,
290
+ I12,
291
+ O12,
292
+ I13,
293
+ O13,
294
+ >(
295
+ ...handlerList: readonly [
296
+ Handler<I0, O0, I1, O1>,
297
+ Handler<I1, O1, I2, O2>,
298
+ Handler<I2, O2, I3, O3>,
299
+ Handler<I3, O3, I4, O4>,
300
+ Handler<I4, O4, I5, O5>,
301
+ Handler<I5, O5, I6, O6>,
302
+ Handler<I6, O6, I7, O7>,
303
+ Handler<I7, O7, I8, O8>,
304
+ Handler<I8, O8, I9, O9>,
305
+ Handler<I9, O9, I10, O10>,
306
+ Handler<I10, O10, I11, O11>,
307
+ Handler<I11, O11, I12, O12>,
308
+ Handler<I12, O12, I13, O13>,
309
+ ]
310
+ ): Handler<I0, O0, I13, O13>;
311
+ /** @hidden */
312
+ function combine<
313
+ I0,
314
+ O0,
315
+ I1,
316
+ O1,
317
+ I2,
318
+ O2,
319
+ I3,
320
+ O3,
321
+ I4,
322
+ O4,
323
+ I5,
324
+ O5,
325
+ I6,
326
+ O6,
327
+ I7,
328
+ O7,
329
+ I8,
330
+ O8,
331
+ I9,
332
+ O9,
333
+ I10,
334
+ O10,
335
+ I11,
336
+ O11,
337
+ I12,
338
+ O12,
339
+ I13,
340
+ O13,
341
+ I14,
342
+ O14,
343
+ >(
344
+ ...handlerList: readonly [
345
+ Handler<I0, O0, I1, O1>,
346
+ Handler<I1, O1, I2, O2>,
347
+ Handler<I2, O2, I3, O3>,
348
+ Handler<I3, O3, I4, O4>,
349
+ Handler<I4, O4, I5, O5>,
350
+ Handler<I5, O5, I6, O6>,
351
+ Handler<I6, O6, I7, O7>,
352
+ Handler<I7, O7, I8, O8>,
353
+ Handler<I8, O8, I9, O9>,
354
+ Handler<I9, O9, I10, O10>,
355
+ Handler<I10, O10, I11, O11>,
356
+ Handler<I11, O11, I12, O12>,
357
+ Handler<I12, O12, I13, O13>,
358
+ Handler<I13, O13, I14, O14>,
359
+ ]
360
+ ): Handler<I0, O0, I14, O14>;
361
+ /** @hidden */
362
+ function combine<
363
+ I0,
364
+ O0,
365
+ I1,
366
+ O1,
367
+ I2,
368
+ O2,
369
+ I3,
370
+ O3,
371
+ I4,
372
+ O4,
373
+ I5,
374
+ O5,
375
+ I6,
376
+ O6,
377
+ I7,
378
+ O7,
379
+ I8,
380
+ O8,
381
+ I9,
382
+ O9,
383
+ I10,
384
+ O10,
385
+ I11,
386
+ O11,
387
+ I12,
388
+ O12,
389
+ I13,
390
+ O13,
391
+ I14,
392
+ O14,
393
+ I15,
394
+ O15,
395
+ >(
396
+ ...handlerList: readonly [
397
+ Handler<I0, O0, I1, O1>,
398
+ Handler<I1, O1, I2, O2>,
399
+ Handler<I2, O2, I3, O3>,
400
+ Handler<I3, O3, I4, O4>,
401
+ Handler<I4, O4, I5, O5>,
402
+ Handler<I5, O5, I6, O6>,
403
+ Handler<I6, O6, I7, O7>,
404
+ Handler<I7, O7, I8, O8>,
405
+ Handler<I8, O8, I9, O9>,
406
+ Handler<I9, O9, I10, O10>,
407
+ Handler<I10, O10, I11, O11>,
408
+ Handler<I11, O11, I12, O12>,
409
+ Handler<I12, O12, I13, O13>,
410
+ Handler<I13, O13, I14, O14>,
411
+ Handler<I14, O14, I15, O15>,
412
+ ]
413
+ ): Handler<I0, O0, I15, O15>;
414
+ /** @hidden */
415
+ function combine<
416
+ I0,
417
+ O0,
418
+ I1,
419
+ O1,
420
+ I2,
421
+ O2,
422
+ I3,
423
+ O3,
424
+ I4,
425
+ O4,
426
+ I5,
427
+ O5,
428
+ I6,
429
+ O6,
430
+ I7,
431
+ O7,
432
+ I8,
433
+ O8,
434
+ I9,
435
+ O9,
436
+ I10,
437
+ O10,
438
+ I11,
439
+ O11,
440
+ I12,
441
+ O12,
442
+ I13,
443
+ O13,
444
+ I14,
445
+ O14,
446
+ I15,
447
+ O15,
448
+ I16,
449
+ O16,
450
+ >(
451
+ ...handlerList: readonly [
452
+ Handler<I0, O0, I1, O1>,
453
+ Handler<I1, O1, I2, O2>,
454
+ Handler<I2, O2, I3, O3>,
455
+ Handler<I3, O3, I4, O4>,
456
+ Handler<I4, O4, I5, O5>,
457
+ Handler<I5, O5, I6, O6>,
458
+ Handler<I6, O6, I7, O7>,
459
+ Handler<I7, O7, I8, O8>,
460
+ Handler<I8, O8, I9, O9>,
461
+ Handler<I9, O9, I10, O10>,
462
+ Handler<I10, O10, I11, O11>,
463
+ Handler<I11, O11, I12, O12>,
464
+ Handler<I12, O12, I13, O13>,
465
+ Handler<I13, O13, I14, O14>,
466
+ Handler<I14, O14, I15, O15>,
467
+ Handler<I15, O15, I16, O16>,
468
+ ]
469
+ ): Handler<I0, O0, I16, O16>;
470
+ /** @hidden */
471
+ function combine<
472
+ I0,
473
+ O0,
474
+ I1,
475
+ O1,
476
+ I2,
477
+ O2,
478
+ I3,
479
+ O3,
480
+ I4,
481
+ O4,
482
+ I5,
483
+ O5,
484
+ I6,
485
+ O6,
486
+ I7,
487
+ O7,
488
+ I8,
489
+ O8,
490
+ I9,
491
+ O9,
492
+ I10,
493
+ O10,
494
+ I11,
495
+ O11,
496
+ I12,
497
+ O12,
498
+ I13,
499
+ O13,
500
+ I14,
501
+ O14,
502
+ I15,
503
+ O15,
504
+ I16,
505
+ O16,
506
+ I17,
507
+ O17,
508
+ >(
509
+ ...handlerList: readonly [
510
+ Handler<I0, O0, I1, O1>,
511
+ Handler<I1, O1, I2, O2>,
512
+ Handler<I2, O2, I3, O3>,
513
+ Handler<I3, O3, I4, O4>,
514
+ Handler<I4, O4, I5, O5>,
515
+ Handler<I5, O5, I6, O6>,
516
+ Handler<I6, O6, I7, O7>,
517
+ Handler<I7, O7, I8, O8>,
518
+ Handler<I8, O8, I9, O9>,
519
+ Handler<I9, O9, I10, O10>,
520
+ Handler<I10, O10, I11, O11>,
521
+ Handler<I11, O11, I12, O12>,
522
+ Handler<I12, O12, I13, O13>,
523
+ Handler<I13, O13, I14, O14>,
524
+ Handler<I14, O14, I15, O15>,
525
+ Handler<I15, O15, I16, O16>,
526
+ Handler<I16, O16, I17, O17>,
527
+ ]
528
+ ): Handler<I0, O0, I17, O17>;
529
+ /** @hidden */
530
+ function combine<
531
+ I0,
532
+ O0,
533
+ I1,
534
+ O1,
535
+ I2,
536
+ O2,
537
+ I3,
538
+ O3,
539
+ I4,
540
+ O4,
541
+ I5,
542
+ O5,
543
+ I6,
544
+ O6,
545
+ I7,
546
+ O7,
547
+ I8,
548
+ O8,
549
+ I9,
550
+ O9,
551
+ I10,
552
+ O10,
553
+ I11,
554
+ O11,
555
+ I12,
556
+ O12,
557
+ I13,
558
+ O13,
559
+ I14,
560
+ O14,
561
+ I15,
562
+ O15,
563
+ I16,
564
+ O16,
565
+ I17,
566
+ O17,
567
+ I18,
568
+ O18,
569
+ >(
570
+ ...handlerList: readonly [
571
+ Handler<I0, O0, I1, O1>,
572
+ Handler<I1, O1, I2, O2>,
573
+ Handler<I2, O2, I3, O3>,
574
+ Handler<I3, O3, I4, O4>,
575
+ Handler<I4, O4, I5, O5>,
576
+ Handler<I5, O5, I6, O6>,
577
+ Handler<I6, O6, I7, O7>,
578
+ Handler<I7, O7, I8, O8>,
579
+ Handler<I8, O8, I9, O9>,
580
+ Handler<I9, O9, I10, O10>,
581
+ Handler<I10, O10, I11, O11>,
582
+ Handler<I11, O11, I12, O12>,
583
+ Handler<I12, O12, I13, O13>,
584
+ Handler<I13, O13, I14, O14>,
585
+ Handler<I14, O14, I15, O15>,
586
+ Handler<I15, O15, I16, O16>,
587
+ Handler<I16, O16, I17, O17>,
588
+ Handler<I17, O17, I18, O18>,
589
+ ]
590
+ ): Handler<I0, O0, I18, O18>;
591
+ /** @hidden */
592
+ function combine<
593
+ I0,
594
+ O0,
595
+ I1,
596
+ O1,
597
+ I2,
598
+ O2,
599
+ I3,
600
+ O3,
601
+ I4,
602
+ O4,
603
+ I5,
604
+ O5,
605
+ I6,
606
+ O6,
607
+ I7,
608
+ O7,
609
+ I8,
610
+ O8,
611
+ I9,
612
+ O9,
613
+ I10,
614
+ O10,
615
+ I11,
616
+ O11,
617
+ I12,
618
+ O12,
619
+ I13,
620
+ O13,
621
+ I14,
622
+ O14,
623
+ I15,
624
+ O15,
625
+ I16,
626
+ O16,
627
+ I17,
628
+ O17,
629
+ I18,
630
+ O18,
631
+ I19,
632
+ O19,
633
+ >(
634
+ ...handlerList: readonly [
635
+ Handler<I0, O0, I1, O1>,
636
+ Handler<I1, O1, I2, O2>,
637
+ Handler<I2, O2, I3, O3>,
638
+ Handler<I3, O3, I4, O4>,
639
+ Handler<I4, O4, I5, O5>,
640
+ Handler<I5, O5, I6, O6>,
641
+ Handler<I6, O6, I7, O7>,
642
+ Handler<I7, O7, I8, O8>,
643
+ Handler<I8, O8, I9, O9>,
644
+ Handler<I9, O9, I10, O10>,
645
+ Handler<I10, O10, I11, O11>,
646
+ Handler<I11, O11, I12, O12>,
647
+ Handler<I12, O12, I13, O13>,
648
+ Handler<I13, O13, I14, O14>,
649
+ Handler<I14, O14, I15, O15>,
650
+ Handler<I15, O15, I16, O16>,
651
+ Handler<I16, O16, I17, O17>,
652
+ Handler<I17, O17, I18, O18>,
653
+ Handler<I18, O18, I19, O19>,
654
+ ]
655
+ ): Handler<I0, O0, I19, O19>;
656
+ /** @hidden */
657
+ function combine<
658
+ I0,
659
+ O0,
660
+ I1,
661
+ O1,
662
+ I2,
663
+ O2,
664
+ I3,
665
+ O3,
666
+ I4,
667
+ O4,
668
+ I5,
669
+ O5,
670
+ I6,
671
+ O6,
672
+ I7,
673
+ O7,
674
+ I8,
675
+ O8,
676
+ I9,
677
+ O9,
678
+ I10,
679
+ O10,
680
+ I11,
681
+ O11,
682
+ I12,
683
+ O12,
684
+ I13,
685
+ O13,
686
+ I14,
687
+ O14,
688
+ I15,
689
+ O15,
690
+ I16,
691
+ O16,
692
+ I17,
693
+ O17,
694
+ I18,
695
+ O18,
696
+ I19,
697
+ O19,
698
+ I20,
699
+ O20,
700
+ >(
701
+ ...handlerList: readonly [
702
+ Handler<I0, O0, I1, O1>,
703
+ Handler<I1, O1, I2, O2>,
704
+ Handler<I2, O2, I3, O3>,
705
+ Handler<I3, O3, I4, O4>,
706
+ Handler<I4, O4, I5, O5>,
707
+ Handler<I5, O5, I6, O6>,
708
+ Handler<I6, O6, I7, O7>,
709
+ Handler<I7, O7, I8, O8>,
710
+ Handler<I8, O8, I9, O9>,
711
+ Handler<I9, O9, I10, O10>,
712
+ Handler<I10, O10, I11, O11>,
713
+ Handler<I11, O11, I12, O12>,
714
+ Handler<I12, O12, I13, O13>,
715
+ Handler<I13, O13, I14, O14>,
716
+ Handler<I14, O14, I15, O15>,
717
+ Handler<I15, O15, I16, O16>,
718
+ Handler<I16, O16, I17, O17>,
719
+ Handler<I17, O17, I18, O18>,
720
+ Handler<I18, O18, I19, O19>,
721
+ Handler<I19, O19, I20, O20>,
722
+ ]
723
+ ): Handler<I0, O0, I20, O20>;
724
+ /** @hidden */
725
+ function combine<
726
+ I0,
727
+ O0,
728
+ I1,
729
+ O1,
730
+ I2,
731
+ O2,
732
+ I3,
733
+ O3,
734
+ I4,
735
+ O4,
736
+ I5,
737
+ O5,
738
+ I6,
739
+ O6,
740
+ I7,
741
+ O7,
742
+ I8,
743
+ O8,
744
+ I9,
745
+ O9,
746
+ I10,
747
+ O10,
748
+ I11,
749
+ O11,
750
+ I12,
751
+ O12,
752
+ I13,
753
+ O13,
754
+ I14,
755
+ O14,
756
+ I15,
757
+ O15,
758
+ I16,
759
+ O16,
760
+ I17,
761
+ O17,
762
+ I18,
763
+ O18,
764
+ I19,
765
+ O19,
766
+ I20,
767
+ O20,
768
+ I21,
769
+ O21,
770
+ >(
771
+ ...handlerList: readonly [
772
+ Handler<I0, O0, I1, O1>,
773
+ Handler<I1, O1, I2, O2>,
774
+ Handler<I2, O2, I3, O3>,
775
+ Handler<I3, O3, I4, O4>,
776
+ Handler<I4, O4, I5, O5>,
777
+ Handler<I5, O5, I6, O6>,
778
+ Handler<I6, O6, I7, O7>,
779
+ Handler<I7, O7, I8, O8>,
780
+ Handler<I8, O8, I9, O9>,
781
+ Handler<I9, O9, I10, O10>,
782
+ Handler<I10, O10, I11, O11>,
783
+ Handler<I11, O11, I12, O12>,
784
+ Handler<I12, O12, I13, O13>,
785
+ Handler<I13, O13, I14, O14>,
786
+ Handler<I14, O14, I15, O15>,
787
+ Handler<I15, O15, I16, O16>,
788
+ Handler<I16, O16, I17, O17>,
789
+ Handler<I17, O17, I18, O18>,
790
+ Handler<I18, O18, I19, O19>,
791
+ Handler<I19, O19, I20, O20>,
792
+ Handler<I20, O20, I21, O21>,
793
+ ]
794
+ ): Handler<I0, O0, I21, O21>;
795
+ /**
796
+ * Combines the provided handler into a single handler.
797
+ *
798
+ * @param handlerList List of handlers to combine.
799
+ * @returns Handler that combines all provided handlers.
800
+ */
801
+ function combine<
802
+ I0,
803
+ O0,
804
+ I1,
805
+ O1,
806
+ I2,
807
+ O2,
808
+ I3,
809
+ O3,
810
+ I4,
811
+ O4,
812
+ I5,
813
+ O5,
814
+ I6,
815
+ O6,
816
+ I7,
817
+ O7,
818
+ I8,
819
+ O8,
820
+ I9,
821
+ O9,
822
+ I10,
823
+ O10,
824
+ I11,
825
+ O11,
826
+ I12,
827
+ O12,
828
+ I13,
829
+ O13,
830
+ I14,
831
+ O14,
832
+ I15,
833
+ O15,
834
+ I16,
835
+ O16,
836
+ I17,
837
+ O17,
838
+ I18,
839
+ O18,
840
+ I19,
841
+ O19,
842
+ I20,
843
+ O20,
844
+ I21,
845
+ O21,
846
+ >(
847
+ ...handlerList: readonly [
848
+ Handler<I0, O0, I1, O1>,
849
+ Handler<I1, O1, I2, O2>,
850
+ Handler<I2, O2, I3, O3>?,
851
+ Handler<I3, O3, I4, O4>?,
852
+ Handler<I4, O4, I5, O5>?,
853
+ Handler<I5, O5, I6, O6>?,
854
+ Handler<I6, O6, I7, O7>?,
855
+ Handler<I7, O7, I8, O8>?,
856
+ Handler<I8, O8, I9, O9>?,
857
+ Handler<I9, O9, I10, O10>?,
858
+ Handler<I10, O10, I11, O11>?,
859
+ Handler<I11, O11, I12, O12>?,
860
+ Handler<I12, O12, I13, O13>?,
861
+ Handler<I13, O13, I14, O14>?,
862
+ Handler<I14, O14, I15, O15>?,
863
+ Handler<I15, O15, I16, O16>?,
864
+ Handler<I16, O16, I17, O17>?,
865
+ Handler<I17, O17, I18, O18>?,
866
+ Handler<I18, O18, I19, O19>?,
867
+ Handler<I19, O19, I20, O20>?,
868
+ Handler<I20, O20, I21, O21>?,
869
+ ]
870
+ ): Handler<I0, O0, I21, O21>;
871
+ function combine<
872
+ I0,
873
+ O0,
874
+ I1,
875
+ O1,
876
+ I2,
877
+ O2,
878
+ I3,
879
+ O3,
880
+ I4,
881
+ O4,
882
+ I5,
883
+ O5,
884
+ I6,
885
+ O6,
886
+ I7,
887
+ O7,
888
+ I8,
889
+ O8,
890
+ I9,
891
+ O9,
892
+ I10,
893
+ O10,
894
+ I11,
895
+ O11,
896
+ I12,
897
+ O12,
898
+ I13,
899
+ O13,
900
+ I14,
901
+ O14,
902
+ I15,
903
+ O15,
904
+ I16,
905
+ O16,
906
+ I17,
907
+ O17,
908
+ I18,
909
+ O18,
910
+ I19,
911
+ O19,
912
+ I20,
913
+ O20,
914
+ I21,
915
+ O21,
916
+ >(
917
+ ...handlerList: readonly [
918
+ Handler<I0, O0, I1, O1>,
919
+ Handler<I1, O1, I2, O2>,
920
+ Handler<I2, O2, I3, O3>?,
921
+ Handler<I3, O3, I4, O4>?,
922
+ Handler<I4, O4, I5, O5>?,
923
+ Handler<I5, O5, I6, O6>?,
924
+ Handler<I6, O6, I7, O7>?,
925
+ Handler<I7, O7, I8, O8>?,
926
+ Handler<I8, O8, I9, O9>?,
927
+ Handler<I9, O9, I10, O10>?,
928
+ Handler<I10, O10, I11, O11>?,
929
+ Handler<I11, O11, I12, O12>?,
930
+ Handler<I12, O12, I13, O13>?,
931
+ Handler<I13, O13, I14, O14>?,
932
+ Handler<I14, O14, I15, O15>?,
933
+ Handler<I15, O15, I16, O16>?,
934
+ Handler<I16, O16, I17, O17>?,
935
+ Handler<I17, O17, I18, O18>?,
936
+ Handler<I18, O18, I19, O19>?,
937
+ Handler<I19, O19, I20, O20>?,
938
+ Handler<I20, O20, I21, O21>?,
939
+ ]
940
+ ): Handler<I0, O0, I21, O21> {
941
+ return function (input, next) {
942
+ function dispatch(input: any, index: number) {
943
+ const handler = handlerList[index];
944
+ if (!handler) {
945
+ return next(input);
946
+ }
947
+ const result: any = handler(input, function (input) {
948
+ return dispatch(input, index + 1);
949
+ });
950
+ if (result === undefined) {
951
+ throw new Error(`Handler at index ${index} did not return a response`);
952
+ }
953
+ return result;
954
+ }
955
+ return dispatch(input, 0);
956
+ };
957
+ }
958
+
959
+ export { combine };