@versori/run 0.7.0-alpha.9 → 0.7.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 (591) hide show
  1. package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/consumer.d.ts +2 -2
  2. package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/consumer.d.ts.map +1 -1
  3. package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/consumer.js +1 -1
  4. package/esm/deps/jsr.io/@nats-io/jetstream/3.4.0/src/internal_mod.d.ts +14 -0
  5. package/esm/deps/jsr.io/@nats-io/jetstream/3.4.0/src/internal_mod.d.ts.map +1 -0
  6. package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/internal_mod.js +1 -1
  7. package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsapi_types.d.ts +96 -22
  8. package/esm/deps/jsr.io/@nats-io/jetstream/3.4.0/src/jsapi_types.d.ts.map +1 -0
  9. package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsapi_types.js +21 -2
  10. package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsbaseclient_api.d.ts +9 -4
  11. package/esm/deps/jsr.io/@nats-io/jetstream/3.4.0/src/jsbaseclient_api.d.ts.map +1 -0
  12. package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsbaseclient_api.js +34 -23
  13. package/{script/deps/jsr.io/@nats-io/jetstream/3.3.1 → esm/deps/jsr.io/@nats-io/jetstream/3.4.0}/src/jsclient.d.ts +20 -2
  14. package/esm/deps/jsr.io/@nats-io/jetstream/3.4.0/src/jsclient.d.ts.map +1 -0
  15. package/esm/deps/jsr.io/@nats-io/jetstream/3.4.0/src/jsclient.js +763 -0
  16. package/{script/deps/jsr.io/@nats-io/jetstream/3.3.1 → esm/deps/jsr.io/@nats-io/jetstream/3.4.0}/src/jserrors.d.ts +1 -1
  17. package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jserrors.d.ts.map +1 -1
  18. package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jslister.d.ts.map +1 -1
  19. package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jslister.js +1 -1
  20. package/{script/deps/jsr.io/@nats-io/jetstream/3.3.1 → esm/deps/jsr.io/@nats-io/jetstream/3.4.0}/src/jsm_direct.d.ts +2 -2
  21. package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsm_direct.d.ts.map +1 -1
  22. package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsm_direct.js +1 -1
  23. package/{script/deps/jsr.io/@nats-io/jetstream/3.3.1 → esm/deps/jsr.io/@nats-io/jetstream/3.4.0}/src/jsmconsumer_api.d.ts +7 -4
  24. package/esm/deps/jsr.io/@nats-io/jetstream/3.4.0/src/jsmconsumer_api.d.ts.map +1 -0
  25. package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsmconsumer_api.js +51 -6
  26. package/{script/deps/jsr.io/@nats-io/jetstream/3.3.1 → esm/deps/jsr.io/@nats-io/jetstream/3.4.0}/src/jsmsg.d.ts +1 -1
  27. package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsmsg.d.ts.map +1 -1
  28. package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsmsg.js +1 -1
  29. package/{script/deps/jsr.io/@nats-io/jetstream/3.3.1 → esm/deps/jsr.io/@nats-io/jetstream/3.4.0}/src/jsmstream_api.d.ts +5 -2
  30. package/esm/deps/jsr.io/@nats-io/jetstream/3.4.0/src/jsmstream_api.d.ts.map +1 -0
  31. package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsmstream_api.js +31 -4
  32. package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsutil.d.ts.map +1 -1
  33. package/esm/deps/jsr.io/@nats-io/jetstream/3.4.0/src/mod.d.ts +4 -0
  34. package/esm/deps/jsr.io/@nats-io/jetstream/3.4.0/src/mod.d.ts.map +1 -0
  35. package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/pushconsumer.d.ts +2 -2
  36. package/{script/deps/jsr.io/@nats-io/jetstream/3.3.1 → esm/deps/jsr.io/@nats-io/jetstream/3.4.0}/src/pushconsumer.d.ts.map +1 -1
  37. package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/pushconsumer.js +9 -3
  38. package/{script/deps/jsr.io/@nats-io/jetstream/3.3.1 → esm/deps/jsr.io/@nats-io/jetstream/3.4.0}/src/types.d.ts +232 -9
  39. package/esm/deps/jsr.io/@nats-io/jetstream/3.4.0/src/types.d.ts.map +1 -0
  40. package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/types.js +7 -2
  41. package/{script/deps/jsr.io/@nats-io/kv/3.3.1 → esm/deps/jsr.io/@nats-io/kv/3.4.0}/src/internal_mod.d.ts.map +1 -1
  42. package/{script/deps/jsr.io/@nats-io/kv/3.3.1 → esm/deps/jsr.io/@nats-io/kv/3.4.0}/src/kv.d.ts +3 -3
  43. package/esm/deps/jsr.io/@nats-io/kv/{3.3.1 → 3.4.0}/src/kv.d.ts.map +1 -1
  44. package/esm/deps/jsr.io/@nats-io/kv/{3.3.1 → 3.4.0}/src/kv.js +3 -3
  45. package/{script/deps/jsr.io/@nats-io/kv/3.3.1 → esm/deps/jsr.io/@nats-io/kv/3.4.0}/src/mod.d.ts.map +1 -1
  46. package/esm/deps/jsr.io/@nats-io/kv/{3.3.1 → 3.4.0}/src/types.d.ts +2 -2
  47. package/esm/deps/jsr.io/@nats-io/kv/{3.3.1 → 3.4.0}/src/types.d.ts.map +1 -1
  48. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/authenticator.d.ts.map +1 -1
  49. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/bench.d.ts.map +1 -1
  50. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/codec.d.ts.map +1 -1
  51. package/{script/deps/jsr.io/@nats-io/nats-core/3.3.1 → esm/deps/jsr.io/@nats-io/nats-core/3.4.0}/src/core.d.ts +84 -11
  52. package/esm/deps/jsr.io/@nats-io/nats-core/3.4.0/src/core.d.ts.map +1 -0
  53. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/databuffer.d.ts.map +1 -1
  54. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/denobuffer.d.ts.map +1 -1
  55. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/encoders.d.ts.map +1 -1
  56. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/errors.d.ts.map +1 -1
  57. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/headers.d.ts.map +1 -1
  58. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/heartbeats.d.ts.map +1 -1
  59. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/idleheartbeat_monitor.d.ts.map +1 -1
  60. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/internal_mod.d.ts +1 -1
  61. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/internal_mod.d.ts.map +1 -1
  62. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/ipparser.d.ts.map +1 -1
  63. package/{script/deps/jsr.io/@nats-io/nats-core/3.3.1 → esm/deps/jsr.io/@nats-io/nats-core/3.4.0}/src/mod.d.ts +1 -1
  64. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/mod.d.ts.map +1 -1
  65. package/{script/deps/jsr.io/@nats-io/nats-core/3.3.1 → esm/deps/jsr.io/@nats-io/nats-core/3.4.0}/src/msg.d.ts.map +1 -1
  66. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/muxsubscription.d.ts.map +1 -1
  67. package/{script/deps/jsr.io/@nats-io/nats-core/3.3.1 → esm/deps/jsr.io/@nats-io/nats-core/3.4.0}/src/nats.d.ts +4 -1
  68. package/esm/deps/jsr.io/@nats-io/nats-core/3.4.0/src/nats.d.ts.map +1 -0
  69. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/nats.js +16 -0
  70. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/nkeys.d.ts.map +1 -1
  71. package/esm/deps/jsr.io/@nats-io/nats-core/3.4.0/src/nuid.d.ts +2 -0
  72. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/nuid.d.ts.map +1 -1
  73. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/nuid.js +1 -1
  74. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/options.d.ts.map +1 -1
  75. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/parser.d.ts +1 -1
  76. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/parser.d.ts.map +1 -1
  77. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/parser.js +11 -9
  78. package/{script/deps/jsr.io/@nats-io/nats-core/3.3.1 → esm/deps/jsr.io/@nats-io/nats-core/3.4.0}/src/protocol.d.ts +2 -1
  79. package/esm/deps/jsr.io/@nats-io/nats-core/3.4.0/src/protocol.d.ts.map +1 -0
  80. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/protocol.js +59 -5
  81. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/queued_iterator.d.ts.map +1 -1
  82. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/request.d.ts.map +1 -1
  83. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/request.js +2 -3
  84. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/semver.d.ts +1 -0
  85. package/esm/deps/jsr.io/@nats-io/nats-core/3.4.0/src/semver.d.ts.map +1 -0
  86. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/semver.js +2 -0
  87. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/servers.d.ts +26 -2
  88. package/esm/deps/jsr.io/@nats-io/nats-core/3.4.0/src/servers.d.ts.map +1 -0
  89. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/servers.js +90 -13
  90. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/transport.d.ts.map +1 -1
  91. package/{script/deps/jsr.io/@nats-io/nats-core/3.3.1 → esm/deps/jsr.io/@nats-io/nats-core/3.4.0}/src/types.d.ts.map +1 -1
  92. package/{script/deps/jsr.io/@nats-io/nats-core/3.3.1 → esm/deps/jsr.io/@nats-io/nats-core/3.4.0}/src/util.d.ts +11 -0
  93. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/util.d.ts.map +1 -1
  94. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/util.js +42 -0
  95. package/esm/deps/jsr.io/@nats-io/nats-core/3.4.0/src/version.d.ts +2 -0
  96. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/version.d.ts.map +1 -1
  97. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/version.js +1 -1
  98. package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/ws_transport.d.ts.map +1 -1
  99. package/esm/deps/jsr.io/@nats-io/nuid/3.0.0/src/mod.d.ts +15 -0
  100. package/esm/deps/jsr.io/@nats-io/nuid/3.0.0/src/mod.d.ts.map +1 -0
  101. package/esm/deps/jsr.io/@nats-io/nuid/3.0.0/src/mod.js +19 -0
  102. package/esm/deps/jsr.io/@nats-io/nuid/{2.0.3 → 3.0.0}/src/nuid.d.ts +16 -18
  103. package/esm/deps/jsr.io/@nats-io/nuid/3.0.0/src/nuid.d.ts.map +1 -0
  104. package/esm/deps/jsr.io/@nats-io/nuid/3.0.0/src/nuid.js +203 -0
  105. package/esm/deps/jsr.io/@nats-io/transport-deno/{3.3.1 → 3.4.0}/src/connect.d.ts +1 -1
  106. package/esm/deps/jsr.io/@nats-io/transport-deno/3.4.0/src/connect.d.ts.map +1 -0
  107. package/esm/deps/jsr.io/@nats-io/transport-deno/{3.3.1 → 3.4.0}/src/connect.js +1 -1
  108. package/esm/deps/jsr.io/@nats-io/transport-deno/{3.3.1 → 3.4.0}/src/deno_transport.d.ts +1 -1
  109. package/esm/deps/jsr.io/@nats-io/transport-deno/{3.3.1 → 3.4.0}/src/deno_transport.d.ts.map +1 -1
  110. package/esm/deps/jsr.io/@nats-io/transport-deno/{3.3.1 → 3.4.0}/src/deno_transport.js +1 -1
  111. package/esm/deps/jsr.io/@nats-io/transport-deno/3.4.0/src/mod.d.ts +3 -0
  112. package/{script/deps/jsr.io/@nats-io/transport-deno/3.3.1 → esm/deps/jsr.io/@nats-io/transport-deno/3.4.0}/src/mod.d.ts.map +1 -1
  113. package/esm/deps/jsr.io/@nats-io/transport-deno/3.4.0/src/mod.js +2 -0
  114. package/esm/deps/jsr.io/@nats-io/transport-deno/3.4.0/src/version.d.ts +2 -0
  115. package/esm/deps/jsr.io/@nats-io/transport-deno/3.4.0/src/version.d.ts.map +1 -0
  116. package/esm/deps/jsr.io/@nats-io/transport-deno/{3.3.1 → 3.4.0}/src/version.js +1 -1
  117. package/esm/deps/jsr.io/@std/encoding/{1.0.10 → 1.0.11}/_common64.d.ts.map +1 -1
  118. package/esm/deps/jsr.io/@std/encoding/{1.0.10 → 1.0.11}/_common64.js +1 -1
  119. package/esm/deps/jsr.io/@std/encoding/{1.0.10 → 1.0.11}/_common_detach.d.ts.map +1 -1
  120. package/esm/deps/jsr.io/@std/encoding/{1.0.10 → 1.0.11}/_common_detach.js +1 -1
  121. package/esm/deps/jsr.io/@std/encoding/{1.0.10 → 1.0.11}/_types.d.ts +1 -1
  122. package/esm/deps/jsr.io/@std/encoding/{1.0.10 → 1.0.11}/_types.d.ts.map +1 -1
  123. package/esm/deps/jsr.io/@std/encoding/1.0.11/_types.js +2 -0
  124. package/esm/deps/jsr.io/@std/encoding/{1.0.10 → 1.0.11}/base64.d.ts.map +1 -1
  125. package/esm/deps/jsr.io/@std/encoding/{1.0.10 → 1.0.11}/base64.js +1 -1
  126. package/esm/deps/jsr.io/@std/fmt/1.0.10/colors.d.ts.map +1 -0
  127. package/esm/deps/jsr.io/@std/fmt/{1.0.9 → 1.0.10}/colors.js +2 -2
  128. package/esm/deps/jsr.io/@std/fs/{1.0.23 → 1.0.24}/exists.d.ts.map +1 -1
  129. package/esm/deps/jsr.io/@std/log/0.224.14/console_handler.js +1 -1
  130. package/esm/deps/jsr.io/@std/log/0.224.14/rotating_file_handler.js +1 -1
  131. package/esm/src/context/Context.d.ts +6 -1
  132. package/esm/src/context/Context.d.ts.map +1 -1
  133. package/esm/src/context/Context.js +10 -3
  134. package/esm/src/context/VanillaContext.d.ts +1 -1
  135. package/esm/src/context/VanillaContext.d.ts.map +1 -1
  136. package/esm/src/context/VanillaContext.js +12 -5
  137. package/esm/src/context/WorkflowClient.d.ts +4 -1
  138. package/esm/src/context/WorkflowClient.d.ts.map +1 -1
  139. package/esm/src/context/WorkflowClient.js +142 -49
  140. package/esm/src/credentials/CredentialsProvider.js +1 -1
  141. package/esm/src/dsl/http/types.d.ts +2 -1
  142. package/esm/src/dsl/http/types.d.ts.map +1 -1
  143. package/esm/src/dsl/http/versori/asyncHandler.d.ts +14 -0
  144. package/esm/src/dsl/http/versori/asyncHandler.d.ts.map +1 -0
  145. package/esm/src/dsl/http/versori/asyncHandler.js +28 -0
  146. package/esm/src/dsl/http/versori/webhookmiddleware.d.ts +4 -4
  147. package/esm/src/dsl/http/versori/webhookmiddleware.d.ts.map +1 -1
  148. package/esm/src/dsl/http/versori/webhookmiddleware.js +74 -46
  149. package/esm/src/interpreter/durable/DurableInterpreter.d.ts.map +1 -1
  150. package/esm/src/interpreter/durable/DurableInterpreter.js +18 -3
  151. package/esm/src/interpreter/durable/Queue.d.ts +4 -0
  152. package/esm/src/interpreter/durable/Queue.d.ts.map +1 -1
  153. package/esm/src/interpreter/durable/compilers/catch.d.ts.map +1 -1
  154. package/esm/src/interpreter/durable/compilers/catch.js +4 -4
  155. package/esm/src/interpreter/durable/compilers/durableworkflow.d.ts.map +1 -1
  156. package/esm/src/interpreter/durable/compilers/durableworkflow.js +79 -28
  157. package/esm/src/interpreter/durable/compilers/fn.d.ts.map +1 -1
  158. package/esm/src/interpreter/durable/compilers/fn.js +7 -4
  159. package/esm/src/interpreter/durable/compilers/webhook.d.ts.map +1 -1
  160. package/esm/src/interpreter/durable/compilers/webhook.js +72 -17
  161. package/esm/src/interpreter/memory/MemoryInterpreter.d.ts.map +1 -1
  162. package/esm/src/interpreter/memory/MemoryInterpreter.js +18 -3
  163. package/esm/src/interpreter/memory/compilers/catch.d.ts.map +1 -1
  164. package/esm/src/interpreter/memory/compilers/catch.js +4 -4
  165. package/esm/src/interpreter/memory/compilers/fn.d.ts.map +1 -1
  166. package/esm/src/interpreter/memory/compilers/fn.js +7 -4
  167. package/esm/src/interpreter/memory/compilers/webhook.d.ts.map +1 -1
  168. package/esm/src/interpreter/memory/compilers/webhook.js +72 -17
  169. package/esm/src/interpreter/vanilla/ExecutionError.d.ts +1 -3
  170. package/esm/src/interpreter/vanilla/ExecutionError.d.ts.map +1 -1
  171. package/esm/src/interpreter/vanilla/ExecutionError.js +1 -3
  172. package/esm/src/interpreter/vanilla/VanillaInterpreter.d.ts.map +1 -1
  173. package/esm/src/interpreter/vanilla/VanillaInterpreter.js +19 -4
  174. package/esm/src/interpreter/vanilla/compilers/catch.d.ts.map +1 -1
  175. package/esm/src/interpreter/vanilla/compilers/catch.js +2 -2
  176. package/esm/src/interpreter/vanilla/compilers/durableworkflow.d.ts.map +1 -1
  177. package/esm/src/interpreter/vanilla/compilers/durableworkflow.js +66 -31
  178. package/esm/src/interpreter/vanilla/compilers/fn.d.ts.map +1 -1
  179. package/esm/src/interpreter/vanilla/compilers/fn.js +7 -4
  180. package/esm/src/interpreter/vanilla/compilers/webhook.d.ts.map +1 -1
  181. package/esm/src/interpreter/vanilla/compilers/webhook.js +74 -18
  182. package/esm/src/kv/KeyValue.d.ts +39 -4
  183. package/esm/src/kv/KeyValue.d.ts.map +1 -1
  184. package/esm/src/kv/fingerprintExternalUserId.d.ts +6 -0
  185. package/esm/src/kv/fingerprintExternalUserId.d.ts.map +1 -0
  186. package/esm/src/kv/fingerprintExternalUserId.js +20 -0
  187. package/esm/src/kv/memory/MemoryKeyValue.d.ts +3 -2
  188. package/esm/src/kv/memory/MemoryKeyValue.d.ts.map +1 -1
  189. package/esm/src/kv/memory/MemoryKeyValue.js +97 -19
  190. package/esm/src/kv/memory/MemoryKeyValueProvider.d.ts +4 -0
  191. package/esm/src/kv/memory/MemoryKeyValueProvider.d.ts.map +1 -1
  192. package/esm/src/kv/memory/MemoryKeyValueProvider.js +50 -0
  193. package/esm/src/kv/mod.d.ts +1 -0
  194. package/esm/src/kv/mod.d.ts.map +1 -1
  195. package/esm/src/kv/nats/NatsKeyValue.d.ts +4 -3
  196. package/esm/src/kv/nats/NatsKeyValue.d.ts.map +1 -1
  197. package/esm/src/kv/nats/NatsKeyValue.js +87 -23
  198. package/esm/src/kv/nats/NatsKeyValueProvider.d.ts +1 -1
  199. package/esm/src/kv/nats/NatsKeyValueProvider.d.ts.map +1 -1
  200. package/esm/src/kv/nats/NatsKeyValueProvider.js +17 -3
  201. package/esm/src/kv/sdk/SDKKeyValue.d.ts +9 -1
  202. package/esm/src/kv/sdk/SDKKeyValue.d.ts.map +1 -1
  203. package/esm/src/kv/sdk/SDKKeyValue.js +160 -38
  204. package/esm/src/kv/sdk/SDKKeyValueProvider.d.ts.map +1 -1
  205. package/esm/src/kv/sdk/SDKKeyValueProvider.js +12 -0
  206. package/esm/src/observability/mod.d.ts +1 -0
  207. package/esm/src/observability/mod.d.ts.map +1 -1
  208. package/esm/src/observability/mod.js +1 -0
  209. package/esm/src/observability/tracePropagation.d.ts +23 -0
  210. package/esm/src/observability/tracePropagation.d.ts.map +1 -0
  211. package/esm/src/observability/tracePropagation.js +39 -0
  212. package/package.json +1 -1
  213. package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/consumer.d.ts +2 -2
  214. package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/consumer.d.ts.map +1 -1
  215. package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/consumer.js +1 -1
  216. package/script/deps/jsr.io/@nats-io/jetstream/3.4.0/src/internal_mod.d.ts +14 -0
  217. package/script/deps/jsr.io/@nats-io/jetstream/3.4.0/src/internal_mod.d.ts.map +1 -0
  218. package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/internal_mod.js +2 -1
  219. package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsapi_types.d.ts +96 -22
  220. package/script/deps/jsr.io/@nats-io/jetstream/3.4.0/src/jsapi_types.d.ts.map +1 -0
  221. package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsapi_types.js +21 -2
  222. package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsbaseclient_api.d.ts +9 -4
  223. package/script/deps/jsr.io/@nats-io/jetstream/3.4.0/src/jsbaseclient_api.d.ts.map +1 -0
  224. package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsbaseclient_api.js +35 -23
  225. package/{esm/deps/jsr.io/@nats-io/jetstream/3.3.1 → script/deps/jsr.io/@nats-io/jetstream/3.4.0}/src/jsclient.d.ts +20 -2
  226. package/script/deps/jsr.io/@nats-io/jetstream/3.4.0/src/jsclient.d.ts.map +1 -0
  227. package/script/deps/jsr.io/@nats-io/jetstream/3.4.0/src/jsclient.js +774 -0
  228. package/{esm/deps/jsr.io/@nats-io/jetstream/3.3.1 → script/deps/jsr.io/@nats-io/jetstream/3.4.0}/src/jserrors.d.ts +1 -1
  229. package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jserrors.d.ts.map +1 -1
  230. package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jslister.d.ts.map +1 -1
  231. package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jslister.js +1 -1
  232. package/{esm/deps/jsr.io/@nats-io/jetstream/3.3.1 → script/deps/jsr.io/@nats-io/jetstream/3.4.0}/src/jsm_direct.d.ts +2 -2
  233. package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsm_direct.d.ts.map +1 -1
  234. package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsm_direct.js +1 -1
  235. package/{esm/deps/jsr.io/@nats-io/jetstream/3.3.1 → script/deps/jsr.io/@nats-io/jetstream/3.4.0}/src/jsmconsumer_api.d.ts +7 -4
  236. package/script/deps/jsr.io/@nats-io/jetstream/3.4.0/src/jsmconsumer_api.d.ts.map +1 -0
  237. package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsmconsumer_api.js +49 -4
  238. package/{esm/deps/jsr.io/@nats-io/jetstream/3.3.1 → script/deps/jsr.io/@nats-io/jetstream/3.4.0}/src/jsmsg.d.ts +1 -1
  239. package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsmsg.d.ts.map +1 -1
  240. package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsmsg.js +1 -1
  241. package/{esm/deps/jsr.io/@nats-io/jetstream/3.3.1 → script/deps/jsr.io/@nats-io/jetstream/3.4.0}/src/jsmstream_api.d.ts +5 -2
  242. package/script/deps/jsr.io/@nats-io/jetstream/3.4.0/src/jsmstream_api.d.ts.map +1 -0
  243. package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsmstream_api.js +30 -3
  244. package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsutil.d.ts.map +1 -1
  245. package/script/deps/jsr.io/@nats-io/jetstream/3.4.0/src/mod.d.ts +4 -0
  246. package/script/deps/jsr.io/@nats-io/jetstream/3.4.0/src/mod.d.ts.map +1 -0
  247. package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/pushconsumer.d.ts +2 -2
  248. package/{esm/deps/jsr.io/@nats-io/jetstream/3.3.1 → script/deps/jsr.io/@nats-io/jetstream/3.4.0}/src/pushconsumer.d.ts.map +1 -1
  249. package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/pushconsumer.js +9 -3
  250. package/{esm/deps/jsr.io/@nats-io/jetstream/3.3.1 → script/deps/jsr.io/@nats-io/jetstream/3.4.0}/src/types.d.ts +232 -9
  251. package/script/deps/jsr.io/@nats-io/jetstream/3.4.0/src/types.d.ts.map +1 -0
  252. package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/types.js +7 -2
  253. package/{esm/deps/jsr.io/@nats-io/kv/3.3.1 → script/deps/jsr.io/@nats-io/kv/3.4.0}/src/internal_mod.d.ts.map +1 -1
  254. package/{esm/deps/jsr.io/@nats-io/kv/3.3.1 → script/deps/jsr.io/@nats-io/kv/3.4.0}/src/kv.d.ts +3 -3
  255. package/script/deps/jsr.io/@nats-io/kv/{3.3.1 → 3.4.0}/src/kv.d.ts.map +1 -1
  256. package/script/deps/jsr.io/@nats-io/kv/{3.3.1 → 3.4.0}/src/kv.js +3 -3
  257. package/{esm/deps/jsr.io/@nats-io/kv/3.3.1 → script/deps/jsr.io/@nats-io/kv/3.4.0}/src/mod.d.ts.map +1 -1
  258. package/script/deps/jsr.io/@nats-io/kv/{3.3.1 → 3.4.0}/src/types.d.ts +2 -2
  259. package/script/deps/jsr.io/@nats-io/kv/{3.3.1 → 3.4.0}/src/types.d.ts.map +1 -1
  260. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/authenticator.d.ts.map +1 -1
  261. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/bench.d.ts.map +1 -1
  262. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/codec.d.ts.map +1 -1
  263. package/{esm/deps/jsr.io/@nats-io/nats-core/3.3.1 → script/deps/jsr.io/@nats-io/nats-core/3.4.0}/src/core.d.ts +84 -11
  264. package/script/deps/jsr.io/@nats-io/nats-core/3.4.0/src/core.d.ts.map +1 -0
  265. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/databuffer.d.ts.map +1 -1
  266. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/denobuffer.d.ts.map +1 -1
  267. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/encoders.d.ts.map +1 -1
  268. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/errors.d.ts.map +1 -1
  269. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/headers.d.ts.map +1 -1
  270. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/heartbeats.d.ts.map +1 -1
  271. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/idleheartbeat_monitor.d.ts.map +1 -1
  272. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/internal_mod.d.ts +1 -1
  273. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/internal_mod.d.ts.map +1 -1
  274. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/ipparser.d.ts.map +1 -1
  275. package/{esm/deps/jsr.io/@nats-io/nats-core/3.3.1 → script/deps/jsr.io/@nats-io/nats-core/3.4.0}/src/mod.d.ts +1 -1
  276. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/mod.d.ts.map +1 -1
  277. package/{esm/deps/jsr.io/@nats-io/nats-core/3.3.1 → script/deps/jsr.io/@nats-io/nats-core/3.4.0}/src/msg.d.ts.map +1 -1
  278. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/muxsubscription.d.ts.map +1 -1
  279. package/{esm/deps/jsr.io/@nats-io/nats-core/3.3.1 → script/deps/jsr.io/@nats-io/nats-core/3.4.0}/src/nats.d.ts +4 -1
  280. package/script/deps/jsr.io/@nats-io/nats-core/3.4.0/src/nats.d.ts.map +1 -0
  281. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/nats.js +16 -0
  282. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/nkeys.d.ts.map +1 -1
  283. package/script/deps/jsr.io/@nats-io/nats-core/3.4.0/src/nuid.d.ts +2 -0
  284. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/nuid.d.ts.map +1 -1
  285. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/nuid.js +3 -3
  286. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/options.d.ts.map +1 -1
  287. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/parser.d.ts +1 -1
  288. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/parser.d.ts.map +1 -1
  289. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/parser.js +11 -9
  290. package/{esm/deps/jsr.io/@nats-io/nats-core/3.3.1 → script/deps/jsr.io/@nats-io/nats-core/3.4.0}/src/protocol.d.ts +2 -1
  291. package/script/deps/jsr.io/@nats-io/nats-core/3.4.0/src/protocol.d.ts.map +1 -0
  292. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/protocol.js +59 -5
  293. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/queued_iterator.d.ts.map +1 -1
  294. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/request.d.ts.map +1 -1
  295. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/request.js +1 -2
  296. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/semver.d.ts +1 -0
  297. package/script/deps/jsr.io/@nats-io/nats-core/3.4.0/src/semver.d.ts.map +1 -0
  298. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/semver.js +2 -0
  299. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/servers.d.ts +26 -2
  300. package/script/deps/jsr.io/@nats-io/nats-core/3.4.0/src/servers.d.ts.map +1 -0
  301. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/servers.js +88 -11
  302. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/transport.d.ts.map +1 -1
  303. package/{esm/deps/jsr.io/@nats-io/nats-core/3.3.1 → script/deps/jsr.io/@nats-io/nats-core/3.4.0}/src/types.d.ts.map +1 -1
  304. package/{esm/deps/jsr.io/@nats-io/nats-core/3.3.1 → script/deps/jsr.io/@nats-io/nats-core/3.4.0}/src/util.d.ts +11 -0
  305. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/util.d.ts.map +1 -1
  306. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/util.js +43 -0
  307. package/script/deps/jsr.io/@nats-io/nats-core/3.4.0/src/version.d.ts +2 -0
  308. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/version.d.ts.map +1 -1
  309. package/script/deps/jsr.io/@nats-io/{transport-deno/3.3.1 → nats-core/3.4.0}/src/version.js +1 -1
  310. package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/ws_transport.d.ts.map +1 -1
  311. package/script/deps/jsr.io/@nats-io/nuid/3.0.0/src/mod.d.ts +15 -0
  312. package/script/deps/jsr.io/@nats-io/nuid/3.0.0/src/mod.d.ts.map +1 -0
  313. package/script/deps/jsr.io/@nats-io/nuid/3.0.0/src/mod.js +22 -0
  314. package/script/deps/jsr.io/@nats-io/nuid/{2.0.3 → 3.0.0}/src/nuid.d.ts +16 -18
  315. package/script/deps/jsr.io/@nats-io/nuid/3.0.0/src/nuid.d.ts.map +1 -0
  316. package/script/deps/jsr.io/@nats-io/nuid/3.0.0/src/nuid.js +206 -0
  317. package/script/deps/jsr.io/@nats-io/transport-deno/{3.3.1 → 3.4.0}/src/connect.d.ts +1 -1
  318. package/script/deps/jsr.io/@nats-io/transport-deno/3.4.0/src/connect.d.ts.map +1 -0
  319. package/script/deps/jsr.io/@nats-io/transport-deno/{3.3.1 → 3.4.0}/src/connect.js +1 -1
  320. package/script/deps/jsr.io/@nats-io/transport-deno/{3.3.1 → 3.4.0}/src/deno_transport.d.ts +1 -1
  321. package/script/deps/jsr.io/@nats-io/transport-deno/{3.3.1 → 3.4.0}/src/deno_transport.d.ts.map +1 -1
  322. package/script/deps/jsr.io/@nats-io/transport-deno/{3.3.1 → 3.4.0}/src/deno_transport.js +1 -1
  323. package/script/deps/jsr.io/@nats-io/transport-deno/3.4.0/src/mod.d.ts +3 -0
  324. package/{esm/deps/jsr.io/@nats-io/transport-deno/3.3.1 → script/deps/jsr.io/@nats-io/transport-deno/3.4.0}/src/mod.d.ts.map +1 -1
  325. package/script/deps/jsr.io/@nats-io/transport-deno/{3.3.1 → 3.4.0}/src/mod.js +1 -1
  326. package/script/deps/jsr.io/@nats-io/transport-deno/3.4.0/src/version.d.ts +2 -0
  327. package/script/deps/jsr.io/@nats-io/transport-deno/3.4.0/src/version.d.ts.map +1 -0
  328. package/script/deps/jsr.io/@nats-io/{nats-core/3.3.1 → transport-deno/3.4.0}/src/version.js +1 -1
  329. package/script/deps/jsr.io/@std/encoding/{1.0.10 → 1.0.11}/_common64.d.ts.map +1 -1
  330. package/script/deps/jsr.io/@std/encoding/{1.0.10 → 1.0.11}/_common64.js +1 -1
  331. package/script/deps/jsr.io/@std/encoding/{1.0.10 → 1.0.11}/_common_detach.d.ts.map +1 -1
  332. package/script/deps/jsr.io/@std/encoding/{1.0.10 → 1.0.11}/_common_detach.js +1 -1
  333. package/script/deps/jsr.io/@std/encoding/{1.0.10 → 1.0.11}/_types.d.ts +1 -1
  334. package/script/deps/jsr.io/@std/encoding/{1.0.10 → 1.0.11}/_types.d.ts.map +1 -1
  335. package/script/deps/jsr.io/@std/encoding/{1.0.10 → 1.0.11}/_types.js +1 -1
  336. package/script/deps/jsr.io/@std/encoding/{1.0.10 → 1.0.11}/base64.d.ts.map +1 -1
  337. package/script/deps/jsr.io/@std/encoding/{1.0.10 → 1.0.11}/base64.js +1 -1
  338. package/script/deps/jsr.io/@std/fmt/1.0.10/colors.d.ts.map +1 -0
  339. package/script/deps/jsr.io/@std/fmt/{1.0.9 → 1.0.10}/colors.js +2 -2
  340. package/script/deps/jsr.io/@std/fs/{1.0.23 → 1.0.24}/exists.d.ts.map +1 -1
  341. package/script/deps/jsr.io/@std/log/0.224.14/console_handler.js +1 -1
  342. package/script/deps/jsr.io/@std/log/0.224.14/rotating_file_handler.js +1 -1
  343. package/script/src/context/Context.d.ts +6 -1
  344. package/script/src/context/Context.d.ts.map +1 -1
  345. package/script/src/context/Context.js +10 -3
  346. package/script/src/context/VanillaContext.d.ts +1 -1
  347. package/script/src/context/VanillaContext.d.ts.map +1 -1
  348. package/script/src/context/VanillaContext.js +12 -5
  349. package/script/src/context/WorkflowClient.d.ts +4 -1
  350. package/script/src/context/WorkflowClient.d.ts.map +1 -1
  351. package/script/src/context/WorkflowClient.js +145 -49
  352. package/script/src/credentials/CredentialsProvider.js +1 -1
  353. package/script/src/dsl/http/types.d.ts +2 -1
  354. package/script/src/dsl/http/types.d.ts.map +1 -1
  355. package/script/src/dsl/http/versori/asyncHandler.d.ts +14 -0
  356. package/script/src/dsl/http/versori/asyncHandler.d.ts.map +1 -0
  357. package/script/src/dsl/http/versori/asyncHandler.js +31 -0
  358. package/script/src/dsl/http/versori/webhookmiddleware.d.ts +4 -4
  359. package/script/src/dsl/http/versori/webhookmiddleware.d.ts.map +1 -1
  360. package/script/src/dsl/http/versori/webhookmiddleware.js +74 -46
  361. package/script/src/interpreter/durable/DurableInterpreter.d.ts.map +1 -1
  362. package/script/src/interpreter/durable/DurableInterpreter.js +18 -3
  363. package/script/src/interpreter/durable/Queue.d.ts +4 -0
  364. package/script/src/interpreter/durable/Queue.d.ts.map +1 -1
  365. package/script/src/interpreter/durable/compilers/catch.d.ts.map +1 -1
  366. package/script/src/interpreter/durable/compilers/catch.js +4 -4
  367. package/script/src/interpreter/durable/compilers/durableworkflow.d.ts.map +1 -1
  368. package/script/src/interpreter/durable/compilers/durableworkflow.js +79 -28
  369. package/script/src/interpreter/durable/compilers/fn.d.ts.map +1 -1
  370. package/script/src/interpreter/durable/compilers/fn.js +7 -4
  371. package/script/src/interpreter/durable/compilers/webhook.d.ts.map +1 -1
  372. package/script/src/interpreter/durable/compilers/webhook.js +72 -17
  373. package/script/src/interpreter/memory/MemoryInterpreter.d.ts.map +1 -1
  374. package/script/src/interpreter/memory/MemoryInterpreter.js +18 -3
  375. package/script/src/interpreter/memory/compilers/catch.d.ts.map +1 -1
  376. package/script/src/interpreter/memory/compilers/catch.js +4 -4
  377. package/script/src/interpreter/memory/compilers/fn.d.ts.map +1 -1
  378. package/script/src/interpreter/memory/compilers/fn.js +7 -4
  379. package/script/src/interpreter/memory/compilers/webhook.d.ts.map +1 -1
  380. package/script/src/interpreter/memory/compilers/webhook.js +72 -17
  381. package/script/src/interpreter/vanilla/ExecutionError.d.ts +1 -3
  382. package/script/src/interpreter/vanilla/ExecutionError.d.ts.map +1 -1
  383. package/script/src/interpreter/vanilla/ExecutionError.js +1 -3
  384. package/script/src/interpreter/vanilla/VanillaInterpreter.d.ts.map +1 -1
  385. package/script/src/interpreter/vanilla/VanillaInterpreter.js +19 -4
  386. package/script/src/interpreter/vanilla/compilers/catch.d.ts.map +1 -1
  387. package/script/src/interpreter/vanilla/compilers/catch.js +2 -2
  388. package/script/src/interpreter/vanilla/compilers/durableworkflow.d.ts.map +1 -1
  389. package/script/src/interpreter/vanilla/compilers/durableworkflow.js +66 -31
  390. package/script/src/interpreter/vanilla/compilers/fn.d.ts.map +1 -1
  391. package/script/src/interpreter/vanilla/compilers/fn.js +7 -4
  392. package/script/src/interpreter/vanilla/compilers/webhook.d.ts.map +1 -1
  393. package/script/src/interpreter/vanilla/compilers/webhook.js +74 -18
  394. package/script/src/kv/KeyValue.d.ts +39 -4
  395. package/script/src/kv/KeyValue.d.ts.map +1 -1
  396. package/script/src/kv/fingerprintExternalUserId.d.ts +6 -0
  397. package/script/src/kv/fingerprintExternalUserId.d.ts.map +1 -0
  398. package/script/src/kv/fingerprintExternalUserId.js +23 -0
  399. package/script/src/kv/memory/MemoryKeyValue.d.ts +3 -2
  400. package/script/src/kv/memory/MemoryKeyValue.d.ts.map +1 -1
  401. package/script/src/kv/memory/MemoryKeyValue.js +100 -19
  402. package/script/src/kv/memory/MemoryKeyValueProvider.d.ts +4 -0
  403. package/script/src/kv/memory/MemoryKeyValueProvider.d.ts.map +1 -1
  404. package/script/src/kv/memory/MemoryKeyValueProvider.js +50 -0
  405. package/script/src/kv/mod.d.ts +1 -0
  406. package/script/src/kv/mod.d.ts.map +1 -1
  407. package/script/src/kv/nats/NatsKeyValue.d.ts +4 -3
  408. package/script/src/kv/nats/NatsKeyValue.d.ts.map +1 -1
  409. package/script/src/kv/nats/NatsKeyValue.js +90 -23
  410. package/script/src/kv/nats/NatsKeyValueProvider.d.ts +1 -1
  411. package/script/src/kv/nats/NatsKeyValueProvider.d.ts.map +1 -1
  412. package/script/src/kv/nats/NatsKeyValueProvider.js +17 -3
  413. package/script/src/kv/sdk/SDKKeyValue.d.ts +9 -1
  414. package/script/src/kv/sdk/SDKKeyValue.d.ts.map +1 -1
  415. package/script/src/kv/sdk/SDKKeyValue.js +163 -38
  416. package/script/src/kv/sdk/SDKKeyValueProvider.d.ts.map +1 -1
  417. package/script/src/kv/sdk/SDKKeyValueProvider.js +12 -0
  418. package/script/src/observability/mod.d.ts +1 -0
  419. package/script/src/observability/mod.d.ts.map +1 -1
  420. package/script/src/observability/mod.js +1 -0
  421. package/script/src/observability/tracePropagation.d.ts +23 -0
  422. package/script/src/observability/tracePropagation.d.ts.map +1 -0
  423. package/script/src/observability/tracePropagation.js +46 -0
  424. package/esm/deps/jsr.io/@nats-io/jetstream/3.3.1/src/internal_mod.d.ts +0 -14
  425. package/esm/deps/jsr.io/@nats-io/jetstream/3.3.1/src/internal_mod.d.ts.map +0 -1
  426. package/esm/deps/jsr.io/@nats-io/jetstream/3.3.1/src/jsapi_types.d.ts.map +0 -1
  427. package/esm/deps/jsr.io/@nats-io/jetstream/3.3.1/src/jsbaseclient_api.d.ts.map +0 -1
  428. package/esm/deps/jsr.io/@nats-io/jetstream/3.3.1/src/jsclient.d.ts.map +0 -1
  429. package/esm/deps/jsr.io/@nats-io/jetstream/3.3.1/src/jsclient.js +0 -361
  430. package/esm/deps/jsr.io/@nats-io/jetstream/3.3.1/src/jsmconsumer_api.d.ts.map +0 -1
  431. package/esm/deps/jsr.io/@nats-io/jetstream/3.3.1/src/jsmstream_api.d.ts.map +0 -1
  432. package/esm/deps/jsr.io/@nats-io/jetstream/3.3.1/src/mod.d.ts +0 -4
  433. package/esm/deps/jsr.io/@nats-io/jetstream/3.3.1/src/mod.d.ts.map +0 -1
  434. package/esm/deps/jsr.io/@nats-io/jetstream/3.3.1/src/types.d.ts.map +0 -1
  435. package/esm/deps/jsr.io/@nats-io/nats-core/3.3.1/src/core.d.ts.map +0 -1
  436. package/esm/deps/jsr.io/@nats-io/nats-core/3.3.1/src/nats.d.ts.map +0 -1
  437. package/esm/deps/jsr.io/@nats-io/nats-core/3.3.1/src/nuid.d.ts +0 -2
  438. package/esm/deps/jsr.io/@nats-io/nats-core/3.3.1/src/protocol.d.ts.map +0 -1
  439. package/esm/deps/jsr.io/@nats-io/nats-core/3.3.1/src/semver.d.ts.map +0 -1
  440. package/esm/deps/jsr.io/@nats-io/nats-core/3.3.1/src/servers.d.ts.map +0 -1
  441. package/esm/deps/jsr.io/@nats-io/nats-core/3.3.1/src/version.d.ts +0 -2
  442. package/esm/deps/jsr.io/@nats-io/nuid/2.0.3/src/nuid.d.ts.map +0 -1
  443. package/esm/deps/jsr.io/@nats-io/nuid/2.0.3/src/nuid.js +0 -154
  444. package/esm/deps/jsr.io/@nats-io/transport-deno/3.3.1/src/connect.d.ts.map +0 -1
  445. package/esm/deps/jsr.io/@nats-io/transport-deno/3.3.1/src/mod.d.ts +0 -3
  446. package/esm/deps/jsr.io/@nats-io/transport-deno/3.3.1/src/mod.js +0 -2
  447. package/esm/deps/jsr.io/@nats-io/transport-deno/3.3.1/src/version.d.ts +0 -2
  448. package/esm/deps/jsr.io/@nats-io/transport-deno/3.3.1/src/version.d.ts.map +0 -1
  449. package/esm/deps/jsr.io/@std/encoding/1.0.10/_types.js +0 -2
  450. package/esm/deps/jsr.io/@std/fmt/1.0.9/colors.d.ts.map +0 -1
  451. package/script/deps/jsr.io/@nats-io/jetstream/3.3.1/src/internal_mod.d.ts +0 -14
  452. package/script/deps/jsr.io/@nats-io/jetstream/3.3.1/src/internal_mod.d.ts.map +0 -1
  453. package/script/deps/jsr.io/@nats-io/jetstream/3.3.1/src/jsapi_types.d.ts.map +0 -1
  454. package/script/deps/jsr.io/@nats-io/jetstream/3.3.1/src/jsbaseclient_api.d.ts.map +0 -1
  455. package/script/deps/jsr.io/@nats-io/jetstream/3.3.1/src/jsclient.d.ts.map +0 -1
  456. package/script/deps/jsr.io/@nats-io/jetstream/3.3.1/src/jsclient.js +0 -370
  457. package/script/deps/jsr.io/@nats-io/jetstream/3.3.1/src/jsmconsumer_api.d.ts.map +0 -1
  458. package/script/deps/jsr.io/@nats-io/jetstream/3.3.1/src/jsmstream_api.d.ts.map +0 -1
  459. package/script/deps/jsr.io/@nats-io/jetstream/3.3.1/src/mod.d.ts +0 -4
  460. package/script/deps/jsr.io/@nats-io/jetstream/3.3.1/src/mod.d.ts.map +0 -1
  461. package/script/deps/jsr.io/@nats-io/jetstream/3.3.1/src/types.d.ts.map +0 -1
  462. package/script/deps/jsr.io/@nats-io/nats-core/3.3.1/src/core.d.ts.map +0 -1
  463. package/script/deps/jsr.io/@nats-io/nats-core/3.3.1/src/nats.d.ts.map +0 -1
  464. package/script/deps/jsr.io/@nats-io/nats-core/3.3.1/src/nuid.d.ts +0 -2
  465. package/script/deps/jsr.io/@nats-io/nats-core/3.3.1/src/protocol.d.ts.map +0 -1
  466. package/script/deps/jsr.io/@nats-io/nats-core/3.3.1/src/semver.d.ts.map +0 -1
  467. package/script/deps/jsr.io/@nats-io/nats-core/3.3.1/src/servers.d.ts.map +0 -1
  468. package/script/deps/jsr.io/@nats-io/nats-core/3.3.1/src/version.d.ts +0 -2
  469. package/script/deps/jsr.io/@nats-io/nuid/2.0.3/src/nuid.d.ts.map +0 -1
  470. package/script/deps/jsr.io/@nats-io/nuid/2.0.3/src/nuid.js +0 -157
  471. package/script/deps/jsr.io/@nats-io/transport-deno/3.3.1/src/connect.d.ts.map +0 -1
  472. package/script/deps/jsr.io/@nats-io/transport-deno/3.3.1/src/mod.d.ts +0 -3
  473. package/script/deps/jsr.io/@nats-io/transport-deno/3.3.1/src/version.d.ts +0 -2
  474. package/script/deps/jsr.io/@nats-io/transport-deno/3.3.1/src/version.d.ts.map +0 -1
  475. package/script/deps/jsr.io/@std/fmt/1.0.9/colors.d.ts.map +0 -1
  476. /package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jserrors.js +0 -0
  477. /package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jslister.d.ts +0 -0
  478. /package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsutil.d.ts +0 -0
  479. /package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsutil.js +0 -0
  480. /package/esm/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/mod.js +0 -0
  481. /package/esm/deps/jsr.io/@nats-io/kv/{3.3.1 → 3.4.0}/src/internal_mod.d.ts +0 -0
  482. /package/esm/deps/jsr.io/@nats-io/kv/{3.3.1 → 3.4.0}/src/internal_mod.js +0 -0
  483. /package/esm/deps/jsr.io/@nats-io/kv/{3.3.1 → 3.4.0}/src/mod.d.ts +0 -0
  484. /package/esm/deps/jsr.io/@nats-io/kv/{3.3.1 → 3.4.0}/src/mod.js +0 -0
  485. /package/esm/deps/jsr.io/@nats-io/kv/{3.3.1 → 3.4.0}/src/types.js +0 -0
  486. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/authenticator.d.ts +0 -0
  487. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/authenticator.js +0 -0
  488. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/bench.d.ts +0 -0
  489. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/bench.js +0 -0
  490. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/codec.d.ts +0 -0
  491. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/codec.js +0 -0
  492. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/core.js +0 -0
  493. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/databuffer.d.ts +0 -0
  494. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/databuffer.js +0 -0
  495. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/denobuffer.d.ts +0 -0
  496. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/denobuffer.js +0 -0
  497. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/encoders.d.ts +0 -0
  498. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/encoders.js +0 -0
  499. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/errors.d.ts +0 -0
  500. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/errors.js +0 -0
  501. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/headers.d.ts +0 -0
  502. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/headers.js +0 -0
  503. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/heartbeats.d.ts +0 -0
  504. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/heartbeats.js +0 -0
  505. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/idleheartbeat_monitor.d.ts +0 -0
  506. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/idleheartbeat_monitor.js +0 -0
  507. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/internal_mod.js +0 -0
  508. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/ipparser.d.ts +0 -0
  509. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/ipparser.js +0 -0
  510. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/mod.js +0 -0
  511. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/msg.d.ts +0 -0
  512. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/msg.js +0 -0
  513. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/muxsubscription.d.ts +0 -0
  514. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/muxsubscription.js +0 -0
  515. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/nkeys.d.ts +0 -0
  516. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/nkeys.js +0 -0
  517. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/options.d.ts +0 -0
  518. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/options.js +0 -0
  519. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/queued_iterator.d.ts +0 -0
  520. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/queued_iterator.js +0 -0
  521. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/request.d.ts +0 -0
  522. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/transport.d.ts +0 -0
  523. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/transport.js +0 -0
  524. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/types.d.ts +0 -0
  525. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/types.js +0 -0
  526. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/ws_transport.d.ts +0 -0
  527. /package/esm/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/ws_transport.js +0 -0
  528. /package/esm/deps/jsr.io/@std/encoding/{1.0.10 → 1.0.11}/_common64.d.ts +0 -0
  529. /package/esm/deps/jsr.io/@std/encoding/{1.0.10 → 1.0.11}/_common_detach.d.ts +0 -0
  530. /package/esm/deps/jsr.io/@std/encoding/{1.0.10 → 1.0.11}/base64.d.ts +0 -0
  531. /package/esm/deps/jsr.io/@std/fmt/{1.0.9 → 1.0.10}/colors.d.ts +0 -0
  532. /package/esm/deps/jsr.io/@std/fs/{1.0.23 → 1.0.24}/exists.d.ts +0 -0
  533. /package/esm/deps/jsr.io/@std/fs/{1.0.23 → 1.0.24}/exists.js +0 -0
  534. /package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jserrors.js +0 -0
  535. /package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jslister.d.ts +0 -0
  536. /package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsutil.d.ts +0 -0
  537. /package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/jsutil.js +0 -0
  538. /package/script/deps/jsr.io/@nats-io/jetstream/{3.3.1 → 3.4.0}/src/mod.js +0 -0
  539. /package/script/deps/jsr.io/@nats-io/kv/{3.3.1 → 3.4.0}/src/internal_mod.d.ts +0 -0
  540. /package/script/deps/jsr.io/@nats-io/kv/{3.3.1 → 3.4.0}/src/internal_mod.js +0 -0
  541. /package/script/deps/jsr.io/@nats-io/kv/{3.3.1 → 3.4.0}/src/mod.d.ts +0 -0
  542. /package/script/deps/jsr.io/@nats-io/kv/{3.3.1 → 3.4.0}/src/mod.js +0 -0
  543. /package/script/deps/jsr.io/@nats-io/kv/{3.3.1 → 3.4.0}/src/types.js +0 -0
  544. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/authenticator.d.ts +0 -0
  545. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/authenticator.js +0 -0
  546. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/bench.d.ts +0 -0
  547. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/bench.js +0 -0
  548. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/codec.d.ts +0 -0
  549. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/codec.js +0 -0
  550. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/core.js +0 -0
  551. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/databuffer.d.ts +0 -0
  552. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/databuffer.js +0 -0
  553. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/denobuffer.d.ts +0 -0
  554. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/denobuffer.js +0 -0
  555. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/encoders.d.ts +0 -0
  556. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/encoders.js +0 -0
  557. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/errors.d.ts +0 -0
  558. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/errors.js +0 -0
  559. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/headers.d.ts +0 -0
  560. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/headers.js +0 -0
  561. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/heartbeats.d.ts +0 -0
  562. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/heartbeats.js +0 -0
  563. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/idleheartbeat_monitor.d.ts +0 -0
  564. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/idleheartbeat_monitor.js +0 -0
  565. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/internal_mod.js +0 -0
  566. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/ipparser.d.ts +0 -0
  567. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/ipparser.js +0 -0
  568. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/mod.js +0 -0
  569. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/msg.d.ts +0 -0
  570. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/msg.js +0 -0
  571. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/muxsubscription.d.ts +0 -0
  572. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/muxsubscription.js +0 -0
  573. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/nkeys.d.ts +0 -0
  574. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/nkeys.js +0 -0
  575. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/options.d.ts +0 -0
  576. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/options.js +0 -0
  577. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/queued_iterator.d.ts +0 -0
  578. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/queued_iterator.js +0 -0
  579. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/request.d.ts +0 -0
  580. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/transport.d.ts +0 -0
  581. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/transport.js +0 -0
  582. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/types.d.ts +0 -0
  583. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/types.js +0 -0
  584. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/ws_transport.d.ts +0 -0
  585. /package/script/deps/jsr.io/@nats-io/nats-core/{3.3.1 → 3.4.0}/src/ws_transport.js +0 -0
  586. /package/script/deps/jsr.io/@std/encoding/{1.0.10 → 1.0.11}/_common64.d.ts +0 -0
  587. /package/script/deps/jsr.io/@std/encoding/{1.0.10 → 1.0.11}/_common_detach.d.ts +0 -0
  588. /package/script/deps/jsr.io/@std/encoding/{1.0.10 → 1.0.11}/base64.d.ts +0 -0
  589. /package/script/deps/jsr.io/@std/fmt/{1.0.9 → 1.0.10}/colors.d.ts +0 -0
  590. /package/script/deps/jsr.io/@std/fs/{1.0.23 → 1.0.24}/exists.d.ts +0 -0
  591. /package/script/deps/jsr.io/@std/fs/{1.0.23 → 1.0.24}/exists.js +0 -0
@@ -0,0 +1,774 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright 2022-2026 The NATS Authors
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.BatchPublisherImpl = exports.JetStreamClientImpl = exports.JetStreamManagerImpl = void 0;
18
+ exports.startFastIngest = startFastIngest;
19
+ exports.toJetStreamClient = toJetStreamClient;
20
+ exports.jetstream = jetstream;
21
+ exports.jetstreamManager = jetstreamManager;
22
+ exports.scheduleSpecToHeader = scheduleSpecToHeader;
23
+ const jsbaseclient_api_js_1 = require("./jsbaseclient_api.js");
24
+ const jsmconsumer_api_js_1 = require("./jsmconsumer_api.js");
25
+ const internal_mod_js_1 = require("../../../nats-core/3.4.0/src/internal_mod.js");
26
+ const jsmstream_api_js_1 = require("./jsmstream_api.js");
27
+ const jsapi_types_js_1 = require("./jsapi_types.js");
28
+ const jserrors_js_1 = require("./jserrors.js");
29
+ const jsm_direct_js_1 = require("./jsm_direct.js");
30
+ /**
31
+ * Starts a fast-ingest batch on the stream that consumes `subj`. Internal
32
+ * export — exposed via `@nats-io/jetstream/internal` and intended for
33
+ * companion packages to wrap. Not part of the public {@link JetStreamClient}
34
+ * API.
35
+ */
36
+ function startFastIngest(nc, subj, payload, opts, defaultTimeout = 5000) {
37
+ const { ackInterval, allowGaps, inboxPrefix, maxOutstandingAcks, ...publishOpts } = opts;
38
+ const prefix = inboxPrefix ?? "_INBOX";
39
+ if (!prefix || /\s/.test(prefix) || /[*>]/.test(prefix)) {
40
+ return Promise.reject(new Error(`inboxPrefix must be non-empty, no wildcards or whitespace (got "${prefix}")`));
41
+ }
42
+ const o = {
43
+ ackInterval: ackInterval ?? 10,
44
+ allowGaps,
45
+ inboxPrefix: prefix,
46
+ maxOutstandingAcks: Math.min(3, Math.max(1, maxOutstandingAcks ?? 2)),
47
+ };
48
+ const fi = new FastIngestImpl(nc, o, subj, defaultTimeout);
49
+ return fi.start(payload, publishOpts).then(() => fi);
50
+ }
51
+ function buildPublishHeaders(opts) {
52
+ const expect = opts.expect || {};
53
+ const mh = opts.headers || (0, internal_mod_js_1.headers)();
54
+ if (opts.msgID) {
55
+ mh.set(jsapi_types_js_1.PubHeaders.MsgIdHdr, opts.msgID);
56
+ }
57
+ if (expect.lastMsgID) {
58
+ mh.set(jsapi_types_js_1.PubHeaders.ExpectedLastMsgIdHdr, expect.lastMsgID);
59
+ }
60
+ if (expect.streamName) {
61
+ mh.set(jsapi_types_js_1.PubHeaders.ExpectedStreamHdr, expect.streamName);
62
+ }
63
+ if (typeof expect.lastSequence === "number") {
64
+ mh.set(jsapi_types_js_1.PubHeaders.ExpectedLastSeqHdr, `${expect.lastSequence}`);
65
+ }
66
+ if (typeof expect.lastSubjectSequence === "number") {
67
+ mh.set(jsapi_types_js_1.PubHeaders.ExpectedLastSubjectSequenceHdr, `${expect.lastSubjectSequence}`);
68
+ }
69
+ if (expect.lastSubjectSequenceSubject) {
70
+ mh.set(jsapi_types_js_1.PubHeaders.ExpectedLastSubjectSequenceSubjectHdr, expect.lastSubjectSequenceSubject);
71
+ }
72
+ if (opts.ttl) {
73
+ mh.set(jsapi_types_js_1.PubHeaders.MessageTTL, `${opts.ttl}`);
74
+ }
75
+ if (opts.schedule && opts.cancelSchedule) {
76
+ throw new Error("schedule and cancelSchedule are mutually exclusive");
77
+ }
78
+ if (opts.schedule) {
79
+ const so = opts.schedule;
80
+ if (so.specification) {
81
+ mh.set(jsapi_types_js_1.PubHeaders.Schedule, scheduleSpecToHeader(so.specification));
82
+ }
83
+ if (so.target) {
84
+ mh.set(jsapi_types_js_1.PubHeaders.ScheduleTarget, so.target);
85
+ }
86
+ if (so.source) {
87
+ mh.set(jsapi_types_js_1.PubHeaders.ScheduleSource, so.source);
88
+ }
89
+ if (so.ttl) {
90
+ mh.set(jsapi_types_js_1.PubHeaders.ScheduleTTL, so.ttl);
91
+ }
92
+ if (so.timezone) {
93
+ mh.set(jsapi_types_js_1.PubHeaders.ScheduleTimeZone, so.timezone);
94
+ }
95
+ if (so.rollup) {
96
+ mh.set(jsapi_types_js_1.PubHeaders.ScheduleRollup, so.rollup);
97
+ }
98
+ }
99
+ if (opts.cancelSchedule) {
100
+ mh.set(jsapi_types_js_1.PubHeaders.Scheduler, opts.cancelSchedule.scheduleSubject);
101
+ mh.set(jsapi_types_js_1.PubHeaders.ScheduleNext, "purge");
102
+ }
103
+ return mh;
104
+ }
105
+ function toJetStreamClient(nc) {
106
+ //@ts-ignore: see if we have a nc
107
+ if (typeof nc.nc === "undefined") {
108
+ return jetstream(nc);
109
+ }
110
+ return nc;
111
+ }
112
+ /**
113
+ * Returns a {@link JetStreamClient} supported by the specified NatsConnection
114
+ * @param nc
115
+ * @param opts
116
+ */
117
+ function jetstream(nc, opts = {}) {
118
+ return new JetStreamClientImpl(nc, opts);
119
+ }
120
+ /**
121
+ * Returns a {@link JetStreamManager} supported by the specified NatsConnection
122
+ * @param nc
123
+ * @param opts
124
+ */
125
+ async function jetstreamManager(nc, opts = {}) {
126
+ const adm = new JetStreamManagerImpl(nc, opts);
127
+ if (opts.checkAPI !== false) {
128
+ try {
129
+ await adm.getAccountInfo();
130
+ }
131
+ catch (err) {
132
+ throw err;
133
+ }
134
+ }
135
+ return adm;
136
+ }
137
+ class JetStreamManagerImpl extends jsbaseclient_api_js_1.BaseApiClientImpl {
138
+ constructor(nc, opts) {
139
+ super(nc, opts);
140
+ Object.defineProperty(this, "streams", {
141
+ enumerable: true,
142
+ configurable: true,
143
+ writable: true,
144
+ value: void 0
145
+ });
146
+ Object.defineProperty(this, "consumers", {
147
+ enumerable: true,
148
+ configurable: true,
149
+ writable: true,
150
+ value: void 0
151
+ });
152
+ Object.defineProperty(this, "direct", {
153
+ enumerable: true,
154
+ configurable: true,
155
+ writable: true,
156
+ value: void 0
157
+ });
158
+ this.streams = new jsmstream_api_js_1.StreamAPIImpl(nc, opts);
159
+ this.consumers = new jsmconsumer_api_js_1.ConsumerAPIImpl(nc, opts);
160
+ this.direct = new jsm_direct_js_1.DirectStreamAPIImpl(nc, opts);
161
+ }
162
+ async getAccountInfo() {
163
+ const r = await this._request(`${this.prefix}.INFO`);
164
+ return r;
165
+ }
166
+ jetstream() {
167
+ return jetstream(this.nc, this.getOptions());
168
+ }
169
+ advisories() {
170
+ const iter = new internal_mod_js_1.QueuedIteratorImpl();
171
+ this.nc.subscribe(`$JS.EVENT.ADVISORY.>`, {
172
+ callback: (err, msg) => {
173
+ if (err) {
174
+ throw err;
175
+ }
176
+ try {
177
+ const d = this.parseJsResponse(msg);
178
+ const chunks = d.type.split(".");
179
+ const kind = chunks[chunks.length - 1];
180
+ iter.push({ kind: kind, data: d });
181
+ }
182
+ catch (err) {
183
+ iter.stop(err);
184
+ }
185
+ },
186
+ });
187
+ return iter;
188
+ }
189
+ }
190
+ exports.JetStreamManagerImpl = JetStreamManagerImpl;
191
+ /**
192
+ * Converts a {@link ScheduleSpec}, `Date`, or raw header string into the
193
+ * value sent on the `Nats-Schedule` header.
194
+ *
195
+ * Validates `every` interval is at least 1s (server minimum).
196
+ *
197
+ * @internal exported for testing only
198
+ */
199
+ function scheduleSpecToHeader(spec) {
200
+ if (typeof spec === "string") {
201
+ return spec;
202
+ }
203
+ if (spec instanceof Date) {
204
+ return `@at ${spec.toISOString()}`;
205
+ }
206
+ if ("at" in spec) {
207
+ const iso = spec.at instanceof Date ? spec.at.toISOString() : spec.at;
208
+ return `@at ${iso}`;
209
+ }
210
+ if ("every" in spec) {
211
+ assertEveryAtLeastOneSecond(spec.every);
212
+ return `@every ${spec.every}`;
213
+ }
214
+ if ("cron" in spec) {
215
+ return spec.cron;
216
+ }
217
+ if ("predefined" in spec) {
218
+ return spec.predefined;
219
+ }
220
+ throw new Error("invalid schedule specification");
221
+ }
222
+ function assertEveryAtLeastOneSecond(d) {
223
+ const trimmed = d.trim();
224
+ const re = /(\d+(?:\.\d+)?)(ns|us|µs|ms|s|m|h)/g;
225
+ let totalMs = 0;
226
+ let pos = 0;
227
+ let m;
228
+ while ((m = re.exec(trimmed)) !== null) {
229
+ if (m.index !== pos)
230
+ break;
231
+ pos += m[0].length;
232
+ const n = parseFloat(m[1]);
233
+ const unit = m[2];
234
+ totalMs += unit === "ns"
235
+ ? n / 1e6
236
+ : unit === "us" || unit === "µs"
237
+ ? n / 1e3
238
+ : unit === "ms"
239
+ ? n
240
+ : unit === "s"
241
+ ? n * 1e3
242
+ : unit === "m"
243
+ ? n * 60_000
244
+ : n * 3_600_000;
245
+ }
246
+ if (trimmed === "" || pos !== trimmed.length) {
247
+ throw new Error(`@every: unrecognized duration format: "${d}"`);
248
+ }
249
+ if (totalMs < 1000) {
250
+ throw new Error("@every interval must be at least 1s");
251
+ }
252
+ }
253
+ class JetStreamClientImpl extends jsbaseclient_api_js_1.BaseApiClientImpl {
254
+ constructor(nc, opts) {
255
+ super(nc, opts);
256
+ Object.defineProperty(this, "consumers", {
257
+ enumerable: true,
258
+ configurable: true,
259
+ writable: true,
260
+ value: void 0
261
+ });
262
+ Object.defineProperty(this, "streams", {
263
+ enumerable: true,
264
+ configurable: true,
265
+ writable: true,
266
+ value: void 0
267
+ });
268
+ Object.defineProperty(this, "consumerAPI", {
269
+ enumerable: true,
270
+ configurable: true,
271
+ writable: true,
272
+ value: void 0
273
+ });
274
+ Object.defineProperty(this, "streamAPI", {
275
+ enumerable: true,
276
+ configurable: true,
277
+ writable: true,
278
+ value: void 0
279
+ });
280
+ this.consumerAPI = new jsmconsumer_api_js_1.ConsumerAPIImpl(nc, opts);
281
+ this.streamAPI = new jsmstream_api_js_1.StreamAPIImpl(nc, opts);
282
+ this.consumers = new jsmstream_api_js_1.ConsumersImpl(this.consumerAPI);
283
+ this.streams = new jsmstream_api_js_1.StreamsImpl(this.streamAPI);
284
+ }
285
+ jetstreamManager(checkAPI) {
286
+ if (checkAPI === undefined) {
287
+ checkAPI = this.opts.checkAPI;
288
+ }
289
+ const opts = Object.assign({}, this.opts, { checkAPI });
290
+ // fail early if watcherPrefix is bad
291
+ try {
292
+ (0, internal_mod_js_1.createInbox)(opts.watcherPrefix);
293
+ }
294
+ catch (err) {
295
+ return Promise.reject(err);
296
+ }
297
+ return jetstreamManager(this.nc, opts);
298
+ }
299
+ get apiPrefix() {
300
+ return this.prefix;
301
+ }
302
+ startBatch(subj, payload, opts) {
303
+ const d = (0, internal_mod_js_1.deferred)();
304
+ const bp = new BatchPublisherImpl(this);
305
+ bp.first(subj, payload, opts)
306
+ .then(() => {
307
+ d.resolve(bp);
308
+ })
309
+ .catch((err) => {
310
+ d.reject(err);
311
+ });
312
+ return d;
313
+ }
314
+ async _publish(subj, data = internal_mod_js_1.Empty, opts) {
315
+ opts = opts || {};
316
+ opts = { ...opts };
317
+ if (opts.cancelSchedule &&
318
+ opts.cancelSchedule.scheduleSubject === subj) {
319
+ throw new Error("cancelSchedule.scheduleSubject must not equal the publish subject");
320
+ }
321
+ const mh = buildPublishHeaders(opts);
322
+ const to = opts.timeout || this.timeout;
323
+ const ro = {};
324
+ if (to) {
325
+ ro.timeout = to;
326
+ }
327
+ if (opts) {
328
+ ro.headers = mh;
329
+ }
330
+ let { retries } = opts;
331
+ retries = retries || 1;
332
+ const bo = (0, internal_mod_js_1.backoff)();
333
+ let r = null;
334
+ for (let i = 0; i < retries; i++) {
335
+ try {
336
+ r = await this.nc.request(subj, data, ro);
337
+ // if here we succeeded
338
+ break;
339
+ }
340
+ catch (err) {
341
+ const re = err instanceof internal_mod_js_1.RequestError ? err : null;
342
+ if ((err instanceof internal_mod_js_1.errors.TimeoutError || re?.isNoResponders()) &&
343
+ i + 1 < retries) {
344
+ await (0, internal_mod_js_1.delay)(bo.backoff(i));
345
+ }
346
+ else {
347
+ throw re?.isNoResponders()
348
+ ? new jserrors_js_1.JetStreamNotEnabled(`jetstream is not enabled`, {
349
+ cause: err,
350
+ })
351
+ : err;
352
+ }
353
+ }
354
+ }
355
+ return r;
356
+ }
357
+ async publish(subj, data = internal_mod_js_1.Empty, opts) {
358
+ const r = await this._publish(subj, data, opts);
359
+ const pa = this.parseJsResponse(r);
360
+ if (pa.stream === "") {
361
+ throw new jserrors_js_1.JetStreamError("invalid ack response");
362
+ }
363
+ pa.duplicate = pa.duplicate ? pa.duplicate : false;
364
+ return pa;
365
+ }
366
+ }
367
+ exports.JetStreamClientImpl = JetStreamClientImpl;
368
+ class BatchPublisherImpl {
369
+ constructor(js) {
370
+ Object.defineProperty(this, "nc", {
371
+ enumerable: true,
372
+ configurable: true,
373
+ writable: true,
374
+ value: void 0
375
+ });
376
+ Object.defineProperty(this, "js", {
377
+ enumerable: true,
378
+ configurable: true,
379
+ writable: true,
380
+ value: void 0
381
+ });
382
+ Object.defineProperty(this, "id", {
383
+ enumerable: true,
384
+ configurable: true,
385
+ writable: true,
386
+ value: void 0
387
+ });
388
+ Object.defineProperty(this, "count", {
389
+ enumerable: true,
390
+ configurable: true,
391
+ writable: true,
392
+ value: void 0
393
+ });
394
+ Object.defineProperty(this, "done", {
395
+ enumerable: true,
396
+ configurable: true,
397
+ writable: true,
398
+ value: void 0
399
+ });
400
+ this.count = 0;
401
+ this.id = internal_mod_js_1.nuid.next();
402
+ this.js = js;
403
+ this.nc = this.js.nc;
404
+ this.done = false;
405
+ }
406
+ async first(subj, payload, opts) {
407
+ opts = opts || {};
408
+ opts.headers = opts?.headers || (0, internal_mod_js_1.headers)();
409
+ opts.headers.set("Nats-Batch-Id", this.id);
410
+ this.count++;
411
+ opts.headers.set("Nats-Batch-Sequence", this.count.toString());
412
+ const r = await this.js._publish(subj, payload, opts);
413
+ if (r.data.length > 0) {
414
+ this.js.parseJsResponse(r);
415
+ }
416
+ }
417
+ add(subj, payload, opts = { ack: false }) {
418
+ if (this.done) {
419
+ throw new Error("batch publisher is done");
420
+ }
421
+ opts.headers = opts?.headers || (0, internal_mod_js_1.headers)();
422
+ opts.headers.set("Nats-Batch-Id", this.id);
423
+ this.count++;
424
+ opts.headers.set("Nats-Batch-Sequence", this.count.toString());
425
+ const hasAck = "ack" in opts && opts.ack === true;
426
+ if (hasAck) {
427
+ const d = (0, internal_mod_js_1.deferred)();
428
+ this.js._publish(subj, payload, {
429
+ headers: opts.headers,
430
+ timeout: opts.timeout,
431
+ }).then((m) => {
432
+ if (m.data.length > 0) {
433
+ this.js.parseJsResponse(m);
434
+ }
435
+ d.resolve();
436
+ }).catch((err) => {
437
+ this.done = true;
438
+ d.reject(err);
439
+ });
440
+ return d;
441
+ }
442
+ else {
443
+ return this.nc.publish(subj, payload, { headers: opts.headers });
444
+ }
445
+ }
446
+ async commit(subj, payload, opts = {}) {
447
+ if (this.done) {
448
+ throw new Error("batch publisher is done");
449
+ }
450
+ else {
451
+ this.done = true;
452
+ }
453
+ opts.headers = opts?.headers || (0, internal_mod_js_1.headers)();
454
+ opts.headers.set("Nats-Batch-Id", this.id);
455
+ this.count++;
456
+ opts.headers.set("Nats-Batch-Sequence", this.count.toString());
457
+ opts.headers.set("Nats-Batch-Commit", "1");
458
+ const r = await this.js._publish(subj, payload, {
459
+ headers: opts.headers,
460
+ timeout: opts.timeout || 0,
461
+ });
462
+ const ack = r.json();
463
+ if (ack.count !== this.count) {
464
+ throw new Error("batch didn't contain number of published messages");
465
+ }
466
+ return ack;
467
+ }
468
+ }
469
+ exports.BatchPublisherImpl = BatchPublisherImpl;
470
+ const BATCH_CLOSED = "batch closed";
471
+ const FastIngestOp = {
472
+ Start: 0,
473
+ Append: 1,
474
+ Final: 2,
475
+ EOB: 3,
476
+ Ping: 4,
477
+ };
478
+ class FastIngestImpl {
479
+ constructor(nc, opts, firstSubj, defaultTimeout) {
480
+ Object.defineProperty(this, "batch", {
481
+ enumerable: true,
482
+ configurable: true,
483
+ writable: true,
484
+ value: void 0
485
+ });
486
+ Object.defineProperty(this, "nc", {
487
+ enumerable: true,
488
+ configurable: true,
489
+ writable: true,
490
+ value: void 0
491
+ });
492
+ Object.defineProperty(this, "batchSubj", {
493
+ enumerable: true,
494
+ configurable: true,
495
+ writable: true,
496
+ value: void 0
497
+ });
498
+ Object.defineProperty(this, "gapMode", {
499
+ enumerable: true,
500
+ configurable: true,
501
+ writable: true,
502
+ value: void 0
503
+ });
504
+ Object.defineProperty(this, "initialFlow", {
505
+ enumerable: true,
506
+ configurable: true,
507
+ writable: true,
508
+ value: void 0
509
+ });
510
+ Object.defineProperty(this, "seq", {
511
+ enumerable: true,
512
+ configurable: true,
513
+ writable: true,
514
+ value: void 0
515
+ });
516
+ Object.defineProperty(this, "acked", {
517
+ enumerable: true,
518
+ configurable: true,
519
+ writable: true,
520
+ value: void 0
521
+ });
522
+ Object.defineProperty(this, "ackInterval", {
523
+ enumerable: true,
524
+ configurable: true,
525
+ writable: true,
526
+ value: void 0
527
+ });
528
+ Object.defineProperty(this, "inboxPrefix", {
529
+ enumerable: true,
530
+ configurable: true,
531
+ writable: true,
532
+ value: void 0
533
+ });
534
+ Object.defineProperty(this, "maxOutstandingAcks", {
535
+ enumerable: true,
536
+ configurable: true,
537
+ writable: true,
538
+ value: void 0
539
+ });
540
+ Object.defineProperty(this, "defaultTimeout", {
541
+ enumerable: true,
542
+ configurable: true,
543
+ writable: true,
544
+ value: void 0
545
+ });
546
+ Object.defineProperty(this, "gapIter", {
547
+ enumerable: true,
548
+ configurable: true,
549
+ writable: true,
550
+ value: void 0
551
+ });
552
+ Object.defineProperty(this, "sub", {
553
+ enumerable: true,
554
+ configurable: true,
555
+ writable: true,
556
+ value: void 0
557
+ });
558
+ Object.defineProperty(this, "pending", {
559
+ enumerable: true,
560
+ configurable: true,
561
+ writable: true,
562
+ value: void 0
563
+ });
564
+ Object.defineProperty(this, "closed", {
565
+ enumerable: true,
566
+ configurable: true,
567
+ writable: true,
568
+ value: void 0
569
+ });
570
+ Object.defineProperty(this, "closeErr", {
571
+ enumerable: true,
572
+ configurable: true,
573
+ writable: true,
574
+ value: void 0
575
+ });
576
+ Object.defineProperty(this, "startDeferred", {
577
+ enumerable: true,
578
+ configurable: true,
579
+ writable: true,
580
+ value: void 0
581
+ });
582
+ Object.defineProperty(this, "closedDeferred", {
583
+ enumerable: true,
584
+ configurable: true,
585
+ writable: true,
586
+ value: void 0
587
+ });
588
+ this.nc = nc;
589
+ this.batchSubj = firstSubj;
590
+ this.gapMode = opts.allowGaps ? "ok" : "fail";
591
+ this.initialFlow = opts.ackInterval;
592
+ this.inboxPrefix = opts.inboxPrefix;
593
+ this.maxOutstandingAcks = opts.maxOutstandingAcks;
594
+ this.defaultTimeout = defaultTimeout;
595
+ this.batch = internal_mod_js_1.nuid.next();
596
+ this.seq = 0;
597
+ this.acked = 0;
598
+ this.ackInterval = opts.ackInterval;
599
+ this.pending = new Map();
600
+ this.closed = false;
601
+ this.startDeferred = (0, internal_mod_js_1.deferred)();
602
+ this.closedDeferred = (0, internal_mod_js_1.deferred)();
603
+ // swallow unhandled rejection if caller never attaches to done()
604
+ this.closedDeferred.catch(() => { });
605
+ this.startDeferred.catch(() => { });
606
+ const inbox = `${this.inboxPrefix}.${this.batch}.>`;
607
+ this.sub = this.nc.subscribe(inbox, {
608
+ callback: (err, msg) => this.route(err, msg),
609
+ });
610
+ }
611
+ replyFor(op, seq) {
612
+ return `${this.inboxPrefix}.${this.batch}.${this.initialFlow}.${this.gapMode}.${seq}.${op}.$FI`;
613
+ }
614
+ start(payload, opts) {
615
+ this.seq = 1;
616
+ const rs = this.replyFor(FastIngestOp.Start, 1);
617
+ const headers = opts ? buildPublishHeaders(opts) : undefined;
618
+ this.nc.publish(this.batchSubj, payload, { reply: rs, headers });
619
+ return this.deadlineOrClose(this.startDeferred, opts?.timeout ?? this.defaultTimeout);
620
+ }
621
+ deadlineOrClose(p, ms) {
622
+ return (0, internal_mod_js_1.deadline)(p, ms).catch((err) => {
623
+ if (!this.closed)
624
+ this.close(err);
625
+ throw err;
626
+ });
627
+ }
628
+ route(err, m) {
629
+ if (err) {
630
+ this.close(err);
631
+ return;
632
+ }
633
+ let data;
634
+ try {
635
+ data = (0, jsbaseclient_api_js_1.parseJsResponse)(m);
636
+ }
637
+ catch (err) {
638
+ this.close(err);
639
+ return;
640
+ }
641
+ // terminal pub ack (has `batch` field — discriminates from BatchFlowAck)
642
+ if ("batch" in data && typeof data.batch === "string") {
643
+ const ack = data;
644
+ const e = this.pending.get(m.subject);
645
+ if (e && (e.op === FastIngestOp.Final || e.op === FastIngestOp.EOB)) {
646
+ e.deferred.resolve(ack);
647
+ this.pending.delete(m.subject);
648
+ }
649
+ // resolve any stragglers (adds/pings awaiting flow ack) — batch is committed
650
+ for (const [, entry] of this.pending) {
651
+ if (entry.op === FastIngestOp.Append ||
652
+ entry.op === FastIngestOp.Ping) {
653
+ entry.deferred.resolve({ batchSeq: entry.seq, ackSeq: this.acked });
654
+ }
655
+ else {
656
+ entry.deferred.reject(new Error(BATCH_CLOSED));
657
+ }
658
+ }
659
+ this.pending.clear();
660
+ this.resolveStart();
661
+ this.closedDeferred.resolve(ack);
662
+ this.closed = true;
663
+ this.gapIter?.stop();
664
+ this.sub.unsubscribe();
665
+ return;
666
+ }
667
+ const typed = data;
668
+ if (typed.type === "gap") {
669
+ if (this.gapIter) {
670
+ const g = data;
671
+ this.gapIter.push({ lastSeq: g.last_seq, seq: g.seq });
672
+ }
673
+ return;
674
+ }
675
+ // type:"err" is never reached here — parseJsResponse above throws on the
676
+ // nested `.error` field, which then closes the batch via the outer catch.
677
+ const fa = data;
678
+ if (typeof fa.msgs === "number")
679
+ this.ackInterval = fa.msgs;
680
+ // cumulative: advance, never regress, so a later ack covers lost earlier ones
681
+ if (typeof fa.seq === "number" && fa.seq > this.acked) {
682
+ this.acked = fa.seq;
683
+ }
684
+ this.resolveStart();
685
+ // exact-subject resolution: ping's flow ack or a blocked add
686
+ const exact = this.pending.get(m.subject);
687
+ if (exact &&
688
+ (exact.op === FastIngestOp.Append || exact.op === FastIngestOp.Ping)) {
689
+ exact.deferred.resolve({ batchSeq: exact.seq, ackSeq: this.acked });
690
+ this.pending.delete(m.subject);
691
+ }
692
+ // slide window: any blocked adds now within the allowed window resolve
693
+ for (const [rs, e] of this.pending) {
694
+ if (e.op === FastIngestOp.Append &&
695
+ e.seq - this.acked < this.ackInterval * this.maxOutstandingAcks) {
696
+ e.deferred.resolve({ batchSeq: e.seq, ackSeq: this.acked });
697
+ this.pending.delete(rs);
698
+ }
699
+ }
700
+ }
701
+ resolveStart() {
702
+ this.startDeferred.resolve();
703
+ }
704
+ close(err) {
705
+ this.closed = true;
706
+ this.closeErr = err;
707
+ for (const [, e] of this.pending)
708
+ e.deferred.reject(err);
709
+ this.pending.clear();
710
+ this.startDeferred.reject(err);
711
+ this.closedDeferred.reject(err);
712
+ this.gapIter?.stop();
713
+ this.sub.unsubscribe();
714
+ }
715
+ add(subj, payload, opts) {
716
+ if (this.closed)
717
+ return Promise.reject(new Error(BATCH_CLOSED));
718
+ const mySeq = ++this.seq;
719
+ const rs = this.replyFor(FastIngestOp.Append, mySeq);
720
+ const headers = opts ? buildPublishHeaders(opts) : undefined;
721
+ this.nc.publish(subj, payload, { reply: rs, headers });
722
+ if (mySeq - this.acked < this.ackInterval * this.maxOutstandingAcks) {
723
+ return Promise.resolve({ batchSeq: mySeq, ackSeq: this.acked });
724
+ }
725
+ const d = (0, internal_mod_js_1.deferred)();
726
+ this.pending.set(rs, { seq: mySeq, op: FastIngestOp.Append, deferred: d });
727
+ return this.deadlineOrClose(d, opts?.timeout ?? this.defaultTimeout);
728
+ }
729
+ last(subj, payload, opts) {
730
+ if (this.closed)
731
+ return Promise.reject(new Error(BATCH_CLOSED));
732
+ const mySeq = ++this.seq;
733
+ const rs = this.replyFor(FastIngestOp.Final, mySeq);
734
+ const d = (0, internal_mod_js_1.deferred)();
735
+ this.pending.set(rs, { seq: mySeq, op: FastIngestOp.Final, deferred: d });
736
+ const headers = opts ? buildPublishHeaders(opts) : undefined;
737
+ this.nc.publish(subj, payload, { reply: rs, headers });
738
+ return this.deadlineOrClose(d, opts?.timeout ?? this.defaultTimeout);
739
+ }
740
+ end(opts) {
741
+ if (this.closed)
742
+ return Promise.reject(new Error(BATCH_CLOSED));
743
+ const mySeq = ++this.seq;
744
+ const rs = this.replyFor(FastIngestOp.EOB, mySeq);
745
+ const d = (0, internal_mod_js_1.deferred)();
746
+ this.pending.set(rs, { seq: mySeq, op: FastIngestOp.EOB, deferred: d });
747
+ const headers = opts ? buildPublishHeaders(opts) : undefined;
748
+ this.nc.publish(this.batchSubj, internal_mod_js_1.Empty, { reply: rs, headers });
749
+ return this.deadlineOrClose(d, opts?.timeout ?? this.defaultTimeout);
750
+ }
751
+ ping(timeout = this.defaultTimeout) {
752
+ if (this.closed)
753
+ return Promise.reject(new Error(BATCH_CLOSED));
754
+ const rs = this.replyFor(FastIngestOp.Ping, this.seq);
755
+ // coalesce concurrent pings on same seq — same reply subject, one server ack
756
+ const existing = this.pending.get(rs);
757
+ if (existing && existing.op === FastIngestOp.Ping) {
758
+ return (0, internal_mod_js_1.deadline)(existing.deferred, timeout);
759
+ }
760
+ const d = (0, internal_mod_js_1.deferred)();
761
+ this.pending.set(rs, { seq: this.seq, op: FastIngestOp.Ping, deferred: d });
762
+ this.nc.publish(this.batchSubj, internal_mod_js_1.Empty, { reply: rs });
763
+ return this.deadlineOrClose(d, timeout);
764
+ }
765
+ done() {
766
+ return this.closedDeferred;
767
+ }
768
+ gaps() {
769
+ if (!this.gapIter) {
770
+ this.gapIter = new internal_mod_js_1.QueuedIteratorImpl();
771
+ }
772
+ return this.gapIter;
773
+ }
774
+ }