ts-procedures 5.13.0 → 5.15.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 (249) hide show
  1. package/agent_config/claude-code/agents/ts-procedures-architect.md +0 -1
  2. package/agent_config/claude-code/skills/ts-procedures/anti-patterns.md +0 -25
  3. package/agent_config/claude-code/skills/ts-procedures/api-reference.md +26 -4
  4. package/agent_config/claude-code/skills/ts-procedures/patterns.md +2 -1
  5. package/agent_config/claude-code/skills/ts-procedures-scaffold/templates/client.md +3 -0
  6. package/agent_config/claude-code/skills/ts-procedures-scaffold/templates/hono-api.md +1 -1
  7. package/agent_config/copilot/copilot-instructions.md +2 -2
  8. package/agent_config/cursor/cursorrules +2 -2
  9. package/build/codegen/bin/cli.d.ts +2 -0
  10. package/build/codegen/bin/cli.js +11 -0
  11. package/build/codegen/bin/cli.js.map +1 -1
  12. package/build/codegen/bin/cli.test.js +30 -0
  13. package/build/codegen/bin/cli.test.js.map +1 -1
  14. package/build/codegen/index.d.ts +1 -0
  15. package/build/codegen/index.js +1 -0
  16. package/build/codegen/index.js.map +1 -1
  17. package/build/codegen/pipeline.d.ts +1 -0
  18. package/build/codegen/pipeline.js +8 -2
  19. package/build/codegen/pipeline.js.map +1 -1
  20. package/build/codegen/pipeline.test.js +34 -1
  21. package/build/codegen/pipeline.test.js.map +1 -1
  22. package/build/implementations/http/hono-api/index.d.ts +15 -3
  23. package/build/implementations/http/hono-api/index.js +3 -32
  24. package/build/implementations/http/hono-api/index.js.map +1 -1
  25. package/build/implementations/http/hono-api/index.test.js +6 -6
  26. package/build/implementations/http/hono-api/index.test.js.map +1 -1
  27. package/docs/client-and-codegen.md +2 -0
  28. package/package.json +2 -3
  29. package/src/codegen/bin/cli.test.ts +35 -0
  30. package/src/codegen/bin/cli.ts +11 -0
  31. package/src/codegen/index.ts +2 -0
  32. package/src/codegen/pipeline.test.ts +46 -1
  33. package/src/codegen/pipeline.ts +9 -2
  34. package/src/implementations/http/README.md +2 -0
  35. package/src/implementations/http/hono-api/index.test.ts +6 -6
  36. package/src/implementations/http/hono-api/index.ts +17 -36
  37. package/build/src/client/call.d.ts +0 -14
  38. package/build/src/client/call.js +0 -47
  39. package/build/src/client/call.js.map +0 -1
  40. package/build/src/client/call.test.d.ts +0 -1
  41. package/build/src/client/call.test.js +0 -124
  42. package/build/src/client/call.test.js.map +0 -1
  43. package/build/src/client/errors.d.ts +0 -25
  44. package/build/src/client/errors.js +0 -33
  45. package/build/src/client/errors.js.map +0 -1
  46. package/build/src/client/errors.test.d.ts +0 -1
  47. package/build/src/client/errors.test.js +0 -41
  48. package/build/src/client/errors.test.js.map +0 -1
  49. package/build/src/client/fetch-adapter.d.ts +0 -12
  50. package/build/src/client/fetch-adapter.js +0 -156
  51. package/build/src/client/fetch-adapter.js.map +0 -1
  52. package/build/src/client/fetch-adapter.test.d.ts +0 -1
  53. package/build/src/client/fetch-adapter.test.js +0 -271
  54. package/build/src/client/fetch-adapter.test.js.map +0 -1
  55. package/build/src/client/hooks.d.ts +0 -17
  56. package/build/src/client/hooks.js +0 -40
  57. package/build/src/client/hooks.js.map +0 -1
  58. package/build/src/client/hooks.test.d.ts +0 -1
  59. package/build/src/client/hooks.test.js +0 -163
  60. package/build/src/client/hooks.test.js.map +0 -1
  61. package/build/src/client/index.d.ts +0 -22
  62. package/build/src/client/index.js +0 -67
  63. package/build/src/client/index.js.map +0 -1
  64. package/build/src/client/index.test.d.ts +0 -1
  65. package/build/src/client/index.test.js +0 -231
  66. package/build/src/client/index.test.js.map +0 -1
  67. package/build/src/client/request-builder.d.ts +0 -13
  68. package/build/src/client/request-builder.js +0 -53
  69. package/build/src/client/request-builder.js.map +0 -1
  70. package/build/src/client/request-builder.test.d.ts +0 -1
  71. package/build/src/client/request-builder.test.js +0 -160
  72. package/build/src/client/request-builder.test.js.map +0 -1
  73. package/build/src/client/stream.d.ts +0 -27
  74. package/build/src/client/stream.js +0 -118
  75. package/build/src/client/stream.js.map +0 -1
  76. package/build/src/client/stream.test.d.ts +0 -1
  77. package/build/src/client/stream.test.js +0 -228
  78. package/build/src/client/stream.test.js.map +0 -1
  79. package/build/src/client/types.d.ts +0 -78
  80. package/build/src/client/types.js +0 -3
  81. package/build/src/client/types.js.map +0 -1
  82. package/build/src/codegen/bin/cli.d.ts +0 -45
  83. package/build/src/codegen/bin/cli.js +0 -246
  84. package/build/src/codegen/bin/cli.js.map +0 -1
  85. package/build/src/codegen/bin/cli.test.d.ts +0 -1
  86. package/build/src/codegen/bin/cli.test.js +0 -220
  87. package/build/src/codegen/bin/cli.test.js.map +0 -1
  88. package/build/src/codegen/constants.d.ts +0 -1
  89. package/build/src/codegen/constants.js +0 -2
  90. package/build/src/codegen/constants.js.map +0 -1
  91. package/build/src/codegen/e2e.test.d.ts +0 -1
  92. package/build/src/codegen/e2e.test.js +0 -464
  93. package/build/src/codegen/e2e.test.js.map +0 -1
  94. package/build/src/codegen/emit-client-runtime.d.ts +0 -9
  95. package/build/src/codegen/emit-client-runtime.js +0 -99
  96. package/build/src/codegen/emit-client-runtime.js.map +0 -1
  97. package/build/src/codegen/emit-client-runtime.test.d.ts +0 -1
  98. package/build/src/codegen/emit-client-runtime.test.js +0 -78
  99. package/build/src/codegen/emit-client-runtime.test.js.map +0 -1
  100. package/build/src/codegen/emit-client-types.d.ts +0 -8
  101. package/build/src/codegen/emit-client-types.js +0 -25
  102. package/build/src/codegen/emit-client-types.js.map +0 -1
  103. package/build/src/codegen/emit-client-types.test.d.ts +0 -1
  104. package/build/src/codegen/emit-client-types.test.js +0 -33
  105. package/build/src/codegen/emit-client-types.test.js.map +0 -1
  106. package/build/src/codegen/emit-errors.d.ts +0 -19
  107. package/build/src/codegen/emit-errors.js +0 -59
  108. package/build/src/codegen/emit-errors.js.map +0 -1
  109. package/build/src/codegen/emit-errors.test.d.ts +0 -1
  110. package/build/src/codegen/emit-errors.test.js +0 -175
  111. package/build/src/codegen/emit-errors.test.js.map +0 -1
  112. package/build/src/codegen/emit-index.d.ts +0 -12
  113. package/build/src/codegen/emit-index.js +0 -41
  114. package/build/src/codegen/emit-index.js.map +0 -1
  115. package/build/src/codegen/emit-index.test.d.ts +0 -1
  116. package/build/src/codegen/emit-index.test.js +0 -106
  117. package/build/src/codegen/emit-index.test.js.map +0 -1
  118. package/build/src/codegen/emit-scope.d.ts +0 -15
  119. package/build/src/codegen/emit-scope.js +0 -299
  120. package/build/src/codegen/emit-scope.js.map +0 -1
  121. package/build/src/codegen/emit-scope.test.d.ts +0 -1
  122. package/build/src/codegen/emit-scope.test.js +0 -559
  123. package/build/src/codegen/emit-scope.test.js.map +0 -1
  124. package/build/src/codegen/emit-types.d.ts +0 -43
  125. package/build/src/codegen/emit-types.js +0 -111
  126. package/build/src/codegen/emit-types.js.map +0 -1
  127. package/build/src/codegen/emit-types.test.d.ts +0 -1
  128. package/build/src/codegen/emit-types.test.js +0 -184
  129. package/build/src/codegen/emit-types.test.js.map +0 -1
  130. package/build/src/codegen/group-routes.d.ts +0 -23
  131. package/build/src/codegen/group-routes.js +0 -46
  132. package/build/src/codegen/group-routes.js.map +0 -1
  133. package/build/src/codegen/group-routes.test.d.ts +0 -1
  134. package/build/src/codegen/group-routes.test.js +0 -131
  135. package/build/src/codegen/group-routes.test.js.map +0 -1
  136. package/build/src/codegen/index.d.ts +0 -15
  137. package/build/src/codegen/index.js +0 -16
  138. package/build/src/codegen/index.js.map +0 -1
  139. package/build/src/codegen/naming.d.ts +0 -7
  140. package/build/src/codegen/naming.js +0 -21
  141. package/build/src/codegen/naming.js.map +0 -1
  142. package/build/src/codegen/naming.test.d.ts +0 -1
  143. package/build/src/codegen/naming.test.js +0 -40
  144. package/build/src/codegen/naming.test.js.map +0 -1
  145. package/build/src/codegen/pipeline.d.ts +0 -17
  146. package/build/src/codegen/pipeline.js +0 -78
  147. package/build/src/codegen/pipeline.js.map +0 -1
  148. package/build/src/codegen/pipeline.test.d.ts +0 -1
  149. package/build/src/codegen/pipeline.test.js +0 -269
  150. package/build/src/codegen/pipeline.test.js.map +0 -1
  151. package/build/src/codegen/resolve-envelope.d.ts +0 -7
  152. package/build/src/codegen/resolve-envelope.js +0 -46
  153. package/build/src/codegen/resolve-envelope.js.map +0 -1
  154. package/build/src/codegen/resolve-envelope.test.d.ts +0 -1
  155. package/build/src/codegen/resolve-envelope.test.js +0 -69
  156. package/build/src/codegen/resolve-envelope.test.js.map +0 -1
  157. package/build/src/errors.d.ts +0 -33
  158. package/build/src/errors.js +0 -91
  159. package/build/src/errors.js.map +0 -1
  160. package/build/src/errors.test.d.ts +0 -1
  161. package/build/src/errors.test.js +0 -122
  162. package/build/src/errors.test.js.map +0 -1
  163. package/build/src/exports.d.ts +0 -7
  164. package/build/src/exports.js +0 -8
  165. package/build/src/exports.js.map +0 -1
  166. package/build/src/implementations/http/doc-registry.d.ts +0 -12
  167. package/build/src/implementations/http/doc-registry.js +0 -114
  168. package/build/src/implementations/http/doc-registry.js.map +0 -1
  169. package/build/src/implementations/http/doc-registry.test.d.ts +0 -1
  170. package/build/src/implementations/http/doc-registry.test.js +0 -347
  171. package/build/src/implementations/http/doc-registry.test.js.map +0 -1
  172. package/build/src/implementations/http/express-rpc/index.d.ts +0 -94
  173. package/build/src/implementations/http/express-rpc/index.js +0 -185
  174. package/build/src/implementations/http/express-rpc/index.js.map +0 -1
  175. package/build/src/implementations/http/express-rpc/index.test.d.ts +0 -1
  176. package/build/src/implementations/http/express-rpc/index.test.js +0 -684
  177. package/build/src/implementations/http/express-rpc/index.test.js.map +0 -1
  178. package/build/src/implementations/http/express-rpc/types.d.ts +0 -11
  179. package/build/src/implementations/http/express-rpc/types.js +0 -2
  180. package/build/src/implementations/http/express-rpc/types.js.map +0 -1
  181. package/build/src/implementations/http/hono-api/index.d.ts +0 -102
  182. package/build/src/implementations/http/hono-api/index.js +0 -341
  183. package/build/src/implementations/http/hono-api/index.js.map +0 -1
  184. package/build/src/implementations/http/hono-api/index.test.d.ts +0 -1
  185. package/build/src/implementations/http/hono-api/index.test.js +0 -992
  186. package/build/src/implementations/http/hono-api/index.test.js.map +0 -1
  187. package/build/src/implementations/http/hono-api/types.d.ts +0 -13
  188. package/build/src/implementations/http/hono-api/types.js +0 -2
  189. package/build/src/implementations/http/hono-api/types.js.map +0 -1
  190. package/build/src/implementations/http/hono-rpc/index.d.ts +0 -92
  191. package/build/src/implementations/http/hono-rpc/index.js +0 -161
  192. package/build/src/implementations/http/hono-rpc/index.js.map +0 -1
  193. package/build/src/implementations/http/hono-rpc/index.test.d.ts +0 -1
  194. package/build/src/implementations/http/hono-rpc/index.test.js +0 -803
  195. package/build/src/implementations/http/hono-rpc/index.test.js.map +0 -1
  196. package/build/src/implementations/http/hono-rpc/types.d.ts +0 -11
  197. package/build/src/implementations/http/hono-rpc/types.js +0 -2
  198. package/build/src/implementations/http/hono-rpc/types.js.map +0 -1
  199. package/build/src/implementations/http/hono-stream/index.d.ts +0 -120
  200. package/build/src/implementations/http/hono-stream/index.js +0 -309
  201. package/build/src/implementations/http/hono-stream/index.js.map +0 -1
  202. package/build/src/implementations/http/hono-stream/index.test.d.ts +0 -1
  203. package/build/src/implementations/http/hono-stream/index.test.js +0 -1356
  204. package/build/src/implementations/http/hono-stream/index.test.js.map +0 -1
  205. package/build/src/implementations/http/hono-stream/types.d.ts +0 -15
  206. package/build/src/implementations/http/hono-stream/types.js +0 -2
  207. package/build/src/implementations/http/hono-stream/types.js.map +0 -1
  208. package/build/src/implementations/types.d.ts +0 -142
  209. package/build/src/implementations/types.js +0 -2
  210. package/build/src/implementations/types.js.map +0 -1
  211. package/build/src/index.d.ts +0 -165
  212. package/build/src/index.js +0 -253
  213. package/build/src/index.js.map +0 -1
  214. package/build/src/index.test.d.ts +0 -1
  215. package/build/src/index.test.js +0 -890
  216. package/build/src/index.test.js.map +0 -1
  217. package/build/src/schema/compute-schema.d.ts +0 -35
  218. package/build/src/schema/compute-schema.js +0 -41
  219. package/build/src/schema/compute-schema.js.map +0 -1
  220. package/build/src/schema/compute-schema.test.d.ts +0 -1
  221. package/build/src/schema/compute-schema.test.js +0 -107
  222. package/build/src/schema/compute-schema.test.js.map +0 -1
  223. package/build/src/schema/extract-json-schema.d.ts +0 -2
  224. package/build/src/schema/extract-json-schema.js +0 -12
  225. package/build/src/schema/extract-json-schema.js.map +0 -1
  226. package/build/src/schema/extract-json-schema.test.d.ts +0 -1
  227. package/build/src/schema/extract-json-schema.test.js +0 -23
  228. package/build/src/schema/extract-json-schema.test.js.map +0 -1
  229. package/build/src/schema/parser.d.ts +0 -28
  230. package/build/src/schema/parser.js +0 -170
  231. package/build/src/schema/parser.js.map +0 -1
  232. package/build/src/schema/parser.test.d.ts +0 -1
  233. package/build/src/schema/parser.test.js +0 -120
  234. package/build/src/schema/parser.test.js.map +0 -1
  235. package/build/src/schema/resolve-schema-lib.d.ts +0 -12
  236. package/build/src/schema/resolve-schema-lib.js +0 -11
  237. package/build/src/schema/resolve-schema-lib.js.map +0 -1
  238. package/build/src/schema/resolve-schema-lib.test.d.ts +0 -1
  239. package/build/src/schema/resolve-schema-lib.test.js +0 -17
  240. package/build/src/schema/resolve-schema-lib.test.js.map +0 -1
  241. package/build/src/schema/types.d.ts +0 -8
  242. package/build/src/schema/types.js +0 -2
  243. package/build/src/schema/types.js.map +0 -1
  244. package/build/src/stack-utils.d.ts +0 -25
  245. package/build/src/stack-utils.js +0 -95
  246. package/build/src/stack-utils.js.map +0 -1
  247. package/build/src/stack-utils.test.d.ts +0 -1
  248. package/build/src/stack-utils.test.js +0 -80
  249. package/build/src/stack-utils.test.js.map +0 -1
@@ -1,253 +0,0 @@
1
- import { ProcedureError, ProcedureValidationError, ProcedureYieldValidationError, } from './errors.js';
2
- import { computeSchema } from './schema/compute-schema.js';
3
- import { captureDefinitionInfo } from './stack-utils.js';
4
- export function Procedures(
5
- /**
6
- * Optionally provided builder to register Procedures
7
- */
8
- builder) {
9
- const procedures = new Map();
10
- function Create(name, config, handler) {
11
- // Capture definition location as first action
12
- const definitionInfo = captureDefinitionInfo();
13
- // BEFORE computeSchema - fail fast on duplicate
14
- if (procedures.has(name)) {
15
- throw new Error(`Procedure with name ${name} is already registered`);
16
- }
17
- const { jsonSchema, validations } = computeSchema(name, config.schema, definitionInfo);
18
- // Create error factory once at registration time (outside handler)
19
- const errorFactory = (message, meta) => {
20
- return new ProcedureError(name, message, meta, definitionInfo);
21
- };
22
- const registeredProcedure = {
23
- name,
24
- config: {
25
- // ctx: config.hook, ??? why was this here
26
- ...config,
27
- description: config.description,
28
- schema: jsonSchema,
29
- validation: {
30
- params: validations.params,
31
- ...(validations.input && { input: validations.input }),
32
- },
33
- },
34
- handler: async (ctx, params) => {
35
- try {
36
- // Skip validation if caller has already validated (e.g., HonoStreamAppBuilder)
37
- const isPrevalidated = ctx.isPrevalidated;
38
- if (validations?.params && !isPrevalidated) {
39
- const { errors } = validations.params(params);
40
- if (errors) {
41
- throw new ProcedureValidationError(name, `Validation error for ${name}`, errors, definitionInfo);
42
- }
43
- }
44
- // Validate each input channel independently for better error messages.
45
- // Double validation (per-channel + merged) is intentional for developer experience;
46
- // the cost is negligible — revisit if validation becomes a performance bottleneck.
47
- if (validations?.input && !isPrevalidated) {
48
- for (const [channel, validator] of Object.entries(validations.input)) {
49
- const channelValue = params?.[channel];
50
- const { errors } = validator(channelValue);
51
- if (errors) {
52
- throw new ProcedureValidationError(name, `Validation error for ${name} in input.${channel}`, errors, definitionInfo);
53
- }
54
- }
55
- }
56
- const localCtx = {
57
- error: errorFactory, // Reuse pre-created factory
58
- };
59
- // params is correctly typed at the public API boundary via conditional type;
60
- // cast here because TS cannot narrow conditional generics inside implementations
61
- return await handler({
62
- ...ctx,
63
- ...localCtx,
64
- }, params);
65
- }
66
- catch (error) {
67
- if (error instanceof ProcedureError) {
68
- throw error;
69
- }
70
- else {
71
- const err = new ProcedureError(name, `Error in handler for ${name} - ${error?.message}`, undefined, definitionInfo);
72
- err.cause = error; // Preserve original error
73
- // Preserve original stack but append definition info
74
- if (error.stack && definitionInfo.definedAt) {
75
- const { file, line, column } = definitionInfo.definedAt;
76
- err.stack =
77
- error.stack +
78
- `\n--- Procedure "${name}" defined at ---\n at ${file}:${line}:${column}`;
79
- }
80
- else if (error.stack) {
81
- err.stack = error.stack;
82
- }
83
- throw err;
84
- }
85
- }
86
- },
87
- };
88
- procedures.set(name, registeredProcedure);
89
- if (builder?.onCreate) {
90
- builder.onCreate(registeredProcedure);
91
- }
92
- const info = {
93
- name,
94
- ...registeredProcedure.config,
95
- };
96
- // return so can be called directly (ie: int/unit tests)
97
- return {
98
- [name]: registeredProcedure.handler,
99
- procedure: registeredProcedure.handler,
100
- info,
101
- };
102
- }
103
- function CreateStream(name, config, handler) {
104
- // Capture definition location as first action
105
- const definitionInfo = captureDefinitionInfo();
106
- // BEFORE computeSchema - fail fast on duplicate
107
- if (procedures.has(name)) {
108
- throw new Error(`Procedure with name ${name} is already registered`);
109
- }
110
- const { jsonSchema, validations } = computeSchema(name, config.schema, definitionInfo);
111
- // Create error factory once at registration time (outside handler)
112
- const errorFactory = (message, meta) => {
113
- return new ProcedureError(name, message, meta, definitionInfo);
114
- };
115
- const validateYields = config.validateYields ?? false;
116
- const registeredProcedure = {
117
- name,
118
- isStream: true,
119
- config: {
120
- ...config,
121
- description: config.description,
122
- schema: jsonSchema,
123
- validation: {
124
- params: validations.params,
125
- yield: validations.yield,
126
- ...(validations.input && { input: validations.input }),
127
- },
128
- },
129
- handler: async function* wrappedHandler(ctx, params) {
130
- // Create abort controller for this stream
131
- const abortController = new AbortController();
132
- // Skip validation if caller has already validated (e.g., HonoStreamAppBuilder)
133
- const isPrevalidated = ctx.isPrevalidated;
134
- if (validations?.params && !isPrevalidated) {
135
- const { errors } = validations.params(params);
136
- if (errors) {
137
- throw new ProcedureValidationError(name, `Validation error for ${name}`, errors, definitionInfo);
138
- }
139
- }
140
- // Validate each input channel independently (see Create for rationale)
141
- if (validations?.input && !isPrevalidated) {
142
- for (const [channel, validator] of Object.entries(validations.input)) {
143
- const channelValue = params?.[channel];
144
- const { errors } = validator(channelValue);
145
- if (errors) {
146
- throw new ProcedureValidationError(name, `Validation error for ${name} in input.${channel}`, errors, definitionInfo);
147
- }
148
- }
149
- }
150
- // Combine with external signal (e.g., from HTTP request) if provided
151
- const incomingSignal = ctx.signal;
152
- const signal = incomingSignal
153
- ? AbortSignal.any([incomingSignal, abortController.signal])
154
- : abortController.signal;
155
- const streamCtx = {
156
- error: errorFactory,
157
- signal,
158
- };
159
- // params is correctly typed at the public API boundary via conditional type;
160
- // cast here because TS cannot narrow conditional generics inside implementations
161
- const userGenerator = handler({
162
- ...ctx,
163
- ...streamCtx,
164
- }, params);
165
- try {
166
- const userIterator = userGenerator[Symbol.asyncIterator]();
167
- let userIterResult = await userIterator.next();
168
- while (!userIterResult.done) {
169
- const value = userIterResult.value;
170
- // Only validate if explicitly enabled via validateYields: true
171
- if (validateYields && validations.yield) {
172
- const { errors } = validations.yield(value);
173
- if (errors) {
174
- throw new ProcedureYieldValidationError(name, `Yield validation error for ${name}`, errors, definitionInfo);
175
- }
176
- }
177
- yield value;
178
- userIterResult = await userIterator.next();
179
- }
180
- // Propagate the generator's return value so consumers (e.g. HonoStreamAppBuilder)
181
- // can send it as a special 'return' SSE event
182
- return userIterResult.value;
183
- }
184
- catch (error) {
185
- if (error instanceof ProcedureError) {
186
- throw error;
187
- }
188
- else {
189
- const err = new ProcedureError(name, `Error in streaming handler for ${name} - ${error?.message}`, undefined, definitionInfo);
190
- err.cause = error;
191
- if (error.stack && definitionInfo.definedAt) {
192
- const { file, line, column } = definitionInfo.definedAt;
193
- err.stack =
194
- error.stack +
195
- `\n--- Procedure "${name}" defined at ---\n at ${file}:${line}:${column}`;
196
- }
197
- else if (error.stack) {
198
- err.stack = error.stack;
199
- }
200
- throw err;
201
- }
202
- }
203
- finally {
204
- abortController.abort('stream-completed');
205
- }
206
- },
207
- };
208
- procedures.set(name, registeredProcedure);
209
- if (builder?.onCreate) {
210
- builder.onCreate(registeredProcedure);
211
- }
212
- const info = {
213
- name,
214
- isStream: true,
215
- ...registeredProcedure.config,
216
- };
217
- // return so can be called directly (ie: int/unit tests)
218
- return {
219
- [name]: registeredProcedure.handler,
220
- procedure: registeredProcedure.handler,
221
- info,
222
- };
223
- }
224
- return {
225
- /**
226
- * Get all registered procedures
227
- */
228
- getProcedures: () => {
229
- return Array.from(procedures.values());
230
- },
231
- /**
232
- * Get a specific procedure by name
233
- */
234
- getProcedure: (name) => {
235
- return procedures.get(name);
236
- },
237
- /**
238
- * Remove a procedure by name
239
- */
240
- removeProcedure: (name) => {
241
- return procedures.delete(name);
242
- },
243
- /**
244
- * Clear all registered procedures
245
- */
246
- clear: () => {
247
- procedures.clear();
248
- },
249
- Create,
250
- CreateStream,
251
- };
252
- }
253
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};