@restatedev/restate-sdk 1.3.3 → 1.5.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 (505) hide show
  1. package/README.md +6 -4
  2. package/dist/cjs/src/common_api.d.ts +5 -5
  3. package/dist/cjs/src/common_api.d.ts.map +1 -1
  4. package/dist/cjs/src/common_api.js +2 -1
  5. package/dist/cjs/src/common_api.js.map +1 -1
  6. package/dist/cjs/src/context.d.ts +103 -12
  7. package/dist/cjs/src/context.d.ts.map +1 -1
  8. package/dist/cjs/src/context.js +25 -13
  9. package/dist/cjs/src/context.js.map +1 -1
  10. package/dist/cjs/src/context_impl.d.ts +38 -24
  11. package/dist/cjs/src/context_impl.d.ts.map +1 -1
  12. package/dist/cjs/src/context_impl.js +327 -342
  13. package/dist/cjs/src/context_impl.js.map +1 -1
  14. package/dist/cjs/src/endpoint/endpoint_builder.d.ts +6 -8
  15. package/dist/cjs/src/endpoint/endpoint_builder.d.ts.map +1 -1
  16. package/dist/cjs/src/endpoint/endpoint_builder.js +23 -23
  17. package/dist/cjs/src/endpoint/endpoint_builder.js.map +1 -1
  18. package/dist/cjs/src/endpoint/fetch_endpoint.d.ts +4 -6
  19. package/dist/cjs/src/endpoint/fetch_endpoint.d.ts.map +1 -1
  20. package/dist/cjs/src/endpoint/fetch_endpoint.js +0 -4
  21. package/dist/cjs/src/endpoint/fetch_endpoint.js.map +1 -1
  22. package/dist/cjs/src/endpoint/handlers/fetch.d.ts.map +1 -1
  23. package/dist/cjs/src/endpoint/handlers/fetch.js +1 -0
  24. package/dist/cjs/src/endpoint/handlers/fetch.js.map +1 -1
  25. package/dist/cjs/src/endpoint/handlers/generic.d.ts +9 -0
  26. package/dist/cjs/src/endpoint/handlers/generic.d.ts.map +1 -1
  27. package/dist/cjs/src/endpoint/handlers/generic.js +249 -88
  28. package/dist/cjs/src/endpoint/handlers/generic.js.map +1 -1
  29. package/dist/cjs/src/endpoint/handlers/lambda.d.ts.map +1 -1
  30. package/dist/cjs/src/endpoint/handlers/lambda.js +15 -3
  31. package/dist/cjs/src/endpoint/handlers/lambda.js.map +1 -1
  32. package/dist/cjs/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.d.ts +283 -0
  33. package/dist/cjs/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.d.ts.map +1 -0
  34. package/dist/cjs/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.js +1333 -0
  35. package/dist/cjs/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.js.map +1 -0
  36. package/dist/cjs/src/endpoint/lambda_endpoint.d.ts +4 -6
  37. package/dist/cjs/src/endpoint/lambda_endpoint.d.ts.map +1 -1
  38. package/dist/cjs/src/endpoint/lambda_endpoint.js +0 -4
  39. package/dist/cjs/src/endpoint/lambda_endpoint.js.map +1 -1
  40. package/dist/cjs/src/endpoint/node_endpoint.d.ts +4 -6
  41. package/dist/cjs/src/endpoint/node_endpoint.d.ts.map +1 -1
  42. package/dist/cjs/src/endpoint/node_endpoint.js +12 -4
  43. package/dist/cjs/src/endpoint/node_endpoint.js.map +1 -1
  44. package/dist/cjs/src/endpoint.d.ts +6 -37
  45. package/dist/cjs/src/endpoint.d.ts.map +1 -1
  46. package/dist/cjs/src/generated/version.d.ts +1 -1
  47. package/dist/cjs/src/generated/version.js +1 -1
  48. package/dist/cjs/src/io.d.ts +25 -0
  49. package/dist/cjs/src/io.d.ts.map +1 -0
  50. package/dist/cjs/src/io.js +78 -0
  51. package/dist/cjs/src/io.js.map +1 -0
  52. package/dist/cjs/src/logging/console_logger_transport.d.ts +5 -0
  53. package/dist/cjs/src/logging/console_logger_transport.d.ts.map +1 -0
  54. package/dist/cjs/src/logging/console_logger_transport.js +98 -0
  55. package/dist/cjs/src/logging/console_logger_transport.js.map +1 -0
  56. package/dist/cjs/src/logging/logger.d.ts +11 -0
  57. package/dist/cjs/src/logging/logger.d.ts.map +1 -0
  58. package/dist/cjs/src/logging/logger.js +61 -0
  59. package/dist/cjs/src/logging/logger.js.map +1 -0
  60. package/dist/cjs/src/logging/logger_transport.d.ts +52 -0
  61. package/dist/cjs/src/logging/logger_transport.d.ts.map +1 -0
  62. package/dist/cjs/src/logging/logger_transport.js +59 -0
  63. package/dist/cjs/src/logging/logger_transport.js.map +1 -0
  64. package/dist/cjs/src/promises.d.ts +110 -0
  65. package/dist/cjs/src/promises.d.ts.map +1 -0
  66. package/dist/cjs/src/promises.js +323 -0
  67. package/dist/cjs/src/promises.js.map +1 -0
  68. package/dist/cjs/src/types/components.d.ts +11 -3
  69. package/dist/cjs/src/types/components.d.ts.map +1 -1
  70. package/dist/cjs/src/types/components.js +38 -5
  71. package/dist/cjs/src/types/components.js.map +1 -1
  72. package/dist/cjs/src/types/discovery.d.ts +4 -0
  73. package/dist/cjs/src/types/discovery.d.ts.map +1 -1
  74. package/dist/cjs/src/types/errors.d.ts +8 -31
  75. package/dist/cjs/src/types/errors.d.ts.map +1 -1
  76. package/dist/cjs/src/types/errors.js +18 -74
  77. package/dist/cjs/src/types/errors.js.map +1 -1
  78. package/dist/cjs/src/types/rpc.d.ts +66 -41
  79. package/dist/cjs/src/types/rpc.d.ts.map +1 -1
  80. package/dist/cjs/src/types/rpc.js +32 -83
  81. package/dist/cjs/src/types/rpc.js.map +1 -1
  82. package/dist/cjs/src/user_agent.d.ts +1 -1
  83. package/dist/cjs/src/utils/buffer.d.ts +1 -0
  84. package/dist/cjs/src/utils/buffer.d.ts.map +1 -1
  85. package/dist/cjs/src/utils/completable_promise.d.ts +9 -0
  86. package/dist/cjs/src/utils/completable_promise.d.ts.map +1 -0
  87. package/dist/cjs/src/utils/completable_promise.js +34 -0
  88. package/dist/cjs/src/utils/completable_promise.js.map +1 -0
  89. package/dist/cjs/src/utils/rand.d.ts +1 -1
  90. package/dist/cjs/src/utils/rand.d.ts.map +1 -1
  91. package/dist/cjs/src/utils/rand.js +1 -1
  92. package/dist/cjs/src/utils/rand.js.map +1 -1
  93. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  94. package/dist/esm/src/common_api.d.ts +5 -5
  95. package/dist/esm/src/common_api.d.ts.map +1 -1
  96. package/dist/esm/src/common_api.js +1 -1
  97. package/dist/esm/src/common_api.js.map +1 -1
  98. package/dist/esm/src/context.d.ts +103 -12
  99. package/dist/esm/src/context.d.ts.map +1 -1
  100. package/dist/esm/src/context.js +24 -12
  101. package/dist/esm/src/context.js.map +1 -1
  102. package/dist/esm/src/context_impl.d.ts +38 -24
  103. package/dist/esm/src/context_impl.d.ts.map +1 -1
  104. package/dist/esm/src/context_impl.js +325 -341
  105. package/dist/esm/src/context_impl.js.map +1 -1
  106. package/dist/esm/src/endpoint/endpoint_builder.d.ts +6 -8
  107. package/dist/esm/src/endpoint/endpoint_builder.d.ts.map +1 -1
  108. package/dist/esm/src/endpoint/endpoint_builder.js +23 -23
  109. package/dist/esm/src/endpoint/endpoint_builder.js.map +1 -1
  110. package/dist/esm/src/endpoint/fetch_endpoint.d.ts +4 -6
  111. package/dist/esm/src/endpoint/fetch_endpoint.d.ts.map +1 -1
  112. package/dist/esm/src/endpoint/fetch_endpoint.js +0 -4
  113. package/dist/esm/src/endpoint/fetch_endpoint.js.map +1 -1
  114. package/dist/esm/src/endpoint/handlers/fetch.d.ts.map +1 -1
  115. package/dist/esm/src/endpoint/handlers/fetch.js +1 -0
  116. package/dist/esm/src/endpoint/handlers/fetch.js.map +1 -1
  117. package/dist/esm/src/endpoint/handlers/generic.d.ts +9 -0
  118. package/dist/esm/src/endpoint/handlers/generic.d.ts.map +1 -1
  119. package/dist/esm/src/endpoint/handlers/generic.js +226 -89
  120. package/dist/esm/src/endpoint/handlers/generic.js.map +1 -1
  121. package/dist/esm/src/endpoint/handlers/lambda.d.ts.map +1 -1
  122. package/dist/esm/src/endpoint/handlers/lambda.js +15 -3
  123. package/dist/esm/src/endpoint/handlers/lambda.js.map +1 -1
  124. package/dist/esm/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.d.ts +283 -0
  125. package/dist/esm/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.d.ts.map +1 -0
  126. package/dist/esm/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.js +1322 -0
  127. package/dist/esm/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.js.map +1 -0
  128. package/dist/esm/src/endpoint/lambda_endpoint.d.ts +4 -6
  129. package/dist/esm/src/endpoint/lambda_endpoint.d.ts.map +1 -1
  130. package/dist/esm/src/endpoint/lambda_endpoint.js +0 -4
  131. package/dist/esm/src/endpoint/lambda_endpoint.js.map +1 -1
  132. package/dist/esm/src/endpoint/node_endpoint.d.ts +4 -6
  133. package/dist/esm/src/endpoint/node_endpoint.d.ts.map +1 -1
  134. package/dist/esm/src/endpoint/node_endpoint.js +12 -4
  135. package/dist/esm/src/endpoint/node_endpoint.js.map +1 -1
  136. package/dist/esm/src/endpoint.d.ts +6 -37
  137. package/dist/esm/src/endpoint.d.ts.map +1 -1
  138. package/dist/esm/src/generated/version.d.ts +1 -1
  139. package/dist/esm/src/generated/version.js +1 -1
  140. package/dist/esm/src/io.d.ts +25 -0
  141. package/dist/esm/src/io.d.ts.map +1 -0
  142. package/dist/esm/src/io.js +73 -0
  143. package/dist/esm/src/io.js.map +1 -0
  144. package/dist/esm/src/logging/console_logger_transport.d.ts +5 -0
  145. package/dist/esm/src/logging/console_logger_transport.d.ts.map +1 -0
  146. package/dist/esm/src/{logger.js → logging/console_logger_transport.js} +40 -90
  147. package/dist/esm/src/logging/console_logger_transport.js.map +1 -0
  148. package/dist/esm/src/logging/logger.d.ts +11 -0
  149. package/dist/esm/src/logging/logger.d.ts.map +1 -0
  150. package/dist/esm/src/logging/logger.js +57 -0
  151. package/dist/esm/src/logging/logger.js.map +1 -0
  152. package/dist/esm/src/logging/logger_transport.d.ts +52 -0
  153. package/dist/esm/src/logging/logger_transport.d.ts.map +1 -0
  154. package/dist/esm/src/logging/logger_transport.js +55 -0
  155. package/dist/esm/src/logging/logger_transport.js.map +1 -0
  156. package/dist/esm/src/promises.d.ts +110 -0
  157. package/dist/esm/src/promises.d.ts.map +1 -0
  158. package/dist/esm/src/promises.js +311 -0
  159. package/dist/esm/src/promises.js.map +1 -0
  160. package/dist/esm/src/types/components.d.ts +11 -3
  161. package/dist/esm/src/types/components.d.ts.map +1 -1
  162. package/dist/esm/src/types/components.js +38 -5
  163. package/dist/esm/src/types/components.js.map +1 -1
  164. package/dist/esm/src/types/discovery.d.ts +4 -0
  165. package/dist/esm/src/types/discovery.d.ts.map +1 -1
  166. package/dist/esm/src/types/errors.d.ts +8 -31
  167. package/dist/esm/src/types/errors.d.ts.map +1 -1
  168. package/dist/esm/src/types/errors.js +16 -68
  169. package/dist/esm/src/types/errors.js.map +1 -1
  170. package/dist/esm/src/types/rpc.d.ts +66 -41
  171. package/dist/esm/src/types/rpc.d.ts.map +1 -1
  172. package/dist/esm/src/types/rpc.js +32 -83
  173. package/dist/esm/src/types/rpc.js.map +1 -1
  174. package/dist/esm/src/user_agent.d.ts +1 -1
  175. package/dist/esm/src/utils/buffer.d.ts +1 -0
  176. package/dist/esm/src/utils/buffer.d.ts.map +1 -1
  177. package/dist/esm/src/utils/completable_promise.d.ts +9 -0
  178. package/dist/esm/src/utils/completable_promise.d.ts.map +1 -0
  179. package/dist/esm/src/utils/completable_promise.js +30 -0
  180. package/dist/esm/src/utils/completable_promise.js.map +1 -0
  181. package/dist/esm/src/utils/rand.d.ts +1 -1
  182. package/dist/esm/src/utils/rand.d.ts.map +1 -1
  183. package/dist/esm/src/utils/rand.js +1 -1
  184. package/dist/esm/src/utils/rand.js.map +1 -1
  185. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  186. package/package.json +2 -6
  187. package/dist/cjs/src/connection/connection.d.ts +0 -84
  188. package/dist/cjs/src/connection/connection.d.ts.map +0 -1
  189. package/dist/cjs/src/connection/connection.js +0 -181
  190. package/dist/cjs/src/connection/connection.js.map +0 -1
  191. package/dist/cjs/src/endpoint/request_signing/basex.d.ts +0 -10
  192. package/dist/cjs/src/endpoint/request_signing/basex.d.ts.map +0 -1
  193. package/dist/cjs/src/endpoint/request_signing/basex.js +0 -138
  194. package/dist/cjs/src/endpoint/request_signing/basex.js.map +0 -1
  195. package/dist/cjs/src/endpoint/request_signing/ed25519.d.ts +0 -17
  196. package/dist/cjs/src/endpoint/request_signing/ed25519.d.ts.map +0 -1
  197. package/dist/cjs/src/endpoint/request_signing/ed25519.js +0 -80
  198. package/dist/cjs/src/endpoint/request_signing/ed25519.js.map +0 -1
  199. package/dist/cjs/src/endpoint/request_signing/v1.d.ts +0 -10
  200. package/dist/cjs/src/endpoint/request_signing/v1.d.ts.map +0 -1
  201. package/dist/cjs/src/endpoint/request_signing/v1.js +0 -151
  202. package/dist/cjs/src/endpoint/request_signing/v1.js.map +0 -1
  203. package/dist/cjs/src/endpoint/request_signing/validate.d.ts +0 -19
  204. package/dist/cjs/src/endpoint/request_signing/validate.d.ts.map +0 -1
  205. package/dist/cjs/src/endpoint/request_signing/validate.js +0 -45
  206. package/dist/cjs/src/endpoint/request_signing/validate.js.map +0 -1
  207. package/dist/cjs/src/generated/proto/discovery_pb.d.ts +0 -18
  208. package/dist/cjs/src/generated/proto/discovery_pb.d.ts.map +0 -1
  209. package/dist/cjs/src/generated/proto/discovery_pb.js +0 -40
  210. package/dist/cjs/src/generated/proto/discovery_pb.js.map +0 -1
  211. package/dist/cjs/src/generated/proto/javascript_pb.d.ts +0 -26
  212. package/dist/cjs/src/generated/proto/javascript_pb.d.ts.map +0 -1
  213. package/dist/cjs/src/generated/proto/javascript_pb.js +0 -52
  214. package/dist/cjs/src/generated/proto/javascript_pb.js.map +0 -1
  215. package/dist/cjs/src/generated/proto/protocol_pb.d.ts +0 -1051
  216. package/dist/cjs/src/generated/proto/protocol_pb.d.ts.map +0 -1
  217. package/dist/cjs/src/generated/proto/protocol_pb.js +0 -1288
  218. package/dist/cjs/src/generated/proto/protocol_pb.js.map +0 -1
  219. package/dist/cjs/src/invocation.d.ts +0 -48
  220. package/dist/cjs/src/invocation.d.ts.map +0 -1
  221. package/dist/cjs/src/invocation.js +0 -158
  222. package/dist/cjs/src/invocation.js.map +0 -1
  223. package/dist/cjs/src/io/decoder.d.ts +0 -9
  224. package/dist/cjs/src/io/decoder.d.ts.map +0 -1
  225. package/dist/cjs/src/io/decoder.js +0 -137
  226. package/dist/cjs/src/io/decoder.js.map +0 -1
  227. package/dist/cjs/src/io/encoder.d.ts +0 -4
  228. package/dist/cjs/src/io/encoder.d.ts.map +0 -1
  229. package/dist/cjs/src/io/encoder.js +0 -41
  230. package/dist/cjs/src/io/encoder.js.map +0 -1
  231. package/dist/cjs/src/journal.d.ts +0 -52
  232. package/dist/cjs/src/journal.d.ts.map +0 -1
  233. package/dist/cjs/src/journal.js +0 -438
  234. package/dist/cjs/src/journal.js.map +0 -1
  235. package/dist/cjs/src/local_state_store.d.ts +0 -14
  236. package/dist/cjs/src/local_state_store.d.ts.map +0 -1
  237. package/dist/cjs/src/local_state_store.js +0 -83
  238. package/dist/cjs/src/local_state_store.js.map +0 -1
  239. package/dist/cjs/src/logger.d.ts +0 -35
  240. package/dist/cjs/src/logger.d.ts.map +0 -1
  241. package/dist/cjs/src/logger.js +0 -151
  242. package/dist/cjs/src/logger.js.map +0 -1
  243. package/dist/cjs/src/promise_combinator_tracker.d.ts +0 -29
  244. package/dist/cjs/src/promise_combinator_tracker.d.ts.map +0 -1
  245. package/dist/cjs/src/promise_combinator_tracker.js +0 -130
  246. package/dist/cjs/src/promise_combinator_tracker.js.map +0 -1
  247. package/dist/cjs/src/state_machine.d.ts +0 -85
  248. package/dist/cjs/src/state_machine.d.ts.map +0 -1
  249. package/dist/cjs/src/state_machine.js +0 -426
  250. package/dist/cjs/src/state_machine.js.map +0 -1
  251. package/dist/cjs/src/types/protocol.d.ts +0 -40
  252. package/dist/cjs/src/types/protocol.d.ts.map +0 -1
  253. package/dist/cjs/src/types/protocol.js +0 -237
  254. package/dist/cjs/src/types/protocol.js.map +0 -1
  255. package/dist/cjs/src/types/types.d.ts +0 -20
  256. package/dist/cjs/src/types/types.d.ts.map +0 -1
  257. package/dist/cjs/src/types/types.js +0 -110
  258. package/dist/cjs/src/types/types.js.map +0 -1
  259. package/dist/cjs/src/utils/message_logger.d.ts +0 -7
  260. package/dist/cjs/src/utils/message_logger.d.ts.map +0 -1
  261. package/dist/cjs/src/utils/message_logger.js +0 -79
  262. package/dist/cjs/src/utils/message_logger.js.map +0 -1
  263. package/dist/cjs/src/utils/promises.d.ts +0 -15
  264. package/dist/cjs/src/utils/promises.d.ts.map +0 -1
  265. package/dist/cjs/src/utils/promises.js +0 -68
  266. package/dist/cjs/src/utils/promises.js.map +0 -1
  267. package/dist/cjs/src/utils/utils.d.ts +0 -3
  268. package/dist/cjs/src/utils/utils.d.ts.map +0 -1
  269. package/dist/cjs/src/utils/utils.js +0 -105
  270. package/dist/cjs/src/utils/utils.js.map +0 -1
  271. package/dist/cjs/test/awakeable.test.d.ts +0 -2
  272. package/dist/cjs/test/awakeable.test.d.ts.map +0 -1
  273. package/dist/cjs/test/awakeable.test.js +0 -141
  274. package/dist/cjs/test/awakeable.test.js.map +0 -1
  275. package/dist/cjs/test/complete_awakeable.test.d.ts +0 -2
  276. package/dist/cjs/test/complete_awakeable.test.d.ts.map +0 -1
  277. package/dist/cjs/test/complete_awakeable.test.js +0 -123
  278. package/dist/cjs/test/complete_awakeable.test.js.map +0 -1
  279. package/dist/cjs/test/eager_state.test.d.ts +0 -2
  280. package/dist/cjs/test/eager_state.test.d.ts.map +0 -1
  281. package/dist/cjs/test/eager_state.test.js +0 -280
  282. package/dist/cjs/test/eager_state.test.js.map +0 -1
  283. package/dist/cjs/test/get_and_set_state.test.d.ts +0 -2
  284. package/dist/cjs/test/get_and_set_state.test.d.ts.map +0 -1
  285. package/dist/cjs/test/get_and_set_state.test.js +0 -233
  286. package/dist/cjs/test/get_and_set_state.test.js.map +0 -1
  287. package/dist/cjs/test/get_state.test.d.ts +0 -2
  288. package/dist/cjs/test/get_state.test.d.ts.map +0 -1
  289. package/dist/cjs/test/get_state.test.js +0 -328
  290. package/dist/cjs/test/get_state.test.js.map +0 -1
  291. package/dist/cjs/test/lambda.test.d.ts +0 -2
  292. package/dist/cjs/test/lambda.test.d.ts.map +0 -1
  293. package/dist/cjs/test/lambda.test.js +0 -258
  294. package/dist/cjs/test/lambda.test.js.map +0 -1
  295. package/dist/cjs/test/message_coders.test.d.ts +0 -2
  296. package/dist/cjs/test/message_coders.test.d.ts.map +0 -1
  297. package/dist/cjs/test/message_coders.test.js +0 -37
  298. package/dist/cjs/test/message_coders.test.js.map +0 -1
  299. package/dist/cjs/test/promise_combinator_tracker.test.d.ts +0 -2
  300. package/dist/cjs/test/promise_combinator_tracker.test.d.ts.map +0 -1
  301. package/dist/cjs/test/promise_combinator_tracker.test.js +0 -156
  302. package/dist/cjs/test/promise_combinator_tracker.test.js.map +0 -1
  303. package/dist/cjs/test/promise_combinators.test.d.ts +0 -2
  304. package/dist/cjs/test/promise_combinators.test.d.ts.map +0 -1
  305. package/dist/cjs/test/promise_combinators.test.js +0 -433
  306. package/dist/cjs/test/promise_combinators.test.js.map +0 -1
  307. package/dist/cjs/test/promises.test.d.ts +0 -2
  308. package/dist/cjs/test/promises.test.d.ts.map +0 -1
  309. package/dist/cjs/test/promises.test.js +0 -32
  310. package/dist/cjs/test/promises.test.js.map +0 -1
  311. package/dist/cjs/test/protocol_stream.test.d.ts +0 -2
  312. package/dist/cjs/test/protocol_stream.test.d.ts.map +0 -1
  313. package/dist/cjs/test/protocol_stream.test.js +0 -243
  314. package/dist/cjs/test/protocol_stream.test.js.map +0 -1
  315. package/dist/cjs/test/protoutils.d.ts +0 -44
  316. package/dist/cjs/test/protoutils.d.ts.map +0 -1
  317. package/dist/cjs/test/protoutils.js +0 -368
  318. package/dist/cjs/test/protoutils.js.map +0 -1
  319. package/dist/cjs/test/service_bind.test.d.ts +0 -2
  320. package/dist/cjs/test/service_bind.test.d.ts.map +0 -1
  321. package/dist/cjs/test/service_bind.test.js +0 -118
  322. package/dist/cjs/test/service_bind.test.js.map +0 -1
  323. package/dist/cjs/test/side_effect.test.d.ts +0 -2
  324. package/dist/cjs/test/side_effect.test.d.ts.map +0 -1
  325. package/dist/cjs/test/side_effect.test.js +0 -133
  326. package/dist/cjs/test/side_effect.test.js.map +0 -1
  327. package/dist/cjs/test/sleep.test.d.ts +0 -2
  328. package/dist/cjs/test/sleep.test.d.ts.map +0 -1
  329. package/dist/cjs/test/sleep.test.js +0 -224
  330. package/dist/cjs/test/sleep.test.js.map +0 -1
  331. package/dist/cjs/test/state_keys.test.d.ts +0 -2
  332. package/dist/cjs/test/state_keys.test.d.ts.map +0 -1
  333. package/dist/cjs/test/state_keys.test.js +0 -92
  334. package/dist/cjs/test/state_keys.test.js.map +0 -1
  335. package/dist/cjs/test/state_machine.test.d.ts +0 -2
  336. package/dist/cjs/test/state_machine.test.d.ts.map +0 -1
  337. package/dist/cjs/test/state_machine.test.js +0 -42
  338. package/dist/cjs/test/state_machine.test.js.map +0 -1
  339. package/dist/cjs/test/testdriver.d.ts +0 -39
  340. package/dist/cjs/test/testdriver.d.ts.map +0 -1
  341. package/dist/cjs/test/testdriver.js +0 -188
  342. package/dist/cjs/test/testdriver.js.map +0 -1
  343. package/dist/cjs/test/utils.test.d.ts +0 -2
  344. package/dist/cjs/test/utils.test.d.ts.map +0 -1
  345. package/dist/cjs/test/utils.test.js +0 -93
  346. package/dist/cjs/test/utils.test.js.map +0 -1
  347. package/dist/esm/src/connection/connection.d.ts +0 -84
  348. package/dist/esm/src/connection/connection.d.ts.map +0 -1
  349. package/dist/esm/src/connection/connection.js +0 -177
  350. package/dist/esm/src/connection/connection.js.map +0 -1
  351. package/dist/esm/src/endpoint/request_signing/basex.d.ts +0 -10
  352. package/dist/esm/src/endpoint/request_signing/basex.d.ts.map +0 -1
  353. package/dist/esm/src/endpoint/request_signing/basex.js +0 -136
  354. package/dist/esm/src/endpoint/request_signing/basex.js.map +0 -1
  355. package/dist/esm/src/endpoint/request_signing/ed25519.d.ts +0 -17
  356. package/dist/esm/src/endpoint/request_signing/ed25519.d.ts.map +0 -1
  357. package/dist/esm/src/endpoint/request_signing/ed25519.js +0 -52
  358. package/dist/esm/src/endpoint/request_signing/ed25519.js.map +0 -1
  359. package/dist/esm/src/endpoint/request_signing/v1.d.ts +0 -10
  360. package/dist/esm/src/endpoint/request_signing/v1.d.ts.map +0 -1
  361. package/dist/esm/src/endpoint/request_signing/v1.js +0 -143
  362. package/dist/esm/src/endpoint/request_signing/v1.js.map +0 -1
  363. package/dist/esm/src/endpoint/request_signing/validate.d.ts +0 -19
  364. package/dist/esm/src/endpoint/request_signing/validate.d.ts.map +0 -1
  365. package/dist/esm/src/endpoint/request_signing/validate.js +0 -40
  366. package/dist/esm/src/endpoint/request_signing/validate.js.map +0 -1
  367. package/dist/esm/src/generated/proto/discovery_pb.d.ts +0 -18
  368. package/dist/esm/src/generated/proto/discovery_pb.d.ts.map +0 -1
  369. package/dist/esm/src/generated/proto/discovery_pb.js +0 -37
  370. package/dist/esm/src/generated/proto/discovery_pb.js.map +0 -1
  371. package/dist/esm/src/generated/proto/javascript_pb.d.ts +0 -26
  372. package/dist/esm/src/generated/proto/javascript_pb.d.ts.map +0 -1
  373. package/dist/esm/src/generated/proto/javascript_pb.js +0 -48
  374. package/dist/esm/src/generated/proto/javascript_pb.js.map +0 -1
  375. package/dist/esm/src/generated/proto/protocol_pb.d.ts +0 -1051
  376. package/dist/esm/src/generated/proto/protocol_pb.d.ts.map +0 -1
  377. package/dist/esm/src/generated/proto/protocol_pb.js +0 -1258
  378. package/dist/esm/src/generated/proto/protocol_pb.js.map +0 -1
  379. package/dist/esm/src/invocation.d.ts +0 -48
  380. package/dist/esm/src/invocation.d.ts.map +0 -1
  381. package/dist/esm/src/invocation.js +0 -153
  382. package/dist/esm/src/invocation.js.map +0 -1
  383. package/dist/esm/src/io/decoder.d.ts +0 -9
  384. package/dist/esm/src/io/decoder.d.ts.map +0 -1
  385. package/dist/esm/src/io/decoder.js +0 -128
  386. package/dist/esm/src/io/decoder.js.map +0 -1
  387. package/dist/esm/src/io/encoder.d.ts +0 -4
  388. package/dist/esm/src/io/encoder.d.ts.map +0 -1
  389. package/dist/esm/src/io/encoder.js +0 -36
  390. package/dist/esm/src/io/encoder.js.map +0 -1
  391. package/dist/esm/src/journal.d.ts +0 -52
  392. package/dist/esm/src/journal.d.ts.map +0 -1
  393. package/dist/esm/src/journal.js +0 -410
  394. package/dist/esm/src/journal.js.map +0 -1
  395. package/dist/esm/src/local_state_store.d.ts +0 -14
  396. package/dist/esm/src/local_state_store.d.ts.map +0 -1
  397. package/dist/esm/src/local_state_store.js +0 -79
  398. package/dist/esm/src/local_state_store.js.map +0 -1
  399. package/dist/esm/src/logger.d.ts +0 -35
  400. package/dist/esm/src/logger.d.ts.map +0 -1
  401. package/dist/esm/src/logger.js.map +0 -1
  402. package/dist/esm/src/promise_combinator_tracker.d.ts +0 -29
  403. package/dist/esm/src/promise_combinator_tracker.d.ts.map +0 -1
  404. package/dist/esm/src/promise_combinator_tracker.js +0 -125
  405. package/dist/esm/src/promise_combinator_tracker.js.map +0 -1
  406. package/dist/esm/src/state_machine.d.ts +0 -85
  407. package/dist/esm/src/state_machine.d.ts.map +0 -1
  408. package/dist/esm/src/state_machine.js +0 -399
  409. package/dist/esm/src/state_machine.js.map +0 -1
  410. package/dist/esm/src/types/protocol.d.ts +0 -40
  411. package/dist/esm/src/types/protocol.d.ts.map +0 -1
  412. package/dist/esm/src/types/protocol.js +0 -206
  413. package/dist/esm/src/types/protocol.js.map +0 -1
  414. package/dist/esm/src/types/types.d.ts +0 -20
  415. package/dist/esm/src/types/types.d.ts.map +0 -1
  416. package/dist/esm/src/types/types.js +0 -105
  417. package/dist/esm/src/types/types.js.map +0 -1
  418. package/dist/esm/src/utils/message_logger.d.ts +0 -7
  419. package/dist/esm/src/utils/message_logger.d.ts.map +0 -1
  420. package/dist/esm/src/utils/message_logger.js +0 -75
  421. package/dist/esm/src/utils/message_logger.js.map +0 -1
  422. package/dist/esm/src/utils/promises.d.ts +0 -15
  423. package/dist/esm/src/utils/promises.d.ts.map +0 -1
  424. package/dist/esm/src/utils/promises.js +0 -63
  425. package/dist/esm/src/utils/promises.js.map +0 -1
  426. package/dist/esm/src/utils/utils.d.ts +0 -3
  427. package/dist/esm/src/utils/utils.d.ts.map +0 -1
  428. package/dist/esm/src/utils/utils.js +0 -101
  429. package/dist/esm/src/utils/utils.js.map +0 -1
  430. package/dist/esm/test/awakeable.test.d.ts +0 -2
  431. package/dist/esm/test/awakeable.test.d.ts.map +0 -1
  432. package/dist/esm/test/awakeable.test.js +0 -139
  433. package/dist/esm/test/awakeable.test.js.map +0 -1
  434. package/dist/esm/test/complete_awakeable.test.d.ts +0 -2
  435. package/dist/esm/test/complete_awakeable.test.d.ts.map +0 -1
  436. package/dist/esm/test/complete_awakeable.test.js +0 -121
  437. package/dist/esm/test/complete_awakeable.test.js.map +0 -1
  438. package/dist/esm/test/eager_state.test.d.ts +0 -2
  439. package/dist/esm/test/eager_state.test.d.ts.map +0 -1
  440. package/dist/esm/test/eager_state.test.js +0 -278
  441. package/dist/esm/test/eager_state.test.js.map +0 -1
  442. package/dist/esm/test/get_and_set_state.test.d.ts +0 -2
  443. package/dist/esm/test/get_and_set_state.test.d.ts.map +0 -1
  444. package/dist/esm/test/get_and_set_state.test.js +0 -231
  445. package/dist/esm/test/get_and_set_state.test.js.map +0 -1
  446. package/dist/esm/test/get_state.test.d.ts +0 -2
  447. package/dist/esm/test/get_state.test.d.ts.map +0 -1
  448. package/dist/esm/test/get_state.test.js +0 -326
  449. package/dist/esm/test/get_state.test.js.map +0 -1
  450. package/dist/esm/test/lambda.test.d.ts +0 -2
  451. package/dist/esm/test/lambda.test.d.ts.map +0 -1
  452. package/dist/esm/test/lambda.test.js +0 -233
  453. package/dist/esm/test/lambda.test.js.map +0 -1
  454. package/dist/esm/test/message_coders.test.d.ts +0 -2
  455. package/dist/esm/test/message_coders.test.d.ts.map +0 -1
  456. package/dist/esm/test/message_coders.test.js +0 -35
  457. package/dist/esm/test/message_coders.test.js.map +0 -1
  458. package/dist/esm/test/promise_combinator_tracker.test.d.ts +0 -2
  459. package/dist/esm/test/promise_combinator_tracker.test.d.ts.map +0 -1
  460. package/dist/esm/test/promise_combinator_tracker.test.js +0 -154
  461. package/dist/esm/test/promise_combinator_tracker.test.js.map +0 -1
  462. package/dist/esm/test/promise_combinators.test.d.ts +0 -2
  463. package/dist/esm/test/promise_combinators.test.d.ts.map +0 -1
  464. package/dist/esm/test/promise_combinators.test.js +0 -431
  465. package/dist/esm/test/promise_combinators.test.js.map +0 -1
  466. package/dist/esm/test/promises.test.d.ts +0 -2
  467. package/dist/esm/test/promises.test.d.ts.map +0 -1
  468. package/dist/esm/test/promises.test.js +0 -30
  469. package/dist/esm/test/promises.test.js.map +0 -1
  470. package/dist/esm/test/protocol_stream.test.d.ts +0 -2
  471. package/dist/esm/test/protocol_stream.test.d.ts.map +0 -1
  472. package/dist/esm/test/protocol_stream.test.js +0 -218
  473. package/dist/esm/test/protocol_stream.test.js.map +0 -1
  474. package/dist/esm/test/protoutils.d.ts +0 -44
  475. package/dist/esm/test/protoutils.d.ts.map +0 -1
  476. package/dist/esm/test/protoutils.js +0 -335
  477. package/dist/esm/test/protoutils.js.map +0 -1
  478. package/dist/esm/test/service_bind.test.d.ts +0 -2
  479. package/dist/esm/test/service_bind.test.d.ts.map +0 -1
  480. package/dist/esm/test/service_bind.test.js +0 -93
  481. package/dist/esm/test/service_bind.test.js.map +0 -1
  482. package/dist/esm/test/side_effect.test.d.ts +0 -2
  483. package/dist/esm/test/side_effect.test.d.ts.map +0 -1
  484. package/dist/esm/test/side_effect.test.js +0 -131
  485. package/dist/esm/test/side_effect.test.js.map +0 -1
  486. package/dist/esm/test/sleep.test.d.ts +0 -2
  487. package/dist/esm/test/sleep.test.d.ts.map +0 -1
  488. package/dist/esm/test/sleep.test.js +0 -222
  489. package/dist/esm/test/sleep.test.js.map +0 -1
  490. package/dist/esm/test/state_keys.test.d.ts +0 -2
  491. package/dist/esm/test/state_keys.test.d.ts.map +0 -1
  492. package/dist/esm/test/state_keys.test.js +0 -90
  493. package/dist/esm/test/state_keys.test.js.map +0 -1
  494. package/dist/esm/test/state_machine.test.d.ts +0 -2
  495. package/dist/esm/test/state_machine.test.d.ts.map +0 -1
  496. package/dist/esm/test/state_machine.test.js +0 -40
  497. package/dist/esm/test/state_machine.test.js.map +0 -1
  498. package/dist/esm/test/testdriver.d.ts +0 -39
  499. package/dist/esm/test/testdriver.d.ts.map +0 -1
  500. package/dist/esm/test/testdriver.js +0 -182
  501. package/dist/esm/test/testdriver.js.map +0 -1
  502. package/dist/esm/test/utils.test.d.ts +0 -2
  503. package/dist/esm/test/utils.test.d.ts.map +0 -1
  504. package/dist/esm/test/utils.test.js +0 -91
  505. package/dist/esm/test/utils.test.js.map +0 -1
@@ -1,368 +0,0 @@
1
- "use strict";
2
- /*
3
- * Copyright (c) 2023-2024 - Restate Software, Inc., Restate GmbH
4
- *
5
- * This file is part of the Restate SDK for Node.js/TypeScript,
6
- * which is released under the MIT license.
7
- *
8
- * You can find a copy of the license in file LICENSE in the root
9
- * directory of this repository or package, or at
10
- * https://github.com/restatedev/sdk-typescript/blob/main/LICENSE
11
- */
12
- Object.defineProperty(exports, "__esModule", { value: true });
13
- exports.CLEAR_ALL_STATE_ENTRY_MESSAGE = exports.END_MESSAGE = exports.keyVal = exports.getAwakeableId = exports.checkTerminalError = exports.checkJournalMismatchError = exports.checkError = exports.errorMessage = exports.greetResponse = exports.greetRequest = exports.failure = exports.combinatorEntryMessage = exports.suspensionMessage = exports.rejectAwakeableMessage = exports.resolveAwakeableMessage = exports.awakeableMessage = exports.sideEffectMessage = exports.backgroundInvokeMessage = exports.invokeMessage = exports.ackMessage = exports.completionMessageWithEmpty = exports.completionMessage = exports.sleepMessage = exports.clearStateMessage = exports.setStateMessage = exports.getStateKeysMessage = exports.getStateMessageWithEmptyResult = exports.getStateMessage = exports.outputMessage = exports.inputMessage = exports.toStateEntries = exports.startMessage = void 0;
14
- /* istanbul ignore file */
15
- const protobuf_1 = require("@bufbuild/protobuf");
16
- const protocol_js_1 = require("../src/types/protocol.js");
17
- const types_js_1 = require("../src/types/types.js");
18
- const javascript_pb_js_1 = require("../src/generated/proto/javascript_pb.js");
19
- const protocol_pb_js_1 = require("../src/generated/proto/protocol_pb.js");
20
- const errors_js_1 = require("../src/types/errors.js");
21
- const vitest_1 = require("vitest");
22
- const rpc_js_1 = require("../src/types/rpc.js");
23
- function startMessage({ knownEntries, partialState, state, key, } = {}) {
24
- return new types_js_1.Message(protocol_js_1.START_MESSAGE_TYPE, new protocol_js_1.StartMessage({
25
- id: Buffer.from("f311f1fdcb9863f0018bd3400ecd7d69b547204e776218b2", "hex"),
26
- debugId: "8xHx_cuYY_AAYvTQA7NfWm1RyBOd2IYsg",
27
- knownEntries: knownEntries, // only used for the Lambda case. For bidi streaming, this will be imputed by the testdriver
28
- stateMap: toStateEntries(state || []),
29
- partialState: partialState !== false,
30
- key: key ?? "Till",
31
- }), undefined, undefined);
32
- }
33
- exports.startMessage = startMessage;
34
- function toStateEntries(entries) {
35
- return (entries.map((el) => new protocol_pb_js_1.StartMessage_StateEntry({ key: el[0], value: el[1] })) || []);
36
- }
37
- exports.toStateEntries = toStateEntries;
38
- function inputMessage(value) {
39
- if (value !== undefined) {
40
- return new types_js_1.Message(protocol_js_1.INPUT_ENTRY_MESSAGE_TYPE, new protocol_js_1.InputEntryMessage({
41
- value: value,
42
- }));
43
- }
44
- else {
45
- throw new Error("Input message needs either a value or a failure set.");
46
- }
47
- }
48
- exports.inputMessage = inputMessage;
49
- function outputMessage(value, failure) {
50
- if (value !== undefined) {
51
- return new types_js_1.Message(protocol_js_1.OUTPUT_ENTRY_MESSAGE_TYPE, new protocol_js_1.OutputEntryMessage({
52
- result: { case: "value", value: Buffer.from(value) },
53
- }));
54
- }
55
- else if (failure !== undefined) {
56
- return new types_js_1.Message(protocol_js_1.OUTPUT_ENTRY_MESSAGE_TYPE, new protocol_js_1.OutputEntryMessage({
57
- result: { case: "failure", value: failure },
58
- }));
59
- }
60
- else {
61
- return new types_js_1.Message(protocol_js_1.OUTPUT_ENTRY_MESSAGE_TYPE, new protocol_js_1.OutputEntryMessage({
62
- result: {
63
- case: "failure",
64
- value: new protocol_pb_js_1.Failure({
65
- code: 13,
66
- message: `Uncaught exception for invocation id abcd`,
67
- }),
68
- },
69
- }));
70
- }
71
- }
72
- exports.outputMessage = outputMessage;
73
- function getStateMessage(key, value, empty, failure, serde) {
74
- if (empty === true) {
75
- return new types_js_1.Message(protocol_js_1.GET_STATE_ENTRY_MESSAGE_TYPE, new protocol_js_1.GetStateEntryMessage({
76
- key: new TextEncoder().encode(key),
77
- result: { case: "empty", value: new protobuf_1.Empty() },
78
- }), true);
79
- }
80
- else if (value !== undefined) {
81
- return new types_js_1.Message(protocol_js_1.GET_STATE_ENTRY_MESSAGE_TYPE, new protocol_js_1.GetStateEntryMessage({
82
- key: new TextEncoder().encode(key),
83
- result: {
84
- case: "value",
85
- value: (serde ?? (0, rpc_js_1.defaultSerde)()).serialize(value),
86
- },
87
- }), true);
88
- }
89
- else if (failure !== undefined) {
90
- return new types_js_1.Message(protocol_js_1.GET_STATE_ENTRY_MESSAGE_TYPE, new protocol_js_1.GetStateEntryMessage({
91
- key: new TextEncoder().encode(key),
92
- result: { case: "failure", value: failure },
93
- }), true);
94
- }
95
- else {
96
- return new types_js_1.Message(protocol_js_1.GET_STATE_ENTRY_MESSAGE_TYPE, new protocol_js_1.GetStateEntryMessage({
97
- key: new TextEncoder().encode(key),
98
- }), false);
99
- }
100
- }
101
- exports.getStateMessage = getStateMessage;
102
- function getStateMessageWithEmptyResult(key) {
103
- return getStateMessage(key, undefined, true);
104
- }
105
- exports.getStateMessageWithEmptyResult = getStateMessageWithEmptyResult;
106
- function getStateKeysMessage(value) {
107
- if (value === undefined) {
108
- return new types_js_1.Message(protocol_js_1.GET_STATE_KEYS_ENTRY_MESSAGE_TYPE, new protocol_js_1.GetStateKeysEntryMessage({}), false);
109
- }
110
- else {
111
- return new types_js_1.Message(protocol_js_1.GET_STATE_KEYS_ENTRY_MESSAGE_TYPE, new protocol_js_1.GetStateKeysEntryMessage({
112
- result: {
113
- case: "value",
114
- value: { keys: value.map((b) => new TextEncoder().encode(b)) },
115
- },
116
- }), true);
117
- }
118
- }
119
- exports.getStateKeysMessage = getStateKeysMessage;
120
- function setStateMessage(key, value) {
121
- return new types_js_1.Message(protocol_js_1.SET_STATE_ENTRY_MESSAGE_TYPE, new protocol_js_1.SetStateEntryMessage({
122
- key: new TextEncoder().encode(key),
123
- value: (0, rpc_js_1.defaultSerde)().serialize(value),
124
- }));
125
- }
126
- exports.setStateMessage = setStateMessage;
127
- function clearStateMessage(key) {
128
- return new types_js_1.Message(protocol_js_1.CLEAR_STATE_ENTRY_MESSAGE_TYPE, new protocol_js_1.ClearStateEntryMessage({
129
- key: new TextEncoder().encode(key),
130
- }));
131
- }
132
- exports.clearStateMessage = clearStateMessage;
133
- function sleepMessage(wakeupTime, empty, failure) {
134
- if (empty !== undefined) {
135
- return new types_js_1.Message(protocol_js_1.SLEEP_ENTRY_MESSAGE_TYPE, new protocol_js_1.SleepEntryMessage({
136
- wakeUpTime: protobuf_1.protoInt64.parse(wakeupTime),
137
- result: { case: "empty", value: empty },
138
- }));
139
- }
140
- else if (failure !== undefined) {
141
- return new types_js_1.Message(protocol_js_1.SLEEP_ENTRY_MESSAGE_TYPE, new protocol_js_1.SleepEntryMessage({
142
- wakeUpTime: protobuf_1.protoInt64.parse(wakeupTime),
143
- result: { case: "failure", value: failure },
144
- }));
145
- }
146
- else {
147
- return new types_js_1.Message(protocol_js_1.SLEEP_ENTRY_MESSAGE_TYPE, new protocol_js_1.SleepEntryMessage({
148
- wakeUpTime: protobuf_1.protoInt64.parse(wakeupTime),
149
- }));
150
- }
151
- }
152
- exports.sleepMessage = sleepMessage;
153
- function completionMessage(index,
154
- /* eslint-disable @typescript-eslint/no-explicit-any */
155
- value, empty, failure) {
156
- if (value !== undefined) {
157
- return new types_js_1.Message(protocol_js_1.COMPLETION_MESSAGE_TYPE, new protocol_js_1.CompletionMessage({
158
- entryIndex: index,
159
- // eslint-disable-next-line @typescript-eslint/no-unsafe-argument
160
- result: {
161
- case: "value",
162
- value: value instanceof Uint8Array
163
- ? value
164
- : new TextEncoder().encode(value),
165
- },
166
- }));
167
- }
168
- else if (empty) {
169
- return new types_js_1.Message(protocol_js_1.COMPLETION_MESSAGE_TYPE, new protocol_js_1.CompletionMessage({
170
- entryIndex: index,
171
- result: { case: "empty", value: new protobuf_1.Empty() },
172
- }));
173
- }
174
- else if (failure != undefined) {
175
- return new types_js_1.Message(protocol_js_1.COMPLETION_MESSAGE_TYPE, new protocol_js_1.CompletionMessage({
176
- entryIndex: index,
177
- result: { case: "failure", value: failure },
178
- }));
179
- }
180
- else {
181
- return new types_js_1.Message(protocol_js_1.COMPLETION_MESSAGE_TYPE, new protocol_js_1.CompletionMessage({
182
- entryIndex: index,
183
- }));
184
- }
185
- }
186
- exports.completionMessage = completionMessage;
187
- function completionMessageWithEmpty(index) {
188
- return new types_js_1.Message(protocol_js_1.COMPLETION_MESSAGE_TYPE, new protocol_js_1.CompletionMessage({
189
- entryIndex: index,
190
- result: { case: "empty", value: new protobuf_1.Empty() },
191
- }));
192
- }
193
- exports.completionMessageWithEmpty = completionMessageWithEmpty;
194
- function ackMessage(index) {
195
- return new types_js_1.Message(protocol_js_1.ENTRY_ACK_MESSAGE_TYPE, new protocol_js_1.EntryAckMessage({
196
- entryIndex: index,
197
- }));
198
- }
199
- exports.ackMessage = ackMessage;
200
- function invokeMessage(serviceName, handlerName, parameter, value, failure, key) {
201
- if (value != undefined) {
202
- return new types_js_1.Message(protocol_js_1.INVOKE_ENTRY_MESSAGE_TYPE, new protocol_js_1.CallEntryMessage({
203
- serviceName: serviceName,
204
- handlerName: handlerName,
205
- parameter,
206
- result: { case: "value", value: value },
207
- key,
208
- }));
209
- }
210
- else if (failure != undefined) {
211
- return new types_js_1.Message(protocol_js_1.INVOKE_ENTRY_MESSAGE_TYPE, new protocol_js_1.CallEntryMessage({
212
- serviceName: serviceName,
213
- handlerName: handlerName,
214
- parameter: parameter,
215
- result: { case: "failure", value: failure },
216
- key,
217
- }));
218
- }
219
- else {
220
- return new types_js_1.Message(protocol_js_1.INVOKE_ENTRY_MESSAGE_TYPE, new protocol_js_1.CallEntryMessage({
221
- serviceName: serviceName,
222
- handlerName: handlerName,
223
- parameter: parameter,
224
- key,
225
- }));
226
- }
227
- }
228
- exports.invokeMessage = invokeMessage;
229
- function backgroundInvokeMessage(serviceName, handlerName, parameter, invokeTime, key) {
230
- return invokeTime
231
- ? new types_js_1.Message(protocol_js_1.BACKGROUND_INVOKE_ENTRY_MESSAGE_TYPE, new protocol_js_1.OneWayCallEntryMessage({
232
- serviceName: serviceName,
233
- handlerName: handlerName,
234
- parameter,
235
- invokeTime: protobuf_1.protoInt64.parse(invokeTime),
236
- key,
237
- }))
238
- : new types_js_1.Message(protocol_js_1.BACKGROUND_INVOKE_ENTRY_MESSAGE_TYPE, new protocol_js_1.OneWayCallEntryMessage({
239
- serviceName: serviceName,
240
- handlerName: handlerName,
241
- parameter: parameter,
242
- }));
243
- }
244
- exports.backgroundInvokeMessage = backgroundInvokeMessage;
245
- function sideEffectMessage(value, failure, name) {
246
- if (value !== undefined) {
247
- return new types_js_1.Message(protocol_js_1.SIDE_EFFECT_ENTRY_MESSAGE_TYPE, new protocol_pb_js_1.RunEntryMessage({
248
- name,
249
- result: { case: "value", value: (0, rpc_js_1.defaultSerde)().serialize(value) },
250
- }), false, true);
251
- }
252
- else if (failure !== undefined) {
253
- return new types_js_1.Message(protocol_js_1.SIDE_EFFECT_ENTRY_MESSAGE_TYPE, new protocol_pb_js_1.RunEntryMessage({
254
- name,
255
- result: { case: "failure", value: failure },
256
- }), false, true);
257
- }
258
- else {
259
- return new types_js_1.Message(protocol_js_1.SIDE_EFFECT_ENTRY_MESSAGE_TYPE, new protocol_pb_js_1.RunEntryMessage({ name }), false, true);
260
- }
261
- }
262
- exports.sideEffectMessage = sideEffectMessage;
263
- function awakeableMessage(payload, failure) {
264
- if (payload) {
265
- return new types_js_1.Message(protocol_js_1.AWAKEABLE_ENTRY_MESSAGE_TYPE, new protocol_js_1.AwakeableEntryMessage({
266
- result: { case: "value", value: (0, rpc_js_1.defaultSerde)().serialize(payload) },
267
- }));
268
- }
269
- else if (failure) {
270
- return new types_js_1.Message(protocol_js_1.AWAKEABLE_ENTRY_MESSAGE_TYPE, new protocol_js_1.AwakeableEntryMessage({
271
- result: { case: "failure", value: failure },
272
- }));
273
- }
274
- else {
275
- return new types_js_1.Message(protocol_js_1.AWAKEABLE_ENTRY_MESSAGE_TYPE, new protocol_js_1.AwakeableEntryMessage());
276
- }
277
- }
278
- exports.awakeableMessage = awakeableMessage;
279
- function resolveAwakeableMessage(id, payload) {
280
- return new types_js_1.Message(protocol_js_1.COMPLETE_AWAKEABLE_ENTRY_MESSAGE_TYPE, new protocol_js_1.CompleteAwakeableEntryMessage({
281
- id: id,
282
- result: {
283
- case: "value",
284
- value: (0, rpc_js_1.defaultSerde)().serialize(payload),
285
- },
286
- }));
287
- }
288
- exports.resolveAwakeableMessage = resolveAwakeableMessage;
289
- function rejectAwakeableMessage(id, reason) {
290
- return new types_js_1.Message(protocol_js_1.COMPLETE_AWAKEABLE_ENTRY_MESSAGE_TYPE, new protocol_js_1.CompleteAwakeableEntryMessage({
291
- id: id,
292
- result: {
293
- case: "failure",
294
- value: { code: errors_js_1.UNKNOWN_ERROR_CODE, message: reason },
295
- },
296
- }));
297
- }
298
- exports.rejectAwakeableMessage = rejectAwakeableMessage;
299
- function suspensionMessage(entryIndices) {
300
- return new types_js_1.Message(protocol_js_1.SUSPENSION_MESSAGE_TYPE, new protocol_js_1.SuspensionMessage({
301
- entryIndexes: entryIndices,
302
- }));
303
- }
304
- exports.suspensionMessage = suspensionMessage;
305
- function combinatorEntryMessage(combinatorId, journalEntriesOrder) {
306
- return new types_js_1.Message(protocol_js_1.COMBINATOR_ENTRY_MESSAGE, new javascript_pb_js_1.CombinatorEntryMessage({
307
- combinatorId,
308
- journalEntriesOrder,
309
- }), undefined, true);
310
- }
311
- exports.combinatorEntryMessage = combinatorEntryMessage;
312
- function failure(msg, code = errors_js_1.INTERNAL_ERROR_CODE) {
313
- return new protocol_pb_js_1.Failure({ code: code, message: msg });
314
- }
315
- exports.failure = failure;
316
- function greetRequest(myName) {
317
- return (0, rpc_js_1.defaultSerde)().serialize({ name: myName });
318
- }
319
- exports.greetRequest = greetRequest;
320
- function greetResponse(myGreeting) {
321
- return (0, rpc_js_1.defaultSerde)().serialize({ greeting: myGreeting });
322
- }
323
- exports.greetResponse = greetResponse;
324
- function errorMessage(failure, ctx) {
325
- return new types_js_1.Message(protocol_js_1.ERROR_MESSAGE_TYPE, new protocol_js_1.ErrorMessage({
326
- message: failure.message,
327
- code: failure.code,
328
- relatedEntryIndex: ctx?.relatedEntryIndex,
329
- relatedEntryType: ctx?.relatedEntryType
330
- ? Number(ctx.relatedEntryType)
331
- : undefined,
332
- relatedEntryName: ctx?.relatedEntryName,
333
- }));
334
- }
335
- exports.errorMessage = errorMessage;
336
- function checkError(outputMsg, errorMessage, code = errors_js_1.INTERNAL_ERROR_CODE) {
337
- (0, vitest_1.expect)(outputMsg.messageType).toEqual(protocol_js_1.ERROR_MESSAGE_TYPE);
338
- (0, vitest_1.expect)(outputMsg.message.code).toStrictEqual(code);
339
- (0, vitest_1.expect)(outputMsg.message.message).toContain(errorMessage);
340
- }
341
- exports.checkError = checkError;
342
- function checkJournalMismatchError(outputMsg) {
343
- checkError(outputMsg, "Journal mismatch: Replayed journal entries did not correspond to the user code. The user code has to be deterministic!", errors_js_1.RestateErrorCodes.JOURNAL_MISMATCH);
344
- }
345
- exports.checkJournalMismatchError = checkJournalMismatchError;
346
- function checkTerminalError(outputMsg, errorMessage) {
347
- (0, vitest_1.expect)(outputMsg.messageType).toEqual(protocol_js_1.OUTPUT_ENTRY_MESSAGE_TYPE);
348
- const res = outputMsg.message.result;
349
- (0, vitest_1.expect)(res.case === "failure" && res.value.message).toContain(errorMessage);
350
- }
351
- exports.checkTerminalError = checkTerminalError;
352
- function getAwakeableId(entryIndex) {
353
- const encodedEntryIndex = Buffer.alloc(4 /* Size of u32 */);
354
- encodedEntryIndex.writeUInt32BE(entryIndex);
355
- return (protocol_js_1.AWAKEABLE_IDENTIFIER_PREFIX +
356
- Buffer.concat([
357
- Buffer.from("f311f1fdcb9863f0018bd3400ecd7d69b547204e776218b2", "hex"),
358
- encodedEntryIndex,
359
- ]).toString("base64url"));
360
- }
361
- exports.getAwakeableId = getAwakeableId;
362
- function keyVal(key, value) {
363
- return [new TextEncoder().encode(key), (0, rpc_js_1.defaultSerde)().serialize(value)];
364
- }
365
- exports.keyVal = keyVal;
366
- exports.END_MESSAGE = new types_js_1.Message(protocol_js_1.END_MESSAGE_TYPE, new protocol_js_1.EndMessage());
367
- exports.CLEAR_ALL_STATE_ENTRY_MESSAGE = new types_js_1.Message(protocol_js_1.CLEAR_ALL_STATE_ENTRY_MESSAGE_TYPE, new protocol_js_1.ClearAllStateEntryMessage());
368
- //# sourceMappingURL=protoutils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"protoutils.js","sourceRoot":"","sources":["../../../test/protoutils.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=service_bind.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"service_bind.test.d.ts","sourceRoot":"","sources":["../../../test/service_bind.test.ts"],"names":[],"mappings":""}
@@ -1,118 +0,0 @@
1
- "use strict";
2
- /*
3
- * Copyright (c) 2023-2024 - Restate Software, Inc., Restate GmbH
4
- *
5
- * This file is part of the Restate SDK for Node.js/TypeScript,
6
- * which is released under the MIT license.
7
- *
8
- * You can find a copy of the license in file LICENSE in the root
9
- * directory of this repository or package, or at
10
- * https://github.com/restatedev/sdk-typescript/blob/main/LICENSE
11
- */
12
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
13
- if (k2 === undefined) k2 = k;
14
- var desc = Object.getOwnPropertyDescriptor(m, k);
15
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
16
- desc = { enumerable: true, get: function() { return m[k]; } };
17
- }
18
- Object.defineProperty(o, k2, desc);
19
- }) : (function(o, m, k, k2) {
20
- if (k2 === undefined) k2 = k;
21
- o[k2] = m[k];
22
- }));
23
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
24
- Object.defineProperty(o, "default", { enumerable: true, value: v });
25
- }) : function(o, v) {
26
- o["default"] = v;
27
- });
28
- var __importStar = (this && this.__importStar) || function (mod) {
29
- if (mod && mod.__esModule) return mod;
30
- var result = {};
31
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
32
- __setModuleDefault(result, mod);
33
- return result;
34
- };
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- const testdriver_js_1 = require("./testdriver.js");
37
- const restate = __importStar(require("../src/public_api.js"));
38
- const protoutils_js_1 = require("./protoutils.js");
39
- const vitest_1 = require("vitest");
40
- const greeter = {
41
- // eslint-disable-next-line @typescript-eslint/require-await
42
- greet: async (
43
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
44
- ctx,
45
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
46
- req) => {
47
- return testdriver_js_1.TestResponse.create({ greeting: `Hello` });
48
- },
49
- };
50
- const greeterFoo = {
51
- /* eslint-disable @typescript-eslint/no-unused-vars */
52
- greet(ctx, req) {
53
- return this.foo(ctx, req);
54
- },
55
- // eslint-disable-next-line @typescript-eslint/require-await
56
- async foo(ctx, req) {
57
- return testdriver_js_1.TestResponse.create({ greeting: `Hello` });
58
- },
59
- };
60
- (0, vitest_1.describe)("BindService", () => {
61
- (0, vitest_1.it)("should bind object literals", async () => {
62
- await new testdriver_js_1.TestDriver(greeter, [
63
- (0, protoutils_js_1.startMessage)({ knownEntries: 1 }),
64
- (0, protoutils_js_1.inputMessage)((0, protoutils_js_1.greetRequest)("Pete")),
65
- ]).run();
66
- });
67
- (0, vitest_1.it)("should bind and preserve `this`", async () => {
68
- await new testdriver_js_1.TestDriver(greeterFoo, [
69
- (0, protoutils_js_1.startMessage)({ knownEntries: 1 }),
70
- (0, protoutils_js_1.inputMessage)((0, protoutils_js_1.greetRequest)("Pete")),
71
- ]).run();
72
- });
73
- });
74
- const inputBytes = restate.service({
75
- name: "acceptBytes",
76
- handlers: {
77
- greeter: restate.handlers.handler({
78
- input: restate.serde.binary,
79
- },
80
- // eslint-disable-next-line @typescript-eslint/require-await
81
- async (_ctx, audio) => {
82
- return { length: audio.length };
83
- }),
84
- },
85
- });
86
- const inputBytesWithCustomAccept = restate.service({
87
- name: "acceptBytes",
88
- handlers: {
89
- greeter: restate.handlers.handler({
90
- accept: "application/*",
91
- input: restate.serde.binary,
92
- },
93
- // eslint-disable-next-line @typescript-eslint/require-await
94
- async (_ctx, audio) => {
95
- return { length: audio.length };
96
- }),
97
- },
98
- });
99
- (0, vitest_1.describe)("AcceptBytes", () => {
100
- (0, vitest_1.it)("should accept bytes", async () => {
101
- const result = await (0, testdriver_js_1.testService)(inputBytes).run({
102
- input: [(0, protoutils_js_1.startMessage)(), (0, protoutils_js_1.inputMessage)(new Uint8Array([0, 1, 2, 3, 4]))],
103
- });
104
- (0, vitest_1.expect)(result).toStrictEqual([
105
- (0, protoutils_js_1.outputMessage)(new TextEncoder().encode(JSON.stringify({ length: 5 }))),
106
- protoutils_js_1.END_MESSAGE,
107
- ]);
108
- });
109
- (0, vitest_1.it)("should declare accept content type correctly", () => {
110
- const svc = (0, testdriver_js_1.testService)(inputBytes).serviceDiscovery();
111
- (0, vitest_1.expect)(svc.handlers[0]?.input?.contentType).toEqual(restate.serde.binary.contentType);
112
- });
113
- (0, vitest_1.it)("should declare accept content type correctly when custom accept is provided", () => {
114
- const svc = (0, testdriver_js_1.testService)(inputBytesWithCustomAccept).serviceDiscovery();
115
- (0, vitest_1.expect)(svc.handlers[0]?.input?.contentType).toEqual("application/*");
116
- });
117
- });
118
- //# sourceMappingURL=service_bind.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"service_bind.test.js","sourceRoot":"","sources":["../../../test/service_bind.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=side_effect.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"side_effect.test.d.ts","sourceRoot":"","sources":["../../../test/side_effect.test.ts"],"names":[],"mappings":""}
@@ -1,133 +0,0 @@
1
- "use strict";
2
- /*
3
- * Copyright (c) 2023-2024 - Restate Software, Inc., Restate GmbH
4
- *
5
- * This file is part of the Restate SDK for Node.js/TypeScript,
6
- * which is released under the MIT license.
7
- *
8
- * You can find a copy of the license in file LICENSE in the root
9
- * directory of this repository or package, or at
10
- * https://github.com/restatedev/sdk-typescript/blob/main/LICENSE
11
- */
12
- Object.defineProperty(exports, "__esModule", { value: true });
13
- const testdriver_js_1 = require("./testdriver.js");
14
- const protoutils_js_1 = require("./protoutils.js");
15
- const public_api_js_1 = require("../src/public_api.js");
16
- const protocol_js_1 = require("../src/types/protocol.js");
17
- const vitest_1 = require("vitest");
18
- class GreeterWithName {
19
- async greet(ctx) {
20
- return await ctx.run("greet", () => testdriver_js_1.TestResponse.create({ greeting: `Hello` }));
21
- }
22
- }
23
- class GreeterNoThrows {
24
- async greet(ctx) {
25
- return await ctx.run(() => testdriver_js_1.TestResponse.create({ greeting: `Hello` }));
26
- }
27
- }
28
- class GreeterThrowsTerm {
29
- async greet(ctx) {
30
- return await ctx.run(() => {
31
- throw new public_api_js_1.TerminalError("oh no");
32
- });
33
- }
34
- }
35
- class GreeterThrowsRecoverable {
36
- async greet(ctx) {
37
- return await ctx.run("greet", () => {
38
- throw new TypeError("oh no");
39
- });
40
- }
41
- }
42
- class GreeterTriesToCatchNonTerminal {
43
- async greet(ctx) {
44
- try {
45
- const result = await ctx.run("greet", () => Promise.reject(new TypeError("oh no")));
46
- return result;
47
- }
48
- catch (e) {
49
- ctx.set("foo", "bar");
50
- return testdriver_js_1.TestResponse.create({ greeting: "bye" });
51
- }
52
- }
53
- }
54
- (0, vitest_1.describe)("Greeter", () => {
55
- (0, vitest_1.it)("That does not throw any exception is added to the journal", async () => {
56
- const result = await new testdriver_js_1.TestDriver(new GreeterWithName(), [
57
- (0, protoutils_js_1.startMessage)({ knownEntries: 1, key: "Pete" }),
58
- (0, protoutils_js_1.inputMessage)((0, protoutils_js_1.greetRequest)("Pete")),
59
- ]).run();
60
- (0, vitest_1.expect)(result).toStrictEqual([
61
- (0, protoutils_js_1.sideEffectMessage)({ greeting: "Hello" }, undefined, "greet"),
62
- (0, protoutils_js_1.suspensionMessage)([1]),
63
- ]);
64
- });
65
- (0, vitest_1.it)("That does not throw any exception is added to the journal", async () => {
66
- const result = await new testdriver_js_1.TestDriver(new GreeterNoThrows(), [
67
- (0, protoutils_js_1.startMessage)({ knownEntries: 1, key: "Pete" }),
68
- (0, protoutils_js_1.inputMessage)((0, protoutils_js_1.greetRequest)("Pete")),
69
- ]).run();
70
- (0, vitest_1.expect)(result).toStrictEqual([
71
- (0, protoutils_js_1.sideEffectMessage)({ greeting: "Hello" }),
72
- (0, protoutils_js_1.suspensionMessage)([1]),
73
- ]);
74
- });
75
- (0, vitest_1.it)("That does not throw any exception completes successfully", async () => {
76
- const result = await new testdriver_js_1.TestDriver(new GreeterNoThrows(), [
77
- (0, protoutils_js_1.startMessage)({ knownEntries: 2, key: "Pete" }),
78
- (0, protoutils_js_1.inputMessage)((0, protoutils_js_1.greetRequest)("Pete")),
79
- (0, protoutils_js_1.sideEffectMessage)({ greeting: "Hello" }),
80
- ]).run();
81
- (0, vitest_1.expect)(result).toStrictEqual([
82
- (0, protoutils_js_1.outputMessage)((0, protoutils_js_1.greetResponse)("Hello")),
83
- protoutils_js_1.END_MESSAGE,
84
- ]);
85
- });
86
- (0, vitest_1.it)("A terminal exception thrown is added to the journal", async () => {
87
- const result = await new testdriver_js_1.TestDriver(new GreeterThrowsTerm(), [
88
- (0, protoutils_js_1.startMessage)({ knownEntries: 1, key: "Pete" }),
89
- (0, protoutils_js_1.inputMessage)((0, protoutils_js_1.greetRequest)("Pete")),
90
- ]).run();
91
- const f = (0, protoutils_js_1.failure)("oh no");
92
- (0, vitest_1.expect)(result).toStrictEqual([
93
- (0, protoutils_js_1.sideEffectMessage)(undefined, f),
94
- (0, protoutils_js_1.suspensionMessage)([1]),
95
- ]);
96
- });
97
- (0, vitest_1.it)("After a terminal exception is acknowledge, the execution ends", async () => {
98
- const f = (0, protoutils_js_1.failure)("oh no");
99
- const result = await new testdriver_js_1.TestDriver(new GreeterThrowsTerm(), [
100
- (0, protoutils_js_1.startMessage)({ knownEntries: 3, key: "Pete" }),
101
- (0, protoutils_js_1.inputMessage)((0, protoutils_js_1.greetRequest)("Pete")),
102
- (0, protoutils_js_1.sideEffectMessage)(undefined, f),
103
- ]).run();
104
- (0, vitest_1.expect)(result).toStrictEqual([(0, protoutils_js_1.outputMessage)(undefined, f), protoutils_js_1.END_MESSAGE]);
105
- });
106
- (0, vitest_1.it)("A non terminal exception (1) does not record the sideEffect in the journal. (2) ends the current attempt", async () => {
107
- const result = await new testdriver_js_1.TestDriver(new GreeterThrowsRecoverable(), [
108
- (0, protoutils_js_1.startMessage)({ knownEntries: 1, key: "Pete" }),
109
- (0, protoutils_js_1.inputMessage)((0, protoutils_js_1.greetRequest)("Pete")),
110
- ]).run();
111
- const f = (0, protoutils_js_1.failure)("oh no");
112
- (0, vitest_1.expect)(result).toStrictEqual([
113
- (0, protoutils_js_1.errorMessage)(f, {
114
- relatedEntryType: protocol_js_1.SIDE_EFFECT_ENTRY_MESSAGE_TYPE,
115
- relatedEntryName: "greet",
116
- }),
117
- ]);
118
- });
119
- (0, vitest_1.it)("Local recovery from a non terminal exception, has no effect.", async () => {
120
- const result = await new testdriver_js_1.TestDriver(new GreeterTriesToCatchNonTerminal(), [
121
- (0, protoutils_js_1.startMessage)({ knownEntries: 1, key: "Pete" }),
122
- (0, protoutils_js_1.inputMessage)((0, protoutils_js_1.greetRequest)("Pete")),
123
- ]).run();
124
- const f = (0, protoutils_js_1.failure)("oh no");
125
- (0, vitest_1.expect)(result).toStrictEqual([
126
- (0, protoutils_js_1.errorMessage)(f, {
127
- relatedEntryType: protocol_js_1.SIDE_EFFECT_ENTRY_MESSAGE_TYPE,
128
- relatedEntryName: "greet",
129
- }),
130
- ]);
131
- });
132
- });
133
- //# sourceMappingURL=side_effect.test.js.map