@procedures/client 0.8.1 → 0.9.1

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 (129) hide show
  1. package/CHANGELOG.md +60 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/adapters/http/server/addressing.d.ts +78 -0
  4. package/dist/adapters/http/server/addressing.d.ts.map +1 -0
  5. package/dist/adapters/http/server/addressing.js +62 -0
  6. package/dist/adapters/http/server/addressing.js.map +1 -0
  7. package/dist/adapters/http/server/cors.d.ts.map +1 -1
  8. package/dist/adapters/http/server/cors.js +3 -0
  9. package/dist/adapters/http/server/cors.js.map +1 -1
  10. package/dist/adapters/http/server/handler.d.ts +9 -1
  11. package/dist/adapters/http/server/handler.d.ts.map +1 -1
  12. package/dist/adapters/http/server/handler.js +49 -23
  13. package/dist/adapters/http/server/handler.js.map +1 -1
  14. package/dist/adapters/http/server/strategies.d.ts +1 -0
  15. package/dist/adapters/http/server/strategies.d.ts.map +1 -1
  16. package/dist/adapters/http/server/strategies.js +6 -0
  17. package/dist/adapters/http/server/strategies.js.map +1 -1
  18. package/dist/adapters/http/server/transport.d.ts.map +1 -1
  19. package/dist/adapters/http/server/transport.js +7 -2
  20. package/dist/adapters/http/server/transport.js.map +1 -1
  21. package/dist/adapters/http/server/types.d.ts +7 -0
  22. package/dist/adapters/http/server/types.d.ts.map +1 -1
  23. package/dist/adapters/http/shared/strategies.d.ts +7 -0
  24. package/dist/adapters/http/shared/strategies.d.ts.map +1 -1
  25. package/dist/adapters/http/shared/strategies.js +26 -7
  26. package/dist/adapters/http/shared/strategies.js.map +1 -1
  27. package/dist/adapters/local/client/types.d.ts.map +1 -1
  28. package/dist/adapters/local/client/types.js +3 -1
  29. package/dist/adapters/local/client/types.js.map +1 -1
  30. package/dist/adapters/websocket/client/transport.d.ts.map +1 -1
  31. package/dist/adapters/websocket/client/transport.js +4 -12
  32. package/dist/adapters/websocket/client/transport.js.map +1 -1
  33. package/dist/browser.d.ts +6 -3
  34. package/dist/browser.d.ts.map +1 -1
  35. package/dist/browser.js +5 -1
  36. package/dist/browser.js.map +1 -1
  37. package/dist/client/client.d.ts +6 -0
  38. package/dist/client/client.d.ts.map +1 -1
  39. package/dist/client/client.js +3 -1
  40. package/dist/client/client.js.map +1 -1
  41. package/dist/client/errors/factory.d.ts.map +1 -1
  42. package/dist/client/errors/factory.js +2 -3
  43. package/dist/client/errors/factory.js.map +1 -1
  44. package/dist/client/middleware/cache.d.ts.map +1 -1
  45. package/dist/client/middleware/cache.js +2 -1
  46. package/dist/client/middleware/cache.js.map +1 -1
  47. package/dist/events/publisher.d.ts +25 -2
  48. package/dist/events/publisher.d.ts.map +1 -1
  49. package/dist/events/publisher.js +42 -9
  50. package/dist/events/publisher.js.map +1 -1
  51. package/dist/node.d.ts +6 -0
  52. package/dist/node.d.ts.map +1 -1
  53. package/dist/node.js +6 -0
  54. package/dist/node.js.map +1 -1
  55. package/dist/procedures/collection/changes.d.ts +3 -3
  56. package/dist/procedures/collection/changes.d.ts.map +1 -1
  57. package/dist/procedures/collection/changes.js +4 -4
  58. package/dist/procedures/collection/changes.js.map +1 -1
  59. package/dist/procedures/collection/index.d.ts +2 -0
  60. package/dist/procedures/collection/index.d.ts.map +1 -1
  61. package/dist/procedures/collection/index.js +2 -0
  62. package/dist/procedures/collection/index.js.map +1 -1
  63. package/dist/procedures/collection/partition.d.ts +86 -0
  64. package/dist/procedures/collection/partition.d.ts.map +1 -0
  65. package/dist/procedures/collection/partition.js +100 -0
  66. package/dist/procedures/collection/partition.js.map +1 -0
  67. package/dist/procedures/collection/procedures.d.ts +4 -4
  68. package/dist/procedures/collection/procedures.d.ts.map +1 -1
  69. package/dist/procedures/collection/procedures.js +55 -55
  70. package/dist/procedures/collection/procedures.js.map +1 -1
  71. package/dist/procedures/index.d.ts +4 -2
  72. package/dist/procedures/index.d.ts.map +1 -1
  73. package/dist/procedures/index.js +3 -1
  74. package/dist/procedures/index.js.map +1 -1
  75. package/dist/procedures/invoke.d.ts +17 -2
  76. package/dist/procedures/invoke.d.ts.map +1 -1
  77. package/dist/procedures/invoke.js +30 -1
  78. package/dist/procedures/invoke.js.map +1 -1
  79. package/dist/procedures/narrowing.d.ts +93 -0
  80. package/dist/procedures/narrowing.d.ts.map +1 -0
  81. package/dist/procedures/narrowing.js +328 -0
  82. package/dist/procedures/narrowing.js.map +1 -0
  83. package/dist/procedures/types.d.ts +19 -0
  84. package/dist/procedures/types.d.ts.map +1 -1
  85. package/dist/procedures/types.js.map +1 -1
  86. package/dist/server/index.d.ts +2 -2
  87. package/dist/server/index.d.ts.map +1 -1
  88. package/dist/server/index.js +1 -1
  89. package/dist/server/index.js.map +1 -1
  90. package/dist/server/method.d.ts +8 -2
  91. package/dist/server/method.d.ts.map +1 -1
  92. package/dist/server/method.js +16 -5
  93. package/dist/server/method.js.map +1 -1
  94. package/dist/server/procedure-server.d.ts +47 -1
  95. package/dist/server/procedure-server.d.ts.map +1 -1
  96. package/dist/server/procedure-server.js +89 -12
  97. package/dist/server/procedure-server.js.map +1 -1
  98. package/dist/server/types.d.ts +16 -0
  99. package/dist/server/types.d.ts.map +1 -1
  100. package/dist/server/types.js +2 -1
  101. package/dist/server/types.js.map +1 -1
  102. package/package.json +3 -3
  103. package/src/adapters/http/server/addressing.ts +118 -0
  104. package/src/adapters/http/server/cors.ts +3 -0
  105. package/src/adapters/http/server/handler.ts +57 -23
  106. package/src/adapters/http/server/strategies.ts +7 -0
  107. package/src/adapters/http/server/transport.ts +8 -3
  108. package/src/adapters/http/server/types.ts +8 -0
  109. package/src/adapters/http/shared/strategies.ts +25 -7
  110. package/src/adapters/local/client/types.ts +3 -1
  111. package/src/adapters/websocket/client/transport.ts +4 -12
  112. package/src/browser.ts +12 -1
  113. package/src/client/client.ts +8 -1
  114. package/src/client/errors/factory.ts +2 -3
  115. package/src/client/middleware/cache.ts +2 -1
  116. package/src/events/publisher.ts +50 -11
  117. package/src/node.ts +7 -0
  118. package/src/procedures/collection/changes.ts +4 -4
  119. package/src/procedures/collection/index.ts +4 -0
  120. package/src/procedures/collection/partition.ts +145 -0
  121. package/src/procedures/collection/procedures.ts +72 -73
  122. package/src/procedures/index.ts +9 -0
  123. package/src/procedures/invoke.ts +42 -2
  124. package/src/procedures/narrowing.ts +357 -0
  125. package/src/procedures/types.ts +23 -0
  126. package/src/server/index.ts +2 -1
  127. package/src/server/method.ts +17 -5
  128. package/src/server/procedure-server.ts +106 -13
  129. package/src/server/types.ts +19 -1
@@ -9,6 +9,7 @@ import type { Elicit } from "../procedures/elicit.js";
9
9
  import type { ReportProgress } from "../procedures/progress.js";
10
10
  import type { Metadata, Status, Method } from "../client/types.js";
11
11
  import type { CapabilityRequest } from "../procedures/types.js";
12
+ import { methodName } from "./method.js";
12
13
 
13
14
  // Re-export Method from client types
14
15
  export type { Method };
@@ -120,6 +121,23 @@ export interface Principal {
120
121
  readonly claims?: Readonly<Record<string, unknown>> | undefined;
121
122
  }
122
123
 
124
+ /** A report of the server for debug (the option `debug` of `ProcedureServer`). */
125
+ export interface ServerDebugReport {
126
+ /**
127
+ * The subject of the report. `"narrowing"`: a part of the narrowing key of a call has no effect
128
+ * (CLI-30). A later version can add subjects.
129
+ */
130
+ readonly topic: string;
131
+ /** The id of the request. */
132
+ readonly requestId: string;
133
+ /** The method of the request. */
134
+ readonly method: Method;
135
+ /** What occurred, as a sentence. */
136
+ readonly message: string;
137
+ /** The facts of the report. For `"narrowing"`: the `field`, the `kind` and the `code` of its note (`NarrowingNote`). */
138
+ readonly detail?: Readonly<Record<string, unknown>> | undefined;
139
+ }
140
+
123
141
  /**
124
142
  * The contract of a server transport (roadmap R18): a transport turns each protocol request
125
143
  * into a `ServerRequest` (with its signal and its credentials), gives it to `handle()`, and turns
@@ -238,7 +256,7 @@ export interface ServerTransport {
238
256
  export class HandlerNotFoundError extends Error {
239
257
  constructor(method: Method) {
240
258
  super(
241
- `No handler found for ${method.service}.${method.operation}${
259
+ `No handler found for ${methodName(method)}${
242
260
  method.version ? ` (v${method.version})` : ""
243
261
  }`
244
262
  );