@procedures/client 0.47.1 → 0.48.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 (139) hide show
  1. package/CHANGELOG.md +92 -68
  2. package/README.md +3 -3
  3. package/dist/.tsbuildinfo +1 -1
  4. package/dist/adapters/http/client/batch.d.ts.map +1 -1
  5. package/dist/adapters/http/client/batch.js.map +1 -1
  6. package/dist/adapters/http/server/body.d.ts.map +1 -1
  7. package/dist/adapters/http/server/body.js.map +1 -1
  8. package/dist/adapters/http/shared/constants.d.ts +82 -78
  9. package/dist/adapters/http/shared/constants.d.ts.map +1 -1
  10. package/dist/adapters/http/shared/constants.js +78 -80
  11. package/dist/adapters/http/shared/constants.js.map +1 -1
  12. package/dist/adapters/http/shared/errors.d.ts +15 -13
  13. package/dist/adapters/http/shared/errors.d.ts.map +1 -1
  14. package/dist/adapters/http/shared/errors.js +13 -14
  15. package/dist/adapters/http/shared/errors.js.map +1 -1
  16. package/dist/adapters/port/transport.d.ts.map +1 -1
  17. package/dist/adapters/port/transport.js.map +1 -1
  18. package/dist/adapters/sequence.d.ts.map +1 -1
  19. package/dist/adapters/sequence.js.map +1 -1
  20. package/dist/adapters/websocket/client/types.d.ts +16 -6
  21. package/dist/adapters/websocket/client/types.d.ts.map +1 -1
  22. package/dist/adapters/websocket/client/types.js +7 -8
  23. package/dist/adapters/websocket/client/types.js.map +1 -1
  24. package/dist/adapters/websocket/shared/rpc.d.ts.map +1 -1
  25. package/dist/adapters/websocket/shared/rpc.js.map +1 -1
  26. package/dist/browser.d.ts +1 -1
  27. package/dist/browser.d.ts.map +1 -1
  28. package/dist/browser.js.map +1 -1
  29. package/dist/client/batch-executor.d.ts.map +1 -1
  30. package/dist/client/batch-executor.js.map +1 -1
  31. package/dist/client/client.d.ts.map +1 -1
  32. package/dist/client/client.js +3 -4
  33. package/dist/client/client.js.map +1 -1
  34. package/dist/client/errors/codes.d.ts +66 -64
  35. package/dist/client/errors/codes.d.ts.map +1 -1
  36. package/dist/client/errors/codes.js +64 -65
  37. package/dist/client/errors/codes.js.map +1 -1
  38. package/dist/client/errors/http-status.d.ts +69 -67
  39. package/dist/client/errors/http-status.d.ts.map +1 -1
  40. package/dist/client/errors/http-status.js +67 -68
  41. package/dist/client/errors/http-status.js.map +1 -1
  42. package/dist/client/errors/types.d.ts +38 -15
  43. package/dist/client/errors/types.d.ts.map +1 -1
  44. package/dist/client/errors/types.js +17 -19
  45. package/dist/client/errors/types.js.map +1 -1
  46. package/dist/client/middleware/circuit-breaker.d.ts.map +1 -1
  47. package/dist/client/middleware/circuit-breaker.js.map +1 -1
  48. package/dist/client/middleware/lru.d.ts +1 -1
  49. package/dist/client/middleware/lru.d.ts.map +1 -1
  50. package/dist/client/middleware/lru.js.map +1 -1
  51. package/dist/client/middleware/rate-limit.d.ts.map +1 -1
  52. package/dist/client/middleware/rate-limit.js.map +1 -1
  53. package/dist/client/middleware/resilience.d.ts.map +1 -1
  54. package/dist/client/middleware/resilience.js +2 -1
  55. package/dist/client/middleware/resilience.js.map +1 -1
  56. package/dist/client/route-resolver.d.ts.map +1 -1
  57. package/dist/client/route-resolver.js.map +1 -1
  58. package/dist/client/types.d.ts.map +1 -1
  59. package/dist/client/types.js.map +1 -1
  60. package/dist/client/validation/types.d.ts +1 -7
  61. package/dist/client/validation/types.d.ts.map +1 -1
  62. package/dist/client/validation/types.js +4 -7
  63. package/dist/client/validation/types.js.map +1 -1
  64. package/dist/events/bus.d.ts +35 -0
  65. package/dist/events/bus.d.ts.map +1 -1
  66. package/dist/events/bus.js +135 -22
  67. package/dist/events/bus.js.map +1 -1
  68. package/dist/events/index.d.ts +1 -1
  69. package/dist/events/index.d.ts.map +1 -1
  70. package/dist/events/index.js.map +1 -1
  71. package/dist/events/publisher.d.ts.map +1 -1
  72. package/dist/events/publisher.js +4 -7
  73. package/dist/events/publisher.js.map +1 -1
  74. package/dist/events/recheck.d.ts.map +1 -1
  75. package/dist/events/recheck.js.map +1 -1
  76. package/dist/events/remote.d.ts +1 -7
  77. package/dist/events/remote.d.ts.map +1 -1
  78. package/dist/events/remote.js +4 -7
  79. package/dist/events/remote.js.map +1 -1
  80. package/dist/events/types.d.ts +30 -0
  81. package/dist/events/types.d.ts.map +1 -1
  82. package/dist/middleware/compose.d.ts.map +1 -1
  83. package/dist/middleware/compose.js +6 -10
  84. package/dist/middleware/compose.js.map +1 -1
  85. package/dist/procedures/caller.d.ts +1 -1
  86. package/dist/procedures/caller.js +1 -1
  87. package/dist/procedures/collection/admission.d.ts +1 -1
  88. package/dist/procedures/collection/admission.js +1 -1
  89. package/dist/procedures/collection/hint-filter.d.ts +1 -7
  90. package/dist/procedures/collection/hint-filter.d.ts.map +1 -1
  91. package/dist/procedures/collection/hint-filter.js +4 -7
  92. package/dist/procedures/collection/hint-filter.js.map +1 -1
  93. package/dist/server/face-rules.d.ts +1 -1
  94. package/dist/server/face-rules.js +1 -1
  95. package/dist/server/procedure-server.d.ts +7 -5
  96. package/dist/server/procedure-server.d.ts.map +1 -1
  97. package/dist/server/procedure-server.js +10 -8
  98. package/dist/server/procedure-server.js.map +1 -1
  99. package/dist/server/types.d.ts.map +1 -1
  100. package/dist/server/types.js.map +1 -1
  101. package/dist/testing/transport-contract.d.ts +1 -1
  102. package/dist/testing/transport-contract.js +1 -1
  103. package/package.json +8 -4
  104. package/src/adapters/http/client/batch.ts +4 -1
  105. package/src/adapters/http/server/body.ts +4 -1
  106. package/src/adapters/http/shared/constants.ts +84 -78
  107. package/src/adapters/http/shared/errors.ts +16 -13
  108. package/src/adapters/port/transport.ts +4 -1
  109. package/src/adapters/sequence.ts +5 -1
  110. package/src/adapters/websocket/client/types.ts +19 -6
  111. package/src/adapters/websocket/shared/rpc.ts +15 -3
  112. package/src/browser.ts +1 -0
  113. package/src/client/batch-executor.ts +5 -1
  114. package/src/client/client.ts +3 -4
  115. package/src/client/errors/README.md +12 -12
  116. package/src/client/errors/codes.ts +67 -64
  117. package/src/client/errors/http-status.ts +70 -67
  118. package/src/client/errors/types.ts +44 -15
  119. package/src/client/middleware/circuit-breaker.ts +7 -2
  120. package/src/client/middleware/lru.ts +7 -2
  121. package/src/client/middleware/rate-limit.ts +4 -1
  122. package/src/client/middleware/resilience.ts +2 -1
  123. package/src/client/route-resolver.ts +5 -1
  124. package/src/client/types.ts +7 -2
  125. package/src/client/validation/types.ts +13 -6
  126. package/src/events/bus.ts +152 -23
  127. package/src/events/index.ts +1 -0
  128. package/src/events/publisher.ts +22 -9
  129. package/src/events/recheck.ts +4 -1
  130. package/src/events/remote.ts +33 -12
  131. package/src/events/types.ts +34 -0
  132. package/src/middleware/compose.ts +6 -22
  133. package/src/procedures/caller.ts +1 -1
  134. package/src/procedures/collection/admission.ts +1 -1
  135. package/src/procedures/collection/hint-filter.ts +13 -6
  136. package/src/server/face-rules.ts +1 -1
  137. package/src/server/procedure-server.ts +11 -8
  138. package/src/server/types.ts +7 -2
  139. package/src/testing/transport-contract.ts +1 -1
@@ -31,17 +31,14 @@ export const EVENTS_SUBSCRIBE_PATH = Object.freeze(["events", "subscribe"]);
31
31
  const SUBSCRIBE_METHOD = Object.freeze({ service: "events", operation: "subscribe" });
32
32
  /** The error that ends a subscription. */
33
33
  export class SubscriptionError extends Error {
34
+ /** The code: a code of the protocol, for example `TOPIC_NOT_FOUND`. */
34
35
  code;
36
+ /** True when a resubscribe can repair the failure. */
35
37
  retryable;
38
+ /** The reason of a `FORBIDDEN` error, for example `topic-not-allowed`. */
36
39
  reason;
37
40
  name = "SubscriptionError";
38
- constructor(
39
- /** The code: a code of the protocol, for example `TOPIC_NOT_FOUND`. */
40
- code, message,
41
- /** True when a resubscribe can repair the failure. */
42
- retryable,
43
- /** The reason of a `FORBIDDEN` error, for example `topic-not-allowed`. */
44
- reason) {
41
+ constructor(code, message, retryable, reason) {
45
42
  super(message);
46
43
  this.code = code;
47
44
  this.retryable = retryable;
@@ -1 +1 @@
1
- {"version":3,"file":"remote.js","sourceRoot":"","sources":["../../src/events/remote.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remote.js","sourceRoot":"","sources":["../../src/events/remote.ts"],"names":[],"mappings":"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"}
@@ -249,5 +249,35 @@ export interface EventBusOptions {
249
249
  * Default: false
250
250
  */
251
251
  debug?: boolean;
252
+ /**
253
+ * The bounded fan-out (roadmap CLI-90). Without it, `emit()` calls each handler before it
254
+ * returns, at each channel size.
255
+ */
256
+ fanOut?: EventFanOutOptions;
257
+ }
258
+ /**
259
+ * The options of the bounded fan-out of an event bus (roadmap CLI-90).
260
+ *
261
+ * A channel with more handlers than `sliceSize` delivers after `emit()` returns, in slices. The
262
+ * event loop runs between two slices, so one event does not hold it. A smaller channel stays
263
+ * synchronous, while no event of the channel waits.
264
+ *
265
+ * The limit is a count of handlers, not a time. The work of a stream reader runs in microtasks
266
+ * after its handler returns, so a clock in the slice does not see this work.
267
+ */
268
+ export interface EventFanOutOptions {
269
+ /** The most handlers that one slice calls. A number from 1 up. */
270
+ sliceSize: number;
271
+ /**
272
+ * The most events that wait for their slices. The next event then finishes the oldest events
273
+ * in its `emit()`: the bus loses no event, and its memory stays bounded.
274
+ * Default: 1024
275
+ */
276
+ maxPending?: number;
277
+ /**
278
+ * The function that runs a slice in a later task of the event loop.
279
+ * Default: `setImmediate`, or `setTimeout` where `setImmediate` does not exist
280
+ */
281
+ schedule?: (slice: () => void) => void;
252
282
  }
253
283
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/events/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH;;GAEG;AACH,MAAM,WAAW,KAAK,CAAC,CAAC,GAAG,OAAO;IAChC,uCAAuC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB;IACjB,IAAI,EAAE,CAAC,CAAC;IACR,uCAAuC;IACvC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,GAAG,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE1E;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC;AAMrC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,WAAW,QAAQ;IACvB;;;;;OAKG;IACH,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;IAExC;;;;;;;OAOG;IACH,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,WAAW,CAAC;IAE5F;;;;;;;OAOG;IACH,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAEjE;;;;;;;OAOG;IACH,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;IAEzE;;;;;OAKG;IACH,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IAEzC;;;;OAIG;IACH,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IAEzC;;OAEG;IACH,QAAQ,IAAI,MAAM,EAAE,CAAC;IAErB;;;;OAIG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAE7B;;OAEG;IACH,QAAQ,IAAI,IAAI,CAAC;CAClB;AAMD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,WAAW,UAAU;IACzB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,aAAa,CAAC,SAAS,SAAS,UAAU;IACzD,IAAI,CAAC,CAAC,SAAS,MAAM,SAAS,GAAG,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAC/E,EAAE,CAAC,CAAC,SAAS,MAAM,SAAS,GAAG,MAAM,EACnC,OAAO,EAAE,CAAC,EACV,OAAO,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EACnC,OAAO,CAAC,EAAE,kBAAkB,GAC3B,WAAW,CAAC;IACf,IAAI,CAAC,CAAC,SAAS,MAAM,SAAS,GAAG,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IACxG,MAAM,CAAC,CAAC,SAAS,MAAM,SAAS,GAAG,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAChH,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IACzC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IACzC,QAAQ,IAAI,MAAM,EAAE,CAAC;IACrB,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,IAAI,IAAI,CAAC;CAClB;AAMD;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,mBAAmB;IACnB,cAAc,EAAE;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACnD,qBAAqB;IACrB,gBAAgB,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACxD,mBAAmB;IACnB,cAAc,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;CACrD;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,kCAAkC;IAClC,iBAAiB,EAAE;QAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC;IACtD,oCAAoC;IACpC,oBAAoB,EAAE;QAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5E,iCAAiC;IACjC,iBAAiB,EAAE;QAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC;IACpD,oCAAoC;IACpC,iBAAiB,EAAE;QAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CACtE;AAED;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,cAAc,EAAE,iBAAiB;IAExE,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;CAC5B;AAMD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,6CAA6C;IAC7C,MAAM,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,OAAO,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAElD;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/events/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"compose.d.ts","sourceRoot":"","sources":["../../src/middleware/compose.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EACV,UAAU,EACV,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACf,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,wBAAwB,CACtC,YAAY,SAAS,SAAS,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,EAC9D,YAAY,EACZ,OAAO,EAEP,WAAW,EAAE,YAAY,EACzB,EAAE,EAAE,gBAAgB,CAClB,kBAAkB,CAAC,YAAY,EAAE,YAAY,CAAC,EAC9C,OAAO,EACP,IAAI,CACL,GACA,gBAAgB,CAAC,YAAY,EAAE,OAAO,EAAE,IAAI,CAAC,CAY/C;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,uBAAuB,CACrC,YAAY,SAAS,SAAS,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,EAC7D,YAAY,EACZ,OAAO,EAEP,WAAW,EAAE,YAAY,EACzB,EAAE,EAAE,gBAAgB,CAClB,kBAAkB,CAAC,YAAY,EAAE,YAAY,CAAC,EAC9C,OAAO,EACP,KAAK,CACN,GACA,gBAAgB,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,CAAC,CAIhD;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,OAAO,CAAC,MAAM,SAAS,OAAO,GAAG,KAAK,EACpD,GAAG,IAAI,EAAE,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,GACrD,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAYpC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,MAAM,CAAC,MAAM,SAAS,OAAO,GAAG,KAAK,EACnD,GAAG,UAAU,EAAE,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,GACjD,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAOnC"}
1
+ {"version":3,"file":"compose.d.ts","sourceRoot":"","sources":["../../src/middleware/compose.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EACV,UAAU,EACV,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACf,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,wBAAwB,CACtC,YAAY,SAAS,SAAS,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,EAC9D,YAAY,EACZ,OAAO,EAEP,WAAW,EAAE,YAAY,EACzB,EAAE,EAAE,gBAAgB,CAClB,kBAAkB,CAAC,YAAY,EAAE,YAAY,CAAC,EAC9C,OAAO,EACP,IAAI,CACL,GACA,gBAAgB,CAAC,YAAY,EAAE,OAAO,EAAE,IAAI,CAAC,CAO/C;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,uBAAuB,CACrC,YAAY,SAAS,SAAS,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,EAC7D,YAAY,EACZ,OAAO,EAEP,WAAW,EAAE,YAAY,EACzB,EAAE,EAAE,gBAAgB,CAClB,kBAAkB,CAAC,YAAY,EAAE,YAAY,CAAC,EAC9C,OAAO,EACP,KAAK,CACN,GACA,gBAAgB,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,CAAC,CAEhD;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,OAAO,CAAC,MAAM,SAAS,OAAO,GAAG,KAAK,EACpD,GAAG,IAAI,EAAE,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,GACrD,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAOpC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,MAAM,CAAC,MAAM,SAAS,OAAO,GAAG,KAAK,EACnD,GAAG,UAAU,EAAE,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,GACjD,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAEnC"}
@@ -5,6 +5,7 @@
5
5
  * Uses recursive type inference (`MiddlewaresContext`) to validate middleware compatibility
6
6
  * for any chain length - no manual overloads needed!
7
7
  */
8
+ import { compose as foldLayers } from "@mark1russell7/collections/layers";
8
9
  /**
9
10
  * Wraps an async function with a series of middlewares and returns a new async function
10
11
  * representing their combined execution.
@@ -27,9 +28,7 @@
27
28
  * ```
28
29
  */
29
30
  export function wrapWithAsyncMiddlewares(middlewares, fn) {
30
- const combinedRunner = middlewares.reduceRight((currentRunner, currentMiddleware) => {
31
- return currentMiddleware(currentRunner);
32
- }, fn);
31
+ const combinedRunner = foldLayers(...middlewares)(fn);
33
32
  // Wrap in async to ensure synchronous throws become rejected promises
34
33
  return async (context) => {
35
34
  return combinedRunner(context);
@@ -49,9 +48,7 @@ export function wrapWithAsyncMiddlewares(middlewares, fn) {
49
48
  * ```
50
49
  */
51
50
  export function wrapWithSyncMiddlewares(middlewares, fn) {
52
- return middlewares.reduceRight((currentRunner, currentMiddleware) => {
53
- return currentMiddleware(currentRunner);
54
- }, fn);
51
+ return foldLayers(...middlewares)(fn);
55
52
  }
56
53
  /**
57
54
  * Composes multiple middleware with an initial runner.
@@ -75,9 +72,8 @@ export function compose(...args) {
75
72
  // Last argument is the initial runner/function
76
73
  const fn = args[args.length - 1];
77
74
  const middleware = args.slice(0, -1);
78
- // Compose middleware from right to left (onion model)
79
- const combined = middleware.reduceRight((next, mw) => mw(next), fn);
80
- return combined;
75
+ // The first middleware is the outermost one (onion model)
76
+ return foldLayers(...middleware)(fn);
81
77
  }
82
78
  /**
83
79
  * Bundles multiple middleware into a single composed middleware.
@@ -103,6 +99,6 @@ export function compose(...args) {
103
99
  * ```
104
100
  */
105
101
  export function bundle(...middleware) {
106
- return (next) => middleware.reduceRight((acc, mw) => mw(acc), next);
102
+ return foldLayers(...middleware);
107
103
  }
108
104
  //# sourceMappingURL=compose.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"compose.js","sourceRoot":"","sources":["../../src/middleware/compose.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAUH;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,wBAAwB,CAKtC,WAAyB,EACzB,EAIC;IAED,MAAM,cAAc,GAAG,WAAW,CAAC,WAAW,CAC5C,CAAC,aAAa,EAAE,iBAAiB,EAAE,EAAE;QACnC,OAAO,iBAAiB,CAAC,aAAa,CAAC,CAAC;IAC1C,CAAC,EACD,EAAE,CAC8C,CAAC;IAEnD,sEAAsE;IACtE,OAAO,KAAK,EAAE,OAAO,EAAE,EAAE;QACvB,OAAO,cAAc,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,uBAAuB,CAKrC,WAAyB,EACzB,EAIC;IAED,OAAO,WAAW,CAAC,WAAW,CAAC,CAAC,aAAa,EAAE,iBAAiB,EAAE,EAAE;QAClE,OAAO,iBAAiB,CAAC,aAAa,CAAC,CAAC;IAC1C,CAAC,EAAE,EAAE,CAAmD,CAAC;AAC3D,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,OAAO,CACrB,GAAG,IAAmD;IAEtD,+CAA+C;IAC/C,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACjC,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAwC,CAAC;IAE5E,sDAAsD;IACtD,MAAM,QAAQ,GAAG,UAAU,CAAC,WAAW,CACrC,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EACtB,EAAE,CACmC,CAAC;IAExC,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,UAAU,MAAM,CACpB,GAAG,UAA+C;IAElD,OAAO,CAAC,IAAI,EAAE,EAAE,CACd,UAAU,CAAC,WAAW,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,CAIhD,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"compose.js","sourceRoot":"","sources":["../../src/middleware/compose.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,OAAO,IAAI,UAAU,EAAc,MAAM,mCAAmC,CAAC;AAStF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,wBAAwB,CAKtC,WAAyB,EACzB,EAIC;IAED,MAAM,cAAc,GAAG,UAAU,CAAC,GAAI,WAAgC,CAAC,CAAC,EAAE,CAAkD,CAAC;IAE7H,sEAAsE;IACtE,OAAO,KAAK,EAAE,OAAO,EAAE,EAAE;QACvB,OAAO,cAAc,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,uBAAuB,CAKrC,WAAyB,EACzB,EAIC;IAED,OAAO,UAAU,CAAC,GAAI,WAAgC,CAAC,CAAC,EAAE,CAAmD,CAAC;AAChH,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,OAAO,CACrB,GAAG,IAAmD;IAEtD,+CAA+C;IAC/C,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACjC,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAwC,CAAC;IAE5E,0DAA0D;IAC1D,OAAO,UAAU,CAAC,GAAI,UAA+B,CAAC,CAAC,EAAE,CAAuC,CAAC;AACnG,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,UAAU,MAAM,CACpB,GAAG,UAA+C;IAElD,OAAO,UAAU,CAAC,GAAI,UAA+B,CAAsC,CAAC;AAC9F,CAAC"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * A caller of the procedures of some modules (`callerOf`). An app that calls the procedures of a
3
3
  * package in its own process repeats three steps: a registry of the module, `invokePath` and
4
- * `outputValue`. A caller does the three steps in one call. jarvis had four copies of them.
4
+ * `outputValue`. A caller does the three steps in one call.
5
5
  */
6
6
  import type { ProcedurePath } from "./types.js";
7
7
  import type { ProcedureRegistry } from "./registry.js";
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * A caller of the procedures of some modules (`callerOf`). An app that calls the procedures of a
3
3
  * package in its own process repeats three steps: a registry of the module, `invokePath` and
4
- * `outputValue`. A caller does the three steps in one call. jarvis had four copies of them.
4
+ * `outputValue`. A caller does the three steps in one call.
5
5
  */
6
6
  import { invokePath, outputValue } from "./invoke.js";
7
7
  import { createRegistry } from "./module.js";
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * The rules of the rows of a served collection (roadmap CLI-41). A right can depend on the
3
- * document: a `when` condition of Graph, or `accessAdmitItem()` of `@procedures/access`. The option
3
+ * document: a `when` condition of an app, or `accessAdmitItem()` of `@procedures/access`. The option
4
4
  * `admission` of `createCollectionProcedures()` gives the rules as data:
5
5
  *
6
6
  * - `admit` examines each row `{ id, value }` that a read gives. It has the shape of `AdmitItem`,
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * The rules of the rows of a served collection (roadmap CLI-41). A right can depend on the
3
- * document: a `when` condition of Graph, or `accessAdmitItem()` of `@procedures/access`. The option
3
+ * document: a `when` condition of an app, or `accessAdmitItem()` of `@procedures/access`. The option
4
4
  * `admission` of `createCollectionProcedures()` gives the rules as data:
5
5
  *
6
6
  * - `admit` examines each row `{ id, value }` that a read gives. It has the shape of `AdmitItem`,
@@ -112,13 +112,7 @@ export declare class RowHintFilter {
112
112
  private base;
113
113
  /** The filters, one at a time. */
114
114
  private tail;
115
- constructor(
116
- /** The rules of the collection from the registry of the call. */
117
- lookup: () => CollectionAdmission | null | undefined,
118
- /** The invocation of the topic (`collectionInvocation()`): the rules get it. */
119
- invocation: Invocation | undefined,
120
- /** The partition of the topic: `admitsAll` gets it. */
121
- partition: string | undefined);
115
+ constructor(lookup: () => CollectionAdmission | null | undefined, invocation: Invocation | undefined, partition: string | undefined);
122
116
  /** The mode of the filter, from the rules and from the last result of `admitsAll`. */
123
117
  get mode(): HintFilterMode;
124
118
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"hint-filter.d.ts","sourceRoot":"","sources":["../../../src/procedures/collection/hint-filter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hint-filter.d.ts","sourceRoot":"","sources":["../../../src/procedures/collection/hint-filter.ts"],"names":[],"mappings":"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"}
@@ -125,8 +125,11 @@ function ignore() { }
125
125
  * of the topic to `apply()`, one at a time, in the order of the bus.
126
126
  */
127
127
  export class RowHintFilter {
128
+ /** The rules of the collection from the registry of the call. */
128
129
  lookup;
130
+ /** The invocation of the topic (`collectionInvocation()`): the rules get it. */
129
131
  invocation;
132
+ /** The partition of the topic: `admitsAll` gets it. */
130
133
  partition;
131
134
  /** The rules from the registry: undefined when the registry does not know the collection. */
132
135
  rules;
@@ -138,13 +141,7 @@ export class RowHintFilter {
138
141
  base;
139
142
  /** The filters, one at a time. */
140
143
  tail = Promise.resolve();
141
- constructor(
142
- /** The rules of the collection from the registry of the call. */
143
- lookup,
144
- /** The invocation of the topic (`collectionInvocation()`): the rules get it. */
145
- invocation,
146
- /** The partition of the topic: `admitsAll` gets it. */
147
- partition) {
144
+ constructor(lookup, invocation, partition) {
148
145
  this.lookup = lookup;
149
146
  this.invocation = invocation;
150
147
  this.partition = partition;
@@ -1 +1 @@
1
- {"version":3,"file":"hint-filter.js","sourceRoot":"","sources":["../../../src/procedures/collection/hint-filter.ts"],"names":[],"mappings":"AA0BA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAuBhD,yCAAyC;AACzC,MAAM,MAAM,GAAkB,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;AAElE;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAmB,KAAQ,EAAE,MAAkB;IAC3E,OAAO,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;AACxG,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,YAAY,CAAC,KAAc;IACzC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IAClE,MAAM,MAAM,GAAI,KAAgC,CAAC,MAAM,CAAC,CAAC;IACzD,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,CAAC,CAAC,CAAE,MAAqB,CAAC,CAAC,CAAC,SAAS,CAAC;AAC5F,CAAC;AAED,8EAA8E;AAC9E,MAAM,KAAK,GAAkB,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;AAEtE;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,UAA0B,EAAE,SAA0C;IACxG,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAG,SAAS,CAAC,QAA8B,CAAC;QAC1D,IAAI,QAAQ;YAAE,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;IACxH,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAqB,EAAE,UAAkB;IACzE,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;IAC9B,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChC,KAAK,MAAM,SAAS,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC;QAC3C,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,EAAE,QAAqF,CAAC;QAC7J,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC;IAC5C,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAA4B,EAAE,GAAqB,EAAE,UAAkB,EAAE,SAA6B;IACzI,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACzC,MAAM,SAAS,GAAG,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,aAAa,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;IAC5E,OAAO;QACL,GAAG,IAAI;QACP,GAAG,CAAC,SAAS,KAAK,SAAS,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC;QACnE,KAAK,EAAE,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE;KACpD,CAAC;AACJ,CAAC;AAED,qHAAqH;AACrH,MAAM,QAAQ,GAAG,IAAI,OAAO,EAA+B,CAAC;AAE5D,yEAAyE;AACzE,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;AAElD,wDAAwD;AACxD,SAAS,MAAM,CAAC,GAAa;IAC3B,OAAS,GAAiC,CAAC,QAAQ,CAAwB,IAAI,GAAG,CAAC;AACrF,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAa,EAAE,KAAa;IAC5D,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IACzB,IAAI,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACnB,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC7B,CAAC;IACD,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAChD,IAAI,MAAM,GAAG,IAAI,CAAC;IAClB,OAAO,GAAG,EAAE;QACV,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,MAAM,GAAG,KAAK,CAAC;QACf,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAC3C,IAAI,KAAK,GAAG,CAAC;YAAE,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;;YACnC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC,CAAC;AACJ,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,qBAAqB,CAAC,GAAa,EAAE,KAAa;IAChE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;AAC1D,CAAC;AAED,8EAA8E;AAC9E,MAAM,CAAC,MAAM,OAAO,GAAkB,MAAM,CAAC,wBAAwB,CAAC,CAAC;AAoBvE,6FAA6F;AAC7F,SAAS,aAAa,CAAC,IAAa;IAClC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC5D,MAAM,KAAK,GAAG,IAAgD,CAAC;IAC/D,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AACtE,CAAC;AAED,4EAA4E;AAC5E,SAAS,MAAM,CAAC,KAAuB;IACrC,OAAO;QACL,GAAG,CAAC,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;QACpE,GAAG,CAAC,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;KAClE,CAAC;AACJ,CAAC;AAKD,mEAAmE;AACnE,SAAS,MAAM,KAAU,CAAC;AAE1B;;;GAGG;AACH,MAAM,OAAO,aAAa;IAcL,MAAM;IAEd,UAAU;IAEF,SAAS;IAjB5B,6FAA6F;IACrF,KAAK,CAAyC;IACtD,sDAAsD;IAC9C,GAAG,CAAmF;IAC9F,sGAAsG;IAC9F,IAAI,CAAqB;IACjC,kHAAkH;IAC1G,IAAI,CAAqB;IACjC,kCAAkC;IAC1B,IAAI,GAAqB,OAAO,CAAC,OAAO,EAAE,CAAC;IAEnD;IACE,iEAAiE;IAChD,MAAoD;IACrE,gFAAgF;IACvE,UAAkC;IAC3C,uDAAuD;IACtC,SAA6B;sBAJ7B,MAAM;0BAEd,UAAU;yBAEF,SAAS;QAE1B,IAAI,CAAC,KAAK,GAAG,MAAM,EAAE,CAAC;IACxB,CAAC;IAED,sFAAsF;IACtF,IAAI,IAAI;QACN,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,SAAS,CAAC;QAC1C,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK;YAAE,OAAO,MAAM,CAAC;QAClD,OAAO,IAAI,CAAC,GAAG,EAAE,SAAS,KAAK,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC7E,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,OAAO;QACX,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC;QACrB,IAAI,IAAI,CAAC,KAAK,EAAE,KAAK;YAAE,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxD,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,6EAA6E;IAC7E,MAAM;QACJ,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;QACtB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;IACxB,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,IAAa;QACjB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;YAAE,OAAO,SAAS,CAAC;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,IAAI,IAAI,KAAK,MAAM;YAAE,OAAO,SAAS,CAAC;QACtC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC;QAC9D,IAAI,CAAC,SAAS,EAAE,KAAK;YAAE,OAAO,SAAS,CAAC;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;QAC/D,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC9B,OAAO,GAAG,CAAC;IACb,CAAC;IAED,0EAA0E;IAClE,KAAK,CAAC,SAAS,CAAC,SAA8B;QACpD,IAAI,IAAI,CAAC,GAAG,EAAE,SAAS,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;QAC7D,IAAI,KAAK,GAAG,KAAK,CAAC;QAClB,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACnC,IAAI,SAAS,CAAC,SAAS,IAAI,UAAU,EAAE,CAAC;YACtC,IAAI,CAAC;gBACH,KAAK,GAAG,CAAC,MAAM,SAAS,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,IAAI,CAAC;YAC3E,CAAC;YAAC,MAAM,CAAC;gBACP,KAAK,GAAG,KAAK,CAAC;YAChB,CAAC;QACH,CAAC;QACD,IAAI,CAAC,GAAG,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;QAChC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,yDAAyD;IACjD,KAAK,CAAC,MAAM,CAAC,KAAuB,EAAE,SAA8B;QAC1E,sEAAsE;QACtE,IAAI,MAAM,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;YAAE,OAAO,KAAK,CAAC;QAClD,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;YACzB,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,OAAO,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QACrE,CAAC;QACD,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QACxE,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7D,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,yEAAyE;gBACzE,IAAI,CAAC,MAAM,EAAE,CAAC;gBACd,OAAO,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;YACxD,CAAC;YACD,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACjC,CAAC;QACD,MAAM,KAAK,GAAG,SAAS,CAAC,KAAM,CAAC;QAC/B,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACnC,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG,KAAK,EAAE,EAAU,EAAE,KAA+B,EAAoB,EAAE;YACtF,IAAI,KAAK,KAAK,SAAS;gBAAE,OAAO,SAAS,CAAC;YAC1C,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,UAAU,KAAK,SAAS;gBAAE,OAAO,KAAK,CAAC;YAC3D,IAAI,CAAC;gBACH,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,EAAE,UAAU,CAAC,CAAC,KAAK,IAAI,CAAC;YACxE,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC,CAAC;QACF,MAAM,MAAM,GAAG,CAAC,EAAU,EAAoB,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QACtF,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,EAAuD,EAAE;YAClF,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YACtD,IAAI,GAAG,KAAK,IAAI;gBAAE,OAAO,SAAS,CAAC;YACnC,IAAI,GAAG,KAAK,SAAS;gBAAE,OAAO,SAAS,CAAC;YACxC,kFAAkF;YAClF,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,EAAE,CAAC,CAAC;YAC7B,OAAO,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;QAClE,CAAC,CAAC,CACH,CAAC;QACF,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;QAC7D,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAC/D,kGAAkG;YAClG,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,OAAO,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;QACxD,CAAC;QACD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,SAAS,CAAC,CAAC;QACjF,MAAM,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,SAAS,CAAC,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;QACnJ,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9C,IAAI,KAAK,KAAK,SAAS;gBAAE,OAAO,OAAO,CAAC;YACxC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACjC,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;QAC9B,MAAM,OAAO,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QAC1F,IAAI,KAAK,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC7D,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC;YAC1B,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,CAAC;QACD,MAAM,GAAG,GAAG;YACV,GAAG,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;YAChD,GAAG,CAAC,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;YACpE,OAAO,EAAE,OAAO;YAChB,OAAO,EAAE,IAAI;YACb,GAAG,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YACpF,GAAG,CAAC,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;SAClE,CAAC;QACF,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,OAAO,GAAG,CAAC;QAC9B,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAC7D,4EAA4E;QAC5E,OAAO,QAAQ,CACb,EAAE,GAAG,GAAG,EAAE,MAAM,EAAE,EAClB;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,CAAC,QAAQ,EAAE,EAAE;gBACjB,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;gBACnF,OAAO,EAAE,GAAG,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;YACpH,CAAC;SACF,CACF,CAAC;IACJ,CAAC;IAED,gHAAgH;IACxG,IAAI,CAAC,KAAa,EAAE,KAAuB;QACjD,MAAM,OAAO,GAAG,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QACxD,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC/D,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC;YAC1B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;CACF"}
1
+ {"version":3,"file":"hint-filter.js","sourceRoot":"","sources":["../../../src/procedures/collection/hint-filter.ts"],"names":[],"mappings":"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"}
@@ -54,7 +54,7 @@ export declare function meetExpose(first: ((path: ProcedurePath) => boolean) | u
54
54
  *
55
55
  * @example
56
56
  * ```typescript
57
- * const rules = faceRules({ narrowing: { effects: { writes: [] } }, expose: ["graphapi.*"] }, policy, "read");
57
+ * const rules = faceRules({ narrowing: { effects: { writes: [] } }, expose: ["api.*"] }, policy, "read");
58
58
  * const handler = { ...inner, handle: (request) => inner.handle(rules.apply(request)) };
59
59
  * ```
60
60
  */
@@ -38,7 +38,7 @@ function exposeRule(expose) {
38
38
  *
39
39
  * @example
40
40
  * ```typescript
41
- * const rules = faceRules({ narrowing: { effects: { writes: [] } }, expose: ["graphapi.*"] }, policy, "read");
41
+ * const rules = faceRules({ narrowing: { effects: { writes: [] } }, expose: ["api.*"] }, policy, "read");
42
42
  * const handler = { ...inner, handle: (request) => inner.handle(rules.apply(request)) };
43
43
  * ```
44
44
  */
@@ -111,7 +111,8 @@ export interface ProcedureServerOptions extends ServerOptions {
111
111
  * the server answers `UNAUTHORIZED`. Only a local request (`LOCAL_CREDENTIALS`) skips it. The
112
112
  * server refuses a request without credentials (CLI-1). Before, only the Express middleware of
113
113
  * the peer examined the token, so a `ProcedureServer` with the HTTP or WebSocket transport of the
114
- * core and the token of a host policy accepted each request.
114
+ * core and the token of a host policy accepted each request. An empty token means "refuse each
115
+ * network request": no presented token matches it, not even an empty one.
115
116
  */
116
117
  token?: string | undefined;
117
118
  /**
@@ -191,10 +192,11 @@ export interface RegisterProcedureOptions {
191
192
  alwaysOn?: boolean | undefined;
192
193
  }
193
194
  /**
194
- * True when the presented token is the expected one. The comparison reads each character of the
195
- * expected token for each presented token, so its time depends only on the expected token. The
196
- * time tells neither the token nor its length. The function runs in a browser too, so it uses
197
- * no `node:crypto`.
195
+ * True when the presented token is the expected one. An empty expected token matches nothing, not
196
+ * even an empty presented token, so a server with an empty token refuses each network request.
197
+ * The comparison reads each character of the presented token one time, so its time depends only
198
+ * on what the caller sent. The time tells neither the expected token nor its length. The function
199
+ * runs in a browser too, so it uses no `node:crypto`.
198
200
  */
199
201
  export declare function tokenMatches(expected: string, presented: string | undefined): boolean;
200
202
  /** The options of `ProcedureServer.stop()`. */
@@ -1 +1 @@
1
- {"version":3,"file":"procedure-server.d.ts","sourceRoot":"","sources":["../../src/server/procedure-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"procedure-server.d.ts","sourceRoot":"","sources":["../../src/server/procedure-server.ts"],"names":[],"mappings":"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"}
@@ -26,18 +26,20 @@ import { callLimiter, limitedCall, rateLimitedResponse } from "./limits.js";
26
26
  import { writeLog } from "../logger.js";
27
27
  import { meetExpose } from "./face-rules.js";
28
28
  /**
29
- * True when the presented token is the expected one. The comparison reads each character of the
30
- * expected token for each presented token, so its time depends only on the expected token. The
31
- * time tells neither the token nor its length. The function runs in a browser too, so it uses
32
- * no `node:crypto`.
29
+ * True when the presented token is the expected one. An empty expected token matches nothing, not
30
+ * even an empty presented token, so a server with an empty token refuses each network request.
31
+ * The comparison reads each character of the presented token one time, so its time depends only
32
+ * on what the caller sent. The time tells neither the expected token nor its length. The function
33
+ * runs in a browser too, so it uses no `node:crypto`.
33
34
  */
34
35
  export function tokenMatches(expected, presented) {
35
36
  if (presented === undefined)
36
37
  return false;
37
- // A difference of the lengths makes the result false, after the same loop as an equal length
38
- let difference = expected.length ^ presented.length;
39
- for (let index = 0; index < expected.length; index++)
40
- difference |= expected.charCodeAt(index) ^ (presented.charCodeAt(index) | 0);
38
+ // An empty expected token and a difference of the lengths make the result false, after the same
39
+ // loop as an equal length. The modulo reuses the expected characters for a longer token.
40
+ let difference = (expected.length === 0 ? 1 : 0) | (expected.length ^ presented.length);
41
+ for (let index = 0; index < presented.length; index++)
42
+ difference |= presented.charCodeAt(index) ^ expected.charCodeAt(index % expected.length);
41
43
  return difference === 0;
42
44
  }
43
45
  /**